/*
Theme Name: Astra ICD — Ice Cream Dream
Theme URI: https://icecreamdream.shop
Template: astra
Author: Ice Cream Dream
Description: Child theme Astra — charte Ice Cream Dream (navy / or / zellige, gelato premium, Italian Passion • Moroccan Soul).
Version: 1.0
*/

:root{
  --navy:#16244f; --navy-deep:#0f1a3c; --gold:#c9a24b; --gold-soft:#e3c987;
  --cream:#faf6ee; --rose:#d98a8a; --pist:#8fae7b;
}

/* ============ BASE SOMBRE ============ */
body{background:var(--navy-deep)!important;color:var(--cream);font-family:'Poppins',sans-serif}
.site-content,.ast-container,#content,#primary,.site{background:transparent!important}
a{color:var(--gold-soft)}
a:hover{color:var(--gold)}
h1,h2,h3,h4,.entry-title,.product_title,.woocommerce-loop-category__title{font-family:'Playfair Display',serif!important;color:var(--cream)}
p,li,span,.woocommerce-product-details__short-description{color:var(--cream)}

/* ============ HEADER ============ */
.site-header,.ast-primary-header-bar,header.site-header,.ast-header-break-point .main-header-bar{background:var(--navy)!important;border-bottom:1px solid rgba(201,162,75,.25)!important}
.site-title a,.ast-site-title-wrap .site-title a,.site-logo-img .custom-logo-link{font-family:'Playfair Display',serif;color:var(--cream)!important;font-weight:700}
.main-header-menu,.main-navigation ul,.ast-desktop .main-header-menu{background:var(--navy)!important}
.main-header-menu a,.main-navigation a,.menu-item a,.ast-menu-toggle{color:var(--cream)!important;font-weight:500}
.main-header-menu a:hover,.main-navigation a:hover,.current-menu-item>a{color:var(--gold-soft)!important}
.ast-header-woo-cart .ast-woo-header-cart-info-wrap,.ast-cart-menu-wrap .count{color:var(--gold-soft)!important}

/* ---- Logo : emblème gelato + wordmark ---- */
.site-title a,.ast-site-title-wrap .site-title a{display:inline-flex!important;align-items:center;gap:13px;line-height:1}
.site-title a::before{content:"";display:inline-block;width:42px;height:42px;flex:none;background:url(emblem.svg) no-repeat center/contain}
@media(max-width:600px){.site-title a::before{width:34px;height:34px}}

/* ---- Noms de page (menu) raffinés : soulignement or animé + item actif ---- */
.main-header-menu>li.menu-item:not(.icd-lang-switch)>a,.ast-nav-menu>li.menu-item:not(.icd-lang-switch)>a{
  position:relative;letter-spacing:.035em;font-weight:500!important}
.main-header-menu>li.menu-item:not(.icd-lang-switch)>a::after,.ast-nav-menu>li.menu-item:not(.icd-lang-switch)>a::after{
  content:"";position:absolute;left:10px;right:10px;bottom:5px;height:2px;background:var(--gold);border-radius:2px;
  transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
.main-header-menu>li.menu-item:not(.icd-lang-switch)>a:hover::after,
.main-header-menu>li.current-menu-item>a::after,.ast-nav-menu>li.current-menu-item>a::after{transform:scaleX(1)}
.main-header-menu>li.current-menu-item>a,.ast-nav-menu>li.current-menu-item>a{color:var(--gold-soft)!important}

/* ============ BOUTONS ============ */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,button.single_add_to_cart_button,
.wc-block-components-button,.wp-block-button__link,.woocommerce-page a.button{
  background:linear-gradient(135deg,var(--gold),var(--gold-soft))!important;color:var(--navy-deep)!important;
  border:none!important;border-radius:999px!important;font-weight:600!important;padding:14px 30px!important;
  text-transform:none!important;letter-spacing:.01em;box-shadow:0 12px 26px -10px rgba(201,162,75,.6);
  transition:transform .2s,box-shadow .2s}
.woocommerce a.button:hover,.woocommerce button.button:hover,button.single_add_to_cart_button:hover,
.woocommerce a.button.alt:hover{transform:translateY(-2px);box-shadow:0 18px 34px -10px rgba(201,162,75,.85)!important}

/* ============ PRIX ============ */
.woocommerce div.product p.price,.woocommerce div.product span.price,
.price .woocommerce-Price-amount,.woocommerce-Price-amount{
  color:var(--gold-soft)!important;font-family:'Playfair Display',serif}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:2rem!important;font-weight:700}

