:root {
  --night: #071421;
  --night-2: #0b1d2e;
  --ink: #0a111a;
  --paper: #f6eee1;
  --warm: #ffb877;
  --sunset: #e86f45;
  --ice: #dfeeff;
  --blue: #6fa8ff;
  --line: rgba(222, 235, 249, .2);
  --muted: #a6b4c2;
  --display: "Arial Narrow", "Roboto Condensed", Impact, Haettenschweiler, sans-serif;
  --body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); }
body { margin: 0; min-width: 320px; color: #f9fbff; background: var(--night); font-family: var(--body); line-height: 1.5; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
img { max-width: 100%; }
[hidden] { display: none !important; }

.site-header {
  position: fixed;
  z-index: 80;
  inset: 0 0 auto;
  height: 88px;
  display: flex;
  align-items: center;
  padding: 0 clamp(24px, 4vw, 72px);
  background: linear-gradient(180deg, rgba(3, 11, 20, .82), transparent);
}
.site-logo { width: 136px; height: 72px; display: flex; align-items: center; margin-right: auto; }
.site-logo img { width: 122px; height: 68px; object-fit: contain; filter: drop-shadow(0 3px 12px rgba(0,0,0,.45)); }
.site-nav { display: flex; align-items: center; gap: clamp(14px, 1.8vw, 32px); }
.site-nav a[href="index.html"] { display: inline-flex; align-items: center; } 
.site-nav a { position: relative; color: rgba(255,255,255,.76); font-size: 12px; font-weight: 650; letter-spacing: .075em; text-transform: uppercase; }
.site-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 1px; background: var(--warm); transition: right .25s ease; }
.site-nav a:hover, .site-nav a[aria-current="page"] { color: white; }
.site-nav a:hover::after, .site-nav a[aria-current="page"]::after { right: 0; }
.site-nav a[href="brands.html"] { padding: 11px 15px; color: var(--ink); background: var(--paper); }
.site-nav a[href="publishers.html"] { padding: 10px 14px; border: 1px solid rgba(255,255,255,.55); color: white; }
.site-nav a[href="brands.html"]::after, .site-nav a[href="publishers.html"]::after { display: none; }
.menu-toggle { display: none; width: 48px; height: 48px; border: 0; color: white; background: transparent; }
.menu-toggle span { display: block; width: 25px; height: 1px; margin: 7px auto; background: currentColor; transition: transform .25s ease; }

