/*
Theme Name: Elessi Theme Child
Template: elessi-theme
Description: SCN auto-generated child theme for Elessi Theme — CAMISETAFUTBOLSHOP edition
Version: 2.0.0
*/

/* === SCN Design Tokens ===================================================== */
:root{
  --scn-ink:#0B1220;
  --scn-ink-soft:#1B2230;
  --scn-primary:#E30613;
  --scn-primary-600:#B80410;
  --scn-gold:#F4B400;
  --scn-bg:#F7F7F8;
  --scn-surface:#FFFFFF;
  --scn-muted:#6B7280;
  --scn-border:#E5E7EB;
  --scn-border-soft:#F1F2F4;
  --scn-success:#0E8A4A;
  --scn-radius:10px;
  --scn-radius-lg:18px;
  --scn-shadow-sm:0 1px 2px rgba(11,18,32,.06);
  --scn-shadow:0 8px 24px rgba(11,18,32,.08);
  --scn-shadow-lg:0 18px 48px rgba(11,18,32,.14);
  --scn-font-display:"Bebas Neue","Oswald","Montserrat",system-ui,sans-serif;
  --scn-font-head:"Montserrat","Helvetica Neue",Arial,sans-serif;
  --scn-font-body:"Inter","Helvetica Neue",Arial,sans-serif;
  --scn-container:1280px;
  --scn-gutter:clamp(16px,3vw,32px);
}

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;500;600;700&family=Montserrat:wght@500;600;700;800&display=swap');

