/* Brand (logo palette): navy #04152C, royal blue #0057D9/#1E6BF0, silver #8E9094-#4E5156, cool gray #F4F6F9 */
:root{--blue:#0057D9;--blue2:#1E6BF0;--blue-h:#0047B3;--blue-lt:#6FA4FF;--navy:#04152C;--navy2:#0A2448;--ink:#04152C;--muted:#4E5156;--silver:#8E9094;--bg:#fff;--soft:#F4F6F9;--line:#E2E5EA;--accent:#0057D9;--r:14px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}.narrow{max-width:620px}
.hdr{position:sticky;top:0;z-index:10;background:rgba(4,21,44,.92);backdrop-filter:blur(10px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:10px;font-size:20px;letter-spacing:-.02em}
.mark{color:var(--navy);width:34px;height:34px;border-radius:9px;background:var(--accent);display:grid;place-items:center;font-weight:800}
.word{font-weight:500}.word b{font-weight:800;margin-left:4px}
nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:500}nav a:not(.btn){opacity:.8}nav a:hover{opacity:1}
.btn{display:inline-block;background:var(--accent);color:#fff;font-weight:600;padding:14px 24px;border-radius:10px;border:0;font:inherit;font-weight:600;cursor:pointer;transition:filter .15s}
.btn:hover{filter:brightness(1.1)}.btn-sm{padding:9px 16px;font-size:14px}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.35)}
.hero{background:radial-gradient(1000px 520px at 85% -10%,color-mix(in srgb,var(--blue) 70%,transparent),transparent),linear-gradient(180deg,var(--navy),var(--navy2));color:#fff;padding:140px 0 150px}
h1{font-size:clamp(40px,6.4vw,76px);line-height:1.04;letter-spacing:-.035em;font-weight:800;max-width:900px}
h1 span{color:color-mix(in srgb,var(--accent) 55%,#fff)}
.sub{font-size:clamp(18px,2vw,21px);color:rgba(255,255,255,.75);margin:24px 0 40px;max-width:600px}.sub.dark{color:var(--muted);margin:12px 0 32px}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.sec{padding:110px 0}.alt{background:var(--soft)}
h2{font-size:clamp(28px,3.6vw,42px);letter-spacing:-.025em;line-height:1.15;font-weight:800;max-width:700px}
h3{font-size:19px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px}
.card{border:1px solid var(--line);border-radius:var(--r);padding:32px}.card p,.steps p{color:var(--muted)}
.ic{font-weight:800;color:var(--accent);font-size:14px;letter-spacing:.1em;margin-bottom:28px}
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px}
.steps span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;margin-bottom:20px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form label{display:grid;gap:6px;font-size:14px;font-weight:600}
.form input{font:inherit;font-weight:400;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}
.form input:focus{outline:2px solid var(--accent);border-color:transparent}
.full{grid-column:1/-1;margin-top:8px}.ok{grid-column:1/-1;color:var(--accent);font-weight:600}
.ftr{background:var(--navy);color:rgba(255,255,255,.6);padding:32px 0;font-size:14px}
@media(max-width:820px){nav a:not(.btn){display:none}.grid3,.steps{grid-template-columns:1fr}.hero{padding:96px 0 104px}.sec{padding:80px 0}.form{grid-template-columns:1fr}}
@media(max-width:420px){.btn-sm{display:none}}
.tag{color:var(--accent);font-weight:600;letter-spacing:.02em;margin-bottom:20px}
.trust{background:var(--soft);border-bottom:1px solid var(--line);padding:22px 0;text-align:center;color:var(--muted);font-size:15px;letter-spacing:.04em}.trust b{color:var(--navy)}
.btn:not(.btn-ghost){color:var(--navy)}
.form select{font:inherit;font-weight:400;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}
.ftr .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

.logo{height:34px;width:auto;display:block}.logo-f{height:26px;width:auto;display:block}
.fbrand{display:flex;align-items:center;gap:18px}.ftr .wrap{align-items:center}
h1,h2,h3{font-family:Poppins,Inter,sans-serif;font-weight:700}
h1 span{color:var(--blue)}.steps span{background:var(--blue)}.trust b{color:var(--blue)}.ic{color:var(--blue)}
.card{border-top:3px solid var(--blue)}
@media(max-width:420px){.logo{height:26px}}

.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.err{grid-column:1/-1;color:#b42318;font-weight:600}.thanks{text-align:center;padding:40px 24px;border:1px solid var(--line);border-radius:14px}.thanks h3{font-size:28px;margin:0 0 8px;color:var(--accent)}

/* copy v2 */
.sub2{margin-top:-20px}.motto{color:#fff;font-family:Poppins,Inter,sans-serif;font-weight:600;font-size:clamp(17px,1.8vw,20px);margin:-8px 0 32px;padding-left:14px;border-left:3px solid var(--blue)}
.eyebrow{color:var(--blue);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.split{display:grid;grid-template-columns:5fr 6fr;gap:72px;align-items:start}
.prose p{color:var(--muted);font-size:18px;margin-bottom:18px}.prose p:last-child{margin-bottom:0}.prose .strong{color:var(--navy);font-weight:600}
.dark{background:linear-gradient(180deg,var(--navy),var(--navy2));color:#fff}.dark h2 span{color:var(--blue)}.dark .prose p{color:rgba(255,255,255,.75)}.dark .prose .strong{color:#fff}
#access.dark .form label{color:#fff}#access.dark .thanks{background:#fff;color:var(--navy)}#access .sub{margin:16px 0 36px}
.steps span{width:auto;height:auto;background:none!important;color:var(--blue);font-size:14px;letter-spacing:.1em;display:block;margin-bottom:16px;border-top:3px solid var(--blue);padding-top:18px}
.link{color:var(--blue);font-weight:600}
@media(max-width:820px){.split{grid-template-columns:1fr;gap:28px}}

/* Anthony PNG logo: light header (logo has dark navy text, unreadable on navy) */
.hdr{background:rgba(255,255,255,.96);color:var(--navy);border-bottom:1px solid rgba(4,21,44,.08)}.hdr nav a:not(.btn){color:var(--navy)}.logo{height:44px;width:auto}@media(max-width:420px){.logo{height:auto;width:min(300px,72vw)}}
.brand{min-width:0;flex-shrink:1}.logo{max-width:calc(100vw - 48px);height:auto;max-height:44px;object-fit:contain}

/* Retheme 10/27: logo palette */
.btn:not(.btn-ghost){background:var(--blue);color:#fff;filter:none}.btn:not(.btn-ghost):hover{background:var(--blue-h);filter:none}
.btn-ghost:hover{border-color:#fff}
.hero h1 span,.dark h2 span{color:var(--blue-lt)}
.hero .tag,.hero .eyebrow,.dark .eyebrow,.dark .tag{color:#A9C8FF}
.motto{border-left-color:var(--blue2)}
.card{border-top:3px solid var(--blue)}
.steps span{color:var(--blue);border-top-color:var(--blue)}
.dark .steps span{color:var(--blue-lt);border-top-color:var(--blue2)}
.trust{border-bottom-color:var(--line)}.trust b{color:var(--navy)}
.ftr{color:var(--silver)}
.link:hover{color:var(--blue-h)}
.logo-f{height:84px;margin:-14px 0}
.faddr{font-style:normal;color:#8E9094;font-size:14px;margin-top:10px}
.ftr .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}

/* Responsive pass 10/27 */
html{-webkit-text-size-adjust:100%}img{max-width:100%}
h1{font-size:clamp(36px,5.2vw + 12px,84px)}h2{font-size:clamp(26px,2.4vw + 14px,48px)}
.sub{font-size:clamp(17px,.6vw + 14px,21px)}.prose p{font-size:clamp(16px,.3vw + 14.5px,18px)}
.hero{padding:clamp(72px,9vw,150px) 0 clamp(80px,10vw,160px)}.sec{padding:clamp(64px,8vw,120px) 0}
.menu-btn{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-right:-8px}
.menu-btn span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:.2s}
.menu-btn[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-btn[aria-expanded=true] span:nth-child(2){opacity:0}.menu-btn[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hdr-in{gap:16px}.brand{flex:0 1 auto;min-width:0}
@media(max-width:1100px){nav{gap:20px}.logo{height:38px}}
@media(max-width:900px){
 .menu-btn{display:flex}.hdr-in{height:64px}.logo{height:auto;max-height:40px;width:min(330px,calc(100vw - 110px))}
 nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(4,21,44,.08);padding:8px 24px 20px}
 nav.open{display:flex}nav a:not(.btn){display:block!important;padding:14px 0;border-bottom:1px solid var(--line);font-size:17px;opacity:1}
 nav .btn-sm{display:block!important;text-align:center;margin-top:16px;padding:14px 16px;font-size:16px}
}
@media(min-width:600px) and (max-width:900px){.grid3{grid-template-columns:repeat(2,1fr)}.grid3>:last-child:nth-child(odd){grid-column:1/-1}}
@media(min-width:1800px){.wrap{max-width:1320px}body{font-size:17px}.logo{height:48px}}
.ftr .wrap{row-gap:14px}
@media(max-width:640px){.ftr .wrap{flex-direction:column;justify-content:center;text-align:center}.fbrand{flex-direction:column;gap:10px}.faddr{margin-top:0;max-width:240px;line-height:1.5}}

/* ===== Accessibility pass 10/28 (WCAG 2.1 AA) ===== */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--blue);color:#fff;font-weight:600;font-size:14px;padding:10px 16px;border-radius:10px}
.skip:focus{top:12px}
main:focus,.thanks:focus{outline:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.dark a:focus-visible,.dark button:focus-visible,.dark input:focus-visible,.dark select:focus-visible,.hero a:focus-visible,.ftr a:focus-visible{outline-color:var(--blue-lt)}
.form input:focus,.form select:focus{outline:3px solid var(--blue-lt);outline-offset:1px;border-color:transparent}
.fnote{grid-column:1/-1;font-size:14px;color:rgba(255,255,255,.75)}
.opt{font-weight:400;opacity:.8}
.err{color:#FFB4AB} /* was #b42318 (2.35:1 on navy); light red passes 4.5:1 */
[aria-invalid=true]{border-color:#FFB4AB!important;box-shadow:0 0 0 2px #FFB4AB}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
html{scroll-padding-top:84px}
