:root {
  --paper: #F5F3ED;
  --paper-bright: #FBFAF7;
  --white: #FFFFFF;
  --warm: #E9DCD6;
  --wheat: #D9C08D;
  --taupe: #857A7A;
  --coral: #E76F51;
  --coral-dark: #CC5A40;
  --wine: #431C1C;
  --wine-dark: #281010;
  --ink: #211B1B;
  --muted: #6F6666;
  --line: rgba(67, 28, 28, .11);
  --line-strong: rgba(67, 28, 28, .19);
  --line-dark: rgba(67, 28, 28, .27);
  --success: #2F8A57;
  --shadow-sm: 0 1px 2px rgba(43, 25, 25, .04), 0 7px 22px rgba(43, 25, 25, .05);
  --shadow-md: 0 1px 2px rgba(43, 25, 25, .05), 0 18px 44px rgba(43, 25, 25, .08);
  --shadow-lg: 0 2px 4px rgba(43, 25, 25, .04), 0 34px 90px rgba(43, 25, 25, .12);
  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius: 12px;
  --radius-lg: 18px;
  --shell: 1200px;
  --pad: clamp(20px, 4vw, 48px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 84px; }
body {
  margin: 0;
  overflow-x: clip;
  color: var(--ink);
  background: var(--paper-bright);
  font-family: "Satoshi", Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { color: inherit; }
img, svg, video { display: block; max-width: 100%; }
::selection { color: var(--white); background: var(--wine); }

.section-shell { width: min(var(--shell), calc(100% - (var(--pad) * 2))); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; top: 10px; left: 10px; transform: translateY(-150%); padding: 10px 14px; color: var(--white); background: var(--wine); border-radius: var(--radius-sm); }
.skip-link:focus { transform: translateY(0); }

/* Header */
.site-header {
  position: sticky;
  z-index: 100;
  top: 0;
  height: 70px;
  background: rgba(251, 250, 247, .86);
  border-bottom: 1px solid transparent;
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.site-header.is-scrolled { background: rgba(251, 250, 247, .96); border-color: var(--line); box-shadow: 0 8px 30px rgba(43, 25, 25, .035); }
.nav-shell {
  width: min(1280px, calc(100% - (var(--pad) * 2)));
  height: 70px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 28px;
  margin-inline: auto;
}
.wordmark { display: inline-flex; align-items: center; gap: 9px; width: max-content; font-size: 15px; font-weight: 700; letter-spacing: -.035em; }
.wordmark i { color: var(--coral); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.brand-mark { width: 27px; height: 27px; fill: none; stroke: var(--wine); stroke-width: 1.5; }
.desktop-nav { height: 100%; display: flex; align-items: center; gap: 4px; }
.nav-group { position: relative; height: 100%; display: flex; align-items: center; }
.nav-trigger, .nav-link {
  height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 10px;
  color: var(--muted);
  background: transparent;
  border: 0;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: color .16s ease, background .16s ease;
}
.nav-trigger:hover, .nav-trigger[aria-expanded="true"], .nav-link:hover { color: var(--wine); background: rgba(67, 28, 28, .045); }
.nav-trigger svg { width: 12px; fill: none; stroke: currentColor; stroke-width: 1.4; transition: transform .18s ease; }
.nav-trigger[aria-expanded="true"] svg { transform: rotate(180deg); }
.nav-actions { display: flex; align-items: center; justify-content: flex-end; gap: 16px; }
.nav-contact { color: var(--muted); font-size: 13px; font-weight: 500; transition: color .16s ease; }
.nav-contact:hover { color: var(--wine); }
.menu-toggle { display: none; }
.mobile-nav { display: none; }

.mega-menu {
  position: absolute;
  top: calc(100% - 2px);
  left: 50%;
  width: 780px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 235px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 8px);
  background: var(--white);
  border: 1px solid var(--line-strong);
  border-radius: 14px;
  box-shadow: var(--shadow-lg);
  transition: opacity .16s ease, visibility .16s ease, transform .16s ease;
  pointer-events: none;
}
.nav-group.is-open .mega-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); pointer-events: auto; }
.mega-menu-resources { width: 700px; }
.mega-main { padding: 24px; }
.mega-label { margin: 0 0 14px; color: var(--taupe); font-size: 10px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.mega-card-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.mega-card { display: grid; grid-template-columns: 38px 1fr; gap: 11px; padding: 11px; border-radius: 9px; transition: background .15s ease; }
.mega-card:hover { background: var(--paper); }
.menu-icon { width: 38px; height: 38px; display: grid; place-items: center; color: var(--wine); background: var(--paper); border: 1px solid var(--line); border-radius: 9px; }
.menu-icon svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.mega-card b, .mega-card small { display: block; }
.mega-card b { margin: 1px 0 3px; color: var(--wine); font-size: 13px; font-weight: 600; letter-spacing: -.015em; }
.mega-card small { color: var(--taupe); font-size: 11px; line-height: 1.4; }
.mega-aside { display: flex; flex-direction: column; justify-content: flex-end; padding: 24px; color: var(--white); background: var(--wine); }
.mega-aside-wheat { color: var(--wine); background: var(--wheat); }
.mega-aside-warm { color: var(--wine); background: var(--warm); }
.aside-kicker { margin-bottom: auto; color: inherit; opacity: .65; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.mega-aside b { margin: 36px 0 8px; font-size: 17px; line-height: 1.15; letter-spacing: -.03em; }
.mega-aside p { margin: 0 0 18px; color: inherit; opacity: .72; font-size: 11px; line-height: 1.5; }
.mega-aside a { display: flex; align-items: center; justify-content: space-between; padding-top: 14px; border-top: 1px solid currentColor; font-size: 11px; font-weight: 600; }
.solution-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.solution-grid a { min-height: 150px; display: flex; flex-direction: column; padding: 15px; background: var(--paper-bright); border: 1px solid var(--line); border-radius: 10px; transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.solution-grid a:hover { transform: translateY(-2px); border-color: var(--line-dark); box-shadow: var(--shadow-sm); }
.solution-grid span { color: var(--coral); font-size: 10px; font-weight: 700; }
.solution-grid b { margin: auto 0 6px; color: var(--wine); font-size: 18px; letter-spacing: -.03em; }
.solution-grid small { color: var(--taupe); font-size: 11px; line-height: 1.4; }
.resource-list { padding: 14px; }
.resource-list > a { display: grid; grid-template-columns: 30px 1fr 20px; align-items: center; gap: 10px; padding: 14px 12px; border-radius: 9px; transition: background .15s ease; }
.resource-list > a:hover { background: var(--paper); }
.resource-number { width: 28px; height: 28px; display: grid; place-items: center; color: var(--wine); background: var(--white); border: 1px solid var(--line); border-radius: 7px; font-size: 9px; font-weight: 700; }
.resource-list b, .resource-list small { display: block; }
.resource-list b { color: var(--wine); font-size: 13px; font-weight: 600; }
.resource-list small { margin-top: 2px; color: var(--taupe); font-size: 11px; }
.resource-list i { color: var(--coral); font-style: normal; }

.button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 18px; border: 1px solid transparent; border-radius: var(--radius-sm); font-size: 13px; font-weight: 600; line-height: 1; transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease; }
.button:hover { transform: translateY(-1px); }
.button-small { min-height: 36px; padding-inline: 14px; font-size: 12px; }
.button-wine { color: var(--white); background: var(--wine); box-shadow: 0 1px 2px rgba(0,0,0,.14); }
.button-wine:hover { background: var(--wine-dark); box-shadow: 0 8px 22px rgba(67,28,28,.16); }
.button-coral { color: var(--white); background: var(--coral); box-shadow: 0 1px 2px rgba(0,0,0,.1); }
.button-coral:hover { background: var(--coral-dark); box-shadow: 0 8px 22px rgba(231,111,81,.2); }
.button-ghost { color: var(--wine); background: var(--white); border-color: var(--line-strong); box-shadow: 0 1px 2px rgba(43,25,25,.03); }
.button-ghost:hover { border-color: var(--line-dark); box-shadow: var(--shadow-sm); }
.play-ring { width: 20px; height: 20px; display: grid; place-items: center; padding-left: 1px; color: var(--wine); background: var(--paper); border-radius: 50%; font-size: 7px; }

/* Hero */
.hero { position: relative; padding: clamp(76px, 8vw, 112px) 0 0; overflow: hidden; }
.hero-grid { position: absolute; inset: 0 0 auto; height: 720px; background-image: linear-gradient(rgba(67,28,28,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(67,28,28,.045) 1px, transparent 1px), radial-gradient(circle at 50% 12%, rgba(217,192,141,.34), transparent 38%), radial-gradient(circle at 22% 28%, rgba(233,220,214,.54), transparent 26%), radial-gradient(circle at 78% 30%, rgba(231,111,81,.075), transparent 25%); background-size: 48px 48px, 48px 48px, auto, auto, auto; -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 68%, transparent 100%); mask-image: linear-gradient(to bottom, #000 0%, #000 68%, transparent 100%); pointer-events: none; }
.hero-copy { position: relative; z-index: 1; max-width: 900px; text-align: center; }
.announcement-pill { width: max-content; max-width: 100%; display: inline-flex; align-items: center; gap: 8px; margin-bottom: 28px; padding: 5px 7px 5px 9px; color: var(--taupe); background: rgba(255,255,255,.76); border: 1px solid var(--line); border-radius: 999px; box-shadow: 0 1px 2px rgba(43,25,25,.03); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); font-size: 10px; }
.announcement-pill b { color: var(--wine); font-weight: 600; }
.announcement-pill > span:nth-of-type(2) { padding: 4px 7px; color: var(--wine); background: var(--paper); border: 1px solid var(--line); border-radius: 999px; font-weight: 600; }
.announcement-pill svg { width: 12px; fill: none; stroke: var(--wine); stroke-width: 1.4; }
.announcement-dot { width: 6px; height: 6px; background: var(--coral); border-radius: 50%; box-shadow: 0 0 0 3px rgba(231,111,81,.12); }
.hero h1 { max-width: 820px; margin: 0 auto; color: var(--wine); font-size: clamp(54px, 6.5vw, 82px); font-weight: 650; line-height: .98; letter-spacing: -.067em; }
.hero h1 span { color: var(--coral); }
.hero-copy > p { max-width: 690px; margin: 24px auto 28px; color: var(--taupe); font-size: clamp(17px, 1.7vw, 20px); line-height: 1.55; letter-spacing: -.02em; }
.hero-actions { display: flex; justify-content: center; gap: 10px; }
.product-switcher { position: relative; z-index: 2; max-width: 470px; display: grid; grid-template-columns: repeat(3, 1fr); margin-top: clamp(56px, 7vw, 82px); padding: 5px; background: rgba(255,255,255,.86); border: 1px solid var(--line); border-radius: 12px 12px 0 0; box-shadow: 0 8px 30px rgba(43,25,25,.055); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.product-switcher button { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; color: var(--taupe); background: transparent; border: 0; border-radius: 8px; font-size: 11px; font-weight: 600; cursor: pointer; transition: color .15s ease, background .15s ease, box-shadow .15s ease; }
.product-switcher button[aria-selected="true"] { color: var(--wine); background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); }
.switcher-icon { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 6px; }
.switcher-icon svg { width: 16px; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.product-stage-wrap { position: relative; z-index: 1; }
.product-stage-wrap::before { content: ""; position: absolute; inset: -80px -90px 20%; z-index: -1; background: radial-gradient(circle at 50% 10%, rgba(217,192,141,.5), transparent 55%), linear-gradient(180deg, rgba(233,220,214,.48), rgba(245,243,237,.1)); border: 1px solid rgba(67,28,28,.055); border-radius: 42px; }
.product-stage { position: relative; overflow: visible; background: var(--white); border: 1px solid var(--line-strong); border-radius: 14px; box-shadow: var(--shadow-lg); }
.stage-titlebar { min-height: 54px; display: flex; align-items: center; justify-content: space-between; padding: 0 14px; background: var(--white); border-bottom: 1px solid var(--line); border-radius: 14px 14px 0 0; }
.stage-brand { display: flex; align-items: center; gap: 9px; }
.stage-logo, .visual-mark { width: 28px; height: 28px; display: grid; place-items: center; color: var(--white); background: var(--wine); border-radius: 8px; font-size: 11px; font-weight: 700; }
.stage-brand b, .stage-brand small { display: block; }
.stage-brand b { color: var(--wine); font-size: 11px; }
.stage-brand small { color: var(--taupe); font-size: 8px; }
.stage-title-actions { display: flex; align-items: center; gap: 9px; }
.stage-title-actions button { width: 30px; height: 30px; display: grid; place-items: center; color: var(--taupe); background: transparent; border: 1px solid var(--line); border-radius: 8px; }
.stage-title-actions button svg { width: 16px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.stage-avatar { width: 30px; height: 30px; display: grid; place-items: center; color: var(--wine); background: var(--wheat); border: 1px solid rgba(67,28,28,.1); border-radius: 50%; font-size: 9px; font-weight: 700; }
.stage-body { display: grid; grid-template-columns: 184px minmax(0, 1fr); min-height: 625px; }
.stage-sidebar { display: flex; flex-direction: column; padding: 18px 12px 12px; background: #FCFBF8; border-right: 1px solid var(--line); }
.sidebar-section { margin: 0 8px 9px; color: var(--taupe); font-size: 8px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.sidebar-space { margin-top: 22px; }
.stage-sidebar > a { min-height: 36px; display: flex; align-items: center; gap: 9px; padding: 0 9px; margin-bottom: 3px; color: var(--taupe); border-radius: 7px; font-size: 10px; font-weight: 500; }
.stage-sidebar > a.is-active { color: var(--wine); background: var(--warm); font-weight: 600; }
.stage-sidebar > a svg { width: 16px; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.sidebar-account { display: grid; grid-template-columns: 26px 1fr auto; align-items: center; gap: 8px; margin-top: auto; padding: 10px 8px 0; border-top: 1px solid var(--line); }
.stage-avatar-small { width: 26px; height: 26px; font-size: 8px; }
.sidebar-account b, .sidebar-account small { display: block; }
.sidebar-account b { color: var(--wine); font-size: 8px; }
.sidebar-account small { color: var(--taupe); font-size: 7px; }
.sidebar-account > span:last-child { color: var(--taupe); font-size: 8px; }
.stage-workspace { min-width: 0; padding: 26px; background: var(--paper-bright); }
.workspace-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.workspace-eyebrow { color: var(--coral); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.workspace-head h2 { margin: 5px 0 3px; color: var(--wine); font-size: 22px; font-weight: 600; line-height: 1.2; letter-spacing: -.04em; }
.workspace-head p { margin: 0; color: var(--taupe); font-size: 10px; }
.workspace-button { min-height: 34px; display: inline-flex; align-items: center; gap: 12px; padding: 0 11px; color: var(--white); background: var(--wine); border: 0; border-radius: 7px; font-size: 9px; font-weight: 600; }
.workspace-button span { font-size: 13px; font-weight: 400; }
.workspace-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 22px 0 13px; }
.workspace-metrics > div { padding: 13px; background: var(--white); border: 1px solid var(--line); border-radius: 9px; }
.workspace-metrics span, .workspace-metrics b, .workspace-metrics small { display: block; }
.workspace-metrics span { color: var(--taupe); font-size: 8px; font-weight: 600; }
.workspace-metrics b { margin: 6px 0 4px; color: var(--wine); font-size: 21px; font-weight: 600; line-height: 1; letter-spacing: -.04em; }
.workspace-metrics small { color: var(--taupe); font-size: 7px; }
.workspace-metrics small i { width: 5px; height: 5px; display: inline-block; margin-right: 4px; background: var(--coral); border-radius: 50%; }
.workspace-metrics .metric-positive { color: var(--success); }
.workspace-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(235px, .45fr); gap: 12px; }
.workspace-video, .workspace-insights { overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 10px; }
.workspace-video { position: relative; min-width: 0; }
.workspace-card-head { min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 0 13px; border-bottom: 1px solid var(--line); }
.workspace-card-head b, .workspace-card-head small { display: block; }
.workspace-card-head b { color: var(--wine); font-size: 9px; }
.workspace-card-head small { margin-top: 2px; color: var(--taupe); font-size: 7px; }
.workspace-status { display: inline-flex; align-items: center; gap: 5px; padding: 4px 6px; color: var(--success); background: #EEF7F1; border: 1px solid #D8EBDD; border-radius: 999px; font-size: 7px; font-weight: 700; }
.workspace-status i { width: 5px; height: 5px; background: var(--success); border-radius: 50%; }
.workspace-video video { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; background: var(--wine-dark); }
.video-control { position: absolute; right: 13px; bottom: 13px; min-height: 31px; display: inline-flex; align-items: center; gap: 7px; padding: 0 9px; color: var(--white); background: rgba(33,27,27,.78); border: 1px solid rgba(255,255,255,.14); border-radius: 999px; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); cursor: pointer; font-size: 8px; font-weight: 600; }
.play-icon { width: 0; height: 0; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 7px solid currentColor; }
.pause-icon { width: 8px; height: 9px; border-left: 2px solid currentColor; border-right: 2px solid currentColor; }
.workspace-insights { padding: 14px; }
.insight-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 11px; border-bottom: 1px solid var(--line); }
.insight-head span { color: var(--wine); font-size: 9px; font-weight: 600; }
.insight-head button { color: var(--taupe); background: transparent; border: 0; font-size: 8px; }
.decision-map { padding: 4px 0 11px; }
.map-row { display: grid; grid-template-columns: 23px 1fr auto; align-items: center; gap: 7px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.map-index { width: 22px; height: 22px; display: grid; place-items: center; color: var(--taupe); background: var(--paper); border-radius: 6px; font-size: 7px; font-weight: 700; }
.map-row b, .map-row small { display: block; }
.map-row b { color: var(--wine); font-size: 8px; }
.map-row small { margin-top: 1px; color: var(--taupe); font-size: 7px; line-height: 1.3; }
.map-strength { min-width: 27px; padding: 3px 4px; border-radius: 999px; font-size: 6px; font-style: normal; font-weight: 700; text-align: center; }
.map-strength.strong { color: var(--success); background: #EEF7F1; }
.map-strength.medium { color: #9A6D22; background: #FBF3E4; }
.angle-card { padding: 12px; background: var(--warm); border-radius: 8px; }
.angle-card > span { color: var(--taupe); font-size: 7px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.angle-card p { margin: 7px 0 10px; color: var(--wine); font-size: 9px; font-weight: 600; line-height: 1.45; }
.angle-card div { display: flex; flex-wrap: wrap; gap: 4px; }
.angle-card div span { padding: 3px 5px; color: var(--taupe); background: rgba(255,255,255,.65); border: 1px solid rgba(67,28,28,.08); border-radius: 5px; font-size: 6px; font-weight: 600; }
.stage-toast { position: absolute; right: 24px; bottom: -20px; width: 300px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 9px; padding: 10px 11px; background: var(--white); border: 1px solid var(--line-strong); border-radius: 10px; box-shadow: var(--shadow-md); }
.toast-icon { width: 26px; height: 26px; display: grid; place-items: center; color: var(--white); background: var(--success); border-radius: 7px; font-size: 11px; }
.stage-toast b, .stage-toast small { display: block; }
.stage-toast b { color: var(--wine); font-size: 8px; }
.stage-toast small { margin-top: 2px; color: var(--taupe); font-size: 7px; }
.stage-toast button { color: var(--taupe); background: transparent; border: 0; font-size: 13px; }
.market-strip { min-height: 116px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; padding-top: 26px; }
.market-strip p { margin: 0; color: var(--taupe); font-size: 10px; }
.market-strip p:last-child { text-align: right; }
.market-strip div { display: flex; align-items: center; gap: 16px; color: var(--wine); font-size: 12px; font-weight: 600; }
.market-strip i, .footer-regions i { width: 3px; height: 3px; background: var(--coral); border-radius: 50%; }

/* Shared typography */
.section-kicker { margin: 0 0 16px; color: var(--coral); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.section-heading { max-width: 760px; margin-bottom: 48px; }
.section-heading h2, .feature-copy h2, .outcome-copy h2, .film-intro h2, .principles-head h2, .faq-head h2, .brief-copy h2 { margin: 0; color: var(--wine); font-size: clamp(38px, 4.5vw, 56px); font-weight: 600; line-height: 1.04; letter-spacing: -.055em; }
.section-heading > p:last-child { max-width: 660px; margin: 19px 0 0; color: var(--taupe); font-size: 17px; }
.text-link { display: inline-flex; align-items: center; gap: 9px; padding-bottom: 4px; color: var(--wine); border-bottom: 1px solid var(--line-dark); font-size: 13px; font-weight: 600; }
.text-link:hover { border-color: var(--coral); }

/* Outcome */
.outcome-section { padding: clamp(100px, 11vw, 150px) 0; background: var(--paper); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.outcome-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 100px; align-items: end; }
.outcome-copy h2 span { color: var(--coral); }
.outcome-text p { margin: 0 0 16px; color: var(--taupe); font-size: 17px; line-height: 1.65; }
.outcome-text .text-link { margin-top: 10px; }
.outcome-demo { display: grid; grid-template-columns: 320px minmax(0, 1fr); min-height: 390px; margin-top: 72px; overflow: hidden; background: var(--white); border: 1px solid var(--line-strong); border-radius: 14px; box-shadow: var(--shadow-lg); }
.outcome-link-list { padding: 16px; background: #FCFBF8; border-right: 1px solid var(--line); }
.outcome-link-list > div { display: grid; grid-template-columns: 35px 1fr auto; align-items: center; gap: 10px; padding: 13px 10px; margin-bottom: 7px; background: var(--white); border: 1px solid var(--line); border-radius: 9px; }
.outcome-link-list > div:first-child { border-color: rgba(231,111,81,.28); box-shadow: 0 0 0 3px rgba(231,111,81,.06); }
.outcome-favicon { width: 34px; height: 34px; display: grid; place-items: center; color: var(--white); background: var(--wine); border-radius: 8px; font-size: 10px; font-weight: 700; }
.outcome-link-list b, .outcome-link-list small { display: block; }
.outcome-link-list b { color: var(--wine); font-size: 9px; }
.outcome-link-list small { margin-top: 2px; color: var(--taupe); font-size: 7px; }
.outcome-link-list em { color: var(--taupe); font-size: 7px; font-style: normal; }
.outcome-summary { padding: 24px; }
.summary-head { display: flex; align-items: center; justify-content: space-between; color: var(--wine); font-size: 10px; font-weight: 600; }
.summary-head span:last-child { color: var(--taupe); font-size: 8px; font-weight: 500; }
.summary-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin: 20px 0 26px; }
.summary-metrics div { padding: 13px; background: var(--paper-bright); border: 1px solid var(--line); border-radius: 8px; }
.summary-metrics span, .summary-metrics b { display: block; }
.summary-metrics span { color: var(--taupe); font-size: 8px; }
.summary-metrics b { margin-top: 5px; color: var(--wine); font-size: 20px; font-weight: 600; letter-spacing: -.04em; }
.outcome-summary svg { width: 100%; overflow: visible; }
.outcome-chart-grid { fill: none; stroke: var(--line); stroke-width: 1; }
.outcome-chart-area { fill: url(#outcomeArea); }
.outcome-chart-line { fill: none; stroke: var(--coral); stroke-width: 2; }

/* Services */
.services-overview { padding: clamp(100px, 11vw, 150px) 0; }
.service-rail { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line-strong); border-radius: 14px; background: var(--white); box-shadow: var(--shadow-sm); }
.service-rail article { min-height: 260px; display: flex; flex-direction: column; padding: 22px; border-right: 1px solid var(--line); transition: background .18s ease; }
.service-rail article:last-child { border-right: 0; }
.service-rail article:hover { background: var(--paper); }
.service-rail article > span { color: var(--coral); font-size: 10px; font-weight: 700; }
.service-rail article div { margin: auto 0 20px; }
.service-rail h3 { margin: 0 0 9px; color: var(--wine); font-size: 20px; font-weight: 600; line-height: 1.15; letter-spacing: -.035em; }
.service-rail p { margin: 0; color: var(--taupe); font-size: 13px; line-height: 1.55; }
.service-rail article > a { width: 32px; height: 32px; display: grid; place-items: center; color: var(--wine); background: var(--paper-bright); border: 1px solid var(--line); border-radius: 8px; font-size: 13px; transition: color .16s ease, background .16s ease; }
.service-rail article > a:hover { color: var(--white); background: var(--wine); }

/* Feature sections */
.feature-section, .measurement-section { padding: clamp(105px, 11vw, 150px) 0; background: var(--paper); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.feature-section-alt { background: var(--paper-bright); }
.feature-grid { display: grid; grid-template-columns: minmax(330px, .74fr) minmax(0, 1.26fr); align-items: center; gap: clamp(50px, 7vw, 92px); }
.feature-grid-reverse { grid-template-columns: minmax(0, 1.26fr) minmax(330px, .74fr); }
.feature-grid-reverse .feature-copy { grid-column: 2; grid-row: 1; }
.feature-grid-reverse .feature-visual { grid-column: 1; grid-row: 1; }
.feature-copy > p:not(.section-kicker) { margin: 22px 0; color: var(--taupe); font-size: 16px; line-height: 1.65; }
.feature-points { display: grid; gap: 16px; margin-top: 34px; }
.feature-points div { padding-top: 15px; border-top: 1px solid var(--line); }
.feature-points b, .feature-points span { display: block; }
.feature-points b { margin-bottom: 4px; color: var(--wine); font-size: 12px; }
.feature-points span { color: var(--taupe); font-size: 12px; line-height: 1.5; }
.feature-visual { overflow: hidden; background: var(--white); border: 1px solid var(--line-strong); border-radius: 14px; box-shadow: var(--shadow-lg); }
.visual-toolbar { min-height: 57px; display: flex; align-items: center; justify-content: space-between; padding: 0 15px; border-bottom: 1px solid var(--line); }
.visual-toolbar > div { display: flex; align-items: center; gap: 9px; }
.visual-toolbar b { color: var(--wine); font-size: 10px; }
.visual-toolbar button { min-height: 30px; padding: 0 9px; color: var(--wine); background: var(--paper); border: 1px solid var(--line); border-radius: 7px; font-size: 8px; font-weight: 600; }
.visual-chip { padding: 4px 7px; color: var(--taupe); background: var(--paper); border: 1px solid var(--line); border-radius: 999px; font-size: 7px; font-weight: 600; }
.visual-chip-green { color: var(--success); background: #EEF7F1; border-color: #D8EBDD; }
.visual-footer { min-height: 45px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 15px; color: var(--taupe); border-top: 1px solid var(--line); font-size: 7px; }
.visual-footer span:first-child { display: flex; align-items: center; gap: 6px; }
.visual-footer i { width: 5px; height: 5px; background: var(--success); border-radius: 50%; }
.architecture-canvas { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 18px; background-image: linear-gradient(rgba(67,28,28,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(67,28,28,.035) 1px, transparent 1px); background-size: 30px 30px; }
.architecture-column { min-width: 0; padding: 11px; background: rgba(251,250,247,.88); border: 1px solid var(--line); border-radius: 10px; }
.column-title { display: block; margin-bottom: 9px; color: var(--taupe); font-size: 8px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.architecture-card { min-height: 116px; display: flex; flex-direction: column; padding: 13px; margin-bottom: 8px; background: var(--white); border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 3px 10px rgba(43,25,25,.035); }
.architecture-card:last-child { margin-bottom: 0; }
.architecture-card > span { color: var(--coral); font-size: 7px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.architecture-card b { margin: auto 0 5px; color: var(--wine); font-size: 11px; line-height: 1.25; }
.architecture-card small { color: var(--taupe); font-size: 7px; }
.architecture-card.card-coral { color: var(--white); background: var(--coral); border-color: var(--coral); }
.architecture-card.card-coral > span, .architecture-card.card-coral b, .architecture-card.card-coral small { color: var(--white); }
.architecture-card.card-coral small { opacity: .78; }
.architecture-card.card-wheat { background: var(--wheat); border-color: rgba(67,28,28,.08); }
.creative-layout { display: grid; grid-template-columns: 155px minmax(0, 1fr); min-height: 395px; }
.creative-layout aside { padding: 14px 10px; background: #FCFBF8; border-right: 1px solid var(--line); }
.creative-nav-label { display: block; margin: 0 8px 10px; color: var(--taupe); font-size: 7px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.creative-layout aside button { width: 100%; min-height: 34px; display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 6px; padding: 0 8px; margin-bottom: 3px; color: var(--taupe); background: transparent; border: 0; border-radius: 7px; font-size: 8px; text-align: left; }
.creative-layout aside button.is-active { color: var(--wine); background: var(--warm); font-weight: 600; }
.creative-layout aside button i { width: 6px; height: 6px; border: 1px solid currentColor; border-radius: 2px; }
.creative-layout aside button em { font-size: 7px; font-style: normal; }
.creative-main { min-width: 0; padding: 16px; }
.creative-main-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 13px; color: var(--wine); border-bottom: 1px solid var(--line); font-size: 8px; font-weight: 600; }
.creative-main-head span:last-child { color: var(--taupe); font-weight: 500; }
.variant-row { display: grid; grid-template-columns: 23px 1fr auto; align-items: center; gap: 10px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.variant-check { width: 22px; height: 22px; display: grid; place-items: center; color: var(--white); background: var(--coral); border-radius: 6px; font-size: 8px; }
.variant-row small, .variant-row b, .variant-row p { display: block; }
.variant-row small { color: var(--taupe); font-size: 7px; }
.variant-row b { margin: 3px 0 4px; color: var(--wine); font-size: 10px; }
.variant-row p { margin: 0; color: var(--taupe); font-size: 7px; }
.variant-row em { padding: 4px 6px; color: var(--wine); background: var(--paper); border: 1px solid var(--line); border-radius: 999px; font-size: 6px; font-style: normal; font-weight: 700; }

/* Films */
.film-section { padding: clamp(105px, 11vw, 150px) 0; background: var(--wine); }
.film-intro { display: grid; grid-template-columns: 1fr 420px; gap: 70px; align-items: end; margin-bottom: 48px; }
.film-intro h2 { color: var(--white); }
.film-intro > div:last-child p { margin: 0 0 9px; color: rgba(255,255,255,.68); font-size: 15px; }
.film-intro > div:last-child small { color: rgba(255,255,255,.42); font-size: 10px; }
.film-reel { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.film-card { overflow: hidden; background: var(--white); border: 1px solid rgba(255,255,255,.16); border-radius: 12px; }
.film-head { min-height: 46px; display: flex; align-items: center; justify-content: space-between; padding: 0 13px; color: var(--taupe); border-bottom: 1px solid var(--line); font-size: 8px; font-weight: 600; }
.film-media { position: relative; background: var(--wine-dark); }
.film-media video { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.film-copy { padding: 18px; }
.film-copy h3 { margin: 0 0 9px; color: var(--wine); font-size: 18px; font-weight: 600; line-height: 1.18; letter-spacing: -.035em; }
.film-copy p { margin: 0; color: var(--taupe); font-size: 12px; line-height: 1.55; }

/* Measurement */
.measurement-section { background: var(--paper); }
.metric-list { display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 30px 0 0; list-style: none; }
.metric-list li { padding: 5px 8px; color: var(--taupe); background: rgba(255,255,255,.72); border: 1px solid var(--line); border-radius: 6px; font-size: 8px; font-weight: 600; }
.signal-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 16px 16px 0; }
.signal-metrics div { padding: 12px; background: var(--paper-bright); border: 1px solid var(--line); border-radius: 8px; }
.signal-metrics span, .signal-metrics b, .signal-metrics small { display: block; }
.signal-metrics span { color: var(--taupe); font-size: 7px; }
.signal-metrics b { margin: 5px 0 3px; color: var(--wine); font-size: 19px; font-weight: 600; letter-spacing: -.04em; }
.signal-metrics small { color: var(--taupe); font-size: 6px; }
.signal-chart { padding: 22px 22px 15px; }
.signal-chart-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; color: var(--wine); font-size: 8px; font-weight: 600; }
.signal-chart-head span:last-child { color: var(--taupe); font-weight: 500; }
.signal-chart svg { width: 100%; overflow: visible; }
.chart-grid { fill: none; stroke: var(--line); stroke-width: 1; }
.chart-area { fill: url(#signalArea); }
.chart-line { fill: none; stroke: var(--coral); stroke-width: 2; }
.chart-dots circle { fill: var(--white); stroke: var(--coral); stroke-width: 2; }
.chart-axis { display: flex; justify-content: space-between; color: var(--taupe); font-size: 6px; }

/* Principles and FAQ */
.principles { padding: clamp(105px, 11vw, 150px) 0; }
.principles-head { display: grid; grid-template-columns: 1fr 390px; gap: 80px; align-items: end; margin-bottom: 48px; }
.principles-head > p { margin: 0; color: var(--taupe); font-size: 15px; line-height: 1.6; }
.principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line-strong); border-radius: 14px; background: var(--white); }
.principle-card { min-height: 260px; display: flex; flex-direction: column; padding: 22px; border-right: 1px solid var(--line); }
.principle-card:last-child { border-right: 0; }
.principle-card > span { color: var(--coral); font-size: 10px; font-weight: 700; }
.principle-card h3 { margin: auto 0 9px; color: var(--wine); font-size: 20px; font-weight: 600; line-height: 1.16; letter-spacing: -.035em; }
.principle-card p { margin: 0; color: var(--taupe); font-size: 13px; line-height: 1.55; }
.policy-link { width: max-content; display: inline-flex; align-items: center; gap: 9px; margin-top: 24px; color: var(--wine); font-size: 12px; font-weight: 600; }
.policy-link:hover { color: var(--coral); }
.faq { padding: clamp(100px, 10vw, 140px) 0; border-top: 1px solid var(--line); }
.faq-head { margin-bottom: 42px; }
.faq-list { border-top: 1px solid var(--line-strong); }
.faq-list details { border-bottom: 1px solid var(--line-strong); }
.faq-list summary { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: var(--wine); list-style: none; cursor: pointer; font-size: 17px; font-weight: 600; letter-spacing: -.02em; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { width: 28px; height: 28px; display: grid; place-items: center; color: var(--taupe); background: var(--paper); border: 1px solid var(--line); border-radius: 50%; font-size: 16px; font-weight: 400; transition: transform .2s ease; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details > div { max-width: 760px; padding: 0 0 26px; }
.faq-list p { margin: 0; color: var(--taupe); font-size: 15px; line-height: 1.65; }

/* Brief */
.brief { padding: 0 0 clamp(100px, 11vw, 150px); }
.brief-card { display: grid; grid-template-columns: minmax(330px, .8fr) minmax(0, 1.2fr); overflow: hidden; color: var(--white); background: var(--wine); border-radius: 16px; box-shadow: var(--shadow-lg); }
.brief-copy { padding: clamp(34px, 5vw, 66px); }
.brief-copy h2 { color: var(--white); }
.brief-copy > p:not(.section-kicker) { margin: 22px 0; color: rgba(255,255,255,.65); font-size: 15px; line-height: 1.65; }
.brief-copy > a { display: inline-block; padding-bottom: 4px; color: var(--wheat); border-bottom: 1px solid rgba(217,192,141,.35); font-size: 13px; font-weight: 600; }
.brief-form { padding: clamp(30px, 4vw, 48px); background: var(--paper); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.brief-form label { display: block; margin-bottom: 13px; }
.brief-form label > span { display: block; margin-bottom: 7px; color: var(--wine); font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.brief-form input, .brief-form textarea { width: 100%; color: var(--wine); background: var(--white); border: 1px solid var(--line-strong); border-radius: 8px; outline: none; transition: border-color .16s ease, box-shadow .16s ease; }
.brief-form input { height: 44px; padding: 0 12px; }
.brief-form textarea { min-height: 105px; padding: 12px; resize: vertical; }
.brief-form input:focus, .brief-form textarea:focus { border-color: var(--coral); box-shadow: 0 0 0 3px rgba(231,111,81,.1); }
.form-foot { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 5px; }
.form-foot p { max-width: 290px; margin: 0; color: var(--taupe); font-size: 8px; line-height: 1.45; }

/* Footer */
.site-footer { color: rgba(255,255,255,.72); background: var(--wine-dark); }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, .6fr); gap: 60px; padding: 70px 0 54px; }
.footer-wordmark { color: var(--white); }
.footer-wordmark .brand-mark { stroke: var(--white); }
.footer-brand > p { max-width: 290px; margin: 18px 0; color: rgba(255,255,255,.48); font-size: 12px; line-height: 1.6; }
.footer-regions { display: flex; align-items: center; gap: 11px; color: var(--wheat); font-size: 10px; font-weight: 600; }
.footer-column { display: flex; flex-direction: column; gap: 11px; }
.footer-column > span { margin-bottom: 8px; color: var(--white); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.footer-column a { color: rgba(255,255,255,.52); font-size: 11px; transition: color .15s ease; }
.footer-column a:hover { color: var(--white); }
.footer-bottom { min-height: 64px; display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 30px; border-top: 1px solid rgba(255,255,255,.1); }
.footer-bottom p, .footer-bottom a { margin: 0; color: rgba(255,255,255,.38); font-size: 9px; }
.footer-bottom a:hover { color: var(--white); }

/* Reveal */
.reveal { opacity: 1; transform: none; }
.js .reveal { opacity: 0; transform: translateY(12px); transition: opacity .6s ease, transform .6s ease; }
.js .reveal.is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .reveal, .js .reveal { opacity: 1; transform: none; transition: none; } * { animation-duration: .001ms !important; animation-iteration-count: 1 !important; } }

/* Responsive */
@media (max-width: 1120px) {
  .desktop-nav { gap: 0; }
  .nav-trigger, .nav-link { padding-inline: 7px; font-size: 12px; }
  .nav-actions { gap: 10px; }
  .stage-body { grid-template-columns: 154px minmax(0,1fr); }
  .workspace-grid { grid-template-columns: minmax(0,1.35fr) minmax(210px,.65fr); }
  .feature-grid, .feature-grid-reverse { gap: 48px; }
}

@media (max-width: 960px) {
  .site-header, .nav-shell { height: 64px; }
  .nav-shell { grid-template-columns: 1fr auto; }
  .desktop-nav, .nav-actions { display: none; }
  .menu-toggle { width: 38px; height: 38px; display: grid; place-content: center; gap: 5px; padding: 0; background: var(--white); border: 1px solid var(--line); border-radius: 9px; }
  .menu-toggle > span:not(.sr-only) { width: 16px; height: 1px; background: var(--wine); transition: transform .2s ease; }
  .menu-toggle[aria-expanded="true"] > span:nth-of-type(2) { transform: translateY(3px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] > span:nth-of-type(3) { transform: translateY(-3px) rotate(-45deg); }
  .mobile-nav { position: fixed; inset: 64px 0 0; z-index: 99; display: block; overflow-y: auto; background: rgba(251,250,247,.98); border-top: 1px solid var(--line); }
  .mobile-nav[hidden] { display: none; }
  .mobile-nav-inner { width: min(680px, calc(100% - 40px)); margin: 0 auto; padding: 20px 0 40px; }
  .mobile-nav details, .mobile-direct { display: block; border-bottom: 1px solid var(--line); }
  .mobile-nav summary, .mobile-direct { min-height: 58px; display: flex; align-items: center; justify-content: space-between; color: var(--wine); list-style: none; font-size: 15px; font-weight: 600; }
  .mobile-nav summary::-webkit-details-marker { display: none; }
  .mobile-nav summary span { color: var(--coral); font-size: 18px; font-weight: 400; }
  .mobile-nav details[open] summary span { transform: rotate(45deg); }
  .mobile-nav details > div { display: grid; gap: 2px; padding: 0 0 14px; }
  .mobile-nav details a { padding: 8px 12px; color: var(--taupe); background: var(--paper); border-radius: 7px; font-size: 12px; }
  .mobile-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; padding-top: 22px; }
  .hero { padding-top: 76px; }
  .stage-body { grid-template-columns: 1fr; }
  .stage-sidebar { display: none; }
  .stage-workspace { padding: 20px; }
  .workspace-grid { grid-template-columns: minmax(0, 1.3fr) minmax(220px, .7fr); }
  .market-strip { grid-template-columns: 1fr; gap: 10px; justify-items: center; padding: 48px 0; text-align: center; }
  .market-strip p:last-child { text-align: center; }
  .outcome-grid, .feature-grid, .feature-grid-reverse { grid-template-columns: 1fr; }
  .outcome-grid { gap: 34px; }
  .feature-grid-reverse .feature-copy, .feature-grid-reverse .feature-visual { grid-column: auto; grid-row: auto; }
  .feature-grid-reverse .feature-visual { order: 2; }
  .service-rail { grid-template-columns: 1fr 1fr; }
  .service-rail article:nth-child(2) { border-right: 0; }
  .service-rail article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .film-intro, .principles-head { grid-template-columns: 1fr; gap: 26px; }
  .footer-grid { grid-template-columns: 1.4fr repeat(3, .7fr); gap: 34px; }
}

@media (max-width: 740px) {
  :root { --pad: 20px; }
  .announcement-pill > span:nth-of-type(2), .announcement-pill svg { display: none; }
  .hero h1 { font-size: clamp(49px, 13vw, 68px); }
  .hero-actions { flex-direction: column; align-items: stretch; max-width: 330px; margin-inline: auto; }
  .product-switcher { max-width: calc(100% - 40px); }
  .product-switcher button { font-size: 10px; }
  .product-stage-wrap { width: calc(100% - 20px); }
  .product-stage-wrap::before { inset: -45px -20px 25%; border-radius: 28px; }
  .stage-workspace { padding: 14px; }
  .workspace-head { align-items: center; }
  .workspace-head p, .workspace-button { display: none; }
  .workspace-head h2 { font-size: 18px; }
  .workspace-metrics { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 6px; margin-top: 16px; }
  .workspace-metrics > div { padding: 9px; }
  .workspace-metrics span { font-size: 6px; }
  .workspace-metrics b { font-size: 16px; }
  .workspace-metrics small { display: none; }
  .workspace-grid { grid-template-columns: 1fr; }
  .workspace-insights { display: none; }
  .stage-toast { right: 12px; bottom: -24px; width: min(290px, calc(100% - 24px)); }
  .market-strip { padding-top: 55px; }
  .outcome-demo { grid-template-columns: 1fr; }
  .outcome-link-list { border-right: 0; border-bottom: 1px solid var(--line); }
  .summary-metrics { grid-template-columns: 1fr 1fr 1fr; }
  .service-rail, .principle-grid { grid-template-columns: 1fr; }
  .service-rail article { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--line); }
  .service-rail article:nth-child(2) { border-bottom: 1px solid var(--line); }
  .service-rail article:last-child { border-bottom: 0; }
  .architecture-canvas { grid-template-columns: 1fr; }
  .architecture-card { min-height: 96px; }
  .creative-layout { grid-template-columns: 1fr; }
  .creative-layout aside { display: flex; gap: 5px; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--line); }
  .creative-nav-label { display: none; }
  .creative-layout aside button { width: auto; min-width: max-content; grid-template-columns: 8px auto auto; }
  .film-reel { grid-template-columns: 1fr; }
  .principle-card { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--line); }
  .principle-card:last-child { border-bottom: 0; }
  .brief-card { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .form-foot { align-items: flex-start; flex-direction: column; }
  .form-foot .button { width: 100%; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-bottom { grid-template-columns: 1fr; gap: 8px; padding: 20px 0; }
}

@media (max-width: 480px) {
  .wordmark { font-size: 14px; }
  .brand-mark { width: 25px; height: 25px; }
  .hero { padding-top: 62px; }
  .announcement-pill { margin-bottom: 22px; }
  .hero-copy > p { font-size: 16px; }
  .product-switcher { margin-top: 46px; }
  .switcher-icon { display: none; }
  .stage-title-actions button { display: none; }
  .workspace-metrics > div:nth-child(2) { display: none; }
  .workspace-metrics { grid-template-columns: 1fr 1fr; }
  .outcome-summary { padding: 18px; }
  .summary-metrics div { padding: 9px; }
  .summary-metrics span { font-size: 6px; }
  .summary-metrics b { font-size: 15px; }
  .architecture-canvas, .creative-main { padding: 12px; }
  .variant-row { grid-template-columns: 22px 1fr; }
  .variant-row em { display: none; }
  .signal-metrics { grid-template-columns: 1fr; }
  .signal-metrics div { display: grid; grid-template-columns: 1fr auto; align-items: center; }
  .signal-metrics b { grid-row: 1 / 3; grid-column: 2; }
  .signal-metrics small { grid-column: 1; }
  .mobile-actions { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
}

/* 404 */
.not-found-body { min-height: 100vh; display: grid; place-items: center; padding: 28px; color: var(--ink); background-color: var(--paper-bright); background-image: linear-gradient(rgba(67,28,28,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(67,28,28,.045) 1px, transparent 1px), radial-gradient(circle at 50% 10%, rgba(217,192,141,.34), transparent 35%); background-size: 48px 48px, 48px 48px, auto; }
.not-found-wrap { width: min(620px, 100%); padding: clamp(32px, 7vw, 70px); text-align: center; background: rgba(255,255,255,.88); border: 1px solid var(--line-strong); border-radius: 16px; box-shadow: var(--shadow-lg); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.not-found-mark { width: 46px; margin: 0 auto 28px; fill: none; stroke: var(--wine); stroke-width: 1.5; }
.not-found-code { color: var(--coral); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.not-found-wrap h1 { margin: 15px 0 14px; color: var(--wine); font-size: clamp(40px, 7vw, 64px); font-weight: 600; line-height: 1; letter-spacing: -.055em; }
.not-found-wrap p { max-width: 440px; margin: 0 auto 26px; color: var(--taupe); font-size: 15px; line-height: 1.6; }
.not-found-wrap a { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 16px; color: var(--white); background: var(--wine); border-radius: 8px; font-size: 12px; font-weight: 600; }


/* Multi-page extensions */
.subpage main { overflow: hidden; }
.page-hero { position: relative; padding: clamp(70px, 8vw, 112px) 0 clamp(62px, 7vw, 96px); overflow: hidden; border-bottom: 1px solid var(--line); }
.page-hero-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(67,28,28,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(67,28,28,.04) 1px, transparent 1px), radial-gradient(circle at 18% 24%, rgba(217,192,141,.38), transparent 31%), radial-gradient(circle at 82% 34%, rgba(231,111,81,.08), transparent 25%); background-size: 48px 48px,48px 48px,auto,auto; -webkit-mask-image: linear-gradient(to bottom,#000,transparent 98%); mask-image: linear-gradient(to bottom,#000,transparent 98%); pointer-events:none; }
.page-hero-inner { position: relative; z-index: 1; max-width: 900px; }
.breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:34px; color:var(--taupe); font-size:11px; }
.breadcrumbs a:hover { color:var(--wine); }
.breadcrumbs span[aria-current="page"] { color:var(--wine); font-weight:600; }
.page-hero h1 { max-width: 850px; margin: 13px 0 20px; color:var(--wine); font-size:clamp(44px,6.5vw,82px); font-weight:600; line-height:.98; letter-spacing:-.065em; }
.page-lead { max-width:740px; margin:0; color:var(--muted); font-size:clamp(18px,2.2vw,23px); line-height:1.55; letter-spacing:-.02em; }
.page-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.hero-note { max-width:760px; margin:18px 0 0; color:var(--taupe); font-size:11px; line-height:1.55; }
.content-section { padding: clamp(76px, 9vw, 128px) 0; }
.content-section-warm { background:var(--warm); border-top:1px solid rgba(67,28,28,.08); border-bottom:1px solid rgba(67,28,28,.08); }
.section-split { display:grid; grid-template-columns:minmax(300px,.75fr) minmax(520px,1.25fr); gap:clamp(48px,7vw,100px); align-items:center; }
.section-split-reverse { grid-template-columns:minmax(520px,1.25fr) minmax(300px,.75fr); }
.section-split-reverse .section-copy { order:2; }
.section-copy h2, .section-heading h2 { margin:10px 0 18px; color:var(--wine); font-size:clamp(34px,4.2vw,56px); font-weight:600; line-height:1.04; letter-spacing:-.055em; }
.section-copy > p:not(.section-kicker), .section-heading > p:not(.section-kicker) { color:var(--muted); font-size:17px; line-height:1.65; }
.section-copy .feature-points { margin-top:34px; }
.service-index-grid { display:grid; gap:12px; }
.service-index-grid > a { display:grid; grid-template-columns:55px 1fr 30px; gap:24px; align-items:start; padding:30px; background:var(--white); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-sm); transition:.18s ease; }
.service-index-grid > a:hover { transform:translateY(-2px); border-color:var(--line-dark); box-shadow:var(--shadow-md); }
.service-index-grid > a > span { width:42px; height:42px; display:grid; place-items:center; color:var(--coral); background:var(--paper); border:1px solid var(--line); border-radius:10px; font-size:11px; font-weight:700; }
.service-index-grid h2,.resource-index h2 { margin:3px 0 8px; color:var(--wine); font-size:30px; letter-spacing:-.045em; }
.service-index-grid p,.resource-index p { margin:0 0 12px; color:var(--muted); }
.service-index-grid div > p:first-child,.resource-index div > p:first-child { margin:0; color:var(--coral); font-size:10px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.service-index-grid ul { display:flex; flex-wrap:wrap; gap:6px; margin:15px 0 0; padding:0; list-style:none; }
.service-index-grid li { padding:5px 8px; color:var(--taupe); background:var(--paper); border:1px solid var(--line); border-radius:6px; font-size:10px; }
.service-index-grid i,.resource-index i { color:var(--coral); font-size:20px; font-style:normal; }
.system-flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; gap:16px; align-items:center; margin-top:44px; }
.system-flow > div { min-height:160px; padding:22px; background:rgba(255,255,255,.58); border:1px solid rgba(67,28,28,.12); border-radius:12px; }
.system-flow span { color:var(--coral); font-size:10px; font-weight:700; }
.system-flow b,.system-flow small { display:block; }
.system-flow b { margin:42px 0 7px; color:var(--wine); font-size:20px; }
.system-flow small { color:var(--taupe); line-height:1.45; }
.system-flow > i { color:var(--coral); font-style:normal; }
.ui-panel { overflow:hidden; background:var(--white); border:1px solid var(--line-strong); border-radius:14px; box-shadow:var(--shadow-lg); }
.ui-toolbar { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 16px; border-bottom:1px solid var(--line); }
.ui-toolbar > div { display:flex; align-items:center; gap:9px; }
.ui-toolbar b { color:var(--wine); font-size:12px; }
.status-pill { display:inline-flex; align-items:center; justify-content:center; width:max-content; padding:5px 8px; border-radius:999px; font-size:8px; font-style:normal; font-weight:700; white-space:nowrap; }
.status-green { color:var(--success); background:#EEF7F1; border:1px solid #D8EBDD; }
.status-amber { color:#91651F; background:#FBF3E4; border:1px solid #EEDDBB; }
.status-red { color:#A33E31; background:#FCEDE9; border:1px solid #F2D3CC; }
.ui-tabs { display:flex; gap:4px; padding:9px 14px; background:#FCFBF8; border-bottom:1px solid var(--line); }
.ui-tabs span { padding:6px 9px; color:var(--taupe); border-radius:6px; font-size:8px; font-weight:600; }
.ui-tabs .is-active { color:var(--wine); background:var(--warm); }
.ui-body-two { display:grid; grid-template-columns:minmax(0,1fr) 210px; }
.ui-main { min-width:0; padding:16px; }
.ui-aside { display:flex; flex-direction:column; padding:20px; color:var(--wine); background:var(--wheat); border-left:1px solid var(--line); }
.ui-aside h3 { margin:38px 0 10px; font-size:23px; line-height:1.08; letter-spacing:-.04em; }
.ui-aside p { color:rgba(67,28,28,.72); font-size:11px; line-height:1.55; }
.ui-aside a { margin-top:auto; padding-top:14px; border-top:1px solid rgba(67,28,28,.24); font-size:10px; font-weight:700; }
.ui-eyebrow { font-size:8px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; opacity:.65; }
.ui-metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:12px; }
.ui-metric-grid > div { padding:13px; background:var(--paper-bright); border:1px solid var(--line); border-radius:9px; }
.ui-metric-grid span,.ui-metric-grid b,.ui-metric-grid small { display:block; }
.ui-metric-grid span { color:var(--taupe); font-size:8px; font-weight:600; }
.ui-metric-grid b { margin:7px 0 4px; color:var(--wine); font-size:20px; letter-spacing:-.04em; }
.ui-metric-grid small { color:var(--taupe); font-size:7px; }
.ui-table { overflow:hidden; border:1px solid var(--line); border-radius:9px; }
.ui-row { display:grid; grid-template-columns:1.1fr 1.6fr auto; gap:12px; align-items:center; min-height:54px; padding:10px 12px; border-bottom:1px solid var(--line); color:var(--muted); font-size:9px; }
.ui-row:last-child { border-bottom:0; }
.ui-row-head { min-height:34px; color:var(--taupe); background:var(--paper); font-size:7px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.ui-row b,.ui-row small { display:block; }
.ui-row b { color:var(--wine); font-size:9px; }
.ui-row small { color:var(--taupe); font-size:7px; }
.score-ring { width:90px; height:90px; display:grid; place-items:center; align-content:center; margin:20px auto; border:8px solid rgba(67,28,28,.14); border-top-color:var(--coral); border-radius:50%; }
.score-ring b { font-size:24px; line-height:1; }
.score-ring span { margin-top:3px; font-size:7px; }
.deliverable-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:42px; }
.deliverable-grid article,.usecase-grid article { min-height:230px; padding:24px; background:rgba(255,255,255,.64); border:1px solid rgba(67,28,28,.12); border-radius:12px; }
.deliverable-grid span { color:var(--coral); font-size:10px; font-weight:700; }
.deliverable-grid h3,.usecase-grid h3 { margin:72px 0 10px; color:var(--wine); font-size:21px; line-height:1.1; letter-spacing:-.035em; }
.deliverable-grid p,.usecase-grid p { margin:0; color:var(--muted); font-size:13px; line-height:1.55; }
.process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:42px; }
.process-grid article { min-height:220px; padding:24px; background:var(--white); border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-sm); }
.process-grid span { color:var(--coral); font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.process-grid h3 { margin:64px 0 10px; color:var(--wine); font-size:23px; line-height:1.1; letter-spacing:-.04em; }
.process-grid p { color:var(--muted); font-size:13px; }
.related { padding:clamp(76px,9vw,128px) 0; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:38px; }
.related-grid a { position:relative; min-height:230px; padding:24px; background:var(--paper); border:1px solid var(--line); border-radius:12px; transition:.18s ease; }
.related-grid a:hover { transform:translateY(-2px); background:var(--white); box-shadow:var(--shadow-md); }
.related-grid span { color:var(--coral); font-size:10px; font-weight:700; }
.related-grid h3 { margin:55px 0 10px; color:var(--wine); font-size:23px; letter-spacing:-.04em; }
.related-grid p { color:var(--muted); font-size:13px; }
.related-grid i { position:absolute; right:20px; bottom:18px; color:var(--coral); font-style:normal; }
.page-cta { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-top:0; margin-bottom:clamp(76px,9vw,128px); padding:clamp(36px,5vw,60px); color:var(--white); background:var(--wine); border-radius:18px; box-shadow:var(--shadow-lg); }
.page-cta h2 { max-width:720px; margin:10px 0 12px; font-size:clamp(34px,4.5vw,58px); line-height:1.02; letter-spacing:-.055em; }
.page-cta p:not(.section-kicker) { max-width:650px; margin:0; color:rgba(255,255,255,.7); font-size:15px; }
.page-cta .section-kicker { color:var(--wheat); }
.wide-table .ui-row { grid-template-columns:.8fr 1.1fr 1.4fr 1.4fr 1fr; font-size:10px; }
.state-dot { width:7px; height:7px; display:inline-block; margin-right:7px; border-radius:50%; }
.state-dot.discover { background:var(--wheat); }.state-dot.compare { background:var(--coral); }.state-dot.decide { background:var(--wine); }
.architecture-detail,.experiment-board { padding:28px; background:var(--white); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-md); }
.architecture-detail-head,.experiment-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:25px; }
.architecture-detail-head h2,.experiment-head h2 { margin:8px 0 0; color:var(--wine); font-size:34px; letter-spacing:-.05em; }
.creative-system-grid { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:18px; align-items:center; margin-top:42px; }
.creative-system-grid > div { min-height:245px; padding:24px; background:rgba(255,255,255,.62); border:1px solid rgba(67,28,28,.12); border-radius:12px; }
.creative-system-grid > i { color:var(--coral); font-style:normal; }
.creative-system-grid span { color:var(--coral); font-size:9px; font-weight:700; text-transform:uppercase; }
.creative-system-grid h3 { margin:55px 0 14px; color:var(--wine); font-size:24px; }
.creative-system-grid ul { margin:0; padding-left:18px; color:var(--muted); font-size:13px; line-height:1.8; }
.experiment-board .ui-row { grid-template-columns:1.15fr 1.8fr 1fr .7fr .7fr; }
.decision-state-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.decision-state-grid > a { position:relative; min-height:430px; display:flex; flex-direction:column; padding:28px; background:var(--white); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-sm); transition:.18s ease; }
.decision-state-grid > a:hover { transform:translateY(-3px); box-shadow:var(--shadow-lg); }
.decision-state-grid > a > span { color:var(--coral); font-size:10px; font-weight:700; }
.decision-state-grid > a > p:first-of-type { margin:10px 0 auto; color:var(--taupe); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.decision-state-grid h2 { margin:0 0 12px; color:var(--wine); font-size:42px; letter-spacing:-.055em; }
.decision-state-grid > a > p:not(:first-of-type) { color:var(--muted); }
.decision-state-grid > a > div { margin-top:34px; padding-top:18px; border-top:1px solid var(--line); }
.decision-state-grid b,.decision-state-grid small { display:block; }
.decision-state-grid b { color:var(--wine); font-size:11px; }
.decision-state-grid small { margin-top:5px; color:var(--taupe); font-size:10px; }
.decision-state-grid i { position:absolute; right:24px; top:24px; color:var(--coral); font-style:normal; }
.state-example { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; overflow:hidden; margin-top:42px; background:rgba(67,28,28,.12); border:1px solid rgba(67,28,28,.12); border-radius:14px; }
.state-example > div { min-height:260px; padding:28px; background:rgba(255,255,255,.68); }
.state-example span { color:var(--coral); font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.state-example b { display:block; margin:80px 0 10px; color:var(--wine); font-size:22px; line-height:1.25; }
.state-example p { color:var(--muted); font-size:12px; }
.territory-columns { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding:16px; background:var(--paper-bright); }
.territory-columns > div > span { display:block; margin:0 0 9px; color:var(--taupe); font-size:8px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.territory-columns article { min-height:150px; margin-bottom:9px; padding:16px; background:var(--white); border:1px solid var(--line); border-radius:9px; }
.territory-columns article.accent { background:#FCEDE9; }.territory-columns article.wheat { background:#F5ECD7; }
.territory-columns b,.territory-columns p,.territory-columns small { display:block; }
.territory-columns b { color:var(--wine); font-size:12px; }.territory-columns p { color:var(--muted); font-size:9px; }.territory-columns small { margin-top:15px; color:var(--taupe); font-size:7px; }
.usecase-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:40px; }.usecase-grid h3 { margin-top:65px; }
.compare-matrix { display:grid; padding:16px; }
.compare-matrix > div { display:grid; grid-template-columns:1.2fr repeat(3,1fr); align-items:center; min-height:48px; padding:8px 10px; border-bottom:1px solid var(--line); font-size:9px; }
.compare-head { color:var(--taupe); background:var(--paper); border-radius:8px 8px 0 0; font-size:7px!important; font-weight:700; text-transform:uppercase; }
.compare-matrix b { color:var(--wine); }.compare-matrix span { color:var(--muted); }.compare-matrix .best { color:var(--success); font-weight:700; }.muted-cell { color:#aaa!important; }
.compare-note { margin:0 16px 16px; padding:18px; color:var(--wine); background:var(--warm); border-radius:9px; }
.compare-note span { font-size:8px; font-weight:700; text-transform:uppercase; opacity:.65; }.compare-note b { display:block; margin:10px 0 7px; font-size:18px; }.compare-note p { margin:0; color:var(--taupe); font-size:10px; }
.continuity-flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:10px; align-items:center; padding:18px; background:var(--paper-bright); }
.continuity-flow > div { min-height:145px; padding:15px; background:var(--white); border:1px solid var(--line); border-radius:9px; }
.continuity-flow > i { color:var(--coral); font-style:normal; }.continuity-flow span,.continuity-flow b,.continuity-flow small { display:block; }.continuity-flow span { color:var(--coral); font-size:7px; font-weight:700; text-transform:uppercase; }.continuity-flow b { margin:42px 0 7px; color:var(--wine); font-size:12px; }.continuity-flow small { color:var(--taupe); font-size:8px; }
.continuity-checks { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:0 18px 18px; background:var(--paper-bright); }.continuity-checks > div { padding:12px; background:var(--white); border:1px solid var(--line); border-radius:8px; }.continuity-checks span,.continuity-checks b { display:block; }.continuity-checks > div > span { color:var(--taupe); font-size:7px; }.continuity-checks b { margin:6px 0 9px; color:var(--wine); font-size:9px; }
.resource-index { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.resource-index > a { display:grid; grid-template-columns:45px 1fr 25px; gap:18px; min-height:260px; padding:26px; background:var(--white); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-sm); transition:.18s ease; }
.resource-index > a:hover { transform:translateY(-2px); box-shadow:var(--shadow-md); }.resource-index > a > span { color:var(--coral); font-size:10px; font-weight:700; }.resource-index h2 { margin-top:65px; }
.film-page { padding:clamp(76px,9vw,128px) 0; }.film-page .film-reel { margin-top:0; }
.film-notes { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:40px; }.film-notes article { min-height:300px; padding:25px; background:rgba(255,255,255,.62); border:1px solid rgba(67,28,28,.12); border-radius:12px; }.film-notes span { color:var(--coral); font-size:9px; font-weight:700; text-transform:uppercase; }.film-notes h3 { margin:65px 0 12px; color:var(--wine); font-size:24px; }.film-notes p,.film-notes li { color:var(--muted); font-size:12px; }.film-notes ul { padding-left:18px; line-height:1.9; }
.lab-page { padding:clamp(76px,9vw,128px) 0; }.lab-intro { display:grid; grid-template-columns:1fr .7fr; gap:60px; align-items:end; margin-bottom:36px; }.lab-intro h2 { margin:8px 0 0; color:var(--wine); font-size:clamp(34px,4.2vw,56px); line-height:1.05; letter-spacing:-.055em; }.lab-intro > p { color:var(--muted); }.lab-page .product-switcher { margin-top:0; }.lab-page .product-stage-wrap { margin-bottom:20px; }
.faq-page { padding:clamp(76px,9vw,128px) 0; }.faq-page .faq-list { max-width:940px; margin:0 auto; }
.studio-grid { display:grid; grid-template-columns:1fr .8fr; gap:90px; align-items:start; }.studio-facts { overflow:hidden; background:var(--white); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-md); }.studio-facts > div { padding:22px; border-bottom:1px solid var(--line); }.studio-facts > div:last-child { border-bottom:0; }.studio-facts span,.studio-facts b { display:block; }.studio-facts span { color:var(--taupe); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }.studio-facts b { margin-top:12px; color:var(--wine); font-size:18px; }
.brand-swatch-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:40px; }.brand-swatch-grid > div { padding:18px; background:var(--white); border:1px solid var(--line); border-radius:12px; }.brand-swatch-grid i { height:95px; display:block; margin-bottom:15px; background:var(--swatch); border:1px solid rgba(67,28,28,.1); border-radius:8px; }.brand-swatch-grid b,.brand-swatch-grid span,.brand-swatch-grid small { display:block; }.brand-swatch-grid b { color:var(--wine); }.brand-swatch-grid span { color:var(--taupe); font-size:10px; }.brand-swatch-grid small { margin-top:9px; color:var(--muted); font-size:10px; }
.contact-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:70px; align-items:start; }.contact-details h2 { margin:10px 0 18px; color:var(--wine); font-size:48px; line-height:1.05; letter-spacing:-.055em; }.contact-email { color:var(--coral); font-size:20px; font-weight:600; }.contact-cards { display:grid; gap:10px; margin-top:36px; }.contact-cards article { padding:20px; background:var(--paper); border:1px solid var(--line); border-radius:10px; }.contact-cards span,.contact-cards b { display:block; }.contact-cards span { color:var(--taupe); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }.contact-cards b { margin:8px 0; color:var(--wine); }.contact-cards p { margin:0; color:var(--muted); font-size:12px; }
.lead-form { display:grid; gap:18px; padding:30px; background:var(--white); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-md); }.lead-form label > span { display:block; margin-bottom:7px; color:var(--wine); font-size:11px; font-weight:600; }.lead-form input,.lead-form textarea,.lead-form select { width:100%; min-height:46px; padding:11px 12px; color:var(--ink); background:var(--paper-bright); border:1px solid var(--line-strong); border-radius:8px; outline:none; }.lead-form textarea { resize:vertical; }.lead-form input:focus,.lead-form textarea:focus,.lead-form select:focus { border-color:var(--coral); box-shadow:0 0 0 3px rgba(231,111,81,.12); }.form-consent label { display:flex; align-items:flex-start; gap:9px; }.form-consent input { width:16px; min-height:16px; margin-top:2px; }.form-consent label > span { color:var(--muted); font-size:10px; font-weight:400; line-height:1.5; }
.briefing-layout { display:grid; grid-template-columns:300px 1fr; gap:50px; align-items:start; }.briefing-aside { position:sticky; top:100px; }.briefing-aside h2 { margin:10px 0 24px; color:var(--wine); font-size:34px; line-height:1.08; letter-spacing:-.05em; }.briefing-checklist { display:grid; gap:10px; }.briefing-checklist > div { display:grid; grid-template-columns:24px 1fr; gap:10px; }.briefing-checklist span { width:22px; height:22px; display:grid; place-items:center; color:var(--white); background:var(--success); border-radius:6px; font-size:9px; }.briefing-checklist p { margin:0; color:var(--muted); font-size:12px; }.briefing-checklist b { color:var(--wine); }.briefing-aside > a { display:block; margin-top:28px; color:var(--coral); font-size:12px; font-weight:700; }.campaign-form { gap:24px; }.form-section { display:grid; grid-template-columns:36px 1fr; gap:18px; padding-bottom:25px; border-bottom:1px solid var(--line); }.form-section > span { width:34px; height:34px; display:grid; place-items:center; color:var(--coral); background:var(--paper); border:1px solid var(--line); border-radius:8px; font-size:9px; font-weight:700; }.form-section h3 { margin:4px 0 18px; color:var(--wine); font-size:22px; }
.policy-section { padding:clamp(76px,9vw,128px) 0; }.policy-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:70px; align-items:start; }.policy-toc { position:sticky; top:96px; display:grid; gap:3px; padding:14px; background:var(--paper); border:1px solid var(--line); border-radius:12px; }.policy-toc > span { padding:8px 10px 12px; color:var(--taupe); font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.policy-toc a { padding:9px 10px; color:var(--muted); border-radius:7px; font-size:10px; }.policy-toc a:hover { color:var(--wine); background:var(--white); }.policy-content { min-width:0; }.policy-content > section { padding:0 0 75px; margin-bottom:75px; border-bottom:1px solid var(--line); scroll-margin-top:100px; }.policy-content > section:last-child { margin-bottom:0; border-bottom:0; }.policy-content h2 { margin:9px 0 18px; color:var(--wine); font-size:clamp(34px,4vw,50px); line-height:1.05; letter-spacing:-.055em; }.policy-content p { color:var(--muted); font-size:15px; line-height:1.7; }.policy-callout { margin-top:25px; padding:24px; color:var(--white); background:var(--wine); border-radius:12px; }.policy-callout.soft { color:var(--wine); background:var(--warm); }.policy-callout b { font-size:16px; }.policy-callout p { margin:8px 0 15px; color:inherit; opacity:.75; font-size:12px; }.policy-callout a { color:var(--wheat); font-size:11px; font-weight:700; }.policy-rule-grid,.policy-category-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:30px; }.policy-rule-grid article,.policy-category-grid article { min-height:220px; padding:24px; background:var(--paper); border:1px solid var(--line); border-radius:12px; }.policy-rule-grid span,.policy-category-grid span { color:var(--coral); font-size:9px; font-weight:700; text-transform:uppercase; }.policy-rule-grid h3,.policy-category-grid h3 { margin:55px 0 10px; color:var(--wine); font-size:21px; }.policy-rule-grid p,.policy-category-grid p { margin:0; font-size:12px; }.policy-category-grid article.allowed { border-top:3px solid var(--success); }.policy-fine { margin-top:18px; font-size:11px!important; }.policy-table { display:grid; gap:9px; margin-top:28px; }.policy-tr { display:grid; grid-template-columns:180px 1fr auto; gap:20px; align-items:start; padding:20px; background:var(--paper); border:1px solid var(--line); border-radius:10px; }.policy-tr b { color:var(--wine); font-size:13px; }.policy-tr p { margin:0; font-size:12px; }.prohibited-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:28px; }.prohibited-grid span { padding:14px 16px; color:#873B31; background:#FCEDE9; border:1px solid #F2D3CC; border-radius:8px; font-size:11px; font-weight:600; }.policy-list { display:grid; gap:10px; padding:0; list-style:none; }.policy-list li { position:relative; padding:16px 18px 16px 42px; color:var(--muted); background:var(--paper); border:1px solid var(--line); border-radius:9px; font-size:13px; }.policy-list li::before { content:"✓"; position:absolute; left:16px; top:16px; color:var(--success); font-weight:700; }.policy-process { margin-top:28px; }.policy-meta { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:30px; }.policy-meta > div { padding:16px; background:var(--paper); border:1px solid var(--line); border-radius:9px; }.policy-meta span,.policy-meta b { display:block; }.policy-meta span { color:var(--taupe); font-size:8px; text-transform:uppercase; }.policy-meta b { margin-top:8px; color:var(--wine); font-size:12px; }
.legal-page { padding:clamp(76px,9vw,128px) 0; }.legal-page article { max-width:850px; }.legal-meta { color:var(--coral)!important; font-size:11px!important; font-weight:700; text-transform:uppercase; }.legal-page h2 { margin:55px 0 12px; color:var(--wine); font-size:28px; letter-spacing:-.04em; }.legal-page p,.legal-page li { color:var(--muted); font-size:15px; line-height:1.75; }.legal-page a { color:var(--coral); font-weight:600; }
.not-found { min-height:70vh; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding-block:100px; }.not-found > span { color:var(--coral); font-size:12px; font-weight:700; }.not-found h1 { max-width:760px; margin:15px 0; color:var(--wine); font-size:clamp(48px,7vw,88px); line-height:.98; letter-spacing:-.065em; }.not-found p { color:var(--muted); font-size:18px; }.not-found > div { display:flex; gap:10px; margin-top:24px; }
.footer-bottom > div { display:flex; gap:14px; }
@media (max-width: 1050px) {
  .section-split,.section-split-reverse { grid-template-columns:1fr; }.section-split-reverse .section-copy { order:0; }
  .deliverable-grid,.usecase-grid { grid-template-columns:1fr 1fr; }.decision-state-grid { grid-template-columns:1fr; }.decision-state-grid > a { min-height:330px; }
  .policy-layout { grid-template-columns:1fr; }.policy-toc { position:static; grid-template-columns:1fr 1fr; }.briefing-layout { grid-template-columns:1fr; }.briefing-aside { position:static; }
}
@media (max-width: 760px) {
  .page-hero { padding-top:55px; }.page-hero h1 { font-size:46px; }.page-lead { font-size:17px; }.page-hero-actions { align-items:stretch; }.page-hero-actions .button { width:100%; }
  .service-index-grid > a { grid-template-columns:42px 1fr; padding:20px; }.service-index-grid > a > i { display:none; }.service-index-grid h2,.resource-index h2 { font-size:24px; }
  .system-flow,.creative-system-grid { grid-template-columns:1fr; }.system-flow > i,.creative-system-grid > i { transform:rotate(90deg); justify-self:center; }.system-flow > div { min-height:130px; }.system-flow b { margin-top:25px; }
  .deliverable-grid,.process-grid,.related-grid,.usecase-grid,.policy-rule-grid,.policy-category-grid,.prohibited-grid,.film-notes,.brand-swatch-grid,.policy-meta { grid-template-columns:1fr; }
  .deliverable-grid article,.usecase-grid article { min-height:190px; }.deliverable-grid h3,.usecase-grid h3 { margin-top:45px; }
  .page-cta { align-items:flex-start; flex-direction:column; padding:30px 24px; border-radius:14px; }.page-cta .button { width:100%; }
  .ui-body-two { grid-template-columns:1fr; }.ui-aside { min-height:270px; border-left:0; border-top:1px solid var(--line); }.ui-metric-grid { grid-template-columns:1fr; }.ui-row { grid-template-columns:1fr; gap:5px; }.ui-row-head { display:none; }.wide-table .ui-row,.experiment-board .ui-row { grid-template-columns:1fr; }.architecture-detail,.experiment-board { padding:18px; }.architecture-detail-head,.experiment-head { align-items:flex-start; flex-direction:column; }
  .state-example,.territory-columns { grid-template-columns:1fr; }.state-example > div { min-height:210px; }.state-example b { margin-top:45px; }
  .compare-matrix { overflow-x:auto; }.compare-matrix > div { min-width:620px; }.continuity-flow { grid-template-columns:1fr; }.continuity-flow > i { transform:rotate(90deg); justify-self:center; }.continuity-checks { grid-template-columns:1fr 1fr; }
  .resource-index { grid-template-columns:1fr; }.resource-index > a { min-height:220px; grid-template-columns:35px 1fr; }.resource-index > a > i { display:none; }.resource-index h2 { margin-top:40px; }
  .lab-intro,.studio-grid,.contact-layout { grid-template-columns:1fr; gap:35px; }.lab-page .product-switcher { max-width:calc(100% - 40px); }.lab-page .product-stage-wrap { width:calc(100% - 40px); }
  .form-row { grid-template-columns:1fr!important; }.form-section { grid-template-columns:1fr; }.form-section > span { margin-bottom:-5px; }
  .policy-toc { grid-template-columns:1fr; }.policy-tr { grid-template-columns:1fr; }.policy-content > section { padding-bottom:55px; margin-bottom:55px; }
  .footer-bottom > div { flex-wrap:wrap; }
}


/* 2026-07 professional refinement: fewer repeated cards, deeper resource UI */
.footer-legal{padding:0 0 18px;color:rgba(255,255,255,.28);font-size:7px;letter-spacing:.08em;text-transform:uppercase}
.footer-brand small{color:rgba(255,255,255,.36)}

/* Replace repeated floating-card grids with editorial systems */
.deliverable-grid{grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.deliverable-grid article,.usecase-grid article{min-height:0;padding:25px 18px 25px 0;background:transparent;border:0;border-radius:0;display:grid;grid-template-columns:48px 1fr;column-gap:16px;align-items:start}
.deliverable-grid article:nth-child(odd){border-right:1px solid var(--line-strong);padding-right:26px}
.deliverable-grid article:nth-child(even){padding-left:26px}
.deliverable-grid article:nth-child(-n+2){border-bottom:1px solid var(--line-strong)}
.deliverable-grid h3,.usecase-grid h3{margin:0 0 7px;font-size:18px}
.deliverable-grid p,.usecase-grid p{grid-column:2;margin:0}
.deliverable-grid span{grid-row:1 / span 2;font-size:9px;padding-top:3px}
.process-grid{gap:0;border-top:1px solid var(--line-strong)}
.process-grid article{min-height:0;padding:28px 26px 28px 0;background:transparent;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;box-shadow:none}
.process-grid article+article{padding-left:26px;border-left:1px solid var(--line-strong)}
.process-grid h3{margin:34px 0 8px;font-size:20px}
.related-grid{gap:0;border-top:1px solid var(--line-strong)}
.related-grid a{min-height:170px;padding:23px 48px 22px 0;background:transparent;border:0;border-bottom:1px solid var(--line-strong);border-radius:0}
.related-grid a+a{padding-left:24px;border-left:1px solid var(--line-strong)}
.related-grid a:hover{transform:none;background:transparent;box-shadow:none}
.related-grid h3{margin:36px 0 8px;font-size:20px}
.related-grid i{right:18px;bottom:22px}

.workspace-results{margin-top:12px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.workspace-results-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line);color:var(--taupe);font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.workspace-results-head small{padding:4px 7px;border-radius:999px;background:var(--warm);color:var(--wine);font-size:8px}
.workspace-results-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.workspace-results-grid>div{padding:12px 14px;border-right:1px solid var(--line)}
.workspace-results-grid>div:last-child{border-right:0}
.workspace-results-grid span{display:block;color:var(--taupe);font-size:8px}
.workspace-results-grid b{display:block;margin-top:4px;color:var(--wine);font-size:16px}
.summary-metrics-five{grid-template-columns:repeat(5,1fr)}
.summary-metrics-five>div{padding-right:12px}
.result-disclaimer{margin:8px 0 0;color:var(--taupe);font-size:9px;line-height:1.5}
.film-intro-link{display:inline-flex;margin-top:14px}
.trust-rules{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.trust-rules>div{padding:24px 28px 24px 0}
.trust-rules>div+div{padding-left:28px;border-left:1px solid var(--line-strong)}
.trust-rules span{color:var(--coral);font-size:10px;font-weight:700}
.trust-rules b{display:block;margin:24px 0 7px;color:var(--wine);font-size:18px}
.trust-rules p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}

/* Six-film editorial library */
.film-library-section{padding:48px 0 88px;background:var(--wine-dark)}
.film-library{display:grid;gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden}
.film-study{display:grid;grid-template-columns:1.25fr .75fr;min-height:470px;background:var(--wine-dark)}
.film-study-reverse{grid-template-columns:.75fr 1.25fr}
.film-study-reverse .film-study-media{order:2}
.film-study-media{position:relative;min-width:0;background:#211010;overflow:hidden}
.film-study-media video{width:100%;height:100%;min-height:470px;object-fit:cover;display:block}
.film-study-copy{display:flex;flex-direction:column;justify-content:center;padding:54px;color:rgba(255,255,255,.72)}
.film-study-copy>span{color:var(--wheat);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.film-study-copy h2{margin:28px 0 16px;color:#fff;font-size:34px;line-height:1.03;letter-spacing:-.045em}
.film-study-copy>p{margin:0;color:rgba(255,255,255,.62);font-size:14px;line-height:1.65}
.film-study-copy dl{margin:34px 0 0;border-top:1px solid rgba(255,255,255,.12)}
.film-study-copy dl div{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.film-study-copy dt{color:rgba(255,255,255,.4);font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.film-study-copy dd{margin:0;color:rgba(255,255,255,.8);font-size:12px}
.film-reading{padding:92px 0;background:var(--warm)}
.film-reading-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}
.film-reading-grid h2{max-width:450px;margin:12px 0 0;color:var(--wine);font-size:42px;line-height:1.03;letter-spacing:-.045em}
.film-reading-list{border-top:1px solid var(--line-strong)}
.film-reading-list>div{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:19px 0;border-bottom:1px solid var(--line-strong)}
.film-reading-list span{color:var(--coral);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.film-reading-list p{margin:0;color:var(--wine);font-size:15px}

/* Campaign laboratory sequence and results */
.lab-operating-section{padding:90px 0;background:var(--warm)}
.lab-operating-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:start}
.lab-operating-copy h2{margin:12px 0 18px;color:var(--wine);font-size:42px;line-height:1.03;letter-spacing:-.045em}
.lab-operating-copy>p{color:var(--muted);font-size:14px;line-height:1.65}
.lab-sequence{margin:38px 0 0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}
.lab-sequence li{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid var(--line-strong)}
.lab-sequence span{color:var(--coral);font-size:10px;font-weight:700}
.lab-sequence b{color:var(--wine);font-size:15px}
.lab-sequence p{margin:4px 0 0;color:var(--muted);font-size:12px}
.lab-results-panel{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm)}
.lab-results-head{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}
.lab-results-head span{display:block;color:var(--taupe);font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.lab-results-head b{display:block;margin-top:5px;color:var(--wine);font-size:18px}
.lab-results-head small{color:var(--taupe);font-size:10px}
.lab-results-summary{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.lab-results-summary div{padding:20px;border-right:1px solid var(--line)}
.lab-results-summary div:last-child{border-right:0}
.lab-results-summary span{display:block;color:var(--taupe);font-size:9px}
.lab-results-summary b{display:block;margin-top:7px;color:var(--wine);font-size:22px}
.lab-results-table{padding:8px 24px}
.lab-results-row{display:grid;grid-template-columns:1fr .7fr .7fr 1.4fr;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #eee7e2;color:var(--taupe);font-size:12px}
.lab-results-row:last-child{border-bottom:0}
.lab-results-row b{color:var(--wine)}
.lab-results-row em{color:var(--coral);font-style:normal;font-weight:600}
.lab-results-labels{padding:10px 0;color:var(--taupe);font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.lab-results-panel>p{margin:0;padding:16px 24px;background:var(--paper);border-top:1px solid var(--line);color:var(--taupe);font-size:9px;line-height:1.5}

/* Campaign policy placement */
.campaign-policy-note{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:26px;padding:20px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.campaign-policy-note span{display:block;color:var(--wine);font-size:13px;font-weight:700}
.campaign-policy-note p{max-width:720px;margin:5px 0 0;color:var(--muted);font-size:12px}
.campaign-policy-note a{flex:0 0 auto;color:var(--coral);font-size:12px;font-weight:600}

/* About page */
.about-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;padding-top:100px;padding-bottom:100px}
.about-intro h2,.about-method h2,.about-facts h2,.about-boundary h2{margin:12px 0 0;color:var(--wine);font-size:44px;line-height:1.03;letter-spacing:-.05em}
.about-intro-copy{padding-top:24px}
.about-intro-copy p{margin:0 0 22px;color:var(--muted);font-size:17px;line-height:1.65}
.about-method{padding:96px 0;background:var(--warm)}
.about-method-head{max-width:730px}
.about-method-list{margin-top:58px;border-top:1px solid var(--line-strong)}
.about-method-list>div{display:grid;grid-template-columns:70px 1fr 1.2fr;gap:30px;align-items:start;padding:27px 0;border-bottom:1px solid var(--line-strong)}
.about-method-list span{color:var(--coral);font-size:10px;font-weight:700}
.about-method-list h3{margin:0;color:var(--wine);font-size:20px}
.about-method-list p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.about-facts{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;padding-top:100px;padding-bottom:100px;align-items:start}
.about-facts-copy>p:last-child{margin:22px 0 0;color:var(--muted);font-size:15px;line-height:1.65}
.about-facts-list{margin:0;border-top:1px solid var(--line-strong)}
.about-facts-list div{display:grid;grid-template-columns:150px 1fr;gap:30px;padding:19px 0;border-bottom:1px solid var(--line-strong)}
.about-facts-list dt{color:var(--taupe);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.about-facts-list dd{margin:0;color:var(--wine);font-size:15px;font-weight:600}
.about-boundary{padding:90px 0;background:var(--wine);color:#fff}
.about-boundary-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}
.about-boundary .section-kicker{color:var(--wheat)}
.about-boundary h2{color:#fff}
.about-boundary p{margin:8px 0 24px;color:rgba(255,255,255,.65);font-size:15px;line-height:1.7}
.about-boundary .text-link{color:var(--wheat)}

/* Prompt library */
.prompt-library-section{padding-top:54px;padding-bottom:100px}
.prompt-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:13px;border:1px solid var(--line-strong);border-radius:13px;background:#fff}
.prompt-library-toolbar label{flex:1;display:flex;align-items:center;gap:10px;padding:0 12px}
.prompt-library-toolbar label svg{width:17px;fill:none;stroke:var(--taupe);stroke-width:1.5}
.prompt-library-toolbar input{width:100%;padding:9px 0;border:0;outline:0;background:transparent;color:var(--wine);font:inherit;font-size:13px}
.prompt-library-toolbar>div{display:flex;gap:4px}
.prompt-library-toolbar button{padding:9px 12px;border:0;border-radius:8px;background:transparent;color:var(--taupe);font:inherit;font-size:11px;font-weight:600;cursor:pointer}
.prompt-library-toolbar button span{margin-left:5px;opacity:.55}
.prompt-library-toolbar button.is-active{background:var(--wine);color:#fff}
.prompt-library-meta{display:flex;justify-content:space-between;align-items:center;margin:26px 0 12px;color:var(--taupe);font-size:11px}
.prompt-library-meta p{margin:0}
.prompt-library-meta span{color:var(--wine);font-weight:700}
.prompt-list{border-top:1px solid var(--line-strong)}
.prompt-entry{border-bottom:1px solid var(--line-strong)}
.prompt-entry[hidden]{display:none}
.prompt-entry-summary{width:100%;display:grid;grid-template-columns:58px 1fr 82px;gap:20px;align-items:start;padding:24px 0;border:0;background:transparent;text-align:left;cursor:pointer}
.prompt-entry-number{padding-top:4px;color:var(--coral);font-size:10px;font-weight:700}
.prompt-entry-main b{display:block;max-width:850px;margin-top:11px;color:var(--wine);font-size:18px;line-height:1.42;font-weight:600}
.prompt-entry-tags{display:flex;gap:6px}
.prompt-entry-tags i{padding:4px 7px;border-radius:999px;background:var(--warm);color:var(--wine);font-size:9px;font-style:normal;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.prompt-entry-tags i+ i{background:var(--paper);border:1px solid var(--line)}
.prompt-entry-action{display:flex;justify-content:space-between;align-items:center;padding-top:3px;color:var(--taupe);font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.prompt-entry-action i{color:var(--coral);font-size:18px;font-style:normal}
.prompt-entry-detail{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:24px;margin:0 0 24px 78px;padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:11px}
.prompt-entry-detail[hidden]{display:none}
.prompt-entry-detail span{display:block;color:var(--taupe);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.prompt-entry-detail p{margin:7px 0 0;color:var(--wine);font-size:12px;line-height:1.5}
.prompt-copy{align-self:center;padding:10px 13px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--wine);font:inherit;font-size:10px;font-weight:700;cursor:pointer}
.prompt-entry.is-open .prompt-entry-main b{color:var(--coral)}
.prompt-library-empty{padding:50px 0;border-top:1px solid var(--line);color:var(--taupe);text-align:center}
.prompt-library-note{padding:90px 0;background:var(--warm)}
.prompt-library-note>.section-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}
.prompt-library-note h2{margin:12px 0 0;color:var(--wine);font-size:42px;line-height:1.03;letter-spacing:-.045em}
.prompt-library-note p{margin:5px 0 22px;color:var(--muted);font-size:15px;line-height:1.7}

@media(max-width:960px){
  .deliverable-grid{grid-template-columns:1fr}.deliverable-grid article:nth-child(odd){border-right:0;padding-right:0}.deliverable-grid article:nth-child(even){padding-left:0}.deliverable-grid article{border-bottom:1px solid var(--line-strong)!important}
  .process-grid{grid-template-columns:1fr}.process-grid article+article{padding-left:0;border-left:0}
  .related-grid{grid-template-columns:1fr}.related-grid a+a{padding-left:0;border-left:0}
  .workspace-results-grid{grid-template-columns:repeat(2,1fr)}.workspace-results-grid>div:nth-child(2){border-right:0}.workspace-results-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .summary-metrics-five{grid-template-columns:repeat(3,1fr)}
  .trust-rules{grid-template-columns:1fr}.trust-rules>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line-strong)}
  .film-study,.film-study-reverse{grid-template-columns:1fr}.film-study-reverse .film-study-media{order:0}.film-study-media video{min-height:360px}.film-study-copy{padding:40px}
  .film-reading-grid,.lab-operating-layout,.about-intro,.about-facts,.about-boundary-grid,.prompt-library-note>.section-shell{grid-template-columns:1fr;gap:44px}
  .lab-results-summary{grid-template-columns:repeat(2,1fr)}.lab-results-summary div:nth-child(2){border-right:0}.lab-results-summary div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .about-method-list>div{grid-template-columns:50px 1fr}.about-method-list p{grid-column:2}
  .prompt-library-toolbar{align-items:stretch;flex-direction:column}.prompt-library-toolbar>div{overflow:auto}.prompt-entry-detail{grid-template-columns:1fr 1fr;margin-left:0}.prompt-copy{justify-self:start}
}
@media(max-width:620px){
  .workspace-results-grid,.summary-metrics-five,.lab-results-summary{grid-template-columns:1fr}.workspace-results-grid>div,.lab-results-summary div{border-right:0!important;border-bottom:1px solid var(--line)}
  .film-study-media video{min-height:250px}.film-study-copy{padding:30px 24px}.film-study-copy h2{font-size:28px}.film-study-copy dl div{grid-template-columns:1fr;gap:5px}
  .film-reading-list>div{grid-template-columns:1fr;gap:8px}.lab-results-row{grid-template-columns:1fr .6fr .6fr}.lab-results-row>*:last-child{grid-column:1/-1}.lab-results-labels>*:last-child{display:none}
  .campaign-policy-note{align-items:flex-start;flex-direction:column}.about-method-list>div{grid-template-columns:40px 1fr}.about-intro h2,.about-method h2,.about-facts h2,.about-boundary h2,.prompt-library-note h2{font-size:34px}
  .about-facts-list div{grid-template-columns:1fr;gap:6px}.prompt-entry-summary{grid-template-columns:36px 1fr}.prompt-entry-action{grid-column:2;margin-top:4px}.prompt-entry-detail{grid-template-columns:1fr}.prompt-library-meta{align-items:flex-start;flex-direction:column;gap:6px}
}


/* 2026-07-31 polish update */
.hero-copy > .announcement-pill{display:none!important}
.hero-copy h1{max-width:1100px}
.site-footer{margin-top:clamp(44px,6vw,84px);padding-top:8px}
.footer-grid{padding:78px 0 42px}
.footer-bottom{min-height:auto;grid-template-columns:minmax(0,1fr) auto auto;gap:22px;padding:18px 0 12px}
.footer-bottom>p:nth-child(2){justify-self:center;text-align:center;max-width:430px;line-height:1.55}
.footer-bottom>div{display:flex;align-items:center;justify-self:end;gap:0}
.footer-bottom>div a{display:inline-flex;align-items:center;position:relative;padding:0 0 0 14px;margin-left:14px}
.footer-bottom>div a:first-child{padding-left:0;margin-left:0}
.footer-bottom>div a+a::before{content:"";position:absolute;left:0;top:50%;width:1px;height:11px;background:rgba(255,255,255,.16);transform:translateY(-50%)}
.footer-legal{padding:6px 0 24px;color:rgba(255,255,255,.24);font-size:7px;letter-spacing:.08em;text-transform:uppercase}
.page-cta{margin-bottom:0}
.market-strip div{gap:18px}.market-strip i{margin:0}
.service-index-grid{gap:16px}.service-index-grid > a{padding:34px;background:linear-gradient(180deg,rgba(255,255,255,1),rgba(251,250,247,1));}
.service-index-grid h2,.resource-index h2{font-size:32px}
.system-flow>div{background:rgba(255,255,255,.7)}
.breadcrumbs{gap:10px}
@media (max-width:960px){
  .footer-bottom{grid-template-columns:1fr;justify-items:start;gap:10px}
  .footer-bottom>p:nth-child(2),.footer-bottom>div{justify-self:start;text-align:left}
}


/* Final route consistency and interaction safeguards */
html{background:var(--paper-bright)}
body.subpage main{min-height:55vh}
body.subpage .page-hero-inner{width:min(900px,100%)}
.nav-link[aria-current="page"]{color:var(--wine);background:rgba(67,28,28,.045)}
.button:focus-visible,.nav-link:focus-visible,.nav-trigger:focus-visible,.menu-toggle:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
[hidden]{display:none!important}
@media(max-width:760px){.site-footer{margin-top:42px}.footer-grid{padding-top:58px}.page-hero-inner{width:min(var(--shell),calc(100% - 40px))}}


/* 2026-07-31 briefing walkthrough and layout refinement */
.hero-statement{max-width:1160px!important;font-size:clamp(50px,5.75vw,78px)!important}
.hero-statement .hero-line{display:block;white-space:nowrap;color:var(--wine)}
.hero-statement .hero-line>span{color:var(--wine)}
.hero-statement .hero-line em{color:var(--coral);font-style:normal}
.hero-statement .hero-line-coral{color:var(--coral)}

.briefing-walkthrough{position:relative;overflow:hidden}
.briefing-walkthrough::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(67,28,28,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(67,28,28,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);pointer-events:none}
.briefing-walkthrough>.section-shell{position:relative;z-index:1}
.briefing-walkthrough-heading{max-width:760px;margin-bottom:34px}
.briefing-walkthrough-shell{display:grid;grid-template-columns:360px minmax(0,1fr);gap:14px;align-items:stretch}
.briefing-walkthrough-tabs{display:grid;gap:10px}
.briefing-walkthrough-tabs button{min-height:126px;display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;padding:20px;color:var(--muted);text-align:left;background:rgba(255,255,255,.68);border:1px solid var(--line);border-radius:14px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.briefing-walkthrough-tabs button:hover{transform:translateY(-1px);border-color:var(--line-dark);background:var(--white)}
.briefing-walkthrough-tabs button.is-active{color:var(--wine);background:var(--white);border-color:rgba(67,28,28,.24);box-shadow:var(--shadow-md)}
.briefing-walkthrough-tabs button>span{width:40px;height:40px;display:grid;place-items:center;color:var(--coral);background:var(--paper);border:1px solid var(--line);border-radius:10px;font-size:10px;font-weight:700}
.briefing-walkthrough-tabs button.is-active>span{color:var(--white);background:var(--wine);border-color:var(--wine)}
.briefing-walkthrough-tabs button b,.briefing-walkthrough-tabs button small{display:block}
.briefing-walkthrough-tabs button b{margin-bottom:5px;color:var(--wine);font-size:15px}
.briefing-walkthrough-tabs button small{color:var(--taupe);font-size:11px;line-height:1.45}
.briefing-walkthrough-tabs button i{align-self:start;padding:5px 8px;color:var(--taupe);background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:8px;font-style:normal;font-weight:700;white-space:nowrap}
.briefing-walkthrough-stage{overflow:hidden;background:var(--white);border:1px solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-lg)}
.briefing-walkthrough-media{position:relative;background:var(--wine-dark);border-bottom:1px solid var(--line)}
.briefing-walkthrough-media video{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--wine-dark)}
.walkthrough-video-control{right:18px;bottom:18px}
.briefing-walkthrough-caption{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1fr);gap:28px;align-items:start;padding:24px 26px}
.briefing-walkthrough-caption span{color:var(--coral);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.briefing-walkthrough-caption h3{margin:7px 0 0;color:var(--wine);font-size:22px;letter-spacing:-.035em}
.briefing-walkthrough-caption p{margin:2px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.campaign-briefing-section{padding-top:clamp(82px,9vw,128px)}
.campaign-progress{margin:0 0 26px;padding:16px;background:var(--white);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow-sm)}
.campaign-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.campaign-progress-head span{color:var(--wine);font-size:11px;font-weight:700}
.campaign-progress-head b{color:var(--coral);font-size:12px}
.campaign-progress-track{height:8px;margin:12px 0 9px;overflow:hidden;background:var(--warm);border-radius:999px}
.campaign-progress-track i{width:0;height:100%;display:block;background:linear-gradient(90deg,var(--coral),#ef8c6f);border-radius:inherit;transition:width .25s ease}
.campaign-progress p{margin:0;color:var(--taupe);font-size:9px}
.form-section.is-active{border-color:rgba(231,111,81,.32)}
.form-section.is-complete>span{color:var(--white);background:var(--success);border-color:var(--success)}

/* Keep right-aligned text CTAs on a single line at desktop widths. */
@media (min-width:761px){
  .page-cta .button,.campaign-policy-note>a,.text-link,.mega-aside>a,.ui-aside>a,.architecture-detail-head>a,.section-heading>a{white-space:nowrap;flex-shrink:0}
}
@media (max-width:1040px){
  .briefing-walkthrough-shell{grid-template-columns:1fr}
  .briefing-walkthrough-tabs{grid-template-columns:repeat(3,1fr)}
  .briefing-walkthrough-tabs button{min-height:156px;grid-template-columns:40px 1fr}
  .briefing-walkthrough-tabs button i{grid-column:2}
}
@media (max-width:760px){
  .hero-statement{font-size:clamp(42px,12vw,58px)!important}
  .hero-statement .hero-line{white-space:normal}
  .briefing-walkthrough-tabs{grid-template-columns:1fr}
  .briefing-walkthrough-tabs button{min-height:108px;grid-template-columns:40px 1fr auto}
  .briefing-walkthrough-tabs button i{grid-column:auto}
  .briefing-walkthrough-caption{grid-template-columns:1fr;gap:12px;padding:20px}
}


/* 2026-08-04 uploaded identity and physical prompt-film expansion */
.brand-mark{width:31px;height:31px;display:block;flex:0 0 auto;object-fit:contain;stroke:none!important}
.wordmark{gap:10px}
.footer-wordmark .brand-mark{width:32px;height:32px;stroke:none!important}
.stage-logo,.visual-mark{width:34px;height:34px;display:grid;place-items:center;padding:3px;color:inherit;background:var(--paper-bright);border:1px solid var(--line-strong);border-radius:9px;overflow:hidden;box-shadow:0 1px 2px rgba(43,25,25,.05)}
.stage-logo img,.visual-mark img{width:100%;height:100%;display:block;object-fit:contain}
.stage-brand{gap:10px}
.stage-brand b{font-size:12px}
.ui-toolbar>div{gap:10px}
.film-library-divider{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);gap:70px;align-items:end;padding:70px 64px;color:rgba(255,255,255,.72);background:linear-gradient(135deg,#371818,#241010);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.film-library-divider .section-kicker{color:var(--wheat)}
.film-library-divider h2{max-width:620px;margin:10px 0 16px;color:#fff;font-size:clamp(34px,4vw,52px);line-height:1.02;letter-spacing:-.055em}
.film-library-divider>div>p:not(.section-kicker){max-width:700px;margin:0;color:rgba(255,255,255,.58);font-size:14px;line-height:1.7}
.dashboard-purpose-grid{display:grid;gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:12px;overflow:hidden}
.dashboard-purpose-grid span{display:block;padding:18px 20px;background:rgba(255,255,255,.035)}
.dashboard-purpose-grid b,.dashboard-purpose-grid small{display:block}
.dashboard-purpose-grid b{color:var(--wheat);font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.dashboard-purpose-grid small{margin-top:5px;color:rgba(255,255,255,.58);font-size:11px;line-height:1.45}
@media(max-width:900px){.film-library-divider{grid-template-columns:1fr;gap:32px;padding:48px 40px}.dashboard-purpose-grid{max-width:620px}}
@media(max-width:560px){.brand-mark{width:28px;height:28px}.film-library-divider{padding:38px 24px}.film-library-divider h2{font-size:34px}}


/* 2026-08-04 prompt-film page continuity rebuild */
.prompt-film-showcase{padding:clamp(72px,8vw,112px) 0;background:var(--wine-dark)}
.prompt-film-showcase-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:56px;align-items:end;margin-bottom:36px}
.prompt-film-showcase-head .section-kicker{color:var(--wheat)}
.prompt-film-showcase-head h2{max-width:720px;margin:10px 0 14px;color:#fff;font-size:clamp(36px,4.4vw,58px);line-height:1.01;letter-spacing:-.055em}
.prompt-film-showcase-head>div>p:last-child{max-width:760px;margin:0;color:rgba(255,255,255,.6);font-size:14px;line-height:1.7}
.prompt-film-filters{display:flex;align-items:center;gap:6px;padding:5px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:11px}
.prompt-film-filters button{min-height:36px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;color:rgba(255,255,255,.55);background:transparent;border:0;border-radius:7px;cursor:pointer;font-size:10px;font-weight:700;transition:background .16s ease,color .16s ease}
.prompt-film-filters button span{min-width:19px;height:19px;display:grid;place-items:center;color:inherit;background:rgba(255,255,255,.07);border-radius:999px;font-size:8px}
.prompt-film-filters button:hover,.prompt-film-filters button.is-active{color:var(--wine);background:var(--paper-bright)}
.prompt-film-filters button.is-active span{color:#fff;background:var(--coral)}
.prompt-film-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.prompt-film-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#341717;border:1px solid rgba(255,255,255,.13);border-radius:16px;box-shadow:0 18px 46px rgba(0,0,0,.15);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.prompt-film-card:hover{transform:translateY(-2px);border-color:rgba(217,192,141,.34);box-shadow:0 24px 58px rgba(0,0,0,.2)}
.prompt-film-card[hidden]{display:none!important}
.prompt-film-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1e0e0e;border-bottom:1px solid rgba(255,255,255,.11)}
.prompt-film-media video{width:100%;height:100%;display:block;object-fit:cover;background:#1e0e0e}
.prompt-film-control{right:14px;bottom:14px}
.prompt-film-copy{flex:1;display:flex;flex-direction:column;padding:28px 30px 30px;color:rgba(255,255,255,.72)}
.prompt-film-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}
.prompt-film-heading span{color:var(--wheat);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.prompt-film-heading small{color:rgba(255,255,255,.38);font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.prompt-film-copy h3{min-height:2.15em;margin:20px 0 12px;color:#fff;font-size:clamp(25px,2.3vw,34px);line-height:1.04;letter-spacing:-.045em}
.prompt-film-copy>p{min-height:4.8em;margin:0;color:rgba(255,255,255,.6);font-size:13px;line-height:1.65}
.prompt-film-copy dl{margin:auto 0 0;padding-top:26px}
.prompt-film-copy dl div{display:grid;grid-template-columns:108px minmax(0,1fr);gap:18px;padding:13px 0;border-top:1px solid rgba(255,255,255,.11)}
.prompt-film-copy dl div:last-child{border-bottom:1px solid rgba(255,255,255,.11)}
.prompt-film-copy dt{color:rgba(255,255,255,.36);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.prompt-film-copy dd{margin:0;color:rgba(255,255,255,.82);font-size:11px;line-height:1.45}
@media(max-width:980px){
  .prompt-film-showcase-head{grid-template-columns:1fr;gap:28px;align-items:start}
  .prompt-film-filters{width:max-content;max-width:100%;flex-wrap:wrap}
  .prompt-film-grid{grid-template-columns:1fr}
  .prompt-film-copy h3,.prompt-film-copy>p{min-height:0}
}
@media(max-width:560px){
  .prompt-film-showcase{padding:64px 0}
  .prompt-film-filters{width:100%;display:grid;grid-template-columns:repeat(2,1fr)}
  .prompt-film-filters button{justify-content:center}
  .prompt-film-grid{gap:16px}
  .prompt-film-card{border-radius:13px}
  .prompt-film-copy{padding:24px 22px 25px}
  .prompt-film-copy h3{font-size:28px}
  .prompt-film-copy dl div{grid-template-columns:1fr;gap:5px}
}

/* 2026-08-04 final prompt-film, discover and footer refinement */
.footer-brand-mark{
  width:34px;
  height:34px;
  object-fit:contain;
}
.footer-wordmark{
  align-items:center;
}

/* Prompt-film page: consistent two-column rhythm and equal card geometry */
.prompt-film-showcase{
  padding:clamp(76px,8vw,116px) 0 clamp(84px,9vw,124px);
}
.prompt-film-showcase-head{
  margin-bottom:44px;
}
.prompt-film-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:1fr;
  gap:28px;
  align-items:stretch;
}
.prompt-film-card{
  height:100%;
  min-height:0;
}
.prompt-film-media{
  flex:0 0 auto;
  aspect-ratio:16/9;
}
.prompt-film-media video{
  object-fit:contain;
}
.prompt-film-copy{
  min-height:368px;
  padding:30px 32px 32px;
}
.prompt-film-heading{
  min-height:20px;
}
.prompt-film-copy h3{
  min-height:3.15em;
  margin:18px 0 13px;
}
.prompt-film-copy>p{
  min-height:5.05em;
}
.prompt-film-copy dl{
  width:100%;
  padding-top:24px;
}
.prompt-film-copy dl div{
  min-height:52px;
  align-items:start;
}
.prompt-film-control{
  min-height:34px;
  right:16px;
  bottom:16px;
}
.film-reading{
  padding:clamp(84px,9vw,124px) 0;
}

/* Discover page: an actual AI advertising placement preview */
.ai-discover-preview{
  min-width:0;
  overflow:hidden;
  background:var(--white);
  border:1px solid var(--line-strong);
  border-radius:16px;
  box-shadow:var(--shadow-lg);
}
.ai-preview-toolbar{
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 18px;
  background:linear-gradient(180deg,#fff,#fcfbf8);
  border-bottom:1px solid var(--line);
}
.ai-preview-brand{
  min-width:0;
  display:flex;
  align-items:center;
  gap:11px;
}
.ai-preview-brand>span:last-child{
  min-width:0;
}
.ai-preview-brand b,.ai-preview-brand small{
  display:block;
}
.ai-preview-brand b{
  color:var(--wine);
  font-size:12px;
  letter-spacing:-.015em;
}
.ai-preview-brand small{
  margin-top:2px;
  color:var(--taupe);
  font-size:8px;
}
.ai-preview-layout{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(260px,.82fr);
  min-height:620px;
}
.ai-conversation-panel{
  min-width:0;
  padding:24px;
  background:
    linear-gradient(rgba(67,28,28,.032) 1px,transparent 1px),
    linear-gradient(90deg,rgba(67,28,28,.032) 1px,transparent 1px),
    var(--paper-bright);
  background-size:28px 28px;
  border-right:1px solid var(--line);
}
.ai-panel-label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.ai-panel-label span{
  color:var(--wine);
  font-size:10px;
  font-weight:700;
}
.ai-panel-label small{
  color:var(--taupe);
  font-size:8px;
}
.ai-user-message{
  max-width:88%;
  margin-left:auto;
  padding:15px 16px;
  background:var(--white);
  border:1px solid var(--line-strong);
  border-radius:13px 13px 3px 13px;
  box-shadow:var(--shadow-sm);
}
.ai-user-message span{
  display:block;
  margin-bottom:6px;
  color:var(--coral);
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ai-user-message p{
  margin:0;
  color:var(--wine);
  font-size:12px;
  line-height:1.55;
}
.ai-answer-frame{
  margin:16px 0 18px;
  padding:16px;
  background:rgba(255,255,255,.76);
  border:1px solid var(--line);
  border-radius:12px;
}
.ai-answer-label{
  display:block;
  margin-bottom:10px;
  color:var(--taupe);
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ai-answer-frame ul{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.ai-answer-frame li{
  min-height:58px;
  display:flex;
  align-items:flex-end;
  padding:10px;
  color:var(--wine);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:8px;
  font-size:9px;
  font-weight:600;
  line-height:1.35;
}
.ai-sponsored-unit{
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:18px;
  padding:18px;
  background:var(--white);
  border:1px solid var(--line-strong);
  border-radius:14px;
  box-shadow:var(--shadow-md);
}
.ai-product-visual{
  min-height:205px;
  display:grid;
  place-items:center;
  color:var(--wine);
  background:var(--warm);
  border:1px solid rgba(67,28,28,.08);
  border-radius:10px;
}
.ai-product-visual svg{
  width:96px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ai-sponsored-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.ai-sponsored-copy>span{
  color:var(--coral);
  font-size:8px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.ai-sponsored-copy h3{
  margin:12px 0 9px;
  color:var(--wine);
  font-size:23px;
  line-height:1.08;
  letter-spacing:-.04em;
}
.ai-sponsored-copy p{
  margin:0;
  color:var(--muted);
  font-size:10px;
  line-height:1.55;
}
.ai-sponsored-copy>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid var(--line);
}
.ai-sponsored-copy b{
  color:var(--wine);
  font-size:12px;
}
.ai-sponsored-copy a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:0 11px;
  color:var(--white);
  background:var(--coral);
  border-radius:7px;
  font-size:9px;
  font-weight:700;
  white-space:nowrap;
}
.ai-preview-review{
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:24px;
  background:#fff;
}
.ai-review-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding-bottom:15px;
  border-bottom:1px solid var(--line);
}
.ai-review-heading span{
  color:var(--wine);
  font-size:10px;
  font-weight:700;
}
.ai-review-heading b{
  color:var(--success);
  font-size:9px;
}
.ai-review-list{
  display:grid;
}
.ai-review-list>div{
  display:grid;
  grid-template-columns:26px minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  padding:15px 0;
  border-bottom:1px solid var(--line);
}
.ai-review-list>div>span{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  color:var(--coral);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:7px;
  font-size:7px;
  font-weight:800;
}
.ai-review-list p{
  margin:0;
}
.ai-review-list b,.ai-review-list small{
  display:block;
}
.ai-review-list b{
  color:var(--wine);
  font-size:9px;
}
.ai-review-list small{
  margin-top:3px;
  color:var(--taupe);
  font-size:8px;
  line-height:1.4;
}
.ai-review-summary{
  margin-top:auto;
  padding:16px;
  color:var(--wine);
  background:var(--wheat);
  border-radius:10px;
}
.ai-review-summary span{
  display:block;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ai-review-summary p{
  margin:8px 0 0;
  font-size:10px;
  line-height:1.5;
}

@media(max-width:1080px){
  .prompt-film-grid{grid-template-columns:1fr}
  .prompt-film-copy{min-height:0}
  .prompt-film-copy h3,.prompt-film-copy>p{min-height:0}
  .ai-preview-layout{grid-template-columns:1fr}
  .ai-conversation-panel{border-right:0;border-bottom:1px solid var(--line)}
  .ai-preview-review{min-height:420px}
}
@media(max-width:760px){
  .prompt-film-showcase-head{margin-bottom:32px}
  .prompt-film-copy{padding:25px 23px 27px}
  .prompt-film-copy h3{font-size:28px}
  .prompt-film-copy dl div{min-height:0}
  .ai-preview-toolbar{align-items:flex-start;flex-direction:column;padding:16px}
  .ai-conversation-panel,.ai-preview-review{padding:18px}
  .ai-answer-frame ul{grid-template-columns:1fr}
  .ai-answer-frame li{min-height:48px}
  .ai-sponsored-unit{grid-template-columns:1fr}
  .ai-product-visual{min-height:180px}
  .ai-sponsored-copy h3{font-size:25px}
  .ai-sponsored-copy>div{align-items:flex-start;flex-direction:column}
  .ai-sponsored-copy a{width:100%;justify-content:center}
}


/* 2026-08-04 v6 final continuity, prompt-film and identity corrections */
.brand-mark,
.footer-brand-mark{
  image-rendering:auto;
  object-fit:contain;
  object-position:center;
}
.stage-logo,
.visual-mark{
  width:32px;
  height:32px;
  flex:0 0 32px;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:visible;
}
.stage-logo img,
.visual-mark img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}

/* Prompt Films: one controlled full-width study per row. */
.prompt-film-showcase{
  padding:clamp(78px,8vw,116px) 0 clamp(88px,9vw,132px);
  overflow:hidden;
}
.prompt-film-showcase>.section-shell{
  width:min(1240px,calc(100% - (var(--pad) * 2)));
}
.prompt-film-showcase-head{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:48px;
  margin-bottom:46px;
}
.prompt-film-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:30px;
  align-items:stretch;
}
.prompt-film-card{
  min-width:0;
  min-height:420px;
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(360px,.85fr);
  align-items:stretch;
  overflow:hidden;
  isolation:isolate;
  background:#341717;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  box-shadow:0 22px 60px rgba(0,0,0,.18);
}
.prompt-film-card:hover{
  transform:translateY(-2px);
  border-color:rgba(217,192,141,.36);
  box-shadow:0 28px 68px rgba(0,0,0,.23);
}
.prompt-film-card:nth-child(even) .prompt-film-media{order:2;border-right:0;border-left:1px solid rgba(255,255,255,.11)}
.prompt-film-card:nth-child(even) .prompt-film-copy{order:1}
.prompt-film-media{
  position:relative;
  min-width:0;
  min-height:420px;
  height:100%;
  aspect-ratio:auto;
  overflow:hidden;
  background:#210e0e;
  border-right:1px solid rgba(255,255,255,.11);
  border-bottom:0;
}
.prompt-film-media video{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center;
  background:#210e0e;
  cursor:pointer;
}
.prompt-film-control{
  z-index:4;
  top:auto;
  right:18px;
  bottom:18px;
  left:auto;
  margin:0;
  white-space:nowrap;
  transform:none;
}
.prompt-film-copy{
  min-width:0;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:38px 38px 34px;
}
.prompt-film-heading{
  min-height:20px;
  align-items:center;
}
.prompt-film-copy h3{
  min-height:0;
  margin:30px 0 15px;
  font-size:clamp(30px,3vw,42px);
  line-height:1.01;
  letter-spacing:-.05em;
}
.prompt-film-copy>p{
  min-height:0;
  margin:0;
  font-size:13px;
  line-height:1.7;
}
.prompt-film-copy dl{
  width:100%;
  margin:auto 0 0;
  padding-top:30px;
}
.prompt-film-copy dl div{
  min-height:0;
  grid-template-columns:112px minmax(0,1fr);
  gap:20px;
  align-items:start;
  padding:14px 0;
}
.prompt-film-copy dd{
  overflow-wrap:anywhere;
}

/* About page: the boundary block and next-step CTA are separate sections. */
.about-next-step{
  padding:clamp(72px,8vw,112px) 0 0;
  background:var(--paper-bright);
}
.about-next-step .page-cta{
  margin-top:0;
  margin-bottom:0;
}

/* Campaign form: policy note belongs beneath the form, not alongside it. */
.campaign-form-column{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:22px;
}
.campaign-form-column .campaign-policy-note{
  width:100%;
  margin:0;
}
.campaign-policy-note>a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}

/* Discover preview stability. */
.section-split>.ai-discover-preview{
  width:100%;
  max-width:100%;
  min-width:0;
  align-self:start;
}
.ai-preview-layout,
.ai-conversation-panel,
.ai-preview-review,
.ai-sponsored-unit{
  min-width:0;
}
.ai-review-list p,
.ai-sponsored-copy{
  min-width:0;
  overflow-wrap:anywhere;
}

/* Maintain consistent section breaks before the footer. */
main>.page-cta:last-child,
main>section:last-child.page-cta{
  margin-bottom:0;
}
.site-footer{
  margin-top:clamp(68px,7vw,104px);
}
.about-next-step+.site-footer{
  margin-top:clamp(68px,7vw,104px);
}

@media(max-width:1040px){
  .prompt-film-showcase-head{grid-template-columns:1fr;align-items:start;gap:26px}
  .prompt-film-card{grid-template-columns:1fr;min-height:0}
  .prompt-film-card:nth-child(even) .prompt-film-media{order:1;border-left:0}
  .prompt-film-card:nth-child(even) .prompt-film-copy{order:2}
  .prompt-film-media{
    min-height:0;
    height:auto;
    aspect-ratio:16/9;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.11);
  }
  .prompt-film-copy{min-height:0}
}
@media(max-width:760px){
  .prompt-film-showcase{padding:64px 0 82px}
  .prompt-film-grid{gap:18px}
  .prompt-film-card{border-radius:14px}
  .prompt-film-copy{padding:28px 24px 27px}
  .prompt-film-copy h3{margin-top:23px;font-size:30px}
  .prompt-film-copy dl{padding-top:24px}
  .prompt-film-copy dl div{grid-template-columns:1fr;gap:5px}
  
  .prompt-film-control{right:12px;bottom:12px}
  .campaign-policy-note{align-items:flex-start}
}

/* Prompt-film uniformity correction: reversed rows keep identical media width. */
.prompt-film-card:nth-child(even){
  grid-template-columns:minmax(360px,.85fr) minmax(0,1.55fr);
}
.prompt-film-card>*{
  min-width:0;
  max-width:100%;
}
.prompt-film-media{
  width:100%;
  max-width:100%;
}
.prompt-film-media video,
.prompt-film-media img.prompt-video{
  position:absolute;
  inset:0;
  width:100%;
  max-width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center;
}
@media(max-width:1040px){
  .prompt-film-card,
  .prompt-film-card:nth-child(even){grid-template-columns:minmax(0,1fr)}
  .prompt-film-media{width:100%;max-width:100%}
}

/* Discover page final repair: stable sponsored unit and readable use-case grid. */
.ai-sponsored-copy>div{
  flex-wrap:wrap;
}
.ai-sponsored-copy b{
  white-space:nowrap;
  font-size:11px;
}
.usecase-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  margin-top:42px;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.usecase-grid article{
  min-height:190px;
  display:block;
  padding:30px 30px 28px;
  background:rgba(255,255,255,.28);
  border:0;
  border-radius:0;
}
.usecase-grid article:nth-child(odd){border-right:1px solid var(--line-strong)}
.usecase-grid article:nth-child(-n+2){border-bottom:1px solid var(--line-strong)}
.usecase-grid h3{
  max-width:290px;
  margin:0 0 14px;
  color:var(--wine);
  font-size:24px;
  line-height:1.08;
  letter-spacing:-.04em;
}
.usecase-grid p{
  max-width:440px;
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}
@media(max-width:760px){
  .usecase-grid{grid-template-columns:1fr}
  .usecase-grid article{min-height:0;padding:25px 0}
  .usecase-grid article:nth-child(odd){border-right:0}
  .usecase-grid article:nth-child(-n+3){border-bottom:1px solid var(--line-strong)}
}

/* Compare matrix: replace mobile horizontal scrolling with stacked criteria. */
@media(max-width:760px){
  .compare-matrix{overflow:visible;padding:12px}
  .compare-matrix .compare-head{display:none}
  .compare-matrix>div:not(.compare-head){
    min-width:0;
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    align-items:start;
    padding:16px 10px;
  }
  .compare-matrix>div:not(.compare-head)>b{
    margin-bottom:3px;
    font-size:12px;
  }
  .compare-matrix>div:not(.compare-head)>span{
    min-width:0;
    display:grid;
    grid-template-columns:100px minmax(0,1fr);
    gap:10px;
    align-items:center;
    font-size:10px;
  }
  .compare-matrix>div:not(.compare-head)>span::before{
    color:var(--taupe);
    font-size:8px;
    font-weight:700;
    letter-spacing:.05em;
    text-transform:uppercase;
  }
  .compare-matrix>div:not(.compare-head)>span:nth-of-type(1)::before{content:"Featured"}
  .compare-matrix>div:not(.compare-head)>span:nth-of-type(2)::before{content:"Alternative A"}
  .compare-matrix>div:not(.compare-head)>span:nth-of-type(3)::before{content:"Alternative B"}
}


/* 2026-08-04 v7 prompt-film media containment repair
   Each film now uses a full-width 16:9 stage. No side-by-side media column,
   no cover cropping, and no absolute video sizing outside the ratio box. */
.prompt-film-showcase{
  overflow:visible;
}
.prompt-film-showcase>.section-shell{
  width:min(1160px,calc(100% - (var(--pad) * 2)));
}
.prompt-film-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:44px;
}
.prompt-film-card,
.prompt-film-card:nth-child(even){
  width:100%;
  max-width:1120px;
  min-height:0;
  display:block;
  margin-inline:auto;
  overflow:hidden;
  background:#341717;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
}
.prompt-film-card:nth-child(even) .prompt-film-media,
.prompt-film-card:nth-child(even) .prompt-film-copy{
  order:initial;
}
.prompt-film-media,
.prompt-film-card:nth-child(even) .prompt-film-media{
  position:relative;
  width:100%;
  max-width:none;
  min-height:0;
  height:auto;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#210e0e;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.11);
}
.prompt-film-media video,
.prompt-film-media img.prompt-video,
.prompt-film-card:nth-child(even) .prompt-film-media video{
  position:absolute;
  inset:0;
  width:100%;
  max-width:none;
  height:100%;
  margin:0;
  display:block;
  object-fit:contain;
  object-position:50% 50%;
  background:#210e0e;
  transform:none;
}
.prompt-film-copy{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  grid-template-rows:auto auto auto;
  grid-template-areas:
    "film-heading film-heading"
    "film-title film-details"
    "film-description film-details";
  column-gap:46px;
  row-gap:0;
  padding:34px 38px 38px;
}
.prompt-film-heading{
  grid-area:film-heading;
  width:100%;
  min-height:0;
  padding-bottom:22px;
  margin-bottom:2px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.prompt-film-copy h3{
  grid-area:film-title;
  min-height:0;
  margin:26px 0 13px;
  font-size:clamp(30px,3.1vw,43px);
}
.prompt-film-copy>p{
  grid-area:film-description;
  min-height:0;
  max-width:690px;
  margin:0;
}
.prompt-film-copy dl{
  grid-area:film-details;
  width:100%;
  align-self:stretch;
  margin:26px 0 0;
  padding:0 0 0 30px;
  border-left:1px solid rgba(255,255,255,.1);
}
.prompt-film-copy dl div{
  grid-template-columns:106px minmax(0,1fr);
  gap:16px;
  padding:14px 0;
}
.prompt-film-control{
  right:18px;
  bottom:18px;
}
@media(max-width:900px){
  .prompt-film-grid{gap:28px}
  .prompt-film-copy{
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto;
    grid-template-areas:
      "film-heading"
      "film-title"
      "film-description"
      "film-details";
    gap:0;
  }
  .prompt-film-copy dl{
    margin-top:25px;
    padding-left:0;
    border-left:0;
  }
}
@media(max-width:760px){
  .prompt-film-grid{gap:20px}
  .prompt-film-card,
  .prompt-film-card:nth-child(even){border-radius:14px}
  .prompt-film-copy{padding:25px 22px 27px}
  .prompt-film-heading{padding-bottom:18px}
  .prompt-film-copy h3{margin-top:22px;font-size:29px}
  .prompt-film-copy dl div{grid-template-columns:1fr;gap:5px}
  .prompt-film-control{right:12px;bottom:12px}
}

/* 2026-08-04 v8 definitive prompt-film frame and cache repair */
.prompt-film-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  gap:44px!important;
  align-items:stretch!important;
}
.prompt-film-card,
.prompt-film-card:nth-child(even){
  display:block!important;
  width:100%!important;
  max-width:1120px!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:0 auto!important;
  overflow:hidden!important;
}
.prompt-film-card:nth-child(even) .prompt-film-media,
.prompt-film-card:nth-child(even) .prompt-film-copy{
  order:initial!important;
}
.prompt-film-media,
.prompt-film-card:nth-child(even) .prompt-film-media{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:16 / 9!important;
  overflow:hidden!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.11)!important;
  background:#210e0e!important;
}
.prompt-film-media video,
.prompt-film-media .prompt-video,
.prompt-film-card:nth-child(even) .prompt-film-media video{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  background:#210e0e!important;
}
.prompt-film-copy,
.prompt-film-card:nth-child(even) .prompt-film-copy{
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)!important;
  grid-template-areas:
    "film-heading film-heading"
    "film-title film-details"
    "film-description film-details"!important;
  min-height:0!important;
  height:auto!important;
  padding:34px 38px 38px!important;
}
@media(max-width:900px){
  .prompt-film-grid{gap:28px!important}
  .prompt-film-copy,
  .prompt-film-card:nth-child(even) .prompt-film-copy{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"film-heading" "film-title" "film-description" "film-details"!important;
  }
}
@media(max-width:760px){
  .prompt-film-grid{gap:20px!important}
  .prompt-film-copy,
  .prompt-film-card:nth-child(even) .prompt-film-copy{padding:25px 22px 27px!important}
}

/* 2026-08-05 v11 — consistent page endings and unobstructed dashboard notices */

/* Every final page CTA now has a deliberate visual break from the section above. */
main > section.page-cta,
main > .page-cta {
  margin-top: clamp(72px, 8vw, 112px) !important;
  margin-bottom: 0 !important;
}

/* Full-bleed editorial sections need a little more separation before a contained CTA. */
.prompt-library-note + .page-cta,
.content-section-warm + .page-cta,
.policy-section + .page-cta,
.faq-page + .page-cta,
.principles + .page-cta {
  margin-top: clamp(84px, 9vw, 128px) !important;
}

/* Keep the closing CTA and footer rhythm uniform across all routes. */
main > section.page-cta:last-child + .site-footer,
main > .page-cta:last-child + .site-footer {
  margin-top: clamp(72px, 7vw, 104px);
}

/* Move dashboard notification cards completely below the workspace surface. */
.product-stage.has-stage-toast {
  margin-bottom: 68px;
}
.product-stage.has-stage-toast .stage-toast {
  bottom: -56px;
}

@media (max-width: 760px) {
  main > section.page-cta,
  main > .page-cta,
  .prompt-library-note + .page-cta,
  .content-section-warm + .page-cta,
  .policy-section + .page-cta,
  .faq-page + .page-cta,
  .principles + .page-cta {
    margin-top: 56px !important;
  }
  .product-stage.has-stage-toast {
    margin-bottom: 76px;
  }
  .product-stage.has-stage-toast .stage-toast {
    right: 12px;
    bottom: -64px;
    width: min(290px, calc(100% - 24px));
  }
}

/* 2026-08-05 v12 — guaranteed section separation and unobstructed notices */

/* A full-width neutral band now separates every final CTA from preceding content. */
.page-cta-wrap {
  width: 100%;
  padding: clamp(76px, 8vw, 116px) 0 0;
  background: var(--paper-bright);
  border-top: 1px solid rgba(67, 28, 28, .045);
}
.page-cta-wrap .page-cta {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Avoid any legacy adjacency selectors visually reconnecting the CTA. */
.prompt-library-note + .page-cta-wrap,
.content-section-warm + .page-cta-wrap,
.policy-section + .page-cta-wrap,
.faq-page + .page-cta-wrap,
.principles + .page-cta-wrap,
.related + .page-cta-wrap {
  margin-top: 0;
}

/* Keep a consistent footer break after every closing CTA. */
.page-cta-wrap + .site-footer {
  margin-top: clamp(72px, 7vw, 104px);
}

/* Dashboard notices sit below the mock workspace, not over its content. */
.product-stage.has-stage-toast {
  margin-bottom: 82px;
}
.product-stage.has-stage-toast .stage-toast {
  bottom: -64px;
}

@media (max-width: 760px) {
  .page-cta-wrap {
    padding-top: 58px;
  }
  .product-stage.has-stage-toast {
    margin-bottom: 88px;
  }
  .product-stage.has-stage-toast .stage-toast {
    bottom: -70px;
  }
}

/* 2026-08-05 v13 — explicit, non-collapsing page-end spacing */
.page-end-spacer {
  width: 100%;
  height: clamp(76px, 8vw, 116px);
  background: var(--paper-bright);
  border-top: 1px solid rgba(67, 28, 28, .045);
}
.page-cta-wrap {
  padding-top: 0 !important;
  border-top: 0 !important;
}
@media (max-width: 760px) {
  .page-end-spacer {
    height: 58px;
  }
}


/* 2026-08-05 v12 launch formalisation */
.section-action{
  min-height:46px;
  width:max-content;
  margin-top:18px;
  padding-inline:18px;
  white-space:nowrap;
}
.section-action:focus-visible,
.service-rail article>a:focus-visible,
.policy-link:focus-visible{
  outline:3px solid rgba(231,111,81,.28);
  outline-offset:3px;
}
.outcome-text .section-action{margin-top:14px}
.feature-copy .section-action{margin-top:4px}
.film-intro .section-action{margin-top:18px}
.film-intro>div:last-child{display:flex;flex-direction:column;align-items:flex-start}
.film-intro>div:last-child p{max-width:430px;margin-bottom:0}
.service-rail article>a{
  width:40px;
  height:40px;
  font-size:15px;
}
.outcome-section,
.services-overview,
.feature-section,
.film-section,
.measurement-section,
.principles{
  scroll-margin-top:84px;
}
.homepage-launch-copy{max-width:680px}

/* Make homepage preview media and copy feel deliberately aligned. */
.film-card{display:flex;flex-direction:column;height:100%}
.film-media{aspect-ratio:16/10;overflow:hidden}
.film-media video{height:100%;object-fit:cover}
.film-copy{display:flex;flex-direction:column;flex:1;min-height:132px}
.film-copy h3{min-height:2.36em}

/* Consistent section endings on all launch pages. */
.page-end-spacer{height:clamp(88px,8vw,120px)}
.page-cta-wrap+.site-footer{margin-top:clamp(78px,7vw,108px)}
.about-boundary+.about-next-step{margin-top:clamp(88px,8vw,120px)}
.prompt-library-note+.page-end-spacer{border-top:0}

@media(max-width:1050px){
  .section-action{min-height:44px}
  .film-copy h3{min-height:0}
}
@media(max-width:760px){
  .section-action{width:100%;justify-content:center;margin-top:16px}
  .film-intro>div:last-child{width:100%}
  .page-end-spacer{height:64px}
  .about-boundary+.about-next-step{margin-top:64px}
}

/* v13 launch refinement: remove generic pill/chip UI and restore editorial hierarchy */
.word-real{
  display:inline-block;
  font-kerning:normal;
  font-feature-settings:"kern" 1,"liga" 1;
  letter-spacing:-.012em;
  padding-right:.01em;
}
.measurement-index{
  display:grid;
  margin-top:32px;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.measurement-index>div{
  display:grid;
  grid-template-columns:110px minmax(0,1fr);
  gap:22px;
  align-items:baseline;
  padding:14px 0;
  border-bottom:1px solid var(--line);
}
.measurement-index>div:last-child{border-bottom:0}
.measurement-index span{
  color:var(--wine);
  font-size:11px;
  font-weight:700;
}
.measurement-index p{
  margin:0;
  color:var(--taupe);
  font-size:11px;
}

/* Flat metadata replaces generic pills and chips. */
.visual-chip,
.status-pill,
.map-strength,
.variant-row em,
.workspace-results-head small,
.prompt-entry-tags i,
.briefing-walkthrough-tabs button i{
  width:auto;
  min-width:0;
  padding:0;
  color:var(--taupe);
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-style:normal;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
  white-space:nowrap;
}
.visual-chip,
.status-pill,
.workspace-results-head small{font-size:8px}
.status-pill,
.visual-chip-green{color:var(--success)}
.status-pill.status-amber{color:#9A6D22}
.status-pill::before,
.visual-chip::before{
  content:"";
  width:5px;
  height:5px;
  display:inline-block;
  margin-right:7px;
  background:currentColor;
  border-radius:50%;
  vertical-align:1px;
}
.map-strength{font-size:7px;text-align:right}
.map-strength.strong{color:var(--success)}
.map-strength.medium{color:#9A6D22}
.variant-row em{font-size:7px;color:var(--wine)}
.prompt-entry-tags{gap:12px}
.prompt-entry-tags i{font-size:8px;color:var(--wine)}
.prompt-entry-tags i+i::before{content:"/";margin-right:12px;color:var(--line-dark)}
.briefing-walkthrough-tabs button i{font-size:8px;color:var(--taupe)}

/* Text tabs and filters use rules rather than rounded capsules. */
.ui-tabs{
  gap:20px;
  padding:0 14px;
  background:#FCFBF8;
}
.ui-tabs span{
  padding:12px 0 10px;
  color:var(--taupe);
  border-radius:0;
  border-bottom:2px solid transparent;
}
.ui-tabs .is-active{
  color:var(--wine);
  background:transparent;
  border-bottom-color:var(--coral);
}
.prompt-film-filters{
  gap:24px;
  padding:0;
  background:transparent;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.16);
  border-radius:0;
}
.prompt-film-filters button{
  min-height:42px;
  padding:0 0 10px;
  color:rgba(255,255,255,.58);
  background:transparent!important;
  border-radius:0;
  border-bottom:2px solid transparent;
}
.prompt-film-filters button:hover,
.prompt-film-filters button.is-active{
  color:var(--white);
  background:transparent;
  border-bottom-color:var(--coral);
}
.prompt-film-filters button span{display:none}
.prompt-library-toolbar{
  padding:0;
  background:transparent;
  border:0;
  border-bottom:1px solid var(--line-strong);
  border-radius:0;
}
.prompt-library-toolbar label{padding:0 0 10px}
.prompt-library-toolbar>div{gap:18px}
.prompt-library-toolbar button{
  padding:12px 0 10px;
  border-radius:0;
  border-bottom:2px solid transparent;
}
.prompt-library-toolbar button.is-active{
  color:var(--wine);
  background:transparent;
  border-bottom-color:var(--coral);
}

/* Operational UI metadata remains legible without decorative badges. */
.workspace-status{
  padding:0;
  color:var(--success);
  background:transparent;
  border:0;
  border-radius:0;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.workspace-status i{width:5px;height:5px}
.workspace-results-head small{color:var(--taupe)}

@media (max-width:760px){
  .measurement-index>div{grid-template-columns:1fr;gap:4px}
  .prompt-film-filters{width:100%;display:flex;overflow-x:auto;flex-wrap:nowrap}
  .prompt-film-filters button{justify-content:flex-start;white-space:nowrap}
  .prompt-library-toolbar>div{width:100%;overflow-x:auto}
  .prompt-library-toolbar button{white-space:nowrap}
}
.prompt-film-card[hidden]{display:none!important}


/* v14 expanded prompt-film library and scroll playback */
.prompt-film-card.is-scroll-active{border-color:rgba(217,192,141,.38);box-shadow:0 26px 64px rgba(0,0,0,.22)}
.prompt-film-card.is-scroll-active .prompt-film-control{background:rgba(33,27,27,.88)}
@media (prefers-reduced-motion:reduce){.prompt-film-card.is-scroll-active{border-color:rgba(255,255,255,.13);box-shadow:0 18px 46px rgba(0,0,0,.15)}}

/* v17 mobile/tablet parity and interaction hardening */
:root{--mobile-nav-breakpoint:1120px}

/* Use the compact navigation throughout phone/tablet widths, including landscape tablets. */
@media (max-width:1120px){
  .site-header,.nav-shell{height:64px}
  .nav-shell{grid-template-columns:minmax(0,1fr) auto;gap:18px}
  .desktop-nav,.nav-actions{display:none!important}
  .menu-toggle{
    width:44px;height:44px;display:grid!important;place-content:center;gap:6px;padding:0;
    background:var(--white);border:1px solid var(--line-strong);border-radius:9px;
    touch-action:manipulation;cursor:pointer;position:relative;z-index:102
  }
  .menu-toggle>span:not(.sr-only){width:18px;height:1.5px;background:var(--wine);transform-origin:center;transition:transform .18s ease,opacity .18s ease}
  .menu-toggle[aria-expanded="true"]>span:nth-of-type(2){transform:translateY(3.75px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"]>span:nth-of-type(3){transform:translateY(-3.75px) rotate(-45deg)}
  .mobile-nav{
    position:fixed;inset:64px 0 0;z-index:101;display:block!important;width:100%;
    height:calc(100dvh - 64px);max-height:calc(100dvh - 64px);overflow-x:hidden;overflow-y:auto;
    overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    background:rgba(251,250,247,.99);border-top:1px solid var(--line);box-shadow:0 18px 40px rgba(43,25,25,.08)
  }
  .mobile-nav[hidden]{display:none!important}
  .mobile-nav-inner{width:min(720px,calc(100% - 40px));margin:0 auto;padding:14px 0 max(40px,env(safe-area-inset-bottom))}
  .mobile-nav details,.mobile-direct{display:block;border-bottom:1px solid var(--line)}
  .mobile-nav summary,.mobile-direct{
    min-height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 4px;
    color:var(--wine);list-style:none;font-size:16px;font-weight:600;touch-action:manipulation;cursor:pointer
  }
  .mobile-nav summary::-webkit-details-marker{display:none}
  .mobile-nav summary span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--coral);font-size:21px;font-weight:400;transition:transform .18s ease}
  .mobile-nav details[open] summary span{transform:rotate(45deg)}
  .mobile-nav details>div{display:grid;gap:2px;padding:0 0 16px}
  .mobile-nav details a{min-height:46px;display:flex;align-items:center;padding:10px 12px;color:var(--muted);background:transparent;border-radius:7px;font-size:13px;font-weight:500;touch-action:manipulation}
  .mobile-nav details a:active,.mobile-nav details a:focus-visible{color:var(--wine);background:var(--paper)}
  .mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:24px 0 4px}
  .mobile-actions .button{min-height:48px}
  body.menu-open{overflow:hidden;touch-action:none}
  body.menu-open .mobile-nav{touch-action:pan-y}

  /* Dashboard navigation remains available instead of disappearing. */
  .stage-body{display:block}
  .stage-sidebar{
    display:flex!important;flex-direction:row;align-items:center;gap:4px;width:100%;padding:10px 12px;
    overflow-x:auto;overflow-y:hidden;background:#FCFBF8;border-right:0;border-bottom:1px solid var(--line);
    scrollbar-width:thin;-webkit-overflow-scrolling:touch
  }
  .stage-sidebar>.sidebar-section,.stage-sidebar>.sidebar-account{display:none!important}
  .stage-sidebar>a{min-height:40px;flex:0 0 auto;margin:0;padding:0 11px;white-space:nowrap}
  .stage-workspace{padding:20px}
  .workspace-grid{grid-template-columns:minmax(0,1.15fr) minmax(230px,.85fr)}
}

@media (max-width:900px){
  /* Preserve the complete mock-dashboard feature set by stacking rather than hiding it. */
  .workspace-grid{grid-template-columns:1fr}
  .workspace-insights{display:block!important}
  .workspace-video{min-width:0}
  .workspace-head{align-items:flex-start;flex-wrap:wrap}
  .workspace-head>div{min-width:min(100%,280px);flex:1}
  .workspace-head p{display:block!important}
  .workspace-button{display:inline-flex!important;min-height:40px;flex:0 0 auto}
  .workspace-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  .workspace-metrics small{display:block!important}
  .stage-title-actions button{display:grid!important}
  .workspace-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-switcher{width:min(470px,calc(100% - 40px));max-width:none}
  .switcher-icon{display:grid!important}

  /* Tablet sections retain all controls without horizontal clipping. */
  .briefing-walkthrough-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .briefing-walkthrough-tabs button{min-width:0}
  .prompt-film-filters,.prompt-library-toolbar>div{overflow:visible;flex-wrap:wrap}
  .policy-toc{position:static}
}

@media (max-width:760px){
  /* Phone dashboards show all desktop information, reorganised vertically. */
  .stage-workspace{padding:14px}
  .workspace-head{gap:12px}
  .workspace-head p{font-size:9px;line-height:1.45}
  .workspace-button{width:100%;justify-content:center}
  .workspace-metrics{grid-template-columns:1fr;gap:7px}
  .workspace-metrics>div,.workspace-metrics>div:nth-child(2){display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:11px 12px}
  .workspace-metrics span{font-size:8px}
  .workspace-metrics b{grid-column:2;grid-row:1/3;margin:0;font-size:20px}
  .workspace-metrics small{grid-column:1;display:block!important;margin-top:3px;font-size:7px}
  .workspace-results-grid{grid-template-columns:1fr}
  .workspace-results-grid>div{border-right:0!important}
  .workspace-insights{display:block!important}
  .stage-title-actions button{display:grid!important}
  .stage-toast{max-width:calc(100% - 24px)}
  .variant-row em{display:block!important}
  .switcher-icon{display:grid!important}

  /* Touch controls use visible, non-scrolling layouts. */
  .prompt-film-filters{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;overflow:visible!important}
  .prompt-film-filters button{min-height:48px;justify-content:flex-start;white-space:normal!important}
  .prompt-library-toolbar>div{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;overflow:visible!important}
  .prompt-library-toolbar button{min-height:46px;white-space:normal!important;text-align:left}
  .prompt-entry-summary{min-height:58px}
  .prompt-entry-action,.prompt-copy{min-height:44px;display:inline-flex;align-items:center}
  .video-control,.prompt-film-control,.walkthrough-video-control{min-width:76px;min-height:40px;touch-action:manipulation}
  .faq-list summary{min-height:58px;padding-block:16px;touch-action:manipulation}
  .page-hero-actions .button,.section-action{min-height:48px}
  input,select,textarea{font-size:16px!important} /* prevents iOS focus zoom */
}

@media (max-width:560px){
  .wordmark{min-width:0}
  .wordmark span{white-space:nowrap}
  .mobile-nav-inner{width:calc(100% - 32px)}
  .mobile-actions{grid-template-columns:1fr}
  .product-switcher{width:calc(100% - 28px);grid-template-columns:repeat(3,minmax(0,1fr));padding:4px}
  .product-switcher button{min-width:0;padding:0 6px;gap:4px;font-size:10px}
  .switcher-icon{width:17px;height:17px}
  .stage-sidebar{padding-inline:8px}
  .stage-sidebar>a{padding-inline:9px;font-size:9px}
  .briefing-walkthrough-tabs{grid-template-columns:1fr}
  .prompt-film-filters,.prompt-library-toolbar>div{grid-template-columns:1fr 1fr}
}

/* Pointer devices with no hover receive reliable tap behaviour on desktop-style mega menus too. */
@media (hover:none){
  .nav-trigger,.menu-toggle,.mobile-nav summary,.mobile-nav a,.product-switcher button,.ui-tabs span,button{touch-action:manipulation}
  .nav-group:hover .mega-menu{pointer-events:auto}
}

/* v17 navigation progressive enhancement: usable even if JS is unavailable. */
@media (max-width:1120px){
  .js .mobile-nav:not(.is-open){display:none!important}
  .js .mobile-nav.is-open{display:block!important}
  body.menu-open{overflow:hidden;touch-action:auto}
  body.menu-open .mobile-nav{touch-action:pan-y}
}

/* v17 tablet layout parity: stack complex desktop compositions before they become cramped. */
@media (max-width:900px){
  .hero-statement .hero-line{white-space:normal}
  .outcome-demo{grid-template-columns:1fr}
  .outcome-link-list{border-right:0;border-bottom:1px solid var(--line)}
  .architecture-canvas{grid-template-columns:1fr}
  .creative-layout{grid-template-columns:1fr}
  .creative-layout aside{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid var(--line);-webkit-overflow-scrolling:touch}
  .creative-layout aside button{width:auto;min-width:max-content;min-height:44px;grid-template-columns:8px auto auto;padding-inline:11px}
  .film-reel{grid-template-columns:1fr}
  .principle-grid{grid-template-columns:1fr}
  .principle-card{min-height:0;border-right:0;border-bottom:1px solid var(--line)}
  .principle-card:last-child{border-bottom:0}
  .brief-card{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px 44px}
  .footer-brand{grid-column:1/-1}
  .subpage main{overflow-x:clip;overflow-y:visible}
}
@media (max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  .footer-brand{grid-column:auto}
}

/* Campaign laboratory results remain self-labelled when the desktop header row is removed. */
@media (max-width:620px){
  .lab-results-labels{display:none!important}
  .lab-results-row:not(.lab-results-labels){grid-template-columns:1fr 1fr;gap:10px 16px;padding-block:14px}
  .lab-results-row:not(.lab-results-labels)>b,
  .lab-results-row:not(.lab-results-labels)>span,
  .lab-results-row:not(.lab-results-labels)>em{display:block;min-width:0}
  .lab-results-row:not(.lab-results-labels)>b::before{content:"State"}
  .lab-results-row:not(.lab-results-labels)>span:nth-of-type(1)::before{content:"CTR"}
  .lab-results-row:not(.lab-results-labels)>span:nth-of-type(2)::before{content:"Outcome"}
  .lab-results-row:not(.lab-results-labels)>em::before{content:"Next action"}
  .lab-results-row:not(.lab-results-labels)>b::before,
  .lab-results-row:not(.lab-results-labels)>span::before,
  .lab-results-row:not(.lab-results-labels)>em::before{display:block;margin-bottom:4px;color:var(--taupe);font-size:7px;font-style:normal;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
  .lab-results-row:not(.lab-results-labels)>em{grid-column:1/-1}
}


/* v19 verification clarity additions - no functional/UI redesign */
.hero-disclosure{
  width:max-content;
  max-width:min(760px,100%);
  margin:0 auto 22px;
  color:var(--wine);
  font-size:13px;
  line-height:1.5;
  font-weight:550;
  letter-spacing:-.01em;
}
.platform-control-note{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:28px;
  align-items:start;
  margin-top:34px;
  padding:24px 0;
  border-top:1px solid var(--line-strong);
  border-bottom:1px solid var(--line-strong);
}
.platform-control-note strong{
  color:var(--wine);
  font-size:13px;
  font-weight:650;
}
.platform-control-note p{
  max-width:760px;
  margin:0;
  color:var(--taupe);
  font-size:14px;
  line-height:1.65;
}
.about-legal{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:100px;
  align-items:start;
  padding-top:72px;
  padding-bottom:96px;
  border-top:1px solid var(--line-strong);
}
.about-legal h2{
  margin:12px 0 0;
  color:var(--wine);
  font-size:36px;
  line-height:1.06;
  letter-spacing:-.05em;
}
.about-legal-copy p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.7;
}
@media (max-width: 820px){
  .hero-disclosure{max-width:620px;font-size:12px;}
  .platform-control-note{grid-template-columns:1fr;gap:9px;}
  .about-legal{grid-template-columns:1fr;gap:24px;padding-top:58px;padding-bottom:68px;}
}
@media (max-width: 560px){
  .hero-disclosure{width:auto;max-width:92%;margin-bottom:18px;font-size:12px;line-height:1.55;}
  .platform-control-note{margin-top:28px;padding:20px 0;}
  .platform-control-note p{font-size:13px;}
  .about-legal h2{font-size:30px;}
}


/* 2026-08-12 v20 — editorial spacing, legibility and About/Solutions refinement */
/* Reduce oversized dead space before closing CTAs while preserving clear separation. */
.page-end-spacer{height:clamp(62px,5.5vw,84px)}
.about-boundary+.about-next-step{margin-top:clamp(64px,5.5vw,86px)}
@media (max-width:760px){.page-end-spacer{height:48px}.about-boundary+.about-next-step{margin-top:50px}}

/* Solutions index: keep the closing transition deliberate rather than cavernous. */
.solutions-page .solutions-end-spacer{height:clamp(46px,4vw,64px)}
.solutions-page .decision-state-grid > a > p:not(:first-of-type){font-size:15px;line-height:1.6}
.solutions-page .decision-state-grid b{font-size:13px}
.solutions-page .decision-state-grid small{font-size:13px;line-height:1.5}
.solutions-page .state-example p{font-size:14px;line-height:1.6}
@media (max-width:760px){.solutions-page .solutions-end-spacer{height:40px}}

/* Editorial body text must remain comfortably readable; dashboard microcopy is untouched. */
.feature-points b{font-size:14px}
.feature-points span{font-size:14px;line-height:1.6}
.deliverable-grid p,.usecase-grid p,.process-grid p,.related-grid p{font-size:14px;line-height:1.6}
.creative-system-grid ul{font-size:14px}
.contact-cards p,.briefing-checklist p{font-size:14px;line-height:1.6}
.about-method-list p{font-size:15px;line-height:1.65}

/* Replace the former legal-operator feature block with a substantive company section. */
.about-expectations{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start;padding-top:82px;padding-bottom:96px;border-top:1px solid var(--line-strong)}
.about-expectations h2{margin:12px 0 0;color:var(--wine);font-size:40px;line-height:1.05;letter-spacing:-.05em}
.about-expectations-copy p{margin:4px 0 18px;color:var(--muted);font-size:16px;line-height:1.7}
.about-facts-list div:last-child dd{font-size:14px;font-weight:600;line-height:1.5}
@media (max-width:820px){.about-expectations{grid-template-columns:1fr;gap:24px;padding-top:62px;padding-bottom:72px}}
@media (max-width:560px){.about-expectations h2{font-size:32px}.about-expectations-copy p{font-size:15px}}

/* 2026-08-12 v21 — responsive hardening across phone, tablet, desktop and wide screens */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,main{min-width:0}
main :where(h1,h2,h3,h4,p,li,dt,dd){overflow-wrap:break-word}
:where(.section-split,.section-split-reverse,.outcome-grid,.outcome-demo,.studio-grid,.contact-layout,.briefing-layout,.policy-layout,.about-intro,.about-facts,.about-boundary-grid,.about-expectations,.prompt-library-note>.section-shell,.footer-grid,.service-index-grid,.decision-state-grid,.related-grid,.process-grid,.deliverable-grid,.usecase-grid)>*{min-width:0}
.service-index-grid>a,.service-index-grid>a>div,.resource-index>a,.resource-index>a>div{min-width:0;max-width:100%}
.button,.section-action{max-width:100%}
img,svg,video{max-inline-size:100%}

/* Tablet/touch controls keep the same capabilities as desktop without undersized targets. */
@media(max-width:1120px){
  .stage-title-actions button{width:42px;height:42px;min-width:42px;min-height:42px}
  .stage-toast button{width:40px;height:40px;display:grid;place-items:center;padding:0;touch-action:manipulation}
  .visual-toolbar{min-height:64px;gap:12px}
  .visual-toolbar button{min-height:44px;padding:0 12px;font-size:10px;touch-action:manipulation}
  .product-switcher button{min-height:44px;touch-action:manipulation}
  .stage-sidebar>a{min-height:44px}
  .video-control,.prompt-film-control,.walkthrough-video-control{min-width:80px;min-height:44px;touch-action:manipulation}
  .prompt-film-filters button{min-width:44px;min-height:44px}
  .prompt-library-toolbar input{min-height:44px;font-size:16px}
  .prompt-library-toolbar button{min-height:44px}
  .lead-form input:not([type="checkbox"]),.lead-form select,.lead-form textarea{font-size:16px}
  .form-consent input[type="checkbox"]{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin-top:1px}
  .policy-toc a{min-height:42px;display:flex;align-items:center}
  .footer-column a{min-height:36px;display:flex;align-items:center}
}

/* Intermediate widths wrap controls before they can become cramped. */
@media(max-width:900px){
  .ui-tabs{flex-wrap:wrap;gap:5px}
  .ui-tabs span{min-height:36px;display:flex;align-items:center}
  .visual-toolbar>div{min-width:0}
  .visual-toolbar b{overflow-wrap:anywhere}
  .campaign-policy-note>a{min-height:44px;display:inline-flex;align-items:center}
}

/* Phone layouts surface every control instead of relying on hidden or off-screen UI. */
@media(max-width:760px){
  .section-shell{max-width:100%}
  .lead-form{padding:24px 20px}
  .stage-sidebar{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;
    overflow:visible!important;padding:10px!important
  }
  .stage-sidebar>a{width:100%;min-width:0!important;min-height:44px!important;justify-content:flex-start;padding:0 10px!important;white-space:normal!important;line-height:1.25}
  .stage-sidebar>a svg{flex:0 0 auto}
  .creative-layout aside{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;
    overflow:visible!important;padding:10px!important
  }
  .creative-layout aside button{width:100%!important;min-width:0!important;min-height:44px!important;grid-template-columns:8px minmax(0,1fr) auto!important}
  .ui-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:9px 12px}
  .ui-tabs span{min-width:0;justify-content:center;text-align:center}
  .service-index-grid>a{width:100%;overflow:hidden}
  .service-index-grid>a>div{overflow-wrap:anywhere}
  .prompt-library-toolbar label{min-width:0}
  .prompt-library-toolbar input{min-width:0;width:100%}
  .prompt-entry-summary>*{min-width:0}
  .prompt-entry-main b{overflow-wrap:anywhere}
  .footer-column a{min-height:42px}
  .footer-bottom>div a{min-height:38px;align-items:center}
  .page-cta,.page-cta>div{min-width:0}
  .page-cta .button{white-space:normal;text-align:center}
}

@media(max-width:360px){
  :root{--pad:16px}
  .mobile-nav-inner{width:calc(100% - 24px)}
  .prompt-film-filters,.prompt-library-toolbar>div{grid-template-columns:1fr}
  .stage-sidebar,.creative-layout aside{grid-template-columns:1fr}
  .product-switcher{width:calc(100% - 20px)}
  .product-switcher button{font-size:9px;padding-inline:4px}
  .lead-form{padding:20px 16px}
}

/* Short landscape screens keep navigation fully usable instead of pushing actions off-screen. */
@media(max-width:1120px) and (max-height:650px){
  .mobile-nav summary,.mobile-direct{min-height:52px}
  .mobile-nav details a{min-height:42px;padding-block:8px}
  .mobile-actions{padding-top:16px}
  .mobile-nav-inner{padding-top:8px;padding-bottom:max(20px,env(safe-area-inset-bottom))}
}

/* Wide screens stay intentionally contained rather than stretching editorial/UI surfaces. */
@media(min-width:1800px){
  .nav-shell{width:min(1320px,calc(100% - 96px))}
  .section-shell{width:min(var(--shell),calc(100% - 96px))}
}

/* v21 touch-target completion for compact operational controls. */
@media(max-width:1120px){
  .workspace-button{min-height:44px}
  .insight-head button{width:42px;height:42px;display:grid;place-items:center;padding:0;touch-action:manipulation}
  .creative-layout aside button{min-height:44px}
  .prompt-library-toolbar button{min-width:44px}
}


/* 2026-08-13 v22 — global trade expansion, offering prompt library and SEO-supporting editorial layouts */
.global-trade-home{padding:clamp(82px,8vw,118px) 0;background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.global-trade-home-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(56px,7vw,100px);align-items:center}
.global-trade-home h2{max-width:650px;margin:10px 0 20px;color:var(--wine);font-size:clamp(38px,4.6vw,62px);line-height:1.02;letter-spacing:-.055em}
.global-trade-home p:not(.section-kicker){max-width:650px;margin:0;color:var(--muted);font-size:16px;line-height:1.7}
.global-trade-home-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:28px}
.global-trade-home-board{overflow:hidden;background:var(--paper-bright);border:1px solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-md)}
.global-trade-home-board>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;padding:22px 24px;border-bottom:1px solid var(--line)}
.global-trade-home-board>div:last-child{border-bottom:0}
.global-trade-home-board span{color:var(--coral);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.global-trade-home-board b,.global-trade-home-board small{display:block}.global-trade-home-board b{color:var(--wine);font-size:16px}.global-trade-home-board small{grid-column:2;color:var(--taupe);font-size:12px;line-height:1.5}

.trade-connect{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(58px,7vw,104px);align-items:center;padding-top:clamp(82px,9vw,128px);padding-bottom:clamp(82px,9vw,128px)}
.trade-connect-copy h2{margin:10px 0 20px;color:var(--wine);font-size:clamp(38px,4.5vw,58px);line-height:1.03;letter-spacing:-.055em}.trade-connect-copy>p:not(.section-kicker){margin:0 0 17px;color:var(--muted);font-size:15px;line-height:1.72}.trade-connect-copy .section-action{margin-top:16px}
.trade-network-panel{overflow:hidden;background:var(--white);border:1px solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow-lg)}
.trade-network-head{display:grid;grid-template-columns:1fr auto;gap:7px 16px;padding:20px 22px;background:var(--paper);border-bottom:1px solid var(--line)}.trade-network-head>span{grid-column:1/-1;color:var(--coral);font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.trade-network-head b{color:var(--wine);font-size:18px}.trade-network-head small{align-self:center;color:var(--taupe);font-size:10px}
.trade-network-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.trade-network-row>span{width:34px;height:34px;display:grid;place-items:center;color:var(--coral);background:var(--paper);border:1px solid var(--line);border-radius:8px;font-size:9px;font-weight:700}.trade-network-row b,.trade-network-row small{display:block}.trade-network-row b{color:var(--wine);font-size:14px}.trade-network-row small{margin-top:3px;color:var(--taupe);font-size:11px;line-height:1.45}.trade-network-row em{color:var(--wine);font-size:9px;font-style:normal;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.trade-network-foot{padding:14px 22px;color:var(--taupe);background:var(--paper-bright);font-size:10px}
.trade-offerings{padding:clamp(82px,9vw,128px) 0;background:var(--warm);border-block:1px solid var(--line)}
.trade-offering-list{display:grid;grid-template-columns:1fr 1fr;margin-top:48px;border-top:1px solid var(--line-strong)}.trade-offering-list article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:28px 28px 28px 0;border-bottom:1px solid var(--line-strong)}.trade-offering-list article:nth-child(odd){border-right:1px solid var(--line-strong)}.trade-offering-list article:nth-child(even){padding-left:28px}.trade-offering-list>article>span{color:var(--coral);font-size:10px;font-weight:700}.trade-offering-list h3{margin:0 0 8px;color:var(--wine);font-size:22px;letter-spacing:-.035em}.trade-offering-list p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.trade-markets{padding:clamp(82px,9vw,128px) 0;color:var(--white);background:var(--wine)}.trade-markets-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(58px,7vw,100px);align-items:start}.trade-markets h2{max-width:620px;margin:10px 0 18px;font-size:clamp(38px,4.6vw,60px);line-height:1.03;letter-spacing:-.055em}.trade-markets p{max-width:620px;margin:0;color:rgba(255,255,255,.68);font-size:15px;line-height:1.7}.trade-markets .section-kicker{color:var(--wheat)}.trade-region-list{border-top:1px solid rgba(255,255,255,.18)}.trade-region-list>div{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.14)}.trade-region-list span{display:block;margin-bottom:7px;color:var(--wheat);font-size:12px;font-weight:700}.trade-region-list p{font-size:13px}
.trade-process{padding-top:clamp(82px,9vw,128px);padding-bottom:clamp(82px,9vw,128px)}.trade-process-list{margin:46px 0 0;padding:0;border-top:1px solid var(--line-strong);list-style:none}.trade-process-list li{display:grid;grid-template-columns:54px minmax(0,1fr);gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.trade-process-list li>span{color:var(--coral);font-size:10px;font-weight:700}.trade-process-list b{display:block;color:var(--wine);font-size:17px}.trade-process-list p{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.6}
.trade-faq{padding:clamp(74px,8vw,112px) 0;background:var(--paper);border-block:1px solid var(--line)}.trade-faq-list{max-width:980px;margin-top:40px}
.trade-service-strip{display:flex;align-items:center;justify-content:space-between;gap:44px;margin-top:32px;padding:26px 28px;background:var(--paper-bright);border:1px solid var(--line-strong);border-radius:12px}.trade-service-strip span,.trade-service-strip b{display:block}.trade-service-strip span{color:var(--coral);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.trade-service-strip b{margin:5px 0;color:var(--wine);font-size:20px}.trade-service-strip p{max-width:720px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}.trade-service-strip .button{flex:0 0 auto}

.offering-answer-index{padding-top:clamp(78px,8vw,112px);padding-bottom:clamp(74px,8vw,108px)}.offering-answer-list{display:grid;grid-template-columns:1fr 1fr;margin-top:44px;border-top:1px solid var(--line-strong)}.offering-answer-list>div{padding:24px 26px 24px 0;border-bottom:1px solid var(--line)}.offering-answer-list>div:nth-child(odd){border-right:1px solid var(--line-strong)}.offering-answer-list>div:nth-child(even){padding-left:26px}.offering-answer-list dt{color:var(--wine);font-size:16px;font-weight:650;line-height:1.4}.offering-answer-list dd{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.62}.offering-prompt-library{padding-top:0}.offering-prompt-library .prompt-library-toolbar>div{grid-template-columns:repeat(7,minmax(0,1fr))}.prompt-service-link{display:inline-flex;align-items:center;gap:8px;color:var(--wine);font-size:11px;font-weight:700;text-decoration:none}.prompt-service-link:hover{color:var(--coral)}

@media(max-width:1050px){.global-trade-home-grid,.trade-connect,.trade-markets-grid{grid-template-columns:1fr;gap:46px}.trade-service-strip{align-items:flex-start;flex-direction:column;gap:20px}.offering-prompt-library .prompt-library-toolbar>div{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.global-trade-home{padding-block:70px}.global-trade-home-board>div{grid-template-columns:76px minmax(0,1fr);padding:18px}.trade-connect{padding-block:70px}.trade-network-row{grid-template-columns:34px minmax(0,1fr);padding:16px}.trade-network-row em{grid-column:2}.trade-offering-list,.offering-answer-list{grid-template-columns:1fr}.trade-offering-list article,.trade-offering-list article:nth-child(even),.offering-answer-list>div,.offering-answer-list>div:nth-child(even){padding:22px 0;border-right:0}.trade-markets{padding-block:72px}.trade-process{padding-block:72px}.trade-service-strip{padding:22px}.offering-prompt-library .prompt-library-toolbar>div{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.global-trade-home-board>div{grid-template-columns:1fr;gap:7px}.global-trade-home-board small{grid-column:1}.trade-process-list li{grid-template-columns:38px minmax(0,1fr);gap:14px}.offering-prompt-library .prompt-library-toolbar>div{grid-template-columns:1fr}}
