@font-face{font-family:Edonismo;src:url('/assets/eb-garamond.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Edonismo;src:url('/assets/eb-garamond-italic.ttf') format('truetype');font-style:italic;font-display:swap}
@font-face{font-family:Diatype;src:local('ABC Diatype'),local('ABCDiatype-Regular'),local('Diatype');font-weight:400;font-display:swap}
:root{--red:#9a0d15;--white:#fff;--ivory:#f6f1e7;--ink:#191715;--muted:#625a51;--rule:#c9c0b4;--gutter:clamp(24px,5vw,88px);--serif:Edonismo,Georgia,serif;--sans:Diatype,'Helvetica Neue',Arial,sans-serif;--space:clamp(88px,12vw,192px);color:var(--ink);background:var(--ivory);font-family:var(--sans);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}body{margin:0}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1,h2{letter-spacing:-.03em;line-height:1.02;text-wrap:balance}h1{font-size:clamp(56px,7vw,108px)}h2{font-size:clamp(44px,5.5vw,84px)}h3{font-size:32px;line-height:1.1}p{font-size:16px;line-height:1.65;max-width:68ch}p+p{margin-top:1.25em}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}button,input,textarea{font:inherit;color:inherit}button,summary{cursor:pointer}button,a,summary{touch-action:manipulation}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}::selection{background:var(--red);color:var(--ivory)}:focus-visible{outline:2px solid currentColor;outline-offset:6px}input,textarea{caret-color:var(--red)}.section{padding:var(--space) var(--gutter)}.section-label{font-size:11px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}.detail-hero-kicker{display:block;margin-bottom:clamp(22px,3vw,38px);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:400;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}.editorial-link{display:inline-flex;align-items:center;gap:32px;border:0;border-bottom:1px solid currentColor;padding:12px 0;font-family:var(--sans);font-size:11px;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;text-decoration:none;background:none;min-height:44px}.editorial-link svg{width:22px;height:22px;transition:transform .25s}.editorial-link:hover svg{transform:translateX(6px)}.language{display:flex;align-items:center;gap:12px;font-size:11px}.language a{padding:14px 0;text-decoration:none}.language a[aria-current]{text-decoration:underline}.language span{opacity:.6}.return-header{display:flex;justify-content:space-between;align-items:center;padding:25px var(--gutter)}.return-header>a{text-decoration:none;padding:14px 0;font-size:18px}.return-header>a span{font-family:Georgia,serif;letter-spacing:.08em;font-size:20px}
/* A viewport-sized editorial stage leaves a glimpse of the next section. */
.hero-reveal{--opening-height:calc(100svh - 48px);position:relative;height:calc(var(--opening-height) + 100svh);background:#17100c}
.hero-reveal .opening{position:absolute;inset:0 0 auto;z-index:4;width:100%;height:var(--opening-height);margin:0}
.opening{position:relative;height:calc(100svh - 48px);min-height:360px;display:grid;grid-template-rows:auto minmax(0,1fr) 44px;justify-items:center;gap:clamp(16px,3.5svh,38px);padding:clamp(78px,11svh,120px) var(--gutter) 12px;background:var(--red);color:var(--white);isolation:isolate;cursor:default}.opening[data-counter-visible="true"]{cursor:pointer}
.opening-header{position:absolute;top:20px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:center;z-index:30}
.opening-word{--menu-logo-shift:150px;position:relative;z-index:34;font-family:Georgia,serif;font-size:34px;letter-spacing:.025em;line-height:1.2;white-space:nowrap;text-decoration:none;transition:transform .9s cubic-bezier(.16,1,.3,1),color .25s}.opening-word strong{font-weight:700}.opening-word span{font-weight:400}body.logo-scroll-visible:not(.menu-is-open):not(.menu-is-closing):not(.menu-logo-tracking)>.site-header .opening-word{position:fixed;top:20px;left:32px;animation:scroll-logo-enter .52s cubic-bezier(.16,1,.3,1) both}body.logo-scroll-leaving:not(.menu-is-open):not(.menu-is-closing):not(.menu-logo-tracking)>.site-header .opening-word{position:absolute;top:var(--logo-release-top);left:0;transform:none}body.logo-scroll-visible .opening>.site-header .opening-word,body.logo-scroll-leaving .opening>.site-header .opening-word{visibility:hidden}@keyframes scroll-logo-enter{from{transform:translate3d(0,-150%,0)}to{transform:translate3d(0,0,0)}}
.opening-brand{position:relative;z-index:2;text-align:center;width:100%;pointer-events:none}.opening-slogan{font-family:var(--serif);font-size:clamp(30px,5.8svh,60px);line-height:1.02;max-width:16ch;margin:0 auto;letter-spacing:-.025em;text-wrap:balance}
.opening-sequence{position:relative;height:100%;max-height:43svh;width:min(75vw,800px);align-self:center;transform:translateY(clamp(-48px,-5svh,-22px));display:grid;place-items:center;border:0;border-radius:0;padding:0;background:none;color:inherit;z-index:3;pointer-events:none}.opening-still{position:relative;display:grid;place-items:center;width:min(31.5svh,69.6vw,331px);height:min(42svh,92.8vw,442px);aspect-ratio:3/4;animation:final-frame .55s ease-out 3.8s both}.opening-still img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .24s ease,transform .48s cubic-bezier(.16,1,.3,1)}.sequence-frame img{width:100%;height:100%;object-fit:cover}.opening-sequence.is-changing .opening-still img{opacity:0;transform:translateY(12px)}.hero-counter{position:fixed;left:0;top:0;z-index:29;display:block;color:var(--white);font-size:14px;line-height:1;letter-spacing:0;text-align:center;text-shadow:0 1px 12px rgba(0,0,0,.35);pointer-events:none;opacity:0;transform:translate3d(var(--counter-x,0px),var(--counter-y,0px),0) translate(12px,12px);transition:opacity .12s ease;will-change:transform}.opening[data-counter-visible="true"] .hero-counter{opacity:1}.opening-scatter{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}.sequence-frame{position:absolute;width:min(25vw,320px);height:clamp(100px,30svh,300px);opacity:0;animation:editorial-frame .7s ease-out var(--delay) both}.scatter-0{left:50%;top:50%;width:min(31.5svh,69.6vw,331px);height:min(42svh,92.8vw,442px);transform:translate(-50%,-50%);aspect-ratio:3/4}.scatter-1{right:9%;top:13%}.scatter-2{left:19%;bottom:9%;width:27vw;height:24svh}.scatter-3{right:22%;top:31%}.scatter-4{left:4%;top:49%;width:29vw;height:24svh}.scatter-5{right:5%;bottom:10%}.scatter-6{left:30%;top:17%;width:28vw;height:26svh}.scatter-7{left:12%;top:34%;width:27vw;height:28svh}.scatter-8{right:18%;bottom:21%;width:25vw;height:25svh}.scatter-9{left:43%;bottom:7%;width:25vw;height:25svh}.opening.sequence-stopped .sequence-frame{animation:none;opacity:0}.opening.is-scattering .sequence-frame{animation:editorial-frame .7s ease-out var(--delay) both}.opening.sequence-stopped .opening-still{animation:none;opacity:1}.opening.manual-scatter .opening-still{opacity:0}.opening.manual-scatter .sequence-frame.is-current{animation:none;opacity:1}.sequence-frame.scatter-0{animation-name:editorial-frame-centered}.opening.is-scattering .sequence-frame.scatter-0{animation-name:editorial-frame-centered}.opening.manual-scatter .sequence-frame.scatter-0.is-current{transform:translate(-50%,-50%)}
.opening-baseline{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;font-size:14px}.opening-baseline a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid currentColor;color:var(--white);text-decoration:none;transition:opacity .18s ease}.opening-baseline a:hover{opacity:.48}
.opening-menu{position:fixed;top:20px;right:32px;z-index:33;border:0;padding:0}.opening-menu summary{position:relative;z-index:34;width:52px;height:48px;justify-content:center;transition:color .18s ease}.menu-over-light .opening-menu:not([open]) summary{color:var(--ink)}.menu-lines{position:relative;display:block;width:34px;height:18px}.menu-lines:before,.menu-lines:after{content:'';position:absolute;left:0;top:8px;width:100%;height:1px;background:currentColor;transition:transform .24s cubic-bezier(.16,1,.3,1)}.menu-lines:before{transform:translateY(-4px)}.menu-lines:after{transform:translateY(4px)}
.menu-overview{position:fixed;inset:0;z-index:31;background:var(--ivory);color:var(--ink);padding:116px 42px 42px;overflow-y:auto;transform:translateY(-100%);transition:transform .9s cubic-bezier(.16,1,.3,1)}.menu-items{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:min(420px,29vw);margin:58px -1vw 0 auto}.menu-items>a{font-family:var(--serif);font-size:32px;line-height:1.12;text-decoration:none;min-height:44px;padding:2px 0;opacity:1;transition:opacity .1s linear}.menu-items>a>span{display:block;opacity:0;transform:translateY(-8px);transition:opacity .18s ease,transform .5s cubic-bezier(.16,1,.3,1)}.menu-side{position:absolute;top:178px;left:51%;width:230px;opacity:0;transform:translateY(-6px);transition:opacity .32s ease,transform .42s cubic-bezier(.16,1,.3,1)}.menu-small-links{display:flex;flex-direction:column;gap:6px;margin-bottom:42px}.menu-small-links a{font-family:var(--sans);font-size:14px;line-height:1.55;text-decoration:none;transition:opacity .1s linear}.menu-overview .language{justify-content:flex-start;font-family:var(--sans);font-size:14px;line-height:1.55}.menu-feature{position:absolute;left:42px;bottom:42px;width:min(470px,35vw);min-height:112px;background:#fff;color:var(--ink);padding:18px 22px;display:grid;grid-template-columns:96px 1fr;align-items:center;gap:20px;opacity:0;transform:translateY(10px);transition:opacity .38s ease,transform .5s cubic-bezier(.16,1,.3,1)}.menu-feature img{width:96px;height:96px;object-fit:cover}.menu-feature span{display:flex;flex-direction:column;align-items:start;gap:5px;min-width:0}.menu-feature strong{font-family:var(--serif);font-weight:400;font-size:18px;line-height:1.08;text-transform:uppercase}.menu-feature small{font-family:var(--sans);font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.menu-feature-link{display:inline-flex;margin-top:8px;text-decoration:none}.menu-feature em{font-family:var(--sans);font-style:normal;font-size:14px;line-height:1.55;border-bottom:1px solid currentColor;transition:opacity .18s ease}
.menu-is-open .menu-overview{transform:translateY(0)}.menu-is-open .opening-word{position:fixed;top:20px;left:32px;color:var(--ink);opacity:1;transform:translate3d(0,var(--menu-logo-shift),0);animation:menu-logo-enter-visible .68s cubic-bezier(.16,1,.3,1) .06s both}.menu-logo-from-offscreen.menu-is-open .opening-word{animation-name:menu-logo-enter-fade}.menu-is-open .opening-menu summary{color:var(--ink)}.menu-is-open .menu-lines:before{transform:rotate(45deg)}.menu-is-open .menu-lines:after{transform:rotate(-45deg)}.menu-is-open .menu-items>a>span,.menu-is-open .menu-side,.menu-is-open .menu-feature{opacity:1;transform:translateY(0);transition-delay:.52s}.menu-is-open .menu-items>a:nth-child(2)>span{transition-delay:.58s}.menu-is-open .menu-items>a:nth-child(3)>span{transition-delay:.64s}.menu-is-open .menu-items>a:nth-child(4)>span{transition-delay:.7s}.menu-is-open .menu-side{transition-delay:.66s}.menu-is-open .menu-feature{transition-delay:.82s}
body.menu-is-open,body.menu-is-closing{overflow:hidden}.menu-is-closing .menu-overview{transition-duration:.48s;transition-delay:.24s}.menu-is-closing .opening-word{position:fixed;top:20px;left:32px;color:var(--ink);animation:menu-logo-exit .2s ease both}.menu-is-closing .menu-items>a>span,.menu-is-closing .menu-side,.menu-is-closing .menu-feature{transition-delay:0s;transition-duration:.2s}
.menu-items:has(a:focus-visible)>a{transition-delay:0s}.menu-items:has(a:focus-visible)>a:not(:focus-visible){opacity:.38;transition-delay:0s}
@media(hover:hover){.opening-menu:not([open]) summary:hover .menu-lines:before{transform:translateY(-6px)}.opening-menu:not([open]) summary:hover .menu-lines:after{transform:translateY(6px)}.menu-is-open .menu-items:has(a:hover)>a,.menu-small-links:has(a:hover)>a{opacity:1;transition-delay:0s;transition-duration:.1s}.menu-is-open .menu-items:has(a:hover)>a:hover,.menu-small-links:has(a:hover)>a:hover{transition-duration:0s}.menu-is-open .menu-items:has(a:hover)>a:not(:hover),.menu-small-links:has(a:hover)>a:not(:hover){opacity:.38;transition-delay:0s;transition-duration:.1s}.menu-feature-link:hover em{opacity:.48}}
@keyframes editorial-frame{0%{opacity:0;transform:translateY(12px)}18%,70%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(0)}}
@keyframes editorial-frame-centered{0%{opacity:0;transform:translate(-50%,-50%) translateY(12px)}18%,70%{opacity:1;transform:translate(-50%,-50%) translateY(0)}100%{opacity:0;transform:translate(-50%,-50%) translateY(0)}}
@keyframes final-frame{from{opacity:0}to{opacity:1}}
@keyframes menu-logo-enter-visible{from{opacity:1;transform:translate3d(0,calc(var(--menu-logo-shift) - 32px),0)}to{opacity:1;transform:translate3d(0,var(--menu-logo-shift),0)}}
@keyframes menu-logo-enter-fade{from{opacity:0;transform:translate3d(0,calc(var(--menu-logo-shift) - 32px),0)}to{opacity:1;transform:translate3d(0,var(--menu-logo-shift),0)}}
@keyframes menu-logo-exit{from{opacity:1;transform:translate3d(0,var(--menu-logo-shift),0)}to{opacity:0;transform:translate3d(0,calc(var(--menu-logo-shift) - 18px),0)}}
/* No-script navigation remains usable as a native disclosure. */
html:not(.menu-ready) .opening-menu[open] .menu-overview{transform:none}html:not(.menu-ready) .opening-menu[open] summary{color:var(--ink)}html:not(.menu-ready) .opening-menu[open] .menu-items>a>span,html:not(.menu-ready) .opening-menu[open] .menu-side,html:not(.menu-ready) .opening-menu[open] .menu-feature{opacity:1;transform:none}
/* Philosophy opens on the same red canvas, then quiets into paper. */

.hero-reveal .perspective-hero{position:sticky;top:0;z-index:1;margin-top:0}
.perspective-hero{position:relative;height:100svh;min-height:0;display:grid;align-items:end;padding:clamp(34px,5vw,76px) var(--gutter);overflow:hidden;background:#17100c;color:var(--ivory)}.perspective-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.46),rgba(0,0,0,.08) 52%,rgba(0,0,0,.28));pointer-events:none}.perspective-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.perspective-hero-copy{position:relative;z-index:1;align-self:end;width:100%;padding-bottom:clamp(18px,3vw,40px)}.perspective-hero-lines{display:flex;flex-direction:column;gap:clamp(6px,1vw,14px);margin-bottom:clamp(22px,3vw,42px)}.perspective-hero-lines h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:none}.perspective-hero-footer{display:grid;grid-template-columns:minmax(0,60ch) auto;align-items:start;justify-content:space-between;gap:clamp(32px,4vw,72px)}.perspective-hero-copy p{font-family:var(--sans);font-size:14px;line-height:1.55;max-width:60ch;color:rgba(246,241,231,.88)}.perspective-cta{position:relative;z-index:1;align-self:start;justify-self:end;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid currentColor;color:var(--ivory);font-family:var(--sans);font-size:14px;line-height:1;text-decoration:none;transition:opacity .6s ease}.perspective-cta:hover{opacity:.48}
.perspective-intro{background:var(--ivory);color:var(--ink);padding-top:calc(var(--space)*1.15);padding-bottom:calc(var(--space)*1.15)}.section-rail{margin-bottom:56px}.principles{display:flex;flex-direction:column;gap:12px}.principle{font-size:clamp(46px,6.5vw,100px);line-height:1.03;max-width:20ch}.principle-1{margin-left:8.333%}.principle-2{margin-left:16.666%}.perspective-note{margin-top:70px;margin-left:58.333%;max-width:470px}.perspective-note .editorial-link{margin-top:26px}.common-direction{min-height:58svh;padding-top:clamp(72px,9svh,120px);padding-bottom:clamp(72px,9svh,120px);display:grid;place-items:center;background:var(--white);color:var(--ink)}.direction-copy{display:flex;flex-direction:column;align-items:center;text-align:center;width:min(100%,1800px)}.direction-copy h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:36ch}.direction-aside{margin-top:clamp(22px,3vw,40px);display:flex;flex-direction:column;align-items:center}.direction-aside p{font-family:var(--sans);font-size:14px;line-height:1.55;max-width:60ch}
/* A vertical scroll interval carries the editorial service rail horizontally. */
.services-home{position:relative;min-height:100svh;background:var(--ivory);color:var(--ink)}.services-pin{position:sticky;top:0;height:100svh;overflow:hidden;padding:clamp(34px,4.5svh,64px) 0 clamp(22px,3svh,42px);display:flex;flex-direction:column}.services-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;margin:0 var(--gutter);padding-bottom:clamp(22px,3.5svh,48px);border-bottom:1px solid var(--ink)}.services-heading h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:none;white-space:nowrap}.services-all{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid currentColor;font-size:14px;line-height:1;text-decoration:none;transition:opacity .18s ease}.services-all:hover{opacity:.48}.services-viewport{flex:1;min-height:0;overflow:hidden;padding-top:clamp(30px,5.5svh,72px)}.services-track{display:flex;align-items:flex-start;gap:clamp(18px,2vw,34px);width:max-content;padding:0 var(--gutter);transform:translate3d(0,0,0);will-change:transform}.service-card{display:block;width:clamp(300px,21.5vw,460px);flex:0 0 auto;color:inherit;text-decoration:none}.service-card img{width:100%;height:min(48svh,550px);aspect-ratio:4/5;object-fit:cover;background:#d7cfc2}.service-card h3{margin-top:14px;font-size:clamp(24px,1.8vw,30px);line-height:1.06;letter-spacing:-.02em;white-space:nowrap}.service-card p{margin-top:8px;font-size:14px;line-height:1.5;max-width:36ch}.service-card img{transition:filter .6s ease}.service-card h3,.service-card p{transition:opacity .6s ease}.service-card:hover img{filter:brightness(.72)}.service-card:hover h3,.service-card:hover p{opacity:.5}.services-home.services-static{height:auto!important}.services-static .services-pin{position:relative;height:auto;min-height:100svh}.services-static .services-viewport{overflow-x:auto;scrollbar-width:thin}.services-static .services-track{transform:none!important;padding-bottom:20px}
.founder{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.52fr);gap:clamp(54px,8vw,150px);align-items:start;padding-top:clamp(88px,10vw,160px);padding-bottom:clamp(88px,10vw,160px);background:var(--white);color:var(--ink)}.founder-portrait{position:sticky;top:clamp(24px,5vw,72px);margin:0}.founder-portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#ded8ce}.founder-portrait figcaption{margin-top:12px;font-family:var(--sans);font-size:11px;line-height:1.4;letter-spacing:.07em;text-transform:uppercase}.founder-profile blockquote{font-family:var(--serif);font-size:clamp(42px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:24ch}.founder-intro{max-width:62ch;margin:clamp(20px,2.2vw,32px) 0 0;font-family:var(--sans);font-size:14px;line-height:1.55}.founder-timeline{margin-top:clamp(28px,3vw,42px);padding-top:4px}.founder-path-list{position:relative;list-style:none;margin:0;padding:0}.founder-path-list li{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr);gap:20px;padding:0 0 28px}.founder-path-list li:not(:last-child):before{content:'';position:absolute;left:3.5px;top:11px;bottom:-1px;width:1px;background:var(--rule)}.path-marker{position:relative;z-index:1;width:8px;height:8px;margin-top:5px;border:1px solid var(--ink);border-radius:50%;background:var(--white)}.founder-path-list li:last-child .path-marker{border-color:var(--red);background:var(--red)}.founder-path-list time{display:block;margin-bottom:7px;font-family:var(--sans);font-size:11px;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--muted)}.founder-path-list h3{font-size:clamp(18px,1.45vw,23px);line-height:1.15;letter-spacing:-.02em}.founder-path-list p{max-width:58ch;margin-top:7px;font-family:var(--sans);font-size:14px;line-height:1.55}
.founder-education{margin-top:clamp(24px,2.8vw,38px)}.founder-education>p{max-width:64ch;font-family:var(--sans);font-size:14px;line-height:1.55}.founder-study-list{margin-top:clamp(24px,2.8vw,38px)}.founder-study-list li{padding-bottom:20px}.founder-credentials{list-style:none;margin:36px 0;padding:0;border-top:1px solid var(--rule)}.founder-credentials li{padding:14px 0;border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:12px;line-height:1.4;letter-spacing:.04em;text-transform:uppercase}details{border-top:1px solid var(--rule);padding-top:18px}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;font-size:12px}summary::-webkit-details-marker{display:none}.plus{position:relative;width:16px;height:16px;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;top:7px;left:0;width:16px;height:1px;background:currentColor}.plus:after{transform:rotate(90deg);transition:transform .2s}details[open] .plus:after{transform:rotate(0)}.detail-content{padding-top:24px}.detail-content p{font-size:14px}.detail-content .editorial-link{margin-top:26px}
.contact-section ::selection{background:var(--ivory);color:var(--red)}.contact-section{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(230px,.62fr) minmax(420px,1.45fr);gap:clamp(38px,5vw,100px);align-items:start;padding-top:clamp(78px,8vw,128px);padding-bottom:clamp(78px,8vw,128px);background:var(--red);color:var(--ivory)}.contact-copy h2{font-size:clamp(48px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:8ch}.contact-intro{padding-top:8px}.contact-intro>p{font-family:var(--sans);font-size:14px;line-height:1.55;max-width:34ch}.contact-form{display:flex;flex-direction:column;gap:16px;padding-top:0}.form-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}.field{position:relative;margin:0}.field label{position:absolute;z-index:1;top:9px;left:18px;font-family:var(--sans);font-size:10px;line-height:1.3;letter-spacing:.07em;text-transform:uppercase;color:rgba(246,241,231,.72);pointer-events:none}.field input,.field textarea{display:block;width:100%;height:64px;min-height:64px;padding:26px 18px 10px;border:1px solid rgba(246,241,231,.88);border-radius:3px;background:transparent;color:var(--ivory);font-family:var(--sans);font-size:16px;line-height:1.45;caret-color:var(--ivory);transition:background-color .18s ease,border-color .18s ease}.field textarea{height:128px;min-height:128px;resize:vertical}.field input:hover,.field textarea:hover{background:rgba(246,241,231,.05)}.field input:focus-visible,.field textarea:focus-visible{outline:0;border-color:var(--ivory);background:rgba(246,241,231,.08)}.form-submit{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:12px 24px;border:1px solid var(--ivory);border-radius:0;background:transparent;color:var(--ivory);font-family:var(--sans);font-size:14px;line-height:1;transition:opacity .18s ease}.form-submit:hover{opacity:.48}.form-submit:disabled{cursor:wait;opacity:.5}.form-status{font-size:13px;margin-top:2px}.form-status:empty{display:none}.email-fallback{display:flex;gap:24px;flex-wrap:wrap;margin-top:0;font-size:12px}.email-fallback[hidden]{display:none}.email-fallback button{background:none;color:inherit;border:0;border-bottom:1px solid currentColor;padding:8px 0}.draft-link{display:inline-flex;align-items:center;gap:15px;color:inherit}.draft-link svg{width:20px}
.site-footer{background:#111110;color:var(--ivory);padding:0 var(--gutter) 24px}.footer-row{display:grid;grid-template-columns:minmax(180px,1.15fr) repeat(3,minmax(180px,.72fr));gap:clamp(36px,5vw,100px);border-top:1px solid #474441;padding:34px 0 clamp(72px,8vw,132px)}.footer-row-label,.footer-block h2{font-family:var(--sans);font-size:11px;line-height:1.4;letter-spacing:.08em;font-weight:400}.footer-block p,.footer-block a{font-family:var(--sans);font-size:14px;line-height:1.55}.footer-block p{max-width:34ch}.footer-block h2{margin-bottom:10px}.footer-block a{text-decoration:none;transition:opacity .18s ease}.footer-block a:hover{opacity:.48}.footer-nav{display:flex;flex-direction:column;align-items:flex-start}.footer-nav h2{width:100%}.footer-contact .footer-email{display:inline-block;margin-top:12px;border-bottom:1px solid currentColor;padding-bottom:3px;overflow-wrap:anywhere}.footer-language .language{justify-content:flex-start;margin:0;font-size:14px}.footer-language .language a{font-size:14px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #474441;padding-top:22px;font-size:10px}.back-to-top{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:44px;padding:10px 14px;border:1px solid currentColor;text-decoration:none;font-size:11px;transition:opacity .18s ease}.back-to-top svg{width:18px;height:18px}.back-to-top:hover{opacity:.48}
/* Perspective: three editorial chapters. */
.perspective-opening{padding-top:80px}.perspective-opening h1{max-width:18ch;margin-top:36px}.system-intro{margin:60px 8.333% 75px 50%;max-width:55ch}.perspective-opening figure{width:75%;margin-left:25%}.perspective-opening figure img{width:100%;aspect-ratio:1.6;object-fit:cover}.system-chapter{padding-top:0}.connections{list-style:none;padding:0;margin:50px 0 60px}.connections li{font-family:var(--serif);font-size:clamp(32px,4.2vw,64px);line-height:1.15;letter-spacing:-.025em;max-width:30ch}.connections li+li{margin-top:24px}.connections li:nth-child(2){margin-left:8.333%}.connections li:nth-child(3){margin-left:16.666%}.connections li:nth-child(4){margin-left:25%}.system-closing{margin-left:58.333%}.culture-chapter{position:relative;background:var(--red);color:var(--ivory);padding-top:120px;padding-bottom:120px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:7%}.culture-chapter h2{font-size:clamp(48px,6.5vw,98px);position:relative;z-index:1}.culture-chapter h2 span{display:block}.culture-chapter h2 span+span{margin-top:30px}.culture-chapter figure img{aspect-ratio:.85;object-fit:cover;width:100%}.meaning-chapter h2{font-size:clamp(62px,8vw,120px);margin:32px 0 70px;max-width:12ch}.meaning-grid{display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:center}.meaning-grid figure img{aspect-ratio:1.2;object-fit:cover;width:100%}.meaning-grid p{max-width:46ch}.closing-statement{padding-top:40px}.closing-statement h2{max-width:19ch;font-size:clamp(48px,6.6vw,98px)}.closing-statement>div{display:flex;gap:50px;margin-top:50px;flex-wrap:wrap}
/* Services: clear scope, native progressive disclosure. */
.services-opening{display:grid;grid-template-columns:1fr 1fr;gap:35px 12%;padding-top:80px;padding-bottom:85px}.services-opening>.section-label{grid-column:1/-1}.services-opening h1{font-size:clamp(56px,6vw,92px);max-width:13ch}.services-opening>div{align-self:end}.services-opening .lead{font-family:var(--serif);font-size:30px;line-height:1.2;margin-bottom:24px}.services-opening>div>p:last-child{font-size:15px}.services-detail{padding-top:0;padding-bottom:40px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:12%;border-top:1px solid var(--rule);padding:50px 0;scroll-margin-top:24px}.service-identity{display:grid;grid-template-columns:40px 1fr;gap:24px}.service-identity h2{font-size:clamp(28px,3vw,46px);max-width:18ch}.category{font-size:10px;line-height:1.7;letter-spacing:.08em;margin-top:28px;color:var(--muted)}.service-quote{font-family:var(--serif);font-size:clamp(26px,2.5vw,38px);line-height:1.18;margin-bottom:24px}.service-reading>p:not(.service-quote){font-size:15px}.service-reading details{margin-top:28px}.not-found{padding:15vh var(--gutter)}.not-found p{margin:30px 0}
.journal-opening{padding-top:90px;padding-bottom:70px}.journal-opening h1{max-width:13ch;font-size:clamp(58px,8vw,118px);margin:24px 0 34px}.journal-opening p{margin-left:50%;max-width:34ch}.journal-list{padding-top:0}.journal-row{display:grid;grid-template-columns:48px 1fr auto;gap:40px;align-items:start;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);padding:34px 0 38px;text-decoration:none}.journal-row>span{font-size:13px;font-variant-numeric:tabular-nums;color:var(--red)}.journal-row h2{font-size:clamp(36px,5vw,76px);max-width:12ch}.journal-row p{margin-top:18px;max-width:56ch}.journal-row em{font-style:normal;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding-top:12px}
@media(min-width:1600px){.catalogue-row{grid-template-columns:.4fr 2.4fr 4fr}}
@media(max-width:1100px){.catalogue-copy{grid-template-columns:1fr;gap:18px}.catalogue-row{grid-template-columns:30px 1fr 1.1fr;gap:28px}.perspective-note{margin-left:50%}.direction-copy{grid-template-columns:1.5fr 1fr;gap:8%}.founder-grid{gap:7%}.contact-section{grid-template-columns:1fr 1fr;gap:46px 8%}.contact-form{grid-column:1/-1}.footer-grid{grid-template-columns:1fr .6fr 1.3fr}.service-detail{gap:7%}.service-identity{grid-template-columns:24px 1fr;gap:18px}}
@media(max-width:800px){.hero-reveal{--opening-height:calc(100svh - 28px)}.perspective-hero{grid-template-columns:1fr;align-items:end;gap:22px;height:100svh;min-height:0;padding:clamp(68px,10svh,90px) var(--gutter) clamp(28px,5svh,48px)}.perspective-hero:after{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.62))}.perspective-hero-copy{max-width:none;padding-bottom:0}.perspective-hero-footer{grid-template-columns:1fr;gap:22px}.perspective-hero-lines h2{font-size:clamp(30px,5.8svh,60px);max-width:none}.perspective-hero-copy p{font-size:14px;max-width:60ch}.perspective-cta{justify-self:start;min-height:48px;font-size:14px;padding:12px 24px}.section-rail{margin-bottom:36px}.principle{font-size:clamp(40px,6.5vw,60px)}.perspective-note{margin-left:35%;margin-top:50px}.direction-copy{gap:0}.direction-aside{margin-left:0}.catalogue-heading{grid-template-columns:1fr;gap:28px}.catalogue-row h3{font-size:30px}.founder-grid{grid-template-columns:1fr;gap:46px}.founder-grid blockquote{max-width:18ch}.founder-story{margin-left:35%;padding-top:0}.founder-story>p{font-size:14px}.contact-section{grid-template-columns:1fr 1fr;gap:40px}.contact-form{grid-template-columns:1fr 1fr}.contact-form .field:nth-child(3){grid-column:1/-1}.form-note{grid-column:1}.form-submit{grid-column:2}.footer-grid{gap:24px}.system-intro{margin-left:35%;margin-right:0}.system-closing{margin-left:35%}.culture-chapter{gap:5%}.culture-chapter h2{font-size:56px}.meaning-grid{gap:7%}.services-opening{gap:30px 7%}.services-opening h1{font-size:60px}.service-identity h2{font-size:30px}}
@media(max-width:700px){.menu-overview{padding:96px 24px 28px;display:flex;flex-direction:column}.menu-items{width:auto;margin:0}.menu-side{position:static;width:auto;margin-top:28px}.menu-small-links{gap:5px;margin-bottom:24px}.menu-small-links a,.menu-overview .language{font-size:14px}.menu-feature{position:static;width:auto;min-height:0;margin-top:auto;padding:14px;grid-template-columns:76px 1fr;gap:14px}.menu-feature img{width:76px;height:76px}.menu-feature strong{font-size:16px}.menu-feature small{display:none}.menu-feature-link{margin-top:5px}.menu-feature em{font-size:14px}.journal-opening p{margin-left:15%}.journal-row{grid-template-columns:34px 1fr;gap:22px}.journal-row em{grid-column:2;padding-top:0}}
@media(max-width:600px){body.logo-scroll-visible:not(.menu-is-open):not(.menu-is-closing):not(.menu-logo-tracking)>.site-header .opening-word{top:14px;left:24px}.perspective-hero{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.perspective-hero-lines{gap:8px;margin-bottom:24px}.perspective-hero-copy p{font-size:14px}.perspective-cta{font-size:14px;min-height:48px}:root{--gutter:24px;--space:80px}h1{font-size:54px}h2{font-size:46px}p{font-size:15px}.opening{padding-left:24px;padding-right:24px}.opening-header{top:14px;left:24px;right:18px}.opening-menu{top:14px;right:18px}.opening-word{--menu-logo-shift:82px;font-size:26px}.opening-menu summary{width:44px}.menu-lines{width:30px}.opening-slogan{max-width:15ch}.opening-baseline{gap:18px}.menu-overview{padding:96px 24px 28px}.menu-items>a{font-size:32px}.menu-is-open .opening-word,.menu-is-closing .opening-word{top:14px;left:24px}.sequence-frame{width:42vw}.scatter-0{width:min(31.5svh,69.6vw,331px);height:min(42svh,92.8vw,442px)}.scatter-2,.scatter-4,.scatter-6,.scatter-7{width:48vw}.scatter-3{right:5%}.perspective-intro{padding-top:95px;padding-bottom:85px}.principle{font-size:clamp(38px,9.5vw,56px);max-width:16ch;line-height:1.05}.principles{gap:25px}.principle-1{margin-left:0}.principle-2{margin-left:0}.perspective-note{margin-left:15%;margin-top:48px}.perspective-note p{font-size:14px}.editorial-link{font-size:10px;gap:22px}.direction-copy h2{font-size:clamp(30px,5.8svh,60px)}.direction-aside{margin-left:0}.direction-aside p{font-size:14px}.services-home{padding-top:0}.catalogue-heading{padding-bottom:36px;gap:24px}.catalogue-heading h2{font-size:48px;max-width:12ch}.catalogue-row{grid-template-columns:24px 1fr;gap:20px;padding:28px 0}.catalogue-row h3{font-size:31px;max-width:none}.catalogue-copy{grid-column:2;gap:16px}.catalogue-copy .client-voice{font-size:23px}.catalogue-copy p+p{font-size:13px}.catalogue-ending{text-align:left;margin-left:44px}.founder{display:block;padding-top:80px;padding-bottom:80px}.founder-heading{grid-template-columns:1fr;gap:12px;padding-bottom:28px}.founder-heading h2{font-size:46px}.founder-grid{grid-template-columns:1fr;gap:38px;padding-top:44px}.founder-grid blockquote{font-size:46px;max-width:15ch}.founder-story{margin-left:17%;padding-top:0}.founder-story>p{font-size:14px}.contact-section{grid-template-columns:1fr;gap:34px;padding-top:64px;padding-bottom:70px}.contact-copy h2{font-size:46px;max-width:none}.contact-intro{padding-top:0}.contact-intro>p{margin-top:14px;max-width:32ch}.contact-email{margin-top:18px}.contact-form{grid-template-columns:1fr;gap:22px}.contact-form .field:nth-child(3),.form-note,.form-submit{grid-column:1}.field input,.field textarea{height:50px;min-height:50px}.form-submit{justify-self:stretch}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div{grid-column:1/-1}.footer-wordmark{font-size:12vw;margin:48px 0 30px}.site-footer{padding-top:45px}.footer-bottom{font-size:9px}.return-header{padding:14px var(--gutter)}.return-header>a span{font-size:18px}.perspective-opening{padding-top:50px}.perspective-opening h1{font-size:54px;margin-top:25px;max-width:13ch}.system-intro{margin:40px 0 45px 15%}.perspective-opening figure{width:100%;margin:0}.perspective-opening figure img{aspect-ratio:1.12;object-position:center}.connections{margin:32px 0 40px}.connections li{font-size:34px;line-height:1.12}.connections li:nth-child(n){margin-left:0}.connections li+li{margin-top:30px}.system-closing{margin-left:15%}.culture-chapter{grid-template-columns:1fr;gap:45px;padding-top:70px;padding-bottom:70px}.culture-chapter h2{font-size:62px}.culture-chapter h2 span+span{margin-top:8px}.culture-chapter figure{width:82%;margin-left:auto}.culture-chapter figure img{aspect-ratio:1}.meaning-chapter h2{font-size:66px;margin:28px 0 40px}.meaning-grid{grid-template-columns:1fr;gap:38px}.meaning-grid>div{margin-left:15%}.closing-statement h2{font-size:50px}.closing-statement>div{gap:25px;margin-top:30px}.services-opening{grid-template-columns:1fr;gap:26px;padding-top:50px;padding-bottom:60px}.services-opening h1{font-size:55px;max-width:12ch}.services-opening>div{margin-left:15%}.services-opening .lead{font-size:27px}.services-opening>div>p:last-child{font-size:14px}.service-detail{grid-template-columns:1fr;gap:26px;padding:34px 0}.service-identity{gap:18px}.service-identity h2{font-size:32px}.category{font-size:9px;margin-top:15px}.service-reading{margin-left:42px}.service-quote{font-size:26px}.service-reading>p:not(.service-quote),.detail-content p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.sequence-frame{display:none}.opening-word{opacity:1}.scroll-cue span{opacity:1;transform:none}}
@media(max-width:800px){.services-heading{margin:0 24px;gap:24px}.services-heading h2{max-width:14ch;white-space:normal}.services-track{padding-left:24px;padding-right:24px}.service-card{width:min(72vw,340px)}.service-card img{height:min(43svh,450px)}}
@media(max-width:600px){.services-pin{padding-top:28px;padding-bottom:20px}.services-heading{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:22px}.services-heading h2{max-width:11ch}.services-all{position:static;margin-top:16px;font-size:13px}.services-viewport{padding-top:24px}.services-track{gap:18px}.service-card{width:min(76vw,320px)}.service-card img{height:min(40svh,390px)}.service-card h3{font-size:26px}.service-card p{font-size:13px}}
@media(max-width:1100px){.footer-row{grid-template-columns:minmax(150px,.8fr) repeat(3,1fr);gap:36px}}
@media(max-width:800px){.footer-row{grid-template-columns:1fr 1fr;gap:42px 36px}.footer-row-label{grid-column:1/-1}}
@media(max-width:600px){.site-footer{padding:0 24px 24px}.footer-row{grid-template-columns:1fr;gap:36px;padding:28px 0 68px}.footer-row-label{grid-column:auto}.footer-bottom{font-size:9px}.back-to-top{gap:14px;padding:9px 12px}}
@media(max-width:900px){.founder{grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:48px}.founder-profile blockquote{font-size:46px}.founder-intro{margin-left:0}.timeline-item{grid-template-columns:110px 1fr;gap:24px}}
@media(max-width:600px){.founder{display:grid;grid-template-columns:1fr;gap:48px;padding:80px 24px}.founder-portrait{position:relative;top:auto;width:78%;margin-left:auto}.founder-profile blockquote{font-size:46px;max-width:15ch}.founder-intro{margin-top:24px}.founder-timeline{margin-top:34px}.timeline-item{grid-template-columns:1fr;gap:12px}.timeline-meta span{display:inline;margin:0 0 0 10px}.founder-education{margin-top:32px}}
/* Shared editorial shell and refreshed internal pages. */
.site-header{color:var(--ink);pointer-events:none}.site-header>a,.site-header details{pointer-events:auto}.home .site-header,.services>.site-header{color:var(--white)}.menu-over-light .site-header .opening-word{color:var(--ink)}.menu-over-dark:not(.menu-is-open) .site-header .opening-word,.menu-over-dark .opening-menu:not([open]) summary{color:var(--white)}
.internal-mast{min-height:82svh;padding-top:clamp(140px,17svh,210px);padding-bottom:clamp(74px,9vw,130px)}.internal-mast-heading .section-label{margin-bottom:clamp(26px,3vw,42px)}.internal-mast h1{font-size:clamp(58px,7.2vw,110px);line-height:1.01;letter-spacing:-.035em}
.perspective-opening{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(24px,3vw,54px);background:var(--red);color:var(--ivory)}.perspective-opening .internal-mast-heading{grid-column:1/9}.perspective-opening h1{max-width:11ch;margin:0}.perspective-opening .system-intro{grid-column:9/13;align-self:end;margin:0 0 8px;max-width:40ch}.perspective-opening .system-intro p{font-family:var(--sans);font-size:14px;line-height:1.55}.perspective-opening figure{grid-column:5/13;width:auto;margin:clamp(70px,9vw,130px) 0 0}.perspective-opening figure img{aspect-ratio:1.55;object-fit:cover}.system-chapter{background:var(--white);padding-top:clamp(88px,11vw,170px)}.system-chapter .connections li{font-size:clamp(38px,5.2vw,78px);line-height:1.04}.system-closing p{font-family:var(--sans);font-size:14px;line-height:1.55}.meaning-chapter,.closing-statement{background:var(--ivory)}
.services-opening{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(50px,9vw,160px);align-items:end;background:var(--ivory)}.services-opening .internal-mast-heading{min-width:0}.services-opening h1{max-width:11ch;margin:0}.services-opening-copy{align-self:end;margin:0 0 10px}.services-opening .lead{font-size:clamp(30px,3vw,46px);margin-bottom:28px}.services-opening-copy>p:last-child{font-family:var(--sans);font-size:14px;line-height:1.55}.services-detail{padding-top:clamp(40px,5vw,72px);padding-bottom:clamp(90px,10vw,160px);background:var(--white)}.service-detail{grid-template-columns:minmax(150px,.5fr) minmax(260px,.8fr) minmax(300px,1fr);gap:clamp(30px,5vw,90px);align-items:start;padding:clamp(52px,6vw,88px) 0}.service-visual img{width:100%;aspect-ratio:4/5;object-fit:cover}.service-identity{grid-template-columns:28px 1fr;gap:18px}.service-identity h2{font-size:clamp(30px,3vw,48px);line-height:1.02}.service-reading{padding-top:2px}.journal-opening{min-height:34svh;display:grid;place-items:center;padding-top:clamp(110px,14svh,170px);padding-bottom:clamp(72px,9svh,120px);background:var(--ivory);color:var(--ink)}.journal-opening-copy{display:flex;flex-direction:column;align-items:center;text-align:center;width:min(100%,1800px)}.journal-opening-copy .section-label{margin-bottom:clamp(22px,3vw,38px)}.journal-opening-copy h1{margin:0;font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:28ch}.journal-list{padding-top:0;padding-bottom:clamp(100px,12vw,190px);background:var(--ivory)}.journal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,330px));justify-content:center;gap:clamp(28px,3vw,46px)}.journal-card{display:block;color:inherit;text-decoration:none}.journal-image{display:block;overflow:hidden;aspect-ratio:4/5;background:#d7cfc2}.journal-image img{width:100%;height:100%;object-fit:cover;transition:filter .6s ease}.journal-card:hover .journal-image img{filter:brightness(.72)}.journal-meta{display:block;margin-top:12px;font-family:var(--sans);font-size:11px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase}.journal-meta,.journal-card h2,.journal-card>p{transition:opacity .6s ease}.journal-card:hover .journal-meta,.journal-card:hover h2,.journal-card:hover>p{opacity:.5}.journal-card h2{margin-top:20px;font-family:var(--serif);font-size:clamp(26px,2.1vw,36px);line-height:1.02;letter-spacing:-.02em}.journal-card>p{width:100%;margin-top:14px;font-family:var(--sans);font-size:14px;line-height:1.55;max-width:none}
@media(max-width:1000px){.service-detail{grid-template-columns:minmax(130px,.42fr) minmax(0,1.58fr)}.service-reading{grid-column:2}.service-visual{grid-row:1/3}.perspective-opening .internal-mast-heading{grid-column:1/10}.perspective-opening .system-intro{grid-column:8/13}.perspective-opening figure{grid-column:3/13}}
@media(max-width:700px){.internal-mast{min-height:auto;padding-top:122px;padding-bottom:74px}.internal-mast h1{font-size:54px}.perspective-opening{display:block}.perspective-opening .system-intro{margin:42px 0 0 15%}.perspective-opening figure{margin:62px -24px -74px 15%}.perspective-opening figure img{aspect-ratio:1.08}.system-chapter{padding-top:132px}.services-opening{display:block}.services-opening-copy{margin:44px 0 0 15%}.services-opening .lead{font-size:28px}.service-detail{grid-template-columns:84px 1fr;gap:26px 22px}.service-visual{grid-row:auto}.service-identity{grid-template-columns:22px 1fr}.service-reading{grid-column:1/-1;margin-left:0;padding-left:106px}.journal-opening{min-height:38svh}.journal-grid{grid-template-columns:minmax(0,330px);justify-content:center}}
@media(max-width:1000px) and (min-width:701px){.journal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,330px));justify-content:center}}
@media(max-width:480px){.service-detail{grid-template-columns:72px 1fr}.service-reading{padding-left:94px}.service-identity h2{font-size:29px}}
/* Perspective follows the homepage's direction-led editorial rhythm. */
.perspective-ivory-hero{min-height:58svh;display:grid;place-items:center;padding:clamp(126px,14svh,190px) var(--gutter) clamp(82px,10svh,140px);background:var(--ivory);color:var(--ink)}.perspective-image-copy{display:flex;flex-direction:column;align-items:center;text-align:center;width:min(100%,1800px)}.perspective-image-copy h1{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:36ch}.perspective-image-copy p{margin-top:clamp(24px,3vw,42px);max-width:60ch;font-family:var(--sans);font-size:14px;line-height:1.55}
.perspective-connections{min-height:76svh;display:flex;flex-direction:column;justify-content:center;padding-top:clamp(80px,8vw,120px);padding-bottom:clamp(80px,8vw,120px);background:linear-gradient(90deg,rgba(14,9,7,.72),rgba(14,9,7,.42)),url('/assets/wine-gallery-1000.webp') center 46%/cover no-repeat;color:var(--ivory)}.perspective-connections-intro{margin-bottom:clamp(14px,1.6vw,24px);font-family:var(--sans);font-size:14px;line-height:1.55;color:rgba(246,241,231,.9)}.perspective-connection-lines{width:100%}.perspective-connection-lines h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:none;text-align:left}.perspective-connection-lines h2 span{display:block}.perspective-connection-lines h2 span+span{margin-top:clamp(6px,1vw,14px)}
.perspective-meaning{min-height:auto;display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:clamp(60px,10vw,180px);align-items:stretch;padding:clamp(90px,11vw,170px) var(--gutter);background:var(--ivory);color:var(--ink)}.perspective-meaning figure{position:relative;width:100%;min-height:0}.perspective-meaning figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.perspective-meaning-copy h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:none;white-space:nowrap;margin-bottom:clamp(30px,4vw,58px)}.perspective-meaning-copy p{max-width:58ch;font-family:var(--sans);font-size:14px;line-height:1.55}.perspective-meaning-copy p+p{margin-top:1.25em}
.perspective-common-direction{min-height:52svh;display:grid;place-items:center;padding:clamp(66px,7vw,110px) var(--gutter);background:var(--white);color:var(--ink);text-align:center}.perspective-common-direction>div{display:flex;flex-direction:column;align-items:center}.perspective-common-direction h2{max-width:34ch;font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em}.perspective-common-direction p{max-width:62ch;margin-top:clamp(24px,3vw,40px);font-family:var(--sans);font-size:14px;line-height:1.55}
.perspective-principles{padding-top:clamp(90px,10vw,150px);padding-bottom:clamp(100px,12vw,190px);background:var(--ivory);color:var(--ink)}.perspective-principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(54px,6vw,104px)}.perspective-principle-card figure{width:100%;aspect-ratio:4/5;overflow:hidden}.perspective-principle-card figure img{width:100%;height:100%;object-fit:cover}.perspective-principle-copy{padding-top:clamp(24px,2.5vw,38px)}.perspective-principle-copy h2{min-height:2.05em;font-size:clamp(28px,2.55vw,40px);line-height:1.02;letter-spacing:-.025em}.perspective-principle-copy p{margin-top:clamp(20px,2vw,30px);font-family:var(--sans);font-size:14px;line-height:1.55}.perspective-principle-copy p+p{margin-top:1.25em}.perspective-meaning-centered{min-height:68svh;display:grid;place-items:center;padding:clamp(90px,10vw,150px) var(--gutter);background:var(--white);color:var(--ink);text-align:center}.perspective-meaning-centered>div{display:flex;flex-direction:column;align-items:center}.perspective-meaning-centered h2{max-width:22ch;font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em}.perspective-meaning-centered p{max-width:62ch;margin-top:clamp(22px,2.5vw,34px);font-family:var(--sans);font-size:14px;line-height:1.55}
@media(max-width:900px){.perspective-principles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:72px 44px}.perspective-principle-card:last-child{grid-column:1/-1;width:calc((100% - 44px)/2);justify-self:center}}
@media(max-width:600px){.perspective-principles{padding:78px 24px 104px}.perspective-principles-grid{grid-template-columns:1fr;gap:76px}.perspective-principle-card:last-child{grid-column:auto;width:100%}.perspective-principle-copy{padding-top:24px}.perspective-principle-copy h2{min-height:0;font-size:34px}.perspective-meaning-centered{min-height:62svh;padding:88px 24px}.perspective-meaning-centered h2{font-size:46px}.perspective-meaning-centered p{font-size:14px}}
.perspective-culture{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:clamp(60px,10vw,180px);align-items:center;padding:clamp(90px,11vw,170px) var(--gutter);background:var(--ivory);color:var(--ink)}.perspective-culture figure{width:100%}.perspective-culture figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.perspective-culture-lines{margin-bottom:clamp(30px,4vw,58px)}.perspective-culture-lines h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em}.perspective-culture-copy>p{max-width:58ch;font-family:var(--sans);font-size:14px;line-height:1.55}
.perspective-product{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:clamp(60px,10vw,180px);align-items:center;padding:clamp(90px,11vw,170px) var(--gutter);background:var(--ivory);color:var(--ink)}.perspective-product figure{width:100%}.perspective-product figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.perspective-product-copy h2{max-width:14ch;margin-bottom:clamp(32px,4vw,58px);font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em}.perspective-product-copy p{max-width:60ch;font-family:var(--sans);font-size:14px;line-height:1.55}.perspective-product-copy p+p{margin-top:1.25em}
.perspective-personality{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(60px,10vw,180px);align-items:center;padding:clamp(90px,11vw,170px) var(--gutter);background:var(--ivory);color:var(--ink)}.perspective-personality figure{width:100%}.perspective-personality figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.perspective-personality-copy h2{max-width:14ch;margin-bottom:clamp(30px,4vw,58px);font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em}.perspective-personality-copy p{max-width:58ch;font-family:var(--sans);font-size:14px;line-height:1.55}.perspective-personality-copy p+p{margin-top:1.25em}
@media(max-width:800px){.perspective-image-copy{align-items:flex-start;text-align:left}.perspective-image-copy h1{max-width:14ch}.perspective-image-copy p{max-width:48ch}.perspective-culture{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:48px}.perspective-product{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:48px}.perspective-personality{grid-template-columns:1fr 1fr;gap:48px}.perspective-meaning{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:48px}.perspective-meaning-copy h2{white-space:normal}}
@media(max-width:600px){.perspective-ivory-hero{min-height:62svh;padding:120px 24px 78px}.perspective-image-copy{width:auto;margin:0}.perspective-image-copy h1,.perspective-connection-lines h2,.perspective-common-direction h2,.perspective-product-copy h2,.perspective-meaning-copy h2{font-size:46px}.perspective-connections{min-height:82svh;padding-top:82px;padding-bottom:82px;background-position:58% center}.perspective-connections-intro{margin-bottom:18px}.perspective-common-direction{min-height:auto;padding:72px 24px}.perspective-culture{grid-template-columns:1fr;gap:48px;padding:80px 24px}.perspective-culture figure{width:82%}.perspective-culture-copy{margin-left:15%}.perspective-culture-lines{margin-bottom:28px}.perspective-culture-lines h2{font-size:46px}.perspective-product{grid-template-columns:1fr;gap:48px;padding:80px 24px}.perspective-product figure{width:82%}.perspective-product-copy{margin-left:15%}.perspective-product-copy h2{margin-bottom:28px}.perspective-personality{grid-template-columns:1fr;gap:48px;padding:80px 24px}.perspective-personality figure{width:82%;margin-left:auto}.perspective-personality-copy{margin-right:15%}.perspective-personality-copy h2{margin-bottom:28px;font-size:46px}.perspective-meaning{min-height:auto;grid-template-columns:1fr;gap:48px;padding:80px 24px}.perspective-meaning figure{position:relative;width:82%;min-height:auto;margin-left:auto}.perspective-meaning figure img{position:static;height:auto;aspect-ratio:4/5}.perspective-meaning-copy{margin-left:15%}.perspective-meaning-copy h2{white-space:normal;margin-bottom:28px}}
/* Services uses the same image-led opening and an always-visible editorial catalogue. */
.services-image-hero{position:relative;height:100svh;min-height:620px;display:grid;place-items:center;overflow:hidden;background:#17100c;color:var(--ivory);isolation:isolate}.services-image-hero:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.58))}.services-image-hero>img{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover}.services-hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;width:min(100% - (var(--gutter)*2),1100px);padding-top:36px}.services-hero-copy h1{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:22ch}.services-hero-copy p{margin-top:clamp(24px,3vw,42px);max-width:66ch;font-family:var(--sans);font-size:14px;line-height:1.55;color:rgba(246,241,231,.92)}.services-discover{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:clamp(28px,4vw,52px);padding:12px 24px;border:1px solid currentColor;color:var(--ivory);font-family:var(--sans);font-size:14px;line-height:1;text-decoration:none;transition:opacity .18s ease}.services-discover:hover{opacity:.48}
.services-catalogue{padding-top:clamp(76px,8vw,128px);padding-bottom:clamp(100px,12vw,190px);background:var(--ivory);color:var(--ink)}.services-catalogue-heading{padding-bottom:clamp(22px,3.5svh,48px);border-bottom:1px solid var(--ink)}.services-catalogue-heading h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:none}.services-editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(40px,5vw,88px)}.service-grid-card{display:grid;grid-template-columns:minmax(150px,.78fr) minmax(0,1.22fr);gap:clamp(24px,3vw,48px);align-items:start;padding:clamp(50px,5vw,78px) 0;border-bottom:1px solid var(--rule);scroll-margin-top:24px}.service-grid-card figure{width:100%;aspect-ratio:4/5;overflow:hidden}.service-grid-card figure img{display:block;width:100%;height:100%;object-fit:cover}.service-grid-copy{display:flex;flex-direction:column;align-items:flex-start}.service-grid-copy h3{font-size:clamp(26px,2.1vw,36px);line-height:1.02;letter-spacing:-.02em}.service-grid-copy blockquote{margin-top:clamp(22px,2.4vw,36px);font-family:var(--serif);font-size:clamp(18px,1.45vw,23px);font-style:italic;line-height:1.22}.service-quote-word{display:inline-block;opacity:0;transform:translateY(.28em);transition:opacity .38s ease var(--word-delay),transform .44s cubic-bezier(.22,.7,.25,1) var(--word-delay)}.service-grid-copy blockquote.is-visible .service-quote-word{opacity:1;transform:translateY(0)}.service-summary{margin-top:24px;font-family:var(--sans);line-height:1.55}.service-summary p{font-size:14px;line-height:1.55}.service-summary p+p{margin-top:14px}
@media(max-width:1100px){.services-editorial-grid{gap:0 36px}.service-grid-card{grid-template-columns:minmax(120px,.68fr) minmax(0,1.32fr);gap:24px}.service-grid-copy h3{font-size:26px}.service-grid-copy blockquote{font-size:19px}.service-summary p{font-size:14px}}
@media(max-width:800px){.services-hero-copy{align-items:flex-start;text-align:left}.services-editorial-grid{grid-template-columns:1fr}.service-grid-card{grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);gap:38px}.service-grid-copy h3{font-size:30px}.service-grid-copy blockquote{font-size:21px}.service-summary p{font-size:14px}}
@media(max-width:600px){.services-image-hero{min-height:620px}.services-hero-copy{width:auto;margin:0 24px;padding-top:20px}.services-hero-copy h1{font-size:46px}.services-catalogue{padding:70px 24px 100px}.services-catalogue-heading h2{font-size:46px;max-width:10ch}.service-grid-card{grid-template-columns:112px 1fr;gap:24px;padding:46px 0}.service-grid-copy h3{font-size:27px}.service-grid-copy blockquote{margin-top:24px;font-size:18px}.service-summary p{font-size:14px}}

