﻿@charset "utf-8";

@media screen and (min-width: 1921px) {
  .opening-banner-card-bottom {
    bottom: 192px;
  }

    .opening-banner-card-bottom h1 {
      font-size: 4rem !important;
    }

    .opening-banner-card-bottom h3 {
      font-size: 2.5rem !important;
    }

  .opening-banner-card h1 {
    font-size: 2.8rem !important;
  }

  .opening-banner-card h3 {
    font-size: 2rem !important;
  }

  .opening-banner-card-img {
    width: 34% !important;
  }
}

@media screen and (min-width:1200px) {
  .v-carousel-main-container {
    height: 650px;
  }

  .istick-img-control {
    margin: 0 auto;
    max-width: 100%;
  }
}

@media screen and (min-width: 992px) and (max-width:1200px) {
  .istick-img-control {
    margin: 0 auto;
    max-width: 75%;
  }

  .v-carousel-main-image {
    margin: 0 auto;
    max-height: 60%;
  }

  .printingagency_process_wrap .slick-next,
  .custommade_process_wrap .slick-next {
    right: 3% !important;
  }

  .printingagency_process_box,
  .custommade_process_box {
    width: 23.5rem !important;
  }
}

/*------------------Desktop------------------*/
@media screen and (min-width: 1024px) {
  .shop-img {
    max-width: 100%;
  }
  /*new sizeBy*/

  .custom-lg-5 {
    width: 20% !important;
  }
  /* .v-carousel-main-container {
            height: 650px;
            
                }  */

  .v-carousel-thumbnail-container {
    border-right: 1px solid #ccc;
    justify-content: flex-start;
    padding: 1rem;
    max-width: 12rem;
    min-width: 12rem;
  }

  .v-carousel-button {
    font-size: 2rem;
    padding: 1.5rem;
  }

  .printingagency_process_tit,
  .custommade_process_tit {
    font-size: 1.25rem;
  }

  .printingagency_process_desc,
  .custommade_process_desc {
    margin: 1.25rem 0.5rem 0.5rem;
  }
}

@media screen and (max-width: 46.125em) {

  #event-wrapper img {
    min-width: 360px; /*460px*/
    margin: 0 calc(10% - 11rem) 0 calc(10% - 11rem);
  }
}

@media screen and (min-width: 992px) {

  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: white;
    width: auto;
    overflow: inherit;
    -webkit-transition: none !important;
    transition: none !important;
  }

    .off-canvas.in-canvas-for-large.position-bottom, .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top {
      -webkit-box-shadow: none;
      box-shadow: none;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
    }

  .v-filter-container-off-canvas {
    position: static !important;
    transform: none !important;
    display: block !important;
    width: 100%;
    !important;
    visibility: visible !important;
    z-index: 1 !important;
  }

    /* 불필요한 전환 클래스 무력화 */
    .v-filter-container-off-canvas.position-right {
      transform: none !important;
      transition: none !important;
      visibility: visible !important;
      display: block !important;
      position: static !important;
    }
}

@media screen and (min-width: 992px)and (max-width: 1660px) {

  .opening-banner-card {
    padding-right: 0px;
    padding-left: 30px;
    top: 30px;
  }

    .opening-banner-card h1 {
      font-size: 1.5rem !important;
    }

    .opening-banner-card h3 {
      font-size: 1.3rem !important;
    }

  .opening-banner-card-img {
    width: 34% !important;
  }
}

/*----------Tablet----------------------------*/
@media screen and (max-width: 991px) {

  .event-banner-img {
    min-width: 600px;
    margin: 0 calc(5% - 20rem) 0 calc(5% - 20rem);
  }

  .lp-btn-program {
    width: 100%
  }

  #dropdown-program .btn {
    width: 40%
  }

  .lp-btn-program:hover {
    opacity: 0.9;
    color: #fff;
    text-decoration: none;
  }

  .lp-main-header {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    padding-left: 1rem;
  }

  .brand-header {
    position: relative;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .brand-logo {
    width: 10rem;
  }

  .search-input {
    margin: 0;
  }

  .header-search-icon {
    position: absolute;
    border: 0;
    background-color: transparent;
    padding: 0.5rem;
  }

  .top-menu-wrapper {
    border-radius: 4px;
    display: inline-block;
    padding: 0.85rem;
  }


    .top-menu-wrapper:hover {
      background: #ddd;
    }


  .dropdown-menu {
    position: absolute;
    border-radius: 4px;
  }

  .dropdown-menu-bg {
    padding: 0;
  }


  .top-menu-title {
    margin-right: 0.5rem;
  }


  .top-menu-down {
    margin-right: 0.5rem;
  }


  .dropdown-menu-cart-txt {
    padding-bottom: 0.5rem;
  }


  .brand-nav {
    position: relative;
  }


  .brand-nav-wrapper {
    position: relative;
    max-width: 77rem;
    padding: 0;
    margin-bottom: 0;
    list-style: none;
  }

  .brand-nav-item {
    font-size: 0.85rem;
  }

  .brand-nav-down {
    margin-left: 0.5rem;
  }

  .brand-nav-dropdown {
    padding-top: 0;
    padding-bottom: 0;
  }

  .brand-nav-tab {
    padding: 1.5rem 1.75rem;
    text-decoration: none;
  }

  .brand-nav-tab-con {
    background-color: #fff;
  }


  .dropdown-nav-brand-tit, .dropdown-nav-brand-tit-sub {
    color: #222;
    font-size: 1.25rem;
    font-weight: 700;
  }

  .dropdown-nav-new-text {
    margin-top: 2rem;
    margin-left: 1.5rem;
    margin-bottom: 0.9rem;
  }

  .nav-cs-primary-tit {
    font-size: 1rem;
  }

  .nav-cs-primary-icon {
    flex-basis: 10%;
  }

  .mainpage-banner, .main-banner {
    position: relative;
  }


  .main-banner-overlay {
    position: absolute;
  }


  .main-banner-tit {
    font-size: 2rem;
  }

  .label-finder-group {
    display: inline-block;
  }

  .label-finder {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .label-finder-container {
    border-right: none;
    border-bottom: 1px solid #ccc;
    width: auto;
  }

  .label-finder-selection {
    width: 20rem;
  }

    .label-finder-selection:hover {
      border-radius: 4px;
    }

  .label-finder-selection-popover {
    position: absolute;
    padding: 1.5rem;
  }

  .show-for-large {
    display: none !important;
  }

  .hide-for-large {
    display: block !important;
  }

  .hide-for-medium {
    display: none;
  }

  .shopping-primary, .customer-service-center {
    padding: 1.5rem 0;
  }

  .shopping-primary-card-bg {
    background-image: none;
    background-position-y: 50%;
  }
  /*newsletter*/
  .news-form-name {
    width: 5rem;
    text-align: start !important;
  }

  .news-form-email {
    width: 13rem;
  }

  .col-wrapper {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }

  .news-list, .news-form-subtext {
    font-size: 0.9rem;
  }

  .news-list-items, .news-form-subtext {
    font-size: 0.9rem;
  }

  /* brnad menu page start */
  .brand-banner-subtit {
    font-size: 1.106rem;
    margin-bottom: 1rem;
  }
  /* brnad menu page end */
  .v-carousel-main-container {
    flex-wrap: wrap;
    height: 350px;
  }

  .p-header-cart-count {
    position: absolute;
    top: -12px;
    right: -12px;
    height: 1.2rem;
    width: 1.2rem;
    line-height: 1.5;
    font-size: 0.7rem;
  }
  /*Cart*/
  .chkNotice label {
    font-size: 0.8rem !important;
  }

  .istick-img-control {
    margin: 0 auto;
    max-width: 60%;
  }

  .v-carousel-main-image {
    margin: 0 auto;
    max-height: 65%;
  }

  .customer-service-click {
    padding: 1.5rem;
  }

  .ilabel-logo {
    max-width: 30%;
  }

  /*    OPENING PAGE  */
  .opening-nav-item {
    padding: 1rem;
  }

  .opening-nav-panel {
    border-radius: 0;
  }

  .opening-banner {
    height: 700px !important;
    background-position-x: 90%;
  }

  .opening-banner-card {
    padding: 20px;
    top: 50px;
  }

    .opening-banner-card h1 {
      font-size: 1.3rem !important;
    }

    .opening-banner-card h3 {
      font-size: 1.2rem;
    }

  .opening-banner-card-img {
    width: 220px;
    height: auto;
  }


  .opening-banner-card-bottom {
    bottom: 75px;
  }

    .opening-banner-card-bottom h3 {
      flex-direction: column;
      align-items: center;
    }

  .company-img-group {
    height: 950px;
  }

  .company-img-group-left {
    width: 250px;
    right: 58%;
  }

  .company-img-group-right {
    width: 250px;
    left: 58%;
  }

  .op-product-card {
    display: flex;
    padding: 1.5rem;
    text-align: left;
    flex-direction: row;
  }

    .op-product-card .row {
      align-items: center;
    }

  #ProductProgram .program-video {
    width: 400px;
  }

  .catalog-card {
    font-size: 1rem;
    padding: 2rem 1.75rem;
    justify-content: center;
  }

    .catalog-card img {
      width: 300px;
    }

  .catalog-slogan-img {
    height: 65px
  }

  .catalog-card-istick-inner {
    margin: 24px 0;
    padding: 12px;
  }

  .news_section {
    background-size: 420%;
  }

    .news_section:hover {
      background-size: 470%;
    }

  .movie-img-text {
    padding-right: 4rem;
  }

  .ic_size {
    width: 10%;
  }

  .slider > .carousel-indicators [data-bs-target] {
    padding: 5px;
  }

  .azinfo-card {
    height: 300px;
    margin-bottom: 1rem;
    padding: 20px;
  }

    .azinfo-card img {
      height: 120px;
    }

  .azinfo-circle-blue {
    height: auto;
    padding: 0 16px;
  }

    .azinfo-circle-blue > p {
      font-size: 1.1rem;
    }

  .azinfo-circle-navy {
    height: 200px;
    font-size: 1.25rem;
  }

  .main-printplaza h1 {
    font-size: 1.7rem;
  }

  .main-printplaza .h3 {
    font-size: 1.25rem;
  }

  .printplaza-intro-card {
    font-size: 1rem;
  }

  .printingagency_process_tit,
  .custommade_process_tit {
    font-size: 1.15rem;
  }

  .printingagency_process_box,
  .custommade_process_box {
    margin: 0 50px;
  }

    .printingagency_process_box img,
    .custommade_process_box img {
      width: 100%;
    }

  .printingagency_process_wrap .slick-prev,
  .custommade_process_wrap .slick-prev {
    left: 0 !important;
  }

  .printingagency_process_wrap .slick-arrow,
  .custommade_process_wrap .slick-arrow {
    top: 50%;
  }

  .printingagency_process_wrap .slick-list,
  .custommade_process_wrap .slick-list {
    padding: 0 !important;
  }

  .printingagency_process_wrap .slick-next,
  .custommade_process_wrap .slick-next {
    right: 0 !important;
  }

  .arrow::after {
    content: "";
  }
}

