/* Women of Mountaineering — public site shared styles */
:root{
  --charcoal:#545454; --deep-slate:#677181; --twilight:#3A4456;
  --slate:#A4B3C2; --alpenglow:#B98A45; --mist:#ECEDF1;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Source Sans 3",sans-serif;color:var(--charcoal);background:var(--mist);line-height:1.55;font-size:16px}
a{color:var(--twilight)}
img{max-width:100%;height:auto}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
/* nav */
.nav{position:sticky;top:0;z-index:20;background:var(--mist);border-bottom:1px solid var(--slate)}
.nav-inner{max-width:960px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}
.nav-brand img{height:50px;width:auto}
.nav-brand span{font-family:Archivo,sans-serif;font-stretch:87%;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.06em;color:var(--twilight)}
.nav a.nav-link{font-family:Archivo,sans-serif;font-stretch:87%;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;color:var(--twilight);padding:6px 2px;border-bottom:2px solid transparent}
.nav a.nav-link:hover{border-bottom-color:var(--slate)}
.nav a.nav-link.active{border-bottom-color:var(--alpenglow)}
@media (max-width:480px){.nav-brand span{display:none}}
.nav-break{display:none}
@media (max-width:820px){
  /* the CTA gets its own centered row on phones (site.js inserts .nav-break) */
  .nav-break{display:block;flex-basis:100%;height:0}
  .nav-inner .btn{margin:0 auto}
}
@media (max-width:480px){
  /* tighten so logo + all three links share the first row on small phones */
  .nav-inner{gap:8px 12px;padding:12px 14px}
  .nav a.nav-link{font-size:12.5px}
}
@media (min-width:821px){
  .nav-inner{padding:26px 20px;transition:padding .22s ease}
  .nav-brand img{height:140px;transition:height .22s ease}
  .nav a.nav-link{font-size:15px}
  /* sticky, compacting on scroll (js adds .compact past 40px; see site.js) */
  .nav.compact .nav-brand img{height:48px}
  .nav.compact .nav-inner{padding:10px 20px}
}
.nav.compact{box-shadow:0 3px 14px rgba(58,68,86,.14)}
/* type */
h1{font-family:Archivo,sans-serif;font-stretch:87%;font-weight:800;text-transform:uppercase;color:var(--twilight);font-size:clamp(26px,5vw,40px);letter-spacing:.01em;line-height:1.12;text-wrap:balance;margin:0 0 10px}
h2{font-family:Archivo,sans-serif;font-stretch:87%;font-weight:700;text-transform:uppercase;font-size:19px;color:var(--twilight);letter-spacing:.04em;margin:0 0 10px}
.kicker{font-family:Caveat,cursive;font-weight:700;color:var(--alpenglow);font-size:26px;margin:0 0 6px}
.mono{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--deep-slate)}
/* buttons */
.btn{display:inline-block;font-family:Archivo,sans-serif;font-stretch:87%;font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;text-align:center;padding:13px 26px;border-radius:6px;border:2px solid var(--twilight);color:var(--twilight);background:transparent;cursor:pointer}
.btn:hover{background:var(--twilight);color:#fff}
.btn-accent{background:var(--alpenglow);border-color:var(--alpenglow);color:#fff}
.btn-accent:hover{background:#a1783b;border-color:#a1783b;color:#fff}
.btn:focus-visible{outline:3px solid var(--alpenglow);outline-offset:2px}
.btn-light{border-color:rgba(255,255,255,.65);color:rgba(255,255,255,.9)}
.btn-light:hover{background:#fff;border-color:#fff;color:var(--twilight)}
/* cards */
.card{background:#fff;border:1px solid var(--slate);border-radius:10px;padding:22px}
/* pills */
.pill{display:inline-block;background:#fff;border:1px solid var(--slate);border-radius:999px;padding:6px 15px;font-size:14.5px;color:var(--twilight);font-weight:600}
.pill small{display:block;font-weight:400;color:var(--deep-slate);font-size:12.5px}
.pill.tba{border-style:dashed;color:var(--deep-slate);font-weight:400}
/* forms */
label{display:block;font-weight:600;font-size:15px;margin:16px 0 5px;color:var(--twilight)}
input,textarea{width:100%;padding:10px 12px;border:1px solid var(--slate);border-radius:6px;font-family:"Source Sans 3",sans-serif;font-size:15px;color:var(--charcoal);background:#fff}
input:focus,textarea:focus{outline:2px solid var(--alpenglow);border-color:var(--alpenglow)}
.hint{font-size:13px;color:var(--deep-slate);font-weight:400;margin-top:4px}
.hp{position:absolute;left:-9999px;top:-9999px}
/* footer */
footer{border-top:1px solid var(--slate);margin-top:64px;padding:28px 20px 40px;text-align:center;color:var(--deep-slate);font-size:14px}
footer a{color:var(--deep-slate)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
