/* Native exploded architecture: the expanded composition is the static baseline. */
.layers-section{--layer-progress:1;background:#0b3ed3;background:linear-gradient(120deg,#0b39c4 0%,#1049d9 100%);color:#fff;position:relative}
.layers-section .layers-stage{position:relative;padding:90px 0}
.layers-section .layers-layout{display:grid;grid-template-columns:1fr 1.12fr;grid-template-rows:auto auto auto;column-gap:42px;row-gap:25px;align-items:start}
.layers-section .layers-copy{grid-column:1;grid-row:1;min-width:0}
.layers-section .layers-eyebrow{display:flex;align-items:center;gap:10px;font:500 10px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.11em;text-transform:uppercase;color:#c4d9ff}
.layers-section .layers-eyebrow>span{width:5px;height:5px;flex:none;border-radius:50%;background:#d5e9ff}
.layers-section h2{font-size:clamp(43px,4.05vw,58px);font-weight:550;line-height:1.06;letter-spacing:-.052em;margin-top:24px;color:#fff}
.layers-section h2>span{color:#bfdcff}
.layers-section .layers-intro{font-size:16px;line-height:1.7;letter-spacing:-.012em;color:#d8e5ff;max-width:490px;margin-top:24px}
.layers-section .layers-visual{grid-column:2;grid-row:1/4;align-self:center;min-width:0;width:100%;margin:0;position:relative}
.layers-section .layers-diagram{display:block;width:100%;height:auto;aspect-ratio:720/680;overflow:visible}
.layers-section .architecture-plate{transform:translateY(var(--layer-y));transform-box:view-box;transform-origin:0 0}
.layers-section .architecture-plate[data-layer="0"]{--layer-y:186px}
.layers-section .architecture-plate[data-layer="1"]{--layer-y:62px}
.layers-section .architecture-plate[data-layer="2"]{--layer-y:-62px}
.layers-section .architecture-plate[data-layer="3"]{--layer-y:-186px}
.layers-section .architecture-layer-label{opacity:1}
.layers-section .architecture-layer-label text{fill:#e5efff;font:500 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.09em}
.layers-section.layers-motion-ready .architecture-layer-label{opacity:var(--layer-reveal,0)}
.layers-section .layers-visual-note{color:#c2d8ff;display:flex;align-items:center;justify-content:center;gap:11px;font:400 10px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em;margin-top:0;padding-right:90px}
.layers-section .layers-visual-note>span{font-size:17px;color:#e5f0ff}
.layers-section .layers-steps{grid-column:1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:17px 25px;list-style:none;padding:0;margin:5px 0 0;max-width:510px}
.layers-section .layers-step{display:flex;align-items:flex-start;gap:11px;border-top:1px solid #a6c4ff54;padding-top:12px;position:relative}
.layers-section .layers-step:before{content:'';position:absolute;top:-1px;left:0;width:23px;height:2px;background:#e6f4ff;opacity:0;transition:opacity .16s ease}
.layers-section .layers-step.is-active:before{opacity:1}
.layers-section .layers-step-number{color:#c3d9ff;font:400 10px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;padding-top:2px;flex:none}
.layers-section .layers-step h3{font-size:14px;font-weight:600;line-height:1.45;letter-spacing:-.018em;color:#fff}
.layers-section .layers-step p{font-size:11px;line-height:1.65;color:#cbdfff;margin-top:5px;max-width:205px}
.layers-section .layers-action{grid-column:1;grid-row:3;margin-top:1px}
.layers-section .layers-contact{display:inline-flex;align-items:center;justify-content:center;gap:24px;max-width:100%;min-height:52px;padding:14px 23px;border:1px solid #fff;border-radius:999px;background:#fff;color:#093589;font-size:12px;font-weight:600;line-height:1.5;transition:background .2s ease}
.layers-section .layers-contact>span{font-size:21px;flex:none}
.layers-section .layers-contact:hover{background:#e4efff}
.layers-section .layers-contact:focus-visible{outline:3px solid #fff;outline-offset:6px}
.layers-section .layers-action>p{font-size:10px;line-height:1.7;color:#c4d9ff;margin-top:11px}
/* Enough height for the complete composition; smaller windows retain normal document flow. */
@media(min-width:960px) and (min-height:800px){
 .layers-section.layers-motion-ready{min-height:calc(100svh + 620px)}
 .layers-section.layers-motion-ready .layers-stage{position:sticky;top:82px;min-height:calc(100svh - 82px);padding:35px 0;display:flex;align-items:center}
}
@media(min-width:960px) and (max-height:899px){
 .layers-section h2{font-size:clamp(42px,3.6vw,52px);margin-top:20px}.layers-section .layers-intro{font-size:15px;margin-top:20px}.layers-section .layers-layout{row-gap:20px}.layers-section .layers-steps{gap:15px 22px}.layers-section .layers-contact{min-height:48px;padding:12px 20px;font-size:11px}.layers-section .layers-visual{max-width:590px;justify-self:center}
}
@media(min-width:960px) and (max-width:1100px){
 .layers-section .layers-layout{grid-template-columns:1fr 1fr;column-gap:25px}.layers-section h2{font-size:44px}.layers-section .layers-intro{font-size:14px}.layers-section .layers-eyebrow{font-size:9px;letter-spacing:.07em}.layers-section .layers-step h3{font-size:12px}.layers-section .layers-step p{font-size:10px}.layers-section .layers-steps{column-gap:17px}.layers-section .layers-step{gap:8px}.layers-section .layers-contact{font-size:11px;gap:18px;padding:13px 18px}.layers-section .layers-visual-note{font-size:8px;padding-right:40px}
}
@media(max-width:959px){
 .layers-section .layers-stage{padding:74px 0 69px}.layers-section .layers-layout{grid-template-columns:1fr;grid-template-rows:repeat(4,auto);gap:0;max-width:660px}.layers-section .layers-copy{grid-column:1;grid-row:1}.layers-section h2{font-size:clamp(43px,6.7vw,58px)}.layers-section .layers-intro{max-width:540px;font-size:16px}.layers-section .layers-visual{grid-column:1;grid-row:2;max-width:650px;margin:30px auto 32px}.layers-section .layers-visual-note{padding-right:0;margin-top:3px}.layers-section .layers-steps{grid-column:1;grid-row:3;max-width:none;gap:22px 35px;margin-top:0}.layers-section .layers-step h3{font-size:16px}.layers-section .layers-step p{font-size:13px;max-width:245px}.layers-section .layers-step-number{font-size:11px}.layers-section .layers-step{padding-top:15px;gap:13px}.layers-section .layers-action{grid-column:1;grid-row:4;margin-top:33px}.layers-section .layers-contact{font-size:12px}.layers-section .layers-action>p{font-size:11px}
}
@media(max-width:600px){
 .layers-section .layers-stage{padding:59px 0 57px}.layers-section .layers-eyebrow{font-size:9px;letter-spacing:.065em;gap:9px}.layers-section h2{font-size:clamp(36px,8.7vw,49px);margin-top:23px;line-height:1.08;letter-spacing:-.047em}.layers-section .layers-intro{font-size:14px;line-height:1.8;margin-top:21px}.layers-section .layers-visual{margin:24px auto 30px;overflow:hidden}.layers-section .layers-diagram{width:130%;max-width:none;margin-left:-4%}.layers-section .architecture-layer-label{display:none}.layers-section .layers-visual-note{font-size:9px;gap:8px;margin-top:1px;letter-spacing:0}.layers-section .layers-steps{gap:21px 22px}.layers-section .layers-step{gap:8px;padding-top:12px}.layers-section .layers-step-number{font-size:9px;padding-top:3px}.layers-section .layers-step h3{font-size:13px;line-height:1.4}.layers-section .layers-step p{font-size:11px;line-height:1.7;max-width:210px;margin-top:7px}.layers-section .layers-action{margin-top:30px}.layers-section .layers-contact{font-size:11px;padding:14px 18px;gap:18px;min-height:52px}.layers-section .layers-action>p{font-size:10px}
}
@media(max-width:350px){.layers-section h2{font-size:32px}.layers-section .layers-eyebrow{font-size:8px;letter-spacing:.04em}.layers-section .layers-steps{column-gap:16px}.layers-section .layers-step h3{font-size:12px}.layers-section .layers-step p{font-size:10px}.layers-section .layers-contact{font-size:10px;gap:12px;padding-inline:16px}.layers-section .layers-visual-note{font-size:8px}}
@media(prefers-reduced-motion:reduce){.layers-section.layers-motion-ready{min-height:0}.layers-section.layers-motion-ready .layers-stage{position:relative;top:auto;min-height:0}.layers-section .layers-step:before,.layers-section .layers-contact{transition:none}.layers-section .architecture-layer-label{opacity:1!important}}
@media(forced-colors:active){.layers-section{background:Canvas;color:CanvasText}.layers-section h2,.layers-section h2>span,.layers-section .layers-eyebrow,.layers-section .layers-intro,.layers-section .layers-step-number,.layers-section .layers-step h3,.layers-section .layers-step p,.layers-section .layers-action>p{color:CanvasText}.layers-section .layers-visual{display:none}.layers-section .layers-layout{display:block}.layers-section .layers-steps{margin-top:30px}.layers-section .layers-step{border-color:CanvasText}.layers-section .layers-action{margin-top:28px}.layers-section .layers-contact,.layers-section .layers-contact:hover{background:ButtonFace;color:ButtonText;border-color:ButtonText}.layers-section .layers-eyebrow>span,.layers-section .layers-step:before{background:CanvasText}.layers-section.layers-motion-ready{min-height:0}.layers-section.layers-motion-ready .layers-stage{position:relative;top:auto;min-height:0}}