/*----------mobile----------------------------*/
@media screen and (min-width: 767px) {

  .mobile-search {
    display: none !important;
  }

  .filter-btn {
    display: flex;
    flex-wrap: nowrap;
    font-size: 0.8rem;
    width: auto !important;
  }
}

@media screen and (max-width: 767px) {


  h4 {
    font-size: 1rem;
  }

  /*event-image*/
  .header-event-img, .event-content img {
    /*min-width: 600px;*/
    /*margin: 0 calc(10% - 11rem) 0 calc(10% - 11rem);*/
    min-width: 600px;
    margin: 0 calc(5% - 20rem) 0 calc(5% - 20rem);
  }

  .lp-main-header {
    font-size: 1.3rem;
    padding-left: 0.85rem;
  }

  .wrapper-header {
    margin-left: auto !important;
    padding-right: 0px !important;
    padding-left: 0px !important;
  }

  .brand-logo {
    width: 20rem;
    align-content: center;
  }


  .lp-btn-pp {
    width: 60%;
  }

  .col {
    width: 20%;
  }

  .top-mobile-account-wrapper, .top-mobile-cart-wrapper, .top-search-wrapper, .top-menu-wrapper {
    border-radius: 4px;
    display: inline-block;
    padding: 0.6rem;
  }


    .top-mobile-account-wrapper:hover, .top-mobile-cart-wrapper:hover, .top-search-wrapper:hover, top-menu-wrapper:hover {
      background: #ddd;
    }

  .ilabel-link-tit {
    font-size: 0.8rem;
  }

  .promises-bar-item {
    display: inline-block;
    position: relative;
    color: #fff;
    padding: 0.8rem 0;
    cursor: pointer;
    font-weight: 500;
    font-size: 1rem;
  }

  .dropdown-menu-bg {
    padding: 0;
  }

  .top-menu-title {
    display: none;
  }

  .top-menu-down {
    margin-right: 0.5rem;
  }


  .dropdown-menu-cart-txt {
    padding-bottom: 0.5rem;
  }


  .brand-nav {
    position: relative;
  }


  .brand-nav-down {
    margin-left: 0.5rem;
  }

  .brand-nav-dropdown {
    width: 77rem;
    padding-top: 0;
    padding-bottom: 0;
  }

  .brand-nav-tab {
    padding: 0.7rem 1rem;
    text-decoration: none;
  }

  .brand-nav-tab-con {
    background-color: #fff;
  }

  .container-fluid {
    min-height: 33rem;
  }


  .main-banner {
    position: relative;
    background-image: none !important;
    background-color: #fefefe;
    z-index: 2;
    text-align: center;
    padding: 2rem;
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
  }

  .mainpage-banner {
    position: relative;
    background-color: #fefefe;
    z-index: 2;
    text-align: center;
    padding: 0rem;
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
  }

  .main-banner-tit {
    margin-top: 2.5rem;
  }

  .main-banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }

  .main-banner-subtit {
    font-size: 1rem;
  }

  .mobile-search {
    margin: 0.25rem 0.75rem;
  }

  .label-finder-group {
    display: block;
    margin-right: 1rem;
    margin-left: 1rem;
  }

  .label-finder-container {
    width: 100%;
  }

  .label-finder-selection {
    position: relative !important;
    width: 100%;
  }

  .label-finder-selection-popover {
    padding: 1.5rem 2.5rem;
  }

  .show-for-medium {
    display: none;
  }

  .show-for-small {
    display: block;
  }

  .shopping-primary-card img {
    width: 14rem;
  }

  .shopping-primary-card-bg {
    background-image: none;
    background-position-y: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 2rem;
  }
  /*Searching*/
  .v-dlp-container-label-results, .disp-container {
    font-size: 1rem;
  }

  #chkProsumer {
    font-size: 0.7rem !important;
  }

    #chkProsumer label {
      font-size: 0.7rem !important;
    }
  /*printpraza-mainPage*/
  .main-printplaza {
    padding: 1.5rem 0;
  }

  .program {
    padding: 1.5rem 0;
    background-image: none;
  }

  /*customer service-mainPage*/
  .customer-service-click {
    margin-bottom: 1rem;
  }

    .customer-service-click img {
      width: 45%
    }

  .customer-sub-header {
    font-size: 1.3rem
  }

  /*newsletter-mainPage*/
  .lp-btn-news {
    width: 80%;
    margin: 1rem 0;
  }

  .news-letter-header, .news-form-header {
    font-size: 1.1rem;
  }

  .news-form-name {
    width: 6.5rem;
  }

  .news-form-email {
    width: 13rem;
  }

  .news-list, .news-form-subtext {
    font-size: 0.9rem;
  }

  .text-nowrap, .news-form-subtext {
    font-size: 0.9rem;
  }

  .col-wrapper {
    padding-right: 0;
    padding-left: 0;
  }

  /* Typography */
  .h1, h1, .h1-b {
    font-size: 1.563rem;
  }

  .h2, h2, .h2-b {
    font-size: 1.125rem;
  }

  .h3, h3, .h3-b {
    font-size: 1.05rem;
  }

  .h5, h5, .h5-b {
    font-size: 0.8rem;
  }
  /* Typography end*/

  /* Brand info start */
  .about-ilabel, .ilabel2-Help {
    padding: 1.5rem 0;
  }

  .about-ilabel-panel {
    padding: 1rem;
  }

    .about-ilabel-panel article ul {
      padding-left: 0.75rem;
    }

  .about-istick-btn {
    padding: 0.313rem 0.625rem;
  }

    .about-istick-btn img {
      width: 1.875rem;
    }

  .side-nav-item {
    padding: 1rem;
  }

  .col-sm-6 { /*브랜드 소개 페이지 내 이미지 사이즈*/
    max-width: 50%;
  }

  .hide-for-small {
    display: none;
  }

  .small-order-1 {
    order: 1;
  }

  .small-order-2 {
    order: 2;
  }
  /* Brand info end */

  /* brnad menu page start */
  .ilabel-banner {
    background-image: none !important;
  }

  .brand-banner-subtit {
    font-size: 1.25rem;
    color: #222;
  }

  .brand-banner-tit {
    font-size: 2rem !important;
    margin-right: 0;
  }

  .brand-banner-cta {
    font-size: 1.1rem;
    color: #222;
    margin-top: 0;
  }

  .lp-btn {
    display: block;
    width: 100%;
  }

  .lp-btn-aboutpp {
    width: 100%;
  }

  /* brnad menu page end */

  .printplaza-slogan {
    width: 17rem;
  }

  /*FAQ*/

  .c-topic-panel-question {
    font-size: 1.1rem;
  }
  /*scroll up*/
  .back-to-top {
    font-size: 1.25rem;
  }


  .brand-banner-tit {
    color: #000000;
    margin-bottom: 0.5rem;
  }

  .lp-shop-card, .lp-shop-card-c {
    padding: 1rem;
  }

    .lp-shop-card p {
      font-size: 0.813rem;
    }

  .shop-img {
    max-height: 150px;
  }

  .brand-Shortcut {
    font-size: 1rem;
  }

  /* size and cut find */
  .lp-product-card-tit {
    font-size: 0.8rem;
  }

  .product {
    margin: 0 0.25rem;
  }

  .product-list {
    margin: 0 0 1.5rem;
  }

  .product-list-item {
    padding-right: 0;
    padding-left: 0;
  }

  .offcanvas-end {
    width: 100%;
  }

  .filter {
    padding: 0 2rem 2rem;
  }

  .filter-btn {
    display: flex;
    flex-wrap: nowrap;
    font-size: 0.8rem;
    width: auto !important;
  }

  .mat-category-title {
    font-size: 1rem !important;
  }

  .results-count {
    font-size: 1rem;
    font-weight: 700;
  }

  .video-center-banner {
    position: relative;
    background-image: none;
    background-color: #fefefe;
    z-index: 2;
    text-align: center;
    padding: 2rem;
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
  }

  .v-filter-container-off-canvas {
    width: 100% !important;
  }

  .p-header-cart-count {
    position: absolute;
    top: -9px;
    right: -12px;
    height: 1.2rem;
    width: 1.2rem;
  }

  .lp-btn-upload {
    width: 100%;
  }

  /* ilabel2 intro */
  .ilabel2-intro-banner {
    display: hide;
  }

  .pagination > li > a,
  .pagination > li > span {
    padding: 5px 11px !important;
  }


  .order-table-text td, .order-table-text th {
    font-size: 0.7rem;
  }

  .azdealer-now {
    font-size: 0.9rem;
  }

  .custom-made .c-custom-link-img {
    max-width: 100%;
    padding: 0.25rem;
  }

  .p-order-step-title {
    font-size: 1rem;
  }

  #selectedSumPrice {
    font-size: 1.2rem;
  }

  .p-product-top-header {
    font-size: 1.2rem;
  }

  .istick-img-control {
    margin: 0 auto;
    max-width: 14rem;
  }

  .v-carousel-main-image {
    margin: 0 auto;
    max-height: 100%;
  }
  /*AZ-dealer-info*/
  .az-info-img {
    width: 50%;
    height: auto;
    display: block;
    margin: auto;
  }

  .az-sub-tit {
    font-size: 0.9rem;
    line-height: 2;
  }

  #GetZip, .edit-zipcode {
    width: 61%;
  }

  .c-results-counter {
    font-size: 1.25rem;
    padding: 0.5rem;
  }

  .c-card-article .c-card-content {
    padding: 1rem;
    margin-top: 0;
  }

  .ilabel-logo {
    max-width: 50%;
  }

  .printing-agency .lp-panel {
    padding: 1rem;
  }

  .printing-agency-ckeck {
    font-size: 0.8rem;
  }

    .printing-agency-ckeck li {
      line-height: 1.5;
      padding-bottom: 0.5rem;
    }

  .design-confirm-img {
    max-width: 370px;
  }

  .p-material-details-img {
    max-width: 120px;
  }

  .print-option-img {
    max-width: 135px;
  }

  .view-compare-material {
    font-size: 0.8rem;
  }

  .ready-made-email {
    width: 48.5%;
  }

  .ready-made-email-select {
    margin-top: 0.25rem;
    width: 100%;
  }

  .editpw input {
    width: 100%;
  }

  #BPayInNameEscrow, #BPayInName {
    width: 100%;
  }

  /*        OPENING PAGE*/
  .opening-logo {
    justify-content: center;
  }

    .opening-logo a .brand-logo {
      height: auto;
      width: 200px;
    }

  .opening-banner-card {
    top: 60px;
    border-radius: 0;
    background: transparent;
    padding-left: 3rem;
  }

    .opening-banner-card h3 {
      font-size: 1rem;
    }

  .opening-banner-card-img {
    width: 150px;
  }

  .op-banner-tit {
    font-size: 1.2rem !important;
  }

  .company-img-group {
    background-image: none;
    height: 1592px;
  }

  .company-img-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 0;
  }

    .company-img-box div {
      width: 300px;
    }


  .opening-btn-text {
    font-size: 0.7rem;
  }

  .program-video {
    width: 450px;
  }

  .program-sub-text {
    font-size: 1rem;
  }

  #ProductCertify .carousel-item {
    margin-top: 16px;
  }


    #ProductCertify .carousel-item img {
      width: 65%;
    }

  .catalog-img-box {
    width: 250px;
  }

  #ProductProgram .program-video {
    width: 350px;
  }

  .catalog-card img {
    width: 200px;
  }

  .case-img {
    width: 300px;
  }

  .catalog-card-itag {
    margin: 0 0px;
    margin-bottom: 30px;
  }

  .border_dotted {
    font-size: .6rem;
    padding-top: 2rem;
  }

    .border_dotted::after {
      display: none;
    }

  .circle_blue {
    width: 8rem;
    display: block;
    margin-bottom: 0.5rem;
  }

  .sm_padding {
    padding-top: 1rem;
  }

  .sns_icon {
    display: flex;
    text-align: center;
  }

  .azinfo-card {
    height: 250px;
    padding: 16px;
    justify-content: center;
  }

    .azinfo-card img {
      height: 100px;
      margin-bottom: 1rem;
    }

  .azinfo-img {
    height: auto;
    margin-bottom: 3rem;
  }

  #PrintingAgency-accordion .accordion-title,
  #CustomMade-accordion .accordion-title {
    font-size: 0.9rem;
  }

  .printingagency_process_desc,
  .custommade_process_desc {
    padding: 15px;
  }

  .arrow::after {
    content: "\f107";
  }
}

