/* =========================================================================
   AlexTheme — Charte graphique « Projet Atlas »
   Reprend les tokens du site vitrine (assets/css/main.css) :
   typo Syne / DM Sans / Space Mono, accent or, design clair épuré.
   Polices réutilisées depuis /assets/fonts/ (même origine, auto-hébergées).
   ========================================================================= */

/* ---------- Polices auto-hébergées (partagées avec le site vitrine) ---------- */
@font-face { font-family:'DM Sans'; font-style:normal; font-weight:300; font-display:swap; src:url(/assets/fonts/dm-sans-300-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'DM Sans'; font-style:normal; font-weight:400; font-display:swap; src:url(/assets/fonts/dm-sans-400-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'DM Sans'; font-style:normal; font-weight:500; font-display:swap; src:url(/assets/fonts/dm-sans-500-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'Space Mono'; font-style:normal; font-weight:400; font-display:swap; src:url(/assets/fonts/space-mono-400-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'Space Mono'; font-style:normal; font-weight:700; font-display:swap; src:url(/assets/fonts/space-mono-700-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'Syne'; font-style:normal; font-weight:400; font-display:swap; src:url(/assets/fonts/syne-400-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'Syne'; font-style:normal; font-weight:600; font-display:swap; src:url(/assets/fonts/syne-600-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'Syne'; font-style:normal; font-weight:700; font-display:swap; src:url(/assets/fonts/syne-700-normal-latin.woff2) format('woff2'); }
@font-face { font-family:'Syne'; font-style:normal; font-weight:800; font-display:swap; src:url(/assets/fonts/syne-800-normal-latin.woff2) format('woff2'); }

/* ---------- Tokens de marque ---------- */
:root {
  --white:#FFFFFF;
  --black:#050508;
  --navy:#0D1B3E;
  --ink:#090e16;
  --gold:#C9A84C;
  --gold-light:#E8C97A;
  --gold-pale:#F5EDD5;
  --grey:#6B7280;
  --grey-light:#F4F4F6;
  --cream:#faf9f6;
  --border:rgba(0,0,0,0.08);
  --font-display:'Syne',sans-serif;
  --font-body:'DM Sans',sans-serif;
  --font-mono:'Space Mono',monospace;

  /* Mappage vers les variables Elementor / Hello (utiles si un widget les lit) */
  --e-global-color-primary:#050508;
  --e-global-color-secondary:#6B7280;
  --e-global-color-accent:#C9A84C;
  --e-global-color-text:#050508;
}

/* ---------- Base typographique ---------- */
body,
.elementor-kit-default,
button, input, select, textarea {
  font-family:var(--font-body);
}
body {
  background:var(--white);
  color:var(--black);
  font-weight:400;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6,
.entry-title, .page-title,
.woocommerce-products-header__title,
.product_title,
.elementor-heading-title {
  font-family:var(--font-display);
  color:var(--black);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.12;
}
h1,.entry-title,.product_title { font-size:clamp(30px,5vw,52px); }
h2 { font-size:clamp(24px,3.6vw,36px); }
h3 { font-size:clamp(20px,2.4vw,24px); font-weight:700; }
h4 { font-size:19px; font-weight:700; }

p { line-height:1.7; }

a { color:var(--black); text-decoration:none; transition:color .25s ease; }
a:hover { color:var(--gold); }

/* Petits labels / surtitres en mono (utilitaire réutilisable) */
.eyebrow, .post-date, .wp-block-post-date,
.woocommerce-breadcrumb {
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--grey);
}

/* ---------- Boutons (WordPress + blocs) ---------- */
.wp-block-button__link,
.wp-element-button,
input[type=submit],
button.button,
.button {
  font-family:var(--font-display);
  font-weight:700;
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:var(--gold);
  color:var(--black);
  border:2px solid var(--gold);
  border-radius:2px;
  padding:15px 26px;
  transition:all .28s ease;
  cursor:pointer;
}
.wp-block-button__link:hover,
.wp-element-button:hover,
input[type=submit]:hover,
button.button:hover,
.button:hover {
  background:transparent;
  color:var(--black);
  border-color:var(--black);
  transform:translateY(-2px);
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background:transparent; color:var(--black); border-color:var(--border);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  border-color:var(--gold); color:var(--gold);
}

/* ---------- Champs de formulaire ---------- */
input[type=text], input[type=email], input[type=tel], input[type=url],
input[type=password], input[type=search], input[type=number],
textarea, select {
  font-family:var(--font-body);
  border:1px solid var(--border);
  border-radius:3px;
  padding:12px 14px;
  background:var(--white);
  color:var(--black);
  transition:border-color .25s ease, box-shadow .25s ease;
}
input:focus, textarea:focus, select:focus {
  outline:none;
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(201,168,76,.18);
}

/* =========================================================================
   WooCommerce
   ========================================================================= */
.woocommerce .woocommerce-products-header__title { margin-bottom:.4em; }

/* Boutons WooCommerce */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
  font-family:var(--font-display);
  font-weight:700;
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:var(--gold);
  color:var(--black);
  border:2px solid var(--gold);
  border-radius:2px;
  padding:13px 24px;
  transition:all .28s ease;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background:transparent;
  color:var(--black);
  border-color:var(--black);
  transform:translateY(-2px);
}
.woocommerce a.button.disabled,
.woocommerce button.button:disabled { opacity:.5; }

/* Grille produits + cartes */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background:var(--white);
  border:1px solid var(--border);
  border-radius:5px;
  padding:18px 18px 22px;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
  text-align:left;
}
.woocommerce ul.products li.product:hover {
  transform:translateY(-5px);
  box-shadow:0 22px 40px -26px rgba(20,18,12,.4);
  border-color:var(--gold);
}
.woocommerce ul.products li.product a img { border-radius:4px; margin-bottom:14px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family:var(--font-display);
  font-weight:700;
  font-size:17px;
  color:var(--black);
  padding:0 0 6px;
}
.woocommerce ul.products li.product .button { margin-top:8px; }

/* Prix — convention FR « 50 € », symbole après, en or */
.woocommerce-Price-amount,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
  font-family:var(--font-display);
  font-weight:700;
  color:var(--gold);
}
.woocommerce div.product p.price,
.woocommerce div.product span.price { font-size:26px; }
.woocommerce ul.products li.product .price del { color:var(--grey); font-weight:400; opacity:.7; }
.woocommerce ul.products li.product .price ins { text-decoration:none; }

/* Badge promo */
.woocommerce span.onsale {
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:var(--gold);
  color:var(--black);
  border-radius:2px;
  min-height:auto;
  min-width:auto;
  line-height:1;
  padding:7px 11px;
}

/* Onglets fiche produit */
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border-radius:4px 4px 0 0;
  border-color:var(--border);
  background:var(--cream);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  background:var(--white);
  border-bottom-color:var(--white);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family:var(--font-display);
  font-weight:700;
  color:var(--grey);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color:var(--black); }

/* Notices / messages */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-top-color:var(--gold);
  border-radius:3px;
}
.woocommerce-message::before,
.woocommerce-info::before { color:var(--gold); }

/* Tableaux panier / commande */
.woocommerce table.shop_table {
  border-radius:5px;
  border-color:var(--border);
}
.woocommerce table.shop_table th {
  font-family:var(--font-display);
  font-weight:700;
  color:var(--black);
}

/* Avis & étoiles */
.woocommerce .star-rating span::before,
.woocommerce p.stars a::before { color:var(--gold); }

/* Bandeau accent sombre de marque (utilitaire optionnel) */
.brand-dark { background:var(--ink); color:#fff; }
.brand-dark h1,.brand-dark h2,.brand-dark h3 { color:#fff; }
