}
.work-head{max-width:var(--maxw);margin:0 auto 40px;display:flex;justify-content:space-between;align-items:baseline;border-bottom:var(--line);padding-bottom:18px;}
.work-head h2{font-family:var(--sans);font-weight:400;font-size:1.3rem;}
.work-head a{font-family:var(--cond);font-size:12px;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:8px;}
.work-list{max-width:var(--maxw);margin:0 auto;display:flex;flex-direction:column;gap:64px;}
.project{display:grid;grid-template-columns:1.6fr 1fr;gap:0;border:1px solid var(--rule);}
.project.reverse{grid-template-columns:1fr 1.6fr;}
.project.reverse .project-media{order:2;}
.project.reverse .project-panel{order:1;}
.project-media{position:relative;overflow:hidden;aspect-ratio:16/10;}
.project-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.project:hover .project-media img{transform:scale(1.045);}
.reduced-motion .project:hover .project-media img{transform:none;}
.project-media.color-panel{background:var(--accent-a);display:flex;align-items:center;justify-content:center;padding:30px;}
.project-media.color-panel img{border-radius:2px;box-shadow:0 30px 60px rgba(0,0,0,.35);}
.project-panel{background:var(--bg-elevated);padding:38px;display:flex;flex-direction:column;justify-content:space-between;}
[data-theme="night"] .project-panel{background:var(--bg-elevated);}
.project-panel .top .name{font-family:var(--sans);font-weight:500;font-size:1.05rem;}
.project-panel .top .disciplines{margin-top:6px;font-size:12px;color:var(--ink-faint);}
.project-panel .desc{margin-top:18px;font-size:14px;color:var(--ink-soft);line-height:1.6;}
.project-panel .bottom{margin-top:24px;}
.project-sector{
  margin-top:20px;padding-top:20px;border-top:var(--line);
  font-family:var(--serif);font-size:1.5rem;
}
.project-sector .label{display:block;margin-bottom:4px;color:var(--ink-faint);}

/* ================= COLLABORATION STATEMENT ================= */
.collab{background:var(--panel-statement);padding:110px var(--pad) 0;transition:background var(--dur);}
.collab-inner{max-width:1200px;margin:0 auto;border-top:2px solid var(--statement-text);padding-top:34px;padding-bottom:70px;}
.collab-inner p{
  font-family:var(--serif);color:var(--statement-text);font-size:var(--fs-h2);line-height:1.22;margin:0;
}
.collab-inner .readmore{margin-top:30px;display:inline-block;color:var(--statement-text);}
.collab-strip{display:grid;grid-template-columns:repeat(3,1fr);height:220px;overflow:hidden;}
.collab-strip img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15);}