/* Homepage Journal preview extends the Journal's editorial card language. */
.journal-home{padding-top:clamp(34px,4.5svh,64px);padding-bottom:clamp(48px,6svh,76px);background:var(--ivory);color:var(--ink);scroll-margin-top:0;overflow:hidden}.journal-home-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;padding-bottom:clamp(22px,3.5svh,48px);border-bottom:1px solid var(--ink)}.journal-home-heading h2{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em}.journal-home-heading a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid currentColor;font-family:var(--sans);font-size:14px;line-height:1;color:inherit;text-decoration:none;transition:opacity .18s ease}.journal-home-heading a:hover{opacity:.48}.journal-home-grid{display:flex;align-items:flex-start;gap:clamp(18px,2vw,34px);width:max-content;padding-top:clamp(30px,5.5svh,72px)}.journal-home-grid>article{width:clamp(260px,21.5vw,330px);flex:0 0 auto}.journal-home .journal-card h2{font-size:clamp(24px,1.8vw,30px);line-height:1.06}.journal-home .journal-card>p{font-size:14px;line-height:1.5}
@media(max-width:600px){.journal-home{padding:28px 24px 100px}.journal-home-heading{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:22px}.journal-home-heading h2{font-size:46px}.journal-home-heading a{margin-top:16px;font-size:13px}.journal-home-grid{padding-top:24px}.journal-home-grid>article{width:min(76vw,320px)}}

