@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');:root{--navy:#08172b;--deep:#0b1f34;--ink:#102337;--muted:#667789;--lime:#d9f65b;--teal:#19c9b0;--sky:#7ad7ff;--bg:#f7fafb;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',system-ui,sans-serif;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;z-index:100;padding:12px}.header{position:sticky;top:0;z-index:30;background:#08172bf2;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff19;color:white}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;line-height:1.1}.brand strong{display:block;font-size:19px;letter-spacing:-.7px}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:5px;color:#b9c7d4}.mark{width:48px;height:48px;border:1px solid #ffffff30;background:#12385a;border-radius:15px;display:grid;place-items:center;font-size:28px}.nav nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:700}.nav nav a:hover{color:var(--lime)}.navcta{background:var(--lime);color:var(--navy)!important;padding:12px 17px;border-radius:9px}.navright{display:flex;gap:8px;order:2}.theme,.hamb{border:1px solid #ffffff30;background:#ffffff10;color:white;border-radius:10px;padding:10px 12px}.hamb{display:none}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 18%,#173d58 0,transparent 37%),linear-gradient(130deg,#08172b,#102b39 65%,#123b3d);color:white}.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.23;pointer-events:none}.one{width:370px;height:370px;background:#19c9b0;right:5%;top:20%}.two{width:240px;height:240px;background:#c9e944;left:-140px;bottom:-70px}.hero-grid{position:relative;display:grid;grid-template-columns:1.13fr .87fr;gap:48px;align-items:center;padding:100px 0 105px}.eyebrow,.kicker{font-size:12px;font-weight:800;letter-spacing:2px}.eyebrow{color:#d3e8e3;display:flex;align-items:center;gap:9px}.pulse{width:9px;height:9px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 6px #d9f65b22}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Space Grotesk',sans-serif}h1{font-size:clamp(45px,5.5vw,83px);line-height:1.07;letter-spacing:-4px;margin:27px 0}h1 em{font-style:normal;color:var(--sky)}h1 span{color:var(--lime)}.lead{font-size:18px;line-height:1.8;color:#c4d4db;max-width:600px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:16px 20px;border-radius:12px;font-size:14px;font-weight:800;transition:transform .2s}.btn:hover{transform:translateY(-3px)}.primary{background:var(--lime);color:#08172b}.secondary{border:1px solid #a6bdc866;color:#fff}.hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:35px}.hero-tags span{font-size:11px;color:#c8dadb;padding:8px 12px;border:1px solid #ffffff2c;border-radius:99px}.hero-art{position:relative;min-height:500px;display:grid;place-items:center}.halo{position:absolute;width:410px;height:410px;border:1px solid #a2e7c44a;border-radius:50%;box-shadow:0 0 0 60px #ffffff06,0 0 0 120px #ffffff04}.glass{position:relative;overflow:hidden;width:min(390px,100%);min-height:435px;padding:30px;background:linear-gradient(155deg,#ffffff20,#ffffff08);border:1px solid #ffffff42;border-radius:28px;backdrop-filter:blur(12px);box-shadow:0 25px 70px #0005;display:flex;flex-direction:column;justify-content:flex-end}.micro{font-size:10px;letter-spacing:2px;font-weight:800;color:var(--lime);position:absolute;top:27px}.torch{font-size:105px;text-align:center;filter:drop-shadow(0 0 30px #ffb21d70);margin-bottom:40px}.glass strong{font-family:'Space Grotesk';font-size:36px;line-height:1.05;letter-spacing:-1.5px;z-index:1}.glass p{font-size:13px;color:#b9ced3;margin:12px 0 0;z-index:1}.gridlines{position:absolute;inset:0;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(transparent,#000)}.float{position:absolute;padding:12px 16px;border:1px solid #ffffff3a;background:#163949;color:var(--lime);font-size:10px;letter-spacing:1.5px;font-weight:800;border-radius:10px;box-shadow:0 12px 30px #0004}.float.a{left:-12px;top:20%}.float.b{right:-18px;bottom:13%}.ticker{background:var(--lime);color:var(--navy);font-size:12px;font-weight:900;letter-spacing:2px;text-align:center;padding:17px 0}.ticker b{margin:0 14px;color:#168b79}.section{padding:100px 0}.kicker{color:#168b79}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section h2{font-size:clamp(37px,4.3vw,61px);letter-spacing:-2.8px;line-height:1.1;margin:18px 0 0}.section h2 span{color:#168b79}.split p,.sectionhead p,.future p,.action-box p{color:#627383;line-height:1.85;font-size:16px}.split .body-lg{font-size:21px;color:var(--ink);line-height:1.6}.textlink{display:inline-block;color:#087d70;font-weight:800;margin-top:12px}.section-alt{background:#edf3f3}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.sectionhead p{max-width:360px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.pillar{background:#fff;border:1px solid #e0e9e9;border-radius:20px;padding:26px 22px;min-height:345px;display:flex;flex-direction:column;box-shadow:0 12px 25px #0b243008}.num{font-size:12px;color:#8a9ca2;font-weight:800}.picon{font-size:34px;margin:25px 0 12px}.pillar h3{font-size:22px;letter-spacing:-.8px;margin-bottom:12px}.pillar p{font-size:14px;color:#697d88;line-height:1.7}.pillar a{font-size:12px;color:#087d70;font-weight:800;margin-top:auto}.future{background:#0a2233;color:#fff;overflow:hidden}.future-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.future h2 span{color:var(--lime)}.future p{color:#b6cbd1}.future .kicker{color:var(--lime)}.idea-stack{display:grid;gap:14px}.idea-stack article{background:linear-gradient(100deg,#ffffff13,#ffffff05);border:1px solid #ffffff25;border-radius:17px;padding:24px}.idea-stack span{color:var(--lime);font-size:11px;letter-spacing:2px;font-weight:800}.idea-stack h3{font-size:22px;margin:12px 0 6px}.idea-stack p{font-size:14px;margin:0}.note{color:#a5b9bd;display:block;font-size:11px}.insights{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.insights article{border:1px solid #dfe7e7;background:#fff;border-radius:19px;padding:29px;min-height:260px}.tag{color:#078a7a;font-size:11px;letter-spacing:1px;font-weight:900}.insights h3{font-size:26px;letter-spacing:-1px;margin:25px 0 10px}.insights p{color:#697d88;line-height:1.7;font-size:14px}.coming{font-size:12px;color:#72858d;font-weight:700}.action-section{background:#d9f65b}.action-box{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.action-box h2 em{font-style:normal;color:#087b70}.action-box p{color:#31494b}.action-box .secondary{color:#08232e;border-color:#08232e80}.action-box .primary{background:#0a2533;color:#fff}.action-box .kicker{color:#087b70}.action-box .note{color:#53634e}.quote{font-family:'Space Grotesk';font-size:clamp(28px,3vw,42px);line-height:1.3;font-weight:700;letter-spacing:-1.5px;border-left:3px solid #0a2533;padding-left:30px}.quote span{display:block;font:700 12px 'DM Sans';letter-spacing:0;margin-top:24px}footer{background:#071627;color:#fff;padding:55px 0 25px}.foot{display:flex;justify-content:space-between;gap:25px}.foot p{font-size:13px;color:#9db3be;margin:22px 0}.footlinks{display:flex;gap:20px;align-items:flex-start;font-size:13px}.legal{border-top:1px solid #ffffff20;padding-top:24px;color:#8da2ae;font-size:12px}.light .header{background:#fff;color:#0b2233;border-color:#dde7e9}.light .header .brand small{color:#506878}.light .theme,.light .hamb{background:#edf3f4;color:#0b2233;border-color:#dae4e8}.light .navcta{background:#0c2938;color:white!important}.light .nav nav a:hover{color:#088b78}@media(max-width:900px){.hamb{display:block}.nav nav{display:none;position:absolute;top:82px;left:0;right:0;background:#0b2233;padding:20px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #ffffff30}.nav nav.open{display:flex}.nav nav a{padding:13px 10px}.hero-grid{grid-template-columns:1fr;padding:70px 0}.hero-art{min-height:390px}.glass{min-height:350px}.torch{font-size:80px;margin-bottom:20px}.cards{grid-template-columns:repeat(2,1fr)}.future-grid{gap:30px}.light .nav nav{background:#fff}.light .nav nav a{color:#0b2233}}@media(max-width:600px){.wrap{width:min(100% - 32px,1160px)}.nav{min-height:74px}.nav nav{top:74px}.brand strong{font-size:16px}.brand small{font-size:9px}.mark{width:43px;height:43px}.hero-grid{padding:58px 0 65px;gap:35px}h1{font-size:clamp(42px,11vw,64px);letter-spacing:-2.8px}.lead{font-size:16px}.actions{flex-direction:column}.btn{width:100%}.hero-art{min-height:330px}.glass{min-height:325px;padding:25px}.glass strong{font-size:30px}.float{display:none}.halo{width:280px;height:280px}.ticker{font-size:9px;line-height:2}.ticker b{margin:0 5px}.section{padding:68px 0}.split,.future-grid,.action-box{grid-template-columns:1fr;gap:28px}.section h2{font-size:40px;letter-spacing:-2px}.sectionhead{display:block}.sectionhead p{margin-top:20px}.cards,.insights{grid-template-columns:1fr}.pillar{min-height:260px}.picon{margin:16px 0}.future-grid{gap:35px}.quote{font-size:28px}.foot{display:block}.footlinks{flex-wrap:wrap;margin:30px 0}.legal{line-height:1.6}}

/* V2.1 internal pages */
.subhero{padding:88px 0 62px;background:radial-gradient(circle at 80% 0%,#15536b 0%,transparent 42%),linear-gradient(145deg,#0b1c32,#0c3541);color:white}.subhero h1{font-size:clamp(2.7rem,7vw,5.5rem);line-height:1.07;letter-spacing:-.055em;margin:20px 0}.subhero h1 span{color:#c5f44d}.subhero p{max-width:690px;color:#d1e3e8;font-size:1.15rem;line-height:1.65}.pagegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.featurecard{border:1px solid rgba(100,160,175,.24);background:#10273b;border-radius:20px;padding:26px;color:#edf7ff;min-width:0}.featurecard h3{font-size:1.35rem;margin:12px 0}.featurecard p{color:#b9cbd5;line-height:1.65}.featurecard .tag{color:#c5f44d;font-size:.72rem;font-weight:800;letter-spacing:.13em}.featurecard .step{font-size:2rem}.light .featurecard{background:#fff;color:#112a3a}.light .featurecard p{color:#47606a}.light .featurecard .tag{color:#1d797b}.callout{padding:28px;border-radius:20px;background:linear-gradient(120deg,#d4f768,#5fd5d5);color:#0d2631;margin:28px 0}.callout h3{font-size:1.7rem;margin:0 0 8px}.callout p{margin:0;line-height:1.6}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.process div{padding:20px;border:1px solid #527482;border-radius:16px}.process strong{display:block;color:#c5f44d;margin-bottom:9px}.process p{line-height:1.5;color:#b9cbd5}.light .process p{color:#47606a}.light .process strong{color:#176c73}.filterbar{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.filterbar button{background:transparent;border:1px solid #5a7888;border-radius:30px;color:inherit;padding:10px 18px;cursor:pointer}.filterbar button.active{background:#c5f44d;color:#0a2631;border-color:#c5f44d}.proposal{max-width:820px;border:1px solid #476477;border-radius:24px;padding:clamp(20px,4vw,40px);background:#10273b}.proposal label{display:block;font-weight:700;margin:18px 0 7px}.proposal input,.proposal select,.proposal textarea{width:100%;background:#0b1b2a;color:white;border:1px solid #688192;border-radius:10px;padding:14px;font:inherit}.proposal textarea{min-height:150px}.proposal .help{color:#b6cbd5;font-size:.88rem;line-height:1.6}.proposal .controls{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.proposal button{border:0;border-radius:12px;padding:14px 20px;font:inherit;font-weight:800;cursor:pointer;background:#c5f44d;color:#0a2631}.proposal button.alt{background:#294d5d;color:white}.proposal .notice{margin-top:14px;min-height:24px;color:#d5f8a4}.light .proposal{background:#fff}.light .proposal input,.light .proposal select,.light .proposal textarea{background:#f6fafb;color:#153142}.light .proposal .help{color:#48616b}.light .proposal .notice{color:#216c5b}.smallprint{font-size:.88rem;line-height:1.6;color:#b8c9d1}.light .smallprint{color:#526a75}.resource{display:flex;flex-direction:column;gap:10px}.resource .textlink{margin-top:auto}.navlinks{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.navlinks a{color:#c5f44d;font-weight:750}.light .navlinks a{color:#16727c}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:850px){.pagegrid{grid-template-columns:repeat(2,minmax(0,1fr))}.process{grid-template-columns:repeat(2,1fr)}}@media(max-width:570px){.subhero{padding:52px 0}.pagegrid,.process{grid-template-columns:1fr}.proposal .controls button{width:100%}.featurecard{padding:22px}}

/* V2.2 Citizen Ideas dashboard */
.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.path-card{padding:26px;border-radius:18px;background:#10283b;color:#eaf4fa;border:1px solid #2a5362}.path-card span{font-size:.75rem;color:#c7f66c;font-weight:800;letter-spacing:.09em}.path-card h3{font-size:1.3rem;margin:12px 0}.path-card p{color:#b7cbd4;line-height:1.65}.policy-layout{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;gap:20px;margin-top:24px}.policy-controls{display:flex;flex-direction:column;gap:10px}.policy-option{border:1px solid #78949c;background:#10283b;color:white;padding:18px;border-radius:13px;text-align:left;font:inherit;cursor:pointer}.policy-option.active,.policy-option:focus-visible{outline:2px solid #bdf75c;background:#215462}.policy-detail{border-radius:20px;background:#10283b;color:white;padding:28px}.policy-detail h3{font-size:clamp(1.5rem,3vw,2.2rem);margin:14px 0}.policy-detail h4{margin:18px 0 4px;color:#c7f66c}.policy-detail p{color:#d2e0e6;line-height:1.6}.policy-detail .controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.policy-detail button{background:#c7f66c;color:#10283b;border:0;padding:14px 18px;border-radius:10px;font-weight:800;cursor:pointer}.policy-detail .btn{display:inline-flex;align-items:center}.policy-detail .help{font-size:.85rem}@media(max-width:750px){.path-grid{grid-template-columns:1fr}.policy-layout{grid-template-columns:1fr}.policy-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.policy-option{font-size:.9rem;padding:12px}.policy-detail{padding:20px}}