/* ================= ABOUT PREVIEW ================= */
.about-prev{position:relative;min-height:78vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;}
.about-prev img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.about-prev::before{content:"";position:absolute;inset:0;background:var(--scrim);}
.about-prev-content{position:relative;z-index:2;color:#fff;max-width:820px;padding:0 24px;}
.about-prev-content h2{font-family:var(--serif);font-size:var(--fs-hero);line-height:1.05;}
.about-prev-content p{margin:22px auto 0;max-width:52ch;font-size:14px;color:rgba(255,255,255,.85);}
.about-btn{
  margin-top:28px;display:inline-block;background:#100D08;color:#F7EED4;border-radius:100px;
  padding:14px 30px;font-size:13px;font-weight:500;
}

/* ================= CONTACT ================= */
.contact{background:var(--panel-human);padding:110px var(--pad) 50px;scroll-margin-top:70px;transition:background var(--dur);}
.contact-inner{max-width:var(--maxw);margin:0 auto;}
.contact h2{font-family:var(--serif);font-size:var(--fs-h2);line-height:1.08;}
.contact .sub{margin-top:16px;font-size:14px;color:var(--ink-soft);}
.footer-grid{margin-top:70px;padding-top:26px;border-top:var(--line);display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.footer-grid b{display:block;font-family:var(--sans);font-weight:600;margin-bottom:14px;font-size:13px;}
.footer-grid ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13.5px;color:var(--ink-soft);}
.footer-grid ul a:hover{color:var(--ink);}
.footer-copy{grid-column:4;text-align:right;font-size:12.5px;color:var(--ink-faint);align-self:end;}
.footer-logo{margin-top:70px;display:flex;justify-content:center;padding-top:30px;border-top:2px solid var(--ink);}
.footer-logo img{height:120px;display:block;}
.footer-logo .logo-black{display:block;}
.footer-logo .logo-white{display:none;}
html[data-theme="night"] .footer-logo .logo-black{display:none;}
html[data-theme="night"] .footer-logo .logo-white{display:block;}

/* Fullscreen menu logo (always on near-black, always white ink).
   Vertical/stacked mark needs more height than the old horizontal
   wordmark did to stay legible at three lines. */
.fullnav-logo{display:inline-block;}
.fullnav-logo img{height:var(--logo-h);width:auto;display:block;} /* shared with .nav-logo — identical size/ratio via --logo-h */

/* ================= SIDE RAIL (persistent) ================= */
.side-rail{
  position:fixed;left:14px;top:60%;transform:translateY(-50%);z-index:400;
  display:flex;flex-direction:column;align-items:center;gap:12px;
  font-size:11px;color:#fff;
  text-shadow:0 1px 3px rgba(0,0,0,.55), 0 0 14px rgba(0,0,0,.25);
  mix-blend-mode:difference;
}
.side-rail .vlabel{writing-mode:vertical-rl;letter-spacing:.06em;}
.side-rail .vline{width:1px;height:50px;background:currentColor;opacity:.5;}
.side-rail button{background:transparent;border:none;color:inherit;font-size:13px;}
@media (max-width:900px){.side-rail{display:none;}}

/* ================= REVEAL ANIMATION (generic) ================= */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.reveal.in-view{opacity:1;transform:translateY(0);}
.reduced-motion .reveal{opacity:1;transform:none;transition:none;}
.reduced-motion .plan3-step{transition:none;opacity:1;transform:none;}

/* ================= MOBILE ================= */
@media (max-width:980px){
  .hero{grid-template-columns:1fr;min-height:auto;}
  .hero-slider{height:62vh;}
  .hero-copy{padding:44px var(--pad) 56px;gap:24px;}
  .hero-blocks{grid-template-columns:1fr;gap:20px;}
  .positioning{padding:70px var(--pad);}
  .positioning .grid{grid-template-columns:1fr;gap:34px;}
  .plan3{padding:70px var(--pad);}
  .plan3-steps{grid-template-columns:1fr;gap:0;}
  .plan3-step{border-bottom:1px solid var(--rule);}
  .work{padding:70px var(--pad) 10px;}
  .project,.project.reverse{grid-template-columns:1fr;}
  .project.reverse .project-media,.project.reverse .project-panel{order:initial;}
  .collab{padding:70px var(--pad) 0;}
  .collab-inner{padding-bottom:40px;}
  .collab-strip{grid-template-columns:repeat(3,1fr);height:120px;}
  .about-prev{min-height:64vh;}
  .contact{padding:70px var(--pad) 34px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .footer-copy{grid-column:1/-1;text-align:left;margin-top:10px;}
  .nav-phone{display:none;}
  .fullnav-bottom{gap:30px;}
}

/* ================= ABOUT — HERO ================= */
.about-hero{padding-top:0;display:grid;grid-template-columns:1.15fr 1fr;min-height:92vh;}
.about-hero-media{position:relative;overflow:hidden;background:#000;}
.about-hero-media img{width:100%;height:100%;object-fit:cover;display:block;object-position:50% 35%;}
.about-hero-copy{
  background:var(--panel-human);color:var(--ink);
  display:flex;flex-direction:column;justify-content:center;gap:26px;
  padding:calc(var(--pad) + 70px) var(--pad) var(--pad);
  transition:background var(--dur) var(--ease), color var(--dur) var(--ease);
}
.about-hero-copy .label{color:var(--ink-faint);text-align:right;}
.about-hero-copy h1{font-family:var(--serif);font-size:var(--fs-hero);line-height:1.06;text-align:right;}
.about-hero-copy .about-intro{display:flex;flex-direction:column;gap:16px;max-width:46ch;margin-left:auto;}
.about-hero-copy .about-intro p{margin:0;font-size:var(--fs-body);color:var(--ink-soft);line-height:1.65;}

/* ================= ABOUT — MAIL RAIL (right, persistent) ================= */
.side-rail-right{
  position:fixed;right:14px;left:auto;top:60%;transform:translateY(-50%);z-index:400;
  display:flex;flex-direction:column;align-items:center;gap:12px;
  font-size:11px;color:#fff;
  text-shadow:0 1px 3px rgba(0,0,0,.55), 0 0 14px rgba(0,0,0,.25);
  mix-blend-mode:difference;
}
.side-rail-right a{display:flex;flex-direction:column;align-items:center;gap:12px;color:inherit;}
.side-rail-right .vlabel{writing-mode:vertical-rl;letter-spacing:.06em;}
.side-rail-right .vline{width:1px;height:50px;background:currentColor;opacity:.5;}
@media (max-width:900px){.side-rail-right{display:none;}}

/* ================= EXPERTISE ================= */
.expertise{background:var(--authority);color:var(--authority-text);padding:110px var(--pad);scroll-margin-top:90px;transition:background var(--dur), color var(--dur);}
.expertise-head{max-width:var(--maxw);margin:0 auto;display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:18px;}
[data-theme="day"] .expertise-head{border-bottom-color:rgba(16,13,8,.18);}
.expertise-head h2{font-family:var(--sans);font-weight:400;font-size:1.3rem;}
.expertise-head a{font-family:var(--cond);font-size:12px;letter-spacing:.06em;text-transform:uppercase;}
.expertise-intro{max-width:68ch;margin:26px auto 46px;font-size:var(--fs-body);line-height:1.7;color:var(--authority-text);opacity:.8;}

.expertise-accordion{
  max-width:var(--maxw);margin:0 auto;display:flex;align-items:stretch;gap:1px;
  background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.18);
}
[data-theme="day"] .expertise-accordion{background:rgba(16,13,8,.18);border-color:rgba(16,13,8,.18);}
.expertise-item{
  position:relative;min-height:clamp(420px,52vw,560px);background:var(--authority);
  flex:0.85 1 0%;min-width:0;overflow:hidden;cursor:pointer;
  opacity:0;transform:translateY(24px);
  transition:opacity .8s var(--ease),transform .8s var(--ease),flex-grow .7s var(--ease),box-shadow .5s var(--ease);
}
.expertise-item.in-view{opacity:1;transform:translateY(0);}
.expertise-item:nth-child(2){transition-delay:.08s;}
.expertise-item:nth-child(3){transition-delay:.16s;}
.expertise-item:nth-child(4){transition-delay:.24s;}
.expertise-item:nth-child(5){transition-delay:.32s;}
.expertise-item.is-active{flex:2.7 1 0%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);}
[data-theme="day"] .expertise-item.is-active{box-shadow:inset 0 0 0 1px rgba(16,13,8,.4);}

.expertise-item-media{position:absolute;inset:0;z-index:0;}
.expertise-item-media img{
  width:100%;height:100%;object-fit:cover;object-position:50% 22%;
  filter:saturate(.82) brightness(.76);transform:scale(1.06);
  transition:filter .7s var(--ease), transform 1.1s var(--ease);
}
.expertise-item.is-active .expertise-item-media img{filter:saturate(1) brightness(1);transform:scale(1);}
.expertise-item-media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,.22) 40%, rgba(0,0,0,.82) 100%);
  transition:opacity .6s var(--ease);
}
.expertise-item.is-active .expertise-item-media::after{opacity:.72;}

