:root{
  --ink:#080B12;
  --ink-2:#0D1220;
  --cream:#F8F5EC;
  --cream-2:#F1ECDD;
  --blue:#2270C8;
  --blue-deep:#153E7A;
  --leaf:#61B23C;
  --gold:#F5B70A;
  --line:rgba(248,245,236,.14);
  --line-dark:rgba(8,11,18,.12);
  --max:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Archivo',system-ui,sans-serif;background:var(--ink);color:var(--cream);line-height:1.6;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--gold);color:var(--ink)}

/* ---------- typography ---------- */
h1,h2,h3,.display{font-family:'Bricolage Grotesque','Archivo',system-ui,sans-serif;font-weight:800;line-height:1.08;letter-spacing:.015em;text-transform:uppercase}
h1{font-weight:800}
em,i{font-style:normal} /* Accents use color instead of italics */
.eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.6rem}
.eyebrow::before{content:"";width:26px;height:1px;background:currentColor;opacity:.6}
.on-dark .eyebrow{color:var(--gold)}
.on-light .eyebrow{color:var(--blue)}

/* ---------- nav ---------- */
nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .35s,box-shadow .35s,padding .35s;padding:18px 0}
nav.scrolled{background:rgba(8,11,18,.88);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);padding:10px 0}
.nav-inner{max-width:var(--max);margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:44px;width:44px;object-fit:contain;border-radius:10px;background:#fff;padding:3px}
.brand-name{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;font-size:1.08rem;letter-spacing:.03em;text-transform:uppercase}
.brand-name em{font-style:normal;color:var(--gold);font-size:.72rem;font-family:'Archivo';font-weight:600;letter-spacing:.24em;display:block;line-height:1;margin-top:2px;text-transform:uppercase}
.nav-links{display:flex;gap:30px;align-items:center;font-size:.9rem;font-weight:500}
.nav-links a{opacity:.82;transition:opacity .2s,color .2s;position:relative}
.nav-links a:hover{opacity:1;color:var(--gold)}
.nav-cta{border:1px solid var(--gold);color:var(--gold);padding:9px 20px;border-radius:100px;transition:background .25s,color .25s}
.nav-cta:hover{background:var(--gold);color:var(--ink)!important}
.menu-btn{display:none;background:none;border:1px solid var(--line);color:var(--cream);border-radius:8px;padding:8px 12px;font-size:1rem;cursor:pointer}

/* ---------- hero ---------- */
.hero{min-height:100svh;position:relative;display:flex;align-items:center;overflow:hidden;
  background:radial-gradient(1200px 700px at 78% 20%,rgba(34,112,200,.28),transparent 60%),
             radial-gradient(900px 600px at 12% 90%,rgba(97,178,60,.14),transparent 60%),var(--ink)}
.hero-inner{max-width:var(--max);margin:0 auto;padding:140px 24px 100px;position:relative;z-index:3}
.hero h1{font-size:clamp(2.2rem,5.6vw,4.6rem);max-width:15ch}
.hero h1 .accent{color:var(--gold)}
.hero p.lede{margin-top:28px;max-width:52ch;font-size:1.12rem;color:rgba(248,245,236,.78)}
.hero-ctas{margin-top:42px;display:flex;gap:16px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:100px;font-weight:600;font-size:.95rem;transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.btn-gold{background:var(--gold);color:var(--ink)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(245,183,10,.32)}
.btn-ghost{border:1px solid var(--line);color:var(--cream)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.hero-meta{margin-top:70px;display:flex;gap:44px;flex-wrap:wrap}
.hero-meta div strong{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;font-size:1.7rem;display:block;color:var(--cream)}
.hero-meta div span{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,245,236,.55)}

/* signature: aperture rings */
.lens{position:absolute;top:50%;right:-8vw;transform:translateY(-50%);width:min(60vw,760px);aspect-ratio:1;z-index:1;pointer-events:none;opacity:.9}
.ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(248,245,236,.1)}
.ring.r2{inset:11%;border-color:rgba(34,112,200,.45);border-width:2px}
.ring.r3{inset:23%;border-color:rgba(248,245,236,.08)}
.ring.r4{inset:34%;border-color:rgba(245,183,10,.5);border-style:dashed;animation:spin 60s linear infinite}
.ring.r5{inset:46%;border-color:rgba(97,178,60,.5);border-width:2px}
.ring.core{inset:58%;background:radial-gradient(circle at 35% 30%,rgba(34,112,200,.9),rgba(8,11,18,.95) 70%);border:1px solid rgba(248,245,236,.18);box-shadow:0 0 90px rgba(34,112,200,.4)}
.ring .tick{position:absolute;top:-4px;left:50%;width:7px;height:7px;border-radius:50%;background:var(--gold)}
@keyframes spin{to{transform:rotate(360deg)}}
.scroll-hint{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:3;font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(248,245,236,.45);display:flex;flex-direction:column;align-items:center;gap:10px}
.scroll-hint::after{content:"";width:1px;height:44px;background:linear-gradient(var(--gold),transparent);animation:drop 2s ease-in-out infinite}
@keyframes drop{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ---------- sections ---------- */
section{padding:110px 0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.on-light{background:var(--cream);color:var(--ink)}
.section-head{max-width:760px;margin-bottom:64px}
.section-head h2{font-size:clamp(1.7rem,3.6vw,2.8rem);margin-top:18px}
.section-head p{margin-top:18px;font-size:1.08rem;opacity:.78}

/* point of view */
.pov-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}
.pov-grid blockquote{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;font-size:clamp(1.25rem,2.2vw,1.8rem);line-height:1.3;text-transform:uppercase;letter-spacing:.015em}
.pov-grid blockquote strong{color:var(--blue);font-weight:800}
.belief-list{display:grid;gap:0;border-top:1px solid var(--line-dark)}
.belief-list li{list-style:none;display:flex;gap:18px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--line-dark);font-size:1.15rem;font-weight:500}
.belief-list li::before{content:"";width:9px;height:9px;border-radius:50%;flex-shrink:0;transform:translateY(-1px)}
.belief-list li:nth-child(1)::before{background:var(--blue)}
.belief-list li:nth-child(2)::before{background:var(--leaf)}
.belief-list li:nth-child(3)::before{background:var(--gold)}
.belief-list li:nth-child(4)::before{background:var(--blue-deep)}

/* parallax band */
.band{position:relative;overflow:hidden;padding:150px 0;background:var(--ink)}
.band .bg{position:absolute;inset:-22% 0;background:
  radial-gradient(700px 380px at 20% 40%,rgba(97,178,60,.22),transparent 65%),
  radial-gradient(700px 380px at 85% 60%,rgba(245,183,10,.14),transparent 65%),
  linear-gradient(160deg,#0A1120,#080B12 60%);will-change:transform}
.band .wrap{position:relative;z-index:2;text-align:center}
.band h2{font-size:clamp(1.8rem,4.2vw,3.3rem);max-width:22ch;margin:0 auto}
.band h2 em{color:var(--leaf)}
.band h2 .gold{color:var(--gold)}

/* services */
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.svc{background:var(--ink);padding:36px 28px 44px;transition:background .3s;position:relative;overflow:hidden}
.svc:hover{background:var(--ink-2)}
.svc::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--gold);transition:width .35s}
.svc:hover::after{width:100%}
.svc .num{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;font-size:.95rem;color:var(--gold);opacity:.9}
.svc h3{font-size:1.08rem;margin:16px 0 12px}
.svc p{font-size:.92rem;color:rgba(248,245,236,.66)}

/* framework */
.frame-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;counter-reset:step}
.step{position:relative;padding-top:26px;border-top:2px solid var(--line-dark)}
.step::before{counter-increment:step;content:"0" counter(step);position:absolute;top:-17px;left:0;background:var(--cream);padding-right:14px;font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;font-size:1.3rem;color:var(--blue)}
.step h3{font-size:1.05rem;margin-bottom:10px}
.step p{font-size:.94rem;opacity:.75}

