:root {
  --paper: #f6f1e7;
  --paper-bright: #fffdf7;
  --ink: #071a2e;
  --muted: #526273;
  --line: rgba(7, 26, 46, 0.16);
  --teal: #23c7bd;
  --teal-dark: #0e625d;
  --teal-soft: #bff3ee;
  --coral: #ff6b61;
  --coral-dark: #a72d28;
  --coral-soft: #ffe0dc;
  --apricot: #ffc34d;
  --plum: #496078;
  --plum-soft: #dcebff;
  --white: #fff;
  --shadow: 0 24px 80px rgba(45, 53, 49, 0.12);
  --radius-xl: 34px;
  --radius-lg: 24px;
  --radius-md: 16px;
  --header-h: 72px;
  --controls-h: 82px;
}

* { box-sizing: border-box; }
html { color-scheme: light; }
body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  color: var(--ink);
  background:
    radial-gradient(circle at 10% 8%, rgba(243, 164, 111, 0.13), transparent 25rem),
    radial-gradient(circle at 92% 92%, rgba(44, 122, 113, 0.1), transparent 24rem),
    var(--paper);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
}
.brand,
.manifesto,
h1,
h2,
h3 {
  font-family: "Trebuchet MS", "Arial Rounded MT Bold", "Segoe UI", sans-serif;
}
button, input { font: inherit; }
button { color: inherit; }
img { display: block; max-width: 100%; }
button, a, summary { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 200; top: 10px; left: 10px; padding: 10px 16px; color: var(--white); background: var(--ink); border-radius: 999px; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }

.deck-shell { min-height: 100svh; display: grid; grid-template-rows: auto 1fr auto; }
.deck-header {
  min-height: var(--header-h);
  padding: 10px clamp(14px, 3vw, 42px);
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid var(--line);
  background: rgba(247, 242, 232, 0.92);
  backdrop-filter: blur(12px);
}
.brand { display: inline-flex; align-items: center; gap: 9px; color: inherit; text-decoration: none; font-size: 1.35rem; font-weight: 850; letter-spacing: -0.04em; }
.brand-symbol { display: block; width: 38px; height: 38px; flex: 0 0 auto; }
.brand-combo { gap: 12px; }
.brand-lockup { display: block; width: 142px; height: auto; flex: 0 0 auto; }
.brand-wordmark { display: block; width: 138px; height: auto; flex: 0 0 auto; }
.signature-socing-inline { width: auto; height: 1.08em; margin: 0 .08em -.17em 0; vertical-align: baseline; }
.meeting-label { display: none; flex-direction: column; margin-right: auto; padding-left: 14px; border-left: 1px solid var(--line); line-height: 1.25; }
.meeting-label strong { font-size: .78rem; text-transform: uppercase; letter-spacing: .1em; }
.meeting-label span { color: var(--muted); font-size: .78rem; }
.header-actions { margin-left: auto; display: flex; align-items: center; gap: 7px; }
.icon-button, .tool-button, .close-button, .small-button, .nav-button { border: 0; cursor: pointer; }
.icon-button { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--line); background: var(--paper-bright); border-radius: 50%; font-weight: 800; }
.tool-button { min-height: 42px; padding: 8px 13px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--line); background: var(--paper-bright); border-radius: 999px; font-weight: 750; }
.tool-button span { color: var(--coral-dark); font-weight: 900; }
.presenter-trigger { display: none; }