/* Article detail follows the Journal's centered editorial treatment. */
.article-hero{min-height:42svh;display:grid;place-items:center;padding-top:clamp(110px,14svh,170px);padding-bottom:clamp(72px,9svh,120px);background:var(--ivory);color:var(--ink);text-align:center}.article-hero h1{font-size:clamp(30px,5.8svh,60px);line-height:1.02;letter-spacing:-.025em;max-width:24ch}.article-reading{position:relative;display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,760px) minmax(130px,1fr);gap:clamp(30px,4vw,70px);align-items:start;padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(100px,12vw,190px);background:var(--white);color:var(--ink)}.article-back{position:sticky;top:96px;z-index:4;justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid currentColor;font-family:var(--sans);font-size:14px;line-height:1;text-decoration:none;background:var(--white);transition:opacity .3s ease}.article-back:hover{opacity:.48}.article-reading-content{grid-column:2;min-width:0}.article-reading-content figure{width:100%}.article-reading-content figure img{width:100%;height:auto}.article-reading .article-body{width:min(680px,100%);margin:clamp(64px,8vw,110px) auto 0}.article-reading .article-body>*+*{margin-top:1.25em}.article-reading .article-body p{font-family:var(--sans);font-size:17px;line-height:1.78;max-width:65ch}.article-reading .article-body .article-pullquote{width:100%;max-width:none;margin:28px 0;padding:20px 24px;border-left:2px solid var(--red);background:var(--ivory);color:var(--ink);font:400 18px/1.6 var(--sans);letter-spacing:0}
.article .article-reading .article-body{margin-top:40px}
.article .article-body>*+*{margin-top:16px}
.article .article-body p{font-weight:400;font-style:normal}
@media(max-width:700px){.article .article-reading .article-body{margin-top:28px}.article-reading .article-body .article-pullquote{padding:18px 20px;margin:24px 0;font-size:17px}}
@media(max-width:900px){.article-reading{grid-template-columns:1fr;gap:30px}.article-back{grid-column:1;top:88px}.article-reading-content{grid-column:1;width:min(760px,100%);margin:0 auto}}
@media(max-width:600px){.article-hero{min-height:38svh}.article-reading{padding-top:28px}.article-reading .article-body{margin-top:54px}.article-reading .article-body p{font-size:16px;line-height:1.72}}
@media print{.opening{height:auto;min-height:0;padding:50px 0}.opening-sequence,.opening-baseline{display:none}.services-home{height:auto!important}.services-pin{position:relative;height:auto}.services-track{display:grid;grid-template-columns:repeat(2,1fr);width:auto;transform:none!important}.service-card{width:auto}.section{padding:35px 0}.site-footer{background:none;color:var(--ink)}details .detail-content{display:block}body{background:white}}