/* clients marquee */
.clients{padding:90px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.marquee{overflow:hidden;position:relative;margin-top:46px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:70px;width:max-content;animation:scrollx 34s linear infinite;align-items:center}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track span{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;font-size:1.4rem;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;color:rgba(248,245,236,.62);display:flex;align-items:center;gap:70px}
.marquee-track span::after{content:"✦";font-size:.85rem;color:var(--gold)}
@keyframes scrollx{to{transform:translateX(-50%)}}

/* case study */
.case-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:start}
.case-card{background:var(--ink);color:var(--cream);border-radius:22px;padding:44px 40px;position:sticky;top:110px}
.case-card .tag{display:inline-block;background:rgba(245,183,10,.15);color:var(--gold);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;padding:7px 15px;border-radius:100px}
.case-card h3{font-size:1.55rem;margin:20px 0 14px}
.case-card p{color:rgba(248,245,236,.72);font-size:.98rem}
.outcomes{margin-top:28px;display:grid;gap:12px}
.outcomes div{display:flex;gap:12px;align-items:flex-start;font-size:.93rem}
.outcomes div::before{content:"→";color:var(--leaf);font-weight:700;flex-shrink:0}
.deliver-list{display:grid;gap:0}
.deliver-list li{list-style:none;padding:22px 0;border-bottom:1px solid var(--line-dark);display:grid;grid-template-columns:170px 1fr;gap:20px;align-items:start}
.deliver-list li b{font-family:'Bricolage Grotesque','Archivo',sans-serif;color:var(--blue);font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;padding-top:2px}
.deliver-list li p{font-size:.98rem;opacity:.8}

