
:root{--navy:#102532;--navy2:#081820;--red:#a32d2c;--red2:#c33d37;--cream:#ead9ba;--paper:#f3efe7;--char:#252827;--white:#fff;--muted:#6d706d;--line:#d9d1c4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--char);font-family:Arial,Helvetica,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}header{height:82px;position:sticky;z-index:50;top:0;background:rgba(8,24,32,.97);display:flex;align-items:center;padding:0 4vw;color:white;border-bottom:2px solid var(--red)}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none}.brand img{height:48px;width:auto}.brandtext{font-family:Georgia,serif;font-weight:900;font-size:22px;line-height:1;letter-spacing:1px}.brandtext span{display:block;font:9px Arial,sans-serif;letter-spacing:2px;margin-top:5px}nav{margin-left:auto;display:flex;align-items:center;gap:16px}nav a{color:white;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.75px;font-weight:700}nav a:hover{color:var(--cream)}.donate,.btn-red{background:var(--red);padding:12px 17px;color:white!important;text-decoration:none;font-weight:800;letter-spacing:.8px;border:1px solid var(--red)}.donate:hover,.btn-red:hover{background:var(--red2)}#menu{display:none;background:transparent;border:0;color:#fff;font-size:28px;margin-left:auto}.hero{min-height:76vh;background-position:center;background-size:cover;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;color:white}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,20,.45),rgba(5,15,20,.2),rgba(5,15,20,.45))}.hero .inner{position:relative;max-width:820px;padding:60px 25px}.hero-logo{width:130px;margin:0 auto 18px}.hero h1,.pagehero h1{font-family:Georgia,serif;font-size:clamp(44px,7vw,88px);line-height:.95;margin:0 0 22px;letter-spacing:-2px}.hero p{font-size:clamp(17px,2vw,23px);max-width:760px;margin:0 auto 28px}.buttons{display:flex;gap:12px;flex-wrap:wrap}.buttons.center{justify-content:center}.btn-outline{border:1px solid currentColor;padding:12px 17px;text-decoration:none;font-weight:800;letter-spacing:.8px}.eyebrow{font-size:14px;letter-spacing:2.3px;text-transform:uppercase;font-weight:900;color:var(--red);margin-bottom:10px}.section{padding:82px 7vw}.section.navy{background:var(--navy);color:white}.section.dark{background:var(--navy2);color:white}.section h2{font-family:Georgia,serif;font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 22px}.lead{font-size:20px;max-width:760px}.impactbar{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:white;text-align:center}.impactbar div{padding:30px 15px;border-right:1px solid rgba(255,255,255,.15)}.impactbar b{display:block;font-family:Georgia,serif;color:var(--cream);font-size:44px;line-height:1}.impactbar span{font-size:12px;letter-spacing:1.5px;text-transform:uppercase}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}.split.reverse{grid-template-columns:.95fr 1.05fr}.photo{min-height:430px;background-size:cover;background-position:center;box-shadow:18px 18px 0 var(--red)}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border-top:5px solid var(--red);box-shadow:0 10px 32px rgba(0,0,0,.08);overflow:hidden}.card .pic{height:260px;background-size:cover;background-position:center}.card .copy{padding:24px}.card h3{font-family:Georgia,serif;font-size:28px;margin:0 0 8px}.states{margin-top:35px;padding:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;font-weight:800;letter-spacing:1.5px;text-align:center;color:var(--red)}.quote{font-family:Georgia,serif;font-size:clamp(28px,4vw,48px);line-height:1.2;margin:0}.quote small{display:block;font:13px Arial,sans-serif;letter-spacing:1px;margin-top:20px;color:var(--cream);text-transform:uppercase}.pagehero{min-height:400px;display:flex;align-items:end;color:white;background-size:cover;background-position:center;position:relative}.pagehero:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,24,32,.85),rgba(8,24,32,.25))}.pagehero .inner{position:relative;padding:80px 7vw 55px;max-width:1000px}.pagehero h1{font-size:clamp(45px,7vw,78px);margin-bottom:8px}.pagehero p{font-size:20px;max-width:760px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.panel{background:#fff;padding:32px;border-left:5px solid var(--red)}.panel h3{margin-top:0;font-family:Georgia,serif;font-size:27px}.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12)}.stat{padding:30px;text-align:center;background:var(--navy)}.stat b{font-size:48px;font-family:Georgia,serif;color:var(--cream);display:block}.testimonial{background:white;padding:34px;border-left:5px solid var(--red);min-height:220px}.testimonial blockquote{font-family:Georgia,serif;font-size:26px;margin:0}.testimonial footer{margin-top:18px;background:none;color:var(--muted);padding:0;text-align:left}.apparel-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:42px;align-items:center}.apparel-preview{background:white;padding:18px;box-shadow:0 15px 35px rgba(0,0,0,.1)}form{display:grid;gap:13px}input,select,textarea{width:100%;padding:14px;border:1px solid #b8b2a8;background:white;font:inherit}button{cursor:pointer}.contactgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}.small{font-size:14px;color:var(--muted)}.redline{width:72px;height:5px;background:var(--red);margin:20px 0}.footer{background:var(--navy2);color:white;padding:48px 7vw 30px;border-top:4px solid var(--red)}.footergrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}.footer img{width:100px}.footer a{color:white;text-decoration:none}.footer a:hover{color:var(--cream)}.footerbottom{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:12px;color:#bbc0c2}.badge{display:inline-block;padding:6px 10px;border:1px solid var(--red);color:var(--red);font-size:11px;font-weight:bold;letter-spacing:1px;text-transform:uppercase}.cta{padding:65px 7vw;background:var(--red);color:white;display:flex;justify-content:space-between;gap:30px;align-items:center}.cta h2{font-family:Georgia,serif;font-size:42px;margin:0}.cta .btn-outline{color:white}.textlink{color:var(--red);font-weight:900;text-decoration:none}.note{padding:18px 22px;background:#efe4d3;border-left:4px solid var(--red)}
@media(max-width:1040px){nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--navy2);padding:25px;flex-direction:column;align-items:stretch}nav.open{display:flex}#menu{display:block}.brandtext{font-size:18px}.split,.split.reverse,.apparel-grid,.contactgrid{grid-template-columns:1fr}.cards3{grid-template-columns:1fr}.statgrid{grid-template-columns:repeat(2,1fr)}.photo{min-height:360px}.footergrid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.section{padding:60px 6vw}.impactbar{grid-template-columns:1fr}.impactbar div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.grid2,.statgrid{grid-template-columns:1fr}.footergrid{grid-template-columns:1fr}.cta{flex-direction:column;align-items:flex-start}.brandtext span{display:none}.brand img{height:42px}.hero{min-height:700px}.hero h1{font-size:52px}}

