/* Clear Box event pages (AI+OER Institute, OpenEd26, and the ones after).
   One template, built from the home and About page patterns: chapter label
   with a rule, display headings with a blue second half, home buttons and
   card shapes, the open-toolbox tiles, and the home contact panel. */

@font-face { font-family: "Atkinson Hyperlegible Next"; src: url("/assets/fonts/atkinson-hyperlegible-next-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Atkinson Hyperlegible Next"; src: url("/assets/fonts/atkinson-hyperlegible-next-600.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("/assets/fonts/ibm-plex-mono-400.woff2") format("woff2"); font-weight: 400 600; font-display: swap; }

body.page-event {
  --ev-paper: #f7f3eb;
  --ev-paper-warm: #f1e9db;
  --ev-card: #fefdfa;
  --ev-ink: #1b2b3a;
  --ev-copy: #33434f;
  --ev-muted: #5f6d78;
  --ev-rule: rgba(27, 43, 58, .14);
  --ev-blue: #2f6a99;
  --ev-blue-light: #8fb7d9;
  --ev-blue-tint: #e4eef5;
  --ev-green: #467456;
  --ev-brown: #8a4a1f;
  --ev-label: "Atkinson Hyperlegible Next", "Atkinson Hyperlegible Next Fallback", system-ui, sans-serif;
  --ev-sans: "Figtree", "Figtree Fallback", system-ui, -apple-system, sans-serif;
  --ev-btn-radius: 12px 18px 12px 16px;
  --ev-card-radius: 24px 40px 26px 34px;
  background: var(--ev-paper);
  color: var(--ev-ink);
}
.vh { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

.ev-wrap { width: min(var(--chrome-max, 1200px), calc(100% - 80px)); margin: 0 auto; }
@media (max-width: 760px) { .ev-wrap { width: calc(100% - 48px); } }
@media (max-width: 480px) { .ev-wrap { width: calc(100% - 40px); } }
.ev-section { padding: clamp(64px, 8vw, 104px) 0 0; }
.ev-section:last-of-type { padding-bottom: clamp(72px, 9vw, 112px); }

/* Chapter label with a rule, and display headings */
.ev-chapter { display: flex; align-items: center; gap: 20px; margin: 0 0 26px; }
.ev-chapter span { font-family: var(--ev-label); font-weight: 600; font-size: 1.05rem; color: var(--ev-blue); white-space: nowrap; }
.ev-chapter::after { content: ""; flex: 1; height: 1px; background: var(--ev-blue); opacity: .32; }
.ev-display { margin: 0; font-family: var(--ev-sans); font-weight: 700; letter-spacing: -.025em; line-height: 1.02; color: var(--ev-ink); text-wrap: balance; }
.ev-display em { font-style: normal; color: var(--ev-blue); }
h2.ev-display { font-size: clamp(2.25rem, 4.6vw, 3.5rem); max-width: 860px; }
.ev-intro { margin: 20px 0 0; max-width: 760px; font-size: 1.1875rem; line-height: 1.6; color: var(--ev-copy); text-wrap: pretty; }

/* Buttons and links */
.ev-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 18px; border-radius: var(--ev-btn-radius); border: 1.5px solid var(--ev-blue); background: var(--ev-blue); color: #fff; font: 600 15px/1.2 var(--ev-sans); text-decoration: none; transition: transform 420ms cubic-bezier(.22, 1, .36, 1); }
.ev-btn:hover { transform: scale(.975); color: #fff; }
.ev-btn.ghost { background: transparent; color: var(--ev-blue); }
.ev-btn.ghost:hover { color: var(--ev-blue); }
.ev-btn.light { background: var(--ev-paper); border-color: var(--ev-paper); color: var(--ev-ink); }
.ev-btn.light:hover { color: var(--ev-ink); }
.ev-btn:focus-visible, .ev-link:focus-visible { outline: 3px solid var(--ev-blue-light); outline-offset: 3px; }
.ev-btn .ext { width: .72em; height: .72em; }
.ev-link { color: var(--ev-blue); font-weight: 600; text-underline-offset: .2em; }

/* Hero */
.ev-hero { padding: clamp(56px, 7vw, 96px) 0 0; }
.ev-hero h1 { font-size: clamp(2.75rem, 6vw, 4.5rem); max-width: 980px; }
.ev-hero h1 .sub { display: block; margin-top: 14px; font-size: .58em; font-weight: 600; letter-spacing: -.015em; line-height: 1.12; color: var(--ev-blue); }
.ev-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 28px 0 0; font-family: var(--ev-label); font-size: 1rem; color: var(--ev-muted); }
.ev-meta strong { color: var(--ev-ink); font-weight: 600; }
.ev-hero .ev-intro { margin-top: 26px; }

/* Recording (kept from the live page, restyled lightly) */
.ev-recording { margin-top: 40px; padding: clamp(24px, 3.4vw, 40px); border-radius: var(--ev-card-radius); background: var(--ev-blue-tint); }
.ev-recording-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 16px 56px; align-items: end; margin-bottom: 26px; }
.ev-recording-head h2 { font-size: clamp(1.9rem, 3.4vw, 2.75rem); }
.ev-recording-head p { margin: 0; font-size: 1.0625rem; line-height: 1.6; color: var(--ev-copy); }
.ev-frame { padding: clamp(8px, 1.1vw, 12px); border-radius: 16px 30px 18px 34px; background: var(--ev-ink); box-shadow: 0 34px 70px -44px rgba(27, 43, 58, .72); }
.ev-media { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border: 0; border-radius: 10px 22px 12px 26px; background: #0b1117; color: #fff; text-decoration: none; cursor: pointer; }
.ev-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
a.ev-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 12, 18, .02) 42%, rgba(5, 12, 18, .6) 100%); }
.ev-play { position: absolute; z-index: 2; left: 50%; top: 50%; display: grid; place-items: center; width: clamp(62px, 7vw, 84px); aspect-ratio: 1; border-radius: 50%; background: rgba(255, 253, 248, .95); color: var(--ev-blue); box-shadow: 0 20px 46px -20px rgba(0, 0, 0, .75); transform: translate(-50%, -50%); transition: transform 220ms cubic-bezier(.22, 1, .36, 1); }
a.ev-media:hover .ev-play { transform: translate(-50%, -50%) scale(1.06); }
.ev-play svg { width: 34%; margin-left: 5%; }
.ev-frame-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; padding: 14px 8px 3px; font-family: var(--ev-label); font-size: .875rem; color: rgba(255, 253, 248, .78); }
.ev-frame-meta a { color: #d7e9f5; font-weight: 600; text-underline-offset: 3px; }
iframe.ev-media { height: auto; }
/* Placeholder before a recording airs */
.ev-media.is-soon { display: grid; place-items: center; text-align: center; cursor: default; background: radial-gradient(circle at 50% 35%, #2f4f6b 0, #1b2b3a 70%); }
.ev-soon { max-width: 520px; padding: 24px; }
.ev-soon .lab { display: block; font-family: var(--ev-label); font-size: .8125rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ev-blue-light); }
.ev-soon strong { display: block; margin-top: 10px; font: 700 clamp(1.4rem, 3vw, 2rem)/1.15 var(--ev-sans); color: var(--ev-paper); }
.ev-soon span:last-child { display: block; margin-top: 10px; font-size: 1rem; color: #c9d6e1; }

/* Two feature cards */
.ev-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 40px; }
.ev-feature { display: flex; flex-direction: column; gap: 16px; padding: clamp(28px, 3.6vw, 44px); border-radius: var(--ev-card-radius); background: var(--ev-blue-tint); }
.ev-feature:nth-child(2) { border-radius: 34px 24px 40px 26px; background: var(--ev-ink); color: #d6dee5; }
.ev-feature .lab { font-family: var(--ev-label); font-size: .875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ev-blue); }
.ev-feature:nth-child(2) .lab { color: var(--ev-blue-light); }
.ev-feature h3 { margin: 0; font: 700 clamp(1.6rem, 2.8vw, 2.25rem)/1.08 var(--ev-sans); letter-spacing: -.02em; color: var(--ev-ink); }
.ev-feature:nth-child(2) h3 { color: var(--ev-paper); }
.ev-feature p { margin: 0; font-size: 1.0625rem; line-height: 1.6; color: var(--ev-copy); }
.ev-feature:nth-child(2) p { color: #d6dee5; }
.ev-feature dl { display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; margin: 4px 0 0; font-size: .9875rem; }
.ev-feature dt { font-family: var(--ev-label); font-weight: 600; color: var(--ev-blue); }
.ev-feature:nth-child(2) dt { color: var(--ev-blue-light); }
.ev-feature dd { margin: 0; color: inherit; }
.ev-feature .ev-actions { margin-top: auto; padding-top: 8px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.ev-feature:nth-child(2) .ev-btn { background: var(--ev-paper); border-color: var(--ev-paper); color: var(--ev-ink); }
.ev-feature:nth-child(2) .ev-link { color: var(--ev-blue-light); }
.ev-feature .small { font-family: var(--ev-label); font-size: .875rem; color: var(--ev-muted); }
.ev-feature:nth-child(2) .small { color: #a9b8c4; }

/* Uniform resource grid */
.ev-resources { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 40px; }
.ev-res { display: flex; flex-direction: column; gap: 8px; padding: 26px 28px 28px; border-radius: 18px 26px 18px 24px; background: var(--ev-card); box-shadow: 0 24px 50px -40px rgba(27, 43, 58, .35); }
.ev-res .lab { font-family: var(--ev-label); font-size: .8125rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ev-muted); }
.ev-res h3 { margin: 0; font: 600 1.3125rem/1.25 var(--ev-sans); }
.ev-res h3 a { color: var(--ev-blue); text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: .2em; }
.ev-res h3 a:hover { color: var(--ev-ink); }
.ev-res p { margin: 0; font-size: 1rem; line-height: 1.55; color: var(--ev-copy); }
.ev-res .ext { width: .62em; height: .62em; margin-left: 5px; vertical-align: .05em; }

/* Open toolbox: same marks as the About page, on light tiles */
.ev-tools { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 40px; }
.ev-tool { display: flex; align-items: center; gap: 18px; padding: 22px 24px; border-radius: 18px 26px 18px 24px; background: var(--ev-card); text-decoration: none; color: inherit; box-shadow: 0 24px 50px -40px rgba(27, 43, 58, .35); border-top: 4px solid var(--ev-rule); transition: transform 420ms cubic-bezier(.22, 1, .36, 1); }
.ev-tool:hover { transform: translateY(-2px); }
.ev-tool.darp { border-top-color: var(--ev-blue); } .ev-tool.cl { border-top-color: var(--ev-green); } .ev-tool.cf { border-top-color: var(--ev-brown); }
.ev-tool-icon { flex: none; width: 92px; height: 52px; display: flex; align-items: center; }
.ev-tool .dw { display: flex; gap: 4px; font: 700 26px/1 var(--ev-sans); color: var(--ev-blue); }
.ev-tool .cl-mark { display: flex; gap: 5px; height: 48px; }
.ev-tool .cl-mark i { position: relative; display: block; width: 28px; border-radius: 7px; font: 600 20px/1 "IBM Plex Mono", "IBM Plex Mono Fallback", ui-monospace, monospace; }
.ev-tool .cl-mark i:nth-child(1) { background: #4e8a65; color: #fefdfa; }
.ev-tool .cl-mark i:nth-child(2) { border: 3px solid #4e8a65; color: #4e8a65; }
.ev-tool .cl-mark i u { position: absolute; left: 0; right: 0; bottom: 33%; transform: translateY(50%); display: flex; justify-content: center; text-decoration: none; }
.ev-tool .cl-mark span { display: flex; flex-direction: column; justify-content: flex-end; gap: 4px; width: 24px; padding-bottom: 6px; }
.ev-tool .cl-mark span b { height: 6px; border-radius: 2px; background: #4e8a65; opacity: .55; }
.ev-tool .cl-mark span b:last-child { opacity: .85; }
.ev-tool .cf-mark { width: 52px; height: 52px; color: var(--ev-brown); }
.ev-tool-text { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ev-tool-name { font: 600 1.125rem/1.2 var(--ev-sans); color: var(--ev-ink); }
.ev-tool-desc { font-size: .9375rem; line-height: 1.35; color: var(--ev-copy); }
.ev-tool-status { margin-top: 4px; font-family: var(--ev-label); font-size: .75rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ev-muted); }

/* Closing panel, as on the home page */
.ev-contact-wrap { padding: clamp(72px, 9vw, 112px) 24px clamp(40px, 5vw, 56px); }
.ev-contact { background: var(--ev-ink); color: var(--ev-paper); border-radius: 32px 56px 32px 48px; padding: clamp(64px, 8vw, 112px) 0; }
.ev-contact .ev-wrap { width: min(1200px, calc(100% - 80px)); }
.ev-contact .ev-chapter span { color: var(--ev-blue-light); }
.ev-contact .ev-chapter::after { background: var(--ev-blue-light); opacity: .5; }
.ev-contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) 480px; gap: 72px; align-items: end; }
.ev-contact h2 { margin: 0; color: var(--ev-paper); font: 700 clamp(3rem, 6.4vw, 5.5rem)/.98 var(--ev-sans); letter-spacing: -.025em; }
.ev-contact h2 em { font-style: normal; color: var(--ev-blue-light); }
.ev-contact p { margin: 0 0 16px; color: #d6dee5; font-size: 1.125rem; line-height: 1.6; }
.ev-contact .note { color: var(--ev-blue-light); font-size: .9375rem; }
.ev-contact-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 8px; }
.ev-contact-actions a.mail { color: var(--ev-blue-light); font-weight: 600; }

@media (max-width: 1000px) {
  .ev-resources, .ev-tools { grid-template-columns: minmax(0, 1fr); }
  .ev-contact-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
@media (max-width: 860px) {
  .ev-pair, .ev-recording-head { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .ev-contact-wrap { padding-left: 12px; padding-right: 12px; }
  .ev-contact .ev-wrap { width: calc(100% - 48px); }
}

/* Tool tiles: project color as a small bar, not a curved top border */
.ev-tool { border-top: 0; position: relative; overflow: hidden; }
.ev-tool::before { content: ""; position: absolute; left: 24px; top: 0; width: 44px; height: 4px; border-radius: 0 0 3px 3px; background: var(--ev-rule); }
.ev-tool.darp::before { background: var(--ev-blue); } .ev-tool.cl::before { background: var(--ev-green); } .ev-tool.cf::before { background: var(--ev-brown); }
/* The placeholder doesn't need a full video frame */
.ev-media.is-soon { aspect-ratio: 21 / 8; }
@media (max-width: 760px) { .ev-media.is-soon { aspect-ratio: 4 / 3; } }

/* Staggered resource cards: the middle column drops, corners alternate */
@media (min-width: 1001px) {
  .ev-stagger { align-items: start; }
  .ev-stagger .ev-res:nth-child(3n+2) { margin-top: 40px; }
  .ev-stagger .ev-res:nth-child(3n+3) { margin-top: 16px; }
}
.ev-stagger .ev-res:nth-child(even) { border-radius: 26px 18px 24px 18px; }
.ev-stagger .ev-res:nth-child(3n+1) { background: var(--ev-card); }
.ev-stagger .ev-res:nth-child(3n+2) { background: var(--ev-blue-tint); box-shadow: none; }
.ev-stagger .ev-res:nth-child(3n+3) { background: var(--ev-paper-warm); box-shadow: none; }

/* Ladder rows, after the commonllama "under your control" list:
   full-width rows that alternate dark and light and step left and right. */
.ev-ladder { display: flex; flex-direction: column; gap: 20px; margin-top: 40px; }
.ev-rung { display: grid; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.6fr); gap: 12px 48px; align-items: start; width: 88%; padding: 30px 40px; border-radius: 16px; background: var(--ev-ink); color: #d6dee5; box-shadow: 0 18px 40px -30px rgba(27, 43, 58, .55); }
.ev-rung:nth-child(even) { margin-left: auto; background: var(--ev-card); color: var(--ev-copy); box-shadow: 0 18px 40px -32px rgba(27, 43, 58, .35); }
.ev-rung-head { display: flex; flex-direction: column; gap: 6px; }
.ev-rung .lab { font-family: var(--ev-label); font-size: .8125rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ev-blue-light); }
.ev-rung:nth-child(even) .lab { color: var(--ev-blue); }
.ev-rung h3 { margin: 0; font: 600 1.375rem/1.25 var(--ev-sans); }
.ev-rung h3 a { color: var(--ev-paper); text-decoration: underline; text-decoration-color: rgba(247, 243, 235, .4); text-decoration-thickness: 1.5px; text-underline-offset: .22em; }
.ev-rung h3 a:hover { text-decoration-color: currentColor; }
.ev-rung:nth-child(even) h3 a { color: var(--ev-ink); text-decoration-color: rgba(47, 106, 153, .45); }
.ev-rung p { margin: 0; padding-top: 22px; font-size: 1.0625rem; line-height: 1.6; }
.ev-rung p a { color: var(--ev-blue-light); }
.ev-rung:nth-child(even) p a { color: var(--ev-blue); }
.ev-rung .ext { width: .62em; height: .62em; margin-left: 6px; vertical-align: .05em; }
@media (max-width: 860px) {
  .ev-rung, .ev-rung:nth-child(even) { width: 100%; margin-left: 0; grid-template-columns: minmax(0, 1fr); padding: 26px 24px; }
  .ev-rung p { padding-top: 0; }
}


body[data-palette^="b"] .ev-rung:nth-child(odd) .lab, body[data-palette^="b"] .ev-feature:nth-child(2) .lab { color: #cfe1f0; }
body[data-palette^="b"] .ev-rung:nth-child(odd) { background: var(--ev-blue); color: #e9f1f8; }
body[data-palette^="b"] .ev-rung:nth-child(odd) h3 a { color: #fff; text-decoration-color: rgba(255,255,255,.5); }
body[data-palette^="b"] .ev-feature:nth-child(2) { background: var(--ev-blue); color: #e9f1f8; }
body[data-palette^="b"] .ev-feature:nth-child(2) h3 { color: #fff; }
body[data-palette^="b"] .ev-feature:nth-child(2) p, body[data-palette^="b"] .ev-feature:nth-child(2) dd { color: #e9f1f8; }
body[data-palette^="b"] .ev-feature:nth-child(2) dt, body[data-palette^="b"] .ev-feature:nth-child(2) .small { color: #cfe1f0; }
body[data-palette^="b"] .ev-feature:nth-child(2) .ev-btn { background: #fff; border-color: #fff; color: var(--ev-blue); }
body[data-palette^="b"] .ev-rung:nth-child(even) .lab, body[data-palette^="b"] .ev-feature:nth-child(1) .lab, body[data-palette^="b"] .ev-feature:nth-child(1) dt { color: var(--ev-blue); }
body[data-palette^="b"] .ev-rung:nth-child(even) h3 a { color: var(--ev-ink); text-decoration-color: rgba(47,106,153,.45); }
body[data-palette="b2"] .ev-rung:nth-child(even), body[data-palette="b2"] .ev-feature:nth-child(1), body[data-palette="b2"] .ev-recording { background: #cfe0ee; box-shadow: 0 22px 44px -28px rgba(27,43,58,.5); color: var(--ev-ink); }





/* ===== Chosen 2026-09-30: option D for the side-by-side pair =====
   The section holding the pair sits on a full-width paper-warm band (as on the
   home page example section); the light card is card white with a soft lift,
   beside a Clear Box blue card. */
.ev-section.ev-band { margin-top: clamp(64px, 8vw, 104px); padding: clamp(64px, 8vw, 96px) 0; background: var(--ev-paper-warm); }
.ev-band + .ev-section { padding-top: clamp(64px, 8vw, 104px); }
body.page-event .ev-section.ev-band .ev-feature:nth-child(1) { background: var(--ev-card); color: var(--ev-ink); box-shadow: 0 24px 50px -36px rgba(27, 43, 58, .45); border: 0; }
body.page-event .ev-section.ev-band .ev-feature:nth-child(1) .lab, body.page-event .ev-section.ev-band .ev-feature:nth-child(1) dt { color: var(--ev-blue); }
body.page-event .ev-section.ev-band .ev-feature:nth-child(1) p, body.page-event .ev-section.ev-band .ev-feature:nth-child(1) dd { color: var(--ev-copy); }
body.page-event .ev-section.ev-band .ev-feature:nth-child(1) h3 { color: var(--ev-ink); }
body.page-event .ev-section.ev-band .ev-feature:nth-child(2) { background: var(--ev-blue); color: #e9f1f8; box-shadow: none; }
body.page-event .ev-section.ev-band .ev-feature:nth-child(2) h3 { color: #fff; }
body.page-event .ev-section.ev-band .ev-feature:nth-child(2) p, body.page-event .ev-section.ev-band .ev-feature:nth-child(2) dd { color: #e9f1f8; }
body.page-event .ev-section.ev-band .ev-feature:nth-child(2) .lab, body.page-event .ev-section.ev-band .ev-feature:nth-child(2) dt, body.page-event .ev-section.ev-band .ev-feature:nth-child(2) .small { color: #cfe1f0; }
body.page-event .ev-section.ev-band .ev-feature:nth-child(2) .ev-btn { background: #fff; border-color: #fff; color: var(--ev-blue); }
.ev-btn.is-pending { opacity: .55; cursor: default; }
.ev-btn.is-pending:hover { transform: none; }
/* Preview image at the top of a resource card */
.ev-preview { display: block; width: 100%; height: 220px; object-fit: cover; object-position: top center; border-radius: 12px 18px 12px 16px; box-shadow: 0 14px 30px -22px rgba(27, 43, 58, .6); margin-bottom: 6px; }
/* Single document card: fanned page thumbnails beside the text */
.ev-doc { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 72px); align-items: center; margin-top: 40px; padding: clamp(32px, 4vw, 56px); border-radius: var(--ev-card-radius); background: var(--ev-card); box-shadow: 0 24px 50px -36px rgba(27, 43, 58, .45); }
.ev-doc-pages { position: relative; height: 420px; }
.ev-doc-pages img { position: absolute; top: 0; width: 62%; height: auto; border-radius: 6px; box-shadow: 0 18px 36px -20px rgba(27, 43, 58, .55), 0 0 0 1px rgba(27, 43, 58, .08); }
.ev-doc-pages img:nth-child(1) { left: 34%; top: 22px; transform: rotate(4deg); }
.ev-doc-pages img:nth-child(2) { left: 4%; transform: rotate(-3deg); }
.ev-doc-body { display: flex; flex-direction: column; gap: 16px; }
.ev-doc .lab { font-family: var(--ev-label); font-size: .875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ev-blue); }
.ev-doc h3 { margin: 0; font: 700 clamp(1.6rem, 2.8vw, 2.25rem)/1.08 var(--ev-sans); letter-spacing: -.02em; color: var(--ev-ink); }
.ev-doc h3 em { font-style: normal; color: var(--ev-blue); }
.ev-doc p { margin: 0; font-size: 1.0625rem; line-height: 1.6; color: var(--ev-copy); }
.ev-doc dl { display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; margin: 4px 0 0; font-size: .9875rem; }
.ev-doc dt { font-family: var(--ev-label); font-weight: 600; color: var(--ev-blue); }
.ev-doc dd { margin: 0; color: var(--ev-copy); }
.ev-doc .ev-actions { padding-top: 8px; }
@media (max-width: 860px) {
  .ev-doc { grid-template-columns: minmax(0, 1fr); }
  .ev-doc-pages { height: 300px; }
  .ev-doc-pages img { width: 52%; }
}
@media (max-width: 860px) { .ev-doc-pages { height: auto; aspect-ratio: 1.25 / 1; } }
/* Blue card holding whole, shrunken page thumbnails of a document */
body.page-event .ev-section.ev-band a.ev-feature.ev-thumb { display: grid; place-items: center; padding: clamp(28px, 3.6vw, 44px); text-decoration: none; transition: transform 420ms cubic-bezier(.22, 1, .36, 1); }
body.page-event .ev-section.ev-band a.ev-feature.ev-thumb:hover { transform: scale(.985); }
.ev-thumb-pages { display: flex; gap: 18px; justify-content: center; align-items: center; width: 100%; }
.ev-thumb-pages img { display: block; width: min(42%, 220px); height: auto; border-radius: 4px; box-shadow: 0 16px 30px -16px rgba(0, 0, 0, .5); }
.ev-thumb-pages img:nth-child(1) { transform: rotate(-2.5deg); }
.ev-thumb-pages img:nth-child(2) { transform: rotate(2.5deg) translateY(8px); }

/* Hero split: title copy beside an illustration from the session slides (shared by event pages) */
.ev-hero-split { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .8fr); gap: clamp(32px, 5vw, 72px); align-items: center; }
.ev-hero-split .ev-display { max-width: none; }
.ev-hero-art { display: block; width: 100%; height: auto; max-width: 440px; justify-self: end; }
@media (max-width: 900px) {
  .ev-hero-split { grid-template-columns: minmax(0, 1fr); }
  .ev-hero-art { justify-self: start; max-width: 340px; }
}

/* Closing panel, tightened (2026-10-05) */
.ev-contact-wrap { padding: clamp(48px, 6vw, 72px) 24px clamp(32px, 4vw, 48px); }
.ev-contact { padding: 72px 0 80px; }
.ev-contact .ev-chapter { margin-bottom: 32px; }
.ev-contact-grid { align-items: start; gap: 64px; }
.ev-contact h2 { font-size: clamp(3rem, 5vw, 4.5rem); }
@media (max-width: 760px) { .ev-contact { padding: 48px 0; } .ev-contact h2 { font-size: 3rem; } .ev-contact-grid { gap: 24px; } }

/* Closing panel, same on every page (2026-10-05) */
.ev-btn.ghost-light { background: transparent; border-color: rgba(247, 243, 235, .7); color: var(--ev-paper); }
.ev-btn.ghost-light:hover { color: var(--ev-paper); }
.ev-contact-grid { grid-template-columns: minmax(0, 1fr) 640px; }
.ev-contact .note { margin-bottom: 10px; }
.ev-contact-actions { margin-top: 28px; }
@media (max-width: 1100px) { .ev-contact-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; } }

/* Book a call page (2026-10-05) */
.bk-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 20px 32px; }
.bk-head .ev-display { margin: 0; }
.bk-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; }
.bk-frame { margin-top: 32px; padding: clamp(10px, 1.6vw, 18px); border-radius: var(--ev-card-radius); background: var(--ev-card); box-shadow: 0 24px 50px -36px rgba(27, 43, 58, .45); }
.bk-frame iframe { display: block; width: 100%; height: 700px; border: 0; border-radius: 12px; background: #fff; }
.bk-note { margin: 18px 0 0; font-size: .9375rem; line-height: 1.55; color: var(--ev-copy); }
.bk-note a { color: var(--ev-blue); }
.ev-intro.bk-intro-2 { margin-top: 12px; }
.ev-intro strong { color: var(--ev-ink); font-weight: 700; }
@media (max-width: 760px) { .bk-frame iframe { height: 900px; } }

/* Booking page: Open in Google Calendar sits at the top right of the calendar */
.bk-cal-bar { display: flex; justify-content: flex-end; margin-top: 32px; }
.bk-cal-bar + .bk-frame { margin-top: 12px; }

/* Booking page: the button sits in line with the second intro paragraph */
.bk-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px 32px; }
.bk-row .ev-intro { flex: 1 1 520px; }
.bk-row .bk-cal-bar { margin-top: 0; }
.bk-row + .bk-frame { margin-top: 32px; }
