
:root{
  --paper:#f3f0e8;
  --paper-deep:#e7e1d6;
  --paper-soft:#ebe6dc;
  --ink:#111613;
  --green:#0b251d;
  --green-2:#13362b;
  --green-3:#1c4638;
  --sand:#c7b58d;
  --sand-soft:#d9cdb4;
  --muted:#5d655f;
  --line:rgba(17,22,19,.12);
  --line-soft:rgba(17,22,19,.075);
  --white-line:rgba(255,255,255,.14);
  --shell:1280px;
  --ease:cubic-bezier(.22,.72,.18,1);
  --ease-soft:cubic-bezier(.33,1,.68,1);
  --section-pad:clamp(112px,13vw,200px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1}
::selection{background:var(--green);color:#fff}
a{color:inherit;text-decoration:none}
button{font:inherit}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:470;letter-spacing:-.058em;text-wrap:balance}
em{font-family:Iowan Old Style,Palatino Linotype,Georgia,"Times New Roman",serif;font-weight:400;font-style:italic;letter-spacing:-.035em}
.shell{width:min(calc(100% - 80px),var(--shell));margin-inline:auto}
.skip-link{position:fixed;left:16px;top:-70px;background:#fff;padding:11px 15px;z-index:200;border-radius:4px;box-shadow:0 4px 20px rgba(0,0,0,.08)}.skip-link:focus{top:16px}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:120;pointer-events:none}.scroll-progress span{display:block;height:100%;width:0;background:var(--sand);transform-origin:left center}
.eyebrow{font-size:.66rem;line-height:1;letter-spacing:.155em;text-transform:uppercase;color:rgba(17,22,19,.48);font-weight:660}.eyebrow.light{color:rgba(255,255,255,.47)}

.site-header{height:78px;position:absolute;top:0;left:0;right:0;z-index:100;color:var(--ink);transition:background .38s ease,border-color .38s ease,box-shadow .38s ease,transform .4s var(--ease)}
.site-header.scrolled{position:fixed;background:rgba(243,240,232,.86);backdrop-filter:blur(22px) saturate(120%);-webkit-backdrop-filter:blur(22px) saturate(120%);border-bottom:1px solid rgba(17,22,19,.085);box-shadow:0 8px 30px rgba(17,22,19,.018)}
.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;flex-direction:column;gap:4px;line-height:1}.brand-word{font-size:1.06rem;font-weight:630;letter-spacing:-.038em}.brand-caption{font-size:.51rem;text-transform:uppercase;letter-spacing:.205em;color:rgba(17,22,19,.45)}
.site-nav{display:flex;align-items:center;gap:30px;font-size:.74rem;color:rgba(17,22,19,.66)}.site-nav a{position:relative;transition:color .2s ease,opacity .2s ease}.site-nav>a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.site-nav>a:hover,.site-nav>a.active{color:var(--ink)}.site-nav>a:hover::after,.site-nav>a.active::after{transform:scaleX(1)}
.nav-contact{border:1px solid rgba(17,22,19,.21);border-radius:999px;padding:10px 15px;color:var(--ink);transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s var(--ease)!important}.nav-contact:hover{background:var(--green);color:#fff;border-color:var(--green);transform:translateY(-1px)}
.menu-toggle{display:none;width:40px;height:40px;border:0;background:none;padding:9px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:6px 0;transition:transform .3s var(--ease),opacity .2s ease}.menu-toggle.open span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle.open span:last-child{transform:translateY(-3.5px) rotate(-45deg)}

.hero{position:relative;min-height:100svh;overflow:hidden;background:var(--paper);border-bottom:1px solid var(--line-soft)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(to bottom,transparent,rgba(231,225,214,.13));pointer-events:none}
.hero-aura{position:absolute;width:min(76vw,1100px);height:min(76vw,1100px);right:-26vw;top:-30vw;border-radius:50%;background:radial-gradient(circle at 42% 48%,rgba(199,181,141,.31),rgba(199,181,141,.105) 30%,rgba(243,240,232,0) 69%);filter:blur(1px);pointer-events:none}
.hero-shell{min-height:calc(100svh - 58px);padding-top:144px;padding-bottom:84px;display:grid;grid-template-columns:1.03fr .97fr;gap:48px;align-items:center}
.hero-copy{position:relative;z-index:2;max-width:800px}.hero h1{font-size:clamp(4rem,7.35vw,8.05rem);line-height:.855;max-width:9.7ch;margin-top:22px}.hero h1 em{color:var(--green);font-size:.97em}.hero-intro{margin-top:38px;max-width:590px;font-size:clamp(1.04rem,1.25vw,1.22rem);line-height:1.61;letter-spacing:-.022em;color:#58615a}.hero-actions{display:flex;align-items:center;gap:31px;margin-top:38px}
.button{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 20px;border-radius:999px;font-size:.77rem;font-weight:650;letter-spacing:-.01em;transition:transform .28s var(--ease),background .28s ease,box-shadow .28s ease}.button span{font-size:.88em;transition:transform .28s var(--ease)}.button:hover{transform:translateY(-2px)}.button:hover span{transform:translate(2px,-2px)}.primary{background:var(--green);color:#fff;box-shadow:0 8px 28px rgba(11,37,29,.08)}.primary:hover{background:var(--green-2);box-shadow:0 12px 36px rgba(11,37,29,.13)}
.text-link{font-size:.78rem;color:#58615a}.text-link span{display:inline-block;margin-left:7px;transition:transform .28s var(--ease)}.text-link:hover span{transform:translateY(4px)}
.hero-system{position:relative;width:min(47vw,660px);aspect-ratio:1;justify-self:end;will-change:transform}.hero-system::before{content:"";position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(199,181,141,.105),transparent 66%);filter:blur(24px)}.hero-system svg{width:100%;height:100%;overflow:visible;position:relative}.rings circle{fill:none;stroke:rgba(11,37,29,.095);stroke-width:1}.system-lines path{fill:none;stroke:rgba(11,37,29,.19);stroke-width:1.25;stroke-dasharray:5 9;animation:dash 22s linear infinite}.system-lines path:nth-child(2){animation-duration:26s}.system-lines path:nth-child(3){animation-duration:20s}.system-lines path:nth-child(4){animation-duration:29s}.system-lines path:nth-child(5){animation-duration:24s}.system-points circle{fill:var(--sand)}.system-core{fill:var(--green);transform-origin:center;animation:coreBreath 5.4s ease-in-out infinite}.system-core-halo{fill:none;stroke:rgba(11,37,29,.14);stroke-width:1;transform-origin:center;animation:haloBreath 5.4s ease-in-out infinite}.system-label{position:absolute;font-size:.57rem;letter-spacing:.085em;text-transform:uppercase;color:rgba(17,22,19,.48);background:rgba(243,240,232,.67);backdrop-filter:blur(4px);padding:4px 6px;border-radius:3px;white-space:nowrap}.system-label.l1{left:8%;top:31%}.system-label.l2{right:6%;top:22%}.system-label.l3{right:1%;bottom:28%}.system-label.l4{left:7%;bottom:13%}.system-label.l5{left:1%;top:55%}.system-label.center{left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;background:var(--green);padding:8px 11px;border-radius:999px;letter-spacing:.105em;box-shadow:0 6px 20px rgba(11,37,29,.10)}
.hero-meta{height:58px;border-top:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;font-size:.59rem;letter-spacing:.105em;text-transform:uppercase;color:rgba(17,22,19,.39);position:relative;z-index:2}
@keyframes dash{to{stroke-dashoffset:-220}}@keyframes coreBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.14)}}@keyframes haloBreath{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.09);opacity:.42}}