/* Header brand refinement: standalone W mark + organization name */
header .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff;min-width:max-content}
header .brand img{width:76px;height:64px;object-fit:contain;object-position:center}
header .brandtext{font-family:Georgia,serif;font-weight:800;font-size:16px;line-height:1.05;letter-spacing:.45px;text-transform:none}
header .brandtext span{display:none}
@media(max-width:1180px){header .brandtext{font-size:14px}header .brand img{width:66px;height:58px}}
@media(max-width:900px){header .brandtext{display:none}header .brand img{width:64px;height:56px}}

/* Exact user-supplied Wapiti emblem */
header .brand img{width:92px!important;height:76px!important;object-fit:contain!important}
@media(max-width:1180px){header .brand img{width:82px!important;height:68px!important}}
@media(max-width:900px){header .brand img{width:74px!important;height:62px!important}}

/* Balanced header wordmark */
header .brandtext{
  font-size:20px!important;
  font-weight:800!important;
  line-height:1.02!important;
  letter-spacing:.35px!important;
  max-width:245px;
}
header .brandtext .line2{display:block!important}
@media(max-width:1180px){
  header .brandtext{font-size:17px!important;max-width:210px}
}
@media(max-width:900px){
  header .brandtext{display:none!important}
}

header .brandtext .line1, header .brandtext .line2{display:block!important;white-space:nowrap}