/* Focused homepage: a quiet opening, native service reel, then the studio's perspective. */
.home .opening-word{font-size:clamp(36px,4.1vw,62px)}
.home-opening{min-height:74svh;display:flex;flex-direction:column;align-items:flex-start;padding:140px var(--gutter) 60px;background:var(--red);color:var(--white)}
.hero-dictionary-entry{margin:auto 0}
.home-opening h1{font-size:clamp(64px,8vw,96px);line-height:1;letter-spacing:-.025em;text-align:left;max-width:none}
.hero-etymology{font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.4;margin-top:16px;max-width:none}
.hero-definition{font-size:14px;line-height:1.65;letter-spacing:.01em;max-width:65ch;margin-top:64px}
.home-direction{background:var(--white);text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:clamp(76px,9vw,140px);padding-bottom:clamp(76px,9vw,140px)}
.home-direction h2{font-size:clamp(30px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em;max-width:39ch}
.home-direction p{font-size:14px;margin-top:28px;max-width:60ch}
.approach-journal{margin-top:30px}.approach-journal .outline-cta{margin-top:20px;display:inline-flex;padding:12px 24px;border:1px solid currentColor;min-height:48px;align-items:center;font-size:14px;text-decoration:none;transition:opacity .6s ease}.approach-journal .outline-cta:hover{opacity:.48}
.approach-gallery-wrap{min-width:0}.approach-gallery{display:block;position:relative;width:100%;height:clamp(350px,42vw,590px);padding:0;background:transparent;border:0;color:inherit;cursor:pointer}.approach-gallery-images{display:block;position:absolute;inset:0;overflow:hidden}.approach-frame{position:absolute;opacity:0;transform:translateY(12px);transition:opacity .28s ease,transform .5s ease;pointer-events:none}.approach-frame.is-current{opacity:1;transform:translateY(0)}.approach-frame img{display:block;width:100%;height:auto;max-height:510px;object-fit:contain}.gallery-position-0{width:70%;left:17%;top:8%}.gallery-position-0 img{aspect-ratio:3/4;object-fit:cover}.gallery-position-1{width:75%;left:0;top:24%}.gallery-position-2{width:68%;right:0;top:4%}.gallery-position-3{width:73%;left:5%;bottom:8%}.gallery-position-4{width:64%;right:4%;top:24%}.approach-gallery-count{display:block;text-align:center;font-size:14px;margin-top:8px;font-variant-numeric:tabular-nums}
.home-founder{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(300px,390px) minmax(0,590px);justify-content:center;gap:clamp(44px,6vw,96px);align-items:center;background:var(--white);padding-top:44px;padding-bottom:clamp(80px,9vw,140px)}
.home-founder figure{position:relative;margin:0}.home-founder .founder-copy{position:relative}.home-founder figcaption{position:absolute;top:100%;left:0;margin-top:16px}.home-founder figcaption span{display:block;font-family:var(--serif);font-size:24px;line-height:1.15}.home-founder figcaption small{display:block;font-size:12px;line-height:1.5;margin-top:4px}.founder-geography{position:absolute;inset:0;z-index:-1;pointer-events:none}.home-founder .country-shadow{position:absolute;width:auto;height:auto;aspect-ratio:auto;object-fit:contain;opacity:.075}.home-founder .country-spain{width:270px;left:-55px;top:15%}.home-founder .country-argentina{height:380px;right:-25px;top:8%}.home-founder .country-singapore{width:260px;left:45%;bottom:-12px}.home-founder img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.home-founder h2{font-size:clamp(30px,3vw,44px);line-height:1.1;letter-spacing:-.02em;margin-bottom:24px}.home-founder p{font-size:14px;line-height:1.6}.home-founder p+p{margin-top:12px}.home-founder .founder-signature{margin-top:26px}.founder-schools{color:var(--muted)}
.menu-is-open .menu-items>a:nth-child(5)>span{transition-delay:.7s}
.menu-is-open .menu-items>a:nth-child(6)>span{transition-delay:.76s}
@media(max-width:700px){.menu-overview{padding-top:164px}.menu-items{order:0}.menu-side{order:1}.menu-feature{order:2}}
@media(max-width:700px){.home .opening-word{font-size:36px}.home-opening{min-height:66svh;padding-top:120px;padding-bottom:42px}.home-opening h1{font-size:clamp(56px,15vw,76px);max-width:none}.hero-etymology{font-size:18px;max-width:30ch}.hero-definition{margin-top:48px}.home-direction{padding-top:68px;padding-bottom:68px}.home-direction h2{font-size:32px}.home-services{padding-top:42px;padding-bottom:48px}.home-services-heading{gap:18px;align-items:end;padding-bottom:22px}.home-services-heading h2{max-width:12ch;font-size:34px}.reel-controls{gap:6px}.reel-controls button{width:40px;height:44px}.home-services-viewport{padding-top:28px}.home-service-card{width:min(78vw,370px)}.home-service-card h3{font-size:27px}.home-service-card blockquote{font-size:20px}.approach-layout{grid-template-columns:1fr;gap:32px}.approach-copy h2{font-size:34px}.approach-introduction{margin-top:32px}.approach-gallery{height:min(110vw,520px)}.approach-gallery-wrap{max-width:440px;width:100%;margin:auto}.approach-frame img{max-height:440px}.approach-depth{margin-top:38px}.approach-chapters{grid-template-columns:1fr;gap:32px}.home-founder{grid-template-columns:1fr;gap:28px;padding-top:32px}.home-founder figure{width:min(56vw,240px)}.home-founder h2{font-size:34px}.home-founder p{max-width:58ch}}
@media(prefers-reduced-motion:reduce){.approach-frame{transition:none}.home-services-viewport{scroll-behavior:auto}}
@media print{.home-opening{min-height:0;background:white;color:black}.home-services-viewport{overflow:visible}.home-services-track{display:grid;grid-template-columns:1fr 1fr;width:auto;padding:0}.home-service-card{width:auto}.reel-controls{display:none}.approach-gallery{height:400px}}

/* Open editorial sections: visible explanations and a catalogue without scroll capture. */
html{scrollbar-gutter:stable}
.home-direction{display:block;text-align:left}
.direction-explanation{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:start}
.home-direction .direction-explanation h2{max-width:26ch}
.home-direction .direction-explanation-copy p{font-size:14px;line-height:1.65;margin-top:0;max-width:60ch}
.home-direction .direction-explanation-copy p+p{margin-top:20px}
.direction-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(32px,5vw,80px);margin-top:64px}
.direction-roles article{position:relative;padding-top:28px}
.direction-roles h3{font-size:27px;line-height:1.12;max-width:20ch}
.home-direction .direction-roles article:last-child h3{max-width:none;white-space:nowrap;font-size:clamp(18px,2.5vw,27px)}
@media(max-width:700px){.home-direction .direction-roles article:last-child h3{font-size:clamp(23px,6.6vw,26px)}}
.direction-roles p{font-size:14px;line-height:1.65;margin-top:18px;max-width:60ch}
.home-services{padding:64px var(--gutter) 80px;background:var(--white)}
.home-services-heading{position:relative;margin:0;padding-bottom:26px;border-bottom:0}
.home-services-heading h2{font-size:clamp(30px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em}
.service-followup-intro{max-width:65ch;margin-top:20px;font:400 15px/1.65 var(--sans)}
.home-services-heading.home-services-followup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:clamp(32px,6vw,88px)}
.home-services-heading.home-services-followup>.service-followup-intro{margin-top:0;max-width:58ch}
@media(min-width:1101px){
 .home-services-heading.home-services-followup{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);column-gap:40px}
 .home-services-heading.home-services-followup>.service-followup-intro{justify-self:end;width:min(100%,84ch);max-width:none;text-align:left;text-wrap:wrap}
}
@media(max-width:700px){
 .home-services-heading.home-services-followup{grid-template-columns:1fr;padding-bottom:0}
 .home-services-heading.home-services-followup:after{display:none}
 .home-services-heading.home-services-followup>h2{padding-bottom:22px;border-bottom:1px solid var(--ink)}
 .home-services-heading.home-services-followup>.service-followup-intro{margin-top:20px}
}
.home-services-intro{font-size:14px;line-height:1.65;margin-top:28px;max-width:85ch}
.home-services-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px}
.home-service-item{position:relative;isolation:isolate;display:flex;min-width:0;width:100%;min-height:320px;aspect-ratio:auto;scroll-margin-top:calc(var(--home-header-height) + 24px);color:var(--white);background:var(--ink)}
.home-service-item figure{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;z-index:-2}
.home-service-item figure img{width:100%;height:100%;object-fit:cover}
.home-service-item:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.58) 40%,rgba(0,0,0,.2) 72%,rgba(0,0,0,.52) 100%)}
.service-item-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;width:100%;padding:32px}.service-item-copy h3{font-size:27px;line-height:1.12;letter-spacing:-.02em}
.service-item-question{font-family:var(--sans);font-size:14px;line-height:1.55;font-style:italic;color:var(--white);margin-top:16px;max-width:48ch}
.service-item-copy>p{font-size:14px;line-height:1.65;margin-top:16px;max-width:48ch}
.service-scope{display:flex;flex-direction:column;align-items:flex-end;margin-top:auto;border:0;padding:32px 0 0;width:100%}
.service-scope>summary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid currentColor;background:transparent;list-style:none;font-size:14px;line-height:1.5;transition:opacity .6s ease}
.service-scope>summary::-webkit-details-marker{display:none}
.service-scope>summary svg{width:22px;height:22px}
.service-scope>summary:hover{opacity:.48}
.service-readable{width:100%;margin-top:24px;padding:24px;background:var(--ivory);color:var(--ink)}
.service-readable blockquote{font-family:var(--sans);font-size:14px;font-style:italic;line-height:1.55;color:var(--muted);margin-bottom:26px}
.service-readable section+section{margin-top:24px}
.service-readable h4{font:500 14px/1.4 var(--sans);margin:0 0 8px}
.service-readable p{font-size:14px;line-height:1.65}
body.service-is-open{overflow:hidden}
.service-reader{width:min(1120px,calc(100% - 64px));max-width:none;max-height:calc(100svh - 64px);padding:0;border:0;margin:auto;overflow:auto;background:var(--ivory);color:var(--ink);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--muted) var(--ivory)}
.service-reader::backdrop{background:rgba(25,23,21,.68)}
.service-reader[open]{animation:reader-enter .55s cubic-bezier(.16,1,.3,1) both}
.service-reader[open]::backdrop{animation:reader-backdrop-enter .3s ease both}
.service-reader[open] .service-reader-layout{animation:reader-content-enter .4s cubic-bezier(.16,1,.3,1) .12s both}
.service-reader.is-closing{pointer-events:none;animation:reader-exit .24s cubic-bezier(.4,0,1,1) .12s both}
.service-reader.is-closing::backdrop{animation:reader-backdrop-exit .3s ease .06s both}
.service-reader.is-closing .service-reader-layout,.service-reader.is-closing .service-reader-navigation{animation:reader-content-exit .16s ease both}
.service-reader-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:8px 20px 8px 40px;background:var(--ivory);border-bottom:1px solid var(--rule)}
.service-reader-return{min-height:44px;padding:8px 0;border:0;background:none;color:var(--ink);font:14px/1.5 var(--sans);transition:opacity .18s ease}
.service-reader-close{display:grid;place-items:center;width:44px;height:44px;margin:0;border:0;background:transparent;color:var(--ink);transition:opacity .18s ease}
.service-reader-close:hover,.service-reader-return:hover{opacity:.48}.service-reader-close svg{width:24px;height:24px}
.service-reader-layout{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:48px;padding:40px}
.service-reader-image{align-self:start;position:sticky;top:100px;margin:0}
.service-reader-image img{width:100%;aspect-ratio:4/5;object-fit:cover}
.service-reader-overview{padding-bottom:28px}
.service-reader-copy h2{font-size:40px;line-height:1.08;letter-spacing:-.025em;max-width:21ch;outline:none}
.service-reader-question{font-family:var(--sans);font-size:14px;line-height:1.55;font-style:italic;color:var(--muted);margin:20px 0}
.service-reader-intro{font-size:14px;line-height:1.65;max-width:65ch}
.service-reader-body section{display:grid;grid-template-columns:minmax(108px,.48fr) minmax(0,1fr);gap:24px;padding:22px 0;border-top:1px solid var(--rule)}
.service-reader-body h3{font:400 21px/1.12 var(--serif);margin:0}
.service-reader-body p{font-size:14px;line-height:1.65;max-width:65ch}
.service-reader-enquiry{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:12px;padding:12px 24px;border:1px solid currentColor;background:transparent;color:var(--ink);font:14px/1.5 var(--sans);transition:opacity .6s ease}.service-reader-enquiry:hover{opacity:.48}
.service-reader-navigation{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px;align-items:center;padding:12px 40px;border-top:1px solid var(--rule);background:var(--ivory)}
.service-reader-navigation button{display:flex;align-items:center;gap:16px;min-height:56px;padding:4px 0;border:0;background:none;color:var(--ink);font:12px/1.5 var(--sans);text-align:left;transition:opacity .18s ease}
.service-reader-navigation button:last-child{justify-content:flex-end;text-align:right}
.service-reader-navigation strong{display:block;font:400 20px/1.15 var(--serif);margin-top:4px}
.service-reader-navigation button svg{width:24px;height:24px;flex-shrink:0;transition:transform .18s ease}
.service-reader-navigation button:hover{opacity:.48}.service-reader-navigation button:hover svg{transform:translateX(-3px)}.service-reader-navigation button:last-child:hover svg{transform:translateX(3px)}
.service-reader-position{font:12px/1.5 var(--sans);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
@keyframes reader-enter{from{opacity:0;clip-path:inset(0 0 0 10%);transform:translateX(48px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes reader-exit{to{opacity:0;transform:translateX(32px)}}
@keyframes reader-content-enter{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@keyframes reader-content-exit{to{opacity:0;transform:translateX(8px)}}
@keyframes reader-backdrop-enter{from{opacity:0}to{opacity:1}}
@keyframes reader-backdrop-exit{to{opacity:0}}
.home-approach{padding:0;background:var(--white)}
.approach-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(32px,5vw,90px);align-items:center;padding-top:90px;padding-bottom:54px;background:var(--red);color:var(--white)}
.approach-layout ::selection{background:var(--white);color:var(--red)}
.approach-copy h2{font-size:clamp(34px,3.8vw,56px);max-width:18ch}
.approach-copy>p{font-size:14px;line-height:1.65;margin-top:26px;max-width:62ch}
.approach-copy>p+p{margin-top:20px}
.approach-principles p+p{margin-top:18px}
.approach-system{position:relative;isolation:isolate;padding:32px var(--gutter);background:#201710;color:white;overflow:hidden}
.approach-system>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}
.approach-system:after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(17,11,8,.5)}
.approach-system-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:16px clamp(32px,5vw,80px);max-width:none}
.approach-system-copy h3{font-size:clamp(34px,3.8vw,56px);line-height:1.08;max-width:28ch;margin-bottom:0}
.approach-system-copy p{font-size:14px;line-height:1.65;max-width:70ch}
.approach-system-copy>h3{grid-column:1/-1}
.approach-system-note{grid-column:1/-1;max-width:90ch}
.approach-system-note p{max-width:none;margin:0}
.approach-system-note p+p{margin-top:16px}
/* A single wave runs through every numbered point. */
.project-flow{grid-column:1/-1;position:relative;isolation:isolate;width:100%;height:320px;margin:8px 0 0;color:var(--ivory)}
.process-wave{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;color:rgba(246,241,231,.8)}
.process-wave-mobile{display:none}
.process-connection{vector-effect:non-scaling-stroke}
.process-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0;padding:0;height:100%}
.process-step{position:relative;min-width:0;padding:212px 16px 0;text-align:center}
.process-step:nth-child(even){padding-top:82px}
.process-point{position:absolute;top:160px;left:calc(50% - 20px);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--ivory);color:var(--red);font-family:var(--sans);font-size:12px;line-height:1;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.process-step:nth-child(even) .process-point{top:30px}
.process-step h4{margin:0;font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.12;color:var(--white)}
.approach-system-copy .process-step p{font-size:14px;line-height:1.55;max-width:22ch;margin:10px auto 0;color:var(--white)}
.approach-culture{padding:80px var(--gutter);background:var(--ivory)}
.approach-culture>h3{font-size:clamp(34px,3.8vw,56px);line-height:1.08;max-width:none;text-align:center;margin:0 auto}
.approach-culture .culture-intro{font-size:14px;line-height:1.65;max-width:75ch;margin:28px auto 0;text-align:center}
.culture-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(36px,8vw,120px);max-width:1050px;margin:48px auto 0}
.culture-columns p{font-size:14px;line-height:1.65;max-width:64ch;margin:0}.culture-columns p+p{margin-top:18px}.culture-columns h4{font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.12;margin:0 0 18px}
.approach-meaning{display:flex;flex-direction:column;align-items:center;text-align:center;padding:80px var(--gutter) 90px}
.approach-meaning>h3{font-size:clamp(30px,3vw,44px);line-height:1.1;margin-bottom:26px}
.approach-meaning>p{font-size:14px;line-height:1.65;max-width:65ch}
.approach-meaning>p+p{margin-top:18px}
.journal-invitation{display:grid;grid-template-columns:1fr;justify-items:center;align-items:center;text-align:center;gap:24px;padding:64px var(--gutter);background:var(--ivory);color:var(--ink)}
.journal-invitation h2{font-size:clamp(32px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em;max-width:none;white-space:nowrap}
.journal-invitation p{font-size:14px;line-height:1.65;max-width:38ch;padding-top:6px}
.journal-invitation .outline-cta{display:inline-flex;align-items:center;justify-content:center;justify-self:center;white-space:nowrap;margin-top:0;min-height:48px;padding:12px 24px;border:1px solid currentColor;font-size:14px;line-height:1.5;text-decoration:none;transition:opacity .6s ease}.journal-invitation .outline-cta:hover{opacity:.48}
@media(max-width:700px){.journal-invitation{grid-template-columns:1fr;justify-items:center;gap:20px;padding:48px var(--gutter);text-align:center}.journal-invitation h2{font-size:clamp(26px,7.5vw,34px);max-width:none}.journal-invitation p{padding-top:0;max-width:38ch}.journal-invitation .outline-cta{justify-self:center;margin-top:4px}}

/* Words resolve into an idea; dividing lines connect decisions; photographs uncover. */
[data-reveal=rule]{position:relative}
[data-reveal=rule]:after{content:'';position:absolute;inset:0 0 auto;height:1px;background:var(--rule);transform-origin:left}
.home-services-heading[data-reveal=rule]:after{inset:auto 0 0;background:var(--ink)}
.is-animating[data-reveal=rule]:after{animation:editorial-rule .75s cubic-bezier(.16,1,.3,1) both}
.is-animating[data-reveal=image]{animation:editorial-image .8s cubic-bezier(.16,1,.3,1) both}
.is-animating .reveal-word{animation:editorial-word .5s ease both;animation-delay:var(--reveal-delay)}
/* Reveal each step and the wave that carries it to the next. */
.project-flow.is-waiting .process-step,.project-flow.is-waiting .process-connection{opacity:0}
.project-flow.is-animating .process-step{animation:process-reveal .5s cubic-bezier(.16,1,.3,1) both}
.project-flow.is-animating .process-step:nth-child(2){animation-delay:.65s}
.project-flow.is-animating .process-step:nth-child(3){animation-delay:1.3s}
.project-flow.is-animating .process-step:nth-child(4){animation-delay:1.95s}
.project-flow.is-animating .process-connection{animation:process-reveal .65s cubic-bezier(.16,1,.3,1) both;animation-delay:.25s}
.project-flow.is-animating .process-connection:nth-child(2){animation-delay:.9s}
.project-flow.is-animating .process-connection:nth-child(3){animation-delay:1.55s}
@keyframes process-reveal{from{opacity:0}to{opacity:1}}
.reveal-word{display:inline-block}
@keyframes editorial-word{from{opacity:.15}to{opacity:1}}
@keyframes editorial-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes editorial-image{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@media(max-width:1000px){.direction-explanation{grid-template-columns:1fr;gap:32px}.home-direction .direction-explanation h2{max-width:35ch}.direction-roles{gap:28px}.home-services-list{grid-template-columns:1fr}.home-service-item{min-height:360px;aspect-ratio:16/9}.service-item-copy h3{font-size:27px}.service-item-copy>p{max-width:48ch}.service-reader-layout{padding:32px;gap:32px}.service-reader-body section{grid-template-columns:1fr;gap:10px}}
@media(max-width:700px){.home-direction{padding:64px var(--gutter)}.direction-roles{grid-template-columns:1fr;gap:28px;margin-top:40px}.direction-roles h3{max-width:none;font-size:26px}.direction-roles p{margin-top:12px}.home-services{padding:42px var(--gutter) 58px}.home-services-heading{padding-bottom:22px}.home-services-heading h2{max-width:none;font-size:32px}.home-services-intro{margin-top:24px}.home-services-list{gap:16px;margin-top:28px}.home-service-item{min-height:260px;aspect-ratio:auto}.service-item-copy{padding:20px}.service-item-copy h3{font-size:26px}.service-item-question{display:none}.service-item-copy>p{margin-top:12px;max-width:none}.service-scope{padding-top:24px}.service-scope>summary{gap:12px;padding:12px 18px}.service-readable{grid-column:1/-1}.service-reader{width:100%;max-height:100svh;height:100svh;margin:0;border-radius:0}.service-reader-toolbar{padding:8px 16px 8px 24px}.service-reader-layout{display:block;padding:28px 24px}.service-reader-image{position:static;width:min(54%,220px);margin-bottom:28px}.service-reader-body section{padding:20px 0}.service-reader-navigation{gap:12px;padding:12px 24px}.service-reader-navigation strong{display:none}.service-reader-navigation button{min-height:44px;gap:10px}.service-reader-copy h2{font-size:34px}.service-reader-question{font-size:14px}.approach-layout{grid-template-columns:1fr;padding:64px var(--gutter) 36px;gap:28px}.approach-copy{text-align:center}.approach-copy h2{font-size:clamp(18px,5.7vw,32px);max-width:none;white-space:nowrap}.approach-copy>p{margin-left:auto;margin-right:auto}.approach-system{padding:32px var(--gutter)}.approach-system-copy{grid-template-columns:1fr;gap:20px}.approach-system-copy h3{font-size:32px}.approach-culture{padding:64px var(--gutter)}.approach-culture>h3{font-size:36px}.culture-columns{grid-template-columns:1fr;gap:22px;margin-top:24px}.approach-meaning{padding:64px var(--gutter)}.approach-meaning>h3{font-size:32px}.home-founder{padding-top:20px}}
@media(max-width:900px){
.project-flow{height:250px;margin-top:0}
.process-wave-desktop{display:block;height:180px}
.process-wave-mobile{display:none}
.process-step{padding:132px 3px 0}
.process-step:nth-child(even){padding-top:59px}
.process-point{top:87px;left:calc(50% - 14px);width:28px;height:28px;font-size:10px}
.process-step:nth-child(even) .process-point{top:14px}
.process-step h4{font-size:clamp(16px,2.8vw,24px)}
.approach-system-copy .process-step p{font-size:12px;line-height:1.5;max-width:20ch;margin:8px auto 0}
}
@media(prefers-reduced-motion:reduce){.is-animating,.is-animating:after,.is-animating .reveal-word,.project-flow.is-animating .process-step,.project-flow.is-animating .process-connection,.service-reader[open],.service-reader[open]::backdrop{animation:none!important;clip-path:none}}
@media(prefers-reduced-motion:reduce){.project-flow.is-waiting .process-step,.project-flow.is-waiting .process-connection{opacity:1}}
@media print{.project-flow.is-waiting .process-step,.project-flow.is-waiting .process-connection{opacity:1;animation:none}.home-services-list{grid-template-columns:1fr 1fr}.service-scope .service-readable{display:block}.service-reader{display:none}.approach-system{color:black;background:white}.approach-system>img,.approach-system:after{display:none}.approach-principles{grid-template-columns:1fr}.reveal-word{opacity:1!important}}

/* The dictionary title becomes the single persistent homepage wordmark. */
body.home{--home-header-height:104px}
.home>.site-header:before{content:'';position:fixed;inset:0 0 auto;height:var(--home-header-height);background:var(--red);pointer-events:none}
.home>.site-header .opening-word{visibility:hidden;pointer-events:none;font-family:var(--serif);font-size:clamp(36px,4.1vw,62px);line-height:1;letter-spacing:-.025em}
.home.menu-is-open>.site-header .opening-word,.home.menu-is-closing>.site-header .opening-word{visibility:visible;pointer-events:auto}
.home>.site-header .opening-menu:not([open]) summary{color:var(--white)}
.home-opening{position:relative}
.hero-dictionary-entry h1{height:1em}
.hero-word{display:inline-block;color:var(--white);text-decoration:none;transform-origin:top left}
.hero-morph-ready .hero-word{position:fixed;top:var(--hero-word-top);left:var(--hero-word-left);z-index:32;line-height:1;white-space:nowrap}
.home:has(.opening-menu[open]) .hero-word{visibility:hidden}
html:not(.menu-ready) .home>.site-header:has(.opening-menu[open]) .opening-word{visibility:visible;position:fixed;color:var(--ink);top:170px;left:32px;pointer-events:auto}
.home #direction,.home #services,.home #perspective,.home #founder,.home #contact,.home [data-service]{scroll-margin-top:calc(var(--home-header-height) - 24px)}
.home-direction{padding:0;background:var(--white);display:block;text-align:left}
.direction-photo{position:relative;isolation:isolate;display:flex;align-items:center;min-height:82svh;padding:clamp(84px,8vw,128px) var(--gutter);background:#271e15;color:var(--white);overflow:hidden}
.direction-photo>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}
.direction-photo:after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(19,13,8,.48)}
.direction-photo .direction-explanation{width:100%;grid-template-columns:minmax(0,1fr);gap:32px;text-align:center;justify-items:center;transform:translateY(clamp(-36px,-3svh,-20px))}
.direction-photo .direction-explanation h2{max-width:none;width:70%;text-align:center}.direction-photo .direction-explanation h2>span{display:block;text-wrap:balance}
.direction-photo .direction-explanation-copy{width:100%;max-width:72ch;font-size:14px}.direction-photo .direction-explanation-copy p{max-width:none;text-align:center}
.direction-photo ::selection,.home-opening ::selection{background:var(--white);color:var(--red)}
.direction-practice{padding:64px var(--gutter) 76px;background:var(--white);color:var(--ink)}.direction-practice>h2{font-size:clamp(30px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em;width:70%;max-width:none;margin:0 auto;text-align:center;text-wrap:balance}.direction-practice .direction-roles{margin:72px 0 0;padding:0}.direction-roles article{padding-top:0}.direction-roles article[data-reveal=rule]:after{display:none}
@media(max-width:700px){.direction-photo .direction-explanation h2{width:100%}.direction-photo .direction-explanation{grid-template-columns:1fr;gap:32px}.direction-photo{min-height:0;padding:80px var(--gutter) 68px}.direction-practice{padding:58px var(--gutter) 64px}.direction-practice>h2{display:none}.direction-practice .direction-roles{margin-top:0}.direction-roles article{padding-top:28px}.direction-roles article:first-child{padding-top:0}.direction-roles article[data-reveal=rule]:after{display:block}.direction-roles article:first-child:after{display:none}}
@media(max-width:600px){body.home{--home-header-height:76px}html:not(.menu-ready) .home>.site-header:has(.opening-menu[open]) .opening-word{top:96px;left:24px}}
@media print{.home>.site-header:before{display:none}.hero-morph-ready .hero-word{position:static;transform:none!important;color:var(--ink)}.direction-photo{min-height:0;background:var(--white);color:var(--ink)}.direction-photo>img,.direction-photo:after{display:none}}

@media(prefers-reduced-motion:reduce){.hero-morph-ready:not(.hero-is-condensed) .hero-word{position:static;transform:none!important}.hero-morph-ready.hero-is-condensed .hero-word{transition:none}}

/* Compact masthead and the original wordmark used as the dictionary entry. */
body.home{--home-header-height:64px}
.home>.site-header{top:8px}
.home>.site-header .opening-word{font-family:Georgia,serif;font-size:34px;line-height:1.2;letter-spacing:.025em}
.home .opening-menu{top:calc((var(--home-header-height) - 48px)/2)}
.home-opening h1{height:1em;font-family:Georgia,serif;line-height:1.2;letter-spacing:.025em}
.hero-word,.hero-morph-ready .hero-word{font-family:Georgia,serif;line-height:1.2;letter-spacing:.025em}
.hero-word strong{font-weight:700}.hero-word span{font-weight:400}
.hero-supporting-copy{transform-origin:top left}
.hero-dictionary-entry .hero-etymology{margin-top:12px}
.hero-dictionary-entry .hero-definition{margin-top:16px}
@media(max-width:700px){.home-opening h1{font-size:clamp(40px,13vw,76px)}}
@media(max-width:600px){body.home{--home-header-height:56px}.home>.site-header{top:4px}.home>.site-header .opening-word{font-size:28px}.hero-dictionary-entry .hero-definition{margin-top:14px}}
@media print{.hero-supporting-copy{opacity:1!important;transform:none!important}}

/* Traced letterforms inherit the existing white/black brand treatment. */
.brand-mark{display:block;width:6.2em;height:auto;overflow:visible}
.opening-word,.hero-word,.hero-morph-ready .hero-word{line-height:0}
.home-opening h1{display:flex;align-items:center}

/* The overlay wordmark starts at the live hero/header bounds, without a duplicate. */
.menu-logo-tracking>.site-header .opening-word{position:fixed;top:calc(20px + var(--menu-logo-shift));left:32px;visibility:visible;pointer-events:auto;transform-origin:top left;animation:none!important;transition:none;transform:none;opacity:1}
@media(max-width:600px){.menu-logo-tracking>.site-header .opening-word{top:calc(14px + var(--menu-logo-shift));left:24px}}

/* Mark destinations outside the homepage sections with the same fine-line arrow. */
.menu-outbound-arrow{display:inline-block;width:1em;height:1em;margin-left:.3em;vertical-align:-.08em;pointer-events:none;transition:transform .18s cubic-bezier(.16,1,.3,1)}
.menu-items .menu-outbound-arrow{width:.6em;height:.6em;margin-left:.22em;vertical-align:0}
@media(hover:hover){.menu-overview a:hover .menu-outbound-arrow,.journal-invitation a:hover .menu-outbound-arrow{transform:translateX(3px)}}

/* Service photography uncovers within its frame; the catalogue remains still. */
.is-animating[data-reveal=service-photo] img{animation:service-photo-reveal 1.8s cubic-bezier(.16,1,.3,1) both}
@keyframes service-photo-reveal{from{filter:blur(12px);opacity:.65}to{filter:blur(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.is-animating[data-reveal=service-photo] img{animation:none}}
@media print{.is-animating[data-reveal=service-photo] img{animation:none;filter:none}}


@media(prefers-reduced-motion:reduce){.service-reader-layout,.service-reader-navigation{animation:none!important;transform:none!important;opacity:1!important}}

@media(max-width:700px){.home-founder .country-spain{width:180px;left:auto;right:-40px;top:30px}.home-founder .country-argentina{height:280px;top:38%;right:-55px}.home-founder .country-singapore{width:200px;left:-45px;bottom:0}}

.culture-title-line{display:block}

@media(max-width:700px){
.contact-section{grid-template-columns:minmax(0,1fr);row-gap:20px}
.contact-copy{grid-column:1;grid-row:1}
.contact-intro{grid-column:1;grid-row:2;padding-top:0}
.contact-intro>p{margin-top:0;max-width:40ch}
.contact-form{grid-column:1;grid-row:3;margin-top:12px}
}

@media(max-width:700px){.home-founder figcaption{position:static}}

.home-founder picture{display:block}
@media(max-width:700px){.home-founder figure{width:100%}.home-founder picture>img{aspect-ratio:16/9;object-fit:cover}}

.approach-culture .culture-intro p{font-size:14px;line-height:1.65;width:100%;max-width:none;margin:0;text-align:center}.approach-culture .culture-intro p+p{margin-top:18px}

@media(max-width:800px){
.footer-main{grid-template-columns:minmax(0,1fr);gap:0;padding:28px 0 40px}
.footer-main>.footer-row-label{display:none}
.footer-main>.footer-block{grid-column:1}
.footer-main>.footer-block+.footer-block{border-top:1px solid #474441;margin-top:28px;padding-top:28px}
}

@media(max-width:700px){.approach-culture>h3,.approach-culture .culture-intro{width:100%;max-width:none;margin-left:auto;margin-right:auto;text-align:center}}

.journal-opening{min-height:0;padding-top:clamp(96px,12svh,140px);padding-bottom:clamp(40px,6svh,64px)}
@media(max-width:700px){
.journal-opening{min-height:0;padding-top:96px;padding-bottom:36px}
.journal-grid{grid-template-columns:minmax(0,1fr);gap:36px;width:100%}
.journal-image{aspect-ratio:16/9}
}

@media(max-width:700px){.contact-intro{width:100%;min-width:0}.contact-intro>p{width:100%;max-width:none}}

@media(max-width:700px){
.site-header .opening-word{--menu-logo-shift:82px}
.menu-logo-tracking>.site-header .opening-word{top:calc(14px + var(--menu-logo-shift));left:24px}
.menu-overview{padding-top:176px;scroll-padding-top:176px}
.menu-items{flex-shrink:0;margin:0;width:100%}
.menu-is-open>.site-header:after,.menu-is-closing>.site-header:after{content:'';position:fixed;top:0;left:0;right:0;height:150px;z-index:32;background:var(--ivory);pointer-events:none}
}

@media(min-width:701px) and (max-width:1100px){
.menu-side{left:40%;width:190px}
.menu-items{width:24%;margin-right:0}
.menu-feature{width:min(600px,calc(100vw - 84px));grid-template-columns:108px minmax(0,1fr);gap:24px}
.menu-feature img{width:108px;height:108px}
.menu-feature strong{font-size:20px}
}

/* Journal entries arrive in a short editorial sequence, once per visit. */
[data-reveal="journal-card"].is-waiting{opacity:0}
[data-reveal="journal-card"].is-animating{animation:journal-card-reveal .7s ease both;animation-delay:var(--card-reveal-delay,0ms)}
@keyframes journal-card-reveal{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){[data-reveal="journal-card"].is-waiting{opacity:1}}
@media print{[data-reveal="journal-card"].is-waiting{opacity:1}}

/* Dictionary entrance stays independent of the wordmark's scroll transform. */
.hero-word.is-animating .brand-mark{animation:hero-brand-reveal .7s ease both}
.hero-etymology.is-animating .reveal-word{animation-delay:calc(120ms + var(--reveal-delay))}
.hero-definition.is-animating .reveal-word{animation-delay:calc(260ms + var(--reveal-delay))}
@keyframes hero-brand-reveal{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.hero-word.is-animating .brand-mark{animation:none}}

.home-services-followup{margin-top:64px}.home-services-followup h2{font-size:clamp(30px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em}.home-services-followup>p{margin-top:20px;max-width:65ch;font-size:14px;line-height:1.65}.service-item-copy>.service-item-context{font-size:11px;line-height:1.5;margin-top:14px;opacity:.85}@media(max-width:700px){.home-services-followup{margin-top:42px}.home-services-followup h2{font-size:32px}}

/* Both service groups share one editorial heading and divider. */
.home-services-heading.home-services-followup{margin-top:64px;padding-bottom:26px}
.home-services-followup-intro{margin-top:20px;max-width:65ch;font-family:var(--sans);font-size:14px;line-height:1.65}
.home-services-followup-intro+.home-services-list{margin-top:28px}
@media(max-width:700px){.home-services-heading.home-services-followup{margin-top:42px;padding-bottom:22px}.home-services-followup-intro{margin-top:20px}}

.footer-socials{display:flex;align-items:center;gap:8px;margin-top:14px}.footer-socials>a,.footer-socials>span{display:inline-flex;align-items:center;justify-content:flex-start;width:28px;height:44px}.footer-socials svg{width:22px;height:22px}.footer-social-pending{opacity:.5}

/* Service details open as a full-screen editorial spread. */
.service-reader{width:100%;height:100svh;max-height:100svh;margin:0;--reader-gutter:clamp(24px,5vw,80px)}
.service-reader-toolbar{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 var(--reader-gutter);padding:28px 0 24px;border-bottom:1px solid var(--ink)}
.service-reader-toolbar h2{font-size:clamp(30px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em;outline:none}
.service-reader-intro{margin-top:12px;font:400 11px/1.5 var(--sans);letter-spacing:.04em}
.service-reader-close{flex-shrink:0}
.service-reader-question{margin:32px var(--reader-gutter) 36px;max-width:44ch;font:italic 400 clamp(23px,2.5vw,34px)/1.3 var(--serif);color:var(--ink)}
.service-reader-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);padding:0 var(--reader-gutter);align-items:start}
.service-reader-image{position:static;width:100%;margin:0}.service-reader-image img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.service-reader-body section{display:block;padding:22px 0;border-top:1px solid var(--rule)}
.service-reader-body section:first-child{padding-top:0;border-top:0}
.service-reader-body h3{font:400 14px/1.4 var(--sans);margin-bottom:10px}
.service-reader-body p{font:400 14px/1.65 var(--sans);max-width:65ch}
.service-reader-navigation{position:static;display:flex;justify-content:space-between;gap:24px;margin:40px var(--reader-gutter) 0;padding:24px 0 32px;border:0}
.service-reader-navigation button{min-height:44px;font-size:14px}.service-reader-navigation strong,.service-reader-position{display:none}
.service-reader-navigation button svg{width:20px;height:20px}
@media(max-width:700px){
 .service-reader-toolbar{padding:20px 0;gap:16px}.service-reader-toolbar h2{font-size:32px}
 .service-reader-question{margin-top:26px;margin-bottom:28px;font-size:24px}
 .service-reader-layout{grid-template-columns:1fr;gap:28px}
 .service-reader-image{width:100%;max-width:none;margin:0}.service-reader-image img{aspect-ratio:16/9}
 .service-reader-navigation{margin-top:16px;padding-top:16px}
}

/* Service cards share one measured height, with an ivory reverse. */
.home-service-item{display:block;min-height:0;aspect-ratio:auto;background:transparent;perspective:1400px}
.home-service-item:before{display:none}
.service-flip-inner{position:relative}
.service-face{display:flex;flex-direction:column;align-items:flex-start;position:relative;isolation:isolate;padding:24px;min-width:0}
.service-front{background:var(--ink);color:var(--white)}
.service-front:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.72) 0,rgba(0,0,0,.58) var(--service-text-end,260px),transparent calc(var(--service-text-end,260px) + 80px))}
.service-face-content{width:100%;padding:0;flex:0 0 auto}
.service-face h3{font:400 27px/1.12 var(--serif);letter-spacing:-.02em;outline:none}
.service-back{color:var(--ink);background:var(--ivory);border:1px solid var(--rule)}
.service-detail-category{font:400 11px/1.5 var(--sans);margin-top:10px;letter-spacing:.02em}
.service-back-description{margin-top:16px}.service-back-description section+section{margin-top:8px}
.service-back-description h4{font:500 14px/1.4 var(--sans);margin:0 0 2px}.service-back-description p{font:400 14px/1.5 var(--sans)}
.service-flip-button{display:inline-flex;align-items:center;justify-content:center;margin:28px 0 0 auto;min-height:48px;padding:12px 24px;border:1px solid currentColor;background:transparent;color:inherit;font:400 14px/1.5 var(--sans)}
.service-flip-ready{height:var(--service-card-height,440px)}
.service-flip-ready .service-flip-inner{height:100%;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.4,0,.2,1)}
.service-flip-ready .service-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.service-flip-ready .service-back{transform:rotateY(180deg)}
.service-flip-ready.is-flipped .service-flip-inner{transform:rotateY(180deg)}
.service-flip-ready .service-flip-button{margin-top:auto;flex-shrink:0}
@media(max-width:700px){.service-face{padding:20px}.service-face h3{font-size:26px}.service-back-description section+section{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.service-flip-ready .service-flip-inner{transition:none}}
@media print{.service-flip-ready{height:auto}.service-flip-ready .service-flip-inner{transform:none}.service-flip-ready .service-face{position:relative;transform:none}.service-flip-button{display:none}}

/* Selected original photography: retain the bar and the pool reflection in wide crops. */
.direction-photo>img{object-position:50% 45%}
.approach-system>img{object-position:50% 60%}
@media(max-width:700px){.direction-photo>img{object-position:50% 50%}.approach-system>img{object-position:50% 55%}}

/* Keep the original colours visible, with shading concentrated beneath the copy. */
.direction-photo:after{background:linear-gradient(180deg,rgba(0,0,0,.56) 0,rgba(0,0,0,.34) 72px,rgba(0,0,0,.22) 160px,rgba(0,0,0,.28) 35%,rgba(0,0,0,.28) 72%,rgba(0,0,0,.08))}
.direction-photo .direction-explanation h2{-webkit-text-stroke:1px #373737;paint-order:stroke fill;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.approach-system:after{display:none}
.direction-explanation,.approach-system-copy{text-shadow:0 1px 6px rgba(0,0,0,.65)}
.approach-system>img{object-position:50% 30%}
.approach-system{color:var(--white)}
.approach-system-copy{text-shadow:none}
.approach-system .project-flow,.approach-system .process-wave,.approach-system .process-step h4,.approach-system .process-step p{color:var(--white)}
.approach-system .process-point{background:var(--white);color:#111110;text-shadow:none}
@media(max-width:700px){.approach-system>img{object-position:50% 24%}}

.hero-dictionary-entry .hero-definition{font-family:var(--serif);font-size:clamp(28px,3.5vw,48px);line-height:1.15;letter-spacing:-.02em;max-width:none;margin-top:24px}
@media(max-width:700px){.hero-dictionary-entry .hero-definition{font-size:clamp(26px,6.5vw,34px);margin-top:20px}}

/* Portrait service entries follow the Journal's image-and-type rhythm. */
.home-services-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.home-services-list.service-followup-group{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
.service-front{padding:0;background:var(--white);color:var(--ink)}.service-front:before{display:none}
.home-service-item .service-front figure{position:relative;inset:auto;z-index:auto;height:auto;aspect-ratio:4/5;margin:0 0 20px}
.home-service-item .service-front figure img{width:100%;height:100%;object-fit:cover}
.service-front .service-item-copy h3{margin:0}.service-front .service-item-question{color:var(--ink);margin-top:12px;max-width:none}
.service-front .service-flip-button{margin-right:0}
.service-back-summary{margin-top:16px;font:400 14px/1.5 var(--sans);max-width:none}
@media(max-width:1000px) and (min-width:701px){.home-services-list{gap:20px}.home-services-list.service-followup-group{width:100%}.service-face h3{font-size:25px}.service-back{padding:18px}}
@media(max-width:700px){.home-services-list,.home-services-list.service-followup-group{grid-template-columns:1fr;width:100%;gap:28px}.home-service-item .service-front figure{aspect-ratio:16/10}.service-front .service-item-question{display:block}.service-front{padding:0}}

/* Original service photography with the copy and action within each image. */
.service-front{padding:24px;color:var(--white);background:var(--ink)}
.home-service-item .service-front figure{position:absolute;inset:0;z-index:-2;width:100%;height:100%;aspect-ratio:auto;margin:0}
.service-front:before{display:block;background:linear-gradient(180deg,rgba(0,0,0,.64),rgba(0,0,0,.5) var(--service-text-end,180px),rgba(0,0,0,.08) calc(var(--service-text-end,180px) + 100px),rgba(0,0,0,.24) 100%)}
.service-front .service-item-question{color:var(--white)}
.service-front .service-flip-button{background:rgba(0,0,0,.16)}
@media(max-width:700px){.service-front{padding:20px}.home-service-item .service-front figure{aspect-ratio:auto}}

.home-service-item.service-is-waiting{opacity:0}
.home-service-item.service-is-revealing{animation:service-card-enter .9s ease both;animation-delay:var(--service-reveal-delay,0ms)}
.is-animating[data-reveal=service-photo] img{animation-delay:var(--service-reveal-delay,0ms)}
@keyframes service-card-enter{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.home-service-item.service-is-waiting{opacity:1}.home-service-item.service-is-revealing{animation:none}}
@media print{.home-service-item.service-is-waiting{opacity:1}.home-service-item.service-is-revealing{animation:none}}

.service-flip-button{transition:opacity .6s ease}.service-flip-button:hover{opacity:.48}

.service-back .service-flip-button{width:var(--service-cta-width,150px)}

/* The image gives way to an ivory reading surface, anchored by one visual title. */
.home-service-item{perspective:none}
.service-flip-ready .service-flip-inner,.service-flip-ready.is-flipped .service-flip-inner{transform:none;transform-style:flat;transition:none;overflow:hidden}
.service-flip-ready .service-face{backface-visibility:visible;-webkit-backface-visibility:visible;transform:none}
.service-flip-ready .service-front,.service-flip-ready .service-back{padding:24px}
.service-flip-ready .service-back{z-index:2;background:transparent;border:0;pointer-events:none}
.service-flip-ready .service-back:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--ivory);border:1px solid var(--rule);clip-path:inset(100% 0 0);transition:clip-path .3s cubic-bezier(.4,0,.2,1)}
.service-flip-ready.is-flipped .service-back{pointer-events:auto}
.service-flip-ready.is-flipped .service-back:before{clip-path:inset(0);transition-duration:.6s;transition-timing-function:cubic-bezier(.16,1,.3,1)}
.service-shared-title{position:absolute;top:24px;left:24px;right:24px;z-index:3;margin:0;font:400 27px/1.12 var(--serif);letter-spacing:-.02em;color:var(--white);pointer-events:none;transition:color .2s ease .16s}
.service-flip-ready.is-flipped .service-shared-title{color:var(--ink);transition-delay:.18s}
.service-flip-ready .service-face-content>h3{opacity:0}
.service-back .service-detail-category,.service-back .service-back-summary,.service-back-description section,.service-back>[data-service-contact]{opacity:0;transform:translateY(10px);transition:opacity .15s ease,transform .2s ease}
.is-flipped .service-back .service-detail-category,.is-flipped .service-back .service-back-summary,.is-flipped .service-back-description section,.is-flipped .service-back>[data-service-contact]{opacity:1;transform:none;transition-duration:.35s;transition-timing-function:cubic-bezier(.16,1,.3,1);transition-delay:.22s}
.is-flipped .service-back .service-back-summary{transition-delay:.26s}
.is-flipped .service-back-description section{transition-delay:calc(.3s + var(--detail-step,0)*.045s)}
.is-flipped .service-back>[data-service-contact]{transition-delay:.4s}
.service-front .service-item-question,.service-front>[data-service-flip]{transition:opacity .2s ease}
.is-flipped .service-front .service-item-question,.is-flipped .service-front>[data-service-flip]{opacity:0}
.service-back>[data-service-contact]:hover,.service-front>[data-service-flip]:hover{opacity:.48}
@media(max-width:1000px) and (min-width:701px){.service-shared-title{font-size:25px}}
@media(max-width:700px){.service-flip-ready .service-front,.service-flip-ready .service-back{padding:20px}.service-shared-title{top:20px;left:20px;right:20px;font-size:26px}}
@media(prefers-reduced-motion:reduce){.service-flip-ready .service-back:before,.service-shared-title,.service-back .service-detail-category,.service-back .service-back-summary,.service-back-description section,.service-back>[data-service-contact],.service-front .service-item-question,.service-front>[data-service-flip]{transition:none;transform:none}}
@media print{.service-shared-title{display:none}.service-flip-ready .service-face-content>h3{opacity:1}.service-back .service-detail-category,.service-back .service-back-summary,.service-back-description section{opacity:1;transform:none}.service-flip-ready .service-back:before{clip-path:none}}

.service-details-close{position:absolute;top:16px;right:12px;display:grid;place-items:center;width:40px;height:40px;padding:8px;border:0;background:transparent;color:var(--ink);opacity:0;transition:opacity .2s ease;cursor:pointer}
.service-details-close svg{width:20px;height:20px}.is-flipped .service-details-close{opacity:1;transition-delay:.22s}.is-flipped .service-details-close:hover{opacity:.48;transition-delay:0s}
.service-flip-ready.is-flipped .service-shared-title{right:56px}
.service-back .service-face-content>h3{padding-right:32px}
@media(prefers-reduced-motion:reduce){.service-details-close{transition:none}}

.founder-countries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:380px;margin-top:30px}.founder-countries>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}.founder-countries svg{width:68px;height:68px;color:#b9b4ab}.founder-countries span{font:400 12px/1.5 var(--sans)}
.founder-inline-logo{display:inline-block;width:6.2em;vertical-align:-.02em;line-height:0;color:inherit}.founder-inline-logo .brand-mark{width:100%;height:auto}
.footer-countries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 22px;max-width:300px}.footer-countries>div{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}.footer-countries svg{display:block;width:48px;height:48px;color:#aaa59c}.footer-countries image{filter:brightness(0) invert(1);opacity:.8}.footer-countries span{font:400 11px/1.4 var(--sans)}
.founder-copy{min-width:0}
.founder-school-slideshow{width:100%;max-width:68ch;margin:24px 0 28px;overflow:hidden;font-size:14px;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.school-slide-track{display:flex;width:max-content;animation:school-slideshow 28s linear infinite}
.school-slide-group{display:flex;align-items:center;gap:40px;padding-right:40px;flex-shrink:0}
.school-slide-group a{display:flex;align-items:center;justify-content:center;width:150px;height:66px;flex-shrink:0}
.home-founder .school-slide-group img{width:100%;height:44px;aspect-ratio:auto;object-fit:contain;filter:grayscale(1)}
.founder-school-slideshow:hover .school-slide-track,.founder-school-slideshow:focus-within .school-slide-track{animation-play-state:paused}
@keyframes school-slideshow{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.school-slide-track{animation:none;width:100%}.school-slide-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:0 20px;gap:16px}.school-slide-group a{width:100%}.school-slide-group[aria-hidden]{display:none}}
.founder-school-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:16px 28px;width:min(100%,430px);margin-top:34px}.founder-school-logos a{display:flex;align-items:center;justify-content:flex-start;min-width:0;min-height:46px}.home-founder .founder-school-logos img{width:100%;height:36px;aspect-ratio:auto;object-fit:contain;object-position:left center;filter:grayscale(1)}
@media(max-width:700px){.founder-countries{gap:14px;max-width:360px}.founder-countries svg{width:60px;height:60px}.founder-school-logos{gap:16px 24px}.home-founder .founder-school-logos img{height:34px}}

.contact-section,.contact-section .field label,.contact-section .field input,.contact-section .field textarea,.contact-section .form-submit{color:var(--white)}
.contact-section .field input,.contact-section .field textarea{caret-color:var(--white)}

/* The opening gives the wordmark and subtitle their own reading moment. */
.home-opening{min-height:100svh}
.hero-dictionary-entry .hero-definition{opacity:1}
.hero-subtitle-word{display:inline-block;opacity:1;transform:none;transition:opacity .65s ease var(--subtitle-delay),transform .8s cubic-bezier(.16,1,.3,1) var(--subtitle-delay)}
.hero-intro-pending .hero-subtitle-word{opacity:0;transform:translateY(.18em);transition:none}
@media(prefers-reduced-motion:reduce){.hero-dictionary-entry .hero-definition{transition:none}}

/* The opening is a one-time surface. Its red layer lifts away while the live wordmark reaches the masthead. */
.home.hero-intro-enabled:not(.hero-intro-complete){overflow:hidden}
.home.hero-intro-enabled .home-opening{position:fixed;inset:0;z-index:35;min-height:100svh;overflow:hidden;background:transparent;isolation:isolate}
.home.hero-intro-enabled .home-opening:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--red);transform:translateY(0);transition:transform .85s cubic-bezier(.16,1,.3,1);will-change:transform}
.home.hero-intro-enabled.hero-intro-closing .home-opening:before,.home.hero-intro-enabled.hero-intro-complete .home-opening:before{transform:translateY(-100%)}
.home.hero-intro-complete .home-opening{visibility:hidden;pointer-events:none}
.home.hero-intro-closing>.site-header:before,.home.hero-intro-complete>.site-header:before{display:none}
.home.hero-intro-complete>.site-header .opening-word{visibility:visible;pointer-events:auto}
.home.hero-intro-complete .hero-word{visibility:hidden}
.process-point{text-shadow:none}
.menu-lines:before,.menu-lines:after{height:1.5px}
html{background:#111110;overscroll-behavior-y:none}
body{overscroll-behavior-y:none}
.home.hero-intro-complete.home-logo-hidden>.site-header .opening-word{visibility:visible;pointer-events:none;opacity:0;transform:translate3d(0,-150%,0)}
.home.hero-intro-complete.home-logo-entering>.site-header .opening-word{visibility:visible;pointer-events:auto;animation:home-mark-enters .52s cubic-bezier(.16,1,.3,1) both}
@keyframes home-mark-enters{from{opacity:0;transform:translate3d(0,-150%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.home.hero-intro-enabled .home-opening:before{transition:none}}

/* One fixed header geometry, independent of the document's scroll position. */
body>.site-header{position:fixed}
body.menu-logo-settling>.site-header .opening-word{transition:none!important;animation:none!important}
body:not(.home):not(.menu-logo-tracking)>.site-header .opening-word{transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .25s ease,color .3s ease}
body:not(.home).home-logo-hidden:not(.menu-logo-tracking)>.site-header .opening-word{transform:translateY(calc(-100% - 32px));opacity:0;pointer-events:none}
body:not(.home).home-logo-entering:not(.menu-logo-tracking)>.site-header .opening-word{transform:translateY(0);opacity:1}
.home.hero-intro-complete:not(.menu-logo-tracking)>.site-header .opening-word{position:relative;top:auto;left:auto;animation:none;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .25s ease,color .3s ease}
.home.hero-intro-complete.home-logo-hidden:not(.menu-logo-tracking)>.site-header .opening-word{transform:translateY(calc(-100% - 32px));opacity:0;pointer-events:none}
.home.hero-intro-complete.home-logo-entering:not(.menu-logo-tracking)>.site-header .opening-word{transform:translateY(0);opacity:1}
body.menu-logo-tracking>.site-header .opening-word{visibility:visible;pointer-events:auto;opacity:1;animation:none!important;transition:none;transform:none}
.home.menu-logo-tracking>.site-header .opening-word{position:fixed;top:calc(20px + var(--menu-logo-shift));left:32px;visibility:visible;pointer-events:auto;opacity:1;animation:none!important;transition:none;transform:none}
body.menu-over-light:not(.menu-is-open):not(.menu-is-closing)>.site-header .opening-word,body.menu-over-light:not(.menu-is-open):not(.menu-is-closing)>.site-header .opening-menu:not([open]) summary{color:var(--ink)}
body.menu-over-dark:not(.menu-is-open):not(.menu-is-closing)>.site-header .opening-word,body.menu-over-dark:not(.menu-is-open):not(.menu-is-closing)>.site-header .opening-menu:not([open]) summary{color:var(--white)}
.opening-menu summary{transition:color .3s ease}
@media(max-width:700px){.home.menu-logo-tracking>.site-header .opening-word{top:calc(14px + var(--menu-logo-shift));left:24px}}

/* Two concise editorial moments: three equal principles, then a facing pair. */
.perspective-principles{background:var(--white);padding-top:clamp(64px,7vw,108px);padding-bottom:clamp(64px,7vw,108px)}
.principles-composition{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,64px);list-style:none;padding:0;margin:0 auto;max-width:1160px}
.principles-composition li{min-width:0;padding-top:22px;border-top:1px solid var(--rule)}
.principles-composition h2{font:400 clamp(27px,2.7vw,39px)/1.12 var(--serif);letter-spacing:-.02em;max-width:15ch;text-wrap:balance}
.principles-support{font:400 14px/1.65 var(--sans);color:var(--muted);max-width:74ch;margin:38px auto 0;text-align:center}
.perspective-pair{background:var(--red);color:var(--ivory);padding-top:clamp(54px,6vw,88px);padding-bottom:32px}
.perspective-pair-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;margin:0 auto;max-width:1160px;font-size:clamp(34px,4vw,58px);line-height:1.1;letter-spacing:-.02em}
.perspective-pair-fields>span{display:block;text-wrap:balance;padding:18px 0 26px}
.perspective-pair-fields>span:first-child{font-style:italic;padding-right:40px}
.perspective-pair-fields>span+span{border-left:1px solid rgba(246,241,231,.45);padding-left:clamp(32px,5vw,72px)}
.perspective-text-link{display:inline-block;font:400 14px/1.5 var(--sans);text-decoration:none;border-bottom:1px solid currentColor;padding:5px 0;transition:opacity .6s ease}
.perspective-text-link:hover{opacity:.48}
.perspective-pair>.perspective-text-link{display:table;margin:30px 0 0 auto}
.perspective-editorial-opening{background:var(--ivory);padding-top:140px;padding-bottom:64px}
.perspective-editorial-opening h1{font-size:clamp(44px,6vw,76px);max-width:1040px;margin:0 auto}
.perspective-editorial-opening p{font-size:18px;line-height:1.6;max-width:65ch;margin:28px auto 0}
.perspective-editorial{background:var(--white);padding-top:12px;padding-bottom:88px}
.perspective-editorial>section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;max-width:1040px;margin:0 auto;padding:48px 0;border-bottom:1px solid var(--rule)}
.perspective-editorial h2{font-size:clamp(28px,3vw,40px);line-height:1.12;max-width:18ch}
.perspective-editorial p{font-size:16px;line-height:1.75}
.perspective-editorial>.perspective-text-link{display:table;margin:40px auto 0}
.home-approach,.perspective-principles,.perspective-pair,.perspective-discover-wrap{background:var(--ivory);color:var(--ink)}
.perspective-principles{padding-bottom:clamp(48px,5vw,76px)}
.perspective-home-title{max-width:1160px;margin:0 auto 48px;font-size:clamp(36px,4vw,54px);line-height:1.08}
.principles-composition h3{font:400 clamp(27px,2.7vw,39px)/1.12 var(--serif);letter-spacing:-.02em;max-width:15ch;text-wrap:balance}
.principles-editorial{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,88px);max-width:1160px;margin:42px auto 0}
.principles-editorial figure{margin:0;overflow:hidden}.principles-editorial img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 63%}
.principles-editorial p,.perspective-approach-copy p{font:400 14px/1.7 var(--sans);max-width:58ch}
.principles-editorial p+p{margin-top:18px}
.perspective-pair{padding-top:0;padding-bottom:0}
.perspective-approach-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:clamp(40px,8vw,120px);max-width:1160px;margin:0 auto;border-top:1px solid var(--rule);padding-top:clamp(48px,5vw,76px)}
.perspective-approach-copy>div+div{margin-top:32px}
.perspective-approach-copy h3{font-size:clamp(31px,3.3vw,47px);line-height:1.1;margin-bottom:16px;letter-spacing:-.02em}
.perspective-approach-copy>div:first-child h3{font-style:italic}
.perspective-approach-layout figure{margin:0}.perspective-approach-layout img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.perspective-discover-wrap{text-align:center;padding:44px var(--gutter) clamp(64px,7vw,100px)}
.perspective-discover{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid currentColor;font:400 14px/1.5 var(--sans);text-decoration:none;transition:opacity .6s ease}
.perspective-discover:hover{opacity:.48}
@media(max-width:700px){.perspective-home-title{margin-bottom:28px;font-size:36px}.principles-composition h3{font-size:29px;max-width:none}.principles-editorial{grid-template-columns:1fr;gap:24px;margin-top:30px}.principles-editorial img{aspect-ratio:4/3}.perspective-pair{padding-top:0;padding-bottom:0}.perspective-approach-layout{grid-template-columns:1fr;gap:28px;padding-top:36px}.perspective-approach-copy h3{font-size:34px}.perspective-approach-layout figure{width:82%;justify-self:end}.perspective-approach-layout img{aspect-ratio:1}.perspective-discover-wrap{padding-top:32px;padding-bottom:52px}}
@media(max-width:700px){.perspective-principles{padding-top:48px;padding-bottom:48px}.principles-composition{grid-template-columns:1fr;gap:16px;max-width:420px}.principles-composition li{padding-top:16px}.principles-composition h2{font-size:29px;max-width:none}.principles-support{margin-top:26px;max-width:48ch;text-align:left}.perspective-pair{padding-top:42px;padding-bottom:28px}.perspective-pair-fields{grid-template-columns:1fr;font-size:38px}.perspective-pair-fields>span:first-child{padding:0 0 22px}.perspective-pair-fields>span+span{border-left:0;border-top:1px solid rgba(246,241,231,.45);padding:22px 0 0;text-align:right}.perspective-pair>.perspective-text-link{margin-top:28px}.perspective-editorial-opening{padding-top:110px;padding-bottom:40px}.perspective-editorial-opening p{font-size:16px}.perspective-editorial>section{grid-template-columns:1fr;gap:20px;padding:34px 0}}
.perspective-home-title{max-width:none;font-size:clamp(30px,3.5vw,50px);line-height:1.12;letter-spacing:-.025em;margin-bottom:32px;padding-bottom:26px;border-bottom:1px solid var(--rule);text-wrap:nowrap}
.principles-composition{max-width:none;gap:28px}
.principles-composition li{display:flex;align-items:center;min-height:170px;padding:28px;background:var(--white);border:1px solid var(--rule)}
.principles-composition li{align-items:flex-end;min-height:210px;padding:32px;border:1px solid #ddd5c8;border-radius:14px;background:#fcfaf5}
.principles-composition h3{max-width:none;margin:0}
.principles-composition li{align-items:center;justify-content:center;text-align:center}
.principles-composition .principle-focus,.principles-composition .principle-qualifier{display:block;color:var(--ink);font:400 clamp(26px,2.4vw,34px)/1.15 var(--serif);letter-spacing:-.02em;margin:0}
.principles-composition .principle-focus{color:var(--red);font-size:clamp(30px,2.8vw,40px)}
.perspective-discover .menu-outbound-arrow{margin-left:.3em;transition:transform .18s cubic-bezier(.16,1,.3,1)}
@media(hover:hover){.perspective-discover:hover .menu-outbound-arrow{transform:translateX(3px)}}
@media(max-width:700px){.principles-composition li{min-height:150px;padding:26px}.principles-composition .principle-focus,.principles-composition .principle-qualifier{font-size:28px}}
.principles-composition h3{font-size:clamp(26px,2.5vw,36px)}
.perspective-pair{background:var(--white);padding-top:clamp(64px,7vw,100px);padding-bottom:clamp(64px,7vw,100px)}
.perspective-approach-layout{max-width:none;border-top:0;padding-top:0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px)}
.perspective-approach-layout img{aspect-ratio:16/10;object-position:50% 62%}
.perspective-approach-copy h3{font-size:clamp(38px,4.2vw,62px);line-height:1.08;max-width:none;margin-bottom:36px;font-style:normal}
.perspective-approach-copy h3 em{display:block;color:var(--ink);font-weight:400}
.perspective-approach-copy h3>span{display:block;color:var(--red);margin-top:.12em}
.perspective-approach-copy .perspective-discover{margin-top:26px}
@media(max-width:700px){.perspective-home-title{font-size:32px;margin-bottom:24px;padding-bottom:22px}.principles-composition{max-width:none;gap:14px}.principles-composition li{min-height:112px;padding:24px}.principles-composition h3{font-size:28px}.perspective-pair{padding-top:56px;padding-bottom:56px}.perspective-approach-layout{grid-template-columns:1fr;gap:26px;padding-top:0}.perspective-approach-layout figure{width:100%;justify-self:stretch}.perspective-approach-layout img{aspect-ratio:16/10}.perspective-approach-copy h3{font-size:clamp(34px,8.6vw,52px);max-width:none;margin-bottom:28px}}
.principles-composition [data-reveal=principle-card].is-waiting{opacity:0}
.principles-composition [data-reveal=principle-card].is-animating{animation:principle-card-enter .75s cubic-bezier(.16,1,.3,1) both}
.principles-composition [data-reveal=principle-card]:nth-child(2){animation-delay:.12s}
.principles-composition [data-reveal=principle-card]:nth-child(3){animation-delay:.24s}
@keyframes principle-card-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.principles-composition .principle-focus{font-size:33px}.principles-composition [data-reveal=principle-card]{animation-delay:0s}}
@media(prefers-reduced-motion:reduce){.principles-composition [data-reveal=principle-card].is-waiting{opacity:1}.principles-composition [data-reveal=principle-card].is-animating{animation:none}}
@media print{.principles-composition [data-reveal=principle-card].is-waiting{opacity:1}}
.perspective-essay .article-body{margin-top:0}
html.intro-scroll-locked,html.intro-scroll-locked body{overflow:hidden;overscroll-behavior:none;touch-action:none}
.home-founder [data-reveal=founder-caption].is-waiting{opacity:0}
.home-founder [data-reveal=founder-caption].is-animating{animation:founder-caption-fade .9s ease .15s both}
@keyframes founder-caption-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.home-founder [data-reveal=founder-caption].is-waiting{opacity:1}.home-founder [data-reveal=founder-caption].is-animating{animation:none}}
@media print{.home-founder [data-reveal=founder-caption].is-waiting{opacity:1}}
.perspective-essay .article-body .perspective-essay-image{margin:42px 0}
.perspective-essay .article-body .perspective-essay-image img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}
@media(max-width:600px){.perspective-essay .article-body .perspective-essay-image{margin:30px 0}}
.perspective-essay-closing{background:var(--ivory);color:var(--ink);text-align:center;padding-top:clamp(60px,8vw,110px);padding-bottom:clamp(60px,8vw,110px)}
.perspective-essay-closing h2{max-width:26ch;margin:0 auto;font-size:clamp(34px,4vw,58px);line-height:1.1;letter-spacing:-.025em}

