/* Click-through chapters with one distinct editorial scene per chapter. */
.sam-story-section{padding:24px 0 60px}
.sam-story-header{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:26px}
.sam-story-header .page-heading{font-size:clamp(2.6rem,4.7vw,4.3rem);line-height:1.1;margin:13px 0 0}
.sam-story-header>p{font-size:1.0625rem;line-height:1.7;margin:0;color:var(--muted)}
.sam-story{--sam-slide-shift:24px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:14px;overflow:hidden}
.sam-story[data-sam-direction="back"]{--sam-slide-shift:-24px}
.sam-story-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:14px 20px;border-bottom:1px solid var(--line);background:var(--cream)}
.sam-story-step{display:flex;gap:9px;align-items:center;justify-content:center;min-width:0;min-height:52px;border:0;border-radius:7px;background:transparent;color:var(--navy);font:500 .875rem/1.4 var(--body);padding:8px 6px;cursor:pointer}
.sam-story-step-number{display:grid;place-items:center;flex-shrink:0;width:27px;height:27px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:.875rem}
.sam-story-step[aria-pressed="true"]{background:var(--navy);color:#fff}
.sam-story-step[aria-pressed="true"] .sam-story-step-number{background:var(--rose);border-color:var(--rose);color:#fff}
.sam-story-step:hover{box-shadow:inset 0 0 0 1px var(--rose)}
.sam-story-scene{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:35px;align-items:center;padding:36px 44px 40px;min-height:460px;scroll-margin-top:125px}
.sam-story-scene+.sam-story-scene{border-top:1px solid var(--line)}
.sam-story[data-sam-ready="true"] .sam-story-scene{border-top:0}
.sam-story-scene:focus{outline:0}
.sam-story-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}
.sam-story-bubble{position:relative;max-width:310px;border:2px solid var(--navy);border-radius:20px 20px 20px 4px;padding:13px 22px;font:600 1.0625rem/1.5 var(--body);color:var(--navy);background:#fff;text-align:center;margin:0 0 8px;transform-origin:20% 100%}
.sam-cartoon{width:100%;max-width:400px;aspect-ratio:1;background-image:url('/assets/editorial/kevin-scenes.webp');background-size:300% 200%;background-repeat:no-repeat;transform-origin:50% 100%}
.sam-cartoon-1{background-position:0 0}
.sam-cartoon-2{background-position:50% 0}
.sam-cartoon-3{background-position:100% 0}
.sam-cartoon-4{background-position:0 100%}
.sam-cartoon-5{background-position:50% 100%}
.sam-cartoon-6{background-position:100% 100%}
.sam-story-copy{min-width:0}
.sam-story-chapter{font:600 .875rem/1.5 var(--body);color:var(--rose);margin:0 0 14px;letter-spacing:.035em}
.sam-story-copy :is(h2,h3){font:500 clamp(1.75rem,2.9vw,2.65rem)/1.25 var(--body);letter-spacing:-.025em;color:var(--navy);margin:0 0 22px}
.sam-story-lead{font-size:1.125rem;line-height:1.8;margin:0;color:var(--navy)}
.sam-story-prompt{font-size:1rem;line-height:1.7;color:var(--muted);margin:20px 0 0}
.sam-story-start{margin-top:24px;cursor:pointer}
.sam-story-tap{font-size:.9375rem;line-height:1.6;color:var(--muted);margin:20px 0 12px}
.sam-story-reveals{display:grid;gap:9px;margin-top:20px}
.sam-story-tap+.sam-story-reveals{margin-top:0}
.sam-story-reveal{border:1px solid var(--line);border-radius:8px;background:var(--cream);overflow:hidden}
.sam-story-reveal summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;min-height:50px;padding:12px 16px;font:600 1rem/1.5 var(--body);cursor:pointer;color:var(--navy)}
.sam-story-reveal summary::-webkit-details-marker{display:none}
.sam-story-reveal summary>span{font:400 1.6rem/1 var(--body);color:var(--rose);transition:transform .2s;flex-shrink:0}
.sam-story-reveal[open] summary{background:var(--navy);color:#fff}
.sam-story-reveal[open] summary>span{color:var(--rose-soft);transform:rotate(45deg)}
.sam-story-reveal summary:hover{box-shadow:inset 0 0 0 1px var(--rose)}
.sam-story-reveal-copy{padding:16px 18px 18px}
.sam-story-reveal-copy p{font-size:1rem;line-height:1.75;margin:0}
.sam-story-reveal-copy p+p{margin-top:14px}
.sam-story-reveal-copy strong{font-weight:600}
.sam-story-questions{list-style:none;padding:0;margin:23px 0;display:grid;gap:14px}
.sam-story-questions li{font-size:1.125rem;line-height:1.6;border-left:3px solid var(--rose);padding:5px 0 5px 17px}
.sam-story-takeaway{font-size:1rem;font-weight:600;line-height:1.75;margin:22px 0 0}
.sam-story-contact{margin-top:22px;min-height:44px;font-size:1rem}
.sam-story-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:18px 30px;border-top:1px solid var(--line);background:var(--cream)}
.sam-story-back{justify-self:start;font:500 1rem/1.4 var(--body);padding:12px 0;min-height:44px;border:0;border-bottom:1px solid var(--rose);background:none;color:var(--navy);cursor:pointer}
.sam-story-back:disabled{opacity:.35;cursor:default;border-color:transparent}
.sam-story-progress{font-size:1rem;line-height:1.5;color:var(--muted);margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.sam-story-next{justify-self:end;font-size:1rem;min-height:48px;padding:13px 22px;cursor:pointer}
.sam-story-note{font-size:.875rem;line-height:1.75;color:var(--muted);max-width:900px;margin:20px 0 0}
.sam-story-context{margin-top:12px;max-width:900px}
.sam-story-context summary{font-size:.9375rem;line-height:1.5;cursor:pointer;color:var(--navy);padding:10px 0;min-height:44px}
.sam-story-context>p{font-size:.9375rem;line-height:1.75;color:var(--muted);margin:8px 0 0}
.sam-story-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sam-story :is(button,summary,a):focus-visible{outline:3px solid var(--rose);outline-offset:3px}
.sam-story[data-sam-ready="true"] .sam-story-scene:not([hidden]) .sam-story-copy{animation:sam-chapter-in .4s ease-out both}
.sam-story[data-sam-ready="true"] .sam-story-scene:not([hidden]) .sam-cartoon{animation:sam-character-in .65s cubic-bezier(.2,.8,.25,1) both}
.sam-story[data-sam-ready="true"] .sam-story-scene:not([hidden]) .sam-story-bubble{animation:sam-bubble-in .4s .15s ease-out both}
.sam-story-reveal[open] .sam-story-reveal-copy{animation:sam-reveal-in .22s ease-out both}
@keyframes sam-chapter-in{from{opacity:0;transform:translateX(var(--sam-slide-shift))}to{opacity:1;transform:translateX(0)}}
@keyframes sam-character-in{0%{opacity:0;transform:translateY(16px) rotate(-2deg) scale(.96)}65%{opacity:1;transform:translateY(-3px) rotate(1deg) scale(1.01)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
@keyframes sam-bubble-in{from{opacity:0;transform:translateY(8px) scale(.93)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes sam-reveal-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.sam-story-steps{padding-inline:12px}.sam-story-step{flex-direction:column;gap:7px}.sam-story-scene{padding:30px;gap:24px}.sam-story-copy :is(h2,h3){font-size:2rem}}
@media(max-width:740px){
 .sam-story-section{padding:22px 0 42px}
 .sam-story-header{align-items:flex-start;margin-bottom:20px;gap:18px}
 .sam-story-header>p{display:none}
 .sam-story-header .page-heading{margin-top:12px;font-size:2.9rem}
 .sam-story-steps{padding:7px 9px;gap:3px}
 .sam-story-step{min-height:44px;padding:6px 0}
 .sam-story-step-label{display:none}
 .sam-story-step-number{width:28px;height:28px}
 .sam-story-scene{grid-template-columns:minmax(0,1fr);gap:21px;padding:24px 22px 28px;min-height:0;scroll-margin-top:105px}
 .sam-story-bubble{font-size:1rem;padding:10px 17px;max-width:100%;margin-bottom:4px}
 .sam-cartoon{max-width:300px}
 .sam-story-copy :is(h2,h3){font-size:1.65rem;line-height:1.35;margin-bottom:15px}
 .sam-story-chapter{margin-bottom:10px}
 .sam-story-lead{font-size:1rem;line-height:1.75}
 .sam-story-start{margin-top:20px;max-width:100%;text-align:center}
 .sam-story-controls{padding:14px 19px;gap:12px}
 .sam-story-next{padding:12px 16px}
 .sam-story-reveal summary{font-size:1rem;padding:12px 14px}
 .sam-story-reveal-copy{padding:15px}
 .sam-story-questions li{font-size:1rem}
}
@media(max-width:380px){.sam-story-scene{padding-inline:18px}.sam-story-controls{padding-inline:14px;gap:8px}.sam-story-next{font-size:.9375rem;padding-inline:12px}.sam-story-back{font-size:.9375rem}.sam-story-progress{font-size:.9375rem}.sam-story-header .eyebrow{font-size:.75rem;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){.sam-story .sam-story-scene .sam-story-copy,.sam-story .sam-story-scene .sam-cartoon,.sam-story .sam-story-scene .sam-story-bubble,.sam-story .sam-story-reveal-copy{animation:none!important}.sam-story-reveal summary>span{transition:none}}
@media print{.sam-story-scene[hidden]{display:grid!important}.sam-story-steps,.sam-story-controls,.sam-story-start{display:none!important}.sam-story-scene{break-inside:avoid;min-height:0}.sam-story{border:0}.sam-cartoon{max-width:180px}}

/* Elise uses the same accessible story controls with her own character. */
.elise-story-section .sam-cartoon{background-image:url('/assets/editorial/elise-scenes.webp')}
.elise-story-section{padding:72px 0;border-bottom:1px solid var(--line)}

.elise-hours{margin-top:24px;padding:20px 24px;border-left:4px solid var(--rose);background:var(--cream)}
.elise-hours>p{font-size:.9375rem;line-height:1.65;color:var(--muted)}
.elise-hours .elise-hours-value{font-size:2rem;font-weight:600;line-height:1.4;color:var(--navy);margin:6px 0}
.elise-hours-value span{font-size:1rem;font-weight:400}
@media(max-width:740px){.elise-story-section{padding:46px 0}.elise-hours{padding:16px 20px}}
