/* ============================================================================
   MASTER VIDEO INSIGHT TEMPLATE — California Modern. Scope: .iv
   Same Insights family as the text-post master (.ia) but video-first: compact
   editorial intro → dominant 16:9 player → post-video editorial grid (slim rail +
   body) → Sources & Notes → audience next step → related. Global chrome is the
   shared site component. Rail behaviour reuses insights-article.js (data-ia-to).
   Every optional module hides cleanly when its data is absent.
   ============================================================================ */
.iv-wrap{max-width:1320px;margin:0 auto;padding:0 32px}
.iv-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px}

/* --- 1 · compact editorial intro (no image beside title) --- */
.iv-intro{padding:56px 0 30px;text-align:left}
.iv-intro__in{grid-column:2 / span 8}
.iv-rule{width:48px;height:2px;background:var(--brand-accent);border:0;margin:0 0 16px}
.iv-eyebrow{font-family:var(--font-sans);font-weight:700;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-eyebrow);margin:0}
.iv-series{font-family:var(--font-sans);font-weight:600;font-size:13px;letter-spacing:.02em;color:var(--sky-800);margin:10px 0 0}
.iv-h1{font-family:var(--font-display);font-weight:500;font-size:44px;line-height:1.05;letter-spacing:-.022em;color:var(--brand-navy);margin:14px 0 0;text-wrap:balance}
.iv-standfirst{font-family:var(--font-display);font-weight:400;font-size:20px;line-height:1.45;color:var(--text-secondary);margin:18px 0 0;max-width:62ch}
.iv-meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-family:var(--font-sans);font-size:13.5px;color:var(--text-muted);margin:22px 0 0}
.iv-meta b{color:var(--text-primary);font-weight:600}
.iv-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--brand-sky)}

/* --- 2 · dominant video player, ~10 col, pale-Sky offset panel --- */
.iv-stage{padding:6px 0 8px}
.iv-stage__fig{grid-column:2 / span 10;margin:0;position:relative;isolation:isolate}
.iv-stage__fig::before{content:"";position:absolute;inset:28px 48px -28px -28px;background:rgba(145,195,235,.30);border-radius:6px;z-index:-1}
.iv-player{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:var(--brand-navy)}
.iv-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* poster: uses the approved thumbnail via inline style background-image when one exists;
   the solid Navy surface is only the review-time fallback when no approved poster is set. */
.iv-poster{position:absolute;inset:0;border:0;padding:0;cursor:pointer;background:var(--brand-navy);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}
.iv-poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,25,45,.15),rgba(0,25,45,.45))}
.iv-poster__play{position:relative;z-index:1;width:68px;height:68px;border-radius:50%;background:rgba(0,43,84,.55);border:2px solid rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;transition:background 180ms cubic-bezier(.2,.6,.2,1)}
.iv-poster:hover .iv-poster__play{background:rgba(0,43,84,.8)}
.iv-poster__play svg{width:22px;height:22px;margin-left:3px;fill:#fff}
.iv-stage__cap{grid-column:2 / span 10;font-family:var(--font-sans);font-size:12.5px;color:var(--text-muted);margin:12px 0 0}

/* --- 3 · post-video editorial grid --- */
.iv-read{padding:44px 0 20px}
.iv-rail{grid-column:1 / span 2;align-self:start;position:sticky;top:96px}
.iv-body{grid-column:4 / span 7;max-width:740px}
.iv-rail__l{font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 10px}
.iv-rail__share{display:flex;gap:8px;margin:0 0 28px}
.iv-rail__share a,.iv-rail__share button{width:32px;height:32px;border:1px solid var(--line);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--sky-800);text-decoration:none;font-size:13px;font-family:var(--font-sans);font-weight:700}
.iv-rail__share a:hover,.iv-rail__share button:hover{border-color:var(--sky-300);color:var(--sun-700)}.iv-rail__share button{background:transparent;cursor:pointer;font:inherit}.iv-rail__share button.is-copied{border-color:var(--brand-navy);color:var(--brand-navy)}
.iv-rail__nav{border-top:1px solid var(--line);padding-top:16px}
.iv-rail__nav a{display:block;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--text-secondary);text-decoration:none;padding:6px 0 6px 12px;border-left:2px solid var(--line)}
.iv-rail__nav a:hover{color:var(--brand-navy);border-left-color:var(--brand-sky)}
.iv-rail__nav a.is-at{color:var(--brand-navy);font-weight:600;border-left-color:var(--brand-accent)}

.iv-body>section{scroll-margin-top:96px}
.iv-body>section+section{margin-top:44px}
.iv-sec__h{font-family:var(--font-display);font-weight:500;font-size:27px;line-height:1.15;letter-spacing:-.016em;color:var(--brand-navy);margin:0 0 18px}
.iv-body p{font-family:var(--font-sans);font-size:18px;line-height:1.7;color:var(--text-primary);margin:0 0 16px;text-wrap:pretty}

