

@media (max-width:720px) {
  .rail-language {
    flex-direction:row;
    left:auto;
    padding:2px;
    right:70px;
    top:17px;
    width:108px;
  }
  .rail-language button { height:27px; }

  .cinema-claim { bottom:154px; }
  .cinema-support {
    bottom:73px;
    font-size:clamp(.86rem,3.9vw,1rem);
    left:12px;
    max-width:calc(100% - 76px);
    padding:10px 11px;
  }
  .cinema-cta { bottom:15px; }

  .service-accordion { --service-open-h:clamp(680px,174vw,730px); }
  .service-detail { justify-content:center; padding-bottom:24px; padding-top:24px; }
  .service-detail .service-detail-title { margin-bottom:17px; }
  .service-detail .audit-cta { margin-top:17px; min-height:82px; padding:10px; }
  .service-detail .audit-cta strong { font-size:clamp(.82rem,3.7vw,1rem); line-height:1; }
  .service-detail .audit-cta small { font-size:8px; line-height:1.25; }
  .service-detail .audit-cta > b { flex-basis:36px; height:36px; }

  .audit-cta { min-height:80px; padding:13px 12px 13px 15px; }
  .audit-cta strong { font-size:clamp(1rem,5vw,1.35rem); }
  .audit-cta small { font-size:9px; }
  .audit-cta > b { flex-basis:42px; height:42px; }
  .footer > .audit-cta { margin-top:34px; }
  .footer > .footer-email { margin-top:26px; }
}

@media (max-width:360px) {
  .rail-language { right:66px; width:96px; }
  .service-accordion { --service-open-h:730px; }
  .service-name { font-size:14px; left:40%; right:36px; text-wrap:wrap; }
  .cinema-support { max-width:calc(100% - 68px); }
}

@media (prefers-reduced-motion:reduce) {
  .cinema-frame { transition:none; }
  .cinema-frame.active img { transform:none; }
}

/* Quiet language selector: one choice visible, the rest in a compact glass menu. */
.rail-language {
  background:transparent;
  border:0;
  display:block;
  height:34px;
  left:24px;
  padding:0;
  top:344px;
  width:48px;
}
.rail-language .language-current {
  align-items:center;
  backdrop-filter:blur(16px) saturate(1.2);
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  color:#fff;
  display:flex;
  font:700 9px "Space Mono",monospace;
  gap:6px;
  height:34px;
  justify-content:center;
  letter-spacing:.05em;
  padding:0;
  width:48px;
}
.rail-language .language-current::before { background:var(--accent); border-radius:50%; content:""; height:5px; width:5px; }
.rail-language .language-current i { display:none; }
.rail-language.open .language-current { background:rgba(255,255,255,.11); border-color:rgba(255,255,255,.42); }
.rail-language .language-options {
  backdrop-filter:blur(22px) saturate(1.25);
  background:rgba(8,8,8,.9);
  border:1px solid rgba(255,255,255,.25);
  border-radius:14px;
  display:flex;
  flex-direction:column;
  left:0;
  opacity:0;
  padding:3px;
  pointer-events:none;
  position:absolute;
  top:40px;
  transform:translateY(-5px);
  transition:opacity .2s,transform .25s cubic-bezier(.16,1,.3,1),visibility 0s linear .25s;
  visibility:hidden;
  width:52px;
}
.rail-language.open .language-options { opacity:1; pointer-events:auto; transform:none; transition-delay:0s; visibility:visible; }
.rail-language .language-options button {
  background:transparent;
  border:0;
  color:rgba(255,255,255,.58);
  font:700 8px "Space Mono",monospace;
  height:27px;
  padding:0;
  width:100%;
}
.rail-language .language-options button:hover,.rail-language .language-options button:focus-visible { background:rgba(255,255,255,.08); color:#fff; }
.rail-language .language-options button.active { background:var(--accent); color:var(--black); }
.rail-language button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }

/* The longer service copy keeps its breathing room at every breakpoint. */
.service-accordion { --service-open-h:clamp(620px,44vw,690px); }
.service-detail-emphasis {
  border-left:3px solid var(--accent);
  color:#fff;
  display:block;
  font:700 12px/1.45 "Space Mono",monospace;
  margin-top:17px;
  max-width:640px;
  padding:4px 0 4px 12px;
  text-transform:uppercase;
}

