/*
Theme Name: Active Sportswear
Template: hello-elementor
Description: Thème enfant Active Sportswear (basé sur Hello Elementor). Tout le contenu se modifie dans Elementor ; ce fichier ne contient que le style des produits WooCommerce et quelques effets.
Version: 1.0
Text Domain: active-sportswear
*/

:root{
  --as-navy:#0E1E50; --as-navy-dark:#0A1638; --as-orange:#1748C8; --as-orange-dark:#0F38A3;
  --as-bg:#EEF3FB; --as-text:#2B2F3A; --as-muted:#6B7085; --as-line:#DCE5F3; --as-radius:18px;
}
body{background:#fff;color:var(--as-text);font-family:"Inter",sans-serif;}
h1,h2,h3,h4,h5,h6{font-family:"Montserrat",sans-serif;color:var(--as-navy);}
a{color:var(--as-navy);}

/* ---------- Bandeau défilant (widget HTML Elementor) ---------- */
.as-marquee{overflow:hidden;white-space:nowrap;width:100%;}
.as-marquee__track{display:inline-flex;gap:48px;padding-right:48px;animation:as-scroll 30s linear infinite;}
.as-marquee__track span{display:inline-flex;align-items:center;gap:10px;}
.as-marquee--slow .as-marquee__track{animation-duration:45s;}
.as-marquee:hover .as-marquee__track{animation-play-state:paused;}
@keyframes as-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- Grille produits WooCommerce ---------- */
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(4,1fr);gap:24px;margin:0 !important;}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none !important;}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;float:none !important;background:#fff;border:1px solid var(--as-line);border-radius:var(--as-radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;position:relative;}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(14,30,80,.12);}
.woocommerce ul.products li.product a img{margin:0 !important;background:var(--as-bg);aspect-ratio:1/1;object-fit:cover;transition:transform .4s;}
.woocommerce ul.products li.product:hover a img{transform:scale(1.04);}
.woocommerce ul.products li.product .woocommerce-loop-product__link{display:block;overflow:hidden;}
.as-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.as-card-cat{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--as-orange);font-weight:700;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:"Montserrat",sans-serif;font-size:16px !important;font-weight:700;color:var(--as-navy);padding:0 !important;margin:0;line-height:1.3;}
.woocommerce ul.products li.product .price{color:var(--as-navy) !important;font-weight:800;font-size:18px !important;margin:0 !important;display:flex;gap:8px;align-items:baseline;flex-direction:row-reverse;justify-content:flex-end;}
.woocommerce ul.products li.product .price del{color:var(--as-muted);font-weight:500;font-size:14px;opacity:1;}
.woocommerce ul.products li.product .price ins{text-decoration:none;}
.as-sizes{display:flex;gap:6px;flex-wrap:wrap;}
.as-sizes span{border:1.5px solid var(--as-line);border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;color:var(--as-muted);}
.woocommerce ul.products li.product .button{margin-top:auto !important;width:100%;text-align:center;}
.woocommerce span.onsale{background:var(--as-orange) !important;border-radius:999px !important;min-height:0 !important;min-width:0 !important;line-height:1 !important;padding:7px 12px !important;font-size:12px !important;top:12px !important;left:12px !important;right:auto !important;margin:0 !important;font-weight:700;}

