/* Compact identity row, with the introduction retained in the banner. */
.header-main{padding-block:12px 22px;flex-wrap:nowrap;align-items:center}
.header-profile{display:flex;align-items:center;gap:17px;margin-left:auto}
.header-profile>img{width:64px;height:64px;object-fit:cover;border-radius:7px;border-bottom:3px solid var(--orange)}
.header-profile>div{display:flex;flex-direction:column;gap:5px;font-size:.78rem;line-height:1.45;color:#adb8c2}
.header-profile strong{font-size:.95rem;color:#f3f5f7;font-weight:600}
/* The two media bands share one quiet background and keep their logos sharp. */
.hero-stage{min-height:586px;overflow:hidden}
.hero-stage::after{display:none}
.hero-stage .hero{display:block;min-height:586px;padding-block:66px 140px;pointer-events:none}
.hero-copy{max-width:580px;pointer-events:auto;position:relative;z-index:2}
.hero-copy h1{font-size:clamp(2.3rem,3.7vw,3.25rem);line-height:1.13}
.hero-stage .hero-description{max-width:535px;font-size:1rem;line-height:1.7;color:#e2e6eb;margin-top:23px;text-shadow:0 1px 9px #090d16}
.hero-actions{margin-top:25px;gap:25px}
.hero-stage .feedback-top{margin-top:22px;color:#d5dce4}
.showcase{position:absolute;inset:0;width:100%;isolation:isolate}
.showcase::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#17191be0 0%,#17191bc4 23%,#17191b99 40%,#17191b14 70%,#17191b0d 100%);z-index:1}
.showcase-toolbar{position:absolute;top:13px;right:24px;left:24px;display:flex;align-items:center;justify-content:flex-end;gap:20px;z-index:3;pointer-events:none}
.showcase-toolbar>.eyebrow{margin-right:auto;font-size:.65rem;letter-spacing:1.1px;color:#c3cdd5;opacity:0}
.reel-controls{display:flex;align-items:center;gap:7px;pointer-events:auto}
.reel-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #77828c66;background:#171d25e6;color:#f2f4f6;border-radius:7px;min-height:38px;min-width:38px;padding:7px 10px;font-size:.78rem}
.reel-controls button:hover{background:#414b57}
.reel-controls .reel-toggle{padding-inline:12px}
.reel-count{color:#dde4ec;font-size:.68rem;font-variant-numeric:tabular-nums;padding-inline:5px;text-shadow:0 1px 4px #000}
.showcase-bands{height:100%;display:grid;grid-template-rows:minmax(0,1.1fr) minmax(0,1fr);gap:12px}
.reel-track,.still-track{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:none;scroll-behavior:auto;overflow-anchor:none;scrollbar-width:none;min-width:0;overscroll-behavior-x:contain;scroll-padding-inline:0}
.reel-track::-webkit-scrollbar,.still-track::-webkit-scrollbar{display:none}
.reel-card,.showcase-still{position:relative;display:block;flex:0 0 min(560px,calc((100% - 24px)/3));min-width:0;overflow:hidden;border-radius:6px;background:#18202a;scroll-snap-align:start;color:white}
.reel-poster,.reel-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1}
.reel-card video{opacity:0}
.reel-card.is-ready video{opacity:1}
.reel-card.is-ready .reel-poster{visibility:hidden}
.reel-card.is-fallback video{opacity:0}
.reel-caption{position:absolute;inset:auto 0 0;padding:35px 15px 13px;background:linear-gradient(transparent,#111822bf);display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;font-size:.68rem;color:#c2cbd5}
.reel-caption strong{font-size:.78rem;font-weight:550;color:#f4f7fa}
.showcase-still{flex-basis:min(420px,calc((100% - 36px)/4))}
.still-image{width:100%;height:100%;object-fit:cover;opacity:.74}
.still-credits{position:absolute;inset:auto 11px 33px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;min-height:40px;z-index:2;pointer-events:none}
.still-credits.has-multiple-clients{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}
.still-studio,.still-brands{display:flex;align-items:center;min-width:0;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}
.still-studio{justify-content:flex-start;transform:scale(1.1);transform-origin:left center}
.still-brands{justify-content:flex-end;gap:7px;transform:scale(1.1);transform-origin:right center}
.showcase-still .still-studio-logo{display:block;flex:0 1 auto;width:auto;height:22px;max-width:min(100%,88px);min-width:0;object-fit:contain;object-position:left center;background:transparent;padding:0;border:0;border-radius:0;filter:brightness(0) invert(1) drop-shadow(0 1px 3px #0009)}
.showcase-still .still-studio-logo.logo-big{height:26px}
.showcase-still .still-studio-logo.logo-red{width:95px;height:17px}
.showcase-still .still-brands .client-logo{flex:0 1 auto;min-width:0;object-position:right center}
.showcase-still .client-logo{max-width:100px;width:auto;height:26px;margin:0;object-fit:contain}
.showcase-still .client-logo.brand-overwatch{width:77px;height:30px;padding:5px}
.showcase-still .client-logo.brand-blizzard{width:62px;height:26px}
.showcase-still .client-logo.brand-enbd,.showcase-still .client-logo.brand-nybc{max-width:125px;height:34px;padding:5px}
.still-title{position:absolute;right:11px;bottom:11px;font-size:.66rem;font-weight:550;text-shadow:0 1px 6px #000;background:#151d27b3;border-radius:3px;padding:3px 6px;z-index:2}
.reel-card:focus-visible,.showcase-still:focus-visible{outline-offset:-4px;outline-width:4px}
@media(min-width:1680px){.showcase::after{background:linear-gradient(90deg,#17191be0,#17191bb3 26%,#17191b85 42%,#17191b14 68%),linear-gradient(90deg,#17191b26,transparent 3%,transparent 97%,#17191b26)}}
@media(max-width:1150px){.hero-copy{max-width:52%}.hero-copy h1{font-size:2.65rem}.hero-stage .hero-description{font-size:.95rem}.hero-stage,.hero-stage .hero{min-height:610px}.reel-caption{font-size:.6rem}.reel-caption strong{font-size:.68rem}.still-credits{gap:9px}.still-brands{gap:5px}.showcase-still .still-studio-logo{height:19px;max-width:min(100%,76px)}.showcase-still .still-studio-logo.logo-big{height:24px}.showcase-still .still-studio-logo.logo-red{height:16px}.showcase-still .client-logo{max-width:75px;height:24px}.showcase-still .client-logo.brand-disney{width:76px}.showcase-still .client-logo.brand-overwatch{width:61px}.showcase-still .client-logo.brand-blizzard{width:47px}.showcase-still .client-logo.brand-enbd,.showcase-still .client-logo.brand-nybc{max-width:105px;height:29px}.still-title{font-size:.6rem}.header-profile>img{width:58px;height:58px}}
@media(max-width:900px){.hero-copy{max-width:60%}.hero-copy h1{font-size:2.4rem}.reel-card{flex-basis:calc((100% - 12px)/2)}.showcase-still{flex-basis:calc((100% - 24px)/3)}.header-profile>div{max-width:240px}.showcase::after{background:linear-gradient(90deg,#17191be8,#17191bbf 38%,#17191b52 65%,#17191b0d)}}
@media(max-width:620px){.language-row{padding-top:8px}.header-main{gap:16px;padding-block:8px 17px;align-items:center}.wordmark{gap:8px}.monogram{font-size:2.6rem;letter-spacing:-4px}.brand-name>span{font-size:.58rem;letter-spacing:1.6px}.brand-name strong{font-size:1.03rem}.header-profile{gap:9px}.header-profile>img{width:42px;height:46px;border-radius:4px}.header-profile>div{font-size:.59rem;gap:3px;max-width:133px}.header-profile strong{display:none}.hero-stage{display:flex;flex-direction:column;min-height:0}.hero-stage .hero{order:0;min-height:0;padding-block:29px 24px;pointer-events:auto}.hero-copy{max-width:none}.hero-copy h1{font-size:clamp(1.9rem,6.8vw,2.5rem)}.hero-stage .hero-description{font-size:.9375rem;margin-top:17px;line-height:1.65}.hero-actions{gap:15px;margin-top:21px}.hero-stage .feedback-top{margin-top:18px;font-size:.75rem}.hero-actions .button{padding:12px 14px;min-height:44px;font-size:.8rem}.hero-actions .text-link{font-size:.8rem}.showcase{position:relative;inset:auto;order:1;width:100%;margin:0;padding:0 0 22px}.showcase::after{display:none}.showcase-toolbar{position:relative;inset:auto;margin:0 16px 11px;gap:8px}.showcase-toolbar>.eyebrow{opacity:1;font-size:.6rem;line-height:1.5;max-width:110px;letter-spacing:.8px}.reel-controls{gap:5px}.reel-controls button{min-width:34px;min-height:40px;padding:7px;font-size:.7rem}.reel-controls .reel-toggle{padding-inline:9px}.reel-count{display:none}.showcase-bands{padding-block:0;gap:10px;grid-template-rows:auto auto;height:auto}.reel-track,.still-track{gap:10px;padding-inline:16px;scroll-padding-inline:16px}.reel-card{flex-basis:86%;height:auto;aspect-ratio:16/9}.showcase-still{flex-basis:66%;min-width:245px;height:auto;aspect-ratio:16/10}.reel-poster,.reel-card.is-ready video{opacity:1}.still-image{opacity:.88}.reel-caption{padding:27px 12px 10px}.reel-caption strong{font-size:.74rem}.reel-caption>span{font-size:.63rem}.still-title{font-size:.6rem}.still-credits{bottom:32px;min-height:35px;gap:9px}.showcase-still .client-logo{max-width:78px;height:24px}.showcase-still .client-logo.brand-disney{width:75px}}
@media(max-width:360px){.header-main{gap:9px}.header-profile>div{max-width:110px;font-size:.55rem}.header-profile>img{width:35px;height:42px}.brand-name strong{font-size:.9rem}.brand-name>span{font-size:.55rem;letter-spacing:1px}.monogram{font-size:2.25rem}.showcase-toolbar>.eyebrow{max-width:85px;font-size:.56rem}.reel-controls .reel-toggle{padding-inline:7px}.reel-controls button{font-size:.66rem}.showcase-still{flex-basis:77%}.hero-actions{gap:9px}}
@media(prefers-reduced-motion:reduce){.reel-card video{transition:none}}
@media(forced-colors:active){.showcase::after{display:none}.reel-poster,.still-image,.reel-card.is-ready video{opacity:1}.still-credits img{forced-color-adjust:none}.hero-copy{background:Canvas}}
/* Give the longer recommendations label enough room in both languages. */
.dock-nav{grid-template-columns:1.05fr .75fr 1.4fr}
@media(max-width:620px){
  .dock-nav{grid-template-columns:1fr .7fr 1.65fr;gap:2px;font-size:.6875rem}
  .dock-nav a{padding-inline:2px}
  .site-dock .dock-contact{width:108px;min-width:108px}
}
@media(max-width:360px){
  .dock-inner{flex-wrap:wrap;gap:4px}
  .dock-nav{flex-basis:100%;font-size:.75rem;grid-template-columns:1fr .7fr 1.5fr}
  .dock-nav a{min-height:42px;padding-block:8px}
  .site-dock .dock-contact{width:100%;min-width:0;min-height:38px;flex-direction:row;justify-content:space-between;align-items:center;padding:7px 12px}
  .dock-contact .contact-launcher-title{font-size:.75rem}
  .dock-contact .contact-symbols{gap:5px}
}

/* Brand artwork sits directly on each still, with no surrounding plate. */
.showcase-still .client-logo{background:transparent;padding:0;border-radius:0;filter:drop-shadow(0 1px 3px #0009)}
.showcase-still .client-logo.brand-disney,.showcase-still .client-logo.brand-riot,.showcase-still .client-logo.brand-gear-games,.showcase-still .client-logo.brand-nubank{filter:brightness(0) invert(1) drop-shadow(0 1px 3px #0009)}
.brand-filters{position:absolute;pointer-events:none;overflow:hidden}
.showcase-still .client-logo[class*="brand-"]{padding:0}
/* Keep the official raster unchanged; remove its white matte in the browser. */
.showcase-still .client-logo.brand-second-nurture{filter:url(#client-white-to-alpha) drop-shadow(0 1px 2px #0006);height:38px;max-width:125px}

/* Identity, studio, portrait and language share a compact, aligned header. */
.header-main.has-studio-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:24px;padding-block:16px;border-bottom:0}
.has-studio-link .header-profile{margin-left:0}
.has-studio-link .header-profile>img{flex-shrink:0}
.has-studio-link>.language-switch{justify-self:end;gap:4px;border-left:1px solid #3c4045;padding-left:16px}
.has-studio-link>.language-switch button{margin:0;min-width:36px;min-height:40px}
.header-studio-link{display:inline-flex;justify-self:center;align-self:center;align-items:center;gap:12px;max-width:100%;padding:9px 17px 9px 11px;border:1px solid #a27e587d;border-radius:999px;background:linear-gradient(140deg,#46382a,#292726 72%);color:#fff5e8;box-shadow:inset 0 1px 0 #f5d4a733,0 3px 0 #0c1012,0 6px 16px #0003;transition:transform .18s,background .18s,border-color .18s;min-height:54px}
.header-studio-symbol{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;color:#efb777;background:#c58a4320;border-radius:50%}
.header-studio-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.header-studio-copy strong{font-size:.875rem;font-weight:650;letter-spacing:-.15px;line-height:1.1;white-space:nowrap}
.header-studio-copy small{align-self:start;font-size:.59375rem;font-weight:700;letter-spacing:.6px;line-height:1.1;text-transform:uppercase;color:#ffd092}
.header-studio-link .link-icon{width:14px;height:14px;flex-shrink:0;color:#deb88f;margin-left:5px}
.header-studio-link:focus-visible{outline:3px solid #ffc38a;outline-offset:5px}
.header-studio-link:active{transform:translateY(2px);box-shadow:inset 0 1px 0 #f5d4a733,0 1px 0 #0c1012}
@media(hover:hover){.header-studio-link:hover{transform:translateY(-2px);border-color:#edbd80;background:linear-gradient(140deg,#59422c,#34302a 72%)}}
@media(max-width:1199px){
  .header-main.has-studio-link{grid-template-columns:minmax(0,1fr) auto;gap:12px 22px;padding-block:12px}
  .has-studio-link .wordmark{grid-column:1;grid-row:1}
  .has-studio-link .header-profile{grid-column:2;grid-row:1;justify-self:end;min-width:0}
  .header-studio-link{grid-column:1;grid-row:2;justify-self:start;min-height:48px;padding-block:7px}
  .has-studio-link>.language-switch{grid-column:2;grid-row:2;border-left:0;padding-left:0}
}
@media(min-width:901px) and (max-width:1199px){
  .header-main.has-studio-link{grid-template-columns:auto minmax(0,1fr) auto;gap:6px 20px}
  .has-studio-link .header-profile{grid-column:3;grid-row:1/3}
  .header-studio-link{grid-column:2;grid-row:1/3;justify-self:center}
  .has-studio-link>.language-switch{grid-column:1;grid-row:2;justify-self:start}
}
@media(max-width:620px){
  .header-main.has-studio-link{grid-template-columns:minmax(0,1fr) auto;gap:10px 8px;padding-block:10px 12px}
  .has-studio-link .wordmark{grid-column:1/-1;justify-self:start;margin-right:160px}
  .has-studio-link .header-profile{grid-column:1/-1;justify-self:end}
  .header-studio-link{gap:8px;padding:6px 10px 6px 8px;min-height:44px}
  .has-studio-link>.language-switch{gap:2px}
  .has-studio-link>.language-switch button{min-width:32px;min-height:44px;padding-inline:4px;font-size:.75rem}
  .header-studio-symbol{width:30px;height:30px}.header-studio-symbol svg{width:23px;height:23px}
  .header-studio-copy strong{font-size:.8125rem}.header-studio-copy small{font-size:.5625rem}
}
@media(max-width:360px){.has-studio-link .wordmark{margin-right:135px}}
@media(prefers-reduced-motion:reduce){.header-studio-link{transition:none}}
@media(forced-colors:active){.header-studio-link{background:Canvas;color:LinkText;border:1px solid LinkText;box-shadow:none}.header-studio-copy small,.header-studio-symbol,.header-studio-link .link-icon{color:LinkText}}
