:root{--paper:#f4efe5;--paper-2:#e9e0d2;--ink:#241914;--coral:#d83a2e;--blue:#123b52;--yellow:#e1a94b;--muted:#756b60;--line:rgba(36,25,20,.18);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--mono:'Courier New',Courier,monospace;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;opacity:.045;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.section-pad{max-width:var(--max);margin:auto;padding:110px 6vw}.site-header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6vw;position:sticky;top:0;z-index:5;background:rgba(244,239,229,.94);backdrop-filter:blur(10px)}.wordmark{display:flex;align-items:center;gap:9px;font-size:14px;line-height:.9;letter-spacing:.08em;font-weight:700}.wordmark em,.footer-wordmark em{font-style:normal;color:var(--coral)}.wordmark-mark{font-family:var(--serif);font-size:25px;color:var(--coral)}.wordmark-logo{width:34px;height:34px;object-fit:contain;flex:0 0 34px;filter:brightness(0) saturate(100%)}.footer-wordmark .wordmark-logo{filter:brightness(0) invert(1);width:38px;height:38px;flex-basis:38px}.main-nav{display:flex;gap:34px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.main-nav a{position:relative}.main-nav a:after{content:'';position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--coral);transition:width .25s}.main-nav a:hover:after{width:100%}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.header-cta{border-bottom:1px solid var(--coral);padding:7px 0}.header-cta span,.button span{font-size:17px;line-height:0}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:6px}.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1fr 1.03fr;gap:7vw;align-items:center;padding-top:74px;padding-bottom:74px;position:relative}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--coral);margin:0 0 22px}.eyebrow-dot{display:inline-block;width:7px;height:7px;background:var(--coral);border-radius:50%;margin-right:9px}.hero h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:-.045em;line-height:.93;margin:0}.hero h1{font-size:clamp(60px,7.5vw,116px)}.hero h1 em,h2 em{font-weight:600;color:var(--coral);font-style:italic}.hero-lead{font-size:18px;max-width:440px;margin:30px 0;color:#584d44}.brand-slogan{font-family:var(--mono);font-size:10px;line-height:1.5;letter-spacing:.08em;color:var(--coral);margin:25px 0 0;text-transform:uppercase}.brand-slogan em{font-family:var(--serif);font-size:16px;letter-spacing:0;font-style:italic;text-transform:none}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.button{padding:17px 20px;min-height:51px}.button-coral{background:var(--coral);color:#fff;transition:transform .2s,background .2s}.button-coral:hover{transform:translateY(-3px);background:#b92d25}.text-link,.arrow-link{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--ink);padding-bottom:7px}.text-link span,.arrow-link span{font-size:18px;margin-left:8px}.hero-meta{display:flex;gap:25px;border-top:1px solid var(--line);margin-top:50px;padding-top:15px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--muted)}.image-frame{overflow:hidden;background:var(--paper-2);position:relative}.image-frame:after{content:'';position:absolute;inset:10px;border:1px solid rgba(255,255,255,.35);pointer-events:none}.image-frame-hero{aspect-ratio:1.04/1;border-radius:190px 190px 0 0}.hero-image{margin:0;position:relative}.hero-image figcaption,.craft-process figcaption{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;display:flex;justify-content:space-between;margin-top:14px;color:var(--muted)}.hero-image figcaption span{color:var(--coral)}.hero-stamp{position:absolute;right:3.4vw;bottom:8.5vw;width:104px;height:104px;border:1px solid var(--coral);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);color:var(--coral);font-family:var(--mono);text-transform:uppercase;font-size:10px;line-height:1.2}.hero-stamp strong{font-family:var(--serif);font-size:26px;font-weight:400}.ticker{background:var(--coral);color:#fff;overflow:hidden;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.ticker-track{display:flex;align-items:center;gap:24px;min-width:max-content;padding:14px 0;animation:marquee 28s linear infinite}.ticker i{font-style:normal;color:var(--yellow);font-size:16px}@keyframes marquee{to{transform:translateX(-50%)}}.section-kicker{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.section-kicker.light{color:rgba(255,255,255,.58);border-color:rgba(255,255,255,.25)}.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding:94px 8vw 78px 0}.manifesto-title h2,.craft-copy h2,.reviews-header h2{font-size:clamp(56px,6.7vw,96px)}.manifesto-text{max-width:450px;padding-top:20px}.large-copy{font-family:var(--serif);font-size:29px;line-height:1.12;margin:0 0 27px}.manifesto-text>p:not(.large-copy){color:var(--muted)}.arrow-link{display:inline-block;margin-top:22px}.ritual-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ritual-item{padding:20px 24px;display:flex;align-items:center;gap:15px;border-right:1px solid var(--line)}.ritual-item:last-child{border-right:0}.ritual-icon{width:40px;height:40px;object-fit:contain;object-position:center;filter:drop-shadow(0 2px 0 rgba(36,25,20,.12));flex:0 0 40px}.ritual-item strong{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.08em}.ritual-item small{display:block;font-size:12px;color:var(--muted)}.services{background:var(--blue);color:#f8f2e7;max-width:none;padding-left:10vw;padding-right:10vw;position:relative}.services:before{content:'✦';position:absolute;top:77px;right:8vw;color:var(--yellow);font-family:var(--serif);font-size:40px}.services-heading{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:4vw;padding:78px 0 76px}.light-text{color:var(--yellow)}.services-heading h2{font-size:clamp(58px,7vw,100px)}.services-heading>p:last-child{color:rgba(248,242,231,.68);max-width:280px;margin:0 0 8px}.services-list{border-top:1px solid rgba(255,255,255,.28)}.service-row{display:grid;grid-template-columns:90px 1fr 50px;gap:20px;align-items:center;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.28)}.service-number{font-family:var(--mono);font-size:11px;color:var(--yellow)}.service-row h3{font-family:var(--serif);font-weight:600;font-size:clamp(27px,3vw,44px);margin:0;letter-spacing:-.03em}.service-row h3 em{font-weight:400;color:var(--yellow);font-style:italic}.service-row p{color:rgba(248,242,231,.63);font-size:14px;margin:5px 0 0;max-width:500px}.service-row>a{border:1px solid rgba(255,255,255,.45);width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:22px}.service-note{margin-top:27px;font-family:var(--mono);color:rgba(255,255,255,.53);font-size:10px;text-transform:uppercase}.service-note span{color:var(--yellow);margin-right:10px}.craft-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;padding-top:85px}.image-frame-tall{aspect-ratio:1/1.1;border-radius:0 0 170px 170px}.craft-process{margin:0;max-width:470px}.craft-copy{max-width:495px}.craft-copy>p:not(.eyebrow){color:var(--muted);margin-top:30px}.quote-mark{font-family:var(--serif);font-size:80px;line-height:.7;color:var(--coral);margin-top:58px}.craft-copy blockquote{font-family:var(--serif);font-size:25px;line-height:1.15;margin:20px 0 13px}.craft-copy cite{font-family:var(--mono);font-size:10px;color:var(--muted);font-style:normal;text-transform:uppercase}.work-gallery{display:grid;grid-template-columns:1.3fr .7fr;gap:10vw;align-items:end;margin-top:100px}.gallery-card{margin:0}.gallery-card .image-frame{aspect-ratio:1.13/1;border-radius:150px 0 0 0}.gallery-card figcaption{display:flex;justify-content:space-between;margin-top:14px;font-family:var(--mono);font-size:10px;text-transform:uppercase}.gallery-card figcaption strong{font-weight:500;color:var(--coral)}.gallery-aside{padding-bottom:15px;max-width:280px}.gallery-aside>p:not(.eyebrow){font-family:var(--serif);font-size:23px;line-height:1.15}.reviews{background:var(--paper-2);max-width:none;padding-left:10vw;padding-right:10vw}.reviews-header{display:flex;justify-content:space-between;align-items:end;padding:78px 0 70px}.rating{display:flex;align-items:center;gap:16px;border-left:1px solid var(--line);padding-left:26px}.rating strong{font-family:var(--serif);font-size:56px}.rating span{color:var(--coral);font-size:15px;letter-spacing:.1em}.rating small{display:block;color:var(--muted);font-family:var(--mono);font-size:10px;letter-spacing:.05em;margin-top:4px}.review-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:16px}.review-card{min-height:260px;border-top:2px solid var(--ink);padding:24px 0}.review-card-feature{background:var(--coral);color:#fff;border:0;padding:24px 30px;min-height:340px}.review-card .quote-mark{margin:0;color:var(--yellow);font-size:70px}.review-card p{font-family:var(--serif);font-size:20px;line-height:1.17;margin:16px 0 30px}.review-card-feature p{font-size:24px;margin-top:14px}.review-card strong{display:block;font-family:var(--mono);font-size:10px;text-transform:uppercase}.review-source,.mini-stars{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.review-source{display:block;color:rgba(255,255,255,.65);margin-top:7px}.mini-stars{color:var(--coral)}.visit{max-width:none;padding-left:10vw;padding-right:10vw;padding-bottom:76px}.visit-panel{background:var(--blue);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;min-height:510px;padding:67px 7vw;position:relative;overflow:hidden}.visit-panel:after{content:'✦';position:absolute;font-family:var(--serif);font-size:360px;line-height:1;color:rgba(225,169,75,.1);right:4vw;bottom:-100px}.visit-copy,.visit-details{position:relative;z-index:1}.visit-copy h2{font-size:clamp(58px,7vw,100px)}.visit-copy>p:not(.eyebrow){color:rgba(255,255,255,.7);margin:27px 0 30px}.button-yellow{background:var(--yellow);color:var(--ink)}.visit-details{align-self:end;display:grid;gap:27px}.visit-details div{border-top:1px solid rgba(255,255,255,.25);padding-top:11px}.visit-details span{font-family:var(--mono);font-size:9px;color:var(--yellow);letter-spacing:.1em;display:block;margin-bottom:8px}.visit-details strong,.visit-details a{font-size:16px;font-weight:500}.visit-details a{display:block;width:max-content;border-bottom:1px solid var(--coral);margin:4px 0}.booking-bar{display:flex;justify-content:space-between;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.booking-bar span{display:block;color:var(--muted);font-size:13px}.booking-bar strong{font-family:var(--serif);font-size:25px}.booking-actions{display:flex;gap:10px}.booking-actions a{font-family:var(--mono);font-size:10px;text-transform:uppercase;border:1px solid var(--line);padding:13px 15px}.site-footer{background:var(--coral);color:#fff;min-height:200px;padding:38px 6vw;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;align-items:end}.site-footer p{font-family:var(--serif);font-size:22px;line-height:1.05;margin:0}.footer-location,.footer-copy{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.footer-copy{text-align:right}.footer-legal{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 24px;border-top:1px solid rgba(255,255,255,.35);padding-top:16px;margin-top:34px;font-family:var(--mono);font-size:9px;line-height:1.5;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.82)}.footer-legal-label{color:var(--yellow)}.footer-legal strong{font-weight:500;color:#fff}.footer-legal a{color:#fff;border-bottom:1px solid var(--yellow)}.reveal{opacity:1;transform:none;transition:opacity .75s ease,transform .75s ease}.reveal.is-visible{opacity:1;transform:none}.reveal-delay{transition-delay:.13s}.reveal-delay-2{transition-delay:.25s}@media(max-width:900px){.site-header{padding:0 5vw}.main-nav{gap:18px}.hero{gap:5vw}.hero-stamp{display:none}.section-pad{padding:90px 5vw}.services,.reviews,.visit{padding-left:5vw;padding-right:5vw}.services-heading{grid-template-columns:1fr 1fr;gap:30px}.services-heading>p:last-child{grid-column:2}.visit-panel{padding:55px 6vw}.site-footer{padding-left:5vw;padding-right:5vw}}@media(max-width:680px){.site-header{height:72px}.header-cta{display:none}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 5vw;flex-direction:column;gap:19px}.main-nav.open{display:flex}.menu-toggle{display:block}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:auto;padding-top:65px;padding-bottom:68px;gap:45px}.hero h1{font-size:clamp(57px,16vw,86px)}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:19px}.hero-meta{justify-content:space-between;gap:6px;font-size:8px;margin-top:38px}.image-frame-hero{border-radius:120px 120px 0 0}.manifesto-grid,.craft-grid{grid-template-columns:1fr;gap:50px;padding-right:0}.manifesto-grid{padding-top:63px;padding-bottom:60px}.manifesto-title h2,.craft-copy h2,.reviews-header h2{font-size:clamp(55px,15vw,78px)}.large-copy{font-size:26px}.ritual-strip{grid-template-columns:1fr}.ritual-item{border-right:0;border-bottom:1px solid var(--line);padding:17px 0}.ritual-item:last-child{border-bottom:0}.services{padding-top:72px;padding-bottom:78px}.services-heading{display:block;padding:61px 0 55px}.services-heading>p:last-child{margin-top:25px}.service-row{grid-template-columns:37px 1fr 38px;gap:12px;padding:24px 0}.service-row h3{font-size:25px;line-height:1.05}.service-row p{font-size:13px;margin-top:8px}.service-row>a{width:34px;height:34px;font-size:18px}.work-gallery{grid-template-columns:1fr;gap:45px;margin-top:67px}.gallery-aside{max-width:none}.gallery-card .image-frame{border-radius:100px 0 0 0}.reviews{padding-top:75px;padding-bottom:75px}.reviews-header{display:block;padding:63px 0 48px}.rating{margin-top:30px;padding-left:0;border-left:0}.review-grid{display:block}.review-card{min-height:auto;margin-bottom:30px;padding:22px 0}.review-card-feature{padding:22px 24px}.visit{padding-top:0}.visit-panel{display:block;padding:55px 8vw;min-height:auto}.visit-details{margin-top:66px}.booking-bar{display:block;padding:25px 0}.booking-actions{margin-top:20px}.site-footer{grid-template-columns:1fr 1fr;gap:38px;align-items:start;min-height:300px}.footer-legal{display:grid;grid-template-columns:1fr;gap:8px}.section-kicker{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none}.reveal{opacity:1;transform:none;transition:none}}
.privacy-page{max-width:900px}.privacy-intro{max-width:650px;padding:76px 0 45px}.privacy-intro h1{font-family:var(--serif);font-size:clamp(52px,7vw,92px);line-height:.94;letter-spacing:-.045em;margin:0}.privacy-intro h1 em{color:var(--coral);font-style:italic}.privacy-meta{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-top:25px}.privacy-content{border-top:1px solid var(--line);padding:40px 0 100px}.privacy-content section{max-width:720px;margin:0 0 42px}.privacy-content h2{font-family:var(--serif);font-size:30px;letter-spacing:-.03em;margin:0 0 12px}.privacy-content p,.privacy-content li{color:#584d44;font-size:16px}.privacy-content ul{padding-left:20px}.privacy-back{margin-top:30px}@media(max-width:680px){.privacy-intro{padding-top:55px}.privacy-content{padding-top:28px}.privacy-content h2{font-size:26px}}