.complexity{padding:var(--section-pad) 0;background:var(--paper-deep);position:relative;overflow:hidden}.complexity::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.16),transparent 34%);pointer-events:none}.complexity-shell{display:grid;grid-template-columns:.84fr 1.16fr;gap:clamp(60px,7vw,100px);align-items:center;position:relative}.complexity-copy h2{font-size:clamp(3.4rem,5.65vw,6.05rem);line-height:.925;margin-top:28px;max-width:9.7ch}.complexity-copy>p:last-child{margin-top:32px;max-width:500px;font-size:1.04rem;line-height:1.64;color:var(--muted);letter-spacing:-.018em}
.complexity-visual{height:548px;position:relative;overflow:hidden;border-left:1px solid rgba(17,22,19,.115)}.thread{position:absolute;height:1px;background:linear-gradient(90deg,rgba(17,22,19,.07),rgba(17,22,19,.25));transform-origin:right center;transition:opacity .5s ease}.thread::after{content:"";position:absolute;right:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:rgba(17,22,19,.22)}.thread span{position:absolute;left:0;top:-24px;font-size:.58rem;text-transform:uppercase;letter-spacing:.095em;color:rgba(17,22,19,.42)}.t1{width:68%;left:4%;top:17%;transform:rotate(8deg)}.t2{width:74%;left:10%;top:31%;transform:rotate(-11deg)}.t3{width:60%;left:2%;top:48%;transform:rotate(15deg)}.t4{width:72%;left:13%;top:61%;transform:rotate(-5deg)}.t5{width:63%;left:5%;top:74%;transform:rotate(10deg)}.t6{width:55%;left:18%;top:87%;transform:rotate(-15deg)}.clarity-line{position:absolute;right:18%;top:10%;bottom:9%;width:1px;background:linear-gradient(to bottom,transparent 0,var(--green) 20%,var(--green) 80%,transparent 100%)}.clarity-dot{position:absolute;right:calc(18% - 6px);top:49%;width:13px;height:13px;border-radius:50%;background:var(--green);box-shadow:0 0 0 17px rgba(11,37,29,.06),0 0 0 35px rgba(11,37,29,.025)}.clarity-label{position:absolute;right:8%;top:54%;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-style:italic;font-size:1.08rem;color:var(--green);letter-spacing:-.03em}