@media screen and (max-width: 575px) {
  .sns_icon {
    display: block;
    text-align: center;
  }

    .sns_icon .sns_text {
      border-right: none;
    }

  .sns_text {
    padding: 0.5rem;
  }

  .movie-img-text {
    padding-right: 2.2rem;
  }

  .azinfo-circle-navy {
    height: 150px;
  }

  .azinfo-card {
    margin-bottom: 1rem !important;
  }

  .azinfo-circle-blue {
    padding: 16px;
  }

  .s-w-100 {
    width: 100%;
  }

  .main-printplaza h1 {
    font-size: 1.2rem;
  }

  .main-printplaza .h3 {
    font-size: 1.15rem;
  }

  .printplaza-intro-card {
    font-size: .9rem;
    padding: 16px;
    margin-bottom: 1rem;
  }

  .printingagency_process_tit,
  .custommade_process_tit {
    font-size: .9rem;
  }

  .printingagency_process_desc,
  .custommade_process_desc {
    margin-top: .7rem;
  }

  .printingagency_process_product,
  .custommade_process_product {
    width: 100%;
  }

  .printingagency_process_info,
  .custommade_process_info {
    width: 100%;
    margin-top: 1rem;
  }
}

/*Opening Banner Mobile*/
@media screen and (max-width: 442px) {

  .az-price-word {
    font-size: 0.7rem;
  }

  .opening-banner {
    background-position-x: 35%;
  }

  .catalog-type-box {
    flex-direction: column;
  }

  .catalog-slogan-img {
    height: 50px;
    width: auto;
  }

  /*ipack container start*/
  .ipack-container-bg {
    color: white;
  }
  /*ipack container end*/

  /* Opening Page MEDIA CENTER */
  .news_section {
    background-size: cover;
  }

  .img_text .text01 {
    font-size: 12px;
  }

  .img_text {
    padding-top: 10rem;
    padding-right: 2rem;
  }

  .news_section:hover {
    background-size: cover;
  }


  .catalog-card-istick-inner {
    flex-direction: column;
  }

    .catalog-card-istick-inner > div {
      border-right: none;
      border-bottom: 1px dotted #939598;
    }

      .catalog-card-istick-inner > div:last-child {
        border-bottom: none;
      }

  .news_section {
    background-size: 570%;
  }

  .catalog-pp-txt-box {
    flex-direction: column;
    align-items: flex-start;
  }

    .catalog-pp-txt-box div {
      margin-bottom: 12px !important;
    }

  .company-img-box div {
    width: 270px;
  }

  .news_section:hover {
    background-size: 590%;
  }

  .ic_size {
    width: 20%;
  }

  .slider > .carousel-indicators [data-bs-target] {
    padding: 10px;
  }

  .azinfo-card {
    padding: 16px;
    height: 250px;
  }

    .azinfo-card img {
      padding-bottom: 0.5rem;
    }

  .xs-w-100 {
    width: 100%;
  }

  .printingagency_process_box,
  .custommade_process_box {
    display: flex !important;
    flex-direction: column;
  }
}


/*모바일 반응형 너비시작점*/
@media screen and (max-width: 499px) {
  .company-img-group {
    height: 1475px;
  }
}

