:root{--spe-accent:#B11226;--spe-soft:rgba(177,18,38,.06)}
.case-dark{--spe-accent:#FEC422;--spe-soft:rgba(254,196,34,.06)}
.spe-page main{position:relative;z-index:1}
.spe-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,5vw,80px);align-items:center;padding:136px var(--gutter) 76px;min-height:730px;overflow:hidden}
.spe-hero-copy{max-width:650px}
.spe-hero h1{font:600 clamp(2.8rem,4.6vw,4.2rem)/1.04 var(--display);letter-spacing:-.035em;text-wrap:balance}
.spe-hero h1 span{display:block;color:var(--spe-accent)}
.spe-hero-copy>p{font:400 1.05rem/1.8 var(--sans);color:var(--ink-3);margin-top:26px;max-width:560px}
.spe-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}
.spe-page .btn-primary{font-family:var(--display);font-weight:600;background:var(--spe-accent);border-color:var(--spe-accent);color:white}
.case-dark.spe-page .btn-primary{color:#141414}
.spe-page .btn-primary:hover{filter:brightness(.92)}
.spe-link{display:inline-flex;align-items:center;gap:12px;font:600 .92rem var(--display);color:var(--ink-2);text-decoration:none}
.spe-link:hover{color:var(--spe-accent)}
.spe-section{padding:76px var(--gutter);scroll-margin-top:100px}
.spe-heading{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-bottom:40px}
.spe-page h2{font:500 clamp(2rem,3.1vw,2.9rem)/1.13 var(--display);letter-spacing:-.03em;max-width:670px}
.spe-heading>p,.spe-section p{font:400 .98rem/1.8 var(--sans);color:var(--ink-3)}
.spe-process{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.spe-team{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin:16px 0 44px}
.spe-team>div{border-top:1px solid var(--line-strong);padding-top:23px}
.spe-team h3{font:600 1.35rem var(--display);letter-spacing:-.02em;margin-bottom:10px}
.spe-team h3 span{color:var(--spe-accent)}
.spe-team p{max-width:540px;font-size:.94rem}
.spe-process-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-bottom:1px solid var(--line-strong)}
.spe-process-tabs button{position:relative;min-height:66px;padding:14px 10px;background:none;border:0;color:var(--ink-3);font:500 .9rem/1.3 var(--display);cursor:pointer;text-align:left;transition:color .2s}
.spe-process-tabs button::after{content:'';position:absolute;left:0;right:12px;bottom:-1px;height:3px;background:var(--spe-accent);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.spe-process-tabs button[aria-selected="true"]{color:var(--ink)}
.spe-process-tabs button[aria-selected="true"]::after{transform:scaleX(1)}
.spe-process-tabs button:hover{color:var(--ink)}
.spe-process-panel{padding:32px 0 0}
.spe-process-panel[hidden]{display:none}
.spe-process-panel h3{font:500 1.6rem/1.2 var(--display);letter-spacing:-.02em;margin-bottom:14px}
.spe-phase-columns{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.spe-phase-columns strong{display:block;font:600 .87rem var(--display);margin-bottom:9px;color:var(--ink-2)}
.spe-phase-columns p{max-width:540px;font-size:.93rem}
.spe-gate{display:flex;gap:13px;align-items:center;margin-top:25px;color:var(--ink-2);font:500 .9rem/1.5 var(--display)}
.spe-gate::before{content:'';width:10px;height:10px;border:1.5px solid var(--spe-accent);transform:rotate(45deg);flex-shrink:0}
.spe-loop-note{margin-top:24px!important;font-size:.8rem!important;color:var(--ink-3)}
.spe-capabilities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 38px}
.spe-capability{padding:28px 0 32px;border-top:1px solid var(--line-strong)}
.spe-capability h3{font:500 1.5rem/1.16 var(--display);letter-spacing:-.025em;max-width:340px;margin-bottom:16px}
.spe-capability p{font-size:.94rem;line-height:1.75}
.spe-deliverables{list-style:none;margin-top:20px;display:grid;gap:8px}
.spe-deliverables li{display:flex;gap:10px;align-items:baseline;font:500 .8rem/1.5 var(--display);color:var(--ink-2)}
.spe-deliverables li::before{content:'+';color:var(--spe-accent);font-size:1rem}
.spe-work-link{padding-top:25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:22px;align-items:center}
.spe-work-link p{font-size:.93rem;max-width:780px}
.spe-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;background:var(--bg-soft);border-top:1px solid var(--line)}
.spe-faq-intro p{margin-top:20px;max-width:330px}
.spe-faq details{border-top:1px solid var(--line-strong);padding:0}
.spe-faq details:last-child{border-bottom:1px solid var(--line-strong)}
.spe-faq summary{position:relative;display:block;list-style:none;padding:24px 36px 24px 0;cursor:pointer;font:500 1.15rem/1.4 var(--display);letter-spacing:-.01em;color:var(--ink)}
.spe-faq summary::-webkit-details-marker{display:none}
.spe-faq summary::after{content:'+';position:absolute;right:0;top:23px;font:400 1.5rem var(--display);color:var(--spe-accent)}
.spe-faq details[open] summary::after{content:'−'}
.spe-faq details p{padding:0 34px 25px 0;font-size:.94rem;max-width:750px}
.spe-cta{display:flex;align-items:center;justify-content:space-between;gap:50px;border-top:1px solid var(--line)}
.spe-cta p{margin-top:20px;max-width:620px}
.spe-cta .btn-primary{flex-shrink:0}
.spe-page :focus-visible{outline:2px solid var(--spe-accent);outline-offset:5px}
/* A product-engineering variation of the established hero workflow. */
.spe-hero .engineering-visual{max-width:500px}
.spe-hero .ew-brief,.spe-hero .ew-release{background:var(--bg-soft);border-color:var(--line-strong)}
.spe-hero .ew-panel-heading,.spe-hero .ew-criteria,.spe-hero .ew-reviewer small,.spe-hero .ew-caption{color:var(--ink-3)}
.spe-hero .ew-brief p,.spe-hero .ew-reviewer strong,.spe-hero .ew-icon{color:var(--ink)}
.spe-hero .ew-brief p{font:600 clamp(.95rem,1.25vw,1.08rem)/1.3 var(--display);margin:10px 0}
.spe-hero .ew-criteria{font:400 .64rem var(--sans)}
.spe-hero .ew-criteria span::before{color:var(--spe-accent)}
.spe-hero .ew-person{background:var(--bg-tint);border-color:var(--line-strong)}
.spe-hero .ew-person svg{stroke:var(--ink-2)}
.spe-hero .ew-build{top:33%;background:#1B1B1B}
.spe-hero .ew-release{top:79%}
.spe-hero .ew-caption{padding-top:35px;font-size:.72rem}
.spe-hero .ew-pause{color:var(--ink-3);border-color:var(--line-strong)}
.spe-hero .ew-lanes{padding:10px 18px 17px;display:grid;gap:0}
.spe-hero .ew-lane{display:grid;grid-template-columns:1fr 66px;align-items:center;gap:18px;padding:13px 0;border-bottom:1px solid #33332f}
.spe-hero .ew-lane:last-child{border:0}
.spe-hero .ew-lane strong{display:block;font:500 12px var(--display);color:#e7e7df}
.spe-hero .ew-lane small{display:block;color:#aaa99e;font:400 10px/1.5 var(--sans);margin-top:3px}
.spe-hero .ew-lane-meter{height:4px;border-radius:4px;background:#45453b;overflow:hidden}
.spe-hero .ew-lane-meter::after{content:'';display:block;height:100%;width:100%;background:#FEC422;transform:scaleX(0);transform-origin:left;transition:transform 1.8s cubic-bezier(.2,.6,.3,1)}
.spe-hero [data-step="1"] .ew-lane:nth-child(1) .ew-lane-meter::after{transform:scaleX(.85)}
.spe-hero [data-step="1"] .ew-lane:nth-child(2) .ew-lane-meter::after{transform:scaleX(.62);transition-delay:.3s}
.spe-hero [data-step="1"] .ew-lane:nth-child(3) .ew-lane-meter::after{transform:scaleX(.45);transition-delay:.5s}
.spe-hero [data-step="2"] .ew-lane-meter::after,.spe-hero [data-step="3"] .ew-lane-meter::after,.spe-hero [data-step="4"] .ew-lane-meter::after{transform:scaleX(1)}
.spe-hero .ew-phase-caption{min-height:34px;flex:1;max-width:360px}
.spe-hero .ew-approval,.spe-hero .ew-release-status{background:#FEC422}
@media(max-width:1050px){.spe-hero{gap:30px;padding-top:120px}.spe-hero h1{font-size:clamp(2.5rem,4.8vw,3.5rem)}.spe-heading{gap:35px}.spe-faq{gap:40px}.spe-capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spe-hero .ew-criteria{font-size:9px;gap:6px}.spe-hero .ew-release{top:82%}.spe-hero .ew-caption{padding-top:54px}.spe-hero .ew-scene{aspect-ratio:440/460}.spe-hero .ew-lane{padding:11px 0}.spe-hero .ew-reviewer{padding:12px}}
@media(max-width:720px){.spe-hero{grid-template-columns:minmax(0,1fr);gap:30px;min-height:0;padding:118px var(--gutter) 48px}.spe-hero-copy{max-width:560px}.spe-hero h1{font-size:clamp(2.4rem,9vw,3.3rem)}.spe-hero-copy>p{font-size:1rem;margin-top:22px}.spe-actions{margin-top:24px;gap:22px}.spe-actions .btn-primary{font-size:.9rem;padding:13px 16px}.spe-hero .engineering-visual{max-width:430px;margin:0 auto}.spe-hero .ew-scene{aspect-ratio:340/430}.spe-hero .ew-brief{padding:15px}.spe-hero .ew-brief p{font-size:15px}.spe-hero .ew-build{top:33%}.spe-hero .ew-lanes{padding:7px 15px 12px}.spe-hero .ew-lane{padding:12px 0}.spe-hero .ew-release{top:82%}.spe-hero .ew-caption{padding-top:40px}.spe-section{padding:46px var(--gutter)}.spe-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.spe-team{grid-template-columns:1fr;gap:26px;margin:0 0 30px}.spe-team h3{font-size:1.25rem}.spe-process-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 0;border-bottom:0}.spe-process-tabs button{min-height:58px;font-size:.82rem;border-bottom:1px solid var(--line-strong);padding:12px 6px}.spe-process-tabs button::after{right:0}.spe-process-panel{padding-top:26px}.spe-phase-columns{grid-template-columns:1fr;gap:23px}.spe-process-panel h3{font-size:1.45rem}.spe-capabilities-grid{grid-template-columns:1fr}.spe-capability{padding:25px 0}.spe-capability h3{font-size:1.4rem}.spe-work-link{display:block}.spe-work-link .spe-link{margin-top:18px}.spe-faq{grid-template-columns:1fr;gap:30px}.spe-faq-intro p{max-width:none}.spe-faq summary{font-size:1.08rem}.spe-cta{display:block}.spe-cta .btn-primary{margin-top:26px}}
@media(prefers-reduced-motion:reduce){.spe-page *{scroll-behavior:auto!important;transition:none!important}}

/* Keep the approval card clear of all three parallel work lanes. */
.spe-hero .ew-scene{min-height:500px}
.spe-hero .ew-release{top:calc(33% + 260px)}

.spe-hero .ew-caption{padding-top:55px}

/* Circular, human-gated agentic delivery cycle */
.spe-cycle-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);grid-template-areas:"details cycle";align-items:center;gap:56px}
.spe-cycle-visual{grid-area:cycle}
.spe-cycle{position:relative;aspect-ratio:1;max-width:680px;margin:auto;width:100%}
.spe-cycle-track{position:absolute;inset:0;width:100%;height:100%;fill:none;overflow:visible}
.spe-cycle-orbit{stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:4 7}
.spe-cycle-spoke{stroke:var(--line);stroke-width:1;stroke-dasharray:3 6;transition:stroke .3s}
.spe-cycle-arrow{stroke:var(--spe-accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.spe-cycle[data-active="0"] .spe-spoke-0,.spe-cycle[data-active="1"] .spe-spoke-1,.spe-cycle[data-active="2"] .spe-spoke-2,.spe-cycle[data-active="3"] .spe-spoke-3,.spe-cycle[data-active="4"] .spe-spoke-4,.spe-cycle[data-active="5"] .spe-spoke-5{stroke:var(--spe-accent);stroke-width:2;stroke-dasharray:none}
.spe-cycle-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36%;padding:25px 8px;text-align:center;border-radius:12px;background:var(--spe-accent);color:#fff;box-shadow:0 0 60px var(--spe-soft)}
.case-dark .spe-cycle-core{color:#141414}
.spe-cycle-core strong{display:block;font:600 clamp(1.05rem,1.75vw,1.6rem)/1.2 var(--display);letter-spacing:-.025em}
.spe-cycle-core span{display:block;margin-top:8px;font:500 .8rem var(--display)}
.spe-cycle .spe-process-tabs{position:absolute;inset:0;display:block;border:0}
.spe-cycle .spe-process-tabs button{position:absolute;width:29%;min-height:104px;padding:15px 9px;text-align:center;background:var(--bg);border:1px solid var(--line-strong);border-radius:9px;transform:translate(-50%,-50%);transition:background .25s,border-color .25s,box-shadow .25s;color:var(--ink-2)}
.spe-cycle .spe-process-tabs button::after{display:none}
.spe-cycle .spe-process-tabs button:nth-child(1){left:50%;top:11.4%}
.spe-cycle .spe-process-tabs button:nth-child(2){left:83.45%;top:30.7%}
.spe-cycle .spe-process-tabs button:nth-child(3){left:83.45%;top:69.3%}
.spe-cycle .spe-process-tabs button:nth-child(4){left:50%;top:88.6%}
.spe-cycle .spe-process-tabs button:nth-child(5){left:16.55%;top:69.3%}
.spe-cycle .spe-process-tabs button:nth-child(6){left:16.55%;top:30.7%}
.spe-cycle .spe-process-tabs button[aria-selected="true"]{border-color:var(--spe-accent);background:var(--bg-soft);box-shadow:0 0 0 1px var(--spe-accent)}
.spe-cycle .spe-process-tabs button:hover{border-color:var(--spe-accent);background:var(--bg-soft)}
.spe-cycle .spe-process-tabs button svg{display:block;margin:0 auto 9px;width:23px;height:23px;fill:none;stroke:var(--spe-accent);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.spe-cycle .spe-process-tabs strong{display:block;font:500 clamp(.72rem,1.02vw,.95rem)/1.25 var(--display);color:var(--ink)}
.spe-cycle .spe-process-tabs small{display:block;margin-top:7px;font:400 clamp(.55rem,.67vw,.67rem)/1.45 var(--sans);color:var(--ink-3)}
.spe-cycle-details{grid-area:details;border-right:1px solid var(--line-strong);padding-right:38px}

.spe-cycle-details .spe-process-panel{padding:0;min-height:375px}
.spe-cycle-details .spe-process-panel h3{font-size:clamp(1.5rem,2.15vw,2rem);line-height:1.18;margin-bottom:26px}
.spe-cycle-details .spe-phase-columns{grid-template-columns:1fr;gap:23px}
.spe-cycle-details .spe-phase-columns strong{color:var(--ink);font-size:.95rem}
.spe-cycle-details .spe-phase-columns p{font-size:.92rem}
.spe-cycle-details .spe-gate{border-top:1px solid var(--line);padding-top:22px;margin-top:25px;font-size:.86rem;align-items:flex-start}
.spe-cycle-details .spe-gate::before{margin-top:5px}
.spe-feedback{display:flex;gap:15px;align-items:center;justify-content:center;margin:15px auto 0;max-width:450px}
.spe-feedback>svg{width:32px;height:32px;flex-shrink:0;fill:none;stroke:var(--spe-accent);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.spe-feedback strong{font:500 1.05rem var(--display);color:var(--ink)}
.spe-feedback p{font-size:.81rem;line-height:1.6;margin-top:5px}
@media(max-width:1050px){.spe-cycle-layout{gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.spe-cycle-details{padding-right:25px}.spe-cycle .spe-process-tabs button{min-height:94px;padding:10px 5px}.spe-cycle .spe-process-tabs small{font-size:.55rem}.spe-cycle-core{padding:20px 5px}.spe-cycle-core strong{font-size:1.1rem}}
@media(max-width:850px){.spe-cycle-layout{grid-template-columns:1fr;grid-template-areas:"cycle" "details";gap:36px}.spe-cycle{max-width:600px}.spe-cycle-details{border-right:0;border-top:1px solid var(--line-strong);padding:25px 0 0}.spe-cycle-details .spe-process-panel{min-height:0}.spe-cycle .spe-process-tabs strong{font-size:.93rem}.spe-cycle .spe-process-tabs small{font-size:.65rem}.spe-cycle-core strong{font-size:1.5rem}.spe-cycle-details .spe-phase-columns{grid-template-columns:1fr 1fr}.spe-feedback{margin-top:20px}}
@media(max-width:480px){.spe-cycle .spe-process-tabs button{min-height:78px;padding:9px 4px;width:30.5%;border-radius:7px}.spe-cycle .spe-process-tabs strong{font-size:.68rem;line-height:1.25}.spe-cycle .spe-process-tabs small{display:none}.spe-cycle .spe-process-tabs button svg{width:20px;height:20px;margin-bottom:6px}.spe-cycle-core{width:35%;padding:17px 4px;border-radius:8px}.spe-cycle-core strong{font-size:.92rem}.spe-cycle-core span{font-size:.64rem;margin-top:5px}.spe-cycle-details .spe-phase-columns{grid-template-columns:1fr}.spe-feedback p{font-size:.77rem}.spe-feedback strong{font-size:1rem}.spe-cycle-details .spe-process-panel h3{font-size:1.5rem}}

/* A simulated, long-running engineering terminal */
.spe-hero .ew-scene{min-height:550px}
.spe-hero .ew-build.spe-terminal{top:29%;left:0;width:100%;border-color:#41413b;background:#151615;border-radius:10px;box-shadow:0 20px 50px -28px #0008;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.spe-hero .ew-release{top:calc(29% + 308px)}
.spe-terminal-title{height:35px;display:flex;align-items:center;gap:9px;padding:0 13px;color:#dddcd3;font:500 11px var(--display);border-bottom:1px solid #33352d;background:#20221e}
.spe-terminal-glyph{color:#FEC422;font-family:monospace;font-size:17px}
.spe-terminal-title small{margin-left:auto;color:#9c9e91;font:400 9px var(--sans)}
.spe-terminal-tabs{display:flex;gap:17px;align-items:center;height:30px;padding:0 13px;border-bottom:1px solid #34362e;font-size:10px;color:#8c8f80;background:#1b1d18}
.spe-terminal-tabs .is-active{color:#FEC422}
.spe-terminal-branch{margin-left:auto;color:#b9bcab}
.spe-terminal-panes{height:179px;display:grid;grid-template-columns:minmax(0,1fr) 103px}
.spe-terminal-output{padding:10px 12px 8px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;font-size:10px;line-height:1.7;color:#c4c7ba}
.spe-terminal-log{overflow:hidden;flex-shrink:1}
.spe-terminal-line{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}
.spe-terminal-line[data-tone="success"]{color:#c3d79c}
.spe-terminal-line[data-tone="gate"]{color:#FEC422}
.spe-terminal-line[data-tone="muted"]{color:#858a7b}
.spe-terminal-current{min-height:17px;white-space:pre-wrap;overflow-wrap:anywhere;color:#eeeede;flex-shrink:0}
.spe-terminal-cursor{display:inline;color:#FEC422;animation:spe-cursor-blink 1s steps(1) infinite}
@keyframes spe-cursor-blink{50%{opacity:0}}
.ew-stopped .spe-terminal-cursor{animation-play-state:paused}
.spe-terminal-agents{padding:12px 10px;border-left:1px solid #34362e;background:#191b17;font-size:9px}
.spe-terminal-agents>div{margin-bottom:12px}
.spe-terminal-agents span{color:#d2d5c7;display:block;margin-bottom:3px}
.spe-terminal-agents strong{font-weight:400;color:#8b9280;font-size:9px}
.spe-terminal-agents strong[data-state="active"]{color:#FEC422}
.spe-terminal-agents strong[data-state="done"]{color:#c3d79c}
.spe-terminal-agents .spe-terminal-context{padding-top:7px;border-top:1px solid #34362e;color:#777e6b;line-height:1.6;margin-bottom:0;font-size:8px}
.spe-terminal-command{height:30px;display:flex;align-items:center;gap:8px;padding:0 12px;border-top:1px solid #34362e;font-size:10px;color:#e1e3d8}
.spe-terminal-command>span:first-child{color:#FEC422}
.spe-terminal-task{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.spe-terminal-status{height:23px;background:#2b3022;color:#c9d2b5;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:8px}
@media(max-width:1050px){.spe-terminal-panes{grid-template-columns:minmax(0,1fr) 83px}.spe-terminal-output{padding-left:9px;padding-right:8px;font-size:9px}.spe-terminal-agents{padding:12px 7px}.spe-terminal-tabs{gap:11px;font-size:9px}}
@media(max-width:720px){.spe-hero .ew-scene{min-height:540px}.spe-hero .ew-build.spe-terminal{top:27%}.spe-hero .ew-release{top:calc(27% + 308px)}.spe-terminal-title{font-size:10px}.spe-terminal-panes{grid-template-columns:minmax(0,1fr) 74px}.spe-terminal-output{font-size:9px}.spe-terminal-agents{font-size:8px}.spe-terminal-agents strong{font-size:8px}.spe-terminal-context{font-size:7px!important}.spe-terminal-command{font-size:9px}}

.spe-phase-agents{list-style:none;margin:0;padding:0;display:grid;gap:15px}
.spe-phase-agents li>span{display:block;font:500 .9rem/1.4 var(--display);color:var(--ink-2);margin-bottom:4px}
.spe-cycle-details .spe-phase-agents p{font-size:.86rem;line-height:1.65}

/* Identify the framework supporting the delivery cycle. */
.spe-framework-label{text-align:center;font:600 1.3rem/1.3 var(--display);letter-spacing:-.025em;color:var(--ink);margin-bottom:24px}
.spe-framework-label sup{font-size:.55em;vertical-align:super;margin-left:2px}
.spe-framework-link{text-align:center;margin-top:22px}
.spe-framework-link .spe-link{padding:8px 0}

/* A contextual link from delivery services to the ART AI Stack framework. */
.spe-stack-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,90px)}
.spe-stack-visual{--ink-2:#e4e4db;--ink-3:#aaa99e;--line-strong:#4b4d40;--stack-accent:#fec422;min-width:0;width:100%;max-width:600px}
.spe-stack-copy h2 sup{font-size:.42em;vertical-align:super;margin-left:3px}
.spe-stack-copy>p{max-width:470px;margin:24px 0 30px}
.spe-stack-copy .btn-primary{display:inline-flex;align-items:center;gap:18px;font-size:.9rem;line-height:1.5;text-decoration:none}
.spe-stack-visual .foundation-model{border:1px solid var(--line-strong);border-radius:12px;padding:25px;background:linear-gradient(150deg,#22221f,#181818);box-shadow:0 18px 60px #0002}
.spe-stack-visual .foundation-model-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:30px;font:500 .8rem var(--display);color:var(--ink-2)}
.spe-stack-visual .foundation-status{color:var(--ink-3);font-size:.65rem;display:flex;gap:7px;align-items:center}
.spe-stack-visual .foundation-status i{height:5px;width:5px;flex-shrink:0;border-radius:50%;background:var(--stack-accent)}
.spe-stack-visual .foundation-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.spe-stack-visual .foundation-inputs>span{display:flex;flex-direction:column;gap:12px;align-items:center;padding:18px 8px;border:1px solid #45453f;border-radius:6px;background:#242422;color:var(--ink-2);font:500 .83rem var(--display)}
.spe-stack-visual .foundation-model svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.35}
.spe-stack-visual .foundation-inputs svg{color:#d3d3c8}
.spe-stack-visual .foundation-bridges{height:32px;display:flex;justify-content:space-around}
.spe-stack-visual .foundation-bridges i{width:1px;background:linear-gradient(#686853,#b19a53)}
.spe-stack-visual .foundation-engine{text-align:center;border:1px solid #8b773b;border-radius:7px;padding:27px 15px 22px;background:linear-gradient(140deg,#302b1d,#22221e)}
.spe-stack-visual .foundation-engine strong{font:500 clamp(1.5rem,2vw,1.95rem) var(--display);color:var(--stack-accent);letter-spacing:-.035em}
.spe-stack-visual .foundation-engine sup{font-size:.45em;margin-left:3px}
.spe-stack-visual .foundation-engine p{font-size:.77rem;margin-top:7px;color:#d2cbb8}
.spe-stack-visual .foundation-tracks{display:flex;justify-content:center;align-items:center;gap:9px;margin-top:21px}
.spe-stack-visual .foundation-tracks i{height:5px;width:5px;border-radius:50%;background:#b9a669}
.spe-stack-visual .foundation-tracks i:nth-child(2n){width:24px;height:1px;background:#746946}
.spe-stack-visual .foundation-control-band{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #40403a;margin-top:25px;padding-top:22px;font:500 .7rem var(--display);color:#cdcdc3}
.spe-stack-visual .foundation-control-band svg{width:21px;flex-shrink:0;color:var(--stack-accent)}
.spe-stack-visual .foundation-engine p{color:#d2cbb8;font-size:.77rem;line-height:1.6;margin-top:7px}
@media(max-width:720px){
 .spe-stack-feature{grid-template-columns:minmax(0,1fr);gap:30px}
 .spe-stack-copy{grid-row:1}
 .spe-stack-copy h2 br{display:none}
 .spe-stack-copy h2 br::after{content:' '}
 .spe-stack-copy>p{margin:20px 0 24px}
 .spe-stack-visual{justify-self:center}
 .spe-stack-visual .foundation-model{padding:20px 16px}
 .spe-stack-visual .foundation-model-top{font-size:.7rem;gap:10px}
 .spe-stack-visual .foundation-status{font-size:.58rem}
 .spe-stack-visual .foundation-inputs{gap:8px}
 .spe-stack-visual .foundation-inputs>span{font-size:.72rem;padding:16px 5px}
 .spe-stack-visual .foundation-control-band{font-size:.61rem;gap:7px}
 .spe-stack-copy .btn-primary{font-size:.83rem;gap:10px}
}

/* Make the delivery phases read as interactive controls. */
.spe-cycle .spe-process-tabs button{cursor:pointer;transition:transform 180ms ease-out,border-color 180ms ease-out,box-shadow 180ms ease-out,background-color 180ms ease-out}
.spe-phase-chevron{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:19px;height:19px;border:1px solid var(--line-strong);border-radius:50%;color:var(--ink-2);font:500 19px/1 var(--display)}
.spe-cycle .spe-process-tabs button[aria-selected="true"]{background:linear-gradient(var(--spe-soft),var(--spe-soft)),var(--bg);border-color:var(--spe-accent);box-shadow:0 0 0 1px var(--spe-accent),0 5px 16px #0000000d}
.spe-cycle .spe-process-tabs button[aria-selected="true"] .spe-phase-chevron{border-color:var(--spe-accent);background:var(--spe-accent);color:#fff}
.case-dark .spe-cycle .spe-process-tabs button[aria-selected="true"] .spe-phase-chevron{color:#141414}
.spe-cycle .spe-process-tabs button:focus-visible{outline:2px solid var(--spe-accent);outline-offset:5px}
@media(hover:hover) and (pointer:fine){
 .spe-cycle .spe-process-tabs button:hover{transform:translate(-50%,calc(-50% - 3px));border-color:var(--spe-accent);box-shadow:0 6px 18px #0002}
 .spe-cycle .spe-process-tabs button:hover .spe-phase-chevron{border-color:var(--spe-accent)}
}
.spe-cycle .spe-process-tabs button:active{transform:translate(-50%,-50%)}
@media(max-width:480px){.spe-phase-chevron{top:5px;right:5px;width:16px;height:16px;font-size:16px}}
@media(prefers-reduced-motion:reduce){.spe-cycle .spe-process-tabs button{transition:none}.spe-cycle .spe-process-tabs button:hover{transform:translate(-50%,-50%)}}

/* Text first, framework visual on the right. */
@media(min-width:721px){.spe-stack-copy{grid-column:1;grid-row:1}.spe-stack-visual{grid-column:2;grid-row:1}}


/* Relevant delivery examples, with direct links to the full customer stories. */
.spe-customer-stories{background:var(--bg-soft);border-top:1px solid var(--line)}
.spe-stories-heading{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:36px}
.spe-stories-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.spe-story-card{display:flex;flex-direction:column;align-items:flex-start;padding:32px;background:var(--bg);border:1px solid var(--line-strong);border-radius:10px;text-decoration:none;color:var(--ink);transition:border-color 180ms ease-out,box-shadow 180ms ease-out}
.spe-story-industry{font:500 .78rem/1.4 var(--display);color:var(--ink-3)}
.spe-story-result{display:flex;align-items:center;gap:22px;width:100%;padding:28px 0;margin-bottom:26px;border-bottom:1px solid var(--line)}
.spe-story-result strong{font:600 clamp(2.8rem,4vw,3.7rem)/1 var(--display);letter-spacing:-.04em;color:var(--spe-accent);white-space:nowrap}
.spe-story-result>span{max-width:230px;font:500 1rem/1.5 var(--display);color:var(--ink-2)}
.spe-story-card h3{font:500 clamp(1.35rem,1.9vw,1.75rem)/1.25 var(--display);letter-spacing:-.025em;margin:0 0 16px}
.spe-story-card>p{font-size:.92rem;line-height:1.7;margin:0 0 28px}
.spe-story-read{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;margin-top:auto;font:600 .9rem/1.5 var(--display)}
.spe-story-read>span{font-size:1.2rem;color:var(--spe-accent)}
.spe-story-card:hover{border-color:var(--spe-accent);box-shadow:0 8px 24px #0000000a}
.spe-story-card:hover .spe-story-read{color:var(--spe-accent)}
@media(max-width:720px){.spe-stories-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:28px}.spe-stories-grid{grid-template-columns:minmax(0,1fr);gap:20px}.spe-story-card{padding:24px}.spe-story-result{gap:20px;padding:24px 0;margin-bottom:22px}.spe-story-result strong{white-space:normal}.spe-story-result>span{font-size:.94rem}}
@media(max-width:900px){.spe-story-card{min-width:0}.spe-story-result{flex-wrap:wrap}.spe-story-result strong{white-space:normal}}
@media(prefers-reduced-motion:reduce){.spe-story-card{transition:none}}
.spe-inline-cta{margin-top:28px;font:500 1rem/1.5 var(--display);color:var(--ink-3)}.spe-inline-cta a{color:var(--ink);text-decoration:underline;text-decoration-color:#FEC422;text-underline-offset:4px;margin-left:6px}.spe-inline-cta a:hover{color:#FEC422}
.spe-paired h2{font:600 clamp(1.7rem,2.6vw,2.4rem)/1.1 var(--display);letter-spacing:-.03em;margin-bottom:28px}
.spe-paired-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.spe-paired-card{display:flex;flex-direction:column;gap:12px;padding:28px;border:1px solid var(--line-strong);border-radius:10px;background:var(--bg-soft,#1B1B1B);color:var(--ink);text-decoration:none;transition:border-color .2s}
.spe-paired-card:hover,.spe-paired-card:focus-visible{border-color:#FEC422}
.spe-paired-card h3{font:600 1.3rem/1.25 var(--display);letter-spacing:-.02em}
.spe-paired-card p{font-size:.95rem;line-height:1.65;color:var(--ink-3)}
.spe-paired-card .spe-story-read{margin-top:auto}
.gcc-stories{grid-template-columns:minmax(0,1fr);max-width:760px}
@media(max-width:720px){.spe-paired-grid{grid-template-columns:minmax(0,1fr)}.spe-paired-card{padding:22px}}