/* Small screens share one header centerline and use swipeable service groups. */
.service-rail-controls{display:none}
@media(max-width:1100px){
 .article-reading>.article-back{display:none}
 body:is(.perspective,.journal,.article)>.site-header:before{content:'';position:absolute;inset:0 -24px;background:var(--ivory);z-index:-1}
 body:is(.perspective,.journal,.article).menu-is-open>.site-header:after{height:150px;transition:height .48s cubic-bezier(.16,1,.3,1) .24s}
 body:is(.perspective,.journal,.article).menu-is-closing>.site-header:after{height:64px;transition:height .48s cubic-bezier(.16,1,.3,1) .24s}
 body:is(.perspective,.journal,.article):not(.menu-logo-tracking):not(.menu-is-open):not(.menu-is-closing)>.site-header .opening-word{opacity:1;transform:none;pointer-events:auto;color:var(--ink)}
 body:is(.perspective,.journal,.article)>.site-header .opening-menu:not([open]) summary{color:var(--ink)}
 body.home{--home-header-height:64px}
 body>.site-header,.home>.site-header{top:0;left:24px;right:24px;height:64px;align-items:center}
 body.home>.site-header{position:absolute}
 body:not(.menu-logo-tracking):not(.menu-is-open):not(.menu-is-closing)>.site-header .opening-word{position:relative;top:auto;left:auto}
 body .opening-menu,.home .opening-menu{top:8px;right:18px}
 .opening-menu summary{display:flex;align-items:center;justify-content:center;width:48px;height:48px}
 .menu-lines{height:18px}
 .home>.site-header .opening-word{font-size:28px}
 .home-direction .direction-photo{min-height:78svh;padding-top:110px;padding-bottom:90px}
 .home-direction .direction-explanation h2{width:100%;max-width:34ch;font-size:clamp(32px,4.3vw,46px)}
 .home-services-list,.home-services-list.service-followup-group{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(300px,44vw,420px);gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:none;width:calc(100% + var(--gutter));margin-right:calc(-1 * var(--gutter));padding:6px var(--gutter) 6px 0}
 .home-services-list::-webkit-scrollbar{display:none}
 .home-services-list>.home-service-item{scroll-snap-align:start;min-width:0}
 .service-rail-controls:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px}
 .service-rail-hint{font:400 12px/1.5 var(--sans);color:var(--muted)}
 .service-rail-navigation{display:flex;align-items:center;gap:12px}
 .service-rail-navigation button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--rule);background:transparent;color:var(--ink);transition:opacity .3s ease}
 .service-rail-navigation button:disabled{opacity:.25;cursor:default}
 .service-rail-navigation svg{width:21px;height:21px}
 .service-rail-navigation [data-rail-prev] svg{transform:rotate(180deg)}
 .service-rail-navigation [data-rail-position]{min-width:36px;text-align:center;font:400 12px/1.5 var(--sans);font-variant-numeric:tabular-nums}
}
@media(max-width:700px){
 body:is(.perspective,.journal,.article)>.site-header{position:absolute}
 body:is(.perspective,.journal,.article)>.site-header:before{display:none}
 body:is(.perspective,.journal,.article).menu-is-closing>.site-header:after{height:0}
 body:is(.perspective,.journal,.article).menu-over-dark>.site-header .opening-menu:not([open]) summary{color:var(--white)}
 .home-direction .direction-photo{min-height:82svh;padding-top:100px;padding-bottom:80px}
 .home-services-list,.home-services-list.service-followup-group{grid-auto-columns:min(82vw,390px);gap:16px}
}
@media print{.service-rail-controls{display:none!important}.home-services-list,.home-services-list.service-followup-group{overflow:visible;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-right:0;padding:0}}