.cinema-hero { position: relative; min-height: 100svh; overflow: hidden; isolation: isolate; background: #071421; }
.scene-stage {
  position: absolute;
  z-index: -3;
  left: 50%;
  top: 56%;
  width: max(100vw, calc(100svh * 1.77778));
  height: max(100svh, calc(100vw * .5625));
  transform: translate(-50%, -50%);
}
.scene-video { position: absolute; z-index: 0; left: 52.5%; top: 24%; width: 39.6%; height: 40.6%; aspect-ratio: 16 / 9; object-fit: cover; object-position: center; transform: skewY(-17.2deg) scale(1.08, 1.06); transform-origin: center; pointer-events: none; }
.scene { position: absolute; z-index: 1; inset: 0; background: url("assets/lia-billboard-hero-transparent.png") center/100% 100% no-repeat; pointer-events: none; }
.scene-shade { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(3,10,18,.66) 0%, rgba(4,12,20,.22) 36%, transparent 58%), linear-gradient(180deg, rgba(3,9,17,.16), transparent 62%, rgba(3,9,17,.22)); pointer-events: none; }
.hero-copy { position: absolute; z-index: 5; left: clamp(28px, 5vw, 94px); top: 50%; width: min(39vw, 710px); transform: translateY(-47%); }
.overline { margin: 0 0 20px; color: #f8d5b7; font-size: clamp(10px, .7vw, 13px); font-weight: 700; letter-spacing: .28em; }
.hero-copy h1 { margin: 0; max-width: 760px; color: var(--paper); font-family: var(--display); font-size: clamp(64px, 7.3vw, 142px); font-stretch: condensed; font-weight: 900; letter-spacing: -.045em; line-height: .84; text-shadow: 0 5px 30px rgba(2,7,12,.4); }
.hero-subtitle { margin: 22px 0 0; color: #fff7ec; font-family: Georgia, "Times New Roman", serif; font-size: clamp(19px, 1.65vw, 32px); }
.hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 34px; }
.button { min-height: 58px; display: inline-flex; align-items: center; justify-content: space-between; gap: 34px; padding: 0 24px; border: 1px solid rgba(255,255,255,.62); color: white; background: rgba(10,22,34,.28); backdrop-filter: blur(9px); font-size: 13px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; transition: transform .22s ease, background .22s ease, color .22s ease, border-color .22s ease; }
.button span { font-size: 20px; font-weight: 400; }
.button:hover { transform: translateY(-2px); border-color: white; background: rgba(255,255,255,.13); }
.button-light { color: #121a22; border-color: var(--paper); background: var(--paper); }
.button-light:hover { color: #111; background: white; }
.button-dark { color: white; border-color: #14263a; background: #0b1c2c; }
.button-dark:hover { background: #193652; }

.lia-signature { position: absolute; z-index: 2; left: 51%; top: 16%; color: rgba(246,238,225,.38); font-family: "Brush Script MT", "Segoe Script", cursive; font-size: clamp(42px, 4vw, 82px); font-weight: 300; transform: rotate(-8deg); }
.billboard-screen { position: absolute; z-index: 4; left: 51.2%; top: 17.1%; width: 35.8%; height: 50.8%; overflow: hidden; padding: 0; border: 0; clip-path: none; cursor: pointer; color: white; background: transparent; }
.billboard-media { position: absolute; inset: 0; display: block; overflow: hidden; }
.billboard-wash { position: absolute; inset: 0; background: radial-gradient(circle at 55% 48%, rgba(43,74,106,.24), transparent 38%), linear-gradient(145deg, rgba(17,36,55,.03), rgba(3,17,29,.27)); transition: background .3s ease; }
.billboard-screen:hover .billboard-wash { background: radial-gradient(circle at 50% 43%, rgba(88,143,190,.36), transparent 38%), linear-gradient(145deg, rgba(17,36,55,.02), rgba(3,17,29,.28)); }
.play-ring { position: absolute; left: 50%; top: 49%; width: clamp(62px, 5.4vw, 104px); height: clamp(62px, 5.4vw, 104px); display: grid; place-items: center; border: 1px solid rgba(255,255,255,.82); border-radius: 50%; transform: translate(-50%, -50%) skewY(-8deg); background: rgba(255,255,255,.07); box-shadow: 0 0 0 0 rgba(255,255,255,.18); transition: transform .25s ease, box-shadow .25s ease; backdrop-filter: blur(3px); }
.play-ring span { margin-left: 5px; font-size: clamp(18px, 1.5vw, 28px); transform: skewY(8deg); }
.billboard-screen:hover .play-ring { transform: translate(-50%, -50%) skewY(-8deg) scale(1.08); box-shadow: 0 0 0 14px rgba(255,255,255,.08); }
.film-label { position: absolute; left: 8%; bottom: 10%; text-align: left; font-size: clamp(8px, .6vw, 12px); letter-spacing: .22em; line-height: 1.7; transform: skewY(-7deg); }
.film-label b { color: var(--warm); }
.billboard-name { position: absolute; z-index: 3; left: 66%; top: 66%; color: #fff6e9; font-family: var(--display); font-size: clamp(14px, 1.6vw, 31px); font-weight: 500; letter-spacing: .12em; transform: rotate(-4deg); text-shadow: 0 2px 7px #000; }
.edge-copy { position: absolute; z-index: 4; color: rgba(255,255,255,.72); font-size: 9px; font-weight: 700; letter-spacing: .42em; line-height: 1.7; }
.edge-top { top: 43px; right: 4.5vw; }
.edge-bottom { right: 4.5vw; bottom: 34px; }
.scroll-cue { position: absolute; z-index: 5; left: 5vw; bottom: 29px; display: flex; align-items: center; gap: 13px; color: rgba(255,255,255,.65); font-size: 9px; font-weight: 700; letter-spacing: .28em; }
.scroll-cue span { width: 1px; height: 38px; display: block; background: rgba(255,255,255,.55); }

.home-page main { background: url("assets/lia-billboard-hero-v2.webp") center top / 100% auto no-repeat; }
.path-strip { display: grid; grid-template-columns: repeat(3, 1fr); background: transparent; border-top: 1px solid rgba(255,255,255,.22); }
.path-strip a { min-height: 190px; position: relative; display: grid; align-content: end; padding: 30px clamp(22px, 3vw, 54px); border-right: 1px solid rgba(255,255,255,.14); background: rgba(7,17,28,.70); transition: color .25s ease, background .25s ease; }
.path-strip a:last-child { border-right: 0; }
.path-strip span { position: absolute; top: 26px; color: var(--warm); font-family: ui-monospace, monospace; font-size: 11px; letter-spacing: .18em; }
.path-strip strong { font-family: Georgia, serif; font-size: clamp(24px, 2.1vw, 38px); font-weight: 400; line-height: 1.1; }
.path-strip em { margin-top: 9px; color: var(--muted); font-size: 13px; font-style: normal; }
.path-strip b { position: absolute; right: 30px; top: 24px; font-size: 23px; font-weight: 300; }
.path-strip a:hover { color: var(--night); background: var(--paper); }
.path-strip a:hover em, .path-strip a:hover span { color: #5b4a3c; }

.film-dialog { width: min(880px, calc(100vw - 30px)); padding: 0; border: 1px solid rgba(255,255,255,.22); color: white; background: #071421; box-shadow: 0 30px 100px rgba(0,0,0,.7); }
.film-dialog::backdrop { background: rgba(2,7,13,.82); backdrop-filter: blur(10px); }
.dialog-close { position: absolute; z-index: 2; right: 15px; top: 12px; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.26); border-radius: 50%; color: white; background: transparent; font-size: 26px; cursor: pointer; }
.film-stage { min-height: 490px; display: flex; flex-direction: column; justify-content: end; position: relative; overflow: hidden; padding: 54px; background: radial-gradient(circle at 70% 20%, #214e74, transparent 46%), linear-gradient(150deg, #071421, #122d42); }
.film-stage--video { min-height: 0; display: block; padding: 0; background: #02070d; }
.film-video { width: 100%; max-height: 76vh; display: block; background: #000; }
.film-video-caption { padding: 25px 30px 28px; background: #071421; }
.film-video-caption h2 { margin: 7px 0 0; font-family: var(--display); font-size: clamp(34px, 5vw, 66px); letter-spacing: -.04em; line-height: .86; }
.film-stage h2 { margin: 0; font-family: var(--display); font-size: clamp(48px, 8vw, 94px); letter-spacing: -.04em; line-height: .86; }
.film-stage > p:not(.overline) { max-width: 550px; color: #bac7d2; }
.film-count { position: absolute; top: 25px; left: 30px; color: var(--warm); font-family: ui-monospace, monospace; letter-spacing: .2em; }
.film-pulse { position: absolute; right: 12%; top: 16%; width: 190px; height: 190px; border: 1px solid rgba(174,210,244,.45); border-radius: 50%; box-shadow: 0 0 90px rgba(88,165,232,.25), inset 0 0 55px rgba(88,165,232,.13); }
.film-timeline { height: 1px; margin-top: 30px; background: rgba(255,255,255,.2); }
.film-timeline span { width: 11%; height: 1px; display: block; background: var(--warm); }

/* Internal pages */
.inner-page { background: #eef0ee; color: var(--ink); }
.inner-page .site-header { background: rgba(238,240,238,.9); border-bottom: 1px solid rgba(7,20,33,.12); backdrop-filter: blur(14px); }
.inner-page .site-logo img { filter: drop-shadow(0 2px 5px rgba(0,0,0,.12)); }
.inner-page .site-nav a { color: rgba(7,20,33,.62); }
.inner-page .site-nav a:hover, .inner-page .site-nav a[aria-current="page"] { color: var(--night); }
.inner-page .site-nav a[href="brands.html"] { color: white; background: var(--night); }
.inner-page .site-nav a[href="publishers.html"] { color: var(--night); border-color: rgba(7,20,33,.45); }
.page-main { padding-top: 88px; }
.page-hero { min-height: 620px; display: grid; grid-template-columns: 1.1fr .9fr; border-bottom: 1px solid rgba(7,20,33,.16); }
.page-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(70px, 9vw, 150px) clamp(28px, 7vw, 120px); }
.page-number { color: #b74c2c; font-family: ui-monospace, monospace; font-size: 11px; font-weight: 700; letter-spacing: .22em; }
.page-hero h1 { margin: 22px 0; font-family: var(--display); font-size: clamp(64px, 8vw, 138px); font-weight: 900; letter-spacing: -.055em; line-height: .82; text-transform: uppercase; }
.page-hero h1 em { color: #d35f3a; font-style: normal; }
.page-lead { max-width: 630px; margin: 0; color: #52606b; font-family: Georgia, serif; font-size: clamp(19px, 1.55vw, 27px); line-height: 1.45; }
.page-hero-art { position: relative; overflow: hidden; background: var(--night) url("assets/lia-billboard-hero-v2.webp") 72% center/auto 100% no-repeat; }
.page-hero-art::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 45%, rgba(232,111,69,.12)); }
.page-hero-art::after { content: attr(data-word); position: absolute; left: 10%; bottom: 8%; color: white; font-family: var(--display); font-size: clamp(52px, 8vw, 132px); font-weight: 900; letter-spacing: -.04em; line-height: .8; writing-mode: vertical-rl; transform: rotate(180deg); opacity: .92; }
.page-hero-art--what { background: #c9d2e5 url("assets/lia-what-is-living-ad.webp") center/cover no-repeat; }
.page-hero-art--privacy { background: #dce2ef url("assets/lia-privacy-wide.webp") center/cover no-repeat; }
.page-hero-art--about { background: #dce2ef url("assets/lia-who-we-are.webp") center/cover no-repeat; }
.page-hero-art--what::before,
.page-hero-art--privacy::before,
.page-hero-art--about::before { background: linear-gradient(135deg, rgba(7,20,33,.04), transparent 52%); }
.content-band { padding: clamp(80px, 10vw, 160px) clamp(28px, 7vw, 120px); border-bottom: 1px solid rgba(7,20,33,.15); }
.content-band.dark { color: white; background: var(--night); }
.content-band.sunset { color: #160e09; background: #df744f; }
.content-head { display: grid; grid-template-columns: .55fr 1.45fr; gap: 50px; align-items: start; margin-bottom: 72px; }
.kicker { color: #b74c2c; font: 700 11px ui-monospace, monospace; letter-spacing: .23em; text-transform: uppercase; }
.dark .kicker { color: var(--warm); }
.content-head h2 { max-width: 930px; margin: 0; font-family: Georgia, serif; font-size: clamp(38px, 5vw, 82px); font-weight: 400; letter-spacing: -.04em; line-height: 1.02; }
.statement { max-width: 1120px; margin: 0 auto; font-family: var(--display); font-size: clamp(48px, 7.5vw, 130px); font-weight: 900; letter-spacing: -.055em; line-height: .84; text-transform: uppercase; }
.statement .strike { color: #74808a; text-decoration: line-through 5px #dc734e; }
.story-lines { border-top: 1px solid currentColor; }
.story-line { min-height: 200px; display: grid; grid-template-columns: 140px 1fr 1fr; gap: 40px; align-items: center; border-bottom: 1px solid currentColor; }
.story-line > span { color: #d35f3a; font-family: var(--display); font-size: 72px; font-weight: 900; }
.story-line h3 { margin: 0; font-family: Georgia, serif; font-size: clamp(28px, 3vw, 48px); font-weight: 400; }
.story-line p { max-width: 520px; color: #5a6873; font-size: 17px; }
.dark .story-line p { color: #aebbc5; }
.quote-ribbon { display: grid; grid-template-columns: 1fr 1fr; }
.quote-ribbon > div { min-height: 390px; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(35px, 5vw, 80px); }
.quote-ribbon > div:first-child { color: #d8e0e6; background: #15212c; }
.quote-ribbon > div:last-child { color: #101a22; background: var(--paper); }
.quote-ribbon small { letter-spacing: .2em; }
.quote-ribbon strong { font-family: Georgia, serif; font-size: clamp(38px, 4.5vw, 76px); font-weight: 400; line-height: 1.05; }

/* Forms */
.form-page { background: #f5f1e9; }
.form-shell { display: grid; grid-template-columns: minmax(250px, .62fr) minmax(0, 1.38fr); min-height: calc(100svh - 88px); }
.form-aside { position: sticky; top: 88px; height: calc(100svh - 88px); overflow: hidden; padding: clamp(36px, 5vw, 80px); color: white; background: var(--night); }
.form-aside::before { content: ""; position: absolute; inset: 0; opacity: .28; background: url("assets/lia-billboard-hero-v2.webp") 30% center/auto 100% no-repeat; }
.form-aside > * { position: relative; z-index: 1; }
.form-aside h1 { margin: 30px 0; font-family: var(--display); font-size: clamp(56px, 6vw, 102px); font-weight: 900; letter-spacing: -.05em; line-height: .83; }
.form-aside p { max-width: 420px; color: #bac7d3; font-family: Georgia, serif; font-size: 20px; }
.form-aside .aside-mark { position: absolute; right: 30px; bottom: 28px; color: var(--warm); font: 11px ui-monospace, monospace; letter-spacing: .2em; }
.wizard { padding: clamp(42px, 6vw, 95px) clamp(28px, 7vw, 120px); color: var(--ink); }
.wizard-head { margin-bottom: 55px; }
.step-list { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 18px; color: #8b949a; font: 700 10px ui-monospace, monospace; letter-spacing: .14em; }
.step-list span { white-space: nowrap; }
.step-list .active, .step-list .done { color: var(--ink); }
.step-progress { --progress: 25%; height: 2px; background: #ccd1d2; }
.step-progress::before { content: ""; width: var(--progress); height: 100%; display: block; background: #d35f3a; transition: width .35s ease; }
.form-step { max-width: 790px; }
.form-step h2 { margin: 0 0 13px; font-family: Georgia, serif; font-size: clamp(38px, 4.5vw, 66px); font-weight: 400; letter-spacing: -.035em; line-height: 1; }
.form-step > p { max-width: 620px; margin: 0 0 42px; color: #68747c; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.field { display: block; color: #33404a; font-size: 13px; font-weight: 700; }
.field.full { grid-column: 1 / -1; }
.field input, .field textarea, .field select { width: 100%; margin-top: 9px; padding: 16px 0; border: 0; border-bottom: 1px solid #9fa9ae; border-radius: 0; outline: 0; color: var(--ink); background: transparent; font-size: 17px; font-weight: 400; }
.field textarea { min-height: 105px; resize: vertical; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: #d35f3a; box-shadow: 0 1px 0 #d35f3a; }
.field small { display: block; margin-top: 8px; color: #7f8a91; font-weight: 400; }
.choice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.choice-card { min-height: 210px; display: flex; flex-direction: column; justify-content: space-between; position: relative; padding: 24px; border: 1px solid #aeb7ba; cursor: pointer; transition: background .2s ease, border-color .2s ease, color .2s ease; }
.choice-card input { position: absolute; opacity: 0; }
.choice-card:has(input:checked) { color: white; border-color: var(--night); background: var(--night); }
.choice-number { color: #d35f3a; font: 700 11px ui-monospace, monospace; letter-spacing: .15em; }
.choice-card:has(input:checked) .choice-number { color: var(--warm); }
.choice-card strong { font-family: Georgia, serif; font-size: 25px; font-weight: 400; line-height: 1.1; }
.choice-card small { color: #728087; line-height: 1.45; }
.choice-card:has(input:checked) small { color: #aebbc5; }
.conditional { margin-top: 30px; padding: 28px; border-left: 4px solid #d35f3a; background: #ebe7df; }
.file-drop { display: grid; place-items: center; min-height: 170px; position: relative; margin-top: 10px; border: 1px dashed #8f9ca3; text-align: center; cursor: pointer; }
.file-drop input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.file-drop span { font-family: Georgia, serif; font-size: 19px; }
.file-drop .has-file { color: #b74c2c; }
.checkbox-line { display: flex; gap: 12px; align-items: flex-start; margin: 24px 0; color: #46535c; font-size: 14px; }
.checkbox-line input { width: 18px; height: 18px; margin-top: 2px; accent-color: #d35f3a; }
.form-actions { display: flex; justify-content: space-between; gap: 14px; margin-top: 45px; }
.text-button { border: 0; color: #56636b; background: transparent; cursor: pointer; }
.success-panel { max-width: 760px; padding: 70px 0; outline: 0; }
.success-panel .success-icon { width: 80px; height: 80px; display: grid; place-items: center; border: 1px solid #d35f3a; border-radius: 50%; color: #d35f3a; font-size: 32px; }
.success-panel h2 { margin: 30px 0 18px; font-family: Georgia, serif; font-size: clamp(44px, 6vw, 78px); font-weight: 400; line-height: 1; }
.success-panel p { max-width: 590px; color: #68747c; font-size: 17px; }

/* Privacy demo */
.consent-demo { display: grid; grid-template-columns: .8fr 1.2fr; min-height: 680px; }
.consent-modes { display: grid; }
.consent-modes button { display: grid; grid-template-columns: 50px 1fr auto; align-items: center; gap: 15px; padding: 25px 34px; border: 0; border-bottom: 1px solid rgba(255,255,255,.15); color: #9eabb5; background: #101d28; text-align: left; cursor: pointer; transition: .2s ease; }
.consent-modes button:last-child { border-bottom: 0; }
.consent-modes button.active { color: white; background: #d35f3a; }
.consent-modes .mode-no { font-family: var(--display); font-size: 28px; }
.consent-modes strong { font-family: Georgia, serif; font-size: 22px; font-weight: 400; }
.consent-modes i { width: 10px; height: 10px; border: 1px solid currentColor; border-radius: 50%; }
.consent-modes button.active i { background: white; }
.consent-output { display: flex; flex-direction: column; justify-content: center; padding: clamp(45px, 8vw, 120px); background: var(--paper); }
.consent-output h2 { margin: 20px 0; font-family: var(--display); font-size: clamp(52px, 6vw, 96px); letter-spacing: -.04em; line-height: .88; text-transform: uppercase; }
.consent-output > p { max-width: 640px; color: #57636a; font-family: Georgia, serif; font-size: 20px; }
.signal-row { display: flex; gap: 12px; margin-top: 42px; }
.signal { min-width: 150px; padding: 15px; border: 1px solid #aab3b6; font: 700 11px ui-monospace, monospace; letter-spacing: .13em; }
.signal b { float: right; color: #8e979c; }
.signal b.on { color: #d35f3a; }

/* Footer + contact */
.site-footer { display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: end; padding: 60px clamp(28px, 7vw, 120px); color: #a7b3bd; background: #06111c; }
.site-footer img { width: 150px; }
.footer-links { display: flex; gap: 24px; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }
.site-footer small { grid-column: 1 / -1; color: #65747f; }
.contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; min-height: calc(100svh - 88px); }
.contact-message { padding: clamp(60px, 9vw, 150px) clamp(28px, 7vw, 120px); color: white; background: #d76542; }
.contact-message h1 { margin: 25px 0; font-family: var(--display); font-size: clamp(70px, 9vw, 150px); letter-spacing: -.055em; line-height: .82; }
.contact-message p { max-width: 500px; font-family: Georgia, serif; font-size: 21px; }
.contact-form { display: flex; align-items: center; padding: clamp(50px, 8vw, 120px); }
.contact-form form { width: min(680px, 100%); }
.simple-success { padding: 45px; border: 1px solid #9ba7ab; }

@media (max-width: 1050px) {
  .site-nav { gap: 15px; }
  .site-nav a { font-size: 10px; }
  .hero-copy { width: 45vw; }
  .page-hero { grid-template-columns: 1fr .65fr; }
  .form-shell { grid-template-columns: .52fr 1.48fr; }
  .choice-grid { grid-template-columns: 1fr; }
  .choice-card { min-height: 150px; }
}

@media (max-width: 780px) {
  .site-header { height: 76px; padding: 0 20px; }
  .site-logo { width: 112px; height: 62px; }
  .site-logo img { width: 100px; height: 58px; }
  .menu-toggle { display: block; position: relative; z-index: 2; }
  .site-nav { position: fixed; inset: 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 23px; padding: 90px 34px; background: rgba(6,17,28,.98); transform: translateX(100%); transition: transform .28s ease; }
  .site-nav a { color: white !important; font-family: Georgia, serif; font-size: 28px; font-weight: 400; letter-spacing: -.02em; text-transform: none; }
  .site-nav a[href="brands.html"], .site-nav a[href="publishers.html"] { width: 100%; padding: 13px 16px; border: 1px solid rgba(255,255,255,.45); color: white !important; background: transparent; }
  .menu-open .site-nav { transform: translateX(0); }
  .menu-open .menu-toggle { color: white; }
  .menu-open .menu-toggle span:first-child { transform: translateY(4px) rotate(45deg); }
  .menu-open .menu-toggle span:last-child { transform: translateY(-4px) rotate(-45deg); }

  .cinema-hero { min-height: 880px; }
  .scene-stage { left: 58%; top: 34%; width: 1120px; height: 630px; transform: translate(-50%, -50%); }
  .scene-shade { background: linear-gradient(180deg, rgba(3,10,18,.13), rgba(3,10,18,.18) 38%, rgba(3,10,18,.96) 67%); }
  .hero-copy { left: 24px; right: 24px; top: auto; bottom: 88px; width: auto; transform: none; }
  .hero-copy .overline { display: none; }
  .hero-copy h1 { font-size: clamp(57px, 17vw, 82px); line-height: .84; }
  .hero-subtitle { margin-top: 15px; font-size: 19px; }
  .hero-actions { margin-top: 25px; }
  .button { min-height: 54px; width: 100%; }
  .lia-signature { display: none; }
  .billboard-screen { left: 51.2%; top: 17.1%; width: 35.8%; height: 50.8%; }
  .billboard-name { font-size: 19px; }
  .film-label { font-size: 8px; }
  .edge-copy, .scroll-cue { display: none; }
  .path-strip { grid-template-columns: 1fr; }
  .path-strip a { min-height: 155px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }

  .page-main { padding-top: 76px; }
  .page-hero { min-height: auto; grid-template-columns: 1fr; }
  .page-hero-copy { min-height: 620px; padding-top: 100px; }
  .page-hero-art { min-height: 330px; background-position: 68% center; }
  .page-hero-art--what { min-height: 420px; background-position: center; }
  .page-hero-art--privacy { min-height: 640px; background-position: center; }
  .page-hero-art--about { min-height: 420px; background-position: center; }
  .content-head { grid-template-columns: 1fr; margin-bottom: 45px; }
  .story-line { grid-template-columns: 70px 1fr; gap: 20px; padding: 30px 0; }
  .story-line > span { font-size: 48px; }
  .story-line p { grid-column: 2; margin: 0; }
  .quote-ribbon { grid-template-columns: 1fr; }
  .quote-ribbon > div { min-height: 300px; }

  .form-shell { grid-template-columns: 1fr; }
  .form-aside { position: relative; top: 0; height: auto; min-height: 560px; }
  .wizard { padding-top: 65px; }
  .step-list { overflow-x: auto; padding-bottom: 5px; }
  .field-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .form-actions { flex-direction: column-reverse; }
  .consent-demo, .contact-layout { grid-template-columns: 1fr; }
  .consent-modes button { padding: 22px; }
  .consent-output { min-height: 520px; }
  .signal-row { flex-direction: column; }
  .site-footer { grid-template-columns: 1fr; }
  .footer-links { flex-wrap: wrap; }
  .film-stage { min-height: 530px; padding: 35px 25px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
