/* v004: independent flowing sections; no scroll trapping or viewport-height pinning. */
#tbc247-scroll-story{--ink:#30463c;--muted:#617165;--tbc247-host-header:85px;--safe-top:calc(var(--tbc247-host-header) + 24px + env(safe-area-inset-top,0px));background:#f9f5eb;color:var(--ink);font-family:Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;isolation:isolate;overflow:clip;scroll-margin-top:var(--safe-top)}
#tbc247-scroll-story *,#tbc247-scroll-story *::before,#tbc247-scroll-story *::after{box-sizing:border-box}
#tbc247-scroll-story :is(h2,h3,p,figure){margin:0}
#tbc247-scroll-story a{color:inherit;text-decoration:none}
#tbc247-scroll-story .tbc247-kicker{font-size:11px;letter-spacing:.16em;line-height:1.6;font-weight:700;color:#65725e}
#tbc247-scroll-story .tbc247-intro{text-align:center;padding:100px 24px 74px;background:radial-gradient(ellipse at 50% 95%,#e7ecdf,transparent 70%)}
#tbc247-scroll-story h2{font-size:clamp(34px,4.6vw,66px);font-weight:500;line-height:1.26;letter-spacing:-.065em;margin:27px 0}
#tbc247-scroll-story em{font-style:normal;color:#916b4e}
#tbc247-scroll-story .tbc247-intro>p:not(.tbc247-kicker){font-size:16px;line-height:1.9;color:var(--muted)}
#tbc247-scroll-story .tbc247-chapter-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:32px auto 24px;max-width:800px}
#tbc247-scroll-story .tbc247-chapter-links a{display:flex;align-items:center;gap:9px;padding:13px 17px;min-height:46px;border:1px solid #acb7a7;border-radius:30px;font-size:12px;background:#ffffff48}
#tbc247-scroll-story .tbc247-chapter-links span{font-size:10px;color:#9b7052}
#tbc247-scroll-story .tbc247-intro .tbc247-scroll-hint{font-size:11px;letter-spacing:.03em}
#tbc247-scroll-story .tbc247-scene{position:relative;padding:74px max(5vw,24px) 84px;scroll-margin-top:var(--safe-top)}
#tbc247-scroll-story .tbc247-scene-inner{display:grid;grid-template-columns:.92fr 1.3fr;gap:4vw;align-items:center;max-width:1300px;margin:auto}
#tbc247-scroll-story .tbc247-scene-1{background:#eaf0e3}
#tbc247-scroll-story .tbc247-scene-2{background:#f4e5d7}
#tbc247-scroll-story .tbc247-scene-3{background:#faf5e8}
#tbc247-scroll-story .tbc247-scene-4{background:#e4eef0}
#tbc247-scroll-story .tbc247-scene-5{background:#e4e9df}
#tbc247-scroll-story :is(.tbc247-scene-2,.tbc247-scene-4) .tbc247-scene-inner{grid-template-columns:1.3fr .92fr}
#tbc247-scroll-story :is(.tbc247-scene-2,.tbc247-scene-4) .tbc247-copy-wrap{order:2}
#tbc247-scroll-story .tbc247-copy-wrap{position:relative;padding:35px 0}
#tbc247-scroll-story .tbc247-large-number{position:absolute;top:-40px;left:-10px;font-size:150px;font-weight:400;line-height:1;letter-spacing:-.08em;color:#7d8b7112;pointer-events:none}
#tbc247-scroll-story .tbc247-chapter{position:relative}
#tbc247-scroll-story h3{font-size:clamp(30px,3.5vw,50px);font-weight:500;letter-spacing:-.065em;line-height:1.32;margin:22px 0 24px}
#tbc247-scroll-story .tbc247-chapter>p:not(.tbc247-kicker){max-width:390px;font-size:16px;line-height:1.9;word-break:keep-all;color:#536454}
#tbc247-scroll-story .tbc247-note{display:block;font-size:12px;color:#68725c;line-height:1.8;margin-top:24px;padding-left:13px;border-left:2px solid #b99c74;word-break:keep-all}
#tbc247-scroll-story .tbc247-visual{width:100%;min-width:0;margin:0;position:relative}
#tbc247-scroll-story .tbc247-visual svg{display:block;width:100%;height:auto;overflow:visible}
#tbc247-scroll-story .tbc247-scene-3 .tbc247-visual{max-width:510px;justify-self:center}
#tbc247-scroll-story svg text{font-family:inherit;font-size:14px;fill:#596951;letter-spacing:.02em}
#tbc247-scroll-story figcaption{font-size:10px;text-align:center;color:#697463;line-height:1.6;margin:12px 0 0}
#tbc247-scroll-story .tbc247-basket{transform-origin:320px 325px}
#tbc247-scroll-story .tbc247-shirt{transform:translate(267px,248px) rotate(-12deg) scale(.63)}
#tbc247-scroll-story .tbc247-sock{transform:translate(345px,239px) rotate(12deg) scale(.68)}
#tbc247-scroll-story .tbc247-towel{transform:translate(383px,253px) rotate(-8deg) scale(.6)}
#tbc247-scroll-story :is(.tbc247-handles,.tbc247-air,.tbc247-washer,.tbc247-basket-label,.tbc247-route){opacity:0}
#tbc247-scroll-story .tbc247-scene-2 .tbc247-route,#tbc247-scroll-story .tbc247-scene-3 .tbc247-handles,#tbc247-scroll-story .tbc247-scene-4 .tbc247-air,#tbc247-scroll-story .tbc247-scene-5 :is(.tbc247-washer,.tbc247-basket-label){opacity:1}
#tbc247-scroll-story .tbc247-scene-3 :is(.tbc247-orbit,.tbc247-spark){display:none}
#tbc247-scroll-story .tbc247-air path{stroke-dasharray:15 11}
#tbc247-scroll-story .tbc247-scene-5 .tbc247-basket{transform:translate(-144px,35px) scale(.64)}
#tbc247-scroll-story .tbc247-scene-5 .tbc247-shirt{transform:translate(142.08px,310.72px) rotate(-12deg) scale(.4032)}
#tbc247-scroll-story .tbc247-scene-5 .tbc247-sock{transform:translate(192px,304.96px) rotate(12deg) scale(.4352)}
#tbc247-scroll-story .tbc247-scene-5 .tbc247-towel{transform:translate(216.32px,313.92px) rotate(-8deg) scale(.384)}
#tbc247-scroll-story :is(a,button):focus-visible{outline:3px solid #9b573c;outline-offset:5px}
#tbc247-scroll-story .tbc247-outro{text-align:center;padding:95px 24px calc(112px + env(safe-area-inset-bottom,0px));background:#d9e3d3}
#tbc247-scroll-story .tbc247-outro h3{font-size:clamp(30px,4vw,50px);margin:25px 0}
#tbc247-scroll-story .tbc247-outro>p:not(.tbc247-kicker){font-size:15px;line-height:1.8;color:#5c6b59}
#tbc247-scroll-story .tbc247-outro a{display:inline-flex;gap:35px;font-size:13px;border-bottom:1px solid #91a38c;padding:16px 0;margin-top:25px;min-height:48px}
@media(max-width:1000px){
#tbc247-scroll-story .tbc247-scene{padding:56px 30px 72px}
#tbc247-scroll-story .tbc247-scene-inner,#tbc247-scroll-story :is(.tbc247-scene-2,.tbc247-scene-4) .tbc247-scene-inner{grid-template-columns:1fr;gap:12px;max-width:650px}
#tbc247-scroll-story :is(.tbc247-scene-2,.tbc247-scene-4) .tbc247-copy-wrap{order:initial}
#tbc247-scroll-story .tbc247-copy-wrap{padding:18px 0 12px}
#tbc247-scroll-story .tbc247-chapter>p:not(.tbc247-kicker){max-width:600px}
#tbc247-scroll-story .tbc247-visual{max-width:580px;justify-self:center}
#tbc247-scroll-story .tbc247-scene-3 .tbc247-visual{max-width:440px}
#tbc247-scroll-story .tbc247-large-number{font-size:120px;top:-23px}
#tbc247-scroll-story h3{font-size:38px;margin:16px 0 20px}
}
@media(max-width:700px){
#tbc247-scroll-story .tbc247-intro{padding:72px 22px 54px}
#tbc247-scroll-story h2{font-size:34px}
#tbc247-scroll-story .tbc247-intro>p:not(.tbc247-kicker){font-size:14px}
#tbc247-scroll-story .tbc247-kicker{font-size:10px}
#tbc247-scroll-story .tbc247-chapter-links{gap:8px}
#tbc247-scroll-story .tbc247-chapter-links a{font-size:11px;padding:12px 14px}
#tbc247-scroll-story .tbc247-scene{padding:50px 23px calc(90px + env(safe-area-inset-bottom,0px))}
#tbc247-scroll-story .tbc247-scene-inner{gap:14px}
#tbc247-scroll-story h3{font-size:34px;line-height:1.3;margin:14px 0 18px}
#tbc247-scroll-story .tbc247-chapter>p:not(.tbc247-kicker){font-size:14px;line-height:1.8}
#tbc247-scroll-story .tbc247-note{font-size:11px;margin-top:18px}
#tbc247-scroll-story .tbc247-large-number{font-size:110px;top:-16px;left:-5px}
#tbc247-scroll-story .tbc247-visual{width:calc(100% + 12px);max-width:440px;margin-left:-6px}
#tbc247-scroll-story .tbc247-scene-3 .tbc247-visual{width:100%;max-width:320px;margin-left:0}
#tbc247-scroll-story figcaption{font-size:9px;line-height:1.5;margin-top:10px}
#tbc247-scroll-story .tbc247-outro{padding-top:70px}
}
@media(prefers-reduced-motion:reduce){#tbc247-scroll-story{scroll-behavior:auto}}

/* v006: prevent native keyboard-focus smooth scroll racing chapter navigation.
   The host retains its normal scrolling behavior when focus leaves this pilot. */
html:has(#tbc247-scroll-story:focus-within) { scroll-behavior: auto !important; }
