.production-overview{box-sizing:border-box;display:flex;align-items:center;gap:20px;max-width:720px;margin:26px 0;padding:16px;background:#081727;border:1px solid #d8bd7f88;border-radius:14px;color:#f2f3ed;text-align:left;font-family:system-ui,sans-serif}.production-overview a{color:inherit}.production-overview .overview-poster{position:relative;display:block;flex:0 0 110px;overflow:hidden;border-radius:9px;line-height:0}.production-overview .overview-poster img{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;margin:0}.production-overview .overview-play{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#081727e8;color:#e4c98b;border:2px solid #e4c98b;font-size:23px;line-height:1;padding-left:4px}.production-overview .overview-kicker{font-size:14px;line-height:1.4;color:#d8bd7f;margin:0 0 10px}.production-overview .overview-copy>a{display:block;font-weight:650;font-size:19px;line-height:1.45;text-decoration:none}.overview-copy>a span{display:block;font-size:13px;color:#bac8d1;font-weight:400;margin-top:7px}.production-overview a:focus-visible{outline:3px solid #68d7e7;outline-offset:5px}.production-overview.overview-hero{display:block;width:clamp(240px,25vw,340px);margin:0 auto;padding:0;overflow:hidden}.production-overview.overview-hero .overview-poster{width:100%;max-height:440px}.production-overview.overview-hero .overview-poster img{max-height:440px;object-fit:contain;background:#081727}.production-overview.overview-hero .overview-copy{padding:16px}.production-overview.overview-hero .overview-copy>a{font-size:17px}#production-overview-dialog{padding:12px;background:#050b12;border:1px solid #d8bd7f;color:#f2f3ed;border-radius:12px;width:calc(100% - 24px);max-width:470px;max-height:96dvh;overflow:auto}#production-overview-dialog::backdrop{background:#000d}#production-overview-dialog video{display:block;width:100%;height:calc(90dvh - 65px);max-height:800px;object-fit:contain;background:#000}.overview-controls{display:flex;gap:10px;align-items:center;justify-content:space-between;font:12px/1.4 system-ui;margin-bottom:8px}.overview-controls button{min-height:44px;padding:8px 12px;border:1px solid #d8bd7f;background:#102334;color:#fff;border-radius:6px;font:inherit;cursor:pointer}.overview-fallback{font:13px/1.5 system-ui}.overview-fallback a{color:#d8bd7f}html.overview-open{overflow:hidden}@media(max-width:600px){.production-overview{width:100%;gap:13px;padding:12px}.production-overview .overview-poster{flex-basis:90px}.production-overview .overview-copy>a{font-size:16px}.production-overview.overview-hero{width:min(100%,300px);margin:20px auto}.production-overview.overview-hero .overview-poster img{max-height:350px}.production-overview .overview-kicker{font-size:13px}}@media(prefers-reduced-motion:reduce){#production-overview-dialog{scroll-behavior:auto}}
/* Keep the skyline atmospheric behind the headline and overview poster. */
.hero:has(.overview-hero) .hero-shade{background:linear-gradient(90deg,rgba(5,12,20,.91),rgba(5,12,20,.85)),linear-gradient(0deg,#050c14cc,transparent 65%)}
/* Compact cards must fit narrow page columns without squeezing their copy. */
.production-overview:not(.overview-hero){width:100%;min-width:0;clear:both}
.production-overview .overview-copy{min-width:0;overflow-wrap:break-word}
@media(max-width:600px){.production-overview:not(.overview-hero) .overview-poster{flex:0 0 72px}.production-overview:not(.overview-hero) .overview-play{width:44px;height:44px;font-size:19px}.production-overview:not(.overview-hero) .overview-kicker{margin-bottom:6px}}
.page-intro-bottom:has(>.production-overview){flex-wrap:wrap}
.page-intro-bottom>.production-overview{flex:0 0 100%}
.equipment-hero-intro:has(>.production-overview){flex-wrap:wrap}
.equipment-hero-intro>.production-overview{grid-column:1/-1;flex:0 0 100%;max-width:720px}
/* Landing-page hierarchy: compact introductions and a consistent video invitation. */
body .page-intro:has(.production-overview){padding-block:36px 30px}
body .page-intro:has(.production-overview) h1{font-size:clamp(36px,5vw,68px);line-height:1.08;margin-top:16px;margin-bottom:20px}
body .page-intro:has(.production-overview) .intro-text{margin-top:18px;max-width:760px;font-size:17px;line-height:1.6}
body .production-overview:not(.overview-hero){max-width:600px;padding:12px;gap:16px;margin-block:22px}
body .production-overview:not(.overview-hero) .overview-poster{flex:0 0 76px}
body .production-overview:not(.overview-hero) .overview-copy>a{font-size:17px}
body .page-intro:has(.production-overview) .intro-links{margin-top:20px}
body.overview-open .booking-mobile-bar,html.overview-open .booking-mobile-bar{display:none}
@media(max-width:1100px){
 body .site-header{grid-template-columns:auto minmax(0,1fr) auto;gap:12px 20px;padding-block:14px;align-items:center}
 body .site-header>.brand{grid-column:1;grid-row:1}
 body .site-header>.header-search{grid-column:2;grid-row:1;width:min(100%,300px)}
 body .site-header>.menu-toggle{grid-column:3;grid-row:1}
 body .site-header>.header-cta,body .site-header>.desktop-nav{display:none}
 body .site-header>.mobile-nav{grid-column:1/-1;grid-row:2}
 body .page-intro:has(.production-overview) h1{font-size:clamp(36px,5vw,56px)}
}
@media(max-width:600px){
 body .site-header{padding:10px 16px;column-gap:10px;row-gap:0;min-height:68px}
 body .site-header>.brand{gap:9px}
 body .site-header .brand-number{font-size:32px;line-height:1}
 body .site-header .brand-name,body .site-header .brand-name>span{font-size:10px;letter-spacing:.16em}
 body .site-header>.header-search{min-height:44px;width:100%}
 body .site-header>.header-search input{font-size:16px;padding-left:8px}
 body .site-header>.header-search button{flex-basis:36px;min-width:36px}
 body .site-header>.menu-toggle{font-size:12px;gap:6px;padding:0;min-width:46px}
 body .top-credentials.client-strip{display:flex;gap:8px;padding-block:10px;flex-wrap:wrap}
 body .top-credentials>a.sphere-credential{padding:6px 12px;min-height:30px;margin:auto}
 body .top-credentials .sphere-credential strong{font-size:14px}
 body .top-credentials .sphere-credential span{font-size:12px}
 body .top-credentials .client-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;flex-basis:100%;margin:0}
 body .top-credentials .client-logos>a{min-height:30px;padding:2px;grid-column:auto}
 body .top-credentials .client-logos img{height:25px;max-width:85px}
 body .hero .hero-content:has(.seasonal-hero-grid){padding-block:18px 62px}
 body .hero:has(.seasonal-hero-grid){min-height:0}
 body .seasonal-hero-grid{gap:18px}
 body .seasonal-ribbon{padding:0;margin-bottom:16px;border:0;background:none!important;font-size:11px;gap:8px}
 body .seasonal-mark{flex-basis:20px}
 body .seasonal-mark svg{width:20px;height:20px}
 body .hero .seasonal-hero-copy h1{font-size:36px;line-height:1.08;margin-top:14px}
 body .hero .eyebrow{font-size:10px;letter-spacing:.09em;gap:8px}
 body .hero .hero-description{font-size:15px;margin-top:14px}
 body .hero .hero-actions{margin-top:16px;flex-direction:row;flex-wrap:wrap;gap:12px}
 body .hero .hero-actions .button{min-height:44px;padding:10px 14px;gap:12px;font-size:13px}
 body .hero .hero-actions .text-link{font-size:12px;min-height:44px}
 body .production-overview.overview-hero{display:flex;width:100%;max-width:420px;margin:0;gap:14px;padding:10px}
 body .production-overview.overview-hero .overview-poster{flex:0 0 68px;max-height:none;width:auto}
 body .production-overview.overview-hero .overview-poster img{max-height:none}
 body .production-overview.overview-hero .overview-copy{padding:0;min-width:0}
 body .production-overview.overview-hero .overview-copy>a{font-size:16px}
 body .production-overview.overview-hero .overview-play{width:42px;height:42px;font-size:18px}
 body .production-overview .overview-kicker{font-size:12px;margin-bottom:5px}
 body .production-overview:not(.overview-hero){padding:10px;gap:12px;max-width:100%}
 body .production-overview:not(.overview-hero) .overview-poster{flex-basis:64px}
 body .production-overview:not(.overview-hero) .overview-copy>a{font-size:15px;line-height:1.4}
 body .page-intro:has(.production-overview){padding-block:26px}
 body .page-intro:has(.production-overview) h1{font-size:36px;line-height:1.1;margin-block:14px 18px}
 body .page-intro:has(.production-overview) .intro-text{font-size:16px;margin-top:14px}
 body .booking-mobile-bar{padding:6px 12px calc(6px + env(safe-area-inset-bottom,0px));gap:8px}
 body .booking-mobile-bar a{min-height:44px;padding:6px;font-size:13px}
}
@media(max-width:600px){
 body .top-credentials .client-logos>a:nth-child(n){grid-column:auto!important;grid-row:auto!important}
 body .top-credentials>a.sphere-credential{min-height:30px;padding:5px 12px}
 body .top-credentials>a.sphere-credential strong{font-size:14px;line-height:1.2}
 body .top-credentials>a.sphere-credential span{font-size:12px;line-height:1.2}
 body .top-credentials>a.sphere-credential svg{width:20px;height:20px}
 body .hero .hero-actions{display:none}
}
/* Image-first arrival on every public production entry page. */
body .overview-entry{display:flex;justify-content:center;align-items:center;padding:22px var(--gutter,22px);background:#08121e;border-bottom:1px solid #d8bd7f35}
body .overview-entry .production-overview.overview-hero{display:block;flex:none;width:320px;max-width:100%;margin:0;padding:0;border:0;background:transparent;overflow:visible}
body .overview-entry .production-overview.overview-hero .overview-poster{display:block;width:100%;max-height:none;border-radius:10px;overflow:hidden}
body .overview-entry .production-overview.overview-hero .overview-poster img{display:block;width:100%;height:min(60svh,540px);max-height:none;aspect-ratio:auto;object-fit:contain;background:transparent}
body .overview-entry .production-overview.overview-hero .overview-copy{padding:12px 0 0;text-align:center}
body .overview-entry .production-overview.overview-hero .overview-copy>a{font-size:18px;line-height:1.3}
body .overview-entry .overview-copy>a span{display:inline;margin-left:10px;font-size:13px}
body .overview-entry .overview-play{width:60px;height:60px;font-size:25px}
body .hero .seasonal-hero-grid{grid-template-columns:1fr}
@media(max-width:600px){
 body .overview-entry{padding:14px 20px 18px}
 body .overview-entry .production-overview.overview-hero{width:260px}
 body .overview-entry .production-overview.overview-hero .overview-poster img{height:min(59svh,420px)}
 body .overview-entry .production-overview.overview-hero .overview-copy>a{font-size:16px}
 body .overview-entry .overview-play{width:54px;height:54px;font-size:23px}
}
body .hero .hero-shade{background:linear-gradient(90deg,rgba(5,12,20,.91),rgba(5,12,20,.85)),linear-gradient(0deg,#050c14cc,transparent 65%)}
/* Center the introductory copy below the image-first hero. */
body .overview-entry+main .page-intro{text-align:center;margin-inline:auto}
body .overview-entry+main .page-intro>p,body .overview-entry+main .page-intro h1{margin-left:auto;margin-right:auto}
body .overview-entry+main .page-intro .intro-links{justify-content:center}
body .overview-entry+main .page-intro .page-intro-bottom{justify-content:center;text-align:center;align-items:center}
body .overview-entry+main .page-intro .intro-text{max-width:760px}
body .overview-entry .overview-copy>a span{white-space:nowrap}
/* Deliberate alignment: centered introductions, readable left-aligned detail. */
body .overview-entry+main .page-intro .eyebrow{justify-content:center}
body .overview-entry+main .page-intro .intro-links>.text-link{justify-content:center}
body .overview-entry+main :is(.prose,.hold-form,.inquiry-panel,.calendar-panel,.price-card,.equipment-detail,.client-comment,.story-card){text-align:left}
body .overview-entry+main .rate-breakdown>div>span:last-child,body .overview-entry+main .fee-list strong{text-align:right;font-variant-numeric:tabular-nums}
body .overview-entry+main .reel-chapters{justify-content:center}
body .overview-entry+main .equipment-hero-heading{flex-direction:column;text-align:center;align-items:center;gap:18px}
body .overview-entry+main .equipment-hero-intro{max-width:760px;min-width:0;text-align:center}
body .overview-entry+main .equipment-hero-intro .text-link{justify-content:center}
@media(max-width:600px){body .overview-entry+main .equipment-hero-intro{display:block}body .overview-entry+main .equipment-hero-intro p+p{margin-top:12px}}
.selected-frames .selected-frame img[src$="panorama.jpeg"]{object-fit:cover;object-position:center}
/* Homepage introduction centered over the retained skyline photograph. */
body .hero .seasonal-hero-copy{text-align:center;width:100%;margin-inline:auto}
body .hero .seasonal-hero-copy :is(h1,.hero-description){margin-left:auto;margin-right:auto}
body .hero .seasonal-hero-copy .eyebrow{justify-content:center}
body .hero .hero-actions{justify-content:center;align-items:center}
body .hero .seasonal-ribbon{margin-left:auto;margin-right:auto}
body .hero .hero-content:has(.seasonal-hero-grid){width:calc(100% - var(--gutter)*2)}
body .hero .hero-footer{justify-content:center;text-align:center;gap:10px 30px;flex-wrap:wrap}
@media(max-width:600px){body .hero .hero-footer{left:var(--gutter);right:var(--gutter);max-width:none;width:auto}}
/* Keep the invitation and running time on distinct centered lines. */
body .overview-entry .production-overview.overview-hero .overview-copy{width:100%;padding:12px 8px 0;text-align:center}
body .overview-entry .production-overview.overview-hero .overview-copy>a{display:block;text-align:center;font-size:17px;line-height:1.4}
body .overview-entry .production-overview.overview-hero .overview-copy>a span{display:block;margin:5px 0 0;font-size:13px;line-height:1.4;font-weight:400;text-align:center;white-space:nowrap}
@media(max-width:600px){body .overview-entry .production-overview.overview-hero .overview-copy>a{font-size:16px}}
/* Frame the equipment itself without the unused upper studio space. */
body .overview-entry{padding-block:16px}
body .overview-entry .production-overview.overview-hero .overview-poster img{height:auto;max-height:min(60svh,540px);aspect-ratio:auto;object-fit:contain}
body .overview-entry .production-overview.overview-hero .overview-play{top:50%}
@media(max-width:600px){body .overview-entry{padding-block:12px 16px}body .overview-entry .production-overview.overview-hero{width:300px}body .overview-entry .production-overview.overview-hero .overview-poster img{height:auto;max-height:59svh}}
/* Consistent action geometry across production landing pages. */
body :is(.button,.button-accent,.button-dark,.button-lime,.booking-mobile-bar a,.top-credentials>a.sphere-credential,.reel-chapters a,.header-search,.header-search input,.overview-controls button){border-radius:6px!important}
