.ai-story{max-width:1320px;margin:0 auto;padding:clamp(78px,10vw,140px) clamp(22px,5vw,76px);border-top:1px solid var(--line)}
.ai-story-head{max-width:790px;margin-bottom:clamp(38px,5vw,66px)}
.ai-story-head h2{margin:0;font-size:clamp(2.55rem,5.2vw,5.4rem);letter-spacing:-.055em;line-height:1.03}
.ai-story-head>p:last-child{max-width:690px;margin:23px 0 0;color:var(--muted);font-size:1.08rem}
.ai-story-board{margin:0;padding:clamp(22px,3.4vw,44px);border:1px solid var(--line);border-radius:clamp(18px,2.3vw,30px);background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,var(--accent)),var(--surface));box-shadow:0 34px 90px rgba(0,0,0,.1)}
.ai-story-board>figcaption{margin-bottom:40px;color:var(--muted);font-size:.87rem}
.ai-story-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);margin:0;padding:0;list-style:none;counter-reset:ai-stage}
.ai-story-step{min-width:0;position:relative;display:flex;flex-direction:column}
.ai-story-step:not(:last-child):after{content:'→';position:absolute;top:26px;right:calc(-1 * clamp(12px,1.8vw,25px));z-index:2;color:var(--accent);font-size:1.25rem;line-height:1;opacity:.9}
.ai-story-number{display:block;min-height:48px;color:var(--accent);font-size:.73rem;letter-spacing:.1em;font-weight:800}
.ai-story-visual{display:flex;flex-direction:column;min-height:230px;padding:22px 19px;background:var(--bg);border:1px solid var(--line);border-radius:16px;color:var(--text);box-shadow:inset 0 1px rgba(255,255,255,.04);transition:transform .28s ease,border-color .28s ease}
.ai-story-step:hover .ai-story-visual{transform:translateY(-4px);border-color:var(--accent)}
.ai-story-mini{font-size:.73rem;letter-spacing:.08em;font-weight:800;color:var(--accent)}
.ai-story-visual p{margin:18px 0 14px;font-size:.96rem;line-height:1.45}
.ai-story-visual small{margin-top:auto;color:var(--muted);font-size:.78rem;line-height:1.45}
.ai-story-step h3{margin:20px 0 0;font-size:clamp(1.06rem,1.5vw,1.28rem);line-height:1.25;font-weight:700}
.ai-story-extract dl{margin:14px 0 0}
.ai-story-extract dl>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:.78rem;line-height:1.35}
.ai-story-extract dt{flex:none;color:var(--muted)}
.ai-story-extract dd{margin:0;text-align:right;font-weight:700}
.ai-story-extract .ai-story-missing dd{color:var(--accent)}
.ai-story-review-status{display:inline-block;align-self:flex-start;margin-top:auto;padding:6px 10px;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:.68rem;font-weight:750}
.ai-story-stop{margin:48px 0 0;padding:18px 0 0;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}
.ai-story-stop strong{color:var(--text)}