.expertise-item-content{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:space-between;padding:26px 20px 28px;}
.expertise-item-toggle{
  all:unset;box-sizing:border-box;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;
  width:100%;cursor:pointer;color:var(--authority-text);
}
.expertise-item-title{
  font-family:var(--cond);font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  font-size:clamp(11.5px,1.1vw,13px);padding-top:14px;border-top:2px solid currentColor;
  display:block;max-width:16ch;
}
.expertise-item-arrow{
  flex:none;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.14);
  display:flex;align-items:center;justify-content:center;font-size:15px;
  transition:background .3s,transform .3s;
}
[data-theme="day"] .expertise-item-arrow{background:rgba(16,13,8,.12);}
.expertise-item.is-active .expertise-item-arrow{background:rgba(255,255,255,.3);transform:rotate(45deg);}
[data-theme="day"] .expertise-item.is-active .expertise-item-arrow{background:rgba(16,13,8,.22);}
.expertise-item:hover .expertise-item-arrow{background:rgba(255,255,255,.26);}
[data-theme="day"] .expertise-item:hover .expertise-item-arrow{background:rgba(16,13,8,.18);}

.expertise-item-panel{
  max-height:0;opacity:0;overflow:hidden;
  transition:max-height .6s var(--ease), opacity .45s var(--ease) .05s;
}
.expertise-item.is-active .expertise-item-panel{max-height:420px;opacity:1;}
.expertise-item-panel h3{font-family:var(--serif);font-size:clamp(1.05rem,1.6vw,1.4rem);line-height:1.2;margin-bottom:12px;}
.expertise-item-panel p{margin:0 0 12px;font-size:13.5px;line-height:1.65;color:rgba(255,255,255,.78);}
.expertise-item-panel p.lead{font-weight:500;color:var(--authority-text);opacity:.95;}
.expertise-item-link{
  display:inline-flex;align-items:center;gap:8px;margin-top:4px;
  font-family:var(--cond);font-size:12px;letter-spacing:.05em;text-transform:uppercase;
  border-bottom:1px solid currentColor;padding-bottom:2px;
}
.expertise-item-link:hover{opacity:.7;}