.slide-stage { width: 100%; min-height: 0; overflow: auto; }
.slide {
  width: min(100%, 1480px);
  min-height: calc(100svh - var(--header-h) - var(--controls-h));
  margin: 0 auto;
  padding: clamp(28px, 5vw, 76px) clamp(18px, 6vw, 90px);
  align-content: center;
}
.slide.is-active { display: grid; animation: slide-in .32s ease both; }
.slide[hidden] { display: none !important; }
@keyframes slide-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.eyebrow { margin: 0 0 12px; color: var(--teal-dark); font-size: .78rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
h1, h2, h3, p { text-wrap: pretty; }
h1, h2 { margin: 0; font-weight: 840; letter-spacing: -.055em; line-height: .98; }
h1 { font-size: clamp(2.55rem, 8vw, 6.8rem); }
h2 { font-size: clamp(2.25rem, 6vw, 5.25rem); }
h1 span, h2 span { color: var(--coral-dark); }
h3 { margin: 0; font-size: clamp(1.1rem, 2vw, 1.55rem); line-height: 1.15; letter-spacing: -.025em; }
.lead { max-width: 760px; margin: 22px 0 0; color: var(--muted); font-size: clamp(1.02rem, 1.7vw, 1.35rem); }
.slide-heading { max-width: 1050px; margin-bottom: clamp(28px, 4vw, 50px); }
.slide-heading > p:last-child { max-width: 820px; margin: 20px 0 0; color: var(--muted); font-size: clamp(1rem, 1.5vw, 1.22rem); }
.compact-heading { margin-bottom: clamp(24px, 3vw, 38px); }

.slide-hero { grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); gap: clamp(24px, 5vw, 72px); align-items: center; }
.manifesto { margin: 0 0 14px; color: var(--plum); font-size: clamp(1rem, 2vw, 1.35rem); font-weight: 750; }
.hero-visual { position: relative; margin: 0; }
.hero-visual::before { content: ""; position: absolute; inset: 8% -5% 14% 2%; z-index: -1; background: var(--paper-bright); border: 1px solid var(--line); border-radius: 45% 55% 48% 52%; transform: rotate(-2deg); }
.hero-visual img { width: 100%; max-height: 55vh; object-fit: contain; filter: drop-shadow(0 22px 24px rgba(44, 55, 50, .12)); }
.hero-visual figcaption { max-width: 420px; margin: 8px auto 0; color: var(--muted); text-align: center; font-size: .88rem; }
.promise-row { margin: 24px 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-weight: 800; }
.promise-row i { width: 6px; height: 6px; background: var(--teal); border-radius: 50%; }
.boundary-line { max-width: 780px; margin: 22px 0 0; padding: 12px 16px; border-left: 4px solid var(--teal); color: var(--muted); background: var(--teal-soft); border-radius: 0 12px 12px 0; font-size: .9rem; }
.document-actions { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 9px; }
.document-actions .small-button { text-decoration: none; }

