/* Legacy Six Financial Group - site chrome
   Palette from Logo Color Codes.docx:
   Deep Trust Blue #0A2A43 | Professional Navy #12375A | Modern Gradient #1F5C8A
   Soft Financial #89A9C6 | Light Clean #D9E6F2 | Legacy Green #7FB640 | Slate #4A5568 */

:root{
  --navy-deep:#0A2A43; --navy:#12375A; --blue-mid:#1F5C8A;
  --blue-soft:#89A9C6; --blue-light:#D9E6F2; --green:#7FB640; --green-dk:#3D6B1A;
  --slate:#4A5568; --slate-lt:#74839A;
  --rule:#C3D4E4; --rule-lt:#E1EAF3; --surface:#EEF4FA;
  --d:'Archivo','Helvetica Neue',Arial,sans-serif;
  --b:'Source Serif 4',Georgia,'Times New Roman',serif;
  --m:'IBM Plex Mono',Consolas,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--navy-deep);font-family:var(--b);
  font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--navy)}
p{margin:0 0 16px}
h1,h2,h3,h4{font-family:var(--d);letter-spacing:-.025em;margin:0;text-wrap:balance}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.wrap.narrow{max-width:calc(72ch + 48px);margin-left:0}

/* ---- header ---- */
.sitehead{position:sticky;top:0;z-index:100;background:var(--navy-deep);color:#fff}
.sitehead .in{max-width:1180px;margin:0 auto;padding:13px 24px;display:flex;
  align-items:center;gap:12px 26px;flex-wrap:wrap}
.brandmark{display:flex;align-items:center;gap:11px;text-decoration:none;margin-right:auto}
.brandmark img{display:block;height:30px;width:auto;flex:0 0 auto}
.brandmark .bt{font-family:var(--d);font-weight:800;font-size:1.16rem;letter-spacing:-.022em;
  color:#fff;line-height:1.1}
.brandmark .bt em{display:block;font-style:normal;font-family:var(--m);font-weight:500;
  font-size:.55rem;letter-spacing:.19em;text-transform:uppercase;color:var(--green);margin-top:3px}
@media(max-width:520px){.brandmark img{height:26px}}
.sitenav{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.sitenav a{font-family:var(--d);font-weight:600;font-size:.82rem;color:#CDDCEA;
  text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
.sitenav a:hover{color:#fff;border-bottom-color:var(--green)}
.sitenav a[aria-current="page"]{color:#fff;border-bottom-color:var(--green)}
.headbtns{display:flex;gap:8px;flex-wrap:wrap}
.headbtns a{font-family:var(--m);font-size:.62rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;padding:9px 13px;text-decoration:none;white-space:nowrap}
.btn-ghost{color:#CDDCEA;border:1px solid #2E5678}
.btn-ghost:hover{color:#fff;border-color:var(--green)}
.btn-solid{background:var(--green);color:var(--navy-deep)}
.btn-solid:hover{background:#93C955}

/* ---- hero ---- */
.hero{background:var(--navy-deep);color:#fff;padding:64px 0 60px;
  background-image:linear-gradient(160deg,#0A2A43 0%,#12375A 100%)}
.hero .eyebrow{font-family:var(--m);font-size:.66rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--green);margin:0 0 16px}
.hero h1{font-weight:800;font-size:clamp(2.2rem,5.4vw,3.7rem);line-height:.99;
  letter-spacing:-.035em;margin:0 0 18px;max-width:17ch;color:#fff}
.hero p.lede{max-width:60ch;color:#C3D7E8;font-size:1.14rem;line-height:1.55;margin:0 0 28px}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap}
.hero .cta a{font-family:var(--m);font-size:.7rem;font-weight:600;letter-spacing:.11em;
  text-transform:uppercase;padding:15px 26px;text-decoration:none}
.hero .cta a.p{background:var(--green);color:var(--navy-deep)}
.hero .cta a.p:hover{background:#93C955}
.hero .cta a.s{color:#fff;border:1px solid #3B6284}
.hero .cta a.s:hover{border-color:var(--green);color:var(--green)}

/* ---- page head (interior pages) ---- */
.pagehead{background:var(--blue-light);border-bottom:1px solid var(--rule);padding:44px 0 40px}
.pagehead .eyebrow{font-family:var(--m);font-size:.65rem;font-weight:600;letter-spacing:.15em;
  text-transform:uppercase;color:var(--navy);margin:0 0 12px}
.pagehead h1{font-weight:800;font-size:clamp(1.95rem,4.5vw,2.9rem);line-height:1.04;
  letter-spacing:-.032em;margin:0 0 14px;max-width:20ch}
.pagehead p{max-width:68ch;color:var(--slate);font-size:1.05rem;margin:0}

/* ---- stat bar ---- */
.statbar{background:var(--navy);color:#fff;padding:22px 0}
.statbar .in{max-width:1180px;margin:0 auto;padding:0 24px;display:grid;gap:20px;
  grid-template-columns:repeat(2,1fr)}
@media(min-width:760px){.statbar .in{grid-template-columns:repeat(4,1fr)}}
.statbar .s b{display:block;font-family:var(--d);font-weight:800;font-size:1.5rem;
  letter-spacing:-.03em;color:var(--green);line-height:1}
.statbar .s span{display:block;font-family:var(--m);font-size:.62rem;letter-spacing:.11em;
  text-transform:uppercase;color:#A9C4DA;margin-top:6px;line-height:1.5}

/* ---- sections ---- */
section.band{padding:60px 0}
section.band.alt{background:var(--surface);border-top:1px solid var(--rule-lt);
  border-bottom:1px solid var(--rule-lt)}
.sec-eyebrow{font-family:var(--m);font-size:.65rem;font-weight:600;letter-spacing:.15em;
  text-transform:uppercase;color:var(--blue-mid);margin:0 0 11px}
h2.sec{font-weight:800;font-size:clamp(1.55rem,3.4vw,2.25rem);line-height:1.08;margin:0 0 14px}
p.sec-lede{max-width:68ch;color:var(--slate);font-size:1.04rem;margin:0 0 34px}
h3.sub{font-weight:700;font-size:1.18rem;margin:34px 0 12px}

/* ---- card grid ---- */
.cards{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule)}
@media(min-width:700px){.cards.c2{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.cards.c3{grid-template-columns:repeat(3,1fr)}
  .cards.c4{grid-template-columns:repeat(4,1fr)}}
.card{background:#fff;padding:26px 24px 28px;display:flex;flex-direction:column;gap:9px}
.card .kn{font-family:var(--m);font-size:.6rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--green-dk)}
.card h3{font-weight:700;font-size:1.16rem;line-height:1.15;margin:0}
.card p{font-size:.95rem;color:var(--slate);line-height:1.55;margin:0}
.card .who{font-family:var(--m);font-size:.7rem;color:var(--slate-lt);line-height:1.7;
  border-top:1px solid var(--rule-lt);padding-top:11px;margin-top:auto}
.card .who b{color:var(--navy);font-weight:600}
.card a.more{font-family:var(--m);font-size:.66rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--navy);text-decoration:none;margin-top:4px}
.card a.more:hover{color:var(--green-dk)}
section.band.alt .card{background:#fff}

/* ---- callout ---- */
.callout{border:1px solid var(--navy);background:var(--navy-deep);color:#fff;padding:38px 34px;
  display:grid;gap:22px}
@media(min-width:820px){.callout{grid-template-columns:1.5fr 1fr;align-items:center}}
.callout h3{color:#fff;font-weight:800;font-size:clamp(1.4rem,3vw,2rem);line-height:1.08;margin:0 0 12px}
.callout h3 em{font-style:normal;color:var(--green)}
.callout p{color:#BCD2E4;font-size:1rem;margin:0 0 8px}
.callout .prices{font-family:var(--m);font-size:.82rem;color:var(--green);letter-spacing:.02em;line-height:2}
.callout a.btn{display:inline-block;font-family:var(--m);font-size:.7rem;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;padding:15px 26px;background:var(--green);
  color:var(--navy-deep);text-decoration:none;margin-top:10px}
.callout a.btn:hover{background:#93C955}

/* ---- checklist ---- */
ul.ticks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
ul.ticks li{display:grid;grid-template-columns:20px 1fr;gap:12px;font-size:.98rem;
  line-height:1.5;align-items:start}
ul.ticks li::before{content:"\2713";font-family:var(--m);font-weight:600;
  color:var(--green-dk);font-size:.95rem;line-height:1.5}
ul.ticks li b{font-family:var(--d);font-weight:600;display:block;font-size:1rem}
ul.ticks li span{display:block;color:var(--slate);font-size:.9rem;line-height:1.45}
ul.ticks.x li::before{content:"\00D7";color:#8E2C21}

/* ---- founder ---- */
.founder{display:grid;gap:26px;margin:0 0 8px}
@media(min-width:700px){.founder{grid-template-columns:210px 1fr;align-items:start}}
.founder img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;
  border:1px solid var(--rule);background:var(--surface)}
.founder p:last-child{margin-bottom:0}

/* ---- note ---- */
.note{border-left:3px solid var(--blue-mid);background:var(--blue-light);padding:17px 20px;
  font-size:.97rem;line-height:1.55;margin:26px 0 0}
.note b{font-family:var(--d)}

/* ---- table ---- */
.tbl{overflow-x:auto;border:1px solid var(--rule);background:#fff}
.tbl table{border-collapse:collapse;width:100%;min-width:560px;font-size:.92rem}
.tbl th{font-family:var(--m);font-size:.62rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--slate-lt);text-align:left;padding:12px 15px;
  background:var(--surface);border-bottom:1px solid var(--rule)}
.tbl td{padding:12px 15px;border-bottom:1px solid var(--rule-lt);line-height:1.5;vertical-align:top}
.tbl tbody tr:last-child td{border-bottom:0}
.tbl .nm{font-family:var(--d);font-weight:600;display:block}
.tbl .num{font-family:var(--m);white-space:nowrap}

/* ---- contact grid ---- */
.contactgrid{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule)}
@media(min-width:760px){.contactgrid{grid-template-columns:repeat(3,1fr)}}
.contactgrid div{background:#fff;padding:26px 24px}
.contactgrid h4{font-family:var(--m);font-size:.62rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--slate-lt);margin:0 0 10px}
.contactgrid p{margin:0 0 6px;font-size:1rem}
.contactgrid a{font-weight:600;text-decoration:none}
.contactgrid a:hover{text-decoration:underline}

/* ---- footer ---- */
.sitefoot{background:var(--navy-deep);color:#A9C0D4;margin-top:60px;padding:46px 0 28px}
.sitefoot .in{max-width:1180px;margin:0 auto;padding:0 24px;display:grid;gap:32px}
@media(min-width:760px){.sitefoot .in{grid-template-columns:1.5fr 1fr 1fr}}
.sitefoot h4{font-family:var(--d);font-weight:700;font-size:.71rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--green);margin:0 0 13px}
.sitefoot p{margin:0 0 9px;font-size:.9rem;line-height:1.65}
.sitefoot a{color:#CDDCEA;text-decoration:none;font-size:.9rem}
.sitefoot a:hover{color:#fff;text-decoration:underline}
.sitefoot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sitefoot .fmark{display:block;height:40px;width:auto;margin:0 0 14px}
.sitefoot .fbrand{font-family:var(--d);font-weight:800;font-size:1.1rem;color:#fff;
  letter-spacing:-.02em;margin:0 0 9px}
.legal{border-top:1px solid #1E4463;margin:30px auto 0;padding:18px 24px 0;max-width:1180px;
  font-family:var(--m);font-size:.63rem;letter-spacing:.05em;color:#6E8AA3;line-height:1.95}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
