/*
Theme Name: Triple A Sportsman Club
Description: Dark military-styled brochure theme for the Triple A Sportsman Club shooting range. Four-page site: home, armory (firearm CPT), contact, waiver.
Version: 1.0.0
Author: Old Steel Arsenal
Text Domain: triple-a
*/

:root{
  --bg:#14130E;--panel:#1B1A13;--panel2:#171610;--line:#2B2A1F;
  --text:#EAE7DB;--mut:#9B9683;--dim:#6E6A5A;
  --grn:oklch(0.74 0.11 125);--grn-d:oklch(0.62 0.11 125);
  --amb:oklch(0.74 0.11 65);--amb-d:oklch(0.62 0.11 65);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Barlow',sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--text);text-decoration:none;transition:color .15s ease}
a:hover{color:var(--grn)}
img{max-width:100%;height:auto;display:block}

.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.wrapnarrow{max-width:880px;margin:0 auto;padding:0 28px}
.disp{font-family:'Black Ops One',sans-serif;font-weight:400}
.cond{font-family:'Barlow Condensed',sans-serif}
.mut{color:var(--mut)}

/* ---- nav ---- */
.nav{position:sticky;top:0;z-index:50;background:rgba(20,19,14,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.navin{height:74px;display:flex;align-items:center;justify-content:space-between}
.logo{font-family:'Black Ops One',sans-serif;font-size:21px;letter-spacing:1px;line-height:1;color:var(--text)}
.logo em{font-style:normal;color:var(--grn)}
.logo:hover{color:var(--text)}
.navlinks{display:flex;align-items:center;gap:32px}
.nlink{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--mut);padding:6px 0;border-bottom:2px solid transparent}
.nlink:hover{color:var(--text)}
.nlink.on{color:var(--grn);border-bottom-color:var(--grn)}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 32px;font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:700;letter-spacing:3px;text-transform:uppercase;white-space:nowrap;cursor:pointer;border:none;transition:all .15s ease}
.btn-grn{background:var(--grn);color:#14130E}
.btn-grn:hover{background:var(--grn-d);color:#14130E}
.btn-amb{background:var(--amb);color:#14130E}
.btn-amb:hover{background:var(--amb-d);color:#14130E}
.btn-line{background:transparent;border:1px solid #4B4938;color:var(--text)}
.btn-line:hover{border-color:var(--grn);color:var(--grn)}
.btn-nav{height:44px;padding:0 22px;font-size:16px}
.btn[disabled]{opacity:.35;cursor:not-allowed}

/* ---- type ---- */
.kick{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;letter-spacing:5px;text-transform:uppercase;color:var(--grn)}
.kick-amb{color:var(--amb)}
.h1{font-size:clamp(46px,6.5vw,84px);line-height:1.04;margin:0;text-transform:uppercase;text-wrap:balance}
.h1-sub{font-size:clamp(40px,5vw,64px)}
.h2{font-size:clamp(26px,3vw,38px);line-height:1.12;margin:0;text-transform:uppercase}
.lead{font-size:18px;line-height:1.65;color:var(--mut);max-width:56ch;margin:0}

/* ---- placeholder imagery ---- */
.ph{position:relative;background:repeating-linear-gradient(45deg,#1C1B14 0 16px,#171610 16px 32px);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.phtag{font-family:ui-monospace,'SF Mono',Menlo,monospace;font-size:11px;letter-spacing:1.5px;color:var(--dim);background:var(--bg);border:1px dashed #3B392A;padding:7px 12px;text-transform:uppercase}
.card{background:var(--panel);border:1px solid var(--line)}
.section{margin-top:110px}

/* ---- hero ---- */
.hero{position:relative;min-height:640px;display:flex;align-items:flex-end}
.heroimg{position:absolute;inset:0;border:none;border-bottom:1px solid var(--line);align-items:flex-start;justify-content:flex-end;padding:24px}
.heroimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.heroshade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,19,14,.30) 0%,rgba(20,19,14,.82) 62%,#14130E 100%)}
.herocontent{position:relative;width:100%;padding-top:120px;padding-bottom:88px;display:flex;flex-direction:column;gap:24px}
.herobtns{display:flex;align-items:center;gap:16px;margin-top:8px;flex-wrap:wrap}

/* ---- feature cards ---- */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.fcard-img{height:190px;border:none;border-bottom:1px solid var(--line)}
.fcard-body{padding:26px 28px 30px}
.ftitle{font-family:'Barlow Condensed',sans-serif;font-size:23px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin:0 0 10px}
.fcopy{font-size:15px;line-height:1.65;color:var(--mut);margin:0}
.fcopy a{color:var(--grn)}

/* ---- CTA band ---- */
.ctaband{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--amb);padding:44px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ctaband-inner{display:flex;flex-direction:column;gap:10px}

/* ---- page headers ----
   Longhand vertical paddings only: these classes combine with .wrap /
   .wrapnarrow on the same element, and a shorthand would wipe out the
   container's horizontal padding. */
.pagehead{padding-top:88px;padding-bottom:56px;border-bottom:1px solid var(--line)}
.pagehead-flush{padding-bottom:0;border-bottom:1px solid var(--line)}
.pagehead-open{border-bottom:none;padding-bottom:48px}

/* ---- armory: coming soon ---- */
.comingsoon{max-width:880px;margin:0 auto;padding:150px 28px 60px;text-align:center}
.csbtns{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:34px;flex-wrap:wrap}

/* ---- armory ---- */
.chips{display:flex;gap:10px;flex-wrap:wrap;padding:36px 0 28px}
.chip{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;padding:11px 22px;border:1px solid var(--line);color:var(--mut);cursor:pointer;background:transparent;transition:all .15s ease;display:inline-block}
.chip:hover{color:var(--text);border-color:#4B4938}
.chip.on{background:var(--grn);border-color:var(--grn);color:#14130E}
.chip.on:hover{color:#14130E}
.armgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.gimg{height:200px;border:none;border-bottom:1px solid var(--line)}
.gimg img{width:100%;height:100%;object-fit:cover}
.gbody{padding:22px 24px 24px}
.gtop{display:flex;align-items:center;justify-content:space-between;gap:12px}
.gname{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin:0}
.gcal{font-size:14px;color:var(--mut);margin-top:6px}
.gfoot{display:flex;justify-content:space-between;align-items:baseline;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.gprice{font-family:'Barlow Condensed',sans-serif;font-size:21px;font-weight:700;letter-spacing:1px;color:var(--grn)}
.gper{font-size:12.5px;color:var(--dim)}
.tag{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:4px 10px;border:1px solid #4B4938;color:var(--mut);flex:none}
.tag.amb{border-color:var(--amb);color:var(--amb)}
.notice{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--amb);padding:26px 30px;margin-top:56px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}

/* ---- contact ---- */
.cgrid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;margin-top:56px;align-items:start}
.cstack{display:flex;flex-direction:column;gap:24px}
.icard{padding:28px 30px}
.ihead{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--dim);margin:0 0 12px}
.ibig{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:600;letter-spacing:.5px;line-height:1.4;margin:0}
.ibig a{color:var(--grn)}
.isub{font-size:14.5px;color:var(--mut);margin:8px 0 0;line-height:1.6}
.isub-flush{margin-top:0}
.map{height:340px;margin-top:24px}

/* ---- forms ---- */
.formstack{display:flex;flex-direction:column;gap:20px;margin-top:8px}
.fld{display:flex;flex-direction:column;gap:8px;min-width:0}
.lab{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--mut)}
.lab i{font-style:normal;color:var(--amb)}
.in{height:48px;padding:0 14px;background:#100F0A;border:1px solid #353226;color:var(--text);font-family:'Barlow',sans-serif;font-size:15px;width:100%}
.in:focus{outline:none;border-color:var(--grn)}
.ta{height:auto;min-height:140px;padding:12px 14px;resize:vertical;line-height:1.6}
.sentnote{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--grn)}
.errnote{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--amb);margin:0 0 20px}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}

/* ---- waiver ---- */

/* ---- footer ---- */
.foot{border-top:1px solid var(--line);margin-top:110px;background:var(--panel2)}
.footin{padding-top:56px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px}
.fhead{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--dim);margin:0 0 16px}
.flink{display:block;font-size:15px;color:var(--mut);padding:5px 0}
.fbottom{border-top:1px solid var(--line);margin-top:48px;padding-top:22px;padding-bottom:22px;font-size:13px;color:var(--dim);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.foot-slim .fbottom{border-top:none;margin-top:0;padding-top:26px;padding-bottom:26px}
.fbottom a{color:var(--mut);margin-left:22px}

@media (max-width:940px){
  .grid3{grid-template-columns:1fr}
  .footin{grid-template-columns:1fr}
  .armgrid{grid-template-columns:1fr 1fr}
  .cgrid{grid-template-columns:1fr}
  .navlinks{gap:18px}
}
@media (max-width:700px){
  .armgrid{grid-template-columns:1fr}

  /* Nav: two compact centered rows — logo on top, links below.
     The logo doubles as the Home link, so the Home item is hidden. */
  .navin{height:auto;flex-wrap:wrap;justify-content:center;padding:12px 0 14px;row-gap:6px}
  .logo{font-size:17px;white-space:nowrap}
  .navlinks{width:100%;justify-content:center;gap:14px}
  .navlinks .nlink:first-child{display:none}
  .nlink{font-size:14px;letter-spacing:2px;padding:8px 2px}
  .btn-nav{height:38px;padding:0 14px;font-size:13px;letter-spacing:2px}

  .hero{min-height:540px}
  .herocontent{padding-top:72px;padding-bottom:60px}
  .heroimg{padding:14px}
  .phtag{font-size:10px;letter-spacing:1px;padding:5px 8px}

  .section{margin-top:72px}
  .pagehead{padding-top:56px}
  .ctaband{padding:32px 26px}
  .comingsoon{padding:96px 24px 32px}
  .foot{margin-top:72px}
  .icard{padding:24px 22px}
  .map{height:240px}
}

/* ---- WP Waiver plugin theming (overrides the plugin's --wpw-* variables) ---- */
.wpw{
  --wpw-text:var(--text);--wpw-muted:var(--mut);
  --wpw-panel:var(--panel);--wpw-field-bg:#100F0A;
  --wpw-border:var(--line);
  --wpw-accent:var(--grn);--wpw-accent-text:#14130E;
  --wpw-req:var(--amb);
  --wpw-paper:#E8E6DE;--wpw-ink:#14130E;
  --wpw-radius:0;--wpw-font:'Barlow',sans-serif;
}
.wpw-sechead,.wpw-label,.wpw-sig-clear,.wpw-btn{font-family:'Barlow Condensed',sans-serif}
.wpw-sechead{font-size:15px;letter-spacing:3px}
.wpw-label{letter-spacing:2.5px}
.wpw-btn{background:var(--amb);height:54px;padding:0 32px;font-size:18px;letter-spacing:3px}
.wpw-btn:hover{filter:none;background:var(--amb-d)}
.wpw-confirm-title{font-family:'Black Ops One',sans-serif;font-weight:400;font-size:clamp(30px,4vw,44px)}
