
/* Steadfast Man Coaching — v18 full build */
:root{
  --navy:#142B4A;
  --charcoal:#222831;
  --forest:#1E3A2A;
  --bronze:#C1843A;
  --ink:#0D2138;
  --bg:#f7f8fa;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:'Merriweather',serif;color:#233244;background:var(--bg)}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;color:var(--navy);margin:0 0 .5rem}
a{color:var(--navy);text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,92%);margin:0 auto}
.header{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #e6e9ef}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.85rem 0}
.brand{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--navy)}
.brand img{width:36px;height:36px}
.menu{display:flex;gap:1.25rem}
.menu a{font-weight:700}
.cta{display:flex;gap:.75rem;flex-wrap:wrap}

.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.1rem;border-radius:14px;border:2px solid transparent;font-weight:800}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px)}
.btn-accent{background:var(--bronze);color:var(--ink);border:2px solid rgba(0,0,0,.12);box-shadow:0 8px 24px rgba(0,0,0,.2)}
.btn-accent:hover{filter:brightness(.95);transform:translateY(-1px)}

.hero{position:relative;min-height:66vh;display:grid;place-items:center;color:#fff}
.hero::before{content:"";position:absolute;inset:0;background:url('/assets/img/hero.png') center/cover no-repeat;filter:brightness(.75)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.25) 40%, rgba(0,0,0,.4))}
.hero-content{position:relative;z-index:2}
.hero h1{color:#fff;font-size:clamp(2rem,5vw,3.5rem);text-shadow:0 2px 14px rgba(0,0,0,.4)}
.hero p{color:#eef3fb;max-width:780px;margin:.75rem 0 1.25rem}

.section{padding:3.5rem 0}
.grid-2{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}
.card{background:#fff;border:1px solid #e7e9f0;border-radius:16px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.06)}
.card-body{padding:1.2rem 1.4rem}
.badge{display:inline-block;background:rgba(20,43,74,.08);color:var(--navy);padding:.25rem .6rem;border-radius:999px;font-size:.78rem;font-weight:700;margin-bottom:.5rem}

.list{display:grid;gap:.6rem;margin:1rem 0}
.list li{list-style:none;padding-left:1.2rem;position:relative}
.list li::before{content:"⟡";position:absolute;left:0;color:var(--bronze)}

.footer{background:#0e1c30;color:#c8d2e3;padding:2.5rem 0;margin-top:2rem}
.footer a{color:#c8d2e3}
.footer small{opacity:.8}

/* Forms */
form{display:grid;gap:.75rem}
input,textarea,select{width:100%;padding:.75rem .85rem;border:1px solid #d6dbe6;border-radius:10px;font-size:1rem}
label{font-weight:700;color:var(--navy);font-family:'Montserrat',sans-serif}
.help{color:#5b6a84;font-size:.95rem}

/* Grid tweaks */
@media (max-width: 880px){
  .grid-2{grid-template-columns:1fr}
  .cta{justify-content:flex-start}
}

/* Accessibility helpers */
.hidden{display:none !important}
.visually-hidden{position:absolute;clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:12px;width:auto;height:auto;overflow:visible;padding:.5rem .75rem;background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:.5rem;z-index:10000;box-shadow:0 2px 12px rgba(0,0,0,.15)}
