/* Welcome product story. Load after product-description.css and finish.css. */
.welcome-page .landing-phone-real { padding:24px 7px 8px; width:202px; top:22px; z-index:3; }
.landing-real-screen-link { display:block; background:#f8faf7; border-radius:13px; overflow:hidden; }
.landing-real-screen { width:100%; height:auto; }
.landing-phone-real figcaption { padding-top:9px; text-align:center; line-height:1.4; }
.landing-phone-real figcaption a { display:inline-block; max-width:100%; font-size:.75rem; color:#245a37; text-decoration:none; font-weight:600; overflow-wrap:anywhere; }
.landing-phone-real figcaption a:hover { color:#0a7037; text-decoration:underline; }
.landing-obd-device { position:absolute; z-index:3; right:245px; bottom:30px; width:160px; margin:0; filter:drop-shadow(0 12px 10px #163b2926); }
.landing-obd-device img { width:100%; height:auto; object-fit:contain; }
.landing-obd-device figcaption { margin-top:7px; padding:8px 10px; border:1px solid #d4e2d8; border-radius:9px; background:#fff; text-align:center; color:#244c34; font-size:.75rem; font-weight:600; line-height:1.5; overflow-wrap:anywhere; box-shadow:0 3px 10px #173e2812; }
.landing-data-link { position:absolute; z-index:2; right:209px; bottom:180px; width:100px; height:auto; overflow:visible; fill:#1681a4; pointer-events:none; }
.landing-data-arc { fill:none; stroke:#2097a7; stroke-width:2; stroke-dasharray:3 6; stroke-linecap:round; }
.landing-data-disc { fill:#fff; stroke:#bedde1; stroke-width:1; }
.landing-bluetooth-mark { fill:none; stroke:#137b9c; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.welcome-page .landing-visual-caption { font-size:.75rem; line-height:1.5; overflow-wrap:anywhere; }
.welcome-page .story-section-heading { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(240px,.75fr); gap:36px; align-items:end; margin-bottom:30px; }
.welcome-page .story-section-heading h2 { color:#183b2b; font-size:clamp(1.8rem,3.15vw,2.7rem); line-height:1.18; letter-spacing:-.035em; }
.welcome-page .story-section-heading h2 span { color:#08783f; }
.welcome-page .story-section-heading > p { color:#4c6257; font-size:.97rem; line-height:1.7; max-width:44ch; }
.welcome-page .product-control-story { display:block; padding-block:64px 56px; }
.welcome-page .story-control-stage { display:grid; grid-template-columns:minmax(0,1fr) 270px; align-items:start; gap:26px; }
.welcome-page .story-chart-panel { min-width:0; padding:26px; border:1px solid #c9dfd2; border-radius:20px; background:linear-gradient(120deg,#f0faf3 0%,#fff 24%,#fff 83%,#f2faf4 100%); box-shadow:0 18px 46px -25px #155a3b60,inset 0 1px 1px #fff; color:#193d2b; }
.story-chart-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.story-demo-label { display:block; font-size:.75rem; line-height:1.5; color:#51685b; }
.story-chart-heading h3 { font-size:1.45rem; color:#183b2b; margin-top:5px; letter-spacing:-.025em; }
.story-record-mark { flex-shrink:0; padding-left:20px; border-left:1px solid #cfe3d5; font-size:1.35rem; line-height:1.1; font-weight:650; text-align:right; color:#08713d; }
.story-record-mark small { display:block; font-size:.75rem; font-weight:400; margin-top:6px; color:#536a5e; }
.story-chart-controls { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:16px; padding-block:25px 19px; }
.story-select-label { display:grid; gap:7px; font-size:.75rem; font-weight:600; color:#4b6155; flex:1 1 200px; min-width:0; max-width:320px; }
.welcome-page .story-select-label select { min-height:42px; border:1px solid #c3d8c9; padding:9px 34px 9px 12px; border-radius:9px; background-color:#fff; color:#203e2d; font-size:.88rem; font-weight:550; width:100%; box-shadow:inset 0 1px 2px #183b2b06; }
.story-period { flex:0 0 auto; }
.story-period > span { display:block; color:#4b6155; font-size:.75rem; font-weight:600; margin-bottom:7px; }
.story-period > div { display:flex; border:1px solid #c9dfd1; padding:3px; background:#eaf4ed; border-radius:10px; box-shadow:inset 0 1px 2px #1548300b; }
.welcome-page .story-period button { min-height:34px; padding:6px 11px; border:1px solid transparent; border-radius:7px; background:transparent; color:#3e5a49; font-size:.78rem; font-weight:600; white-space:nowrap; }
.welcome-page .story-period button:hover { background:#d8ecde; }
.welcome-page .story-period button[aria-pressed="true"] { color:#fff; background:linear-gradient(#19914f,#086936); border-color:#0d793c; box-shadow:inset 0 1px 0 #70bc8955,0 2px 4px #1f563328; }
.story-chart-legend { display:flex; flex-wrap:wrap; gap:9px 23px; padding-top:4px; font-size:.75rem; color:#304d3d; }
.story-chart-legend > span { display:flex; align-items:center; gap:7px; min-width:0; overflow-wrap:anywhere; }
.story-chart-legend i { display:inline-block; width:19px; height:3px; border-radius:4px; }
.story-cause-narrative { margin:0 0 22px; padding:17px 16px 14px; background:linear-gradient(115deg,#eaf6ed,#fff 58%,#edf7f9); border:1px solid #d2e6d8; border-radius:13px; box-shadow:inset 0 1px 0 #fff; }
.story-cause-heading { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:4px 15px; }
.story-cause-heading h4 { margin:0; font-size:.88rem; color:#285439; font-weight:650; }
.story-cause-heading > span { color:#617966; font-size:.75rem; }
.story-cause-chain { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:0; margin:17px 0 18px; list-style:none; }
.story-cause-chain li { min-width:0; position:relative; padding-right:4px; }
.story-cause-chain li:not(:last-child)::after { content:"→"; position:absolute; right:1px; top:11px; font-size:1rem; color:#8cab96; }
.story-cause-symbol { display:grid; place-items:center; width:38px; height:38px; padding:8px; border:1px solid #c5dccc; border-radius:10px; background:linear-gradient(#fff,#e5f0e8); color:#63866f; box-shadow:inset 0 1px 0 #fff; margin-bottom:9px; transition:background .2s ease,color .2s ease,box-shadow .2s ease; }
.story-cause-symbol svg { display:block; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.story-cause-chain strong { display:block; font-size:.875rem; line-height:1.45; color:#365641; font-weight:600; overflow-wrap:anywhere; }
.story-cause-chain small { display:block; font-size:.75rem; line-height:1.5; margin-top:5px; color:#5f7564; }
.story-cause-narrative[data-stage="observation"] [data-cause-step="air"] .story-cause-symbol,
.story-cause-narrative[data-stage="observation"] [data-cause-step="ecu"] .story-cause-symbol,
.story-cause-narrative[data-stage="check"] [data-cause-step="check"] .story-cause-symbol,
.story-cause-narrative[data-stage="after"] [data-cause-step="after"] .story-cause-symbol { color:#fff; border-color:#0b7e42; background:linear-gradient(#239354,#087039); box-shadow:inset 0 1px 0 #91d9ac70,0 4px 11px #166a3224; }
.story-scenario-controls { display:flex; gap:5px; flex-wrap:wrap; padding-top:13px; border-top:1px solid #d7e7dc; }
.welcome-page .story-scenario-controls button { min-height:35px; padding:7px 10px; font-size:.75rem; font-weight:550; color:#41644d; background:#ffffff9c; border:1px solid #d0e2d5; border-radius:7px; }
.welcome-page .story-scenario-controls button:hover { background:#e1f0e6; }
.welcome-page .story-scenario-controls button[aria-pressed="true"] { color:#075b30; background:#d9efdf; border-color:#82b992; box-shadow:inset 0 1px 0 #fff; }
.welcome-page .story-scenario-copy { color:#48644f; line-height:1.65; font-size:.875rem; margin-top:12px; }
.story-key-primary { background:#00834a; }
.story-key-secondary { background:#198aca; }
.story-main-chart { display:block; width:100%; height:auto; overflow:visible; margin-top:22px; background:#fff; border-radius:8px; }
.story-grid-line { stroke:#dfebe4; stroke-width:1; fill:none; }
.story-grid-zero { stroke:#b9cfbf; stroke-width:1.2; }
.story-axis-label,.story-axis-unit { fill:#52675b; font-family:"Segoe UI",system-ui,sans-serif; font-size:12px; }
.story-series { fill:none; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.story-series-primary { stroke:#00834a; }
.story-series-secondary { stroke:#1689c9; stroke-width:2.6; }
.story-series-fill { fill:#078645; fill-opacity:.065; stroke:none; }
.story-series-marker { fill:#fff; stroke:#00834a; stroke-width:1.8; }
.story-time-marker { stroke:#728b7c; stroke-width:1; stroke-dasharray:4 5; }
.story-chart-range { text-align:right; margin-top:3px; font-size:.75rem; color:#526a5b; }
.story-stat-label { padding-top:19px; border-top:1px solid #deebe2; margin-top:21px; font-size:.75rem; color:#53695c; }
.story-chart-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:12px 0 18px; }
.story-chart-stats > div { padding-inline:18px; border-left:1px solid #cfe1d5; }
.story-chart-stats > div:first-child { padding-left:0; border:0; }
.story-chart-stats dt { font-size:.75rem; color:#52685b; margin-bottom:5px; }
.story-chart-stats dd { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px; margin:0; font-variant-numeric:tabular-nums; font-size:clamp(1.5rem,3.3vw,2.6rem); color:#0b703d; line-height:1.2; font-weight:650; letter-spacing:-.03em; }
.story-chart-stats dd small { font-size:.76rem; color:#567160; font-weight:500; letter-spacing:0; }
.welcome-page .story-chart-explanation { max-width:none; padding:13px 15px; border-left:3px solid #87bea0; background:#f0f7f2; border-radius:0 8px 8px 0; color:#3c5848; font-size:.875rem; line-height:1.65; }
.story-data-details { margin-top:13px; font-size:.75rem; color:#47604f; }
.story-data-details summary { min-height:34px; padding-block:7px; width:fit-content; text-decoration:underline; text-underline-offset:3px; }
.story-table-scroll { max-height:240px; overflow:auto; margin-top:7px; }
.story-table-scroll table { width:100%; border-collapse:collapse; background:#fff; font-size:.76rem; color:#274935; }
.story-table-scroll caption { text-align:left; padding:8px 0; font-size:.75rem; }
.story-table-scroll th,.story-table-scroll td { padding:9px 8px; text-align:left; border-bottom:1px solid #d9e6dd; }
.story-table-scroll th { font-weight:600; background:#eaf4ed; }
.story-app-preview { min-width:0; padding-top:7px; }
.story-app-preview h3 { color:#20452f; font-size:1.8rem; line-height:1.2; letter-spacing:-.025em; }
.welcome-page .story-app-preview > div > p:not(.product-section-label) { margin-top:13px; font-size:.9375rem; line-height:1.65; color:#4c6455; }
.story-phone-pair { display:grid; grid-template-columns:1fr 1fr; gap:11px; align-items:start; margin-top:24px; }
.story-phone-pair figure { min-width:0; margin:0; }
.story-phone-pair figure:nth-child(2) { padding-top:24px; }
.story-phone-pair a { display:block; border:5px solid #274634; border-radius:18px; overflow:hidden; background:#f8faf8; box-shadow:0 10px 22px -12px #103e2b80,0 0 0 1px #98b1a1; transition:transform .2s ease,box-shadow .2s ease; }
.story-phone-pair a:hover { transform:translateY(-3px); box-shadow:0 14px 25px -10px #103e2b70,0 0 0 1px #76a184; }
.story-phone-pair img { width:100%; height:auto; }
.story-phone-pair figcaption { font-size:.75rem; color:#456350; text-align:center; padding-top:9px; line-height:1.5; overflow-wrap:anywhere; }
.welcome-page .story-screen-caption { font-size:.75rem; line-height:1.6; color:#5d7163; text-align:center; margin:14px 0 0; }
.story-export-note { display:flex; align-items:center; gap:13px; padding-block:18px; margin-top:16px; border-top:1px solid #d5e5d9; }
.story-export-note > span { display:grid; place-items:center; flex:0 0 42px; height:48px; color:#08703a; background:linear-gradient(145deg,#fff,#deefdf); border:1px solid #b9d5c1; border-radius:6px 6px 12px 6px; font-size:.75rem; font-weight:700; box-shadow:inset 0 1px 0 #fff,0 4px 9px #234f3010; }
.welcome-page .story-app-preview .story-export-note p { margin:0; font-size:.875rem; color:#4e6858; line-height:1.6; }
.story-export-note strong { font-weight:600; color:#2b4d39; }
.welcome-page .story-app-preview > .btn { display:flex; width:100%; gap:10px; font-size:.78rem; padding:12px; min-height:46px; }
.welcome-page .story-availability-note { margin-top:18px; max-width:90ch; font-size:.75rem; color:#5a6f60; line-height:1.6; }
.story-visually-hidden { position:absolute!important; width:1px; height:1px; padding:0!important; margin:-1px!important; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0!important; }

.welcome-page .product-features { padding-block:12px 64px; }
.story-language-mark { display:flex; align-items:center; justify-self:end; gap:15px; padding-right:20px; }
.story-language-mark strong { font-size:3.7rem; line-height:1; font-weight:650; letter-spacing:-.045em; color:#0c7841; }
.story-language-mark span { color:#53695a; line-height:1.6; font-size:.8rem; }
.story-care-sequence { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; gap:0; padding:0; margin:35px 0 0; }
.story-care-sequence li { position:relative; padding:25px 24px 6px 0; border-top:2px solid #d0e4d5; }
.story-care-sequence li::before { content:""; position:absolute; top:-6px; left:0; width:10px; height:10px; border-radius:50%; background:#0a8145; box-shadow:0 0 0 5px #f0f7f1; }
.story-sequence-number { position:absolute; right:27px; top:22px; font-size:.78rem; color:#647d6c; font-variant-numeric:tabular-nums; }
.story-sequence-symbol { width:51px; height:51px; padding:8px; border-radius:13px; background:linear-gradient(135deg,#f8fff9,#deefdf); border:1px solid #d5e7d9; box-shadow:inset 0 1px 0 #fff,0 5px 10px #2c643113; color:#188247; margin-bottom:18px; }
.story-sequence-symbol svg { display:block; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linejoin:round; stroke-linecap:round; }
.story-care-sequence h3 { font-size:1.1rem; color:#1e422d; margin-bottom:9px; }
.story-care-sequence p { font-size:.9375rem; line-height:1.65; color:#506758; max-width:26ch; }
.story-sequence-detail,.story-care-sequence a { display:block; color:#24663e; margin-top:17px; font-size:.75rem; line-height:1.5; }
.story-care-sequence a { width:fit-content; min-height:32px; text-decoration:underline; text-decoration-color:#93b49e; text-underline-offset:4px; }
/* Each step keeps its native link; its hit area also includes the icon and title. */
.story-care-sequence a::after { content:""; position:absolute; inset:0; z-index:1; border-radius:10px; }
.story-care-sequence li:focus-within { border-top-color:#278250; }
.story-care-sequence a:focus-visible { outline:0; }
.story-care-sequence a:focus-visible::after { outline:3px solid #278250; outline-offset:4px; box-shadow:inset 0 1px 0 #fff; }
@media (hover:hover) {
  .story-care-sequence li:hover { border-top-color:#278250; }
  .story-care-sequence li:hover a { color:#086d39; text-decoration-color:currentColor; }
  .story-care-sequence a:hover::after { box-shadow:inset 0 1px 0 #fff,inset 0 0 0 1px #bcd9c6,0 8px 18px -14px #1b59384d; }
}

/* Fit the opening composition by removing empty space, not shrinking its text. */
@media(min-width:801px) {
  .welcome-page { padding-top:8px; }
  .welcome-page .welcome-hero { min-height:0; padding-block:4px 14px; }
  .welcome-page .hero-copy { padding-block:0; }
  .welcome-page .hero-kicker { margin-bottom:17px; }
  .welcome-page .hero-description { margin-top:18px; }
  .welcome-page .hero-context { margin-top:13px; }
  .welcome-page .hero-actions { margin-top:19px; }
  .welcome-page .hero-footnote { margin-top:12px; font-size:.75rem; }
  .welcome-page .landing-visual { min-height:480px; }
  .welcome-page .landing-phone-real { width:192px; top:4px; }
  .welcome-page .landing-feature-strip { padding-block:15px 17px; }
  .welcome-page .product-jump-links { padding-block:12px; gap:10px 22px; }
}

.welcome-page .product-web { padding-block:10px 64px; }
.story-web-composition { display:grid; grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr); gap:0; border:1px solid #caddd0; border-radius:20px; overflow:hidden; box-shadow:0 13px 37px -25px #1c613e65,inset 0 1px 0 #fff; }
.story-machine-overview { padding:28px; background:linear-gradient(132deg,#e8f4e9,#f4fbf4 75%); color:#1b402b; }
.story-view-name { font-size:.8rem; font-weight:650; color:#176e3c; display:flex; align-items:center; flex-wrap:wrap; gap:7px 12px; margin-bottom:18px; }
.story-view-name span { font-size:.75rem; font-weight:400; color:#587360; }
.story-machine-overview h3 { font-size:1.65rem; line-height:1.23; }
.story-machine-overview > p:not(.story-view-name),.story-trip-detail > p { color:#4e6857; font-size:.9375rem; line-height:1.7; }
.story-system-map { display:flex; flex-wrap:wrap; gap:8px; margin-block:24px; }
.story-system-map > span { display:flex; align-items:center; gap:6px; border:1px solid #c4dfcb; padding:8px 10px; border-radius:9px; font-size:.75rem; color:#305c3d; background:#ffffffc9; box-shadow:inset 0 1px 0 #fff; }
.story-system-map .icon { width:16px; height:16px; }
.story-web-composition .text-link { display:inline-flex; margin-top:21px; font-size:.82rem; }
.story-trip-detail { min-width:0; padding:28px; background:linear-gradient(125deg,#fff 80%,#f0f9f3); }
.story-trip-heading { display:flex; gap:14px; align-items:start; justify-content:space-between; }
.story-trip-heading h3 { font-size:1.25rem; line-height:1.4; max-width:26ch; }
.story-axis-badge { color:#16804a; font-size:1.05rem; line-height:1.3; font-weight:650; flex-shrink:0; text-align:right; }
.story-axis-badge small { display:block; font-size:.75rem; font-weight:400; margin-top:5px; color:#587561; }
.story-trip-illustration { margin:22px 0 18px; }
.story-trip-illustration svg { width:100%; height:auto; display:block; background:#fff; border:1px solid #e2ede5; border-radius:10px; }
.story-trip-illustration figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; gap:5px 12px; margin-top:8px; color:#5b7263; font-size:.75rem; line-height:1.5; }
.story-trip-capabilities { display:flex; flex-wrap:wrap; gap:7px 15px; margin-bottom:14px; color:#277443; font-size:.75rem; font-weight:550; }

.welcome-page .product-platforms { padding:36px; border:1px solid #ccdfd0; background:linear-gradient(120deg,#e9f5ea,#fff 42%,#f5fbf5 75%,#e7f3e8); box-shadow:inset 0 1px 1px #fff,0 18px 44px -32px #1c5f3780; }
.welcome-page .product-platforms .story-section-heading h2 { font-size:clamp(1.65rem,2.8vw,2.25rem); }
.welcome-page .product-platforms .story-section-heading > p { font-size:.9375rem; }
.story-platform-comparison { display:grid; grid-template-columns:1fr 1fr; gap:30px; border-block:1px solid #cddfd1; padding-block:28px; }
.story-platform-comparison article { min-width:0; }
.story-cloud-platform { padding-left:30px; border-left:1px solid #cddfd1; }
.story-platform-heading { display:flex; align-items:center; gap:15px; margin-bottom:22px; }
.story-device-symbol { width:46px; height:48px; color:#20864c; flex-shrink:0; }
.story-device-symbol svg { width:100%; height:100%; fill:#f8fdfa; stroke:currentColor; stroke-width:1.6; stroke-linejoin:round; }
.story-platform-eyebrow { color:#267244; font-size:.75rem; font-weight:600; }
.story-platform-heading h3 { font-size:1.17rem; color:#21492e; line-height:1.3; margin-top:5px; }
.story-platform-comparison ul { list-style:none; display:grid; gap:12px; padding:0; margin:0 0 21px; }
.story-platform-comparison li { color:#385c43; padding-left:23px; position:relative; line-height:1.6; font-size:.9375rem; }
.story-platform-comparison li::before { content:"✓"; position:absolute; left:0; top:0; color:#0b8243; font-weight:650; }
.story-platform-comparison .text-link { font-size:.79rem; }
.story-platform-proposal { padding-left:13px; border-left:2px solid #b4d3be; color:#526d5a; font-size:.875rem; line-height:1.65; margin-bottom:18px; }
.story-family-strip { padding-top:30px; display:grid; grid-template-columns:1fr; gap:24px; }
.story-family-copy { display:grid; grid-template-columns:1fr 1fr; gap:10px 30px; }
.story-family-copy .product-section-label { grid-column:1/-1; margin:0; font-size:.8rem; }
.story-family-copy h3 { font-size:1.4rem; line-height:1.35; color:#1c472d; }
.story-family-copy > p:not(.product-section-label) { font-size:.9375rem; line-height:1.7; color:#4b6652; }
.story-qr-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; padding:0; gap:23px; }
.story-qr-steps li { position:relative; padding-left:39px; min-width:0; }
.story-qr-steps li > span { position:absolute; top:0; left:0; display:grid; place-items:center; width:27px; height:27px; border-radius:50%; font-size:.78rem; font-weight:650; color:#126a36; background:linear-gradient(#fff,#dbeddf); border:1px solid #c0d9c5; box-shadow:inset 0 1px 0 #fff; }
.story-qr-steps strong { display:block; font-size:.875rem; color:#31553c; line-height:1.55; font-weight:600; }
.story-qr-steps small { display:block; font-size:.75rem; color:#5a705f; margin-top:7px; line-height:1.5; }
.story-family-strip > .text-link { width:fit-content; font-size:.8rem; }
.welcome-page .product-platform-footer { margin-top:24px; padding-top:17px; }
.welcome-page .product-platform-footer p { max-width:90ch; color:#536c5a; font-size:.875rem; }

/* Explicit ink/background pairing fixes inherited white text on the pale resource panel. */
.welcome-page .product-resource { color:#1b402a; background:linear-gradient(122deg,#e5f5e5 0%,#f9fff8 45%,#edf9eb 100%); border:1px solid #c5ddc7; box-shadow:inset 0 1px 1px #fff,0 16px 38px -28px #1b623a70; }
.welcome-page .product-resource h2,.welcome-page .product-resource h3 { color:#19432a; }
.welcome-page .product-resource p { color:#46654b; }
.welcome-page .product-resource-detail { padding:25px; align-self:center; border-radius:14px; background:#ffffffcf; border:1px solid #d3e6d4; box-shadow:inset 0 1px 0 #fff,0 6px 22px -17px #17542c50; }
.welcome-page .product-resource-detail .btn { color:#175931; background:linear-gradient(#fff,#eef8ee); border-color:#b6d4bf; }
.welcome-page .product-resource-detail .btn:hover { color:#0d4523; background:#e1f0e3; }
.story-resource-measures { display:flex; align-items:center; gap:12px; padding-block:17px; margin:17px 0 0; border-block:1px solid #d2e4d1; }
.story-resource-measures > div { flex:1; min-width:0; overflow-wrap:anywhere; }
.story-resource-measures strong { display:block; font-size:1.25rem; line-height:1.3; color:#237543; }
.story-resource-measures span { display:block; margin-top:5px; color:#5a725e; font-size:.75rem; line-height:1.45; }
.story-resource-measures > b { font-weight:400; font-size:1.1rem; color:#779a7c; }

/* Public presentation entry; same PDF is available from plans and the fleet. */
.story-fleet-presentation { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:34px; align-items:center; margin-top:36px; padding:28px; border:1px solid #c8dfce; border-radius:18px; background:linear-gradient(112deg,#e7f4e9,#fff 47%,#f7fcf7 75%,#eaf6ec); box-shadow:inset 0 1px 1px #fff,0 18px 40px -28px #235a3680; scroll-margin-top:28px; }
.story-fleet-cover { display:block; position:relative; min-width:0; aspect-ratio:16/9; border:1px solid #c1d6c8; border-radius:11px; background:#eaf3ec; overflow:hidden; box-shadow:0 10px 25px -15px #234b3480,inset 0 1px 0 #fff; }
.story-fleet-cover img { display:block; width:100%; height:100%; object-fit:contain; }
.story-fleet-preview { min-width:0; margin:0; }
.story-cover-label { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:5px 12px; padding:10px 2px 0; color:#365b42; font-size:.75rem; font-weight:600; line-height:1.5; }
.story-cover-label > span { color:#556d5e; font-weight:400; }
.story-fleet-presentation-copy { min-width:0; }
.story-fleet-presentation-copy .product-section-label { font-size:.75rem; margin-bottom:9px; }
.welcome-page .story-fleet-presentation h2 { font-size:clamp(1.5rem,2.4vw,2rem); line-height:1.22; color:#17422b; letter-spacing:-.025em; }
.story-fleet-presentation .story-deck-summary { color:#216d40; font-size:.9375rem; line-height:1.6; font-weight:600; margin-top:12px; }
.story-fleet-presentation-copy > p:not([class]) { color:#4e6958; font-size:.875rem; line-height:1.7; margin-top:13px; }
.story-deck-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.story-deck-actions .btn { min-width:0; max-width:100%; min-height:44px; padding:10px 14px; font-size:.8125rem; white-space:normal; overflow-wrap:anywhere; }
.story-fleet-presentation a:focus-visible,.fleet-presentation-mini a:focus-visible { outline:3px solid #187849; outline-offset:4px; }
.fleet-presentation-mini { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px 22px; padding:18px 22px; border:1px solid #cddfd2; border-radius:12px; background:linear-gradient(112deg,#edf7ef,#fff 45%,#f4faf5); box-shadow:inset 0 1px 0 #fff; margin-block:18px 24px; color:#294e35; }
.fleet-presentation-mini > div:first-child { display:flex; gap:14px; align-items:center; min-width:0; }
.fleet-presentation-mini > div:first-child > div { min-width:0; overflow-wrap:anywhere; }
.fleet-presentation-mini .fleet-pdf-mark { flex:0 0 41px; display:grid; place-items:center; width:41px; height:47px; border:1px solid #b8d5c1; border-radius:7px 7px 11px 7px; background:linear-gradient(#fff,#dfefe3); font-size:.75rem; color:#176837; font-weight:700; box-shadow:inset 0 1px 0 #fff; }
.fleet-presentation-mini strong { display:block; color:#255637; font-size:.9375rem; line-height:1.45; }
.fleet-presentation-mini p { font-size:.8125rem; line-height:1.6; color:#5b7161; margin-top:4px; }
.fleet-presentation-mini .fleet-presentation-links { display:flex; flex-wrap:wrap; gap:4px 18px; align-items:center; min-width:0; max-width:100%; }
.fleet-presentation-mini a { display:inline-flex; align-items:center; min-height:44px; max-width:100%; overflow-wrap:anywhere; color:#176b39; font-size:.8125rem; font-weight:600; line-height:1.5; }
@media (max-width:950px) { .story-fleet-presentation { gap:24px; padding:23px; } .story-deck-actions .btn { width:100%; } }
@media (max-width:700px) { .story-fleet-presentation { grid-template-columns:minmax(0,1fr); padding:21px; gap:24px; } .story-deck-actions .btn { width:auto; } .fleet-presentation-mini { align-items:flex-start; flex-direction:column; gap:14px; padding:18px; } }
@media (max-width:420px) { .story-fleet-presentation { padding:17px; } .story-deck-actions { flex-direction:column; } .story-deck-actions .btn { width:100%; } .story-cover-label { padding:9px 1px 0; } }

@media (max-width:1120px) {
  .welcome-page .story-control-stage { grid-template-columns:minmax(0,1fr) 225px; gap:20px; }
  .welcome-page .story-chart-panel { padding:21px; }
  .story-chart-controls { gap:12px; }
  .story-select-label { max-width:none; }
  .story-phone-pair { gap:9px; }
  .story-phone-pair a { border-width:4px; border-radius:15px; }
  .story-app-preview h3 { font-size:1.6rem; }
  .story-trip-detail,.story-machine-overview { padding:24px; }
  .story-axis-badge { display:none; }
  .story-cause-chain { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 24px; }
  .story-cause-chain li:nth-child(2)::after { content:none; }
}
@media (max-width:900px) {
  .welcome-page .story-control-stage { grid-template-columns:1fr; }
  .story-app-preview { display:grid; grid-template-columns:1fr 210px; column-gap:30px; align-items:start; padding:24px 0 0; }
  .story-app-preview h3 br { display:none; }
  .story-phone-pair { grid-column:2; grid-row:1/5; margin:0; }
  .welcome-page .story-screen-caption { grid-column:2; grid-row:5; }
  .story-export-note { grid-column:1; margin-top:18px; }
  .welcome-page .story-app-preview > .btn { grid-column:1; width:fit-content; }
  .welcome-page .story-section-heading { grid-template-columns:1.15fr 1fr; gap:25px; }
  .story-care-sequence { grid-template-columns:1fr 1fr; row-gap:28px; }
  .story-care-sequence p { max-width:35ch; }
  .story-web-composition { grid-template-columns:minmax(210px,.75fr) minmax(0,1.25fr); }
  .story-machine-overview h3 { font-size:1.35rem; }
  .story-trip-heading h3 { font-size:1.15rem; }
  .story-platform-comparison { gap:23px; }
  .story-cloud-platform { padding-left:23px; }
  .welcome-page .product-platforms { padding:28px; }
  .story-family-copy { grid-template-columns:1fr; gap:13px; }
  .story-qr-steps { gap:15px; }
}
@media (max-width:800px) {
  .welcome-page .landing-phone-real { width:178px; top:8px; right:15px; }
  .landing-obd-device { right:225px; bottom:40px; width:150px; }
  .landing-data-link { right:201px; bottom:181px; width:86px; }
}
@media (max-width:650px) {
  .welcome-page .product-control-story { padding-block:38px 44px; }
  .welcome-page .story-section-heading { grid-template-columns:1fr; gap:17px; margin-bottom:24px; }
  .welcome-page .story-section-heading h2 { font-size:1.85rem; }
  .welcome-page .story-section-heading > p { font-size:.9375rem; max-width:53ch; }
  .welcome-page .story-chart-panel { padding:18px 14px; border-radius:15px; }
  .story-chart-heading h3 { font-size:1.16rem; }
  .story-record-mark { font-size:1.08rem; padding-left:12px; }
  .story-demo-label { font-size:.75rem; }
  .story-chart-controls { padding-top:20px; }
  .story-select-label { flex-basis:100%; }
  .story-period { display:flex; flex-wrap:wrap; width:100%; align-items:center; justify-content:space-between; gap:12px; }
  .story-period > span { margin:0; }
  .welcome-page .story-period button { padding:6px 13px; min-height:36px; }
  .story-chart-legend { font-size:.75rem; gap:8px 15px; }
  .story-cause-narrative { padding:15px 12px 12px; }
  .story-cause-heading h4 { font-size:.8rem; }
  .story-cause-chain { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 17px; }
  .story-cause-chain li { display:grid; grid-template-columns:30px minmax(0,1fr); align-items:start; column-gap:8px; padding-right:0; }
  .story-cause-symbol { width:30px; height:30px; padding:6px; border-radius:8px; margin:0; grid-row:1/3; }
  .story-cause-chain strong { font-size:.875rem; }
  .story-cause-chain small { font-size:.75rem; grid-column:2; margin-top:3px; }
  .story-cause-chain li:not(:last-child)::after { content:none; }
  .story-scenario-controls { gap:5px; }
  .welcome-page .story-scenario-controls button { font-size:.75rem; padding:6px 7px; min-height:35px; }
  .welcome-page .story-scenario-copy { font-size:.875rem; }
  .story-main-chart { margin-top:16px; min-height:185px; }
  .story-chart-range { font-size:.75rem; }
  .story-stat-label { font-size:.75rem; margin-top:16px; padding-top:15px; }
  .story-chart-stats > div { padding-inline:11px; }
  .story-chart-stats dd { font-size:1.65rem; }
  .story-chart-stats dd small { font-size:.75rem; }
  .story-chart-stats dt { font-size:.75rem; }
  .welcome-page .story-chart-explanation { font-size:.875rem; padding:11px; }
  .story-app-preview { grid-template-columns:minmax(0,1fr) 145px; column-gap:17px; padding-top:17px; }
  .story-app-preview h3 { font-size:1.35rem; }
  .story-app-preview .product-section-label { font-size:.75rem; }
  .welcome-page .story-app-preview > div > p:not(.product-section-label) { font-size:.875rem; }
  .story-phone-pair { gap:7px; grid-row:1/3; }
  .story-phone-pair a { border-width:3px; border-radius:10px; }
  .story-phone-pair figcaption { font-size:.75rem; }
  .story-phone-pair figure:nth-child(2) { padding-top:19px; }
  .welcome-page .story-screen-caption { font-size:.75rem; grid-row:3; }
  .story-export-note { grid-row:2/4; flex-direction:column; align-items:start; gap:9px; padding-top:13px; margin-top:13px; }
  .story-export-note > span { display:none; }
  .welcome-page .story-app-preview > .btn { grid-column:1/-1; margin-top:18px; width:100%; }
  .welcome-page .story-availability-note { font-size:.75rem; }
  .welcome-page .product-features { padding-block:12px 44px; }
  .story-language-mark { justify-self:start; gap:11px; padding:0; }
  .story-language-mark strong { font-size:2.5rem; }
  .story-language-mark span { font-size:.75rem; }
  .story-language-mark span br { display:none; }
  .story-care-sequence { margin-top:25px; }
  .story-care-sequence li { padding-right:15px; }
  .story-sequence-number { right:18px; }
  .story-care-sequence h3 { font-size:1rem; }
  .story-care-sequence p { font-size:.875rem; }
  .story-sequence-detail,.story-care-sequence a { font-size:.75rem; margin-top:12px; }
  .welcome-page .product-web { padding-bottom:44px; }
  .story-web-composition { grid-template-columns:1fr; }
  .story-machine-overview,.story-trip-detail { padding:23px; }
  .story-machine-overview h3 br { display:none; }
  .story-machine-overview h3 { font-size:1.45rem; }
  .story-system-map { margin-block:18px; }
  .story-trip-detail { border-top:1px solid #d1e3d5; }
  .story-trip-illustration { margin-top:18px; }
  .story-trip-illustration figcaption { font-size:.75rem; }
  .welcome-page .product-platforms { padding:23px; }
  .welcome-page .product-platforms .story-section-heading h2 { font-size:1.65rem; }
  .story-platform-comparison { grid-template-columns:1fr; gap:25px; }
  .story-cloud-platform { border-left:0; padding-left:0; border-top:1px solid #cddfd1; padding-top:25px; }
  .story-platform-heading h3 { font-size:1.1rem; }
  .story-family-copy h3 { font-size:1.25rem; }
  .story-qr-steps { grid-template-columns:1fr; gap:21px; }
  .story-qr-steps strong br { display:none; }
  .story-qr-steps small { margin-top:3px; }
  .welcome-page .product-resource { padding:25px 23px; }
  .welcome-page .product-resource-detail { padding:19px; }
  .welcome-page .product-resource h2 { font-size:1.65rem; }
  .welcome-page .product-resource p { font-size:.9375rem; }
  .story-resource-measures { gap:8px; }
  .story-resource-measures strong { font-size:1.07rem; }
}
@media (max-width:520px) {
  .story-cause-chain { grid-template-columns:minmax(0,1fr); gap:16px; }
  .story-cause-chain strong br { display:none; }
  .story-scenario-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .welcome-page .story-scenario-controls button { white-space:normal; line-height:1.45; min-height:40px; }
  .story-scenario-controls button:last-child { grid-column:1/-1; }
  .story-app-preview { grid-template-columns:minmax(0,1fr); row-gap:16px; }
  .story-phone-pair { grid-column:1; grid-row:auto; width:100%; max-width:280px; justify-self:center; }
  .welcome-page .story-screen-caption { grid-column:1; grid-row:auto; margin:0; }
  .story-export-note { grid-column:1; grid-row:auto; margin:0; }
  .welcome-page .story-app-preview > .btn { grid-row:auto; margin:0; }
  .welcome-page .landing-phone-real { width:142px; top:4px; right:7px; padding:21px 5px 7px; }
  .landing-phone-real figcaption { padding-top:6px; }
  .landing-phone-real figcaption a { font-size:.75rem; }
  .landing-real-screen-link { border-radius:9px; }
  .landing-obd-device { right:170px; bottom:38px; width:135px; }
  .landing-data-link { right:154px; bottom:170px; width:68px; }
  .landing-obd-device figcaption { font-size:.75rem; }
}
@media (prefers-reduced-motion:reduce) {
  .story-cause-symbol { transition:none; }
  .story-phone-pair a { transition:none; }
  .story-phone-pair a:hover { transform:none; }
}

/* One centered sequence: observe, act, build, explore, learn, connect. */
.story-lower-content { width:100%; max-width:1160px; margin-inline:auto; }
.story-lower-content > section { margin:0; padding-block:64px; border-top:1px solid #d5e6db; }
.story-lower-content h2 { color:#183e2a; font-size:clamp(1.75rem,3vw,2.6rem); line-height:1.2; letter-spacing:-.035em; }
.story-lower-content h3 { color:#1a5b38; font-size:clamp(1.3rem,2vw,1.75rem); line-height:1.3; letter-spacing:-.02em; }
.story-lower-content p { color:#4e6859; font-size:.9375rem; line-height:1.75; }
.story-lower-content .btn { white-space:normal; min-height:46px; font-size:.875rem; line-height:1.45; }
.story-world-heading { max-width:810px; margin:0 auto 35px; text-align:center; }
.story-world-heading h2 { margin:13px auto 18px; }
.story-world-heading > p:last-child { max-width:62ch; margin-inline:auto; }
.story-yard-intro { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr); align-items:center; gap:38px; }
.story-lower-content .product-world-visual { min-width:0; margin:0; overflow:hidden; border:1px solid #cce2d3; border-radius:16px; background:#fff; box-shadow:inset 0 1px 0 #fff,0 15px 30px -24px #1a6b3977; }
.story-lower-content .product-world-visual img { width:100%; height:auto; aspect-ratio:1672/941; object-fit:cover; }
.story-lower-content .product-world-visual figcaption { padding:13px 17px; background:linear-gradient(120deg,#fff,#f0f8f2); color:#536c5d; font-size:.75rem; line-height:1.65; border-top:1px solid #dbeadf; }
.story-chapter { display:block; color:#49725a; text-transform:uppercase; font-size:.75rem; font-weight:650; letter-spacing:.08em; margin-bottom:12px; }
.story-yard-guide { min-width:0; }
.story-yard-guide p { margin:18px 0; font-size:.875rem; }
.story-yard-guide small { display:block; color:#586f61; font-size:.75rem; line-height:1.65; margin-top:12px; }
.story-vitality-key { list-style:none; margin:20px 0 0; padding:0; display:grid; gap:9px; }
.story-vitality-key li { display:flex; align-items:center; gap:10px; color:#365c43; font-size:.875rem; }
.story-vitality-key i { display:block; width:10px; height:10px; border:1px solid #557c5066; border-radius:50%; box-shadow:inset 0 1px 2px #ffffffa6; }
.story-vitality-key .is-flowering { background:#309d56; }
.story-vitality-key .is-steady { background:#8bb97e; }
.story-vitality-key .is-fading { background:#bc9955; }
.story-world-care,.story-world-game { margin-top:52px; padding-top:36px; border-top:1px solid #d8e7dd; }
.story-world-section-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:50px; align-items:start; }
.story-world-section-intro .story-chapter { grid-column:1/-1; }
.story-world-section-intro p { margin:0; }
.story-care-milestones { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; list-style:none; margin:28px 0 0; padding:0; }
.story-care-milestones li { display:grid; grid-template-columns:38px minmax(0,1fr); column-gap:12px; align-items:start; }
.story-care-milestones li > span { display:grid; place-items:center; width:36px; height:36px; border:1px solid #bfddc9; border-radius:50%; background:linear-gradient(#fff,#dfefe4); color:#227344; font-size:.875rem; box-shadow:inset 0 1px 0 #fff; grid-row:1/3; }
.story-care-milestones strong { color:#295b3b; font-size:.9375rem; line-height:1.5; }
.story-care-milestones p { margin-top:8px; font-size:.8125rem; line-height:1.65; }
.story-upgrade-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin:28px 0 18px; padding:26px; border:1px solid #d0e3d7; border-radius:15px; background:linear-gradient(105deg,#eaf6ed,#fff 40%,#fff 68%,#eef8f1); box-shadow:inset 0 1px 0 #fff; }
.story-upgrade-groups article { min-width:0; padding-inline:25px; border-left:1px solid #d2e5d8; }
.story-upgrade-groups article:first-child { padding-left:0; border-left:0; }
.story-upgrade-groups article:last-child { padding-right:0; }
.story-upgrade-groups svg { width:42px; height:42px; fill:none; stroke:#3b8956; stroke-width:1.7; stroke-linejoin:round; stroke-linecap:round; }
.story-upgrade-groups h4 { margin:9px 0 17px; color:#255d3a; font-size:1rem; }
.story-upgrade-groups ol { list-style:none; padding:0; margin:0; display:grid; gap:13px; }
.story-upgrade-groups li { display:flex; gap:10px; align-items:baseline; color:#3e5d49; font-size:.875rem; line-height:1.6; }
.story-upgrade-groups li > span { font-size:.75rem; color:#5c7d65; font-variant-numeric:tabular-nums; }
.story-lower-content .story-world-footnote { color:#5a7162; font-size:.75rem; line-height:1.7; }
.story-car-free-day { display:flex; gap:24px; align-items:start; padding:27px 30px; margin-top:32px; border-radius:14px; background:#f0f7f2; border:1px solid #d6e7dc; }
.story-walk-icon { flex:0 0 44px; }
.story-walk-icon svg { width:44px; height:44px; fill:none; stroke:#4b8d60; stroke-width:1.8; stroke-linejoin:round; stroke-linecap:round; }
.story-car-free-day h3 { font-size:1.18rem; }
.story-car-free-day p { margin:11px 0; font-size:.875rem; }
.story-car-free-day small { color:#556e5e; font-size:.75rem; line-height:1.7; }
.story-city-transition { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr); align-items:center; gap:46px; margin-top:48px; }
.story-city-transition p { margin-block:17px 22px; }
.story-lower-content .product-knowledge { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:45px; background:none; }
.story-lower-content .product-knowledge h2 { margin:13px 0 20px; }
.story-lower-content .product-knowledge p { font-size:.9375rem; line-height:1.75; }
.story-lower-content .product-knowledge-detail { padding:28px; border-radius:15px; }
.story-lower-content .product-knowledge-detail h3 { font-size:1.4rem; }
.story-lower-content .product-knowledge-detail:before { font-size:.8125rem; }
.story-lower-content .product-roadmap { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px 46px; }
.story-lower-content .product-roadmap h2 { font-size:1.8rem; }
.story-lower-content .product-roadmap ul { align-self:center; }
.story-lower-content .product-roadmap li a { padding-block:16px; }
.story-lower-content .product-support { grid-column:1/-1; margin:0; padding:25px 28px; box-shadow:inset 0 1px 0 #fff; }
.story-lower-content .product-support h3 { font-size:1.35rem; }
.story-lower-content .product-support p { max-width:85ch; margin:10px 0 16px; }
.story-lower-content .product-connection-grid { grid-template-columns:minmax(0,1fr) 225px; gap:60px; }
.story-lower-content .product-connection-grid h2 { margin-top:13px; }
.story-lower-content .care-path { gap:23px; }
.story-lower-content .care-path li { min-width:0; }
.story-lower-content .care-path li div > span { font-size:.8125rem; line-height:1.6; }
.story-lower-content .product-connection-screen { margin:0; transform:none; }
.story-lower-content .product-connection-screen figcaption { font-size:.75rem; }
@media(max-width:900px) {
  .story-yard-intro { grid-template-columns:minmax(0,1.25fr) minmax(230px,1fr); gap:27px; }
  .story-world-section-intro { column-gap:28px; }
  .story-care-milestones { gap:20px; }
  .story-upgrade-groups { padding:21px; }
  .story-upgrade-groups article { padding-inline:18px; }
  .story-city-transition { gap:29px; }
  .story-lower-content .product-connection-grid { grid-template-columns:minmax(0,1fr) 200px; gap:35px; }
}
@media(max-width:700px) {
  .story-lower-content > section { padding-block:42px; }
  .story-world-heading { text-align:left; margin-bottom:25px; }
  .story-world-heading h2 br { display:none; }
  .story-yard-intro,.story-city-transition,.story-lower-content .product-knowledge,.story-lower-content .product-roadmap { grid-template-columns:minmax(0,1fr); gap:25px; }
  .story-yard-guide h3 br { display:none; }
  .story-vitality-key { display:flex; flex-wrap:wrap; gap:10px 19px; }
  .story-vitality-key li { font-size:.8125rem; }
  .story-world-care,.story-world-game { margin-top:35px; padding-top:28px; }
  .story-world-section-intro { grid-template-columns:minmax(0,1fr); gap:0; }
  .story-world-section-intro p { margin-top:13px; }
  .story-care-milestones { grid-template-columns:minmax(0,1fr); gap:20px; }
  .story-care-milestones strong br { display:none; }
  .story-care-milestones p { margin-top:4px; }
  .story-upgrade-groups { grid-template-columns:minmax(0,1fr); padding:4px 21px; }
  .story-upgrade-groups article,.story-upgrade-groups article:first-child,.story-upgrade-groups article:last-child { display:grid; grid-template-columns:45px minmax(0,1fr); column-gap:17px; border-left:0; border-top:1px solid #d2e5d8; padding:21px 0; }
  .story-upgrade-groups article:first-child { border-top:0; }
  .story-upgrade-groups svg { grid-row:1/3; }
  .story-upgrade-groups h4 { margin:0 0 12px; }
  .story-upgrade-groups ol { gap:8px; }
  .story-car-free-day { padding:21px; gap:15px; }
  .story-walk-icon { flex-basis:32px; }
  .story-walk-icon svg { width:32px; height:38px; }
  .story-city-transition { margin-top:35px; }
  .story-city-transition .product-world-visual { grid-row:1; }
  .story-lower-content .product-knowledge-detail { padding:23px; }
  .story-lower-content .product-support { padding:23px; }
  .story-lower-content .product-connection-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .story-lower-content .product-connection-screen { width:215px; justify-self:center; }
  .story-lower-content .care-path { grid-template-columns:minmax(0,1fr); gap:20px; }
}
@media(max-width:360px) {
  .landing-obd-device { right:157px; width:115px; }
  .landing-data-link { right:150px; width:58px; bottom:162px; }
  .story-car-free-day { padding:18px; flex-direction:column; gap:10px; }
}

/* Offline capabilities: the same pearl/emerald materials as the product. */
.welcome-page .story-offline-assistant { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(24px,4vw,60px); margin:0 0 30px; padding:clamp(22px,3vw,38px); border-radius:24px; background:radial-gradient(ellipse at 0 0,#d7f4e2,transparent 65%),linear-gradient(135deg,#f4fff8,#fff 62%,#edf9f3); box-shadow:inset 0 2px 0 #fff,0 7px 20px -15px #18513688; }
.story-assistant-copy,.story-offline-capabilities { min-width:0; }
.story-assistant-badge { display:inline-flex; align-items:center; gap:8px; padding:8px 13px; color:#12643b; background:#fff; border-radius:50px; font-size:.78rem; font-weight:650; box-shadow:inset 0 -1px 2px #b7d9c6; }
.story-assistant-badge span { color:#008b4b; }
.story-assistant-copy h3 { font-size:clamp(1.7rem,2.5vw,2.45rem); line-height:1.18; letter-spacing:-.025em; color:#153e2d; margin:23px 0 18px; text-wrap:balance; }
.story-assistant-copy > p { color:#365e4a; line-height:1.75; font-size:.96rem; max-width:50ch; }
.story-assistant-copy .text-link { display:inline-flex; margin-top:22px; }
.story-offline-heading { display:flex; align-items:center; gap:18px; margin-bottom:15px; }
.story-offline-heading img { width:72px; height:72px; object-fit:contain; flex:0 0 auto; }
.story-offline-heading h4 { font-size:1.18rem; line-height:1.45; color:#1d4833; }
.story-offline-capabilities dl { margin:0; }
.story-offline-capabilities dl > div { display:grid; grid-template-columns:100px minmax(0,1fr); gap:16px; padding:16px 0; border-top:1px solid #c9e0d1; }
.story-offline-capabilities dt { color:#116840; font-size:.9rem; font-weight:700; }
.story-offline-capabilities dd { margin:0; font-size:.88rem; line-height:1.6; color:#355644; }
.story-offline-capabilities .story-offline-network { margin-top:14px; color:#486353; font-size:.8rem; line-height:1.65; }
@media(max-width:760px) {
  .welcome-page .story-offline-assistant { grid-template-columns:minmax(0,1fr); gap:30px; }
}
@media(max-width:400px) {
  .story-offline-capabilities dl > div { grid-template-columns:minmax(0,1fr); gap:6px; }
  .story-offline-heading { gap:10px; }
  .story-offline-heading img { width:56px; height:56px; }
}

/* Approved original glossy icons: decorative, with text labels kept outside. */
.welcome-page .story-sequence-symbol.is-glossy,
.welcome-page .audience-owner .audience-icon.is-glossy {
  width:80px; height:80px; padding:0; border:0; border-radius:0;
  background:none; box-shadow:none; flex:0 0 80px;
}
.welcome-page .story-sequence-symbol.is-glossy img,
.welcome-page .audience-owner .audience-icon.is-glossy img {
  display:block; width:100%; height:100%; object-fit:contain;
}
.welcome-page .audience-owner > div { min-width:0; }
@media(max-width:650px) {
  .welcome-page .story-sequence-symbol.is-glossy,
  .welcome-page .audience-owner .audience-icon.is-glossy {
    width:56px; height:56px; flex-basis:56px;
  }
  .welcome-page .story-sequence-symbol.is-glossy { margin-bottom:14px; }
}