/* Five connected elements, with quiet markers rather than numbered stages. */
.process-point{width:24px;height:24px;left:calc(50% - 12px);top:168px}
.process-step:nth-child(even) .process-point{top:38px}
.project-flow.is-animating .process-step:nth-child(5){animation-delay:2.6s}
.project-flow.is-animating .process-connection:nth-child(4){animation-delay:2.2s}
.direction-explanation h2>.direction-support{margin-top:1.1em;font:inherit;text-wrap:balance}
.home-founder .founder-statement{position:relative;margin:36px 0 0;padding:28px 24px 0}
.founder-quote-mark{position:absolute;top:28px;left:0;color:var(--red);font:400 32px/1 var(--serif);pointer-events:none}
.founder-quote-close{display:inline-block;color:var(--red);margin-left:.1em;font:400 32px/1 var(--serif);vertical-align:-.1em}
.home-founder .founder-statement .founder-statement-lead{font:italic 400 clamp(20px,1.87vw,27px)/1.25 var(--serif);letter-spacing:-.02em;max-width:none}
.founder-statement-hotel{display:block;font:inherit}
.home-founder .founder-statement p+p{margin-top:0;font:400 clamp(20px,1.87vw,27px)/1.25 var(--serif);letter-spacing:-.02em}
@media(max-width:900px){.process-point{width:20px;height:20px;left:calc(50% - 10px);top:91px}.process-step:nth-child(even) .process-point{top:18px}.process-step h4{font-size:clamp(16px,2.4vw,22px)}}
@media(max-width:600px){
 .project-flow{height:490px;margin-top:20px}
 .process-wave-desktop{display:none}
 .process-wave-mobile{display:block;width:96px;height:490px}
 .process-steps{grid-template-columns:1fr;grid-template-rows:repeat(5,98px)}
 .process-step,.process-step:nth-child(even){padding:16px 0 0 110px;text-align:left}
 .process-point,.process-step:nth-child(even) .process-point{top:22px;left:22px}
 .process-step:nth-child(even) .process-point{left:54px}
 .process-step h4{font-size:23px}
 .approach-system-copy .process-step p{margin:7px 0 0;max-width:28ch;font-size:13px}
 .home-founder .founder-statement{margin-top:28px;padding-top:24px}
}