/*갤럭시 폴드 max-width 280*/
@media screen and (max-width: 285px) {
  .h1, h1, .h1-b {
    font-size: 1.2rem;
  }

  .h2, h2, .h2-b {
    font-size: 1rem;
  }

  .h3, h3, .h3-b {
    font-size: 0.95rem;
  }

  /*    .h5, h5, .h5-b {
        font-size: 0.8rem;
    }*/
  /* Typography end*/

  .col-xs-12 {
    max-width: 100% !important;
  }

  .lp-main-header {
    font-size: 1rem;
    padding-left: 0.5rem;
  }


  /*헤더 아이콘 wrapper*/
  .top-mobile-account-wrapper, .top-mobile-cart-wrapper, .top-search-wrapper, .top-menu-wrapper {
    border-radius: 4px;
    display: inline-block;
    padding: 0.35rem;
  }

    .top-mobile-account-wrapper:hover, .top-mobile-cart-wrapper:hover, .top-search-wrapper:hover, top-menu-wrapper:hover {
      background: #ddd;
    }

  .main-banner-subtit {
    font-size: 0.85rem;
  }

  .promises-bar-item {
    display: inline-block;
    position: relative;
    color: #fff;
    padding: 0.8rem 0;
    cursor: pointer;
    font-weight: 500;
    font-size: 0.75rem;
  }

  /*shopping primary*/
  .shopping-primary-card {
    padding: 1.5rem 1.2rem;
  }

    .shopping-primary-card img {
      width: 9rem;
    }

  .shopping-primary-card-subtit {
    font-size: 0.85rem;
  }

  .shopping-primary-card-link {
    font-size: 0.75rem;
  }

  /*printplaza*/
  .printplaza-slogan {
    width: 13rem;
  }

  .lp-btn-pp {
    font-size: 0.7rem;
  }

  /*customer service*/
  .customer-service-click {
    padding: 1rem;
  }

    .customer-service-click img {
      width: 55%;
    }

  .customer-sub-header {
    font-size: 1.1rem;
  }
  /*newsletter*/
  .news-letter-header {
    font-size: 1rem;
  }

  .news-form-header {
    font-size: 1rem;
  }

  .text-nowrap, .news-form-subtext {
    font-size: 0.75rem;
    font-weight: normal;
  }

  .news-form-input input {
    font-size: 0.85rem;
  }

  .news-list {
    padding-left: 0px;
  }

  .back-to-top {
    padding: 0.5rem 1rem;
  }


  /* Brand info*/
  .about-istick-btn {
    margin: 0.938rem 0;
    padding: 0.188rem 0.5rem;
  }

    .about-istick-btn img {
      width: 1.563rem;
    }

  .ilabel2-sidebar-header {
    font-size: 0.8rem;
  }

  .side-nav-item, .c-nav-sidebar-item, .ilabel2-sidebar-item {
    padding: 0.5rem;
    font-size: 0.85rem;
  }

  .accordion-title {
    padding: 1rem 0.5rem;
    font-size: 0.85rem;
  }
  /* brnad menu page start */
  .brand-banner-subtit {
    font-size: .8rem;
    margin: 0 !important;
  }

  .lp-btn, .lp-btn-del {
    display: block;
    width: 100%;
    font-size: 0.75rem;
  }

  .lp-btn-modal, .btn-filter-reset {
    font-size: 0.75rem;
  }

  .btn-filter-reset {
    padding: 0.5rem 1rem;
  }

  .lp-mat-box-item {
    font-size: 0.7rem;
  }

  .lp-mat-box-print-info {
    font-size: 0.675rem;
  }

  .breadcrumb {
    font-size: 0.75rem;
  }
  /* brnad menu page end */

  .lp-card-full-img .lp-card-content p {
    font-size: 0.87rem;
    line-height: 1.4;
  }


  /*FAQ*/

  .c-topic-panel-question {
    font-size: 0.85rem;
    padding: 0.5rem;
  }

    .c-topic-panel-question::after {
      top: 0.5rem;
      right: 0;
    }

  .c-results-counter {
    font-size: 1.3rem;
  }
  /*iLabel2Program*/
  .ilabel2-down-btn {
    font-size: 1rem;
  }
  /*video*/
  .brand-banner-cta {
    font-size: 0.9rem;
  }

  /*news*/
  .c-news-search-input, .c-news-select {
    font-size: 0.7rem;
    height: 2.1rem;
  }

  table tbody {
    font-size: 0.75rem;
  }

  .pagination {
    font-size: 0.7rem;
  }

    .pagination > li > a, .pagination > li > span {
      padding: 5px 8px !important;
    }

  /*1to1*/
  .table-one th {
    font-size: 0.1rem !important;
  }

  .table-one tr {
    font-size: 0.1rem !important;
  }
  /*my-menu*/
  .hide-for-fold {
    display: none;
  }

  .show-for-fold {
    display: block !important;
  }

  .order-table-text td, .order-table-text th {
    font-size: 0.7rem;
  }

  .card-body .azdealer-now {
    padding: 0rem;
  }
  /* size and cut find */
  .v-dlp-container-label-results {
    font-size: 0.85rem;
  }

  .results-count, .disp-container {
    font-size: 0.8rem;
  }

  .category-dsc {
    font-size: 0.8rem
  }

  /*  */
  .lp-card-tit {
    font-size: 0.8rem !important;
  }

  .p-product-top-header {
    font-size: 1rem;
  }

  .p-order-step-title {
    font-size: 0.9rem
  }

    .p-order-step-title button {
      font-size: 0.6rem;
    }

  .p-header-cart-count {
    position: absolute;
    top: -5px;
    right: -5px;
    height: 1rem;
    width: 1rem;
    line-height: 0.9rem;
    font-size: 0.5rem;
  }
  /*labelFinder*/
  .label-finder-tit {
    font-size: 0.9rem;
  }

  .label-finder-sub-tit {
    font-size: 0.8rem
  }

  .label-finder-selection {
    padding: 0.9rem;
  }

  .finder-tit-color {
    font-size: 0.9rem;
  }

  .finder-sel-text {
    font-size: 0.8rem;
  }

  .label-finder-selection-btn {
    font-size: 0.8rem;
  }

  .label-finder-selection-popover label {
    font-size: .8rem;
  }

  .finder-input-control {
    padding: 0.1rem;
  }

  .size-result-btn {
    font-size: 0.9rem
  }

  .fa-check-circle {
    font-size: 0.9rem
  }

  .fa-chevron-down {
    font-size: 0.9rem
  }
  /*Detail for Sheet*/
  #byPack li button {
    font-size: 0.8rem;
  }

  .p-order-step-title {
    font-size: 0.8rem;
  }

  #selectedSumPrice {
    font-size: 1rem;
  }

  .c-panel {
    padding: 1rem;
  }

  #GetZip, .edit-zipcode {
    width: 45%;
  }

  #frmOrder .lp-panel {
    padding: 1rem;
  }

  .in-page-promises-bar-item {
    padding: 1rem 0.25rem;
  }

  .find-product {
    font-size: 0.9rem;
  }

  .lp-product-card {
    padding: 1rem;
  }

  .shop-tit {
    font-size: 1rem;
  }

  .ilabel-logo {
    max-width: 70%;
  }

  .main-banner {
    padding: 2rem 1rem;
  }

  .design-confirm-img {
    max-width: 260px;
  }

  .p-material-details-img {
    max-width: 75px;
  }

  .print-option-img {
    max-width: 90px;
  }

  .p-order-area-add-to-cart .lp-btn {
    font-size: 0.8rem;
    padding: 1rem;
  }

  .ready-made-email {
    width: 45%;
  }

  .ready-made-email-select {
    margin-top: 0.25rem;
    width: 100%;
  }

  .editpw .btn-mofidy, .btn-Out {
    width: 100%;
  }

  /*        OPENING PAGE*/
  .opening-logo a .brand-logo {
    height: auto;
  }

  .opening-banner {
    height: 300px !important;
    background-position-x: 80%;
  }

  .opening-banner-card,
  .opening-banner-card-bottom {
    display: none;
  }

  .opening-banner-card-img {
    width: 180px;
  }

  .company-img-group {
    height: 1450px;
  }

  .company-img-box div {
    width: 250px;
  }

  .op-product-card {
    flex-direction: column;
  }

  #ProductProgram .program-video {
    width: 250px;
  }

  .program-sub-header {
    font-size: 1.5rem;
  }

  #ProductProgram h4 {
    font-size: 0.95rem;
  }

  .program-sub-text {
    font-size: 0.8rem;
  }

  .catalog-slogan-img {
    height: 35px;
  }

  .azinfo-card {
    height: 200px;
    margin-bottom: 1rem !important;
  }

    .azinfo-card img {
      height: 120px;
      margin-bottom: 1rem;
    }

  .main-printplaza .h3 {
    font-size: 1rem;
  }

  .printplaza-card {
    padding: 16px 0px;
  }

  #PrintingAgency-accordion .accordion-title,
  #CustomMade-accordion .accordion-title {
    padding: 1rem !important;
  }

  #PrintingAgency-accordion .accordion-item,
  #CustomMade-accordion .accordion-item {
    margin: 10px 8px;
  }

  #PrintingAgency-accordion .accordion-content img,
  #CustomMade-accordion .accordion-content img {
    max-width: 150px;
  }


  .printingagency_process_dots > li > p,
  .custommade_process_dots > li > p {
    font-size: .9rem;
  }

  .printingagency_process_box, .custommade_process_box {
    margin: 0 25px;
  }

  .printingagency_process_info, .custommade_process_info {
    margin-top: 1rem;
  }

  .printingagency_process_desc,
  .custommade_process_desc {
    font-size: .8rem;
  }


  .printingagency_process_wrap .slick-arrow,
  .custommade_process_wrap .slick-arrow {
    top: 40%;
  }
}

@media (max-width: 425px) {
  .show-for-medium.zpd-thumb-list.zpd-thumb-list-bottom {
    display: none !important;
  }
}

/* #region 사전 예약 페이지 */
/*제트프린터 랜딩페이지*/

