/* ERECE v3: futuristic layer, brand palette only (#0B2545 #2a4668 #EEF1F4 #1B998B #F2A541) */
body{background-image:linear-gradient(rgba(42,70,104,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(42,70,104,.06) 1px,transparent 1px);background-size:40px 40px}

.glass{background:color-mix(in srgb,#EEF1F4 72%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,#2a4668 22%,transparent);border-radius:.75rem;box-shadow:0 10px 30px -18px #0B2545}
.band--inv .glass,.v3-dark .glass{background:color-mix(in srgb,#0B2545 70%,transparent);border-color:#2a4668;color:#fff}
.v3-dark{background:#0B2545;color:#EEF1F4;position:relative;overflow:hidden}
.v3-dark h2,.v3-dark h3{color:#fff}.v3-dark p,.v3-dark li,.v3-dark dd{color:#C9D6E4}
.v3-dark::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(201,214,228,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(201,214,228,.07) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}
.v3-dark>.wrap{position:relative}
.hero-visual{position:relative}
.v3-gear{position:absolute;right:-1.5rem;bottom:-1.5rem;width:44%;max-width:210px;color:#1B998B;filter:drop-shadow(0 6px 14px rgba(11,37,69,.35))}
.v3-gear .rot{transform-origin:100px 100px;animation:v3spin 30s linear infinite}
.v3-gear .rot2{transform-origin:100px 100px;animation:v3spin 18s linear infinite reverse}
@keyframes v3spin{to{transform:rotate(360deg)}}
.v3-counters{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.v3-counters div{padding:.8rem 1.1rem;min-width:8rem}
.v3-counters b{display:block;font-size:2rem;line-height:1;color:#0B2545;font-variant-numeric:tabular-nums}
.v3-counters span{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:#34475c}
.v3-timeline{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem;counter-reset:st}
.v3-timeline li{padding:1.2rem;position:relative;counter-increment:st}
.v3-timeline li::before{content:"0" counter(st);font:700 .8rem/1 monospace;letter-spacing:.12em;color:#1B998B;display:block;margin-bottom:.6rem}
.v3-timeline li::after{content:"";position:absolute;top:1.6rem;right:-1rem;width:1rem;height:2px;background:#1B998B}
.v3-timeline li:last-child::after{display:none}
.v3-timeline h3{margin:0 0 .35rem;font-size:1.05rem}
.v3-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin-top:1.5rem}
.v3-grid>div{padding:1.2rem}.v3-grid h3{margin:0 0 .4rem;font-size:1.05rem}.v3-grid p{margin:0}
.v3-strip{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:1rem 0 0}
.v3-strip li{padding:.55rem .95rem;border:1px solid #2a4668;border-radius:999px;font:600 .85rem/1.2 monospace;letter-spacing:.04em}
.v3-faq details{padding:1rem 1.2rem;margin-top:.75rem}
.v3-faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.v3-faq summary::after{content:"+";color:#1B998B;font-size:1.3rem;line-height:1;transition:transform .25s}
.v3-faq details[open] summary::after{transform:rotate(45deg)}
.v3-faq details p{margin:.6rem 0 0}
.pillar,.pg-card,.svc img,.glass,.btn{transition:transform .25s ease,box-shadow .25s ease}
.pillar:hover,.pg-card:hover,.v3-grid>div:hover{transform:translateY(-4px);box-shadow:0 16px 30px -18px #0B2545}
.btn:hover{transform:translateY(-1px)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #F2A541;outline-offset:3px;border-radius:4px}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){body{animation:none}.v3-gear .rot,.v3-gear .rot2{animation:none}.js .reveal{opacity:1;transform:none;transition:none}.pillar,.pg-card,.glass,.btn{transition:none}}
@media (max-width:48rem){.v3-timeline li::after{display:none}.v3-gear{width:34%;right:-.5rem;bottom:-1rem}}
