:root {
  color-scheme: light;
  --ink:#111111;
  --paper:#f7f7f5;
  --muted:#53534f;
  --grey:#929292;
  --gold:#f0bf03;
  --line:#d3d3cd;
  --gutter:clamp(24px,5.55vw,88px);
  --header:74px;
  font-family:Inter,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;background:var(--paper);color:var(--ink);overflow-wrap:break-word}
img {display:block;width:100%;height:100%;object-fit:cover}
h1,h2,h3,p,figure,ul {margin:0}
h1,h2,h3 {letter-spacing:-.065em;line-height:.98}
a {color:inherit;text-decoration:none}
button {font:inherit;color:inherit}
:focus-visible {outline:2px solid currentColor;outline-offset:5px}
section[id] {scroll-margin-top:var(--header)}
.shell {width:min(100% - var(--gutter) * 2, 1440px);margin-inline:auto}
.eyebrow {font-size:.69rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.skip {position:fixed;left:1rem;top:1rem;z-index:10;background:var(--paper);color:var(--ink);padding:12px;transform:translateY(-150%)}
.skip:focus {transform:none}
.header {position:sticky;top:0;z-index:5;background:var(--ink);color:var(--paper)}
.nav-shell {width:min(100% - var(--gutter) * 2,1440px);margin:auto;height:var(--header);display:flex;align-items:center;justify-content:space-between}
.brand {display:inline-flex;align-items:center;gap:10px}
.brand b {font-size:2.05rem;letter-spacing:-.105em;line-height:1;font-weight:900}
.brand span {border-left:1px solid #6d6d6a;padding-left:10px;font-size:.53rem;line-height:1.2;letter-spacing:.12em;font-weight:700}
nav {display:flex;align-items:center;gap:clamp(22px,3vw,52px);font-size:.83rem}
nav a:hover,footer a:hover {text-decoration:underline;text-underline-offset:5px}
.nav-contact {border:1px solid #70706e;padding:10px 15px}
.nav-contact span,.text-link span {margin-left:.5em}
.menu {display:none}
.hero {position:relative;isolation:isolate;background:#232523;color:var(--paper);min-height:calc(100svh - var(--header));display:grid;align-content:end}
.hero-media,.hero::after {position:absolute;inset:0;z-index:-1}
.hero-media img {object-position:center 54%}
.hero::after {content:"";background:rgba(0,0,0,.36)}
.hero-inner {padding-block:clamp(120px,16vh,250px) clamp(40px,7vh,95px)}
.hero h1 {font-size:clamp(68px,14.4vw,226px);line-height:.78;font-weight:900;letter-spacing:-.083em;margin-left:-.065em}
.hero-inner p {font-size:clamp(1rem,1.7vw,1.5rem);line-height:1.35;max-width:34ch;margin-top:clamp(28px,4vw,50px)}
.hero-foot {display:flex;justify-content:space-between;align-items:center;padding:0 0 22px}
.hero-foot a {display:grid;place-items:center;width:43px;height:43px;border:1px solid #b9b9b5;border-radius:50%;font-size:1.15rem}
.hero-foot a:hover {background:var(--paper);color:var(--ink)}
.hero-foot small,.photo figcaption {font-size:.64rem;letter-spacing:.05em}
.philosophy,.documentary {padding-block:clamp(68px,10vw,158px)}
.editorial-row {display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,8vw,140px)}
.editorial-row + .editorial-row {margin-top:clamp(58px,9vw,140px)}
.reverse .photo {order:2}
.photo img {height:auto;aspect-ratio:1.46;filter:grayscale(1);background:#d2d2ca}
.photo figcaption {padding-top:8px;color:var(--muted)}
.editorial-copy h2 {font-size:clamp(40px,5vw,82px)}
.editorial-copy p,.section-intro>p,.project-copy p,.contact .shell>p:not(.eyebrow) {font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.58;color:var(--muted)}
.editorial-copy p {margin-top:22px;max-width:47ch}
.expertise {background:#eaeae5;padding-block:clamp(64px,8vw,120px)}
.section-intro {display:grid;grid-template-columns:1.45fr 1fr;align-items:end;gap:28px;margin-bottom:clamp(28px,5vw,70px)}
.section-intro h2,.contact h2 {font-size:clamp(52px,9.1vw,142px);margin-top:18px}
.section-intro>p {max-width:36ch;padding-bottom:5px}
.capabilities {display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #b5b5ae}
.capabilities article {padding:25px clamp(14px,2.2vw,34px) 15px;border-right:1px solid #b5b5ae}
.capabilities article:first-child {padding-left:0}
.capabilities article:last-child {border-right:0;padding-right:0}
.capabilities h3 {font-size:clamp(1.2rem,2vw,2rem);line-height:1.06;letter-spacing:-.047em;max-width:15ch}
.capabilities p,.experience-heading p:not(.eyebrow) {margin-top:14px;font-size:.96rem;line-height:1.55;color:var(--muted)}
.experience {padding-block:clamp(54px,7vw,104px)}
.experience-heading {display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:30px}
.experience-heading h2 {font-size:clamp(34px,5.1vw,78px);margin-top:13px}
.carousel-toggle {background:none;border:1px solid var(--line);padding:10px 12px;font-size:.75rem;min-height:44px}
.carousel {overflow-x:auto;border-block:1px solid var(--line)}
.carousel.has-motion {overflow:hidden}
.carousel-track {display:flex;width:max-content}
.carousel-group {display:flex;list-style:none;padding:0}
.carousel-group[aria-hidden] {display:none}
.has-motion .carousel-group[aria-hidden] {display:flex}
.has-motion .carousel-track {animation:marquee 33s linear infinite}
.carousel:hover .carousel-track,.carousel:focus-within .carousel-track,.carousel.paused .carousel-track {animation-play-state:paused}
.carousel li {width:clamp(170px,19vw,290px);min-height:113px;display:grid;align-content:center;text-align:center;padding:16px;font-weight:700}
.carousel li small {display:block;color:var(--muted);font-size:.64rem;font-weight:400;margin-top:6px}
@keyframes marquee {to {transform:translateX(-50%)}}
.tigers {background:var(--ink);color:var(--paper)}
.tigers-banner {position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #43402e}
.tigers-masthead {min-height:clamp(390px,52vw,780px);padding-block:clamp(52px,8vw,128px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.tigers .eyebrow,.tagline,.tigers .text-link {color:var(--gold)}
.tigers h2 {font-size:clamp(73px,15vw,222px);line-height:.79;letter-spacing:-.08em;margin:25px 0 20px;color:var(--gold)}
.tagline {font-size:clamp(.86rem,1.65vw,1.35rem);font-weight:750;letter-spacing:.14em}
.pitch-lines {position:absolute;z-index:-1;inset:0 0 0 49%;transform:skewX(-15deg) scale(1.12);border:1px solid #615329;display:grid;place-items:center;background:#17160f}
.pitch-lines::before {content:"";position:absolute;width:1px;height:100%;background:#615329}
.pitch-lines i {width:47%;aspect-ratio:1;border-radius:50%;border:1px solid #615329}
.tigers-placeholder,.doc-placeholder span {font-size:.71rem;letter-spacing:.06em;padding:10px 13px;background:var(--ink);color:#dddcd4;border:1px solid #777364}
.tigers-detail {padding-block:clamp(54px,7vw,110px)}
.project-copy {display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,9vw,150px)}
.project-copy h3 {font-size:clamp(36px,5.3vw,80px);max-width:14ch}
.project-copy p+p {margin-top:16px}
.tigers .project-copy p {color:#d1d0cb}
.project-copy p.closing {color:inherit;font-weight:700;margin-top:24px}
.text-link {display:inline-flex;align-items:center;border-bottom:1px solid currentColor;min-height:44px;margin-top:16px;font-weight:700}
.text-link:hover {border-bottom-width:2px}
.features {display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin-top:clamp(36px,6vw,92px);border-top:1px solid #50482b}
.features li {padding:17px 10px 0 0;color:var(--gold);font-size:clamp(1rem,2.15vw,2rem);font-weight:700;letter-spacing:-.04em}
.documentary .section-intro {display:block}
.documentary h2 {font-size:clamp(49px,8.6vw,130px);line-height:.89;letter-spacing:-.075em}
.doc-placeholder {aspect-ratio:2.45;min-height:210px;background:#282a27;display:grid;place-items:center;border:1px solid #4f514b;margin-bottom:clamp(33px,6vw,90px)}
.contact {background:#eaeae5;padding-block:clamp(56px,8vw,120px)}
.contact .shell>p:not(.eyebrow) {max-width:44ch;margin-top:22px}
footer {background:var(--ink);color:var(--paper)}
.footer-inner {display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:94px;padding-block:20px;font-size:.81rem}
.footer-inner small {color:#c1c1bc}
@media(max-width:900px) {
  .capabilities {grid-template-columns:repeat(2,1fr)}
  .capabilities article:nth-child(odd) {padding-left:0}
  .capabilities article:nth-child(even) {border-right:0}
  .capabilities article:nth-child(n+3) {border-top:1px solid #b5b5ae}
  .editorial-row {gap:35px}
  .wide {display:none}
}
@media(max-width:650px) {
  :root {--header:60px}
  .brand b {font-size:1.78rem}
  .menu {display:block;background:none;border:0;min-height:44px;padding:0 3px 0 10px;font-size:.8rem}
  .menu span {margin-left:5px}
  .menu[aria-expanded="true"] span {display:inline-block;transform:rotate(45deg)}
  nav {display:none;position:absolute;top:100%;inset-inline:0;padding:12px var(--gutter) 20px;background:var(--ink);gap:0}
  .menu[aria-expanded="true"]+nav {display:grid}
  nav a {display:flex;align-items:center;min-height:46px;border-bottom:1px solid #434340}
  .nav-contact {border:0;padding:0}
  .hero {min-height:calc(100svh - var(--header))}
  .hero h1 {font-size:clamp(43px,15.5vw,99px)}
  .hero-inner {padding-bottom:58px}
  .hero-media img {object-position:55% center}
  .editorial-row,.project-copy,.section-intro {grid-template-columns:1fr;gap:21px}
  .reverse .photo {order:0}
  .editorial-copy p {margin-top:13px}
  .capabilities article {padding-top:20px;padding-bottom:20px}
  .capabilities p {font-size:.88rem}
  .experience-heading {align-items:start;flex-direction:column;gap:13px}
  .tigers-masthead {align-items:flex-start;justify-content:center;flex-direction:column;gap:28px}
  .tigers h2 {font-size:clamp(52px,17vw,110px)}
  .pitch-lines {inset:0 0 0 53%}
  .features {grid-template-columns:1fr}
  .features li {padding:14px 0;border-bottom:1px solid #50482b}
  .documentary h2 {font-size:clamp(36px,10.9vw,72px)}
  .footer-inner {align-items:flex-start;flex-direction:column;gap:10px}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  .carousel-track {animation:none!important}
}
.carousel.has-motion.paused {overflow-x:auto}
.carousel.paused .carousel-track {animation:none}
.carousel.paused .carousel-group[aria-hidden] {display:none}
@media (prefers-reduced-motion:no-preference) {
  @supports (animation-timeline:view()) {
    .editorial-copy,.capabilities article,.project-copy {
      animation:section-enter linear both;
      animation-timeline:view();
      animation-range:entry 0% entry 32%;
    }
  }
}
@keyframes section-enter {from {opacity:.65;transform:translateY(10px)}}
.doc-placeholder {width:100%;text-align:center;padding:16px}
.nav-contact span,.text-link span {display:inline-block;font-size:0;width:11px;height:11px;background:linear-gradient(135deg,transparent 46%,currentColor 47% 55%,transparent 56%) center/100% 100% no-repeat;position:relative;margin-left:8px}
.nav-contact span::after,.text-link span::after {content:"";position:absolute;inset:0 0 auto auto;width:7px;height:7px;border-top:1px solid;border-right:1px solid}