.expertise-cohesion{max-width:var(--maxw);margin:64px auto 0;padding-top:40px;border-top:1px solid rgba(255,255,255,.18);}
[data-theme="day"] .expertise-cohesion{border-top-color:rgba(16,13,8,.18);}
.expertise-cohesion .label{color:var(--authority-text);opacity:.7;}
.expertise-cohesion p{max-width:66ch;margin:16px 0 22px;font-size:var(--fs-body);line-height:1.7;color:var(--authority-text);opacity:.85;}
.expertise-cohesion .readmore{display:inline-block;}

.reduced-motion .expertise-item{transition:opacity .01s,transform .01s;}
.reduced-motion .expertise-item-media img{transition:none;}
.reduced-motion .expertise-item-panel{transition:none;}

/* ================= STATEMENT ================= */
.statement{padding:130px var(--pad);background:var(--bg-elevated);color:var(--ink);transition:background var(--dur), color var(--dur);}
.statement .grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:start;}
.statement .intro{font-size:14px;color:var(--ink-soft);line-height:1.65;max-width:32ch;}
.statement h2{font-family:var(--serif);font-size:var(--fs-hero);line-height:1.14;}

/* ================= ABOUT — TEAM PHOTO ================= */
.team-photo{width:100%;overflow:hidden;background:#000;}
.team-photo img{width:100%;height:100%;max-height:78vh;object-fit:cover;display:block;}

/* ================= ABOUT — MOBILE ================= */
@media (max-width:980px){
  .about-hero{grid-template-columns:1fr;min-height:auto;}
  .about-hero-media{aspect-ratio:4/3.4;}
  .about-hero-copy{padding:44px var(--pad) 56px;}
  .about-hero-copy h1,.about-hero-copy .label{text-align:left;}
  .about-hero-copy .about-intro{margin-left:0;}
  .expertise{padding:70px var(--pad);}
  .expertise-intro{margin:20px 0 34px;}
  .expertise-accordion{flex-direction:column;max-width:100%;}
  .expertise-item{min-height:0;}
  .expertise-item-media{position:relative;inset:auto;aspect-ratio:16/10;}
  .expertise-item-media img{position:absolute;inset:0;}
  .expertise-item-content{position:static;inset:auto;padding:18px 18px 22px;}
  .expertise-item-toggle{padding:12px 0;}
  .expertise-item.is-active .expertise-item-panel{max-height:640px;}
  .expertise-cohesion{margin-top:44px;padding-top:30px;}
  .statement{padding:70px var(--pad);}
  .statement .grid{grid-template-columns:1fr;gap:28px;}
  .team-photo img{max-height:46vh;}
}
