:root{--ink:#191917;--paper:#f5f2ec;--gold:#c4a776;--muted:#bcb9b0;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--script:'Mrs Saint Delafield',cursive}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.7}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}img{display:block;max-width:100%;object-fit:cover}p{margin:0 0 1.4rem}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.02;margin:0}h1{font-size:clamp(64px,6.9vw,112px)}h2{font-size:clamp(48px,5.2vw,80px)}em{font-weight:400;color:var(--gold)}header{height:114px;margin:0 5%;border-bottom:1px solid #ffffff1b;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0}.brand>span{font-family:var(--script);font-size:42px;line-height:1.1;color:var(--gold)}.brand small{font-size:10px;letter-spacing:.27em;color:#e0d2b9}nav{display:flex;gap:35px;font-size:14px;color:#e0ddd5}nav a:hover,.text-link:hover{color:var(--gold)}.header-cta{font-size:14px;border-bottom:1px solid var(--gold);padding:12px 0}.header-cta span{margin-left:22px}.hero{position:relative;min-height:790px;padding:80px 7% 96px;display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:500;margin-bottom:26px}.hero .eyebrow{font-size:11px;display:flex;align-items:center;gap:15px;color:#d4c7ae}.line{width:32px;height:1px;background:var(--gold)}.intro{max-width:410px;color:var(--muted);margin:30px 0;line-height:1.85}.button{display:inline-flex;gap:36px;align-items:center;justify-content:center;min-height:57px;padding:16px 25px;font-size:14px;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-3px)}.gold{background:var(--gold);color:#191917}.gold:hover{background:#ddc49b}.outline{border:1px solid #a99270;color:var(--ink)}.outline:hover{background:#e8dfd1}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid #938471;padding-bottom:7px}.hero-copy>.text-link{display:block;width:fit-content;margin-top:24px;color:var(--muted);border:none}.hero-copy>.text-link span{margin-left:25px}.hero-art{position:relative;padding:0 35px 40px 0;align-self:center}.photo-window{height:540px;border-radius:50% 50% 2px 2px;overflow:hidden;background:#37332d;clip-path:inset(0);animation:aperture 1.6s cubic-bezier(.2,.7,.2,1) both}.hero-photo{width:100%;height:100%;object-position:52% 45%;transform:scale(1.08);will-change:transform}.photo-caption{position:absolute;bottom:2px;left:-30px;right:0}.photo-caption>span{font-family:var(--script);font-size:61px;line-height:1.1;text-shadow:0 2px 10px #0008}.photo-caption small{display:block;letter-spacing:.19em;font-size:10px;margin-left:38px;color:var(--muted)}.vertical-note{position:absolute;right:-12px;top:33%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.23em;color:var(--gold)}.hero-bottom{position:absolute;bottom:25px;left:7%;right:7%;display:flex;justify-content:space-between;color:#a7a397;font-size:10px;letter-spacing:.15em}.hero-bottom b{font-size:20px;margin-left:15px;font-weight:400}.manifesto{background:var(--paper);color:var(--ink);padding:112px 20px;text-align:center}.manifesto .eyebrow{color:#76664e}.manifesto h2{font-size:clamp(43px,4.5vw,69px)}.manifesto em,.transformation em,.about em,.faq em{color:#8d6c3d}.manifesto>p:last-child{max-width:495px;color:#6b675e;margin:28px auto 0}.portfolio{padding:105px 7% 80px}.section-top{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:50px}.section-top>p{color:var(--muted);font-size:14px;max-width:350px}.gallery{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:28px;align-items:start}.gallery-item{padding:0;border:0;position:relative;display:block;background:transparent;color:white;text-align:left;cursor:zoom-in;overflow:hidden}.gallery-item img{width:100%;height:405px;transition:transform .8s cubic-bezier(.2,.7,.2,1);filter:brightness(.92)}.gallery-item.tall img{height:505px}.gallery-item.offset{margin-top:75px}.gallery-item:hover img{transform:scale(1.045);filter:brightness(1)}.gallery-item>span{padding:55px 23px 23px;background:linear-gradient(transparent,#000b);position:absolute;bottom:0;left:0;right:0}.gallery-item small{font-size:10px;letter-spacing:.2em;display:block;margin-bottom:7px}.gallery-item b{font-family:var(--serif);font-size:28px;font-weight:400}.gallery-item i{position:absolute;bottom:23px;right:20px;font-style:normal}.portfolio-foot{margin-top:35px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:var(--muted);font-size:12px}.detail-section{display:grid;grid-template-columns:1.1fr 1fr;background:#23231f;overflow:hidden}.detail-image{min-height:700px;position:relative;overflow:hidden}.detail-image>img{height:100%;width:100%;position:absolute;object-position:center;transform:scale(1.03);will-change:transform}.detail-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0005,transparent 50%);pointer-events:none}.detail-ring{border:1px solid #ffffff75;border-radius:50%;width:160px;height:160px;position:absolute;left:48%;top:38%;box-shadow:0 0 0 12px #fff1;pointer-events:none}.detail-note{position:absolute;bottom:35px;left:40px;font-family:var(--script);font-size:48px;z-index:1}.detail-copy{padding:90px 15%}.detail-copy h2{margin-bottom:30px}.detail-copy p:not(.eyebrow){color:var(--muted);font-size:15px}.detail-copy .eyebrow{font-size:10px}.detail-copy .text-link{margin-top:15px}.transformation{background:var(--paper);color:var(--ink);padding:110px 10%}.transformation .section-top>p{color:#726e65}.transformation figure{margin:0;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;background:#e9e4da}.transformation figure img{width:100%;height:auto}.transformation figcaption{padding:40px;text-align:center}.transformation figcaption span{font-size:11px;letter-spacing:.25em;color:#756241}.transformation figcaption p{font-family:var(--serif);font-size:48px;line-height:1.05;margin:25px 0}.transformation figcaption small{font-size:12px;color:#716b61}.about{background:var(--paper);color:var(--ink);padding:20px 9% 115px;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.portrait{position:relative}.portrait img{width:100%;border-radius:48% 48% 0 0}.signature{font-family:var(--script);font-size:68px;display:block;text-align:center;color:#896b43;margin-top:5px}.about h2{font-size:clamp(45px,4.8vw,72px);margin-bottom:27px}.about p:not(.eyebrow){color:#69645c;font-size:15px}.about .eyebrow{font-size:10px}.about .button{margin-top:15px}.ritual{padding:115px 7%;display:grid;grid-template-columns:1fr 1.25fr;gap:8%;align-items:center}.ritual h2{font-size:clamp(45px,4.5vw,65px);margin-bottom:30px}.ritual p:not(.eyebrow){max-width:380px;color:var(--muted)}.ritual .text-link{margin-top:20px}.ritual-photos{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.ritual-photos img{width:100%;height:350px}.ritual-photos img+img{height:280px;margin-top:100px}.faq{padding:95px 9%;background:#eae5db;color:var(--ink);display:grid;grid-template-columns:1fr 1.35fr;gap:9%}.faq h2{font-size:55px}.questions details{border-bottom:1px solid #bdb5a6}.questions summary{cursor:pointer;display:flex;justify-content:space-between;gap:24px;list-style:none;padding:23px 0;font-size:15px}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:22px;line-height:1}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{font-size:14px;color:#655e51;max-width:520px}.contact{padding:100px 9% 65px;text-align:center}.contact h2{font-size:clamp(65px,7vw,106px);margin-bottom:28px}.contact>p:not(.eyebrow){color:var(--muted)}.contact>.button{margin:12px 0 70px}.contact-grid{border-top:1px solid #ffffff25;padding-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:30px;text-align:left}.contact-grid small{font-size:10px;letter-spacing:.2em;color:var(--gold)}.contact-grid p{margin:14px 0;font-size:14px;color:var(--muted)}.contact-grid>div+div{text-align:right}.contact-grid>div+div>a{display:block;font-size:16px;margin:12px 0}.contact-grid .text-link{font-size:13px}footer{border-top:1px solid #ffffff20;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .brand>span{font-size:32px}footer .brand small{font-size:8px}footer p,footer>span{font-size:11px;color:var(--muted);margin:0}footer strong{font-weight:500;color:var(--gold)}.mobile-book{display:none}.skip{position:fixed;top:-100px;left:20px;padding:15px;background:white;color:black;z-index:100}.skip:focus{top:10px}dialog{border:1px solid #b99d71;background:var(--ink);color:white;padding:18px;max-width:90vw;max-height:94dvh;overflow:auto}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}dialog>img{height:70dvh;max-height:750px;width:auto;max-width:80vw;object-fit:contain;margin:auto}dialog .button{margin-top:14px;width:100%;font-size:13px}dialog .close{position:absolute;right:20px;top:20px;background:var(--ink);border:1px solid #ffffff70;color:white;width:43px;height:43px;border-radius:50%;font-size:29px;cursor:pointer;z-index:2}.reveal{animation:rise .9s both}@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes aperture{from{clip-path:inset(45% 0 45% 0);filter:blur(4px)}to{clip-path:inset(0);filter:blur(0)}}
@media(min-width:1550px){main,header,footer{max-width:1800px;margin-left:auto;margin-right:auto}.hero{min-height:890px}.photo-window{height:650px}}
@media(max-width:1000px){header{height:100px}.header-cta{font-size:12px}nav{gap:20px;font-size:12px}.hero{padding:60px 6% 80px;gap:4%;min-height:710px}.hero h1{font-size:76px}.photo-window{height:465px}.hero-art{padding-right:20px}.photo-caption>span{font-size:48px}.hero .eyebrow{font-size:9px;letter-spacing:.13em}.hero .line{display:none}.gallery{gap:16px}.gallery-item img{height:330px}.gallery-item.tall img{height:420px}.gallery-item b{font-size:23px}.detail-copy{padding:70px 10%}.detail-image{min-height:630px}.portfolio,.ritual{padding-left:6%;padding-right:6%}.faq{gap:5%;padding-left:6%;padding-right:6%}.faq h2{font-size:47px}}
@media(max-width:700px){html{scroll-padding-top:20px}header{height:90px;margin:0 6%;gap:12px}header .brand>span{font-size:34px}header .brand small{font-size:8px}nav{display:none}.header-cta{font-size:11px;padding:8px 0}.header-cta span{margin-left:6px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:45px 7% 72px;gap:44px}.hero h1{font-size:clamp(61px,14vw,94px)}.hero .eyebrow{font-size:9px;margin-bottom:23px;letter-spacing:.12em}.intro{font-size:15px;margin:25px 0;max-width:360px}.hero-art{margin-left:11%;padding-right:18px;padding-bottom:30px}.photo-window{height:395px}.photo-caption{left:-25px;bottom:0}.photo-caption>span{font-size:50px}.photo-caption small{font-size:8px;margin-left:16px}.vertical-note{right:-12px;font-size:8px}.hero-bottom{bottom:22px;font-size:8px}.hero-bottom>span:first-child{max-width:160px}.hero-bottom b{font-size:15px}.manifesto{padding:75px 7%}.manifesto h2{font-size:43px}.manifesto>p:last-child{font-size:14px;max-width:330px}.eyebrow{font-size:10px}.portfolio{padding:75px 7% 55px}.section-top{display:block;margin-bottom:32px}.section-top>p{margin-top:23px;font-size:14px}h2{font-size:51px}.gallery{grid-template-columns:1fr 1fr;gap:15px}.gallery-item.tall{grid-column:1/-1}.gallery-item.tall img{height:440px;object-position:center 35%}.gallery-item img{height:270px}.gallery-item.offset{margin-top:0}.gallery-item>span{padding:45px 13px 14px}.gallery-item small{font-size:8px;letter-spacing:.1em}.gallery-item b{font-size:23px;line-height:1.1;display:block;padding-right:12px}.gallery-item i{right:8px;bottom:10px}.portfolio-foot{display:block;font-size:11px}.portfolio-foot .text-link{margin-top:20px}.detail-section{display:flex;flex-direction:column}.detail-image{height:475px;min-height:0}.detail-copy{padding:60px 8%}.detail-copy h2 br:last-of-type{display:none}.detail-copy h2{font-size:62px}.detail-note{font-size:43px;left:24px}.transformation{padding:70px 7%}.transformation figure{display:block}.transformation figcaption{padding:28px 23px}.transformation figcaption p{font-size:37px;margin:14px 0}.about{padding:0 7% 70px;display:flex;flex-direction:column;gap:42px}.portrait{width:100%;max-width:420px}.signature{font-size:59px}.about h2{font-size:57px}.ritual{padding:70px 7%;display:block}.ritual h2{font-size:49px}.ritual-photos{margin-top:40px;gap:12px}.ritual-photos img{height:290px}.ritual-photos img+img{height:230px;margin-top:50px}.faq{padding:65px 7%;display:block}.questions{margin-top:32px}.questions summary{font-size:14px}.contact{padding:75px 7% 50px}.contact h2{font-size:65px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-grid>div+div{text-align:left}.contact>.button{margin-bottom:45px}footer{padding:30px 7% 98px;flex-direction:column;gap:17px}.mobile-book{display:flex;position:fixed;bottom:15px;left:6%;right:6%;padding:14px 20px;background:var(--gold);color:var(--ink);z-index:10;justify-content:space-between;font-size:14px;box-shadow:0 5px 25px #0004;transition:transform .3s}.mobile-book.hidden{transform:translateY(100px)}dialog{padding:12px}dialog>img{height:auto;max-height:70dvh;max-width:82vw}dialog .button{font-size:12px;gap:12px;padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo,.detail-image>img{transform:none!important}}
