/* =============================================================================
   Piscinity — Surcharges OceanWP / Elementor
   Cibler avec .piscinity (classe ajoutée au <body>) pour limiter la portée.
   ============================================================================= */

/* Reset doux global -------------------------------------------------------- */
body.piscinity {
    background: var(--color-bg-page);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: var(--fs-body);
    line-height: var(--lh-relaxed);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Titres globaux : Bodoni Moda, mais on NE force PAS de couleur ici.
   Chaque section / composant garde la main sur sa propre couleur. */
body.piscinity h1,
body.piscinity h2,
body.piscinity h3,
body.piscinity .elementor-heading-title {
    font-family: var(--font-display);
    line-height: var(--lh-tight);
    font-weight: 500;
    letter-spacing: -0.01em;
    margin-top: 0;
}

body.piscinity h4 {
    font-family: var(--font-body);
    font-weight: 600;
    color: var(--color-ink);
    font-size: var(--fs-h4-mobile);
    letter-spacing: 0;
    margin-top: 0;
}
@media (min-width: 768px) {
    body.piscinity h4 { font-size: var(--fs-h4); }
}

/* Liens corps de texte (hors boutons) ------------------------------------- */
body.piscinity a {
    color: var(--color-primary);
    transition: color var(--transition-fast);
}
body.piscinity a:hover {
    color: var(--color-cta-hover);
}
body.piscinity .entry-content a:not(.piscinity-btn):not(.elementor-button) {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 1.5px;
    text-decoration-color: rgba(14, 92, 112, 0.4);
}
body.piscinity .entry-content a:not(.piscinity-btn):not(.elementor-button):hover {
    text-decoration-color: var(--color-cta);
}

/* Conteneurs OceanWP par defaut, on cale sur la grille --------------------- */
body.piscinity .container {
    max-width: var(--container-max);
}

/* =============================================================================
   Front-page (.piscinity-fullbleed) : neutralise totalement les conteneurs
   OceanWP qui rétréciraient le rendu pleine largeur ou créeraient des marges.
   ============================================================================= */
body.piscinity-fullbleed {
    margin: 0 !important;
    padding: 0 !important;
}
body.piscinity-fullbleed #outer-wrap,
body.piscinity-fullbleed #wrap {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}
body.piscinity-fullbleed #main {
    padding: 0 !important;
    margin: 0 !important;
}
body.piscinity-fullbleed #content-wrap {
    padding: 0 !important;
    margin: 0 !important;
}
body.piscinity-fullbleed .container,
body.piscinity-fullbleed #content-wrap > .container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}
body.piscinity-fullbleed .content-area,
body.piscinity-fullbleed .content-area-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.piscinity-fullbleed #right-sidebar,
body.piscinity-fullbleed #left-sidebar {
    display: none !important;
}

/* Masquage agressif des elements OceanWP / Elementor Header Footer
   uniquement sur la home (notre header/footer custom prennent le relais). */
body.piscinity-fullbleed .page-header,
body.piscinity-fullbleed #site-header,
body.piscinity-fullbleed #site-header.is-fixed,
body.piscinity-fullbleed #site-navigation-wrap,
body.piscinity-fullbleed #top-bar-wrap,
body.piscinity-fullbleed .oceanwp-mobile-menu-icon,
body.piscinity-fullbleed .oceanwp-mobile-menu-icon-header,
body.piscinity-fullbleed #footer,
body.piscinity-fullbleed #footer-widgets,
body.piscinity-fullbleed #footer-bottom,
body.piscinity-fullbleed .ehf-template-oceanwp #site-header,
body.piscinity-fullbleed .elementor-location-header,
body.piscinity-fullbleed .elementor-location-footer {
    display: none !important;
}

/* Sécurité : pas de marges WP par défaut sur les sections du child */
.piscinity-hero,
.piscinity-marquee,
.piscinity-ctabig,
.piscinity-footer {
    margin: 0;
}

/* Fix WP-CLI / debug notice (sécurité) */
body.piscinity .xdebug-error,
body.piscinity #php-error-list {
    display: none !important;
}

/* Empêcher tout scroll horizontal */
html, body {
    overflow-x: hidden;
}

/* =============================================================================
   Masquer les widgets tiers / boutons flottants legacy (tout le site).
   Demande client : le bouton flottant "Contactez nous" (plugin Call Now Button)
   est masque sur l'ensemble du site pour rester coherent avec la refonte.
   Le numero reste accessible dans le header (CTA devis) et le footer (tel:).
   ============================================================================= */
#callnowbutton,
.call-now-button,
.ctcc-widget,
.ctcc-button,
[class*="callcontact"],
.csa-callsupport,
.convert-pro-trigger,
#pp-mobile-fluid {
    display: none !important;
}
