/*
Theme Name: SexyParis Child
Theme URI: https://sexyparis.biz
Description: Thème enfant de luxe et feutré pour SexyParis.biz - Réseau privé et annuaire adultes Île-de-France.
Author: CHL Conseil
Author URI: https://sexyparis.biz
Template: astra
Version: 1.0.1
Text Domain: astra-child-sexyparis
*/

/* ==========================================================================
   CHARTE GRAPHIQUE LUXE & SEXY - SEXYPARIS.BIZ
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');

:root {
    --sp-bg-main: #0a0a0a;
    --sp-bg-card: #141414;
    --sp-gold: #c5a059;
    --sp-gold-hover: #e0bc75;
    --sp-red: #6b0505;
    --sp-text: #e0e0e0;
    --sp-muted: #888888;
    --sp-border: rgba(197, 160, 89, 0.25);
    --sp-font-title: 'Playfair Display', Georgia, serif;
    --sp-font-body: 'Montserrat', Helvetica, Arial, sans-serif;
}

/* Base du site */
body, html {
    background-color: var(--sp-bg-main) !important;
    color: var(--sp-text) !important;
    font-family: var(--sp-font-body) !important;
    line-height: 1.7;
}

h1, h2, h3, h4, h5, h6, .main-title {
    font-family: var(--sp-font-title) !important;
    color: var(--sp-gold) !important;
    letter-spacing: 0.5px;
}

a {
    color: var(--sp-gold);
    text-decoration: none;
    transition: color 0.3s ease;
}

a:hover {
    color: var(--sp-gold-hover);
}

/* ==========================================================================
   EN-TÊTE & NAVIGATION ASTRA (Correction définitive du fond blanc)
   ========================================================================== */

.site-header, 
#masthead, 
.ast-main-header-wrap, 
.ast-primary-header-bar, 
.ast-builder-header-wrap,
.ast-mobile-header-wrap,
.ast-mobile-header-content {
    background-color: var(--sp-bg-main) !important;
    border-bottom: 1px solid var(--sp-border) !important;
}

.main-header-menu a, 
.ast-builder-menu-mobile .ast-menu-toggle {
    color: var(--sp-text) !important;
    font-size: 0.85rem !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.main-header-menu a:hover {
    color: var(--sp-gold) !important;
}

/* Sous-menus (Dropdowns) Astra */
.main-header-menu .sub-menu {
    background-color: var(--sp-bg-card) !important;
    border: 1px solid var(--sp-border) !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.8) !important;
}

.main-header-menu .sub-menu a {
    color: var(--sp-text) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.main-header-menu .sub-menu a:hover {
    color: var(--sp-gold) !important;
    background-color: transparent !important;
}

/* ==========================================================================
   BOUTONS LUXURY STYLE & FORMULAIRES GÉNÉRAUX
   ========================================================================== */

.button, .ast-button, input[type="submit"], button {
    background-color: var(--sp-gold) !important;
    color: #000000 !important;
    font-family: var(--sp-font-body) !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border-radius: 0px !important;
    border: 1px solid var(--sp-gold) !important;
    padding: 12px 28px !important;
    transition: all 0.3s ease !important;
}

.button:hover, .ast-button:hover, input[type="submit"]:hover, button:hover {
    background-color: transparent !important;
    color: var(--sp-gold) !important;
    border-color: var(--sp-gold) !important;
}

/* ==========================================================================
   PAGE DE VÉRIFICATION D'ÂGE (AGE GATE / RESTRICTION)
   ========================================================================== */

.age-gate-wrapper, 
#age-gate-wrapper,
.age-gate-form,
div#age-gate-wrap,
.age-gate-challenge {
    background-color: var(--sp-bg-main) !important;
    color: var(--sp-text) !important;
}

.age-gate-wrapper select, 
.age-gate-wrapper input,
#age-gate-wrapper select,
#age-gate-wrapper input,
.age-gate-challenge select,
.age-gate-challenge input {
    background-color: var(--sp-bg-card) !important;
    color: var(--sp-text) !important;
    border: 1px solid var(--sp-border) !important;
    padding: 10px !important;
    border-radius: 0px !important;
}

.age-gate-wrapper button, 
.age-gate-wrapper input[type="submit"],
#age-gate-wrapper button,
#age-gate-wrapper input[type="submit"],
.age-gate-submit,
.age-gate-submit input[type="submit"] {
    background-color: var(--sp-gold) !important;
    color: #000000 !important;
    font-family: var(--sp-font-body) !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    border-radius: 0px !important;
    border: 1px solid var(--sp-gold) !important;
    padding: 12px 28px !important;
    cursor: pointer;
}

.age-gate-wrapper button:hover, 
.age-gate-wrapper input[type="submit"]:hover,
#age-gate-wrapper button:hover,
#age-gate-wrapper input[type="submit"]:hover,
.age-gate-submit:hover {
    background-color: transparent !important;
    color: var(--sp-gold) !important;
}

/* ==========================================================================
   PERSONNALISATION BUDDYPRESS (Le Cercle)
   ========================================================================== */

#buddypress {
    background: var(--sp-bg-card);
    border: 1px solid var(--sp-border);
    padding: 25px;
    margin-top: 20px;
}

#buddypress div.item-list-tabs ul li a {
    color: var(--sp-text) !important;
}

#buddypress div.item-list-tabs ul li.selected a,
#buddypress div.item-list-tabs ul li.current a {
    color: var(--sp-gold) !important;
    border-bottom: 2px solid var(--sp-gold) !important;
}

#buddypress ul.item-list li {
    border-bottom: 1px solid var(--sp-border) !important;
    padding: 15px 0;
}

/* ==========================================================================
   PERSONNALISATION GEODIRECTORY (Annuaire Île-de-France)
   ========================================================================== */

.geodir-archive-content, .geodir-single-tax-content {
    background-color: var(--sp-bg-card) !important;
    border: 1px solid var(--sp-border) !important;
}

.geodir-bubble_desc h4 a {
    color: var(--sp-gold) !important;
}

/* ==========================================================================
   PIED DE PAGE (FOOTER ASTRA)
   ========================================================================== */

.site-footer, 
.ast-builder-footer-wrap {
    background-color: var(--sp-bg-main) !important;
    border-top: 1px solid var(--sp-border) !important;
    color: var(--sp-muted) !important;
}

.site-footer .widget-title,
.ast-builder-footer-wrap .widget-title {
    color: var(--sp-gold) !important;
    font-family: var(--sp-font-title) !important;
    font-size: 1.2rem !important;
    border-bottom: 1px solid var(--sp-border) !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

.site-footer a,
.ast-builder-footer-wrap a {
    color: var(--sp-text) !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

.site-footer a:hover,
.ast-builder-footer-wrap a:hover {
    color: var(--sp-gold-hover) !important;
}

.ast-footer-copyright {
    background-color: var(--sp-bg-main) !important;
    border-top: 1px solid var(--sp-border) !important;
    color: var(--sp-muted) !important;
    padding: 15px 0 !important;
    font-size: 0.85rem !important;
}