@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--cream:#f5f2eb;--paper:#fbf9f4;--ink:#302d26;--gold:#a27e42;--line:#d9d2c5;--muted:#777165;--dark:#34382f;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:14px/1.65 var(--sans)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}img{max-width:100%;display:block}button{color:inherit}.topline{height:35px;display:flex;justify-content:space-between;align-items:center;padding:0 4.5%;font-size:9px;letter-spacing:1.6px;border-bottom:1px solid var(--line)}header{height:101px;display:flex;align-items:center;gap:38px;padding:0 4.5%;position:sticky;top:0;background:#f5f2ebf5;backdrop-filter:blur(16px);z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font:37px/1 var(--serif);letter-spacing:1px;margin-right:auto;color:#795929}.brand-sun{font:47px Georgia;color:var(--gold)}.brand small{display:block;font:7px var(--sans);letter-spacing:2.2px;text-align:center;margin-top:7px}nav{display:flex;gap:27px;font-size:11px}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;bottom:-8px;height:1px;width:0;background:var(--gold);transition:width .3s}nav a:hover:after,nav a.active:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:17px 25px;font-size:11px;transition:background .25s,transform .25s}.button:hover{background:#745b37;transform:translateY(-2px)}.button.small{padding:13px 19px;gap:20px}.button.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}.button.outline{background:transparent;color:var(--ink);border-color:var(--line)}.button.outline:hover{border-color:var(--gold)}.text-link{display:inline-flex;gap:25px;align-items:center;font-size:11px;padding-bottom:7px;border-bottom:1px solid var(--gold)}.text-link:hover{color:var(--gold)}.menu{display:none;border:0;background:none;font-size:23px}.eyebrow{font-size:9px;letter-spacing:2.3px;font-weight:600;display:block;text-transform:uppercase}.gold{color:var(--gold)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02}h1{font-size:clamp(60px,7.7vw,116px);letter-spacing:-3px}h2{font-size:clamp(42px,4.7vw,70px);letter-spacing:-1.5px}h3{font-size:34px}em{color:var(--gold);font-weight:400}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:655px;margin:0 4.5%;position:relative}.hero-copy{padding:65px 20px 42px 0;position:relative;display:flex;flex-direction:column;align-items:flex-start}.hero-copy .eyebrow{margin-bottom:30px}.hero h1{position:relative;z-index:2;max-width:700px;white-space:nowrap}.hero h1 em{display:block;padding-left:68px}.hero-copy>p{max-width:310px;margin:25px 0 30px;color:var(--muted);font-size:12px}.hero-actions{display:flex;gap:25px;align-items:center}.hero-foot{margin-top:auto;padding-top:45px;display:flex;gap:35px;font-size:9px;color:var(--muted)}.hero-foot b{display:block;color:var(--ink);font-weight:500}.hero-visual{position:relative;margin:27px 0 27px 20px;overflow:hidden;min-height:550px;background:#dbd1bb}.hero-visual img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 58%;animation:pictureIn 1.6s ease both}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#201e1770,transparent 48%)}.visual-caption{position:absolute;bottom:25px;left:28px;right:28px;z-index:2;color:white;display:flex;justify-content:space-between;align-items:end;font-size:10px}.visual-caption span:last-child{font-size:8px;letter-spacing:1.5px}.hero-seal{position:absolute;right:32px;top:28px;z-index:3;width:87px;height:87px;border:1px solid #fff9;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font:48px var(--serif);animation:rotate 50s linear infinite}.scroll-label{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:8px;letter-spacing:1px;margin-bottom:17px}.scroll-label:before{content:'';width:35px;height:1px;background:var(--line)}.sun-art{position:absolute;right:24px;top:30px;width:145px;height:145px;color:#cbb486;opacity:.45;pointer-events:none;animation:rotate 100s linear infinite}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-around;gap:25px;padding:20px 4.5%;font-size:10px;letter-spacing:1.2px}.strip i{color:var(--gold);font-style:normal}.section{padding:96px 8%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:45px}.section-head .eyebrow{margin-bottom:20px}.section-head>p{max-width:280px;color:var(--muted);font-size:11px}.service-editorial{border-top:1px solid var(--line)}.service-teaser{display:grid;grid-template-columns:50px 1fr 160px 45px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line);transition:padding .3s,color .3s}.service-teaser:hover{padding-left:15px;color:var(--gold)}.service-teaser .num{font-size:10px;color:var(--gold)}.service-teaser h3{font-size:34px}.service-teaser .price{font-size:11px;color:var(--muted)}.arrow{font-size:25px;font-weight:400}.section-end{margin-top:30px;text-align:right}.care-banner{background:var(--dark);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;padding:65px 8%;gap:10%;position:relative;overflow:hidden}.care-banner h2{margin:20px 0 28px;font-size:62px}.care-banner em{color:#c9af77}.care-banner p{max-width:340px;color:#d4d7cc;font-size:12px}.care-books{display:flex;gap:24px;align-items:center;justify-content:center}.book{padding:32px 25px;background:#ede7da;color:#625130;min-height:225px;width:175px;box-shadow:-6px 5px 0 #20281d,0 20px 30px #0002;transform:rotate(-9deg);display:flex;flex-direction:column;justify-content:space-between;transition:transform .4s}.book:nth-child(2){transform:rotate(9deg);margin-top:38px;background:#d9c69c}.book:hover{transform:translateY(-10px) rotate(0)}.book b{font:32px/1 var(--serif)}.book small{font-size:8px;letter-spacing:1px}.book .star{font-size:31px}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.logo-panel{background:var(--paper);padding:25px;position:relative}.logo-panel img{mix-blend-mode:multiply;max-width:370px;margin:auto}.about-copy .eyebrow{margin-bottom:20px}.about-copy p{font-size:12px;color:var(--muted);max-width:370px;margin:25px 0}.location{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;padding-top:60px;padding-bottom:60px;border-top:1px solid var(--line)}.location h2{margin:20px 0 30px}.location dl{margin:25px 0;display:grid;grid-template-columns:90px 1fr;font-size:11px;gap:14px}.location dt{color:var(--muted)}.location dd{margin:0}.map{width:100%;height:360px;border:0;background:#e5e0d5;filter:saturate(.6)}.map-caption{font-size:9px;color:var(--muted);margin-top:9px}.cta{padding:67px 8%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:54px}.cta .eyebrow{margin-bottom:14px}footer{background:#eae5da;padding:50px 4.5% 20px;font-size:11px}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:45px}.footer-brand{font:55px/1 var(--serif);color:#795929}.footer-brand span{font:10px var(--sans);display:block;letter-spacing:.3px;margin-top:15px}.footer-top p{margin-top:15px;font-size:11px}.footer-phone{font:27px var(--serif)}.footer-bottom{border-top:1px solid #cfc7b7;padding-top:20px;display:flex;justify-content:space-between;font-size:8px;color:#736c5d;gap:20px}.page-intro{padding:60px 8% 45px}.breadcrumb{display:flex;gap:12px;font-size:9px;color:var(--muted);margin-bottom:38px}.page-intro .eyebrow{margin-bottom:22px}.page-intro h1{font-size:83px;letter-spacing:-2px}.page-intro p{max-width:500px;font-size:12px;color:var(--muted);margin-top:22px}.page-body{padding:0 8% 85px;min-height:45vh}.notice{padding:18px 22px;border-left:2px solid var(--gold);background:#eae4d780;font-size:11px;line-height:1.8;color:#6d6659;margin:25px 0}.notice strong{font-weight:600;color:var(--ink)}.search-wrap{display:flex;align-items:center;border-bottom:1px solid var(--ink);gap:15px;margin-bottom:25px}.search-wrap span{font-size:23px}.search-wrap input{width:100%;border:0;background:transparent;padding:20px 0;outline-offset:0;font-size:15px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.chip{border:1px solid var(--line);background:transparent;padding:10px 17px;font-size:10px;border-radius:0;transition:.2s}.chip[aria-pressed=true],.chip:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.result-count{font-size:9px;color:var(--muted);margin-bottom:15px;letter-spacing:1px}.catalog-layout{display:grid;grid-template-columns:1fr 255px;gap:50px;align-items:start}.catalog-group h2{font-size:36px;padding:24px 0 10px}.service-row{padding:19px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 34px;gap:25px;align-items:center}.service-row h3{font:12px/1.5 var(--sans)}.service-row p{font-size:9px;color:var(--muted);margin-top:4px}.service-row .price{font-size:12px;white-space:nowrap}.add{width:32px;height:32px;border:1px solid var(--line);background:transparent;font-size:19px}.add[aria-pressed=true]{background:var(--gold);color:white;border-color:var(--gold)}.selection-box{padding:25px;background:#e9e4d9;position:sticky;top:130px}.selection-box h3{font-size:28px;margin-bottom:15px}.selection-box p{font-size:10px;color:var(--muted)}.selection-box .button{width:100%;margin-top:20px}.selection-items{margin:15px 0}.selection-item{display:flex;justify-content:space-between;gap:10px;margin:11px 0;font-size:10px}.remove{border:0;background:transparent;padding:0 4px;font-size:15px}.total{border-top:1px solid var(--line);padding-top:17px;margin-top:20px;display:flex;justify-content:space-between;font-size:11px}.total b{font-weight:500}.empty{padding:45px 0;color:var(--muted);font-size:13px}.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.role-card{border-top:1px solid var(--gold);padding-top:25px}.role-art{height:235px;background:#e9e3d7;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:25px}.role-art span{font:100px var(--serif);color:#b9a47c}.role-art:after{content:'';position:absolute;width:150px;height:180px;border:1px solid #c8b58f;border-radius:90px 90px 0 0;bottom:-20px;transform:rotate(16deg)}.role-card:nth-child(2) .role-art{background:#e0dfd3}.role-card:nth-child(3) .role-art{background:#eadfd4}.role-card h3{font-size:31px}.role-card p{font-size:11px;color:var(--muted);margin:13px 0 23px}.role-card button.text-link{border:0;border-bottom:1px solid var(--gold);background:transparent;padding:0 0 7px}.pending{font-size:8px;text-transform:uppercase;letter-spacing:1.2px;color:var(--gold);margin-bottom:13px;display:block}.review-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.quote-mark{font:130px/.5 var(--serif);color:var(--gold);padding-top:50px}.review-empty{padding:45px;background:var(--paper);border:1px solid var(--line)}.review-empty h2{font-size:43px}.review-empty p{margin:24px 0;font-size:12px;color:var(--muted)}.review-photo img{width:100%;max-height:470px;object-fit:cover}.review-photo figcaption{font-size:9px;margin-top:10px;color:var(--muted)}figure{margin:0}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.guide{padding:40px;background:#ebe4d6;position:relative;min-height:360px;display:flex;flex-direction:column;align-items:start}.guide:nth-child(2){background:#e1e2d8}.guide .guide-symbol{font:65px var(--serif);color:var(--gold);margin-bottom:20px}.guide h2{font-size:47px;max-width:380px}.guide p{font-size:11px;margin:20px 0 30px;max-width:350px;color:var(--muted)}.guide a{margin-top:auto}.diagnosis-banner{margin-top:45px;border-top:1px solid var(--line);padding-top:40px;display:flex;justify-content:space-between;align-items:center;gap:30px}.diagnosis-banner h3{margin-bottom:12px}.diagnosis-banner p{font-size:11px;color:var(--muted);max-width:470px}.quiz{max-width:760px;margin:0 auto}.progress{height:2px;background:var(--line);margin:20px 0 35px}.progress span{height:2px;background:var(--gold);display:block;transition:width .4s}.quiz h2{font-size:48px;margin-bottom:30px}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option{border:1px solid var(--line);background:transparent;padding:20px;text-align:left;font-size:12px;transition:.2s}.option[aria-pressed=true]{border-color:var(--gold);background:#e9e0cf}.quiz-controls{display:flex;justify-content:space-between;margin-top:30px}.quiz-controls button{min-width:120px}.result-summary{background:var(--paper);padding:25px;margin:25px 0;font-size:12px}.result-summary p{padding:9px 0;border-bottom:1px solid var(--line)}.booking{display:grid;grid-template-columns:1fr 330px;gap:60px;align-items:start}.steps{display:flex;gap:20px;font-size:9px;color:var(--gold);border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px}.booking h2{font-size:37px;margin-bottom:20px}.booking select,.booking input{width:100%;padding:15px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:0}.field-label{display:block;font-size:11px;margin:25px 0 10px}.booking .filters{margin-top:15px}.booking-summary{padding:30px;background:var(--paper);border:1px solid var(--line);position:sticky;top:130px}.booking-summary h3{margin-bottom:20px}.booking-summary>p{font-size:10px;color:var(--muted);margin-top:15px}.booking-summary .button{width:100%;margin-top:22px}.time-label{font-size:10px;color:var(--muted);margin:18px 0}.times{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.times .chip{padding:12px 5px}.booking-note{font-size:9px;color:var(--muted);margin-top:12px}.success{padding:45px;text-align:center;border:1px solid var(--gold);max-width:680px;margin:auto;background:var(--paper)}.success>span{font:65px var(--serif);color:var(--gold)}.success h2{font-size:44px;margin:15px 0}.success p{font-size:12px;color:var(--muted);margin:25px 0}.brief-list{border-top:1px solid var(--line)}.brief-row{display:grid;grid-template-columns:180px 1fr;gap:35px;padding:24px 0;border-bottom:1px solid var(--line);font-size:12px}.brief-row p{color:var(--muted)}dialog{background:var(--cream);border:1px solid var(--gold);color:var(--ink);width:600px;max-width:90vw;padding:45px;max-height:85vh}dialog::backdrop{background:#24251dcc;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:28px}dialog h2{font-size:45px;margin:15px 0 25px}dialog p{font-size:12px;color:var(--muted);margin-bottom:25px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:13px 25px;font-size:11px;opacity:0;pointer-events:none;transition:.3s;z-index:50;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}.skip{position:absolute;left:20px;top:-100px;z-index:100;background:var(--paper);padding:15px}.skip:focus{top:10px}main{animation:pageIn .55s ease both}.reveal{animation:pageIn .8s ease both}@keyframes pageIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pictureIn{from{transform:scale(1.05);opacity:.4}to{transform:scale(1);opacity:1}}@keyframes rotate{to{transform:rotate(360deg)}}::view-transition-old(root){animation:fadeOut .18s ease}::view-transition-new(root){animation:pageIn .4s ease}@keyframes fadeOut{to{opacity:0}}
main:focus{outline:none}
@media(min-width:1550px){.hero{min-height:760px}.hero-copy{padding-top:100px}.hero-visual{min-height:650px}.hero h1{font-size:135px}body{max-width:1900px;margin:auto}}
@media(max-width:1100px){header{gap:20px}nav{gap:16px;font-size:10px}.hero-actions{gap:17px}.hero-actions .text-link{font-size:10px}.hero h1{font-size:8vw}.hero h1 em{padding-left:30px}.sun-art{width:110px}.catalog-layout{gap:25px;grid-template-columns:1fr 220px}.section{padding:70px 6%}.booking{gap:30px;grid-template-columns:1fr 280px}.care-banner{gap:5%;padding:55px 6%}.book{width:155px;padding:24px 18px}.hero-copy>p{max-width:270px}}
@media(max-width:800px){.topline{font-size:8px;height:30px}.topline>span:last-child{display:none}header{height:80px;padding:0 5%;gap:15px}.brand{font-size:30px}.brand-sun{font-size:38px}.brand small{font-size:6px}header .button{margin-left:auto;gap:12px;padding:11px 14px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);padding:25px 6%;border-bottom:1px solid var(--line);flex-direction:column;font-size:15px;gap:25px}nav.open{display:flex}.menu{display:block}.hero{margin:0 5%;min-height:0;grid-template-columns:1fr}.hero-copy{padding:40px 0 30px}.hero-copy .eyebrow{margin-bottom:22px}.hero h1{font-size:clamp(66px,13vw,100px);letter-spacing:-2px;white-space:normal}.hero h1 em{padding-left:30px}.hero-copy>p{max-width:340px;margin:22px 0}.hero-foot{padding-top:27px;gap:35px}.hero-visual{height:440px;min-height:0;margin:0 0 20px 0}.hero-visual img{object-position:center 65%}.hero-seal{height:65px;width:65px;font-size:37px;top:20px;right:20px}.sun-art{right:10px;top:45px}.hero-actions{gap:25px}.strip{overflow:hidden;justify-content:space-between;gap:15px;font-size:8px;white-space:nowrap;padding:17px 5%}.strip span:nth-last-child(-n+2){display:none}.section{padding:58px 6%}.section-head{align-items:start;gap:20px;flex-direction:column;margin-bottom:30px}.section-head>p{max-width:370px}.service-teaser{grid-template-columns:30px 1fr 95px 20px;gap:5px;padding:23px 0}.service-teaser h3{font-size:27px}.service-teaser .price{font-size:10px}.care-banner{grid-template-columns:1fr;padding:48px 6%;gap:30px}.care-banner h2{font-size:51px}.care-books{justify-content:start;margin:10px 0 20px 15px}.book{width:150px;min-height:210px}.split{grid-template-columns:1fr;gap:35px}.logo-panel{max-width:400px;width:100%;margin:auto}.about-copy p{max-width:none}.location{grid-template-columns:1fr;gap:30px}.map{height:330px}.cta{padding:45px 6%;align-items:start;flex-direction:column;gap:25px}.cta h2{font-size:44px}.footer-top{flex-wrap:wrap;gap:35px}.footer-brand{width:100%;font-size:50px}.footer-bottom{flex-direction:column;gap:10px}.page-intro{padding:35px 6%}.breadcrumb{margin-bottom:30px}.page-intro h1{font-size:61px}.page-body{padding:0 6% 60px}.catalog-layout{grid-template-columns:1fr}.selection-box{position:static}.service-row{gap:15px;grid-template-columns:1fr auto 32px}.service-row h3{font-size:11px}.service-row .price{font-size:11px}.roles{grid-template-columns:1fr;gap:40px}.role-card{display:grid;grid-template-columns:125px 1fr;gap:22px}.role-art{height:200px;margin:0;grid-row:span 5}.role-art span{font-size:70px}.role-card h3{font-size:29px}.role-card p{margin:0}.role-card .pending{margin:0}.role-card button{justify-self:start}.review-layout{grid-template-columns:1fr;gap:30px}.review-empty{padding:30px}.review-photo img{max-height:400px}.guide-grid{grid-template-columns:1fr}.guide{padding:30px;min-height:340px}.guide h2{font-size:42px}.diagnosis-banner{align-items:start;flex-direction:column}.booking{grid-template-columns:1fr;gap:35px}.booking-summary{position:static}.options{grid-template-columns:1fr}.quiz h2{font-size:38px}.brief-row{grid-template-columns:1fr;gap:10px}.success{padding:30px 20px}.success h2{font-size:38px}.times{grid-template-columns:repeat(4,1fr)}.filters{gap:7px}.chip{font-size:9px;padding:10px 13px}dialog{padding:38px 25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
