:root {
    --site-ink: #102a43;
    --site-navy: #0b2038;
    --site-blue: #1769e8;
    --site-blue-dark: #1055c4;
    --site-gold: #b58a42;
    --site-body: #354d63;
    --site-muted: #60758a;
    --site-rule: #d7e0e7;
    --site-wash: #f3f6f8;
    --site-white: #fff;
    --site-content: 1240px;
    color-scheme: light;
}

html { scroll-behavior: smooth; scroll-padding-top: 88px; }
.webinar-site, .webinar-site * { box-sizing: border-box; }
.webinar-site {
    overflow: clip;
    background: var(--site-white);
    color: var(--site-ink);
    font-family: 'Inter', 'Segoe UI', sans-serif;
    font-size: 17px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}
.webinar-site a { color: inherit; text-decoration: none; }
.webinar-site img { display: block; max-width: 100%; }
.container { width: min(var(--site-content), calc(100% - 96px)); margin-inline: auto; }
.eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 24px; color: var(--site-ink); font-size: 12px; font-weight: 700; letter-spacing: .14em; line-height: 1.45; text-transform: uppercase; }
.eyebrow > span { width: 4px; height: 22px; flex: 0 0 4px; background: var(--site-gold); }

/* Header + first screen */
.hero { position: relative; min-height: 830px; min-height: max(790px, 100svh); background: #f7f9fa; isolation: isolate; }
.site-head { position: relative; z-index: 5; display: flex; height: 88px; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(16,42,67,.1); }
.site-brand { display: inline-flex; flex-direction: column; width: max-content; color: var(--site-ink); font-family: Georgia, 'Times New Roman', serif; font-size: 21px; font-weight: 700; letter-spacing: .09em; line-height: 1; }
.site-brand small { margin-top: 6px; font-family: 'Inter', 'Segoe UI', sans-serif; font-size: 8px; font-weight: 600; letter-spacing: .1em; line-height: 1.2; }
.desktop-nav { display: flex; align-items: center; gap: clamp(24px, 3.25vw, 52px); margin-left: auto; margin-right: clamp(24px, 4vw, 64px); }
.desktop-nav a, .site-footer nav a { color: #344c63; font-size: 13px; font-weight: 600; transition: color .2s ease; }
.desktop-nav a:hover, .site-footer nav a:hover { color: var(--site-blue); }
.head-cta { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 18px; padding: 0 22px; background: var(--site-blue); color: white !important; font-size: 13px; font-weight: 700; transition: background .2s ease, transform .2s ease; }
.head-cta:hover { background: var(--site-blue-dark); transform: translateY(-1px); }
.head-cta span { font-size: 17px; }
.mobile-nav { display: none; }
.hero-layout { display: grid; min-height: calc(max(790px, 100svh) - 88px); grid-template-columns: 43fr 42fr 15fr; align-items: stretch; gap: clamp(18px, 2vw, 30px); }
.hero-copy { z-index: 2; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding-block: 48px 72px; }
.hero-copy .eyebrow { margin-bottom: 18px; }
.hero-copy h1 { margin: 0 0 20px; color: var(--site-navy); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(64px, 6.15vw, 88px); font-weight: 700; letter-spacing: -.045em; line-height: .91; }
.hero-copy h1 span, .hero-copy h1 em { display: block; font-style: normal; white-space: nowrap; }
.hero-copy h1 em { color: var(--site-gold); margin-top: .08em; }
.hero-copy h2 { max-width: 620px; margin: 0 0 16px; color: var(--site-ink); font-size: clamp(25px, 2.15vw, 34px); font-weight: 700; letter-spacing: -.045em; line-height: 1.13; text-wrap: balance; }
.hero-lead { max-width: 610px; margin: 0 0 22px; color: var(--site-body); font-size: clamp(16px, 1.28vw, 19px); line-height: 1.5; text-wrap: pretty; }
.hero-series-callout { display: flex; align-items: center; gap: 14px; margin: 0 0 19px; color: var(--site-navy); }
.hero-series-callout > strong { color: var(--site-gold); font-family: Georgia, 'Times New Roman', serif; font-size: 48px; line-height: .9; }
.hero-series-callout > span { font-size: 13px; font-weight: 700; letter-spacing: .09em; line-height: 1.45; }
.hero-timeline { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: 100%; margin: 0 0 24px; padding: 0; list-style: none; }
.hero-timeline li { position: relative; display: flex; flex-direction: column; gap: 5px; padding: 0 14px; }
.hero-timeline li:first-child { padding-left: 0; }
.hero-timeline li:last-child { padding-right: 0; }
.hero-timeline li:not(:last-child)::after { position: absolute; top: 10px; right: 10px; width: 23px; height: 1px; background: #cbd6df; content: ''; }
.hero-timeline li > span { color: var(--site-muted); font-size: 10px; font-weight: 700; letter-spacing: .09em; }
.hero-timeline time { color: var(--site-ink); font-size: 15px; font-weight: 700; white-space: nowrap; }
.hero-dates { display: flex; flex-wrap: wrap; align-items: center; gap: 0; margin: 2px 0 24px; color: var(--site-ink); }
.hero-dates > span { display: inline-flex; align-items: center; gap: 10px; padding: 0 16px; border-right: 1px solid #cbd6df; font-size: 16px; white-space: nowrap; }
.hero-dates > span:first-child { padding-left: 0; }
.hero-dates > span:last-child { border-right: 0; }
.hero-dates b { font-weight: 700; }
.calendar-mark { position: relative; width: 18px; height: 17px; border: 1.8px solid var(--site-gold); border-radius: 2px; }
.calendar-mark::before { position: absolute; top: 3px; left: 0; width: 100%; border-top: 1.5px solid var(--site-gold); content: ''; }
.calendar-mark::after { position: absolute; top: -3px; left: 3px; width: 8px; height: 4px; border-right: 1.5px solid var(--site-gold); border-left: 1.5px solid var(--site-gold); content: ''; }
.calendar-mark--person { width: 16px; height: 16px; border: 0; }
.calendar-mark--person::before { position: absolute; top: 0; left: 5px; width: 6px; height: 6px; border: 1.7px solid var(--site-gold); border-radius: 50%; content: ''; }
.calendar-mark--person::after { position: absolute; bottom: 0; left: 1px; width: 14px; height: 7px; border: 1.7px solid var(--site-gold); border-radius: 9px 9px 2px 2px; content: ''; }
.primary-btn { display: inline-flex; min-height: 62px; align-items: center; justify-content: space-between; gap: 30px; padding: 0 26px; border: 0; background: var(--site-blue); box-shadow: 0 10px 24px rgba(23,105,232,.16); color: #fff !important; cursor: pointer; font: inherit; font-size: 17px; font-weight: 700; line-height: 1.2; transition: background .2s ease, box-shadow .2s ease, transform .2s ease; }
.primary-btn:hover { background: var(--site-blue-dark); box-shadow: 0 13px 27px rgba(23,105,232,.22); transform: translateY(-2px); }
.primary-btn > span { font-size: 22px; font-weight: 500; transition: transform .2s ease; }
.primary-btn:hover > span { transform: translateX(4px); }
.privacy-note { max-width: 410px; margin: 12px 0 0; color: var(--site-muted); font-size: 12px; line-height: 1.5; }
.privacy-note > span, .form-privacy > span { margin-right: 7px; color: var(--site-blue); }
.hero-portrait { position: relative; align-self: stretch; min-height: 690px; margin: 0; overflow: hidden; background: #e6e9e9; }
.hero-portrait::after { position: absolute; inset: 55% 0 0; background: linear-gradient(0deg, rgba(8,23,39,.55), transparent); content: ''; pointer-events: none; }
.hero-portrait img { width: 100%; height: 100%; min-height: 690px; object-fit: cover; object-position: 50% 16%; }
.hero-portrait figcaption { position: absolute; z-index: 1; right: 22px; bottom: 22px; left: 22px; color: white; font-family: Georgia, serif; font-size: 19px; line-height: 1.3; }
.hero-portrait figcaption small { display: block; margin-top: 5px; font-family: 'Inter', 'Segoe UI', sans-serif; font-size: 11px; letter-spacing: .04em; }
.hero-rail { position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: 48px 0 82px 4px; }
.hero-note { margin: 0; color: var(--site-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(16px, 1.5vw, 21px); font-style: italic; line-height: 1.4; transform: rotate(-5deg); }
.hero-keywords { display: flex; flex-direction: column; gap: 13px; padding-left: 16px; border-left: 1px solid var(--site-gold); color: var(--site-ink); font-size: 13px; font-weight: 600; letter-spacing: .12em; }
.hero-index { color: #6a7c8c; font-size: 11px; letter-spacing: .14em; }
.hero-scroll { position: absolute; right: max(48px, calc((100vw - var(--site-content))/2)); bottom: 24px; display: flex; align-items: center; gap: 10px; color: #687c8e !important; font-size: 9px; font-weight: 700; letter-spacing: .15em; }
.hero-scroll span { display: inline-block; width: 38px; border-top: 1px solid var(--site-gold); }

/* Three meeting cards: strong image area, restrained framing */
.meetings { padding-block: 120px 104px; background: white; }
.section-heading--wide { display: grid; grid-template-columns: 1fr minmax(250px, .52fr); align-items: end; gap: 24px 60px; margin-bottom: 44px; }
.section-heading--wide .eyebrow { grid-column: 1/-1; margin: 0; }
.section-heading--wide h2, .takeaways h2, .books h2, .experiment h2, .audience h2, .faq h2, .register h2 { margin: 0; color: var(--site-navy); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(42px, 4.6vw, 64px); font-weight: 600; letter-spacing: -.035em; line-height: 1.02; text-wrap: balance; }
.section-heading--wide > p:last-child { max-width: 420px; margin: 0 0 4px; color: var(--site-body); font-size: 17px; line-height: 1.55; }
.meeting-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.meeting-card { display: grid; min-height: 410px; grid-template-columns: 1.08fr .92fr; overflow: hidden; border: 1px solid var(--site-rule); background: white; transition: border-color .22s ease, transform .22s ease; }
.meeting-card:hover { border-color: #9ab0c1; transform: translateY(-4px); }
.meeting-copy { display: flex; flex-direction: column; align-items: flex-start; padding: 25px 19px 24px; }
.meeting-meta { display: grid; width: 100%; grid-template-columns: 30px 1fr; grid-template-rows: auto auto; align-items: center; gap: 2px 9px; color: var(--site-gold); }
.meeting-meta > span { grid-column: 1; grid-row: 1 / 3; color: #aab8c3; font-family: Georgia, serif; font-size: 27px; font-weight: 400; }
.meeting-meta > b { grid-column: 2; grid-row: 1; color: var(--site-muted); font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.meeting-meta > time { grid-column: 2; grid-row: 2; color: var(--site-gold); font-size: 11px; font-weight: 800; letter-spacing: .07em; }
.meeting-copy h3 { margin: 28px 0 13px; color: var(--site-ink); font-size: clamp(20px, 1.65vw, 24px); font-weight: 700; letter-spacing: -.035em; line-height: 1.18; text-wrap: balance; }
.meeting-copy p { margin: 0; color: var(--site-body); font-size: 15px; line-height: 1.5; }
.meeting-copy a { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 22px; color: var(--site-blue); font-size: 13px; font-weight: 700; }
.meeting-copy a span { font-size: 19px; transition: transform .2s ease; }
.meeting-copy a:hover span { transform: translate(3px,-3px); }
.meeting-card > img { width: 100%; height: 100%; min-height: 410px; object-fit: cover; }
.meeting-foot { display: flex; align-items: center; gap: 20px; margin-top: 29px; color: var(--site-muted); font-size: 13px; }
.meeting-foot > span:first-child { color: var(--site-ink); font-weight: 700; }
.meeting-foot-line { width: 44px; border-top: 1px solid var(--site-gold); }
.meeting-foot a { display: inline-flex; align-items: center; gap: 14px; margin-left: auto; color: var(--site-blue); font-weight: 700; }

/* Benefits as an open editorial list, not a row of boxed tiles */
.takeaways { padding-block: 112px 124px; background: var(--site-wash); }
.takeaways .container { display: block; }
.takeaways-intro { display: grid; grid-template-columns: minmax(0,.94fr) minmax(300px,1.06fr); align-items: end; gap: 32px clamp(50px,8vw,120px); margin-bottom: 42px; }
.takeaways-intro > div { max-width: 600px; }
.takeaways-intro .eyebrow { margin-bottom: 20px; }
.takeaways-intro h2 { max-width: 600px; font-size: clamp(42px,4.4vw,62px); }
.takeaways-intro > p:last-child { max-width: 520px; margin: 0 0 5px; color: var(--site-body); font-size: clamp(17px,1.35vw,20px); line-height: 1.55; }
.takeaways-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; gap: clamp(18px,2.2vw,30px); }
.bonus-item { min-width: 0; }
.bonus-visual { position: relative; display: grid; aspect-ratio: 1.04; min-height: 300px; place-items: center; overflow: hidden; background: radial-gradient(ellipse at 50% 54%, #fff 0%, #e9eef1 67%, #e0e7ec 100%); perspective: 1200px; }
.bonus-item:nth-child(2) .bonus-visual { background: radial-gradient(ellipse at 50% 54%, #fff 0%, #edf0ee 67%, #e3e8e6 100%); }
.bonus-item:nth-child(3) .bonus-visual { background: radial-gradient(ellipse at 50% 54%, #fff 0%, #e9edf0 67%, #dfe6eb 100%); }
.bonus-edition, .bonus-format { position: absolute; z-index: 1; color: var(--site-ink); font-size: 10px; font-weight: 800; letter-spacing: .13em; line-height: 1.4; }
.bonus-edition { top: 17px; left: 18px; }
.bonus-edition i { padding-inline: 3px; color: var(--site-gold); font-style: normal; }
.bonus-format { right: 17px; bottom: 16px; color: var(--site-muted); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-align: right; text-transform: uppercase; }
.bonus-mockup { width: min(82%, 380px); height: 84%; object-fit: contain; filter: drop-shadow(0 16px 12px rgba(11,32,56,.16)); transition: transform .65s cubic-bezier(.16,1,.3,1), filter .65s cubic-bezier(.16,1,.3,1); transform: translateY(5px); }
.bonus-mockup--book { width: 97%; height: 78%; }
.bonus-item:hover .bonus-mockup { filter: drop-shadow(0 25px 18px rgba(11,32,56,.19)); transform: translateY(-8px) rotateY(-4deg) scale(1.035); }
.bonus-copy { padding: 20px 5px 0; }
.bonus-copy h3 { max-width: 390px; margin: 0 0 10px; color: var(--site-ink); font-size: clamp(20px,1.75vw,25px); font-weight: 700; letter-spacing: -.03em; line-height: 1.2; text-wrap: balance; }
.bonus-copy p { max-width: 405px; margin: 0; color: var(--site-body); font-size: 15px; line-height: 1.55; }

/* Book objects are typeset with real HTML lettering; no fabricated cover copy */
.books { padding-block: 116px 125px; background: #fff; }
.books-heading { display: flex; align-items: end; justify-content: space-between; gap: 48px; margin-bottom: 52px; }
.books-heading h2 { max-width: 740px; }
.books-heading > p { max-width: 310px; margin: 0 0 5px; color: var(--site-body); font-size: 17px; line-height: 1.5; }
.books-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.book-feature { display: grid; min-height: 420px; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 22px; padding: 30px 24px; overflow: hidden; }
.book-feature--anatomy { background: #eef3f6; }
.book-feature--stories { background: #f6f7f6; }
.book-stage { position: relative; display: grid; min-height: 350px; place-items: center; perspective: 1000px; }
.book-object { position: relative; width: clamp(155px,15vw,208px); height: 300px; transform: rotateY(-12deg) rotateZ(-1deg); transform-style: preserve-3d; transition: transform .45s cubic-bezier(.2,.8,.2,1); filter: drop-shadow(15px 17px 13px rgba(14,35,54,.18)); }
.book-feature:hover .book-object { transform: rotateY(-4deg) rotateZ(0deg) translateY(-5px); }
.book-cover { position: absolute; inset: 0 0 0 12px; display: flex; flex-direction: column; align-items: flex-start; padding: 24px 18px; background: #102b48; color: #f4f5f2; box-shadow: inset 5px 0 0 rgba(255,255,255,.12); }
.book-feature--stories .book-cover { background: #f7f8f6; color: var(--site-ink); border: 1px solid #d6dfe3; }
.book-spine { position: absolute; top: 0; bottom: 0; left: 0; width: 15px; background: #0a1b2c; transform: rotateY(-90deg); transform-origin: right center; }
.book-feature--stories .book-spine { background: #dce2e5; }
.book-author { font-size: 8px; letter-spacing: .17em; }
.book-cover strong { margin-top: 45px; font-family: Georgia, serif; font-size: 25px; line-height: 1.05; letter-spacing: .035em; }
.book-cover strong i { color: #c5a35e; font-size: 28px; font-weight: 400; }
.book-cover-rule { width: 32px; margin-top: auto; margin-bottom: 12px; border-top: 2px solid var(--site-gold); }
.book-cover small { font-size: 7px; letter-spacing: .1em; line-height: 1.5; }
.book-stage-index { position: absolute; right: 0; bottom: 4px; color: #6b8091; font-size: 9px; font-weight: 700; letter-spacing: .13em; }
.book-description h3 { margin: 0 0 12px; color: var(--site-ink); font-family: Georgia, serif; font-size: 29px; line-height: 1.08; }
.book-description p { margin: 0 0 25px; color: var(--site-body); font-size: 16px; line-height: 1.5; }
.book-description a { display: inline-flex; align-items: center; gap: 12px; color: var(--site-blue); font-size: 14px; font-weight: 700; }

/* One photographic diagnostic spread */
.experiment { padding-block: 0; background: var(--site-wash); }
.experiment-layout { display: grid; min-height: 700px; grid-template-columns: 1.08fr .92fr; align-items: stretch; gap: clamp(60px,8vw,120px); }
.experiment-visual { position: relative; align-self: center; height: 560px; margin: 0; overflow: hidden; background: #dfe4e6; }
.experiment-visual img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; }
.experiment-visual figcaption { position: absolute; bottom: 0; left: 0; padding: 12px 18px; background: var(--site-navy); color: white; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.experiment-copy { align-self: center; padding-block: 64px; }
.experiment h2 { max-width: 580px; }
.experiment-lead { max-width: 480px; margin: 18px 0 28px; color: var(--site-body); font-size: 20px; line-height: 1.5; }
.question-list { margin: 0; padding: 0; list-style: none; counter-reset: none; }
.question-list li { display: grid; grid-template-columns: 40px 1fr; align-items: start; gap: 14px; padding: 18px 0; border-top: 1px solid #cad5de; }
.question-list li > span { color: var(--site-blue); font-family: Georgia, serif; font-size: 19px; }
.question-list p { margin: 0; color: var(--site-ink); font-size: 18px; font-weight: 600; line-height: 1.4; }
.experiment-last { margin: 20px 0 0; color: var(--site-ink); font-family: Georgia, serif; font-size: 22px; font-style: italic; }

/* Audience: open columns with CSS-drawn line marks, no card shadows */
.audience { padding-block: 104px 112px; background: white; }
.audience-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 44px; }
.audience-heading .eyebrow { max-width: 260px; margin: 0; }
.audience-heading h2 { max-width: 700px; }
.audience-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: start; gap: clamp(18px, 2vw, 30px); }
.audience-grid article { min-width: 0; }
.audience-grid article:nth-child(even) { padding-top: 28px; }
.audience-photo { position: relative; aspect-ratio: 1.22; margin: 0 0 19px; overflow: hidden; background: #e6e9e8; }
.audience-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.audience-grid article:hover .audience-photo img { transform: scale(1.035); }
.audience-grid article:nth-child(1) .audience-photo img { object-position: 44% center; }
.audience-grid article:nth-child(2) .audience-photo img { object-position: 50% center; }
.audience-grid article:nth-child(3) .audience-photo img { object-position: 45% center; }
.audience-grid article:nth-child(4) .audience-photo img { object-position: 50% center; }
.audience-number { position: absolute; right: 0; bottom: 0; display: grid; width: 52px; height: 46px; place-items: center; background: white; color: var(--site-gold); font-family: Georgia, serif; font-size: 20px; }
.audience-kicker { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; color: var(--site-gold); font-size: 10px; font-weight: 800; letter-spacing: .12em; line-height: 1.4; }
.audience-kicker::before { width: 20px; height: 1px; flex: 0 0 20px; background: currentColor; content: ''; }
.audience-grid h3 { max-width: 300px; margin: 0 0 10px; color: var(--site-ink); font-size: clamp(19px, 1.5vw, 23px); font-weight: 650; letter-spacing: -.03em; line-height: 1.2; text-wrap: balance; }
.audience-grid p:not(.audience-kicker) { max-width: 300px; margin: 0; color: var(--site-body); font-size: 15px; line-height: 1.5; }

/* Speaker proof */
.author { padding-block: 0; background: #edf2f5; }
.author-layout { display: grid; min-height: 700px; grid-template-columns: .9fr 1.1fr; align-items: stretch; gap: clamp(60px,8vw,120px); }
.author-photo { position: relative; min-height: 630px; margin: 0; overflow: hidden; background: #dce2e5; }
.author-photo img { width: 100%; height: 100%; min-height: 630px; object-fit: cover; object-position: 50% 19%; }
.author-photo figcaption { position: absolute; right: 18px; bottom: 18px; left: 18px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.7); color: white; font-size: 12px; letter-spacing: .08em; }
.author-copy { align-self: center; padding-block: 88px; }
.author-copy h2 { margin: 0 0 15px; color: var(--site-navy); font-family: inherit; font-size: clamp(48px,5vw,68px); font-weight: 750; letter-spacing: -.045em; line-height: 1.02; }
.author-role { max-width: 560px; margin: 0; color: var(--site-body); font-size: 22px; line-height: 1.45; }
.author-facts { display: flex; gap: clamp(32px,5vw,70px); margin: 30px 0 25px; padding-block: 22px; border-top: 1px solid #c8d3db; border-bottom: 1px solid #c8d3db; }
.author-facts p { display: flex; flex-direction: column; gap: 2px; margin: 0; }
.author-facts strong { color: var(--site-blue); font-size: clamp(27px,2.5vw,36px); font-weight: 750; letter-spacing: -.035em; line-height: 1.08; }
.author-facts .author-fact-long { font-size: clamp(25px,2.1vw,32px); }
.author-facts span { color: var(--site-body); font-size: 15px; line-height: 1.45; }
.author-purpose { max-width: 570px; margin: 0 0 25px; color: var(--site-ink); font-size: 20px; line-height: 1.55; }
.text-link { display: inline-flex; align-items: center; gap: 12px; color: var(--site-blue) !important; font-size: 16px; font-weight: 700; }

/* Native disclosure interaction */
.faq { padding-block: 104px 120px; background: #fff; }
.faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px,9vw,140px); }
.faq h2 { font-size: clamp(42px,4.5vw,60px); }
.faq-list details { border-top: 1px solid var(--site-rule); }
.faq-list details:last-child { border-bottom: 1px solid var(--site-rule); }
.faq-list summary { position: relative; display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 0; color: var(--site-ink); cursor: pointer; font-size: 18px; font-weight: 700; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary > span { position: relative; width: 24px; height: 24px; flex: 0 0 24px; border: 1px solid #9aabba; border-radius: 50%; }
.faq-list summary > span::before, .faq-list summary > span::after { position: absolute; top: 11px; left: 6px; width: 10px; border-top: 1px solid var(--site-ink); content: ''; transition: transform .2s ease; }
.faq-list summary > span::after { transform: rotate(90deg); }
.faq-list details[open] summary > span::after { transform: rotate(0); }
.faq-list details p { max-width: 660px; margin: -3px 44px 22px 0; color: var(--site-body); font-size: 16px; line-height: 1.55; }

/* Registration */
.register { padding-block: 94px 100px; background: var(--site-navy); color: #fff; }
.register-layout { display: grid; min-height: 500px; grid-template-columns: 1.03fr .97fr; align-items: center; gap: clamp(60px,9vw,132px); }
.register .eyebrow { color: #e1eaf1; }
.register h2 { color: white; font-size: clamp(54px,6vw,80px); }
.register-copy > p:not(.eyebrow) { max-width: 485px; margin: 22px 0 0; color: #d5e0e9; font-size: 20px; line-height: 1.5; }
.register-dates { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 34px; color: #dce6ee; font-size: 14px; }
.register-dates span { padding-left: 13px; border-left: 2px solid var(--site-gold); }
.register-form { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; padding: clamp(26px,3vw,42px); background: white; color: var(--site-ink); }
.register-form > label:not(.consent) { grid-column: 1/-1; margin-top: 6px; color: #344d62; font-size: 12px; font-weight: 700; }
.register-form > input:not([type="hidden"]) { grid-column: 1/-1; width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid #c7d3dc; border-radius: 0; background: #fff; color: var(--site-ink); font: inherit; font-size: 15px; }
.register-form > input:focus { border-color: var(--site-blue); outline: 2px solid rgba(23,105,232,.2); outline-offset: 1px; }
.register-form > input::placeholder { color: #586f82; opacity: 1; }
.consent { display: flex; grid-column: 1/-1; align-items: flex-start; gap: 10px; margin-top: 7px; color: #40586e; font-size: 12px; line-height: 1.45; }
.consent input { width: 16px; height: 16px; flex: 0 0 16px; margin: 1px 0 0; accent-color: var(--site-blue); }
.register-form .primary-btn { grid-column: 1/-1; width: 100%; margin-top: 9px; }
.form-privacy { grid-column: 1/-1; margin: 1px 0 0; color: #526a7e; font-size: 11px; line-height: 1.5; }
.form-errors { grid-column: 1/-1; color: #a32121; font-size: 13px; }
.form-errors p { margin: 3px 0; }
.site-footer { padding-block: 28px; background: white; }
.footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.footer-inner nav { display: flex; gap: clamp(18px,3vw,40px); }
.footer-inner nav a { font-size: 12px; }
.footer-inner > p { margin: 0; color: #5c7184; font-size: 11px; line-height: 1.55; text-align: right; }

:focus-visible { outline: 3px solid rgba(23,105,232,.75); outline-offset: 3px; }
@media (max-width: 1190px) {
    .container { width: min(var(--site-content), calc(100% - 64px)); }
    .hero-copy h1 { font-size: clamp(58px,6.3vw,76px); }
    .hero-copy h2 { font-size: clamp(24px,2.5vw,30px); }
    .hero-timeline li { padding-inline: 10px; }
    .hero-timeline li:not(:last-child)::after { width: 15px; right: 5px; }
    .hero-timeline time { font-size: 13px; }
    .meeting-grid { gap: 14px; }
    .meeting-card { grid-template-columns: 1.05fr .85fr; min-height: 390px; }
    .meeting-card > img { min-height: 390px; }
    .meeting-copy { padding-inline: 16px; }
    .meeting-copy h3 { margin-top: 30px; font-size: 20px; }
}
@media (max-width: 960px) {
    .hero { min-height: 0; }
    .hero-layout { min-height: 730px; grid-template-columns: 1.06fr .94fr; }
    .hero-copy h1 { font-size: clamp(62px,8vw,82px); }
    .hero-rail { display: none; }
    .hero-portrait, .hero-portrait img { min-height: 700px; }
    .hero-copy { padding-block: 55px 65px; }
    .hero-scroll { display: none; }
    .meeting-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .meeting-card:last-child { grid-column: 1/-1; }
    .meeting-card:last-child .meeting-copy { padding-inline: 26px; }
    .meeting-card:last-child img { max-height: 390px; }
    .books-layout { grid-template-columns: 1fr; gap: 18px; }
    .book-feature { min-height: 390px; grid-template-columns: 1fr 1fr; }
    .audience-grid { grid-template-columns: repeat(2,minmax(0,1fr)); row-gap: 30px; }
    .audience-grid article:nth-child(even) { padding-top: 0; }
    .audience-photo { aspect-ratio: 1.5; }
}
@media (max-width: 720px) {
    html { scroll-padding-top: 70px; }
    .webinar-site { font-size: 16px; }
    .container { width: calc(100% - 40px); }
    .hero { min-height: 0; }
    .site-head { height: 70px; }
    .site-brand { font-size: 17px; }
    .site-brand small { font-size: 7px; }
    .desktop-nav, .head-cta { display: none; }
    .mobile-nav { position: relative; display: block; z-index: 8; }
    .mobile-nav summary { display: grid; width: 42px; height: 42px; place-content: center; gap: 6px; border: 1px solid #bac8d3; cursor: pointer; list-style: none; }
    .mobile-nav summary::-webkit-details-marker { display: none; }
    .mobile-nav summary span { width: 18px; border-top: 2px solid var(--site-ink); }
    .mobile-nav nav { position: absolute; top: 50px; right: 0; display: grid; width: 230px; padding: 10px 18px; border: 1px solid var(--site-rule); background: white; box-shadow: 0 12px 30px rgba(11,32,56,.12); }
    .mobile-nav nav a { padding: 12px 0; border-bottom: 1px solid var(--site-rule); color: var(--site-ink); font-size: 14px; font-weight: 600; }
    .mobile-nav nav a:last-child { border-bottom: 0; color: var(--site-blue); }
    .hero-layout { display: flex; min-height: 0; flex-direction: column; gap: 0; }
    .hero-copy { padding: 43px 0 31px; }
    .eyebrow { margin-bottom: 17px; font-size: 10px; letter-spacing: .12em; }
    .hero-copy .eyebrow { max-width: 350px; margin-bottom: 16px; }
    .hero-copy h1 { margin-bottom: 18px; font-size: clamp(48px,12.1vw,68px); line-height: .96; }
    .hero-copy h1 span, .hero-copy h1 em { white-space: nowrap; }
    .hero-copy h2 { margin-bottom: 12px; font-size: clamp(22px,6vw,28px); line-height: 1.17; }
    .hero-copy h2 br { display: none; }
    .hero-lead { margin-bottom: 18px; font-size: 16px; line-height: 1.5; }
    .hero-series-callout { gap: 11px; margin-bottom: 16px; }
    .hero-series-callout > strong { font-size: 43px; }
    .hero-series-callout > span { font-size: 11px; }
    .hero-timeline { margin-bottom: 18px; }
    .hero-timeline li { gap: 4px; padding-inline: 7px; }
    .hero-timeline li:not(:last-child)::after { top: 8px; width: 12px; right: 2px; }
    .hero-timeline li > span { font-size: 8px; }
    .hero-timeline time { font-size: 11px; }
    .calendar-mark { transform: scale(.9); }
    .primary-btn { min-height: 58px; gap: 14px; padding-inline: 18px; font-size: 15px; }
    .hero-copy > .primary-btn { width: 100%; }
    .privacy-note { font-size: 11px; }
    .hero-portrait, .hero-portrait img { min-height: 0; height: min(95vw, 420px); }
    .hero-portrait img { object-position: 50% 18%; }
    .hero-portrait figcaption { right: 14px; bottom: 13px; left: 14px; font-size: 16px; }
    .meetings, .takeaways, .books, .audience, .faq { padding-block: 72px; }
    .section-heading--wide { display: block; margin-bottom: 28px; }
    .section-heading--wide h2, .takeaways h2, .books h2, .experiment h2, .audience h2, .faq h2 { font-size: clamp(36px,9vw,48px); }
    .section-heading--wide > p:last-child { margin-top: 14px; font-size: 15px; }
    .meeting-grid { grid-template-columns: 1fr; gap: 14px; }
    .meeting-card, .meeting-card:last-child { min-height: 300px; grid-column: auto; grid-template-columns: 1fr .85fr; }
    .meeting-card > img { min-height: 300px; }
    .meeting-copy, .meeting-card:last-child .meeting-copy { padding: 18px 14px; }
    .meeting-meta { grid-template-columns: 26px 1fr; gap: 2px 7px; }
    .meeting-meta > span { font-size: 22px; }
    .meeting-meta > b { font-size: 8px; }
    .meeting-meta > time { font-size: 10px; }
    .meeting-copy h3 { margin: 24px 0 9px; font-size: 19px; }
    .meeting-copy p { font-size: 13px; }
    .meeting-copy a { padding-top: 15px; font-size: 12px; }
    .meeting-foot { flex-wrap: wrap; gap: 9px 13px; font-size: 12px; }
    .meeting-foot-line { width: 24px; }
    .meeting-foot a { width: 100%; margin: 4px 0 0; }
    .takeaways-intro { display: block; margin-bottom: 28px; }
    .takeaways-intro .eyebrow { margin-bottom: 15px; }
    .takeaways-intro > p:last-child { margin-top: 14px; font-size: 15px; }
    .takeaways-list { grid-template-columns: 1fr; gap: 30px; }
    .bonus-visual { aspect-ratio: 1.25; min-height: 0; }
    .bonus-copy { padding: 15px 2px 0; }
    .bonus-copy h3 { max-width: 500px; font-size: 21px; }
    .bonus-copy p { max-width: 550px; font-size: 14px; }
    .books-heading { display: block; margin-bottom: 28px; }
    .books-heading > p { margin-top: 14px; font-size: 15px; }
    .book-feature { min-height: 0; grid-template-columns: .82fr 1fr; gap: 14px; padding: 20px 15px; }
    .book-stage { min-height: 260px; }
    .book-object { width: 136px; height: 226px; }
    .book-cover { padding: 18px 12px; }
    .book-cover strong { margin-top: 30px; font-size: 20px; }
    .book-cover strong i { font-size: 23px; }
    .book-cover small { font-size: 6px; }
    .book-stage-index { font-size: 7px; }
    .book-description h3 { font-size: 23px; }
    .book-description p { margin-bottom: 16px; font-size: 14px; }
    .book-description a { font-size: 12px; }
    .experiment { padding-block: 0; }
    .experiment-layout { display: flex; min-height: 0; flex-direction: column; gap: 0; }
    .experiment-visual { order: 1; height: 300px; margin: 0 0 35px; }
    .experiment-copy { order: 0; padding-block: 70px 0; }
    .experiment-lead { margin: 13px 0 20px; font-size: 17px; }
    .question-list li { grid-template-columns: 30px 1fr; padding: 15px 0; }
    .question-list p { font-size: 16px; }
    .experiment-last { margin: 14px 0 27px; font-size: 19px; }
    .audience-heading { display: block; margin-bottom: 26px; }
    .audience-heading .eyebrow { max-width: 310px; margin-bottom: 18px; }
    .audience-grid { grid-template-columns: 1fr; gap: 27px; }
    .audience-grid article:nth-child(even) { padding-top: 0; }
    .audience-photo { aspect-ratio: 1.58; margin-bottom: 14px; }
    .audience-number { width: 44px; height: 40px; font-size: 17px; }
    .audience-kicker { margin-bottom: 9px; font-size: 9px; }
    .audience-grid h3 { max-width: none; margin-bottom: 7px; font-size: 21px; }
    .audience-grid p:not(.audience-kicker) { max-width: none; font-size: 14px; }
    .author-layout { display: flex; min-height: 0; flex-direction: column; gap: 0; }
    .author-photo { order: 2; min-height: 0; height: min(105vw,430px); }
    .author-photo img { min-height: 0; height: 100%; object-position: 50% 18%; }
    .author-copy { order: 1; padding-block: 66px 33px; }
    .author-copy h2 { font-size: 56px; }
    .author-role { font-size: 17px; }
    .author-facts { gap: 30px; margin: 25px 0; }
    .author-facts strong { font-size: 32px; }
    .author-purpose { font-size: 18px; }
    .faq-layout { display: block; }
    .faq-layout > div:first-child { margin-bottom: 26px; }
    .faq-list summary { min-height: 68px; font-size: 16px; }
    .faq-list details p { font-size: 14px; }
    .register { padding-block: 70px; }
    .register-layout { display: block; min-height: 0; }
    .register h2 { font-size: clamp(44px,11vw,60px); }
    .register-copy > p:not(.eyebrow) { margin-top: 16px; font-size: 17px; }
    .register-dates { margin: 21px 0 26px; gap: 8px 13px; font-size: 12px; }
    .register-form { gap: 6px 12px; padding: 21px 17px; }
    .register-form > input:not([type="hidden"]) { min-height: 48px; font-size: 14px; }
    .consent { font-size: 11px; }
    .site-footer { padding-block: 25px 85px; }
    .footer-inner { display: grid; grid-template-columns: 1fr; gap: 20px; }
    .footer-inner nav { flex-wrap: wrap; gap: 12px 22px; }
    .footer-inner > p { text-align: left; }
}
@media (max-width: 390px) {
    .container { width: calc(100% - 32px); }
    .hero-copy h1 { font-size: 47px; }
    .hero-copy h2 { font-size: 21px; }
    .hero-timeline li { padding-inline: 4px; }
    .hero-timeline li:first-child { padding-left: 0; }
    .hero-timeline time { font-size: 10px; }
    .calendar-mark { transform: scale(.78); }
    .meeting-card, .meeting-card:last-child { grid-template-columns: 1fr .76fr; }
    .meeting-copy h3 { font-size: 17px; }
    .meeting-copy p { font-size: 12px; }
    .book-feature { grid-template-columns: .75fr 1fr; padding-inline: 11px; }
    .book-object { width: 120px; height: 215px; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* A concise opening sequence, followed by narrative-paced scroll reveals. */
@keyframes series-rise-in {
    from { opacity: 0; transform: translate3d(0, 22px, 0); filter: blur(5px); }
    to { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
}
@keyframes series-title-in {
    from { opacity: 0; clip-path: inset(0 0 100% 0); transform: translate3d(0, 15px, 0); }
    to { opacity: 1; clip-path: inset(0); transform: translate3d(0, 0, 0); }
}
@keyframes series-photo-in {
    from { clip-path: inset(0 0 0 100%); }
    to { clip-path: inset(0); }
}

.webinar-site.motion-ready .hero-copy > .eyebrow,
.webinar-site.motion-ready .hero-copy > h2,
.webinar-site.motion-ready .hero-copy > .hero-lead,
.webinar-site.motion-ready .hero-copy > .hero-series-callout,
.webinar-site.motion-ready .hero-copy > .primary-btn,
.webinar-site.motion-ready .hero-copy > .privacy-note {
    animation: series-rise-in .8s cubic-bezier(.16, 1, .3, 1) both;
}
.webinar-site.motion-ready .hero-copy > .eyebrow { animation-delay: .08s; }
.webinar-site.motion-ready .hero-copy > h1 {
    animation: series-title-in 1.05s cubic-bezier(.16, 1, .3, 1) .16s both;
}
.webinar-site.motion-ready .hero-copy > h2 { animation-delay: .34s; }
.webinar-site.motion-ready .hero-copy > .hero-lead { animation-delay: .43s; }
.webinar-site.motion-ready .hero-copy > .hero-series-callout { animation-delay: .48s; }
.webinar-site.motion-ready .hero-copy > .hero-timeline li {
    animation: series-rise-in .65s cubic-bezier(.16, 1, .3, 1) both;
}
.webinar-site.motion-ready .hero-copy > .hero-timeline li:nth-child(1) { animation-delay: .48s; }
.webinar-site.motion-ready .hero-copy > .hero-timeline li:nth-child(2) { animation-delay: .59s; }
.webinar-site.motion-ready .hero-copy > .hero-timeline li:nth-child(3) { animation-delay: .7s; }
.webinar-site.motion-ready .hero-timeline li:not(:last-child)::after {
    transform: scaleX(0);
    transform-origin: left;
    animation: series-timeline-line .55s cubic-bezier(.16, 1, .3, 1) .78s forwards;
}
@keyframes series-timeline-line { to { transform: scaleX(1); } }
.webinar-site.motion-ready .hero-copy > .primary-btn { animation-delay: .79s; }
.webinar-site.motion-ready .hero-copy > .privacy-note { animation-delay: .88s; }
.webinar-site.motion-ready .hero-portrait { animation: series-photo-in 1.1s cubic-bezier(.76, 0, .24, 1) .12s both; }
.webinar-site.motion-ready .hero-portrait img {
    transform: scale(1.055);
    animation: series-photo-settle 1.5s cubic-bezier(.16, 1, .3, 1) .12s both;
}
@keyframes series-photo-settle { to { transform: scale(1); } }
.webinar-site.motion-ready .hero-rail > * { animation: series-rise-in .75s cubic-bezier(.16, 1, .3, 1) .56s both; }

.webinar-site.motion-ready .motion-reveal {
    opacity: .01;
    transform: translate3d(0, 24px, 0);
    filter: blur(4px);
    transition: opacity .8s cubic-bezier(.16, 1, .3, 1), transform .8s cubic-bezier(.16, 1, .3, 1), filter .8s cubic-bezier(.16, 1, .3, 1);
    will-change: opacity, transform, filter;
}
.webinar-site.motion-ready .motion-reveal.is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    filter: blur(0);
    will-change: auto;
}
.webinar-site.motion-ready .meeting-card:nth-child(2),
.webinar-site.motion-ready .takeaways-list article:nth-child(2),
.webinar-site.motion-ready .question-list li:nth-child(2),
.webinar-site.motion-ready .audience-grid article:nth-child(2) { transition-delay: .1s; }
.webinar-site.motion-ready .meeting-card:nth-child(3),
.webinar-site.motion-ready .takeaways-list article:nth-child(3),
.webinar-site.motion-ready .question-list li:nth-child(3),
.webinar-site.motion-ready .audience-grid article:nth-child(3) { transition-delay: .2s; }
.webinar-site.motion-ready .audience-grid article:nth-child(4) { transition-delay: .3s; }

@media (max-width: 720px) {
    .webinar-site.motion-ready .hero-portrait { animation-duration: .8s; }
    .webinar-site.motion-ready .motion-reveal { transform: translate3d(0, 16px, 0); filter: blur(2px); }
}
@media (prefers-reduced-motion: reduce) {
    .webinar-site.motion-ready *,
    .webinar-site.motion-ready *::before,
    .webinar-site.motion-ready *::after {
        animation: none !important;
        filter: none !important;
        opacity: 1 !important;
        transform: none !important;
        clip-path: none !important;
        transition: none !important;
        will-change: auto !important;
    }
}
