
/* pulse.nw — Core Stylesheet | R3/R14 compliant */

:root{--pls-topbar-h:56px;--pls-max-w:1440px;--pls-radius:4px;--pls-radius-lg:8px;--pls-trans:200ms ease}

[data-theme="dark"]{

  --pls-bg:#080c09;--pls-surface:#0e1610;--pls-surface2:#131f15;--pls-border:#1c2e1e;

  --pls-red:#d42b2b;--pls-red-dim:#7a1414;--pls-red-hi:#ef4444;

  --pls-t1:#f0f4f0;--pls-t2:#8ab09a;--pls-t3:#4a6050;

  --pls-topbar-bg:#050908;--pls-topbar-bd:#121e14;

  --pls-hero-bg:linear-gradient(150deg,#060c07 0%,#07100a 40%,#050a06 100%);

  --pls-stats-bg:#0a1209;--pls-pillar-bg:#0d1810;--pls-scope-bg:#060908;

  --pls-legacy-bg:#091408;--pls-coming-bg:#050908;--pls-footer-bg:#030504;

  --pls-shadow:0 4px 24px rgba(0,0,0,0.6);

  --pls-pill-bg:rgba(212,43,43,0.08);--pls-pill-bd:rgba(212,43,43,0.2)

}

[data-theme="light"]{

  --pls-bg:#f2faf3;--pls-surface:#ffffff;--pls-surface2:#e6f4e8;--pls-border:#c8deca;

  --pls-red:#b91c1c;--pls-red-dim:#d42b2b;--pls-red-hi:#ef4444;

  --pls-t1:#090e0a;--pls-t2:#2c4030;--pls-t3:#5a7060;

  --pls-topbar-bg:#ffffff;--pls-topbar-bd:#c8deca;

  --pls-hero-bg:linear-gradient(150deg,#d4edd8 0%,#ecf7ee 50%,#cce8d0 100%);

  --pls-stats-bg:#e6f4e8;--pls-pillar-bg:#ffffff;--pls-scope-bg:#f2faf3;

  --pls-legacy-bg:#d4edd8;--pls-coming-bg:#ffffff;--pls-footer-bg:#090e0a;

  --pls-shadow:0 4px 24px rgba(0,0,0,0.08);

  --pls-pill-bg:rgba(9,14,10,0.05);--pls-pill-bd:rgba(9,14,10,0.12)

}

[data-size="sm"]{font-size:13px}[data-size="md"]{font-size:15px}[data-size="lg"]{font-size:17px}[data-size="xl"]{font-size:20px}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth}

body{font-family:var(--nw-font-sans,system-ui,sans-serif);background:var(--pls-bg);color:var(--pls-t1);font-size:inherit;line-height:1.6;transition:background var(--pls-trans),color var(--pls-trans)}

a{color:var(--pls-red);text-decoration:none}a:hover{text-decoration:underline}

img{display:block;max-width:100%}

.pls-chrome{display:flex;flex-direction:column;min-height:100vh}

.pls-main{flex:1;margin-top:var(--pls-topbar-h)}

.pls-topbar{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--pls-topbar-h);background:var(--pls-topbar-bg);border-bottom:1px solid var(--pls-topbar-bd);display:flex;align-items:center;padding:0 2rem;gap:1.5rem;transition:background var(--pls-trans),height var(--pls-trans)}

.pls-topbar-left{flex-shrink:0}

.pls-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none}

.pls-logo:hover{text-decoration:none}

.pls-logo-icon{width:26px;height:26px;filter:drop-shadow(0 0 8px rgba(212,43,43,0.5))}

.pls-logo-text{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--pls-t1)}

.pls-logo-dot{color:var(--pls-red)}

.pls-nav{display:flex;align-items:center;gap:2px;flex:1}

.pls-nav-link{padding:.25rem .875rem;border-radius:var(--pls-radius);color:var(--pls-t2);font-size:.8125rem;transition:all var(--pls-trans);text-decoration:none}

.pls-nav-link:hover{color:var(--pls-t1);background:var(--pls-surface2);text-decoration:none}

.pls-nav-link.active{color:var(--pls-red);background:var(--pls-surface2)}

.pls-topbar-controls{display:flex;align-items:center;gap:.5rem;margin-left:auto}

.pls-size-controls{display:flex;align-items:center;gap:2px}

