:root{--slate:#3a5576;--slate-d:#1f3047;--slate-dd:#152234;--slate-l:#e9eef4;--ink:#1b2430;--muted:#5b6878;--line:#d5dde7;--ph:#fff6d6;--phb:#c9a227}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Source Sans 3",system-ui,sans-serif;color:var(--ink);line-height:1.6;font-size:17px;background:#fff}
h1,h2,h3{font-family:"Source Serif 4",Georgia,serif;line-height:1.15;margin:0 0 .5em;color:var(--slate-dd)}
h1{font-size:clamp(2.4rem,5.5vw,4.2rem);font-weight:800;letter-spacing:-.02em}
h2{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:800;letter-spacing:-.01em}
h3{font-size:1.25rem;font-weight:700}
a{color:var(--slate)}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
section{padding:96px 0}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:var(--slate);margin-bottom:14px}
.lead{font-size:1.2rem;color:var(--muted);max-width:680px}
.ph{background:var(--ph);border:1px dashed var(--phb);padding:0 .3em;border-radius:3px;color:#6b5400;font-weight:600}
.phbox{background:var(--ph);border:2px dashed var(--phb);border-radius:8px;padding:28px;color:#5a4700}
/* header */
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.mark{font-family:"Libre Franklin",sans-serif;font-weight:800;font-size:1.45rem;color:var(--slate-dd);text-decoration:none;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}
.mark span{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--slate-d);color:#fff;border-radius:4px;font-size:1rem}
.mark b{color:var(--slate);font-weight:800}
.links{display:flex;gap:28px;align-items:center}
.links a{text-decoration:none;color:var(--ink);font-weight:500;font-size:.95rem}
.btn{display:inline-block;background:var(--slate-d);color:#fff!important;text-decoration:none;padding:14px 26px;border-radius:4px;font-weight:600;border:2px solid var(--slate-d);cursor:pointer;font-size:1rem;font-family:inherit}
.btn:hover{background:var(--slate)}
.btn.ghost{background:transparent;color:var(--slate-d)!important}
.btn.sm{padding:10px 18px;font-size:.9rem}
.menu{display:none;background:none;border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-size:1rem}
/* hero */
.hero{background:linear-gradient(180deg,var(--slate-l),#fff);padding:110px 0 100px}
.hero .lead{margin:20px 0 34px}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.trust{display:flex;gap:36px;flex-wrap:wrap;margin-top:56px;padding-top:28px;border-top:1px solid var(--line);color:var(--muted);font-size:.95rem}
.trust strong{display:block;color:var(--slate-dd);font-size:1.05rem}
/* grids */
.grid{display:grid;gap:24px}.g4{grid-template-columns:repeat(4,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
.card{border:1px solid var(--line);border-radius:6px;padding:30px;background:#fff}
.card .tag{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.card p{color:var(--muted);margin:.4em 0 0}
.alt{background:var(--slate-l)}
.dark{background:var(--slate-dd);color:#dbe3ee}.dark h2,.dark h3{color:#fff}.dark .eyebrow{color:#9fb6d3}.dark .lead{color:#b8c6d8}
.steps{counter-reset:s;margin-top:48px}
.step{border-top:3px solid var(--slate);padding-top:22px}
.step .when{font-weight:700;color:var(--slate);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}
.dark .step{border-color:#9fb6d3}.dark .step .when{color:#9fb6d3}.dark .step p{color:#b8c6d8}
/* audit */
.audit{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center}
.table{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;box-shadow:0 20px 40px -20px rgba(21,34,52,.25)}
.table .row{display:grid;grid-template-columns:1.6fr .7fr .9fr;padding:14px 20px;border-bottom:1px solid var(--line);font-size:.95rem}
.table .row.h{background:var(--slate-d);color:#fff;font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}
.table .row:last-child{border:0}.pill{white-space:nowrap;font-size:.78rem;font-weight:700;background:var(--slate-l);color:var(--slate-d);padding:3px 10px;border-radius:20px;justify-self:start}
.pill.first{background:var(--slate-d);color:#fff}
.note{font-size:.82rem;color:var(--muted);margin-top:10px}
/* tiers */
.tiers{margin-top:48px;align-items:stretch}
.tier{display:flex;flex-direction:column}
.tier.feat{border:2px solid var(--slate-d);position:relative}

.price{font-size:2rem;font-weight:800;color:var(--slate-dd);margin:12px 0 4px;font-family:"Libre Franklin",sans-serif}
.tier ul{padding:0;list-style:none;margin:20px 0 28px;flex:1}
.tier li{padding:8px 0 8px 28px;border-bottom:1px solid var(--line);position:relative;font-size:.96rem}
.tier li:before{content:"";position:absolute;left:4px;top:15px;width:10px;height:10px;background:var(--slate);border-radius:2px}
.monthly{margin-top:40px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;padding:36px;border-radius:6px;background:var(--slate-d);color:#dbe3ee}
.monthly h3{color:#fff}
.monthly ul{margin:0;padding-left:20px}
/* faq */
details{border-bottom:1px solid var(--line);padding:20px 0}
summary{font-weight:600;cursor:pointer;font-size:1.08rem;color:var(--slate-dd)}
details p{color:var(--muted);margin:12px 0 0}
/* about split (unused) */
.aboutsplit{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:center}
.photo{aspect-ratio:4/5;background:repeating-linear-gradient(45deg,var(--slate-l),var(--slate-l) 12px,#dfe6ee 12px,#dfe6ee 24px);border:2px dashed var(--line);border-radius:6px;display:grid;place-items:center;color:var(--muted);font-weight:600}
/* contact */
.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:56px}
form{background:#fff;border-radius:6px;padding:36px;color:var(--ink)}
label{display:block;font-weight:600;font-size:.9rem;margin:0 0 6px;color:var(--slate-dd)}
label .opt{font-weight:400;color:var(--muted)}
input,textarea,select{width:100%;padding:13px 14px;border:1px solid #b9c5d3;border-radius:4px;font:inherit;margin-bottom:18px}
input:focus,textarea:focus{outline:2px solid var(--slate);border-color:var(--slate)}
textarea{min-height:120px;resize:vertical}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
/* footer */
footer{background:#0f1927;color:#8fa0b5;padding:48px 0;font-size:.92rem}
footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
footer a{color:#c9d5e3;text-decoration:none;margin-left:20px}
footer .mark{color:#fff}footer .mark b{color:#9fb6d3}footer .mark span{background:#3a5576}
.legal{max-width:760px;padding:80px 24px;margin:0 auto}
@media(max-width:900px){
 .g4,.g3,.g2,.audit,.aboutsplit,.contact,.monthly{grid-template-columns:1fr}
 .g4{grid-template-columns:1fr 1fr}
 section{padding:72px 0}.hero{padding:72px 0}
 .links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;border-bottom:1px solid var(--line);gap:16px}
 .links.open{display:flex}.menu{display:block}
 .aboutsplit .photo{max-width:280px}
}
@media(max-width:560px){.g4,.frow{grid-template-columns:1fr}.trust{gap:20px}.table .row{grid-template-columns:1.4fr .6fr .9fr;padding:12px 14px;font-size:.85rem}form{padding:24px}.monthly{padding:26px}}

/* v2: font B */
body,input,textarea,select,.btn{font-family:"Source Sans 3",system-ui,sans-serif}
h1,h2,h3,.mark,.price{font-family:"Source Serif 4",Georgia,sans-serif}h1,h2{letter-spacing:-.01em;font-weight:700}
/* v2: logo */
.mark svg{height:40px;width:auto;display:block}footer .mark svg{height:36px}
/* v2: scroll backgrounds + bolder sections */

/* bolder contrast */
.hero{background:linear-gradient(160deg,#152234 0%,#2b4364 100%)!important;color:#dbe3ee}
.hero h1{color:#fff}.hero .lead{color:#c3d0e0}.hero .eyebrow{color:#9fb6d3}
.hero .btn{background:#fff;color:#152234!important;border-color:#fff}.hero .btn.ghost{background:transparent;color:#fff!important}
.hero .trust{border-color:rgba(255,255,255,.2);color:#9fb6d3}.hero .trust strong{color:#fff}
#plans .tag,#problem .tag{color:#3a5576}
#problem .card{border-top:4px solid #3a5576}
.bgs{position:fixed;inset:0;z-index:-1}.bgs div{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}.bgs div.on{opacity:1}.bgs .b-hero{background:radial-gradient(1200px 600px at 80% 10%,#4b6a92 0%,transparent 60%),radial-gradient(900px 500px at 10% 90%,#2b4364 0%,transparent 60%),linear-gradient(160deg,#0f1927,#1f3047)}.bgs .b-how{background:repeating-linear-gradient(115deg,rgba(159,182,211,.07) 0 2px,transparent 2px 90px),linear-gradient(200deg,#152234,#2b4364)}.bgs .b-plans{background:radial-gradient(800px 800px at 50% 120%,#5b7ba3 0%,transparent 60%),linear-gradient(180deg,#1f3047,#152234)}.bgs .b-contact{background:conic-gradient(from 210deg at 85% 15%,#3a5576,#152234 40%,#0f1927 70%,#3a5576)}
body{background:transparent}
.hero,#how,#contact{background:transparent!important}
.hero{min-height:88vh;display:flex;align-items:center}.hero>.wrap{width:100%}
#how,#contact{padding:140px 0}
.panel{background:transparent!important}
#plans{background:transparent!important}#plans>.wrap{background:rgba(246,248,251,.97);border-radius:10px;padding:56px 48px;box-shadow:0 30px 80px -30px #000a}
#problem,#audit,#guarantee,#results,#about,#faq{background:#fff;position:relative}
#results,#faq{background:#eef2f7}
.bgs svg{position:absolute;right:-6%;top:12%;width:46vw;opacity:.10;color:#c9d8ec}
@media (prefers-reduced-motion:reduce){.bgs div{transition:none}}
@media(max-width:700px){#plans>.wrap{padding:36px 20px;border-radius:0}}

.bgs{transform:translateZ(0)}
@media(max-width:700px){.bgs svg{width:80vw;right:-25%;top:20%}.hero{min-height:auto}#how,#contact{padding:96px 0}}

.price small{display:block;font-family:"Source Sans 3",sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.founding{margin:20px 0 0;text-align:center;color:var(--muted);font-size:.95rem}
.auditoffer{margin-top:24px;padding:24px 26px;border-radius:6px;background:#fff;border:2px solid var(--slate-d)}
.auditoffer h3{margin:6px 0 8px}.auditoffer p{margin:0 0 16px;color:var(--muted)}
.auditoffer .tag{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#3a5576}
.legal{max-width:760px;margin:0 auto;padding:80px 24px}

/* Contractor audit examples: give task and automation copy room to wrap. */
#audit .table .row{grid-template-columns:1.2fr .9fr 1.2fr;gap:14px}
#audit .table .row>div{min-width:0;overflow-wrap:break-word}
@media(max-width:560px){#audit .table .row{gap:10px;font-size:.82rem;padding:12px}}
