/*
 * JFA DESIGN SYSTEM (2026-09-30)
 * Authoritative layer — loaded last, governs homepage + all core pages.
 * Purpose: define ONE type scale, ONE spacing rhythm, and fix the
 * oversized/uppercase display type + inconsistent whitespace.
 */

/* ═══════════ TOKENS ═══════════ */
:root{
  --fs-display:clamp(2.05rem,4.2vw,3.3rem);   /* hero / closing headline */
  --fs-h2:clamp(1.55rem,2.7vw,2.35rem);       /* section headline */
  --fs-h3:clamp(1.02rem,1.35vw,1.24rem);      /* card headline */
  --fs-lead:clamp(.98rem,1.15vw,1.1rem);      /* hero lead */
  --fs-body:1rem;                             /* base body */
  --fs-label:.72rem;                          /* mono kicker */
  --sec-y:clamp(56px,6.2vw,88px);             /* section vertical rhythm */
  --gap:clamp(12px,1.3vw,16px);               /* card gap */
  --head-gap:clamp(22px,2.8vw,36px);          /* head -> content */
  --radius:14px
}
body{font-size:var(--fs-body);line-height:1.7}

/* ═══════════ HOMEPAGE ═══════════ */
.jfa-home{background:var(--j-cream);color:var(--j-ink);overflow-x:clip;overflow-y:visible}

/* scroll safety: site-shell must never clip vertical scrolling */
.site-shell{overflow-x:clip;overflow-y:visible !important}