/* === Base ================================================================== */
body{
  font-family:var(--scn-font-body);
  color:var(--scn-ink);
  background:var(--scn-bg);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,.nasa-title,.woocommerce-loop-product__title,.product_title{
  font-family:var(--scn-font-head);
  color:var(--scn-ink);
  letter-spacing:.2px;
}
a{color:var(--scn-ink);transition:color .15s ease;}
a:hover{color:var(--scn-primary);}

/* === Buttons =============================================================== */
.scn-btn,.nasa-shortcode-btn,
.woocommerce #respond input#submit,
.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .button,
.button{
  background:var(--scn-ink)!important;
  color:#fff!important;
  border:none!important;
  border-radius:999px!important;
  padding:14px 28px!important;
  font-family:var(--scn-font-head)!important;
  font-weight:700!important;
  letter-spacing:.5px!important;
  text-transform:uppercase!important;
  font-size:13px!important;
  box-shadow:var(--scn-shadow-sm);
  transition:transform .15s ease,background .15s ease;
}
.scn-btn:hover,.nasa-shortcode-btn:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,
.button:hover{
  background:var(--scn-primary)!important;
  color:#fff!important;
  transform:translateY(-1px);
}
.scn-btn--primary{background:var(--scn-primary)!important;}
.scn-btn--primary:hover{background:var(--scn-primary-600)!important;}
.scn-btn--ghost{
  background:transparent!important;color:#fff!important;
  border:2px solid rgba(255,255,255,.6)!important;
}
.scn-btn--ghost:hover{background:#fff!important;color:var(--scn-ink)!important;border-color:#fff!important;}

/* === Header ================================================================ */
#nasa-header,#masthead,.header-wrap,.nasa-header-container{background:#fff;}
#masthead{border-bottom:1px solid var(--scn-border);}
.header-wrap,.nasa-header-container{box-shadow:var(--scn-shadow-sm);}
.nasa-topbar,.top-bar{
  background:var(--scn-ink);
  color:#fff;font-size:12px;letter-spacing:.4px;
  padding:8px 0;text-transform:uppercase;
}
.nasa-topbar a,.top-bar a{color:#fff;opacity:.85;}
.nasa-topbar a:hover{color:var(--scn-gold);opacity:1;}
.nasa-main-menu > li > a,.main-navigation a,.primary-navigation a{
  font-family:var(--scn-font-head);
  font-weight:600;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.6px;
}
.nasa-main-menu > li > a:hover{color:var(--scn-primary)!important;}
.logo,.site-title,.nasa-logo{padding:8px 0;}
.nasa-search-header,.header-search,.nasa-cart-dropdown-wrap{margin-left:12px;}
.cart-contents-count,.nasa-cart-total-item{
  background:var(--scn-primary)!important;
  color:#fff!important;
  font-weight:700;
}

/* === Hero ================================================================== */
.scn-hero{
  position:relative;
  min-height:clamp(420px,62vh,640px);
  background:
    linear-gradient(115deg,rgba(11,18,32,.72) 0%,rgba(11,18,32,.25) 55%,rgba(227,6,19,.35) 100%),
    radial-gradient(circle at 80% 20%,rgba(244,180,0,.35),transparent 55%),
    #0B1220;
  color:#fff;
  overflow:hidden;
  border-radius:var(--scn-radius-lg);
  margin:24px auto;
  max-width:var(--scn-container);
  padding:clamp(40px,7vw,96px) clamp(24px,5vw,72px);
  display:flex;align-items:center;
}
.scn-hero::before{
  content:"";position:absolute;inset:0;
  background-image:url("https://images.unsplash.com/photo-1551958219-acbc608c6377?w=1800&q=70");
  background-size:cover;background-position:center;
  opacity:.35;mix-blend-mode:screen;
  pointer-events:none;
}
.scn-hero__inner{position:relative;z-index:2;max-width:640px;}
.scn-hero__eyebrow{
  display:inline-block;
  font-family:var(--scn-font-head);font-weight:700;
  font-size:12px;letter-spacing:3px;text-transform:uppercase;
  background:var(--scn-primary);color:#fff;
  padding:6px 14px;border-radius:999px;margin-bottom:20px;
}
.scn-hero__title{
  font-family:var(--scn-font-display)!important;
  font-size:clamp(44px,7vw,104px);
  line-height:.95;letter-spacing:1px;
  color:#fff!important;margin:0 0 18px;
  text-shadow:0 4px 30px rgba(0,0,0,.35);
}
.scn-hero__title em{color:var(--scn-gold);font-style:normal;}
.scn-hero__sub{
  font-size:clamp(16px,1.6vw,19px);
  line-height:1.55;opacity:.92;max-width:520px;margin:0 0 32px;
}
.scn-hero__ctas{display:flex;gap:14px;flex-wrap:wrap;}
.scn-hero__meta{
  position:absolute;right:clamp(20px,4vw,60px);bottom:28px;
  font-family:var(--scn-font-head);font-size:11px;letter-spacing:3px;
  text-transform:uppercase;opacity:.75;
}
@media (max-width:640px){.scn-hero{border-radius:0;margin:0 0 24px;}}

/* === Trust strip =========================================================== */
.scn-trust{
  max-width:var(--scn-container);margin:28px auto;padding:0 var(--scn-gutter);
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
}
.scn-trust__item{
  background:#fff;border:1px solid var(--scn-border-soft);
  border-radius:var(--scn-radius);padding:18px 20px;
  display:flex;align-items:center;gap:14px;
  box-shadow:var(--scn-shadow-sm);
}
.scn-trust__icon{
  width:44px;height:44px;border-radius:50%;
  background:rgba(227,6,19,.08);color:var(--scn-primary);
  display:grid;place-items:center;font-size:22px;flex-shrink:0;
}
.scn-trust__t{font-family:var(--scn-font-head);font-weight:700;font-size:13px;color:var(--scn-ink);}
.scn-trust__s{font-size:12px;color:var(--scn-muted);margin-top:2px;}
@media (max-width:900px){.scn-trust{grid-template-columns:repeat(2,1fr);}}

/* === Section wrappers ====================================================== */
.scn-section{max-width:var(--scn-container);margin:56px auto;padding:0 var(--scn-gutter);}
.scn-section--wide{max-width:100%;padding:0;}
.scn-section__head{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px;gap:16px;flex-wrap:wrap;}
.scn-section__title{
  font-family:var(--scn-font-display)!important;
  font-size:clamp(30px,4vw,44px);letter-spacing:1.5px;
  margin:0;line-height:1;
}
.scn-section__title::before{
  content:"";display:inline-block;width:6px;height:26px;
  background:var(--scn-primary);margin-right:12px;vertical-align:-4px;border-radius:2px;
}
.scn-section__link{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--scn-ink);}
.scn-section__link:hover{color:var(--scn-primary);}

/* === Team cards ============================================================ */
.scn-teams{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.scn-team-card{
  position:relative;display:block;
  aspect-ratio:3/4;border-radius:var(--scn-radius-lg);overflow:hidden;
  background:var(--scn-ink);color:#fff;
  box-shadow:var(--scn-shadow);
  transition:transform .25s ease,box-shadow .25s ease;
}
.scn-team-card:hover{transform:translateY(-4px);box-shadow:var(--scn-shadow-lg);}
.scn-team-card__img{
  position:absolute;inset:0;background-size:cover;background-position:center;
  transition:transform .5s ease;
}
.scn-team-card:hover .scn-team-card__img{transform:scale(1.05);}
.scn-team-card__grad{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(11,18,32,.85) 100%);
}
.scn-team-card__body{
  position:absolute;left:0;right:0;bottom:0;padding:22px;z-index:2;
}
.scn-team-card__name{
  font-family:var(--scn-font-display);font-size:28px;letter-spacing:1.5px;
  margin:0 0 4px;color:#fff;
}
.scn-team-card__meta{font-size:12px;opacity:.8;letter-spacing:.8px;text-transform:uppercase;}
.scn-team-card__cta{
  display:inline-block;margin-top:10px;padding:8px 14px;
  background:var(--scn-primary);color:#fff;font-size:11px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;border-radius:999px;
}
@media (max-width:900px){.scn-teams{grid-template-columns:repeat(2,1fr);}}

/* === Promo splitbanner ===================================================== */
.scn-promo{
  max-width:var(--scn-container);margin:56px auto;padding:0 var(--scn-gutter);
  display:grid;grid-template-columns:2fr 1fr;gap:20px;
}
.scn-promo__big,.scn-promo__small{
  position:relative;border-radius:var(--scn-radius-lg);overflow:hidden;
  min-height:260px;color:#fff;display:flex;align-items:flex-end;
  padding:32px;box-shadow:var(--scn-shadow);
}
.scn-promo__big{
  background:linear-gradient(120deg,#E30613 0%,#7a0109 100%);
  min-height:320px;
}
.scn-promo__small{
  background:linear-gradient(120deg,#0B1220 0%,#253247 100%);
}
.scn-promo__kicker{font-size:12px;letter-spacing:3px;text-transform:uppercase;opacity:.85;}
.scn-promo__t{font-family:var(--scn-font-display);font-size:clamp(32px,4vw,54px);line-height:1;margin:8px 0 6px;letter-spacing:1px;}
.scn-promo__p{font-size:14px;opacity:.9;margin:0 0 14px;max-width:360px;}
.scn-promo__cta{
  display:inline-block;padding:11px 22px;border-radius:999px;
  background:#fff;color:var(--scn-ink);font-weight:700;font-size:12px;
  letter-spacing:1.2px;text-transform:uppercase;
}
.scn-promo__cta:hover{background:var(--scn-gold);color:var(--scn-ink);}
@media (max-width:900px){.scn-promo{grid-template-columns:1fr;}}

/* === Product grid tweaks (loop cards) ====================================== */
.woocommerce ul.products li.product,
.products .product,
.nasa-product{
  background:#fff;border-radius:var(--scn-radius);
  box-shadow:var(--scn-shadow-sm);
  overflow:hidden;padding:0!important;
  transition:transform .2s ease,box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-3px);box-shadow:var(--scn-shadow);
}
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.nasa-product a{display:block;}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.product-name,.woocommerce-loop-product__title{
  font-family:var(--scn-font-head)!important;
  font-weight:600!important;
  font-size:14px!important;
  padding:0 14px;
  color:var(--scn-ink)!important;
  min-height:42px;
}
.woocommerce ul.products li.product .price,
.product-price,.price{
  font-family:var(--scn-font-head)!important;
  color:var(--scn-primary)!important;
  font-weight:800!important;
  font-size:17px!important;
  padding:0 14px 14px;
  display:block;
}
.woocommerce ul.products li.product .price del{
  color:var(--scn-muted)!important;font-weight:500!important;opacity:.7;margin-right:6px;font-size:13px!important;
}
.woocommerce ul.products li.product .onsale,
.onsale,.nasa-label-new{
  background:var(--scn-primary)!important;color:#fff!important;
  border-radius:999px!important;font-weight:700!important;
  font-size:11px!important;letter-spacing:.8px;
  padding:4px 10px!important;min-height:unset!important;min-width:unset!important;
  line-height:1.3!important;top:12px!important;left:12px!important;right:auto!important;
}
.product-thumb,.woocommerce ul.products li.product img{
  aspect-ratio:1/1;object-fit:cover;width:100%;background:#f3f4f6;
}

/* === PDP ==================================================================== */
.single-product div.product .product_title{
  font-family:var(--scn-font-head)!important;
  font-weight:800;font-size:clamp(24px,3vw,34px);
  letter-spacing:.2px;margin:0 0 10px;
}
.single-product div.product .price,
.single-product div.product p.price,
.single-product div.product .summary .price{
  color:var(--scn-primary)!important;
  font-family:var(--scn-font-head)!important;
  font-weight:800!important;font-size:28px!important;
  margin:6px 0 18px!important;
}
.single-product div.product .woocommerce-product-details__short-description{
  color:var(--scn-ink-soft);font-size:15px;line-height:1.65;
  padding:16px 0;border-top:1px solid var(--scn-border);border-bottom:1px solid var(--scn-border);
  margin:14px 0 20px;
}
.single-product .cart .single_add_to_cart_button{
  width:100%;padding:18px 24px!important;font-size:14px!important;
  background:var(--scn-primary)!important;border-radius:999px!important;
}
.single-product .cart .single_add_to_cart_button:hover{background:var(--scn-primary-600)!important;}
.scn-pdp-trust{
  display:grid;grid-template-columns:repeat(2,1fr);gap:10px;
  margin-top:22px;padding:18px;background:#F7F7F8;border-radius:var(--scn-radius);
}
.scn-pdp-trust__i{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--scn-ink-soft);}
.scn-pdp-trust__i strong{display:block;color:var(--scn-ink);font-weight:700;font-size:13px;}
.scn-pdp-trust__icon{
  width:32px;height:32px;flex-shrink:0;border-radius:50%;
  background:rgba(227,6,19,.08);color:var(--scn-primary);
  display:grid;place-items:center;font-size:16px;
}
.scn-pdp-meta-line{
  display:flex;gap:16px;color:var(--scn-muted);font-size:12px;
  text-transform:uppercase;letter-spacing:1px;margin:8px 0 6px;
}
.scn-pdp-meta-line span{display:inline-flex;align-items:center;gap:6px;}

/* PLP sidebar */
.woocommerce-ordering select,.orderby{
  border:1px solid var(--scn-border)!important;border-radius:999px!important;
  padding:10px 18px!important;font-size:13px!important;background:#fff!important;
}
.widget_product_categories ul li a,.widget ul li a{color:var(--scn-ink-soft);}
.widget-title,.widgettitle{
  font-family:var(--scn-font-head);font-weight:700;
  text-transform:uppercase;letter-spacing:1.2px;font-size:13px;
  border-bottom:2px solid var(--scn-ink);padding-bottom:8px;margin-bottom:14px;
}

/* === Brand strip =========================================================== */
.scn-brand-strip{
  background:var(--scn-ink);color:#fff;padding:40px 0;
  margin:60px 0 0;
}
.scn-brand-strip__inner{
  max-width:var(--scn-container);margin:0 auto;padding:0 var(--scn-gutter);
  display:flex;gap:28px;align-items:center;justify-content:space-between;flex-wrap:wrap;
}
.scn-brand-strip__t{
  font-family:var(--scn-font-display);font-size:clamp(28px,3.5vw,40px);letter-spacing:1.5px;margin:0;
}
.scn-brand-strip__p{opacity:.75;font-size:14px;max-width:540px;margin:6px 0 0;}

/* === Footer ================================================================ */
#colophon,.site-footer,.nasa-footer,.footer-wrap{
  background:var(--scn-ink)!important;color:#cbd0d8!important;
  padding-top:56px;
}
#colophon a,.site-footer a,.nasa-footer a{color:#cbd0d8!important;}
#colophon a:hover,.site-footer a:hover{color:var(--scn-gold)!important;}
.footer-widgets .widget-title,.footer-widgets .widgettitle,
.site-footer .widget-title,.nasa-footer .widget-title{
  color:#fff!important;border-color:var(--scn-primary)!important;
  font-size:13px;letter-spacing:1.5px;
}
.site-footer .site-info,.nasa-copyright,.copyright{
  background:#070C15!important;color:#8a8f99!important;
  padding:18px 0;font-size:12px;border-top:1px solid rgba(255,255,255,.06);
  margin-top:40px;
}

/* === SCN footer prom-strip ================================================= */
.scn-footprom{
  background:var(--scn-primary);color:#fff;padding:16px 0;
  font-family:var(--scn-font-head);font-weight:700;font-size:13px;
  letter-spacing:1.5px;text-transform:uppercase;text-align:center;
}
.scn-footprom span{margin:0 14px;opacity:.9;}
.scn-footprom span::before{content:"●";margin-right:14px;color:rgba(255,255,255,.55);}

/* === Mobile tuning ========================================================= */
@media (max-width:720px){
  .scn-section{margin:40px auto;}
  .scn-section__title{font-size:28px;}
  .scn-hero__ctas .scn-btn{padding:12px 20px!important;font-size:12px!important;}
  .scn-pdp-trust{grid-template-columns:1fr;}
}

/* === Misc cleanup ========================================================== */
hr{border-top:1px solid var(--scn-border);}
img{max-width:100%;height:auto;}
.scn-container{max-width:var(--scn-container);margin:0 auto;padding:0 var(--scn-gutter);}
