/* ============================================================
 * Sephat — feuille de style principale
 * Charte : bleu cyan (#0080C0) + bleu profond (#003B63) du logo,
 * argent/chrome, accent ambre. Esthétique industrielle moderne.
 * ============================================================ */

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--sephat-ink);
  background: var(--sephat-bg);
}

a { color: var(--sephat-cyan); }
a:hover { color: var(--sephat-cyan-dark); }

.button, button, input[type="submit"],
.woocommerce a.button, .woocommerce button.button {
  background: var(--sephat-cyan);
  color: #fff;
  border-radius: var(--sephat-radius);
  font-weight: 500;
  border: none;
  transition: background .15s ease;
}
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover {
  background: var(--sephat-cyan-dark);
  color: #fff;
}

/* ---------- Header ---------- */
.sephat-topbar {
  background: var(--sephat-deep);
  color: #cfe6f3;
  font-size: 13px;
  padding: 6px 0;
}
.sephat-topbar .col-full { display:flex; justify-content:flex-end; gap:20px; align-items:center; }
.sephat-topbar a { color:#cfe6f3; text-decoration:none; }
.sephat-topbar a:hover { color:#fff; }

.sephat-header {
  background: #fff;
  border-bottom: 1px solid var(--sephat-line);
  padding: 14px 0;
}
.sephat-header .col-full {
  display:flex; align-items:center; gap:24px; justify-content:space-between;
}
.sephat-logo img { max-height:62px; width:auto; }

/* Barre de recherche proéminente (cœur du parcours catalogue volumineux) */
.sephat-search { flex:1; max-width:560px; }
.sephat-search form { display:flex; border:2px solid var(--sephat-cyan); border-radius:var(--sephat-radius); overflow:hidden; }
.sephat-search input[type="search"] {
  flex:1; border:none; height:44px; padding:0 14px; font-size:15px; outline:none;
}
.sephat-search button {
  background: var(--sephat-deep); color:#fff; border:none; padding:0 20px; cursor:pointer;
}
.sephat-search button:hover { background: var(--sephat-cyan); }

.sephat-header-actions { display:flex; gap:18px; align-items:center; font-size:14px; }
.sephat-header-actions a { color: var(--sephat-deep); text-decoration:none; display:flex; align-items:center; gap:6px; }
.sephat-header-actions a:hover { color: var(--sephat-cyan); }
.sephat-header-actions .dashicons { font-size:20px; }

/* ---------- Navigation familles ---------- */
.sephat-nav { background: var(--sephat-cyan); }
.sephat-nav ul { display:flex; flex-wrap:wrap; margin:0; padding:0; list-style:none; }
.sephat-nav li a {
  display:block; color:#fff; padding:12px 16px; text-decoration:none; font-size:14px; font-weight:500;
}
.sephat-nav li a:hover { background: var(--sephat-deep); }

/* ---------- Hero accueil ---------- */
.sephat-hero {
  background: linear-gradient(135deg, var(--sephat-cyan) 0%, var(--sephat-deep) 100%);
  color:#fff; text-align:center; padding:54px 20px;
}
.sephat-hero .eyebrow { color:#cfe9f7; font-size:14px; letter-spacing:.5px; margin:0 0 8px; }
.sephat-hero h1 { color:#fff; font-size:32px; font-weight:600; margin:0 0 22px; line-height:1.25; }
.sephat-hero .hero-search { max-width:540px; margin:0 auto; display:flex; background:#fff; border-radius:var(--sephat-radius); overflow:hidden; }
.sephat-hero .hero-search input { flex:1; border:none; height:50px; padding:0 16px; font-size:15px; }
.sephat-hero .hero-search button { background:var(--sephat-accent); color:#412402; border:none; padding:0 24px; font-weight:600; cursor:pointer; }
.sephat-hero .hero-hint { color:#bfe3f5; font-size:13px; margin:14px 0 0; }

/* ---------- Grille des familles ---------- */
.sephat-families { max-width:1200px; margin:0 auto; padding:36px 20px 12px; }
.sephat-families h2 { font-size:22px; font-weight:600; color:var(--sephat-deep); margin:0 0 20px; }
.sephat-family-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; }
.sephat-family-card {
  background:#fff; border:1px solid var(--sephat-line); border-top:3px solid var(--sephat-cyan);
  border-radius:0 0 var(--sephat-radius) var(--sephat-radius); padding:18px; text-decoration:none;
  transition: box-shadow .15s ease, transform .15s ease; display:block;
}
.sephat-family-card:hover { box-shadow:0 6px 18px rgba(0,128,192,.12); transform:translateY(-2px); }
.sephat-family-card .icon { font-size:26px; color:var(--sephat-cyan); }
.sephat-family-card .name { font-size:15px; font-weight:600; color:var(--sephat-ink); margin:10px 0 3px; }
.sephat-family-card .desc { font-size:12px; color:var(--sephat-muted); margin:0; }

/* ---------- Bandeau réassurance ---------- */
.sephat-trust { max-width:1200px; margin:8px auto 40px; padding:0 20px; }
.sephat-trust-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:14px; }
.sephat-trust-item { background:var(--sephat-cyan-light); border-radius:var(--sephat-radius); padding:16px; text-align:center; }
.sephat-trust-item .icon { font-size:24px; color:var(--sephat-cyan-dark); }
.sephat-trust-item .label { font-size:14px; font-weight:500; color:var(--sephat-deep); margin:8px 0 0; }

/* ---------- Fiche produit ---------- */
.sephat-ref { font-size:14px; color:var(--sephat-muted); margin:0 0 8px; }
.sephat-ref span { font-weight:600; color:var(--sephat-ink); }
.sephat-price-na { color:var(--sephat-cyan-dark); font-weight:600; font-size:18px; }
.sephat-quote-btn { background:var(--sephat-accent) !important; color:#412402 !important; }
.sephat-quote-btn:hover { background:#d98d18 !important; color:#412402 !important; }

/* ---------- Boutique ---------- */
.woocommerce ul.products li.product { background:#fff; border:1px solid var(--sephat-line); border-radius:var(--sephat-radius); padding:14px; }
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:14px; color:var(--sephat-ink); }

/* ---------- Footer ---------- */
.sephat-footer-credit { text-align:center; color:var(--sephat-muted); font-size:13px; }

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .sephat-header .col-full { flex-wrap:wrap; gap:12px; }
  .sephat-search { order:3; max-width:100%; flex-basis:100%; }
  .sephat-hero h1 { font-size:24px; }
}

/* ---------- Pleine largeur sur pages e-commerce (sidebar retirée) ---------- */
.sephat-full-width #primary,
.sephat-full-width .content-area { width:100% !important; float:none !important; margin:0 !important; }
.sephat-full-width #secondary,
.sephat-full-width .widget-area { display:none !important; }

/* Masque le SKU natif WooCommerce (on affiche notre "Référence" en haut) */
.single-product .product_meta .sku_wrapper { display:none; }

/* Cadrage propre de l'image produit */
.single-product div.product div.images img { background:#fff; border:1px solid var(--sephat-line); border-radius:var(--sephat-radius); }

/* Le bloc familles de l'accueil : laisser respirer */
.sephat-family-grid { margin-bottom:8px; }