/* ideal clients */
.chips{display:flex;flex-wrap:wrap;gap:14px;margin-top:44px}
.chip{border:1px solid var(--line);border-radius:100px;padding:13px 26px;font-size:.95rem;font-weight:500;transition:border-color .25s,color .25s,transform .25s}
.chip:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}

/* contact */
.contact{background:
  radial-gradient(800px 500px at 85% 15%,rgba(34,112,200,.25),transparent 60%),var(--ink)}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.contact h2{font-size:clamp(1.9rem,4.2vw,3.2rem)}
.contact h2 em{color:var(--gold)}
.contact .list{margin-top:30px;display:grid;gap:8px;font-size:1.02rem;color:rgba(248,245,236,.78)}
.contact .list span{color:var(--leaf);margin-right:10px}
.contact-card{background:var(--cream);color:var(--ink);border-radius:22px;padding:44px 40px}
.contact-card h3{font-size:1.3rem;margin-bottom:8px}
.contact-card p{opacity:.75;font-size:.95rem;margin-bottom:26px}
.contact-line{display:flex;gap:14px;align-items:center;padding:15px 0;border-top:1px solid var(--line-dark);font-weight:500}
.contact-line .ico{width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
.contact-line:nth-child(odd) .ico{background:var(--leaf)}

/* footer */
footer{border-top:1px solid var(--line);background:linear-gradient(180deg,var(--ink),#060810);padding:80px 0 0;font-size:.9rem;color:rgba(248,245,236,.62)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:44px;padding-bottom:64px}
.f-brand .foot-brand{display:flex;align-items:center;gap:12px;color:var(--cream);margin-bottom:18px}
.f-brand .foot-brand img{height:40px;width:40px;border-radius:9px;background:#fff;padding:3px}
.f-brand .foot-brand span{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:1.05rem}
.f-brand p{max-width:34ch;font-size:.9rem;line-height:1.65}
.f-brand .f-tag{margin-top:16px;color:var(--gold);font-weight:600;font-size:.85rem}
.f-col h4{font-family:'Bricolage Grotesque','Archivo',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--gold);margin-bottom:20px}
.f-col ul{list-style:none;display:grid;gap:12px}
.f-col a{color:rgba(248,245,236,.68);transition:color .2s,padding-left .2s;position:relative}
.f-col a:hover{color:var(--gold);padding-left:6px}
.f-contact li{display:flex;gap:10px;align-items:baseline}
.f-contact li span{color:var(--leaf)}
.socials{display:flex;gap:12px;margin-top:22px}
.socials a{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(248,245,236,.75);transition:color .25s,border-color .25s,transform .25s}
.socials a:hover{color:var(--gold);border-color:var(--gold);transform:translateY(-3px)}
.socials svg{width:17px;height:17px;fill:currentColor}
.footer-bottom{border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:.78rem;color:rgba(248,245,236,.45)}
.footer-bottom a{color:rgba(248,245,236,.6);transition:color .2s}
.footer-bottom a:hover{color:var(--gold)}
@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr;gap:36px}.footer-bottom{justify-content:center;text-align:center}}

/* reveal animations */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.65,.3,1),transform .8s cubic-bezier(.2,.65,.3,1)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}

