/* Public-only enhancement. Live and export layouts retain their original rules. */
html[data-mode="public"] {
  --sales-accent: #19d3c5;
  --sales-ink: #041513;
  --sales-panel: #101722;
  --sales-border: #283545;
  --sales-text: #f4f7fb;
  --sales-secondary: #aab5c3;
  --landscape-bar: 64px;
  scroll-snap-type: none;
  scroll-padding-top: 0;
}
html[data-mode="public"] .site-topbar { height: 64px; padding-inline: clamp(16px, 4vw, 72px); font-size: 15px; }
html[data-mode="public"] .site-topbar__help,
html[data-mode="public"] .site-topbar__brand small,
html[data-mode="public"] .scene-nav,
html[data-mode="public"] .scene__index,
html[data-mode="public"] .scene--internal { display: none; }
html[data-mode="public"] .public-nav { display: flex; gap: 12px; }
html[data-mode="public"] .public-nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 20px; border: 1px solid var(--sales-border); border-radius: 8px; color: var(--sales-text); text-decoration: none; font-size: 15px; font-weight: 600; }
html[data-mode="public"] .public-nav .public-nav__primary { background: var(--sales-accent); color: var(--sales-ink); border-color: var(--sales-accent); }
html[data-mode="public"] a:focus-visible,
html[data-mode="public"] button:focus-visible { outline: 2px solid var(--sales-accent); outline-offset: 4px; }
html[data-mode="public"] .page-stack { padding: 0; gap: 0; align-items: center; }
html[data-mode="public"] .scene { scroll-snap-align: none; scroll-margin-top: 80px; max-width: 100%; }
html[data-mode="public"] .scene__bottom { letter-spacing: 0; }
html[data-mode="public"] .lesson-row { opacity: 1; }
html[data-mode="public"] #scene-09A .scene__subtitle,
html[data-mode="public"] #scene-09D .scene__subtitle { display: none; }
html[data-mode="public"] .sales-button { display: inline-flex; align-items: center; justify-content: center; gap: 24px; min-height: 52px; padding: 12px 28px; background: var(--sales-accent); color: var(--sales-ink); border: 1px solid var(--sales-accent); border-radius: 8px; font: inherit; font-size: 20px; font-weight: 600; text-decoration: none; cursor: pointer; opacity: 1; }
html[data-mode="public"] .sales-button:hover,
html[data-mode="public"] .public-nav__primary:hover { background: #29ddd0; }
html[data-mode="public"] .sales-inclusions { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px; margin: 20px 0; padding: 0; list-style: none; }
html[data-mode="public"] .price-stage__reasons .sales-inclusions li { display: block; padding: 12px 0; border-bottom: 1px solid var(--border); font-size: clamp(18px, 1.4vw, 27px); }
html[data-mode="public"] .price-stage__reasons .sales-support { font-size: clamp(16px, 1.2vw, 23px); color: var(--secondary); margin: 24px 0; line-height: 1.6; }
html[data-mode="public"] .price-stage__early { width: 46%; }
html[data-mode="public"] .price-stage__early small { line-height: 1.6; }
html[data-mode="public"] .scene--enrollment-cta { height: auto; min-height: calc(100svh - 64px); container-type: inline-size; }
html[data-mode="public"] .scene--enrollment-cta .scene__frame { height: auto; grid-template-rows: auto auto auto auto auto auto; row-gap: 28px; }
html[data-mode="public"] .scene--enrollment-cta .scene__lead { margin: 24px 0; }
html[data-mode="public"] .scene--enrollment-cta .enrollment-price,
html[data-mode="public"] .scene--enrollment-cta .enrollment-bonuses { margin: 0; padding: 24px 0; }
html[data-mode="public"] .sales-conditions { grid-column: 1 / -1; grid-row: 4; padding: 24px 0; border-top: 1px solid var(--border); }
html[data-mode="public"] .sales-conditions h2 { margin: 0 0 24px; font-size: 24px; }
html[data-mode="public"] .sales-conditions dl { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 40px; margin: 0; }
html[data-mode="public"] .sales-conditions dt { color: var(--accent); font-size: 17px; margin-bottom: 8px; }
html[data-mode="public"] .sales-conditions dd { margin: 0; color: var(--secondary); font-size: 17px; line-height: 1.65; }
html[data-mode="public"] .scene--enrollment-cta .enrollment-action { grid-column: 1 / -1; grid-row: 5; margin: 0 0 24px; flex-wrap: wrap; gap: 16px 24px; }
html[data-mode="public"] .enrollment-action .sales-button { min-width: 240px; font-size: 22px; min-height: 56px; cursor: pointer; opacity: 1; }
html[data-mode="public"] .payment-status { color: var(--secondary); font-size: 17px; line-height: 1.6; margin: 0; }
html[data-mode="public"] .payment-status--notice { color: var(--accent); }
html[data-mode="public"] .enrollment-action .sales-button:disabled { cursor: not-allowed; opacity: .6; }
html[data-mode="public"] .enrollment-action .sales-button[aria-busy="true"] { cursor: wait; }
html[data-mode="public"] .scene--enrollment-cta .scene__bottom { grid-row: 6; padding-top: 20px; }

/* Portrait Public also scrolls naturally; it shares the mobile layout below. */
@media (min-width: 901px) {
  html[data-mode="public"][data-layout="landscape"] .scene { width: min(100%, calc((100svh - 64px) * 16 / 9)); }
  html[data-mode="public"] .scene--enrollment-cta .enrollment-action { justify-content: flex-end; }
  html[data-mode="public"] .enrollment-action .sales-button { order: 1; }
}

/* The landscape sheet is desktop-only in Public. Phones use real vertical flow. */
@media (max-width: 900px) {
  html[data-mode="public"] .site-topbar { padding: 0 16px; gap: 8px; }
  html[data-mode="public"] .site-topbar__brand { gap: 8px; font-size: 13px; white-space: nowrap; }
  html[data-mode="public"] .brand-mark { width: 10px; height: 10px; }
  html[data-mode="public"] .public-nav { gap: 8px; }
  html[data-mode="public"] .public-nav a { padding: 0 12px; font-size: 13px; }
  html[data-mode="public"] .scene { width: 100%; height: auto; min-height: 0; overflow: visible; border: 0; border-radius: 0; container-type: normal; }
  html[data-mode="public"] .scene .scene__frame { display: flex; flex-direction: column; height: auto; padding: 40px 24px 28px; gap: 0; }
  html[data-mode="public"] .scene__top { min-height: 0; font-size: 12px; margin-bottom: 32px; }
  html[data-mode="public"] .scene__brand { gap: 8px; }
  html[data-mode="public"] .scene__brand-mark { width: 8px; height: 8px; }
  html[data-mode="public"] .scene .scene__lead { margin: 0; padding: 0; }
  html[data-mode="public"] .eyebrow { font-size: 13px; line-height: 1.6; letter-spacing: .02em; gap: 8px; margin: 0 0 16px; }
  html[data-mode="public"] .eyebrow__dash { width: 20px; flex: none; }
  html[data-mode="public"] .scene .scene__title { font-size: clamp(32px, 7.5vw, 52px); line-height: 1.2; letter-spacing: -.04em; overflow-wrap: anywhere; }
  html[data-mode="public"] .scene--hero .scene__title { font-size: clamp(36px, 8.6vw, 64px); }
  html[data-mode="public"] .scene .scene__subtitle { max-width: none; margin: 20px 0 0; font-size: 16px; line-height: 1.75; }
  html[data-mode="public"] .scene .scene__bottom { margin-top: 32px; padding-top: 16px; font-size: 10px; gap: 12px; line-height: 1.5; }
  html[data-mode="public"] .hero-tags { flex-wrap: wrap; gap: 8px; margin: 24px 0; }
  html[data-mode="public"] .hero-tags span { padding: 8px 10px; font-size: 12px; gap: 6px; }
  html[data-mode="public"] .hero-tags b { font-size: 10px; }
  html[data-mode="public"] .hero-gallery,
  html[data-mode="public"] .case-gallery { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; height: auto; margin: 28px 0 0; gap: 12px; }
  html[data-mode="public"] .hero-gallery { margin-top: 0; }
  html[data-mode="public"] .hero-gallery__main,
  html[data-mode="public"] .case-gallery__main { grid-column: 1 / -1; grid-row: auto; }
  html[data-mode="public"] .media { border-radius: 8px; display: block; }
  html[data-mode="public"] .media img { width: 100%; height: auto; object-fit: contain; }
  html[data-mode="public"] .media figcaption { position: static; max-width: 100%; width: auto; padding: 8px 10px; border: 0; border-radius: 0; font-size: 11px; }
  html[data-mode="public"] .hero-verdict { margin: 24px 0 0; gap: 12px; }
  html[data-mode="public"] .hero-verdict p { font-size: 17px; line-height: 1.6; }
  html[data-mode="public"] .verdict-rule { width: 24px; flex: none; height: 2px; }
  html[data-mode="public"] .pain-list { margin-top: 32px; }
  html[data-mode="public"] .pain-row { grid-template-columns: 40px 1fr 16px; min-height: 116px; gap: 8px; padding: 20px 0; }
  html[data-mode="public"] .pain-row__number { font-size: 20px; }
  html[data-mode="public"] .pain-row h2 { font-size: 24px; margin-bottom: 8px; }
  html[data-mode="public"] .pain-row p { font-size: 14px; line-height: 1.6; }
  html[data-mode="public"] .pain-row__arrow { font-size: 20px; }
  html[data-mode="public"] .pain-closing { margin-top: 28px; padding: 20px 0 0; align-items: start; gap: 16px; font-size: 18px; line-height: 1.6; }
  html[data-mode="public"] .pain-closing span { font-size: 13px; padding-top: 4px; }
  html[data-mode="public"] .method-layout { grid-template-columns: 1fr; height: auto; margin-top: 32px; gap: 24px; }
  html[data-mode="public"] .flow-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; gap: 12px; }
  html[data-mode="public"] .flow-step { padding: 16px; }
  html[data-mode="public"] .flow-step span { font-size: 12px; }
  html[data-mode="public"] .flow-step h2 { font-size: 22px; margin: 12px 0 8px; }
  html[data-mode="public"] .flow-step p { font-size: 14px; line-height: 1.6; }
  html[data-mode="public"] .method-footline { flex-wrap: wrap; justify-content: flex-start; gap: 8px; margin-top: 24px; font-size: 13px; }
  html[data-mode="public"] .method-footline i { width: 12px; }
  html[data-mode="public"] .audience-list { margin-top: 32px; }
  html[data-mode="public"] .audience-row { grid-template-columns: 32px 1fr; gap: 8px 12px; min-height: 0; padding: 24px 0; }
  html[data-mode="public"] .audience-row__index { font-size: 18px; grid-row: 1 / 3; align-self: start; }
  html[data-mode="public"] .audience-row h2 { font-size: 24px; }
  html[data-mode="public"] .audience-row p { grid-column: 2; font-size: 15px; line-height: 1.6; }
  html[data-mode="public"] .audience-note { margin-top: 24px; font-size: 12px; line-height: 1.6; }
  html[data-mode="public"] .tool-steps { grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 32px; }
  html[data-mode="public"] .tool-step { padding: 16px 12px; gap: 8px; }
  html[data-mode="public"] .tool-step span { font-size: 12px; }
  html[data-mode="public"] .tool-step strong { font-size: 17px; }
  html[data-mode="public"] .workbench-wrap { margin-top: 24px; padding: 12px; }
  html[data-mode="public"] .workbench-wrap__header { font-size: 11px; padding-bottom: 12px; gap: 12px; }
  html[data-mode="public"] .workbench-wrap__image { height: auto; }
  html[data-mode="public"] .tool-verdict { margin-top: 24px; font-size: 20px; line-height: 1.6; }
  html[data-mode="public"] .case-lesson { grid-template-columns: 1fr; gap: 12px; margin-top: 28px; padding-top: 20px; }
  html[data-mode="public"] .case-lesson span { font-size: 13px; }
  html[data-mode="public"] .case-lesson p { font-size: 22px; }
  html[data-mode="public"] .story-pairs { margin-top: 32px; gap: 32px; }
  html[data-mode="public"] .story-pair__heading { flex-wrap: wrap; gap: 8px 12px; margin-bottom: 20px; }
  html[data-mode="public"] .story-pair__heading h2 { font-size: 24px; }
  html[data-mode="public"] .story-pair__heading > span:first-child { font-size: 14px; }
  html[data-mode="public"] .story-pair__heading > span:last-child { width: 100%; margin: 0; font-size: 12px; }
  html[data-mode="public"] .story-pair__images { height: auto; grid-template-columns: 1fr; gap: 12px; }
  html[data-mode="public"] .story-closing { margin-top: 28px; padding-top: 20px; font-size: 18px; }
  html[data-mode="public"] .curriculum-columns { grid-template-columns: 1fr; margin-top: 32px; gap: 32px; }
  html[data-mode="public"] .curriculum-module__header { grid-template-columns: 36px 1fr; gap: 12px; min-height: 0; padding: 24px 0; }
  html[data-mode="public"] .curriculum-module__letter { font-size: 36px; }
  html[data-mode="public"] .curriculum-module__header h2 { font-size: 25px; margin: 0 0 8px; }
  html[data-mode="public"] .curriculum-module__header p { font-size: 14px; }
  html[data-mode="public"] .curriculum-module__bonus { font-size: 12px; margin: 4px 0 12px; }
  html[data-mode="public"] .lesson-row,
  html[data-mode="public"] .curriculum-columns--single .lesson-row { grid-template-columns: 28px minmax(0, 1fr); gap: 8px; min-height: 0; padding: 16px 0; }
  html[data-mode="public"] .lesson-row__number { font-size: 15px; }
  html[data-mode="public"] .lesson-row__title,
  html[data-mode="public"] .curriculum-columns--single .lesson-row__title { font-size: 17px; line-height: 1.7; }
  html[data-mode="public"] .lesson-row__badge { font-size: 11px; padding: 2px 6px; margin-left: 8px; }
  html[data-mode="public"] .curriculum-legend { align-items: start; gap: 12px; font-size: 12px; line-height: 1.6; margin-top: 24px; }
  html[data-mode="public"] .curriculum-legend__sample { font-size: 11px; }
  html[data-mode="public"] .support-intro { grid-template-columns: 1fr; gap: 20px; margin-top: 32px; padding: 24px 0; }
  html[data-mode="public"] .support-intro__index { font-size: 13px; }
  html[data-mode="public"] .support-intro h2 { font-size: 28px; margin-top: 12px; }
  html[data-mode="public"] .support-intro h2 small { font-size: 15px; }
  html[data-mode="public"] .support-intro > p { font-size: 16px; line-height: 1.7; }
  html[data-mode="public"] .support-features { grid-template-columns: 1fr; margin-top: 8px; }
  html[data-mode="public"] .support-feature { grid-template-columns: 28px 1fr; min-height: 60px; gap: 8px; }
  html[data-mode="public"] .support-feature span { font-size: 13px; }
  html[data-mode="public"] .support-feature strong { font-size: 17px; }
  html[data-mode="public"] .support-closing { margin-top: 24px; font-size: 20px; line-height: 1.6; }
  html[data-mode="public"] .support-group { grid-template-columns: 1fr; gap: 16px; padding: 24px 20px; margin-top: 28px; }
  html[data-mode="public"] .support-group span { font-size: 12px; }
  html[data-mode="public"] .support-group h2 { font-size: 24px; margin-top: 8px; }
  html[data-mode="public"] .support-group p { font-size: 16px; line-height: 1.7; }
  html[data-mode="public"] .value-modules { grid-template-columns: 1fr; margin-top: 32px; gap: 24px; }
  html[data-mode="public"] .value-module { grid-template-columns: 32px 1fr; min-height: 0; padding: 20px 0 0; gap: 12px; }
  html[data-mode="public"] .value-module > span { font-size: 17px; }
  html[data-mode="public"] .value-module strong { font-size: 24px; }
  html[data-mode="public"] .value-module p { font-size: 15px; line-height: 1.7; }
  html[data-mode="public"] .value-support { align-items: start; gap: 16px; margin-top: 28px; padding: 20px 0; }
  html[data-mode="public"] .value-support > span { font-size: 14px; flex: none; }
  html[data-mode="public"] .value-support > div { flex-direction: column; font-size: 16px; gap: 8px; }
  html[data-mode="public"] .value-conclusion { font-size: 23px; margin-top: 28px; }
  html[data-mode="public"] .price-stage { margin-top: 32px; }
  html[data-mode="public"] .price-stage .price-stage__standard { height: auto; }
  html[data-mode="public"] .price-stage .price-stage__standard span { font-size: 16px; }
  html[data-mode="public"] .price-stage .price-stage__standard strong { margin: 8px 0; transform: none; font-size: 32px; text-decoration-thickness: 1px; }
  html[data-mode="public"] .price-stage__standard strong::after { display: none; }
  html[data-mode="public"] .price-stage .price-stage__early { position: static; width: auto; margin: 28px 0; transform: none; }
  html[data-mode="public"] .price-stage__early > span { font-size: 22px; }
  html[data-mode="public"] .price-stage__early strong { font-size: 100px; }
  html[data-mode="public"] .price-stage__early p { font-size: 19px; }
  html[data-mode="public"] .price-stage__early small { font-size: 14px; line-height: 1.7; }
  html[data-mode="public"] .price-stage__button { display: none; }
  html[data-mode="public"] .price-stage__reasons { margin-top: 32px; }
  html[data-mode="public"] .price-stage__reasons h2 { font-size: 24px; }
  html[data-mode="public"] .price-stage__reasons .sales-inclusions { gap: 8px 16px; }
  html[data-mode="public"] .price-stage__reasons .sales-inclusions li { font-size: 16px; }
  html[data-mode="public"] .price-stage__reasons .sales-support { font-size: 15px; }
  html[data-mode="public"] .sales-button { font-size: 18px; width: 100%; }
  html[data-mode="public"] .bonus-eligibility { margin-top: 28px; padding: 20px 0; font-size: 16px; line-height: 1.7; }
  html[data-mode="public"] .bonus-list { margin-top: 8px; }
  html[data-mode="public"] .bonus-card { grid-template-columns: 1fr; gap: 12px; padding: 28px 0; }
  html[data-mode="public"] .bonus-card__number { font-size: 14px; }
  html[data-mode="public"] .bonus-card h2 { font-size: 25px; }
  html[data-mode="public"] .bonus-card:first-child h2 { font-size: 30px; }
  html[data-mode="public"] .bonus-card__tag { font-size: 12px; }
  html[data-mode="public"] .bonus-card p { font-size: 16px; line-height: 1.7; }
  html[data-mode="public"] .bonus-card small,
  html[data-mode="public"] .bonus-footer { font-size: 13px; line-height: 1.7; margin-top: 20px; }
  html[data-mode="public"] .scene--enrollment-cta .enrollment-price { margin-top: 28px; padding: 24px 0; }
  html[data-mode="public"] .enrollment-price > span { font-size: 22px; }
  html[data-mode="public"] .enrollment-price strong { font-size: 100px; }
  html[data-mode="public"] .enrollment-price p { font-size: 16px; }
  html[data-mode="public"] .enrollment-bonuses h2 { font-size: 23px; }
  html[data-mode="public"] .enrollment-bonuses p { font-size: 14px; line-height: 1.7; }
  html[data-mode="public"] .enrollment-bonuses ul { flex-direction: column; gap: 12px; }
  html[data-mode="public"] .enrollment-bonuses li { font-size: 17px; }
  html[data-mode="public"] .sales-conditions { margin: 28px 0 24px; padding: 0; border: 0; }
  html[data-mode="public"] .sales-conditions h2 { font-size: 23px; }
  html[data-mode="public"] .sales-conditions dl { grid-template-columns: 1fr; gap: 24px; }
  html[data-mode="public"] .sales-conditions dt,
  html[data-mode="public"] .sales-conditions dd { font-size: 14px; }
  html[data-mode="public"] .scene--enrollment-cta .enrollment-action { display: flex; flex-direction: column; align-items: stretch; margin: 0; }
  html[data-mode="public"] .payment-status { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html[data-mode="public"] { scroll-behavior: auto; }
}
html[data-mode="public"] .public-legal { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 24px; padding: 24px 16px; border-top: 1px solid var(--sales-border); color: var(--sales-secondary); font-size: 14px; line-height: 1.6; }
html[data-mode="public"] .public-legal a { color: inherit; text-underline-offset: 3px; }
html[data-mode="public"][data-export-mode="true"] .public-nav,
html[data-mode="public"][data-export-mode="true"] .public-legal { display: none; }
