:root {
    --ink: #171717;
    --paper: #ffffff;
    --muted: #686868;
    --line: #dddddd;
    --orange: #ff4d00;
    --teal: #087c69;
    --blue: #1754b9;
    --dark: #151515;
    --light-ink: #f7f7f5;
    font-family: "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
    color: var(--ink);
    background: var(--paper);
    font-synthesis: none;
}

* { box-sizing: border-box; letter-spacing: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 0; }
body { margin: 0; font-size: 18px; line-height: 1.5; }
button, input { font: inherit; }
button, a, input { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
a { color: inherit; }
button:disabled { cursor: default; opacity: .28; }
button:focus-visible, a:focus-visible, input:focus-visible, summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 5px; }
h1, h2, h3, p, blockquote, dl, dd { margin: 0; }
ul, ol { padding: 0; margin: 0; }
img, video { display: block; max-width: 100%; }
svg { width: 22px; height: 22px; flex: 0 0 auto; stroke-width: 1.7; }
button { color: inherit; }
.accent { color: var(--orange); }
.teal-text { color: var(--teal); }
.dark { background: var(--dark); color: var(--light-ink); }
.orange { background: var(--orange); color: var(--ink); }
.slide { min-height: 100vh; min-height: 100svh; padding: 112px 56px 88px; display: flex; align-items: center; position: relative; isolation: isolate; }
.slide-inner { width: 100%; max-width: 1240px; margin: 0 auto; min-width: 0; }
.slide h2, .appendix h2 { font-size: 46px; line-height: 1.13; font-weight: 650; margin-bottom: 32px; text-wrap: balance; }
.slide h3 { font-size: 24px; line-height: 1.25; font-weight: 650; }
.eyebrow { color: var(--muted); font-size: 14px; margin-bottom: 14px; }
.dark .eyebrow { color: #a5a5a5; }
.orange .eyebrow { color: #28221f; }
.small-label { display: block; font-size: 13px; line-height: 1.45; color: var(--muted); margin-bottom: 12px; }
.large-copy { font-size: 25px; line-height: 1.5; }
.quiet-note { font-size: 14px; color: var(--muted); line-height: 1.5; }
.bottom-note { border-top: 1px solid var(--line); padding-top: 20px; margin-top: 32px; font-size: 16px; color: var(--muted); }

.deck-header { height: 76px; display: flex; align-items: center; gap: 28px; padding: 0 56px; position: fixed; inset: 0 0 auto; z-index: 20; background: var(--paper); border-bottom: 1px solid rgb(0 0 0 / 8%); transition: color .18s, background .18s; }
.brand { display: inline-flex; gap: 12px; align-items: center; font-size: 26px; font-weight: 700; text-decoration: none; line-height: 1; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; color: var(--paper); background: var(--orange); border-radius: 7px; }
.brand-mark svg { width: 23px; height: 23px; }
.header-descriptor { padding-left: 28px; border-left: 1px solid var(--line); color: var(--muted); font-size: 14px; }
.header-tools { display: flex; gap: 4px; margin-left: auto; }
.icon-button { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 0; border-radius: 5px; background: transparent; padding: 0; color: inherit; flex: 0 0 auto; }
.icon-button:hover:not(:disabled) { background: rgb(0 0 0 / 6%); }
body.theme-dark .deck-header { color: var(--light-ink); background: var(--dark); border-bottom-color: #333; }
body.theme-dark .header-descriptor { border-left-color: #454545; color: #aaa; }
body.theme-dark .icon-button:hover:not(:disabled) { background: rgb(255 255 255 / 10%); }
body.theme-orange .deck-header { background: var(--orange); color: var(--ink); border-bottom-color: rgb(0 0 0 / 18%); }
body.theme-orange .brand-mark { background: var(--ink); }
body.theme-orange .header-descriptor { border-color: rgb(0 0 0 / 28%); color: var(--ink); }

.cover h1 { font-size: 94px; font-weight: 650; line-height: 1.02; margin-bottom: 24px; }
.title-line { white-space: nowrap; }
.cover-topline { display: flex; gap: 28px; color: #b7b7b7; font-size: 15px; margin-bottom: 22px; }
.cover-lead { font-size: 23px; line-height: 1.45; max-width: 685px; color: #d7d7d7; }
.cover-results { display: grid; grid-template-columns: 1fr 1.25fr 1.25fr; gap: 28px; margin-top: 36px; padding-top: 24px; border-top: 1px solid #414141; }
.cover-results > * { text-decoration: none; min-width: 0; }
.cover-results strong { display: block; font-size: 44px; font-weight: 600; line-height: 1.1; margin-bottom: 8px; }
.cover-results span { font-size: 14px; color: #bdbdbd; display: flex; gap: 10px; align-items: center; }
.cover-results svg { width: 16px; height: 16px; color: var(--orange); }
.cover-results a:hover span { color: white; }
.cover-clientline { display: flex; gap: 24px; border-top: 1px solid #414141; margin-top: 24px; padding-top: 20px; font-size: 13px; }
.cover-clientline > span { color: #888; flex-shrink: 0; }
.cover-clientline > div { display: flex; flex-wrap: wrap; gap: 10px 28px; color: #c7c7c7; }
.cover-clientline b { font-weight: 600; }

.audience-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 72px; align-items: start; }
.audience-layout .large-copy { max-width: 460px; }
.fit-list > div { display: flex; gap: 24px; border-top: 1px solid var(--line); padding: 15px 0; }
.fit-list > div:first-child { padding-top: 0; border-top: 0; }
.fit-list > div > span { color: var(--orange); font-size: 14px; padding-top: 3px; }
.fit-list p { font-size: 17px; color: var(--muted); }
.fit-list strong { display: block; font-weight: 600; color: var(--ink); }
.enterprise-line { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--ink); display: grid; grid-template-columns: 1fr 1.2fr; gap: 32px; align-items: start; }
.enterprise-line .small-label { color: var(--ink); font-weight: 650; margin-bottom: 5px; }
.enterprise-line p { font-size: 14px; color: var(--muted); }
.enterprise-line ul { list-style: none; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 24px; font-size: 16px; }

.case-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 16px; }
.case-heading .eyebrow { margin-bottom: 0; }
.client-wordmark { font-size: 28px; font-weight: 700; line-height: 1.1; }
.case-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.result-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-content: start; }
.result-major strong { font-size: 112px; font-weight: 600; line-height: 1; display: block; color: var(--orange); }
.result-major:nth-child(2) strong { color: var(--ink); }
.result-major span { display: block; margin-top: 16px; font-size: 18px; line-height: 1.4; }
.result-context { grid-column: 1 / -1; padding-top: 22px; border-top: 1px solid var(--line); margin-top: 8px; font-size: 14px; line-height: 1.6; color: var(--muted); }
.case-narrative > p:not(.small-label) { margin-top: 18px; font-size: 17px; color: var(--muted); }
.case-narrative h3 { font-size: 28px; }
.case-facts { margin-top: 20px; font-size: 15px; }
.case-facts > div { display: grid; grid-template-columns: 85px 1fr; gap: 12px; padding: 10px 0; border-top: 1px solid var(--line); }
.case-facts dt { color: var(--muted); }

.process h2 { max-width: 1040px; }
.process-line { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); list-style: none; gap: 28px; margin-top: 42px; }
.process-line li { padding-top: 18px; border-top: 1px solid #555; }
.step-number { display: block; color: var(--orange); font-size: 42px; line-height: 1; margin-bottom: 22px; font-weight: 600; }
.process-line h3 { margin-bottom: 14px; font-size: 23px; }
.process-line p { color: #c3c3c3; font-size: 16px; min-height: 96px; }
.process-line small { color: #888; font-size: 13px; display: block; padding-top: 16px; border-top: 1px solid #333; }
.process-bottom { margin-top: 36px; font-size: 17px; color: #bdbdbd; }

.media-layout { display: grid; grid-template-columns: 1.45fr 1fr; gap: 56px; align-items: start; }
.media-stage { min-width: 0; }
.media-tabs { display: flex; border-bottom: 1px solid var(--line); margin-bottom: 14px; gap: 24px; }
.media-tabs button { font-size: 14px; padding: 0 0 12px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--muted); min-height: 40px; text-align: left; }
.media-tabs button[aria-selected="true"] { border-bottom-color: var(--orange); color: var(--ink); }
.media-tabs button { flex: 1 1 0; min-width: 0; }
.message-video-teaser { display: grid; grid-template-columns: 224px minmax(0, 1fr); gap: 24px; align-items: center; width: 100%; padding: 0; border: 0; background: transparent; text-align: left; }
.message-video-image { display: block; position: relative; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; }
.message-video-image img { width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: contain; }
.message-video-copy { display: block; min-width: 0; }
.message-video-title { display: block; font-size: 22px; line-height: 1.25; font-weight: 650; }
.message-video-description { display: block; margin-top: 6px; font-size: 14px; color: var(--muted); }
.message-video-source { display: block; margin-top: 8px; font-size: 12px; color: var(--muted); }
.message-video-action { display: flex; align-items: center; gap: 10px; margin-top: 10px; font-size: 14px; font-weight: 600; color: var(--orange); }
.message-video-action svg { width: 18px; height: 18px; }
.message-video-teaser:hover .message-video-title { color: var(--orange); }
@media (max-width: 600px) {
    .message-video-teaser { grid-template-columns: 1fr; gap: 16px; }
    .message-video-title { font-size: 20px; }
}
.evidence-action { margin-top: 16px; }
.clip-source { display: block; font-size: 12px; color: var(--muted); }
.training-evidence { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 20px; margin-top: 16px; border-top: 1px solid var(--line); padding-top: 8px; }
.training-evidence > span { color: var(--muted); font-size: 12px; }
.media-stage video { width: 100%; height: 320px; object-fit: contain; background: #f3f3f3; border: 1px solid var(--line); border-radius: 5px; }
.media-caption { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-top: 10px; }
.media-caption p { font-size: 13px; color: var(--muted); }
.media-caption .icon-button { width: 36px; height: 36px; }
.media-commentary { padding-top: 4px; }
.media-commentary h3 { font-size: 29px; margin-bottom: 20px; }
.plain-list { list-style: none; }
.plain-list li { padding: 11px 0 11px 21px; border-top: 1px solid var(--line); position: relative; font-size: 17px; }
.plain-list li::before { content: ''; width: 5px; height: 5px; background: var(--orange); position: absolute; left: 0; top: 22px; }
.media-commentary .quiet-note { margin-top: 20px; }

.message-layout { display: grid; grid-template-columns: 1.3fr 1fr; gap: 72px; align-items: start; }
.message-example blockquote { font-size: 23px; line-height: 1.4; font-weight: 500; border-left: 3px solid var(--orange); padding-left: 24px; }
.message-example > p { margin: 16px 0 0 27px; color: var(--muted); font-size: 15px; }
.message-logic { list-style: none; }
.message-logic li { display: flex; gap: 22px; padding: 10px 0; }
.message-logic li:first-child { padding-top: 0; }
.message-logic li > span { font-size: 14px; color: var(--orange); padding-top: 4px; }
.message-logic strong { font-size: 18px; font-weight: 600; }
.message-logic p { font-size: 15px; color: var(--muted); margin-top: 3px; }
.chain-evidence { margin-top: 28px; border-top: 1px solid var(--line); padding-top: 12px; }
.evidence-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 10px; }
.evidence-heading p { font-size: 14px; }
.text-action { border: 0; background: transparent; display: inline-flex; gap: 9px; align-items: center; padding: 8px 0; font-size: 14px; font-weight: 600; text-align: left; }
.text-action svg { width: 17px; height: 17px; }
.text-action:hover { color: var(--orange); }
.image-button { padding: 0; border: 1px solid var(--line); border-radius: 5px; background: #fafafa; width: 100%; position: relative; }
.image-button img { width: 100%; height: 140px; object-fit: contain; }
.image-button > span { position: absolute; right: 12px; bottom: 12px; width: 36px; height: 36px; display: grid; place-items: center; background: white; border: 1px solid var(--line); border-radius: 5px; }

.criteria-layout { display: grid; grid-template-columns: 1.2fr 1fr; gap: 88px; align-items: center; }
.criteria-list > div { display: flex; gap: 24px; padding: 20px 0; border-top: 1px solid var(--line); }
.criteria-list > div:first-child { border-top: 0; padding-top: 0; }
.criteria-list > div > svg { color: var(--orange); margin-top: 3px; width: 26px; height: 26px; }
.criteria-list h3 { font-size: 22px; margin-bottom: 8px; }
.criteria-list p { color: var(--muted); font-size: 17px; }
.conversion-callout { border-left: 1px solid var(--line); padding-left: 56px; }
.conversion-callout > strong { font-size: 100px; line-height: 1; display: block; color: var(--orange); font-weight: 600; margin: 10px 0 18px; white-space: nowrap; }
.conversion-callout > strong > span { font-size: 58px; }
.conversion-callout > p { font-size: 19px; }
.conversion-rule { width: 56px; height: 3px; background: var(--orange); margin: 22px 0; }
.conversion-callout > small { display: block; font-size: 14px; line-height: 1.5; color: var(--muted); }

.control-layout { display: grid; grid-template-columns: 1.25fr 1fr; gap: 56px; align-items: start; }
.featured-evidence { min-width: 0; }
.featured-evidence h3 { margin-bottom: 10px; }
.featured-evidence > p { font-size: 16px; line-height: 1.45; margin-bottom: 16px; color: var(--muted); }
.featured-video { display: block; padding: 0; width: 100%; text-align: left; background: white; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; }
.featured-video-image { display: block; position: relative; background: #f3f3f3; }
.featured-video-image img { width: 100%; height: 200px; object-fit: contain; }
.featured-play { position: absolute; inset: 0; margin: auto; width: 56px; height: 56px; border-radius: 50%; background: var(--orange); color: white; display: grid; place-items: center; box-shadow: 0 2px 12px rgb(0 0 0 / 18%); }
.featured-play svg { width: 25px; height: 25px; fill: currentColor; }
.featured-video-label { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border-top: 1px solid var(--line); font-size: 15px; }
.featured-video-label > span { display: flex; align-items: center; gap: 12px; font-size: 13px; white-space: nowrap; color: var(--muted); }
.featured-video-label svg { width: 18px; height: 18px; color: var(--orange); }
.featured-video:hover { border-color: var(--orange); }
.featured-evidence .clip-source { margin-top: 9px; }
@media (min-width: 901px) and (max-height: 820px) {
    .featured-video-image img { height: 174px; }
    .featured-evidence > p { font-size: 14px; margin-bottom: 12px; }
    .featured-video-label { padding: 10px 14px; }
}
@media (max-width: 900px) {
    .featured-video-image img { height: auto; aspect-ratio: 8 / 5; }
}
.report-structure { min-width: 0; }
.report-head, .report-row { display: grid; grid-template-columns: .65fr 1.6fr 1.15fr; gap: 22px; }
.report-head { font-size: 13px; color: var(--muted); padding: 0 0 16px; border-bottom: 2px solid var(--ink); }
.report-row { align-items: start; padding: 23px 0; border-bottom: 1px solid var(--line); font-size: 16px; }
.report-row strong { font-weight: 650; }
.report-row > span { color: var(--muted); font-size: 14px; }
.control-aside { padding: 24px 0 0 28px; border-left: 3px solid var(--blue); }
.control-aside > svg { color: var(--blue); width: 32px; height: 32px; margin-bottom: 24px; }
.control-aside h3 { font-size: 27px; margin-bottom: 20px; }
.control-aside > p { font-size: 17px; }
.control-aside > p + p { margin-top: 20px; font-size: 14px; }

.training-case-layout { display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start; }
.training-big > strong { font-size: 150px; line-height: .95; color: var(--teal); font-weight: 600; display: block; }
.training-big > strong > span { font-size: 92px; }
.training-big > p { font-size: 21px; margin-top: 18px; }
.training-story .large-copy { font-size: 23px; }
.training-secondary { display: flex; align-items: center; gap: 24px; margin-top: 25px; border-top: 1px solid var(--line); padding-top: 18px; }
.training-secondary strong { color: var(--teal); font-size: 64px; line-height: 1; font-weight: 600; }
.training-secondary p { font-size: 16px; color: var(--muted); }
.handover-line { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; list-style: none; margin-top: 36px; }
.handover-line li { border-top: 1px solid var(--teal); padding-top: 14px; }
.handover-line span { font-size: 13px; color: var(--teal); display: block; margin-bottom: 10px; }
.handover-line strong { font-size: 19px; font-weight: 650; display: block; }
.handover-line p { font-size: 14px; color: var(--muted); margin-top: 7px; }

.offer-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; }
.offer + .offer { padding-left: 56px; border-left: 1px solid #4d4d4d; }
.offer-kicker { display: block; font-size: 14px; color: #999; margin-bottom: 12px; }
.offer h3 { font-size: 29px; margin-bottom: 20px; }
.offer-price { font-size: 58px; line-height: 1; font-weight: 600; white-space: nowrap; color: var(--orange); min-height: 68px; }
.offer-price > span, .training-prices strong > span { font-size: .65em; }
.offer-outcome { font-size: 18px; margin-top: 12px; }
.offer ul { list-style: none; margin-top: 24px; }
.offer li { border-top: 1px solid #333; padding: 11px 0; color: #c3c3c3; font-size: 16px; }
.offer-fit { color: #8c8c8c; font-size: 14px; margin-top: 14px; }
.formats-note { font-size: 14px; color: #aaa; margin-top: 16px; padding-top: 12px; border-top: 1px solid #444; }
.training-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; min-height: 68px; }
.training-prices p > strong { display: block; color: var(--orange); font-size: 34px; line-height: 1.1; font-weight: 600; white-space: nowrap; }
.training-prices p > span { display: block; color: #a6a6a6; font-size: 14px; margin-top: 8px; }

.trial-layout { display: grid; grid-template-columns: 1.2fr 1fr; gap: 80px; }
.trial-facts { display: grid; grid-template-columns: 1.35fr 1fr; gap: 24px; margin-bottom: 24px; }
.trial-facts strong { font-size: 48px; font-weight: 600; line-height: 1; white-space: nowrap; }
.trial-facts > div:first-child strong { color: var(--orange); }
.trial-facts strong > span { font-size: 34px; }
.trial-facts p { font-size: 14px; color: var(--muted); margin-top: 9px; }
.trial-scope .plain-list li { font-size: 16px; padding-top: 9px; padding-bottom: 9px; }
.trial-scope .plain-list li::before { top: 20px; }
.trial-distinction { font-size: 14px; line-height: 1.5; margin-top: 20px; color: var(--muted); }
.trial-distinction strong { color: var(--ink); font-weight: 600; }
.trial-deliverables { border-left: 1px solid var(--line); padding-left: 40px; }
.trial-deliverables h3 { margin-bottom: 20px; }
.trial-deliverables dl > div + div { margin-top: 18px; }
.trial-deliverables dt { font-size: 17px; font-weight: 650; margin-bottom: 4px; }
.trial-deliverables dd { font-size: 15px; color: var(--muted); }
.trial-actions { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; margin-top: 24px; }
.trial-contact { display: inline-flex; gap: 12px; align-items: center; color: var(--orange); font-size: 17px; font-weight: 650; text-underline-offset: 5px; }
.trial-actions .text-action { font-size: 14px; }
.trial-terms { font-size: 13px; color: var(--muted); border-top: 1px solid var(--line); margin-top: 24px; padding-top: 14px; }
.trial-scenario { border-left: 1px solid var(--line); padding-left: 48px; }
.scenario-result { display: flex; align-items: baseline; gap: 16px; margin: 6px 0 20px; }
.scenario-result strong { font-size: 86px; line-height: 1; font-weight: 600; font-variant-numeric: tabular-nums; }
.scenario-result > span { font-size: 20px; }
.trial-scenario label { display: flex; gap: 20px; justify-content: space-between; align-items: center; font-size: 15px; }
.trial-scenario label > strong { font-size: 18px; white-space: nowrap; }
.trial-scenario input[type="range"] { width: 100%; margin: 8px 0; height: 36px; accent-color: var(--orange); display: block; cursor: pointer; }
.range-labels { display: flex; justify-content: space-between; font-size: 12px; color: var(--muted); }
#trial-assumption { font-size: 13px; color: var(--muted); margin-top: 18px; }
.scenario-bottom { padding-top: 18px; border-top: 1px solid var(--line); font-size: 15px; margin-top: 20px; }

.closing-layout { display: grid; grid-template-columns: 1.6fr .7fr; gap: 80px; align-items: center; }
.closing h2 { font-size: 68px; line-height: 1.05; margin-bottom: 24px; }
.closing h2 > span { color: white; }
.closing-lead { max-width: 650px; font-size: 22px; line-height: 1.45; margin-bottom: 30px; }
.contact-link { display: inline-flex; gap: 18px; align-items: center; font-size: 30px; font-weight: 650; text-decoration: none; border-bottom: 2px solid var(--ink); padding-bottom: 6px; }
.contact-link svg { width: 30px; height: 30px; }
.contact-link:hover { color: white; border-bottom-color: white; }
.contact-email { display: block; margin-top: 20px; width: fit-content; text-decoration: none; font-size: 17px; }
.contact-email:hover { text-decoration: underline; }
.closing-qr { justify-self: end; }
.closing-qr img { width: 218px; height: 218px; padding: 14px; background: white; }
.closing-qr p { font-size: 15px; margin-top: 18px; }
.closing-bottom { margin-top: 42px; padding-top: 22px; border-top: 1px solid rgb(0 0 0 / 35%); display: flex; gap: 32px; justify-content: space-between; align-items: center; }
.closing-bottom p { font-size: 15px; }
.closing-offer { min-width: 0; }
.closing-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 24px; margin-bottom: 8px; }
.closing-price > strong { font-size: 44px; line-height: 1.1; font-weight: 650; white-space: nowrap; }
.closing-price > span { font-size: 19px; }
.closing-bottom a { display: flex; gap: 14px; align-items: center; font-size: 16px; text-decoration: none; }

.appendix { padding: 112px 56px; background: #f6f7f7; }
.appendix-inner { max-width: 1120px; margin: auto; }
.appendix-lead { max-width: 710px; font-size: 18px; color: var(--muted); margin-bottom: 36px; }
.case-accordion { border-top: 1px solid var(--ink); }
.case-accordion details { border-bottom: 1px solid #ccc; }
.case-accordion summary { display: grid; grid-template-columns: 1.2fr 1fr 24px; gap: 24px; align-items: center; padding: 24px 0; cursor: pointer; list-style: none; }
.case-accordion summary::-webkit-details-marker { display: none; }
.case-accordion summary strong { font-size: 23px; font-weight: 600; display: block; }
.case-accordion summary small { display: block; color: var(--muted); font-size: 14px; margin-top: 4px; }
.case-accordion summary > span:nth-child(2) { font-size: 18px; }
.case-accordion summary:hover { color: var(--orange); }
.case-accordion details[open] summary svg { transform: rotate(45deg); }
.case-detail { max-width: 780px; padding: 0 0 28px; font-size: 17px; line-height: 1.6; }
.case-detail p + p { margin-top: 12px; color: var(--muted); font-size: 15px; }
.related-case { display: inline-block; margin-left: 16px; color: var(--teal); text-underline-offset: 4px; }
.learning-detail h3 { font-size: 23px; line-height: 1.3; margin: 0 0 16px; }
.learning-detail h4 { font-size: 16px; margin: 24px 0 12px; }
.learning-detail ul { padding-left: 20px; }
.learning-detail li + li { margin-top: 12px; }
.learning-detail .learning-outcome { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--ink); font-size: inherit; }
#case-alter { scroll-margin-top: 92px; }
.appendix-contact { display: inline-flex; gap: 18px; align-items: center; text-decoration: none; color: var(--orange); margin-top: 36px; font-size: 22px; font-weight: 600; }

.slide-nav { position: fixed; bottom: max(18px, env(safe-area-inset-bottom)); right: 32px; z-index: 22; display: flex; align-items: center; height: 48px; padding: 2px 4px; background: white; border: 1px solid #d9d9d9; border-radius: 6px; color: var(--ink); box-shadow: 0 2px 12px rgb(0 0 0 / 5%); }
.slide-counter { display: flex; gap: 8px; align-items: center; justify-content: center; background: transparent; border: 0; height: 42px; min-width: 78px; font-size: 13px; font-variant-numeric: tabular-nums; }
.counter-divider, .slide-counter > span:last-child { color: #999; }
body.theme-dark .slide-nav { background: #222; color: white; border-color: #444; }
body.theme-orange .slide-nav { background: var(--ink); color: white; border-color: var(--ink); }
body.in-appendix .slide-nav { display: none; }

dialog { color: var(--ink); background: white; padding: 28px; border: 1px solid var(--line); border-radius: 8px; max-height: calc(100dvh - 40px); }
dialog::backdrop { background: rgb(0 0 0 / 65%); }
.contents-dialog { width: min(700px, calc(100% - 32px)); }
.dialog-heading { display: flex; gap: 24px; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.dialog-heading h2 { font-size: 24px; line-height: 1.3; font-weight: 650; }
#contents-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; list-style: none; }
#contents-list a { display: flex; gap: 16px; align-items: baseline; font-size: 15px; padding: 14px 0; border-top: 1px solid var(--line); text-decoration: none; }
#contents-list a > span { color: var(--orange); font-size: 12px; }
#contents-list a:hover { color: var(--orange); }
.contents-appendix { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-top: 20px; margin-top: 12px; border-top: 1px solid var(--ink); font-size: 15px; text-decoration: none; }
.media-dialog { width: min(1420px, calc(100% - 24px)); }
#media-content video { width: 100%; max-height: calc(100dvh - 150px); background: #111; object-fit: contain; }
.media-dialog.portrait-dialog { width: min(680px, calc(100% - 24px)); }
.trial-dialog { width: min(560px, calc(100% - 24px)); }
.trial-dialog .trial-scenario { border: 0; padding: 0; }
#media-content .portrait-video { height: auto; aspect-ratio: 4 / 5; margin: auto; background: white; }
.image-scroll { overflow: auto; max-height: calc(100dvh - 150px); border: 1px solid var(--line); }
.image-scroll img { width: auto; max-width: none; min-width: 900px; }
.image-scroll.proof-scroll img { width: auto; min-width: 0; max-width: 100%; margin: auto; }
body.dialog-open { overflow: hidden; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.print-poster { display: none; }
.report-cadence { margin-top: 18px; padding-top: 12px; border-top: 1px solid var(--line); color: var(--muted); font-size: 14px; }
.trial-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 32px; list-style: none; }
.trial-steps li { display: flex; gap: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
.trial-steps li > span { color: var(--orange); font-size: 16px; padding-top: 2px; }
.trial-steps h3 { font-size: 21px; margin-bottom: 10px; }
.trial-steps p { font-size: 16px; line-height: 1.5; color: var(--muted); }
.journey-decision { margin-top: 24px; padding-top: 16px; border-top: 2px solid var(--teal); font-size: 16px; color: var(--muted); }
.journey-decision strong { color: var(--ink); }
.proof-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.proof-grid figure { margin: 0; min-width: 0; }
.proof-quote { min-height: 224px; padding: 18px 20px; border-left: 3px solid var(--blue); background: #f4f6f8; }
.proof-quote > span { display: block; font-size: 12px; line-height: 1.4; color: var(--muted); margin-bottom: 14px; }
.proof-quote > p { color: var(--ink); font-size: 16px; line-height: 1.55; }
.proof-quote > p + p { margin-top: 12px; }
.proof-image { display: block; width: 100%; padding: 0; position: relative; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; background: #16232f; }
.proof-image img { width: 100%; height: 224px; object-fit: contain; }
.proof-image > span { position: absolute; right: 10px; bottom: 10px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 4px; background: white; }
.proof-image:hover { border-color: var(--orange); }
.proof-grid figcaption { padding-top: 16px; }
.proof-grid h3 { font-size: 21px; margin-bottom: 7px; }
.proof-grid p { font-size: 15px; color: var(--muted); }
.proof-note, .metrics-note { margin-top: 20px; padding-top: 12px; border-top: 1px solid var(--line); font-size: 13px; line-height: 1.5; color: var(--muted); }
.metrics-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.metrics-pair > div + div { padding-left: 48px; border-left: 1px solid var(--line); }
.metrics-pair strong { display: block; font-size: 72px; line-height: 1.05; font-weight: 600; color: var(--orange); white-space: nowrap; margin-bottom: 12px; }
.metrics-pair strong > span { font-size: 42px; }
.metrics-pair h3 { font-size: 23px; margin-bottom: 10px; }
.metrics-pair p { font-size: 16px; max-width: 480px; }
.metrics-pair small { display: block; margin-top: 9px; font-size: 13px; color: var(--muted); }
.trial-forecast { display: grid; grid-template-columns: 1.8fr 1fr 1fr; gap: 24px; border-top: 1px solid var(--ink); margin-top: 26px; padding-top: 18px; align-items: start; }
.trial-forecast > div:first-child > span { font-size: 16px; font-weight: 600; }
.trial-forecast p { margin-top: 7px; font-size: 13px; color: var(--muted); }
.trial-forecast strong { display: block; font-size: 36px; line-height: 1.2; font-weight: 600; white-space: nowrap; }
.trial-forecast > div:not(:first-child) > span { display: block; font-size: 14px; color: var(--muted); margin-top: 4px; }
.offer-dynamic-price { font-size: 32px; font-weight: 600; line-height: 1.2; color: var(--orange); }
@media (min-width: 901px) and (max-height: 820px) {
    .report-cadence { margin-top: 12px; padding-top: 9px; font-size: 13px; }
    .trial-steps { gap: 22px 28px; }
    .trial-steps h3 { font-size: 19px; }
    .trial-steps p { font-size: 14px; }
    .journey-decision { margin-top: 18px; padding-top: 12px; font-size: 14px; }
    .proof-image img { height: 180px; }
    .proof-quote { min-height: 216px; padding: 14px 16px; }
    .proof-quote > p { font-size: 14px; }
    .proof-grid figcaption { padding-top: 12px; }
    .proof-grid h3 { font-size: 19px; }
    .proof-grid p { font-size: 14px; }
    .proof-note, .metrics-note { font-size: 12px; margin-top: 14px; }
    .metrics-pair strong { font-size: 58px; }
    .metrics-pair strong > span { font-size: 34px; }
    .metrics-pair h3 { font-size: 21px; }
    .metrics-pair p { font-size: 14px; }
    .metrics-pair small { font-size: 12px; }
    .trial-forecast { margin-top: 18px; padding-top: 14px; }
    .trial-forecast strong { font-size: 30px; }
}
@media (max-width: 900px) {
    .trial-steps { grid-template-columns: 1fr 1fr; gap: 26px; }
    .proof-grid { grid-template-columns: 1fr; gap: 30px; }
    .proof-quote { min-height: 0; }
    .proof-image img { height: auto; max-height: 420px; }
    .metrics-pair { gap: 32px; }
    .metrics-pair > div + div { padding-left: 24px; }
    .metrics-pair strong { font-size: 54px; }
    .metrics-pair strong > span { font-size: 32px; }
    .trial-forecast { grid-template-columns: 1.5fr 1fr 1fr; gap: 16px; }
    .trial-forecast strong { font-size: 28px; }
}
@media (max-width: 600px) {
    .trial-steps, .metrics-pair { grid-template-columns: 1fr; gap: 24px; }
    .trial-steps h3 { font-size: 21px; }
    .trial-steps p { font-size: 15px; }
    .metrics-pair > div + div { border-left: 0; border-top: 1px solid var(--line); padding: 24px 0 0; }
    .metrics-pair strong { font-size: 60px; }
    .trial-forecast { grid-template-columns: 1fr 1fr; gap: 20px; }
    .trial-forecast > div:first-child { grid-column: 1 / -1; }
    .trial-forecast strong { font-size: 32px; }
    .proof-grid h3 { font-size: 21px; }
    .proof-note, .metrics-note { font-size: 12px; }
}

@media (min-width: 901px) and (max-height: 820px) {
    .slide { padding: 94px 48px 74px; }
    .slide h2 { font-size: 38px; margin-bottom: 24px; }
    .eyebrow { font-size: 13px; margin-bottom: 10px; }
    .cover h1 { font-size: 78px; margin-bottom: 18px; }
    .cover-topline { margin-bottom: 16px; }
    .cover-lead { font-size: 20px; max-width: 630px; }
    .cover-results { margin-top: 24px; padding-top: 18px; }
    .cover-results strong { font-size: 36px; }
    .cover-clientline { margin-top: 18px; padding-top: 14px; }
    .audience-layout { gap: 56px; }
    .large-copy { font-size: 22px; }
    .fit-list > div { padding: 12px 0; }
    .fit-list p { font-size: 15px; }
    .enterprise-line { margin-top: 20px; padding-top: 18px; }
    .enterprise-line ul { font-size: 14px; }
    .case-layout { gap: 60px; }
    .result-major strong { font-size: 94px; }
    .result-major span { font-size: 16px; margin-top: 12px; }
    .case-narrative h3 { font-size: 24px; }
    .case-narrative > p:not(.small-label) { font-size: 15px; margin-top: 12px; }
    .case-facts { font-size: 14px; margin-top: 14px; }
    .case-facts > div { padding: 8px 0; }
    .process-line { margin-top: 28px; gap: 24px; }
    .step-number { font-size: 34px; margin-bottom: 16px; }
    .process-line h3 { font-size: 21px; margin-bottom: 10px; }
    .process-line p { font-size: 15px; min-height: 88px; }
    .process-bottom { margin-top: 24px; font-size: 15px; }
    .media-layout { gap: 42px; }
    .media-stage video { height: 270px; }
    .media-commentary h3 { font-size: 25px; margin-bottom: 14px; }
    .plain-list li { font-size: 15px; padding-top: 9px; padding-bottom: 9px; }
    .media-commentary .quiet-note { font-size: 13px; margin-top: 14px; }
    .message-example blockquote { font-size: 20px; }
    .message-example > p { font-size: 14px; }
    .message-logic p { font-size: 14px; }
    .message-logic li { padding: 7px 0; }
    .chain-evidence { margin-top: 18px; }
    .image-button img { height: 110px; }
    .criteria-layout { gap: 64px; }
    .criteria-list > div { padding: 16px 0; }
    .criteria-list h3 { font-size: 20px; }
    .criteria-list p { font-size: 15px; }
    .conversion-callout > strong { font-size: 88px; }
    .conversion-callout > p { font-size: 17px; }
    .conversion-rule { margin: 16px 0; }
    .bottom-note { margin-top: 22px; padding-top: 16px; font-size: 14px; }
    .report-row { padding: 19px 0; font-size: 15px; }
    .control-aside h3 { font-size: 25px; }
    .control-aside > p { font-size: 15px; }
    .training-big > strong { font-size: 126px; }
    .training-big > strong > span { font-size: 76px; }
    .training-big > p { font-size: 18px; margin-top: 14px; }
    .training-story .large-copy { font-size: 20px; }
    .training-secondary { margin-top: 18px; padding-top: 12px; }
    .training-secondary strong { font-size: 52px; }
    .handover-line { margin-top: 24px; }
    .training-evidence { margin-top: 10px; padding-top: 4px; }
    .control-aside .evidence-action { margin-top: 10px; }
    .handover-line strong { font-size: 17px; }
    .offer h3 { font-size: 26px; margin-bottom: 12px; }
    .offer-price { font-size: 48px; min-height: 55px; }
    .training-prices { min-height: 55px; }
    .training-prices p > strong { font-size: 30px; }
    .offer-outcome { font-size: 16px; }
    .offer ul { margin-top: 16px; }
    .offer li { padding: 9px 0; font-size: 14px; }
    .offer-fit { font-size: 13px; margin-top: 8px; }
    .trial-facts { margin-bottom: 18px; }
    .trial-facts strong { font-size: 42px; }
    .trial-scope .plain-list li { font-size: 14px; padding-top: 8px; padding-bottom: 8px; }
    .trial-distinction { font-size: 13px; margin-top: 14px; }
    .trial-deliverables h3 { font-size: 22px; margin-bottom: 14px; }
    .trial-deliverables dl > div + div { margin-top: 12px; }
    .trial-deliverables dt { font-size: 15px; }
    .trial-deliverables dd { font-size: 14px; }
    .trial-actions { margin-top: 16px; gap: 8px 20px; }
    .trial-terms { margin-top: 18px; padding-top: 12px; font-size: 12px; }
    .trial .slide-inner > h2 { margin-bottom: 16px; }
    .formats-note { margin-top: 12px; padding-top: 8px; font-size: 13px; }
    .scenario-result strong { font-size: 70px; }
    .scenario-result { margin-bottom: 16px; }
    #trial-assumption { margin-top: 12px; font-size: 12px; }
    .scenario-bottom { margin-top: 14px; padding-top: 14px; font-size: 14px; }
    .closing h2 { font-size: 56px; }
    .closing-lead { font-size: 20px; margin-bottom: 24px; }
    .closing-bottom { margin-top: 24px; }
    .closing-price > strong { font-size: 36px; }
    .closing-qr img { width: 194px; height: 194px; }
}

@media (max-width: 1100px) and (min-width: 901px) {
    .slide { padding-left: 40px; padding-right: 40px; }
    .deck-header { padding: 0 40px; }
    .slide h2 { font-size: 38px; }
    .audience-layout, .case-layout, .message-layout, .trial-layout, .criteria-layout, .training-case-layout { gap: 40px; }
    .media-layout { gap: 32px; }
    .media-commentary h3 { font-size: 24px; }
    .process-line { gap: 16px; }
    .process-line h3 { font-size: 20px; }
    .process-line p { font-size: 14px; }
    .offer-columns { gap: 32px; }
    .offer + .offer { padding-left: 32px; }
    .training-prices p > strong { font-size: 28px; }
    .conversion-callout { padding-left: 32px; }
    .trial-scenario { padding-left: 32px; }
    .trial-facts strong { font-size: 38px; }
    .control-layout { gap: 36px; }
    .closing h2 { font-size: 56px; }
}

@media (max-width: 900px) {
    .slide { padding: 100px 32px 92px; align-items: flex-start; }
    .slide h2, .appendix h2 { font-size: 36px; line-height: 1.15; margin-bottom: 28px; }
    .deck-header { height: 68px; padding: 0 28px; }
    .header-descriptor { display: none; }
    .cover { align-items: center; }
    .cover h1 { font-size: 76px; }
    .cover-lead { font-size: 22px; }
    .cover-results { grid-template-columns: 1fr 1fr; gap: 26px; }
    .cover-results > *:last-child { grid-column: 1 / -1; display: flex; align-items: center; gap: 22px; }
    .cover-results > *:last-child strong { margin: 0; }
    .cover-results > .cover-trial { flex-wrap: wrap; gap: 12px 22px; }
    .cover-clientline { flex-direction: column; gap: 12px; }
    .audience-layout, .case-layout, .media-layout, .message-layout, .criteria-layout, .control-layout, .training-case-layout, .offer-columns, .trial-layout { grid-template-columns: 1fr; gap: 32px; }
    .audience-layout .large-copy { max-width: 650px; }
    .large-copy { font-size: 23px; }
    .enterprise-line { grid-template-columns: 1fr; gap: 18px; margin-top: 28px; }
    .enterprise-line ul { justify-content: flex-start; }
    .result-major strong { font-size: 102px; }
    .case-narrative h3 br { display: none; }
    .process-line { grid-template-columns: 1fr; margin-top: 28px; gap: 22px; }
    .process-line li { display: grid; grid-template-columns: 52px 1fr; gap: 6px 22px; padding-top: 20px; }
    .step-number { grid-row: 1 / 4; font-size: 34px; margin: 0; }
    .process-line h3 { font-size: 24px; margin-bottom: 3px; }
    .process-line p { min-height: 0; font-size: 17px; max-width: 600px; }
    .process-line small { border: 0; padding-top: 4px; }
    .media-stage video { height: auto; aspect-ratio: 1470 / 956; }
    .media-commentary h3 br { display: none; }
    .message-layout { gap: 28px; }
    .message-example blockquote { font-size: 24px; }
    .message-logic { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
    .message-logic li { display: block; padding: 0; }
    .message-logic li > span { display: block; padding: 0; margin-bottom: 8px; }
    .evidence-heading { gap: 20px; }
    .image-button img { height: 150px; }
    .conversion-callout { border-left: 0; border-top: 1px solid var(--line); padding: 26px 0 0; }
    .conversion-callout > strong { font-size: 94px; }
    .criteria-list > div { padding: 20px 0; }
    .control-aside { padding-top: 8px; }
    .control-aside > svg { margin-bottom: 18px; }
    .training-case-layout { grid-template-columns: 1fr 1.1fr; gap: 40px; }
    .training-big > strong { font-size: 116px; }
    .training-big > strong > span { font-size: 72px; }
    .training-story .large-copy { font-size: 20px; }
    .handover-line { gap: 24px; }
    .handover-line strong { font-size: 17px; }
    .offer + .offer { border-left: 0; border-top: 1px solid #555; padding: 32px 0 0; }
    .offer li { font-size: 17px; }
    .training-prices { max-width: 510px; }
    .trial-scenario { border-left: 0; border-top: 1px solid var(--line); padding: 28px 0 0; }
    .trial-deliverables { border-left: 0; border-top: 1px solid var(--line); padding: 28px 0 0; }
    .trial-facts { max-width: 600px; }
    .trial-scenario input[type="range"] { height: 44px; }
    .closing-layout { grid-template-columns: 1fr; gap: 36px; }
    .closing h2 { font-size: 56px; }
    .closing-qr { display: none; }
    .closing-bottom { margin-top: 38px; }
    .appendix { padding: 100px 32px; }
    .slide-nav { left: 0; right: 0; bottom: 0; width: 100%; height: calc(58px + env(safe-area-inset-bottom)); padding: 2px 4px calc(2px + env(safe-area-inset-bottom)); justify-content: center; gap: 22px; border-radius: 0; border-width: 1px 0 0; box-shadow: none; }
}

@media (max-width: 600px) {
    body { font-size: 16px; }
    .deck-header { height: 64px; padding: 0 22px; gap: 12px; }
    .brand { font-size: 23px; gap: 10px; }
    .brand-mark { width: 30px; height: 30px; border-radius: 5px; }
    .brand-mark svg { width: 20px; height: 20px; }
    .desktop-tool { display: none; }
    .slide { padding: 90px 24px 90px; }
    .slide h2, .appendix h2 { font-size: 32px; line-height: 1.13; margin-bottom: 26px; }
    .slide h2 br { display: none; }
    .slide h3 { font-size: 23px; }
    .eyebrow { font-size: 12px; margin-bottom: 16px; }
    .small-label { font-size: 12px; }
    .cover h1 { font-size: 50px; line-height: 1.04; margin-bottom: 26px; }
    .cover-topline { font-size: 12px; gap: 18px; margin-bottom: 28px; }
    .cover-lead { font-size: 19px; line-height: 1.5; }
    .cover-results { margin-top: 30px; padding-top: 20px; gap: 25px 20px; }
    .cover-results strong { font-size: 38px; }
    .cover-results span { font-size: 12px; align-items: flex-start; }
    .cover-results svg { width: 14px; height: 14px; margin-top: 3px; }
    .cover-clientline { font-size: 12px; margin-top: 26px; }
    .cover-clientline > div { gap: 8px 18px; }
    .audience-layout { gap: 28px; }
    .large-copy { font-size: 21px; }
    .fit-list > div { gap: 18px; padding: 15px 0; }
    .fit-list p { font-size: 16px; }
    .enterprise-line { padding-top: 22px; }
    .enterprise-line ul { display: grid; gap: 6px; font-size: 15px; }
    .client-wordmark { font-size: 22px; }
    .case-heading { align-items: baseline; margin-bottom: 24px; }
    .case-heading .eyebrow { max-width: 170px; }
    .result-pair { gap: 22px 16px; }
    .result-major strong { font-size: 82px; }
    .result-major span { font-size: 14px; margin-top: 12px; }
    .result-context { font-size: 13px; padding-top: 18px; }
    .case-narrative > p:not(.small-label) { font-size: 16px; }
    .case-facts { font-size: 14px; }
    .case-facts > div { grid-template-columns: 75px 1fr; gap: 10px; padding: 12px 0; }
    .process-line li { grid-template-columns: 38px 1fr; gap: 8px 20px; }
    .step-number { font-size: 29px; }
    .process-line h3 { font-size: 23px; }
    .process-line p { font-size: 16px; }
    .process-line small { font-size: 12px; }
    .process-bottom { font-size: 15px; margin-top: 28px; }
    .media-tabs { gap: 20px; margin-bottom: 12px; }
    .media-tabs button { font-size: 12px; flex: 1 1 0; }
    .media-caption { gap: 12px; align-items: flex-start; }
    .media-caption p { font-size: 12px; }
    .plain-list li { font-size: 16px; }
    .message-example blockquote { font-size: 21px; padding-left: 18px; }
    .message-example > p { margin-left: 21px; font-size: 14px; }
    .message-logic { grid-template-columns: 1fr; gap: 18px; }
    .message-logic li { display: flex; gap: 18px; }
    .message-logic li > span { margin: 3px 0 0; }
    .message-logic p { font-size: 14px; }
    .chain-evidence { margin-top: 26px; }
    .evidence-heading { flex-direction: column; align-items: flex-start; gap: 2px; }
    .evidence-heading p { font-size: 13px; }
    .image-button img { height: 110px; }
    .image-button > span { width: 32px; height: 32px; right: 7px; bottom: 7px; }
    .criteria-list > div { gap: 18px; }
    .criteria-list h3 { font-size: 20px; }
    .criteria-list p { font-size: 15px; }
    .conversion-callout > strong { font-size: 86px; }
    .conversion-callout > strong > span { font-size: 48px; }
    .conversion-callout > p { font-size: 17px; }
    .bottom-note { font-size: 14px; margin-top: 26px; }
    .report-head { display: none; }
    .report-structure { border-top: 2px solid var(--ink); }
    .report-row { grid-template-columns: 72px 1fr; gap: 8px 14px; padding: 18px 0; font-size: 15px; }
    .report-row > span { grid-column: 2; font-size: 13px; }
    .control-aside { padding-left: 21px; }
    .control-aside h3 { font-size: 24px; }
    .control-aside > p { font-size: 16px; }
    .training-case-layout { grid-template-columns: 1fr; gap: 30px; }
    .training-big > strong { font-size: 112px; }
    .training-big > p { font-size: 18px; }
    .training-story .large-copy { font-size: 20px; }
    .training-secondary p { font-size: 14px; }
    .handover-line { grid-template-columns: 1fr; gap: 22px; margin-top: 30px; }
    .handover-line strong { font-size: 18px; }
    .handover-line p { font-size: 14px; }
    .offer-kicker { font-size: 13px; }
    .offer h3 { font-size: 29px; }
    .offer-price { font-size: 49px; min-height: 0; }
    .offer-outcome { font-size: 18px; }
    .offer li { font-size: 16px; padding: 12px 0; }
    .offer-fit { font-size: 14px; }
    .training-prices { gap: 20px; min-height: 0; }
    .training-prices p > strong { font-size: 29px; }
    .trial-facts { grid-template-columns: 1.35fr 1fr; gap: 16px; }
    .trial-facts strong { font-size: 34px; }
    .trial-facts strong > span { font-size: 25px; }
    .trial-facts p { font-size: 12px; }
    .trial-scope .plain-list li { font-size: 15px; }
    .trial-distinction { font-size: 14px; }
    .scenario-result strong { font-size: 78px; }
    .trial-scenario label { font-size: 14px; }
    #trial-assumption { font-size: 13px; }
    .scenario-bottom { font-size: 14px; }
    .closing h2 { font-size: 40px; }
    .closing h2 br { display: block; }
    .closing-lead { font-size: 19px; margin-bottom: 32px; }
    .contact-link { font-size: 24px; gap: 10px; }
    .contact-link svg { width: 23px; height: 23px; }
    .contact-email { font-size: 15px; }
    .closing-bottom { align-items: flex-start; flex-direction: column; gap: 24px; }
    .closing-bottom p { font-size: 14px; }
    .closing-price { gap: 8px 18px; }
    .closing-price > strong { font-size: 36px; }
    .closing-price > span { font-size: 17px; }
    .closing-bottom a { font-size: 15px; }
    .appendix { padding: 90px 24px; }
    .appendix-lead { font-size: 16px; }
    .case-accordion summary { grid-template-columns: 1fr 24px; gap: 8px 18px; padding: 21px 0; }
    .case-accordion summary strong { font-size: 22px; }
    .case-accordion summary small { font-size: 12px; }
    .case-accordion summary > span:nth-child(2) { grid-column: 1; grid-row: 2; font-size: 15px; }
    .case-accordion summary > svg { grid-column: 2; grid-row: 1 / 3; }
    .case-detail { font-size: 15px; }
    .case-detail p + p { font-size: 14px; }
    .appendix-contact { font-size: 18px; }
    dialog { padding: 18px; }
    .dialog-heading h2 { font-size: 20px; }
    #contents-list { grid-template-columns: 1fr; }
    #contents-list a { padding: 12px 0; }
    .contents-dialog { width: calc(100% - 24px); }
}

@media (max-width: 360px) {
    .slide { padding-left: 20px; padding-right: 20px; }
    .deck-header { padding-left: 18px; padding-right: 16px; }
    .cover h1 { font-size: 42px; }
    .cover-topline { gap: 12px; font-size: 11px; }
    .slide h2, .appendix h2 { font-size: 29px; }
    .cover-lead { font-size: 18px; }
    .result-major strong { font-size: 72px; }
    .result-major span { font-size: 13px; }
    .training-prices p > strong { font-size: 25px; }
    .trial-facts strong { font-size: 29px; }
    .trial-facts strong > span { font-size: 23px; }
    .trial-scenario label { gap: 10px; font-size: 13px; }
    .closing h2 { font-size: 34px; }
    .contact-link { font-size: 21px; }
}

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

@media print {
    @page { size: 16in 9in; margin: 0; }
    html, body { margin: 0; padding: 0; width: 16in; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .deck-header, .slide-nav, dialog, .appendix, .sr-only, .media-tabs, .media-caption .icon-button, .text-action, .image-button > span { display: none !important; }
    .slide { width: 16in; height: 9in; min-height: 0; padding: 48px 64px; break-after: page; break-inside: avoid; align-items: center; }
    .slide-inner { max-width: none; }
    .slide h2 { font-size: 46px; }
    .media-stage video { display: none; }
    .print-poster { display: block; width: 100%; max-height: 380px; object-fit: contain; }
    .image-button { border: 0; }
    .closing-qr { display: block; }
    .cover h1 { font-size: 94px; }
}