/* Keep the mobile menu inside the visible browser viewport, with one scroll area. */
@media(max-width:700px){
 .menu-overview{inset:0 0 auto;height:100vh;height:100dvh;box-sizing:border-box;padding:152px 24px calc(28px + env(safe-area-inset-bottom,0px));overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scroll-padding-top:152px;scroll-padding-bottom:28px}
 .menu-overview>.menu-items,.menu-overview>.menu-side,.menu-overview>.menu-feature{flex:0 0 auto;min-height:0}
 .menu-overview>.menu-items{width:100%;gap:4px}
 .menu-items>a{font-size:30px;line-height:1.15;min-height:44px}
 .menu-overview>.menu-side{position:static;width:100%;margin-top:24px}
 .menu-small-links{gap:4px;margin-bottom:0}
 .menu-small-links a{display:flex;align-items:center;min-height:36px}
 .menu-overview>.menu-feature{position:static;width:100%;margin-top:24px;grid-template-columns:68px minmax(0,1fr);padding:14px;gap:14px}
 .menu-feature img{width:68px;height:68px}
 .menu-feature strong{overflow-wrap:anywhere}
 .menu-feature-link{min-height:36px;align-items:center}
}

/* Remove the overlay only after its slide completes; move its mobile masthead with it. */
.menu-is-closing .menu-overview{transform:translate3d(0,-100%,0);transition:transform .6s cubic-bezier(.65,0,.35,1) .12s}
@media(max-width:700px){
 body.menu-is-open>.site-header:after{transform:translateY(0)}
 body.menu-is-closing>.site-header:after,
 body:is(.perspective,.journal,.article).menu-is-closing>.site-header:after{height:150px;transform:translateY(-100%);transition:transform .6s cubic-bezier(.65,0,.35,1) .12s}
}
@media(prefers-reduced-motion:reduce){.menu-is-closing .menu-overview,body.menu-is-closing>.site-header:after{transition:none}}