.pls-size-btn{background:none;border:1px solid var(--pls-border);color:var(--pls-t3);cursor:pointer;border-radius:var(--pls-radius);padding:2px 7px;line-height:1.4;transition:all var(--pls-trans)}

.pls-size-btn[data-size="sm"]{font-size:10px}.pls-size-btn[data-size="md"]{font-size:12px}.pls-size-btn[data-size="lg"]{font-size:14px}.pls-size-btn[data-size="xl"]{font-size:16px}

.pls-size-btn:hover,.pls-size-btn.active{background:var(--pls-surface2);color:var(--pls-red);border-color:var(--pls-red)}

.pls-ctrl-btn{background:none;border:1px solid var(--pls-border);border-radius:var(--pls-radius);width:30px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--pls-trans)}

.pls-ctrl-btn:hover{background:var(--pls-surface2);border-color:var(--pls-red)}

.pls-ctrl-btn img{width:15px;height:15px}

[data-theme="dark"] .pls-ctrl-btn img{filter:invert(65%)}[data-theme="dark"] .pls-ctrl-btn:hover img{filter:invert(85%)}

[data-theme="light"] .pls-ctrl-btn img{filter:invert(30%)}[data-theme="light"] .pls-ctrl-btn:hover img{filter:invert(10%)}

[data-theme="dark"] .pls-icon-light{display:block}[data-theme="dark"] .pls-icon-dark{display:none}

[data-theme="light"] .pls-icon-light{display:none}[data-theme="light"] .pls-icon-dark{display:block}

body:not(.is-fullscreen) .pls-icon-fs-enter{display:block}body:not(.is-fullscreen) .pls-icon-fs-exit{display:none}

body.is-fullscreen .pls-icon-fs-enter{display:none}body.is-fullscreen .pls-icon-fs-exit{display:block}

body.is-fullscreen .pls-topbar{height:36px;padding:0 1rem}

body.is-fullscreen .pls-nav{display:none}

body.is-fullscreen .pls-main{margin-top:36px}

.pls-hero{background:var(--pls-hero-bg);padding:6rem 2rem 5rem;min-height:72vh;display:flex;align-items:center;justify-content:center}

.pls-hero-inner{max-width:800px;text-align:center}

.pls-hero-eyebrow{display:inline-block;margin-bottom:1.5rem;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--pls-red);border:1px solid var(--pls-red-dim);padding:.3rem 1rem;border-radius:2px}

.pls-hero-headline{font-size:clamp(2.75rem,7vw,5rem);font-weight:900;line-height:1.02;color:var(--pls-t1);letter-spacing:-.03em;margin-bottom:1.75rem}

[data-theme="dark"] .pls-hero-headline{text-shadow:0 2px 24px rgba(0,0,0,0.6)}

.pls-hero-sub{font-size:1.05rem;color:var(--pls-t2);max-width:660px;margin:0 auto 2rem;line-height:1.75}

.pls-hero-pills{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.5rem}

.pls-pill{background:var(--pls-pill-bg);border:1px solid var(--pls-pill-bd);color:var(--pls-t2);font-size:.75rem;padding:.25rem .75rem;border-radius:20px}

.pls-hero-meta{font-size:.75rem;color:var(--pls-t3);letter-spacing:.04em}

.pls-stats-bar{background:var(--pls-stats-bg);border-top:1px solid var(--pls-border);border-bottom:1px solid var(--pls-border);padding:2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}

.pls-stat-num{display:block;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:800;color:var(--pls-red);letter-spacing:-.02em}

.pls-stat-label{display:block;font-size:.75rem;color:var(--pls-t3);margin-top:.25rem}

.pls-section-hd{text-align:center;margin-bottom:3rem}

.pls-section-title{font-size:clamp(1.4rem,3vw,1.875rem);font-weight:800;color:var(--pls-t1);letter-spacing:-.01em}

.pls-section-sub{font-size:.9rem;color:var(--pls-t3);margin-top:.5rem}

.pls-pillars{padding:5rem 2rem;background:var(--pls-bg)}

.pls-pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:var(--pls-max-w);margin:0 auto}

.pls-pillar{background:var(--pls-pillar-bg);border:1px solid var(--pls-border);border-radius:var(--pls-radius-lg);padding:2rem;transition:border-color var(--pls-trans),box-shadow var(--pls-trans)}