/* 4 · key takeaways — editorial list, no card grid */
.iv-takeaways{list-style:none;padding:0;margin:0;display:grid;gap:0}
.iv-takeaways li{font-family:var(--font-sans);font-size:17.5px;line-height:1.6;color:var(--text-primary);padding:15px 0 15px 30px;border-top:1px solid var(--line);position:relative}
.iv-takeaways li:last-child{border-bottom:1px solid var(--line)}
.iv-takeaways li::before{content:"";position:absolute;left:0;top:23px;width:8px;height:8px;background:var(--brand-sky)}

/* 5 · chapters — clean editorial list */
.iv-chapters{list-style:none;padding:0;margin:0}
.iv-chapters button{width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:13px 0;display:flex;gap:18px;align-items:baseline;cursor:pointer;font-family:var(--font-sans)}
.iv-chapters li:last-child button{border-bottom:1px solid var(--line)}
.iv-chapters .t{font-variant-numeric:tabular-nums;font-size:14px;color:var(--sun-700);font-weight:600;min-width:52px}
.iv-chapters .c{font-size:16.5px;color:var(--text-primary)}
.iv-chapters button:hover .c{color:var(--brand-navy)}

/* 6 · transcript — collapsible, secondary */
.iv-transcript{border-top:1px solid var(--line)}
.iv-transcript summary{list-style:none;cursor:pointer;padding:16px 0;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-sans);font-weight:600;font-size:15px;color:var(--brand-navy)}
.iv-transcript summary::-webkit-details-marker{display:none}
.iv-transcript summary::after{content:"+";font-size:20px;color:var(--sky-800)}
.iv-transcript[open] summary::after{content:"–"}
.iv-transcript__body{max-width:720px;padding:4px 0 18px}
.iv-transcript__body p{font-family:var(--font-sans);font-size:16px;line-height:1.7;color:var(--text-secondary);margin:0 0 14px}
.iv-transcript__body .sp{font-weight:600;color:var(--text-primary)}

/* archive context — verified pre-2020 uploads only */
.iv-read--slim{padding:36px 0 20px}
.iv-read--slim .iv-sources{margin-top:0}
.iv-read--slim .iv-body--note .iv-archive{margin-bottom:24px}
.iv-archive{background:var(--brand-paper);border-left:3px solid var(--brand-navy);border-radius:0 4px 4px 0;padding:16px 20px;margin:0 0 34px}
.iv-archive__l{font-family:var(--font-sans);font-weight:700;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--sky-800);margin:0 0 8px}
.iv-archive__p{font-family:var(--font-sans);font-size:14.5px;line-height:1.6;color:var(--text-secondary);margin:0}
/* facts panel — right column, renders only when ≥2 verified facts exist */
.iv-facts{grid-column:11 / span 2;align-self:start;position:sticky;top:96px;border-top:2px solid var(--brand-navy);padding-top:14px}
.iv-facts dl{margin:0;display:grid;gap:14px}
.iv-facts dt{font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 3px}
.iv-facts dd{font-family:var(--font-sans);font-size:13.5px;line-height:1.45;color:var(--text-primary);margin:0}

