/*
Theme Name: World Class Athlete
Theme URI: https://wcaclothing.com
Description: Child theme of Storefront for World Class Athlete, official brand system (Jet Black / Championship Crimson / Charcoal / Platinum), Bebas Neue + Inter type.
Author: World Class Athlete
Template: storefront
Version: 1.0.0
Text Domain: wca-child
*/

@font-face{
  font-family:'Bebas Neue';
  src:url('fonts/bebas-neue.woff2') format('woff2');
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Inter';
  src:url('fonts/inter.woff2') format('woff2');
  font-weight:100 900; font-style:normal; font-display:swap;
}

:root{
  --wca-black:#000000;
  --wca-white:#ffffff;
  --wca-crimson:#c8102e;
  --wca-crimson-hover:#a60d24;
  --wca-charcoal:#2d2d2d;
  --wca-platinum:#f3f3f3;
  --wca-gold:#c9a44c;
}

body,
.woocommerce,
input,
textarea,
select,
button{
  font-family:'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  color:var(--wca-black);
}

h1, h2, h3, h4, h5, h6,
.site-title,
.storefront-handheld-footer-bar,
.woocommerce ul.products li.product .price,
.entry-title{
  font-family:'Bebas Neue', 'Inter', sans-serif;
  font-weight:400;
  letter-spacing:0.015em;
  text-transform:uppercase;
}

/* ---------- Header / Nav (fixed brand rule: always black, not theme-adaptive) ---------- */
#masthead.site-header,
#masthead.site-header .storefront-primary-navigation,
.site-header-cart{
  background-color:var(--wca-black);
}
#masthead .site-branding .site-title a,
#masthead .site-branding .site-title a:hover{
  color:var(--wca-white);
}
#site-navigation ul.menu > li > a,
.main-navigation ul.menu > li > a,
.site-header-cart a{
  color:var(--wca-white);
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  font-size:13px;
}
#site-navigation ul.menu > li > a:hover,
.main-navigation ul.menu > li > a:hover,
.site-header-cart a:hover,
#site-navigation ul.menu > li.current-menu-item > a{
  color:var(--wca-crimson);
}
.main-navigation ul.sub-menu{
  background-color:var(--wca-black);
  border-color:var(--wca-charcoal);
}
.main-navigation ul.sub-menu li a{
  color:var(--wca-white);
}

/* ---------- Buttons ---------- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce a.checkout-button,
.woocommerce-page a.button.wc-forward{
  background-color:var(--wca-crimson);
  color:var(--wca-white);
  border:1.5px solid var(--wca-crimson);
  border-radius:3px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  font-size:13px;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce a.checkout-button:hover{
  background-color:var(--wca-crimson-hover);
  border-color:var(--wca-crimson-hover);
  color:var(--wca-white);
}
.woocommerce a.button.alt,
.woocommerce-page a.added_to_cart{
  background-color:var(--wca-white);
  color:var(--wca-black);
  border:1.5px solid var(--wca-black);
}
.woocommerce a.button.alt:hover{
  background-color:var(--wca-black);
  color:var(--wca-white);
}

/* ---------- Product cards ---------- */
.woocommerce ul.products li.product .price{
  color:var(--wca-charcoal);
  font-family:'Inter', sans-serif;
  text-transform:none;
  letter-spacing:0;
  font-weight:700;
}
.woocommerce ul.products li.product .price ins{
  color:var(--wca-crimson);
  text-decoration:none;
}
.star-rating span::before,
.woocommerce .star-rating::before{
  color:var(--wca-gold);
}
.woocommerce span.onsale{
  background-color:var(--wca-crimson);
  color:var(--wca-white);
  font-family:'Inter', sans-serif;
  text-transform:uppercase;
  letter-spacing:0.04em;
  font-weight:700;
}

/* ---------- Footer (Charcoal, not Jet Black, so black doesn't bookend the whole page) ---------- */
#colophon.site-footer{
  background-color:var(--wca-charcoal);
  color:var(--wca-white);
}
#colophon.site-footer a{
  color:var(--wca-white);
}
#colophon.site-footer a:hover{
  color:var(--wca-crimson);
}
#colophon .site-info{
  background-color:var(--wca-charcoal);
  border-top:1px solid #3d3d3d;
  color:#c4c4c4;
}

/* ---------- Misc ---------- */
a{
  color:var(--wca-crimson);
}
::selection{
  background-color:var(--wca-crimson);
  color:var(--wca-white);
}


/* ---------- Homepage (front-page.php) ---------- */
.wca-hero{
	  background-color:var(--wca-black);
	  padding:72px 24px;
}
.wca-hero__inner{
	  max-width:640px;
	  margin:0 auto;
}
.wca-hero__kicker{
	  display:block;
	  color:var(--wca-crimson);
	  font-size:11px;
	  font-weight:700;
	  text-transform:uppercase;
	  letter-spacing:0.12em;
	  margin-bottom:16px;
}
.wca-hero__title{
	  font-family:'Bebas Neue', sans-serif;
	  font-weight:400;
	  text-transform:uppercase;
	  color:var(--wca-white);
	  font-size:clamp(34px,6vw,58px);
	  line-height:1.0;
	  margin:0 0 20px;
}
.wca-hero__title em{
	  font-style:normal;
	  color:var(--wca-crimson);
}
.wca-hero__copy{
	  color:#dcdcdc;
	  font-size:15px;
	  line-height:1.6;
	  max-width:44ch;
	  margin:0 0 26px;
}

