/* USTax2290.com — shared styles */
:root{
  --navy:#0b2447; --navy-2:#12315e; --red:#b91c1c; --gold:#facc15;
  --ink:#1e293b; --muted:#64748b; --line:#e2e8f0; --bg:#f8fafc; --card:#ffffff;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font:16px/1.55 -apple-system,"Segoe UI",Roboto,Inter,Arial,sans-serif;
  color:var(--ink); background:var(--bg);
  display:flex; flex-direction:column; min-height:100dvh;
}
a{color:var(--navy);text-decoration:none}
.wrap{width:min(1100px,92%);margin:0 auto}

/* header */
header.site{background:#fff;border-bottom:3px solid var(--red)}
.nav{display:flex;align-items:center;gap:18px;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;color:var(--navy)}
.brand img{width:38px;height:38px}
.brand .tld{color:var(--red)}
.nav .links{margin-left:auto;display:flex;align-items:center;gap:22px;font-weight:600}
.nav .links a:hover{color:var(--red)}
.btn{display:inline-block;padding:11px 22px;border-radius:8px;font-weight:700;border:2px solid transparent;cursor:pointer}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:#991b1b;color:#fff}
.btn-outline{border-color:var(--navy);color:var(--navy)}
.btn-outline:hover{background:var(--navy);color:#fff}
.btn-sm{padding:8px 16px;font-size:.95rem}

/* hero */
main.landing{flex:1;display:flex;align-items:center;padding:28px 0}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.kicker{display:inline-block;background:var(--navy);color:#fff;font-size:.78rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:14px}
.kicker .flag{color:var(--gold)}
h1{font-size:clamp(1.7rem,3.4vw,2.6rem);line-height:1.15;color:var(--navy);margin-bottom:12px}
h1 .us{color:var(--red)}
.sub{color:var(--muted);font-size:1.06rem;max-width:34rem;margin-bottom:20px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.assure{color:var(--muted);font-size:.88rem;display:flex;gap:16px;flex-wrap:wrap}
.assure span::before{content:"✓ ";color:var(--red);font-weight:700}

/* feature card */
.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 28px rgba(11,36,71,.08);padding:22px}
.panel h2{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.features{list-style:none;display:grid;gap:9px}
.features li{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:#fff}
.features li b{color:var(--navy)}
.features .ico{flex:0 0 auto;width:26px;height:26px;border-radius:6px;background:var(--navy);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800}
.features li.alt .ico{background:var(--red)}
.features small{display:block;color:var(--muted)}

/* pricing */
main.pricing{flex:1;padding:34px 0}
.pricing h1{margin-bottom:6px}
.pricing .sub{margin-bottom:22px}
table.tiers{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.tiers th,.tiers td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line)}
.tiers thead th{background:var(--navy);color:#fff;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}
.tiers tbody tr:nth-child(even){background:#f1f5f9}
.tiers td.price{font-weight:700;color:var(--navy)}
.includes{margin:22px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;list-style:none}
.includes li{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 14px;font-size:.94rem}
.includes li::before{content:"✓ ";color:var(--red);font-weight:800}
.finenote{color:var(--muted);font-size:.85rem}

/* footer */
footer.site{background:var(--navy);color:#cbd5e1;font-size:.88rem;margin-top:auto}
.foot{display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center;justify-content:space-between;padding:14px 0}
.foot a{color:#e2e8f0}
.foot a:hover{color:var(--gold)}
.foot .legal{display:flex;gap:18px;flex-wrap:wrap}
.stripes{height:4px;background:repeating-linear-gradient(90deg,var(--red) 0 40px,#fff 40px 80px,var(--navy) 80px 120px)}

@media (max-width:860px){
  .hero{grid-template-columns:1fr;gap:24px}
  main.landing{padding:18px 0}
  body{min-height:auto}
}
