/* V278 — Footer/nav clarity pass. Finished-product front-end only. */
.fts-footer-clean.fts-footer-v278{
  margin-top:clamp(34px,5vw,70px)!important;
  border-top:1px solid var(--line)!important;
  background:linear-gradient(180deg,rgba(255,252,242,.025),rgba(255,252,242,.055))!important;
}
html[data-theme="light"] .fts-footer-clean.fts-footer-v278{
  background:linear-gradient(180deg,rgba(17,16,14,.025),rgba(17,16,14,.055))!important;
}
.fts-footer-v278 .footer-clean-wrap{
  width:min(1220px,calc(100vw - 44px))!important;
  display:grid!important;
  grid-template-columns:minmax(260px,360px) minmax(0,1fr)!important;
  gap:clamp(24px,4vw,54px)!important;
  align-items:start!important;
  padding:clamp(30px,4vw,48px) 0 22px!important;
}
.fts-footer-v278 .footer-main{min-width:0!important;}
.fts-footer-v278 .footer-brand{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-wrap:nowrap!important;
  font-size:clamp(29px,3.1vw,46px)!important;
  line-height:.9!important;
  letter-spacing:.075em!important;
  transform:translateX(-.01em)!important;
}
.fts-footer-v278 .footer-main .small{
  margin-top:14px!important;
  font-size:11px!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  color:var(--muted)!important;
}
.fts-footer-v278 .footer-nav-v278{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(16px,2.3vw,30px)!important;
  align-items:start!important;
}
.fts-footer-v278 .footer-nav-v278 div{
  min-width:0!important;
  display:grid!important;
  gap:8px!important;
  align-content:start!important;
}
.fts-footer-v278 .footer-nav-v278 span{
  margin-bottom:3px!important;
  font-size:10px!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:var(--ink)!important;
  opacity:.92!important;
}
.fts-footer-v278 .footer-nav-v278 a,
.fts-footer-v278 .footer-legal-v278 a{
  min-height:0!important;
  padding:0!important;
  border:0!important;
  display:inline!important;
  width:max-content!important;
  max-width:100%!important;
  white-space:normal!important;
  font-size:11px!important;
  line-height:1.35!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  color:var(--muted)!important;
  text-decoration:none!important;
}
.fts-footer-v278 .footer-nav-v278 a:hover,
.fts-footer-v278 .footer-nav-v278 a:focus,
.fts-footer-v278 .footer-legal-v278 a:hover,
.fts-footer-v278 .footer-legal-v278 a:focus{
  color:var(--ink)!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}
