/* BigJoe Gear Shop v3 (store look): shop front (en/gear.html, es/equipo.html) + one page per department (en/gear/*.html, es/equipo/*.html).
   Built by admin/gear-lib.php from data/gear.json. Uses the Caribbean theme colors from caribbean-theme.css. */
.gs-store{--gs-navy:var(--bj-navy,#052c39);--gs-ocean:var(--bj-ocean,#006d77);--gs-ink:#0d2630;--gs-muted:#4f6770;--gs-line:#dbe6e7;--gs-paper:#f4f8f8;--gs-gold:#f2b705;--gs-r:14px;background:var(--gs-paper)}
.gs-store *{box-sizing:border-box}
.gs-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.gs-wrap{max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 56px}

/* ---- hero ---- */
.gs-hero{position:relative;color:#fff;background:linear-gradient(100deg,rgba(3,26,35,.94) 0%,rgba(3,26,35,.78) 45%,rgba(3,26,35,.25) 100%),var(--gs-hero) center/cover no-repeat,#052c39;padding:clamp(40px,7vw,86px) 0 clamp(34px,5vw,60px)}
.gs-hero__in{max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.gs-kicker{margin:0 0 10px;font:900 13px/1 Arial,Helvetica,sans-serif;letter-spacing:.2em;color:#ffcf3f}
.gs-hero h1{margin:0;max-width:760px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,5.2vw,56px);line-height:1.06;letter-spacing:-.01em;color:#fff}
.gs-lead{margin:14px 0 0;max-width:620px;font-size:clamp(16px,1.7vw,19px);line-height:1.5;color:rgba(255,255,255,.88)}
.gs-hero--dept{padding:clamp(28px,5vw,58px) 0 clamp(26px,4vw,42px)}
.gs-hero--dept h1{font-size:clamp(30px,4.4vw,46px)}
.gs-crumbs{margin:0 0 10px;font-size:14px;color:rgba(255,255,255,.75)}
.gs-crumbs a{color:#ffcf3f;font-weight:700;text-decoration:none}
.gs-crumbs a:hover{text-decoration:underline}
.gs-search{position:relative;max-width:560px;margin:24px 0 0}
.gs-search svg{z-index:1;pointer-events:none;position:absolute;left:18px;top:50%;width:22px;height:22px;transform:translateY(-50%);color:var(--gs-ocean)}
.gs-store .gs-search input{display:block;width:100%;height:auto;margin:0;padding:17px 18px 17px 54px!important;border:0!important;border-radius:999px!important;-webkit-appearance:none;appearance:none;background:#fff;color:var(--gs-ink);font:600 17px Arial,Helvetica,sans-serif;box-shadow:0 14px 34px rgba(0,0,0,.28);outline:none}
.gs-store .gs-search input:focus{box-shadow:0 0 0 4px rgba(255,207,63,.75),0 14px 34px rgba(0,0,0,.28)}
.gs-trust{display:flex;flex-wrap:wrap;gap:10px 26px;list-style:none;margin:22px 0 0;padding:0;font-size:14.5px;font-weight:700;color:rgba(255,255,255,.92)}
.gs-trust li{display:flex;align-items:center;gap:8px}
.gs-trust svg{width:19px;height:19px;color:#ffcf3f;flex:0 0 auto}

/* ---- section heads ---- */
.gs-sec{margin-top:clamp(34px,5vw,54px)}
.gs-sechead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 20px;margin-bottom:16px}
.gs-h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(25px,3vw,34px);line-height:1.15;color:var(--gs-navy)}
.gs-sub{margin:6px 0 0;color:var(--gs-muted);font-size:16px}
.gs-res{margin-top:30px}
.gs-rc{font-family:Arial,Helvetica,sans-serif;font-size:.6em;color:var(--gs-muted);font-weight:700}
.gs-res .gs-grid{margin-top:16px}

/* ---- product card ---- */
.gs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:20px}
.gs-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:20px}
.gs-row>.gs-card{scroll-snap-align:start}
.gs-row[hidden],.gs-card[hidden],.gs-res[hidden],[hidden].gs-sub{display:none}
.gs-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--gs-line);border-radius:var(--gs-r);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s}
.gs-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(5,44,57,.14);border-color:#c5d8da}
.gs-card--pick{border:2px solid var(--gs-gold)}
.gs-card__ribbon{position:absolute;top:12px;left:12px;z-index:2;background:var(--gs-navy);color:#ffcf3f;font:900 12px/1 Arial,Helvetica,sans-serif;padding:7px 10px;border-radius:999px;letter-spacing:.03em;box-shadow:0 4px 10px rgba(0,0,0,.18)}
.gs-card__vis{text-decoration:none;position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#fff;border-bottom:1px solid #eef3f3;overflow:hidden}
.gs-card__vis{flex-direction:column;gap:10px;background:radial-gradient(120% 90% at 50% 0%,#ffffff 0%,#e8f2f2 70%,#d9eaea 100%);color:var(--gs-ocean)}
.gs-card__vis img.gs-ph{position:absolute;inset:0;width:100%;height:100%;padding:22px;background:#fff;object-fit:contain}
.gs-card__vis img:not(.gs-px){max-width:100%;max-height:100%;object-fit:contain;transition:transform .35s ease}
.gs-card:hover .gs-card__vis img:not(.gs-px){transform:scale(1.06)}
.gs-px{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}
.gs-card__ico svg{width:64px;height:64px}
.gs-card__wm{font:900 17px Arial,Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--gs-navy)}
.gs-card__body{display:flex;flex-direction:column;gap:7px;flex:1;padding:16px 16px 18px}
.gs-card__meta{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;min-height:16px}
.gs-card__brand{font:900 12px Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gs-navy)}
.gs-card__type{font:700 12px Arial,Helvetica,sans-serif;color:var(--gs-ocean)}
.gs-card__body h3{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.25}
.gs-card__body h3 a{color:var(--gs-ink);text-decoration:none}
.gs-card__body h3 a:hover{color:var(--gs-ocean);text-decoration:underline}
.gs-card__body p{margin:0;flex:1;font-size:14.5px;line-height:1.5;color:var(--gs-muted)}
.gs-tier{align-self:flex-start;font:700 12.5px Arial,Helvetica,sans-serif;color:var(--gs-muted);background:#f1f6f6;border-radius:999px;padding:5px 10px;white-space:nowrap}
.gs-tier b{color:#1d7a3a;letter-spacing:.06em}
.gs-tier--3 b{color:#a06a00}
.gs-card__btns{display:grid;grid-template-columns:1fr;gap:8px;margin-top:6px}
.gs-buy{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 10px;border-radius:10px;font:900 14px Arial,Helvetica,sans-serif;text-decoration:none;white-space:nowrap;transition:filter .15s,transform .15s}
.gs-buy:hover,.gs-buy:focus-visible{filter:brightness(.94);transform:translateY(-1px)}
.gs-buy--amz{background:#ffd814;color:#0f1111!important;border:1px solid #f2c200}
.gs-buy--bp{background:#1f5f3a;color:#fff!important;border:1px solid #1f5f3a}

/* ---- departments ---- */
.gs-depts{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.gs-dept{position:relative;display:flex;align-items:flex-end;min-height:230px;border-radius:var(--gs-r);overflow:hidden;background:#052c39 center/cover no-repeat;color:#fff;text-decoration:none;isolation:isolate;transition:transform .2s,box-shadow .2s}
.gs-dept::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,26,35,.15) 0%,rgba(3,26,35,.35) 40%,rgba(3,26,35,.92) 100%);transition:background .2s}
.gs-dept:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(5,44,57,.25)}
.gs-dept:hover::before{background:linear-gradient(180deg,rgba(3,26,35,.1) 0%,rgba(3,26,35,.92) 100%)}
.gs-dept__count{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:var(--gs-navy);font:900 12px Arial,Helvetica,sans-serif;padding:6px 10px;border-radius:999px}
.gs-dept__txt{display:flex;flex-direction:column;gap:4px;padding:18px}
.gs-dept__txt{text-shadow:0 1px 3px rgba(0,0,0,.45)}.gs-dept__txt b{font-family:Georgia,'Times New Roman',serif;font-size:23px;line-height:1.15}
.gs-dept__txt span{font-size:14px;line-height:1.4;color:rgba(255,255,255,.85);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gs-dept__txt em{font-style:normal;font-weight:900;font-size:14px;color:#ffcf3f;margin-top:4px}

/* ---- budget tabs ---- */
.gs-tabs{display:flex;gap:6px;padding:5px;background:#fff;border:1px solid var(--gs-line);border-radius:999px}
.gs-tab{border:0;background:transparent;border-radius:999px;padding:9px 16px;font:700 14px Arial,Helvetica,sans-serif;color:var(--gs-navy);cursor:pointer}
.gs-tab b{color:#1d7a3a}
.gs-tab[aria-selected="true"]{background:var(--gs-navy);color:#fff}
.gs-tab[aria-selected="true"] b{color:#ffcf3f}

/* ---- brand wall ---- */
.gs-brandwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:16px}
.gs-brand{height:72px;border:1px solid var(--gs-line);border-radius:12px;background:#fff;font:900 16px Arial,Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--gs-navy);cursor:pointer;transition:border-color .15s,box-shadow .15s,color .15s}
.gs-brand:hover,.gs-brand:focus-visible{border-color:var(--gs-ocean);color:var(--gs-ocean);box-shadow:0 8px 20px rgba(5,44,57,.1)}

/* ---- department page bar ---- */
.gs-pills{display:flex;gap:8px;overflow-x:auto;padding:18px 0 6px;scrollbar-width:thin}
.gs-pills a{flex:0 0 auto;padding:9px 15px;border-radius:999px;background:#fff;border:1px solid var(--gs-line);color:var(--gs-navy);font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap}
.gs-pills a:hover{border-color:var(--gs-ocean)}
.gs-pills a.on{background:var(--gs-navy);border-color:var(--gs-navy);color:#fff}
.gs-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 18px;padding:12px 14px;background:#fff;border:1px solid var(--gs-line);border-radius:var(--gs-r)}
.gs-bar__r{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.gs-chips{display:flex;flex-wrap:wrap;gap:8px}
.gs-chip{font:700 14px Arial,Helvetica,sans-serif;padding:8px 14px;border-radius:999px;border:1px solid var(--gs-line);background:#fff;color:var(--gs-navy);cursor:pointer}
.gs-chip:hover{border-color:var(--gs-ocean)}
.gs-chip[aria-pressed="true"]{background:var(--gs-ocean);border-color:var(--gs-ocean);color:#fff}
.gs-sel{font:700 14px Arial,Helvetica,sans-serif;padding:8px 12px;border-radius:10px;border:1px solid var(--gs-line);background:#fff;color:var(--gs-navy)}
.gs-count{font-size:14px;color:var(--gs-muted);font-weight:700}

/* ---- footer bits ---- */
.gs-more{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}
.gs-more a{padding:10px 16px;border-radius:999px;background:#fff;border:1px solid var(--gs-line);color:var(--gs-navy);font-weight:700;text-decoration:none}
.gs-more a:hover{border-color:var(--gs-ocean)}
.gs-wrap>.gs-h2{margin-top:clamp(34px,5vw,54px)}
.gs-disc{font-size:13px;color:var(--gs-muted);margin:30px 0 6px;line-height:1.55}
.gs-credits{font-size:12px;color:var(--gs-muted);line-height:1.5}
.gs-credits summary{cursor:pointer;font-weight:700}
.gs-credits a{color:inherit}

@media (max-width:640px){
 .gs-grid{grid-template-columns:1fr 1fr;gap:12px}
 .gs-row{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(200px,72%);overflow-x:auto;padding:4px 4px 16px;margin:0 -4px;scroll-snap-type:x mandatory;gap:12px}
 .gs-card__body{padding:12px}
 .gs-card__body p{display:none}
 .gs-card__body h3{font-size:15.5px}
 .gs-card__vis img.gs-ph{padding:14px}
 .gs-card__btns{grid-template-columns:1fr}
 .gs-buy{min-height:38px;font-size:13px}
 .gs-row .gs-card__body p{display:block}
 .gs-dept{min-height:180px}
 .gs-trust{gap:8px 18px;font-size:13.5px}
 .gs-tabs{width:100%;justify-content:space-between}
 .gs-tab{padding:9px 10px;font-size:13px}
 .gs-brandwall{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:360px){.gs-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.gs-card,.gs-dept,.gs-buy,.gs-card__vis img{transition:none}}
/* v4 (Oct 13 2026): stats, buying guides, how-we-pick, partner banner */
.gs-stats{margin:14px 0 0;color:#e8f3f4;font-size:15px;letter-spacing:.02em}
.gs-stats b{color:#ffcf3f;font-size:18px}
.gs-guide{margin-top:clamp(34px,5vw,54px);padding:clamp(20px,3vw,32px);background:#fff;border:1px solid var(--gs-line);border-top:4px solid var(--gs-ocean);border-radius:var(--gs-r)}
.gs-guide .gs-kicker{color:var(--gs-ocean)}
.gs-guide__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px 28px;margin-top:16px}
.gs-guide__b h3{margin:0 0 6px;font-size:18px;color:var(--gs-navy)}
.gs-guide__b p{margin:0;color:var(--gs-ink);line-height:1.6;font-size:16px}
.gs-related{margin-top:20px;padding-top:16px;border-top:1px solid var(--gs-line);display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;color:var(--gs-ink)}
.gs-related a{color:var(--gs-ocean);font-weight:700;text-decoration:none}
.gs-related a:hover{text-decoration:underline}
.gs-how .gs-sub{display:block}
.gs-how ol{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.gs-how li{display:flex;gap:14px;padding:18px;background:#fff;border:1px solid var(--gs-line);border-radius:var(--gs-r)}
.gs-how__n{flex:0 0 34px;height:34px;border-radius:50%;background:var(--gs-navy);color:#ffcf3f;font-weight:900;display:flex;align-items:center;justify-content:center}
.gs-how b{color:var(--gs-navy);font-size:17px}
.gs-how p{margin:4px 0 0;color:var(--gs-muted);line-height:1.55;font-size:15px}
.gs-partner{margin-top:clamp(30px,4vw,44px);display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;padding:clamp(20px,3vw,30px);border-radius:var(--gs-r);background:linear-gradient(120deg,var(--gs-navy),var(--gs-ocean));color:#fff}
.gs-partner h2{margin:0 0 6px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2.6vw,28px);color:#fff}
.gs-partner p{margin:0;max-width:720px;color:#e3f1f2;line-height:1.55}
.gs-partner__btn{display:inline-block;padding:13px 20px;border-radius:999px;background:#ffcf3f;color:#052c39;font-weight:900;text-decoration:none;white-space:nowrap}
.gs-partner__btn:hover{background:#ffd95f}
.gs-motto{margin:12px 0 0;max-width:640px;padding-left:14px;border-left:3px solid #ffcf3f;color:#f3f8f8;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:17px;line-height:1.5}
.gs-partner .gs-partner__motto{margin-top:10px;font-family:Georgia,'Times New Roman',serif;font-style:italic;color:#ffe9a8}
/* fallback when the Amazon photo is blocked: the department's real photo, no brand wordmark */
.gs-card__vis img.gs-card__fb{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;transform:none}
.gs-card__vis img.gs-ph{z-index:1}
@media(min-width:721px){.gs-pills{flex-wrap:wrap;overflow:visible}}