/* ---------- Boutons WooCommerce ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce-page .wc-block-components-button{
  background:var(--as-navy) !important;color:#fff !important;border-radius:12px !important;padding:13px 18px !important;font-weight:700 !important;font-family:"Montserrat",sans-serif;border:0 !important;transition:background .2s;}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover{background:var(--as-orange) !important;}
.woocommerce #place_order{background:var(--as-orange) !important;font-size:17px !important;padding:16px !important;width:100%;}

/* ---------- Page produit ---------- */
.single-product div.product{max-width:1200px;margin:40px auto;padding:0 20px;}
.single-product div.product .product_title{font-size:32px;font-weight:800;}
.single-product div.product p.price,.single-product div.product span.price{color:var(--as-navy) !important;font-size:26px !important;font-weight:800;}
.single-product div.product p.price del{color:var(--as-muted);font-size:18px;}
.single-product .woocommerce-product-gallery img{border-radius:var(--as-radius);background:var(--as-bg);}
.as-size-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 4px;}
.as-size-buttons button{min-width:52px;padding:10px 14px;border:2px solid var(--as-line);background:#fff;color:var(--as-navy);border-radius:10px;font-weight:700;cursor:pointer;}
.as-size-buttons button.is-active{border-color:var(--as-navy);background:var(--as-navy);color:#fff;}
.as-hidden-select{position:absolute !important;opacity:0;pointer-events:none;height:0;width:0;}
.as-trust{display:grid;gap:8px;margin-top:20px;padding:16px;background:var(--as-bg);border-radius:14px;font-size:14px;}

/* ---------- Bouton WhatsApp flottant ---------- */
.as-whatsapp{position:fixed;right:22px;bottom:22px;z-index:9999;width:60px;height:60px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(37,211,102,.45);transition:transform .2s;}
.as-whatsapp:hover{transform:scale(1.08);}
.as-whatsapp svg{width:32px;height:32px;fill:#fff;}

/* ---------- Panier / commande ---------- */
.woocommerce-cart .site-main,.woocommerce-checkout .site-main,.woocommerce-account .site-main{max-width:1100px;margin:40px auto;padding:0 20px;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1.5px solid var(--as-line);border-radius:10px;padding:12px 14px;}
.woocommerce-checkout #payment{background:var(--as-bg) !important;border-radius:14px;}

/* ---------- Divers ---------- */
.as-faq .elementor-tab-title,.as-faq summary{font-family:"Montserrat",sans-serif;}
.as-ar{direction:rtl;text-align:right;color:var(--as-muted);margin-top:10px;font-size:15px;}
@media (max-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr);}}
@media (max-width:767px){
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:12px;}
  .as-card-body{padding:12px;}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px !important;}
  .woocommerce ul.products li.product .button{font-size:13px !important;padding:11px 8px !important;}
  .as-sizes span{padding:3px 7px;font-size:11px;}
}