/* --- Sources & Notes (matches text master) --- */
.iv-sources{grid-column:4 / span 7;max-width:740px;margin-top:52px;padding-top:24px;border-top:2px solid var(--brand-navy)}
.iv-sources h2{font-family:var(--font-sans);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-primary);margin:0 0 14px}
.iv-sources ol{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-muted);padding-left:18px;margin:0;display:grid;gap:8px}
.iv-sources .note{font-family:var(--font-sans);font-size:12.5px;line-height:1.55;color:var(--text-muted);margin:14px 0 0;padding:12px 14px;background:#F3F5F6;border-left:3px solid var(--brand-navy);border-radius:0 4px 4px 0}

/* --- next step (matches text master) --- */
.iv-next{background:var(--brand-navy);color:#fff;margin-top:60px}
.iv-next__g{padding:44px 0}
.iv-next__c{grid-column:2 / span 8}
.iv-next__l{font-family:var(--font-sans);font-weight:700;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--sky-300);margin:0}
.iv-next__h{font-family:var(--font-display);font-weight:500;font-size:34px;line-height:1.1;letter-spacing:-.018em;margin:16px 0 0;max-width:20ch}
.iv-next__p{font-family:var(--font-sans);font-size:17px;line-height:1.6;color:rgba(255,255,255,.82);margin:14px 0 0;max-width:52ch}
.iv-next__row{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.iv-next__cta{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--brand-navy);font-family:var(--font-sans);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:14px 22px;border-radius:4px;text-decoration:none}
.iv-next__cta:hover{color:var(--sun-700)}
.iv-next__cta--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.iv-next__cta--ghost:hover{color:var(--brand-sky);border-color:var(--brand-sky)}
.iv-next__alt{display:block;margin-top:16px;font-family:var(--font-sans);font-size:14px;color:var(--sky-300);text-decoration:none}

/* --- related (matches text master) --- */
.iv-rel{padding:60px 0 88px}
.iv-rel__head{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px}
.iv-rel__head h2{font-family:var(--font-display);font-weight:500;font-size:26px;color:var(--brand-navy);margin:0}
.iv-rel__head a{font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--sky-800);text-decoration:none}
.iv-rel__cards{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.iv-rc{text-decoration:none;display:block}
.iv-rc__ph{position:relative;width:100%;aspect-ratio:3/2;border-radius:6px;background:repeating-linear-gradient(135deg,#e6edf1 0 14px,#dde6ec 14px 28px);overflow:hidden}
.iv-rc__ph img{width:100%;height:100%;object-fit:cover;display:block}
.iv-rc__ph.is-video::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:rgba(0,43,84,.55);border:2px solid rgba(255,255,255,.92)}
.iv-rc__ph.is-video::before{content:"";position:absolute;z-index:1;left:calc(50% - 5px);top:calc(50% - 8px);border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent #fff}
.iv-rc__t{font-family:var(--font-sans);font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--sky-800);margin:14px 0 0}
.iv-rc__h{font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.2;color:var(--brand-navy);margin:8px 0 0}
.iv-rc__d{font-family:var(--font-sans);font-size:14px;line-height:1.55;color:var(--text-secondary);margin:8px 0 0}
.iv-rc:hover .iv-rc__h{color:var(--sun-700)}

.iv-railtoggle{display:none}
/* dev-only design-demo flag (never ships) */
.iv-demoflag{font-family:var(--font-sans);font-size:11px;line-height:1.5;color:var(--sun-700);background:#FFF8F3;border-left:3px solid var(--brand-accent);padding:8px 12px;margin:0 0 16px;border-radius:0 4px 4px 0}

/* --- mobile --- */
@media(max-width:900px){
  .iv-wrap{padding:0 20px}
  .iv-intro{padding:34px 0 22px}
  .iv-intro__in,.iv-stage__fig,.iv-stage__cap,.iv-next__c{grid-column:1 / -1}
  .iv-stage__fig::before{display:none}
  .iv-h1{font-size:33px}
  .iv-poster__play{width:56px;height:56px}
  .iv-rail{display:none}
  .iv-facts{grid-column:1 / -1;position:static;margin-top:34px}
  .iv-body,.iv-sources{grid-column:1 / -1;max-width:none}
  .iv-rel__cards{grid-template-columns:1fr;gap:28px}
  .iv-chapters button{padding:15px 0}
  .iv-next__c{grid-column:1 / -1}
  .iv-railtoggle{display:block;margin:0 0 26px;border:1px solid var(--line);border-radius:8px;background:#fff}
  .iv-railtoggle summary{font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--brand-navy);padding:13px 16px;cursor:pointer;list-style:none}
  .iv-railtoggle summary::-webkit-details-marker{display:none}
  .iv-railtoggle summary::after{content:"›";float:right;transform:rotate(90deg);color:var(--sky-800)}
  .iv-railtoggle a{display:block;font-family:var(--font-sans);font-size:14px;color:var(--text-secondary);text-decoration:none;padding:9px 16px;border-top:1px solid var(--line)}
}
@media(max-width:560px){.iv-h1{font-size:28px}.iv-next__h{font-size:26px}}

/* --- Step 4B: editorial takeaways (lead line + explanation) and the integrated About this recording
   block. When a record carries an approved d.recording, the facts move INTO the reading column above
   Sources & notes (secondary weight: hairline rule, small caps, quiet 2-col dl) instead of the sticky
   right rail, so the article reads as one piece. --- */
.iv-tk__h{display:block;font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.25;letter-spacing:-.012em;color:var(--brand-navy)}
.iv-tk__p{display:block;font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--text-secondary);margin-top:6px}
.iv-facts--inline{grid-column:4 / span 7;max-width:740px;position:static;top:auto;margin-top:52px;border-top:1px solid var(--line);padding-top:22px}
.iv-facts--inline dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px}
.iv-facts--inline dd{font-size:14.5px}
.iv-sources--inline{margin-top:36px;border-top:1px solid var(--line);padding-top:22px}
@container page (max-width:900px){.iv-facts--inline{grid-column:1 / -1;max-width:none;margin-top:36px}.iv-facts--inline dl{grid-template-columns:1fr}}

/* Featured presentations (event-overview records): whole-row links in the takeaways rhythm */
.iv-featured .iv-feat{display:block;text-decoration:none;color:inherit}
.iv-feat__a{display:inline-block;margin-top:8px;font-family:var(--font-sans);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--brand-navy)}
.iv-feat:hover .iv-tk__h,.iv-feat:hover .iv-feat__a{color:var(--sun-700)}
.iv-feat:focus-visible{outline:2px solid var(--brand-accent);outline-offset:4px}
