.sh-page { --sh-ink:#182b35; --sh-muted:#526671; --sh-accent:#087c6b; background:#fff; color:var(--sh-ink); }
.sh-page main { overflow:hidden; }
.sh-page .footer { background:#fafcfc; }
/* The shared footer contains unverified history and awards claims. Hide those locally. */
.sh-page .footer-tagline { display:none; }
.sh-skip { position:fixed; top:-100px; left:16px; z-index:9999; padding:12px 20px; background:#fff; color:var(--sh-accent); border:2px solid currentColor; border-radius:12px; }.sh-skip:focus { top:12px; }
.sh-page a:focus-visible,.sh-page summary:focus-visible { outline:3px solid #8571d3; outline-offset:5px; }
.sh-hero { padding:10rem 0 5.5rem; background:radial-gradient(ellipse at 87% 25%,#dff5ef,transparent 45%),radial-gradient(ellipse at 5% 95%,#eeebfa,transparent 40%),#fcfefd; }
.sh-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:clamp(2rem,5vw,5rem); }
.sh-label { color:var(--sh-accent); font-weight:750; font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; margin:0 0 1rem; }
.sh-hero h1 { font-size:clamp(2.7rem,4.5vw,4.5rem); font-weight:800; line-height:1.12; letter-spacing:-.055em; margin:0; }.sh-hero h1 span { color:var(--sh-accent); }
.sh-lead { font-size:1.06rem; color:var(--sh-muted); line-height:1.85; margin:1.5rem 0; }
.sh-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1.3rem; margin-top:2rem; }
.sh-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:16px 23px; border-radius:13px; color:#fff; background:var(--sh-accent); font-size:.9rem; font-weight:750; text-decoration:none; transition:background .2s,transform .2s; }.sh-btn:hover { background:#066454; color:#fff; transform:translateY(-2px); }
.sh-link { display:inline-flex; align-items:center; gap:9px; color:var(--sh-accent); font-size:.88rem; font-weight:750; text-decoration:none; }.sh-link:hover { color:#065f52; text-decoration:underline; }
.sh-assurance { font-size:.76rem; color:var(--sh-muted); margin:1.3rem 0 0; line-height:1.8; }
.sh-art { min-width:0; margin:0; padding:1.5rem; border:1px solid #d2e5df; border-radius:28px; background:#ffffffd9; box-shadow:0 30px 70px #206a5710; }
.sh-art-head,.sh-art-bottom { display:flex; align-items:center; justify-content:space-between; gap:1rem; font-size:.76rem; font-weight:700; }.sh-art-head > span:first-child,.sh-art-bottom span { display:flex; align-items:center; gap:7px; }.sh-art-head i { color:var(--sh-accent); font-size:1.2rem; }.sh-art-tag { padding:5px 10px; color:#087c6b; background:#e2f5ef; border-radius:20px; }
.sh-shield-scene { position:relative; margin:1.3rem -1rem; }.sh-shield-scene svg { display:block; width:100%; height:auto; }.sh-float { position:absolute; padding:8px 12px; border-radius:11px; background:#fff; border:1px solid #d8e9e5; font-size:clamp(.57rem,1vw,.72rem); color:#4d6561; box-shadow:0 8px 20px #276c5410; }.sh-float-one { top:13%; left:3%; }.sh-float-two { top:20%; right:4%; }.sh-float-three { bottom:8%; right:2%; }
.sh-art-bottom { justify-content:center; flex-wrap:wrap; padding-top:1rem; border-top:1px solid #e3ece8; color:var(--sh-accent); }.sh-art figcaption { margin:1rem 0 0; text-align:center; color:var(--sh-muted); font-size:.68rem; line-height:1.6; }
.sh-route { animation:sh-flow 5s linear infinite; }.sh-node { transform-box:fill-box; transform-origin:center; animation:sh-pulse 4s ease-in-out infinite; }.sh-node-two { animation-delay:2s; }
@keyframes sh-flow { to { stroke-dashoffset:-95; } } @keyframes sh-pulse { 50% { opacity:.5; transform:scale(.78); } }
.sh-strip { border-top:1px solid #e0eae6; border-bottom:1px solid #e0eae6; background:#f5faf8; padding:1.6rem 0; }.sh-strip .container { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }.sh-strip span { text-align:center; color:var(--sh-muted); font-size:.8rem; }.sh-strip strong { display:block; color:var(--sh-accent); font-size:1.35rem; margin-bottom:.2rem; }
.sh-section { padding:6rem 0; }.sh-tint { background:#f4f9f7; }.sh-intro { max-width:740px; margin-bottom:2.5rem; }.sh-split .sh-intro { margin-bottom:0; }.sh-section h2 { color:var(--sh-ink); font-size:clamp(2rem,3.3vw,3.2rem); line-height:1.18; letter-spacing:-.04em; font-weight:800; margin:0 0 1.2rem; }.sh-intro > p:not(.sh-label) { color:var(--sh-muted); line-height:1.85; }.sh-intro > .sh-link { margin-top:1rem; }
.sh-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }.sh-card { display:flex; flex-direction:column; padding:1.8rem; border:1px solid #dfe8e5; border-radius:22px; background:linear-gradient(150deg,#fff,#f9fcfb); }.sh-icon { display:grid; place-items:center; width:48px; height:48px; color:var(--sh-accent); background:#e5f5ef; border-radius:14px; font-size:1.3rem; margin-bottom:1.4rem; }.sh-card:nth-child(3n+2) .sh-icon { background:#eeeafb; color:#7560bb; }.sh-card h3,.sh-steps h3,.sh-support-card h3 { font-size:1.1rem; font-weight:750; line-height:1.5; margin:0 0 .65rem; }.sh-card p,.sh-steps p,.sh-support-card p { color:var(--sh-muted); font-size:.9rem; line-height:1.8; }.sh-card-foot { margin-top:auto; padding-top:1rem; border-top:1px solid #e1ebe7; font-size:.72rem; color:var(--sh-accent); font-weight:700; }.sh-note { font-size:.81rem; color:var(--sh-muted); line-height:1.8; margin:1.5rem 0 0; }
.sh-steps { list-style:none; padding:0; margin:0; display:grid; gap:1rem; }.sh-steps li { display:flex; gap:1.2rem; padding:1.5rem; border:1px solid #dfe9e4; background:#fff; border-radius:18px; }.sh-steps li > span { color:#6cad9b; font-weight:800; font-size:1.4rem; }.sh-steps p { margin:0; }
.sh-support-card { padding:2.5rem; border:1px solid #dfdbee; background:linear-gradient(135deg,#faf8ff,#f4faf8); border-radius:26px; }.sh-support-card > i { display:block; font-size:2.2rem; color:#7b60bc; margin-bottom:1rem; }
.sh-faq { max-width:900px; display:grid; gap:.8rem; }.sh-faq details { border:1px solid #dce6e2; padding:1.4rem 1.6rem; border-radius:16px; background:#fff; }.sh-faq summary { cursor:pointer; font-size:.98rem; font-weight:700; line-height:1.65; }.sh-faq details p { margin:1rem 0 0; color:var(--sh-muted); font-size:.9rem; line-height:1.85; }
.sh-final { background:#fff; }.sh-final-card { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:3rem; border:1px solid #cfe2d9; border-radius:28px; background:radial-gradient(ellipse at 95% 0,#d7f1e6,transparent 65%),#f6fbf8; }.sh-final-card > div { max-width:680px; }.sh-final-card p:not(.sh-label) { color:var(--sh-muted); line-height:1.85; margin:0; }.sh-final-card .sh-btn { flex-shrink:0; }
@media(max-width:991px) { .sh-split { grid-template-columns:1fr; }.sh-hero { padding-top:8.5rem; }.sh-art { width:100%; max-width:600px; margin:auto; }.sh-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.sh-final-card { align-items:flex-start; flex-direction:column; } }
@media(max-width:575px) { .sh-hero { padding:8rem 0 3.5rem; }.sh-section { padding:4rem 0; }.sh-grid { grid-template-columns:1fr; }.sh-strip .container { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem .5rem; }.sh-art { padding:1rem; }.sh-art-head { font-size:.7rem; }.sh-shield-scene { margin:1rem -.5rem; }.sh-card,.sh-support-card,.sh-final-card { padding:1.5rem; }.sh-faq details { padding:1.1rem; } }
@media(prefers-reduced-motion:reduce) { html:has(.sh-page) { scroll-behavior:auto; }.sh-page *,.sh-page *::before,.sh-page *::after { animation:none!important; transition:none!important; }.sh-btn:hover { transform:none; } }