@media (max-width: 1024px) {
  .nav-links {
    display: none;
  }

  .btn-cta-nav {
    display: none !important;
  }

  .nav-hamburger {
    display: flex;
  }

  .nav-inner {
    padding: 0 4.375rem;
  }

  .nav-drawer-header {
    padding: 0 4.375rem;
  }

  .nav-drawer-body {
    padding: 1rem 4.375rem;
  }

  .hero {
    min-height: 50rem;
  }

  .hero-contents {
    padding: 6.25rem 4.375rem 4.375rem;
  }

  .hero-sub {
    font-size: 0.875rem;
    letter-spacing: 0.0875rem;
  }

  .hero-headline p {
    font-size: 3rem;
    line-height: 3rem;
  }

    .hero-headline p strong {
      font-size: 4rem;
    }

  .hero-headline-brand {
    font-size: 4rem !important;
  }

  .hero-desc {
    font-size: 1.125rem;
  }

  .btn-hero {
    font-size: 1.125rem;
    padding: 1.375rem 2rem;
  }

  .section-headline {
    font-size: 2.75rem;
  }

  .section-sub {
    font-size: 1.125rem;
  }

  .solution .section-sub {
    font-size: 1.125rem;
  }

  .about {
    padding: 6.25rem 0;
    gap: 3.75rem;
  }

  .about-img-wrap {
    height: 31.25rem;
  }

  .compare-cell {
    font-size: 0.875rem;
    padding: 1.5rem;
    letter-spacing: -0.02rem;
  }

  .compare-cell--header {
    font-size: 0.875rem;
    padding: 1.5rem;
  }

  .business {
    height: auto;
    padding: 6.25rem 4.375rem;
    gap: 3.75rem;
  }

  .business-headline {
    font-size: 2.75rem;
  }

  .business-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }

  .biz-label {
    font-size: 1.5rem;
  }

  .solution {
    padding: 6.25rem 4.375rem;
  }

  .sol-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .sol-card-img-wrap {
    width: 100%;
    height: 18rem;
  }

  .label-section {
    padding: 6.25rem 4.375rem;
  }

  .label-headline {
    font-size: 2.75rem;
  }

  .label-desc {
    font-size: 1.125rem;
  }

  .faq {
    padding: 6.25rem 4.375rem;
  }

  .faq-sub {
    font-size: 1.125rem;
  }

  .final-offer {
    padding: 6.25rem 4.375rem;
  }

  .final-headline {
    font-size: 2.75rem;
  }

  .final-sub {
    font-size: 1.125rem;
  }

  .footer {
    padding: 6.25rem 4.375rem;
  }
}

@media (max-width: 767px) {
  .nav-inner {
    padding: 0 1.25rem;
    height: 6.25rem;
  }

  .nav-drawer-header {
    padding: 0 1.25rem;
  }

  .nav-drawer-body {
    padding: 1rem 1.25rem;
  }

  .br-mobile {
    display: block;
  }

  .hero-contents {
    padding: 6.25rem 1.25rem 4.375rem;
    gap: 6.25rem;
    align-items: stretch;
  }

  .hero-text {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 1.875rem;
  }

  .hero-inner {
    gap: 1.5rem;
  }

  .hero-sub {
    font-size: 0.75rem;
    letter-spacing: 0.075rem;
  }

  .hero-headline {
    gap: 0.5rem;
  }

    .hero-headline p {
      font-size: 2rem;
      line-height: 2.5rem;
    }

      .hero-headline p strong {
        font-size: 2.5rem;
      }

  .hero-headline-brand {
    font-size: 2.5rem !important;
  }

  .hero-desc {
    font-size: 0.875rem;
  }

  .btn-hero {
    font-size: 0.875rem;
    width: 100%;
    padding: 1.375rem 2rem;
  }

  .section-headline {
    font-size: 2rem;
  }

  .section-sub {
    font-size: 0.875rem;
  }

  .about {
    padding: 4.375rem 0;
    gap: 3.75rem;
  }

  .about-img-wrap {
    height: 17.5rem;
    width: calc(100% - 2.5rem);
    max-width: none;
  }

  .compare-table {
    width: calc(100% - 2.5rem);
    max-width: none;
  }

  .compare-cell {
    font-size: 0.75rem;
    line-height: 1.7;
    padding: 1.5rem 0.75rem;
    letter-spacing: -0.015rem;
  }

  .compare-cell--header {
    font-size: 0.75rem;
    padding: 1.5rem 0.75rem;
    min-height: 5.5rem;
  }

  .business {
    height: auto;
    padding: 4.375rem 1.25rem;
    gap: 3rem;
  }

  .business-sub-text {
    font-size: 0.75rem;
    letter-spacing: 0.075rem;
  }

  .business-headline {
    font-size: 2rem;
  }

  .business-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
  }

  .biz-card {
    gap: 2.5rem;
  }

  .biz-label {
    font-size: 1.125rem;
  }

  .solution {
    padding: 4.375rem 1.25rem;
  }

    .solution .section-sub {
      font-size: 0.875rem;
      text-align: center;
    }

  .section-sub-sep {
    display: none;
  }

  .section-sub-pipe {
    display: block;
    text-align: center;
    line-height: 1.6;
  }

  .sol-card {
    flex-direction: column;
  }

  .sol-card-img-wrap {
    width: 100%;
    height: 14rem;
  }

  .sol-card-title {
    font-size: 1.75rem;
  }

  .sol-card-desc p {
    font-size: 0.75rem;
  }

  .flow-diagram img {
    width: 100%;
    height: auto;
  }

  .label-section {
    padding: 4.375rem 1.25rem;
  }

  .label-sub-text {
    font-size: 0.75rem;
  }

  .label-headline {
    font-size: 2rem;
  }

  .label-desc {
    font-size: 0.875rem;
  }

  .label-card-row {
    flex-direction: column;
  }

  .label-card {
    height: auto;
    min-height: 14rem;
  }

  .faq {
    padding: 4.375rem 1.25rem;
  }

  .faq-title {
    font-size: 2rem;
  }

  .faq-sub {
    font-size: 0.875rem;
  }

  .faq-item {
    padding: 1.5rem;
  }

  .final-offer {
    padding: 4.375rem 1.25rem;
  }

  .final-headline {
    font-size: 2rem;
  }

  .final-sub {
    font-size: 0.875rem;
  }

  .btn-cta-final {
    width: 100%;
    font-size: 1rem;
    text-align: center;
    padding: 1.25rem 1.5rem;
  }

  .footer {
    padding: 4.375rem 1.25rem;
  }

  .footer-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1.5rem;
  }

  .footer-bottom {
    flex-direction: column;
    gap: 0.25rem;
    text-align: center;
    align-items: center;
  }
}

/*제트프린터 상세페이지*/

@media (max-width: 767px) {

  .ps-row {
    grid-template-columns: 1fr;
  }

  .ps-label {
    background: #fafafa;
    font-weight: 600;
  }

  .ps-value {
    border-left: none;
  }

  .ps-row::after {
    left: 0;
  }

  .notice-card {
    padding: 1.5rem;
  }

  .notice-body {
    font-size: 0.875rem;
  }

  .notice-tel {
    font-size: 1.125rem;
  }
}

/* ===== 반응형 ===== */
@media (min-width: 768px) {

  .zp-structure {
    padding: 5rem 2rem;
  }

  .zp-structure-pc {
    display: flex;
    flex-direction: column;
    gap: 3rem;
  }

  .zp-structure-mobile {
    display: none;
  }

  .zp-structure-pc img {
    width: 100%;
    display: block;
  }
}

@media (max-width: 1024px) {

  .sol-card {
    flex-direction: column; /* 가로 → 세로 */
    padding: 1.25rem;
    gap: 1rem;
  }

  .sol-card-text {
    flex: 0 0 100%;
    max-width: 100%; /* 텍스트 전체 너비 */
  }

  .sol-card-img-wrap {
    flex: 0 0 100%;
    max-width: 100%; /* 이미지 전체 너비 */
    height: 220px;
  }

    .sol-card-img-wrap img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

  .sol-card-num {
    font-size: 2.5rem;
  }

  .sol-card-title {
    font-size: 1.5rem;
  }

  .sol-card-desc p {
    font-size: 0.9rem;
  }

  .sol-card-img-wrap--printer img {
    width: 75%;
    object-fit: contain;
  }
}

}

@media (max-width: 480px) {

  .sol-card-img-wrap {
    height: 180px;
  }

  .sol-card-num {
    font-size: 2rem;
  }

  .sol-card-title {
    font-size: 1.25rem;
  }

  .sol-cards {
    gap: 1rem;
  }
}