.pls-pillar:hover{border-color:var(--pls-red-dim);box-shadow:var(--pls-shadow)}

.pls-pillar-fallen{border-color:var(--pls-red-dim)}

.pls-pillar-icon{width:36px;height:36px;margin-bottom:1.25rem;opacity:.6}

[data-theme="dark"] .pls-pillar-icon{filter:invert(60%) sepia(20%) saturate(300%) hue-rotate(330deg)}

[data-theme="light"] .pls-pillar-icon{filter:invert(20%) sepia(30%) saturate(400%) hue-rotate(330deg)}

.pls-pillar-title{font-size:1.05rem;font-weight:700;color:var(--pls-t1);margin-bottom:.75rem}

.pls-pillar-body{font-size:.875rem;color:var(--pls-t2);line-height:1.75}

.pls-scope{padding:5rem 2rem;background:var(--pls-scope-bg)}

.pls-scope-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.625rem;max-width:var(--pls-max-w);margin:0 auto}

.pls-scope-item{background:var(--pls-surface);border:1px solid var(--pls-border);border-radius:var(--pls-radius);padding:.75rem 1rem;font-size:.8125rem;color:var(--pls-t2);text-align:center;transition:all var(--pls-trans)}

.pls-scope-item:hover{border-color:var(--pls-red-dim);color:var(--pls-red)}

.pls-legacy-block{padding:5rem 2rem;background:var(--pls-legacy-bg)}

.pls-legacy-inner{max-width:780px;margin:0 auto;text-align:center}

.pls-legacy-title{font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:800;color:var(--pls-t1);margin-bottom:1.25rem}

.pls-legacy-body{font-size:.9375rem;color:var(--pls-t2);line-height:1.8}

.pls-coming-block{padding:5rem 2rem;background:var(--pls-coming-bg);border-top:1px solid var(--pls-border)}

.pls-coming-inner{max-width:700px;margin:0 auto;text-align:center}

.pls-coming-title{font-size:1.4rem;font-weight:800;color:var(--pls-red);margin-bottom:1rem}

.pls-coming-body{font-size:.9rem;color:var(--pls-t2);line-height:1.8;margin-bottom:1.5rem}

.pls-coming-meta{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap;font-size:.775rem;color:var(--pls-t3)}

.pls-meta-dot{color:var(--pls-border)}

.pls-footer{background:var(--pls-footer-bg);border-top:1px solid var(--pls-border);padding:1.5rem 2rem}

.pls-footer-inner{max-width:var(--pls-max-w);margin:0 auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}

.pls-footer-brand{font-size:1rem;font-weight:800;color:#f0f4f0}

.pls-footer-brand span{color:var(--pls-red)}

.pls-footer-tagline{font-size:.8125rem;color:#4a6050}

.pls-footer-copy{font-size:.7375rem;color:#304040;margin-left:auto}

.pls-building{min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:5rem 2rem}

.pls-building-icon{width:56px;height:56px;margin-bottom:2rem;opacity:.35}

[data-theme="dark"] .pls-building-icon{filter:invert(60%) sepia(20%) saturate(300%) hue-rotate(330deg)}

[data-theme="light"] .pls-building-icon{filter:invert(20%) sepia(30%) saturate(400%) hue-rotate(330deg)}

.pls-building-title{font-size:1.625rem;font-weight:800;color:var(--pls-t1);margin-bottom:.75rem}

.pls-building-body{font-size:.9rem;color:var(--pls-t2);max-width:520px;margin-bottom:2rem;line-height:1.7}

.pls-btn{display:inline-block;padding:.5rem 1.75rem;border-radius:var(--pls-radius);font-size:.8375rem;font-weight:700;text-decoration:none;transition:all var(--pls-trans)}

.pls-btn-outline{border:1px solid var(--pls-red);color:var(--pls-red)}

.pls-btn-outline:hover{background:var(--pls-red);color:#fff;text-decoration:none}

@media(max-width:900px){.pls-stats-bar{grid-template-columns:repeat(2,1fr)}.pls-pillar-grid{grid-template-columns:1fr}}

@media(max-width:640px){.pls-topbar{padding:0 1rem;gap:.75rem}.pls-nav{display:none}.pls-stats-bar{grid-template-columns:1fr;padding:1.5rem}.pls-footer-copy{margin-left:0}}

