/* Interactive edition. The shared 4px grid and 1.3 type scale remain authoritative. */
html{scroll-behavior:smooth}
.reading-progress{position:fixed;z-index:110;top:0;left:0;width:100%;height:4px;background:var(--orange);transform:scaleX(0);transform-origin:left;pointer-events:none}
.interactive-hero .hero-content{padding:var(--space-8) var(--space-8) var(--space-6)}
.interactive-hero h1{font-size:var(--type-5);line-height:72px;margin:var(--space-4) 0 var(--space-5)}
.interactive-hero .intro{line-height:28px}
.interactive-hero .actions{margin-top:var(--space-6)}
.hero-enter{animation:hero-arrive .8s both cubic-bezier(.2,.7,.2,1)}
.hero-enter:nth-child(2){animation-delay:.08s}.hero-enter:nth-child(3){animation-delay:.16s}.hero-enter:nth-child(4){animation-delay:.24s}.hero-enter:nth-child(5){animation-delay:.32s}
.interactive-hero .eyebrow{letter-spacing:.16em}
.motion-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.motion-ready .reveal.is-visible{opacity:1;transform:none}
.section-top .eyebrow{letter-spacing:.14em}
.diagram-caption,.insight-index,.sample-label{display:block;font-size:var(--type-small);line-height:20px;letter-spacing:.12em;color:var(--surface-copy)}
.explorer-shell{overflow:hidden;border:1px solid var(--surface-line);border-radius:12px;box-shadow:0 16px 64px rgba(2,43,102,.04)}
.explorer-toolbar{padding:var(--space-6) var(--space-8);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);border-bottom:1px solid var(--surface-line)}
.segment-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--surface-line);border-radius:4px;background:var(--light)}
.tab-button{appearance:none;border:0;border-radius:4px;background:transparent;color:var(--slate);padding:var(--space-3) var(--space-4);font-size:var(--type-base);line-height:24px;cursor:pointer;white-space:nowrap;transition:background .25s,color .25s}
.segment-tabs .tab-button[aria-selected=true]{background:var(--navy);color:#fff;box-shadow:0 4px 12px rgba(2,43,102,.08)}
.segment-tabs .tab-button:hover:not([aria-selected=true]){background:rgba(2,43,102,.06);color:var(--navy)}
.security-explorer-grid{display:grid;grid-template-columns:1.4fr 1fr;align-items:stretch}
.security-map{position:relative;min-height:416px;background:radial-gradient(ellipse at center,rgba(245,247,250,.95),#fff 72%);isolation:isolate}
.map-connectors{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:rgba(2,43,102,.2);stroke-width:1.5}
.map-connectors .flow-path{stroke:var(--orange);stroke-width:2;stroke-dasharray:8 180;animation:map-flow 8s linear infinite}
.map-orbit{position:absolute;top:50%;left:50%;width:244px;height:244px;transform:translate(-50%,-50%);border:1px dashed rgba(2,43,102,.12);border-radius:50%;z-index:-1}
.map-core{position:absolute;left:50%;top:50%;width:144px;height:144px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid rgba(2,43,102,.12);border-radius:12px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);box-shadow:0 12px 32px rgba(2,43,102,.06);text-align:center}
.map-core>span{width:28px;height:28px}.map-core svg{width:28px;height:28px}.map-core strong{font-size:var(--type-1);line-height:28px;font-weight:550}.map-core small{font-size:var(--type-small);line-height:20px;letter-spacing:.04em}
.map-node{position:absolute;width:176px;min-height:72px;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid rgba(2,43,102,.14);border-radius:8px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);color:var(--navy);text-align:left;box-shadow:0 8px 24px rgba(2,43,102,.035);cursor:pointer;transition:transform .25s,border-color .25s,box-shadow .25s}
.map-node:hover{transform:translateY(-4px);border-color:var(--navy)}
.map-node[aria-pressed=true]{border-color:var(--orange);box-shadow:0 8px 32px rgba(245,157,41,.12)}
.map-node-icon{flex:none;width:24px;height:24px}.map-node svg{width:24px;height:24px}.map-node-label{font-size:var(--type-base);line-height:24px;font-weight:500}
.node-dot{display:none;position:absolute;right:8px;top:8px;width:4px;height:4px;background:var(--orange);border-radius:50%}.map-node[aria-pressed=true] .node-dot{display:block}
.map-node-0{top:var(--space-8);left:var(--space-6)}.map-node-1{top:var(--space-8);right:var(--space-6)}.map-node-2{bottom:var(--space-12);left:var(--space-6)}.map-node-3{bottom:var(--space-12);right:var(--space-6)}
.map-hint{position:absolute;bottom:var(--space-3);width:100%;text-align:center;font-size:var(--type-small);line-height:20px;color:var(--slate)}
.security-insight{padding:var(--space-12) var(--space-10);border-left:1px solid var(--surface-line);background:var(--light)}
.security-insight h3{margin-top:var(--space-4);font-size:var(--type-3);line-height:44px}.security-insight p{min-height:72px}
.insight-checks{padding:0;list-style:none;margin:var(--space-6) 0 var(--space-8)}
.insight-checks li{position:relative;padding-left:var(--space-6);font-size:var(--type-base);line-height:24px;margin-top:var(--space-3);color:var(--slate)}
.insight-checks li:before{content:'↗';position:absolute;left:0;top:0;color:var(--navy)}
.assessment-story{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:var(--space-20)}
.assessment-ring{position:relative;width:100%;max-width:400px;aspect-ratio:1;justify-self:center}
.assessment-ring>svg{width:100%;height:100%;fill:none;stroke-width:1}
.ring-track{stroke:rgba(245,247,250,.12);stroke-width:8}.ring-inner{stroke:rgba(245,247,250,.12);stroke-dasharray:2 8}
.ring-segment{stroke:rgba(245,247,250,.24);stroke-width:8;stroke-linecap:round;stroke-dasharray:192 905;stroke-dashoffset:0;transition:stroke .4s,stroke-width .4s}
.ring-segment.is-active{stroke:var(--orange);stroke-width:12;animation:ring-emphasis .6s ease-out}
.ring-copy{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:var(--space-3)}
.ring-copy small{font-size:var(--type-small);line-height:20px;letter-spacing:.16em}.ring-copy strong{font-size:var(--type-6);line-height:92px;font-weight:450;letter-spacing:-.04em}.ring-copy>span{font-size:var(--type-base);line-height:24px}
.ring-label{position:absolute;font-size:var(--type-small);line-height:20px;letter-spacing:.1em;background:var(--navy);padding:var(--space-1) var(--space-2);color:var(--light)}
.ring-label-top{top:0;left:50%;transform:translateX(-50%)}.ring-label-right{right:-12px;top:50%;transform:translateY(-50%)}.ring-label-bottom{bottom:0;left:50%;transform:translateX(-50%)}.ring-label-left{left:-12px;top:50%;transform:translateY(-50%)}
.assessment-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-8)}
.assessment-tabs .tab-button{color:var(--light);border-radius:0;border-bottom:1px solid rgba(245,247,250,.24);padding:var(--space-4) 0;text-align:left;white-space:normal}
.assessment-tabs .tab-button span{display:block;font-size:var(--type-small);line-height:20px;margin-bottom:var(--space-2);opacity:.65}
.assessment-tabs .tab-button[aria-selected=true]{border-color:var(--orange);color:var(--orange)}
.assessment-detail{min-height:284px}.assessment-detail h3{font-size:var(--type-3);line-height:44px;margin:var(--space-4) 0 var(--space-5)}
.deliverable{padding:var(--space-5) var(--space-6);border:1px solid rgba(245,247,250,.2);border-left:2px solid var(--orange);border-radius:4px;background:rgba(245,247,250,.05);margin-top:var(--space-6)}
.deliverable span{display:block;font-size:var(--type-small);line-height:20px;letter-spacing:.1em;opacity:.8;margin-bottom:var(--space-2)}.deliverable strong{font-size:var(--type-base);line-height:24px;font-weight:500}
.assessment-next{background:none;border:0;padding-inline:0;cursor:pointer;margin-top:var(--space-4);color:#fff}
.workflow-lab{border:1px solid var(--surface-line);border-radius:12px;overflow:hidden;box-shadow:0 12px 48px rgba(2,43,102,.04)}
.workflow-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--surface-line);background:var(--light)}
.workflow-toolbar .segment-tabs{padding:0;border:0;gap:var(--space-1)}
.workflow-toolbar .tab-button{font-size:var(--type-small);line-height:20px;padding:var(--space-3)}
.sample-label{display:flex;align-items:center;gap:var(--space-2);letter-spacing:.06em;font-size:var(--type-small);white-space:nowrap;color:var(--slate)}
.sample-label i{width:4px;height:4px;background:var(--orange);border-radius:50%}
#workflow-panel{padding:var(--space-8)}
.workflow-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);margin-bottom:var(--space-8)}
.workflow-heading h3{font-size:var(--type-2);line-height:36px;margin:var(--space-2) 0 0}
.run-workflow{flex:none;cursor:pointer}.run-workflow>svg{width:20px;height:20px;fill:none;stroke-width:1.5}.run-workflow:disabled{cursor:progress;opacity:.65}
.workflow-pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}
.workflow-stage{position:relative;padding:var(--space-6);border:1px solid rgba(2,43,102,.14);border-radius:8px;background:var(--light);transition:background .4s,border-color .4s,transform .4s}
.workflow-stage:not(:last-child):after{content:'→';position:absolute;right:-16px;top:50%;z-index:2;color:var(--navy);font-size:var(--type-base);line-height:24px;transform:translateY(-50%)}
.stage-top{display:flex;align-items:center;gap:var(--space-3)}.workflow-icon{display:grid;place-items:center;width:40px;height:40px;background:#fff;border:1px solid rgba(2,43,102,.08);border-radius:4px}.workflow-icon svg{width:24px;height:24px}
.stage-number{font-size:var(--type-small);line-height:20px;margin-left:auto;color:var(--slate)}.stage-check{display:none;margin-left:auto;color:var(--navy);font-size:var(--type-base)}
.workflow-stage h4{font-size:var(--type-1);line-height:28px;margin:var(--space-5) 0 var(--space-3);letter-spacing:-.02em}
.workflow-stage p{font-size:var(--type-base);line-height:24px;min-height:72px;margin-bottom:var(--space-6)}
.stage-meter{height:4px;border-radius:4px;background:rgba(2,43,102,.1);overflow:hidden}.stage-meter>span{display:block;height:100%;width:0;background:var(--orange);transition:width .55s ease}
.workflow-stage.is-current{border-color:var(--orange);background:#fff;transform:translateY(-4px);box-shadow:0 8px 24px rgba(2,43,102,.045)}
.workflow-stage.is-done{border-color:rgba(2,43,102,.3);background:#fff}.workflow-stage.is-done .stage-number{display:none}.workflow-stage.is-done .stage-check{display:block}.workflow-stage.is-current .stage-meter>span,.workflow-stage.is-done .stage-meter>span{width:100%}.workflow-stage.is-done .stage-meter>span{background:var(--navy)}
.workflow-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);margin-top:var(--space-6);min-height:32px}
.workflow-status{display:flex;align-items:center;gap:var(--space-3);font-size:var(--type-small);line-height:20px;color:var(--slate)}
.status-dot{width:8px;height:8px;flex:none;border:1px solid var(--navy);border-radius:50%;background:transparent}.workflow-lab[data-state=running] .status-dot{background:var(--orange);border-color:var(--orange);animation:status-pulse 1s infinite}.workflow-lab[data-state=complete] .status-dot{background:var(--navy)}
.workflow-reset{flex:none;border:0;background:none;color:var(--navy);font-size:var(--type-small);line-height:20px;padding:var(--space-2);text-decoration:underline;text-underline-offset:4px;cursor:pointer}.workflow-reset:disabled{opacity:.45;cursor:default}
.workflow-output{display:flex;gap:var(--space-8);justify-content:space-between;align-items:center;padding:var(--space-6);margin-top:var(--space-6);border:1px solid rgba(2,43,102,.16);border-radius:8px;background:var(--light);animation:hero-arrive .4s ease both}
.workflow-output[hidden]{display:none}.workflow-output strong{display:block;font-size:var(--type-base);line-height:24px;margin-top:var(--space-2);font-weight:550}
.workflow-output dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6);margin:0}.workflow-output dt{font-size:var(--type-small);line-height:20px;color:var(--slate);margin-bottom:var(--space-2)}.workflow-output dd{font-size:var(--type-small);line-height:20px;font-weight:550;color:var(--navy);margin:0}
.ai-security-bridge{display:flex;align-items:center;gap:var(--space-6);margin-top:var(--space-8);padding:var(--space-6) var(--space-8);border:1px solid rgba(2,43,102,.14);border-radius:8px;background:var(--light)}
.bridge-icon{display:grid;place-items:center;width:48px;height:48px;flex:none;color:var(--navy);border:1px solid rgba(2,43,102,.12);border-radius:8px;background:#fff}.bridge-icon svg{width:28px;height:28px}
.ai-security-bridge strong{font-size:var(--type-base);line-height:24px;font-weight:550}.ai-security-bridge p{font-size:var(--type-small);line-height:20px;margin:var(--space-2) 0 0}.ai-security-bridge>.text-link{margin-left:auto;white-space:nowrap}
.stack-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);align-items:center}
.stack-intro>p{max-width:424px}.stack-context{border-top:1px solid rgba(245,247,250,.24);margin-top:var(--space-8);padding-top:var(--space-6);min-height:224px}
.stack-context h3{font-size:var(--type-2);line-height:36px;margin-top:var(--space-3)}.stack-context p{max-width:440px}
.stack-graphic{position:relative;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6) 0 var(--space-10)}
.stack-graphic:before{content:'';position:absolute;left:48px;right:48px;top:0;bottom:0;border-left:1px solid rgba(245,247,250,.16);border-right:1px solid rgba(245,247,250,.16);z-index:-1}
.stack-layer{position:relative;display:flex;align-items:center;gap:var(--space-5);min-height:100px;padding:var(--space-6);border:1px solid rgba(245,247,250,.2);border-radius:8px;background:rgba(245,247,250,.055);backdrop-filter:blur(16px);color:#fff;text-align:left;cursor:pointer;transition:transform .3s,border-color .3s,background .3s}
.stack-layer:hover{transform:translateX(-8px);border-color:rgba(245,247,250,.5)}
.stack-layer[aria-pressed=true]{border-color:var(--orange);background:rgba(245,247,250,.1);transform:translateX(-12px)}
.stack-index{font-size:var(--type-small);line-height:20px;opacity:.6}.stack-icon{flex:none;width:28px;height:28px}.stack-icon svg{width:28px;height:28px}
.stack-layer strong{display:block;font-size:var(--type-1);line-height:28px;font-weight:500}.stack-layer small{display:block;font-size:var(--type-small);line-height:20px;margin-top:var(--space-1);color:var(--light)}.stack-layer>svg{width:20px;height:20px;margin-left:auto;flex:none}
.stack-foundation{text-align:center;font-size:var(--type-small);line-height:20px;letter-spacing:.12em;margin-top:var(--space-3);color:var(--light)}
.service-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-12);margin-top:var(--space-12);border-top:1px solid rgba(245,247,250,.2)}
.service-index-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-5) 0;border-bottom:1px solid rgba(245,247,250,.2);font-size:var(--type-base);line-height:24px;color:#fff}.service-index-link>svg{width:20px;height:20px;flex:none;transition:transform .3s}.service-index-link:hover>svg{transform:translateX(4px)}
.interactive-projects .project-card{transition:transform .35s,box-shadow .35s}.interactive-projects .project-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px rgba(2,43,102,.08)}
.interactive-projects .project-visual:after{transition:transform .7s}.interactive-projects .project-card:hover .project-visual:after{transform:scale(1.1)}
.interactive-closing{position:relative;overflow:hidden;padding-block:var(--space-24)}.interactive-closing .closing-inner{position:relative;z-index:1}.interactive-closing h2{font-size:var(--type-4);line-height:56px}.closing-path{position:absolute;bottom:24px;left:0;right:0;height:1px;background:rgba(245,247,250,.12)}.closing-path>span{position:absolute;left:0;top:0;width:80px;height:2px;background:var(--orange);animation:connect-flow 16s infinite linear}.closing-path i{position:absolute;top:-4px;width:8px;height:8px;border:1px solid rgba(245,247,250,.5);border-radius:50%;background:var(--navy)}.closing-path i:nth-of-type(1){left:20%}.closing-path i:nth-of-type(2){left:50%}.closing-path i:nth-of-type(3){left:80%}
.changing{animation:content-change .4s both}
@keyframes hero-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes content-change{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes connect-flow{from{left:-10%}to{left:110%}}
@keyframes map-flow{to{stroke-dashoffset:-376}}
@keyframes scroll-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
@keyframes ring-emphasis{from{stroke-dashoffset:192}to{stroke-dashoffset:0}}
@keyframes status-pulse{50%{opacity:.3}}
@media(min-width:1600px){.interactive-hero h1{font-size:var(--type-6);line-height:92px}.interactive-hero .hero-content{padding-block:var(--space-12)}}
@media(max-width:1100px){.explorer-toolbar{align-items:flex-start;flex-direction:column;padding:var(--space-6)}.security-explorer-grid{grid-template-columns:1.25fr 1fr}.security-map{min-height:440px}.map-node{width:160px;padding:var(--space-3);gap:var(--space-2)}.map-node-0,.map-node-2{left:var(--space-4)}.map-node-1,.map-node-3{right:var(--space-4)}.map-core{width:128px;height:140px}.map-node-label{font-size:var(--type-small);line-height:20px}.security-insight{padding:var(--space-8)}.security-insight h3{font-size:var(--type-2);line-height:36px}.assessment-story{gap:var(--space-12);grid-template-columns:1fr 1.3fr}.assessment-ring{max-width:320px}.workflow-stage{padding:var(--space-5)}.workflow-stage h4{font-size:var(--type-base);line-height:24px}.workflow-stage p{font-size:var(--type-small);line-height:20px}.stack-layout{gap:var(--space-12)}.stack-layer{padding:var(--space-5);gap:var(--space-3)}.stack-layer strong{font-size:var(--type-base);line-height:24px}.stack-layer small{max-width:240px}.ai-security-bridge{flex-wrap:wrap}.ai-security-bridge>.text-link{margin-left:72px}}
@media(max-width:800px){.interactive-hero h1{font-size:var(--type-4);line-height:56px}.security-explorer-grid{grid-template-columns:1fr}.security-map{min-height:400px}.security-insight{border-left:0;border-top:1px solid var(--surface-line);padding:var(--space-8)}.security-insight p{min-height:0}.map-node{width:176px}.map-node-label{font-size:var(--type-base);line-height:24px}.assessment-story{grid-template-columns:1fr;gap:var(--space-8)}.assessment-ring{max-width:300px}.assessment-detail{min-height:240px}.workflow-pipeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.workflow-stage:nth-child(2):after{display:none}.workflow-stage p{min-height:40px}.workflow-output{align-items:flex-start;flex-direction:column;gap:var(--space-5)}.workflow-output dl{width:100%}.stack-layout{grid-template-columns:1fr;gap:var(--space-6)}.stack-context{min-height:0}.stack-graphic{padding-inline:var(--space-3)}.stack-layer[aria-pressed=true]{transform:translateX(-8px)}.stack-layer strong{font-size:var(--type-1);line-height:28px}.stack-layer small{max-width:none}.service-index{margin-top:var(--space-6)}}
@media(max-width:680px){.interactive-hero .hero-content{padding:var(--space-10) var(--space-5) var(--space-8)}.interactive-hero h1{font-size:var(--type-3);line-height:44px;letter-spacing:-.04em;margin:var(--space-5) 0}.interactive-hero .intro{line-height:24px}.interactive-hero .actions{gap:var(--space-3);margin-top:var(--space-6)}.interactive-hero .hero .button{width:auto}.explorer-toolbar{padding:var(--space-5);gap:var(--space-4)}.segment-tabs{width:100%;overflow-x:auto;scrollbar-width:thin}.segment-tabs .tab-button{padding:var(--space-3);font-size:var(--type-small);line-height:20px;flex:1}.diagram-caption{letter-spacing:.08em}.security-map{min-height:404px}.map-node{width:calc(50% - 24px);min-height:68px;padding:var(--space-3);gap:var(--space-2)}.map-node-icon,.map-node svg{width:20px;height:20px}.map-node-label{font-size:var(--type-small);line-height:20px}.map-node-0,.map-node-2{left:var(--space-4)}.map-node-1,.map-node-3{right:var(--space-4)}.map-node-0,.map-node-1{top:var(--space-6)}.map-node-2,.map-node-3{bottom:var(--space-12)}.map-core{height:140px;width:128px}.map-core small{letter-spacing:0}.map-orbit{width:208px;height:208px}.map-hint{font-size:var(--type-small);padding:0 var(--space-3)}.security-insight{padding:var(--space-6)}.security-insight h3{font-size:var(--type-2);line-height:36px}.insight-checks{margin:var(--space-5) 0}.assessment-ring{max-width:272px}.assessment-story{gap:var(--space-6)}.assessment-tabs{gap:var(--space-2);margin-bottom:var(--space-6)}.assessment-tabs .tab-button{font-size:var(--type-small);line-height:20px}.assessment-detail h3{font-size:var(--type-2);line-height:36px}.assessment-detail{min-height:284px}.deliverable{padding:var(--space-4)}.workflow-toolbar{padding:var(--space-5);gap:var(--space-4)}.workflow-toolbar .segment-tabs{flex-wrap:wrap;overflow:visible}.workflow-toolbar .tab-button{flex:auto}.sample-label{white-space:normal;font-size:var(--type-small);line-height:20px}#workflow-panel{padding:var(--space-5)}.workflow-heading{flex-direction:column;align-items:flex-start;gap:var(--space-5)}.workflow-heading h3{font-size:var(--type-2);line-height:36px}.run-workflow{width:100%;justify-content:center}.workflow-stage{padding:var(--space-4)}.workflow-stage h4{font-size:var(--type-base);line-height:24px}.workflow-stage p{font-size:var(--type-small);line-height:20px;min-height:60px}.workflow-stage:not(:last-child):after{right:-12px}.workflow-icon{width:32px;height:32px}.workflow-icon svg{width:20px;height:20px}.stage-top{gap:var(--space-2)}.workflow-bottom{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.workflow-reset{padding-left:20px}.workflow-output{padding:var(--space-4)}.workflow-output dl{grid-template-columns:1fr;gap:var(--space-4)}.workflow-output dl>div{display:flex;justify-content:space-between;gap:var(--space-4)}.workflow-output dt{margin-bottom:0}.workflow-output dd{text-align:right}.ai-security-bridge{padding:var(--space-5);gap:var(--space-4)}.ai-security-bridge>div{flex:1;min-width:160px}.ai-security-bridge>.text-link{margin-left:0;white-space:normal}.stack-layout{gap:var(--space-4)}.stack-context{margin-top:var(--space-6)}.stack-context h3{font-size:var(--type-2);line-height:36px}.stack-layer{gap:var(--space-3);padding:var(--space-4);min-height:100px}.stack-index{display:none}.stack-layer strong{font-size:var(--type-base);line-height:24px}.stack-icon,.stack-icon svg{width:24px;height:24px}.stack-layer small{font-size:var(--type-small);line-height:20px}.stack-layer>svg{width:16px;height:16px}.stack-foundation{font-size:var(--type-small);letter-spacing:.04em}.service-index{grid-template-columns:1fr}.interactive-closing{padding-block:var(--space-16)}.interactive-closing h2{font-size:var(--type-3);line-height:44px}.interactive-closing .button{max-width:100%;white-space:normal}.interactive-projects .context-note{margin-top:var(--space-6)}}
@media(min-width:801px) and (max-height:760px){.interactive-hero .hero-content{padding-block:var(--space-6)}.interactive-hero h1{font-size:var(--type-4);line-height:56px;margin:var(--space-3) 0 var(--space-4)}.interactive-hero .actions{margin-top:var(--space-5)}}
@media(max-width:680px){
  .interactive-hero .hero-content{padding-block:var(--space-8) var(--space-6)}
}

/* Restrained presentation: motion communicates state, while surfaces stay quiet. */
.hero-enter{animation:hero-arrive .45s both ease-out}
.motion-ready .reveal{transform:none;transition:opacity .4s ease}
.explorer-shell,.workflow-lab{border-radius:4px;box-shadow:none}
.security-map{background:#fff}
.map-core{border-radius:4px;background:var(--light);box-shadow:none;backdrop-filter:none}
.map-node{border-radius:4px;background:#fff;box-shadow:none;backdrop-filter:none;transition:border-color .2s,background .2s}
.map-node:hover{transform:none;background:var(--light)}
.map-node[aria-pressed=true]{border-color:var(--navy);background:var(--light);box-shadow:inset 0 -2px var(--navy)}
.node-dot{display:none!important}
.ring-inner{display:none}
.ring-segment.is-active{stroke-width:8;animation:none}
.ring-copy strong{font-size:var(--type-5);line-height:72px}
.segment-tabs .tab-button[aria-selected=true]{box-shadow:none}
.workflow-stage{border-radius:4px;transition:background .2s,border-color .2s}
.workflow-stage.is-current{transform:none;box-shadow:none}
.workflow-icon{background:transparent;border:0;justify-content:start}
.stack-layer{border-radius:4px;backdrop-filter:none;transition:border-color .2s,background .2s}
.stack-layer:hover,.stack-layer[aria-pressed=true]{transform:none}
.stack-graphic:before{display:none}
.interactive-projects .project-card,.interactive-projects .project-card:hover{transform:none;box-shadow:none}
.interactive-projects .project-card:hover .project-visual:after{transform:none}
@keyframes hero-arrive{from{opacity:0}to{opacity:1}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