@media (max-width: 768px) {

  /* 헤더 숨김 */
  .driver-table thead {
    display: none;
  }

  /* 전부 block화 */
  .driver-table,
  .driver-table tbody,
  .driver-tr,
  .driver-td {
    display: block;
    width: 100%;
  }

  .driver-tr {
    background: #f8f8f8;
    margin-bottom: 1rem;
    padding: 1rem;
    border-radius: 8px;
    border-bottom: none;
  }

  .driver-td {
    display: flex;
    align-items: center;
    padding: 0.4rem 0;
    text-align: left;
  }

    /* 라벨 표시 */
    .driver-td::before {
      content: attr(data-label);
      font-weight: 600;
      color: #666;
    }

    /* 다운로드 버튼 정렬 */
    .driver-td:last-child {
      justify-content: flex-end;
    }
}
/* #endregion */
@media screen and (max-width: 767px) {
  .nav-wrap.is-drawer-open {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .nav-drawer.open {
    z-index: 10000;
  }
}

/*임시*/
@media screen and (max-width: 1024px) {
  .zp-preorder-benefit-inner {
    flex-direction: column;
    gap: 1.5rem;
  }

  .zp-preorder-benefit-badge {
    order: 1;
  }

  .zp-preorder-benefit-coupons {
    order: 2;
    width: 100%;
  }
}

/* =========================================
       Mobile
       767px 이하: 쿠폰 세로 배열
       ========================================= */

@media screen and (max-width: 767px) {
  .zp-preorder-page {
    max-width: 100%;
  }

  .zp-preorder-hero-button {
    left: 50%;
    bottom: 8.5%;
    margin-top: 0 !important;
    transform: translateX(-50%) !important;
  }

    .zp-preorder-hero-button:hover,
    .zp-preorder-hero-button:focus,
    .zp-preorder-hero-button:active {
      left: 50%;
      bottom: 8.5%;
      margin-top: 0 !important;
      transform: translateX(-50%) !important;
    }

  .zp-preorder-benefit-section {
    padding: 2rem 1.25rem;
  }

  .zp-preorder-benefit-inner {
    flex-direction: column;
    gap: 1.25rem;
  }

  .zp-preorder-benefit-badge img {
    width: 92px;
  }

  .zp-preorder-benefit-coupons {
    order: 2;
    width: 90%;
    flex-direction: column;
    gap: 1rem;
    margin: 0 auto;
  }

  .zp-preorder-benefit-coupon {
    width: 90%;
    max-width: 440px;
    margin: 0 auto;
  }

  .zp-preorder-button-wrap {
    padding-top: 2rem;
  }

  .zp-preorder-notice {
    margin-top: 2.5rem;
  }

  .custom-notice-box {
    padding: 1.25rem;
  }

  .custom-notice-content {
    font-size: 0.9rem;
  }
}

/* =========================================
   EL Landing Responsive - 초록이음 소개
   기준: site-media.css 하단 추가
   ========================================= */

/* ===============================
   Tablet / Small Desktop
   max-width: 900px
   =============================== */
@media screen and (max-width: 900px) {

  /* Floating Nav */
  .el-landing-nav {
    height: 50px;
    top: auto;
    right: 16px;
    bottom: 18px;
    transform: none;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    max-width: calc(100vw - 32px);
    padding: 10px 12px;
    border-radius: 999px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    backdrop-filter: blur(18px) saturate(130%);
    -webkit-backdrop-filter: blur(18px) saturate(130%);
  }

  .el-landing-logo {
    flex: 0 0 auto;
  }

  .el-landing-logo-img {
    height: 28px;
  }

  .el-landing-links {
    flex-direction: row;
    flex: 0 0 auto;
    gap: 8px;
    white-space: nowrap;
  }

    .el-landing-links a {
      min-width: auto;
      min-height: 32px;
      padding: 0 12px;
      font-size: 12px;
    }

  /* Hero */
  .el-landing-hero {
    min-height: calc(100vh - 64px);
  }

  .el-landing-hero-content {
    padding: 100px 24px 70px;
  }

  .el-landing-hero-badge {
    margin-bottom: 30px;
    font-size: 12px;
    padding: 8px 16px;
  }

  .el-landing-hero-line {
    font-size: clamp(56px, 17vw, 88px);
    letter-spacing: -2px;
  }

  .el-landing-hero-sub-row {
    gap: 24px;
    margin-bottom: 40px;
  }

  .el-landing-hero-sub {
    font-size: 14px;
    max-width: 100%;
  }

  .el-landing-hero-actions {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .el-landing-hero-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(15, 42, 23, 0.75) 0%, rgba(15, 42, 23, 0.2) 60%, transparent 100%), url('https://images.label.kr/site/www_label_kr/el-cover-img-t.jpg') center / cover no-repeat;
  }

  /* Stats */
  .el-landing-stats-band {
    padding: 40px 24px;
  }

  .el-landing-stats-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .el-landing-stat-divider {
    display: none;
  }

  /* Common Section */
  .el-landing-section {
    padding: 80px 24px;
  }

  .el-landing-section-title {
    font-size: 34px;
  }

  /* About */
  .el-landing-about-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .el-landing-about-text p {
    font-size: 15px;
  }

  .el-landing-cert-card {
    padding: 22px 24px;
  }

  /* Features */
  .el-landing-features-section {
    padding: 80px 24px;
  }

  .el-landing-features-header {
    margin-bottom: 44px;
  }

  .el-landing-features-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .el-landing-feature-card {
    padding: 34px 30px;
  }

  /* Comparison */
  .el-landing-comparison-section {
    padding: 80px 24px 64px;
  }

  .el-landing-comparison-inner {
    max-width: 100%;
  }

  .el-landing-comparison-header {
    margin-bottom: 40px;
  }

  .el-landing-comparison-grid {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 24px !important;
    width: 100%;
  }

  .el-landing-comparison-card {
    flex: none !important;
    width: 100% !important;
    max-width: 420px !important;
    min-height: 0;
  }

  .el-landing-comparison-vs {
    flex: none !important;
    width: auto !important;
    margin: 0;
    font-size: 26px;
  }

  .el-landing-comparison-img-wrap {
    height: 260px;
  }

  .el-landing-comparison-body {
    padding: 28px 26px 30px;
  }

  /* CTA */
  .el-landing-cta-section {
    padding: 80px 24px 96px;
  }

  .el-landing-cta-top-action {
    margin-bottom: 56px;
  }

  .el-landing-cta-title {
    font-size: 30px;
  }

  .el-landing-cta-desc {
    font-size: 15px;
  }

  .el-landing-cta-sample-grid {
    grid-template-columns: 1fr !important;
    gap: 44px;
  }

  .el-landing-letter-card {
    padding: 36px 28px;
    transform: none;
  }

  .el-landing-letter-title {
    font-size: 25px;
  }

  .el-landing-letter-body {
    font-size: 14px;
  }

  .el-landing-sample-visual-wrap {
    min-height: 320px;
  }
}

/* ===============================
   Mobile
   max-width: 640px
   =============================== */
@media screen and (max-width: 640px) {

  .el-landing-hero-content {
    padding: 92px 22px 64px;
  }

  .el-landing-hero-typo {
    margin-bottom: 32px;
  }

  .el-landing-hero-line {
    font-size: clamp(52px, 17vw, 78px);
  }

  .el-landing-btn-primary {
    width: 100%;
    justify-content: center;
  }

  .el-landing-btn-secondary {
    padding: 10px 0;
  }

  .el-landing-section-title {
    font-size: 31px;
  }

  .el-landing-features-sub {
    font-size: 14px;
    line-height: 1.7;
  }

  .el-landing-about-text p br,
  .el-landing-feature-desc br,
  .el-landing-letter-body br {
    display: none;
  }

  .el-landing-cert-card {
    gap: 16px;
  }

  .el-landing-cert-icon {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }

  .el-landing-hero-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(15, 42, 23, 0.75) 0%, rgba(15, 42, 23, 0.2) 60%, transparent 100%), url('https://images.label.kr/site/www_label_kr/el-cover-img-m.jpg?v=5') center / cover no-repeat;
  }
}

/* ===============================
   Small Mobile
   max-width: 480px
   =============================== */
@media screen and (max-width: 480px) {

  /* Floating Nav */
  .el-landing-nav {
    left: 12px;
    right: 12px;
    bottom: 14px;
    justify-content: flex-start;
    max-width: none;
    padding: 9px 10px;
    gap: 7px;
    background: rgba(15, 42, 23, 0.52);
    backdrop-filter: blur(18px) saturate(130%);
    -webkit-backdrop-filter: blur(18px) saturate(130%);
  }

  .el-landing-logo-img {
    height: 24px;
  }

  .el-landing-links {
    gap: 7px;
  }

    .el-landing-links a {
      min-height: 30px;
      padding: 0 10px;
      font-size: 11px;
    }

  /* Hero */
  .el-landing-hero {
    min-height: 100vh;
  }

  .el-landing-hero-content {
    padding: 88px 18px 58px;
  }

  .el-landing-hero-badge {
    font-size: 11px;
    padding: 7px 14px;
    margin-bottom: 26px;
    letter-spacing: 1.4px;
  }

  .el-landing-hero-line {
    font-size: clamp(46px, 18vw, 70px);
    letter-spacing: -1.5px;
  }

  .el-landing-hero-sub-row {
    margin-bottom: 34px;
  }

  .el-landing-hero-sub {
    font-size: 13px;
    line-height: 1.75;
  }

  .el-landing-scroll-hint {
    bottom: 24px;
  }

  /* Stats */
  .el-landing-stats-band {
    padding: 34px 18px;
  }

  .el-landing-stat-num {
    font-size: 36px;
  }

  .el-landing-stat-label {
    font-size: 12px;
  }

  /* Common */
  .el-landing-section {
    padding: 72px 18px;
  }

  .el-landing-section-tag {
    margin-bottom: 14px;
    font-size: 10px;
    letter-spacing: 2.4px;
  }

  .el-landing-section-title {
    font-size: 30px;
    line-height: 1.25;
    letter-spacing: -0.8px;
  }

  /* About */
  .el-landing-about-grid {
    gap: 34px;
  }

  .el-landing-about-text p {
    font-size: 14px;
    line-height: 1.85;
  }

  .el-landing-cert-card {
    padding: 20px 18px;
    border-radius: 14px;
  }

  .el-landing-cert-title {
    font-size: 14px;
  }

  .el-landing-cert-desc {
    font-size: 12px;
  }

  /* Features */
  .el-landing-features-section {
    padding: 72px 18px;
  }

  .el-landing-features-header {
    margin-bottom: 34px;
  }

  .el-landing-feature-card {
    padding: 30px 24px;
    border-radius: 20px;
  }

  .el-landing-feature-title {
    font-size: 17px;
  }

  .el-landing-feature-desc {
    font-size: 13px;
  }

  /* Comparison */
  .el-landing-comparison-section {
    padding: 72px 18px 56px;
  }

  .el-landing-comparison-header {
    margin-bottom: 34px;
    text-align: center;
  }

    .el-landing-comparison-header .el-landing-section-title {
      margin-bottom: 14px;
      font-size: 30px;
    }

    .el-landing-comparison-header .el-landing-features-sub {
      font-size: 14px;
      line-height: 1.7;
    }

  .el-landing-comparison-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 22px !important;
    width: 100%;
  }

  .el-landing-comparison-card {
    flex: none !important;
    width: 100% !important;
    max-width: 360px !important;
    min-height: 0;
    border-radius: 20px;
  }

  .el-landing-comparison-img-wrap {
    height: 220px;
    border-radius: 18px 18px 0 0;
  }

  .el-landing-comparison-badge {
    top: 12px;
    left: 12px;
    min-height: 26px;
    padding: 6px 12px;
    font-size: 11px;
  }

  .el-landing-comparison-body {
    padding: 24px 22px 26px;
  }

  .el-landing-comparison-title {
    margin-bottom: 16px;
    font-size: 17px;
  }

  .el-landing-comparison-list {
    gap: 9px;
  }

    .el-landing-comparison-list li {
      font-size: 13px;
      line-height: 1.45;
      gap: 8px;
    }

      .el-landing-comparison-list li::before {
        width: 12px;
        min-width: 12px;
        font-size: 12px;
      }

  .el-landing-comparison-vs {
    flex: none !important;
    width: auto !important;
    margin: -2px 0;
    font-size: 24px;
    line-height: 1;
  }

  .el-landing .el-landing-about-certs {
    gap: 16px !important;
  }

  /* CTA */
  .el-landing-cta-section {
    padding: 72px 18px 92px;
  }

  .el-landing-cta-title {
    font-size: 28px;
  }

  .el-landing-cta-desc {
    font-size: 14px;
    line-height: 1.7;
  }

  .el-landing-letter-card {
    padding: 30px 22px;
    border-radius: 20px;
  }

  .el-landing-letter-label {
    margin-bottom: 18px;
    font-size: 11px;
  }

  .el-landing-letter-title {
    font-size: 23px;
  }

  .el-landing-letter-body {
    font-size: 13px;
  }

  .el-landing-sample-visual-wrap {
    min-height: 260px;
  }

    .el-landing-sample-visual-wrap img {
      max-width: 360px;
    }
}

