/* Editorial identity and motion, progressively enhanced. */
:root{--paper:#f4f0e7;--light:#faf7f0;--ink:#101f2b;--gold:#97764c;--muted:#626768;--line:#d5cec0;--ease:cubic-bezier(.22,1,.36,1)}
body{background:var(--paper);overflow-x:clip}::selection{background:#c9ad78;color:#10202c}header{position:absolute;top:0;width:100%;height:104px;color:var(--paper);background:transparent;padding:0 5.5vw;backdrop-filter:none;z-index:40;border-bottom:1px solid #ffffff1a}header.scrolled{position:fixed;height:76px;background:#101f2bf2;color:var(--paper);backdrop-filter:blur(18px);box-shadow:0 1px #ffffff18}header .brand small{color:#c2bba9}header .monogram{border-color:#ffffff35}nav{gap:30px}nav a{position:relative}nav a:not(.nav-contact):after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:1px;background:#c8ad7e;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}nav a:hover:after{transform:scaleX(1)}.nav-contact{border-color:#c4b89d;padding:11px 20px}.section{padding:110px 7vw}h2{font-size:clamp(46px,4.7vw,76px);line-height:1.03;letter-spacing:-2px}.eyebrow,.section-meta{letter-spacing:2.3px;font-size:9px}.section-meta{margin-bottom:58px}.section-title{margin-bottom:60px}.section-title>p{font-size:13px;max-width:300px}.gold{background:#c9ae7d;border-color:#c9ae7d;color:#13212a}.gold:hover{background:#e6d2ac;border-color:#e6d2ac}.button{padding:17px 25px;position:relative;overflow:hidden;transition:background .3s,transform .45s var(--ease)}.button>span{transition:transform .4s var(--ease)}.button:hover>span{transform:translate(4px,-4px)}.button:active{transform:scale(.98)}
.hero{display:block;min-height:0;padding:165px 6vw 0;background:#101f2b;color:var(--paper);position:relative;isolation:isolate;overflow:hidden}.hero-grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent calc(50% - .5px),#ffffff08 50%,transparent calc(50% + .5px)),linear-gradient(90deg,transparent 13%,#ffffff06 13.1%,transparent 13.2%,transparent 86.8%,#ffffff06 86.9%,transparent 87%)}.hero-arch{position:absolute;left:50%;top:230px;transform:translateX(-50%);width:720px;height:900px;border:1px solid #c9ae7d26;border-radius:400px 400px 0 0;z-index:-1}.hero-arch:before,.hero-arch:after{content:'';position:absolute;inset:22px;border:1px solid #c9ae7d15;border-radius:inherit}.hero-arch:after{inset:44px}.hero-heading{text-align:center;position:relative;z-index:3}.hero-heading .eyebrow{display:block;color:#c9ae7d;font-size:9px;letter-spacing:3px}.hero h1{font-size:clamp(60px,7.9vw,124px);line-height:.96;letter-spacing:-4px;margin:27px 0 20px;font-weight:400}.hero-line{display:block}.hero h1 em{color:#c8b38d}.hero-subtitle{font-size:12px;color:#bfc3c3;letter-spacing:.2px}.hero-heading .button{margin-top:26px}.hero-stage{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:5vw;align-items:center;margin-top:62px;position:relative}.portrait-panel{position:relative;height:510px;overflow:hidden;border-radius:240px 240px 0 0;background:#aba58f;box-shadow:0 0 0 1px #c9ae7d66,0 0 0 12px #c9ae7d08;transform-origin:50% 100%;will-change:transform}.portrait-panel>img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;filter:saturate(.65);transform:scale(1.015);transition:filter .7s}.portrait-panel:hover>img{filter:saturate(1)}.portrait-panel:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0c1723ed)}.portrait-caption{position:absolute;bottom:24px;left:0;right:0;text-align:center;z-index:1;letter-spacing:2px;font-size:13px}.portrait-caption small{display:block;margin-top:4px;font-size:7px;letter-spacing:4px;color:#c9b18a}.hero-aside{padding-top:60px;max-width:240px}.hero-aside.right{text-align:right;margin-left:auto}.hero-aside .eyebrow{display:block;color:#ad9270;font-size:8px;letter-spacing:2px}.hero-aside p{font-family:var(--serif);font-size:27px;line-height:1.25;margin:20px 0;color:#eee9dc}.fine{font-size:10px;line-height:1.9;color:#aab2b4}.hero-bottom{display:flex;justify-content:space-between;align-items:center;padding:28px 0 30px;border-top:1px solid #ffffff18;margin-top:22px;position:relative;min-height:90px}.hero-bottom>span{font-size:8px;letter-spacing:2px;color:#aab2b4}.scroll-seal{position:absolute;top:-52px;left:50%;transform:translateX(-50%);width:106px;height:106px;background:var(--paper);color:var(--ink);border-radius:50%;border:7px solid #101f2b;display:grid;place-items:center;z-index:6}.scroll-seal svg{position:absolute;inset:0;width:100%;height:100%;animation:seal-turn 26s linear infinite}.scroll-seal text{fill:#23313a;font-size:8px;letter-spacing:1.8px;font-family:var(--sans)}.scroll-seal b{font-family:var(--serif);font-size:32px;font-weight:400}.motion-toggle{font-size:9px;border:0;background:none;color:#c7c9c5;display:flex;gap:10px;align-items:center;padding:8px 0}.motion-toggle span{font-size:14px}.credential-strip{background:#e8e0d1;padding:25px 7vw;font-size:8px;letter-spacing:2px}.intro{background:#faf7f0;padding-top:115px;padding-bottom:115px}.intro-grid{grid-template-columns:1fr;gap:40px;text-align:center;max-width:970px;margin:auto}.intro-grid h2{font-size:clamp(46px,5.6vw,85px);line-height:1.04}.intro-grid>div{max-width:655px;margin:auto}.intro-grid>div>p:first-child{font-size:28px}.intro-grid .muted{font-size:12px}.intro-grid .text-link{margin-top:30px}.about{background:#e9e2d6;position:relative}.about-heading h2{max-width:850px}.about-grid{grid-template-columns:.8fr 1.2fr;gap:12vw}.about-note{position:relative;padding:40px;border:1px solid #bfb3a0;align-self:start;background:#e1d6c2;min-height:360px}.about-note:before{content:'';position:absolute;inset:12px;border:1px solid #c8b99f;pointer-events:none}.big-year{font-size:100px;color:#735c3b}.about-note p{font-size:25px}.profile dd{font-size:12px}.profile>div{padding:20px 0}.approach{background:#faf7f0}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.principles article{border-top:1px solid #bcae95;padding-top:25px}.principles article>span{font-family:var(--serif);font-size:24px;color:var(--gold)}.principles h3{font-size:34px;line-height:1.1;margin:32px 0 20px}.principles p{font-size:12px;color:var(--muted);max-width:300px}.practice{background:#101f2b;color:var(--paper)}.practice .section-meta{color:#aab3b7}.practice h2 em{color:#c9b18a}.practice .section-title>p{color:#aab3b7}.practice-grid{display:block;border:0}.practice-grid article{display:grid;grid-template-columns:55px 1fr 1fr 140px;gap:35px;align-items:center;padding:35px 0;border:0;border-top:1px solid #ffffff26;transition:padding .5s var(--ease),background .5s}.practice-grid article:last-child{border-bottom:1px solid #ffffff26}.practice-grid article:hover{background:#ffffff05;padding-left:18px;padding-right:18px}.practice-grid .card-number{font-size:21px;color:#bda477}.practice-grid .card-arrow{display:none}.practice-grid h3{font-size:36px;min-height:0;margin:0;line-height:1.05}.practice-grid h3 br{display:none}.practice-grid p{margin:0;min-height:0;color:#b2b9bc;font-size:11px;max-width:345px}.practice-grid a{margin:0;padding:0;border:0;font-size:9px;gap:14px}.practice-grid a span{font-size:22px;color:#c9ae7d;transition:transform .4s}.practice-grid article:hover a span{transform:translate(5px,-5px)}.forums{background:#1c303c;color:var(--paper);padding-top:95px;padding-bottom:85px}.forums>p:not(.eyebrow),.forum-list small{color:#b5bfc0}.forums .eyebrow{color:#c9ae7d}.forums h2 em{color:#c9ae7d}.forums:before,.forums:after{border-color:#c9ae7d33;width:110px;height:75%;top:13%;transform:none;border-radius:100px 100px 0 0}.forum-list{border-color:#ffffff29;gap:70px}.philosophy{background:#e6dece;color:var(--ink);position:relative;overflow:hidden}.philosophy .section-meta{color:#6b6b61}.philosophy .quote-mark{color:var(--gold)}.philosophy blockquote{font-size:clamp(45px,5.8vw,88px);line-height:1.08;margin:5px 0 55px}.philosophy blockquote em{color:#866a42}.philosophy-bottom{border-color:#bdb4a1}.philosophy-bottom p{color:#5b635f}.philosophy-bottom .eyebrow{color:#735e3d}.process{display:grid;grid-template-columns:1fr 1fr;gap:12vw;background:#faf7f0}.process-intro{position:sticky;top:130px;align-self:start}.process-intro h2{margin:25px 0}.process-intro>p:not(.eyebrow){max-width:300px;font-size:12px;color:var(--muted)}.process-intro .text-link{margin-top:30px}.process-steps article{border-top:1px solid var(--line);padding:35px 0 45px;display:flex;gap:30px}.process-steps article>span{color:var(--gold);font-size:16px;font-family:var(--serif)}.process-steps h3{font-size:33px;margin-bottom:18px}.process-steps p{font-size:12px;color:var(--muted)}.record{background:#ded4c2;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.record h2{margin-top:25px}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.record-grid article{padding-top:22px;border-top:1px solid #b9ac94}.record-value{font:500 60px/1 var(--serif);color:#755c38}.record-grid h3{font-size:23px;margin-top:20px}.record-grid p{font-size:11px;color:#59605d;margin-top:14px}.record-note .eyebrow{font-size:8px;letter-spacing:1px}.associations{background:#faf7f0}.association-art{background:var(--ink);border:0;aspect-ratio:1;border-radius:50% 50% 0 0}.association-art:before{inset:18px;border-radius:inherit;border-color:#bca5736b}.art-au{color:#c9ae7d;font-size:120px}.art-caption{color:#c9ae7d;font-size:8px}.gallery{background:#faf7f0;padding-bottom:120px}.gallery-grid{grid-template-columns:1fr 1.2fr;grid-template-rows:290px 350px;gap:28px}.gallery-item{overflow:hidden}.gallery-item img{transition:transform 1.1s var(--ease),filter .8s;filter:saturate(.72)}.gallery-item:hover img{transform:scale(1.055);filter:saturate(1)}.gallery-item>span{padding:35px 25px 20px}.insights{background:#e9e2d6}.insight-grid article{position:relative;padding-top:25px;transition:transform .5s var(--ease)}.insight-grid article:after{content:'↗';position:absolute;right:0;top:20px;color:var(--gold);font-size:24px}.insight-grid article:hover{transform:translateY(-7px)}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;background:#faf7f0}.faq h2{margin:25px 0}.faq>div>p:not(.eyebrow){font-size:12px;color:var(--muted)}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:26px 40px 26px 0;list-style:none;font-size:14px;position:relative;line-height:1.5}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;top:20px;font-family:var(--serif);font-size:26px;font-weight:400;color:var(--gold);transition:transform .3s}details[open] summary:after{transform:rotate(45deg)}details>p{font-size:12px;color:var(--muted);padding:0 30px 25px 0;animation:faq-enter .4s var(--ease)}summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.consultation-banner{padding:100px 24px;text-align:center;background:#101f2b;color:var(--paper);position:relative;overflow:hidden}.consultation-banner:before,.consultation-banner:after{content:'';position:absolute;border:1px solid #c9ae7d26;border-radius:50%;width:440px;height:440px;left:-270px;top:10%;pointer-events:none}.consultation-banner:after{left:auto;right:-270px}.consultation-banner>.eyebrow{color:#c9ae7d}.consultation-banner h2{font-size:clamp(50px,6.6vw,98px);margin:28px 0 35px}.consultation-banner em{color:#c9b18a}.contact{background:#f4f0e7}.contact h2{font-size:clamp(50px,5.6vw,84px)}input,textarea{padding:17px 0}label{font-size:11px}.contact-details dt{color:#6b6c61}.disclaimer{background:#eee8db;padding-top:45px;padding-bottom:45px}.footer-display{font:400 clamp(65px,10.9vw,170px)/1 var(--serif);letter-spacing:-5px;padding-bottom:65px;border-bottom:1px solid #ffffff25;margin-bottom:50px;white-space:nowrap}.footer-display em{color:#b8a584}footer{padding-top:65px;padding-bottom:25px;background:#101820}.footer-top{padding-bottom:35px}.footer-bottom{color:#abb1b3}.reveal{transform:translateY(40px);transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:var(--delay,0ms)}.reveal.visible{opacity:1;transform:none}.reveal-mask{clip-path:inset(10% 0 10% 0);transition:clip-path 1.2s var(--ease),opacity 1s;opacity:.45}.reveal-mask.visible{clip-path:inset(0);opacity:1}.scroll-progress{position:fixed;top:0;left:0;height:2px;background:#cfb480;width:100%;transform:scaleX(0);transform-origin:left;z-index:80}.hero-heading>*{animation:hero-in 1s var(--ease) both}.hero-heading .eyebrow{animation-delay:.05s}.hero-heading h1{animation-delay:.17s}.hero-heading .hero-subtitle{animation-delay:.3s}.hero-heading .button{animation-delay:.4s}.hero-stage{animation:hero-in 1.4s var(--ease) both .45s}.hero-arch{animation:arch-in 1.8s var(--ease) both}.word-reveal span{color:#aca797;transition:color .22s}.word-reveal span.lit{color:var(--ink)}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .reveal{opacity:1;transform:none}.motion-paused .reveal-mask{opacity:1;clip-path:none}.motion-paused .word-reveal span{color:var(--ink)}
@keyframes hero-in{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}@keyframes arch-in{from{opacity:0;transform:translate(-50%,50px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes seal-turn{to{transform:rotate(360deg)}}@keyframes faq-enter{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(min-width:1800px){header{max-width:1800px}.hero h1{font-size:124px}.portrait-panel{height:610px}}
@media(max-width:1100px){nav{gap:18px}.hero{padding-top:155px}.hero-stage{gap:3vw;grid-template-columns:1fr 1.3fr 1fr}.portrait-panel{height:440px}.hero-aside p{font-size:23px}.hero-aside .fine{font-size:9px}.practice-grid article{grid-template-columns:35px 1fr 1fr;gap:25px}.practice-grid a{grid-column:2/-1;justify-content:start;gap:20px;margin-top:-8px}.practice-grid h3{font-size:34px}.principles{gap:30px}.process{gap:7vw}.record{gap:5vw}.record-value{font-size:50px}}
@media(max-width:900px){header{height:82px;padding:0 24px}.menu span{background:var(--paper)}nav{background:#101f2b;box-shadow:0 20px 30px #0002}nav.open{animation:faq-enter .4s}.hero{padding-top:135px}.hero-stage{grid-template-columns:1fr 1.7fr 1fr;gap:24px}.hero-aside p{font-size:20px}.hero-aside .eyebrow{font-size:7px;letter-spacing:1px}.portrait-panel{height:390px}.section{padding:80px 5vw}.hero h1{font-size:75px;letter-spacing:-3px}.principles h3{font-size:29px}.process-steps h3{font-size:28px}.record{grid-template-columns:1fr}.record h2 br{display:none}.association-art{display:flex}.associations{grid-template-columns:1.5fr .8fr;gap:8vw}.art-au{font-size:85px}.art-caption{font-size:6px;letter-spacing:1px}.footer-display{padding-bottom:40px;margin-bottom:40px}.faq{gap:5vw}}
@media(max-width:760px){header{position:absolute;height:82px}.hero{padding:125px 24px 0}.hero-heading .eyebrow{font-size:7px;letter-spacing:2px}.hero h1{font-size:clamp(48px,9.7vw,72px);line-height:1;letter-spacing:-1.9px;margin:25px -7px 20px}.hero-subtitle{max-width:270px;margin:auto;font-size:11px}.hero-heading .button{margin-top:25px}.hero-stage{grid-template-columns:1fr;margin-top:45px;gap:0}.portrait-panel{grid-row:1;height:430px;width:82%;max-width:365px;margin:auto;border-radius:220px 220px 0 0}.hero-aside{padding:30px 0 0;max-width:100%;text-align:center;display:none}.hero-aside.right{display:block;margin:0;padding:30px 10px 0}.hero-aside.right .eyebrow{display:none}.hero-aside.right p{font-size:23px;margin:0 0 12px}.hero-aside.right p br{display:none}.hero-aside.right .fine{font-size:9px}.hero-arch{width:115%;height:650px;top:380px}.hero-bottom{margin-top:55px;padding-top:28px;min-height:95px}.hero-bottom>span{font-size:6px;letter-spacing:1px;max-width:100px}.motion-toggle{font-size:8px}.scroll-seal{width:88px;height:88px;top:-45px;border-width:6px}.credential-strip{font-size:7px;letter-spacing:1px;padding:23px 20px;gap:12px}.section{padding:70px 24px}.section-meta{margin-bottom:30px}.section-title{margin-bottom:35px;gap:23px}h2,.section-title h2,.about-heading h2,.association-copy h2{font-size:43px;letter-spacing:-1.4px}.intro-grid h2{font-size:47px}.intro-grid>div>p:first-child{font-size:25px}.about-grid{grid-template-columns:1fr;gap:35px}.about-note{display:block;min-height:0;padding:28px}.about-note .big-year{font-size:80px}.about-note p,.about-note .signature{display:none}.principles{grid-template-columns:1fr;gap:30px}.principles h3{margin:18px 0 13px;font-size:32px}.principles p{max-width:none}.principles article{padding-top:18px}.practice-grid article{grid-template-columns:30px 1fr;gap:10px 18px;padding:28px 0}.practice-grid article:hover{padding-left:0;padding-right:0}.practice-grid h3{font-size:33px}.practice-grid p{grid-column:2;max-width:none;margin-top:8px}.practice-grid a{grid-column:2;margin-top:10px}.forums h2{font-size:43px}.forum-list{gap:23px}.philosophy blockquote{font-size:44px;line-height:1.12}.philosophy blockquote br{display:none}.process{grid-template-columns:1fr;gap:40px}.process-intro{position:static}.process-intro h2{font-size:55px}.process-steps article{padding:25px 0 30px;gap:20px}.process-steps h3{font-size:29px}.record-grid{gap:30px 22px}.record-value{font-size:48px}.record-grid h3{font-size:24px}.record-grid p{font-size:11px}.record-note{grid-column:1/-1}.associations{grid-template-columns:1fr;gap:35px}.association-art{width:220px;justify-self:center}.gallery{padding-top:20px}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto;gap:18px}.gallery-item,.gallery-item.tall,.gallery-item:nth-child(3){grid-column:auto;grid-row:auto;height:400px}.gallery-item:nth-child(2){grid-column:auto;height:255px}.gallery-item.tall img{object-position:50% 35%}.insight-grid{gap:30px}.faq{grid-template-columns:1fr;gap:30px}.faq h2{font-size:52px}.faq summary{font-size:13px;padding:23px 35px 23px 0}.consultation-banner{padding:80px 24px}.consultation-banner h2{font-size:52px;line-height:1.02}.contact{gap:40px}.contact h2{font-size:55px}.disclaimer{padding-top:35px;padding-bottom:35px}.footer-display{font-size:15vw;line-height:1;letter-spacing:-2px;white-space:normal}.footer-display em{display:block}footer{padding:45px 24px 25px}.footer-top{gap:20px}.form-row{gap:20px}.reveal{transform:translateY(25px)}}
@media(max-width:390px){.portrait-panel{height:360px;width:90%}.hero h1{font-size:47px}.hero-bottom>span{max-width:75px}.motion-toggle{max-width:75px;gap:5px}.form-row{grid-template-columns:1fr;gap:0}.hero-heading .button{font-size:10px}.intro-grid h2{font-size:43px}.record-grid{column-gap:18px}.philosophy blockquote{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal,.reveal-mask{opacity:1!important;transform:none!important;clip-path:none!important}.word-reveal span{color:var(--ink)}.portrait-panel{transform:none!important}}
