:root{
  --ink:#102027;
  --slate:#38505a;
  --muted:#6f8188;
  --paper:#f6f3eb;
  --white:#ffffff;
  --oxide:#a65636;
  --copper:#c8834a;
  --moss:#526b5b;
  --steel:#274653;
  --line:#d8d2c7;
  --soft:#ebe5d8;
  --shadow:0 18px 50px rgba(16,32,39,.12);
  --radius:22px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6}.container{width:min(1180px,92vw);margin:0 auto}.topbar{background:#0f2027;color:#e9efe9;font-size:.84rem;padding:.45rem 0}.topbar .container{display:flex;justify-content:space-between;gap:1rem;align-items:center}.site-header{background:rgba(246,243,235,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.brand{display:flex;gap:.8rem;align-items:center;text-decoration:none;color:var(--ink)}.mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--steel),var(--oxide));position:relative;box-shadow:var(--shadow)}.mark:after{content:"2";position:absolute;right:8px;bottom:3px;color:#fff;font-weight:900;font-size:1.55rem}.brand strong{display:block;font-size:1.22rem;letter-spacing:.02em}.brand span{display:block;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.nav-links{display:flex;gap:1.25rem;align-items:center}.nav-links a{color:var(--slate);text-decoration:none;font-weight:700;font-size:.93rem}.nav-links a:hover{color:var(--oxide)}.button,.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--oxide);color:#fff!important;text-decoration:none;padding:.8rem 1.05rem;border-radius:999px;font-weight:800;border:0;box-shadow:0 12px 26px rgba(166,86,54,.22)}.btn.alt{background:var(--steel)}.hero{padding:5.8rem 0 3.2rem;background:radial-gradient(circle at 80% 5%,rgba(198,131,74,.22),transparent 32%),linear-gradient(180deg,#f8f5ee 0%,#efe8da 100%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:3rem;align-items:center}.eyebrow{display:inline-block;color:var(--oxide);font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;margin-bottom:.8rem}h1,h2,h3{line-height:1.1;margin:0 0 1rem}h1{font-size:clamp(2.55rem,5vw,5.35rem);letter-spacing:-.06em}h2{font-size:clamp(1.9rem,3.2vw,3.2rem);letter-spacing:-.04em}h3{font-size:1.35rem}.lead{font-size:1.25rem;color:var(--slate);max-width:820px}.hero-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.3rem}.metric{background:var(--soft);padding:1.1rem;border-radius:18px}.metric strong{font-size:1.75rem;display:block;color:var(--steel)}.section{padding:4.5rem 0}.section.tight{padding:2.5rem 0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem;box-shadow:0 10px 30px rgba(16,32,39,.06)}.card h3 a,.article-list a{text-decoration:none;color:var(--ink)}.card h3 a:hover,.article-list a:hover{color:var(--oxide)}.tag{display:inline-block;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--moss);background:#edf0ea;border-radius:999px;padding:.25rem .55rem;margin-bottom:.8rem}.split{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem}.sidebar{position:sticky;top:110px;align-self:start}.sidebar nav{display:grid;gap:.3rem}.sidebar a{color:var(--slate);text-decoration:none;font-weight:700;padding:.55rem .7rem;border-radius:12px}.sidebar a:hover{background:var(--soft);color:var(--oxide)}.content{font-size:1.05rem}.content p,.content li{color:#2d414a}.content blockquote{border-left:4px solid var(--oxide);margin:1.5rem 0;padding:1rem 1.3rem;background:var(--white);border-radius:0 16px 16px 0;font-size:1.16rem;font-weight:700}.content table{width:100%;border-collapse:collapse;background:var(--white);border-radius:16px;overflow:hidden;margin:1.5rem 0}.content th,.content td{padding:.8rem;border-bottom:1px solid var(--line);text-align:left}.content th{background:#ede7da}.callout{background:linear-gradient(135deg,var(--steel),#132d37);color:#fff;border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow)}.callout p{color:#e4ecec}.callout .btn{background:var(--copper)}.article-meta{color:var(--muted);font-weight:700}.source-list{font-size:.92rem}.source-list a{color:var(--steel);font-weight:700}.footer{background:#0f2027;color:#dbe5e6;padding:3rem 0;margin-top:3rem}.footer a{color:#f0b179;text-decoration:none}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem}.form-wrap{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow)}.status{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.status div{background:rgba(255,255,255,.08);padding:1rem;border-radius:16px}.hero-visual{min-height:430px;border-radius:28px;background:linear-gradient(145deg,rgba(39,70,83,.95),rgba(82,107,91,.92)),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600"><defs><pattern id="g" width="80" height="80" patternUnits="userSpaceOnUse"><path d="M0 80L80 0M-20 20L20 -20M60 100L100 60" stroke="rgba(255,255,255,.16)" stroke-width="2"/></pattern></defs><rect width="800" height="600" fill="url(%23g)"/></svg>');padding:2rem;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--shadow)}.hero-visual h3{font-size:2rem}.hero-visual p{color:#edf3f0}.brief-list{display:grid;gap:1rem}.brief-row{display:grid;grid-template-columns:130px 1fr auto;gap:1rem;align-items:center;padding:1rem;background:#fff;border:1px solid var(--line);border-radius:18px}.brief-row span{color:var(--muted);font-weight:800}.kicker{color:var(--oxide);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.embed-preview{border:1px dashed var(--moss);background:#fff;border-radius:18px;padding:1rem}@media(max-width:860px){.hero-grid,.grid-3,.grid-2,.split,.footer-grid,.status{grid-template-columns:1fr}.nav{align-items:flex-start;gap:1rem}.nav-links{flex-wrap:wrap}.brief-row{grid-template-columns:1fr}.topbar .container{display:block}.hero{padding-top:3rem}}


.site-header img{max-width:100%}.hero.image-hero{padding:0;background:#0f2027;color:#fff}.image-hero .hero-image-wrap{position:relative;min-height:430px;display:flex;align-items:flex-end;overflow:hidden;border-radius:0}.image-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.58}.image-hero .container{position:relative;z-index:1;padding-top:6rem;padding-bottom:4rem}.image-hero h1,.image-hero .lead{color:#fff}.image-hero .eyebrow{color:#f0b179}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.article-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 12px 30px rgba(16,32,39,.07);transition:transform .18s ease, box-shadow .18s ease}.article-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.article-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#274653}.article-card-body{padding:1.1rem}.article-card h3{margin-bottom:.55rem}.article-card p{color:var(--slate);margin:0}.visual-link{display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 10px 30px rgba(16,32,39,.06)}.visual-link img{height:120px;width:100%;object-fit:cover}.visual-link div{padding:1rem}.resource-band{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:0 12px 30px rgba(16,32,39,.06)}.muted{color:var(--muted)}.article-meta{color:var(--muted);font-weight:800}.article-meta .dot:before{content:"•";padding:0 .45rem;color:var(--line)}.pill-row{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.pill{display:inline-block;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.36rem .7rem;font-weight:800;color:var(--slate);font-size:.82rem}.hero-card .article-card{box-shadow:none}.nav-links a.active{color:var(--oxide)}@media(max-width:860px){.article-grid{grid-template-columns:1fr}.visual-link{grid-template-columns:1fr}.visual-link img{height:auto}.image-hero .container{padding-top:4rem}}

/* P2 brand and upgraded home briefing panel */
.mark:after{content:"P2";right:6px;bottom:7px;font-size:1.05rem;letter-spacing:-.06em;line-height:1;font-weight:950}
.intelligence-panel{justify-content:flex-start;gap:1rem;padding:1.65rem;background:linear-gradient(145deg,rgba(39,70,83,.96),rgba(82,107,91,.94)),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="900" height="650"><defs><pattern id="g" width="90" height="90" patternUnits="userSpaceOnUse"><path d="M0 90L90 0M-20 20L20 -20M70 110L110 70" stroke="rgba(255,255,255,.14)" stroke-width="2"/></pattern></defs><rect width="900" height="650" fill="url(%23g)"/></svg>')}
.panel-badge{align-self:flex-start;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.20);border-radius:999px;padding:.38rem .72rem;font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#f6e7d3}
.intelligence-panel h3{font-size:1.75rem;margin-bottom:.1rem;max-width:640px}.intelligence-panel p{margin:.1rem 0 .15rem;max-width:660px}.risk-strip{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin:.2rem 0 .1rem}.risk-strip span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#f0b179;margin-right:.25rem}.risk-strip strong{font-size:.76rem;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:.28rem .55rem;color:#fff}.asset-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:.72rem;margin-top:.4rem}.asset-card{min-height:126px;border-radius:18px;padding:1rem;text-decoration:none;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:#274653;box-shadow:0 12px 28px rgba(0,0,0,.16)}.asset-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,32,39,.12),rgba(16,32,39,.82));z-index:0}.asset-card:after{content:"";position:absolute;inset:0;opacity:.42;background-size:cover;background-position:center;z-index:0;transition:transform .18s ease, opacity .18s ease}.asset-card:hover:after{transform:scale(1.045);opacity:.52}.asset-card strong,.asset-card span{position:relative;z-index:1}.asset-card strong{font-size:1rem;line-height:1.1;margin-bottom:.36rem}.asset-card span{font-size:.82rem;line-height:1.35;color:#edf3f0}.asset-energy:after{background-image:url('/assets/images/articles/why-battery-storage-projects-need-consequence-based-perimeter-design.svg')}.asset-grid:after{background-image:url('/assets/images/articles/the-new-preservation-question-for-substations.svg')}.asset-facility:after{background-image:url('/assets/images/articles/critical-facilities-need-layered-protection-not-single-point-solutions.svg')}.asset-defense:after{background-image:url('/assets/images/articles/range-infrastructure-preservation-is-a-readiness-issue.svg')}.panel-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.25rem}.panel-actions a{color:#fff;text-decoration:none;font-weight:900;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.11);border-radius:999px;padding:.5rem .72rem;font-size:.83rem}.panel-actions a:hover{background:rgba(240,177,121,.25);border-color:rgba(240,177,121,.55)}
@media(max-width:860px){.asset-cards{grid-template-columns:1fr}.intelligence-panel{min-height:auto}.panel-actions a{width:100%;justify-content:center;text-align:center}}


/* P2 corrective brand + homepage hero rebuild */
.brand-mark{width:44px;height:44px;display:block;flex:0 0 44px;border-radius:14px;box-shadow:0 14px 34px rgba(16,32,39,.16)}
.mark{display:none!important}.mark:after{content:none!important}
.hero{padding:4.6rem 0 3.4rem;background:radial-gradient(circle at 82% 4%,rgba(198,131,74,.18),transparent 34%),linear-gradient(180deg,#f8f5ee 0%,#efe8da 100%)}
.hero-grid{grid-template-columns:minmax(0,.95fr) minmax(480px,1.05fr);gap:3.5rem;align-items:center}.hero h1{font-size:clamp(3rem,5.2vw,4.7rem);letter-spacing:-.055em;max-width:720px}.hero .lead{font-size:1.18rem;max-width:680px}.hero p .btn{margin-top:.25rem}
.p2-briefing-panel{min-height:0;border-radius:28px;padding:1.65rem;display:grid;gap:1rem;background:linear-gradient(145deg,rgba(39,70,83,.98),rgba(82,107,91,.96)),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="900" height="650"><defs><pattern id="g" width="90" height="90" patternUnits="userSpaceOnUse"><path d="M0 90L90 0M-20 20L20 -20M70 110L110 70" stroke="rgba(255,255,255,.12)" stroke-width="2"/></pattern></defs><rect width="900" height="650" fill="url(%23g)"/></svg>');box-shadow:0 24px 60px rgba(16,32,39,.2);color:#fff;overflow:hidden}.p2-panel-top{display:grid;gap:.45rem}.p2-kicker{display:inline-flex;width:max-content;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:.38rem .72rem;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#f6e7d3}.p2-briefing-panel h3{font-size:clamp(1.75rem,2.2vw,2.28rem);line-height:1.05;margin:0;letter-spacing:-.03em;max-width:760px}.p2-briefing-panel p{margin:0;color:#edf3f0;font-size:1rem;line-height:1.55;max-width:780px}.p2-focus-bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.72rem;border-radius:18px;background:rgba(16,32,39,.26);border:1px solid rgba(255,255,255,.13)}.p2-focus-bar span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#f0b179;margin-right:.15rem}.p2-focus-bar b{font-size:.78rem;line-height:1;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.38rem .58rem;color:#fff;white-space:nowrap}.p2-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.78rem}.p2-asset-card{position:relative;min-height:118px;display:flex;flex-direction:column;justify-content:flex-end;padding:1rem;border-radius:18px;overflow:hidden;text-decoration:none!important;color:#fff!important;border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 28px rgba(0,0,0,.16);background:#274653}.p2-asset-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,32,39,.16),rgba(16,32,39,.88));z-index:1}.p2-asset-card:after{content:"";position:absolute;inset:0;background-size:cover;background-position:center;opacity:.48;transition:transform .2s ease,opacity .2s ease}.p2-asset-card:hover:after{transform:scale(1.045);opacity:.6}.p2-asset-card strong,.p2-asset-card em{position:relative;z-index:2}.p2-asset-card strong{font-size:1.02rem;line-height:1.1;margin-bottom:.35rem}.p2-asset-card em{font-style:normal;font-size:.82rem;line-height:1.32;color:#eef4f2}.p2-energy:after{background-image:url('/assets/images/articles/why-battery-storage-projects-need-consequence-based-perimeter-design.svg')}.p2-grid:after{background-image:url('/assets/images/articles/the-new-preservation-question-for-substations.svg')}.p2-facility:after{background-image:url('/assets/images/articles/critical-facilities-need-layered-protection-not-single-point-solutions.svg')}.p2-defense:after{background-image:url('/assets/images/articles/range-infrastructure-preservation-is-a-readiness-issue.svg')}.p2-panel-actions{display:flex;flex-wrap:wrap;gap:.65rem}.p2-panel-actions a{display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none!important;font-weight:900;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.10);border-radius:999px;padding:.6rem .9rem;font-size:.86rem;line-height:1.1}.p2-panel-actions a:hover{background:rgba(240,177,121,.24);border-color:rgba(240,177,121,.58)}.p2-panel-actions a.primary{background:#a65636;border-color:#a65636;box-shadow:0 12px 26px rgba(0,0,0,.16)}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(2.6rem,9vw,4.2rem)}.p2-briefing-panel{max-width:none}.p2-asset-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.p2-asset-grid{grid-template-columns:1fr}.p2-panel-actions a{width:100%}.p2-focus-bar b{white-space:normal}.brand-mark{width:40px;height:40px;flex-basis:40px}}
