:root{--accent:#1b1b1b;--muted:#777}
*{box-sizing:border-box}
body{font-family:Inter,system-ui,Arial,sans-serif;margin:0;color:var(--accent);}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.site-header{background:#fff;border-bottom:1px solid #eee}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.brand{font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:12px}
.brand-logo{height:28px;width:auto;display:inline-block}
.main-nav a{margin-left:18px;color:var(--accent);text-decoration:none}
.hero{background-image:linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)),url('assets/hero.svg');background-size:cover;background-position:center;color:white;padding:110px 0}
.hero-title{font-size:48px;margin:10px 0 20px;font-weight:400}
.eyebrow{letter-spacing:2px;font-size:13px}
.cta{display:inline-block;background:white;color:#111;padding:10px 16px;border-radius:2px;text-decoration:none}
.features{padding:60px 0}
.features h2{margin-top:0}
.cards{display:flex;gap:18px;margin-top:18px}
.card{flex:1;background:#fafafa;border:1px solid #eee;padding:24px;text-align:center}
.card img{max-width:100%;height:auto}
.contact{padding:40px 0}
.site-footer{background:#fafafa;padding:20px 0;border-top:1px solid #eee}
.service-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.visuals{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:18px}
.service-visual img{width:100%;height:auto;display:block}

@media(max-width:700px){.hero{padding:60px 0}.hero-title{font-size:32px}.cards{flex-direction:column}}

/* Legal pages (privacy, SMS opt-in) */
.legal{max-width:820px;margin:0 auto;padding:40px 20px 60px}
.legal h1{font-weight:400;font-size:36px;margin:0 0 6px}
.legal .sub{color:var(--muted);margin:0 0 28px}
.legal h2{font-size:20px;margin:34px 0 10px;padding-top:14px;border-top:1px solid #eee}
.legal h3{font-size:16px;margin:22px 0 8px}
.legal p,.legal li{line-height:1.65}
.legal ul{padding-left:22px}
.legal .callout{background:#fafafa;border:1px solid #e6e6e6;border-left:3px solid var(--accent);padding:18px 20px;margin:22px 0}
.legal .consent{background:#fff;border:1px solid #ddd;padding:20px;margin:18px 0}
.legal .consent label{display:flex;gap:10px;align-items:flex-start;line-height:1.6}
.legal .consent input{margin-top:4px}
.legal table{border-collapse:collapse;width:100%;margin:14px 0}
.legal th,.legal td{border:1px solid #e6e6e6;padding:9px 12px;text-align:left;vertical-align:top}
.legal th{background:#fafafa;font-weight:600;width:34%}
.legal .toc a{display:block;padding:3px 0;color:var(--accent)}