/* Refined header proportions */
header .brand img{
  width:auto!important;
  height:72px!important;
  max-width:none!important;
  object-fit:contain!important;
}
header .brandtext{
  font-size:18px!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:.3px!important;
  max-width:none!important;
}
@media(max-width:1180px){
  header .brand img{width:auto!important;height:66px!important}
  header .brandtext{font-size:16px!important}
}
@media(max-width:900px){
  header .brand img{width:auto!important;height:60px!important}
}

/* Final desktop wordmark sizing */
header .brandtext{font-size:22px!important}
@media(max-width:1180px){header .brandtext{font-size:18px!important}}

/* FIX: actual visible organization-name lines beside logo */
header .brandtext .line1,
header .brandtext .line2{
  display:block!important;
  font-family:Georgia,serif!important;
  font-size:26px!important;
  font-weight:800!important;
  line-height:1.04!important;
  letter-spacing:.3px!important;
  margin:0!important;
  white-space:nowrap!important;
}
@media(max-width:1180px) and (min-width:901px){
  header .brandtext .line1,
  header .brandtext .line2{
    font-size:26px!important;
  }
}

/* Final header balance */
header .brandtext .line1,
header .brandtext .line2{
  font-size:24px!important;
}
header nav{
  gap:16px!important;
}
header nav a{
  font-size:11px!important;
  letter-spacing:.8px!important;
}

/* Final brand-name size */
header .brandtext .line1,
header .brandtext .line2{font-size:22px!important}

/* Hunting image framing on dedicated Experiences page */
.hunting-photo{
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-color:#142532!important;
}

/* Mobile navigation contrast: visually separate menu from page content */
@media(max-width:900px){
  header nav{
    background:#07131c!important;
    border-top:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 14px 28px rgba(0,0,0,.32)!important;
  }
  header nav a{
    border-bottom:1px solid rgba(255,255,255,.09)!important;
  }
  header nav a:last-child{
    border-bottom:0!important;
  }
}

/* Footer contact links: prevent browser-default royal blue */
footer a,
footer a:visited{
  color:inherit!important;
  text-decoration-color:rgba(255,255,255,.45);
}
footer a:hover,
footer a:focus{
  color:#ffffff!important;
  text-decoration-color:#ffffff;
}