/* ---------- Bandeaux Elementor ---------- */
.as-topbar{color:#fff;font:600 13px "Inter",sans-serif;}
.as-band-text{color:#fff;font:800 22px "Montserrat",sans-serif;letter-spacing:3px;}
.as-band-text span[style]{color:#1748C8;opacity:1 !important;}
@media (max-width:767px){.as-band-text{font-size:16px;}}
@media (min-width:1025px){
  .elementor-widget-navigation-menu .hfe-nav-menu{flex-wrap:nowrap;}
  .elementor-widget-navigation-menu .hfe-nav-menu > li{white-space:nowrap;}
}
/* Menu mobile déroulant */
@media (max-width:1024px){
  .elementor-widget-navigation-menu nav.hfe-dropdown{position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 18px 30px rgba(14,30,80,.12);border-top:1px solid #DCE5F3;z-index:999;}
  .elementor-widget-navigation-menu nav.hfe-dropdown{overflow:hidden;}
  .elementor-widget-navigation-menu nav.hfe-dropdown .hfe-nav-menu{flex-direction:column;flex-wrap:nowrap;}
  .elementor-widget-navigation-menu nav.hfe-dropdown .menu-item a{padding:14px 20px !important;border-bottom:1px solid #EBF1FA;font-family:"Montserrat",sans-serif;font-weight:600;}
}
@media (max-width:767px){.as-badge{transform:scale(.62);transform-origin:top right;}}
/* Icône panier (en-tête) */
.hfe-cart-menu-wrap-default .hfe-cart-count{border-color:var(--as-navy) !important;color:var(--as-navy) !important;border-radius:8px !important;font-weight:700;}
.hfe-cart-menu-wrap-default .hfe-cart-count:after{border-color:var(--as-navy) !important;}
.elementor-widget-copyright .hfe-copyright-wrapper,.elementor-widget-copyright .hfe-copyright-wrapper a{color:#9AA3C9 !important;font-size:13px;}
/* Commande : le pays (Maroc) est fixe, on masque la ligne */
.woocommerce-checkout #billing_country_field{display:none !important;}
@media (max-width:767px){.elementor-widget-navigation-menu .hfe-nav-menu__toggle{margin-left:auto !important;margin-right:0 !important;}}
/* Pages boutique / catégories */
.woocommerce.archive .site-main,.post-type-archive-product .site-main,.tax-product_cat .site-main{max-width:1240px;margin:0 auto;padding:30px 20px 70px;}
.woocommerce-products-header__title.page-title,.woocommerce .page-header .entry-title{font-family:"Montserrat",sans-serif;font-weight:800;font-size:40px;color:var(--as-navy);}
.woocommerce .woocommerce-ordering select{border:1.5px solid var(--as-line);border-radius:10px;padding:10px 12px;}
.woocommerce .woocommerce-breadcrumb{font-size:13px;color:var(--as-muted);}
@media (max-width:767px){.woocommerce-products-header__title.page-title{font-size:30px;}}
/* Pages classiques (CGV, confidentialité, livraison…) */
body.page:not(.elementor-page):not(.woocommerce-page) .site-main{max-width:860px;margin:0 auto;padding:40px 20px 70px;}
body.page:not(.elementor-page):not(.woocommerce-page) .page-header .entry-title{font-weight:800;font-size:40px;line-height:1.15;margin-bottom:20px;}
body.page:not(.elementor-page):not(.woocommerce-page) .page-content h2{font-size:22px;font-weight:700;margin:28px 0 8px;}
body.page:not(.elementor-page):not(.woocommerce-page) .page-content p{line-height:1.7;}
@media (max-width:767px){body.page:not(.elementor-page):not(.woocommerce-page) .page-header .entry-title{font-size:28px;}}
.woocommerce .price ins,.woocommerce-variation-price ins{text-decoration:none !important;}
/* Titres des pages Panier / Commander / Mon compte */
.woocommerce-page .page-header .entry-title{font-family:"Montserrat",sans-serif;font-weight:800;font-size:38px;color:var(--as-navy);margin-bottom:18px;}
.woocommerce-cart table.cart img{width:64px;border-radius:10px;}
.woocommerce table.shop_table{border-radius:14px !important;border-color:var(--as-line) !important;}
.woocommerce-cart .cart_totals h2,.woocommerce-checkout h3{font-size:22px;font-weight:800;}
@media (max-width:767px){
  .woocommerce-page .page-header .entry-title{font-size:28px;}
  .woocommerce-cart table.cart td.actions .coupon{display:flex;flex-direction:column;gap:8px;}
  .woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .button{width:100% !important;float:none !important;margin:0 !important;}
  .woocommerce-cart table.cart td.actions > .button{width:100%;margin-top:8px !important;}
}
/* Liste déroulante des tailles masquée (remplacée par des boutons) : ne doit prendre aucune place */
.as-hidden-select{position:absolute !important;width:1px !important;height:1px !important;min-width:0 !important;padding:0 !important;margin:0 !important;border:0 !important;opacity:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;pointer-events:none !important;}
.variations td.value{position:relative;}

/* Pied de page centré sur mobile et tablette */
@media (max-width:1024px){
  .elementor-77 .elementor-widget,.elementor-77 .elementor-widget-container{text-align:center !important;}
  .elementor-77 .e-con,.elementor-77 .e-con-inner{align-items:center !important;}
  .elementor-77 .elementor-widget-image img{margin-left:auto;margin-right:auto;}
  .elementor-77 .elementor-icon-list-items{display:flex;flex-direction:column;align-items:center;}
  .elementor-77 .elementor-icon-list-item,.elementor-77 .elementor-icon-list-item a{justify-content:center !important;}
  .elementor-77 .elementor-widget{width:100%;}
}


/* Bannière d'accueil en deux colonnes : badges alignés à gauche, centrés sur tablette/mobile */
.as-hero-trust{justify-content:flex-start;}
@media (max-width:1024px){ .as-hero-trust{justify-content:center;} }

/* ===== UX : filtres boutique ===== */
.as-chips{display:flex;gap:8px;overflow-x:auto;padding:2px 0 14px;margin-bottom:6px;scrollbar-width:none;}
.as-chips::-webkit-scrollbar{display:none;}
.as-chips a{flex:none;padding:9px 18px;border:1.5px solid var(--as-line);border-radius:999px;background:#fff;color:var(--as-navy);font:700 14px Montserrat,sans-serif;text-decoration:none;white-space:nowrap;}
.as-chips a:hover{border-color:var(--as-navy);}
.as-chips a.is-on{background:var(--as-navy);border-color:var(--as-navy);color:#fff;}
.woocommerce .woocommerce-result-count{font-size:14px;color:var(--as-muted);}

/* ===== UX : page « Commande reçue » ===== */
.as-thanks{background:var(--as-bg);border-radius:20px;padding:24px;margin:10px 0 30px;}
.as-thanks h2{margin:0 0 16px;font:800 22px Montserrat,sans-serif;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;}
.as-thanks h2 span{font:500 16px Inter,sans-serif;color:var(--as-muted);}
.as-thanks ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;}
.as-thanks li{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:14px;padding:14px 16px;}
.as-thanks li b{flex:none;width:30px;height:30px;border-radius:50%;background:var(--as-navy);color:#fff;display:flex;align-items:center;justify-content:center;font:800 14px Montserrat,sans-serif;}
.as-thanks li small{display:block;color:var(--as-muted);margin-top:2px;}
.as-thanks__btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.as-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:12px;font:700 15px Montserrat,sans-serif;text-decoration:none;flex:1 1 220px;}
.as-btn--wa{background:#25D366;color:#fff !important;}
.as-btn--ghost{border:2px solid var(--as-navy);color:var(--as-navy) !important;background:#fff;}
.woocommerce-order .woocommerce-notice--success{font:800 22px Montserrat,sans-serif;color:var(--as-navy);background:#E8F7EE;border-radius:14px;padding:18px 20px;}

/* ===== UX : accueil mobile plus compact ===== */
@media (max-width:767px){
  .as-hero-trust{gap:6px 14px !important;font-size:13px !important;}
}

/* Tuiles catégories (accueil) */
.as-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.as-cat{position:relative;display:block;border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:#0E1E50;text-decoration:none;}
.as-cat img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
.as-cat:hover img{transform:scale(1.05);}
.as-cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,56,0) 40%,rgba(10,22,56,.85) 100%);}
.as-cat__txt{position:absolute;left:20px;right:20px;bottom:18px;z-index:1;color:#fff;}
.as-cat__txt b{display:block;font:800 24px Montserrat,sans-serif;}
.as-cat__txt span{font:600 14px Inter,sans-serif;opacity:.9;}
@media (max-width:767px){
  .as-cats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
  .as-cat{border-radius:16px;aspect-ratio:3/4;}
  .as-cat__txt{left:10px;right:10px;bottom:10px;}
  .as-cat__txt b{font-size:16px;}
  .as-cat__txt span{font-size:12px;}
}
/* Prix de l'offre Pack (accueil) : jamais coupé sur deux lignes */
.as-packprice > div > div:last-child{white-space:nowrap;}
@media (max-width:767px){
  .as-packprice{gap:22px !important;}
  .as-packprice .as-pp-old{font-size:20px !important;}
  .as-packprice .as-pp-new{font-size:38px !important;}
}
/* Résumé de commande (page « Commande reçue ») en cartes */
.woocommerce ul.order_details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 24px !important;padding:0 !important;}
.woocommerce ul.order_details::before,.woocommerce ul.order_details::after{display:none !important;}
.woocommerce ul.order_details li{float:none !important;margin:0 !important;padding:12px 14px !important;border:1px solid var(--as-line) !important;border-radius:12px;background:#fff;font-size:12px !important;text-transform:uppercase;letter-spacing:.04em;color:var(--as-muted);}
.woocommerce ul.order_details li strong{display:block;margin-top:4px;font:800 16px Montserrat,sans-serif;text-transform:none;letter-spacing:0;color:var(--as-navy);}
@media (min-width:768px){ .woocommerce ul.order_details{grid-template-columns:repeat(4,minmax(0,1fr));} }
/* En-tête : bouton sur une ligne ; tuiles catégories moins hautes sur grand écran */
.elementor-76 .elementor-button{white-space:nowrap;}
@media (min-width:768px){ .as-cat{aspect-ratio:4/3;} }

/* ===== Avis clients en cartes (fiche produit) ===== */
.as-rv{clear:both;margin:40px 0 10px;text-align:center;}
.as-rv__kicker{margin:0;font:800 13px Montserrat,sans-serif;letter-spacing:.25em;text-transform:uppercase;color:var(--as-orange);}
.as-rv__title{margin:8px 0 12px;font:800 30px Montserrat,sans-serif;color:var(--as-navy);}
.as-rv__pill{display:inline-block;margin:0 0 22px;padding:8px 16px;border-radius:999px;background:#E3EBF7;color:#0F38A3;font-size:13px;font-weight:600;}
.as-rv__sum{margin:0 0 22px;color:var(--as-muted);}
.as-rv__sum b{color:var(--as-navy);}
.as-rv__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;text-align:left;}
.as-rv__card{background:#fff;border:1px solid var(--as-line);border-radius:20px;padding:22px;}
.as-rv__stars{color:var(--as-orange);font-size:18px;letter-spacing:3px;}
.as-rv__text{margin:12px 0 16px;font-style:italic;font-size:15px;line-height:1.6;color:var(--as-text);}
.as-rv__name{margin:0;font:700 15px Montserrat,sans-serif;color:var(--as-navy);}
.as-rv__meta{margin:2px 0 0;font-size:13px;color:var(--as-muted);}
.as-rv__write{margin-top:18px;text-align:left;}
.as-rv__write summary{display:inline-flex;cursor:pointer;list-style:none;padding:12px 22px;border:2px solid var(--as-navy);border-radius:12px;font:700 15px Montserrat,sans-serif;color:var(--as-navy);}
.as-rv__write summary::-webkit-details-marker{display:none;}
.as-rv__write[open] summary{background:var(--as-navy);color:#fff;}
.as-rv__write #reviews{margin-top:14px;}
.as-rv__write #comments{display:none;} /* la liste est déjà affichée en cartes */
.as-rv__write #review_form_wrapper{background:var(--as-bg);border-radius:16px;padding:20px;}
.as-rv__write .comment-reply-title{display:block;font:800 18px Montserrat,sans-serif;color:var(--as-navy);margin-bottom:8px;}
.as-rv__write .as-rv-note{font-size:13px;color:var(--as-muted);}
.as-rv__write p.stars a{color:#F5A623;}
.as-rv__write label{font-weight:600;color:var(--as-navy);}
.as-rv__write textarea,.as-rv__write input[type=text],.as-rv__write input[type=email]{width:100%;border:1.5px solid var(--as-line);border-radius:10px;padding:12px 14px;font-size:15px;background:#fff;}
.as-rv__write #submit{background:var(--as-navy);color:#fff;border:0;border-radius:12px;padding:14px 26px;font:700 15px Montserrat,sans-serif;cursor:pointer;}
.as-rv__write .comment-form-cookies-consent{display:flex;gap:8px;align-items:flex-start;font-size:13px;}
.single-product .woocommerce-tabs{display:none;}
.single-product .related,.single-product .upsells{clear:both;}
/* Ordinateur : les avis se placent sous les photos (colonne de gauche) */
@media (min-width:768px){
  .single-product div.product .as-rv{float:left;clear:left;width:48%;margin-top:28px;}
  .single-product div.product .as-rv__grid{grid-template-columns:1fr;}
  .single-product div.product .as-rv__title{font-size:26px;}
}
@media (max-width:767px){ .as-rv__title{font-size:24px;} .as-rv__grid{grid-template-columns:1fr;} }