.wca-stats{
	  background-color:var(--wca-platinum);
	  padding:22px 24px;
}
.wca-stats__inner{
	  max-width:1000px;
	  margin:0 auto;
	  display:flex;
	  flex-wrap:wrap;
	  gap:16px;
	  justify-content:space-between;
}
.wca-stat{
	  display:flex;
	  align-items:baseline;
	  gap:8px;
}
.wca-stat .n{
	  font-weight:700;
	  font-size:18px;
}
.wca-stat .t{
	  font-size:10.5px;
	  color:var(--wca-charcoal);
	  text-transform:uppercase;
	  letter-spacing:0.06em;
}

.wca-cats{
	  max-width:1100px;
	  margin:0 auto;
	  padding:48px 24px 8px;
	  display:grid;
	  grid-template-columns:repeat(4,1fr);
	  gap:14px;
}
.wca-cat{
	  position:relative;
	  aspect-ratio:3/4;
	  border-radius:4px;
	  overflow:hidden;
	  display:flex;
	  align-items:flex-end;
	  padding:16px;
	  text-decoration:none;
}
.wca-cat span{
	  position:relative;
	  z-index:1;
	  color:#fff;
	  font-weight:700;
	  text-transform:uppercase;
	  letter-spacing:0.02em;
	  font-size:14px;
}
.wca-cat::after{
	  content:"";
	  position:absolute;
	  inset:0;
	  background:linear-gradient(0deg, rgba(0,0,0,.6), transparent 55%);
}
.wca-cat::before{
	  content:"";
	  position:absolute;
	  inset:0;
}
.wca-cat--men::before{
	  background:radial-gradient(125% 105% at 15% 0%, var(--wca-crimson), #000 65%);
}
.wca-cat--women::before{
	  background:radial-gradient(125% 105% at 85% 100%, #000, var(--wca-crimson) 85%);
}
.wca-cat--training::before{
	  background:linear-gradient(150deg,#3a3a3a,#000);
}
.wca-cat--outerwear::before{
	  background:linear-gradient(150deg,#000,var(--wca-crimson) 150%);
}

.wca-section-head{
	  max-width:1100px;
	  margin:56px auto 20px;
	  padding:0 24px;
	  display:flex;
	  justify-content:space-between;
	  align-items:flex-end;
}
.wca-section-head h2{
	  font-family:'Bebas Neue', sans-serif;
	  font-weight:400;
	  font-size:26px;
	  margin:0;
	  text-transform:none;
}
.wca-section-head a{
	  font-size:11.5px;
	  font-weight:700;
	  text-transform:uppercase;
	  letter-spacing:0.05em;
	  color:var(--wca-crimson);
	  text-decoration:none;
}

.wca-products{
	  max-width:1100px;
	  margin:0 auto;
	  padding:0 24px 60px;
	  display:grid;
	  grid-template-columns:repeat(4,1fr);
	  gap:20px;
}
.wca-product{
	  text-decoration:none;
	  color:var(--wca-black);
}
.wca-product__art{
	  aspect-ratio:4/5;
	  border-radius:4px;
	  overflow:hidden;
	  margin-bottom:12px;
	  background:repeating-linear-gradient(70deg,#ececec 0 3px,#f7f7f7 3px 40px);
	  border:1px solid var(--wca-platinum);
}
.wca-product__art img{
	  width:100%;
	  height:100%;
	  object-fit:cover;
	  display:block;
}
.wca-product__name{
	  font-size:13px;
	  font-weight:600;
	  margin-bottom:4px;
}
.wca-product__price{
	  font-size:12.5px;
	  color:var(--wca-charcoal);
}

.wca-statement{
	  background-color:var(--wca-platinum);
	  padding:56px 24px;
}
.wca-statement__inner{
	  max-width:760px;
	  margin:0 auto;
}
.wca-gold-rule{
	  display:block;
	  width:36px;
	  height:3px;
	  background-color:var(--wca-gold);
	  border-radius:2px;
	  margin-bottom:20px;
}
.wca-statement blockquote{
	  margin:0 0 16px;
	  font-family:'Bebas Neue', sans-serif;
	  font-weight:400;
	  font-size:clamp(24px,3.4vw,32px);
	  line-height:1.15;
}
.wca-statement p{
	  margin:0;
	  color:var(--wca-charcoal);
	  font-size:14px;
	  max-width:56ch;
	  line-height:1.6;
}

@media (max-width:800px){
	  .wca-cats, .wca-products{
		      grid-template-columns:repeat(2,1fr);
	}
}


/* ---------- Nav link visibility fix ---------- */
.site-header nav a,
.site-header .primary-navigation a,
.site-header .main-navigation a,
#site-navigation a,
.site-header-cart a,
.site-header-cart .amount{
	  color:#ffffff !important;
	  opacity:1 !important;
}
.site-header nav a:hover,
.site-header .primary-navigation a:hover,
.site-header .main-navigation a:hover,
#site-navigation a:hover,
.site-header-cart a:hover{
	  color:var(--wca-crimson) !important;
}


/* ---------- Hero video ---------- */
.wca-hero{
	  position:relative;
	  overflow:hidden;
	  min-height:min(86vh, 640px);
	  padding:0;
}
.wca-hero__video{
	  position:absolute;
	  inset:0;
	  width:100%;
	  height:100%;
	  object-fit:cover;
	  z-index:0;
}
.wca-hero__scrim{
	  position:absolute;
	  inset:0;
	  z-index:1;
	  background:linear-gradient(100deg, rgba(0,0,0,.8) 0%, rgba(0,0,0,.4) 40%, rgba(0,0,0,.05) 70%), linear-gradient(0deg, rgba(0,0,0,.5) 0%, transparent 38%);
}
.wca-hero__inner{
	  position:relative;
	  z-index:2;
	  margin:0;
	  min-height:inherit;
	  display:flex;
	  flex-direction:column;
	  justify-content:flex-end;
	  padding:min(9vh,90px) 24px 60px;
}
