:root{--navy:#1B2F4E;--ink:#14213D;--gold:#A07840;--orange:#C0392B;--cream:#F5F4F0;--cream2:#F8F5EF;--surface:#EDEAE4;--border:#D8D5CE;--stone:#6B6560;--muted:#9B9590}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:'Montserrat',sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}
a{color:var(--navy);text-decoration:none}
a:hover{opacity:.75}
button{font-family:inherit;cursor:pointer}
input,textarea{font-family:inherit}
::placeholder{color:var(--muted)}
img{max-width:100%}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.h1{font-family:'Oswald',sans-serif;font-weight:700;font-size:80px;line-height:.98;color:var(--navy)}
.h2{font-family:'Oswald',sans-serif;font-weight:600;font-size:60px;line-height:1.02;color:var(--navy)}
.btn{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:18px 34px;border-radius:4px;border:none}
.btn-orange{background:var(--orange);color:#fff}
.btn-orange:hover{background:#B03F20;opacity:1}
.btn-navy{background:var(--navy);color:var(--cream)}
.btn-navy:hover{background:var(--ink);opacity:1}
.btn-outline{border:2px solid var(--navy);color:var(--navy);padding:16px 32px;background:none}
.card{background:#fff;border:1px solid var(--border);border-radius:12px}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(20,33,61,.1)}
.card{transition:transform .3s ease-out,box-shadow .3s ease-out}
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
[data-reveal="in"]{opacity:1;transform:none}
header.site{position:sticky;top:0;z-index:50;background:rgba(242,240,236,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.nav-row{max-width:1240px;margin:0 auto;padding:0 32px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{font-family:'Oswald',sans-serif;font-weight:600;font-size:20px;letter-spacing:.06em;color:var(--navy)}
.logo span{color:var(--gold);padding:0 2px}
.navlinks{display:flex;gap:32px;align-items:center}
.navlinks a{font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--stone);border-bottom:2px solid transparent;padding:4px 0}
.navlinks a.active{color:var(--navy);border-bottom-color:var(--gold)}
footer.site{background:var(--ink);color:#B8B4AB;padding:80px 32px 40px}
.foot-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(242,240,236,.12)}
.foot-col{display:flex;flex-direction:column;gap:12px}
.foot-col a{color:#B8B4AB;font-size:14px}
.foot-head{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--cream);margin-bottom:6px}
.foot-bottom{max-width:1240px;margin:0 auto;padding-top:28px;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;font-size:12px;line-height:1.7;color:#8A8F9E}
input.field,textarea.field{font-size:14px;padding:15px 18px;border:1px solid var(--border);border-radius:4px;background:#fff;color:var(--ink);outline:none;width:100%}
@media(max-width:900px){
  .h1{font-size:48px}.h2{font-size:38px}
  .navlinks{display:none}
  [class*="grid-3"],[class*="grid-2"],[class*="grid-4"]{grid-template-columns:1fr!important}
}/* Targeted repairs; original desktop composition is retained. */
.skip-link{position:fixed;top:-100px;left:16px;background:var(--navy);color:#fff;padding:14px;z-index:100}.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible,input.field:focus-visible,textarea.field:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
[id]{scroll-margin-top:100px}[data-reveal]{opacity:1;transform:none}.reveal-ready [data-reveal="pending"]{opacity:0;transform:translateY(22px)}
.menu-toggle{display:none;font:600 12px Montserrat,Arial,sans-serif;border:1px solid var(--border);background:transparent;color:var(--navy);border-radius:4px;min-height:44px;padding:10px 12px}
.field-label{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:-6px}.field-group{min-width:0;display:flex;flex-direction:column;gap:12px}
.btn{max-width:100%;line-height:1.5}.logo{white-space:nowrap}.legal-copy{max-width:880px;padding-top:80px;padding-bottom:80px;line-height:1.8;overflow-wrap:anywhere}.legal-copy h1{font:600 52px Oswald,Arial,sans-serif;margin-bottom:28px}.legal-copy h2{font:600 28px Oswald,Arial,sans-serif;margin:32px 0 14px}.legal-copy h3{font:600 22px Oswald,Arial,sans-serif;margin:24px 0 12px}.legal-copy p{margin:14px 0}.legal-copy li{margin:8px 0}
::placeholder{color:#716B66}input.field,textarea.field{font-size:16px}.light-gold-text{color:#77572B!important}.light-muted-text{color:#716B66!important}
@media(max-width:900px){.nav-row{height:auto;min-height:72px;flex-wrap:wrap;gap:12px;padding:12px 24px}.menu-ready .menu-toggle:not([hidden]){display:block;margin-left:auto}.navlinks{display:flex;order:4;width:100%;flex-wrap:wrap;gap:10px 24px}.navlinks a{min-height:44px;display:flex;align-items:center}.menu-ready .navlinks:not(.is-open){display:none}.nav-row>.btn{padding:12px 16px;font-size:10px;letter-spacing:.08em}.responsive-grid{grid-template-columns:minmax(0,1fr)!important}.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.foot-grid>.foot-col:first-child{grid-column:1/-1}}
@media(max-width:600px){.wrap{padding-left:0;padding-right:0}main>section{padding-left:20px!important;padding-right:20px!important;padding-top:60px!important;padding-bottom:60px!important}.nav-row{padding-left:16px;padding-right:16px;gap:8px}.logo{font-size:18px}.menu-toggle{padding:8px;font-size:11px}.nav-row>.btn{padding:12px;font-size:9px}.grid-2,.grid-3,.grid-4,.responsive-grid{gap:28px!important;min-width:0}.grid-2>*,.grid-3>*,.grid-4>*,.responsive-grid>*{min-width:0}.mobile-panel{padding:28px 22px!important}.mobile-heading{font-size:36px!important;line-height:1.12!important}.h1{font-size:46px}.h2{font-size:36px}footer.site{padding:52px 20px 28px}.foot-grid{gap:28px 20px}.foot-bottom{gap:18px}.foot-col a,.foot-col p{overflow-wrap:anywhere}.foot-col a{min-height:32px}.legal-copy{padding:48px 20px}.legal-copy h1{font-size:40px}form{padding:26px 20px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,[data-reveal]{transition:none;transform:none!important}.reveal-ready [data-reveal="pending"]{opacity:1}}
@media(max-width:600px){.portrait-outline{inset:12px -12px -12px 12px!important}}

@media(max-width:600px){#lead-form,#contact-form{padding:20px 12px!important}}
@media(max-width:700px){.chart-card{grid-template-columns:1fr!important}}