/* ---- shared type ---- */
.jfa-h-kicker{margin:0 0 14px;font:500 var(--fs-label)/1.3 "DM Mono",monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--j-ash)}
.jfa-h-kicker--acid{color:var(--j-acid)}
.jfa-h-display{margin:0;font:800 var(--fs-display)/1.08 Manrope,Arial,sans-serif;letter-spacing:-.045em;text-transform:none}
.jfa-h-display em{font-style:normal;color:var(--j-acid)}
.jfa-h-h2{margin:0;font:800 var(--fs-h2)/1.14 Manrope,Arial,sans-serif;letter-spacing:-.04em;text-transform:none}
.jfa-h-h2 em{font-style:normal;color:var(--j-acid)}
.jfa-h-section{padding:var(--sec-y) 0}
.jfa-h-section--cream{background:#f7f5f0}
.jfa-h-section--dark{background:var(--j-ink);color:#fff}

/* ---- buttons ---- */
.jfa-h-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.jfa-h-btn{display:inline-flex;align-items:center;gap:11px;padding:13px 19px;border:1px solid transparent;border-radius:2px;
  font:500 .72rem "DM Mono",monospace;letter-spacing:.05em;text-transform:uppercase;line-height:1;transition:.2s ease;white-space:nowrap}
.jfa-h-btn b{font-weight:500}
.jfa-h-btn:hover{transform:translateY(-2px)}
.jfa-h-btn-primary{background:var(--j-acid);color:var(--j-ink)}
.jfa-h-btn-primary:hover{background:var(--j-orange);color:#fff}
.jfa-h-btn-outline{border-color:rgba(255,255,255,.6);color:#fff}
.jfa-h-btn-outline:hover{background:#fff;color:var(--j-ink)}
.jfa-h-btn-ghost{border-color:var(--j-line);color:var(--j-ink)}
.jfa-h-btn-ghost:hover{background:var(--j-ink);color:#fff}
.jfa-h-btn-dark{background:var(--j-ink);color:#fff}
.jfa-h-btn-dark:hover{background:#fff;color:var(--j-ink)}

/* ---- 1 HERO (copy anchored top-LEFT, narrow so it never covers people/pets) ---- */
.jfa-h-hero{position:relative;isolation:isolate;color:#fff;min-height:clamp(480px,62vh,620px);
  display:flex;flex-direction:column;justify-content:flex-start;
  background:#17212b var(--hero-image) center/cover no-repeat}
.jfa-h-hero-shade{position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(6,9,12,.88) 0%,rgba(6,9,12,.72) 30%,rgba(6,9,12,.18) 52%,rgba(6,9,12,.12) 78%,rgba(6,9,12,.2) 100%)}
.jfa-h-hero-inner{margin:auto 0;padding:40px 24px 40px clamp(24px,6.5vw,96px);max-width:none}
.jfa-h-hero-inner>*{max-width:560px}
.jfa-h-hero .jfa-h-display{font-size:clamp(1.85rem,3.1vw,2.75rem)}
.jfa-h-hero .jfa-h-kicker{color:rgba(255,255,255,.82)}
.jfa-h-lead{max-width:470px;margin:18px 0 0;font-size:clamp(.92rem,1.05vw,1.02rem);line-height:1.66;color:#e4e7e2}
.jfa-h-index{margin-top:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:15px 0 18px;
  border-top:1px solid rgba(255,255,255,.26);font:500 .64rem "DM Mono",monospace;letter-spacing:.08em;color:#cfd3cc}

/* ---- 2 POSITIONING split ---- */
.jfa-h-split{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,56px);align-items:start}
.jfa-h-split-side{padding-top:6px;color:#51564f;font-size:var(--fs-body);line-height:1.72}
.jfa-h-inline{display:inline-flex;margin-top:18px;border-bottom:1px solid var(--j-ink);padding-bottom:6px;
  font:500 .72rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--j-ink)}
.jfa-h-inline:hover{color:var(--j-orange);border-color:var(--j-orange)}

/* ---- section head (scenes / gear) ---- */
.jfa-h-head{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,3vw,44px);align-items:end;margin-bottom:var(--head-gap)}
.jfa-h-head-note{margin:0;max-width:520px;color:#5c6159;font-size:.93rem;line-height:1.62}

/* ---- 2 POSITIONING (now image + copy) ---- */
.jfa-h-about{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,4vw,56px);align-items:center}
.jfa-h-about-copy{max-width:600px}
.jfa-h-about-lead{margin:20px 0 0;color:#51564f;font-size:var(--fs-body);line-height:1.72}
.jfa-h-about-media{margin:0}
.jfa-h-about-media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:var(--radius);
  box-shadow:0 18px 44px rgba(17,19,17,.14)}
.jfa-h-about-media figcaption{margin-top:12px;font:500 .64rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#7c8278}

/* ---- 3 SCENES ---- */
.jfa-h-scenes{display:grid;grid-template-columns:1.32fr .84fr .84fr;gap:var(--gap)}
.jfa-h-scene{position:relative;display:flex;flex-direction:column;justify-content:space-between;
  min-height:clamp(340px,38vw,430px);padding:20px;color:#fff;overflow:hidden;border-radius:var(--radius);
  background:#444 var(--scene-image) center/cover no-repeat;transition:transform .25s ease}
.jfa-h-scene:after{content:"";position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.82) 6%,rgba(0,0,0,.28) 52%,rgba(0,0,0,.06) 100%);transition:.3s}
.jfa-h-scene:hover{transform:translateY(-4px)}
.jfa-h-scene:hover:after{background:linear-gradient(0deg,rgba(0,0,0,.86) 6%,rgba(0,0,0,.34) 55%,rgba(0,0,0,.1) 100%)}
.jfa-h-scene>*{position:relative;z-index:1}
.jfa-h-scene-no{font:500 .66rem "DM Mono",monospace;letter-spacing:.12em;opacity:.85}
.jfa-h-scene-label{margin:0 0 7px;font:500 .6rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-acid)}
.jfa-h-scene-title{margin:0;font:800 clamp(1.15rem,1.8vw,1.5rem)/1.18 Manrope,Arial,sans-serif;letter-spacing:-.035em}
.jfa-h-scene-link{margin-top:11px;display:inline-block;font:500 .66rem "DM Mono",monospace;letter-spacing:.05em;text-transform:uppercase}
.jfa-h-scene:hover .jfa-h-scene-link{color:var(--j-acid)}

/* ---- 4 GEAR (image-topped category cards) ---- */
.jfa-h-gear{display:grid;grid-template-columns:repeat(auto-fit,minmax(198px,1fr));gap:var(--gap)}
.jfa-h-gear-card{display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--j-line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}
.jfa-h-gear-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(17,19,17,.1);border-color:var(--j-acid)}
.jfa-h-gear-media{display:block;margin:0;padding:0}
.jfa-h-gear-media img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;transition:transform .35s ease}
.jfa-h-gear-card:hover .jfa-h-gear-media img{transform:scale(1.04)}
.jfa-h-gear-body{display:flex;flex-direction:column;flex:1;padding:18px 18px 20px}
.jfa-h-gear-no{font:500 .64rem "DM Mono",monospace;letter-spacing:.12em;color:var(--j-orange)}
.jfa-h-gear-card h3{margin:9px 0 8px;font:800 var(--fs-h3)/1.24 Manrope,Arial,sans-serif;letter-spacing:-.03em;color:var(--j-ink)}
.jfa-h-gear-card p{margin:0;font-size:.88rem;line-height:1.6;color:#565c54}
.jfa-h-gear-link{margin-top:auto;padding-top:14px;font:500 .66rem "DM Mono",monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--j-ink)}
.jfa-h-gear-card:hover .jfa-h-gear-link{color:var(--j-orange)}

/* ---- 5 SUPPLY (B2B: copy set directly on the photo, hero-style) ---- */
.jfa-h-supply{position:relative;isolation:isolate;padding:clamp(72px,9vw,120px) 0;
  background:#273034 var(--supply-image) center/cover no-repeat}
.jfa-h-supply-shade{position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(6,10,12,.9) 0%,rgba(6,10,12,.74) 34%,rgba(6,10,12,.28) 60%,rgba(6,10,12,.18) 100%)}
.jfa-h-supply-inner{max-width:640px;margin:0;color:#fff;padding-left:clamp(24px,6.5vw,96px);padding-right:24px}
.jfa-h-supply-copy{margin:16px 0 0;max-width:540px;font-size:.97rem;line-height:1.72;color:#dfe3dc}
.jfa-h-supply .jfa-h-kicker{color:var(--j-orange)}
.jfa-h-supply .jfa-h-h2 em{color:var(--j-acid)}

/* ---- 6 PRINCIPLES ---- */
.jfa-h-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:6px;
  border-top:1px solid rgba(255,255,255,.3)}
.jfa-h-principles article{padding:26px 26px 12px 0;margin-right:24px;border-right:1px solid rgba(255,255,255,.22)}
.jfa-h-principles article:last-child{border-right:0;margin-right:0}
.jfa-h-principles span{font:500 .66rem "DM Mono",monospace;letter-spacing:.12em;color:var(--j-acid)}
.jfa-h-principles h3{margin:34px 0 12px;font:800 clamp(1.1rem,1.6vw,1.42rem)/1.24 Manrope,Arial,sans-serif;letter-spacing:-.035em}
.jfa-h-principles p{margin:0;max-width:320px;font-size:.9rem;line-height:1.7;color:#bcc1b9}

/* ---- 7 CLOSING (real driving video background) ---- */
.jfa-h-closing{position:relative;isolation:isolate;min-height:clamp(420px,55vh,560px);
  display:flex;align-items:center;color:#fff;background:#141a14;overflow:hidden}
.jfa-h-closing-video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.jfa-h-closing-shade{position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(6,9,8,.82) 0%,rgba(6,9,8,.6) 40%,rgba(6,9,8,.3) 75%,rgba(6,9,8,.36) 100%)}
.jfa-h-closing .jfa-h-kicker{color:var(--j-acid)}
.jfa-h-closing .jfa-h-display em{color:var(--j-acid)}
.jfa-h-closing .jfa-h-actions{margin-top:26px}
@media(prefers-reduced-motion:reduce){.jfa-h-closing-video{display:none}}

/* ═══════════ FOOTER ═══════════ */
.site-footer{background:#14170f;color:#e8eae2}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:clamp(28px,4vw,56px);padding:clamp(48px,6vw,72px) 0 40px}
.footer-brand-col{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.footer-brand{color:#fff}
.footer-brand .jfa-brand-word{color:#fff}
.footer-manifesto{font:500 .66rem "DM Mono",monospace;letter-spacing:.14em;color:#9aa192}
.footer-col{display:flex;flex-direction:column;gap:12px}
.footer-col h4{margin:0 0 6px;font:500 .64rem "DM Mono",monospace;letter-spacing:.13em;text-transform:uppercase;color:#8b917f}
.footer-col a{color:#d7dbcf;font-size:.92rem;text-decoration:none;transition:.15s}
.footer-col a:hover{color:var(--j-acid)}
.footer-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  padding:20px 0 26px;border-top:1px solid rgba(255,255,255,.14);font:500 .68rem "DM Mono",monospace;letter-spacing:.06em;color:#8b917f}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr;gap:30px}}

/* ═══════════ CORE PAGES (vehicles/lifestyle/kits/generic) ═══════════ */
.jfa-core-hero{min-height:clamp(400px,50vh,500px) !important;padding-top:clamp(48px,7vw,88px) !important}
.jfa-core-hero h1{font-size:var(--fs-display) !important;line-height:1.1 !important;
  letter-spacing:-.04em !important;text-transform:none !important}
.jfa-core-hero p:not(.jfa-kicker){max-width:600px;font-size:var(--fs-lead);line-height:1.7;margin-top:20px}
.jfa-core-hero .container{padding-bottom:clamp(36px,5vw,60px)}

.jfa-sec{padding:var(--sec-y) 0 !important}
.jfa-core-entry{padding:var(--sec-y) 0 !important}
.jfa-core-entry .entry-content>p:not(.jfa-kicker),
.jfa-core-entry .entry-content>ul{max-width:70ch;font-size:var(--fs-body);line-height:1.75}
.jfa-core-entry h2,.jfa-section-head h2,.jfa-kit-type-head h2{
  font-size:var(--fs-h2) !important;line-height:1.15 !important;letter-spacing:-.04em !important;text-transform:none !important}
.jfa-core-values>h2,.jfa-page-intro>h2,.jfa-kit-direction>h2{
  font-size:var(--fs-h2) !important;line-height:1.16 !important;letter-spacing:-.04em !important}
.jfa-section-head,.jfa-kit-type-head{margin-bottom:var(--head-gap)}
.jfa-core-values,.jfa-page-intro,.jfa-kit-direction{margin-top:clamp(40px,5vw,64px)}
.jfa-principles{padding:var(--sec-y) 0 !important}
.jfa-principle-grid h3{font-size:var(--fs-h3) !important;line-height:1.24 !important;letter-spacing:-.035em !important;margin:24px 0 12px !important}

/* vehicles gallery + faq */
.jfa-vslide{flex:0 0 clamp(260px,30vw,340px);border-radius:var(--radius)}
.jfa-vslide-title{font:700 clamp(1.05rem,1.5vw,1.3rem)/1.14 "Space Grotesk",Inter,sans-serif}
.jfa-faq summary{font-size:clamp(.98rem,1.15vw,1.06rem)!important;padding:17px 0}
.jfa-faq details .jfa-faq-a{font-size:.96rem;line-height:1.7}

/* lifestyle scenarios + kits */
.jfa-ls-scenario{padding:clamp(32px,4vw,52px) 0;gap:clamp(24px,3.4vw,44px)}
.jfa-ls-body h3{font-size:var(--fs-h2) !important;line-height:1.16 !important}
.jfa-ls-body p{font-size:.98rem}
.jfa-kit-type{padding:clamp(36px,4.5vw,60px) 0}
.jfa-kit-bundle h3{font-size:var(--fs-h3)}

/* ═══════════ RESPONSIVE ═══════════ */
@media(max-width:980px){
  .jfa-h-about{grid-template-columns:1fr;gap:26px}
  .jfa-h-about-media{order:-1}
  .jfa-h-split{grid-template-columns:1fr;gap:20px}
  .jfa-h-head{grid-template-columns:1fr;align-items:start}
  .jfa-h-head-note{margin-top:12px;max-width:620px}
  .jfa-h-scenes{grid-template-columns:1fr 1fr}
  .jfa-h-scene--wide{grid-column:1/-1}
  .jfa-h-principles{grid-template-columns:1fr}
  .jfa-h-principles article{margin:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.22);padding:22px 0}
  .jfa-h-principles h3{margin:20px 0 10px}
  .jfa-h-hero{min-height:clamp(440px,58vh,560px)}
}
@media(max-width:600px){
  :root{--fs-display:clamp(1.8rem,7.4vw,2.4rem);--fs-h2:clamp(1.45rem,6.2vw,1.85rem)}
  .jfa-h-scenes{grid-template-columns:1fr}
  .jfa-h-hero{min-height:auto}
  .jfa-h-hero-inner{padding:44px 0 30px}
  .jfa-h-index{grid-template-columns:repeat(2,1fr);gap:9px;font-size:.58rem}
  .jfa-h-hero-shade{background:linear-gradient(180deg,rgba(6,9,12,.5) 0%,rgba(6,9,12,.72) 45%,rgba(6,9,12,.9) 100%)}
  .jfa-h-supply-card{padding:22px}
  .jfa-h-btn{padding:12px 15px;font-size:.68rem}
}

/* ═══════════ KITS HUB — Season Box (2026-09-30) ═══════════ */
.jfa-kits-hub{background:var(--j-cream)}
.jfa-kits-cta{max-width:760px}
.jfa-kits-cta-note{margin:12px 0 0;font-size:.97rem;color:#5c6159}
.jfa-kits-cta-link{margin:22px 0 0;font:500 .68rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase}
.jfa-kits-cta-link a{color:var(--j-ink);border-bottom:1px solid var(--j-line)}
.jfa-kits-cta-link a:hover{color:var(--j-orange);border-color:var(--j-orange)}

/* season timeline */
.jfa-season-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:2px;
  border:1px solid var(--j-line);border-radius:var(--radius);overflow:hidden;background:var(--j-line)}
.jfa-season-node>a{display:block;padding:20px 18px;background:#fff;height:100%;transition:.2s ease}
.jfa-season-node>a:hover{background:var(--j-cream)}
.jfa-season-dot{display:block;width:9px;height:9px;border-radius:50%;background:var(--j-line);margin-bottom:12px}
.jfa-season-node--live .jfa-season-dot{background:var(--j-orange);box-shadow:0 0 0 4px rgba(255,107,53,.16)}
.jfa-season-label{display:block;font:500 .64rem "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--j-gray)}
.jfa-season-name{display:block;margin:6px 0 8px;font:800 1.02rem/1.25 Manrope,sans-serif;letter-spacing:-.02em;color:var(--j-ink)}
.jfa-season-meta{display:block;font-size:.82rem;color:#5c6159}
.jfa-season-node--soon>a{background:#f4f6f2}
.jfa-season-node--soon .jfa-season-name{color:#6b7268}

/* box layout */
.jfa-box-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(20px,3vw,44px);align-items:start}
.jfa-box-visual{position:relative;border-radius:var(--radius);overflow:hidden;background:#e7eae4}
.jfa-box-visual img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.jfa-box-badge{position:absolute;left:14px;top:14px;padding:6px 12px;border-radius:999px;background:#fff;
  font:500 .62rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-ink)}
.jfa-box-lead{margin:10px 0 0;font-size:.98rem;line-height:1.72;color:#4b514a;max-width:60ch}
.jfa-box-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:18px 0 6px;
  padding:14px 0;border-top:1px solid var(--j-line);border-bottom:1px solid var(--j-line)}
.jfa-box-price-now{font:800 1.7rem/1 Manrope,sans-serif;letter-spacing:-.03em;color:var(--j-ink)}
.jfa-box-price-was{font-size:.86rem;color:var(--j-gray);text-decoration:line-through}
.jfa-box-save{padding:3px 9px;border-radius:999px;background:var(--j-acid);font:500 .66rem "DM Mono",monospace;letter-spacing:.06em;color:#1d2410}
.jfa-box-items{list-style:none;margin:16px 0 0;padding:0}
.jfa-box-item{display:grid;grid-template-columns:1fr auto;gap:2px 14px;padding:11px 0;border-bottom:1px dashed var(--j-line);transition:.15s ease}
.jfa-box-item:hover{background:#fbfcf9}
.jfa-box-item-name{font-weight:700;font-size:.92rem;color:var(--j-ink)}
.jfa-box-item-why{grid-column:1;font-size:.83rem;color:#6b7268}
.jfa-box-item-price{grid-row:1/3;grid-column:2;align-self:center;font:500 .88rem "DM Mono",monospace;color:var(--j-orange)}

/* coming soon + add-ons */
.jfa-soon-grid,.jfa-addon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--gap)}
.jfa-soon-card{padding:22px 20px;background:#f4f6f2;border:1px solid var(--j-line);border-radius:var(--radius)}
.jfa-soon-card h3{margin:8px 0 8px;font:800 var(--fs-h3)/1.24 Manrope,sans-serif;letter-spacing:-.02em}
.jfa-soon-card p{margin:0;font-size:.88rem;line-height:1.65;color:#5c6159}
.jfa-soon-tag{display:inline-block;margin-top:14px;padding:4px 10px;border-radius:999px;border:1px solid var(--j-line);
  background:#fff;font:500 .62rem "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--j-gray)}
.jfa-addon-card{display:flex;flex-direction:column;padding:22px 20px;background:#fff;border:1px solid var(--j-line);
  border-radius:var(--radius);transition:.2s ease}
.jfa-addon-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(17,19,17,.09);border-color:var(--j-acid)}
.jfa-addon-card h3{margin:0 0 8px;font:800 var(--fs-h3)/1.26 Manrope,sans-serif;letter-spacing:-.02em}
.jfa-addon-card p{margin:0;font-size:.86rem;line-height:1.62;color:#5c6159}
.jfa-addon-price{margin-top:auto;padding-top:16px;font:500 .92rem "DM Mono",monospace;color:var(--j-orange)}

/* plans */
.jfa-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);max-width:820px}
.jfa-plan{padding:26px 24px;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);display:flex;flex-direction:column}
.jfa-plan--featured{border-color:var(--j-ink);box-shadow:0 18px 44px rgba(17,19,17,.1)}
.jfa-plan-name{font:500 .66rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-gray);margin:0}
.jfa-plan-price{margin:10px 0 4px;font-size:1rem;color:#5c6159}
.jfa-plan-price b{font:800 2.1rem/1 Manrope,sans-serif;letter-spacing:-.03em;color:var(--j-ink)}
.jfa-plan-price span{font-size:.9rem;color:var(--j-gray)}
.jfa-plan-note{margin:0 0 14px;font-size:.84rem;color:var(--j-orange)}
.jfa-plan ul{margin:14px 0 20px;padding-left:18px}
.jfa-plan li{margin:7px 0;font-size:.88rem;line-height:1.5;color:#4b514a}
.jfa-plan .jfa-h-btn{margin-top:auto;align-self:flex-start}
.jfa-plan-flag{align-self:flex-start;margin-bottom:12px;padding:4px 10px;border-radius:999px;background:var(--j-acid);
  font:500 .6rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#1d2410}
.jfa-plan-fine{margin:14px 0 0;font-size:.78rem;line-height:1.55;color:var(--j-gray)}

@media(max-width:900px){
  .jfa-box-layout{grid-template-columns:1fr}
  .jfa-season-track{grid-template-columns:repeat(2,1fr)}
  .jfa-plan-grid{grid-template-columns:1fr;max-width:none}
}
@media(max-width:560px){
  .jfa-season-track{grid-template-columns:1fr}
  .jfa-box-visual img{aspect-ratio:16/10}
}

/* ═══════════ LIFESTYLE HUB — Field Notes (2026-09-30) ═══════════ */
.jfa-lifestyle-hub{background:var(--j-cream)}
.jfa-core-hero--short{min-height:clamp(320px,44vh,460px)}
.jfa-hub-empty{padding:26px;border:1px dashed var(--j-line);border-radius:var(--radius);color:#5c6159;font-size:.95rem;background:#fbfcf9}
.jfa-hub-back{margin:26px 0 0;font:500 .68rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase}
.jfa-hub-back a{color:var(--j-ink);border-bottom:1px solid var(--j-line)}
.jfa-hub-back a:hover{color:var(--j-orange)}
.jfa-pager{margin:30px 0 0;font-size:.9rem}
.jfa-pager .nav-links{display:flex;gap:10px}
.jfa-pager a,.jfa-pager span{padding:8px 14px;border:1px solid var(--j-line);border-radius:8px;background:#fff}

/* featured */
.jfa-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,3vw,40px);align-items:center;
  margin-top:18px;padding:22px;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius)}
.jfa-feature-media{display:block;border-radius:12px;overflow:hidden;background:#e7eae4}
.jfa-feature-media img{width:100%;aspect-ratio:16/11;object-fit:cover;display:block;transition:.4s ease}
.jfa-feature-media:hover img{transform:scale(1.03)}
.jfa-feature-meta{margin:0;font:500 .66rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-gray)}
.jfa-feature-body h2{margin:10px 0 12px}
.jfa-feature-body h2 a{color:var(--j-ink)}
.jfa-feature-body h2 a:hover{color:var(--j-orange)}
.jfa-feature-excerpt{margin:0;font-size:.98rem;line-height:1.72;color:#4b514a;max-width:52ch}
.jfa-feature-link{display:inline-block;margin-top:18px;font:500 .68rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--j-ink);border-bottom:1px solid var(--j-line)}
.jfa-feature-link:hover{color:var(--j-orange);border-color:var(--j-orange)}

/* columns */
.jfa-col-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--gap)}
.jfa-col-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}
.jfa-col-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(17,19,17,.1);border-color:var(--j-acid)}
.jfa-col-media{display:block;background:#e7eae4}
.jfa-col-media img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.jfa-col-body{display:flex;flex-direction:column;padding:20px 20px 22px}
.jfa-col-no{font:500 .62rem "DM Mono",monospace;letter-spacing:.14em;color:var(--j-orange)}
.jfa-col-name{margin:8px 0 8px;font:800 1.16rem/1.22 Manrope,sans-serif;letter-spacing:-.025em;color:var(--j-ink)}
.jfa-col-desc{font-size:.88rem;line-height:1.65;color:#565c54}
.jfa-col-count{margin-top:auto;padding-top:16px;font:500 .64rem "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--j-gray)}

/* posts */
.jfa-post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--gap)}
.jfa-post-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}
.jfa-post-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(17,19,17,.09);border-color:var(--j-acid)}
.jfa-post-media{display:block;background:#e7eae4}
.jfa-post-media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.jfa-post-meta{padding:16px 18px 0;font:500 .62rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-gray)}
.jfa-post-title{padding:8px 18px 0;font:700 .98rem/1.4 Manrope,sans-serif;letter-spacing:-.015em;color:var(--j-ink)}
.jfa-post-more{padding:14px 18px 18px;margin-top:auto;font:500 .64rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--j-orange)}

/* duo cards */
.jfa-hub-duo{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.jfa-hub-card{padding:28px 26px;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius)}
.jfa-hub-card h3{margin:8px 0 10px;font:800 1.32rem/1.24 Manrope,sans-serif;letter-spacing:-.025em}
.jfa-hub-card p{margin:0 0 18px;font-size:.93rem;line-height:1.68;color:#4b514a}
.jfa-hub-card--dark{background:#111827;border-color:#111827;color:#fff}
.jfa-hub-card--dark p{color:#cbd5e1}
.jfa-hub-card--dark h3{color:#fff}
.jfa-hub-card--dark .jfa-h-btn-ghost{color:#fff;border-color:rgba(255,255,255,.4)}

@media(max-width:900px){
  .jfa-feature{grid-template-columns:1fr}
  .jfa-hub-duo{grid-template-columns:1fr}
}
/* ============ FIELD NOTES — ARTICLE (batch 1) ============ */
.jfa-article{background:var(--j-cream)}
.jfa-art-hero{padding:calc(var(--sec-y) * .8) 0 calc(var(--sec-y) * .45)}
.jfa-art-crumb{margin:0 0 14px;font:500 .68rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase}
.jfa-art-crumb a{color:var(--j-gray);border-bottom:1px solid var(--j-line)}
.jfa-art-crumb a:hover{color:var(--j-orange);border-color:var(--j-orange)}
.jfa-art-crumb span{margin:0 6px;color:var(--j-line)}
.jfa-art-title{margin:0 0 14px;font-size:var(--fs-h2,clamp(1.7rem,3.4vw,2.6rem));line-height:1.16;color:var(--j-ink);max-width:22ch}
.jfa-art-meta{margin:0;font:400 .85rem/1.6 "DM Sans",sans-serif;color:var(--j-gray);display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.jfa-art-chip{font:500 .62rem "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--j-ink);border:1px solid var(--j-line);border-radius:999px;padding:3px 10px}
.jfa-art-chip:hover{border-color:var(--j-orange);color:var(--j-orange)}
.jfa-art-figure .container{max-width:980px}
.jfa-art-figure img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius,12px);display:block}
.jfa-art-body{max-width:760px;padding-top:calc(var(--sec-y) * .7)}
.jfa-art-body .entry-content{font-size:1.02rem;line-height:1.78;color:#3c423b}
.jfa-art-body .entry-content p{margin:0 0 1.25em}
.jfa-art-body .entry-content a{color:var(--j-ink);border-bottom:1px solid var(--j-orange)}
.jfa-art-body .entry-content a:hover{color:var(--j-orange)}
.jfa-art-body .entry-content ul{margin:0 0 1.4em;padding-left:1.2em}
.jfa-art-body .entry-content li{margin-bottom:.6em}
.jfa-lede{font-size:1.14rem;line-height:1.7;color:var(--j-ink)}
.jfa-pull{margin:2em 0;padding:6px 0 6px 22px;border-left:3px solid var(--j-orange)}
.jfa-pull p{margin:0;font-size:1.3rem;line-height:1.45;font-weight:600;color:var(--j-ink)}
.jfa-gear-list{margin:2em 0;border:1px solid var(--j-line);border-radius:var(--radius,12px);overflow:hidden;background:#fff}
.jfa-gear-item{padding:18px 22px;border-bottom:1px solid var(--j-line)}
.jfa-gear-item:last-child{border-bottom:0}
.jfa-gear-name{margin:0 0 6px;font-weight:600;color:var(--j-ink)}
.jfa-gear-name a{border-bottom:1px solid var(--j-orange)}
.jfa-gear-item p:not(.jfa-gear-name){margin:0;font-size:.95rem;line-height:1.68;color:#4b514a}
.jfa-note{margin:2em 0;background:rgba(255,255,255,.65);border:1px dashed var(--j-orange);border-radius:var(--radius,12px);padding:16px 20px}
.jfa-note p{margin:0;font-size:.96rem;line-height:1.68;color:#3c423b}
.jfa-faq{margin:2.2em 0}
.jfa-faq h3{margin:1.4em 0 .4em;font-size:1.02rem;color:var(--j-ink)}
.jfa-faq h3::before{content:"Q · ";color:var(--j-orange);font-family:"DM Mono",monospace}
.jfa-faq p{font-size:.96rem;color:#4b514a}
.jfa-end{margin-top:2.4em;font-size:.95rem;color:var(--j-gray)}
.jfa-art-after{padding:calc(var(--sec-y) * .9) 0 calc(var(--sec-y) * 1.1)}
.jfa-art-cta{display:grid;grid-template-columns:1.4fr .6fr;gap:24px;align-items:center;background:var(--j-ink);border-radius:var(--radius,14px);padding:clamp(24px,4vw,44px);margin-bottom:calc(var(--sec-y) * .8)}
.jfa-art-cta .jfa-kicker{color:var(--j-orange)}
.jfa-art-cta h2{margin:6px 0 10px;font-size:clamp(1.25rem,2.2vw,1.7rem);color:#fff;line-height:1.25}
.jfa-art-cta p:not(.jfa-kicker){margin:0;font-size:.95rem;line-height:1.6;color:rgba(255,255,255,.75);max-width:52ch}
.jfa-btn-solid{justify-self:end;display:inline-block;background:var(--j-orange);color:#fff;font:500 .74rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase;padding:14px 22px;border-radius:999px;white-space:nowrap}
.jfa-btn-solid:hover{filter:brightness(1.08)}
.jfa-related-head{margin:0 0 18px;font:500 .68rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-gray)}
.jfa-hub-back{margin-top:34px}
@media(max-width:720px){
  .jfa-art-cta{grid-template-columns:1fr}
  .jfa-btn-solid{justify-self:start}
}

/* ═══════════ SIGNUP MODAL (60s delayed) ═══════════ */
.jfa-sg{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px}
.jfa-sg[hidden]{display:none}
.jfa-sg__scrim{position:absolute;inset:0;background:rgba(17,19,17,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:0;transition:opacity .28s ease}
.jfa-sg.is-open .jfa-sg__scrim{opacity:1}
.jfa-sg__card{position:relative;display:grid;grid-template-columns:.86fr 1.14fr;width:min(900px,100%);max-height:min(92vh,660px);
  background:var(--j-cream);color:var(--j-ink);border-radius:6px;overflow:hidden;box-shadow:0 34px 80px rgba(6,9,12,.42);
  opacity:0;transform:translateY(16px) scale(.985);transition:opacity .3s ease,transform .32s cubic-bezier(.2,.75,.25,1)}
.jfa-sg.is-open .jfa-sg__card{opacity:1;transform:none}
.jfa-sg__x{position:absolute;top:6px;right:12px;z-index:4;background:none;border:0;padding:6px 8px;cursor:pointer;
  font:400 1.55rem/1 Arial,sans-serif;color:var(--j-ink);opacity:.55;transition:.18s ease}
.jfa-sg__x:hover{opacity:1}
.jfa-sg__art{position:relative;background:#1b232a var(--art) center/cover no-repeat;min-height:360px}
.jfa-sg__art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,9,12,.1) 0%,rgba(6,9,12,.05) 42%,rgba(6,9,12,.72) 100%)}
.jfa-sg__artkick{position:absolute;z-index:2;left:22px;bottom:20px;right:18px;color:#fff;
  font:500 .62rem/1.5 "DM Mono",ui-monospace,monospace;letter-spacing:.13em;text-transform:uppercase;opacity:.92}
.jfa-sg__body{position:relative;padding:clamp(26px,3vw,38px);overflow-y:auto}
.jfa-sg__kicker{margin:0 0 12px;font:500 .68rem/1.3 "DM Mono",ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--j-ash)}
.jfa-sg__title{margin:0;font:800 clamp(1.72rem,2.9vw,2.3rem)/1.06 Manrope,Arial,sans-serif;letter-spacing:-.045em;text-transform:none}
.jfa-sg__title em{font-style:normal;color:var(--j-orange)}
.jfa-sg__lead{margin:12px 0 0;font-size:.94rem;line-height:1.62;color:#54594f;max-width:44ch}
.jfa-sg__form{margin-top:22px;display:grid;gap:11px}
.jfa-sg__field{display:block}
.jfa-sg__field>span{display:block;margin-bottom:6px;font:500 .64rem/1.3 "DM Mono",ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--j-ash)}
.jfa-sg__field>span i{font-style:normal;text-transform:none;letter-spacing:0}
.jfa-sg__form input[type=email],.jfa-sg__form input[type=text]{width:100%;padding:13px 14px;background:#fff;border:1px solid var(--j-line);border-radius:2px;
  font:400 .95rem/1.4 Manrope,Arial,sans-serif;color:var(--j-ink);transition:.18s ease}
.jfa-sg__form input::placeholder{color:#a2a69c}
.jfa-sg__form input:focus{outline:0;border-color:var(--j-ink);box-shadow:0 0 0 3px rgba(201,243,93,.5)}
.jfa-sg__hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.jfa-sg__chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}
.jfa-sg__chip{background:none;border:1px solid var(--j-line);border-radius:999px;padding:7px 14px;cursor:pointer;
  font:500 .66rem/1 "DM Mono",ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--j-ink);transition:.18s ease}
.jfa-sg__chip:hover{border-color:var(--j-ink)}
.jfa-sg__chip.is-on{background:var(--j-ink);border-color:var(--j-ink);color:#fff}
.jfa-sg__submit{margin-top:5px;width:100%;padding:15px 18px;border:0;border-radius:2px;cursor:pointer;background:var(--j-acid);color:var(--j-ink);
  font:500 .72rem/1 "DM Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;transition:.2s ease}
.jfa-sg__submit:hover{background:var(--j-orange);color:#fff;transform:translateY(-1px)}
.jfa-sg__submit:disabled,.jfa-sg__submit.is-busy{opacity:.62;transform:none;cursor:wait}
.jfa-sg__fine{margin:0;font-size:.72rem;line-height:1.5;color:var(--j-ash)}
.jfa-sg__msg{margin:0;font:500 .72rem/1.4 "DM Mono",ui-monospace,monospace;letter-spacing:.03em;min-height:0}
.jfa-sg__msg.is-err{color:#b3341a}
.jfa-sg__later{margin-top:14px;background:none;border:0;padding:0;cursor:pointer;color:var(--j-ash);
  font:500 .68rem/1 "DM Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px dashed var(--j-line);padding-bottom:4px;transition:.18s ease}
.jfa-sg__later:hover{color:var(--j-ink);border-color:var(--j-ink)}
.jfa-sg__alt{margin:14px 0 0;font-size:.78rem;color:var(--j-ash)}
.jfa-sg__alt a{color:var(--j-ink);border-bottom:1px solid var(--j-line);padding-bottom:2px;text-decoration:none}
.jfa-sg__alt a:hover{border-color:var(--j-ink)}
body.jfa-sg-open{overflow:hidden}
@media (max-width:720px){
  .jfa-sg{padding:10px}
  .jfa-sg__card{grid-template-columns:1fr;max-height:92vh}
  .jfa-sg__art{min-height:0;height:132px}
  .jfa-sg__artkick{left:16px;bottom:12px;font-size:.58rem}
  .jfa-sg__body{padding:22px 20px 26px}
  .jfa-sg__title{font-size:1.6rem}
  .jfa-sg__lead{font-size:.9rem}
}
@media (prefers-reduced-motion:reduce){
  .jfa-sg__scrim,.jfa-sg__card{transition:none}
  .jfa-sg__card{transform:none}
}

.jfa-sg__x{color:#fff;mix-blend-mode:difference}

/* ═══════════ P0 BRAND ALIGNMENT (2026-10-01) ═══════════ */

/* ---- HERO: brand creed line (Safe. Comfortable. Connected.) ---- */
.jfa-h-lead em{font-style:normal;color:#fff}
.jfa-h-creed{display:flex;flex-wrap:wrap;align-items:center;gap:0 13px;margin:22px 0 0;
  font:500 .76rem "DM Mono",monospace;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.jfa-h-creed i{width:5px;height:5px;border-radius:50%;background:var(--j-acid);display:inline-block}

/* ---- 4 PILLARS: three-word module (replaces the 5-card category grid) ---- */
.jfa-h-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.jfa-h-pillar{display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--j-line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}
.jfa-h-pillar:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(17,19,17,.1);border-color:var(--j-acid)}
.jfa-h-pillar-media{display:block;margin:0;padding:0}
.jfa-h-pillar-media img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;transition:transform .35s ease}
.jfa-h-pillar:hover .jfa-h-pillar-media img{transform:scale(1.04)}
.jfa-h-pillar-body{display:flex;flex-direction:column;flex:1;padding:20px 20px 22px}
.jfa-h-pillar-no{font:500 .64rem "DM Mono",monospace;letter-spacing:.12em;color:var(--j-orange)}
.jfa-h-pillar h3{margin:8px 0 4px;font:800 clamp(1.28rem,1.9vw,1.66rem)/1.08 Manrope,Arial,sans-serif;letter-spacing:-.035em;color:var(--j-ink)}
.jfa-h-pillar-sub{margin:0 0 12px;font:500 .6rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-ash)}
.jfa-h-pillar p{margin:0;font-size:.88rem;line-height:1.62;color:#565c54}
.jfa-h-pillar-link{margin-top:auto;padding-top:16px;font:500 .66rem "DM Mono",monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--j-ink)}
.jfa-h-pillar:hover .jfa-h-pillar-link{color:var(--j-orange)}

/* ---- small category / cross-link line under a grid ---- */
.jfa-h-catline{margin:22px 0 0;font:500 .68rem "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--j-ash)}
.jfa-h-catline a{color:var(--j-ash);text-decoration:none;border-bottom:1px solid var(--j-line)}
.jfa-h-catline a:hover{color:var(--j-ink);border-color:var(--j-acid)}
.jfa-h-catline b{font-weight:500}

/* ---- 6 B2B: full-screen section demoted to a narrow strip ---- */
.jfa-h-b2b{background:#20262a;border-top:1px solid rgba(255,255,255,.14)}
.jfa-h-b2b-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;
  padding-top:clamp(20px,2.6vw,30px);padding-bottom:clamp(20px,2.6vw,30px)}
.jfa-h-b2b-copy p{margin:6px 0 0;max-width:640px;font-size:.9rem;line-height:1.62;color:#b9bfb6}
.jfa-h-b2b .jfa-h-kicker{margin:0;color:var(--j-orange)}
.jfa-h-b2b .jfa-h-actions{margin:0}

/* ---- responsive ---- */
@media(max-width:980px){
  .jfa-h-pillars{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════════════
   SHOP 2.0 — compact cards, 4-up grid, brand-styled   (v1.5.0)
   ═══════════════════════════════════════════════════════════════ */
.jfa-shop-page{background:var(--j-cream)}
.jfa-shop-hero{padding:56px 0 8px;border-bottom:1px solid var(--j-line);background:#fff}
.jfa-shop-hero h1{font:800 clamp(2rem,4vw,2.9rem)/1.05 Manrope,Arial,sans-serif;letter-spacing:-.04em;margin:10px 0 12px}
.jfa-shop-hero h1 em{font-style:normal;color:var(--j-orange)}
.jfa-shop-lead{max-width:56ch;color:#51564f;font-size:1rem;line-height:1.6;margin:0 0 18px}
.jfa-shop-chips{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:22px}
.jfa-shop-chip{font:500 .72rem "DM Mono",monospace;letter-spacing:.04em;text-transform:uppercase;
  color:var(--j-ink);text-decoration:none;border:1px solid var(--j-line);background:#fff;
  border-radius:999px;padding:8px 16px;transition:border-color .15s,background .15s}
.jfa-shop-chip:hover{border-color:var(--j-ink)}
.jfa-shop-chip.is-active{background:var(--j-ink);color:#fff;border-color:var(--j-ink)}

/* compact grid — 4 columns desktop */
.jfa-shop-body{padding-top:26px;padding-bottom:64px}
.woocommerce ul.products{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
@media(max-width:1100px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:10px}}
.woocommerce ul.products li.product{padding:0 0 14px;border-radius:12px}
.woocommerce ul.products li.product a img{margin:0 0 12px;aspect-ratio:1/1}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font:700 .92rem/1.3 Manrope,Arial,sans-serif;padding:0 14px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:2.6em}
.woocommerce ul.products li.product .jfa-card-cat{
  display:block;font:500 .62rem "DM Mono",monospace;letter-spacing:.14em;text-transform:uppercase;
  color:var(--j-ash);padding:0 14px;margin:8px 0 0}
.woocommerce ul.products li.product .price{font:700 .95rem Manrope,Arial,sans-serif;padding:0 14px;margin:6px 0 10px}
.woocommerce ul.products li.product .button{
  display:block;margin:0 14px;padding:10px 12px;text-align:center;
  font:600 .68rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;
  background:var(--j-acid);color:var(--j-ink);border-radius:6px;border:1px solid transparent;transition:all .15s}
.woocommerce ul.products li.product .button:hover{background:var(--j-ink);color:#fff}
.woocommerce ul.products li.product .button.loading,.woocommerce ul.products li.product .button.added{opacity:.6}

/* result count / ordering inline row */
.jfa-shop-body .woocommerce-result-count{margin:0;float:left}
.jfa-shop-body .woocommerce-ordering{float:right;margin:0}
.jfa-shop-body .woocommerce-notices-wrapper{clear:both}
.jfa-shop-body::after{content:"";display:block;clear:both}

/* single product hero banner alignment */
.single-product .jfa-shop-body{padding-top:34px}

/* ═══════════════════════════════════════════════════════════════
   KITS 2.0 — item thumbnails, plan strip, featured dark pass (v1.5.0)
   ═══════════════════════════════════════════════════════════════ */
.jfa-box-item{grid-template-columns:72px 1fr auto;gap:0 16px;align-items:center;padding:12px 8px;border-radius:10px}
.jfa-box-item:hover{background:#fbfcf9}
.jfa-box-item-thumb{grid-row:1/3;width:72px}
.jfa-box-item-thumb img{display:block;width:72px;height:72px;object-fit:cover;border-radius:8px;border:1px solid var(--j-line);background:#fff}
.jfa-box-item-main{display:contents}
.jfa-box-item-name{align-self:end}
.jfa-box-item-why{align-self:start}
@media(max-width:640px){
  .jfa-box-item{grid-template-columns:56px 1fr auto;gap:0 10px}
  .jfa-box-item-thumb{width:56px}
  .jfa-box-item-thumb img{width:56px;height:56px}
}

/* coming-soon cards get an image band */
.jfa-soon-card{overflow:hidden;padding:0}
.jfa-soon-img{display:block;height:150px}
.jfa-soon-img img{width:100%;height:100%;object-fit:cover;display:block}
.jfa-soon-card .jfa-h-kicker{margin:18px 20px 0}
.jfa-soon-card h3{margin:6px 20px 8px}
.jfa-soon-card p{margin:0 20px}
.jfa-soon-card .jfa-soon-tag{margin:14px 20px 20px}

/* addon cards with thumbnail left */
.jfa-addon-card{flex-direction:row;gap:16px;align-items:center}
.jfa-addon-thumb{flex:0 0 96px}
.jfa-addon-thumb img{display:block;width:96px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--j-line);background:#f4f6f2}
.jfa-addon-body{display:flex;flex-direction:column;min-height:96px;flex:1}
.jfa-addon-body .jfa-addon-price{margin-top:auto;padding-top:10px}
@media(max-width:560px){.jfa-addon-card{flex-direction:column;align-items:stretch}.jfa-addon-thumb img{width:100%;height:150px}}

/* plan value strip */
.jfa-plan-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin:8px 0 34px;max-width:820px}
.jfa-plan-strip>div{padding:14px 18px;border-left:3px solid var(--j-acid);background:#fbfcf9;border-radius:0 10px 10px 0}
.jfa-plan-strip b{display:block;font:800 .95rem/1.2 Manrope,sans-serif;color:var(--j-ink);letter-spacing:-.01em}
.jfa-plan-strip span{display:block;margin-top:3px;font-size:.8rem;line-height:1.5;color:#6b7268}
@media(max-width:760px){.jfa-plan-strip{grid-template-columns:1fr}}

/* Season Pass featured card → dark, benefit-forward */
.jfa-plan-grid{max-width:960px}
.jfa-plan-grid .jfa-plan--featured{
  position:relative;background:var(--j-ink);border-color:var(--j-ink);color:#eef1ea}
.jfa-plan-grid .jfa-plan--featured .jfa-plan-name{color:#9aa397}
.jfa-plan-grid .jfa-plan--featured .jfa-plan-price{color:#c7cdbf}
.jfa-plan-grid .jfa-plan--featured .jfa-plan-price b{color:#fff;font-size:2.6rem}
.jfa-plan-grid .jfa-plan--featured .jfa-plan-note{color:#d9decf;font-size:.9rem}
.jfa-plan-grid .jfa-plan--featured ul{list-style:none;padding-left:0}
.jfa-plan-grid .jfa-plan--featured li{color:#eef1ea;padding-left:24px;position:relative}
.jfa-plan-grid .jfa-plan--featured li::before{content:"✓";position:absolute;left:0;color:var(--j-acid);font-weight:700}
.jfa-plan-grid .jfa-plan--featured .jfa-plan-fine{color:#9aa397}
.jfa-plan-grid .jfa-plan--featured .jfa-h-btn-ghost{border-color:#3c4038;color:#fff}
.jfa-plan-grid .jfa-plan--featured .jfa-h-btn-primary{align-self:stretch;text-align:center}
@media(max-width:760px){.jfa-plan-grid{grid-template-columns:1fr}}

/* ═══════════════════════════════════════════════════════════════
   LIFESTYLE FIELD JOURNAL + PARTNER PAGE  (v1.5.0)
   ═══════════════════════════════════════════════════════════════ */

/* ---- featured note ---- */
.jfa-life-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:0;background:#fff;border:1px solid var(--j-line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .2s,border-color .2s}
.jfa-life-feature:hover{box-shadow:0 20px 48px rgba(17,19,17,.10);border-color:var(--j-acid)}
.jfa-life-feature-media{display:block;min-height:300px}
.jfa-life-feature-media img{width:100%;height:100%;object-fit:cover;display:block}
.jfa-life-feature-body{display:flex;flex-direction:column;justify-content:center;padding:36px 34px}
.jfa-life-feature-body h2{font:800 clamp(1.4rem,2.4vw,2rem)/1.16 Manrope,sans-serif;letter-spacing:-.03em;margin:10px 0 12px}
.jfa-life-feature-body p{color:#5c6159;line-height:1.65;margin:0 0 14px}
.jfa-life-meta{font:500 .72rem "DM Mono",monospace;letter-spacing:.06em;color:var(--j-ash);margin-bottom:16px}
.jfa-life-feature .card-link{margin-top:auto}
@media(max-width:860px){.jfa-life-feature{grid-template-columns:1fr}.jfa-life-feature-media{min-height:220px;max-height:260px}}

/* ---- scenes grid ---- */
.jfa-life-scenes{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
@media(max-width:1000px){.jfa-life-scenes{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.jfa-life-scenes{grid-template-columns:1fr}}
.jfa-life-scene{position:relative;display:block;border-radius:14px;overflow:hidden;border:1px solid var(--j-line);aspect-ratio:4/3;text-decoration:none;background:var(--j-ink)}
.jfa-life-scene img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;opacity:.88}
.jfa-life-scene:hover img{transform:scale(1.05)}
.jfa-life-scene-body{position:absolute;left:0;right:0;bottom:0;padding:16px 16px 14px;background:linear-gradient(transparent,rgba(17,19,17,.82));color:#fff}
.jfa-life-scene-body h3{margin:0;font:800 1.05rem/1.2 Manrope,sans-serif;letter-spacing:-.02em;color:#fff}
.jfa-life-scene-n{font:500 .66rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#cfd5c8}

/* ---- rigs strip ---- */
.jfa-life-rigs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
@media(max-width:1000px){.jfa-life-rigs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.jfa-life-rigs{grid-template-columns:1fr}}
.jfa-life-rig{display:block;text-decoration:none;color:inherit;border:1px solid var(--j-line);border-radius:14px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}
.jfa-life-rig:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(17,19,17,.10);border-color:var(--j-acid)}
.jfa-life-rig-img{display:block;aspect-ratio:4/3;overflow:hidden}
.jfa-life-rig-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.jfa-life-rig:hover .jfa-life-rig-img img{transform:scale(1.04)}
.jfa-life-rig-body{display:block;padding:14px 16px 16px}
.jfa-life-rig-body h3{margin:0 0 3px;font:800 .98rem/1.2 Manrope,sans-serif;letter-spacing:-.02em;color:var(--j-ink)}
.jfa-life-rig-body span{font-size:.8rem;line-height:1.45;color:#6b7268}

/* ---- contribute ---- */
.jfa-contribute{background:#fff}
.jfa-contribute-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
@media(max-width:900px){.jfa-contribute-grid{grid-template-columns:1fr;gap:28px}}
.jfa-contribute-copy h2{margin:10px 0 14px}
.jfa-contribute-copy p{color:#5c6159;line-height:1.68;max-width:52ch}
.jfa-contribute-list{list-style:none;margin:18px 0;padding:0}
.jfa-contribute-list li{position:relative;padding:10px 0 10px 34px;font-size:.92rem;line-height:1.6;color:#4b514a;border-bottom:1px dashed var(--j-line)}
.jfa-contribute-list li::before{content:"✓";position:absolute;left:2px;top:10px;color:var(--j-ink);background:var(--j-acid);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}
.jfa-contribute-fine{font-size:.8rem;color:var(--j-gray)}
.jfa-contribute-fine a{color:var(--j-ink)}

/* ---- application form (partner + creator) ---- */
.jfa-apply-form{background:#fff;border:1px solid var(--j-line);border-radius:16px;padding:26px 24px}
.jfa-apply-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
@media(max-width:640px){.jfa-apply-grid{grid-template-columns:1fr}}
.jfa-field{display:flex;flex-direction:column}
.jfa-field--full{grid-column:1/-1}
.jfa-field label{font:500 .68rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-gray);margin-bottom:6px}
.jfa-field label span{text-transform:none;letter-spacing:0;color:#9aa397}
.jfa-field input,.jfa-field textarea{border:1px solid var(--j-line);border-radius:8px;padding:12px 14px;font:500 .92rem Manrope,sans-serif;color:var(--j-ink);background:#fbfcf9;transition:border-color .15s}
.jfa-field input:focus,.jfa-field textarea:focus{outline:none;border-color:var(--j-ink);background:#fff}
.jfa-radio-cards{display:flex;flex-wrap:wrap;gap:8px}
.jfa-radio-card{position:relative;cursor:pointer}
.jfa-radio-card input{position:absolute;opacity:0;inset:0}
.jfa-radio-card span{display:inline-block;padding:9px 16px;border:1px solid var(--j-line);border-radius:999px;font:500 .74rem "DM Mono",monospace;letter-spacing:.03em;color:var(--j-ink);background:#fff;transition:all .15s}
.jfa-radio-card input:checked+span{background:var(--j-ink);color:#fff;border-color:var(--j-ink)}
.jfa-radio-card input:focus-visible+span{outline:2px solid var(--j-acid)}
.jfa-hp{position:absolute!important;left:-9999px!important;height:0!important;width:0!important;opacity:0!important}
.jfa-apply-foot{display:flex;align-items:center;gap:16px;margin-top:18px}
.jfa-apply-status{margin:0;font-size:.85rem;color:var(--j-gray)}
.jfa-apply-status.ok{color:#2c6e3f;font-weight:600}
.jfa-apply-status.err{color:#c14b22;font-weight:600}

/* ---- partner page ---- */
.jfa-partner-hero h1 em{font-style:normal;color:var(--j-acid)}
.jfa-track-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
@media(max-width:960px){.jfa-track-grid{grid-template-columns:1fr}}
.jfa-track-card{position:relative;background:#fff;border:1px solid var(--j-line);border-radius:16px;padding:26px 24px;transition:transform .2s,box-shadow .2s,border-color .2s}
.jfa-track-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(17,19,17,.10);border-color:var(--j-acid)}
.jfa-track-num{display:inline-block;font:700 .72rem "DM Mono",monospace;letter-spacing:.14em;color:var(--j-ink);background:var(--j-acid);border-radius:6px;padding:4px 8px;margin-bottom:14px}
.jfa-track-card h3{margin:0 0 6px;font:800 1.18rem/1.25 Manrope,sans-serif;letter-spacing:-.02em}
.jfa-track-sub{margin:0 0 14px;font-size:.86rem;color:#6b7268;line-height:1.55}
.jfa-track-card ul{list-style:none;margin:0 0 12px;padding:0}
.jfa-track-card li{position:relative;padding:7px 0 7px 24px;font-size:.88rem;line-height:1.5;color:#4b514a;border-bottom:1px dashed var(--j-line)}
.jfa-track-card li::before{content:"→";position:absolute;left:0;color:var(--j-orange);font-weight:700}
.jfa-track-note{margin:12px 0 0;font-size:.76rem;line-height:1.55;color:var(--j-gray)}
.jfa-partner-b2b{margin-top:26px;padding:16px 20px;background:#fbfcf9;border:1px solid var(--j-line);border-radius:12px}
.jfa-partner-b2b p{margin:0;font-size:.9rem;color:#4b514a}
.jfa-partner-b2b a{color:var(--j-ink);font-weight:700}
.jfa-track-steps{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
@media(max-width:860px){.jfa-track-steps{grid-template-columns:1fr}}
.jfa-track-steps li{background:#fbfcf9;border:1px solid var(--j-line);border-radius:14px;padding:22px 20px}
.jfa-track-steps li>span{font:500 .66rem "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--j-orange)}
.jfa-track-steps h3{margin:8px 0 6px;font:800 1.02rem/1.3 Manrope,sans-serif;letter-spacing:-.02em}
.jfa-track-steps p{margin:0;font-size:.86rem;line-height:1.6;color:#5c6159}

/* journal grid reuse */
.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
@media(max-width:900px){.journal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.journal-grid{grid-template-columns:1fr}}

/* fix: item grid columns after thumb added */
.jfa-box-item-why{grid-column:2}
.jfa-box-item-price{grid-column:3}
@media(max-width:640px){.jfa-box-item-name{font-size:.86rem}}
/* ---- The Field Journal index (/guides/) ---- */
.jfa-journal-stats{display:flex;flex-wrap:wrap;gap:22px;margin-top:26px;font:500 .7rem "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.jfa-journal-stats b{color:var(--j-acid);font-weight:700}
.jfa-journal-chips{padding-bottom:30px}
.jfa-journal-chips em{font-style:normal;opacity:.55;margin-left:4px}
.jfa-journal-lead{display:grid;grid-template-columns:1.05fr .95fr;gap:0;margin-bottom:34px;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}
.jfa-journal-lead:hover{border-color:var(--j-acid);box-shadow:0 14px 34px rgba(17,19,17,.09)}
.jfa-journal-lead-media{display:block;overflow:hidden;min-height:280px}
.jfa-journal-lead-media img{width:100%;height:100%;object-fit:cover;display:block}
.jfa-journal-lead-body{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:clamp(24px,3.4vw,46px)}
.jfa-journal-lead-kicker{font:500 .64rem "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--j-orange)}
.jfa-journal-lead-title{font-family:Manrope,Inter,system-ui,sans-serif;font-weight:800;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.14;letter-spacing:-.02em;color:var(--j-ink)}
.jfa-journal-lead-ex{font-size:.98rem;line-height:1.65;color:#4c534b;max-width:52ch}
.jfa-journal-grid{margin-top:4px}
@media(max-width:900px){
  .jfa-journal-lead{grid-template-columns:1fr}
  .jfa-journal-lead-media{min-height:200px}
}
@media(max-width:640px){
  .jfa-journal-stats{gap:14px;font-size:.64rem}
}
/* ============================================================
   Pillar pages — Drive Together / Explore Together / Gear Lab
   ============================================================ */
.jfa-pil-page .jfa-pil-hero{min-height:clamp(380px,52vh,560px)}
.jfa-pil-page .jfa-pil-hero h1{font-family:Manrope,Inter,system-ui,sans-serif;font-weight:800;font-size:clamp(2.1rem,4.4vw,3.4rem);line-height:1.03;letter-spacing:-.03em;margin:16px 0 0}
.jfa-pil-page .jfa-pil-hero h1 em{font-style:normal;color:var(--j-acid)}
.jfa-pil-page .jfa-core-hero-lead{max-width:640px}

/* --- villains --- */
.jfa-pil-villains{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:8px}
.jfa-pil-villain{background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);padding:24px 22px 26px;display:flex;flex-direction:column}
.jfa-pil-villain:hover{border-color:var(--j-ink)}
.jfa-pil-v-n{font:700 .68rem "DM Mono",monospace;letter-spacing:.14em;color:var(--j-orange)}
.jfa-pil-villain h3{font-family:Manrope,Inter,sans-serif;font-weight:800;font-size:1.02rem;line-height:1.25;margin:12px 0 10px;color:var(--j-ink)}
.jfa-pil-villain p{margin:0;font-size:.88rem;line-height:1.6;color:#5c6159}

/* --- motif blocks --- */
.jfa-pil-motif{display:grid;grid-template-columns:1fr .82fr;gap:clamp(24px,3.4vw,52px);align-items:center;margin-bottom:34px}
.jfa-pil-motif--flip .jfa-pil-motif-copy{order:2}
.jfa-pil-motif--flip .jfa-pil-motif-fig{order:1}
.jfa-pil-motif-copy h2{margin:12px 0 14px}
.jfa-pil-motif-copy p{font-size:1rem;line-height:1.7;color:#4c534b;max-width:56ch;margin:0}
.jfa-pil-motif-copy strong{color:var(--j-ink)}
.jfa-pil-motif-fig{overflow:hidden;border-radius:var(--radius);border:1px solid var(--j-line)}
.jfa-pil-motif-fig img{width:100%;height:clamp(220px,26vw,320px);object-fit:cover;display:block}
.jfa-pil-scenechips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}

/* --- product blocks --- */
.jfa-pil-cats{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.jfa-pil-cat{background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);padding:22px}
.jfa-pil-cat-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}
.jfa-pil-cat-head h3{font-family:Manrope,Inter,sans-serif;font-weight:800;font-size:1.1rem;margin:0;color:var(--j-ink)}
.jfa-pil-cat-tag{font:500 .62rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--j-gray)}
.jfa-pil-prods{display:flex;flex-direction:column;gap:10px}
.jfa-pil-prod{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid transparent;border-radius:10px;transition:.18s}
.jfa-pil-prod:hover{background:var(--j-cream);border-color:var(--j-line)}
.jfa-pil-prod-img{flex:0 0 56px;height:56px;border-radius:8px;overflow:hidden;background:var(--j-cream);border:1px solid var(--j-line)}
.jfa-pil-prod-img img{width:100%;height:100%;object-fit:cover;display:block}
.jfa-pil-prod-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.jfa-pil-prod-name{font-size:.86rem;line-height:1.35;color:var(--j-ink);font-weight:600}
.jfa-pil-prod-price{font:600 .8rem "DM Mono",monospace;color:var(--j-orange)}
.jfa-pil-cat-more{display:inline-block;margin-top:16px;font:600 .72rem "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--j-line);padding-bottom:2px}
.jfa-pil-cat-more:hover{border-color:var(--j-ink)}

/* --- gear lab --- */
.jfa-glab-crit{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.jfa-glab-crit-row{display:flex;gap:14px;padding:20px;background:#fff;border:1px solid var(--j-line);border-radius:var(--radius)}
.jfa-glab-crit-n{font:700 .7rem "DM Mono",monospace;color:var(--j-orange);letter-spacing:.1em;flex:0 0 auto;padding-top:2px}
.jfa-glab-crit-row h3{font-family:Manrope,Inter,sans-serif;font-weight:800;font-size:.98rem;margin:0 0 8px;color:var(--j-ink)}
.jfa-glab-crit-row p{margin:0;font-size:.86rem;line-height:1.6;color:#5c6159}

.jfa-glab-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.jfa-glab-pick{background:#fff;border:1px solid var(--j-line);border-radius:var(--radius);padding:24px 22px;display:flex;flex-direction:column}
.jfa-glab-pick:hover{border-color:var(--j-acid)}
.jfa-glab-pick h3{font-family:Manrope,Inter,sans-serif;font-weight:800;font-size:1.06rem;line-height:1.25;margin:0 0 10px;color:var(--j-ink)}
.jfa-glab-pick p{margin:0 0 16px;font-size:.88rem;line-height:1.6;color:#5c6159}
.jfa-glab-pick-link{font-size:.86rem;font-weight:600;padding:8px 0;border-top:1px solid var(--j-line);color:var(--j-ink)}
.jfa-glab-pick-link:hover{color:var(--j-orange)}
.jfa-glab-pick-note{margin-top:auto;padding-top:14px;font:600 .7rem "DM Mono",monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--j-orange)}

.jfa-glab-table-wrap{overflow-x:auto;border:1px solid var(--j-line);border-radius:var(--radius);background:#fff}
.jfa-glab-table{width:100%;border-collapse:collapse;min-width:680px;font-size:.88rem}
.jfa-glab-table th,.jfa-glab-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--j-line);vertical-align:top}
.jfa-glab-table thead th{background:var(--j-cream);border-bottom:2px solid var(--j-line)}
.jfa-glab-table thead th:first-child{width:150px}
.jfa-glab-table tbody th{font:600 .8rem "DM Mono",monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--j-gray)}
.jfa-glab-table td{color:#4c534b;line-height:1.55}
.jfa-glab-th-img{display:block;width:100%;height:96px;border-radius:8px;overflow:hidden;background:#fff;border:1px solid var(--j-line);margin-bottom:10px}
.jfa-glab-th-img img{width:100%;height:100%;object-fit:cover;display:block}
.jfa-glab-th-name{display:block;font-family:Manrope,Inter,sans-serif;font-weight:700;font-size:.9rem;line-height:1.3;color:var(--j-ink)}
.jfa-glab-th-name:hover{color:var(--j-orange)}
.jfa-glab-th-price{display:block;margin-top:6px;font:600 .84rem "DM Mono",monospace;color:var(--j-orange)}
.jfa-glab-fine{margin-top:14px;font-size:.78rem;color:var(--j-gray);max-width:70ch;line-height:1.6}

.jfa-glab-faq{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--j-line)}
.jfa-glab-faq-item{border-bottom:1px solid var(--j-line);background:#fff}
.jfa-glab-faq-item summary{cursor:pointer;padding:18px 4px;font-family:Manrope,Inter,sans-serif;font-weight:700;font-size:1rem;color:var(--j-ink);list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.jfa-glab-faq-item summary::-webkit-details-marker{display:none}
.jfa-glab-faq-item summary:after{content:"+";font:400 1.4rem/1 "DM Mono",monospace;color:var(--j-orange)}
.jfa-glab-faq-item[open] summary:after{content:"–"}
.jfa-glab-faq-item p{margin:0;padding:0 4px 20px;font-size:.92rem;line-height:1.7;color:#4c534b;max-width:74ch}

@media(max-width:980px){
  .jfa-pil-villains{grid-template-columns:repeat(2,1fr)}
  .jfa-glab-picks{grid-template-columns:1fr}
  .jfa-pil-cats{grid-template-columns:1fr}
}
@media(max-width:820px){
  .jfa-pil-motif,.jfa-pil-motif--flip{grid-template-columns:1fr}
  .jfa-pil-motif--flip .jfa-pil-motif-copy{order:1}
  .jfa-pil-motif--flip .jfa-pil-motif-fig{order:2}
}
@media(max-width:600px){
  .jfa-pil-villains{grid-template-columns:1fr}
  .jfa-pil-motif-fig img{height:200px}
}

/* pillar hero: keep the ghost button legible on busy photos */
.jfa-pil-hero .jfa-h-btn-ghost{background:rgba(17,19,17,.55);backdrop-filter:blur(3px);border-color:rgba(255,255,255,.45)}