/* Scroll-built process constellation. */
.process {
  background:#f1f0ec;
  color:var(--black);
  padding:22px 2vw 0;
  position:relative;
}
.process-heading {
  align-items:end;
  display:grid;
  gap:4vw;
  grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);
  padding:clamp(68px,9vw,136px) 1vw clamp(42px,6vw,84px);
}
.process-heading > p { align-self:start; font:700 11px/1.5 "Space Mono",monospace; margin:8px 0 0; max-width:280px; text-transform:uppercase; }
.process-heading h2 { font-family:"Archivo Black",sans-serif; font-size:clamp(4.8rem,9vw,10rem); letter-spacing:-.08em; line-height:.72; margin:0; text-transform:uppercase; }
.process-heading h2 strong { color:var(--accent); font-weight:inherit; }
.process-scroll { height:390svh; position:relative; }
.process-sticky { height:100svh; min-height:620px; overflow:hidden; position:sticky; top:0; }
.process-canvas {
  height:min(84svh,800px);
  left:50%;
  position:absolute;
  top:50%;
  transform:translate(-50%,-50%) scale(var(--process-scale,1.1));
  transform-origin:center;
  width:min(1180px,calc(100% - 5vw));
  will-change:transform;
}
.process-canvas::before {
  background-image:radial-gradient(circle,rgba(9,9,9,.2) 1px,transparent 1px);
  background-size:18px 18px;
  content:"";
  inset:0;
  opacity:.32;
  position:absolute;
}
.process-spine {
  background:var(--black);
  height:var(--process-spine-height,0%);
  left:50%;
  max-height:78%;
  position:absolute;
  top:5%;
  transform:translateX(-50%);
  width:1px;
}
.process-node {
  --show:0;
  --shift:20px;
  box-sizing:border-box;
  opacity:var(--show);
  position:absolute;
  top:var(--node-y);
  transform:translateY(var(--shift));
  width:45%;
  z-index:2;
}
.process-node:nth-of-type(even) { left:5%; padding:0 68px 0 2vw; text-align:right; }
.process-node:nth-of-type(odd) { left:50%; padding:0 2vw 0 68px; text-align:left; }
.process-node::before { background:var(--black); content:""; height:1px; position:absolute; top:10px; width:58px; }
.process-node:nth-of-type(even)::before { right:0; }
.process-node:nth-of-type(odd)::before { left:0; }
.process-dot { background:var(--accent); border:5px solid #f1f0ec; box-shadow:0 0 0 1px var(--black); height:14px; position:absolute; top:3px; width:14px; }
.process-node:nth-of-type(even) .process-dot { right:-7px; }
.process-node:nth-of-type(odd) .process-dot { left:-7px; }
.process-node small { color:var(--accent); display:block; font:700 9px "Space Mono",monospace; margin-bottom:5px; }
.process-node h3 { font-family:"Archivo Black",sans-serif; font-size:clamp(1.1rem,1.8vw,1.7rem); letter-spacing:-.045em; line-height:.95; margin:0; text-transform:uppercase; }
.process-node p { font-size:clamp(.86rem,1.05vw,1rem); line-height:1.35; margin:6px 0 0; }
.process-node.node-1 { --show:var(--process-node-1,0); --shift:var(--process-shift-1,20px); --node-y:3%; }
.process-node.node-2 { --show:var(--process-node-2,0); --shift:var(--process-shift-2,20px); --node-y:14%; }
.process-node.node-3 { --show:var(--process-node-3,0); --shift:var(--process-shift-3,20px); --node-y:25%; }
.process-node.node-4 { --show:var(--process-node-4,0); --shift:var(--process-shift-4,20px); --node-y:36%; }
.process-node.node-5 { --show:var(--process-node-5,0); --shift:var(--process-shift-5,20px); --node-y:47%; }
.process-node.node-6 { --show:var(--process-node-6,0); --shift:var(--process-shift-6,20px); --node-y:58%; }
.process-node.node-7 { --show:var(--process-node-7,0); --shift:var(--process-shift-7,20px); --node-y:69%; }
.process-universe {
  --universe-show:var(--process-universe-show,0);
  bottom:0;
  display:grid;
  gap:1.2vw;
  grid-template-columns:repeat(4,minmax(0,1fr));
  left:3%;
  opacity:var(--universe-show);
  position:absolute;
  right:3%;
  transform:translateY(var(--process-universe-shift,24px));
  z-index:3;
}
.universe-branch { align-items:center; display:flex; flex-direction:column; min-width:0; text-align:center; }
.universe-branch i { border-left:1px solid var(--black); display:block; height:clamp(42px,6vh,70px); transform-origin:bottom; width:1px; }
.universe-branch.branch-1 i { transform:rotate(-28deg); }
.universe-branch.branch-2 i { transform:rotate(-10deg); }
.universe-branch.branch-3 i { transform:rotate(10deg); }
.universe-branch.branch-4 i { transform:rotate(28deg); }
.universe-branch b { font:700 9px/1.25 "Space Mono",monospace; max-width:170px; text-transform:uppercase; }
.process-full-picture {
  --frame-show:var(--process-frame-show,0);
  border:clamp(3px,.42vw,7px) solid var(--accent);
  inset:0;
  opacity:var(--frame-show);
  pointer-events:none;
  position:absolute;
  transform:scale(var(--process-frame-scale,.96));
  z-index:6;
}
.process-full-picture > span { background:var(--black); color:#fff; font:700 9px "Space Mono",monospace; left:18px; padding:8px 10px; position:absolute; top:18px; }
.process-full-picture > strong { background:var(--accent); bottom:18px; color:var(--black); font-family:"Archivo Black",sans-serif; font-size:clamp(1.7rem,4.2vw,4.7rem); left:18px; letter-spacing:-.06em; line-height:.88; max-width:min(760px,75%); padding:14px 17px; position:absolute; text-transform:uppercase; }
.process-full-picture > small { background:#f1f0ec; bottom:18px; font:700 9px "Space Mono",monospace; padding:9px 11px; position:absolute; right:18px; text-transform:uppercase; }
.process-meter { align-items:center; bottom:18px; display:flex; font:700 8px "Space Mono",monospace; gap:8px; position:absolute; right:2vw; z-index:8; }
.process-meter i { background:rgba(9,9,9,.25); height:1px; position:relative; width:90px; }
.process-meter i::after { background:var(--accent); content:""; inset:0; position:absolute; transform:scaleX(var(--process-progress)); transform-origin:left; }

@media (max-width:1050px) and (min-width:721px) {
  .service-accordion { --service-open-h:clamp(670px,72vw,740px); }
  .process-canvas { width:calc(100% - 3vw); }
  .process-node h3 { font-size:clamp(1rem,2.35vw,1.45rem); }
  .process-node p { font-size:14px; }
}

@media (max-width:720px) {
  .rail-language { height:32px; left:auto; right:72px; top:16px; width:44px; }
  .rail-language .language-current { height:32px; width:44px; }
  .rail-language .language-options { left:auto; right:0; top:38px; width:44px; }
  .service-accordion { --service-open-h:clamp(780px,205vw,860px); }
  .service-detail-emphasis { font-size:9px; line-height:1.4; margin-top:13px; padding-left:9px; }
  .process { padding:10px 8px 0; }
  .process-heading { display:block; padding:48px 6px 38px; }
  .process-heading > p { font-size:9px; margin:0 0 36px; max-width:230px; }
  .process-heading h2 { font-size:15vw; line-height:.76; }
  .process-scroll { height:350svh; }
  .process-sticky { min-height:568px; }
  .process-canvas { height:min(84svh,680px); width:calc(100% - 28px); }
  .process-node { width:47%; }
  .process-node:nth-of-type(even) { left:3%; padding:0 24px 0 2px; }
  .process-node:nth-of-type(odd) { left:50%; padding:0 2px 0 24px; }
  .process-node::before { width:20px; }
  .process-dot { border-width:3px; height:10px; top:4px; width:10px; }
  .process-node:nth-of-type(even) .process-dot { right:-5px; }
  .process-node:nth-of-type(odd) .process-dot { left:-5px; }
  .process-node small { font-size:7px; margin-bottom:3px; }
  .process-node h3 { font-size:clamp(.78rem,3.8vw,1rem); line-height:1; }
  .process-node p { font-size:clamp(.66rem,2.8vw,.78rem); line-height:1.25; margin-top:4px; }
  .process-node.node-1 { --node-y:2%; }
  .process-node.node-2 { --node-y:13%; }
  .process-node.node-3 { --node-y:24%; }
  .process-node.node-4 { --node-y:35%; }
  .process-node.node-5 { --node-y:46%; }
  .process-node.node-6 { --node-y:57%; }
  .process-node.node-7 { --node-y:68%; }
  .process-universe { gap:3px; left:1%; right:1%; }
  .universe-branch i { height:34px; }
  .universe-branch b { font-size:6px; line-height:1.2; }
  .process-full-picture { inset:6px; }
  .process-full-picture > span { font-size:7px; left:8px; padding:6px; top:8px; }
  .process-full-picture > strong { bottom:8px; font-size:clamp(1.2rem,6.5vw,1.75rem); left:8px; max-width:82%; padding:9px; }
  .process-full-picture > small { display:none; }
  .process-meter { bottom:8px; display:none; }
}

@media (max-width:360px) {
  .rail-language { right:68px; }
  .service-accordion { --service-open-h:850px; }
}

@media (prefers-reduced-motion:reduce) {
  .process-canvas { transform:translate(-50%,-50%) scale(.92); }
  .process-node,.process-universe,.process-full-picture { opacity:1; transform:none; }
  .process-spine { height:78%; }
}

/* 2026 refinement: reel-first work, a real constellation and a stronger close. */
.work-image video { background:#0a0a0a; }

.process-heading {
  align-items:start;
  grid-template-columns:minmax(0,1.45fr) minmax(220px,.55fr);
}
.process-heading h2 { grid-column:1; grid-row:1; }
.process-heading > p {
  font-size:clamp(11px,.9vw,14px);
  grid-column:2;
  grid-row:1;
  margin-top:12px;
  max-width:330px;
}
.process-scroll { height:430svh; }
.process-canvas {
  height:min(84svh,820px);
  transform:translate(-50%,-50%) scale(var(--process-scale,1));
  transition:transform .12s linear;
  width:min(1240px,calc(100% - 8vw));
}
.process-canvas::before { opacity:.22; }
.process-links { inset:0; pointer-events:none; position:absolute; z-index:1; }
.process-link {
  background:linear-gradient(90deg,var(--accent),var(--black));
  height:2px;
  left:var(--link-x);
  position:absolute;
  top:var(--link-y);
  transform:rotate(var(--link-angle)) scaleX(var(--link-show));
  transform-origin:0 50%;
  width:var(--link-width);
}
.process-link.link-1 { --link-angle:156deg; --link-show:var(--process-link-1,0); --link-width:30%; --link-x:62%; --link-y:7%; }
.process-link.link-2 { --link-angle:24deg; --link-show:var(--process-link-2,0); --link-width:36%; --link-x:35%; --link-y:20%; }
.process-link.link-3 { --link-angle:90deg; --link-show:var(--process-link-3,0); --link-width:11svh; --link-x:68%; --link-y:33%; }
.process-link.link-4 { --link-angle:153deg; --link-show:var(--process-link-4,0); --link-width:29%; --link-x:68%; --link-y:47%; }
.process-link.link-5 { --link-angle:151deg; --link-show:var(--process-link-5,0); --link-width:15%; --link-x:43%; --link-y:59%; }
.process-link.link-6 { --link-angle:27deg; --link-show:var(--process-link-6,0); --link-width:30%; --link-x:30%; --link-y:71%; }

.process-node,
.process-node:nth-of-type(even),
.process-node:nth-of-type(odd) {
  --node-x:50%;
  --node-y:50%;
  background:rgba(241,240,236,.93);
  box-sizing:border-box;
  left:var(--node-x);
  padding:12px 16px 13px 25px;
  text-align:left;
  top:var(--node-y);
  transform:translateY(-50%) translateY(var(--shift));
  width:clamp(230px,23vw,330px);
}
.process-node::before { display:none; }
.process-node.node-1 { --node-x:62%; --node-y:7%; }
.process-node.node-2 { --node-x:35%; --node-y:20%; transform:translate(-100%,-50%) translateY(var(--shift)); }
.process-node.node-3 { --node-x:68%; --node-y:33%; }
.process-node.node-4 { --node-x:68%; --node-y:47%; }
.process-node.node-5 { --node-x:43%; --node-y:59%; transform:translate(-100%,-50%) translateY(var(--shift)); }
.process-node.node-6 { --node-x:30%; --node-y:71%; transform:translate(-100%,-50%) translateY(var(--shift)); }
.process-node.node-7 { --node-x:57%; --node-y:83%; }
.process-node .process-dot,
.process-node:nth-of-type(even) .process-dot,
.process-node:nth-of-type(odd) .process-dot {
  border-width:4px;
  height:18px;
  left:-9px;
  right:auto;
  top:50%;
  transform:translateY(-50%);
  width:18px;
}
.process-node.node-2 .process-dot,.process-node.node-5 .process-dot,.process-node.node-6 .process-dot { left:auto; right:-9px; }
.process-node small { font-size:10px; margin-bottom:6px; }
.process-node h3 { font-size:clamp(1.3rem,2vw,2rem); line-height:.94; }
.process-node p { font-size:clamp(.95rem,1.15vw,1.08rem); line-height:1.42; margin-top:8px; }
.process-universe { bottom:-2%; left:21%; right:6%; }
.universe-branch b { font-size:clamp(8px,.72vw,11px); }

.process-full-picture {
  inset:clamp(18px,3vw,44px);
  transform:scale(var(--process-frame-scale,.96));
  z-index:7;
}
.process-full-picture > strong {
  bottom:18px;
  font-size:clamp(1.35rem,2.7vw,3.2rem);
  left:18px;
  margin:0;
  max-width:min(720px,67%);
  padding:12px 15px;
}

.studio { min-height:max(100svh,680px); scroll-margin-top:0; }
.studio-visual { min-height:calc(max(100svh,680px) - 36px); }
.studio-copy { align-self:start; padding-bottom:30px; padding-top:clamp(54px,8vh,78px); }
.studio-copy h2 { margin-bottom:34px; }
.studio-values { list-style:none; margin:42px 0 0; padding:0; }
.studio-values li {
  align-items:center;
  border-top:1px solid rgba(255,255,255,.32);
  display:grid;
  gap:18px;
  grid-template-columns:42px minmax(0,1fr);
  padding:15px 0;
}
.studio-values li:last-child { border-bottom:1px solid rgba(255,255,255,.32); }
.studio-values span { color:var(--accent); font:700 11px "Space Mono",monospace; }
.studio-values b { font-size:clamp(.86rem,1.12vw,1.08rem); line-height:1.25; text-transform:uppercase; }

.about-you {
  background:#f1f0ec;
  color:var(--black);
}
.about-you-grid > div:first-child > p {
  color:var(--accent);
  font-family:"Archivo Black",sans-serif;
  font-size:clamp(1rem,1.6vw,1.55rem);
  letter-spacing:-.025em;
  max-width:560px;
}
.about-you h2 strong { color:var(--accent); }
.about-you-copy > .audit-cta { border-color:var(--black); }

.footer {
  background:var(--accent);
  min-height:max(100svh,820px);
  overflow:hidden;
  padding-bottom:100px;
}
.footer-pitch {
  background-color:var(--black);
  background-image:linear-gradient(rgba(255,41,23,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,41,23,.12) 1px,transparent 1px);
  background-size:54px 54px;
  clip-path:polygon(0 0,97% 0,100% 10%,100% 100%,3% 100%,0 90%);
  color:#fff;
  margin-top:clamp(28px,5vh,58px);
  padding:clamp(28px,4vw,58px) clamp(22px,4.6vw,74px) clamp(34px,5vw,72px);
  position:relative;
}
.footer-pitch::after {
  border-right:5px solid var(--accent);
  border-top:5px solid var(--accent);
  content:"";
  height:clamp(40px,6vw,82px);
  position:absolute;
  right:24px;
  top:24px;
  width:clamp(40px,6vw,82px);
}
.footer-pitch > p { color:rgba(255,255,255,.72); font:700 11px/1.55 "Space Mono",monospace; margin:0; text-transform:uppercase; }
.footer-pitch h2 {
  font-family:"Archivo Black",sans-serif;
  font-size:clamp(4.4rem,10.2vw,11rem);
  letter-spacing:-.09em;
  line-height:.71;
  margin:clamp(45px,7vh,82px) 0 0;
  max-width:1300px;
  text-transform:uppercase;
}
.footer-pitch h2 strong { color:var(--accent); display:block; font-weight:900; padding-left:9vw; }
.footer-actions { display:grid; gap:2vw; grid-template-columns:minmax(220px,.38fr) minmax(0,1fr); margin-top:30px; }
.footer-actions > a {
  align-items:center;
  border-bottom:2px solid var(--black);
  display:flex;
  font-weight:800;
  justify-content:space-between;
  min-width:0;
  padding:12px 0 14px;
  text-transform:uppercase;
}
.footer-form-link { font:700 12px "Space Mono",monospace; }
.footer-email { font-size:clamp(1.25rem,3vw,3rem); }
.footer-actions > a span { min-width:0; overflow-wrap:anywhere; }
.footer-actions > a b { margin-left:16px; }

@media (max-width:1050px) and (min-width:721px) {
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { width:clamp(210px,28vw,280px); }
  .process-node h3 { font-size:clamp(1.1rem,2.1vw,1.55rem); }
  .process-node p { font-size:13px; }
  .process-full-picture > strong { max-width:62%; }
  .studio { grid-template-columns:1fr 1fr; }
}

@media (max-width:720px) {
  .process-heading { display:flex; flex-direction:column; gap:26px; padding:48px 6px 38px; }
  .process-heading h2 { font-size:14vw; order:1; }
  .process-heading > p { font-size:10px; margin:0; max-width:270px; order:2; }
  .process-scroll { height:410svh; }
  .process-canvas { height:min(86svh,690px); width:calc(100% - 22px); }
  .process-link.link-1 { --link-angle:62deg; --link-width:34%; --link-x:42%; }
  .process-link.link-2 { --link-angle:118deg; --link-width:34%; --link-x:58%; }
  .process-link.link-3 { --link-width:10svh; --link-x:42%; }
  .process-link.link-4 { --link-angle:62deg; --link-width:34%; --link-x:42%; }
  .process-link.link-5 { --link-angle:100deg; --link-width:12svh; --link-x:58%; }
  .process-link.link-6 { --link-angle:115deg; --link-width:25%; --link-x:52%; }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) {
    padding:8px 9px 9px 18px;
    width:min(40vw,156px);
  }
  .process-node.node-1 { --node-x:42%; }
  .process-node.node-2 { --node-x:58%; }
  .process-node.node-3,.process-node.node-4 { --node-x:42%; }
  .process-node.node-5 { --node-x:58%; }
  .process-node.node-6 { --node-x:52%; }
  .process-node.node-7 { --node-x:42%; }
  .process-node .process-dot,.process-node:nth-of-type(even) .process-dot,.process-node:nth-of-type(odd) .process-dot { border-width:3px; height:13px; left:-7px; width:13px; }
  .process-node.node-2 .process-dot,.process-node.node-5 .process-dot,.process-node.node-6 .process-dot { left:auto; right:-7px; }
  .process-node small { font-size:7px; margin-bottom:3px; }
  .process-node h3 { font-size:clamp(.84rem,3.8vw,1.08rem); }
  .process-node p { font-size:clamp(.7rem,2.75vw,.82rem); line-height:1.25; margin-top:4px; }
  .process-universe { bottom:-1%; left:4%; right:1%; }
  .process-full-picture { inset:9px; }
  .process-full-picture > strong { bottom:8px; font-size:clamp(1rem,5.2vw,1.45rem); left:8px; max-width:78%; padding:8px; }
  .process-full-picture > span { left:8px; top:8px; }

  .studio { min-height:0; }
  .studio-visual { min-height:400px; }
  .studio-copy { padding-top:44px; }
  .studio-values { margin-top:32px; }
  .studio-values li { grid-template-columns:34px minmax(0,1fr); padding:13px 0; }
  .studio-values b { font-size:12px; }
  .about-you-grid > div:first-child > p { font-size:clamp(1rem,5.2vw,1.35rem); margin-bottom:28px; }

  .footer { min-height:max(100svh,720px); padding-bottom:86px; }
  .footer-pitch { clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%); padding:28px 18px 38px; }
  .footer-pitch::after { height:34px; right:14px; top:14px; width:34px; }
  .footer-pitch > p { font-size:9px; max-width:74%; }
  .footer-pitch h2 { font-size:clamp(3rem,15vw,5.5rem); line-height:.73; margin-top:48px; }
  .footer-pitch h2 strong { padding-left:0; }
  .footer-actions { gap:12px; grid-template-columns:1fr; margin-top:22px; }
  .footer-actions > a { padding:11px 0; }
  .footer-email { font-size:clamp(.72rem,3.5vw,.95rem); letter-spacing:-.03em; white-space:nowrap; }
  .footer-email span { overflow-wrap:normal; white-space:nowrap; }
}

@media (prefers-reduced-motion:reduce) {
  .process-link { transform:rotate(var(--link-angle)) scaleX(1); }
  .process-canvas { transform:translate(-50%,-50%) scale(.72); }
  .process-node { --shift:0px!important; opacity:1; }
  .process-universe,.process-full-picture { opacity:1; }
}

/* 2026 audiovisual pass: four live reels, connected stars and an editorial close. */
.cinema-stage {
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1fr) minmax(0,1.28fr) minmax(0,1fr);
}
.cinema-frame,
.cinema-frame.active {
  inset:auto;
  opacity:1;
  position:relative;
  visibility:visible;
  z-index:1;
}
.cinema-frame + .cinema-frame { border-left:1px solid rgba(255,255,255,.24); }
.cinema-frame video {
  filter:brightness(.9) contrast(1.04) saturate(1.12);
  height:106%;
  left:-3%;
  max-width:none;
  object-fit:cover;
  position:absolute;
  top:-3%;
  transform:translate3d(var(--hero-img-x),var(--hero-img-y),0) scale(1.035);
  width:106%;
}
.cinema-frame-1 video { object-position:46% center; }
.cinema-frame-2 video { object-position:51% center; }
.cinema-frame-3 video { object-position:50% center; }
.cinema-frame-4 video { object-position:55% center; }
.cinema-frame:nth-child(even) video { transform:translate3d(var(--hero-img-x),calc(var(--hero-img-y) * -.45),0) scale(1.075); }

.service-detail .audit-cta strong { font-size:clamp(1.18rem,1.55vw,1.5rem); }
.service-detail .audit-cta small {
  color:rgba(9,9,9,.82);
  font-family:"Archivo Black",sans-serif;
  font-size:clamp(.94rem,1.16vw,1.12rem);
  letter-spacing:-.025em;
  line-height:1;
  text-transform:uppercase;
}

.process-heading { padding:clamp(42px,5vw,72px) 1vw clamp(8px,1.3vw,20px); }
.process-links { overflow:visible; z-index:3; }
.process-link {
  background:linear-gradient(90deg,var(--accent) 0 16%,var(--black) 55% 100%);
  height:2px;
  left:var(--link-x,50%);
  top:var(--link-y,50%);
  transform:rotate(var(--link-angle,0rad)) scaleX(var(--link-show,0));
  width:var(--link-width,0px);
}
.process-link.link-1 { --link-show:var(--process-link-1,0); }
.process-link.link-2 { --link-show:var(--process-link-2,0); }
.process-link.link-3 { --link-show:var(--process-link-3,0); }
.process-link.link-4 { --link-show:var(--process-link-4,0); }
.process-link.link-5 { --link-show:var(--process-link-5,0); }
.process-link.link-6 { --link-show:var(--process-link-6,0); }
.process-node,
.process-node:nth-of-type(even),
.process-node:nth-of-type(odd) {
  padding:9px 13px 10px 22px;
  width:clamp(215px,21vw,300px);
}
.process-node.node-1 { --node-y:6%; }
.process-node.node-2 { --node-y:19%; }
.process-node.node-3 { --node-y:32%; }
.process-node.node-4 { --node-y:46%; }
.process-node.node-5 { --node-y:58%; }
.process-node.node-6 { --node-y:71%; }
.process-node.node-7 { --node-y:84%; }
.process-node h3 { font-size:clamp(1.08rem,1.65vw,1.62rem); }
.process-node p { font-size:clamp(.8rem,.96vw,.94rem); line-height:1.28; margin-top:5px; }
.process-node small { margin-bottom:4px; }
.process-dot { z-index:4; }
.process-universe { display:none!important; }

.about-you {
  background-color:#f1f0ec;
  background-image:linear-gradient(rgba(9,9,9,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(9,9,9,.055) 1px,transparent 1px);
  background-size:clamp(38px,4vw,68px) clamp(38px,4vw,68px);
  isolation:isolate;
  overflow:hidden;
  position:relative;
}
.about-you::before {
  background:linear-gradient(135deg,var(--accent),#ff5a47);
  clip-path:polygon(0 0,100% 0,100% 82%,82% 100%,0 100%);
  content:"";
  height:clamp(16px,1.6vw,28px);
  left:0;
  position:absolute;
  top:clamp(80px,9vw,138px);
  width:min(42vw,620px);
  z-index:-1;
}
.about-you-art {
  height:clamp(240px,36vw,520px);
  pointer-events:none;
  position:absolute;
  right:clamp(12px,3vw,48px);
  top:clamp(72px,8vw,126px);
  width:min(39vw,570px);
  z-index:0;
}
.about-you-art span {
  color:transparent;
  font-family:"Archivo Black",sans-serif;
  font-size:clamp(10rem,23vw,25rem);
  letter-spacing:-.14em;
  line-height:.76;
  opacity:.11;
  position:absolute;
  right:0;
  top:0;
  -webkit-text-stroke:2px var(--black);
}
.about-you-art i { background:var(--black); height:1px; left:7%; position:absolute; right:0; top:72%; transform:rotate(-12deg); transform-origin:right; }
.about-you-art b {
  align-items:center;
  background:#10b7c5;
  border-radius:50%;
  bottom:2%;
  display:flex;
  font-size:clamp(1.4rem,3vw,2.5rem);
  height:clamp(58px,7vw,92px);
  justify-content:center;
  position:absolute;
  right:5%;
  width:clamp(58px,7vw,92px);
}
.about-you .chapter,.about-you-grid { position:relative; z-index:2; }

.footer {
  background-color:#070707;
  background-image:repeating-linear-gradient(103deg,transparent 0 68px,rgba(255,41,23,.17) 69px 70px,transparent 71px 136px);
  color:#fff;
  min-height:max(100svh,820px);
  padding:22px 2vw 82px;
}
.footer-pitch {
  background-color:#f2f0e9;
  background-image:repeating-radial-gradient(circle at 39% 42%,rgba(9,9,9,.24) 0 1px,transparent 1px 6px);
  clip-path:polygon(0 0,95% 0,100% 10%,100% 100%,5% 100%,0 92%);
  color:var(--black);
  margin:clamp(28px,5vh,58px) max(185px,18vw) 0 1.2vw;
  padding:clamp(30px,4vw,62px) clamp(24px,4.6vw,76px) clamp(36px,5vw,74px);
  z-index:2;
}
.footer-pitch::before {
  background:linear-gradient(90deg,rgba(242,240,233,.97),rgba(242,240,233,.78) 58%,rgba(242,240,233,.4));
  content:"";
  inset:0;
  position:absolute;
  z-index:-1;
}
.footer-pitch::after { border-color:var(--accent); }
.footer-pitch > p { color:rgba(9,9,9,.76); font-size:clamp(10px,.85vw,13px); }
.footer-pitch h2 {
  color:var(--black);
  font-size:clamp(3.7rem,8.2vw,9rem);
  line-height:.72;
  margin-top:clamp(42px,6vh,72px);
}
.footer-pitch h2 strong {
  background:var(--accent);
  color:#f2f0e9;
  display:inline-block;
  padding:0 .08em .08em;
}
.footer .footer-actions { align-items:stretch; grid-template-columns:minmax(260px,.48fr) minmax(0,1fr); margin-top:clamp(34px,5vh,58px); }
.footer .footer-actions.footer-actions-email-only { grid-template-columns:minmax(0,1fr); }
.footer .footer-actions > a { border-color:var(--black); color:var(--black); }
.footer .footer-actions > .footer-form-link {
  background:var(--black);
  border:0;
  color:#fff;
  font-family:"Archivo Black",sans-serif;
  font-size:clamp(1.2rem,2vw,2.05rem);
  line-height:1;
  min-height:94px;
  padding:18px 20px;
}
.footer .footer-actions > .footer-form-link b { color:var(--accent); font-size:1.35em; }
.footer .footer-email { font-size:clamp(1rem,1.75vw,1.85rem); }
.footer-lockup {
  pointer-events:none;
  position:absolute;
  right:-65px;
  top:50%;
  transform:translateY(-50%) rotate(90deg);
  width:clamp(270px,26vw,430px);
  z-index:1;
}
.footer-lockup img { display:block; height:auto; width:100%; }
.footer-meta { color:rgba(255,255,255,.72); }

@media (max-width:1050px) and (min-width:721px) {
  .cinema-stage { grid-template-columns:.75fr .9fr 1.25fr .9fr; }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { width:clamp(196px,27vw,260px); }
  .process-node h3 { font-size:clamp(1rem,2vw,1.38rem); }
  .process-node p { font-size:12px; }
  .footer-pitch { margin-right:max(145px,17vw); }
  .footer-lockup { right:-96px; width:340px; }
}

@media (max-width:720px) {
  .cinema-stage { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .cinema-frame video { filter:brightness(.78) contrast(1.05) saturate(1.1); }
  .cinema-frame:nth-child(even) video { transform:scale(1.065); }

  .service-detail .audit-cta strong { font-size:clamp(1rem,4.6vw,1.25rem); }
  .service-detail .audit-cta small { font-size:clamp(.84rem,3.9vw,1rem); line-height:1.02; }

  .process-heading { gap:14px; padding:32px 6px 12px; }
  .process-heading h2 { font-size:13vw; }
  .process-heading > p { max-width:320px; }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { padding:7px 8px 8px 16px; width:min(41vw,158px); }
  .process-node h3 { font-size:clamp(.78rem,3.55vw,1rem); }
  .process-node p { font-size:clamp(.65rem,2.55vw,.76rem); line-height:1.2; }
  .process-node small { font-size:7px; }
  .process-node.node-1 { --node-y:5%; }
  .process-node.node-2 { --node-y:18.5%; }
  .process-node.node-3 { --node-y:32%; }
  .process-node.node-4 { --node-y:45.5%; }
  .process-node.node-5 { --node-y:59%; }
  .process-node.node-6 { --node-y:72.5%; }
  .process-node.node-7 { --node-y:86%; }

  .about-you::before { top:72px; width:72vw; }
  .about-you-art { height:230px; opacity:.85; right:-10%; top:102px; width:74vw; }
  .about-you-art span { font-size:58vw; }
  .about-you-art b { height:54px; width:54px; }
  .about-you-grid { position:relative; z-index:2; }

  .footer { min-height:max(100svh,760px); padding:10px 12px 78px; }
  .footer-pitch { margin:26px 0 0; padding:28px 18px 34px; }
  .footer-pitch > p { font-size:9px; max-width:80%; }
  .footer-pitch h2 { font-size:clamp(2.9rem,14.2vw,5rem); margin-top:46px; }
  .footer-pitch h2 strong { padding-left:.06em; }
  .footer .footer-actions { gap:13px; grid-template-columns:1fr; margin-top:30px; }
  .footer .footer-form-link { font-size:clamp(1.25rem,6vw,1.65rem); min-height:104px; padding:18px; }
  .footer .footer-email { font-size:clamp(.78rem,3.55vw,1rem); }
  .footer-lockup { display:none; }
}

@media (max-width:380px) {
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { width:min(42vw,146px); }
  .process-node h3 { font-size:clamp(.72rem,3.45vw,.9rem); }
  .process-node p { font-size:clamp(.6rem,2.45vw,.7rem); }
  .footer-pitch h2 { font-size:clamp(2.65rem,13.8vw,4.4rem); }
}

@media (max-height:520px) {
  .hero { height:100svh; min-height:100svh; }
  .cinema-logo { width:min(34vw,300px); }
  .cinema-claim { bottom:70px; font-size:clamp(2.65rem,min(7.2vw,15svh),4.35rem); }
  .cinema-support { bottom:10px; font-size:clamp(.72rem,1.35vw,.9rem); max-width:55vw; padding:8px 10px; }
  .cinema-cta { bottom:9px; }
  .process-sticky { min-height:100svh; }
  .process-canvas { height:94svh; }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { padding:5px 8px 6px 17px; width:clamp(180px,24vw,220px); }
  .process-node h3 { font-size:clamp(.82rem,1.8vw,1.05rem); }
  .process-node p { font-size:clamp(.63rem,1.3vw,.72rem); line-height:1.16; margin-top:2px; }
  .process-node small { font-size:6px; margin-bottom:2px; }
}

@media (max-width:720px) and (max-height:520px) {
  .cinema-logo { left:4px; top:48px; width:min(55vw,245px); }
  .cinema-kicker { top:164px; }
  .cinema-claim { bottom:102px; font-size:clamp(1.85rem,min(9.8vw,8.8svh),2.8rem); }
  .cinema-support { bottom:12px; font-size:11px; max-width:calc(100% - 62px); }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { width:min(39vw,145px); }
}

/* August 27 refinement: clearer services and a calmer client section. */
.work-item footer { grid-template-rows:auto auto 1fr auto auto; }
.work-case-link { align-items:center; border-top:1px solid var(--line); cursor:pointer; display:flex; font:700 11px "Space Mono",monospace; grid-column:2; justify-content:space-between; margin-top:14px; padding:13px 0 3px; pointer-events:auto; position:relative; text-transform:uppercase; z-index:5; }
.work-case-link b { color:var(--accent); font-size:16px; transition:transform .3s cubic-bezier(.16,1,.3,1); }
.work-case-link:hover b,.work-case-link:focus-visible b { transform:translate(4px,-4px); }
.service-detail > p:not(.service-detail-lead) + p { margin-top:16px; }

/* A precise signal meter replaces the previous decorative collage. */
.about-you { background:#f1f0ec; background-image:none; }
.about-you::before { display:none; }
.about-you-art { align-items:end; border-bottom:1px solid var(--black); display:grid; gap:9px; grid-template-columns:.7fr 1.25fr .45fr; height:clamp(110px,11vw,170px); margin:0 0 clamp(34px,5vh,58px); pointer-events:none; position:relative; right:auto; top:auto; width:min(100%,620px); z-index:auto; }
.about-you-art::before { content:"SEÑAL / 05"; font:700 10px "Space Mono",monospace; left:0; letter-spacing:.05em; position:absolute; top:-20px; }
.about-you-art span,.about-you-art i,.about-you-art b { bottom:auto; height:auto; left:auto; position:relative; right:auto; top:auto; transform:none; width:auto; }
.about-you-art span { align-items:flex-end; background:var(--accent); color:var(--black); display:flex; font:700 clamp(2rem,4vw,4.5rem)/.72 "Archivo Black",sans-serif; height:42%; justify-content:flex-start; letter-spacing:-.08em; opacity:1; padding:0 7px 7px; -webkit-text-stroke:0; }
.about-you-art i { background:var(--black); display:block; height:72%; }
.about-you-art b { background:transparent; border:1px solid var(--black); border-bottom:0; border-radius:0; display:block; height:100%; }

@media (max-width:720px) {
  .service-accordion { --service-open-h:clamp(780px,210vw,860px); }
  .service-detail { padding:38px 14px 38px 0; }
  .service-detail .service-detail-title { margin-bottom:26px; }
  .service-detail-lead { margin-bottom:22px!important; }
  .service-detail > p:not(.service-detail-lead) { line-height:1.58; }
  .service-detail > p:not(.service-detail-lead) + p { margin-top:20px; }
  .service-detail small { line-height:1.6; margin-top:22px; }
  .service-detail .audit-cta { margin-top:24px; }
  .process-links { overflow:hidden; z-index:1; }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { background:#f1f0ec; isolation:isolate; z-index:2; }
  .process-dot { z-index:4; }
  .about-you-art { height:112px; margin:24px 0 34px; width:100%; }
  .about-you-grid { padding-top:42px; }
  .about-you-copy { margin-top:44px; }
}

@media (max-width:380px) {
  .service-accordion { --service-open-h:860px; }
}

/* August 27: readable services and a cleaner client signal. */
.service-detail-body { margin:0; }

/* One deliberate poster replaces the previous collection of unrelated marks. */
.about-you-art {
  align-content:center;
  background:var(--black);
  border:0;
  color:#fff;
  display:grid;
  gap:5px;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  height:clamp(150px,17vw,245px);
  margin:0 0 clamp(40px,6vh,72px);
  overflow:hidden;
  padding:clamp(20px,2.4vw,34px);
  position:relative;
  width:min(100%,690px);
}
.about-you-art::before {
  color:rgba(255,255,255,.55);
  content:"SEÑAL / 05";
  font:700 9px "Space Mono",monospace;
  left:clamp(20px,2.4vw,34px);
  letter-spacing:.05em;
  position:absolute;
  top:14px;
}
.about-you-art::after {
  background:var(--accent);
  bottom:0;
  content:"";
  height:8px;
  left:0;
  position:absolute;
  right:0;
}
.about-you-art span,
.about-you-art i,
.about-you-art b {
  background:transparent;
  border:0;
  color:inherit;
  height:auto;
  opacity:1;
  padding:0;
  position:static;
  transform:none;
  width:auto;
  -webkit-text-stroke:0;
}
.about-you-art span {
  align-self:end;
  font:700 clamp(.72rem,.9vw,.9rem)/1 "Space Mono",monospace;
  grid-column:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.about-you-art i {
  color:var(--accent);
  font:400 clamp(2.3rem,4vw,4.8rem)/.82 "Archivo Black",sans-serif;
  font-style:normal;
  grid-column:1;
  letter-spacing:-.07em;
  overflow-wrap:normal;
  text-transform:uppercase;
  white-space:nowrap;
}
.about-you-art b {
  align-items:center;
  align-self:end;
  background:var(--accent);
  color:var(--black);
  display:flex;
  font-size:clamp(1.35rem,2.4vw,2.4rem);
  grid-column:2;
  grid-row:1 / span 2;
  height:clamp(52px,6vw,78px);
  justify-content:center;
  width:clamp(52px,6vw,78px);
}

@media (max-width:720px) {
  .service-accordion { --service-open-h:clamp(900px,232vw,980px); }
  .service-accordion article.active { min-height:var(--service-open-h); }
  .service-accordion article.active .service-number {
    font-size:clamp(8rem,41vw,11rem);
    left:8px;
    top:88px;
    transform:none;
  }
  .service-detail,
  .service-accordion article.active .service-detail {
    align-self:stretch;
    grid-column:1 / -1;
    justify-content:flex-start;
    max-width:none;
    padding:250px 14px 48px;
    width:100%;
  }
  .service-detail .service-detail-title { margin:0 0 30px; }
  .service-detail-lead { margin:0 0 25px!important; }
  .service-detail-body { font-size:clamp(15px,4.15vw,18px)!important; line-height:1.62!important; }
  .service-detail-body + .service-detail-body { margin-top:24px!important; }
  .service-detail-emphasis { margin-top:24px; }
  .service-detail small { line-height:1.65; margin-top:26px; }
  .service-detail .audit-cta { margin-top:28px; }

  .about-you-art {
    gap:6px;
    grid-template-columns:minmax(0,1fr) 54px;
    height:160px;
    margin:18px 0 40px;
    padding:25px 17px 21px;
    width:100%;
  }
  .about-you-art::before { left:17px; top:12px; }
  .about-you-art i { font-size:clamp(1.7rem,8.1vw,2.75rem); }
  .about-you-art b { height:48px; width:48px; }
}

@media (max-width:380px) {
  .service-accordion { --service-open-h:1030px; }
  .service-detail,
  .service-accordion article.active .service-detail { padding-bottom:54px; padding-top:238px; }
  .about-you-art { grid-template-columns:minmax(0,1fr) 46px; }
  .about-you-art i { font-size:clamp(1.55rem,8.8vw,2.2rem); }
  .about-you-art b { height:42px; width:42px; }
}

/* Shared editorial system for every project page. */
.case-page { background:var(--white); min-width:0; padding-left:0; }
.case-page * { min-width:0; }
.case-nav { align-items:center; background:#070707; color:#fff; display:grid; gap:24px; grid-template-columns:minmax(190px,270px) 1fr auto; min-height:92px; padding:10px clamp(16px,2.4vw,42px); position:sticky; top:0; z-index:100; }
.case-nav-logo { display:block; height:68px; overflow:hidden; width:min(240px,100%); }
.case-nav-logo img { height:100%; object-fit:contain; object-position:left center; width:100%; }
.case-nav p,.case-back { font:700 10px/1.45 "Space Mono",monospace; margin:0; text-transform:uppercase; }
.case-nav p { color:rgba(255,255,255,.58); text-align:center; }
.case-back { align-items:center; display:flex; gap:14px; }
.case-back span { color:var(--accent); font-size:18px; }

.case-hero { background:#070707; color:#fff; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); height:calc(100svh - 92px); min-height:680px; }
.case-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(36px,4.5vw,72px) clamp(22px,4.5vw,76px); }
.case-eyebrow,.case-section-index,.case-duo span,.case-work header > p,.case-impact header > p,.case-services > p,.case-faq > p { color:var(--accent); font:700 11px/1.45 "Space Mono",monospace; letter-spacing:.04em; margin:0; text-transform:uppercase; }
.case-hero h1 { font:400 clamp(3.4rem,6.2vw,7.5rem)/.76 "Archivo Black",sans-serif; letter-spacing:-.085em; margin:clamp(28px,4vh,48px) 0 clamp(22px,3vh,34px); overflow-wrap:normal; text-transform:uppercase; word-break:normal; }
.case-headline { color:rgba(255,255,255,.8); font-size:clamp(1.2rem,1.8vw,1.8rem); line-height:1.32; margin:0; max-width:700px; }
.case-hero-copy > a { align-items:center; border-bottom:1px solid rgba(255,255,255,.62); display:flex; font:700 11px "Space Mono",monospace; justify-content:space-between; margin-top:clamp(36px,6vh,70px); max-width:300px; padding-bottom:10px; text-transform:uppercase; }
.case-hero-copy > a span { color:var(--accent); }
.case-hero-media { background:#111; margin:0; min-height:0; overflow:hidden; position:relative; }
.case-hero-media::after { background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.55)); content:""; inset:0; pointer-events:none; position:absolute; }
.case-hero-media img { height:100%; inset:0; object-fit:cover; position:absolute; width:100%; }
.case-hero-media figcaption,.case-gallery figcaption { bottom:14px; color:#fff; font:700 9px "Space Mono",monospace; left:14px; position:absolute; text-transform:uppercase; z-index:2; }

.case-intro { display:grid; gap:clamp(30px,5vw,90px); grid-template-columns:.45fr 1.15fr .8fr; min-height:720px; padding:clamp(70px,9vw,150px) clamp(18px,3.6vw,64px); }
.case-intro h2,.case-work h2,.case-impact h2,.case-services h2,.case-faq h2 { font:400 clamp(3.2rem,6.5vw,7.5rem)/.76 "Archivo Black",sans-serif; letter-spacing:-.075em; margin:0; text-transform:uppercase; }
.case-intro h2 { align-self:center; }
.case-intro h2 strong,.case-work h2 strong,.case-services h2 strong,.case-faq h2 strong { color:var(--accent); font-weight:inherit; }
.case-intro > p:last-child { align-self:end; font-size:clamp(1.08rem,1.4vw,1.35rem); line-height:1.55; margin:0; max-width:590px; }

.case-duo { background:#0a0a0a; color:#fff; display:grid; grid-template-columns:1fr 1fr; }
.case-duo article { min-height:580px; padding:clamp(52px,7vw,110px) clamp(24px,4.5vw,78px); }
.case-duo article + article { border-left:1px solid rgba(255,255,255,.28); }
.case-duo h2 { color:var(--accent); font:400 clamp(3.5rem,6vw,7rem)/.78 "Archivo Black",sans-serif; letter-spacing:-.07em; margin:clamp(100px,15vh,170px) 0 38px; text-transform:uppercase; }
.case-duo p { color:rgba(255,255,255,.78); font-size:clamp(1.05rem,1.35vw,1.28rem); line-height:1.58; margin:0; max-width:620px; }

.case-work { padding:clamp(74px,9vw,150px) clamp(18px,3.6vw,64px); }
.case-work > header { display:grid; gap:40px; grid-template-columns:.45fr 1.55fr; }
.case-work > div { border-top:1px solid var(--black); display:grid; grid-template-columns:repeat(3,1fr); margin-top:clamp(66px,9vw,130px); }
.case-work article { border-bottom:1px solid var(--black); min-height:340px; padding:24px clamp(16px,2.5vw,38px) 34px 0; }
.case-work article + article { border-left:1px solid var(--black); padding-left:clamp(16px,2.5vw,38px); }
.case-work article span { color:var(--accent); font:700 11px "Space Mono",monospace; }
.case-work h3 { font-size:clamp(1.5rem,2.2vw,2.4rem); letter-spacing:-.04em; line-height:1; margin:70px 0 24px; text-transform:uppercase; }
.case-work article p { font-size:1.05rem; line-height:1.55; margin:0; }

.case-gallery { background:#0a0a0a; display:grid; gap:1px; grid-template-columns:1.1fr .8fr 1.1fr; padding:1px; }
.case-gallery figure { aspect-ratio:4/5; margin:0; overflow:hidden; position:relative; }
.case-gallery figure:nth-child(2) { aspect-ratio:auto; margin:9vw 0; }
.case-gallery img { filter:grayscale(1) contrast(1.05); height:100%; object-fit:cover; transition:filter .45s,transform .8s cubic-bezier(.16,1,.3,1); width:100%; }
.case-gallery figure:hover img { filter:none; transform:scale(1.025); }

.case-impact { background:var(--accent); display:grid; gap:clamp(38px,6vw,100px); grid-template-columns:1.1fr .9fr; padding:clamp(76px,9vw,150px) clamp(18px,3.6vw,64px); }
.case-impact header > p { color:var(--black); margin-bottom:clamp(54px,8vh,100px); }
.case-impact h2 { font-size:clamp(3.5rem,7vw,8.2rem); }
.case-impact > p { align-self:end; font-size:clamp(1.12rem,1.55vw,1.5rem); line-height:1.55; margin:0; }
.case-signals { border-top:1px solid var(--black); display:grid; grid-column:1/3; grid-template-columns:repeat(3,1fr); margin-top:clamp(34px,5vw,76px); }
.case-signals article { border-bottom:1px solid var(--black); display:flex; flex-direction:column; min-height:200px; padding:26px 24px 30px 0; }
.case-signals article + article { border-left:1px solid var(--black); padding-left:24px; }
.case-signals strong { font:400 clamp(3.5rem,7vw,8rem)/.8 "Archivo Black",sans-serif; letter-spacing:-.08em; }
.case-signals span { font:700 10px/1.45 "Space Mono",monospace; margin-top:auto; max-width:220px; text-transform:uppercase; }

.case-services,.case-faq { display:grid; gap:clamp(34px,5vw,84px); grid-template-columns:.4fr .75fr .85fr; padding:clamp(76px,9vw,150px) clamp(18px,3.6vw,64px); }
.case-services ul { list-style:none; margin:0; padding:0; }
.case-services li { border-top:1px solid var(--black); font-size:clamp(1.05rem,1.4vw,1.3rem); padding:18px 0; text-transform:uppercase; }
.case-services li:last-child { border-bottom:1px solid var(--black); }
.case-services li span { color:var(--accent); display:inline-block; font:700 10px "Space Mono",monospace; width:42px; }
.case-services > a { border-bottom:1px solid var(--black); font:700 10px "Space Mono",monospace; grid-column:3; justify-self:start; margin-top:-42px; padding-bottom:8px; text-transform:uppercase; }
.case-services > a span { color:var(--accent); margin-left:18px; }

.case-faq { background:#0a0a0a; color:#fff; }
.case-faq > div { border-top:1px solid rgba(255,255,255,.4); }
.case-faq details { border-bottom:1px solid rgba(255,255,255,.4); }
.case-faq summary { align-items:center; cursor:pointer; display:flex; font-size:clamp(1.05rem,1.4vw,1.35rem); justify-content:space-between; list-style:none; padding:22px 0; }
.case-faq summary::-webkit-details-marker { display:none; }
.case-faq summary span { color:var(--accent); font:700 20px "Space Mono",monospace; }
.case-faq details[open] summary span { transform:rotate(45deg); }
.case-faq details p { color:rgba(255,255,255,.76); font-size:1.05rem; line-height:1.55; margin:0; max-width:650px; padding:0 40px 24px 0; }

.case-next { background:var(--accent); padding:clamp(70px,9vw,140px) clamp(18px,3.6vw,64px) 28px; }
.case-next > p { font:700 11px "Space Mono",monospace; margin:0 0 44px; text-transform:uppercase; }
.case-next > a { align-items:center; border-bottom:2px solid var(--black); display:flex; font:400 clamp(3.4rem,8.6vw,10rem)/.75 "Archivo Black",sans-serif; justify-content:space-between; letter-spacing:-.08em; overflow-wrap:normal; padding-bottom:28px; text-transform:uppercase; word-break:normal; }
.case-next > a b { flex:0 0 auto; font-size:.35em; margin-left:24px; }
.case-next > div { display:flex; font:700 11px "Space Mono",monospace; justify-content:space-between; padding-top:50px; text-transform:uppercase; }

@media (max-width:980px) {
  .case-hero { grid-template-columns:1fr .82fr; }
  .case-hero h1 { font-size:clamp(3.6rem,8vw,6.6rem); }
  .case-intro { grid-template-columns:.35fr 1.15fr; }
  .case-intro > p:last-child { grid-column:2; }
  .case-services,.case-faq { grid-template-columns:.32fr .68fr 1fr; }
}

@media (max-width:720px) {
  .case-nav { gap:12px; grid-template-columns:minmax(120px,154px) 1fr; min-height:72px; padding:7px 12px; }
  .case-nav-logo { height:54px; width:150px; }
  .case-nav p { display:none; }
  .case-back { font-size:8px; justify-self:end; }
  .case-hero { display:flex; flex-direction:column; height:auto; min-height:0; }
  .case-hero-copy { min-height:calc(78svh - 72px); padding:34px 14px 38px; }
  .case-eyebrow,.case-section-index,.case-duo span,.case-work header > p,.case-impact header > p,.case-services > p,.case-faq > p { font-size:9px; }
  .case-hero h1 { font-size:clamp(2.45rem,11.5vw,4rem); letter-spacing:-.075em; margin:54px 0 28px; text-wrap:balance; }
  .case-headline { font-size:1.12rem; }
  .case-hero-copy > a { margin-top:44px; }
  .case-hero-media { aspect-ratio:9/12; min-height:0; }
  .case-intro { display:flex; flex-direction:column; gap:34px; min-height:0; padding:72px 14px 84px; }
  .case-intro h2,.case-work h2,.case-impact h2,.case-services h2,.case-faq h2 { font-size:clamp(2.8rem,13.8vw,4.6rem); }
  .case-intro > p:last-child { font-size:1.05rem; margin-top:24px; }
  .case-duo { grid-template-columns:1fr; }
  .case-duo article { min-height:0; padding:70px 14px 78px; }
  .case-duo article + article { border-left:0; border-top:1px solid rgba(255,255,255,.28); }
  .case-duo h2 { font-size:clamp(3rem,14vw,5rem); margin:72px 0 30px; }
  .case-duo p { font-size:1rem; }
  .case-work { padding:76px 14px 84px; }
  .case-work > header { display:flex; flex-direction:column; }
  .case-work > div { grid-template-columns:1fr; margin-top:64px; }
  .case-work article { min-height:0; padding:22px 0 42px; }
  .case-work article + article { border-left:0; padding-left:0; }
  .case-work h3 { margin:52px 0 20px; }
  .case-gallery { grid-template-columns:1fr; }
  .case-gallery figure,.case-gallery figure:nth-child(2) { aspect-ratio:4/5; margin:0; }
  .case-impact { display:flex; flex-direction:column; padding:76px 14px 84px; }
  .case-impact header > p { margin-bottom:58px; }
  .case-impact > p { font-size:1.05rem; margin-top:24px; }
  .case-signals { grid-template-columns:1fr; margin-top:52px; width:100%; }
  .case-signals article { min-height:150px; padding:22px 0 24px; }
  .case-signals article + article { border-left:0; padding-left:0; }
  .case-signals strong { font-size:clamp(3.2rem,18vw,5rem); }
  .case-services,.case-faq { display:flex; flex-direction:column; padding:76px 14px 84px; }
  .case-services ul,.case-faq > div { margin-top:20px; }
  .case-services > a { align-self:flex-start; margin-top:8px; }
  .case-faq details p { font-size:1rem; padding-right:0; }
  .case-next { padding:72px 14px 26px; }
  .case-next > a { align-items:flex-end; font-size:clamp(2.65rem,13vw,4.4rem); }
  .case-next > div { flex-direction:column; gap:20px; padding-top:38px; }
}

/* Project pages v2: one calm editorial rhythm, shared horizontal navigation. */
.case-page-v2 { background:#f3f3f0; }
.case-page-v2 .case-nav {
  gap:clamp(20px,3vw,54px);
  grid-template-columns:minmax(190px,235px) minmax(0,1fr) auto;
  min-height:76px;
  padding:8px clamp(18px,2.6vw,44px);
}
.case-page-v2 .case-nav-logo { height:58px; width:220px; }
.case-nav-links { align-items:center; display:flex; gap:clamp(20px,3vw,54px); justify-content:center; }
.case-nav-links a,.case-page-v2 .case-back { font:700 10px/1 "Space Mono",monospace; position:relative; text-transform:uppercase; }
.case-nav-links a::after { background:var(--accent); bottom:-9px; content:""; height:2px; left:0; position:absolute; transform:scaleX(0); transform-origin:left; transition:transform .3s cubic-bezier(.16,1,.3,1); width:100%; }
.case-nav-links a:hover::after,.case-nav-links a:focus-visible::after { transform:scaleX(1); }

.case-page-v2 .case-hero { height:auto; min-height:calc(100svh - 76px); }
.case-page-v2 .case-hero-copy { justify-content:center; min-height:680px; padding:clamp(40px,5vw,78px); }
.case-page-v2 .case-hero h1 { font-size:clamp(3.3rem,5.8vw,7rem); margin:clamp(28px,4vh,46px) 0 24px; }
.case-page-v2 .case-headline { font-size:clamp(1.14rem,1.55vw,1.55rem); max-width:650px; }
.case-preagency { color:rgba(255,255,255,.5); font:400 9px/1.5 "Space Mono",monospace; margin:18px 0 0; max-width:560px; }
.case-preagency sup { color:var(--accent); font-size:15px; margin-right:4px; top:.1em; }
.case-hero-results { border-bottom:1px solid rgba(255,255,255,.26); border-top:1px solid rgba(255,255,255,.26); display:grid; gap:0; grid-template-columns:1fr 1fr; margin-top:clamp(28px,4vh,44px); max-width:760px; }
.case-hero-results p { display:flex; flex-direction:column; margin:0; min-height:150px; padding:20px 24px 18px 0; }
.case-hero-results p + p { border-left:1px solid rgba(255,255,255,.26); padding-left:24px; }
.case-hero-results strong { color:var(--accent); font:400 clamp(2.5rem,3.6vw,4.3rem)/.8 "Archivo Black",sans-serif; letter-spacing:-.08em; }
.case-hero-results span { color:rgba(255,255,255,.7); font:700 9px/1.4 "Space Mono",monospace; margin-top:auto; text-transform:uppercase; }
.case-page-v2 .case-hero-copy > a { margin-top:clamp(30px,4vh,46px); }

.case-overview { display:grid; gap:clamp(44px,8vw,130px); grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr); margin:auto; max-width:1540px; padding:clamp(84px,10vw,160px) clamp(18px,4vw,68px); }
.case-overview header h2 { font:400 clamp(3.3rem,5.4vw,6.5rem)/.76 "Archivo Black",sans-serif; letter-spacing:-.075em; margin:clamp(54px,8vh,94px) 0 0; text-transform:uppercase; }
.case-overview header h2 strong { color:var(--accent); font-weight:inherit; }
.case-overview-copy { align-self:end; }
.case-overview-lead { font-size:clamp(1.25rem,1.65vw,1.62rem); line-height:1.5; margin:0 0 clamp(50px,7vw,90px); max-width:830px; }
.case-overview-points { border-top:1px solid var(--black); display:grid; grid-template-columns:1fr 1fr; }
.case-overview-points article { padding:22px clamp(18px,2.5vw,38px) 8px 0; }
.case-overview-points article + article { border-left:1px solid var(--black); padding-left:clamp(18px,2.5vw,38px); }
.case-overview-points span { color:var(--accent); font:700 10px "Space Mono",monospace; }
.case-overview-points p { font-size:clamp(1rem,1.15vw,1.12rem); line-height:1.58; margin:38px 0 0; }

.case-work-v2 { background:#0a0a0a; color:#fff; padding-bottom:clamp(74px,8vw,126px); padding-top:clamp(74px,8vw,126px); }
.case-work-v2 > header { grid-template-columns:.4fr 1.6fr; }
.case-work-v2 > div { border-color:rgba(255,255,255,.34); margin-top:clamp(52px,6vw,86px); }
.case-work-v2 article { border-color:rgba(255,255,255,.34); min-height:290px; }
.case-work-v2 article + article { border-color:rgba(255,255,255,.34); }
.case-work-v2 article p { color:rgba(255,255,255,.72); }
.case-work-v2 h3 { margin-top:56px; }

.case-gallery-v2 { gap:1px; grid-template-columns:1fr 1fr; }
.case-gallery-v2 figure,.case-gallery-v2 figure:nth-child(2) { aspect-ratio:4/3; margin:0; }

.case-impact-v2 { gap:clamp(34px,5vw,78px); padding-bottom:clamp(82px,9vw,140px); padding-top:clamp(82px,9vw,140px); }
.case-impact-v2 h2 { font-size:clamp(3.1rem,5.8vw,6.8rem); }
.case-impact-v2 .case-signals { margin-top:clamp(20px,3vw,48px); }
.case-impact-v2 .case-signals article { min-height:180px; }
.case-impact-v2 .case-signals strong { font-size:clamp(3.1rem,6.2vw,7rem); }
.case-impact-fast .case-signals strong { font-size:clamp(3.3rem,6.8vw,7.8rem); }

.case-details { background:#0a0a0a; color:#fff; display:grid; grid-template-columns:1fr 1fr; }
.case-services-v2,.case-faq-v2 { background:transparent; color:inherit; display:block; padding:clamp(72px,7vw,118px) clamp(18px,4vw,68px); }
.case-faq-v2 { border-left:1px solid rgba(255,255,255,.3); }
.case-services-v2 > p,.case-faq-v2 > p { color:var(--accent); font:700 10px "Space Mono",monospace; margin:0; }
.case-services-v2 h2,.case-faq-v2 h2 { font-size:clamp(2.7rem,4.5vw,5.4rem); margin:50px 0 clamp(48px,6vw,82px); }
.case-services-v2 ul,.case-faq-v2 > div { margin:0; }
.case-services-v2 li { border-color:rgba(255,255,255,.32); font-size:clamp(.95rem,1.15vw,1.15rem); }
.case-services-v2 li:last-child { border-color:rgba(255,255,255,.32); }
.case-services-v2 > a { border-color:rgba(255,255,255,.55); display:inline-block; grid-column:auto; margin:34px 0 0; }
.case-faq-v2 > div { border-color:rgba(255,255,255,.4); }

@media (max-width:980px) {
  .case-page-v2 .case-nav { grid-template-columns:minmax(170px,210px) minmax(0,1fr) auto; }
  .case-nav-links { gap:20px; }
  .case-overview { gap:50px; grid-template-columns:.8fr 1.2fr; }
}

@media (max-width:720px) {
  .case-page-v2 .case-nav { gap:7px 12px; grid-template-columns:minmax(128px,160px) 1fr; min-height:104px; padding:7px 12px 9px; }
  .case-page-v2 .case-nav-logo { grid-column:1; grid-row:1; height:48px; width:155px; }
  .case-page-v2 .case-back { grid-column:2; grid-row:1; justify-self:end; }
  .case-nav-links { border-top:1px solid rgba(255,255,255,.22); gap:0; grid-column:1 / -1; grid-row:2; justify-content:space-between; padding-top:9px; width:100%; }
  .case-nav-links a { font-size:7px; }
  .case-page-v2 .case-hero { min-height:0; }
  .case-page-v2 .case-hero-copy { min-height:0; padding:54px 14px 50px; }
  .case-page-v2 .case-hero h1 { font-size:clamp(2.55rem,11.7vw,4rem); margin:54px 0 26px; }
  .case-preagency { font-size:8px; margin-top:16px; }
  .case-hero-results { grid-template-columns:1fr; margin-top:36px; }
  .case-hero-results p { min-height:108px; padding:17px 0 14px; }
  .case-hero-results p + p { border-left:0; border-top:1px solid rgba(255,255,255,.26); padding-left:0; }
  .case-hero-results strong { font-size:clamp(2.8rem,14vw,3.9rem); }
  .case-hero-results span { font-size:7px; }
  .case-page-v2 .case-hero-media { aspect-ratio:9/11; }
  .case-overview { display:flex; flex-direction:column; gap:50px; padding:78px 14px 86px; }
  .case-overview header h2 { font-size:clamp(2.9rem,13vw,4.5rem); margin-top:50px; }
  .case-overview-lead { font-size:1.08rem; margin-bottom:52px; }
  .case-overview-points { grid-template-columns:1fr; }
  .case-overview-points article { padding:20px 0 34px; }
  .case-overview-points article + article { border-left:0; border-top:1px solid var(--black); padding:32px 0 0; }
  .case-overview-points p { font-size:1rem; margin-top:24px; }
  .case-work-v2 { padding:74px 14px 84px; }
  .case-work-v2 > header { display:flex; }
  .case-work-v2 h3 { margin-top:42px; }
  .case-gallery-v2 { grid-template-columns:1fr; }
  .case-gallery-v2 figure,.case-gallery-v2 figure:nth-child(2) { aspect-ratio:4/5; }
  .case-impact-v2 { padding:76px 14px 84px; }
  .case-impact-v2 h2 { font-size:clamp(2.75rem,12.5vw,4.3rem); }
  .case-impact-v2 .case-signals strong,.case-impact-fast .case-signals strong { font-size:clamp(3rem,16vw,4.8rem); }
  .case-details { grid-template-columns:1fr; }
  .case-services-v2,.case-faq-v2 { padding:72px 14px 82px; }
  .case-faq-v2 { border-left:0; border-top:1px solid rgba(255,255,255,.3); }
  .case-services-v2 h2,.case-faq-v2 h2 { font-size:clamp(2.65rem,12vw,4rem); margin:46px 0 54px; }
}


/* Project pages v4: the homepage navigation and a lighter case-study rhythm. */
.case-page-v4 { background:#f3f3f0; padding-left:96px; }
.case-page-v4 .case-content { min-width:0; }
.case-page-v4 .case-hero { grid-template-columns:minmax(0,.96fr) minmax(390px,1.04fr); min-height:100svh; }
.case-page-v4 .case-hero-copy { min-height:720px; padding:clamp(42px,5vw,82px); }
.case-page-v4 .case-hero h1 { font-size:clamp(3.2rem,5.65vw,6.8rem); margin:clamp(28px,4vh,46px) 0 24px; }
.case-page-v4 .case-headline { font-size:clamp(1.08rem,1.42vw,1.42rem); max-width:590px; }
.case-page-v4 .case-preagency { color:rgba(255,255,255,.56); font:400 9px/1.55 "Space Mono",monospace; margin-top:16px; max-width:460px; }
.case-page-v4 .case-preagency sup { color:var(--accent); font-size:13px; margin-right:4px; }
.case-page-v4 .case-hero-results { margin-top:clamp(28px,4vh,42px); max-width:880px; }
.case-page-v4 .case-hero-results p { min-height:200px; padding:24px 26px 20px 0; }
.case-page-v4 .case-hero-results strong { font-size:clamp(3.4rem,5vw,6rem); white-space:nowrap; }
.case-page-v4 .case-hero-results p:first-child strong { font-size:clamp(2.8rem,3.35vw,4.75rem); }
.case-page-v4 .case-hero-results span { font-size:10px; max-width:210px; }
.case-page-v4 .case-brief { gap:clamp(44px,6vw,96px); grid-template-columns:minmax(260px,.66fr) minmax(0,1.34fr); padding-bottom:clamp(82px,8vw,126px); padding-top:clamp(82px,8vw,126px); }
.case-page-v4 .case-brief header h2 { font-size:clamp(2.8rem,4.55vw,5.5rem); }
.case-page-v4 .case-brief-lead { font-size:clamp(1.16rem,1.48vw,1.46rem); margin-bottom:clamp(38px,5vw,62px); max-width:760px; }
.case-page-v4 .case-brief-points p { display:-webkit-box; font-size:clamp(.95rem,1.02vw,1.03rem); -webkit-box-orient:vertical; -webkit-line-clamp:6; overflow:hidden; }
.case-page-v4 .case-actions { padding-bottom:clamp(76px,7vw,108px); padding-top:clamp(76px,7vw,108px); }
.case-page-v4 .case-actions h2 { font-size:clamp(2.85rem,4.75vw,5.7rem); }
.case-page-v4 .case-action-list { margin-top:clamp(44px,5vw,68px); }
.case-page-v4 .case-action-list article { min-height:220px; }
.case-page-v4 .case-action-list h3 { margin-top:42px; }
.case-page-v4 .case-result { gap:clamp(42px,6vw,88px); padding-bottom:clamp(80px,8vw,126px); padding-top:clamp(80px,8vw,126px); }
.case-page-v4 .case-result h2 { font-size:clamp(2.75rem,4.35vw,5.25rem); }
.case-page-v4 .case-result-copy > p { font-size:clamp(1.08rem,1.3vw,1.32rem); }
.case-page-v4 .case-result-signals { margin-top:38px; }
.case-page-v4 .case-next { padding-left:clamp(18px,4vw,68px); padding-right:clamp(18px,4vw,68px); }

html.case-view .site-cursor {
  background:var(--accent);
  border:2px solid #fff;
  box-shadow:0 0 0 1px #090909,0 7px 22px rgba(0,0,0,.28);
  mix-blend-mode:normal;
  z-index:2147483647;
}
html.case-view.cursor-ready .site-cursor { opacity:1!important; }

@media (max-width:980px) {
  .case-page-v4 .case-hero { grid-template-columns:1fr .8fr; }
  .case-page-v4 .case-hero-results strong { font-size:clamp(3.1rem,5.8vw,4.8rem); }
  .case-page-v4 .case-hero-results p:first-child strong { font-size:clamp(2.35rem,4vw,3.5rem); }
}

@media (max-width:720px) {
  .case-page-v4 { padding-left:0; padding-top:64px; }
  .case-page-v4 .case-hero { display:flex; flex-direction:column; min-height:0; }
  .case-page-v4 .case-hero-copy { min-height:auto; padding:48px 14px 44px; }
  .case-page-v4 .case-hero h1 { font-size:clamp(2.45rem,11.3vw,3.8rem); margin:46px 0 24px; text-wrap:balance; }
  .case-page-v4 .case-hero-results { grid-template-columns:1fr; margin-top:34px; }
  .case-page-v4 .case-hero-results p { min-height:132px; padding:18px 0 16px; }
  .case-page-v4 .case-hero-results p + p { border-left:0; border-top:1px solid rgba(255,255,255,.26); padding-left:0; }
  .case-page-v4 .case-hero-results strong { font-size:clamp(3.45rem,17vw,5rem); }
  .case-page-v4 .case-hero-results p:first-child strong { font-size:clamp(3.45rem,17vw,5rem); }
  .case-page-v4 .case-hero-media { aspect-ratio:9/11; }
  .case-page-v4 .case-brief { display:flex; flex-direction:column; gap:40px; padding:68px 14px 74px; }
  .case-page-v4 .case-brief header h2 { font-size:clamp(2.65rem,12vw,3.9rem); margin-top:40px; }
  .case-page-v4 .case-brief-lead { font-size:1.05rem; margin-bottom:38px; }
  .case-page-v4 .case-brief-points { grid-template-columns:1fr; }
  .case-page-v4 .case-brief-points article { padding:18px 0 26px; }
  .case-page-v4 .case-brief-points article + article { border-left:0; border-top:1px solid var(--black); padding:26px 0 0; }
  .case-page-v4 .case-brief-points p { -webkit-line-clamp:unset; font-size:.98rem; margin-top:18px; }
  .case-page-v4 .case-actions { padding:68px 14px 72px; }
  .case-page-v4 .case-actions h2 { font-size:clamp(2.6rem,11.8vw,3.85rem); margin-top:38px; }
  .case-page-v4 .case-action-list { display:block; margin-top:44px; }
  .case-page-v4 .case-action-list article { min-height:0; padding:20px 0 30px; }
  .case-page-v4 .case-action-list article + article { border-left:0; border-top:1px solid rgba(255,255,255,.35); padding:28px 0 30px; }
  .case-page-v4 .case-action-list h3 { margin:28px 0 16px; }
  .case-page-v4 .case-result { display:flex; flex-direction:column; gap:44px; padding:68px 14px 74px; }
  .case-page-v4 .case-result h2 { font-size:clamp(2.45rem,10.9vw,3.6rem); margin-top:38px; }
  .case-page-v4 .case-result-copy > p { font-size:1.04rem; }
  .case-page-v4 .case-result-signals { grid-template-columns:1fr; }
  .case-page-v4 .case-result-signals article { min-height:104px; padding:15px 0 13px; }
  .case-page-v4 .case-result-signals article + article { border-left:0; border-top:1px solid var(--black); padding-left:0; }
}

/* August 28: resilient conversion, process and project-story refinements. */
.audit-cta small,
.service-detail .audit-cta small { color:#fff; }

.about-you {
  min-height:100svh;
  overflow:hidden;
  padding-bottom:clamp(64px,8vw,120px);
  position:relative;
}
.about-you-grid { align-items:center; min-height:calc(100svh - 90px); }
.about-you-heading { align-self:stretch; display:flex; flex-direction:column; justify-content:center; }
.about-you-visual {
  background:#090909;
  clip-path:polygon(0 0,94% 0,100% 12%,100% 100%,6% 100%,0 88%);
  height:clamp(230px,26vw,390px);
  margin:clamp(38px,6vh,72px) 0 0;
  overflow:hidden;
  position:relative;
  width:min(100%,760px);
}
.about-you-visual::after { background:linear-gradient(90deg,rgba(9,9,9,.08),rgba(9,9,9,.78)); content:""; inset:0; position:absolute; }
.about-you-visual img { filter:grayscale(1) contrast(1.08); height:100%; object-fit:cover; object-position:center 43%; transition:filter .45s,transform .9s cubic-bezier(.16,1,.3,1); width:100%; }
.about-you-visual:hover img { filter:grayscale(.15); transform:scale(1.025); }
.about-you-visual figcaption { bottom:22px; color:#fff; display:flex; flex-direction:column; font:700 9px/1.35 "Space Mono",monospace; gap:8px; left:24px; position:absolute; text-transform:uppercase; z-index:2; }
.about-you-visual figcaption b { color:var(--accent); font:400 clamp(1.55rem,2.8vw,3.25rem)/.85 "Archivo Black",sans-serif; letter-spacing:-.055em; max-width:420px; }
.about-you-cross { color:#fff; font:400 clamp(1.5rem,2vw,2.4rem)/1 "Space Mono",monospace; font-style:normal; position:absolute; z-index:2; }
.about-you-cross.cross-a { right:22px; top:17px; }
.about-you-cross.cross-b { bottom:18px; right:24px; }

.footer { display:grid; grid-template-rows:auto minmax(0,1fr) auto; min-height:100svh; }
.footer-pitch { align-self:center; max-height:none; }
.footer-form-link span { hyphens:none; overflow-wrap:normal!important; word-break:normal; }
.footer .footer-actions > .footer-form-link { min-width:0; }

.case-strategy-tags { display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:clamp(34px,4vw,52px) 0 0; padding:0; }
.case-strategy-tags li { border:1px solid rgba(9,9,9,.38); font:700 9px/1.25 "Space Mono",monospace; padding:9px 11px; text-transform:uppercase; }

.case-media-story { background:#f1f0ec; padding:clamp(76px,8vw,130px) clamp(18px,4vw,68px) clamp(88px,9vw,150px); position:relative; }
.case-media-story::before { background-image:radial-gradient(circle,rgba(9,9,9,.2) 1px,transparent 1px); background-size:20px 20px; content:""; inset:0; opacity:.34; pointer-events:none; position:absolute; }
.case-media-story > header,.case-media-grid,.case-fast-stories { margin-left:auto; margin-right:auto; max-width:1500px; position:relative; z-index:1; }
.case-media-story > header { align-items:end; display:grid; gap:40px; grid-template-columns:.42fr 1.58fr; }
.case-media-story > header > p { color:var(--accent); font:700 10px "Space Mono",monospace; margin:0; text-transform:uppercase; }
.case-media-story h2 { font:400 clamp(2.85rem,4.8vw,5.8rem)/.76 "Archivo Black",sans-serif; letter-spacing:-.075em; margin:0; text-transform:uppercase; }
.case-media-story h2 strong { color:var(--accent); font-weight:inherit; }
.case-media-grid { display:grid; gap:clamp(10px,1.5vw,24px); grid-template-columns:repeat(12,minmax(0,1fr)); margin-top:clamp(58px,7vw,96px); }
.case-media-grid figure { background:#0a0a0a; margin:0; overflow:hidden; position:relative; }
.case-media-grid figure::after { background:linear-gradient(180deg,transparent 68%,rgba(0,0,0,.62)); content:""; inset:0; pointer-events:none; position:absolute; }
.case-media-grid img,.case-media-grid video { display:block; height:100%; object-fit:cover; transition:filter .45s,transform .8s cubic-bezier(.16,1,.3,1); width:100%; }
.case-media-grid img { filter:grayscale(1) contrast(1.04); }
.case-media-grid figure:hover img { filter:grayscale(0); transform:scale(1.02); }
.case-media-grid figcaption { bottom:13px; color:#fff; font:700 9px "Space Mono",monospace; left:13px; position:absolute; text-transform:uppercase; z-index:2; }
.case-media-video { aspect-ratio:9/16; grid-column:1 / 5; grid-row:1 / 3; }
.case-media-photo.media-photo-a { aspect-ratio:16/10; grid-column:5 / 11; grid-row:1; }
.case-media-photo.media-photo-b { aspect-ratio:4/3; grid-column:8 / 13; grid-row:2; margin-top:clamp(-40px,-3vw,-18px); }
.case-media-mark { align-items:center; background:var(--accent); color:#090909; display:flex; font:400 clamp(2rem,4vw,4.5rem)/1 "Space Mono",monospace; grid-column:5 / 8; grid-row:2; height:clamp(72px,8vw,118px); justify-content:center; place-self:center; width:clamp(72px,8vw,118px); }
.case-fast-stories { border-bottom:1px solid var(--black); border-top:1px solid var(--black); display:grid; grid-template-columns:1fr 1fr; margin-top:clamp(54px,6vw,82px); }
.case-fast-stories article { min-height:180px; padding:22px clamp(20px,3vw,44px) 26px 0; }
.case-fast-stories article + article { border-left:1px solid var(--black); padding-left:clamp(20px,3vw,44px); }
.case-fast-stories span { color:var(--accent); font:700 10px "Space Mono",monospace; }
.case-fast-stories p { font-size:clamp(1rem,1.2vw,1.18rem); line-height:1.55; margin:42px 0 0; max-width:590px; }

html.case-view .site-cursor,
body:has(.case-page) .site-cursor { background:var(--acid); border:0; box-shadow:none; mix-blend-mode:difference; z-index:2147483647; }

@media (max-width:720px) {
  .service-accordion article > button { z-index:2; }
  .service-accordion article.active .service-detail { pointer-events:none; z-index:3; }
  .service-accordion article.active .service-detail .audit-cta { pointer-events:auto; position:relative; z-index:4; }
  .service-accordion article.active .service-toggle { z-index:5; }

  .process-scroll { height:390svh; }
  .process-sticky { min-height:620px; }
  .process-canvas { height:min(88svh,720px); overflow:visible; width:calc(100% - 20px); }
  .process-links { overflow:visible; }
  .process-node,.process-node:nth-of-type(even),.process-node:nth-of-type(odd) { background:#f1f0ec; padding:8px 9px 9px 17px; width:min(43vw,166px); }
  .process-node.node-1 { --node-x:7%; --node-y:6%; transform:translateY(-50%) translateY(var(--shift)); }
  .process-node.node-2 { --node-x:93%; --node-y:20%; transform:translate(-100%,-50%) translateY(var(--shift)); }
  .process-node.node-3 { --node-x:7%; --node-y:34%; transform:translateY(-50%) translateY(var(--shift)); }
  .process-node.node-4 { --node-x:93%; --node-y:48%; transform:translate(-100%,-50%) translateY(var(--shift)); }
  .process-node.node-5 { --node-x:7%; --node-y:62%; transform:translateY(-50%) translateY(var(--shift)); }
  .process-node.node-6 { --node-x:93%; --node-y:76%; transform:translate(-100%,-50%) translateY(var(--shift)); }
  .process-node.node-7 { --node-x:7%; --node-y:90%; transform:translateY(-50%) translateY(var(--shift)); }
  .process-node .process-dot,.process-node:nth-of-type(even) .process-dot,.process-node:nth-of-type(odd) .process-dot { left:-7px; right:auto; }
  .process-node.node-2 .process-dot,.process-node.node-4 .process-dot,.process-node.node-6 .process-dot { left:auto; right:-7px; }
  .process-node h3 { font-size:clamp(.82rem,3.6vw,1rem); }
  .process-node p { font-size:clamp(.66rem,2.6vw,.78rem); line-height:1.22; }
  .process-full-picture { inset:7px; }
  .process-full-picture > strong { bottom:8px; font-size:clamp(.95rem,4.8vw,1.35rem); left:auto; max-width:47%; padding:8px; right:8px; text-align:right; }

  .about-you { min-height:0; }
  .about-you-grid { min-height:0; }
  .about-you-visual { clip-path:polygon(0 0,91% 0,100% 10%,100% 100%,9% 100%,0 90%); height:260px; margin-top:34px; width:100%; }
  .about-you-visual figcaption { bottom:16px; left:16px; }
  .about-you-visual figcaption b { font-size:clamp(1.55rem,8vw,2.4rem); max-width:260px; }
  .about-you-copy { margin-top:42px; }

  .footer { min-height:100svh; padding-bottom:72px; }
  .footer-pitch { align-self:center; margin-top:20px; }
  .footer .footer-actions > .footer-form-link { font-size:clamp(1.05rem,5.4vw,1.5rem); min-height:100px; padding:17px; }
  .footer-form-link span { line-height:1.04; }

  .case-strategy-tags { margin-top:30px; }
  .case-media-story { padding:68px 14px 76px; }
  .case-media-story > header { display:flex; flex-direction:column; gap:34px; }
  .case-media-story h2 { font-size:clamp(2.6rem,11.8vw,3.85rem); }
  .case-media-grid { display:flex; flex-direction:column; gap:10px; margin-top:46px; }
  .case-media-video { aspect-ratio:9/16; width:78%; }
  .case-media-photo.media-photo-a,.case-media-photo.media-photo-b { aspect-ratio:4/3; margin:0; width:100%; }
  .case-media-photo.media-photo-b { margin-left:auto; width:82%; }
  .case-media-mark { height:62px; margin:-30px 12px -42px auto; position:relative; width:62px; z-index:3; }
  .case-fast-stories { grid-template-columns:1fr; margin-top:54px; }
  .case-fast-stories article { min-height:0; padding:20px 0 30px; }
  .case-fast-stories article + article { border-left:0; border-top:1px solid var(--black); padding:28px 0 30px; }
  .case-fast-stories p { font-size:1rem; margin-top:24px; }
}

/* August 28 final pass: resilient mobile interaction and calmer editorial rhythm. */
.audit-cta small,
.service-detail .audit-cta small {
  color:#fff!important;
}

.about-you {
  background:#f1f0ec;
  color:var(--black);
  min-height:100svh;
  overflow:hidden;
  padding:22px 2vw clamp(72px,8vw,122px);
  position:relative;
}
.about-you::after {
  background-image:radial-gradient(circle,rgba(9,9,9,.2) 1px,transparent 1px);
  background-size:22px 22px;
  bottom:0;
  content:"";
  height:36%;
  left:0;
  opacity:.28;
  pointer-events:none;
  position:absolute;
  width:42%;
}
.about-you-grid {
  align-items:center;
  display:grid;
  gap:clamp(48px,7vw,124px);
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  min-height:calc(100svh - 110px);
  padding:clamp(62px,7vw,112px) 1vw 12px;
}
.about-you-heading { align-self:center; display:flex; flex-direction:column; justify-content:center; }
.about-you-eyebrow {
  font:700 11px/1.5 "Space Mono",monospace!important;
  margin:0 0 clamp(36px,5vh,62px)!important;
  max-width:340px;
  text-transform:uppercase;
}
.about-you h2 { font-size:clamp(4.4rem,7.6vw,8.5rem); line-height:.74; }
.about-you h2 strong { color:var(--accent); }
.about-you-signal {
  align-items:center;
  border-bottom:1px solid var(--black);
  border-top:1px solid var(--black);
  display:grid;
  font:700 9px "Space Mono",monospace;
  gap:16px;
  grid-template-columns:auto minmax(38px,1fr) auto;
  margin-top:clamp(44px,7vh,80px);
  max-width:600px;
  padding:13px 0;
  position:relative;
  text-transform:uppercase;
  z-index:2;
}
.about-you-signal i { background:var(--accent); display:block; height:7px; transform:skewX(-28deg); }
.about-you-signal strong { color:var(--accent); font:700 11px "Space Mono",monospace; }
.about-you-copy { align-self:center; margin:0; }
.about-you-visual {
  background:#090909;
  clip-path:polygon(0 0,96% 0,100% 8%,100% 100%,5% 100%,0 92%);
  height:clamp(280px,31vw,480px);
  margin:0 0 clamp(36px,5vh,58px);
  overflow:hidden;
  position:relative;
  width:100%;
}
.about-you-visual::after { background:linear-gradient(90deg,rgba(9,9,9,.08),rgba(9,9,9,.58)); content:""; inset:0; position:absolute; }
.about-you-visual img { filter:grayscale(.45) contrast(1.04); height:100%; object-fit:cover; object-position:center 44%; transition:filter .45s,transform .9s cubic-bezier(.16,1,.3,1); width:100%; }
.about-you-visual:hover img { filter:grayscale(0); transform:scale(1.025); }
.about-you-visual figcaption { bottom:22px; color:#fff; display:flex; flex-direction:column; font:700 9px/1.35 "Space Mono",monospace; gap:8px; left:24px; position:absolute; text-transform:uppercase; z-index:2; }
.about-you-visual figcaption b { color:var(--accent); font:400 clamp(1.55rem,2.8vw,3.25rem)/.85 "Archivo Black",sans-serif; letter-spacing:-.055em; max-width:420px; }
.about-you-copy > p { font-size:clamp(1.05rem,1.35vw,1.28rem); margin-bottom:clamp(32px,4vh,48px); }
.about-you-copy > div { border-color:var(--black); }
.about-you-copy > div span { font-size:clamp(10px,.82vw,12px); padding:clamp(14px,1.5vw,19px) 0; }

.footer {
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  min-height:100svh;
  overflow:hidden;
  padding-bottom:clamp(66px,7vh,92px);
}
.footer-pitch { align-self:center; max-height:none; min-width:0; }
.footer .footer-actions { min-width:0; }
.footer .footer-actions > .footer-form-link {
  min-width:0;
  overflow:hidden;
  white-space:normal;
}
.footer-form-link span {
  hyphens:none;
  line-height:1.02;
  overflow-wrap:normal!important;
  text-wrap:balance;
  white-space:normal;
  word-break:normal;
}

.case-action-list { grid-template-columns:repeat(4,minmax(0,1fr)); }
.case-action-list article { min-height:250px; }
.case-page-v4 .case-brief-points p {
  display:block;
  overflow:visible;
  -webkit-line-clamp:unset;
}
.case-media-photo.media-photo-c {
  aspect-ratio:4/5;
  grid-column:5 / 8;
  grid-row:2;
  margin-top:clamp(-34px,-2vw,-16px);
}
.case-media-coordinate {
  color:rgba(9,9,9,.64);
  font:700 9px "Space Mono",monospace;
  position:absolute;
  right:0;
  text-transform:uppercase;
  top:-24px;
}
.case-faq-v4 {
  align-items:start;
  background:#090909;
  color:#fff;
  display:grid;
  gap:clamp(34px,5vw,84px);
  grid-template-columns:minmax(140px,.38fr) minmax(280px,.72fr) minmax(0,.9fr);
  padding:clamp(76px,8vw,132px) clamp(18px,4vw,68px);
}
.case-faq-v4 > p { color:var(--accent); font:700 10px "Space Mono",monospace; margin:0; text-transform:uppercase; }
.case-faq-v4 h2 { font:400 clamp(2.8rem,4.6vw,5.5rem)/.76 "Archivo Black",sans-serif; letter-spacing:-.075em; margin:0; text-transform:uppercase; }
.case-faq-v4 h2 strong { color:var(--accent); font-weight:inherit; }
.case-faq-v4 > div { border-top:1px solid rgba(255,255,255,.4); }
.case-faq-v4 details { border-bottom:1px solid rgba(255,255,255,.4); }
.case-faq-v4 summary { align-items:center; cursor:pointer; display:flex; font-size:clamp(1rem,1.25vw,1.22rem); gap:22px; justify-content:space-between; list-style:none; padding:22px 0; }
.case-faq-v4 summary::-webkit-details-marker { display:none; }
.case-faq-v4 summary span { color:var(--accent); flex:0 0 auto; font:700 20px "Space Mono",monospace; transition:transform .25s; }
.case-faq-v4 details[open] summary span { transform:rotate(45deg); }
.case-faq-v4 details p { color:rgba(255,255,255,.76); font-size:1rem; line-height:1.58; margin:0; max-width:670px; padding:0 40px 24px 0; }

@media (max-width:980px) and (min-width:721px) {
  .about-you-grid { gap:5vw; grid-template-columns:.9fr 1.1fr; }
  .about-you h2 { font-size:clamp(4rem,7.8vw,6rem); }
  .case-action-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-action-list article:nth-child(3) { border-left:0; border-top:1px solid rgba(255,255,255,.35); }
  .case-action-list article:nth-child(4) { border-top:1px solid rgba(255,255,255,.35); }
  .case-faq-v4 { grid-template-columns:.42fr 1fr; }
  .case-faq-v4 > div { grid-column:2; }
}

@media (max-width:720px) {
  /* Each mobile service is a real two-row accordion: the header always remains clickable. */
  .service-accordion { --service-row-h:104px; }
  .service-accordion article,
  .service-accordion article.active {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:var(--service-row-h) auto;
    height:auto!important;
    min-height:var(--service-row-h)!important;
    overflow:hidden;
  }
  .service-accordion article > button,
  .service-accordion article.active > button {
    grid-column:1;
    grid-row:1;
    height:var(--service-row-h);
    min-height:var(--service-row-h);
    overflow:hidden;
    position:relative;
    z-index:4;
  }
  .service-number,
  .service-accordion article.active .service-number {
    bottom:-.22em;
    font-size:clamp(6.4rem,29vw,8rem);
    left:4px;
    line-height:.72;
    top:auto;
    transform:none;
  }
  .service-name,
  .service-accordion article.active .service-name {
    bottom:auto;
    color:inherit;
    font-size:clamp(.98rem,4.6vw,1.25rem);
    left:36%;
    line-height:1.05;
    max-width:calc(64% - 50px);
    opacity:1;
    top:50%;
    transform:translateY(-50%);
  }
  .service-accordion article.active .service-name { color:var(--accent); }
  .service-toggle,
  .service-accordion article.active .service-toggle {
    bottom:auto;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    z-index:5;
  }
  .service-detail,
  .service-accordion article.active .service-detail {
    display:none;
    grid-column:1;
    grid-row:2;
    left:auto;
    max-width:none;
    opacity:1;
    overflow:visible;
    padding:30px 14px 42px;
    pointer-events:auto;
    position:relative;
    right:auto;
    top:auto;
    transform:none;
    visibility:visible;
    width:100%;
    z-index:2;
  }
  .service-accordion article.active .service-detail { display:flex; }
  .service-detail .service-detail-title { font-size:clamp(1.55rem,7vw,2rem); margin:0 0 26px; }
  .service-detail-lead { margin:0 0 22px!important; }
  .service-detail-body { font-size:clamp(15px,4.25vw,18px)!important; line-height:1.62!important; }
  .service-detail-body + .service-detail-body { margin-top:24px!important; }
  .service-detail-emphasis { margin-top:24px; }
  .service-detail small { line-height:1.62; margin-top:24px; }
  .service-detail .audit-cta { margin-top:28px; }
  .service-detail .audit-cta small { font-size:clamp(.82rem,3.5vw,1rem); }

  .process-heading { padding-bottom:20px; }
  .process-scroll { height:385svh; }
  .process-sticky { min-height:600px; }
  .process-canvas {
    height:min(86svh,700px);
    overflow:visible;
    transform:translate(calc(-50% + var(--process-pan-x,0%)),-50%) scale(var(--process-scale,1));
    width:calc(100% - 30px);
  }
  .process-links { inset:0; overflow:visible; pointer-events:none; position:absolute; z-index:0; }
  .process-link { z-index:0; }
  .process-node,
  .process-node:nth-of-type(even),
  .process-node:nth-of-type(odd) {
    background:#f1f0ec;
    box-shadow:0 0 0 7px #f1f0ec;
    padding:7px 9px 8px 18px;
    text-align:left;
    transform:translateY(-50%) translateY(var(--shift));
    width:min(72vw,292px);
    z-index:2;
  }
  .process-node.node-1 { --node-y:6%; left:6%; }
  .process-node.node-2 { --node-y:19%; left:20%; }
  .process-node.node-3 { --node-y:32%; left:9%; }
  .process-node.node-4 { --node-y:45%; left:18%; }
  .process-node.node-5 { --node-y:58%; left:7%; }
  .process-node.node-6 { --node-y:71%; left:19%; }
  .process-node.node-7 { --node-y:84%; left:10%; }
  .process-node .process-dot,
  .process-node:nth-of-type(even) .process-dot,
  .process-node:nth-of-type(odd) .process-dot {
    left:-8px;
    right:auto;
    top:50%;
    transform:translateY(-50%);
  }
  .process-node h3 { font-size:clamp(1rem,4.25vw,1.24rem); }
  .process-node p { font-size:clamp(.76rem,3.15vw,.9rem); line-height:1.3; margin-top:5px; }
  .process-full-picture { inset:10px; }
  .process-full-picture > span { left:8px; top:8px; }
  .process-full-picture > strong {
    bottom:12px;
    font-size:clamp(.95rem,4.5vw,1.35rem);
    left:auto;
    max-width:76%;
    padding:8px;
    right:8px;
    text-align:right;
    top:auto;
  }
  .process-full-picture > small { bottom:8px; font-size:7px; right:8px; }

  .about-you { min-height:0; padding:18px 14px 74px; }
  .about-you::after { height:28%; width:82%; }
  .about-you-grid { display:flex; flex-direction:column; gap:42px; min-height:0; padding:52px 0 0; }
  .about-you-heading { width:100%; }
  .about-you-eyebrow { font-size:10px!important; margin-bottom:30px!important; }
  .about-you h2 { font-size:clamp(4rem,18vw,6.1rem); }
  .about-you-signal { margin-top:36px; width:100%; }
  .about-you-copy { margin:0; width:100%; }
  .about-you-visual { height:clamp(250px,74vw,380px); margin:0 0 34px; width:100%; }
  .about-you-visual figcaption { bottom:16px; left:16px; }
  .about-you-visual figcaption b { font-size:clamp(1.55rem,8vw,2.4rem); max-width:260px; }
  .about-you-copy > p { font-size:1.02rem; }

  .footer {
    min-height:100svh;
    padding:14px 14px 72px;
  }
  .footer-pitch {
    clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%);
    margin:clamp(18px,3vh,34px) 0 0;
    padding:clamp(22px,4vh,34px) 17px clamp(28px,5vh,44px);
    width:100%;
  }
  .footer-pitch > p { font-size:clamp(8px,2.5vw,10px); max-width:82%; }
  .footer-pitch h2 { font-size:clamp(2.7rem,min(14.5vw,10svh),4.8rem); margin-top:clamp(26px,4vh,48px); }
  .footer .footer-actions { gap:10px; grid-template-columns:1fr; margin-top:clamp(22px,3vh,36px); }
  .footer .footer-actions > .footer-form-link { font-size:clamp(1rem,5vw,1.45rem); min-height:88px; padding:14px 15px; }
  .footer-email { font-size:clamp(.72rem,3.5vw,.95rem); }
  .footer-lockup { display:none; }

  .case-action-list { display:block; }
  .case-media-photo.media-photo-c { aspect-ratio:4/3; margin:0 0 0 auto; width:88%; }
  .case-media-coordinate { right:0; top:-22px; }
  .case-faq-v4 { display:flex; flex-direction:column; gap:36px; padding:68px 14px 76px; }
  .case-faq-v4 h2 { font-size:clamp(2.55rem,11.8vw,3.8rem); }
  .case-faq-v4 > div { margin-top:8px; width:100%; }
  .case-faq-v4 details p { font-size:.98rem; padding-right:18px; }
}

@media (max-width:720px) and (max-height:620px) {
  .footer-pitch { margin-top:12px; padding-bottom:24px; padding-top:20px; }
  .footer-pitch h2 { font-size:clamp(2.4rem,min(13vw,9svh),3.7rem); margin-top:20px; }
  .footer .footer-actions { margin-top:18px; }
  .footer .footer-actions > .footer-form-link { min-height:72px; }
}

/* Project pages v5: one calm editorial system, built around the real work. */
.case-page-v5 {
  background:#f3f3f0;
  overflow:clip;
  padding-left:96px;
}
.case-page-v5 * { min-width:0; }
.case5-content { background:#f3f3f0; }

.case5-hero {
  background:#090909;
  color:#fff;
  height:100svh;
  min-height:700px;
  overflow:hidden;
  position:relative;
}
.case5-hero-video {
  height:100%;
  inset:0;
  object-fit:cover;
  object-position:center;
  position:absolute;
  width:100%;
}
.case5-hero-shade {
  background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.86) 35%,rgba(0,0,0,.42) 66%,rgba(0,0,0,.12) 100%),linear-gradient(0deg,rgba(0,0,0,.64),transparent 48%);
  inset:0;
  position:absolute;
}
.case5-hero-copy {
  display:flex;
  flex-direction:column;
  height:100%;
  justify-content:center;
  max-width:min(64vw,980px);
  padding:clamp(40px,5vw,82px);
  position:relative;
  z-index:2;
}
.case5-hero-meta {
  display:flex;
  flex-wrap:wrap;
  font:700 9px/1.45 "Space Mono",monospace;
  gap:9px 0;
  margin-bottom:clamp(38px,6vh,76px);
  text-transform:uppercase;
}
.case5-hero-meta span { align-items:center; display:flex; }
.case5-hero-meta span:not(:last-child)::after { color:var(--accent); content:"/"; margin:0 13px; }
.case5-hero h1 {
  font:400 clamp(4rem,8.1vw,9.4rem)/.74 "Archivo Black",sans-serif;
  hyphens:none;
  letter-spacing:-.082em;
  margin:0;
  max-width:960px;
  overflow-wrap:normal;
  text-transform:uppercase;
  text-wrap:balance;
  word-break:normal;
}
.case5-hero-copy > p {
  color:rgba(255,255,255,.88);
  font-size:clamp(1.18rem,1.65vw,1.62rem);
  line-height:1.42;
  margin:clamp(28px,4vh,44px) 0 0;
  max-width:720px;
  text-wrap:balance;
}
.case5-hero-copy > small {
  color:rgba(255,255,255,.6);
  font:400 9px/1.55 "Space Mono",monospace;
  margin-top:17px;
  max-width:560px;
}
.case5-hero-copy > small sup { color:var(--accent); font-size:13px; margin-right:4px; }
.case5-hero-copy > a {
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.64);
  display:flex;
  font:700 10px "Space Mono",monospace;
  justify-content:space-between;
  margin-top:clamp(36px,6vh,68px);
  max-width:280px;
  padding-bottom:10px;
  text-transform:uppercase;
}
.case5-hero-copy > a b { color:var(--accent); }
.case5-hero-stamp {
  align-items:center;
  bottom:20px;
  display:flex;
  font:700 9px "Space Mono",monospace;
  gap:11px;
  position:absolute;
  right:24px;
  text-transform:uppercase;
  z-index:2;
}
.case5-hero-stamp b { align-items:center; background:var(--accent); color:#090909; display:flex; height:44px; justify-content:center; width:44px; }

.case5-opening {
  display:grid;
  gap:clamp(50px,8vw,148px);
  grid-template-columns:minmax(150px,.36fr) minmax(0,1.64fr);
  margin:auto;
  max-width:1700px;
  padding:clamp(88px,11vw,180px) clamp(18px,4vw,72px);
}
.case5-section-label { align-self:start; border-top:1px solid var(--black); display:grid; gap:14px; grid-template-columns:34px 1fr; padding-top:14px; }
.case5-section-label span,.case5-section-label p { font:700 10px/1.45 "Space Mono",monospace; margin:0; text-transform:uppercase; }
.case5-section-label span { color:var(--accent); }
.case5-opening-copy h2,
.case5-media h2,
.case5-real-stories h2,
.case5-work h2,
.case5-detail h2 {
  font:400 clamp(3.5rem,6.5vw,7.6rem)/.75 "Archivo Black",sans-serif;
  letter-spacing:-.078em;
  margin:0;
  text-transform:uppercase;
  text-wrap:balance;
}
.case5-opening-copy h2 strong,
.case5-media h2 strong,
.case5-real-stories h2 strong,
.case5-work h2 strong,
.case5-detail h2 strong { color:var(--accent); font-weight:inherit; }
.case5-opening-copy > p {
  font-size:clamp(1.25rem,1.75vw,1.75rem);
  line-height:1.52;
  margin:clamp(56px,8vw,110px) 0 0 auto;
  max-width:900px;
}

.case5-tension { background:#090909; color:#fff; display:grid; grid-template-columns:1fr 1fr; }
.case5-tension article { min-height:680px; padding:clamp(64px,8vw,130px) clamp(24px,5vw,86px); }
.case5-tension article + article { border-left:1px solid rgba(255,255,255,.28); }
.case5-tension article > span,
.case5-media header > span,
.case5-real-stories header > span,
.case5-work header > span,
.case5-impact header > span,
.case5-services > span,
.case5-faq > span {
  color:var(--accent);
  font:700 10px/1.45 "Space Mono",monospace;
  text-transform:uppercase;
}
.case5-tension h2 {
  color:var(--accent);
  font:400 clamp(3rem,5.1vw,6.2rem)/.78 "Archivo Black",sans-serif;
  letter-spacing:-.07em;
  margin:clamp(90px,14vh,170px) 0 34px;
  max-width:690px;
  text-transform:uppercase;
  text-wrap:balance;
}
.case5-tension p { color:rgba(255,255,255,.78); font-size:clamp(1.05rem,1.35vw,1.28rem); line-height:1.62; margin:0; max-width:680px; }

.case5-quote {
  background:var(--accent);
  color:#090909;
  display:grid;
  gap:clamp(34px,5vw,84px);
  grid-template-columns:minmax(140px,.34fr) minmax(0,1.5fr) auto;
  margin:0;
  padding:clamp(66px,8vw,130px) clamp(18px,4vw,72px);
}
.case5-quote > span { font:700 9px/1.45 "Space Mono",monospace; text-transform:uppercase; }
.case5-quote blockquote { font:400 clamp(2.7rem,5.7vw,6.8rem)/.82 "Archivo Black",sans-serif; letter-spacing:-.07em; margin:0; max-width:1250px; text-transform:uppercase; text-wrap:balance; }
.case5-quote > b { align-self:end; font:400 clamp(2.2rem,4vw,4rem) "Space Mono",monospace; }

.case5-media {
  background-color:#f3f3f0;
  background-image:radial-gradient(circle,rgba(9,9,9,.18) 1px,transparent 1px);
  background-size:22px 22px;
  padding:clamp(88px,10vw,160px) clamp(18px,4vw,72px) clamp(110px,12vw,190px);
}
.case5-media > header { align-items:end; display:grid; gap:clamp(30px,5vw,90px); grid-template-columns:.32fr 1.08fr .6fr; margin:auto; max-width:1600px; }
.case5-media > header > p { font-size:clamp(1rem,1.25vw,1.2rem); line-height:1.55; margin:0; max-width:470px; }
.case5-media-grid { display:grid; gap:clamp(10px,1.6vw,26px); grid-template-columns:repeat(12,minmax(0,1fr)); margin:clamp(70px,9vw,132px) auto 0; max-width:1600px; }
.case5-media-grid figure { background:#111; margin:0; overflow:hidden; position:relative; }
.case5-media-grid figure::after { background:linear-gradient(0deg,rgba(0,0,0,.62),transparent 35%); content:""; inset:0; pointer-events:none; position:absolute; }
.case5-media-grid img,.case5-media-grid video { height:100%; object-fit:cover; transition:filter .45s,transform .9s cubic-bezier(.16,1,.3,1); width:100%; }
.case5-media-grid figure:hover img,.case5-media-grid figure:hover video { transform:scale(1.025); }
.case5-media-grid figcaption { bottom:13px; color:#fff; font:700 9px "Space Mono",monospace; left:13px; position:absolute; text-transform:uppercase; z-index:2; }
.case5-media-reel { aspect-ratio:9/16; grid-column:1 / 5; grid-row:1 / 3; }
.case5-media-wide { aspect-ratio:16/9; grid-column:5 / 13; grid-row:1; }
.case5-media-square { aspect-ratio:1; grid-column:5 / 9; grid-row:2; }
.case5-media-tall { aspect-ratio:4/5; grid-column:9 / 13; grid-row:2 / 4; }
.case5-media-loop { aspect-ratio:9/13; grid-column:5 / 9; grid-row:3; }

.case5-real-stories { background:#fff; display:grid; gap:clamp(46px,8vw,140px); grid-template-columns:.72fr 1.28fr; padding:clamp(86px,10vw,160px) clamp(18px,4vw,72px); }
.case5-real-stories header { align-self:start; }
.case5-real-stories header > span { display:block; margin-bottom:clamp(58px,8vh,105px); }
.case5-real-stories > div { border-top:1px solid var(--black); }
.case5-real-stories article { border-bottom:1px solid var(--black); display:grid; gap:28px; grid-template-columns:145px 1fr; padding:26px 0 clamp(52px,7vw,90px); }
.case5-real-stories article > span { color:var(--accent); font:700 10px "Space Mono",monospace; }
.case5-real-stories article p { font-size:clamp(1.1rem,1.55vw,1.48rem); line-height:1.55; margin:0; max-width:760px; }

.case5-work { background:#090909; color:#fff; padding:clamp(86px,10vw,160px) clamp(18px,4vw,72px); }
.case5-work > header { align-items:end; display:grid; gap:clamp(40px,7vw,115px); grid-template-columns:.34fr 1.66fr; margin:auto; max-width:1600px; }
.case5-work > div { border-top:1px solid rgba(255,255,255,.35); display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:clamp(68px,9vw,125px) auto 0; max-width:1600px; }
.case5-work article { display:flex; flex-direction:column; min-height:390px; padding:24px clamp(18px,2.3vw,38px) 32px 0; }
.case5-work article + article { border-left:1px solid rgba(255,255,255,.35); padding-left:clamp(18px,2.3vw,38px); }
.case5-work article > span { color:var(--accent); font:700 10px "Space Mono",monospace; }
.case5-work h3 { font-size:clamp(1.45rem,2vw,2.2rem); letter-spacing:-.04em; line-height:1; margin:clamp(68px,8vw,110px) 0 25px; text-transform:uppercase; text-wrap:balance; }
.case5-work article p { color:rgba(255,255,255,.76); font-size:1rem; line-height:1.58; margin:auto 0 0; }

.case5-impact { background:var(--accent); color:#090909; display:grid; gap:clamp(48px,7vw,110px); grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr); padding:clamp(88px,10vw,165px) clamp(18px,4vw,72px); }
.case5-impact header h2 { font:400 clamp(3rem,5.7vw,6.8rem)/.78 "Archivo Black",sans-serif; letter-spacing:-.075em; margin:clamp(58px,8vh,100px) 0 0; max-width:900px; text-transform:uppercase; text-wrap:balance; }
.case5-impact header > span { color:#090909; }
.case5-impact-copy { align-self:end; }
.case5-impact-copy > p { font-size:clamp(1.14rem,1.5vw,1.45rem); line-height:1.58; margin:0; max-width:760px; }
.case5-impact-copy > a { align-items:center; border-bottom:1px solid #090909; display:flex; font:700 10px "Space Mono",monospace; justify-content:space-between; margin-top:44px; max-width:420px; padding-bottom:9px; text-transform:uppercase; }
.case5-signals { border-top:1px solid #090909; display:grid; grid-column:1 / 3; grid-template-columns:repeat(3,minmax(0,1fr)); }
.case5-signals article { display:flex; flex-direction:column; min-height:225px; padding:28px 24px 24px 0; }
.case5-signals article + article { border-left:1px solid #090909; padding-left:24px; }
.case5-signals strong { font:400 clamp(3.2rem,6.4vw,7.5rem)/.8 "Archivo Black",sans-serif; letter-spacing:-.08em; white-space:nowrap; }
.case5-signals span { font:700 9px/1.4 "Space Mono",monospace; margin-top:auto; max-width:250px; text-transform:uppercase; }

.case5-detail { background:#f3f3f0; display:grid; grid-template-columns:1fr 1fr; }
.case5-services,.case5-faq { padding:clamp(82px,9vw,150px) clamp(18px,4vw,72px); }
.case5-services { border-right:1px solid var(--black); }
.case5-services > span,.case5-faq > span { display:block; margin-bottom:clamp(58px,8vh,104px); }
.case5-services h2 { font-size:clamp(3rem,4.8vw,5.8rem); }
.case5-services ol { list-style:none; margin:clamp(64px,8vw,110px) 0 0; padding:0; }
.case5-services li { border-top:1px solid var(--black); font-size:clamp(1.05rem,1.45vw,1.35rem); padding:18px 0; text-transform:uppercase; }
.case5-services li:last-child { border-bottom:1px solid var(--black); }
.case5-services li span { color:var(--accent); display:inline-block; font:700 9px "Space Mono",monospace; width:42px; }
.case5-services > p { color:rgba(9,9,9,.65); font:400 9px/1.6 "Space Mono",monospace; margin:28px 0 0; max-width:620px; }
.case5-services > p sup { color:var(--accent); font-size:13px; }
.case5-faq { background:#090909; color:#fff; }
.case5-faq details { border-top:1px solid rgba(255,255,255,.34); }
.case5-faq details:last-child { border-bottom:1px solid rgba(255,255,255,.34); }
.case5-faq summary { align-items:center; cursor:pointer; display:flex; font-size:clamp(1.05rem,1.35vw,1.3rem); gap:24px; justify-content:space-between; line-height:1.28; list-style:none; padding:24px 0; }
.case5-faq summary::-webkit-details-marker { display:none; }
.case5-faq summary b { color:var(--accent); flex:0 0 auto; font:700 22px "Space Mono",monospace; transition:transform .25s; }
.case5-faq details[open] summary b { transform:rotate(45deg); }
.case5-faq details p { color:rgba(255,255,255,.74); font-size:1rem; line-height:1.62; margin:0; max-width:700px; padding:0 40px 28px 0; }

.case-page-v5 .case5-next { padding-left:clamp(18px,4vw,72px); padding-right:clamp(18px,4vw,72px); }
.case-page-v5 .case5-next > a span { hyphens:none; overflow-wrap:normal; text-wrap:balance; word-break:normal; }

@media (max-width:1100px) and (min-width:721px) {
  .case5-hero-copy { max-width:72vw; }
  .case5-hero h1 { font-size:clamp(3.6rem,8.2vw,6.8rem); }
  .case5-opening { grid-template-columns:.42fr 1.58fr; }
  .case5-media > header { grid-template-columns:.3fr 1.2fr; }
  .case5-media > header > p { grid-column:2; }
  .case5-work > div { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case5-work article:nth-child(3) { border-left:0; border-top:1px solid rgba(255,255,255,.35); }
  .case5-work article:nth-child(4) { border-top:1px solid rgba(255,255,255,.35); }
  .case5-signals strong { font-size:clamp(2.7rem,5.6vw,5rem); }
  .case5-detail { grid-template-columns:.9fr 1.1fr; }
}

@media (max-width:720px) {
  .case-page-v5 { padding-left:0; padding-top:64px; }
  .case5-hero { height:calc(100svh - 64px); min-height:650px; }
  .case5-hero-shade { background:linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.76) 58%,rgba(0,0,0,.22) 100%); }
  .case5-hero-video { object-position:center; }
  .case5-hero-copy { justify-content:flex-end; max-width:none; padding:30px 14px 34px; }
  .case5-hero-meta { font-size:8px; margin-bottom:27px; }
  .case5-hero-meta span:not(:last-child)::after { margin:0 7px; }
  .case5-hero h1 { font-size:clamp(2.75rem,14.8vw,5rem); line-height:.76; }
  .case5-hero-copy > p { font-size:clamp(1.02rem,4.8vw,1.28rem); line-height:1.36; margin-top:23px; }
  .case5-hero-copy > small { font-size:8px; margin-top:12px; }
  .case5-hero-copy > a { margin-top:28px; max-width:230px; }
  .case5-hero-stamp { display:none; }

  .case5-opening { display:flex; flex-direction:column; gap:54px; padding:72px 14px 82px; }
  .case5-section-label { max-width:220px; width:100%; }
  .case5-opening-copy h2,.case5-media h2,.case5-real-stories h2,.case5-work h2,.case5-detail h2 { font-size:clamp(2.75rem,12vw,4rem); }
  .case5-opening-copy > p { font-size:1.08rem; line-height:1.58; margin-top:50px; }

  .case5-tension { display:flex; flex-direction:column; }
  .case5-tension article { min-height:0; padding:68px 14px 74px; }
  .case5-tension article + article { border-left:0; border-top:1px solid rgba(255,255,255,.28); }
  .case5-tension h2 { font-size:clamp(2.7rem,12vw,4rem); margin:70px 0 28px; }
  .case5-tension p { font-size:1rem; }

  .case5-quote { display:flex; flex-direction:column; gap:40px; padding:66px 14px 72px; }
  .case5-quote blockquote { font-size:clamp(2.45rem,11.5vw,3.8rem); }
  .case5-quote > b { align-self:flex-end; }

  .case5-media { background-size:18px 18px; padding:74px 14px 86px; }
  .case5-media > header { display:flex; flex-direction:column; gap:35px; }
  .case5-media > header > p { font-size:1rem; }
  .case5-media-grid { display:flex; flex-direction:column; gap:10px; margin-top:58px; }
  .case5-media-reel { aspect-ratio:9/16; width:76%; }
  .case5-media-wide { aspect-ratio:16/10; width:100%; }
  .case5-media-square { align-self:flex-end; aspect-ratio:1; width:78%; }
  .case5-media-tall { aspect-ratio:4/5; width:72%; }
  .case5-media-loop { align-self:flex-end; aspect-ratio:9/13; width:70%; }

  .case5-real-stories { display:flex; flex-direction:column; gap:54px; padding:72px 14px 80px; }
  .case5-real-stories header > span { margin-bottom:42px; }
  .case5-real-stories article { display:block; padding:22px 0 40px; }
  .case5-real-stories article p { font-size:1.05rem; margin-top:25px; }

  .case5-work { padding:74px 14px 82px; }
  .case5-work > header { display:flex; flex-direction:column; gap:40px; }
  .case5-work > div { display:block; margin-top:58px; }
  .case5-work article { min-height:0; padding:22px 0 34px; }
  .case5-work article + article { border-left:0; border-top:1px solid rgba(255,255,255,.35); padding:30px 0 34px; }
  .case5-work h3 { font-size:clamp(1.5rem,7vw,2.05rem); margin:42px 0 22px; }
  .case5-work article p { font-size:1rem; margin:0; }

  .case5-impact { display:flex; flex-direction:column; gap:48px; padding:76px 14px 84px; }
  .case5-impact header h2 { font-size:clamp(2.65rem,11.7vw,3.9rem); margin-top:44px; }
  .case5-impact-copy > p { font-size:1.06rem; }
  .case5-signals { display:block; width:100%; }
  .case5-signals article { min-height:132px; padding:18px 0 15px; }
  .case5-signals article + article { border-left:0; border-top:1px solid #090909; padding-left:0; }
  .case5-signals strong { font-size:clamp(3rem,15vw,4.8rem); }

  .case5-detail { display:flex; flex-direction:column; }
  .case5-services,.case5-faq { padding:72px 14px 80px; }
  .case5-services { border-bottom:1px solid var(--black); border-right:0; }
  .case5-services > span,.case5-faq > span { margin-bottom:48px; }
  .case5-services ol { margin-top:58px; }
  .case5-services li { font-size:1rem; }
  .case5-faq summary { font-size:1rem; padding:21px 0; }
  .case5-faq details p { font-size:.98rem; padding-right:20px; }

  .case-page-v5 .case5-next { padding:70px 14px 26px; }
  .case-page-v5 .case5-next > a { font-size:clamp(2.55rem,12.5vw,4.2rem); }
}

@media (max-width:380px) {
  .case5-hero h1 { font-size:clamp(2.45rem,14vw,3.35rem); }
  .case5-hero-copy > p { font-size:1rem; }
  .case5-opening-copy h2,.case5-media h2,.case5-real-stories h2,.case5-work h2,.case5-detail h2 { font-size:clamp(2.5rem,11.6vw,3.25rem); }
  .case5-quote blockquote { font-size:clamp(2.2rem,10.8vw,3rem); }
  .case5-tension h2 { font-size:clamp(2.4rem,11vw,3.2rem); }
  .case5-impact header h2 { font-size:clamp(2.4rem,10.8vw,3.2rem); }
}

@media (max-height:620px) and (min-width:721px) {
  .case5-hero { min-height:620px; }
  .case5-hero-copy { padding-bottom:30px; padding-top:30px; }
  .case5-hero-meta { margin-bottom:28px; }
  .case5-hero h1 { font-size:clamp(3.3rem,min(7vw,13vh),6rem); }
  .case5-hero-copy > p { font-size:clamp(1rem,1.35vw,1.25rem); margin-top:22px; }
  .case5-hero-copy > a { margin-top:28px; }
}

/* Project pages v6: a lighter editorial rhythm with clear attribution. */
.case-page-v6 {
  background:#f3f3f0;
  color:#090909;
  overflow:clip;
  padding-left:96px;
}
.case-page-v6 * { box-sizing:border-box; min-width:0; }
.case-page-v6 h1,.case-page-v6 h2,.case-page-v6 h3,.case-page-v6 blockquote {
  hyphens:none;
  overflow-wrap:normal;
  word-break:normal;
}
.case6-content { background:#f3f3f0; }

.case6-hero {
  background:#090909;
  color:#fff;
  height:100svh;
  min-height:680px;
  overflow:hidden;
  position:relative;
}
.case6-hero-video {
  height:100%;
  inset:0;
  object-fit:cover;
  object-position:center;
  position:absolute;
  width:100%;
}
.case6-hero-shade {
  background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.85) 34%,rgba(0,0,0,.38) 69%,rgba(0,0,0,.14) 100%),linear-gradient(0deg,rgba(0,0,0,.68),transparent 48%);
  inset:0;
  position:absolute;
}
.case6-hero-grid {
  background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);
  background-size:25% 100%,25% 100%;
  inset:0;
  opacity:.25;
  position:absolute;
}
.case6-hero-copy {
  display:flex;
  flex-direction:column;
  height:100%;
  justify-content:center;
  max-width:min(70vw,1120px);
  padding:clamp(42px,5vw,86px);
  position:relative;
  z-index:2;
}
.case6-hero-meta {
  color:rgba(255,255,255,.72);
  display:flex;
  flex-wrap:wrap;
  font:700 9px/1.45 "Space Mono",monospace;
  gap:9px 0;
  margin:0 0 clamp(36px,6vh,72px);
  text-transform:uppercase;
}
.case6-hero-meta span { align-items:center; display:flex; }
.case6-hero-meta span:not(:last-child)::after { color:var(--accent); content:"/"; margin:0 13px; }
.case6-hero h1 {
  font:400 clamp(4.2rem,8.6vw,10rem)/.76 "Archivo Black",sans-serif;
  letter-spacing:-.082em;
  margin:0;
  max-width:1100px;
  text-transform:uppercase;
  text-wrap:balance;
}
.case-page-v6[data-case="barcelona-sports-hub"] .case6-hero h1 { font-size:clamp(3.65rem,7.35vw,8.5rem); }
.case-page-v6[data-case="ajuntament-de-barcelona"] .case6-hero h1 { font-size:clamp(3.45rem,6.85vw,7.9rem); }
.case6-hero-line {
  color:rgba(255,255,255,.9);
  font-size:clamp(1.18rem,1.65vw,1.62rem);
  line-height:1.42;
  margin:clamp(28px,4vh,44px) 0 0;
  max-width:720px;
  text-wrap:balance;
}
.case6-hero-copy > small {
  color:rgba(255,255,255,.58);
  font:400 9px/1.55 "Space Mono",monospace;
  margin-top:16px;
  max-width:610px;
}
.case6-hero-copy > small sup { color:var(--accent); font-size:13px; margin-right:4px; }
.case6-hero-copy > a {
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.58);
  display:flex;
  font:700 10px "Space Mono",monospace;
  justify-content:space-between;
  margin-top:clamp(34px,5vh,60px);
  max-width:265px;
  padding-bottom:10px;
  text-transform:uppercase;
}
.case6-hero-copy > a b { color:var(--accent); }
.case6-hero-index {
  align-items:flex-end;
  bottom:22px;
  display:flex;
  flex-direction:column;
  position:absolute;
  right:24px;
  z-index:2;
}
.case6-hero-index span { font:700 8px "Space Mono",monospace; text-transform:uppercase; }
.case6-hero-index strong { color:var(--accent); font:400 clamp(3.3rem,5vw,5.8rem)/.8 "Archivo Black",sans-serif; letter-spacing:-.07em; margin-top:7px; }

.case6-intro {
  display:grid;
  gap:clamp(50px,8vw,140px);
  grid-template-columns:minmax(410px,1.08fr) minmax(0,.92fr);
  margin:auto;
  max-width:1760px;
  padding:clamp(92px,10vw,165px) clamp(18px,4vw,72px);
}
.case6-section-head > p,.case6-media-head > p,.case6-stories header > p {
  color:var(--accent);
  font:700 10px/1.45 "Space Mono",monospace;
  margin:0 0 clamp(44px,7vh,82px);
  text-transform:uppercase;
}
.case6-section-head h2,.case6-media-head h2,.case6-stories h2,.case6-impact h2,.case6-closing h2 {
  font:400 clamp(3.25rem,5.75vw,6.8rem)/.79 "Archivo Black",sans-serif;
  letter-spacing:-.075em;
  margin:0;
  text-transform:uppercase;
  text-wrap:balance;
}
.case6-lead {
  font-size:clamp(1.28rem,1.75vw,1.75rem);
  line-height:1.5;
  margin:0;
  max-width:900px;
}
.case6-two-notes {
  border-top:1px solid var(--black);
  display:grid;
  grid-template-columns:1fr 1fr;
  margin-top:clamp(58px,8vw,110px);
}
.case6-two-notes article { padding:22px clamp(20px,3vw,48px) 0 0; }
.case6-two-notes article + article { border-left:1px solid var(--black); padding-left:clamp(20px,3vw,48px); }
.case6-two-notes span,.case6-work-list article > span,.case6-impact-copy > span,.case6-role > span,.case6-faq > span {
  color:var(--accent);
  font:700 9px/1.4 "Space Mono",monospace;
  text-transform:uppercase;
}