/* ============ FICHE PRODUIT ============ */
.single-product div.product{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:start;
  background:linear-gradient(180deg,#1b2c60,#16244f);border:1px solid rgba(201,162,75,.2);
  border-radius:24px;padding:36px;margin-top:26px;box-shadow:0 30px 70px -30px rgba(0,0,0,.7)}
.single-product .woocommerce-product-gallery{margin:0!important;width:100%!important;float:none!important}
.single-product .woocommerce-product-gallery img{border-radius:16px;box-shadow:0 20px 44px -20px rgba(0,0,0,.6)}
.single-product .summary,.single-product .entry-summary{margin:0!important;width:100%!important;float:none!important}
.single-product .product_title{font-size:clamp(2rem,4vw,3rem);line-height:1.05;margin-bottom:4px}
.icd-ar-title{font-family:'Amiri',serif;color:var(--gold);font-size:1.7rem;line-height:1.3;margin:2px 0 14px;direction:rtl}
.single-product .woocommerce-product-details__short-description{color:rgba(250,246,238,.82)!important;line-height:1.75;margin:18px 0}
.single-product .price{margin:12px 0 22px}
.single-product .quantity input.qty{background:var(--navy-deep);color:var(--cream);border:1px solid rgba(201,162,75,.45);border-radius:10px;padding:10px;width:70px}
.single-product .product_meta{color:rgba(250,246,238,.55);margin-top:20px;font-size:.85rem}
.single-product .product_meta a{color:var(--gold-soft)}

/* WhatsApp */
.icd-wa-btn{display:inline-flex;align-items:center;gap:10px;margin:6px 0 0;padding:14px 28px;border-radius:999px;
  background:transparent;border:1px solid rgba(201,162,75,.6);color:var(--gold-soft);font-weight:600;text-decoration:none;transition:.2s}
.icd-wa-btn:hover{background:var(--gold);color:var(--navy-deep)}
.icd-wa-btn svg{width:19px;height:19px}
.single-product form.cart{margin-bottom:6px}

/* Onglets desc */
.woocommerce-tabs{margin-top:44px}
.woocommerce-tabs ul.tabs{border:none}
.woocommerce-tabs ul.tabs li{background:var(--navy)!important;border:1px solid rgba(201,162,75,.2)!important;border-radius:10px 10px 0 0}
.woocommerce-tabs ul.tabs li.active{background:#1b2c60!important;border-bottom-color:transparent!important}
.woocommerce-tabs ul.tabs li a{color:var(--cream)!important;font-weight:600}
.woocommerce-tabs ul.tabs::before{border-bottom-color:rgba(201,162,75,.2)!important}
.woocommerce-tabs .panel,.woocommerce-Tabs-panel{color:rgba(250,246,238,.82)!important;background:#16244f;border:1px solid rgba(201,162,75,.14);border-radius:0 12px 12px 12px;padding:26px}

/* ============ GRILLES (archive + related) ============ */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(234px,1fr))!important;gap:24px;margin:0!important}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  width:auto!important;margin:0!important;float:none!important;list-style:none;
  background:linear-gradient(180deg,#1b2c60,#16244f)!important;border:1px solid rgba(201,162,75,.2);
  border-radius:18px;padding:14px 14px 20px!important;text-align:left;transition:transform .25s,border-color .25s,box-shadow .25s}
.woocommerce ul.products li.product::before{display:none!important}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 22px 44px -18px rgba(0,0,0,.7)}
.woocommerce ul.products li.product a img{border-radius:12px;margin-bottom:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--cream)!important;font-family:'Poppins',sans-serif!important;font-size:1.02rem!important;font-weight:600;padding:.2em 0 .4em!important}
.woocommerce ul.products li.product .price{font-size:1.25rem!important;color:var(--gold-soft)!important}
.woocommerce ul.products li.product .button{margin-top:8px}
.related.products>h2,.up-sells>h2,.cross-sells>h2{font-family:'Playfair Display',serif;color:var(--cream);margin:44px 0 22px}

/* ============ NOTICES / BREADCRUMB / TITRES PAGE ============ */
.woocommerce-breadcrumb,.woocommerce-breadcrumb a{color:rgba(250,246,238,.55)!important}
.woocommerce-products-header__title,.page-title,.entry-title{color:var(--cream)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--navy)!important;color:var(--cream)!important;border-top:3px solid var(--gold)!important}
.woocommerce-message a,.woocommerce-info a{color:var(--gold-soft)!important}
.woocommerce .woocommerce-ordering select,.woocommerce-ordering select{background:var(--navy);color:var(--cream);border:1px solid rgba(201,162,75,.35);border-radius:8px;padding:8px}
.woocommerce-result-count{color:rgba(250,246,238,.6)}