/* Email links: Wapiti palette instead of browser-default blue */
a[href^="mailto:"],
a[href^="mailto:"]:visited{
  color:#b12d2d!important;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
a[href^="mailto:"]:hover,
a[href^="mailto:"]:focus{
  color:#8f2222!important;
}
footer a[href^="mailto:"],
footer a[href^="mailto:"]:visited{
  color:inherit!important;
}
footer a[href^="mailto:"]:hover,
footer a[href^="mailto:"]:focus{
  color:#fff!important;
}


/* Mobile navigation: charcoal dropdown to separate it from navy page sections */
@media(max-width:900px){
  header nav{
    background:#25282A!important;
    background-color:#25282A!important;
    border-top:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 14px 28px rgba(0,0,0,.38)!important;
  }
  header nav a{
    background:transparent!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }
  header nav a:last-child{
    border-bottom:0!important;
  }
}


/* Leadership profiles */
.leadership-section{padding-bottom:92px}
.leadership-list{max-width:1180px;margin:54px auto 0;display:grid;gap:34px}
.leader-card{display:grid;grid-template-columns:minmax(280px,38%) 1fr;gap:42px;align-items:center;background:#fff;color:#25282a;padding:28px;box-shadow:0 16px 42px rgba(0,0,0,.18)}
.leader-card.reverse{grid-template-columns:1fr minmax(280px,38%)}
.leader-card.reverse .leader-media{order:2}.leader-card.reverse .leader-copy{order:1}
.leader-card h3{font-family:Georgia,serif;font-size:30px;line-height:1.1;margin:4px 0 18px;color:#142532}
.leader-card p{line-height:1.7;margin:0 0 14px}
.leader-media{position:relative;min-height:430px;background:#e8e3d9;overflow:hidden}
.leader-media.single{min-height:470px}
.leader-primary{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center top}
.leader-media.corey .leader-primary{object-position:center top}
.leader-media.rich .leader-secondary{object-position:35% 50%}
.leader-media.lee .leader-secondary{object-position:center 42%}
.leader-media.corey .leader-secondary{object-position:center 52%}
.leader-media.paired{overflow:visible;background:transparent;min-height:470px;margin:16px 12px 16px 0}
.leader-media.paired .leader-primary{width:82%;height:100%;box-shadow:0 10px 28px rgba(0,0,0,.28)}
.leader-secondary{position:absolute;right:-8px;bottom:-16px;width:46%;height:42%;object-fit:cover;border:6px solid #fff;box-shadow:0 10px 28px rgba(0,0,0,.35)}
.leader-media-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#142532,#243c4c)}
.leader-initials{font:700 74px Georgia,serif;color:#fff;letter-spacing:3px;border:2px solid rgba(255,255,255,.35);width:190px;height:190px;border-radius:50%;display:flex;align-items:center;justify-content:center}

/* Testimonials */
.testimonials-section{max-width:1080px;margin:0 auto}
.testimonial-intro{max-width:820px;font-size:18px;line-height:1.7;margin-bottom:38px}
.testimonial-stack{display:grid;gap:28px}
.testimonial-card{background:#fff;border-left:5px solid #b12d2d;padding:30px 34px;box-shadow:0 8px 28px rgba(0,0,0,.08)}
.testimonial-card header{background:none;padding:0;display:block;position:static;box-shadow:none}
.testimonial-card header h3{font-family:Georgia,serif;color:#142532;font-size:25px;line-height:1.2;margin:0 0 5px}
.testimonial-card header span{display:block;font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#b12d2d;margin-bottom:22px}
.testimonial-card blockquote{margin:0;border:0;padding:0;font-size:17px;line-height:1.75;color:#333}
.testimonial-card blockquote p{margin:0 0 15px}
.testimonial-card blockquote p:last-child{margin-bottom:0}

@media(max-width:850px){
  .leader-card,.leader-card.reverse{grid-template-columns:1fr;gap:24px;padding:20px}
  .leader-card.reverse .leader-media,.leader-card.reverse .leader-copy{order:initial}
  .leader-media,.leader-media.single,.leader-media.paired{min-height:430px;margin:0}
  .leader-media.paired{margin-bottom:16px}
  .leader-card h3{font-size:26px}
  .testimonial-card{padding:25px 22px}
  .testimonial-card header h3{font-size:22px}
}

/* Larger recreational leadership photos + click-to-enlarge lightbox */
.leader-secondary{
  width:58%;
  height:50%;
  right:-14px;
  bottom:-20px;
  cursor:zoom-in;
  transition:transform .18s ease, box-shadow .18s ease;
}
.leader-secondary:hover,.leader-secondary:focus{
  transform:scale(1.025);
  box-shadow:0 14px 34px rgba(0,0,0,.42);
  outline:3px solid rgba(255,255,255,.8);
  outline-offset:2px;
}
.photo-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(4,12,17,.92);display:none;align-items:center;justify-content:center;padding:30px;cursor:zoom-out}
.photo-lightbox.open{display:flex}
.photo-lightbox img{max-width:min(1200px,92vw);max-height:90vh;width:auto;height:auto;object-fit:contain;box-shadow:0 18px 60px rgba(0,0,0,.55);border:5px solid #fff}
.photo-lightbox-close{position:fixed;top:18px;right:24px;border:0;background:transparent;color:#fff;font-size:42px;line-height:1;cursor:pointer;padding:8px 12px}
@media(max-width:850px){
  .leader-secondary{width:58%;height:48%;right:-6px;bottom:-12px}
  .photo-lightbox{padding:16px}
}


/* Sponsors */
.sponsors-page{padding:72px 22px 88px;background:#f3efe7;min-height:58vh}
.sponsors-wrap{max-width:1180px;margin:0 auto}
.sponsors-head{text-align:center;max-width:820px;margin:0 auto 42px}
.sponsors-head .eyebrow{font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#a92e2e;font-weight:800;margin-bottom:10px}
.sponsors-head h1{margin:0 0 14px;color:#17233a;font-size:clamp(38px,5vw,62px);line-height:1.05}
.sponsors-head p{margin:0 auto;color:#4e5157;font-size:17px;line-height:1.65;max-width:720px}
.sponsor-instruction{margin-top:10px!important;font-size:14px!important;color:#6b6e73!important;font-style:italic}

.sponsor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sponsor-card{background:#fff;border:1px solid rgba(23,35,58,.12);min-height:190px;padding:16px;border-radius:4px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(23,35,58,.06);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;text-decoration:none;position:relative;overflow:hidden}
.sponsor-card:hover,.sponsor-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 28px rgba(23,35,58,.12);border-color:rgba(169,46,46,.35);outline:none}
.sponsor-card img{display:block;max-width:var(--logo-w,92%);max-height:var(--logo-h,112px);width:auto;height:auto;object-fit:contain}
.sponsor-card .invert-logo{filter:invert(1)}
@media(max-width:980px){.sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.sponsors-page{padding:52px 16px 68px}.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sponsor-card{min-height:150px;padding:12px}.sponsor-card img{max-height:min(var(--logo-h,88px),88px);max-width:min(var(--logo-w,90%),90%)}}

/* Privacy policy */
.privacy-copy{max-width:900px;margin:0 auto}.privacy-copy h2{font-family:Georgia,serif;color:#142532;font-size:28px;margin:38px 0 12px}.privacy-copy p{font-size:16px;line-height:1.75;margin:0 0 16px}.privacy-copy a{color:#b12d2d}
.footerbottom a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* About leadership image edge fix */
.leader-media.paired{background:transparent !important;box-shadow:none}
.leader-media.paired::before,.leader-media.paired::after{display:none !important}


/* Warriors Gallery */
.warriors-gallery-page{background:#f3efe7}
.gallery-hero{background-position:center 42%}
.gallery-intro{max-width:980px;margin:0 auto;padding:76px 7vw 34px;text-align:center}
.gallery-intro h2{font-family:Georgia,serif;color:#142532;font-size:clamp(36px,5vw,58px);line-height:1.05;margin:0 0 18px}
.gallery-intro p{max-width:800px;margin:0 auto;color:#4e5157;font-size:18px;line-height:1.75}
.warriors-photo-grid{max-width:1220px;margin:0 auto;padding:18px 4vw 84px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:18px}
.gallery-card{grid-column:span 6;margin:0;background:#fff;box-shadow:0 10px 30px rgba(15,30,40,.10);overflow:hidden;position:relative}
.gallery-card.gallery-wide{grid-column:span 7}
.gallery-card.gallery-wide + .gallery-card{grid-column:span 5}
.gallery-card img{width:100%;height:360px;object-fit:cover;cursor:zoom-in;transition:transform .25s ease,filter .25s ease}
.gallery-card.gallery-tall img{object-position:center center}
.gallery-card img:hover,.gallery-card img:focus{transform:scale(1.018);filter:contrast(1.02);outline:none}
.gallery-card figcaption{padding:18px 20px 20px;border-top:3px solid #a32d2c}
.gallery-card figcaption span{display:block;color:#a32d2c;font-size:11px;font-weight:900;letter-spacing:1.6px;margin-bottom:3px}
.gallery-card figcaption strong{font-family:Georgia,serif;color:#142532;font-size:20px;font-weight:700}
.gallery-impact{background:#081820;color:#fff;padding:54px 7vw;display:flex;align-items:center;justify-content:space-between;gap:30px}
.gallery-impact h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,52px);line-height:1.05;margin:0 0 10px}
.gallery-impact p{margin:0;color:#d7dbdc;font-size:17px}
.gallery-impact .btn-outline{white-space:nowrap}
@media(max-width:850px){
  .gallery-intro{padding:58px 6vw 28px}
  .warriors-photo-grid{grid-template-columns:1fr;padding:12px 16px 60px;gap:16px}
  .gallery-card,.gallery-card.gallery-wide,.gallery-card.gallery-wide + .gallery-card{grid-column:auto}
  .gallery-card img{height:auto;max-height:520px;object-fit:cover}
  .gallery-impact{flex-direction:column;align-items:flex-start;padding:48px 6vw}
}