.tension-grid, .boundary-grid, .trust-layout, .community-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(16px, 2.5vw, 30px); }
.paper-card { padding: clamp(22px, 3vw, 36px); border: 1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow); }
.coral-card { background: var(--coral-soft); transform: rotate(-.5deg); }
.teal-card { background: var(--teal-soft); transform: rotate(.5deg); }
.card-number, .status-pill, .mini-label { display: inline-flex; margin-bottom: 16px; padding: 5px 10px; border-radius: 999px; background: rgba(255,255,255,.68); font-size: .74rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.paper-card h3 { font-size: clamp(1.35rem, 2.5vw, 2.15rem); }
.check-list, .boundary-card ul, .community-card ul { margin: 22px 0 0; padding: 0; display: grid; gap: 12px; list-style: none; }
.check-list li, .boundary-card li, .community-card li { position: relative; padding-left: 27px; }
.check-list li::before, .boundary-card li::before, .community-card li::before { content: "✓"; position: absolute; left: 0; color: var(--teal-dark); font-weight: 900; }
.negative-list li::before { content: "·"; color: var(--coral-dark); font-size: 1.5rem; line-height: .65; }
.honesty-strip { margin: 24px 0 0; padding: 14px 18px; border: 1px dashed var(--plum); background: var(--plum-soft); border-radius: var(--radius-md); font-size: .92rem; }

.journey-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.journey-card { position: relative; padding: 26px; border: 1px solid var(--line); background: var(--paper-bright); border-radius: var(--radius-lg); }
.journey-card.featured-card { color: var(--white); background: var(--ink); transform: translateY(-10px); }
.journey-step { color: var(--muted); font-size: .76rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.featured-card .journey-step, .featured-card p { color: rgba(255,255,255,.74); }
.journey-icon { width: 45px; height: 45px; margin: 28px 0 18px; display: grid; place-items: center; color: var(--white); border-radius: 50%; font-weight: 900; }
.coral-dot { background: var(--coral-dark); }.teal-dot { background: var(--teal-dark); }.plum-dot { background: var(--plum); }
.journey-card p { margin: 12px 0 0; color: var(--muted); }
.principle-row { margin-top: 24px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.principle-row p { margin: 0; padding: 14px; display: grid; grid-template-columns: 26px 1fr; gap: 0 8px; background: rgba(255,255,255,.55); border-radius: var(--radius-md); }
.principle-row p > span { grid-row: 1 / 3; color: var(--teal-dark); font-weight: 900; }
.principle-row small { color: var(--muted); }

.boundary-card { padding: clamp(24px, 3vw, 38px); border-radius: var(--radius-lg); }
.yes-card { background: var(--teal-soft); border: 1px solid rgba(23,93,87,.22); }
.no-card { background: var(--paper-bright); border: 2px solid var(--ink); }
.boundary-title { display: flex; align-items: center; gap: 14px; }
.boundary-title > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--white); color: var(--teal-dark); font-size: 1.4rem; font-weight: 900; }
.no-card .boundary-title > span { color: var(--coral-dark); }
.no-card li::before { content: "×"; color: var(--coral-dark); }
.role-line { margin-top: 24px; padding: 16px 20px; display: flex; align-items: center; justify-content: center; gap: 14px; border: 1px solid var(--line); background: var(--paper-bright); border-radius: 999px; font-weight: 750; text-align: center; }
.role-line i { color: var(--coral-dark); font-style: normal; }

.feature-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 14px; align-items: stretch; }
.flow-card { padding: clamp(22px, 2.5vw, 34px); border: 1px solid var(--line); background: var(--paper-bright); border-radius: var(--radius-lg); }
.flow-index { width: 36px; height: 36px; margin-bottom: 22px; display: grid; place-items: center; color: var(--white); background: var(--coral-dark); border-radius: 50%; font-weight: 900; }
.flow-card:nth-of-type(2) .flow-index { background: var(--teal-dark); }
.flow-card:nth-of-type(3) .flow-index { background: var(--plum); }
.flow-card p { margin: 14px 0; color: var(--muted); }
.flow-card small { display: block; padding-top: 12px; border-top: 1px solid var(--line); color: var(--muted); }
.flow-arrow { align-self: center; color: var(--coral-dark); font-size: 1.5rem; }
.alert-line { margin-top: 22px; padding: 14px 18px; display: flex; align-items: center; gap: 14px; border: 1px solid rgba(112,76,99,.35); background: var(--plum-soft); border-radius: var(--radius-md); }
.alert-line > span { width: 34px; height: 34px; flex: 0 0 auto; display: grid; place-items: center; color: var(--white); background: var(--plum); border-radius: 50%; font-weight: 900; }
.alert-line p { margin: 0; }

.trust-card { padding: clamp(24px, 3vw, 38px); border-radius: var(--radius-lg); }
.current-state { background: var(--ink); color: var(--white); }
.current-state .status-pill { color: var(--ink); }
.current-state .check-list li::before { color: var(--apricot); }
.pilot-state { border: 1px solid var(--line); background: var(--paper-bright); }
.pilot-state .status-pill { background: var(--coral-soft); color: var(--coral-dark); }
.number-list { margin: 20px 0 0; padding: 0; display: grid; gap: 9px; list-style: none; }
.number-list li { display: grid; grid-template-columns: 28px 1fr; gap: 10px; align-items: start; }
.number-list li span { width: 25px; height: 25px; display: grid; place-items: center; color: var(--white); background: var(--teal); border-radius: 50%; font-size: .78rem; font-weight: 900; }
.ownership-note { margin: 22px 0 0; padding: 15px 18px; background: var(--teal-soft); border-left: 4px solid var(--teal); border-radius: 0 var(--radius-md) var(--radius-md) 0; }

.community-card { padding: clamp(24px, 3vw, 38px); border-radius: var(--radius-lg); }
.help-side { background: var(--coral-soft); transform: rotate(-.35deg); }
.project-side { background: var(--teal-soft); transform: rotate(.35deg); }
.community-card h3 { font-size: clamp(1.25rem, 2.4vw, 2rem); }
.inclusion-bar { margin-top: 22px; padding: 15px 18px; display: flex; flex-wrap: wrap; align-items: center; gap: 9px; border: 1px solid var(--line); background: var(--paper-bright); border-radius: var(--radius-md); }
.inclusion-bar strong { margin-right: 7px; }
.inclusion-bar span { padding: 5px 9px; background: var(--plum-soft); border-radius: 999px; font-size: .82rem; }