.recognition{padding:var(--section-pad) 0;background:var(--paper)}.recognition-shell>h2{font-size:clamp(3.8rem,6.85vw,7.35rem);line-height:.875;max-width:12ch;margin-top:24px}.recognition-shell>h2 em{color:#978d7c}.recognition-flow{margin-top:clamp(74px,8vw,110px);border-top:1px solid var(--line)}.recognition-flow article{position:relative;display:grid;grid-template-columns:68px .86fr 1fr;gap:42px;align-items:baseline;padding:34px 18px 35px 0;border-bottom:1px solid var(--line);transition:padding-left .35s var(--ease),background .35s ease}.recognition-flow article::before{content:"";position:absolute;left:-22px;right:-22px;top:0;bottom:0;background:rgba(17,22,19,.022);opacity:0;transition:opacity .3s ease}.recognition-flow article:hover{padding-left:14px}.recognition-flow article:hover::before{opacity:1}.recognition-flow article>*{position:relative;z-index:1}.recognition-flow article>span{font-size:.62rem;color:rgba(17,22,19,.34)}.recognition-flow h3{font-size:clamp(1.6rem,2.48vw,2.55rem);line-height:1.04}.recognition-flow p{max-width:510px;color:var(--muted);font-size:.94rem;line-height:1.58}

.role{background:var(--paper)}.role-stage{background:var(--green);color:#fff;padding:var(--section-pad) 0;overflow:hidden;position:relative}.role-stage::before{content:"";position:absolute;width:70vw;height:70vw;right:-35vw;top:-35vw;border-radius:50%;border:1px solid rgba(255,255,255,.055);box-shadow:0 0 0 90px rgba(255,255,255,.018),0 0 0 180px rgba(255,255,255,.012)}.role-shell{display:grid;grid-template-columns:.94fr 1.06fr;gap:clamp(55px,6.5vw,90px);align-items:center;position:relative}.role-copy h2{font-size:clamp(3.9rem,6.65vw,7rem);line-height:.875;margin-top:25px;max-width:10ch}.role-copy h2 em{color:var(--sand)}.role-copy>p:last-child{margin-top:36px;max-width:520px;color:rgba(255,255,255,.59);font-size:1.03rem;line-height:1.64}.role-orbit{position:relative;min-height:590px;transform:translateZ(0)}.role-orbit svg{position:absolute;inset:0;width:100%;height:100%}.orbit-path{fill:none;stroke:rgba(255,255,255,.145);stroke-width:1.1;stroke-dasharray:4 7;animation:dash 30s linear infinite}.orbit-path:nth-child(even){animation-direction:reverse;animation-duration:34s}.orbit-node{fill:var(--sand)}.orbit-core{fill:#f2efe7;filter:drop-shadow(0 10px 34px rgba(0,0,0,.12))}.orbit-halo{fill:none;stroke:rgba(255,255,255,.14);stroke-width:1;animation:haloBreath 6s ease-in-out infinite}.orbit-label{position:absolute;font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.49)}.o1{left:7%;top:49%}.o2{left:22%;top:17%}.o3{right:18%;top:14%}.o4{right:4%;top:46%}.o5{right:17%;bottom:13%}.o6{left:21%;bottom:12%}.orbit-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--green);font-size:.62rem;font-weight:700;letter-spacing:.055em}
.principles{padding:0 0 var(--section-pad)}.principles article{display:grid;grid-template-columns:68px .76fr 1fr;gap:42px;align-items:baseline;padding:35px 0;border-bottom:1px solid var(--line);transition:transform .35s var(--ease)}.principles article:first-child{border-top:1px solid var(--line);margin-top:78px}.principles article:hover{transform:translateX(8px)}.principles span{font-size:.62rem;color:rgba(17,22,19,.34)}.principles h3{font-size:clamp(1.75rem,2.8vw,2.9rem)}.principles p{max-width:550px;color:var(--muted);line-height:1.58;font-size:.96rem}

.independence{background:#ded8cc;padding:var(--section-pad) 0;overflow:hidden;position:relative}.independence-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.independence-word{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-style:italic;font-size:clamp(12rem,25vw,27rem);line-height:.65;letter-spacing:-.095em;color:rgba(11,37,29,.048);transform:translateX(-5%);user-select:none}.independence-copy h2{font-size:clamp(3.6rem,5.9vw,6.35rem);line-height:.915;margin-top:26px;max-width:9.5ch}.independence-copy h2 em{color:var(--green)}.independence-copy>p:last-child{margin-top:39px;max-width:575px;color:var(--muted);font-size:1.04rem;line-height:1.65}

.process{padding:var(--section-pad) 0;background:var(--paper)}.process-head h2{font-size:clamp(3.8rem,6.8vw,7.15rem);line-height:.875;max-width:12ch;margin-top:24px}.process-head h2 em{color:var(--green)}.process-scroll{margin-top:clamp(76px,8vw,105px);display:grid;grid-template-columns:1fr .72fr;gap:clamp(55px,7vw,100px);align-items:start}.process-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:60px 1fr;gap:25px;padding:31px 0 35px;border-bottom:1px solid var(--line);opacity:.31;transform:translateX(0);transition:opacity .42s ease,transform .42s var(--ease)}.process-list li.active{opacity:1;transform:translateX(7px)}.process-list li>span{font-size:.61rem;color:rgba(17,22,19,.38);padding-top:8px}.process-list strong{display:block;font-size:clamp(1.62rem,2.5vw,2.62rem);font-weight:500;letter-spacing:-.045em}.process-list p{margin-top:11px;max-width:520px;color:var(--muted);line-height:1.58;font-size:.95rem}.process-visual{position:sticky;top:145px;height:480px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;padding-left:68px}.process-number{font-size:clamp(8rem,14vw,13.4rem);line-height:.72;letter-spacing:-.085em;color:var(--green);font-weight:260;transition:opacity .22s ease,transform .4s var(--ease)}.process-number.changing{opacity:0;transform:translateY(12px)}.process-track{height:1px;background:rgba(17,22,19,.11);margin-top:68px;position:relative}.process-track span{position:absolute;left:0;top:0;height:1px;width:25%;background:var(--green);transition:width .48s var(--ease)}.process-caption{margin-top:15px;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-style:italic;color:#887e6f;transition:opacity .3s ease}

.profile{padding:var(--section-pad) 0;background:var(--paper-soft)}.profile-shell{display:grid;grid-template-columns:.84fr 1.16fr;gap:clamp(65px,8vw,112px);align-items:center}.portrait-frame{aspect-ratio:4/5;position:relative;background:linear-gradient(145deg,#d9d6cf,#cbc8c0);overflow:hidden;border:1px solid rgba(17,22,19,.075);box-shadow:0 25px 70px rgba(17,22,19,.055)}.portrait-light{position:absolute;width:96%;aspect-ratio:1;top:-14%;left:-18%;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(255,255,255,.94),rgba(255,255,255,.16) 45%,transparent 69%)}.portrait-frame::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(11,37,29,.10),transparent 37%);z-index:2}.portrait-frame::after{content:"";position:absolute;width:58%;height:68%;left:21%;bottom:-9%;border-radius:50% 50% 22% 22%/38% 38% 15% 15%;background:rgba(11,37,29,.085)}.portrait-mark{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(5rem,9vw,9rem);font-style:italic;color:rgba(11,37,29,.16);z-index:3}.portrait-frame>span{position:absolute;left:22px;bottom:20px;z-index:4;font-size:.58rem;letter-spacing:.13em;text-transform:uppercase;color:rgba(17,22,19,.45)}.profile-copy h2{font-size:clamp(3.45rem,5.95vw,6.25rem);line-height:.915;margin-top:25px;max-width:10ch}.profile-copy h2 em{color:#8e8475}.profile-lead{margin-top:37px;max-width:625px;font-size:1.16rem;line-height:1.58;letter-spacing:-.022em}.profile-copy>p:not(.eyebrow):not(.profile-lead){margin-top:20px;max-width:625px;color:var(--muted);line-height:1.63;font-size:.96rem}.credentials{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:38px;padding-top:22px;border-top:1px solid var(--line)}.credentials span{font-size:.68rem;color:rgba(17,22,19,.50);letter-spacing:.01em}

.contact{position:relative;background:#071711;color:#fff;padding:var(--section-pad) 0;overflow:hidden}.contact::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 85%,rgba(199,181,141,.15),transparent 31%)}.contact-glow{position:absolute;width:820px;height:820px;border-radius:50%;right:-300px;bottom:-540px;border:1px solid rgba(199,181,141,.15);box-shadow:0 0 0 80px rgba(199,181,141,.028),0 0 0 160px rgba(199,181,141,.017)}.contact-shell{position:relative;z-index:2}.contact h2{font-size:clamp(4rem,7.55vw,7.95rem);line-height:.865;max-width:11ch;margin-top:25px}.contact h2 em{color:var(--sand)}.contact-shell>p:not(.eyebrow){margin-top:39px;max-width:620px;color:rgba(255,255,255,.58);font-size:1.04rem;line-height:1.64}.contact-actions{display:flex;align-items:center;gap:31px;margin-top:39px}.light-button{background:#f2eee5;color:var(--green)}.light-button:hover{background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.08)}.phone-link{font-size:.82rem;color:rgba(255,255,255,.72);border-bottom:1px solid rgba(255,255,255,.26);padding-bottom:3px;transition:color .2s ease,border-color .2s ease}.phone-link:hover{color:#fff;border-color:#fff}
.site-footer{background:#071711;color:rgba(255,255,255,.58);border-top:1px solid rgba(255,255,255,.105);padding:38px 0 43px}.footer-shell{display:grid;grid-template-columns:1fr auto auto;gap:45px;align-items:end}.site-footer .brand-caption{color:rgba(255,255,255,.34)}.footer-meta{display:flex;flex-direction:column;gap:4px;font-size:.61rem}.site-footer nav{display:flex;gap:20px;font-size:.65rem}.site-footer a{transition:color .2s ease}.site-footer a:hover{color:#fff}

.reveal-ready [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal-ready [data-reveal].in-view{opacity:1;transform:none}
.hero-copy[data-reveal]{transition-delay:.08s}.hero-system[data-reveal]{transition-duration:1.1s}

@media(max-width:1040px){.shell{width:min(calc(100% - 48px),var(--shell))}.hero-shell,.complexity-shell,.role-shell,.independence-shell,.profile-shell{grid-template-columns:1fr;gap:64px}.hero-shell{padding-top:148px}.hero-copy{max-width:920px}.hero h1{max-width:10.5ch}.hero-system{width:min(76vw,620px);justify-self:center}.complexity-copy h2,.role-copy h2,.profile-copy h2,.independence-copy h2{max-width:12ch}.complexity-visual{height:430px}.role-orbit{min-height:510px}.independence-word{display:none}.process-scroll{grid-template-columns:1fr .55fr;gap:55px}.profile-shell{align-items:start}.portrait-frame{max-width:500px}.recognition-flow article,.principles article{grid-template-columns:55px .9fr 1fr}}
@media(max-width:760px){.shell{width:calc(100% - 34px)}.site-header{height:68px}.menu-toggle{display:block}.site-nav{display:flex;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;position:absolute;left:0;right:0;top:68px;padding:23px 17px 29px;background:rgba(243,240,232,.975);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:19px;font-size:.9rem;transition:opacity .25s ease,transform .3s var(--ease),visibility .25s}.site-nav.is-open{visibility:visible;opacity:1;transform:none;pointer-events:auto}.site-nav>a:not(.nav-contact)::after{display:none}.nav-contact{border:0;padding:0}.hero-shell{min-height:auto;padding-top:122px;padding-bottom:48px}.hero h1{font-size:clamp(3.75rem,18vw,6.25rem);line-height:.84;max-width:9.7ch}.hero-intro{margin-top:29px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-system{width:108%;margin-left:-4%;opacity:.88}.system-label{font-size:.49rem}.hero-meta{height:auto;padding:13px 0;gap:4px;align-items:flex-start;flex-direction:column}.complexity,.recognition,.role-stage,.independence,.process,.profile,.contact{padding:110px 0}.complexity-shell{gap:48px}.complexity-visual{height:330px}.clarity-line{right:12%}.clarity-dot{right:calc(12% - 6px)}.clarity-label{right:1%;font-size:.88rem}.recognition-flow{margin-top:66px}.recognition-flow article,.principles article{grid-template-columns:34px 1fr;gap:18px 18px;padding:27px 0}.recognition-flow article:hover{padding-left:0}.recognition-flow article::before{display:none}.recognition-flow p,.principles p{grid-column:2}.role-orbit{min-height:375px;margin-top:8px}.orbit-label{font-size:.47rem}.principles{padding-bottom:110px}.principles article:first-child{margin-top:52px}.principles article:hover{transform:none}.process-scroll{grid-template-columns:1fr;margin-top:66px}.process-visual{display:none}.process-list li{opacity:1;transform:none}.profile-shell{gap:56px}.contact-actions{flex-direction:column;align-items:flex-start;gap:22px}.footer-shell{grid-template-columns:1fr;gap:25px;align-items:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}[data-reveal]{opacity:1!important;transform:none!important}}

/* Quiet legal pages */
.legal-page{min-height:100svh;background:var(--paper);padding:120px 0 90px}.legal-shell{width:min(calc(100% - 48px),760px);margin:0 auto}.legal-brand{display:inline-flex;flex-direction:column;gap:4px;margin-bottom:92px}.legal-page h1{font-size:clamp(3.5rem,8vw,6.5rem);line-height:.9;color:var(--ink);margin-top:22px}.legal-copy{margin-top:42px;padding-top:28px;border-top:1px solid var(--line);color:var(--muted);font-size:1rem;line-height:1.7}.legal-back{display:inline-block;margin-top:40px;font-size:.78rem;color:var(--green);border-bottom:1px solid rgba(11,37,29,.22);padding-bottom:3px}


/* v5 — Focus instrument: fragmentation becomes coherence */
.complexity{overflow:clip}
.complexity-shell{grid-template-columns:.82fr 1.18fr;gap:clamp(58px,6.5vw,104px)}
.complexity-copy{align-self:center}
.complexity-visual.focus-map{
  height:auto;
  min-height:560px;
  position:relative;
  overflow:visible;
  border-left:0;
  isolation:isolate;
  padding:34px 0 10px;
}
.focus-map::before{
  content:"";
  position:absolute;
  width:72%;
  aspect-ratio:1;
  right:-10%;
  top:50%;
  transform:translateY(-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(199,181,141,.17) 0,rgba(199,181,141,.07) 29%,rgba(199,181,141,0) 68%);
  pointer-events:none;
  z-index:-1;
}
.focus-kicker{
  position:absolute;
  top:4px;
  left:7%;
  display:flex;
  align-items:center;
  gap:9px;
  font-size:.56rem;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:rgba(17,22,19,.34);
  white-space:nowrap;
}
.focus-kicker span{width:22px;height:1px;background:rgba(17,22,19,.18)}
.focus-kicker i{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-weight:400;text-transform:none;letter-spacing:-.02em;font-size:.7rem;color:rgba(11,37,29,.58)}
.focus-svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 14px 34px rgba(17,22,19,.025))}
.loose-state{opacity:.72;transition:opacity 1.1s var(--ease)}
.loose-state path{fill:none;stroke:rgba(17,22,19,.135);stroke-width:1;stroke-dasharray:1 7;stroke-linecap:round}
.loose-state circle{fill:rgba(17,22,19,.16)}
.focus-connections{opacity:0;transition:opacity .9s var(--ease) .28s}
.focus-path{fill:none;stroke:url(#focusStroke);stroke-width:1.15;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:640;stroke-dashoffset:640;transition:stroke-width .38s var(--ease),opacity .38s ease,filter .38s ease}
.source-dots circle{fill:rgba(17,22,19,.18);transition:fill .38s ease,r .38s var(--ease)}
.focus-lens{opacity:.22;transform-origin:580px 264px;transition:opacity 1s ease,transform 1.15s var(--ease)}
.lens-field{fill:url(#lensFill);stroke:rgba(17,22,19,.055);stroke-width:1}
.lens-ring{fill:none;stroke:rgba(11,37,29,.19);stroke-width:1}
.lens-ring.inner{stroke-dasharray:2 6;stroke:rgba(11,37,29,.15)}
.lens-ticks path{fill:none;stroke:rgba(11,37,29,.14);stroke-width:2.2;stroke-linecap:round;transition:stroke .35s ease,stroke-width .35s var(--ease)}
.lens-core-halo{fill:rgba(11,37,29,.055);transition:r .5s var(--ease),fill .5s ease}
.lens-core{fill:var(--green);transform-origin:580px 264px;transition:transform .5s var(--ease)}
.focus-map.in-view .loose-state{opacity:.025;transition-delay:.72s}
.focus-map.in-view .focus-connections{opacity:1}
.focus-map.in-view .focus-path{animation:focusDraw 1.25s var(--ease) forwards}
.focus-map.in-view .fp1{animation-delay:.12s}.focus-map.in-view .fp2{animation-delay:.19s}.focus-map.in-view .fp3{animation-delay:.26s}.focus-map.in-view .fp4{animation-delay:.33s}.focus-map.in-view .fp5{animation-delay:.40s}.focus-map.in-view .fp6{animation-delay:.47s}
.focus-map.in-view .focus-lens{opacity:1;transform:scale(1)}
@keyframes focusDraw{to{stroke-dashoffset:0}}

.focus-source{
  position:absolute;
  z-index:3;
  border:0;
  background:transparent;
  padding:8px 10px 8px 25px;
  margin:0;
  color:rgba(17,22,19,.42);
  font-size:.61rem;
  line-height:1;
  letter-spacing:.105em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
  transition:color .3s ease,transform .35s var(--ease);
  transform:translateX(0);
}
.focus-source::before{
  content:"";
  position:absolute;
  left:8px;
  top:50%;
  width:5px;
  height:5px;
  border-radius:50%;
  transform:translateY(-50%);
  background:rgba(17,22,19,.22);
  box-shadow:0 0 0 0 rgba(11,37,29,0);
  transition:background .35s ease,box-shadow .45s var(--ease),transform .35s var(--ease);
}
.focus-source:hover,.focus-source:focus-visible,.focus-source.is-active{color:var(--green);transform:translateX(4px)}
.focus-source:hover::before,.focus-source:focus-visible::before,.focus-source.is-active::before{background:var(--green);box-shadow:0 0 0 7px rgba(11,37,29,.06);transform:translateY(-50%) scale(1.08)}
.focus-source:focus-visible{outline:1px solid rgba(11,37,29,.35);outline-offset:3px;border-radius:4px}
.focus-source.s1{left:10%;top:11%}.focus-source.s2{left:6%;top:28%}.focus-source.s3{left:14%;top:43%}.focus-source.s4{left:9%;top:60%}.focus-source.s5{left:18%;top:74%}.focus-source.s6{left:12%;top:85%}

.focus-center{
  position:absolute;
  z-index:3;
  left:80.55%;
  top:49.6%;
  width:154px;
  transform:translate(-50%,-50%);
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  pointer-events:none;
}
.focus-center-overline{font-size:.48rem;text-transform:uppercase;letter-spacing:.15em;color:rgba(17,22,19,.38);margin-bottom:8px}
.focus-center strong{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.12rem;font-weight:400;font-style:italic;letter-spacing:-.036em;color:var(--green);transition:opacity .18s ease,transform .32s var(--ease)}
.focus-center small{margin-top:6px;max-width:128px;font-size:.52rem;line-height:1.35;letter-spacing:.02em;color:rgba(17,22,19,.39);transition:opacity .18s ease,transform .32s var(--ease)}
.focus-center.is-changing strong,.focus-center.is-changing small{opacity:0;transform:translateY(4px)}
.focus-hint{position:absolute;left:8%;bottom:0;display:flex;align-items:center;gap:8px;font-size:.56rem;letter-spacing:.035em;color:rgba(17,22,19,.34)}
.focus-hint i{font-style:normal;font-size:.7rem;transition:transform .3s var(--ease)}
.focus-map:hover .focus-hint i{transform:translate(2px,-2px)}
.touch-hint{display:none}
.focus-map.has-active .focus-path{opacity:.14}
.focus-map.has-active .focus-path.is-active{opacity:1;stroke-width:1.8;filter:drop-shadow(0 2px 3px rgba(11,37,29,.08))}
.focus-map.has-active .source-dots circle{fill:rgba(17,22,19,.13)}
.focus-map.has-active .source-dots circle.is-active{fill:var(--green);r:5}
.focus-map.has-active .lens-ticks path{stroke:rgba(11,37,29,.09)}
.focus-map.has-active .lens-ticks path.is-active{stroke:var(--sand);stroke-width:3}
.focus-map.has-active .lens-core-halo{r:22;fill:rgba(11,37,29,.065)}
.focus-map.has-active .lens-core{transform:scale(1.08)}

@media(max-width:1040px){
  .complexity-shell{grid-template-columns:1fr;gap:64px}
  .complexity-visual.focus-map{min-height:0;width:min(100%,760px);justify-self:center;padding-top:36px;margin-inline:auto}
  .focus-map::before{right:-7%}
}
@media(max-width:760px){
  .complexity-shell{gap:56px}
  .complexity-visual.focus-map{height:auto;min-height:0;width:109%;margin-left:-4.5%;padding:28px 0 32px}
  .focus-kicker{left:8%;top:0;font-size:.49rem}
  .focus-source{font-size:.49rem;padding-left:19px;padding-right:4px;letter-spacing:.075em}
  .focus-source::before{left:6px;width:4px;height:4px}
  .focus-center{left:80.55%;width:105px}
  .focus-center-overline{font-size:.39rem;margin-bottom:5px}
  .focus-center strong{font-size:.88rem}
  .focus-center small{font-size:.42rem;max-width:94px}
  .focus-hint{left:8%;bottom:2px;font-size:.49rem}
  .desktop-hint{display:none}.touch-hint{display:inline}
  .focus-map::before{width:75%;right:-13%}
}
@media(max-width:430px){
  .complexity-visual.focus-map{width:116%;margin-left:-8%;padding-bottom:36px}
  .focus-source.s5{left:16%}.focus-source.s6{left:10%}
  .focus-center{left:80%;width:92px}
  .focus-center small{display:none}
}
@media(prefers-reduced-motion:reduce){
  .focus-map .loose-state{opacity:.075!important}
  .focus-map .focus-connections,.focus-map .focus-lens{opacity:1!important}
  .focus-path{stroke-dashoffset:0!important}
}

/* v5.1 optical refinement */
.focus-source::before{display:none}
.focus-source{padding-left:8px}
.focus-source:hover,.focus-source:focus-visible,.focus-source.is-active{transform:translateX(3px)}
.focus-center-overline{font-size:.52rem}
.focus-center strong{font-size:1.28rem}
.focus-center small{font-size:.57rem;max-width:140px;line-height:1.4}
@media(max-width:760px){.focus-source{padding-left:4px}.focus-center-overline{font-size:.41rem}.focus-center strong{font-size:.94rem}.focus-center small{font-size:.44rem}}

/* v6 — a coherent visual language across hero, orchestration and profile */

/* HERO — one sculptural whole, assembled from multiple perspectives */
.hero-shell{grid-template-columns:1.04fr .96fr;gap:clamp(42px,5vw,76px)}
.hero-whole{position:relative;width:min(48vw,690px);aspect-ratio:1.05;justify-self:end;isolation:isolate;will-change:transform}
.hero-whole::before{content:"";position:absolute;width:72%;aspect-ratio:1;left:16%;top:14%;border-radius:50%;background:radial-gradient(circle,rgba(199,181,141,.16),rgba(199,181,141,.035) 46%,transparent 70%);filter:blur(14px);z-index:-1}
.whole-svg{width:100%;height:100%;overflow:visible}
.whole-shadow{fill:rgba(17,22,19,.055);filter:blur(13px)}
.whole-field{fill:url(#wholeField);stroke:rgba(11,37,29,.045);stroke-width:1}
.whole-layer{fill:none;stroke:url(#wholeStroke);stroke-width:1.15;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center;transition:opacity .55s ease,stroke-width .55s var(--ease),filter .55s ease}
.whole-layers .layer-a{opacity:.66}.whole-layers .layer-b{opacity:.5}.whole-layers .layer-c{opacity:.43}.whole-layers .layer-d{opacity:.34}.whole-layers .layer-e{opacity:.28}
.whole-halo{fill:rgba(243,240,232,.56);stroke:rgba(11,37,29,.13);stroke-width:1;filter:drop-shadow(0 16px 32px rgba(17,22,19,.035))}
.whole-core{fill:var(--green);filter:drop-shadow(0 7px 16px rgba(11,37,29,.14))}
.whole-axis{fill:none;stroke:rgba(11,37,29,.11);stroke-width:1;stroke-dasharray:1 8;stroke-linecap:round}
.whole-axis-dot{fill:rgba(11,37,29,.22)}
.whole-label{position:absolute;font-size:.54rem;line-height:1;letter-spacing:.12em;text-transform:uppercase;color:rgba(17,22,19,.43);transition:color .35s ease,transform .5s var(--ease);white-space:nowrap}
.whole-label::before{content:"";display:inline-block;width:15px;height:1px;background:rgba(17,22,19,.18);vertical-align:middle;margin-right:8px}
.wl1{left:4%;top:26%}.wl2{right:3%;top:21%}.wl3{right:-1%;top:52%}.wl4{right:8%;bottom:18%}.wl5{left:4%;bottom:20%}
.whole-caption{position:absolute;left:51.4%;top:50.6%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;pointer-events:none}
.whole-caption span{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:.62rem;font-style:italic;color:rgba(11,37,29,.56)}
.whole-caption strong{margin-top:3px;font-size:.55rem;letter-spacing:.13em;text-transform:uppercase;color:#fff;font-weight:650}
.whole-index{position:absolute;right:0;top:5%;display:grid;grid-template-columns:auto auto;gap:0 8px;align-items:baseline;color:rgba(17,22,19,.32);z-index:2}
.whole-index span,.whole-index b{font-size:.68rem;font-weight:570;color:rgba(11,37,29,.58)}
.whole-index i{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:.64rem;font-style:italic;font-weight:400}
.reveal-ready .hero-whole.in-view .layer-a{animation:wholeSettleA 1.75s var(--ease) .1s both}.reveal-ready .hero-whole.in-view .layer-b{animation:wholeSettleB 1.8s var(--ease) .13s both}.reveal-ready .hero-whole.in-view .layer-c{animation:wholeSettleC 1.9s var(--ease) .16s both}.reveal-ready .hero-whole.in-view .layer-d{animation:wholeSettleD 1.95s var(--ease) .2s both}.reveal-ready .hero-whole.in-view .layer-e{animation:wholeSettleE 2s var(--ease) .23s both}
@keyframes wholeSettleA{0%{opacity:.05;translate:-20px -8px}100%{opacity:.66;translate:0 0}}@keyframes wholeSettleB{0%{opacity:.04;translate:20px -12px}100%{opacity:.5;translate:0 0}}@keyframes wholeSettleC{0%{opacity:.03;translate:-10px 18px}100%{opacity:.43;translate:0 0}}@keyframes wholeSettleD{0%{opacity:.03;translate:16px 15px}100%{opacity:.34;translate:0 0}}@keyframes wholeSettleE{0%{opacity:.03;translate:-16px 8px}100%{opacity:.28;translate:0 0}}
@media (hover:hover) and (pointer:fine){.hero-whole:hover .whole-layer{stroke-width:1.35}.hero-whole:hover .whole-label{color:rgba(11,37,29,.62)}}

/* ROLE — expertise remains separate; Prosperitae supplies shared context */
.role-stage{background:#071a14}
.role-stage::before{width:58vw;height:58vw;right:-29vw;top:-29vw;box-shadow:0 0 0 100px rgba(255,255,255,.013),0 0 0 200px rgba(255,255,255,.008)}
.role-shell{grid-template-columns:.83fr 1.17fr;gap:clamp(60px,6.5vw,105px)}
.role-conductor{position:relative;min-height:610px;isolation:isolate;padding-top:18px}
.role-conductor::before{content:"";position:absolute;width:58%;aspect-ratio:1;left:39%;top:49%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(199,181,141,.11),transparent 66%);z-index:-1}
.conductor-svg{display:block;width:100%;height:auto;overflow:visible}
.conductor-grid path{fill:none;stroke:rgba(255,255,255,.055);stroke-width:1;stroke-dasharray:1 9;stroke-linecap:round}
.conductor-paths path{fill:none;stroke:url(#conductorLine);stroke-width:1.1;vector-effect:non-scaling-stroke;opacity:.42;transition:opacity .36s ease,stroke-width .4s var(--ease),filter .4s ease}
.conductor-source-dots circle{fill:rgba(199,181,141,.72);transition:r .35s var(--ease),fill .35s ease}
.conductor-halo{fill:none;stroke:rgba(199,181,141,.15);stroke-width:1}
.conductor-disc{fill:#f1ede4;stroke:rgba(199,181,141,.22);stroke-width:1;filter:drop-shadow(0 14px 35px rgba(0,0,0,.13))}
.conductor-dot{fill:var(--green)}
.conductor-outcome circle:first-child{fill:none;stroke:rgba(255,255,255,.18);stroke-width:1}.conductor-outcome circle:last-child{fill:var(--sand)}
.conductor-head{position:absolute;top:0;left:5%;right:2%;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.30)}
.conductor-head i{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:.62rem;text-transform:none;letter-spacing:-.01em;font-style:italic;color:rgba(199,181,141,.65)}
.conductor-head b{justify-self:end;font-weight:520;color:rgba(255,255,255,.45)}
.conductor-sources button{position:absolute;left:2%;border:0;background:transparent;color:rgba(255,255,255,.44);padding:7px 8px;font-size:.56rem;letter-spacing:.095em;text-transform:uppercase;cursor:pointer;transition:color .25s ease,transform .35s var(--ease);z-index:3}
.conductor-sources button::after{content:"";position:absolute;left:8px;right:8px;bottom:3px;height:1px;background:var(--sand);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.conductor-sources button:hover,.conductor-sources button:focus-visible,.conductor-sources button.is-active{color:#fff;transform:translateX(4px);outline:none}.conductor-sources button:focus-visible{box-shadow:0 0 0 2px rgba(199,181,141,.28)}.conductor-sources button:hover::after,.conductor-sources button:focus-visible::after,.conductor-sources button.is-active::after{transform:scaleX(1)}
.rc1{top:18%}.rc2{top:31.4%}.rc3{top:44.5%}.rc4{top:57.6%}.rc5{top:71%}
.conductor-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--green);width:116px;pointer-events:none;transition:opacity .2s ease,transform .35s var(--ease)}
.conductor-center span{font-size:.46rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(11,37,29,.58)}.conductor-center strong{margin-top:3px;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.02rem;font-weight:400;font-style:italic;letter-spacing:-.03em}.conductor-center small{margin-top:2px;font-size:.42rem;line-height:1.3;color:rgba(11,37,29,.50);max-width:82px}.conductor-center.is-changing{opacity:.18;transform:translate(-50%,-47%)}
.conductor-result{position:absolute;right:-1%;top:50%;transform:translateY(-50%);width:132px;text-align:center;color:#fff;pointer-events:none}.conductor-result strong{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1rem;font-style:italic;font-weight:400;line-height:1.06}.conductor-result span{display:block;margin-top:7px;font-size:.43rem;line-height:1.35;letter-spacing:.05em;color:rgba(255,255,255,.38)}
.conductor-hint{position:absolute;left:5%;bottom:4px;display:flex;align-items:center;gap:7px;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:.63rem;font-style:italic;color:rgba(255,255,255,.31)}.conductor-hint i{color:rgba(199,181,141,.7);font-style:normal}
.role-conductor.has-active .conductor-paths path{opacity:.10}.role-conductor.has-active .conductor-paths path.is-active{opacity:1;stroke-width:1.8;filter:drop-shadow(0 0 6px rgba(199,181,141,.22))}.role-conductor.has-active .conductor-source-dots circle{fill:rgba(255,255,255,.16)}.role-conductor.has-active .conductor-source-dots circle.is-active{fill:var(--sand);r:6px}

/* PROFILE — intentional editorial identity until a portrait is supplied */
.profile{background:#eee9df}
.profile-shell{grid-template-columns:.88fr 1.12fr;gap:clamp(70px,8.2vw,124px)}
.identity-panel{aspect-ratio:4/5;position:relative;overflow:hidden;background:#0a211a;color:#fff;border:1px solid rgba(17,22,19,.07);box-shadow:0 30px 90px rgba(17,22,19,.075);isolation:isolate}
.identity-panel::before{content:"";position:absolute;width:95%;aspect-ratio:1;border-radius:50%;left:-38%;top:-16%;border:1px solid rgba(199,181,141,.17);box-shadow:0 0 0 70px rgba(199,181,141,.026),0 0 0 140px rgba(199,181,141,.014);z-index:-1}
.identity-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 38%,rgba(199,181,141,.035));pointer-events:none}
.identity-top{position:absolute;left:28px;right:28px;top:26px;display:flex;justify-content:space-between;align-items:center;padding-bottom:13px;border-bottom:1px solid rgba(255,255,255,.12);font-size:.53rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.42)}.identity-top b{font-weight:500;color:rgba(199,181,141,.72)}
.identity-monogram{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);width:74%;height:48%;display:flex;align-items:center;justify-content:center;line-height:.7;user-select:none}.identity-monogram span,.identity-monogram i{position:absolute;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(10rem,18vw,16rem);font-weight:400}.identity-monogram span{color:rgba(242,238,229,.90);transform:translateX(-17%)}.identity-monogram i{font-style:italic;color:rgba(199,181,141,.40);transform:translate(24%,9%)}
.identity-orbit span{position:absolute;border:1px solid rgba(199,181,141,.12);border-radius:50%;left:50%;top:43%;transform:translate(-50%,-50%)}.identity-orbit span:nth-child(1){width:44%;aspect-ratio:1}.identity-orbit span:nth-child(2){width:61%;aspect-ratio:1}.identity-orbit span:nth-child(3){width:79%;aspect-ratio:1}
.identity-bottom{position:absolute;left:28px;right:28px;bottom:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:1fr auto;gap:4px 20px}.identity-bottom strong{font-size:1rem;font-weight:560;letter-spacing:-.025em}.identity-bottom span{grid-column:1;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.42)}.identity-bottom small{grid-column:2;grid-row:1/3;align-self:end;font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(199,181,141,.64)}
.credential-ledger{margin-top:42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.credential-ledger>div{display:grid;grid-template-columns:80px 1fr;align-items:baseline;gap:18px;padding:15px 0;border-bottom:1px solid rgba(17,22,19,.075)}.credential-ledger>div:last-child{border-bottom:0}.credential-ledger b{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.05rem;font-style:italic;font-weight:400;color:var(--green)}.credential-ledger span{font-size:.67rem;letter-spacing:.02em;color:rgba(17,22,19,.50)}

@media(max-width:1040px){
  .hero-whole{width:min(78vw,650px);justify-self:center}
  .role-conductor{min-height:560px;max-width:760px;margin:0 auto;width:100%}
  .identity-panel{max-width:500px;width:100%}
}
@media(max-width:760px){
  .hero-whole{width:112%;margin-left:-6%;margin-top:-12px}
  .whole-index{right:5%}.whole-label{font-size:.47rem}.wl3{right:2%}
  .role-conductor{min-height:430px;width:108%;margin-left:-4%}.conductor-head{font-size:.42rem}.conductor-head i{font-size:.54rem}.conductor-sources button{font-size:.46rem;left:0;padding:7px 4px}.conductor-center{width:88px}.conductor-center strong{font-size:.82rem}.conductor-center span{font-size:.38rem}.conductor-center small{display:none}.conductor-result{right:-2%;width:100px}.conductor-result strong{font-size:.78rem}.conductor-result span{font-size:.37rem}.conductor-hint{font-size:.53rem;left:3%}
  .identity-panel{max-width:none}.identity-monogram span,.identity-monogram i{font-size:clamp(9rem,45vw,13rem)}
  .credential-ledger>div{grid-template-columns:66px 1fr}
}
@media(max-width:430px){
  .whole-label{font-size:.42rem}.whole-label::before{width:10px;margin-right:5px}.wl3{right:0}.whole-index{display:none}.whole-caption{left:51.3%}
  .role-conductor{width:116%;margin-left:-8%;min-height:390px}.conductor-head{left:8%;right:4%}.conductor-sources button{font-size:.42rem}.conductor-result{right:0;width:86px}.conductor-result span{display:none}.conductor-hint{left:8%}
  .identity-top,.identity-bottom{left:22px;right:22px}.identity-top{top:22px}.identity-bottom{bottom:22px}.identity-bottom small{display:none}
}
@media(prefers-reduced-motion:reduce){.whole-layer{animation:none!important}.hero-whole,.whole-layers,.role-conductor{transform:none!important}}

/* v6.2 — hero precision pass: art may bleed, information never does */
.hero-shell{
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  gap:clamp(38px,4.6vw,70px);
}
.hero-copy{min-width:0}
.hero-whole{
  width:100%;
  max-width:640px;
  min-width:0;
  justify-self:end;
  overflow:visible;
  transform:translateX(-4px);
}
/* The sculpture gets its own bleed layer; labels remain tied to the safe container. */
.whole-svg{
  position:absolute;
  left:-6%;
  top:-4%;
  width:118%;
  height:112%;
  overflow:visible;
  pointer-events:none;
}
.hero-whole::before{left:18%;top:14%;width:70%}
.whole-index{
  right:3%;
  top:2.5%;
  padding:5px 7px;
  background:rgba(243,240,232,.54);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  border-radius:3px;
}
.whole-index span,.whole-index b{font-size:.70rem;color:rgba(11,37,29,.64)}
.whole-index i{font-size:.65rem;color:rgba(17,22,19,.40)}
.whole-label{
  z-index:3;
  padding:4px 6px;
  border-radius:2px;
  background:rgba(243,240,232,.58);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
  color:rgba(17,22,19,.48);
}
/* Five information anchors stay inside a deliberate safe zone. */
.wl1{left:0;top:27%}                 /* Familie */
.wl2{right:2%;top:23%}               /* Vermogen */
.wl4{right:2%;bottom:auto;top:57%}    /* Fiscaliteit */
.wl3{right:2%;top:auto;bottom:13%}    /* Onderneming */
.wl5{left:0;bottom:18%}               /* Continuïteit */
.whole-caption{
  left:54.5%;
  top:50%;
  width:112px;
  z-index:4;
  transform:translate(-50%,-50%);
}
.whole-caption span{
  font-size:.71rem;
  line-height:1.05;
  color:rgba(11,37,29,.68);
}
.whole-caption strong{
  margin-top:5px;
  font-size:.66rem;
  line-height:1;
  letter-spacing:.145em;
  color:var(--green);
  font-weight:720;
}
.whole-core{
  transform-box:fill-box;
  transform-origin:center;
  transform:scale(1.14);
  filter:drop-shadow(0 7px 17px rgba(11,37,29,.18));
}
.whole-halo{
  transform-box:fill-box;
  transform-origin:center;
  transform:scale(1.035);
  stroke:rgba(11,37,29,.16);
}
/* Keep the opening cinematic on laptop-height screens, but make the first action visible. */
@media (min-width:1041px) and (max-height:950px){
  .hero-shell{
    min-height:calc(100svh - 50px);
    padding-top:112px;
    padding-bottom:42px;
    align-items:center;
  }
  .hero h1{
    font-size:clamp(4rem,6.55vw,7rem);
    line-height:.865;
    margin-top:18px;
  }
  .hero-intro{margin-top:27px;line-height:1.56}
  .hero-actions{margin-top:27px}
  .hero-meta{height:50px}
  .hero-whole{max-width:610px}
}
@media(max-width:1040px){
  .hero-whole{
    width:min(100%,650px);
    max-width:650px;
    justify-self:center;
    transform:none;
  }
  .whole-svg{left:-7%;top:-5%;width:120%;height:114%}
  .whole-caption{left:54.6%;top:50%}
  .wl1,.wl5{left:2%}
  .wl2,.wl3,.wl4{right:2%}
}
@media(max-width:760px){
  .hero-shell{gap:36px}
  .hero-whole{
    width:100%;
    margin:4px 0 0;
    max-width:none;
    aspect-ratio:1.02;
  }
  .whole-svg{left:-8%;top:-5%;width:123%;height:116%}
  .whole-index{right:1.5%;top:1.5%;padding:4px 5px}
  .whole-index span,.whole-index b{font-size:.60rem}
  .whole-index i{font-size:.56rem}
  .whole-label{font-size:.45rem;padding:3px 4px;background:rgba(243,240,232,.66)}
  .whole-label::before{width:10px;margin-right:5px}
  .wl1{left:0;top:25%}
  .wl2{right:0;top:23%}
  .wl4{right:0;top:57%}
  .wl3{right:0;bottom:12%}
  .wl5{left:0;bottom:17%}
  .whole-caption{left:54.8%;top:49.8%;width:90px}
  .whole-caption span{font-size:.58rem}
  .whole-caption strong{font-size:.54rem;margin-top:4px}
}
@media(max-width:430px){
  .whole-index{display:grid;grid-template-columns:auto auto;gap:0 5px;right:0;top:0;background:rgba(243,240,232,.68)}
  .whole-index span,.whole-index b{font-size:.54rem}
  .whole-index i{font-size:.49rem}
  .whole-label{font-size:.40rem}
  .wl2,.wl3,.wl4{right:0}
  .whole-caption{left:55%;width:78px}
  .whole-caption span{font-size:.52rem}.whole-caption strong{font-size:.48rem}
}

/* v6.2.1 — responsive correction after desktop precision pass */
.whole-caption{top:54.2%}
@media(max-width:1040px){
  .hero-shell{grid-template-columns:1fr}
  .hero-copy{width:100%;max-width:920px}
  .whole-caption{top:54.2%}
}
@media(max-width:760px){
  .hero-shell{grid-template-columns:1fr}
  .hero-copy{width:100%}
  .whole-caption{top:54%}
}
@media(max-width:430px){
  .whole-caption{top:54%}
}

/* Keep the main action within the opening viewport on common 1080p desktop displays too. */
@media (min-width:1041px) and (min-height:951px) and (max-height:1150px){
  .hero-shell{
    min-height:calc(100svh - 52px);
    padding-top:116px;
    padding-bottom:46px;
  }
  .hero h1{
    font-size:clamp(4.5rem,6.05vw,7rem);
    line-height:.865;
    margin-top:19px;
  }
  .hero-intro{margin-top:29px;line-height:1.57}
  .hero-actions{margin-top:29px}
  .hero-meta{height:52px}
}


/* v6.3 — portrait integration */
.portrait-panel{
  margin:0;
  background:#e8e4dc;
  color:var(--ink);
  box-shadow:0 30px 90px rgba(17,22,19,.085);
}
.portrait-panel::before{
  content:"";
  position:absolute;
  inset:0;
  width:auto;
  aspect-ratio:auto;
  left:0;
  top:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:linear-gradient(180deg,rgba(243,240,232,.16) 0%,rgba(243,240,232,0) 30%,rgba(7,27,21,0) 57%,rgba(7,27,21,.78) 100%);
  z-index:1;
  pointer-events:none;
}
.portrait-panel::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,rgba(199,181,141,.055),transparent 43%,rgba(11,37,29,.035));
  z-index:1;
  pointer-events:none;
}
.identity-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 49%;
  display:block;
  filter:saturate(.88) contrast(.985) brightness(1.01);
  transform:scale(1.002);
  transition:transform 1.15s var(--ease),filter .8s ease;
}
.portrait-panel .identity-top,
.portrait-panel .identity-bottom{z-index:2}
.portrait-panel .identity-top{
  color:rgba(11,37,29,.60);
  border-color:rgba(11,37,29,.16);
  text-shadow:0 1px 8px rgba(243,240,232,.45);
}
.portrait-panel .identity-top b{color:rgba(11,37,29,.72)}
.portrait-panel .identity-bottom{
  color:#fff;
  border-color:rgba(255,255,255,.26);
  text-shadow:0 1px 14px rgba(5,18,14,.28);
}
.portrait-panel .identity-bottom strong{font-size:1.08rem;font-weight:580}
.portrait-panel .identity-bottom span{color:rgba(255,255,255,.69)}
.portrait-panel .identity-bottom small{color:rgba(226,211,177,.90)}
@media (hover:hover) and (pointer:fine){
  .portrait-panel:hover .identity-photo{
    transform:scale(1.016);
    filter:saturate(.92) contrast(.99) brightness(1.015);
  }
}
@media(max-width:760px){
  .identity-photo{object-position:50% 47%}
}
@media(max-width:430px){
  .portrait-panel .identity-bottom strong{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){
  .identity-photo{transition:none!important;transform:none!important}
}


/* v6.4 production finishing */
:focus-visible{outline:2px solid var(--sand);outline-offset:4px}
.site-nav a:focus-visible,.button:focus-visible,.phone-link:focus-visible,.legal-back:focus-visible,.legal-copy a:focus-visible{border-radius:3px}
.legal-page{min-height:100vh;background:var(--paper);padding:clamp(42px,7vw,88px) 0 clamp(84px,10vw,140px)}
.legal-shell{width:min(calc(100% - 48px),920px);margin-inline:auto}
.legal-brand{display:inline-flex;flex-direction:column;gap:4px;line-height:1;margin-bottom:clamp(90px,12vw,150px)}
.legal-page h1{font-size:clamp(3.6rem,8vw,7.5rem);line-height:.88;max-width:10ch;margin:22px 0 0}
.legal-intro{max-width:720px;margin-top:38px;font-size:clamp(1.13rem,1.6vw,1.34rem);line-height:1.58;color:#58615a;letter-spacing:-.025em}
.legal-copy{margin-top:clamp(68px,9vw,112px);border-top:1px solid var(--line)}
.legal-copy section{display:grid;grid-template-columns:minmax(180px,.68fr) minmax(0,1.32fr);gap:48px;padding:38px 0;border-bottom:1px solid var(--line)}
.legal-copy h2{font-size:1rem;line-height:1.35;letter-spacing:-.025em;font-weight:620}
.legal-copy p{font-size:.96rem;line-height:1.72;color:#5b645d;margin-bottom:15px}.legal-copy p:last-child{margin-bottom:0}
.legal-copy a{text-decoration:underline;text-decoration-color:rgba(11,37,29,.28);text-underline-offset:3px;transition:text-decoration-color .2s ease,color .2s ease}.legal-copy a:hover{color:var(--green);text-decoration-color:var(--green)}
.legal-date{font-size:.78rem!important;letter-spacing:.025em;color:rgba(17,22,19,.46)!important;margin-top:21px!important}
.legal-back{display:inline-block;margin-top:48px;font-size:.8rem;color:#4e5952;transition:transform .25s var(--ease),color .2s ease}.legal-back:hover{transform:translateX(-3px);color:var(--green)}
@media(max-width:700px){.legal-shell{width:min(calc(100% - 36px),920px)}.legal-brand{margin-bottom:76px}.legal-page h1{font-size:clamp(3rem,16vw,4.8rem)}.legal-intro{margin-top:28px}.legal-copy{margin-top:62px}.legal-copy section{grid-template-columns:1fr;gap:14px;padding:30px 0}.legal-copy h2{font-size:.95rem}.legal-copy p{font-size:.93rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.legal-404-button{margin-top:38px}
