@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root { --ink:#212525; --inksoft:#646b69; --muted:#8a918e; --line:#e5e9e6; --cream:#f9faf8; --paper:#fff; --sage:#335b4f; --sage2:#e5eee9; --mist:#f1f3f0; --deep:#172d28; --shadow:0 20px 70px rgba(26,49,39,.08); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {margin:0; background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans KR',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:-.017em; }
body.lang-ko {font-family:'Noto Sans KR','DM Sans',sans-serif;letter-spacing:-.04em;}
button,input,select,textarea { font:inherit; }
button {cursor:pointer;}
a { color:inherit; text-decoration:none; }
img { max-width:100%;display:block; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline:3px solid #91bbad;outline-offset:3px;}
::selection {background:#cde2d8;color:#17372e;}
.topline {height:31px;display:flex;align-items:center;justify-content:center;background:#e9efeb;color:#556a5e;text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:650;}
.site-header {position:sticky;top:0;z-index:90;background:rgba(255,255,255,.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(25,45,36,.055)}
.header-inner{height:78px;max-width:1500px;margin:auto;padding:0 5.3%;display:flex;align-items:center;gap:38px;}
.wordmark{font-weight:700;letter-spacing:-.09em;font-size:29px;line-height:1;color:#243931;white-space:nowrap;}
.wordmark span {color:#879d91;font-size:26px;}
.main-nav {display:flex;align-items:center;gap:30px;margin-left:auto;}
.nav-link{font-size:12.5px;color:#686e6b;position:relative;padding:10px 0;font-weight:600;white-space:nowrap;transition:color .2s;}
.nav-link:hover,.nav-link.active{color:#1f3f32;}
.nav-link.active::after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:#376b56;}
.header-controls{display:flex;align-items:center;gap:11px;}
.lang-switch{display:flex;align-items:center;background:#f2f4f1;border-radius:100px;padding:3px;}
.lang-switch button{border:0;background:transparent;padding:7px 9px;font-size:10px;border-radius:100px;color:#88918a;min-width:35px;font-weight:700;letter-spacing:.02em;}
.lang-switch button.selected{background:white;color:#183d2e;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.icon-btn {border:0;background:transparent;color:#25372e;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;position:relative;}
.cart-bubble{position:absolute;top:-2px;right:-3px;background:#31594b;border-radius:20px;color:white;font-size:9px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;}
.header-book{font-size:11px;padding:13px 18px;border-radius:100px;background:#2f594b;color:white;font-weight:650;transition:background .2s, transform .2s;white-space:nowrap;}
.header-book:hover,.btn-dark:hover{background:#1c4134;transform:translateY(-2px)}
.mobile-toggle{display:none;}
main{min-height:60vh;}
.container{width:min(1200px,89.4%);margin-inline:auto;}
.container-wide{width:min(1440px,90%);margin-inline:auto;}
.eyebrow {font-size:10px;font-weight:700;letter-spacing:.21em;text-transform:uppercase;color:#667d70;}
.h1-huge {font-size:clamp(68px,7.5vw,128px);letter-spacing:-.086em;font-weight:550;line-height:.98;margin:0;}
.h1-page{font-size:clamp(56px,6.1vw,98px);letter-spacing:-.078em;font-weight:550;line-height:1.04;margin:0;}
.h2-section{font-size:clamp(37px,4.3vw,70px);letter-spacing:-.072em;font-weight:550;line-height:1.07;margin:0;}
.h3-section{font-size:clamp(24px,2.5vw,40px);letter-spacing:-.055em;font-weight:550;line-height:1.15;margin:0;}
.body-lead{font-size:16px;color:var(--inksoft);line-height:1.85;max-width:475px;font-weight:400;}
.small-muted{font-size:12px;line-height:1.75;color:#84918a;}
.btn{border:0;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:13px;font-weight:650;padding:16px 23px;min-height:48px;transition:all .2s;text-align:center;}
.btn-dark{background:#2e594b;color:white;}
.btn-light{background:#fff;color:#263f33;}
.btn-outline{border:1px solid #d4dfd8;background:transparent;color:#315b4b;}
.btn-outline:hover{background:#edf4ef;}
.btn-text{padding:0;background:none;color:#24543f;font-weight:650;display:inline-flex;align-items:center;gap:10px;border:0;font-size:13px;}
.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;}
.link-arrow{display:inline-flex;align-items:center;gap:12px;font-weight:650;font-size:13px;color:var(--sage);}
.divider{height:1px;background:var(--line)}
.photo{background-color:#e7ebe7;background-size:cover;background-position:center;overflow:hidden;}
.photo-portrait{background-image:linear-gradient(130deg,rgba(236,239,231,.01),rgba(239,220,205,.06)),url('https://images.unsplash.com/photo-1661346376364-706a9eac60ab?auto=format&fit=crop&w=1200&q=85');}
.photo-ritual{background-image:linear-gradient(0deg,rgba(26,37,29,.1),rgba(26,37,29,.0)),url('https://images.unsplash.com/photo-1570172619644-dfd03ed5d881?auto=format&fit=crop&w=1300&q=85');}
.photo-interior{background-image:url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=1100&q=85');}
.photo-soft{background-image:url('https://images.unsplash.com/photo-1608248543803-ba4f8c70ae0b?auto=format&fit=crop&w=1100&q=85');}
.photo-nature{background-image:url('https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&w=1300&q=85');}
.photo-face{background-image:url('https://images.unsplash.com/photo-1611930022073-b7a4ba5fcccd?auto=format&fit=crop&w=1100&q=85');}
/* Home */
.home-hero {padding:62px 0 65px;position:relative;background:#fbfcfa;}
.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:min(7vw,110px);min-height:640px;}
.hero-copy{padding:32px 0 75px;}
.hero-copy .eyebrow{margin-bottom:32px;}
.hero-copy h1{max-width:715px;}
.hero-copy h1 span{color:#7e9d8c;}
.hero-copy .body-lead{margin:29px 0 32px;max-width:390px;}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.hero-photo-wrap{position:relative;margin-top:3px;}
.hero-photo{height:625px;width:100%;background-position:center 31%;border-radius:3px 150px 3px 3px;filter:saturate(.75) brightness(1.05);}
.hero-mark{position:absolute;bottom:-32px;left:-39px;width:114px;height:114px;background:#e7eee9;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.16em;text-align:center;line-height:1.8;color:#517965;transform:rotate(-12deg);}
.hero-caption{position:absolute;bottom:12px;right:-30px;transform:rotate(-90deg) translate(100%,0);transform-origin:right bottom;font-size:9px;letter-spacing:.24em;color:#64776b;text-transform:uppercase;}
.scroll-line{display:flex;align-items:center;gap:16px;color:#7d8982;font-size:9px;letter-spacing:.18em;text-transform:uppercase;margin-top:35px;}
.scroll-line::before{content:'';width:36px;height:1px;background:#97aaa0;}
.home-manifesto{padding:135px 0 135px;background:white;text-align:center;}
.home-manifesto h2{font-size:clamp(36px,5vw,78px);letter-spacing:-.068em;font-weight:500;line-height:1.17;margin:30px auto 22px;max-width:1000px;}
.home-manifesto h2 em{font-style:normal;color:#8bafa0;}
.home-manifesto p{max-width:520px;font-size:14px;line-height:1.9;color:#7c8680;margin:0 auto;}
.section-pad{padding:125px 0;}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:48px;}
.section-heading h2{max-width:800px;margin-top:20px;}
.treatment-showcase{background:#f6f8f5;}
.showcase-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:26px;}
.show-card{position:relative;min-height:520px;overflow:hidden;border-radius:5px;background:#e6ebe6;}
.show-card .photo{position:absolute;inset:0;transition:transform .7s ease;}
.show-card:hover .photo{transform:scale(1.035);}
.show-card.secondary{margin-top:70px;min-height:450px;}
.show-card-bottom{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(8,16,14,.65),transparent);padding:90px 36px 31px;color:white;display:flex;align-items:end;justify-content:space-between;}
.show-card-bottom h3{font-size:30px;font-weight:500;letter-spacing:-.055em;margin:0 0 7px;}
.show-card-bottom p{font-size:12px;opacity:.78;margin:0;}
.circle-arrow{border:1px solid rgba(255,255,255,.55);border-radius:100%;width:41px;height:41px;display:grid;place-items:center;}
.experience-section{background:white;}
.experience-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;}
.experience-photo{width:100%;height:610px;border-radius:4px 4px 180px 4px;}
.experience-copy h2{margin:24px 0 25px;}
.experience-copy .body-lead{margin-bottom:30px;}
.feature-list{border-top:1px solid var(--line);margin-top:45px;}
.feature-list-row{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:19px 0;font-size:13px;gap:15px;}
.feature-list-row span:first-child{font-weight:600;}
.feature-list-row span:last-child{font-size:11px;color:var(--muted);text-align:right;}
.home-shop{background:#fafbf9;}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:19px;}
.product-card{cursor:pointer;}
.product-visual{background:#f1f3ef;position:relative;aspect-ratio:3/3.35;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:5px;transition:background .25s;}
.product-card:hover .product-visual{background:#e9eeea;}
.product-shape{height:50%;width:29%;border-radius:14px 14px 8px 8px;background:linear-gradient(100deg,#dedbd3 5%,#fffef8 37%,#e5e6df 100%);box-shadow:16px 20px 28px rgba(52,67,54,.12),inset -7px 0 20px rgba(29,52,40,.04);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;}
.product-shape::before{content:'';position:absolute;top:-22px;height:24px;width:73%;left:13.5%;background:linear-gradient(90deg,#a8afa7,#f6faf4,#a8afa7);border-radius:3px 3px 0 0;}
.product-shape::after{content:'NATURA';font-size:clamp(8px,.75vw,12px);letter-spacing:.13em;color:#486255;font-weight:700;position:absolute;top:38%;}
.product-shape .little-label{width:35px;height:1px;background:#9bb0a2;position:absolute;top:55%;}
.product-shape.tube{width:34%;height:53%;border-radius:12px 12px 20px 20px;transform:rotate(-8deg);background:linear-gradient(95deg,#d3ddd5,#f6f9f4 35%,#d2d8d0);}
.product-shape.tube::before{height:13px;top:auto;bottom:-10px;background:#a6b5ab;width:85%;left:7.5%;border-radius:1px;}
.product-shape.jar{height:30%;width:40%;border-radius:15px 15px 8px 8px;transform:translateY(23px);}
.product-shape.jar::before{height:18px;top:-18px;left:0;width:100%;background:linear-gradient(90deg,#c5cfc5,#f8faf6,#b3c0b5);border-radius:5px 5px 0 0;}
.product-shape.dropper{width:22%;height:34%;border-radius:11px 11px 6px 6px;background:linear-gradient(90deg,#98a99a,#e6ede1,#9fb09c);transform:translateY(28px);}
.product-shape.dropper::before{height:43px;top:-43px;width:48%;left:26%;background:linear-gradient(90deg,#3e473f,#747d70,#3e473f);border-radius:6px 6px 0 0;}
.product-info{display:flex;align-items:start;justify-content:space-between;padding:17px 2px 0;gap:7px;}
.product-info h3{font-size:14px;margin:0 0 5px;font-weight:650;}
.product-info p{font-size:12px;color:#89958e;margin:0;}
.product-price{font-size:13px;font-weight:650;white-space:nowrap;}
.product-add{position:absolute;right:15px;bottom:15px;border:0;background:white;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 12px rgba(0,0,0,.05);}
.event-highlight{padding:112px 0;background:var(--deep);color:white;position:relative;overflow:hidden;}
.event-highlight::after{content:'';position:absolute;width:440px;height:440px;right:-100px;top:-120px;border:1px solid #5a7569;border-radius:50%;box-shadow:0 0 0 80px rgba(125,162,141,.05),0 0 0 170px rgba(125,162,141,.038);}
.event-highlight .eyebrow{color:#a4beb0;}
.event-highlight h2{font-size:clamp(50px,6vw,93px);line-height:1.05;letter-spacing:-.075em;font-weight:500;margin:23px 0;max-width:790px;position:relative;z-index:1;}
.event-highlight p{color:#c2d0c8;font-size:15px;line-height:1.85;max-width:480px;margin-bottom:29px;}
.home-final{padding:150px 0;text-align:center;background:#fff;}
.home-final h2{max-width:820px;margin:18px auto 26px;}
.home-final .body-lead{margin:0 auto 28px;}
/* Shared pages */
.page-hero{padding:86px 0 78px;background:#fafbf9;}
.page-hero .eyebrow{margin-bottom:28px;}
.page-hero p{font-size:16px;line-height:1.85;color:#79877e;max-width:600px;margin:24px 0 0;}
.page-body{padding:68px 0 130px;}
.micro-note{display:inline-flex;align-items:center;gap:8px;font-size:10px;border:1px solid #e4eae5;border-radius:100px;padding:8px 12px;color:#71877a;background:#fbfcfb;}
.micro-dot{width:6px;height:6px;border-radius:50%;background:#7a9a82;display:inline-block;}
.page-tabs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:4px 0 36px;}
.tab-chip{border:1px solid #dde6df;padding:11px 18px;background:white;color:#637569;border-radius:40px;font-size:12px;font-weight:600;}
.tab-chip.selected{background:#355d4f;border-color:#355d4f;color:white;}
/* Booking */
.booking-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(295px,1fr);gap:54px;align-items:start;}
.booking-panel{border:1px solid var(--line);padding:36px;border-radius:9px;background:white;}
.booking-step-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px;}
.booking-step-header small{font-size:10px;color:#7a8980;letter-spacing:.12em;text-transform:uppercase;}
.stepper{display:flex;gap:7px;}
.step-dot{height:4px;width:26px;background:#e2e8e3;border-radius:5px;}
.step-dot.on{background:#335b4f;}
.booking-panel h2{font-size:29px;letter-spacing:-.056em;font-weight:550;margin:0 0 22px;}
.option-stack{display:grid;gap:12px;}
.option-card{padding:20px 19px;border:1px solid #e0e8e2;border-radius:7px;background:white;text-align:left;width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;}
.option-card:hover{border-color:#a4c0ae;}
.option-card.selected{border-color:#355e4d;background:#f6faf6;box-shadow:inset 0 0 0 1px #355e4d;}
.option-card strong{font-size:14px;display:block;margin-bottom:6px;}
.option-card small{font-size:11px;color:#84928a;}
.option-check{height:18px;width:18px;border:1px solid #b6c7ba;border-radius:100%;display:grid;place-items:center;color:white;flex-shrink:0;}
.option-card.selected .option-check{background:#315b4b;border-color:#315b4b;}
.booking-footer{display:flex;justify-content:space-between;align-items:center;margin-top:30px;gap:15px;}
.summary-box{background:#f5f8f5;border:1px solid #edf1ed;border-radius:9px;padding:28px;position:sticky;top:110px;}
.summary-box h3{font-size:21px;letter-spacing:-.04em;font-weight:600;margin:0 0 19px;}
.summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding:13px 0;border-bottom:1px solid #e0e8e1;}
.summary-row span:first-child{color:#86928a;font-size:12px;}
.summary-row span:last-child{font-size:12px;color:#304b3f;text-align:right;font-weight:600;}
.field-label{font-size:11px;font-weight:650;color:#455e50;display:block;margin:16px 0 9px;}
.field{border:1px solid #dce5df;background:#fff;width:100%;padding:15px;border-radius:6px;color:#263b30;font-size:13px;min-height:48px;}
.date-slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px;}
.slot{border:1px solid #dce6df;border-radius:6px;background:#fff;padding:15px 6px;font-size:12px;font-weight:600;color:#54665b;}
.slot.active{background:#315b4b;border-color:#315b4b;color:white;}
.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;}
.success-state{text-align:center;padding:35px 10px;}
.success-symbol{width:75px;height:75px;border-radius:50%;background:#e1eee7;display:grid;place-items:center;color:#2c6147;margin:0 auto 23px;}
/* Shopping and cart */
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:20px;}
.shop-count{font-size:12px;color:#829087;}
.product-desc{line-height:1.65;font-size:12px;color:#8b978f;margin-top:8px;}
.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;}
.shop-grid .product-visual{aspect-ratio:1/1.1;}
.cart-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:55px;}
.cart-item{display:grid;grid-template-columns:105px 1fr auto;gap:22px;border-bottom:1px solid var(--line);padding:23px 0;align-items:center;}
.cart-thumb{aspect-ratio:1;background:#edf2ee;display:grid;place-items:center;position:relative;border-radius:4px;}
.cart-thumb .product-shape{transform:scale(.6);}
.cart-item h3{margin:0 0 7px;font-size:15px;font-weight:650;}
.cart-item p{margin:0 0 15px;font-size:12px;color:#87938a;}
.qty-control{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:100px;}
.qty-control button{border:0;background:none;height:29px;width:33px;font-size:15px;}
.qty-control span{font-size:12px;width:20px;text-align:center;}
.checkout-box{background:#f6f8f5;border-radius:8px;padding:28px;}
.checkout-box h3{font-size:22px;letter-spacing:-.05em;margin:0 0 22px;}
.checkout-total{font-weight:700;color:#244536;font-size:21px;}
.coupon-entry{display:flex;gap:8px;margin:20px 0 0;}
.coupon-entry input{min-width:0;flex:1;}
/* Events & coupons */
.events-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.event-card{border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff;}
.event-card-art{height:285px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.event-card-art.green{background:linear-gradient(140deg,#e3ede6,#b8d0c0);}
.event-card-art.cream{background:linear-gradient(140deg,#f4f0e7,#d4d2bf);}
.event-orbit{width:165px;height:165px;border-radius:50%;box-shadow:0 0 0 38px rgba(255,255,255,.2),0 0 0 75px rgba(255,255,255,.16),inset 35px 20px 60px rgba(255,255,255,.36);border:1px solid rgba(255,255,255,.6);}
.event-card-content{padding:27px;}
.event-card-content .eyebrow{margin-bottom:15px;}
.event-card-content h3{font-size:27px;letter-spacing:-.055em;font-weight:550;margin:0 0 13px;}
.event-card-content p{color:#829087;font-size:13px;line-height:1.8;min-height:45px;}
.event-card-foot{margin-top:22px;display:flex;justify-content:space-between;align-items:center;gap:15px;}
.coupon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.coupon-card{border:1px solid #e0e7e0;border-radius:8px;overflow:hidden;background:#fff;}
.coupon-card-top{padding:28px 27px;background:#f2f6f2;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;}
.coupon-card-top .big-value{font-size:50px;line-height:1;font-weight:550;letter-spacing:-.07em;color:#264b39;}
.coupon-card-bottom{padding:24px 27px;}
.coupon-card-bottom h3{font-size:19px;letter-spacing:-.03em;margin:0 0 9px;font-weight:600;}
.coupon-card-bottom p{font-size:12px;line-height:1.75;color:#88948b;min-height:65px;}
.coupon-code{border:1px dashed #a7bdac;background:#fbfcfa;padding:13px;margin:15px 0;color:#3e6751;font-size:12px;font-weight:700;letter-spacing:.11em;display:flex;justify-content:space-between;align-items:center;}
/* Account */
.account-layout{display:grid;grid-template-columns:260px 1fr;gap:45px;}
.account-sidebar{border:1px solid var(--line);border-radius:8px;padding:24px;align-self:start;}
.account-avatar{width:54px;height:54px;border-radius:50%;background:#edf3ee;display:grid;place-items:center;font-weight:700;color:#416b53;font-size:19px;margin-bottom:16px;}
.account-sidebar p{font-size:12px;color:#879289;line-height:1.75;}
.account-side-nav{display:grid;gap:4px;margin-top:23px;}
.account-side-nav button{width:100%;border:0;background:transparent;color:#617266;text-align:left;padding:12px;border-radius:5px;font-size:12px;font-weight:650;}
.account-side-nav button.active{background:#edf4ee;color:#315b47;}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:34px;}
.stat-card{background:#f5f8f5;padding:24px 22px;border-radius:6px;}
.stat-card .num{font-size:33px;letter-spacing:-.055em;font-weight:600;margin-bottom:10px;color:#315b47;}
.stat-card p{font-size:11px;color:#7f9183;margin:0;}
.account-section{border:1px solid var(--line);border-radius:7px;padding:25px;margin-bottom:17px;}
.account-section h3{font-weight:600;letter-spacing:-.04em;margin:0 0 15px;font-size:21px;}
.progress{height:5px;border-radius:8px;background:#e7ece8;overflow:hidden;margin:15px 0;}
.progress span{display:block;width:60%;height:100%;background:#547b66;}
/* Treatments */
.treatment-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:50px 0 85px;border-bottom:1px solid var(--line);}
.treatment-layout:nth-child(even) .treatment-art{order:2;}
.treatment-art{height:440px;border-radius:4px;}
.treatment-copy h2{margin:20px 0 22px;font-size:clamp(34px,3.7vw,57px);font-weight:550;letter-spacing:-.07em;line-height:1.08;}
.treatment-copy p{font-size:14px;color:#7a8880;line-height:1.85;margin-bottom:28px;}
/* Footer */
.site-footer{background:#162d26;color:#f2f7f2;padding:75px 0 25px;}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,.7fr);gap:60px;}
.footer-logo{color:#fff;font-size:33px;}
.footer-tagline{font-size:14px;line-height:1.8;max-width:250px;color:#a0b6a9;margin:23px 0;}
.footer-col h4{font-size:11px;letter-spacing:.13em;font-weight:650;text-transform:uppercase;margin:5px 0 22px;color:#e1ede4;}
.footer-col a,.footer-col span{font-size:12px;color:#a5b8aa;display:block;margin-bottom:15px;cursor:pointer;}
.footer-col a:hover{color:white;}
.footer-bottom{border-top:1px solid #365447;margin-top:70px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#819b8b;font-size:10px;line-height:1.8;}
.demo-banner{background:#eaf2ed;color:#577263;text-align:center;padding:11px;font-size:11px;font-weight:550;}
.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);background:#253f33;color:#fff;padding:15px 23px;font-size:12px;border-radius:7px;z-index:200;opacity:0;pointer-events:none;transition:all .3s;box-shadow:var(--shadow);max-width:90vw;text-align:center;}
.toast.show{opacity:1;transform:translate(-50%,0);}
.mobile-menu{display:none;}
.modal-overlay{position:fixed;inset:0;background:rgba(16,31,24,.48);display:flex;align-items:center;justify-content:center;z-index:140;padding:20px;}
.modal-card{background:white;max-width:460px;width:100%;border-radius:12px;padding:39px;text-align:center;box-shadow:var(--shadow);}
.modal-card h2{font-size:29px;letter-spacing:-.055em;margin:15px 0;}
.modal-card p{font-size:13px;line-height:1.8;color:#859087;margin-bottom:25px;}
.empty-state{border:1px dashed #cad7cc;padding:70px 25px;text-align:center;border-radius:6px;}
.empty-state h2{font-size:26px;font-weight:600;letter-spacing:-.05em;}
.empty-state p{color:#7f8b82;font-size:13px;line-height:1.8;}
.fade-entry{animation:enter .5s both;}
@keyframes enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1160px){.header-inner{padding:0 4%;gap:22px}.main-nav{gap:18px}.nav-link{font-size:11px}.header-book{display:none}.hero-grid{min-height:560px}.hero-photo{height:570px}.hero-mark{left:-19px}.shop-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.topline{font-size:8px}.site-header .header-inner{height:68px;padding:0 5%}.main-nav{display:none}.header-controls{margin-left:auto;gap:5px}.mobile-toggle{display:inline-flex}.mobile-menu{display:block;background:white;border-bottom:1px solid var(--line);padding:10px 5% 20px;}.mobile-menu a{display:block;font-size:15px;padding:13px 10px;color:#3f584b;border-bottom:1px solid #f0f3ef}.hero-grid{grid-template-columns:1fr;gap:35px}.home-hero{padding-top:30px}.hero-copy{padding:25px 0 0}.hero-copy .eyebrow{margin-bottom:18px}.hero-copy h1{font-size:clamp(59px,11vw,88px)}.hero-photo{height:460px;border-radius:3px 100px 3px 3px}.hero-mark{width:90px;height:90px;font-size:8px;bottom:-20px;left:-10px}.hero-caption{display:none}.scroll-line{margin-top:0}.home-manifesto{padding:90px 0}.section-pad{padding:90px 0}.showcase-grid,.experience-grid{gap:20px}.show-card{min-height:420px}.show-card.secondary{min-height:380px;margin-top:40px}.experience-photo{height:450px}.product-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr);gap:40px}.booking-layout,.cart-layout{grid-template-columns:1fr;gap:28px}.summary-box{position:static}.account-layout{grid-template-columns:1fr;gap:25px}.account-sidebar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.account-avatar{margin:0}.account-side-nav{display:flex;width:100%;margin-top:4px;overflow:auto}.account-side-nav button{width:auto;white-space:nowrap}.coupon-grid{grid-template-columns:repeat(2,1fr)}.treatment-layout{gap:24px}.treatment-art{height:355px}}
@media(max-width:580px){.container,.container-wide{width:90%}.wordmark{font-size:26px}.lang-switch button{padding:7px}.header-controls .account-link{display:none}.home-hero{padding-bottom:58px}.hero-copy h1{font-size:clamp(54px,12.5vw,75px)}.hero-copy .body-lead{font-size:14px;line-height:1.75}.hero-photo{height:400px}.hero-actions{gap:14px}.btn{padding:14px 19px;font-size:12px}.h1-page{font-size:clamp(49px,11vw,73px)}.page-hero{padding:67px 0 50px}.page-hero p{font-size:14px}.page-body{padding:45px 0 85px}.section-heading{display:block}.section-heading>.link-arrow{margin-top:23px}.showcase-grid{grid-template-columns:1fr}.show-card{min-height:430px}.show-card.secondary{min-height:340px;margin-top:0}.experience-grid{grid-template-columns:1fr;gap:45px}.experience-photo{height:400px}.home-manifesto h2{font-size:36px}.product-grid{grid-template-columns:repeat(2,1fr);gap:13px}.product-info{display:block}.product-price{margin-top:8px;display:block}.product-card h3{font-size:13px}.product-visual{aspect-ratio:1/1.25}.event-highlight{padding:80px 0}.event-highlight h2{font-size:53px}.events-grid,.coupon-grid,.shop-grid{grid-template-columns:1fr}.shop-grid{gap:26px}.shop-grid .product-visual{aspect-ratio:1.25}.booking-panel{padding:22px}.booking-panel h2{font-size:25px}.date-slot-grid{grid-template-columns:repeat(2,1fr)}.inline-fields{grid-template-columns:1fr;gap:0}.cart-item{grid-template-columns:75px 1fr auto;gap:12px}.cart-item h3{font-size:13px}.stat-grid{grid-template-columns:repeat(3,1fr);gap:7px}.stat-card{padding:15px 11px}.stat-card .num{font-size:23px}.stat-card p{font-size:10px}.treatment-layout{display:flex;flex-direction:column;align-items:stretch;padding:38px 0 55px;gap:25px}.treatment-layout:nth-child(even) .treatment-art{order:0}.treatment-art{height:320px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom>div{margin-bottom:9px}.home-final{padding:100px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Korean display typography needs a different measure from Latin headlines. */
body.lang-ko .hero-copy h1{font-size:clamp(49px,5.05vw,80px);letter-spacing:-.07em;line-height:1.2;}
body.lang-ko .home-manifesto h2{line-height:1.35;letter-spacing:-.055em;}
body.lang-ko .h1-page{letter-spacing:-.07em;line-height:1.22;}
@media(max-width:580px){body.lang-ko .hero-copy h1{font-size:clamp(34px,9.6vw,47px);line-height:1.27;}body.lang-ko .home-manifesto h2{font-size:clamp(30px,8.5vw,38px);}}