.pilot-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.pilot-sequence, .measure-card { padding: clamp(22px, 2.6vw, 34px); border-radius: var(--radius-lg); }
.pilot-sequence { background: var(--paper-bright); border: 1px solid var(--line); }
.measure-card { color: var(--white); background: var(--ink); }
.pilot-steps { margin-top: 18px; display: grid; gap: 10px; }
.pilot-steps p { margin: 0; display: grid; grid-template-columns: 34px 90px 1fr; gap: 10px; align-items: center; }
.pilot-steps p > span { width: 30px; height: 30px; display: grid; place-items: center; color: var(--white); background: var(--coral-dark); border-radius: 50%; font-weight: 900; }
.pilot-steps small { color: var(--muted); }
.measure-grid { margin-top: 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.measure-grid p { margin: 0; padding: 14px; background: rgba(255,255,255,.09); border-radius: 12px; }
.measure-grid strong, .measure-grid span { display: block; }
.measure-grid span { margin-top: 5px; color: rgba(255,255,255,.7); font-size: .86rem; }
.cost-line { margin-top: 18px; display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); background: var(--teal-soft); border-radius: var(--radius-md); overflow: hidden; }
.cost-line div { padding: 14px 16px; }
.cost-line div + div { border-left: 1px solid rgba(23,93,87,.18); }
.cost-line strong, .cost-line span { display: block; }
.cost-line span { margin-top: 4px; color: var(--muted); font-size: .82rem; }

.slide-close { grid-template-columns: minmax(0, 1fr) minmax(220px, .28fr); gap: 50px; align-items: center; }
.ask-grid { margin-top: 30px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ask-grid article { padding: 18px; border: 1px solid var(--line); background: var(--paper-bright); border-radius: var(--radius-md); }
.ask-grid article > span { color: var(--coral-dark); font-size: .74rem; font-weight: 900; letter-spacing: .12em; }
.ask-grid h3 { margin-top: 8px; }
.ask-grid p { margin: 8px 0 0; color: var(--muted); font-size: .9rem; }
blockquote { margin: 24px 0 0; padding: 17px 20px; border-left: 5px solid var(--coral); background: var(--coral-soft); border-radius: 0 var(--radius-md) var(--radius-md) 0; font-size: clamp(1rem, 1.6vw, 1.25rem); font-weight: 720; }
.close-mark { aspect-ratio: 1; display: grid; place-items: center; align-content: center; text-align: center; background: var(--ink); color: var(--white); border-radius: 50% 44% 52% 46%; transform: rotate(2deg); }
.close-brand { display: inline-flex; align-items: center; gap: 14px; }
.close-brand .brand-symbol { width: 54px; height: 54px; }
.close-brand .brand-wordmark { width: min(68%, 210px); }
.close-mark small { max-width: 180px; color: rgba(255,255,255,.7); }

.deck-controls { min-height: var(--controls-h); padding: 10px clamp(12px, 3vw, 38px); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; border-top: 1px solid var(--line); background: rgba(255,250,242,.94); backdrop-filter: blur(12px); }
.nav-button { min-height: 46px; padding: 10px 15px; display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--line); background: var(--white); border-radius: 999px; font-weight: 780; }
.nav-button:disabled { opacity: .42; cursor: not-allowed; }
.primary-nav { color: var(--white); background: var(--ink); }
.progress-group { min-width: 0; max-width: 760px; width: 100%; justify-self: center; }
.slide-dots { display: none; justify-content: center; gap: 7px; }
.slide-dot { width: 18px; height: 8px; padding: 0; border: 0; background: rgba(24,35,33,.2); border-radius: 999px; cursor: pointer; }
.slide-dot[aria-current="step"] { width: 36px; background: var(--coral); }
.progress-meta { margin-bottom: 5px; display: grid; grid-template-columns: auto 1fr auto; gap: 10px; color: var(--muted); font-size: .76rem; }
#slideCounter { font-weight: 850; color: var(--ink); }
#slideTitle { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: center; }
.mini-timer { font-variant-numeric: tabular-nums; }
.progress-track { height: 6px; background: rgba(24,35,33,.12); border-radius: 99px; overflow: hidden; }
.progress-track span { display: block; width: 11.111%; height: 100%; background: var(--coral); border-radius: inherit; transition: width .25s ease; }