/* ===============================
   Very Small Mobile
   max-width: 366px
   =============================== */
@media screen and (max-width: 366px) {

  .el-landing-links a {
    padding: 0 8px;
    font-size: 10px;
  }

  .el-landing-logo-img {
    height: 22px;
  }

  .el-landing-hero-line {
    font-size: clamp(42px, 18vw, 62px);
  }

  .el-landing-section-title,
  .el-landing-comparison-header .el-landing-section-title {
    font-size: 27px;
  }

  .el-landing-feature-card {
    padding: 28px 20px;
  }

  .el-landing-comparison-img-wrap {
    height: 200px;
  }

  .el-landing-letter-title {
    font-size: 21px;
  }
}

/* CTA 샘플 영역 - 태블릿 이상 좌우 배치 유지 */
@media screen and (max-width: 768px) {
  .el-landing .el-landing-cta-sample-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 44px !important;
  }
}

/*제트프린터 랜딩페이지*/

@media (max-width: 1024px) {
  .nav-links {
    display: none;
  }

  .btn-cta-nav {
    display: none !important;
  }

  .nav-hamburger {
    display: flex;
  }

  .nav-inner {
    padding: 0 4.375rem;
  }

  .nav-drawer-header {
    padding: 0 4.375rem;
  }

  .nav-drawer-body {
    padding: 1rem 4.375rem;
  }

  .hero {
    min-height: 50rem;
  }

  .hero-contents {
    padding: 6.25rem 4.375rem 4.375rem;
  }

  .hero-sub {
    font-size: 0.875rem;
    letter-spacing: 0.0875rem;
  }

  .hero-headline p {
    font-size: 3rem;
    line-height: 3rem;
  }

    .hero-headline p strong {
      font-size: 4rem;
    }

  .hero-headline-brand {
    font-size: 4rem !important;
  }

  .hero-desc {
    font-size: 1.125rem;
  }

  .btn-hero {
    font-size: 1.125rem;
    padding: 1.375rem 2rem;
  }

  .section-headline {
    font-size: 2.75rem;
  }

  .section-sub {
    font-size: 1.125rem;
  }

  .solution .section-sub {
    font-size: 1.125rem;
  }

  .about {
    padding: 6.25rem 0;
    gap: 3.75rem;
  }

  .about-img-wrap {
    height: 31.25rem;
  }

  .compare-cell {
    font-size: 0.875rem;
    padding: 1.5rem;
    letter-spacing: -0.02rem;
  }

  .compare-cell--header {
    font-size: 0.875rem;
    padding: 1.5rem;
  }

  .business {
    height: auto;
    padding: 6.25rem 4.375rem;
    gap: 3.75rem;
  }

  .business-headline {
    font-size: 2.75rem;
  }

  .business-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }

  .biz-label {
    font-size: 1.5rem;
  }

  .solution {
    padding: 6.25rem 4.375rem;
  }

  .sol-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .sol-card-img-wrap {
    width: 100%;
    height: 18rem;
  }

  .label-section {
    padding: 6.25rem 4.375rem;
  }

  .label-headline {
    font-size: 2.75rem;
  }

  .label-desc {
    font-size: 1.125rem;
  }

  .faq {
    padding: 6.25rem 4.375rem;
  }

  .faq-sub {
    font-size: 1.125rem;
  }

  .final-offer {
    padding: 6.25rem 4.375rem;
  }

  .final-headline {
    font-size: 2.75rem;
  }

  .final-sub {
    font-size: 1.125rem;
  }

  .footer {
    padding: 6.25rem 4.375rem;
  }
}

@media (max-width: 767px) {
  .nav-inner {
    padding: 0 1.25rem;
    height: 6.25rem;
  }

  .nav-drawer-header {
    padding: 0 1.25rem;
  }

  .nav-drawer-body {
    padding: 1rem 1.25rem;
  }

  .br-mobile {
    display: block;
  }

  .hero {
    min-height: 50rem;
  }

  .hero-contents {
    padding: 6.25rem 1.25rem 4.375rem;
    gap: 6.25rem;
    align-items: stretch;
  }

  .hero-text {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 1.875rem;
  }

  .hero-inner {
    gap: 1.5rem;
  }

  .hero-sub {
    font-size: 0.75rem;
    letter-spacing: 0.075rem;
  }

  .hero-headline {
    gap: 0.5rem;
  }

    .hero-headline p {
      font-size: 2rem;
      line-height: 2.5rem;
    }

      .hero-headline p strong {
        font-size: 2.5rem;
      }

  .hero-headline-brand {
    font-size: 2.5rem !important;
  }

  .hero-desc {
    font-size: 0.875rem;
  }

  .btn-hero {
    font-size: 0.875rem;
    width: 100%;
    padding: 1.375rem 2rem;
  }

  .section-headline {
    font-size: 2rem;
  }

  .section-sub {
    font-size: 0.875rem;
  }

  .about {
    padding: 4.375rem 0;
    gap: 3.75rem;
  }

  .about-img-wrap {
    height: 17.5rem;
    width: calc(100% - 2.5rem);
    max-width: none;
  }

  .compare-table {
    width: calc(100% - 2.5rem);
    max-width: none;
  }

  .compare-cell {
    font-size: 0.75rem;
    line-height: 1.7;
    padding: 1.5rem 0.75rem;
    letter-spacing: -0.015rem;
  }

  .compare-cell--header {
    font-size: 0.75rem;
    padding: 1.5rem 0.75rem;
    min-height: 5.5rem;
  }

  .business {
    height: auto;
    padding: 4.375rem 1.25rem;
    gap: 3rem;
  }

  .business-sub-text {
    font-size: 0.75rem;
    letter-spacing: 0.075rem;
  }

  .business-headline {
    font-size: 2rem;
  }

  .business-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
  }

  .biz-card {
    gap: 2.5rem;
  }

  .biz-label {
    font-size: 1.125rem;
  }

  .solution {
    padding: 4.375rem 1.25rem;
  }

    .solution .section-sub {
      font-size: 0.875rem;
      text-align: center;
    }

  .section-sub-sep {
    display: none;
  }

  .section-sub-pipe {
    display: block;
    text-align: center;
    line-height: 1.6;
  }

  .sol-card {
    flex-direction: column;
  }

  .sol-card-img-wrap {
    width: 100%;
    height: 14rem;
  }

  .sol-card-title {
    font-size: 1.75rem;
  }

  .sol-card-desc p {
    font-size: 0.75rem;
  }

  .flow-diagram img {
    width: 100%;
    height: auto;
  }

  .label-section {
    padding: 4.375rem 1.25rem;
  }

  .label-sub-text {
    font-size: 0.75rem;
  }

  .label-headline {
    font-size: 2rem;
  }

  .label-desc {
    font-size: 0.875rem;
  }

  .label-card-row {
    flex-direction: column;
  }

  .label-card {
    height: auto;
    min-height: 14rem;
  }

  .faq {
    padding: 4.375rem 1.25rem;
  }

  .faq-title {
    font-size: 2rem;
  }

  .faq-sub {
    font-size: 0.875rem;
  }

  .faq-item {
    padding: 1.5rem;
  }

  .final-offer {
    padding: 4.375rem 1.25rem;
  }

  .final-headline {
    font-size: 2rem;
  }

  .final-sub {
    font-size: 0.875rem;
  }

  .btn-cta-final {
    width: 100%;
    font-size: 1rem;
    text-align: center;
    padding: 1.25rem 1.5rem;
  }

  .footer {
    padding: 4.375rem 1.25rem;
  }

  .footer-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1.5rem;
  }

  .footer-bottom {
    flex-direction: column;
    gap: 0.25rem;
    text-align: center;
    align-items: center;
  }
}