/* responsive */
@media(max-width:980px){
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .frame-grid{grid-template-columns:repeat(2,1fr)}
  .pov-grid,.case-grid,.contact-grid{grid-template-columns:1fr;gap:46px}
  .case-card{position:static}
  .lens{opacity:.35;right:-30vw}
}
@media(max-width:720px){
  .deliver-list li{grid-template-columns:1fr;gap:6px}
  .nav-links{position:fixed;top:0;left:0;width:100vw;height:100dvh;min-height:100vh;z-index:1;background:rgba(8,11,18,.98);flex-direction:column;justify-content:flex-start;padding-top:130px;gap:30px;font-size:1.2rem;transform:translateX(100%);transition:transform .35s,visibility .35s;visibility:hidden}
  .nav-links.open{transform:none;visibility:visible}
  .nav-inner{position:relative;z-index:2}
  nav.menu-open,nav.menu-open.scrolled{background:rgba(8,11,18,.98);backdrop-filter:none;-webkit-backdrop-filter:none}
  body.no-scroll{overflow:hidden}
  .menu-btn{display:block}
  .services-grid{grid-template-columns:1fr}
  .frame-grid{grid-template-columns:1fr}
  section{padding:80px 0}
  .hero-meta{gap:26px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}

/* ---------- photos & gallery ---------- */
.photo{width:100%;border-radius:18px;object-fit:cover;display:block;box-shadow:0 18px 44px rgba(8,11,18,.18)}
.gallery{padding:0 0 110px;background:var(--ink)}
.gallery-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px}
.gallery-grid img{width:100%;height:320px;object-fit:cover;border-radius:18px;display:block}
.case-photo{width:calc(100% + 80px);margin:-44px -40px 30px;border-radius:22px 22px 0 0;height:240px;object-fit:cover;display:block}
@media(max-width:980px){
  .gallery-grid{grid-template-columns:1fr 1fr}
  .gallery-grid img:first-child{grid-column:1/-1}
}
@media(max-width:720px){
  .gallery{padding:0 0 80px}
  .gallery-grid{grid-template-columns:1fr}
  .gallery-grid img{height:240px}
  .case-photo{width:calc(100% + 56px);margin:-32px -28px 24px;height:190px}
}

/* ---------- portfolio page ---------- */
.page-hero{padding:180px 0 90px;background:
  radial-gradient(900px 520px at 80% 0%,rgba(34,112,200,.28),transparent 60%),
  radial-gradient(700px 420px at 8% 100%,rgba(97,178,60,.12),transparent 60%),var(--ink)}
