@charset "utf-8";
.root_daum_roughmap .wrap_map, .root_daum_roughmap, .direction-map iframe {width: 100% !important; height: 100% !important;}

.page-brand-intro {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-60);}
.brand-intro-item {display: block; position: relative; overflow: hidden;}
.brand-intro-item .bg img {transition: all .5s ease;}
.brand-intro-item:hover .bg img {transform: scale(1.1);}
.brand-intro-item .txt {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--space-30); position: absolute; top: 50%; left: 0; width: 100%; padding: 0 var(--container-space); transform: translateY(-50%); color: #fff;}
.brand-intro-item h3 {font-size: var(--font-size-40); line-height: 1em; font-family: "GFS Didot"; font-weight: 400;}
.brand-about-cnt .txt {padding: var(--container-space);}
.page-brand-about .sec-banner {padding: var(--space-100) 0; background: url('/images/sub/brand-about-banner.jpg') no-repeat center center / cover;}
.philosophy-txt {gap: 25px 35px;}

.page-lexfeel .sec-video {padding: var(--space-80) 0; margin-bottom: var(--space-80); margin-top: calc(var(--space-80) * -1); background: #F8F8F8;}
.youtube-slider {display: flex; gap: var(--space-20);}
.youtube-slider .large {position: relative; flex: 1 1 auto; min-width: 0;}
.youtube-slider .video-container {height: 100%;}
.youtube-slider .large iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
.youtube-slider .list {width: 300px;}
.youtube-slider .list .thumb {position: relative; width: 100%; padding-bottom: 50%;}
.youtube-slider .list .thumb img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.youtube-slider .slick-list {margin: -5px;}
.youtube-slider .slick-slide {padding: 5px;}

.bed-list-item {font-family: "Cormorant Garamond", Georgia, serif;}
.bed-list-item .txt p {font-family: "Pretendard", "Noto Sans KR", Arial, sans-serif;}
.partnership-slide-func {display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
.partnership-slide-func .main-news-arrows {margin: 0;}
.partnership-slide-func select.input {background-color: var(--stone); color: var(--green); font-weight: 500;}
.partnership-slide-func select.input option {color: #aaa;}

:root {
    --green: #18372d;
    --green-dark: #102820;
    --beige: #e6ded3;
    --ivory: #faf9f6;
    --charcoal: #252823;
    --line-light: rgba(255, 255, 255, 0.3);
    --white: #fff;
    --serif: "Cormorant Garamond", "Times New Roman", serif;
    --sans: "Pretendard", "Noto Sans KR", Arial, sans-serif;
  }
  
  * { box-sizing: border-box; }
  
  html { scroll-behavior: smooth; }
  
  body {
    margin: 0;
    color: var(--charcoal);
    background: var(--ivory);
    font-family: var(--sans);
    font-size: 15px;
    line-height: 1.65;
    word-break: keep-all;
  }
  
  button,
  input,
  textarea { font: inherit; }
  
  img { display: block; width: 100%; }
  
  .page-inner {
    width: min(980px, calc(100% - 80px));
    margin: 0 auto;
  }
  
  .contact-hero {
    padding: 110px 0;
    background: var(--white);
  }
  
  .contact-hero h1,
  .inquiry-intro h2,
  .consultation-banner h2,
  .section-heading h2 {
    margin: 0;
    color: var(--green);
    font-family: var(--serif);
    font-weight: 600;
    letter-spacing: -0.035em;
  }
  
  .contact-hero h1 {
    font-size: clamp(48px, 5.2vw, 66px);
    line-height: 0.88;
  }
  
  .contact-hero__lead {
    margin: 0px 0 0;
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 60px;
  }
  .contact_main_img{
    margin: auto;
    background-color:#252823;
  }
  .contact_main_img img{
    margin: auto;
    max-width: 960px;
  
  }
  .hero-line {
    display: block;
    width: 1px;
    height: 56px;
    margin: 34px 0;
    background: var(--green);
  }
  
  .contact-hero__description {
    margin-bottom: 42px;
    font-size: 15px;
    line-height: 1.65;
  }
  
  .contact-hero__description p { margin: 0 0 22px; }
  
  .contact-main-image {
    height: 510px;
    margin: 0;
    overflow: hidden;
    background: #d9d9d9;
  }
  
  .contact-main-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .contact_main_img {
    width: 100%;
    margin: 0 auto;
    background-color: #252823;
  }
  .contact_main_img { 
    margin: auto; 
    background-color: #252823; 
  } 
  
  .contact_main_img img { 
    margin: auto; 
    max-width: 960px; 
  }
  .contact_main_img img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .contact_main_image { 
    margin: auto; 
    background-color: #252823; 
  } 
  
  .contact_main_image img { 
    margin: auto; 
    max-width: 960px; 
  }
  
  
  .inquiry-intro {
    padding: 105px 0;
    background: var(--beige);
  }
  
  .eyebrow {
    margin: 0 0 8px;
    font-size: 12px;
  }
  
  .inquiry-intro h2 {
    font-size: clamp(43px, 4.5vw, 60px);
    line-height: 0.9;
  }
  
  .inquiry-intro > .page-inner > p:last-child {
    margin: 34px 0 0;
    font-size: 15px;
  }
  
  .consultation-banner {
    position: relative;
    padding: 76px 20px 68px;
    text-align: center;
    background: var(--ivory);
  }
  
  .consultation-banner::after {
    position: absolute;
    z-index: 2;
    bottom: -30px;
    left: 50%;
    width: 0;
    height: 0;
    border-top: 31px solid var(--ivory);
    border-right: 21px solid transparent;
    border-left: 21px solid transparent;
    content: "";
    transform: translateX(-50%);
  }
  
  .consultation-banner h2 {
    font-size: clamp(36px, 4vw, 52px);
    line-height: 1;
  }
  
  .consultation-banner p {
    margin: 18px 0 0;
    font-size: 13px;
  }
  
  .inquiry-section {
    background-color: #18372d;
    padding: 125px 0 115px;
    color: var(--white);
  }
  
  .section-grid {
    grid-template-columns: minmax(240px, 0.68fr) minmax(0, 1.55fr);
    align-items: start;
    gap: 70px;
  }
  
  .section-heading h2 {
    color: var(--white);
    font-size: clamp(48px, 5.2vw, 66px);
    line-height: 0.95;
  }
  
  .section-heading p {
    font-weight: 300;
    font-size: 20px;
    margin-bottom: 60px;
        letter-spacing: -0.02em;
  }
  
  .contact-form { min-width: 0; }
  
  fieldset {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .gap{
    margin-top: 50px;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: -0.02em;
    /* color:#d9d9d9; */
  }
  .form-block { margin-bottom: 50px; }
  
  .product-block { margin: 50px 0 0; }
  
  .form-label {
    margin: 0 0 16px;
    padding: 0;
    color: var(--white);
    font-size: 16px;
    font-weight: 600;
  }
  
  .form-label em,
  .field em,
  .privacy-check em,
  .required-notice span {
    color: #d8aa95;
    font-style: normal;
  }
  .form-title-row h3{
    margin: 0;
  }
  
  .choice-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }
  
  .choice-item {
    position: relative;
    display: inline-flex;
    cursor: pointer;
    user-select: none;
  }
  
  .choice-item input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
  }
  
  .choice-item span {
    display: inline-flex;
    min-height: 40px;
    padding: 9px 16px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.55);
    color: rgba(255, 255, 255, 0.88);
    font-size: 16px;
    /* line-height: 1; */
    transition: 0.22s ease;
    font-weight: 300;
  }
  
  .choice-item:hover span,
  .choice-item input:checked + span {
    color: var(--green-dark);
    border-color: var(--white);
    background: var(--white);
  }
  
  .choice-item input:focus-visible + span {
    outline: 2px solid rgba(255, 255, 255, 0.6);
    outline-offset: 3px;
  }
  
  .form-title-row {
    display: flex;
    margin-bottom: 28px;
    padding: 0 0 17px;
    justify-content: space-between;
    /* border-bottom: 1px solid var(--line-light); */
  }
  
  .form-title-row p { margin: 0; font-size: 16px; }
  
  .required-notice { color: rgba(255, 255, 255, 0.62); }
  
  .form-grid {
    /* display: grid; */
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 24px;
  }
  
  .field { display: block; padding-top: 20px;}
  
  .field > span {
    display: block;
    /* margin-bottom: 8px; */
    font-size: 16px;
  }
  
  .field input,
  .field textarea {
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--line-light);
    border-radius: 0;
    outline: 0;
    color: var(--white);
    background: transparent;
    transition: border-color 0.2s ease;
  }
  
  .field input { height: 48px; }
  
  .field textarea {
    min-height: 160px;
    padding: 15px 0;
    resize: vertical;
  }
  
  .field input:focus,
  .field textarea:focus { border-color: var(--white); }
  
  .field input::placeholder,
  .field textarea::placeholder { color: rgba(255, 255, 255, 0.38); }
  
  .field input[type="date"] { color-scheme: dark; }
  
  .form-guide {
    margin: -7px 0 16px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 12px;
  }
  
  .field--full { margin-top: 42px; }
  
  .privacy-check {
    display: flex;
    width: fit-content;
    margin-top: 26px;
    align-items: center;
    gap: 9px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 16px;
    cursor: pointer;
  }
  
  .privacy-check input {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--white);
  }
  
  .form-status {
    min-height: 22px;
    margin: 14px 0 0;
    color: #efb6a6;
    font-size: 12px;
  }
  
  .form-status.is-success { color: #dce9df; }
  
  .form-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 18px;
  }
  
  .button {
    display: inline-flex;
    min-width: 210px;
    min-height: 50px;
    padding: 12px 25px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.75);
    color: var(--white);
    background: transparent;
    cursor: pointer;
    font-size: 12px;
    transition: 0.22s ease;
  }
  .button--primary{
    font-size: 16px;
  }
  
  .button:hover,
  .button:focus-visible {
    color: var(--green-dark);
    background: var(--white);
  }
  .contact-hero__description p {font-size: 22px; line-height: 28px; letter-spacing: -0.02em; }
  
  @media (max-width: 900px) {
    .page-inner { width: min(100% - 48px, 720px); }
    .section-grid { grid-template-columns: 1fr; gap: 58px; }
  }
  
  @media (max-width: 600px) {
    .gap{
    font-size: 16px;
  }
    body { font-size: 16px; }
  
    .page-inner { width: calc(100% - 76px); }
  
    .contact-hero { padding: 62px 0 48px; }
  
    .contact-hero h1 { font-size: 35px; }
  
    .contact-hero__lead { margin-top: 5px; margin-bottom: 60px; font-size: 16px; font-weight: 300; }
  
    .hero-line { height: 50px; margin: 25px 0; }
  
    .contact-hero__description {
      margin-bottom: 28px;
      font-size: 16px;
      line-height: 1.48;
    }
  
    .contact-hero__description p { margin-bottom: 17px; font-size: 16px; }
  
    .contact-hero__description br,
    .inquiry-intro br { display: none; }
  
    .contact-main-image { height: 250px; }
  
    .inquiry-intro { padding: 62px 0; }
  
    .inquiry-intro h2 { font-size: 39px; }
  
    .inquiry-intro > .page-inner > p:last-child {
      margin-top: 28px;
      font-size: 13px;
    }
  
    .consultation-banner { padding: 58px 19px 52px; }
  
    .consultation-banner h2 { font-size: 32px; line-height: 0.95; }
  
    .consultation-banner p { font-size: 11px; }
  
    .consultation-banner::after {
      bottom: -26px;
      border-top-width: 27px;
      border-right-width: 18px;
      border-left-width: 18px;
    }
  
    .inquiry-section { padding: 78px 0 70px; }
  
    .section-grid { gap: 46px; }
  
    .section-heading h2 { font-size: 35px; }
  
    .form-grid { grid-template-columns: 1fr; gap: 25px; }
  
    .choice-item span { min-height: 39px; padding: 9px 13px; }
  
    .form-title-row { margin-top: 3px; }
  
    .product-block { margin-top: 46px; }
  
    .field--full { margin-top: 38px; }
  
    .form-actions { justify-content: stretch; }
  
    .button { width: 100%; }
  }
  