/*제트프린터 상세페이지*/

@media (max-width: 767px) {

  .ps-row {
    grid-template-columns: 1fr;
  }

  .ps-label {
    background: #fafafa;
    font-weight: 600;
  }

  .ps-value {
    border-left: none;
  }

  .ps-row::after {
    left: 0;
  }

  .notice-card {
    padding: 1.5rem;
  }

  .notice-body {
    font-size: 0.875rem;
  }

  .notice-tel {
    font-size: 1.125rem;
  }
}

/* ===== 반응형 ===== */
@media (min-width: 768px) {

  .zp-structure {
    padding: 5rem 2rem;
  }

  .zp-structure-pc {
    display: flex;
    flex-direction: column;
    gap: 3rem;
  }

  .zp-structure-mobile {
    display: none;
  }

  .zp-structure-pc img {
    width: 100%;
    display: block;
  }
}

@media (max-width: 1024px) {

  .sol-card {
    flex-direction: column; /* 가로 → 세로 */
    padding: 1.25rem;
    gap: 1rem;
  }

  .sol-card-text {
    flex: 0 0 100%;
    max-width: 100%; /* 텍스트 전체 너비 */
  }

  .sol-card-img-wrap {
    flex: 0 0 100%;
    max-width: 100%; /* 이미지 전체 너비 */
    height: 220px;
  }

    .sol-card-img-wrap img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

  .sol-card-num {
    font-size: 2.5rem;
  }

  .sol-card-title {
    font-size: 1.5rem;
  }

  .sol-card-desc p {
    font-size: 0.9rem;
  }

  .sol-card-img-wrap--printer img {
    width: 75%;
    object-fit: contain;
  }
}

}

@media (max-width: 480px) {

  .sol-card-img-wrap {
    height: 180px;
  }

  .sol-card-num {
    font-size: 2rem;
  }

  .sol-card-title {
    font-size: 1.25rem;
  }

  .sol-cards {
    gap: 1rem;
  }
}

@media (max-width: 768px) {

  /* 헤더 숨김 */
  .driver-table thead {
    display: none;
  }

  /* 전부 block화 */
  .driver-table,
  .driver-table tbody,
  .driver-tr,
  .driver-td {
    display: block;
    width: 100%;
  }

  .driver-tr {
    background: #f8f8f8;
    margin-bottom: 1rem;
    padding: 1rem;
    border-radius: 8px;
    border-bottom: none;
  }

  .driver-td {
    display: flex;
    align-items: center;
    padding: 0.4rem 0;
    text-align: left;
  }

    /* 라벨 표시 */
    .driver-td::before {
      content: attr(data-label);
      font-weight: 600;
      color: #666;
    }

    /* 다운로드 버튼 정렬 */
    .driver-td:last-child {
      justify-content: flex-end;
    }

  .sol-card-img-wrap--printer img {
    width: 75%;
    object-fit: contain;
  }
}

}

@media screen and (max-width: 768px) {
  .label-card {
    transform: translate3d(0, var(--lbl-ty, 1.2rem), 0);
    will-change: transform, opacity;
    backface-visibility: hidden;
  }

    .label-card.is-visible {
      transform: translate3d(0, 0, 0);
    }
}

@media screen and (max-width: 1070px) {
  .c-banner-title {
    line-height: 1.25;
  }

  .c-banner-printer-type {
    display: block;
    margin-top: 0.75rem;
    font-size: 1rem;
    line-height: 1.4;
    white-space: normal;
  }
}

@media (max-width: 768px) {
  .about-main-img,
  .biz-card,
  .sol-card,
  .label-card {
    transform: none !important;
    transition: opacity 0.35s ease !important;
    will-change: auto !important;
  }

  .biz-card,
  .sol-card,
  .label-card {
    opacity: 1 !important;
  }

  .about-img-logo {
    transform: none !important;
  }
}

@media (max-width: 1024px) {
  .label-synergy-section,
  .label-synergy-section .label-bg,
  .label-synergy-section .sol-cards,
  .label-synergy-section .sol-card,
  .label-synergy-section .sol-card-text,
  .label-synergy-section .sol-card-img-wrap {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

    .label-synergy-section .sol-card {
      display: flex !important;
      flex-direction: column !important;
      transform: none !important;
      margin-bottom: 32px;
    }

    .label-synergy-section .sol-card-img-wrap {
      order: 2;
      width: 100% !important;
      margin-top: 0;
      position: relative !important;
    }

    .label-synergy-section .sol-card-text {
      order: 1;
      width: 100% !important;
      position: relative !important;
      padding: 28px 22px !important;
    }

    .label-synergy-section .sol-card-img-wrap img {
      width: 100%;
      height: auto !important;
      object-fit: contain !important;
      display: block;
    }
}

/* Main Banner Hero Carousel*/

@media screen and (max-width: 66.875em) {
  .main-hero-carousel {
    padding: 12px 0;
  }

  .main-hero-track {
    gap: 12px;
  }

  .main-hero-slide {
    flex-basis: 82vw;
  }

  .main-hero-arrow {
    width: 28px;
    height: 28px;
    border-radius: 50px;
    font-size: 1rem;
    line-height: 42px;
  }

  .main-hero-prev {
    left: calc(50% - 41vw + 12px);
  }

  .main-hero-next {
    right: calc(50% - 41vw + 12px);
  }
}

@media screen and (max-width: 39.99875em) {
  .main-hero-carousel {
    padding: 10px 0;
  }

  .main-hero-track {
    gap: 10px;
  }

  .main-hero-slide {
    flex-basis: 80vw;
  }

  .main-hero-arrow {
    width: 38px;
    height: 38px;
    border-radius: 11px;
    font-size: 1.1rem;
    line-height: 38px;
  }

  .main-hero-prev {
    left: calc(50% - 44vw + 10px);
  }

  .main-hero-next {
    right: calc(50% - 44vw + 10px);
  }
}

@media screen and (max-width: 500px) {
  .main-hero-slide {
    flex-basis: 80vw;
  }

  .main-hero-prev {
    left: calc(50% - 45vw + 8px);
  }

  .main-hero-next {
    right: calc(50% - 45vw + 8px);
  }
}

@media screen and (max-width: 66.875em) {
  .main-hero-control {
    bottom: 22px;
    gap: 20px;
    min-width: 300px;
    height: 56px;
    padding: 0 24px;
  }

  .main-hero-control-btn {
    width: 38px;
    height: 38px;
    font-size: 1.75rem;
  }

  .main-hero-open-list {
    margin-left: 8px;
    font-size: 2rem;
  }

  .main-hero-modal-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (max-width: 39.99875em) {
  .main-hero-control {
    bottom: 16px;
    gap: 14px;
    min-width: 240px;
    height: 48px;
    padding: 0 18px;
  }

  .main-hero-count {
    font-size: 1.35rem;
  }

  .main-hero-control-btn {
    width: 32px;
    height: 32px;
    font-size: 1.45rem;
  }

  .main-hero-open-list {
    margin-left: 4px;
    font-size: 1.65rem;
  }

  .main-hero-modal-dialog {
    width: calc(100% - 24px);
    max-height: calc(100vh - 40px);
    margin: 20px auto;
    border-radius: 14px;
  }

  .main-hero-modal-header {
    padding: 16px;
  }

    .main-hero-modal-header h2 {
      font-size: 1.1rem;
    }

  .main-hero-modal-body {
    max-height: calc(100vh - 128px);
    padding: 16px;
  }

  .main-hero-modal-list {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .main-hero-modal-item img {
    aspect-ratio: 16 / 6.2;
  }
}

@media screen and (max-width: 500px) {
  .main-hero-control {
    min-width: 220px;
    height: 44px;
    gap: 12px;
  }

  .main-hero-count {
    font-size: 1.2rem;
  }

  .main-hero-control-btn {
    width: 28px;
    height: 28px;
    font-size: 1.3rem;
  }

  .main-hero-open-list {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 66.875em) {
  .main-hero-control {
    bottom: 18px;
    gap: 8px;
    min-width: auto !important;
    height: auto !important;
    padding: 0 !important;
  }

  .main-hero-count {
    min-width: 60px !important;
    height: 28px !important;
    font-size: 0.9rem !important;
  }

  .main-hero-control-btn {
    width: 28px !important;
    height: 28px !important;
    font-size: 1.5rem !important;
  }
}

@media screen and (max-width: 39.99875em) {
  .main-hero-control {
    bottom: 14px;
    gap: 10px;
  }

  .main-hero-count {
    min-width: 50px;
    height: 34px;
    font-size: 1.25rem;
  }

  .main-hero-control-btn {
    width: 34px;
    height: 34px;
    font-size: 1.35rem;
  }

  .main-hero-arrow {
    display: none !important;
  }

  .main-hero-viewport {
    cursor: grab;
    touch-action: pan-y;
  }

    .main-hero-viewport.is-dragging {
      cursor: grabbing;
    }
}

@media screen and (max-width: 500px) {
  .main-hero-control {
    bottom: 14px;
    gap: 9px;
  }

  .main-hero-count {
    min-width: 50px;
    height: 32px;
    font-size: 1.15rem;
  }

  .main-hero-control-btn {
    width: 32px;
    height: 32px;
    font-size: 1.25rem;
  }
