/* Caspi / October 2026. Additive refinement of the deployed Fieldwork derivative. */
:root{--paper:#f6f5ef;--ink:#202b27;--muted:#616b64;--line:#d6dbd2;--accent:#b9c9bd;--glass-light:50%;}
html{scrollbar-gutter:stable}
.hero-media video{opacity:0;transition:opacity .7s}.hero-media video.decoded{opacity:1}
.hero-media{transform:translateY(clamp(0px,var(--hero-offset),35px))}
.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
::selection{background:#cedbce;color:#182d25}
.site-header{background:linear-gradient(110deg,#f8f8f2,#e7ece4 65%,#eeece1);border-bottom:1px solid #b8c5b8;box-shadow:0 8px 35px #142d2310}
.site-header nav a{position:relative;transition:color .25s}
.site-header nav a:hover{color:#667c68}
.site-header nav a:last-child{padding:11px 22px;border:1px solid #9baea0;border-radius:2px;background:linear-gradient(120deg,#fcfff9aa,#bbcec070,#ecdfc980);box-shadow:inset 0 1px #fff,0 4px 12px #2943350b}
.hero-shade{background:linear-gradient(90deg,#10261f8c,transparent 82%),linear-gradient(0deg,#0c211cbd,transparent 65%)}
.hero-copy{bottom:25%}.hero h1{letter-spacing:-.055em;text-shadow:0 3px 32px #091a1840}.hero h1 em{color:#f2f1dd;letter-spacing:-.04em}
.hero-copy .eyebrow{letter-spacing:.18em}.light-link{padding:13px 22px;margin-top:32px;border:1px solid #dfebd982;background:linear-gradient(120deg,#d4e9d72b,#213a365e,#c4a57226);backdrop-filter:blur(18px) saturate(125%);box-shadow:inset 0 1px #ffffff35,0 8px 32px #071c2920;transition:background .3s,box-shadow .3s}
.light-link:hover,.light-link:focus-visible{background:#d8e5d43d;box-shadow:inset 0 1px #ffffff70,0 8px 28px #071c2935}
.hero-bottom{border-top:1px solid #e3eddd40;padding-top:20px}.motion-toggle{min-height:44px;background:#172e2638;backdrop-filter:blur(12px);border-color:#ffffff55}
.about{position:relative}.about:before{content:"";position:absolute;inset:0 -5.55%;z-index:-1;background:radial-gradient(ellipse at 85% 15%,#dce6d48f,transparent 65%)}
.disciplines span{border-color:#aebeab;color:#425747}.feature{background:linear-gradient(130deg,#e4e9dd,#e9e8de 72%,#e5d9c5)}
.feature-photo{box-shadow:16px 20px 70px #253c2721}.feature-story{padding-top:16px}.feature-story figure img{box-shadow:0 22px 40px #3143381c}.feature-story h2{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(55px,5.7vw,82px);letter-spacing:-.045em}
.portfolio-toolbar{padding:16px 0}.filters button{border-radius:2px;min-height:44px;transition:background .25s,color .25s}.filters button[aria-pressed=true]{background:linear-gradient(125deg,#3e5c4c,#243f35);box-shadow:inset 0 1px #a9c4aa55,0 4px 12px #243f351a}
.project-image{height:auto;aspect-ratio:1.34;box-shadow:0 10px 24px #243b2710}.project-image img{transition:scale .75s cubic-bezier(.2,.65,.3,1)}
.project-category,.image-action{background:linear-gradient(125deg,#fbfcf0ee,#d9e6d3db,#e5d6bde0);border:1px solid #ffffff90;backdrop-filter:blur(16px);box-shadow:inset 0 1px #fff8,0 6px 20px #1028201c}
.project-info{border-bottom:1px solid var(--line);padding-bottom:22px}.project-plus{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;border:1px solid #bbc9b8;transition:background .3s,transform .3s}.project-card:hover .project-plus{background:#dde6d8;transform:rotate(90deg)}
.updates-list article{transition:background .3s}.updates-list article:hover{background:#e9eddf70}.update-meta span{color:#45604d}
.approach{position:relative;isolation:isolate;background:radial-gradient(ellipse at var(--glass-light) 0%,#506751 0%,transparent 58%),linear-gradient(130deg,#21372e,#142c26 65%,#394136);overflow:hidden}
.approach:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(115deg,transparent 15%,#d7dda309 36%,transparent 55%);border-top:1px solid #cfddb34a}
.approach details{border-color:#c4d1b538}.approach summary{min-height:70px}.approach .detail-photo{box-shadow:0 18px 50px #051c2540}.contact{position:relative}.contact h2 em{color:#506f56}.contact form{padding:32px;background:linear-gradient(125deg,#eaf0e680,#f8f6eaaa,#dce8d375);border:1px solid #c6d2bf;box-shadow:inset 0 1px #fff,0 18px 45px #314b3210}.submit{min-height:48px;background:linear-gradient(120deg,#47664d,#203c30);box-shadow:inset 0 1px #bad0b43a,0 8px 20px #23453120}.text-link{transition:color .2s}.text-link:hover{color:#6c7f58}
.dialog-top{background:#edf1e7ed;backdrop-filter:blur(18px)}dialog{box-shadow:0 35px 100px #001a1f55}.gallery-control button,.close-dialog{min-height:44px;min-width:44px}.footer-top{border-color:#bfcdba}
@media(min-width:1001px){.project-card:nth-child(even){padding-top:80px}.project-card:last-child:nth-child(odd){width:100%}.project-grid{gap:44px 50px}.feature-story{position:sticky;top:30px}}
@media(max-width:1000px){.hero h1{font-size:clamp(52px,7vw,70px)}.contact form{padding:24px}.feature-story h2{font-size:60px}}
@media(max-width:700px){.site-header nav{background:#eff2e8}.site-header nav a:last-child{margin-top:12px}.hero{min-height:520px}.hero h1{font-size:clamp(38px,10.8vw,72px)}.hero-copy{bottom:25%}.hero-copy .eyebrow{letter-spacing:.13em}.hero-bottom{padding-top:15px;gap:12px}.hero-bottom>p{max-width:155px}.light-link{font-size:13px;padding:12px 18px}.feature-story h2{font-size:55px}.project-image{aspect-ratio:1.1;height:auto}.project-info{padding-bottom:18px}.contact form{padding:24px 20px}.image-action{display:block;opacity:1;transform:none;padding:7px 10px;right:14px;bottom:14px}.feature-photo .image-action{bottom:60px}.project-card{margin-bottom:40px}.hero-side{display:none}}
@media(max-width:350px){.hero-copy .eyebrow{max-width:230px}.hero h1{font-size:37px}.hero-bottom>p{max-width:126px}.motion-toggle{padding:8px;gap:6px}.feature-story h2{font-size:48px}.contact form{padding:22px 16px}}
@media(prefers-reduced-motion:reduce){.project-card:hover .project-plus{transform:none}}
@media(min-width:701px){.project-card:last-child:nth-child(odd){width:100%;grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;background:#e6ebe0}.project-card:last-child:nth-child(odd) .project-image{aspect-ratio:1.35}.project-card:last-child:nth-child(odd) .project-info{padding:clamp(24px,3.3vw,48px);border:0;flex-wrap:wrap}.project-card:last-child:nth-child(odd) .project-info h3{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(38px,4.5vw,62px)}.project-card:last-child:nth-child(odd) .project-info p{font-size:15px}.project-card:last-child:nth-child(odd) .project-number{flex-basis:100%;margin-bottom:18px}}
/* Film carries the entrance; headline stays readable through pause/resume. */
.hero-copy>*{animation:none!important}

@media(min-width:701px) and (max-width:1100px){.site-header .brand img{width:145px}.site-header nav{gap:15px}.site-header nav a{font-size:12px}.site-header nav a:last-child{padding:10px 14px}}

/* Move a composited light layer instead of repainting the section gradient. */
.approach{background:linear-gradient(130deg,#21372e,#142c26 65%,#394136)}.approach:after{content:"";position:absolute;inset:0 -50%;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 0%,#506751 0%,transparent 58%);transform:translateX(calc(var(--glass-light) - 50%))}
dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0b110ee8}
/* Leadership belongs beside the company story, with portraits above names. */
.home-leadership{padding-bottom:120px}.home-leadership-grid{display:grid;grid-template-columns:.9fr 1fr 1fr;gap:36px;align-items:start}.home-leadership-copy{padding-top:28px}.home-leadership h2{font-size:clamp(34px,3.6vw,54px);line-height:1.08;letter-spacing:-.045em;margin:24px 0}.home-leadership h2 em{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:1.12em;color:#496450}.leadership-note{font-size:15px;line-height:1.7;color:var(--muted);max-width:310px}.leadership-link{display:inline-flex;gap:25px;align-items:center;min-height:48px;margin-top:24px;border-bottom:1px solid #a9bba8;font-size:14px}.home-leader-card{display:block;color:var(--ink);text-decoration:none}.home-leader-card.joshua{padding-top:52px}.home-leader-image{aspect-ratio:.76;overflow:hidden;background:#e4e9e0}.home-leader-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 12%;transition:transform .5s}.home-leader-card:hover img{transform:scale(1.015)}.home-leader-name{position:relative;padding:22px 22px 24px;border:1px solid #fff;background:linear-gradient(120deg,#edf5e7,#d4e3d7 60%,#d3e2e8);box-shadow:inset 0 1px #fff,0 12px 30px #183d2910}.joshua .home-leader-name{background:linear-gradient(125deg,#e4edf0,#d9dfe9 60%,#dceadc)}.home-leader-name h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(28px,2.8vw,42px);line-height:1.1;letter-spacing:-.03em;font-weight:400;margin:10px 20px 0 0}.home-leader-name .eyebrow{font-size:9px;letter-spacing:.12em}.home-leader-name>span{position:absolute;right:18px;bottom:26px;font-size:20px}.home-leader-card:focus-visible{outline:3px solid #476ca0;outline-offset:6px}
@media(min-width:701px) and (max-width:1000px){.home-leadership-grid{gap:24px;grid-template-columns:1fr 1fr}.home-leadership-copy{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 40px;padding-top:0}.home-leadership-copy>.eyebrow{grid-column:1/-1}.home-leadership h2{grid-row:2/4;margin-bottom:0;font-size:44px}.leadership-note{margin-top:24px}.leadership-link{justify-self:start;margin-top:12px}.home-leader-card.joshua{padding-top:38px}}
@media(max-width:700px){.home-leadership{padding-bottom:75px}.home-leadership-grid{grid-template-columns:1fr 1fr;gap:14px}.home-leadership-copy{grid-column:1/-1;padding:0 0 18px}.home-leadership h2{font-size:43px;max-width:330px;margin:20px 0}.leadership-note{font-size:14px;max-width:330px}.leadership-link{margin-top:18px}.home-leader-card.joshua{padding-top:24px}.home-leader-image{aspect-ratio:.70}.home-leader-name{padding:16px 12px 18px}.home-leader-name h3{font-size:26px;margin-right:0;max-width:120px}.home-leader-name .eyebrow{font-size:7px;letter-spacing:.07em;min-height:20px}.home-leader-name>span{display:none}}
@media(prefers-reduced-motion:reduce){.home-leader-card:hover img{transform:none}}
@media(max-width:700px){.home-leader-name .eyebrow{font-size:9px;min-height:27px}}
/* Mobile audit: keep the primary action in reach on short landscape screens. */
@media (orientation:landscape) and (max-height:500px) and (max-width:1000px){
 .hero{height:auto;min-height:calc(100svh - 84px);max-height:none}
 .hero-copy{position:relative;left:5%;bottom:auto;width:90%;padding:20px 0 86px}
 .hero-copy .eyebrow{margin-bottom:10px}
 .hero h1{font-size:clamp(30px,4.4vw,40px);line-height:1.04}
 .hero h1 em{margin-top:3px}
 .light-link{margin-top:16px;min-height:44px;padding:10px 18px}
 .hero-bottom{bottom:12px;padding-top:10px}
 .hero-side{display:none}
}

/* Discreet playback control; accessible names retained. */
.motion-toggle,.motion-icon{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:inline-grid;place-items:center;font-size:18px;border-radius:50%;gap:0}
