/*
Theme Name: Entreprise Fischer
Template: kadence
Author: SAS Fischer E & L
Description: Thème enfant Kadence — polices locales (RGPD) et styles des marques Marbrerie Fischer et EF Acoustic Stone.
Version: 1.0
*/

/* ── Polices hébergées en local (conforme RGPD) ───────────────── */
@font-face { font-family:'TrajanEF'; src:url('fonts/trajan.ttf') format('truetype'); font-weight:400; font-display:swap; }
@font-face { font-family:'OptimaEF'; src:url('fonts/optima.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'OptimaEF'; src:url('fonts/optima-italic.ttf') format('truetype'); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:'PTSerifEF'; src:url('fonts/ptserif.ttc') format('truetype'); font-weight:400; font-display:swap; }

/* ── Base ─────────────────────────────────────────────────────── */
body { font-family:'PTSerifEF', Georgia, serif; }

/* ══ MARBRERIE (chaud) ════════════════════════════════════════ */
body.brand-marbrerie { background:#F4EFE6; }
body.brand-marbrerie .site-header,
body.brand-marbrerie .site-footer { background:#F4EFE6; }
body.brand-marbrerie h1,
body.brand-marbrerie h2,
body.brand-marbrerie h3 { font-family:'PTSerifEF', Georgia, serif; color:#5A3D2B; }
body.brand-marbrerie a { color:#8B6B4F; }
.hero-marbrerie { background:#5A3D2B; color:#F4EFE6; text-align:center; padding:4rem 1.5rem; }
.hero-marbrerie h1 { color:#F4EFE6 !important; margin:.6rem 0 .3rem; }
.hero-marbrerie .baseline { color:#DCCBB2; letter-spacing:.22em; text-transform:uppercase; font-size:.85rem; }
.hero-marbrerie img { max-width:180px; margin:0 auto 1rem; }

/* ══ EF ACOUSTIC STONE (sombre / luxe) ════════════════════════ */
body.brand-acoustics { background:#6D6D6D; color:#F4F4F2; font-family:'OptimaEF', 'Segoe UI', sans-serif; }
body.brand-acoustics .site-header,
body.brand-acoustics .site-footer { background:#171717; }
body.brand-acoustics .site-footer * { color:#9a9488 !important; }
body.brand-acoustics h1,
body.brand-acoustics h2,
body.brand-acoustics h3 { font-family:'TrajanEF', serif; color:#F4F4F2; letter-spacing:.04em; }
body.brand-acoustics a { color:#8C7442; }
body.brand-acoustics .entry-content p { color:#C9C4B8; }
.hero-acoustics { background:#171717; color:#F4F4F2; text-align:center; padding:4.5rem 1.5rem; border-bottom:1px solid #34302a; }
.hero-acoustics h1 { color:#F4F4F2 !important; margin:.6rem 0 .4rem; }
.hero-acoustics .baseline { color:#8C7442; letter-spacing:.24em; text-transform:uppercase; font-size:.85rem; font-family:'OptimaEF',sans-serif; }
.hero-acoustics img { max-width:220px; margin:0 auto 1rem; }

/* ══ Portail d'accueil (neutre, les 2 DA) ═════════════════════ */
.portail-choix { display:flex; flex-wrap:wrap; gap:1.2rem; justify-content:center; margin-top:1.5rem; }

/* ── Pages de marque sans en-tête (hero = haut de page) ───────── */
body.brand-marbrerie, body.brand-acoustics { min-height:100vh; display:flex; flex-direction:column; }
.marque-main { flex:1; }
.marque-topbar { position:absolute; top:1rem; left:1.2rem; z-index:5; font-size:.9rem; }
.marque-topbar a { text-decoration:none; padding:.4rem .8rem; border-radius:6px; }
body.brand-marbrerie .marque-topbar a { color:#F4EFE6; background:rgba(0,0,0,.15); }
body.brand-acoustics .marque-topbar a { color:#F4F4F2; background:rgba(255,255,255,.08); }
.marque-foot { text-align:center; padding:2.2rem 1.5rem; font-size:.85rem; line-height:1.9; }
.marque-foot a { text-decoration:none; }
body.brand-marbrerie .marque-foot { border-top:1px solid #DCCBB2; color:#8B6B4F; background:#F4EFE6; }
body.brand-marbrerie .marque-foot a { color:#5A3D2B; }
body.brand-acoustics .marque-foot { border-top:1px solid #565656; color:#E4E2DE; background:#5c5c5c; }
body.brand-acoustics .marque-foot a { color:#8C7442; }

/* ── Chaque section dans sa boîte ─────────────────────────────── */
.marque-main .bloc { max-width:820px; margin:1.6rem auto; padding:1.8rem 2rem; border-radius:12px; }
.marque-main .bloc:first-of-type { margin-top:2.4rem; }
.marque-main .bloc:last-of-type { margin-bottom:2.6rem; }
.marque-main .bloc h2 { margin-top:0; }
body.brand-marbrerie .bloc { background:#ffffff; border:1px solid #DCCBB2; box-shadow:0 3px 14px rgba(90,61,43,.06); }
body.brand-acoustics .bloc { background:#1d1d1d; border:1px solid #34302a; }

/* ── Styles de boîtes réutilisables (choisis dans l'éditeur) ──── */
.wp-block-group.is-style-boite-marbrerie { background:#5A3D2B; color:#F4EFE6; border-radius:12px; padding:1.8rem 2rem; }
.wp-block-group.is-style-boite-marbrerie :where(h1,h2,h3,h4){ color:#F4EFE6; font-family:'PTSerifEF',Georgia,serif; }
.wp-block-group.is-style-boite-marbrerie a{ color:#DCCBB2; }
.wp-block-group.is-style-boite-acoustics { background:#171717; color:#D8D2C4; border:1px solid #34302a; border-radius:12px; padding:1.8rem 2rem; }
.wp-block-group.is-style-boite-acoustics :where(h1,h2,h3,h4){ color:#F4F4F2; font-family:'TrajanEF',serif; letter-spacing:.03em; }
.wp-block-group.is-style-boite-acoustics a{ color:#8C7442; }
.wp-block-group.is-style-boite-claire { background:#ffffff; color:#3a332c; border:1px solid #DCCBB2; border-radius:12px; padding:1.8rem 2rem; box-shadow:0 3px 14px rgba(90,61,43,.06); }

/* ── Colonnes : boîtes de même hauteur ────────────────────────── */
.wp-block-columns { align-items: stretch; }
.wp-block-column:has(> [class*="is-style-boite-"]) { display: flex; }
.wp-block-column > [class*="is-style-boite-"] { width: 100%; }

/* ── Kadence : colonnes d'une rangée à la même hauteur ────────── */
.kt-row-column-wrap { align-items: stretch; }
.wp-block-kadence-column {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: stretch !important;
}
.wp-block-kadence-column > .kt-inside-inner-col { height: 100%; }

/* ══ Portail d'accueil (éditable en blocs) ════════════════════ */
body.portail-page { min-height:100vh; display:flex; flex-direction:column;
  font-family:'OptimaEF','Segoe UI',sans-serif; color:#24201C;
  background:
    radial-gradient(1200px 600px at 50% -10%, #fbf8f2 0%, #F4EFE6 55%),
    repeating-linear-gradient(135deg, rgba(139,107,79,.05) 0 2px, transparent 2px 22px); }
.portail-main { flex:1; width:100%; max-width:960px; margin:0 auto; padding:3rem 1.5rem; }
.portail-titre { text-align:center; font-family:'PTSerifEF',Georgia,serif; color:#5A3D2B; font-size:clamp(1.9rem,5vw,2.8rem); margin:0 0 .3rem; }
.portail-tagline { text-align:center; color:#8B6B4F; margin:0 0 2rem; }
.portail-cards img { display:block; margin-inline:auto; }
.is-style-boite-marbrerie .wp-block-button__link { background:#DCCBB2; color:#3a281b; }
.is-style-boite-acoustics .wp-block-button__link { background:#8C7442; color:#171717; }
.portail-foot { text-align:center; padding:1.4rem; color:#8B6B4F; font-size:.85rem; border-top:1px solid #DCCBB2; }

/* ── Portail : toute la carte est cliquable ───────────────────── */
.portail-cards .wp-block-column > .wp-block-group {
    position: relative;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}
.portail-cards .wp-block-column > .wp-block-group:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0,0,0,.20);
}
.portail-cards .wp-block-button__link::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

/* ── Onglets Funéraire / Décoratif (page Marbrerie) ───────────── */
.marque-onglets { display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; margin:1.6rem auto .5rem; }
.onglet-btn { font-family:'PTSerifEF',Georgia,serif; font-size:1rem; padding:.6rem 1.4rem; border-radius:9px; border:2px solid #5A3D2B; background:transparent; color:#5A3D2B; cursor:pointer; transition:background .2s,color .2s,border-color .2s; }
.onglet-btn:hover { background:#8B6B4F; border-color:#8B6B4F; color:#F4EFE6; }
.onglet-btn.is-active { background:#5A3D2B; color:#F4EFE6; }
/* Masquage des onglets uniquement sur le site public (pas dans l'éditeur) */
body.brand-marbrerie .tab-pane { display:none; }
body.brand-marbrerie .tab-pane.is-active { display:block; animation: ef-fadeTab .38s ease both; }
@keyframes ef-fadeTab {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}
/* Petit effet sur les boutons au clic */
.onglet-btn { transform: scale(1); }
.onglet-btn:active { transform: scale(.96); }
