@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";:root{--ink:#392b2a;--muted:#756361;--rose:#edd3cf;--paper:#fffdfb;--line:#e5dcd7;--accent:#8e514d}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:16px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}:is(button:focus-visible,a:focus-visible,input:focus-visible){outline-offset:4px;outline:3px solid #9b635d}button{background:0 0;border:0}a{color:inherit;text-decoration:none}.topline{color:#fff;text-align:center;letter-spacing:2px;background:#573c38;padding:11px;font-size:12px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;height:106px;padding:0 5.5%;display:flex}.logo{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.logo>span{letter-spacing:-2px;font-family:Georgia,serif;font-size:39px;line-height:1.1}.studio{letter-spacing:4px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:400}.logo small{margin-top:4px;font-family:Georgia,serif;font-size:14px;font-style:italic}nav{gap:32px;display:flex}nav button{padding:10px 0;font-size:14px}nav .nav-active{border-bottom:1px solid var(--accent);color:var(--accent)}.header-actions{align-items:center;gap:22px;display:flex}.bag-button{position:relative}.bag-button span{background:var(--accent);color:#fff;border-radius:50%;width:19px;height:19px;font-size:12px;line-height:19px;position:absolute;top:-9px;right:-8px}.primary{background:var(--ink);color:#fff;border:1px solid var(--ink);padding:16px 26px;font-size:14px;transition:background .2s}.primary:hover{background:#704b45}.mobile-menu{display:none}.text-button{border-bottom:1px solid;padding:12px 0;font-size:14px}.hero{background:#f4e8e3;grid-template-columns:1fr 1fr;min-height:590px;display:grid}.hero-copy{padding:70px 7% 40px 11%}.eyebrow{letter-spacing:2px;color:var(--accent);font-size:12px;font-weight:500}h1,h2,h3{font-family:Playfair Display,Georgia,serif;font-weight:400}h1{letter-spacing:-2px;margin:25px 0;font-size:clamp(46px,4.5vw,72px);line-height:1.09}h1 em,h2 em{color:var(--accent);font-weight:400}.hero-copy p{max-width:410px;color:var(--muted);line-height:1.7}.hero-buttons{align-items:center;gap:22px;margin-top:32px;display:flex}.hero-detail{letter-spacing:1px;color:var(--muted);align-items:center;gap:16px;margin-top:43px;font-size:11px;display:flex}.hero-detail i{background:var(--muted);border-radius:50%;width:3px;height:3px}.hero-image{background:var(--rose);position:relative;overflow:hidden}.hero-image img{object-fit:cover;object-position:60% center;width:100%;height:100%;position:absolute}.image-note{background:#fff8;padding:13px 19px;font-family:Georgia,serif;font-style:italic;position:absolute;bottom:28px;right:28px}.brand-strip{border-bottom:1px solid var(--line);letter-spacing:2px;justify-content:space-around;padding:24px 5%;font-size:12px;display:flex}.section-head{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}h2{letter-spacing:-1px;margin:14px 0 20px;font-size:38px;line-height:1.2}.treat-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.treat-card{background:#f7f1ed;border:1px solid #ece3dd;flex-direction:column;padding:29px;display:flex}.card-top{letter-spacing:1.4px;color:var(--accent);justify-content:space-between;align-items:center;font-size:11px;display:flex}.number{letter-spacing:-1px;color:#b68d82;font-family:Georgia,serif;font-size:36px}h3{margin:23px 0 14px;font-size:27px;line-height:1.2}.treat-card p{color:var(--muted);flex:1;margin:0 0 28px;font-size:14px;line-height:1.75}.treat-meta{justify-content:space-between;gap:10px;padding-bottom:22px;font-size:14px;display:flex}.treat-meta span{align-items:center;gap:6px;display:flex}.treat-card>button{text-align:left;border-top:1px solid #d9ccc5;justify-content:space-between;padding:17px 0 0;font-size:14px;display:flex}.sample-note{color:var(--muted);margin-top:22px;font-size:12px;line-height:1.6}.shop-feature{background:#edd5ce;grid-template-columns:1fr 1fr;min-height:420px;margin:0 5.5%;display:grid}.shop-feature h2{font-size:48px}.shop-feature p{max-width:330px;color:var(--muted);margin-bottom:28px;line-height:1.7}.featured-product{background:#f7e9e4;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.featured-product img{object-fit:contain;mix-blend-mode:normal;max-width:90%;height:280px}.featured-product span{letter-spacing:2px;padding-top:20px;font-size:12px}.appointment-banner{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:24px;margin:65px 5.5%;padding:35px 0;display:flex}.appointment-banner h2{margin:0 0 8px;font-size:27px}.appointment-banner p{color:var(--muted);margin:0;font-size:14px}.appointment-banner .primary{white-space:nowrap;margin-left:auto}footer{background:#f4ece7;justify-content:space-between;align-items:center;gap:28px;padding:42px 5.5%;display:flex}footer>div:nth-child(2){letter-spacing:1px;font-size:11px}footer p{letter-spacing:0;color:var(--muted);font-size:14px}footer>small{color:var(--muted);font-size:12px}.page-title{margin:18px 0 22px;font-size:58px}.page-intro{max-width:620px;color:var(--muted);margin-bottom:36px;line-height:1.7}.treat-grid.all{grid-template-columns:repeat(2,1fr)}.policy{background:#f4e8e3;gap:20px;max-width:900px;margin-top:40px;padding:30px;display:flex}.policy svg{color:var(--accent);flex-shrink:0;margin-top:6px}.policy h3{margin:0 0 12px;font-size:24px}.policy p{color:var(--muted);margin:0;font-size:14px;line-height:1.7}.shop-top{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.shop-top span{font-size:14px}.filters{flex-wrap:wrap;gap:12px;padding:22px 0 30px;display:flex}.filters button{border:1px solid var(--line);letter-spacing:1px;padding:12px 18px;font-size:12px}.filters button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.product-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.product-image{background:#f3ece7;justify-content:center;align-items:center;height:330px;margin-bottom:25px;display:flex;position:relative}.product-image img{object-fit:contain;mix-blend-mode:multiply;width:80%;height:85%}.product-image>span{letter-spacing:1px;background:#fff;padding:7px 9px;font-size:10px;position:absolute;top:17px;left:17px}.product-card h3{margin:10px 0;font-size:23px}.product-card p{color:var(--muted);font-size:14px}.product-bottom{justify-content:space-between;align-items:center;display:flex}.product-bottom button{border:1px solid var(--line);place-items:center;width:40px;height:40px;display:grid}.overlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#21191975;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.booking-modal{background:var(--paper);width:min(660px,100%);max-height:92vh;padding:35px;position:relative;overflow:auto}.close{padding:7px;position:absolute;top:18px;right:18px}.booking-modal h2{margin-top:15px;font-size:35px}.steps{border-bottom:1px solid var(--line);color:#998c84;gap:18px;margin:24px 0 30px;font-size:12px;display:flex}.steps span{padding-bottom:14px}.steps .active{color:var(--accent);border-bottom:2px solid var(--accent)}.booking-modal>p{color:var(--muted);font-size:14px}.treatment-options{gap:12px;display:grid}.treatment-options button{border:1px solid var(--line);text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.treatment-options strong{font-weight:500}.treatment-options small{color:var(--muted);margin-top:7px;font-size:13px;display:block}.chosen{border-color:var(--accent)!important;background:#f6e6e0!important}.modal-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin-top:28px;padding-top:22px;display:flex}.modal-bottom>span{flex-direction:column;gap:6px;font-size:13px;display:flex}.modal-bottom strong{font-size:22px}.date-grid{grid-template-columns:repeat(7,1fr);gap:8px;margin:23px 0;display:grid}.date-grid button{border:1px solid var(--line);flex-direction:column;align-items:center;gap:5px;padding:12px 4px;display:flex}.date-grid small{font-size:12px}.date-grid strong{font-size:20px;font-weight:500}.time-grid{flex-wrap:wrap;gap:9px;display:flex}.time-grid button{border:1px solid var(--line);padding:10px 18px;font-size:14px}.booking-summary{background:#f6ede7;flex-direction:column;gap:10px;padding:20px;font-size:14px;display:flex}.booking-summary>span{color:var(--muted)}.booking-summary>div{justify-content:space-between;display:flex}.booking-summary>div:first-of-type{border-top:1px solid var(--line);padding-top:14px}.fields{gap:15px;margin:22px 0;display:grid}.fields label{gap:7px;font-size:14px;display:grid}input:not([type=checkbox]){width:100%;color:var(--ink);background:#fff;border:1px solid #ccbab1;border-radius:0;padding:12px}input[type=checkbox]{accent-color:var(--accent);flex-shrink:0;width:19px;height:19px}.waitlist{cursor:pointer;background:#f2e0da;align-items:flex-start;gap:12px;padding:20px;display:flex}.waitlist svg{color:var(--accent);flex-shrink:0}.waitlist strong{font-size:14px}.waitlist small{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.6;display:block}.consent{color:var(--muted);gap:10px;margin-top:20px;font-size:12px;line-height:1.7;display:flex}.error{color:#843c36;background:#f9e3e0;padding:14px;font-size:14px;line-height:1.6}.bag-panel{background:var(--paper);width:min(490px,100%);padding:45px 30px;position:absolute;top:0;bottom:0;right:0;overflow:auto}.empty{text-align:center;padding:70px 0}.cart-row{border-bottom:1px solid var(--line);gap:20px;padding:22px 0;display:flex}.cart-row img{object-fit:contain;background:#f7f0ea;width:90px;height:120px}.cart-row h4{margin:9px 0;font-size:15px}.cart-row small{color:var(--accent);font-size:11px}.cart-row strong{font-size:14px}.quantity{border:1px solid var(--line);justify-content:space-between;align-items:center;width:108px;margin-top:12px;display:flex}.cart-total{justify-content:space-between;margin:30px 0;font-size:19px;display:flex}.bag-panel>p{color:var(--muted);font-size:14px;line-height:1.7}.wide{width:100%}body:has(.overlay){overflow:hidden}@media (min-width:1550px){main,header,footer{max-width:1600px;margin:auto}}@media (max-width:1000px){header{gap:15px;padding:0 4%}nav{gap:18px}.header-actions{gap:12px}.hero-copy{padding:50px 7%}.hero-buttons{flex-direction:column;align-items:flex-start;gap:10px}.hero{min-height:580px}.treat-grid{gap:15px}.treat-card{padding:22px}.treat-meta{flex-direction:column}.hero-detail,.appointment-banner{flex-wrap:wrap}.appointment-banner .primary{margin-left:58px}footer{flex-wrap:wrap}.product-image{height:270px}}@media (max-width:700px){.topline{letter-spacing:1px;font-size:10px}header{height:88px}.logo>span{font-size:31px}.studio{letter-spacing:2px;font-size:12px}.logo small{font-size:12px}.header-actions .small{padding:10px 12px;font-size:12px}.mobile-menu{padding:0;display:block}.header-actions{gap:12px}nav{background:var(--paper);z-index:20;border-bottom:1px solid var(--line);padding:20px;display:none;position:absolute;top:119px;left:0;right:0}nav.open{flex-direction:column;align-items:flex-start;display:flex}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:38px 6%}.hero h1{font-size:49px}.hero-copy p{max-width:100%;font-size:15px}.hero-buttons{flex-direction:row;align-items:center;gap:18px}.hero-buttons .primary{padding:14px 17px;font-size:13px}.hero-buttons .text-button{font-size:12px}.hero-detail{margin-top:30px;font-size:10px}.hero-image{height:340px}.brand-strip{letter-spacing:1px;justify-content:space-between;gap:15px;padding:20px 5%;font-size:9px}.section{padding:42px 5%}.section-head{align-items:flex-start;gap:15px}.section-head h2{font-size:30px}.section-head .text-button{min-width:85px;margin-top:15px;font-size:12px}.treat-grid,.treat-grid.all{grid-template-columns:1fr}.treat-card{padding:25px}.treat-meta{flex-direction:row}.shop-feature{grid-template-columns:1fr;margin:0 5%}.shop-feature>div:first-child{padding:35px 8%}.shop-feature h2{font-size:40px}.featured-product{padding:20px}.featured-product img{height:230px}.appointment-banner{gap:18px;margin:42px 5%}.appointment-banner>svg{display:none}.appointment-banner h2{font-size:27px}.appointment-banner .primary{margin-left:0}.appointment-banner p{line-height:1.7}footer{padding:35px 5%;display:block}footer .logo{align-items:flex-start}footer>div:nth-child(2){margin:30px 0;line-height:1.6}.page-title{font-size:45px}.shop-top{align-items:flex-start;gap:15px}.shop-top p{margin:0;line-height:1.6}.shop-top span{white-space:nowrap;font-size:12px}.product-grid{grid-template-columns:repeat(2,1fr);gap:25px 16px}.product-image{height:210px}.product-image>span{font-size:8px;top:10px;left:10px}.product-card h3{font-size:20px;line-height:1.3}.product-card .eyebrow{letter-spacing:1px;font-size:10px}.product-card p{font-size:12px}.product-bottom strong{font-size:14px}.overlay{padding:10px}.booking-modal{max-height:96dvh;padding:32px 20px 22px}.booking-modal h2{font-size:32px}.steps{gap:12px;font-size:10px}.date-grid{grid-template-columns:repeat(5,1fr)}.modal-bottom .primary{padding:14px 18px}.modal-bottom strong{font-size:20px}.waitlist{gap:8px;padding:15px}.waitlist svg{display:none}.policy{padding:22px}.image-note{font-size:14px}}:root{--paper:#fffdfa;--rose:#edc4ce;--ink:#422b32;--muted:#806a70;--line:#ecdee1;--accent:#a3546c}body{background:#efd9de;padding:24px 32px 32px}.topline{color:#77515e;letter-spacing:2.2px;background:0 0;max-width:1400px;margin:0 auto 12px;padding:8px;font-size:11px}header,main,footer{background:var(--paper);max-width:1400px;margin-left:auto;margin-right:auto}header{border:0;border-radius:36px 36px 0 0;height:108px;padding:0 4.5%}main{padding-top:1px}footer{border-top:1px solid var(--line);background:#faf1f3;border-radius:0 0 36px 36px;padding:45px 4.5%}.logo>span,.logo .studio{color:#69414d}.logo small{color:#835761}nav{gap:10px}nav button{border-radius:999px;padding:11px 17px;transition:background .2s}nav .nav-active{color:#885268;background:#f4e4e9;border:0}nav button:hover{background:#f9eef1}.primary{background:#583942;border-color:#583942;border-radius:999px;padding:16px 28px;transition:background .2s,transform .2s;box-shadow:0 4px 10px #5839420a}.primary:hover{background:#855366;transform:translateY(-1px)}.primary.small{padding:13px 23px}.bag-button{border:1px solid var(--line);border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.bag-button span{top:-4px;right:-3px}.hero{background:#f6e6eb;border-radius:32px;grid-template-columns:1.05fr 1fr;min-height:580px;margin:0 16px;overflow:hidden}.hero-copy{padding:64px 7% 34px 8%;position:relative}.hero h1{letter-spacing:-2.3px;margin:24px 0;font-size:clamp(48px,4.45vw,70px);line-height:1.12}.hero h1 em{color:#a85d77}.eyebrow{letter-spacing:2px;font-size:11px;font-weight:600}.hero-copy p{max-width:380px;font-size:16px;line-height:1.8}.hero-image{isolation:isolate;border-radius:250px 250px 32px 32px;min-height:520px;margin:18px 18px 18px 0}.hero-image img{object-position:68% center}.image-note{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#79545d;background:#fffdfad9;border-radius:999px;padding:15px 22px;font-size:16px;bottom:25px;right:22px}.hero-buttons{gap:23px}.text-button{color:#795462;border:0;padding:12px 2px;position:relative}.text-button:after{content:"";opacity:.5;background:currentColor;height:1px;position:absolute;bottom:6px;left:2px;right:2px}.hero-detail{color:#906f7a;letter-spacing:.8px;margin-top:36px}.brand-strip{border-bottom:1px solid var(--line);letter-spacing:1.6px;color:#896b76;margin:0 4.5%;padding:26px 0;font-size:10px}.section{padding:62px 4.5%}.section-head{margin-bottom:32px}.section-head h2{letter-spacing:-1.3px;font-size:39px}.treat-grid{gap:20px}.treat-card{background:#f9edf0;border:0;border-radius:30px;padding:28px;transition:transform .25s}.treat-card:hover{transform:translateY(-3px)}.treat-card:nth-child(2){background:#f3e5e9}.treat-card:nth-child(3){background:#f9f0ed}.treat-card:nth-child(4){background:#f2e6ec}.card-top>span:first-child{letter-spacing:1px;border:1px solid #d7bac5;border-radius:999px;padding:7px 11px;font-size:10px}.number{color:#a47082;background:#fffbf7b3;border-radius:50%;place-items:center;width:46px;height:46px;font-size:25px;display:grid}.treat-card h3{margin-top:25px;font-size:27px}.treat-card p{line-height:1.8}.treat-card>button{border-top:1px solid #ddc7cf;padding-top:19px}.treat-card>button svg{box-sizing:content-box;background:#fffcfa;border-radius:50%;padding:6px}.shop-feature{background:#edd2dc;border-radius:34px;grid-template-columns:1.1fr 1fr;min-height:420px;margin:0 4.5%;overflow:hidden}.shop-feature>div:first-child{padding:52px 11%}.shop-feature h2{font-size:51px;line-height:1.16}.featured-product{background:#f7e7ed;border-radius:50% 50% 30px 30px;margin:20px 20px 20px 0}.featured-product img{object-fit:contain;width:auto;max-width:90%;height:265px}.featured-product span{letter-spacing:1.4px;color:#8c6675;font-size:11px}.appointment-banner{background:#fbf1f3;border:0;border-radius:30px;gap:22px;margin:55px 4.5%;padding:30px}.appointment-banner>svg{box-sizing:content-box;color:#9c6075;background:#f0dce4;border-radius:50%;padding:20px}.appointment-banner h2{font-size:27px}.appointment-banner .primary{padding:15px 24px}.page-section{padding-top:44px}.page-title{font-size:58px}.filters button{border-radius:999px;padding:12px 19px}.filters button.selected{background:#583942;border-color:#583942}.product-grid{gap:28px}.product-card{padding:0 3px}.product-image{background:#f6e9ed;border-radius:32px;height:330px}.product-card:nth-child(2) .product-image{background:#f4dde6}.product-card:nth-child(3) .product-image{background:#f4ede7}.product-image>span{letter-spacing:1px;background:#fffdfad9;border-radius:999px;padding:8px 11px;font-size:10px}.product-image img{object-fit:contain;width:80%;height:83%}.product-card h3{font-size:25px;line-height:1.25}.product-bottom button{background:#f4e4eb;border:0;border-radius:50%;width:43px;height:43px;transition:background .2s}.product-bottom button:hover{background:#e9cbd8}.policy{background:#f9edf1;border-radius:25px}.sample-note{color:#826d74}.overlay{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#36232c65}.booking-modal{border-radius:32px;box-shadow:0 28px 100px #38212b35}.close{background:#f6e8ed;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;display:grid}.close svg{width:20px;height:20px}.steps .active{color:#a3546c;border-color:#a3546c}.treatment-options button{border-radius:20px;padding:19px}.chosen{background:#f6e5ed!important;border-color:#ad7088!important}.date-grid button{border-radius:18px;padding:14px 4px}.time-grid button{border-radius:999px}.booking-summary{background:#f7eaf0;border-radius:22px;padding:23px}.fields input:not([type=checkbox]){border-color:#dbc5ce;border-radius:14px;padding:13px 15px}.waitlist{background:#f3dce7;border-radius:20px;padding:21px}.waitlist svg{color:#a3546c}.error{border-radius:16px}.bag-panel{border-radius:32px 0 0 32px}.cart-row img{background:#f8edf1;border-radius:18px}.quantity{border-radius:999px;overflow:hidden}.quantity button{padding:8px 10px}.empty svg{box-sizing:content-box;color:#9a6d7e;background:#f5e5ec;border-radius:50%;padding:22px}@media (min-width:1550px){header,main,footer{max-width:1400px}}@media (max-width:1050px){body{padding:18px}header{height:98px;padding:0 4%}nav{gap:0}nav button{padding:10px 12px}.hero{min-height:560px}.hero-copy{padding:52px 8% 30px}.hero-image{min-height:490px}.hero h1{font-size:56px}.hero-buttons{align-items:flex-start;gap:8px}.hero-detail{font-size:10px}.treat-card{padding:24px}.section-head h2{font-size:34px}.shop-feature h2{font-size:44px}.product-image{height:270px}.appointment-banner{padding:24px}.appointment-banner .primary{margin-left:0}.appointment-banner>svg{padding:14px}.appointment-banner h2{font-size:25px}}@media (max-width:700px){body{padding:10px 9px 18px}.topline{letter-spacing:1px;margin-bottom:6px;padding:7px 0;font-size:9px}header{border-radius:26px 26px 0 0;gap:10px;height:86px;padding:0 5%}.logo>span{font-size:30px}.logo small{font-size:11px}.header-actions{gap:8px}.header-actions .primary.small{padding:11px 13px;font-size:11px}.bag-button{width:34px;height:34px}.bag-button svg{width:17px}.mobile-menu svg{width:20px}nav{border-radius:0 0 24px 24px;top:113px;left:9px;right:9px}nav.open{gap:8px}.hero{border-radius:24px;grid-template-columns:1fr;min-height:0;margin:0 9px}.hero-copy{padding:35px 7% 27px}.hero h1{letter-spacing:-1.6px;margin:20px 0;font-size:48px;line-height:1.12}.hero-copy p{font-size:15px;line-height:1.7}.hero-buttons{flex-direction:row;align-items:center;gap:15px;margin-top:23px}.hero-buttons .primary{padding:14px 17px;font-size:12px}.hero-buttons .text-button{font-size:12px}.hero-detail{letter-spacing:.5px;gap:12px;margin-top:28px;font-size:9px}.hero-image{border-radius:180px 180px 20px 20px;height:330px;min-height:0;margin:0 12px 12px}.hero-image img{object-position:65% center}.image-note{padding:12px 18px;font-size:14px;bottom:18px;right:15px}.brand-strip{letter-spacing:.8px;gap:8px;padding:22px 0;font-size:8px}.section{padding:38px 5%}.section-head h2{font-size:30px;line-height:1.2}.section-head .text-button{margin-top:10px;font-size:11px}.treat-card{border-radius:25px;padding:25px}.treat-grid{gap:15px}.treat-card h3{font-size:27px}.shop-feature{border-radius:27px;grid-template-columns:1fr}.shop-feature>div:first-child{padding:35px 9%}.shop-feature h2{font-size:43px}.featured-product{border-radius:160px 160px 22px 22px;min-height:300px;margin:0 14px 14px}.featured-product img{height:225px}.appointment-banner{border-radius:26px;gap:16px;margin:35px 5%;padding:25px}.appointment-banner h2{font-size:26px;line-height:1.3}.appointment-banner p{font-size:13px}.appointment-banner .primary{padding:14px 21px;font-size:13px}.page-title{font-size:43px}.product-grid{gap:24px 14px}.product-image{border-radius:24px;height:200px}.product-image>span{padding:6px 8px;font-size:8px;top:12px;left:12px}.product-card h3{font-size:20px}.product-bottom button{width:36px;height:36px}.product-bottom strong{font-size:13px}.product-card .eyebrow{font-size:9px}.filters{gap:8px}.filters button{letter-spacing:.7px;padding:11px 13px;font-size:10px}footer{border-radius:0 0 26px 26px;padding:34px 5%}.booking-modal{border-radius:25px;padding:32px 20px 22px}.treatment-options button{border-radius:18px}.date-grid button{border-radius:15px}.booking-summary{border-radius:18px}.bag-panel{border-radius:25px 0 0 25px}.modal-bottom .primary{padding:14px 18px;font-size:13px}.waitlist{border-radius:18px;padding:16px}.policy{border-radius:22px}.section .eyebrow{font-size:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.primary:hover,.treat-card:hover{transform:none}}.shop-layout{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:32px;display:grid}.shop-layout .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}.product-image{cursor:pointer;border:1px solid #efe5e8;width:100%;height:310px;padding:24px;display:flex;background:#f7f2f3!important}.product-image img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%;max-height:265px;transition:transform .25s}.product-image:hover img{transform:scale(1.04)}.product-image .view-product{background:#fffdfae8;padding:8px 12px;font-size:11px;inset:auto 14px 14px auto}.product-title{text-align:left;font:inherit;line-height:inherit;padding:0}.product-title:hover{color:var(--accent)}.product-card{flex-direction:column;display:flex}.product-card h3{min-height:62px}.product-bottom{margin-top:auto}.routine-panel{background:#f6e5ec;border-radius:28px;padding:27px;position:sticky;top:24px}.routine-panel h3{margin:17px 0 22px;font-size:32px;line-height:1.18}.routine-panel h3 em{color:var(--accent)}.skin-label{gap:9px;font-size:13px;display:grid}.skin-label select{color:var(--ink);font:inherit;background:#fff9fc;border:1px solid #d7b8c7;border-radius:14px;width:100%;padding:12px 14px}.routine-panel h4{margin:24px 0 12px;font-size:13px}.routine-panel ol{counter-reset:steps;gap:12px;margin:0;padding:0;list-style:none;display:grid}.routine-panel li{counter-increment:steps;align-items:center;gap:10px;font-size:13px;line-height:1.5;display:flex}.routine-panel li:before{content:counter(steps);color:#a76583;background:#fffbfd;border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:11px;display:grid}.routine-panel p{color:var(--muted);font-size:13px;line-height:1.75}.routine-panel .routine-note{border-top:1px solid #e2c8d4;padding-top:17px;font-size:12px}.routine-source{color:var(--muted);margin-top:16px;font-size:10px;text-decoration:underline;display:block}.whatsapp-button{color:#8c5068;background:#fff8fc;border:1px solid #b48397;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:12px 17px;font-size:12px;line-height:1.5;transition:background .2s;display:inline-flex}.whatsapp-button:hover{background:#f1d8e4}.routine-panel .whatsapp-button{width:100%;padding:12px}.consult-strip{background:#f8edf2;border-radius:24px;align-items:center;gap:17px;margin:26px 0 32px;padding:23px;display:flex}.consult-strip>svg{color:#a3657d;flex-shrink:0}.consult-strip strong{font-size:14px;font-weight:500}.consult-strip p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.6}.consult-strip .whatsapp-button{flex-shrink:0;margin-left:auto}.treatment-details{border-top:1px solid #decbd4;margin-top:6px;padding:17px 0;font-size:13px}.treatment-details summary{cursor:pointer;color:#895c6d;list-style-position:inside}.treatment-details p{margin:15px 0 0;font-size:13px;line-height:1.7}.treatment-card-actions{justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.treatment-card-actions .primary{align-items:center;gap:9px;padding:13px 18px;font-size:12px;display:flex}.treatment-card-actions .text-button{font-size:12px}.outside-hours-footer{justify-content:space-between;align-items:center;gap:28px;margin:0 4.5%;padding:32px 0 42px;display:flex}.outside-hours-footer h3{margin:12px 0;font-size:30px}.outside-hours-footer p{color:var(--muted);max-width:600px;font-size:14px;line-height:1.7}.outside-hours-footer .whatsapp-button{flex-shrink:0}.outside-hours{background:#f8eef3;border-radius:18px;margin:23px 0 0;padding:18px}.outside-hours p{margin:0 0 12px;font-size:13px;line-height:1.5}.bundle-duration{align-items:center;gap:8px;margin:22px 0 0;font-size:14px;display:flex}.treatment-cart-icon{color:#a46581;background:#f5e2ec;border-radius:50%;flex-shrink:0;place-items:center;width:66px;height:66px;display:grid}.treatment-cart-row p{color:var(--muted);font-size:13px}.treatment-cart-row .text-button{padding:5px 0;font-size:12px}.treatment-cart-summary{background:#f8eaf1;border-radius:22px;gap:14px;margin-bottom:22px;padding:21px;display:grid}.treatment-cart-summary>span{justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.treatment-cart-summary .primary{padding:14px;font-size:12px}.treatment-cart-summary p{color:var(--muted);font-size:12px;line-height:1.7}.product-detail-modal{background:var(--paper);border-radius:32px;grid-template-columns:minmax(0,1fr) 280px;gap:25px;width:min(1100px,96vw);max-height:92dvh;padding:44px 30px 30px;display:grid;position:relative;overflow:auto}.product-detail-main{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.detail-image{background:#f7f2f3;border-radius:26px;justify-content:center;align-items:center;height:350px;padding:24px;display:flex}.detail-image img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.detail-copy h2{margin:13px 0;font-size:30px;line-height:1.25}.detail-copy p{color:var(--muted);font-size:14px;line-height:1.7}.detail-copy .detail-size{font-size:12px}.detail-copy h4{margin:25px 0 0;font-size:13px}.detail-price{margin:23px 0 18px;font-size:23px;display:block}.detail-copy .primary{align-items:center;gap:10px;padding:14px 18px;font-size:12px;display:flex}.detail-copy .whatsapp-button{margin-top:14px;font-size:11px}.product-detail-modal .routine-panel{position:static}.notice{z-index:100;color:#fff;background:#583942;border-radius:20px;align-items:center;gap:20px;max-width:min(600px,92vw);padding:17px 18px;font-size:13px;line-height:1.6;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #3f293b30}.notice button{color:#fff;padding:5px;display:flex}@media (max-width:1050px){.shop-layout{grid-template-columns:minmax(0,1fr) 250px;gap:22px}.routine-panel{padding:22px}.product-image{height:250px;padding:19px}.product-card h3{font-size:21px}.product-detail-modal{grid-template-columns:minmax(0,1fr) 250px;padding:42px 24px 24px}.product-detail-main{grid-template-columns:1fr}.detail-image{height:300px}.product-detail-main .detail-copy{max-width:100%}.consult-strip{flex-wrap:wrap}.consult-strip .whatsapp-button{margin-left:42px}}@media (max-width:700px){.shop-layout{grid-template-columns:1fr;gap:30px}.shop-layout .product-grid{gap:25px 14px}.product-image{height:210px;padding:14px}.product-image .view-product{padding:6px 9px;font-size:9px;bottom:10px;right:9px}.product-card h3{min-height:75px;font-size:20px}.routine-panel{border-radius:25px;padding:25px;position:static}.routine-panel h3{font-size:32px}.routine-panel li,.routine-panel p{font-size:14px}.routine-panel .whatsapp-button{padding:14px;font-size:13px}.consult-strip{gap:12px;padding:21px}.consult-strip>svg{display:none}.consult-strip .whatsapp-button{margin-left:0;font-size:12px}.treatment-card-actions .primary{padding:13px 16px;font-size:12px}.outside-hours-footer{padding:24px 0 34px;display:block}.outside-hours-footer h3{font-size:28px}.outside-hours-footer .whatsapp-button{margin-top:10px;font-size:13px}.product-detail-modal{border-radius:25px;grid-template-columns:1fr;gap:28px;padding:45px 20px 22px}.product-detail-main{gap:22px}.detail-image{height:300px;padding:30px}.detail-copy h2{font-size:31px}.detail-copy p{font-size:15px}.detail-copy .primary,.detail-copy .whatsapp-button{font-size:13px}.detail-copy .sample-note{font-size:12px}.bundle-duration{flex-wrap:wrap;font-size:13px}.notice{border-radius:17px;width:max-content;max-width:92vw;font-size:12px;bottom:15px}}.product-image,.detail-image{overflow:hidden}.product-image img,.detail-image img{filter:brightness(1.025)}.product-image img.packshot-anua,.detail-image img.packshot-anua{transform:scale(1.08)}.product-image img.packshot-centella,.detail-image img.packshot-centella{transform:scale(1.5)}.product-image img.packshot-medicube,.detail-image img.packshot-medicube{transform:scale(.83)}.product-image:hover img.packshot-anua{transform:scale(1.12)}.product-image:hover img.packshot-centella{transform:scale(1.54)}.product-image:hover img.packshot-medicube{transform:scale(.87)}.product-image img.packshot-joseon,.detail-image img.packshot-joseon{transform:scale(.92)}.product-image:hover img.packshot-joseon{transform:scale(.96)}.transfer-step h3{margin:28px 0 12px;font-size:25px}.transfer-step>p{color:var(--muted);font-size:14px;line-height:1.75}.bank-details{background:#f9eef3;border-radius:20px;margin:20px 0;padding:19px}.bank-details>div{border-bottom:1px solid var(--line);grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px 0;font-size:14px;display:grid}.bank-details>div:last-child{border-bottom:0}.bank-details dt{color:var(--muted)}.bank-details dd{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:10px;margin:0;display:flex}.bank-details button{border:1px solid #d1b2c0;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:12px}.transfer-status{background:#f4e4ec;border-radius:20px;gap:12px;margin:23px 0;padding:20px;display:flex}.transfer-status>svg{color:var(--accent);flex-shrink:0}.transfer-status strong{font-size:14px;font-weight:500}.transfer-status p{color:var(--muted);margin:9px 0 0;font-size:13px;line-height:1.7}.steps{gap:14px;font-size:11px}@media (max-width:700px){.steps{gap:10px;font-size:9px}.bank-details>div{grid-template-columns:68px minmax(0,1fr);font-size:13px}}.booking-modal .fields label{gap:10px;font-size:16px}.booking-modal .fields input{min-height:52px;padding:15px 16px;font-size:18px}.booking-modal .primary,.booking-modal .whatsapp-button{min-height:52px;padding:16px 20px;font-size:16px}.booking-modal .waitlist strong{font-size:16px;line-height:1.6}.booking-modal .waitlist small{font-size:14px}.booking-modal .consent{font-size:14px;line-height:1.7}.booking-modal .sample-note{font-size:14px}.transfer-step>p,.transfer-status p{font-size:16px;line-height:1.7}.transfer-status strong{font-size:16px}.bank-details>div{padding:15px 0;font-size:16px}.booking-modal .text-button{min-height:44px;font-size:15px}.booking-modal .time-grid button{min-height:46px;font-size:16px}.booking-modal .date-grid small{font-size:14px}.booking-modal .steps{font-size:12px}.booking-modal input[type=checkbox]{width:23px;height:23px}@media (max-width:700px){.booking-modal .steps{gap:8px;font-size:11px}.booking-modal .modal-bottom{flex-wrap:wrap}.booking-modal .modal-bottom>.primary{width:100%}.bank-details>div{grid-template-columns:65px minmax(0,1fr)}.booking-modal .transfer-step .whatsapp-button{font-size:15px}}.ale-entry{color:var(--muted);margin-top:12px;font-size:13px;text-decoration:underline;display:inline-block}.admin-login{text-align:center;border-radius:32px;flex-direction:column;align-items:center;gap:25px;min-height:85vh;padding:40px 24px;display:flex}.login-card{text-align:left;background:#f7e7ee;border-radius:30px;width:min(430px,100%);padding:36px}.login-card>svg{color:var(--accent);margin-bottom:20px}.login-card .eyebrow{display:block}.login-card h1{margin:20px 0;font-size:40px;line-height:1.2}.login-card p{color:var(--muted);font-size:15px;line-height:1.7}.login-card label{gap:10px;font-size:16px;display:grid}.login-card input{border-radius:15px;min-height:52px;font-size:18px}.login-card .primary{margin-top:20px;font-size:16px}.admin-shell{border-radius:32px;max-width:1400px;min-height:85vh;padding:35px 4%}.admin-header{background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:20px;height:auto;padding:0;display:flex}.admin-header h1{letter-spacing:-1px;margin:12px 0 20px;font-size:40px}.logout{border:1px solid var(--line);border-radius:999px;align-items:center;gap:9px;padding:12px 18px;font-size:14px;display:flex}.admin-tabs{border-bottom:1px solid var(--line);background:0 0;gap:12px;margin-bottom:30px;padding:5px 0 22px;display:flex!important;position:static!important}.admin-tabs button{border:1px solid var(--line);border-radius:999px;align-items:center;gap:9px;padding:14px 20px;font-size:14px;display:flex}.admin-tabs button.active{color:#fff;background:#684253;border-color:#684253}.admin-toolbar{justify-content:space-between;align-items:center;gap:25px;margin:20px 0;display:flex}.admin-toolbar input{border-radius:999px;max-width:330px;padding:14px 18px;font-size:14px}.admin-toolbar .primary{align-items:center;gap:9px;display:flex}.admin-toolbar h2{margin:10px 0;font-size:32px}.month-nav{align-items:center;gap:18px;display:flex}.month-nav h2{text-transform:capitalize;text-align:center;min-width:210px;margin:0;font-size:28px}.month-nav button{background:#f5e5ed;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.admin-stats{flex-wrap:wrap;gap:18px;margin:22px 0;display:flex}.admin-stats span{color:var(--muted);background:#f7eaf0;border-radius:18px;padding:15px 20px;font-size:13px}.admin-stats strong{color:var(--ink);margin-right:7px;font-size:23px}.month-calendar{border:1px solid var(--line);border-radius:25px;overflow:hidden}.weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekdays{background:#f4e5ed}.weekdays span{text-align:center;padding:14px;font-size:13px}.calendar-grid>button,.calendar-empty{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;background:#fffdfa;flex-direction:column;gap:6px;min-height:110px;padding:12px;display:flex}.calendar-empty{background:#faf5f7}.calendar-grid>button:nth-child(7n),.calendar-empty:nth-child(7n){border-right:0}.calendar-grid>button.selected{background:#f6dce9}.calendar-grid strong{margin-bottom:4px;font-size:16px;font-weight:500}.calendar-booking{color:#835068;text-overflow:ellipsis;white-space:nowrap;background:#f2d4e1;border-radius:8px;width:100%;padding:6px;font-size:11px;line-height:1.4;overflow:hidden}.calendar-booking.paid{color:#4b7253;background:#e4eee4}.calendar-grid small{color:var(--muted);font-size:11px}.appointment-list-head{justify-content:space-between;align-items:center;gap:20px;margin:30px 0 20px;display:flex}.appointment-list-head h2{margin:0;font-size:29px}.appointment-list{gap:15px;display:grid}.appointment-row{border:1px solid var(--line);background:#fffdfa;border-radius:24px;grid-template-columns:110px minmax(0,1fr) 250px;gap:22px;padding:23px;display:grid}.appointment-row.cancelled{background:#f7f4f4}.appointment-date{border-right:1px solid var(--line);flex-direction:column;gap:9px;padding-right:15px;display:flex}.appointment-date strong{font-size:23px;font-weight:500}.appointment-date span,.appointment-date small{color:var(--muted);font-size:12px}.appointment-person h3{margin:0 0 10px;font-size:26px}.appointment-person p{color:var(--muted);margin:0 0 12px;font-size:14px;line-height:1.6}.appointment-person a{align-items:center;gap:8px;width:max-content;font-size:14px;text-decoration:underline;display:flex}.appointment-status{color:var(--accent);margin-top:12px;font-size:11px;display:block}.appointment-checks{align-content:start;gap:14px;display:grid}.appointment-checks label{cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.appointment-checks input{width:22px;height:22px}.appointment-checks .text-button{justify-self:start;font-size:12px}.cancel-button{color:#ac5360;justify-self:start;padding:0;font-size:12px;text-decoration:underline}.admin-success{color:#507154;background:#eaf2e9;border-radius:18px;align-items:center;gap:10px;padding:15px 18px;font-size:14px;display:flex}.admin-empty{text-align:center;color:var(--muted);background:#fcf5f8;border:1px dashed #d8bcc9;border-radius:25px;padding:45px}.admin-empty svg{color:var(--accent)}.admin-empty p{font-size:15px}.admin-card{background:#f9f0f4;border-radius:26px;margin-top:20px;padding:27px}.admin-card h3{margin:8px 0 20px;font-size:27px}.admin-card>.whatsapp-button{margin:8px}.patient-search{max-width:450px;margin-bottom:24px;font-size:15px;border-radius:999px!important}.patient-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.patient-list>button{text-align:left;border:1px solid var(--line);border-radius:22px;align-items:center;gap:18px;padding:21px;display:flex}.patient-avatar{width:50px;height:50px;color:var(--accent);background:#efdae4;border-radius:50%;flex-shrink:0;place-items:center;font-family:Georgia,serif;font-size:25px;display:grid}.patient-list strong{font-size:16px;font-weight:500}.patient-list small{color:var(--muted);margin-top:8px;font-size:13px;display:block}.patient-list>button>svg{color:var(--accent);flex-shrink:0;margin-left:auto}.patient-profile>h2{margin:25px 0 5px;font-size:38px}.profile-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:25px;display:grid}.admin-card .fields label{font-size:14px;line-height:1.6}.admin-card .fields input,.admin-card textarea{width:100%;color:var(--ink);background:#fffdfa;border:1px solid #d9c1cd;border-radius:14px;padding:13px 15px;font-family:inherit;font-size:16px;line-height:1.6}.admin-card textarea{resize:vertical}.admin-card input[readonly]{color:var(--muted);background:#f0e3e9}.clinical-note{border-top:1px solid #e2ccd7;padding:20px 0}.clinical-note span{color:var(--accent);font-size:13px}.clinical-note h4{margin:10px 0;font-size:15px}.clinical-note p{white-space:pre-wrap;color:var(--muted);overflow-wrap:anywhere;margin:12px 0 0;font-size:14px;line-height:1.8}.admin-muted{color:var(--muted);font-size:14px}.visit-row{border-top:1px solid #e2ccd7;grid-template-columns:160px minmax(0,1fr) 260px;gap:15px;padding:17px 0;font-size:13px;line-height:1.6;display:grid}.visit-row strong{font-weight:500}.visit-row>span:last-child{color:var(--muted)}.admin-bottom{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;margin-top:40px;padding-top:25px;font-size:12px;display:flex}.admin-bottom a{margin-left:auto;text-decoration:underline}@media (max-width:900px){.admin-toolbar{flex-wrap:wrap}.appointment-row{grid-template-columns:100px minmax(0,1fr)}.appointment-checks{grid-column:2}.profile-columns{grid-template-columns:1fr}.visit-row{grid-template-columns:140px minmax(0,1fr)}.visit-row>span:last-child{grid-column:2}.calendar-grid>button,.calendar-empty{min-height:95px;padding:9px}.calendar-booking{padding:5px;font-size:10px}.admin-toolbar input{max-width:100%}}@media (max-width:700px){.admin-shell{border-radius:25px;padding:25px 5%}.admin-header h1{font-size:34px}.admin-tabs{gap:8px;padding-bottom:20px}.admin-tabs button{gap:7px;padding:12px 14px;font-size:12px}.admin-tabs svg{width:16px}.month-nav{justify-content:space-between;gap:10px;width:100%}.month-nav h2{min-width:0;font-size:25px}.admin-toolbar{gap:18px;margin-top:12px}.admin-toolbar input{font-size:14px}.admin-stats{gap:9px}.admin-stats span{padding:12px 13px;font-size:11px}.admin-stats strong{margin-right:4px;font-size:20px}.weekdays span{padding:12px 2px;font-size:11px}.calendar-grid>button,.calendar-empty{min-height:74px;padding:7px 4px}.calendar-grid strong{font-size:14px}.calendar-booking{border-radius:5px;padding:4px;font-size:9px}.calendar-grid small{font-size:9px}.appointment-list-head h2{font-size:25px}.appointment-list-head .text-button{font-size:11px}.appointment-row{grid-template-columns:80px minmax(0,1fr);gap:17px;padding:20px}.appointment-date strong{font-size:21px}.appointment-date span{font-size:11px}.appointment-person h3{font-size:24px}.appointment-person p,.appointment-checks label{font-size:13px}.patient-list{grid-template-columns:1fr}.admin-card{padding:23px}.patient-profile>h2{font-size:32px}.visit-row{grid-template-columns:1fr;gap:8px}.visit-row>span:last-child{grid-column:1}.admin-bottom{flex-wrap:wrap;font-size:10px}.admin-bottom a{flex-basis:100%;margin-top:12px;margin-left:0}.login-card{padding:28px}.login-card h1{font-size:36px}.admin-login{padding:30px 18px}.logout{padding:11px 14px;font-size:12px}}.demo-banner{color:#634b40;background:#fff5ee;border:1px solid #e7cbbc;border-radius:20px;margin:22px 0;padding:20px 24px;font-size:16px;line-height:1.6}.demo-phone{color:#78656a;align-items:center;gap:6px;margin:6px 0;font-size:14px;display:flex}