.fts-footer-v278 .footer-legal-v278{
  width:min(1220px,calc(100vw - 44px))!important;
  margin:0 auto!important;
  padding:16px 0 28px!important;
  border-top:1px solid var(--line)!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px 18px!important;
  justify-content:flex-start!important;
  align-items:center!important;
}
body[data-section="basket"] .fts-footer-v278 .footer-nav-v278,
body.basket-page .fts-footer-v278 .footer-nav-v278,
body.basket-v199 .fts-footer-v278 .footer-nav-v278{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
@media (max-width:980px){
  .fts-footer-v278 .footer-clean-wrap{grid-template-columns:1fr!important;gap:24px!important;}
  .fts-footer-v278 .footer-nav-v278{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body[data-section="basket"] .fts-footer-v278 .footer-nav-v278,
  body.basket-page .fts-footer-v278 .footer-nav-v278,
  body.basket-v199 .fts-footer-v278 .footer-nav-v278{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:560px){
  .fts-footer-v278 .footer-clean-wrap,
  .fts-footer-v278 .footer-legal-v278{width:min(100%,calc(100vw - 26px))!important;}
  .fts-footer-v278 .footer-brand{font-size:clamp(26px,8.1vw,35px)!important;letter-spacing:.055em!important;}
  .fts-footer-v278 .footer-nav-v278{grid-template-columns:1fr!important;gap:18px!important;}
  body[data-section="basket"] .fts-footer-v278 .footer-nav-v278,
  body.basket-page .fts-footer-v278 .footer-nav-v278,
  body.basket-v199 .fts-footer-v278 .footer-nav-v278{grid-template-columns:1fr!important;}
  .fts-footer-v278 .footer-legal-v278{gap:9px 13px!important;}
}
@media (max-width:380px){
  .fts-footer-v278 .footer-brand{font-size:24px!important;letter-spacing:.045em!important;}
}


/* V283 merged corrections — no extra stylesheet layer.
   Keeps footer black and landing locked while Home is reverted to the stable original layout. */
.site-footer,
.site-footer.fts-footer-clean,
.fts-footer-clean,
.fts-footer-v278{
  background:#050505!important;
  color:#f2efe8!important;
  border-top:1px solid rgba(242,239,232,.14)!important;
  box-shadow:none!important;
}
.site-footer .footer-clean-wrap,
.site-footer .footer-legal-line,
.footer-clean-wrap,
.footer-legal-line{background:transparent!important;}
.site-footer .footer-brand,
.site-footer .footer-clean-nav span,
.site-footer .footer-main .small,
.site-footer .footer-clean-nav a,
.site-footer .footer-legal-line a{color:#f2efe8!important;}
.site-footer .footer-main .small,
.site-footer .footer-clean-nav a,
.site-footer .footer-legal-line a{opacity:.72;}
.site-footer .footer-clean-nav a:hover,
.site-footer .footer-clean-nav a:focus,
.site-footer .footer-legal-line a:hover,
.site-footer .footer-legal-line a:focus{opacity:1;color:#f2efe8!important;border-color:rgba(242,239,232,.34)!important;}
html[data-theme="light"] .site-footer,
html[data-theme="light"] .site-footer.fts-footer-clean,
html[data-theme="light"] .fts-footer-clean,
html[data-theme="light"] .fts-footer-v278{background:#050505!important;color:#f2efe8!important;border-top-color:rgba(242,239,232,.14)!important;}
html[data-theme="light"] .site-footer .footer-brand,
html[data-theme="light"] .site-footer .footer-clean-nav span,
html[data-theme="light"] .site-footer .footer-main .small,
html[data-theme="light"] .site-footer .footer-clean-nav a,
html[data-theme="light"] .site-footer .footer-legal-line a{color:#f2efe8!important;}

/* Locked landing page: no public route navigation before password entry. */
body.landing .site-header .main-nav,
body.landing .site-header .theme-toggle,
body.landing .site-header .site-cart-shortcut,
body.landing .site-header .header-utility,
body.landing .site-footer{display:none!important;}
body.landing .site-header .nav-wrap{grid-template-columns:1fr!important;}
body.landing .landing-footer-locked{
  position:fixed;
  left:clamp(18px,4vw,64px);
  right:clamp(18px,4vw,64px);
  bottom:clamp(14px,3vw,32px);
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding-top:16px;
  border-top:1px solid rgba(244,240,232,.14);
  color:rgba(244,240,232,.58);
  pointer-events:none;
}
body.landing .landing-footer-mark{
  font-family:var(--display);
  font-size:clamp(22px,2.2vw,38px);
  line-height:.85;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#f4f0e8;
}
body.landing .landing-footer-meta{
  align-self:end;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
@media(max-width:640px){body.landing .landing-footer-locked{position:static;margin:20px;padding:14px 0 24px;}}


/* V309 GLOBAL REFINEMENT SYSTEM PASS
   - readable display typography across large titles
   - cream/stone accent system instead of green/gold tech tone
   - less dead spacing and slightly softer editorial surfaces
   - footer consistency guardrails
   This is merged into existing source files, not added as a new stylesheet layer. */
:root{
  --accent:#e9e2d4;
  --accent2:#fff8ed;
  --rust:#8c705a;
  --warn:#d8c6aa;
  --cream-signal:rgba(247,244,238,.82);
  --cream-signal-soft:rgba(247,244,238,.12);
}
html[data-theme="light"]{
  --accent:#6f665c;
  --accent2:#11100e;
  --rust:#6b5c50;
  --warn:#8a7a68;
}
body{
  letter-spacing:normal;
}
h1,h2,h3,.display,
[class*="title"],
[class*="hero"] h1,
[class*="hero"] h2{
  text-rendering:geometricPrecision;
  text-wrap:balance;
}
h1,
.landing-title,
.home-v299-hero-copy h1,
.arcade-feature h1,
.stash-feature h1,
.crate-v211-copy h1,
body[data-section="profile"] h1,
body[data-section="checkout"] .checkout-launch-hero h1,
body[data-section="checkout"] .checkout-hero h1{
  line-height:.90!important;
  letter-spacing:-.006em!important;
  word-spacing:.02em!important;
}
h1 span,
.home-v299-hero-copy h1 span,
.arcade-feature h1 span{
  letter-spacing:0!important;
}
h2,
.home-v299-section-copy h2,
.home-v299-store-copy h2,
.home-v299-community-copy h2,
.home-v299-post-copy h2,
body[data-section="shop"] #storefront .section-head h2,
body[data-section="basket"] .checkout-upsell h2{
  line-height:.94!important;
  letter-spacing:.002em!important;
}
h3,
.card-link b,
.home-v299-route-deck b,
.home-v299-shelf-list b,
.home-v299-community-links b,
.arcade-nav-tile b,
.cabinet-card h3,
.product-card h3,
.store-category summary{
  line-height:.98!important;
  letter-spacing:.006em!important;
}
.kicker,.tag,.small,
.main-nav a,
.btn,.submit,
.form-line button,
.status-pill,
.footer-nav-v278 a,
.footer-legal-v278 a{
  letter-spacing:.13em!important;
}
.kicker:before{color:var(--accent)!important;}
.tag,.card-link span,.form-msg,.box-msg,
.store-category summary:after,.filter-row button.active,
.home-v299-kicker,
.home-v299-start-routes span,
.home-v299-route-deck span,
.home-v299-shelf-list span,
.home-v299-community-links span,
.home-v299-post-strip span{
  color:var(--cream-signal)!important;
}
html[data-theme="light"] .tag,
html[data-theme="light"] .card-link span,
html[data-theme="light"] .form-msg,
html[data-theme="light"] .box-msg,
html[data-theme="light"] .store-category summary:after,
html[data-theme="light"] .filter-row button.active{
  color:#6f665c!important;
}
.btn:hover,.btn:focus,.submit:hover,.submit:focus,
.card:hover,.panel:hover,.card-link:hover,
.site-cart-shortcut:hover,.site-cart-shortcut:focus,
.theme-toggle:hover,.theme-toggle:focus{
  border-color:rgba(247,244,238,.46)!important;
  background:rgba(247,244,238,.075)!important;
}
.btn.primary:hover,.btn.primary:focus,.submit:hover,.submit:focus{
  background:#f7f4ee!important;
  color:#080807!important;
}
html[data-theme="light"] .btn:hover,
html[data-theme="light"] .btn:focus,
html[data-theme="light"] .submit:hover,
html[data-theme="light"] .submit:focus,
html[data-theme="light"] .card:hover,
html[data-theme="light"] .panel:hover{
  border-color:rgba(17,16,14,.44)!important;
  background:rgba(17,16,14,.055)!important;
}
.page{padding-top:clamp(22px,2.6vw,32px)!important;padding-bottom:clamp(38px,4vw,56px)!important;}
.section{margin-top:clamp(18px,2.4vw,30px)!important;}
.hero-card,.panel,.card,.card-link,
.store-category,.product-card,
.commerce-confidence-strip a,.checkout-commercial-strip a{
  box-shadow:none!important;
}
.hero-card,.panel,.card,.card-link,
.store-category,.product-card{
  border-color:rgba(247,244,238,.12)!important;
}
html[data-theme="light"] .hero-card,
html[data-theme="light"] .panel,
html[data-theme="light"] .card,
html[data-theme="light"] .card-link,
html[data-theme="light"] .store-category,
html[data-theme="light"] .product-card{
  border-color:rgba(17,16,14,.14)!important;
}
/* Home spacing/readability refinements */
.home-v299-hero{margin-top:18px!important;}
.home-v299-hero-grid{min-height:min(650px,calc(100svh - 122px))!important;}
.home-v299-hero-copy h1{font-size:clamp(72px,7.35vw,116px)!important;}
.home-v299-start h2{font-size:clamp(42px,3.55vw,62px)!important;line-height:.92!important;letter-spacing:.002em!important;}
.home-v299-route-deck a{min-height:78px!important;padding:14px 15px 12px!important;}
.home-v299-layers{margin-top:48px!important;}
.home-v299-section-copy{padding-top:26px!important;margin-bottom:20px!important;}
.home-v299-layer{min-height:330px!important;}
.home-v299-store,.home-v299-community{margin-top:54px!important;}
.home-v299-community-copy{min-height:340px!important;}
.home-v299-community-links a{min-height:166px!important;}
.home-v299-post{margin-top:56px!important;margin-bottom:42px!important;padding:clamp(26px,3.2vw,48px) 0!important;}
/* Store global refinement: less hero framing, calmer commercial signals */
body[data-section="shop"] .shop-hero{
  border-color:transparent!important;
  background:linear-gradient(135deg,rgba(247,244,238,.030),rgba(247,244,238,.006))!important;
  box-shadow:none!important;
}
body[data-section="shop"] .shop-hero h1{line-height:.92!important;letter-spacing:-.002em!important;}
.commerce-confidence-strip,.checkout-commercial-strip{
  background:transparent!important;
  border-color:rgba(247,244,238,.10)!important;
  gap:8px!important;
}
.commerce-confidence-strip a,.checkout-commercial-strip a{
  min-height:86px!important;
  border:1px solid rgba(247,244,238,.105)!important;
  background:rgba(247,244,238,.018)!important;
}
.commerce-confidence-strip b,.checkout-commercial-strip b{font-size:clamp(22px,2.05vw,31px)!important;letter-spacing:.004em!important;}
body[data-section="shop"] .store-reality-note-v269{
  display:none!important;
}
/* Basket/checkout readability guardrails */
body[data-section="basket"] .basket-hero,
body[data-section="basket"] .cart-shell,
body[data-section="checkout"] .checkout-shell,
body[data-section="checkout"] .launch-checkout-shell{
  gap:14px!important;
}
body[data-section="basket"] .basket-title h1,
body[data-section="basket"] .basket-hero h1{letter-spacing:.002em!important;line-height:.96!important;}
/* Arcade/public game language and dashboard readability */
body[data-section="arcade"]{--arcade-green:#e9e2d4!important;--arcade-gold:#d8c6aa!important;--arcade-blue:#d8d2c7!important;--arcade-pink:#f2efe8!important;--arcade-glow:rgba(247,244,238,.18)!important;}
body[data-section="arcade"] .arcade-feature h1{font-size:clamp(62px,7.5vw,118px)!important;line-height:.90!important;}
body[data-section="arcade"] .arcade-feature .lead{font-size:clamp(16px,1.3vw,22px)!important;line-height:1.55!important;}
body[data-section="arcade"] .arcade-nav-tile span,
body[data-section="arcade"] .score-tile span,
body[data-section="arcade"] .arcade-feature .kicker{color:rgba(247,244,238,.76)!important;}
body[data-section="arcade"] .arcade-feature:after{filter:grayscale(.18) saturate(.65)!important;}
/* Street ID dashboard title guardrails */
body[data-section="profile"] h1{font-size:clamp(64px,7.2vw,118px)!important;}
body[data-section="profile"] .lead{max-width:780px;}
/* Footer consistency: one footer language everywhere, including basket. */
.site-footer,.fts-footer-v278,.site-footer.fts-footer-clean{
  background:#050505!important;
  border-top:1px solid rgba(247,244,238,.12)!important;
  color:#f7f4ee!important;
}
.site-footer *{box-sizing:border-box;}
.fts-footer-v278 .footer-brand{letter-spacing:.075em!important;line-height:.96!important;white-space:normal!important;}
.fts-footer-v278 .footer-nav-v278 a,.fts-footer-v278 .footer-legal-v278 a{border:0!important;}
@media(max-width:900px){
  h1,.home-v299-hero-copy h1,.arcade-feature h1,body[data-section="profile"] h1{line-height:.92!important;letter-spacing:0!important;}
  .home-v299-route-deck{position:relative!important;top:auto!important;}
  .home-v299-layer-grid,.home-v299-community-links{gap:10px!important;}
  .commerce-confidence-strip,.checkout-commercial-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:640px){
  h1,.home-v299-hero-copy h1,.arcade-feature h1,body[data-section="profile"] h1{font-size:clamp(46px,13.4vw,78px)!important;line-height:.94!important;}
  h2,.home-v299-section-copy h2,.home-v299-store-copy h2,.home-v299-community-copy h2,.home-v299-post-copy h2{font-size:clamp(34px,10vw,58px)!important;line-height:.96!important;}
  .home-v299-hero-copy{min-height:370px!important;}
  .home-v299-layer{min-height:300px!important;}
  .home-v299-community-copy{min-height:auto!important;}
  .commerce-confidence-strip,.checkout-commercial-strip{grid-template-columns:1fr!important;}
}
