@charset "utf-8";
.root_daum_roughmap,
.root_daum_roughmap .wrap_map {overflow:hidden; height:clamp(250px, calc( 440 / var(--inner) * 100vw ), 440px) !important; width:100% !important;}
.root_daum_roughmap .cont {display:none !important;}

.doc-cnt150 {margin-bottom:var(--space-150);}

.sub-sec {padding:var(--space-150) 0; background-position:50% 50%; background-repeat:no-repeat; background-size:cover;}

.sec-top {color:#fff; background-position:50% 50%; background-repeat:no-repeat; background-size:cover;}
.sec-top.height-980 {height:980px;}
.sec-top.height-640 {height:640px;}
.sec-top .inner {padding:0 var(--space-30) 0 clamp(30px, calc(260 / var(--inner) * 100vw), 260px); display:flex; flex-direction:column; justify-content:center; width:50%; height:100%; backdrop-filter:blur(10px); background:linear-gradient(rgba(0, 0, 0, 0) 1.8%, rgba(34, 23, 10, 0.4) 63%), linear-gradient(90deg, rgba(34, 26, 17, 0.3) 0%, rgba(34, 26, 17, 0.3) 100%);}
.sec-top .en-sub {padding-bottom:var(--space-20); margin-bottom:var(--space-40); position:relative; font-family:'GFS Didot', serif; line-height:1.6;}
.sec-top .en-sub:after {width:32px; position:absolute; content:''; bottom:0; left:0; height:1px; background:#fff; opacity:.4;}
.sec-top .title {font-size:clamp(24px, calc(52 / var(--inner) * 100vw), 52px); margin-bottom:var(--space-50); line-height:1.3em; font-weight:600;}
.sec-top .title strong {font-weight:800; color:#F5EDE8;}
.sec-top .title.bold {font-weight:700;}
.sec-top .txt {font-size:var(--font-size-20); line-height:1.5em;}
.sec-top .txt p {margin-bottom:var(--space-30);}
.sec-top .txt p:last-child {margin-bottom:0;}

html[lang="en"] .sec-top .title {font-size:clamp(24px, calc(42 / var(--inner) * 100vw), 42px);}
html[lang="en"] .sec-top .txt {font-size:var(--font-size-18);}
html[lang="en"] .sec-top .inner {padding:0 var(--space-30) 0 clamp(30px, calc(260 / var(--inner) * 100vw), 200px);}

.dot-tit {margin-bottom:var(--space-70); text-align:center;}
.dot-tit h3 {color:var(--color-bk); font-size:var(--font-size-60); font-weight:400; line-height:1.1; font-family:"GFS Didot", serif;}
.dot-tit h3 span {padding:0 var(--space-50); position:relative;}
.dot-tit h3 span:before, .dot-tit h3 span:after {content:'◆'; position:absolute; top:50%; font-size:var(--font-size-16); transform:translateY(-50%); font-weight:400; color:#000;}
.dot-tit span:before {left:0;}
.dot-tit span:after {right:0;}
.dot-tit .desc {font-size:var(--font-size-18); margin-top:var(--space-30); color:#9E9E9E; letter-spacing:-0.03em;}
.dot-tit .desc span {padding:0 clamp(50px, calc(105 / var(--inner) * 100vw), 105px); position:relative;}
.dot-tit .desc span:before, .dot-tit .desc span:after {width:clamp(30px, calc(80 / var(--inner) * 100vw), 80px); content:''; position:absolute; top:50%; margin-top:-1px; background-color:#ddd; height:1px;}
.dot-tit.white h3,
.dot-tit.white h3 span:before,
.dot-tit.white h3 span:after,
.dot-tit.white .desc {color:#fff;}
.dot-tit.white .desc span:before,
.dot-tit.white .desc span:after {background-color:#fff;}

/* about */
.about .txt .label {display:inline-flex; align-items:center; justify-content:center; padding:2px 16px; font-family:'GFS Didot', serif; font-size:var(--font-size-16); color:#fff; background:#52473a; border-radius:40px; width:fit-content;}
.about .txt .title {margin:var(--space-40) 0; font-size:var(--font-size-40); font-weight:800; color:#52473a; line-height:1.25;}
.about .txt .desc {font-size:var(--font-size-20); line-height:1.5; letter-spacing:-.02em;}
.about .sec1 .cont {display:flex; align-items:center; justify-content:space-between; width:100%;}
.about .sec1 .graph {text-align:right; color:#242424;}
.about .sec1 .graph .img {margin-bottom:var(--space-20); border-radius:24px; overflow:hidden; box-shadow:0 6px 40px rgba(0,0,0,0.16);}
.about .sec2 * {color:#fff !important;}
.about .sec2 .graphs {margin-top:var(--space-60); display:flex; gap:var(--space-40);}

/* smartbed */
.expertise .item {padding:var(--space-60) 0; color:#fff; border-top:1px solid rgba(255, 255, 255, 0.40); display:flex; align-items:center; justify-content:space-between; gap:var(--space-30);}
.expertise .item:last-child {padding-bottom:0;}
.expertise .txt {flex:1;}
.expertise .txt .label {display:inline-flex; align-items:center; justify-content:center; padding:2px 16px; font-family:'GFS Didot', serif; color:#242424; background:#fdf4e5; border-radius:40px; width:fit-content;}
.expertise .txt .title {margin:var(--space-30) 0; font-size:var(--font-size-40); font-weight:800; line-height:1.25;}
.expertise .txt .desc {font-size:var(--font-size-20); line-height:1.5;}

/* system */
.system .item {padding:var(--space-100) 0; border-top:1px solid #ddd; display:flex; align-items:center; justify-content:space-between; gap:var(--space-20);}
.system .item:last-child {padding-bottom:0;}
.system .txt {flex:1;}
.system .txt .sub {font-family:"GFS Didot", serif; font-size:var(--font-size-18); color:var(--color-primary);}
.system .txt .title {margin:20px 0 35px; font-size:var(--font-size-40); font-weight:700; color:#242424; line-height:1.25;}
.system .btns {display:flex; gap:12px; flex-wrap:wrap;}
.system .btn {min-width:220px; height:170px; font-size:var(--font-size-20); color:#242424; font-weight:600; display:flex; align-items:center; justify-content:center; gap:var(--space-20); padding:var(--space-15); flex-direction:column; background:#F6F6F6;}
.system .btn .ico {width:clamp(30px, calc(40 / var(--inner) * 100vw), 40px); height:clamp(30px, calc(40 / var(--inner) * 100vw), 40px); display:flex; align-items:center; justify-content:center;}
.system .btn .ico svg {width:100%; height:100%;}
.system .btn:hover {color:#fff; background:#52473a;}
.system .btn:hover svg path {stroke:#fff;}
.system .item .img {display:none;}
.system .item .img.active {display:block;}

/* system hover effect */
.system .item .btn:hover ~ .txt ~ .img { opacity:0.7; transform:scale(1.05); transition:opacity 0.3s, transform 0.3s; }
.system .item { position:relative; }
.system .item .img { transition:opacity 0.3s, transform 0.3s; }

/* custom process */
.process {text-align:center; color:#fff; display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-40);}
.process .item {height:350px; border-radius:24px; justify-content:center; background:rgba(0, 0, 0, 0.20); backdrop-filter:blur(10px); display:flex; flex-direction:column; align-items:center;}
.process .img img {width:clamp(44px, calc(64 / var(--inner) * 100vw), 64px);}
.process .num {font-size:var(--font-size-20); margin-top:var(--space-25); font-family:"GFS Didot", serif;}
.process .tit {margin:var(--space-20) 0; font-size:var(--font-size-30); font-weight:700; line-height:1.3;}
.process .desc {font-size:var(--font-size-20); line-height:1.5;}

/* showroom */
.showroom {border:1px solid #ddd; padding:var(--space-50); display:flex; align-items:center;}
.showroom .txt {font-size:var(--font-size-18); line-height:1.4em; flex:1;}
.showroom .brand {font-family:"GFS Didot", serif; color:var(--color-primary);}
.showroom .tit {margin:var(--space-20) 0 var(--space-35); font-size:var(--font-size-30); font-weight:700; color:#242424; line-height:1.46;}
.showroom .tit span {color:var(--color-primary);}
.showroom .addr {font-weight:700; display:flex; align-items:center; gap:8px; color:var(--color-primary);}

html[lang="en"] .showroom .tit {font-size:var(--font-size-22);}

#sub .review-list {padding-top:var(--space-20); margin:0; border-top:2px solid #242424; display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-60) var(--space-30);}
#sub .review-item {padding:0;}
#sub .review-item a {position:relative;}
#sub .review-item a:after {border-radius:24px; position:absolute; content:''; top:0; left:0; right:0; bottom:0; border:1px solid #ddd;}

/* 별점 평가 */
.review-product-rating ul {display:flex; gap:2px;}
.review-product-rating .rating-input-star {display:block; position:relative; width:24px; height:24px; background:url('/images/sub/star-empty.svg') 50% 50% / contain no-repeat; transition:.2s;}
.review-product-rating .rating-input-star input {position:absolute; top:0; left:0; width:0; height:0; border:0; opacity:0; z-index:-1;}
.review-product-rating .hover .rating-input-star {background-image:url('/images/sub/star-filled.svg'); opacity:.5;}
.review-product-rating .selected .rating-input-star {background-image:url('/images/sub/star-filled.svg');}

.star {display:flex; gap:4px;}
.star-item {width:16px; height:16px; background-image:url('/images/sub/star-empty.svg'); background-size:contain; background-repeat:no-repeat; background-position:center;}
.star-item.on {background-image:url('/images/sub/star-filled.svg');}

.file-download:hover svg path {stroke:#52473a;}

.contact-form .form-area {display:flex; flex-direction:column; gap:var(--space-60);}
.contact-form .form-row {display:flex; margin:0 -30px;}
.contact-form .form-group {width:50%; padding:0 30px;}
.contact-form .form-row.wide .form-group {width:100%;}
.contact-form .label-wrap {margin-bottom:10px; display:flex; gap:5px; font-size:var(--font-size-18); font-weight:600;}
.contact-form .label {color:var(--color-bk); line-height:1;}
.contact-form .required {color:#F78841;}
.contact-form .input {color:#878787; width:100%;}
.contact-form .input,
.contact-form .captcha-wrap {height:clamp(40px, calc( 55 / var(--inner) * 100vw ), 55px);}
.contact-form .form-agree,
.contact-form .buttons {margin:var(--space-60) 0 0;}
.contact-form .buttons .btn-pack {min-width:clamp(140px, calc( 240 / var(--inner) * 100vw ), 240px); height:clamp(50px, calc( 60 / var(--inner) * 100vw ), 60px); font-size:var(--font-size-18); font-weight:600; border-radius:8px; background:var(--color-primary); border:1px solid var(--color-primary); color:#fff;}

.file-upload {display:flex; height:clamp(40px, calc( 55 / var(--inner) * 100vw ), 55px); margin-bottom:10px;}
.file-button {display:flex; justify-content:center; align-items:center; height:100%; padding:0 20px; border:0; border-radius:6px 0 0 6px; border:1px solid #ddd; border-right:0; background:#f0f0f0; color:#242424; cursor:pointer;}
.file-name {color:#878787; flex:1 1 auto; min-width:0; width:1%; display:flex; align-items:center; height:100%; padding:0 14px; border:1px solid #ddd; border-radius:0 6px 6px 0;}


.fr-box .fr-counter {font-size: 0 !important;}
