:root{--ink:#17232a;--muted:#60686c;--cream:#fff;--sand:#f5f5f1;--rose:#e5e8e6;--clay:#253d49;--deep:#102b3b;--white:#fff;--line:#d8dddf;--shadow:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:1.55}
/* Lock every page to the same reference-inspired sans-serif family. Older base rules contain serif declarations. */
body :not(svg):not(path){font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important}
a{color:inherit;text-decoration:none;transition:opacity .2s ease}
a:hover{opacity:.72}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid #1f718b;outline-offset:4px}
.promo{min-height:34px;display:flex;align-items:center;justify-content:center;padding:5px 20px;background:#122b39;color:#fff;font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.site-header{position:relative;top:auto;z-index:30;display:flex;flex-direction:column;align-items:center;gap:0;padding:0 4vw;background:#fff;border-bottom:1px solid var(--line);backdrop-filter:none}
.site-header .brand{padding:23px 0 18px;text-align:center;color:#102b3b;font:400 clamp(26px,2.6vw,39px)/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.23em}
.site-header .brand span{color:inherit}
.site-header .brand small{margin-top:8px;color:#35444b;font:500 8px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.43em}
.site-header .nav{width:100%;min-height:54px;display:flex;align-items:center;justify-content:center;gap:clamp(15px,2.5vw,38px);border-top:1px solid var(--line);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.site-header .nav a{color:#1c272d;white-space:nowrap}
.site-header .nav .nav-cta{border-radius:0;padding:10px 14px;background:#112d3d;color:white!important;box-shadow:none}
.menu-toggle{position:absolute;right:4vw;top:26px;z-index:3;display:none;color:#122b39;border:0;background:none;font-size:25px}
.floating-wa{position:fixed;right:24px;bottom:24px;z-index:40;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#102b3b;color:#fff;font-size:20px;box-shadow:0 9px 24px #0d233333}
.site-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px;padding:75px 7vw 25px;background:#102b3b;color:#fff}
.site-footer .brand{font:400 24px "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.18em;color:#fff}
.site-footer .brand span{color:#fff}
.site-footer .brand small{margin-top:9px;font:500 8px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.34em;color:#dbe1e3}
.site-footer strong{font-size:10px;font-weight:600;letter-spacing:.16em}
.site-footer p,.site-footer a,.site-footer span{color:#d5dee2;font-size:13px}
.site-footer .footer-links,.site-footer .footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.site-footer .footer-note{grid-column:1/-1;width:100%;max-width:none;margin:24px 0 0;border-top:1px solid #415663;padding-top:20px;color:#bfccd1;font-size:11px}
.campaign{position:relative;height:clamp(530px,55vw,690px);overflow:hidden;background:#122d3d;color:white}
.campaign .hero-slide{position:absolute;inset:0;display:grid;grid-template-columns:50% 50%;visibility:hidden;opacity:0;transition:opacity .55s ease,visibility .55s ease}
.campaign .hero-slide.is-active{visibility:visible;opacity:1;z-index:1}
.campaign-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:5vw 7vw 8vw;background:#112d3d}
.campaign-index,.kicker{display:block;margin:0;color:inherit;font-size:10px;font-weight:600;letter-spacing:.22em;line-height:1.5;text-transform:uppercase}
.campaign-copy h1,.campaign-copy h2{max-width:650px;margin:25px 0 20px;color:#fff;font:300 clamp(48px,5.3vw,83px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.055em}
.campaign-copy p{max-width:440px;margin:0 0 30px;color:#e0e9ec;font-size:16px;line-height:1.65}
.campaign-link,.underlined-link{display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid currentColor;padding:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.campaign-link span,.underlined-link span{font-size:17px;line-height:1}
.photo-disclosure{margin-top:34px;color:#a9bbc2;font-size:10px;letter-spacing:.02em}
.campaign-image{height:100%;min-height:0;overflow:hidden;background:#dce3e6}
.campaign-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.campaign .hero-slide:nth-child(1) .campaign-image img{object-position:54% center}
.campaign .hero-slide:nth-child(2) .campaign-image img{object-position:50% 39%}
.campaign .hero-slide:nth-child(3) .campaign-image img{object-position:50% 65%}
.campaign-controls{position:absolute;z-index:2;left:7vw;bottom:33px;display:flex;align-items:center;gap:14px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.14em}
.hero-arrow{display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid #b7cbd3;border-radius:50%;background:transparent;color:#fff;font:16px Arial,sans-serif}
.hero-dots{display:flex;align-items:center;gap:7px;margin-left:14px}
.hero-dots button{width:6px;height:6px;border:0;border-radius:10px;background:#7c99a5;padding:0}
.hero-dots button.is-active{width:21px;background:#fff}
.reference-intro{padding:105px 20px 110px;text-align:center}
.reference-intro .kicker{color:#48616c}
.reference-intro h2{margin:20px 0 20px;font:300 clamp(36px,4vw,58px)/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.035em}
.reference-intro>p:last-child{max-width:690px;margin:auto;color:#5e676b;font-size:17px;line-height:1.8}
.split-editorial{display:grid;grid-template-columns:1fr 1fr;min-height:620px}
.spotlight-photo,.story-photo{position:relative;overflow:hidden;min-height:620px}
.spotlight-photo img,.story-photo img{width:100%;height:100%;object-fit:cover}
.spotlight-photo>span,.story-photo>span{position:absolute;bottom:20px;left:25px;background:#fff;padding:8px 10px;color:#243743;font-size:9px;font-weight:600;letter-spacing:.12em}
.spotlight-copy,.story-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px clamp(45px,8vw,135px);background:#f2f2ef}
.spotlight-copy .kicker,.story-copy .kicker{color:#45616d}
.spotlight-copy h2,.story-copy h2{max-width:570px;margin:18px 0 25px;font:300 clamp(38px,4.4vw,64px)/1.04 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}
.spotlight-copy p:not(.kicker),.story-copy p:not(.kicker){max-width:540px;margin:0 0 35px;color:#5c6468;font-size:17px;line-height:1.75}
.product-section,.collections,.journal-feature{max-width:1600px;margin:auto;padding:95px 6vw 110px}
.section-title-row{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:28px}
.section-title-row .kicker{color:#48616c}
.section-title-row h2{margin:9px 0 0;font:300 clamp(33px,3.6vw,50px)/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.04em}
.section-title-row .underlined-link{white-space:nowrap}
.feature-products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.feature-products>a{min-width:0}
.product-art{height:clamp(230px,25vw,370px);margin-bottom:18px;overflow:hidden;background:#f3f3f1}
.product-art>img{width:100%;height:100%;object-fit:cover}
.product-art.art-icon{display:grid;place-items:center;background:#e6ebec}
.product-art.art-blue{background:#dae4e8}
.product-art.art-cream{background:#f0efeb}
.product-art.art-icon img{width:140px;height:140px;object-fit:contain}
.feature-products>a>span,.collection-grid>a>span,.journal-feature-grid>a>span{color:#5e6e75;font-size:10px;font-weight:600;letter-spacing:.14em}
.feature-products h3{margin:6px 0 1px;font:400 17px/1.35 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0}
.feature-products small{font-size:13px;color:#657075}
.story-panel{display:grid;grid-template-columns:1fr 1fr;min-height:650px}
.story-copy{background:#e9eeef}
.story-photo img{object-position:center 37%}
.brand-statement{padding:90px 20px;text-align:center;background:#102b3b;color:#fff}
.brand-statement p{max-width:750px;margin:0 auto 18px;font:300 clamp(29px,3.4vw,50px)/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.035em}
.brand-statement span{font-size:10px;font-weight:600;letter-spacing:.2em}
.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.collection-grid>a>div:first-child{height:clamp(250px,25vw,365px);margin-bottom:20px;overflow:hidden;background:#e6ecee}
.collection-grid>a>div:first-child img{width:100%;height:100%;object-fit:cover}
.collection-grid>a>.collection-icon{display:grid;place-items:center;background:#e6ebec}
.collection-grid>a>.collection-icon img{width:140px!important;height:140px!important;object-fit:contain!important}
.collection-grid h3{margin:7px 0 8px;font:400 clamp(22px,2vw,31px)/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.025em}
.collection-grid p{min-height:45px;margin:0;color:#687176;font-size:13px}
.collection-grid strong{display:inline-block;margin-top:20px;border-bottom:1px solid #1d313b;padding-bottom:6px;font-size:10px;letter-spacing:.13em}
.journal-feature{border-top:1px solid #e1e5e5}
.journal-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.journal-feature-grid img{width:100%;height:330px;object-fit:cover;margin-bottom:20px}
.journal-feature-grid h3{max-width:360px;margin:7px 0 0;font:400 clamp(21px,2vw,30px)/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.025em}
.visit-strip{padding:88px 20px 95px;background:#edf1f1;text-align:center}
.visit-strip .kicker{color:#4a646f}
.visit-strip h2{margin:12px 0;font:300 clamp(35px,4vw,57px)/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.045em}
.visit-strip p:not(.kicker){max-width:620px;margin:0 auto 25px;color:#55656b;font-size:16px}
.visit-strip>a{display:inline-block;border-bottom:1px solid #122e3c;padding-bottom:8px;font-size:11px;font-weight:600;letter-spacing:.14em}
/* Inner pages use the same typography and palette, with layouts tailored below. */
.page-hero{padding:82px 7vw 75px;background:#edf1f1;border-bottom:1px solid var(--line)}
.page-hero h1{max-width:850px;margin:13px 0 18px;font:300 clamp(42px,5.8vw,80px)/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}
.page-hero .lede{max-width:700px;color:#55656b;font-size:17px;line-height:1.7}
.eyebrow,.tag{color:#425c67;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.section,.content-wrap{padding:75px 7vw}
.section h2,.content-wrap h2,.article-card h3{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:300;letter-spacing:-.035em}
.service-grid{gap:18px}
.service-card,.article-card,.price-card{border:1px solid var(--line);background:#fff;box-shadow:none}
.service-card{min-height:275px;padding:25px}
.service-card h3{font:400 24px/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.025em}
.service-card p{color:#647176}
.service-meta{color:#506873;font-size:11px}
.button,.nav-cta{border-radius:0;background:#112d3d;color:#fff;box-shadow:none}
.button-light{background:#fff;color:#112d3d}
.text-link{color:#112d3d}
.form-grid{gap:18px}
.field input,.field select,.field textarea{border:1px solid #cdd6d9;border-radius:0;background:#fff;padding:13px}
.notice{background:#edf1f1;border-left:3px solid #4e6c78;color:#4c626c}
.split{background:#112d3d;color:#fff}
.split p{color:#dbe4e8}
.quote-grid blockquote{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:300}
.gallery-hero{background:#102b3b;color:#fff}
.gallery-hero .eyebrow,.gallery-hero .lede{color:#dce7eb}
@media(max-width:1080px){.site-header .nav{gap:14px;font-size:10px}.feature-products,.collection-grid{grid-template-columns:repeat(2,1fr)}.product-art,.collection-grid>a>div:first-child{height:360px}}
@media(max-width:820px){.site-header{min-height:85px;justify-content:center}.site-header .brand{padding:16px 0}.menu-toggle{display:block}.site-header .nav{display:none;position:absolute;left:0;right:0;top:100%;width:100%;padding:14px 6vw;background:#fff;border:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.site-header .nav.open{display:flex}.site-header .nav a{display:block;padding:10px 0}.site-header .nav .nav-cta{margin:8px 0 3px;padding:12px}.campaign{height:610px}.campaign .hero-slide{grid-template-columns:48% 52%}.campaign-copy{padding:6vw 5vw 80px}.campaign-copy h1,.campaign-copy h2{font-size:clamp(40px,6vw,64px)}.campaign-controls{left:5vw}.split-editorial,.story-panel{grid-template-columns:1fr}.spotlight-photo,.story-photo{min-height:520px;max-height:620px}.spotlight-copy,.story-copy{min-height:480px;padding:65px 7vw}.site-footer{grid-template-columns:1fr 1fr}.site-footer .footer-note{grid-column:1/-1}}
@media(max-width:620px){.promo{font-size:8px;letter-spacing:.11em}.site-header .brand{font-size:24px}.campaign{height:760px}.campaign .hero-slide{grid-template-columns:1fr;grid-template-rows:46% 54%}.campaign-copy{grid-row:2;padding:35px 6vw 88px}.campaign-image{grid-row:1}.campaign-copy h1,.campaign-copy h2{font-size:clamp(38px,10vw,53px);margin:15px 0 12px}.campaign-copy p{font-size:13px;margin-bottom:15px}.campaign-index{font-size:9px}.campaign-link{font-size:10px}.photo-disclosure{margin-top:13px;font-size:9px}.campaign-controls{bottom:22px;left:6vw}.reference-intro{padding:68px 6vw}.reference-intro>p:last-child{font-size:14px}.spotlight-photo,.story-photo{min-height:460px}.spotlight-copy,.story-copy{min-height:420px;padding:55px 6vw}.spotlight-copy h2,.story-copy h2{font-size:40px}.spotlight-copy p:not(.kicker),.story-copy p:not(.kicker){font-size:14px}.product-section,.collections,.journal-feature{padding:65px 6vw 75px}.section-title-row{align-items:flex-start;flex-direction:column;gap:13px}.section-title-row h2{font-size:36px}.feature-products,.collection-grid{grid-template-columns:repeat(2,1fr);gap:12px}.product-art,.collection-grid>a>div:first-child{height:190px}.product-art.art-icon img,.collection-grid>a>.collection-icon img{width:80px!important;height:80px!important}.feature-products h3{font-size:15px}.feature-products>a>span,.collection-grid>a>span{font-size:8px}.collection-grid h3{font-size:21px}.collection-grid p{font-size:12px}.journal-feature-grid{grid-template-columns:1fr}.journal-feature-grid img{height:280px}.brand-statement{padding:65px 6vw}.brand-statement p{font-size:32px}.site-footer{grid-template-columns:1fr;padding:55px 6vw 25px}.site-footer .footer-note{grid-column:auto}.page-hero{padding:65px 6vw}.page-hero h1{font-size:45px}.page-hero .lede{font-size:15px}.section,.content-wrap{padding:60px 6vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.campaign .hero-slide{transition:none}a{transition:none}}
/* Treatment collection: a separate catalogue layout rather than the homepage composition. */
.services-hero{display:grid;grid-template-columns:50% 50%;min-height:570px;background:#e9eff0}
.services-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 8vw}
.services-hero-copy .kicker{color:#435c67}
.services-hero h1{max-width:630px;margin:23px 0 25px;font:300 clamp(49px,6vw,84px)/.98 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.06em}
.services-hero-copy>p:not(.kicker){max-width:470px;margin:0 0 30px;color:#5e6b70;font-size:17px;line-height:1.7}
.services-hero-photo{position:relative;min-height:570px;overflow:hidden}
.services-hero-photo img{width:100%;height:100%;object-fit:cover}
.services-hero-photo span{position:absolute;bottom:20px;left:20px;padding:8px 10px;background:#fff;font-size:9px;font-weight:600;letter-spacing:.1em}
.collection-tabs{position:sticky;top:0;z-index:12;display:flex;justify-content:center;gap:clamp(25px,5vw,80px);padding:21px;background:#fff;border-bottom:1px solid var(--line)}
.collection-tabs a{font-size:10px;font-weight:600;letter-spacing:.16em}
.service-collection-wrap{max-width:1550px;margin:auto;padding:50px 6vw 90px}
.service-collection{scroll-margin-top:65px;padding:55px 0 65px;border-bottom:1px solid var(--line)}
.service-collection-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}
.service-collection-heading .kicker{color:#46616d}
.service-collection h2{margin:5px 0 0;font:300 clamp(35px,3.8vw,54px)/1.08 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.04em}
.service-collection .service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-collection .service-card{min-height:315px;display:flex;flex-direction:column;align-items:flex-start;padding:25px}
.service-icon{width:64px;height:64px;margin-bottom:24px}
.service-collection .service-meta{width:100%;display:flex;justify-content:space-between;gap:15px;margin-bottom:8px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.service-collection .service-card h3{margin:0 0 9px;font:400 25px/1.15 "Helvetica Neue",Helvetica,Arial,sans-serif}
.service-collection .service-card p{margin:0 0 25px;font-size:13px}
.service-collection .service-card .text-link{margin-top:auto;border-bottom:1px solid #112d3d;padding-bottom:6px;font-size:10px;letter-spacing:.12em}
.services-closing{display:grid;grid-template-columns:1fr 1fr;background:#102b3b;color:white}
.services-closing>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:75px 9vw}
.services-closing h2{max-width:570px;margin:16px 0 20px;font:300 clamp(38px,4.3vw,60px)/1.04 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.045em}
.services-closing p:not(.kicker){max-width:480px;color:#d7e0e4;font-size:16px;line-height:1.75}
.services-closing img{width:100%;height:100%;max-height:620px;object-fit:cover;object-position:center 43%}
@media(max-width:820px){.services-hero{grid-template-columns:1fr}.services-hero-copy{min-height:390px;padding:65px 7vw}.services-hero-photo{min-height:430px;max-height:550px}.service-collection .service-grid{grid-template-columns:repeat(2,1fr)}.services-closing{grid-template-columns:1fr}.services-closing img{max-height:550px}}
@media(max-width:620px){.services-hero-copy{min-height:360px;padding:55px 6vw}.services-hero h1{font-size:49px}.services-hero-copy>p:not(.kicker){font-size:14px}.services-hero-photo{min-height:390px}.collection-tabs{gap:13px;padding:15px 8px}.collection-tabs a{font-size:8px;letter-spacing:.06em}.service-collection-wrap{padding:20px 6vw 65px}.service-collection{padding:45px 0}.service-collection .service-grid{grid-template-columns:1fr}.service-collection .service-card{min-height:280px}.services-closing>div{padding:65px 6vw}.services-closing h2{font-size:42px}}
/* Story / founder editorial */
.about-hero{display:grid;grid-template-columns:46% 54%;min-height:690px;background:#e8eeef}
.about-hero-photo{position:relative;min-height:690px;overflow:hidden}.about-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.about-hero-photo span{position:absolute;bottom:20px;left:25px;background:#fff;padding:8px 11px;font-size:9px;font-weight:600;letter-spacing:.12em}
.about-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:8vw}.about-hero h1{max-width:680px;margin:20px 0 25px;font:300 clamp(52px,6vw,86px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.06em}.about-hero-copy>p:not(.kicker){max-width:550px;color:#56686e;font-size:18px;line-height:1.7;margin:0 0 36px}
.about-manifesto{max-width:1050px;margin:auto;padding:130px 7vw;text-align:center}.about-manifesto .kicker{color:#48636e}.about-manifesto h2{margin:25px 0;font:300 clamp(42px,5vw,70px)/1.04 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}.about-manifesto>p:last-child{max-width:750px;margin:auto;color:#5f6a6e;font-size:17px;line-height:1.8}
.about-world{display:grid;grid-template-columns:40% 60%;background:#102b3b;color:#fff}.about-world-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 7vw}.about-world h2{margin:20px 0;font:300 clamp(45px,5vw,71px)/1.03 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}.about-world p:not(.kicker){max-width:460px;color:#d6e0e4;font-size:16px;line-height:1.75}.about-world-images{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.about-world-images img{width:100%;height:100%;object-fit:cover}.about-world-images img:first-child{object-position:48% center}.about-world-images img:last-child{object-position:45% center}
.about-place{display:grid;grid-template-columns:45% 55%;min-height:570px;background:#edf1f1}.about-place>img{width:100%;height:100%;max-height:680px;object-fit:cover;object-position:center 55%}.about-place>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 8vw}.about-place h2{margin:20px 0;font:300 clamp(43px,5vw,68px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}.about-place p:not(.kicker){max-width:470px;color:#5d6a6e;font-size:16px}
/* The edit: image-led boutique layout */
.shop-hero{display:grid;grid-template-columns:56% 44%;min-height:600px;background:#102b3b;color:#fff}.shop-hero>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:80px 9vw}.shop-hero h1{max-width:680px;margin:20px 0 25px;font:300 clamp(52px,6vw,88px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.06em}.shop-hero p:not(.kicker){max-width:440px;color:#d7e1e5;font-size:17px;line-height:1.7}.shop-hero>img{width:100%;height:100%;max-height:700px;object-fit:cover;object-position:50% 45%}
.shop-body-care,.shop-accessories{max-width:1550px;margin:auto;padding:100px 6vw}.shop-body-care .section-title-row>p{max-width:260px;margin:0;color:#5d696e;font-size:13px}.shop-products{display:grid;grid-template-columns:1fr 1fr;gap:20px}.shop-product{border:1px solid var(--line);display:grid;grid-template-columns:44% 56%;min-height:360px}.shop-product-art{display:grid;place-items:center;background:#e9eff0}.shop-product-art img{width:125px;height:125px}.shop-product>div:last-child{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:35px}.shop-product h3{margin:10px 0;font:300 29px/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.03em}.shop-product p{color:#647176;font-size:13px}.shop-product small{font-size:14px}.shop-product .underlined-link{margin-top:25px;font-size:9px}
.shop-accessories{border-top:1px solid var(--line)}.shop-accessory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.shop-accessory-grid img{width:100%;height:420px;object-fit:cover;object-position:center 51%}.shop-accessory-grid>a>span{display:block;margin-top:18px;color:#5b6d75;font-size:10px;font-weight:600;letter-spacing:.14em}.shop-accessory-grid h3{margin:6px 0;font:300 26px/1.18 "Helvetica Neue",Helvetica,Arial,sans-serif}.shop-disclaimer{max-width:750px;margin:35px 0 0;color:#637277;font-size:12px}.shop-last{padding:90px 20px;text-align:center;background:#e8eeef}.shop-last .kicker{color:#526872}.shop-last h2{margin:18px 0;font:300 clamp(40px,4vw,62px)/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.04em}.shop-last p:not(.kicker){max-width:490px;margin:0 auto 30px;color:#5b696e}
/* Real-photo studio diary */
.gallery-lead{display:grid;grid-template-columns:50% 50%;min-height:620px;background:#102b3b;color:#fff}.gallery-lead>div{display:flex;flex-direction:column;justify-content:center;padding:80px 9vw}.gallery-lead h1{max-width:660px;margin:20px 0 25px;font:300 clamp(52px,6vw,86px)/.98 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.06em}.gallery-lead p:not(.kicker){max-width:470px;color:#d5e0e5;font-size:17px;line-height:1.75}.gallery-lead>img{width:100%;height:100%;max-height:720px;object-fit:cover;object-position:center 54%}
.gallery-chapter{max-width:1560px;margin:auto;padding:110px 6vw}.gallery-chapter-heading{max-width:680px;margin-bottom:35px}.gallery-chapter-heading .kicker{color:#526c76}.gallery-chapter h2,.gallery-founder h2,.gallery-end h2{margin:12px 0;font:300 clamp(38px,4.5vw,64px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}.gallery-chapter-heading>p:last-child{color:#647075;font-size:17px}.gallery-diptych{display:grid;grid-template-columns:1fr 1fr;gap:22px}.gallery-diptych figure,.gallery-four figure{margin:0}.gallery-diptych img{width:100%;height:680px;object-fit:cover;object-position:center 39%}.gallery-diptych figcaption,.gallery-four figcaption{padding-top:12px;color:#556a74;font-size:10px;font-weight:600;letter-spacing:.14em}
.gallery-founder{display:grid;grid-template-columns:44% 56%;min-height:650px;background:#e8eeef}.gallery-founder>img{width:100%;height:100%;max-height:700px;object-fit:cover;object-position:center 32%}.gallery-founder>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 9vw}.gallery-founder p:not(.kicker){max-width:500px;color:#617074;font-size:17px;line-height:1.7;margin-bottom:30px}
.gallery-accessories{padding-top:100px}.gallery-four{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-four img{width:100%;height:420px;object-fit:cover;object-position:center 50%}.gallery-end{padding:90px 6vw;text-align:center;background:#102b3b;color:#fff}.gallery-end h2{margin:18px auto 28px}.gallery-end>div{display:flex;justify-content:center;flex-wrap:wrap;gap:35px}
/* Booking and visit are intentionally different page journeys. */
.booking-layout{display:grid;grid-template-columns:47% 53%;min-height:900px}.booking-visual{position:relative;min-height:900px;background:#102b3b}.booking-visual>img{width:100%;height:100%;object-fit:cover;filter:brightness(.66)}.booking-visual>div{position:absolute;left:8vw;bottom:70px;right:4vw;color:#fff}.booking-visual h1{max-width:540px;margin:18px 0 25px;font:300 clamp(52px,6vw,83px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.06em}.booking-visual>div>span{font-size:9px;letter-spacing:.1em}.booking-form-panel{padding:85px 7vw}.booking-form-panel .kicker{color:#526e78}.booking-form-panel h2{margin:15px 0 18px;font:300 clamp(37px,4vw,57px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}.booking-form-panel>p{max-width:590px;margin-bottom:35px;color:#617176;font-size:15px}.booking-form-panel .form-grid{max-width:680px}.booking-form-panel .field span,.contact-note .field span{font-size:11px;font-weight:600;letter-spacing:.05em}.booking-form-panel .button,.contact-note .button{border:0;padding:15px 22px;font-size:11px;letter-spacing:.1em}.booking-form-panel>small{display:block;margin-top:20px;color:#68777d;font-size:11px}.booking-confirm{padding:25px;background:#e9eff0}.booking-confirm h3{font-size:25px;font-weight:300}
.contact-hero{display:grid;grid-template-columns:50% 50%;min-height:610px;background:#102b3b;color:#fff}.contact-hero>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:75px 9vw}.contact-hero h1{margin:20px 0;font:300 clamp(52px,6vw,85px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.06em}.contact-hero p:not(.kicker){max-width:460px;color:#d6e1e5;font-size:17px;line-height:1.7}.contact-hero .underlined-link{margin-top:18px}.contact-hero>img{width:100%;height:100%;max-height:700px;object-fit:cover;object-position:center 56%}
.contact-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1530px;margin:auto;padding:100px 6vw}.contact-facts>div{padding:25px 0;border-top:1px solid #8799a0}.contact-facts span{font-size:10px;font-weight:600;letter-spacing:.15em}.contact-facts h2{margin:25px 0 15px;font:300 clamp(28px,3vw,43px)/1.1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.04em}.contact-facts p{max-width:350px;color:#5d6d73;font-size:15px}.contact-facts .underlined-link{margin-top:15px}
.contact-note{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:100px 8vw;background:#e8eeef}.contact-note h2{margin:20px 0;font:300 clamp(40px,4.5vw,65px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}.contact-note p:not(.kicker){max-width:480px;color:#627075;font-size:16px}
@media(max-width:900px){.about-hero,.about-world,.about-place,.shop-hero,.gallery-lead,.gallery-founder,.booking-layout,.contact-hero,.contact-note{grid-template-columns:1fr}.about-hero-photo{min-height:580px}.about-hero-copy{min-height:450px}.about-world-images{min-height:520px}.about-place>img{height:550px}.shop-hero>img{height:560px}.gallery-lead>img{height:550px}.gallery-founder>img{height:620px}.booking-visual{min-height:620px;max-height:720px}.booking-form-panel{padding:70px 7vw}.contact-hero>img{height:570px}.contact-facts{grid-template-columns:1fr 1fr}.contact-note{gap:40px}}
@media(max-width:620px){.about-hero-photo{min-height:480px}.about-hero-copy{min-height:390px;padding:60px 6vw}.about-hero h1{font-size:50px}.about-manifesto{padding:75px 6vw}.about-manifesto h2{font-size:42px}.about-world-copy{padding:65px 6vw}.about-world h2{font-size:50px}.about-world-images{min-height:400px}.about-place>img{height:470px}.about-place>div{padding:65px 6vw}.shop-hero>div{padding:70px 6vw}.shop-hero h1{font-size:54px}.shop-hero>img{height:500px}.shop-body-care,.shop-accessories{padding:75px 6vw}.shop-products{grid-template-columns:1fr}.shop-product{grid-template-columns:39% 61%;min-height:260px}.shop-product-art img{width:75px;height:75px}.shop-product>div:last-child{padding:20px}.shop-product h3{font-size:22px}.shop-product p{font-size:11px}.shop-accessory-grid{grid-template-columns:1fr}.shop-accessory-grid img{height:420px}.gallery-lead>div{padding:70px 6vw}.gallery-lead h1{font-size:52px}.gallery-lead>img{height:500px}.gallery-chapter{padding:75px 6vw}.gallery-diptych{grid-template-columns:1fr}.gallery-diptych img{height:500px}.gallery-founder>img{height:540px}.gallery-founder>div{padding:65px 6vw}.gallery-four{grid-template-columns:repeat(2,1fr);gap:12px}.gallery-four img{height:260px}.gallery-end{padding:75px 6vw}.gallery-end>div{gap:20px}.booking-visual{min-height:520px}.booking-visual>div{left:6vw;bottom:50px}.booking-visual h1{font-size:53px}.booking-form-panel{padding:65px 6vw}.contact-hero>div{padding:70px 6vw}.contact-hero h1{font-size:53px}.contact-hero>img{height:480px}.contact-facts{grid-template-columns:1fr;padding:65px 6vw}.contact-note{padding:70px 6vw}}
/* Treatment detail has its own consultation-led page layout. */
.detail-hero{display:grid;grid-template-columns:53% 47%;min-height:620px;background:#102b3b;color:#fff}
.detail-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:75px 9vw}
.detail-hero h1{max-width:650px;margin:18px 0 25px;font:300 clamp(52px,6vw,84px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.055em}
.detail-hero-copy>p:not(.kicker){max-width:470px;color:#d9e3e7;font-size:17px;line-height:1.75}
.detail-hero-copy .underlined-link{margin-top:25px}
.detail-hero-image{position:relative;min-height:620px;overflow:hidden}
.detail-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.detail-hero-image span{position:absolute;bottom:20px;left:20px;background:#fff;padding:8px 11px;color:#183644;font-size:9px;font-weight:600;letter-spacing:.12em}
.detail-main{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:9vw;max-width:1500px;margin:auto;padding:115px 7vw}
.detail-story h2{max-width:670px;margin:20px 0 28px;font:300 clamp(40px,4.4vw,64px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}
.detail-story>p:not(.kicker){max-width:660px;color:#5d6b70;font-size:17px;line-height:1.8}
.detail-faq{margin-top:55px;border-top:1px solid var(--line)}
.detail-faq details{border-bottom:1px solid var(--line);padding:22px 0}
.detail-faq summary{cursor:pointer;font-size:16px;font-weight:500}
.detail-faq details p{max-width:600px;color:#617177;font-size:14px;line-height:1.7}
.detail-booking{align-self:start;padding:42px;background:#e8eef0}
.detail-booking .kicker{color:#536d77}
.detail-price{margin:18px 0 35px;font:300 clamp(32px,3.4vw,47px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.035em}
.detail-rule{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c9d5da;padding:18px 0}
.detail-rule span{font-size:9px;font-weight:600;letter-spacing:.15em}
.detail-rule strong{text-align:right;font-size:13px;font-weight:500}
.detail-booking .button{display:flex;margin:20px 0;padding:16px 20px;font-size:10px;letter-spacing:.13em}
.detail-booking small{display:block;color:#607178;font-size:11px;line-height:1.6}
.detail-end{padding:85px 7vw;text-align:center;background:#eff2f1}
.detail-end h2{margin:14px 0 23px;font:300 clamp(40px,4vw,61px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.045em}
/* Journal index and reading pages use the same font with a separate editorial rhythm. */
.journal-hero{display:grid;grid-template-columns:58% 42%;min-height:630px;background:#102b3b;color:#fff}
.journal-hero>div{display:flex;flex-direction:column;justify-content:center;padding:80px 9vw}
.journal-hero h1{max-width:700px;margin:18px 0 24px;font:300 clamp(54px,6vw,86px)/.99 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.055em}
.journal-hero p:not(.kicker){max-width:470px;color:#d8e2e6;font-size:17px;line-height:1.75}
.journal-hero>img{width:100%;height:100%;max-height:740px;object-fit:cover;object-position:center 35%}
.journal-lead{display:grid;grid-template-columns:50% 50%;gap:0;background:#e9eff0}
.journal-lead>div:first-child{position:relative;min-height:570px}
.journal-lead>div:first-child img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.journal-lead>div:first-child small{position:absolute;bottom:20px;left:20px;background:#fff;padding:8px 10px;font-size:9px;letter-spacing:.12em}
.journal-lead>div:last-child{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:75px 9vw}
.journal-lead h2{max-width:600px;margin:20px 0 25px;font:300 clamp(40px,4.5vw,65px)/1.03 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}
.journal-lead p:not(.kicker){max-width:510px;color:#607076;font-size:16px;line-height:1.75}
.journal-lead .underlined-link{margin-top:20px}
.journal-list{max-width:1600px;margin:auto;padding:105px 6vw}
.journal-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 20px}
.journal-card-grid>a>img,.journal-card-icon{width:100%;height:350px;object-fit:cover;margin-bottom:20px;background:#e9eff0}
.journal-card-icon{display:grid;place-items:center}.journal-card-icon img{width:130px;height:130px}
.journal-card-grid span{color:#526974;font-size:10px;font-weight:600;letter-spacing:.15em}
.journal-card-grid h3{max-width:440px;margin:8px 0 12px;font:300 clamp(25px,2.4vw,34px)/1.13 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.035em}
.journal-card-grid p{max-width:410px;margin:0;color:#69777c;font-size:13px;line-height:1.65}
.journal-close{padding:95px 6vw;text-align:center;background:#102b3b;color:#fff}
.journal-close h2{margin:20px 0 15px;font:300 clamp(40px,4.5vw,65px)/1.05 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}
.journal-close p:not(.kicker){max-width:550px;margin:0 auto 28px;color:#d2dee3;font-size:16px}
article.content-wrap{max-width:900px;margin:auto;padding:70px 7vw 120px}
article.content-wrap>.brand{display:inline-block;margin-bottom:65px;color:#102b3b;letter-spacing:.2em}
article.content-wrap>.brand span{color:inherit}
article.content-wrap>h1{margin:13px 0 25px;font:300 clamp(43px,5.5vw,72px)/1.04 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.052em}
article.content-wrap>.lede{max-width:760px;color:#5a6b72;font-size:19px;line-height:1.65}
article.content-wrap>h2{margin:55px 0 14px;font-size:31px;line-height:1.17}
article.content-wrap>p:not(.tag):not(.lede){color:#4d6068;font-size:17px;line-height:1.8}
article.content-wrap>p a{border-bottom:1px solid #244452}
@media(max-width:900px){.detail-hero,.journal-hero,.journal-lead,.detail-main{grid-template-columns:1fr}.detail-hero-image{min-height:500px}.journal-hero>img{height:560px}.journal-lead>div:first-child{min-height:520px}.detail-main{gap:60px}.journal-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.detail-hero-copy,.journal-hero>div{padding:70px 6vw}.detail-hero h1,.journal-hero h1{font-size:52px}.detail-hero-image{min-height:430px}.detail-main{padding:75px 6vw}.detail-story h2{font-size:43px}.detail-booking{padding:27px}.detail-end{padding:75px 6vw}.journal-hero>img{height:490px}.journal-lead>div:first-child{min-height:430px}.journal-lead>div:last-child{padding:70px 6vw}.journal-lead h2{font-size:45px}.journal-list{padding:75px 6vw}.journal-card-grid{grid-template-columns:1fr;gap:48px}.journal-card-grid>a>img,.journal-card-icon{height:360px}.journal-close{padding:75px 6vw}article.content-wrap{padding:45px 6vw 90px}article.content-wrap>.brand{margin-bottom:60px}article.content-wrap>h1{font-size:45px}article.content-wrap>.lede{font-size:17px}}

/* Distinct, quiet card families for every navigation destination. The type system stays unchanged. */
.hero-toggle{border:1px solid #a9bec7;border-radius:50px;background:transparent;color:#fff;padding:6px 10px;font-size:9px;font-weight:600;letter-spacing:.12em;line-height:1}
.feature-products>a{display:block;padding:9px 9px 20px;border:1px solid #e7e9e7;border-radius:31px;background:#fff;transition:transform .3s ease,border-color .3s ease}
.feature-products>a:hover{transform:translateY(-4px);border-color:#bac8c9;opacity:1}
.product-art{position:relative;border-radius:24px;margin-bottom:18px}
.product-art>img{transition:transform .6s ease}
.feature-products>a:hover .product-art>img{transform:scale(1.045)}
.product-art .image-icon{position:absolute;right:13px;bottom:13px;display:grid;place-items:center;width:51px;height:51px;border:1px solid #e5e9e7;border-radius:50%;background:#f8f7f3e8;backdrop-filter:blur(7px)}
.product-art .image-icon img{width:31px;height:31px}
.feature-products>a>span:not(.image-icon),.feature-products h3,.feature-products small{margin-left:9px;margin-right:9px}
.collections{background:#fcfcfa}
.collection-grid>a{display:block;padding:9px 9px 23px;border:1px solid #e4e8e7;border-radius:36px;background:#fff;transition:transform .3s ease}
.collection-grid>a:hover{transform:translateY(-4px);opacity:1}
.collection-grid>a>div:first-child{border-radius:28px;margin-bottom:20px}
.collection-grid>a>span,.collection-grid h3,.collection-grid p,.collection-grid strong{margin-left:9px;margin-right:9px}
.journal-feature-grid>a{display:block;padding:9px 9px 26px;border:1px solid #e3e7e7;border-radius:31px 31px 12px 31px;background:#fff}
.journal-feature-grid img{border-radius:24px 24px 6px 24px}
.journal-feature-grid>a>span,.journal-feature-grid h3{margin-left:10px;margin-right:10px}

/* Treatments: tactile consultation cards, not product or article tiles. */
.service-collection .service-card{position:relative;min-height:350px;padding:27px 28px 28px;border:1px solid #d9e0de;border-radius:25px;background:#f8f8f5;overflow:hidden;transition:transform .3s ease,border-color .3s ease}
.service-collection .service-card:hover{transform:translateY(-4px);border-color:#a8b8b9}
.service-card-top{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:25px}
.service-glyph{display:grid;place-items:center;width:79px;height:79px;border:1px solid #d2dcdb;border-radius:23px 23px 10px 23px;background:#edf1ef}
.service-icon{width:54px;height:54px;margin:0}
.service-card-index{max-width:105px;text-align:right;color:#789095;font-size:8px;font-weight:600;letter-spacing:.16em;line-height:1.5}
.service-collection .service-meta{padding-top:12px;border-top:1px solid #dce3e1;color:#536970}
.service-collection .service-card h3{margin-top:7px;font-weight:300;font-size:28px}
.service-collection .service-card p{max-width:360px;line-height:1.65}
.service-collection#skin .service-card{background:#f7f8f6}
.service-collection#body .service-card{background:#f3f6f5}
.service-collection#beauty .service-card{background:#faf8f5}
.service-collection#beauty .service-glyph{background:#f2ebe5;border-color:#e1d5c9}
.service-collection#body .service-glyph{background:#e5eeee}

/* The Edit: a soft package-display shape; vector artwork avoids fake product photography. */
.shop-products{gap:25px}
.shop-product{border:1px solid #e1e4e2;border-radius:34px 34px 17px 34px;overflow:hidden;background:#fbfaf6;min-height:388px;box-shadow:0 16px 40px #1a3b3908}
.shop-product:nth-child(2){background:#f6f8f6;border-radius:17px 34px 34px 34px}
.shop-product-art{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;background:#eeeae2}
.shop-product:nth-child(2) .shop-product-art{background:#e7eeeb}
.shop-art-ring{display:grid;place-items:center;width:178px;height:178px;border:1px solid #c4cfcb;border-radius:50%;background:#f8f7f2}
.shop-product-art img{width:105px;height:105px}
.shop-product-art>small{color:#6d7775;font-size:8px;font-weight:600;letter-spacing:.16em}
.shop-product>div:last-child{padding:40px}
.shop-accessory-grid>a{display:block;padding:8px 8px 25px;border:1px solid #e3e6e4;border-radius:30px;background:#fff}
.shop-accessory-grid img{border-radius:23px}
.shop-accessory-grid>a>span,.shop-accessory-grid h3{margin-left:8px;margin-right:8px}

/* Our Story and Studio: image frames feel like a collected portfolio. */
.about-world-images{gap:12px;padding:12px}
.about-world-images img:first-child{border-radius:140px 20px 20px 20px}
.about-world-images img:last-child{border-radius:20px 20px 140px 20px}
.about-place>img{border-radius:0 0 45px 0}
.gallery-diptych figure,.gallery-four figure{padding:8px 8px 17px;border:1px solid #e0e6e4;border-radius:30px;background:#fff}
.gallery-diptych img,.gallery-four img{border-radius:23px}
.gallery-diptych figure:nth-child(2),.gallery-four figure:nth-child(even){border-radius:16px 32px 32px 32px}
.gallery-diptych figcaption,.gallery-four figcaption{padding:14px 6px 0}

/* Journal: paper-like story cards with their own asymmetric frame. */
.journal-card-grid{gap:30px 21px}
.journal-card-grid>a{display:block;padding:9px 9px 28px;border:1px solid #e4e7e5;border-radius:35px 35px 11px 35px;background:#fff;transition:transform .3s ease}
.journal-card-grid>a:nth-child(even){border-radius:11px 35px 35px 35px}
.journal-card-grid>a:hover{transform:translateY(-4px);opacity:1}
.journal-card-grid>a>img,.journal-card-icon{border-radius:27px 27px 6px 27px;margin-bottom:20px}
.journal-card-grid>a:nth-child(even)>img{border-radius:6px 27px 27px 27px}
.journal-card-grid span,.journal-card-grid h3,.journal-card-grid p{margin-left:11px;margin-right:11px}

/* Visit and booking: restrained information panels rather than reused service cards. */
.contact-facts>div{padding:31px;border:1px solid #dbe3e2;border-radius:24px 24px 12px 24px;background:#f9faf8}
.contact-facts>div:nth-child(2){border-radius:12px 24px 24px 24px;background:#f4f7f6}
.contact-facts h2{margin-top:28px}
.booking-confirm{border:1px solid #d6e0df;border-radius:23px;background:#f5f8f6}
.detail-booking{border:1px solid #d9e1e0;border-radius:28px 28px 12px 28px;background:#f2f6f4}

@media(max-width:1080px){.shop-product{min-height:340px}.shop-art-ring{width:130px;height:130px}.shop-product-art img{width:80px;height:80px}}
@media(max-width:620px){.hero-toggle{padding:6px 8px;font-size:8px}.feature-products>a,.collection-grid>a{padding:5px 5px 13px;border-radius:20px}.product-art,.collection-grid>a>div:first-child{border-radius:16px;margin-bottom:11px}.product-art .image-icon{width:36px;height:36px;right:7px;bottom:7px}.product-art .image-icon img{width:23px;height:23px}.feature-products>a>span:not(.image-icon),.feature-products h3,.feature-products small,.collection-grid>a>span,.collection-grid h3,.collection-grid p,.collection-grid strong{margin-left:5px;margin-right:5px}.collection-grid>a>div:first-child{height:210px}.service-collection .service-card{min-height:340px;padding:24px}.shop-product{grid-template-columns:37% 63%;min-height:280px}.shop-product>div:last-child{padding:20px}.shop-art-ring{width:86px;height:86px}.shop-product-art img{width:53px;height:53px}.shop-product-art>small{font-size:6px;text-align:center}.journal-card-grid>a{padding:7px 7px 25px}.contact-facts>div{padding:25px}}

/* Supplied product artwork: a catalogue distinct from treatments and accessories. */
.home-product-edit,.product-related{padding:105px 6vw;background:#f6f7f4}
.home-product-edit .section-title-row,.product-related .section-title-row{margin-bottom:24px}
.home-product-note{margin:0 0 30px;color:#66777a;font-size:14px;line-height:1.6}
.catalog-nav{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 52px}
.catalog-nav a{display:inline-flex;padding:11px 19px;border:1px solid #d5dedb;border-radius:999px;color:#27434b;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:background .2s ease}
.catalog-nav a:hover{background:#e9efeb}
.catalog-section{margin:0 0 76px;scroll-margin-top:95px}
.catalog-section-heading{display:flex;align-items:end;gap:20px;margin-bottom:24px;border-bottom:1px solid #dce3df;padding-bottom:18px}
.catalog-section-heading .kicker{margin:0 0 8px}
.catalog-section-heading h3{margin:0;font:300 clamp(38px,4vw,58px)/1.02 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.05em}
.catalog-section-heading>span{margin-left:auto;color:#718381;font-size:12px}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.catalog-card{display:block;min-width:0;padding:8px 8px 23px;border:1px solid #e0e5e1;border-radius:31px;background:#fff;color:#203740;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.catalog-card:hover{transform:translateY(-4px);border-color:#c2d0ca;box-shadow:0 18px 40px #21423a12;opacity:1}
.catalog-card-main{display:block;color:inherit}
.catalog-card-main:hover{color:inherit;opacity:1}
.catalog-card-order{display:block;margin:15px 9px 0;padding:14px 12px;border:1px solid #34565b;border-radius:999px;text-align:center;color:#264a50;font-size:10px;font-weight:700;letter-spacing:.1em;transition:background .2s ease,color .2s ease}
.catalog-card-order:hover,.catalog-card-order:focus-visible{background:#193c49;color:#fff;opacity:1}
.catalog-card-image{aspect-ratio:4/5;overflow:hidden;border-radius:24px;background:#eee9e1}
.catalog-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.catalog-card:hover .catalog-card-image img{transform:scale(1.035)}
.catalog-card-copy{padding:17px 9px 0}
.catalog-card-copy .kicker{display:block;color:#82918b;font-size:9px;letter-spacing:.14em}
.catalog-card-copy h3{min-height:56px;margin:10px 0 9px;font:300 clamp(20px,2vw,26px)/1.12 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.035em}
.catalog-card-copy small{display:block;color:#6c7d7a;font-size:12px}
.catalog-card-copy strong{display:block;margin-top:23px;border-top:1px solid #e6eae6;padding-top:14px;color:#34565b;font-size:10px;font-weight:600;letter-spacing:.11em}
.product-detail{display:grid;grid-template-columns:1fr 1fr;min-height:710px;background:#f6f7f4}
.product-detail-photo{min-height:710px;overflow:hidden;background:#ece8df}
.product-detail-photo img{width:100%;height:100%;object-fit:cover;display:block}
.product-detail-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:90px clamp(35px,7vw,135px)}
.product-back{margin-bottom:70px;color:#557075;font-size:10px;font-weight:600;letter-spacing:.15em}
.product-detail-copy h1{max-width:620px;margin:13px 0 20px;font:300 clamp(48px,5.5vw,82px)/1.03 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.055em}
.product-detail-price{margin:0 0 34px;color:#2f5960;font-size:17px}
.product-detail-note,.product-name-note{max-width:515px;color:#65777a;font-size:15px;line-height:1.7}
.product-name-note{padding:16px 18px;border-left:2px solid #b8cbc6;background:#eaf0eb}
.product-inquiry{display:inline-block;margin-top:25px;padding:17px 25px;border-radius:100px;background:#193c49;color:#fff;font-size:10px;font-weight:600;letter-spacing:.12em}
.product-inquiry:hover{background:#315962;color:#fff;opacity:1}
@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-detail{grid-template-columns:1fr}.product-detail-photo{height:650px;min-height:0}.product-detail-copy{padding:65px 6vw 85px}.product-back{margin-bottom:50px}}
@media(max-width:520px){.home-product-edit,.product-related{padding:75px 6vw}.catalog-grid{gap:11px}.catalog-card{padding:5px 5px 16px;border-radius:21px}.catalog-card-image{border-radius:16px}.catalog-card-copy{padding:13px 7px 0}.catalog-card-copy h3{min-height:55px;font-size:18px}.catalog-card-copy small{font-size:10px}.catalog-card-copy strong{margin-top:14px;font-size:9px}.catalog-nav{margin-bottom:42px}.catalog-nav a{padding:9px 13px}.catalog-section{margin-bottom:58px}.product-detail-photo{height:490px}.product-detail-copy h1{font-size:50px}}

/* Amy's supplied brand mark and a bespoke beauty-conversation booking glyph. */
.site-header .brand{display:flex;align-items:center;justify-content:center;min-width:135px;padding:9px 0}
.brand-logo{display:block;width:136px;height:auto;max-height:76px;object-fit:contain;background:#fff}
.site-footer .brand{display:inline-flex;padding:9px 12px;border-radius:7px;background:#fff}
.site-footer .brand .brand-logo{width:145px;max-height:none}
.floating-wa img{display:block;width:30px;height:30px}
.spotlight-photo[data-spotlight-slider]{position:relative;overflow:hidden}
.spotlight-photo[data-spotlight-slider]>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}
.spotlight-photo[data-spotlight-slider]>img.is-active{opacity:1}
.spotlight-slide-controls{position:absolute;bottom:22px;left:22px;z-index:2;display:flex;gap:8px}
.spotlight-slide-controls button{width:10px;height:10px;padding:0;border:1px solid #fff;border-radius:50%;background:transparent;cursor:pointer}
.spotlight-slide-controls button.is-active{background:#fff}
@media(max-width:620px){.site-header .brand{min-width:105px;padding:7px 0}.site-header .brand-logo{width:108px;max-height:65px}}

/* 2026 price lists: clear item-to-price mapping and honest photography states. */
.catalog-photo-pending{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:20px;background:radial-gradient(circle at 50% 38%,#f8f4ec,#e6ebe7 75%);text-align:center}
.catalog-card-image{position:relative}
.catalog-image-note{position:absolute;left:10px;bottom:10px;padding:7px 10px;border-radius:999px;background:#fffdfbee;color:#425e61;font-size:8px;font-weight:700;letter-spacing:.08em}
.product-variant-links{display:flex;flex-wrap:wrap;gap:10px}
.product-variant-links .product-inquiry{margin-top:25px}
.catalog-photo-pending img{width:min(72%,165px);height:auto;max-height:110px;object-fit:contain;filter:none}
.catalog-photo-pending span{color:#5e7777;font-size:10px;font-weight:700;letter-spacing:.16em}
.product-detail-photo.is-placeholder{display:flex;align-items:center;justify-content:center;padding:12%;background:radial-gradient(circle,#f8f4ec,#e3eae5)}
.product-detail-photo.is-placeholder img{width:min(80%,330px);height:auto;object-fit:contain}
.collection-tabs{flex-wrap:wrap;gap:10px 24px}
@media(max-width:620px){.catalog-photo-pending span{font-size:8px}}