/* Mobile navigation fits one screen; the Journal remains a main navigation link. */
@media(max-width:700px){
 body{--mobile-menu-top:clamp(104px,22dvh,152px)}
 body .site-header .opening-word{--menu-logo-shift:calc(var(--mobile-menu-top) - 70px)}
 .menu-overview{padding-top:var(--mobile-menu-top);padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));overflow:hidden;overscroll-behavior:none}
 .menu-overview>.menu-feature{display:none}
 .menu-overview>.menu-items{gap:0}
 .menu-overview>.menu-side{margin-top:16px}
 .menu-small-links{gap:2px}
 body.menu-is-open>.site-header:after,
 body.menu-is-closing>.site-header:after,
 body:is(.perspective,.journal,.article).menu-is-open>.site-header:after,
 body:is(.perspective,.journal,.article).menu-is-closing>.site-header:after{height:calc(var(--mobile-menu-top) - 8px)}
}
@media(max-width:700px) and (max-height:620px){
 body{--mobile-menu-top:96px}
 .menu-overview>.menu-items{gap:0}
 .menu-items>a{font-size:28px;min-height:38px}
 .menu-overview>.menu-side{margin-top:12px}
 .menu-small-links{display:flex;flex-direction:column;gap:0}
 .menu-small-links a{min-height:30px;font-size:13px;line-height:1.3}
}
@media(max-width:700px) and (max-height:460px){
 body{--mobile-menu-top:56px}
 .menu-overview{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
 .menu-overview>.menu-items{display:flex;flex-direction:column;gap:0}
 .menu-items>a{font-size:clamp(18px,5dvh,22px);min-height:clamp(22px,6dvh,28px)}
 .menu-small-links a{min-height:clamp(22px,6dvh,28px)}
 .menu-overview>.menu-side{margin-top:8px}
}

/* Give the gathering room to breathe: copy above the faces, and above the art on phones. */
@media(min-width:701px){
 .home-direction .direction-photo{height:82svh;min-height:0;align-items:center;padding-top:clamp(32px,5svh,64px);padding-bottom:clamp(32px,5svh,64px)}
 .direction-photo>img{object-position:center center}
 .direction-photo .direction-explanation{transform:none}
 .home-direction .direction-explanation h2{width:90%;max-width:1280px;font-size:clamp(30px,3.5vw,50px);line-height:1.12}
 .direction-explanation h2>.direction-support{margin-top:.35em}
 .direction-photo:after{background:linear-gradient(180deg,rgba(19,13,8,.64),rgba(19,13,8,.3) 28%,transparent 48%)}
}
@media(max-width:700px){
 .home-direction .direction-photo{display:flex;flex-direction:column;justify-content:center;min-height:82svh;padding:88px var(--gutter) 56px;background:#271e15;color:var(--white)}
 .direction-photo .direction-explanation{transform:none;padding:0;text-shadow:0 1px 4px rgba(0,0,0,.7)}
 .home-direction .direction-explanation h2{font-size:clamp(28px,7vw,34px);line-height:1.15;width:100%;max-width:none;-webkit-text-stroke:1px #373737;paint-order:stroke fill;text-shadow:0 1px 4px rgba(0,0,0,.7)}
 .direction-explanation h2>.direction-support{margin-top:.35em}
 .direction-photo>img{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;object-fit:cover;object-position:center;aspect-ratio:auto}
 .direction-photo:after{display:block;background:linear-gradient(180deg,rgba(19,13,8,.5),rgba(19,13,8,.3) 65%,rgba(19,13,8,.15))}
 .direction-photo ::selection{background:var(--red);color:var(--ivory)}
}

/* A single article link, with its reading action revealed over the artwork. */
.journal-image{position:relative}
.journal-read-more{position:absolute;left:50%;top:50%;display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:12px 22px;white-space:nowrap;border:1px solid currentColor;background:transparent;color:#fff;font:400 14px/1.5 var(--sans);opacity:0;transform:translate(-50%,calc(-50% + 8px));transition:opacity .3s ease,transform .4s cubic-bezier(.16,1,.3,1);pointer-events:none}
.journal-read-more .menu-outbound-arrow{width:14px;height:14px}
.journal-card:hover .journal-read-more,.journal-card:focus-visible .journal-read-more{opacity:1;transform:translate(-50%,-50%)}
.journal-card:focus-visible .journal-image img{filter:brightness(.72)}
@media(prefers-reduced-motion:reduce){.journal-read-more{transition:none}}
@media(max-width:700px){
 .journal-card .journal-image{aspect-ratio:3/4}
 .journal-card .journal-image:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.3) 42%,transparent);pointer-events:none}
 .journal-card .journal-read-more,.journal-card:is(:hover,:focus-visible) .journal-read-more{top:auto;bottom:24px;z-index:1;opacity:1;transform:translateX(-50%)}
 .journal-card .journal-image img,.journal-card:is(:hover,:focus-visible) .journal-image img{filter:none}
}

.direction-photo>.artwork-credit,.article-painting>.artwork-credit{position:absolute;right:24px;bottom:16px;z-index:1;max-width:calc(100% - 48px);color:#fff;font:400 11px/1.45 var(--sans);text-align:right;text-decoration:none;text-shadow:0 1px 3px rgba(0,0,0,.8)}
.artwork-credit cite{font-style:italic}
.article-painting{position:relative}.article-painting>.artwork-credit{margin:0}
@media(max-width:700px){.direction-photo>.artwork-credit,.article-painting>.artwork-credit{right:12px;bottom:10px;max-width:calc(100% - 24px);font-size:10px}}

/* Frame Enrique closely on desktop; retain the setting in a wide mobile crop. */
.home-founder picture{overflow:hidden}
.home-founder picture>img{object-position:right bottom;transform:scale(1.45);transform-origin:right bottom}
@media(max-width:700px){.home-founder picture>img{aspect-ratio:16/9;object-position:50% 82%;transform:none}}

/* Keep the lightweight preview visible while each lazy image loads and decodes. */
.home-service-item [data-service-preview]>img{animation:none!important;opacity:1;transition:opacity .55s ease}
.home-service-item .service-image-loading>img{opacity:0}
@media(prefers-reduced-motion:reduce){.home-service-item [data-service-preview]>img{transition:none}}

@media(max-width:700px){
 .contact-form .field textarea{height:calc(5.8em + 38px);min-height:calc(5.8em + 38px)}
}

.footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px}
.footer-legal>a{text-decoration:none;line-height:1.5;padding:6px 0;transition:opacity .18s ease}
.footer-legal>a:hover{opacity:.48}
.privacy-page{background:var(--ivory);color:var(--ink);padding-top:clamp(112px,13vw,176px);padding-bottom:clamp(72px,9vw,128px)}
.privacy-page>header,.privacy-page>section{width:min(100%,720px);margin-left:auto;margin-right:auto}
.privacy-page h1{font-size:clamp(42px,5vw,68px);line-height:1.08;text-wrap:balance}
.privacy-updated{margin-top:22px;font:400 14px/1.6 var(--sans);color:var(--muted)}
.privacy-page>section{margin-top:36px}
.privacy-page h2{font-size:clamp(25px,2.5vw,32px);line-height:1.2;letter-spacing:-.02em;margin-bottom:14px}
.privacy-page section p{font:400 16px/1.7 var(--sans);max-width:68ch}
.privacy-page section p+p{margin-top:14px}
@media(max-width:700px){.footer-legal{gap:8px 16px}.privacy-page>section{margin-top:28px}}

/* Language remains independent of the secondary links' hover dimming. */
.menu-language{display:none}
@media(min-width:1101px){
 .menu-side .menu-small-links{margin-bottom:32px}
 .menu-language{display:flex;align-items:center;gap:12px;font:400 14px/1.55 var(--sans)}
 .menu-language .language{gap:8px;font-size:14px}
 .menu-language .language a{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:44px;padding:0;opacity:.6;transition:opacity .18s ease;text-decoration:none}
 .menu-language .language a[aria-current],.menu-language .language a:hover,.menu-language .language a:focus-visible{opacity:1;text-decoration:none}
}

@media(min-width:1101px){.menu-small-links>a:first-child{white-space:nowrap}}

.contact-form .contact-privacy{margin:0;font:400 12px/1.55 var(--sans);color:var(--white);width:100%;max-width:none;align-self:stretch}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px;transition:opacity .18s ease}
.contact-privacy a:hover{opacity:.48}
.contact-form .contact-privacy+.form-submit{margin-top:0}
@media(max-width:1100px){
 .menu-side .menu-small-links{margin-bottom:20px}
 .menu-language{display:flex;align-items:center;gap:12px;font:400 14px/1.55 var(--sans)}
 .menu-language .language{gap:8px;font-size:14px}
 .menu-language .language a{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:44px;padding:0;opacity:.6;text-decoration:none}
 .menu-language .language a[aria-current],.menu-language .language a:hover,.menu-language .language a:focus-visible{opacity:1;text-decoration:none}
}
@media(max-width:700px) and (max-height:750px){
 body{--mobile-menu-top:96px}
 .menu-items>a{font-size:28px;min-height:38px}
 .menu-side .menu-small-links{margin-bottom:16px}
 .menu-small-links a{font-size:13px;line-height:1.3;min-height:26px}
}
@media(max-width:700px) and (max-height:460px){
 body{--mobile-menu-top:56px}
 .menu-items>a{font-size:clamp(18px,5dvh,22px);min-height:clamp(22px,6dvh,28px)}
 .menu-side .menu-small-links{margin-bottom:10px}
 .menu-small-links a{min-height:22px;font-size:12px}
 .menu-language,.menu-language .language{font-size:12px}
 .menu-language .language a{min-height:30px}
}

.journal-image,.article-painting{background-image:url("data:image/webp;base64,UklGRpQBAABXRUJQVlA4IIgBAAAQCQCdASogACsAPt1oq1GopaOipWmZEBuJbACdMoSBDIDonPo3ZXvOBX/HAJGjn/xDwG8lLFYIBWmq1pnOgcV/uSrdHES8fcct0HZY6JsYDgAA/ryePniUpEUnGyICTOmkMUIJs1IBIRLQtqmKhUBTQvAWjxhb+ApPMBPjnTm4L41GIGIDRSu1i5wNe3jxfX8LiYWVIxB+5Xc0q/dLRt6vy3nPesLvx76Dn6++e0xAdEcdGloUfDWK1W8Nwgowt7BSj0OhyQecoA91gpyyKXFujQoHIYfa/blhYp4RjTDeSfPq/T/rM+i0YxuJ+fgGPLo0Qy6aqOM1BNMbwkFYPtFgKpn9S9ligNEIAt9Gx6ZXmef+vQGo+73GTykIuWjieXzzgChWEEKc0qWjix8D8aXkCrffc3soget3/C0dzC2+pFr3nyh8siuHrKHqRaUWvHo4LEbq489v8yf2XkTIXteLhdi8J8nrqLI+PJ8bfZeXAnxO8MDedLcGrxV7JxUo9/98j5ZajAQAAA==");background-size:cover;background-position:center}

.hospitality-statement{background:var(--white);color:var(--ink);text-align:center;padding-top:clamp(56px,7vw,100px);padding-bottom:clamp(56px,7vw,100px)}
.hospitality-statement p{max-width:1000px;margin-left:auto;margin-right:auto;font:400 clamp(26px,3.2vw,44px)/1.2 var(--serif);letter-spacing:-.02em;text-wrap:balance}
.hospitality-statement p+p{margin-top:12px}

html[lang="es"] .home-services-followup h2{max-width:none;white-space:nowrap;font-size:clamp(26px,2.8vw,44px)}
@media(min-width:1101px){html[lang="es"] .home-services-heading.home-services-followup{grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr)}}
@media(max-width:700px){html[lang="es"] .home-services-followup h2{font-size:clamp(22px,7vw,32px)}}

.home-approach .perspective-principles{padding-top:clamp(48px,5vw,76px)}
@media(max-width:700px){.home-approach .perspective-principles{padding-top:40px}}

.hospitality-statement{position:relative;isolation:isolate;background:#191715 url('/assets/hospitality-statement-lounge.png') center 58%/cover no-repeat;color:var(--white);padding-top:clamp(80px,10vw,144px);padding-bottom:clamp(80px,10vw,144px)}
.hospitality-statement:before{content:'';position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,.35)}
.hospitality-statement p+p{margin-top:10px}
@media(max-width:700px){.hospitality-statement{background-position:center 60%;padding-top:72px;padding-bottom:72px}}

.hospitality-statement{min-height:clamp(440px,36vw,620px);display:flex;align-items:flex-start;justify-content:center;background-image:url('/assets/hospitality-statement-sunset.png');background-position:center 65%;padding-top:clamp(48px,5vw,76px);padding-bottom:180px}
.hospitality-statement:before{background:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,.12) 55%,transparent)}
@media(max-width:700px){.hospitality-statement{min-height:560px;background-position:center 70%;padding-top:48px;padding-bottom:260px}.hospitality-statement p{font-size:clamp(25px,6.5vw,32px)}}

.hospitality-statement{min-height:clamp(340px,28vw,460px);background-image:url('/assets/hospitality-statement-sunset-cropped.jpg');background-position:center bottom;padding-top:clamp(36px,4vw,56px);padding-bottom:120px}
.hospitality-statement:before{display:none}
.hospitality-statement p{-webkit-text-stroke:.6px #3b3b3b;paint-order:stroke fill;text-shadow:none}
@media(max-width:700px){.hospitality-statement{min-height:420px;background-position:center bottom;padding-top:36px;padding-bottom:140px}}

.hospitality-statement{background-position:center 65%}
@media(max-width:700px){.hospitality-statement{background-position:center 0%}}

.hospitality-statement{background-position:center 90%}

@media(max-width:700px){.hospitality-statement{min-height:294px;padding-top:25px;padding-bottom:98px}}

.home-service-item [data-service-preview="0"]{background-position:88% 59%}
.home-service-item [data-service-preview="0"]>img{object-position:88% 59%;transform-origin:88% 59%;transform:scale(1.05)}