/* ============ PANIER / CHECKOUT ============ */
.woocommerce table.shop_table,.woocommerce-cart table.cart,.woocommerce-checkout .woocommerce-checkout-review-order-table{
  background:#16244f!important;color:var(--cream)!important;border:1px solid rgba(201,162,75,.2)!important;border-radius:14px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:rgba(201,162,75,.14)!important;color:var(--cream)}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #payment,.woocommerce form.checkout_coupon{
  background:#16244f!important;border:1px solid rgba(201,162,75,.2)!important;border-radius:14px;color:var(--cream)}
.woocommerce-checkout #payment{padding:10px 18px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.select2-container--default .select2-selection--single{
  background:var(--navy-deep)!important;color:var(--cream)!important;border:1px solid rgba(201,162,75,.35)!important;border-radius:10px!important;padding:10px!important}
.woocommerce-checkout #payment div.payment_box{background:var(--navy)!important;color:var(--cream)}
.woocommerce-checkout #payment ul.payment_methods{border-color:rgba(201,162,75,.2)!important}

/* ============ FOOTER ============ */
.site-footer,footer.site-footer,.ast-small-footer,.footer-sml-layout-2,
.site-primary-footer-wrap,.ast-small-footer-wrap,.site-below-footer-wrap,
.ast-footer-copyright,.site-footer .widget,[data-section="section-footer-builder"]{
  background-color:var(--navy)!important;color:rgba(250,246,238,.72)!important;border-top:1px solid rgba(201,162,75,.22)!important}
.site-footer,.site-footer *,.ast-small-footer,.ast-small-footer *{color:rgba(250,246,238,.72)!important}
.site-footer a,.ast-small-footer a{color:var(--gold-soft)!important}
.site-footer em{color:var(--gold-soft)!important;font-style:italic}

/* ============ SÉLECTEUR DE LANGUE (header) ============ */
li.icd-lang-switch,.main-header-menu li.icd-lang-switch,.ast-nav-menu li.icd-lang-switch{
  display:inline-flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:5px;padding:0!important;margin-left:18px;background:none!important;white-space:nowrap}
li.icd-lang-switch>a.icd-lang-link,.main-header-menu li.icd-lang-switch a.icd-lang-link{
  display:inline-flex!important;align-items:center;padding:5px 12px!important;border:1px solid rgba(201,162,75,.5)!important;
  border-radius:999px!important;color:var(--cream)!important;font-size:.78rem!important;font-weight:600!important;
  line-height:1.2!important;text-decoration:none!important;transition:.2s;width:auto!important;background:transparent!important}
li.icd-lang-switch a.icd-lang-link.icd-lang-active{background:var(--gold)!important;color:var(--navy-deep)!important;border-color:var(--gold)!important}
li.icd-lang-switch a.icd-lang-link:not(.icd-lang-active):hover{color:var(--gold-soft)!important;border-color:var(--gold)!important}

/* ============ PAGES LÉGALES ============ */
.icd-legal{max-width:840px;margin:0 auto;padding:0 4px}
.icd-legal .lg-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--gold-soft);font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;margin-bottom:12px}
.icd-legal .lg-eyebrow::before{content:"";width:26px;height:1px;background:var(--gold);display:inline-block}
.icd-legal h1{font-family:'Playfair Display',serif;color:var(--cream);font-size:clamp(2rem,4vw,2.9rem);line-height:1.1;margin:0 0 6px}
.icd-legal .lg-sub{color:rgba(250,246,238,.5);font-size:.9rem;margin-bottom:28px}
.icd-legal h2{font-family:'Playfair Display',serif;color:var(--cream);font-size:1.4rem;margin:34px 0 10px}
.icd-legal p,.icd-legal li{color:rgba(250,246,238,.82)!important;line-height:1.85;font-size:1rem}
.icd-legal ul{margin:8px 0;padding-inline-start:22px}
.icd-legal li{margin-bottom:6px}
.icd-legal a{color:var(--gold-soft)}
.icd-legal .lg-ph{color:var(--gold-soft);background:rgba(201,162,75,.1);border:1px dashed rgba(201,162,75,.45);border-radius:6px;padding:1px 8px;font-size:.9em;font-style:italic}
.icd-legal[dir=rtl]{direction:rtl;text-align:right}
.icd-legal[dir=rtl] h1,.icd-legal[dir=rtl] h2{font-family:'Amiri',serif}
.icd-legal[dir=rtl] p,.icd-legal[dir=rtl] li{font-family:'Amiri',serif;font-size:1.1rem}

/* ---- barre de liens légaux dans le footer ---- */
.icd-footer-legal{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 16px;padding:16px 0 2px;font-size:.82rem}
.icd-footer-legal a{color:rgba(250,246,238,.6)!important;text-decoration:none;transition:.2s}
.icd-footer-legal a:hover{color:var(--gold-soft)!important}
.icd-footer-legal .sep{color:rgba(201,162,75,.4)}

/* ============ RESPONSIVE ============ */
@media(max-width:880px){
  .single-product div.product{grid-template-columns:1fr;gap:26px;padding:22px}
  .woocommerce ul.products{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:16px}
}
