
:root{--navy:#0f1f3d;--blue:#1e4d8c;--accent:#2563a8;--light:#eff6ff;--border:#d1dce8;--muted:#5a7a9a;--off:#f8fafd}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Source Sans 3',system-ui,sans-serif;color:#1a2a44;background:#fff;line-height:1.65;font-size:17px}
h1,h2{font-family:'Playfair Display',Georgia,serif;line-height:1.2;color:var(--navy)}
h3{font-family:'Source Sans 3',system-ui,sans-serif;font-weight:700;line-height:1.3;color:var(--navy)}
a{color:var(--accent)}
.wrap{max-width:1040px;margin:0 auto;padding:0 1.5rem}
nav{background:var(--navy);position:sticky;top:0;z-index:10}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px;gap:1rem}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none}
.logo-box{width:38px;height:38px;border:2px solid rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:.55rem;font-weight:800;line-height:1.1;text-align:center;color:#fff}
.logo-name{font-family:'Playfair Display',serif;font-weight:800;color:#fff}
.logo-name span{color:#8fb8ea}
.links{display:flex;gap:1.4rem;list-style:none;align-items:center}
.links a{color:#c9d8ea;text-decoration:none;font-size:.95rem}
.links a:hover,.links a.on{color:#fff}
.links a.cta{background:var(--accent);color:#fff;padding:.45rem 1rem;border-radius:3px}
.hero{background:var(--navy);color:#fff;padding:5.5rem 0 5rem}
.hero h1{color:#fff;font-size:clamp(2rem,4.5vw,3.2rem);max-width:760px}
.hero p{color:#c9d8ea;font-size:1.2rem;max-width:640px;margin-top:1.25rem}
.hero .tag{margin-top:1.5rem;color:#8fb8ea;font-weight:600}
.btn{display:inline-block;margin-top:2rem;background:var(--accent);color:#fff;padding:.8rem 1.6rem;text-decoration:none;border-radius:3px;font-weight:600;border:0;font-size:1rem;cursor:pointer;font-family:inherit}
.btn:hover{background:var(--blue)}
section{padding:4.5rem 0}
.dark{background:var(--navy);color:#c9d8ea}
.dark h2,.dark h3{color:#fff}
.off{background:var(--off)}
.label{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:.8rem}
.dark .label{color:#8fb8ea}
h2{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:1rem}
.lead{font-size:1.2rem;max-width:720px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem}
.card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);padding:1.75rem;text-decoration:none;display:block;border-radius:4px}
.card:hover{background:rgba(255,255,255,.12)}
.card h3{font-size:1.25rem;margin-bottom:.6rem}
.card p{color:#c9d8ea;font-size:1rem}
.card .more{display:block;margin-top:1rem;color:#8fb8ea;font-weight:600}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2rem}
.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.box{border:1px solid var(--border);background:#fff;padding:1.5rem;border-radius:4px}
.box h3{font-size:1.1rem;margin-bottom:.5rem}
.off .box{background:#fff}
.quote{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,3vw,2.1rem);color:var(--navy);max-width:760px}
.graphic{border:2px dashed var(--border);border-radius:4px;padding:3rem 1.5rem;text-align:center;color:var(--muted);margin-top:2rem}
ul.tick{list-style:none;margin-top:1rem}
ul.tick li{padding:.4rem 0 .4rem 1.5rem;position:relative}
ul.tick li:before{content:"";position:absolute;left:0;top:1.1rem;width:8px;height:8px;background:var(--accent)}
form{max-width:560px;margin-top:2rem}
label{display:block;font-size:.9rem;margin:1rem 0 .3rem;color:#c9d8ea}
input,textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:3px;font:inherit}
textarea{min-height:120px}
h3.num{font-size:.85rem}
.stat{font-family:'Playfair Display',serif;font-size:3rem;line-height:1}
.two{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:1.5rem}
.sub{font-size:1.05rem;margin-top:1rem;max-width:760px}
.venn{margin:2rem auto 0;max-width:760px}.venn svg{width:100%;height:auto;display:block}
.venn figcaption{margin-top:1.25rem;font-size:1.05rem;max-width:720px}
.stats .stat{color:#8fb8ea;margin-bottom:.5rem}.stats p{color:#c9d8ea}
.usecase{border-left:4px solid var(--accent);background:#fff;padding:1.5rem 1.75rem;margin-top:1rem;max-width:820px}
.usecase h3{font-size:1.3rem;margin-bottom:.8rem}.usecase p{margin-top:.7rem}
.dark .usecase{background:rgba(255,255,255,.06);border-left-color:#8fb8ea}.dark .usecase p{color:#c9d8ea}.dark .usecase strong{color:#fff}
.flow{display:flex;align-items:flex-start;margin-top:2.5rem}
.node{flex:1;text-align:center;padding:0 .5rem}
.ring{width:110px;height:110px;margin:0 auto 1rem;border-radius:50%;border:3px solid #8fb8ea;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,#1e4d8c 0%,#0f1f3d 70%);box-shadow:0 0 0 8px rgba(143,184,234,.12)}
.ring span{font-family:'Playfair Display',serif;font-size:2rem;color:#fff;font-weight:700}
.node h3{font-size:1.3rem;margin-bottom:.5rem}.node p{font-size:.95rem;color:#c9d8ea}
.arrow{flex:0 0 40px;height:110px;position:relative}
.arrow:before{content:"";position:absolute;top:54px;left:0;right:10px;height:3px;background:#8fb8ea}
.arrow:after{content:"";position:absolute;top:47px;right:0;border-left:14px solid #8fb8ea;border-top:8px solid transparent;border-bottom:8px solid transparent}
.loop{margin:2rem 3rem 0;border:3px solid rgba(143,184,234,.5);border-top:0;height:40px;border-radius:0 0 40px 40px;position:relative;text-align:center}
.loop span{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);background:var(--navy);padding:0 1rem;color:#8fb8ea;font-weight:600;font-size:.95rem;white-space:nowrap}
.tint{background:linear-gradient(180deg,#eff6ff 0%,#e3edfb 100%)}
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}
.feat{background:#fff;border-radius:8px;padding:1.5rem;border-top:5px solid var(--c);box-shadow:0 6px 18px rgba(15,31,61,.08);position:relative;transition:transform .2s}
.feat:hover{transform:translateY(-4px)}
.feat .ico{width:48px;height:48px;border-radius:12px;background:var(--c);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.feat .ico svg{width:26px;height:26px}
.fnum{position:absolute;top:1.1rem;right:1.25rem;font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:800;color:var(--c);opacity:.2}
.feat h3{font-size:1.1rem;margin-bottom:.5rem}.feat p{font-size:.95rem;color:#3d5a80}
.feat.hl{grid-column:1/-1;display:grid;grid-template-columns:56px 1fr;column-gap:1.25rem;align-items:center;background:linear-gradient(135deg,#0f1f3d,#1e4d8c)}
.feat.hl .ico{grid-row:span 2;margin:0}.feat.hl h3{color:#fff;font-size:1.4rem;margin:0}.feat.hl p{color:#c9d8ea;font-size:1.05rem}.feat.hl .fnum{color:#fff}
.closing{margin-top:2rem;padding:1.4rem 1.6rem;border-left:4px solid var(--accent);background:#fff;border-radius:0 8px 8px 0;font-size:1.08rem;max-width:900px}
.xp .box{border-top:4px solid var(--accent)}
.card.feature{border:2px solid #f59e0b;background:rgba(245,158,11,.08)}
.pill{display:inline-block;background:#f59e0b;color:#0f1f3d;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .6rem;border-radius:20px;margin-bottom:.8rem}
.specialist{margin-top:1.75rem;color:#c9d8ea}.specialist a{color:#8fb8ea;font-weight:600}
.coreband{background:linear-gradient(135deg,#fff7e6,#eff6ff);border-bottom:4px solid #f59e0b;padding:3.5rem 0}
.coreband h2{font-size:clamp(1.8rem,3.5vw,2.5rem)}.coreband .btn{margin-top:1.5rem}
.view{display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:start}.view h2{margin:0}.view .quote{font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.35;margin:0}
ul.tick.cols{display:flex;flex-wrap:wrap;gap:.25rem 2rem;margin-top:.5rem}ul.tick.cols li{font-weight:600;color:var(--navy)}
.gcards{display:grid;gap:1.25rem;margin-top:2rem}.gcards.c2{grid-template-columns:1fr 1fr}.gcards.c3{grid-template-columns:repeat(3,1fr)}
.gcard{position:relative;overflow:hidden;background:#f6f8fb;border:1px solid #e3e9f1;border-radius:14px;padding:2rem 2rem 2.25rem;box-shadow:0 2px 8px rgba(15,31,61,.04)}
.gcard>*{position:relative;z-index:1}
.gcard:before,.gcard:after{content:"";position:absolute;border-radius:50%;z-index:0}
.gcard.v0:before{width:220px;height:220px;right:-90px;bottom:-90px;background:#dde7f3}.gcard.v0:after{width:150px;height:150px;right:-50px;bottom:-70px;background:#c6d7ec}
.gcard.v1:before{width:230px;height:230px;right:-90px;top:-110px;background:#d3eef3}.gcard.v1:after{width:150px;height:150px;right:-60px;top:-80px;background:#bfe6ee}
.gcard.v2:before{width:200px;height:200px;right:-70px;bottom:-80px;background:#e3eaf4}.gcard.v2:after{width:130px;height:130px;right:-40px;bottom:-60px;background:#cfdced}
.gcard.v3:before{width:210px;height:210px;right:-80px;bottom:-100px;background:#dce6f2}.gcard.v3:after{width:90px;height:90px;right:30px;top:20px;border-radius:0;background:radial-gradient(#14a3b8 1.5px,transparent 1.6px) 0 0/16px 16px;opacity:.7}
.gi{width:56px;height:56px;margin-bottom:1.1rem}
.gcard h3{font-size:1.35rem;font-weight:800;line-height:1.25;margin-bottom:.5rem;max-width:90%}
.gcard p{font-size:1.05rem;color:#4a5d75;max-width:90%}
.evid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2rem}
.ev{background:#f6f8fb;border:1px solid #e3e9f1;border-radius:14px;padding:2rem;display:flex;flex-direction:column}
.ev .stat{color:var(--accent);font-size:3.2rem;margin-bottom:.75rem}.ev p{font-size:1.05rem;flex:1}
.ev .src{display:block;margin-top:1rem;font-size:.85rem;color:var(--muted);font-weight:600}
.ev.dk{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}.ev.dk .stat{color:#8fb8ea}.ev.dk p{color:#c9d8ea}
.qlist{display:grid;gap:1rem;margin-top:2rem}
.q{display:flex;gap:1.25rem;align-items:flex-start;background:#fff;border:1px solid #e3e9f1;border-left:5px solid #14a3b8;border-radius:10px;padding:1.25rem 1.5rem}
.qn{flex:0 0 44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.q h3{font-size:1.15rem;margin-bottom:.2rem}.q p{color:#4a5d75}
.va p{font-size:1.1rem;max-width:820px;margin-top:1rem}
footer{background:#0a1630;color:#9db4cc;padding:2rem 0;font-size:.9rem}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}
footer a{color:#c9d8ea}
@media(max-width:768px){
 .cards,.grid2,.g3,.g4,.two,.view,.gcards.c2,.gcards.c3,.evid{grid-template-columns:1fr}.view{gap:1rem}
 .feats{grid-template-columns:1fr}.feat.hl{grid-column:auto}
 .flow{flex-direction:column;align-items:center}.arrow{height:40px;flex-basis:40px;width:20px}.arrow:before{top:0;bottom:10px;left:9px;right:auto;width:3px;height:auto}.arrow:after{top:auto;bottom:0;right:auto;left:2px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:14px solid #8fb8ea;border-bottom:0}
 .loop{border:0;height:auto;margin:1.5rem 0 0}.loop span{position:static;transform:none;white-space:normal;display:inline-block}.two{gap:1.5rem}
 nav .wrap{height:auto;padding:.8rem 1.5rem;flex-direction:column;align-items:flex-start}
 .links{flex-wrap:wrap;gap:.5rem 1rem}
 section{padding:3rem 0}.hero{padding:3.5rem 0}
 footer .wrap{flex-direction:column}
}
