/* AOD Pulse 2026-11 visual refresh (v2). Layered over style.css: same class names, new look.
   Shares aod.tech v2 typography (self-hosted, CSP font-src 'self'). */
@font-face{font-family:"Bricolage Grotesque";src:url(fonts/bricolage-grotesque-latin-wght-normal.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url(fonts/atkinson-hyperlegible-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url(fonts/atkinson-hyperlegible-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
:root{--ink:#0f1d26;--muted:#4f5f6b;--paper:#f6f9fb;--line:#e1e8ee;--teal:#0a7f6f;--teal-2:#086b5d;--mint:#dcf3ea;--coral:#ff7a59;--navy:#152d39;--sky:#e6f2f8;--white:#fff;
--display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;--body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
--r:18px;--shadow:0 1px 2px #0f1d260a,0 12px 32px -12px #0f1d2626;--shadow-lg:0 2px 4px #0f1d260a,0 30px 60px -20px #0f1d2640}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:16.5px/1.65 var(--body);background:var(--paper);-webkit-font-smoothing:antialiased}
h1,h2,h3,.brand,.plan .number,.stat strong,.demo-metrics b{font-family:var(--display)}
h1{font-weight:700;letter-spacing:-.035em;line-height:1.04}
h2{font-weight:700;letter-spacing:-.03em}
h3{font-weight:700;letter-spacing:-.015em}
h1 span{background:linear-gradient(100deg,var(--teal),#13a58a);-webkit-background-clip:text;background-clip:text;color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,:focus-visible{outline:3px solid var(--coral);outline-offset:3px;border-radius:6px}

/* header: sticky, frosted */
body>header,header.wrap{position:sticky;top:0;z-index:50}
body>header:has(.nav),header.wrap:has(.nav){background:#f6f9fbd9;backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid #e1e8ee99}
.nav{min-height:76px}
.brand{font-weight:800;letter-spacing:-.03em}
.brand em{font-weight:500;color:var(--teal)}
.navlinks{font-size:15px;font-weight:700;gap:26px}
.navlinks a:not(.button){color:var(--muted);transition:color .15s}
.navlinks a:not(.button):hover{color:var(--ink)}

/* buttons: pills */
.button,button.primary{border-radius:999px;padding:12px 22px;font-weight:700;font-size:15px;background:var(--navy);border-color:var(--navy);box-shadow:0 1px 2px #0f1d2626;transition:transform .15s,background .15s,box-shadow .15s}
.button:hover,button.primary:hover{background:var(--teal);border-color:var(--teal);transform:translateY(-1px);box-shadow:0 8px 20px -8px #0a7f6f99}
.button.secondary,button.secondary{border-radius:999px;background:var(--white);border:1px solid var(--line);color:var(--ink);box-shadow:none}
.button.secondary:hover,button.secondary:hover{border-color:var(--ink);background:var(--white);transform:translateY(-1px)}
.eyebrow{display:inline-flex;font-size:11.5px;letter-spacing:1.6px;background:var(--mint);color:var(--teal-2);padding:6px 12px;border-radius:999px}
.dot{background:var(--teal);box-shadow:0 0 0 0 #0a7f6f66;animation:pulse-dot 2.2s infinite}
@keyframes pulse-dot{0%{box-shadow:0 0 0 0 #0a7f6f66}70%{box-shadow:0 0 0 8px #0a7f6f00}100%{box-shadow:0 0 0 0 #0a7f6f00}}

/* hero */
main:has(>.wrap>.hero),main:has(.hero){background:radial-gradient(900px 480px at 85% -5%,#dcf3ea 0%,#dcf3ea00 60%),radial-gradient(700px 420px at -5% 10%,#e6f2f8 0%,#e6f2f800 60%)}
.hero{padding:72px 0 88px;gap:64px}
.lead{font-size:19px;color:var(--muted)}
.visual{background:linear-gradient(160deg,#ffffff 0%,#eef6f3 100%);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow-lg)}
.demo-card{border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--shadow)}
.uptime-bars i{background:#3fae84;border-radius:4px}
.uptime-bars i:nth-child(29){background:var(--coral)}
.badge{font-weight:700;font-size:11px;padding:4px 10px}
.facts{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:26px 30px;box-shadow:var(--shadow)}
.facts b{font-family:var(--display);font-size:16px}

/* sections and cards */
section.content{padding:96px 0}
.card,.stat,.guide-grid section{border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s,border-color .2s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:#cfdbe3}
.icon{border-radius:14px;background:linear-gradient(140deg,var(--mint),#c6ecdd);color:var(--teal-2)}
.plans-section{background:linear-gradient(180deg,#eef6f3,#f6f9fb);border:0}
.plan{border-radius:22px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow)}
.plan.featured{background:radial-gradient(500px 260px at 80% 0%,#0a7f6f55,#0a7f6f00),var(--navy);border-color:var(--navy);box-shadow:var(--shadow-lg)}
.plan .button{border-radius:999px;background:var(--navy);color:#fff;border-color:var(--navy)}
.plan.featured .button{background:var(--mint);color:var(--ink);border-color:var(--mint)}
.closing{background:var(--navy);color:#fff;border-radius:28px;padding:56px 56px;margin:40px 0 72px;box-shadow:var(--shadow-lg);border:0}
.closing p{color:#c3d3dc}
.closing .button{background:var(--mint);color:var(--ink);border-color:var(--mint)}
.closing .button:hover{background:#fff;color:var(--ink)}
footer{background:var(--white);font-size:13px}
.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}

/* app, forms, panels */
.panel,.modal{border-radius:22px;box-shadow:var(--shadow-lg)}
.form-field input,.form-field select,.status-choice input[type=text],#status-description,.ack-form textarea{border-radius:10px;border-color:#cbd6de;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.form-field input:focus,.form-field select:focus{border-color:var(--teal);box-shadow:0 0 0 4px #0a7f6f22;outline:0}
.monitor-table th{font-size:10.5px}
.monitor-table tbody tr{transition:background .15s}
.monitor-table tbody tr:hover{background:#f3f8fa}
.notice{border-radius:12px}
.legal pre{border-radius:12px;background:#eef3f6}
.mobile-nav>summary{border-radius:999px;background:var(--white)}
.mobile-nav-links{border-radius:18px;background:var(--white);box-shadow:var(--shadow-lg)}

@media(max-width:700px){h1{letter-spacing:-.03em}.hero{padding:40px 0 52px}.closing{padding:36px 24px;border-radius:22px}.facts{padding:20px}}
@media(prefers-reduced-motion:reduce){.dot{animation:none}.card:hover,.button:hover{transform:none}}

/* reviewer fixes 2026-11-05 */
h1 span{background:linear-gradient(100deg,var(--teal-2),var(--teal));-webkit-background-clip:text;background-clip:text;color:transparent}
@media(forced-colors:active){h1 span{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}}
.closing a:not(.button),.guide .closing a:not(.button){color:var(--mint)}
.closing h2{color:#fff}
html{scroll-padding-top:88px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:focus-visible{border-radius:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{border-radius:6px}
.form-field input:focus-visible,.form-field select:focus-visible,.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.button,button.primary,.button:hover,button.primary:hover{color:#fff}
.button.secondary,button.secondary,.closing .button,.plan.featured .button{color:var(--ink)}
header.wrap{background:var(--paper)}
@supports not selector(:has(a)){body>header,header.wrap{background:var(--paper)}}
.monitor-table tbody tr:focus-within{background:#f3f8fa}
.modal{border-radius:16px}
@media(max-width:390px){.closing{padding:28px 18px;border-radius:18px}.closing .button{display:flex;width:100%;white-space:normal;text-align:center}}
