@media(min-width:1600px){.hero-bottom{grid-template-columns:minmax(0,1fr);bottom:64px}.hero-actions .button{font-size:13px}.hero-description{font-size:var(--intro-size)}.spotlight{width:395px;top:145px}.spotlight-image{width:105px;height:115px}.spotlight .eyebrow{font-size:9px}.spotlight span{font-size:11px}}
@media(max-width:1100px){
  :root{--gutter:30px;--section-gap:80px;--card-gap:20px;--hero-title:52px;--heading:38px;--card-title:22px;--intro-size:17px}
  .hero-bottom{grid-template-columns:1fr;gap:30px;bottom:48px}.hero h1{font-size:var(--hero-title)}.hero-actions{flex-direction:row;width:fit-content}.hero-actions>.button,.hero-actions>.reel-button{min-width:270px}.hero-description{max-width:600px}.spotlight{width:315px;top:118px}.spotlight-image{width:75px;height:91px}.spotlight strong{font-size:17px}
  .heading-aside{font-size:var(--intro-size)}.work .heading-aside{max-width:600px}

  .faq{gap:55px;grid-template-columns:.8fr 1.2fr;row-gap:var(--heading-gap)}.faq-item summary{font-size:var(--card-title)}
}
@media(max-width:1200px){.work .section-heading h2{white-space:normal}}
@media(max-width:850px){
  .work .heading-aside{white-space:normal}
  .hero h1{font-size:var(--hero-title)}.hero-description{white-space:normal}.spotlight{width:300px}
  .heading-aside{}

.faq{grid-template-columns:1fr;gap:45px;row-gap:var(--heading-gap)}.faq-intro>p:not(.eyebrow){max-width:450px}.film-player{max-height:none}
}
@media(max-width:600px){
  :root{--gutter:18px;--section-gap:64px;--heading-gap:32px;--title-gap:16px;--card-gap:16px;--hero-title:40px;--heading:32px;--card-title:20px;--intro-size:16px;--client-strip-height:124px}.hero-media img,.hero-video{object-position:57% center}.spotlight{display:none}.hero-bottom{left:22px;right:22px;bottom:28px;gap:24px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:.09em;margin-bottom:20px}.hero h1{font-size:var(--hero-title);line-height:1.06;letter-spacing:-.065em}.hero h1 br{display:none}.hero-description{font-size:var(--intro-size);line-height:1.75;margin-top:var(--title-gap);max-width:320px}.desktop-break{display:none}.hero-actions{width:100%;gap:10px;flex-direction:column}.hero-actions>.button,.hero-actions>.reel-button{width:100%;min-width:0;min-height:55px}.hero-actions .button{font-size:12px;padding:16px 20px}.reel-thumbnail{height:37px;width:39px}.reel-button{padding:7px 18px 7px 8px;gap:13px}.reel-caption{display:none}.hero-shade{background:linear-gradient(180deg,rgb(0 0 0 / 20%),transparent 110px)}
  .client-strip{padding-block:24px 48px;padding-inline:22px}.client-strip>.eyebrow{font-size:7px;letter-spacing:.07em;margin-bottom:26px}.client-logos{gap:48px;padding-inline:24px}.client-logos img{width:104px;height:36px}.client-logos img[src$="logo-axa.webp"]{height:38px;width:38px}.client-logos img[src$="logo-aws.webp"]{width:66px;height:38px}
  .eyebrow{font-size:8px;gap:14px;margin-bottom:20px}.heading-aside{font-size:var(--intro-size)}.heading-aside .text-link{margin-top:12px}
  .expertise .heading-aside{font-size:var(--intro-size)}

  .image-note{left:18px;bottom:18px;font-size:8px}

  
  .faq{gap:36px;row-gap:var(--heading-gap)}.faq-item summary{font-size:var(--card-title);padding-block:25px;gap:20px}.faq-answer p{font-size:var(--body-size);padding-right:15px}.faq-intro .text-link{font-size:12px}.final-cta{min-height:440px;padding:var(--section-space) 20px}.final-cta h2{letter-spacing:-.055em}.final-cta .eyebrow{font-size:8px;letter-spacing:.06em;margin-bottom:26px}.final-actions{flex-direction:column;gap:var(--card-gap)}.final-actions .button{min-width:240px}.final-actions .text-link{font-size:11px}.final-content>.final-description{font-size:var(--intro-size)}.film-modal{width:calc(100% - 20px);max-height:calc(100svh - 30px);padding:16px;border-radius:var(--radius)}.film-top .eyebrow{font-size:7px}.film-bottom{flex-direction:column;align-items:flex-start;font-size:10px;gap:5px}.film-bottom .text-link{font-size:11px}.film-player{border-radius:var(--radius)}.film-top{gap:10px}.film-modal .icon-button{width:40px;height:40px}
}
@media(max-width:380px){.client-strip{padding-inline:20px}.hero h1{font-size:var(--hero-title)}.hero-description{font-size:var(--intro-size)}.hero-copy>.eyebrow{font-size:7px}.hero-bottom{left:20px;right:20px}}
/* Two tablet cards, then one almost full card and a next-card preview on mobile. */
@media(max-width:1100px){.work-grid{--work-gap:var(--card-gap);grid-auto-columns:calc((100% - var(--work-gap)) / 2)}}
@media(max-width:600px){.work .section-heading h2{white-space:normal}.work-grid{--work-gap:var(--card-gap);grid-auto-columns:88%}.work-heading-row{flex-wrap:wrap;gap:16px}.project-caption{padding:22px 22px 64px}.project-type{bottom:22px;left:22px;max-width:calc(100% - 44px);padding:10px 14px;font-size:16px;line-height:1.4}.project-logo{width:108px;height:30px}}
/* Keep the entire opening and its logos inside short viewports too. */
@media(max-width:600px) and (max-height:700px){
  .hero-bottom{bottom:20px;gap:18px}.hero h1{font-size:var(--hero-title)}.hero-description{font-size:var(--intro-size);line-height:1.6;margin-top:var(--title-gap)}.hero-actions>.button,.hero-actions>.reel-button{min-height:48px}.hero-actions .button{padding-block:12px}
}
@media(min-width:601px) and (max-height:600px){
  :root{--client-strip-height:132px}.hero-bottom{bottom:28px;grid-template-columns:minmax(0,1fr);gap:24px}.hero h1{font-size:var(--hero-title)}.hero-description{font-size:var(--intro-size);line-height:1.5;margin-top:var(--title-gap)}.hero-actions{width:fit-content;flex-direction:row;gap:10px}.hero-actions>.button,.hero-actions>.reel-button{min-width:0;min-height:48px}.hero-actions .button{padding:12px 18px}
}
/* Preserve all six home testimonials; an existing project testimony fills the three-column grid. */
@media(max-width:1800px){.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1350px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.testimonials-intro{padding:0 0 calc(var(--heading-gap) - var(--card-gap))}}
@media(max-width:1000px){
  .format-tile{min-height:320px}
  .reviews-grid,.format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonials-intro{padding:0 0 calc(var(--heading-gap) - var(--card-gap))}
  .editorial-split{grid-template-columns:1fr 1fr;gap:var(--card-gap)}.editorial-copy{padding:28px}.editorial-copy>p{font-size:var(--body-size)}.editorial-media{min-height:600px}.editorial-media h2{left:28px;right:28px}
  
}
@media(max-width:700px){
  .editorial-media{display:flex;align-items:flex-end;padding:110px 26px var(--heading-gap)}
  .editorial-media h2{position:static}
  .reviews-grid{grid-template-columns:1fr;gap:var(--card-gap)}.testimonials-intro{grid-column:auto}.review-tile{padding:28px}.review-tile blockquote{font-size:var(--body-size)}
  .format-grid{grid-template-columns:1fr;gap:var(--card-gap)}.format-tile{min-height:320px}.format-copy{padding:28px}.format-copy h3{font-size:var(--card-title)}.format-copy p{font-size:var(--body-size)}
  .editorial-split{grid-template-columns:1fr;gap:var(--card-gap)}.editorial-media{min-height:420px;aspect-ratio:auto}.editorial-media h2{left:26px;right:26px}
  .editorial-split--reverse .editorial-media,.editorial-split--reverse .editorial-copy{grid-column:auto;grid-row:auto}.editorial-copy{min-height:360px;padding:28px}
  
}
@media(max-width:380px){.review-tile{padding:24px}.review-tile blockquote{font-size:var(--body-size)}.format-copy{padding:24px}.format-copy h3{font-size:var(--card-title)}}
/* Accessibility override also wins against the reused quote animation skin. */
@media(max-width:600px) and (max-height:600px){
  .hero-bottom{bottom:18px;gap:14px}.hero h1{font-size:var(--hero-title)}.hero-rating{padding:7px 12px;margin-bottom:14px;font-size:12px}.hero-rating-stars{font-size:16px}.hero-description{margin-top:var(--title-gap)}.hero-actions>.button,.hero-actions>.reel-button{min-height:44px}.hero-actions .button{padding-block:10px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .hero-video,.project-preview,.format-video{display:none}
  .client-logo-window{overflow-x:auto;mask-image:none;-webkit-mask-image:none}.client-logo-track{transform:none;will-change:auto}.client-logos[aria-hidden="true"]{display:none}
}
/* Short screens need normal content flow, not an opening cropped to the viewport. */
@media(max-width:1100px){.hero-description{font-size:var(--intro-size);max-width:600px}.hero h1{font-size:var(--hero-title)}}
@media(max-width:700px){
  .process-step>summary{grid-template-columns:28px minmax(0,1fr) 24px;gap:12px;min-height:64px}
  .process-detail{padding:0 0 24px 40px}
  .making-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.making-photos img:last-child{grid-column:1 / -1;aspect-ratio:16 / 9}
}
@media(max-height:600px){
  .hero{height:auto;padding-block:112px 28px}
  .hero-bottom{position:relative;inset:auto;margin-inline:var(--gutter)}
}