/* The provider carousel keeps every outbound link usable while turning the list into one focused story. */
.sp-provider-section{overflow:hidden}
.ai-provider-carousel{--provider-gap:clamp(14px,2vw,24px);position:relative;margin:clamp(28px,4vw,46px) 0 26px;padding:clamp(12px,1.6vw,18px);border:1px solid var(--line);border-radius:clamp(18px,2.2vw,28px);background:var(--surface);background:color-mix(in srgb,var(--surface) 90%,var(--accent));box-shadow:0 28px 76px rgba(0,0,0,.16)}
.ai-provider-viewport{overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;border-radius:calc(clamp(18px,2.2vw,28px) - 8px);outline:none}
.ai-provider-viewport::-webkit-scrollbar{display:none}
.ai-provider-viewport:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.ai-provider-track{display:flex;gap:var(--provider-gap)}
.ai-provider-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;opacity:.62;transform:scale(.975);transition:opacity .36s ease,transform .36s ease}
.ai-provider-slide.is-active{opacity:1;transform:none}
.ai-provider-slide>a{position:relative;display:flex;align-items:center;justify-content:center;gap:clamp(13px,2vw,22px);min-height:clamp(150px,18vw,210px);padding:clamp(28px,5vw,54px);border:2px solid transparent;border-radius:clamp(14px,1.7vw,22px);background:#fff;color:#171717;text-decoration:none;box-shadow:0 16px 38px rgba(0,0,0,.14);transition:border-color .22s ease,box-shadow .22s ease}
.ai-provider-slide>a:hover{border-color:var(--accent);box-shadow:0 20px 44px rgba(0,0,0,.2)}
.ai-provider-slide>a:focus-visible{outline:3px solid var(--accent);outline-offset:-7px}
.ai-provider-slide img{display:block;object-fit:contain;max-width:min(46vw,250px);width:auto;height:clamp(38px,5vw,58px)}
.ai-provider-slide .provider-mark{width:clamp(42px,5vw,58px);height:clamp(42px,5vw,58px)}
.ai-provider-slide>a>span:not(.ai-provider-link-cue){font-size:clamp(1.2rem,2.4vw,1.8rem);font-weight:720;letter-spacing:-.025em}
.ai-provider-link-cue{position:absolute;right:clamp(18px,3vw,32px);bottom:clamp(15px,2.5vw,26px);color:#4a544f;font-size:.74rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}
.ai-provider-controls{position:relative;z-index:2;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:clamp(9px,1.5vw,16px);padding:clamp(14px,2vw,22px) 4px 2px}
.ai-provider-controls button{position:relative;z-index:1;font:inherit;color:var(--text)}
.ai-provider-arrow,.ai-provider-toggle{min-height:44px;border:1px solid var(--line);background:var(--bg);cursor:pointer}
.ai-provider-arrow{display:grid;place-items:center;width:46px;border-radius:50%;font-size:1.12rem}
.ai-provider-arrow>span{pointer-events:none}
.ai-provider-toggle{padding:9px 15px;border-radius:999px;font-size:.78rem;font-weight:720}
.ai-provider-arrow:hover,.ai-provider-toggle:hover{border-color:var(--accent)}
.ai-provider-arrow:focus-visible,.ai-provider-toggle:focus-visible,.ai-provider-indicators button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.ai-provider-indicators{display:flex;align-items:center;gap:0}
.ai-provider-indicators button{display:grid;place-items:center;width:38px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
.ai-provider-indicators button::before{content:"";display:block;width:9px;height:9px;border-radius:999px;background:var(--muted);opacity:.45;transition:width .24s ease,background-color .24s ease,opacity .24s ease}
.ai-provider-indicators button[aria-current="true"]::before{width:28px;background:var(--accent);opacity:1}
.ai-provider-status{min-width:0;margin:0;color:var(--muted);font-size:.82rem;text-align:center}
.ai-provider-note{margin-top:0}

@media(max-width:1000px){.ai-story-track{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:42px}.ai-story-step:nth-child(2):after{content:none}}
@media(max-width:700px){.ai-provider-carousel{margin-top:24px;padding:9px}.ai-provider-slide>a{min-height:150px}.ai-provider-controls{grid-template-columns:auto 1fr auto}.ai-provider-indicators{justify-self:center}.ai-provider-status{grid-column:1/-1;grid-row:2}.ai-provider-toggle{grid-column:1/-1;grid-row:3;justify-self:center}.ai-provider-arrow[data-carousel-next]{grid-column:3}.ai-provider-link-cue{font-size:.66rem}}
@media(max-width:610px){.ai-story-board{padding:22px 18px}.ai-story-board>figcaption{margin-bottom:20px}.ai-story-track{grid-template-columns:1fr;gap:29px}.ai-story-step:not(:last-child):after{content:'↓';top:auto;right:50%;bottom:-29px;transform:translateX(50%)}.ai-story-number{min-height:28px}.ai-story-visual{min-height:0}.ai-story-step h3{margin:12px 0 0}.ai-story-stop{margin-top:38px}.ai-provider-slide>a{flex-direction:column}.ai-provider-slide img{max-width:min(68vw,230px)}}
@media(prefers-reduced-motion:reduce){.ai-story-visual,.ai-provider-slide,.ai-provider-indicators button::before{transition:none}.ai-story-step:hover .ai-story-visual{transform:none}.ai-provider-slide{opacity:1;transform:none}.ai-provider-toggle{display:none}}