.page-hero h1{font-size:clamp(2.2rem,5.4vw,4rem);max-width:20ch;margin-top:24px}
.page-hero p{margin-top:22px;max-width:60ch;color:rgba(248,245,236,.75);font-size:1.05rem}
.pf-section{padding:80px 0;border-top:1px solid var(--line)}
.pf-section .section-head{margin-bottom:44px}
.pf-section .section-head h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pf-card{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:12px;transition:transform .25s,border-color .25s,box-shadow .25s}
.pf-card:hover{transform:translateY(-5px);border-color:rgba(245,183,10,.6);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.pf-thumb{width:calc(100% + 52px);margin:-26px -26px 6px;border-radius:18px 18px 0 0;aspect-ratio:16/9;object-fit:cover;display:block}
.pf-tag{font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.pf-card h3{font-size:1rem;line-height:1.35;letter-spacing:.02em}
.pf-card h3 a{transition:color .2s}
.pf-card h3 a:hover{color:var(--gold)}
.pf-card p{font-size:.88rem;color:rgba(248,245,236,.68)}
.pf-card .pf-link{margin-top:auto;padding-top:10px;font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--leaf);display:inline-flex;gap:8px;align-items:center}
.pf-card .pf-link::after{content:"→";transition:transform .2s}
.pf-card:hover .pf-link::after{transform:translateX(4px)}
@media(max-width:980px){.pf-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.pf-grid{grid-template-columns:1fr}.page-hero{padding:150px 0 70px}}

/* ---------- documentaries page ---------- */
.doc-featured{margin-bottom:70px}
.yt{position:relative;border-radius:20px;overflow:hidden;background:#000;cursor:pointer;border:1px solid var(--line)}
.yt.wide{aspect-ratio:16/9}
.yt.tall{aspect-ratio:9/16;max-width:380px}
.yt img.yt-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s,opacity .3s}
.yt:hover img.yt-thumb{transform:scale(1.04)}
.yt .yt-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(8,11,18,0) 40%,rgba(8,11,18,.65));transition:background .3s}
.yt .yt-play::before{content:"";width:78px;height:78px;border-radius:50%;background:var(--gold);display:block;position:absolute;transition:transform .25s,box-shadow .25s}
.yt .yt-play::after{content:"";border-style:solid;border-width:14px 0 14px 24px;border-color:transparent transparent transparent var(--ink);position:absolute;margin-left:6px}
.yt:hover .yt-play::before{transform:scale(1.1);box-shadow:0 0 0 14px rgba(245,183,10,.22)}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.doc-meta{margin-top:22px}
.doc-meta h3{font-size:1.25rem}
.doc-meta p{margin-top:8px;font-size:.95rem;color:rgba(248,245,236,.68);max-width:65ch}
.doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}
.doc-grid .doc-meta h3{font-size:1.05rem}
@media(max-width:980px){.doc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.doc-grid{grid-template-columns:1fr}.yt.tall{max-width:100%;aspect-ratio:9/14}}

/* ---------- team page ---------- */
.team-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;margin-bottom:90px}
.team-feature img{width:100%;max-width:430px;border-radius:20px;display:block;border:1px solid var(--line)}
.team-role{font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:12px}
.team-feature h2{font-size:clamp(1.7rem,3.4vw,2.6rem)}
.team-feature p{margin-top:18px;color:rgba(248,245,236,.75);font-size:1.02rem;max-width:56ch}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.team-card{background:var(--ink-2);border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.team-card:hover{transform:translateY(-6px);border-color:rgba(245,183,10,.55);box-shadow:0 20px 44px rgba(0,0,0,.4)}
.team-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:saturate(1);transition:transform .5s}
.team-card:hover img{transform:scale(1.03)}
.team-card .tc-body{padding:24px 24px 28px}
.team-card h3{font-size:1.05rem;letter-spacing:.03em}
.team-card .team-role{margin:8px 0 12px;font-size:.66rem}
.team-card p{font-size:.88rem;color:rgba(248,245,236,.68)}
@media(max-width:980px){.team-grid{grid-template-columns:1fr 1fr}.team-feature{grid-template-columns:1fr;gap:34px}}
@media(max-width:720px){.team-grid{grid-template-columns:1fr}}