.modal { width: min(calc(100% - 22px), 980px); max-height: min(92svh, 900px); padding: 0; border: 0; background: transparent; overflow: visible; }
.modal::backdrop { background: rgba(17, 27, 25, .72); backdrop-filter: blur(5px); }
.modal-shell { max-height: 92svh; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.35); background: var(--paper); border-radius: var(--radius-xl); box-shadow: 0 30px 100px rgba(0,0,0,.3); overflow: hidden; }
.modal-header { padding: 22px clamp(20px, 4vw, 38px); display: flex; align-items: center; gap: 20px; border-bottom: 1px solid var(--line); }
.modal-header > div { flex: 1; }
.modal-header .eyebrow { margin-bottom: 5px; }
.modal-header h2 { font-size: clamp(1.7rem, 4vw, 3rem); }
.close-button { width: 44px; height: 44px; flex: 0 0 auto; background: var(--paper-bright); border: 1px solid var(--line); border-radius: 50%; font-size: 1.55rem; }
.presenter-time { padding: 20px clamp(20px, 4vw, 38px); display: grid; grid-template-columns: 1fr 1fr auto; gap: 14px; align-items: center; background: var(--ink); color: var(--white); }
.presenter-time div > span, .presenter-time div > strong { display: block; }
.presenter-time div > span { color: rgba(255,255,255,.65); font-size: .78rem; text-transform: uppercase; letter-spacing: .09em; }
.presenter-time div > strong { margin-top: 3px; font-size: 1.6rem; font-variant-numeric: tabular-nums; }
.timer-buttons { display: flex; gap: 7px; }
.small-button { min-height: 40px; padding: 8px 14px; color: var(--white); background: var(--teal-dark); border-radius: 999px; font-weight: 750; }
.ghost-button { color: inherit; background: transparent; border: 1px solid currentColor; }
.presenter-notes { padding: 24px clamp(20px, 4vw, 38px); display: grid; gap: 12px; overflow: auto; }
.presenter-notes article { padding: 17px; background: var(--paper-bright); border: 1px solid var(--line); border-radius: var(--radius-md); }
.presenter-notes article > span { color: var(--teal-dark); font-size: .75rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.presenter-notes p { margin: 7px 0 0; font-size: 1.05rem; }
.speaker-coach { background: var(--coral-soft) !important; }
.modal-footer { padding: 14px clamp(20px, 4vw, 38px); display: flex; justify-content: space-between; align-items: center; gap: 16px; border-top: 1px solid var(--line); color: var(--muted); font-size: .8rem; }

.faq-shell { height: min(92svh, 900px); }
.search-row { padding: 18px clamp(20px, 4vw, 38px) 12px; }
.search-row label { display: block; margin-bottom: 7px; font-size: .78rem; font-weight: 800; }
.search-box { display: flex; align-items: center; gap: 9px; padding: 0 14px; border: 2px solid var(--ink); background: var(--white); border-radius: 999px; }
.search-box input { width: 100%; padding: 12px 0; border: 0; outline: 0; background: transparent; }
.search-row > p { margin: 7px 4px 0; color: var(--muted); font-size: .78rem; }
.faq-grid { padding: 8px clamp(20px, 4vw, 38px) 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; overflow-y: auto; }
.faq-card { border: 1px solid var(--line); background: var(--paper-bright); border-radius: 14px; }
.faq-card[hidden] { display: none; }
.faq-card summary { padding: 15px 42px 15px 16px; position: relative; cursor: pointer; font-weight: 780; list-style: none; }
.faq-card summary::-webkit-details-marker { display: none; }
.faq-card summary::after { content: "+"; position: absolute; right: 15px; top: 12px; color: var(--coral-dark); font-size: 1.3rem; }
.faq-card[open] summary::after { content: "−"; }
.faq-card p { margin: 0; padding: 0 16px 16px; color: var(--muted); }
.faq-card[open] { border-color: var(--teal); box-shadow: 0 10px 30px rgba(44,122,113,.1); }
.no-results { margin: 30px; text-align: center; }
.noscript-note { position: fixed; z-index: 300; inset: auto 10px 10px; margin: 0; padding: 14px; color: var(--white); background: var(--coral-dark); border-radius: 12px; }

body[data-large-text="true"] { font-size: 19px; }
body[data-large-text="true"] .slide { padding-top: 30px; padding-bottom: 30px; }
body[data-contrast="high"] { --paper: #fff; --paper-bright: #fff; --ink: #000; --muted: #202020; --line: rgba(0,0,0,.45); --teal: #005c54; --teal-dark: #003f39; --teal-soft: #d9fff8; --coral: #c83218; --coral-dark: #8e1807; --coral-soft: #ffe1d8; --plum: #532543; --plum-soft: #f8dff1; background: #fff; }

@media (min-width: 740px) {
  .meeting-label, .presenter-trigger, .slide-dots { display: flex; }
  .progress-meta { margin-top: 5px; }
}

@media (max-width: 900px) {
  :root { --header-h: 64px; --controls-h: 70px; }
  .tool-button { width: 42px; padding: 0; justify-content: center; }
  .tool-button:not(.presenter-trigger) { font-size: 0; }
  .tool-button span { font-size: 1rem; }
  .slide { align-content: start; }
  .slide-hero, .slide-close { grid-template-columns: 1fr; }
  .hero-visual { order: -1; max-width: 460px; margin: 0 auto; }
  .hero-visual::before { right: 0; }
  .hero-visual img { max-height: 31vh; }
  .close-mark { display: none; }
  .feature-flow { grid-template-columns: 1fr; }
  .flow-arrow { justify-self: center; transform: rotate(90deg); }
  .cost-line { grid-template-columns: 1fr; }
  .cost-line div + div { border-left: 0; border-top: 1px solid rgba(23,93,87,.18); }
}

@media (max-width: 680px) {
  .deck-header { position: sticky; top: 0; z-index: 20; }
  .brand { font-size: 1.12rem; }
  .brand-symbol { width: 34px; height: 34px; }
  .brand-lockup { width: 118px; }
  .brand-wordmark { width: 116px; }
  .icon-button { width: 38px; height: 38px; }
  .presenter-trigger { display: none; }
  .slide { padding: 26px 17px 34px; }
  h1 { font-size: clamp(2.25rem, 13vw, 4.2rem); }
  h2 { font-size: clamp(2rem, 11vw, 3.5rem); }
  .tension-grid, .boundary-grid, .trust-layout, .community-grid, .journey-grid, .pilot-layout, .ask-grid, .principle-row, .faq-grid { grid-template-columns: 1fr; }
  .journey-card.featured-card { transform: none; }
  .role-line { border-radius: var(--radius-md); flex-direction: column; }
  .role-line i { transform: rotate(90deg); }
  .pilot-steps p { grid-template-columns: 34px 1fr; }
  .pilot-steps small { grid-column: 2; }
  .measure-grid { grid-template-columns: 1fr; }
  .deck-controls { position: sticky; bottom: 0; z-index: 20; padding: 8px 10px; }
  .nav-button { width: 46px; height: 46px; padding: 0; justify-content: center; }
  .nav-word { display: none; }
  .presenter-time { grid-template-columns: 1fr 1fr; }
  .timer-buttons { grid-column: 1 / -1; }
  .modal-footer { align-items: stretch; flex-direction: column; }
}

@media (max-height: 720px) and (min-width: 901px) {
  :root { --header-h: 60px; --controls-h: 66px; }
  .deck-header { min-height: var(--header-h); }
  .slide { padding-top: 24px; padding-bottom: 24px; }
  .slide-heading { margin-bottom: 20px; }
  h1 { font-size: clamp(2.7rem, 6.6vw, 5rem); }
  h2 { font-size: clamp(2.25rem, 4.8vw, 4rem); }
  .hero-visual img { max-height: 45vh; }
}

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

@media print {
  @page { size: landscape; margin: 8mm; }
  body { background: #fff; color: #000; }
  .deck-shell { display: block; }
  .deck-header, .deck-controls, .modal, .skip-link, .announcer { display: none !important; }
  .slide-stage { overflow: visible; }
  .slide, .slide[hidden] { display: grid !important; min-height: 180mm; break-after: page; page-break-after: always; padding: 12mm; animation: none; }
  .slide:last-child { break-after: auto; page-break-after: auto; }
  .paper-card, .journey-card, .boundary-card, .trust-card, .community-card, .flow-card, .pilot-sequence, .measure-card, .ask-grid article { box-shadow: none; break-inside: avoid; }
}
