/* WSP 3 — cinematic design. Existing component behavior remains in site.css. */
:root { --shell:min(1400px,calc(100% - 96px)); --radius:3px; --radius-sm:2px; --radius-lg:4px; }
body::before{opacity:.018;z-index:1}
body[data-design-type="modern"]{--serif:var(--sans)}
body[data-design-corners="soft"]{--radius:16px;--radius-sm:10px;--radius-lg:22px}
.shell{width:var(--shell)}
main{overflow:clip}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--wsp-gold);outline-offset:5px}
h1,h2,h3{overflow-wrap:break-word}
.eyebrow{font-size:.8rem;letter-spacing:.19em;line-height:1.5;font-weight:700}
.site-header{background:color-mix(in srgb,var(--wsp-bg) 94%,transparent);border-bottom:1px solid var(--wsp-line);backdrop-filter:blur(16px)}
.site-header__inner{min-height:94px;gap:22px}
.main-nav{gap:3px}.main-nav a{font-size:.875rem;padding:10px 7px;letter-spacing:0;text-transform:none;font-weight:600}
.link-icon--nav{width:15px;height:15px;opacity:.85}
.brand img{width:155px;max-height:66px;object-fit:contain}
.button{border-radius:3px;min-height:52px;font-size:.875rem;font-weight:700;letter-spacing:.035em;text-transform:none;padding:13px 24px;box-shadow:none}
.button--small{min-height:44px;padding:10px 19px}.button--ghost{border-color:color-mix(in srgb,var(--wsp-text) 45%,transparent)}
.section-link{font-size:.875rem;letter-spacing:0;text-transform:none;white-space:normal;line-height:1.4}
.cinema-hero{background:var(--wsp-bg);min-height:810px;min-height:min(900px,calc(100svh - 94px));color:#fff;isolation:isolate}
.cinema-hero__picture{position:absolute;inset:0;z-index:-3}
.cinema-hero__picture img{height:100%;width:100%;object-fit:cover;object-position:var(--hero-focus-x) var(--hero-focus-y);filter:saturate(.72)}
.cinema-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.26) 65%,rgba(0,0,0,.1)),linear-gradient(0deg,var(--wsp-bg),transparent 30%);pointer-events:none}
.cinema-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:#000;opacity:calc(var(--hero-dark) * .65);pointer-events:none}
.cinema-hero .hero__inner{display:flex;gap:0;align-items:center;padding:75px 0 125px;min-height:inherit}
.cinema-hero .hero__copy{max-width:1000px}
.cinema-hero h1{max-width:960px;font-size:clamp(3.3rem,6.2vw,6.8rem);line-height:1.06;letter-spacing:-.045em;font-weight:400;text-wrap:balance}
.cinema-hero .hero__copy>p:not(.eyebrow){max-width:610px;font-size:1.06rem;line-height:1.7;color:#e0ddd7;margin-top:24px}
.cinema-hero .eyebrow{color:#edca7a;margin-bottom:24px}
.cinema-hero .button--ghost{color:#fff;border-color:#ffffff75;background:#0002}
.cinema-hero__caption{position:absolute;bottom:38px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;color:#d9d6ce;font-size:.8rem;letter-spacing:.13em;text-transform:uppercase}
.cinema-hero__caption>span:last-child{font-size:1.5rem}
.cinema-hero[data-height="compact"]{min-height:620px}
.cinema-hero[data-alignment="center"] .hero__copy{margin-inline:auto;text-align:center}
.cinema-hero[data-alignment="center"] .hero__copy>p{margin-inline:auto}
.cinema-hero[data-alignment="center"] .button-row{justify-content:center}
.hero__stripe{width:100%;height:2px;opacity:.8}
.section{padding-block:clamp(80px,8vw,125px)}
body[data-design-spacing="balanced"] .section{padding-block:75px}
body[data-design-spacing="compact"] .section{padding-block:48px}
.section--surface{background:var(--wsp-surface)}
.section-head{margin-bottom:42px;align-items:end;gap:30px}
.section-head h2{font-size:clamp(2.6rem,4.4vw,4.7rem);line-height:1.1;letter-spacing:-.04em}
.section-head p:not(.eyebrow){max-width:690px;font-size:1rem;line-height:1.65}
.company-profile-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9vw}
.company-profile-visual{border:1px solid var(--wsp-line);border-radius:var(--radius);min-height:390px;background:var(--wsp-bg);box-shadow:none;padding:55px}
.company-profile-visual::before,.company-profile-visual::after{display:none}
.company-profile-visual img{max-height:280px;object-fit:contain}
.company-profile-copy h2,.profile-copy h2{font-size:clamp(2.5rem,4.2vw,4.7rem);line-height:1.1;letter-spacing:-.04em}
.company-profile-lead{font-size:1.15rem;line-height:1.65}
.project-grid,.release-grid{gap:36px 26px}
.project-card,.release-card,.video-card,.news-card{border:0;background:transparent;box-shadow:none;border-radius:0}
.project-card__media,.release-card__media,.video-card__media,.news-card__media{border:0;border-radius:var(--radius);overflow:hidden}
.project-card__media img,.release-card__media img{transition:transform .55s ease;object-fit:cover}
.project-card:hover img,.release-card:hover img{transform:scale(1.035)}
.project-card h3,.release-card h3,.video-card h3,.news-card h3{font-size:1.55rem;line-height:1.2;letter-spacing:-.02em}
.project-card p,.release-card p,.video-card p,.news-card p{font-size:1rem}
.project-card__meta,.release-card__meta{font-size:.875rem}
.credit-list article{padding-block:22px;min-height:110px}.credit-list__thumb{border-radius:var(--radius-sm)}
.credit-list article>strong,.credit-list article>span{font-size:.875rem}.credit-list h3{font-size:1.6rem}
.service-grid{counter-reset:services;gap:0}
.service-card{counter-increment:services;padding:34px;border:1px solid var(--wsp-line);border-radius:0;background:transparent;position:relative}
.service-card::before{content:counter(services,decimal-leading-zero);display:block;color:var(--wsp-gold);font-size:.875rem;letter-spacing:.15em;margin-bottom:45px}
.service-icon{display:none}.service-card h2,.service-card h3{font-size:1.8rem;line-height:1.2}.service-card>a:not(.button){font-size:.875rem;text-transform:none;letter-spacing:0}
.featured-video{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);border:1px solid var(--wsp-line);border-radius:var(--radius);background:var(--wsp-surface);box-shadow:none;overflow:hidden}
.featured-video__media{aspect-ratio:16/10;border-radius:0}.featured-video__copy{padding:38px}.featured-video__copy h3{font-size:clamp(2rem,3vw,3.6rem);line-height:1.1}.featured-video__copy p{font-size:1rem}
.big-play{border:1px solid #fff8;background:#0007;color:white;backdrop-filter:blur(10px);box-shadow:none}
.page-hero,.standard-page__hero{padding-block:90px;border-bottom:1px solid var(--wsp-line);background-color:var(--wsp-bg)}
.page-hero:not(.page-hero--image)::after{display:none}
.page-hero h1,.standard-page__hero h1{font-size:clamp(3rem,6vw,6.7rem);line-height:1.08;letter-spacing:-.045em;max-width:1150px}
.page-hero>.shell--narrow{max-width:none}.page-hero p:not(.eyebrow){font-size:1.1rem;line-height:1.7;max-width:740px}
.page-hero--image{min-height:410px;background-size:cover;background-position:center 40%}
.filter-bar{border-radius:var(--radius);padding:16px;gap:14px}.filter-bar input,.filter-bar select,.site-search input,.contact-builder input,.contact-builder select,.contact-builder textarea{border-radius:3px;font-size:1rem}
.filter-bar> a{font-size:.875rem}.filter-bar select{min-width:155px}
.detail-copy h1{font-size:clamp(3rem,5.5vw,6.2rem);line-height:1.06}.detail-copy h2{font-size:1rem;line-height:1.5}.detail-lead{font-size:1.3rem;line-height:1.6}
.watch-meta h1{line-height:1.08}.video-player{border-radius:var(--radius);box-shadow:none}
.streaming-platform-card{border-radius:var(--radius);box-shadow:none;background:var(--wsp-surface);padding:28px;min-height:180px}
.streaming-platform-card::before{display:none}.streaming-platform-card small{font-size:.8rem}.streaming-platform-card strong{font-size:1.7rem;line-height:1.2}.streaming-platform-card p{font-size:1rem;line-height:1.5}
.social-card{border-radius:var(--radius);background:transparent}.social-card p,.social-card small{font-size:.875rem}
.closing-cta{padding-block:120px;text-align:center;border-top:1px solid var(--wsp-line);background:var(--wsp-surface)}
.closing-cta h2{max-width:1000px;margin-inline:auto;font-size:clamp(3rem,5.7vw,6.1rem);line-height:1.07;letter-spacing:-.045em}
.closing-cta p:not(.eyebrow){max-width:650px;margin-inline:auto;font-size:1.05rem}
.closing-panel,.contact-side,.contact-builder,.about-founder-panel,.custom-content-block__media,.standard-page__hero-media{border-radius:var(--radius);box-shadow:none}
.custom-content-block__copy h2{line-height:1.12}.standard-page__hero-grid{gap:70px}
.site-footer{padding-top:75px;background:var(--wsp-bg)}.site-footer__bottom{font-size:.875rem}.site-footer__identity,.site-footer__developer-credit{font-size:.8rem;text-align:center;justify-self:center;line-height:1.7}
.site-footer a,.site-footer p{font-size:.875rem}.site-footer__center{align-items:center;justify-items:center}
.design-preview-banner{position:relative;z-index:100;background:#c69f52;color:#171511;padding:8px 16px;text-align:center;font:14px/1.5 system-ui}.design-preview-banner a{text-decoration:underline}
@media(prefers-reduced-motion:no-preference){body[data-design-motion="subtle"] .cinema-hero__picture img{animation:scene-arrive 2.2s ease-out both}@keyframes scene-arrive{from{transform:scale(1.035)}to{transform:scale(1)}}}
body[data-design-motion="off"] *,body[data-design-motion="off"] *::before,body[data-design-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(min-width:981px) and (max-width:1400px){.main-nav{gap:0}.main-nav a{font-size:.8rem;padding-inline:5px}.site-header__inner{gap:14px}.brand img{width:135px}.link-icon--nav{width:12px;height:12px}}
@media(max-width:1100px){:root{--shell:calc(100% - 56px)}.featured-video{grid-template-columns:1.2fr 1fr}.company-profile-grid{gap:45px}.company-profile-visual{padding:30px;min-height:320px}.cinema-hero h1{font-size:clamp(3.4rem,7vw,5.8rem)}}
@media(max-width:800px){.cinema-hero{min-height:740px}.cinema-hero h1{font-size:clamp(3.2rem,8vw,4.8rem)}.cinema-hero__picture img{object-position:var(--hero-focus-x) var(--hero-focus-y)}.cinema-hero::before{background:linear-gradient(90deg,#000b,#0005),linear-gradient(0deg,var(--wsp-bg),transparent 70%)}.company-profile-grid,.featured-video,.standard-page__hero-grid{grid-template-columns:1fr}.company-profile-visual{min-height:260px}.company-profile-visual img{max-height:220px}.featured-video__media{aspect-ratio:16/9}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{align-items:start}.cinema-hero .hero__inner{padding-block:70px 120px}.studio-bar{position:relative}}
@media(max-width:640px){:root{--shell:calc(100% - 36px)}.site-header__inner{min-height:76px}.brand img{width:145px}.cinema-hero{min-height:760px;min-height:calc(100svh - 76px)}.cinema-hero h1{font-size:clamp(2.6rem,10.5vw,4.2rem);line-height:1.09;letter-spacing:-.04em}.cinema-hero .hero__copy>p:not(.eyebrow){font-size:1rem;line-height:1.6}.cinema-hero .eyebrow{font-size:.8rem;max-width:300px}.cinema-hero__caption{bottom:28px;font-size:.75rem;letter-spacing:.07em;gap:20px}.cinema-hero .hero__inner{padding-block:55px 115px}.cinema-hero[data-height="compact"]{min-height:660px}.section{padding-block:65px}.section-head{display:block}.section-head .section-link{display:inline-block;margin-top:20px}.section-head h2{font-size:2.5rem}.company-profile-grid{gap:35px}.company-profile-copy h2{font-size:2.7rem}.service-grid{grid-template-columns:1fr}.service-card{padding:28px}.service-card::before{margin-bottom:25px}.page-hero,.standard-page__hero{padding-block:62px}.page-hero h1{font-size:3.2rem}.page-hero p:not(.eyebrow){font-size:1rem}.featured-video__copy{padding:26px}.button{padding-inline:18px}.closing-cta{padding-block:75px}.closing-cta h2{font-size:3.05rem}.credit-list article>strong{font-size:.8rem}.site-footer__bottom{display:flex;flex-direction:column;gap:20px}.site-footer__center{width:100%}.site-footer__balance{display:none}.filter-bar label:first-child{min-width:0;flex-basis:100%}.streaming-platform-card{padding:22px}.project-grid,.release-grid{gap:30px 18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
