/*
Theme Name: Maison Carat Child
Template: astra
Description: Thème enfant Astra pour Maison Carat — organisme de formation esthétique certifié Qualiopi (Aix-en-Provence). Charte Quiet Luxury : crème #F8F1E8, rose poudré #C9A0A8, rose foncé #8B5A66, doré bronze #B8935A, noir chaud #1A1A1A. Typo Cormorant Garamond (titres) + Inter (corps).
Version: 1.0.2
Author: Maison Carat
*/

/* ========================================
   RESERVATION CTA — Maison Carat
   ======================================== */

/* --- Bouton "Prendre RDV" dans le menu principal --- */
.main-header-menu .mc-menu-cta > a,
.main-navigation .mc-menu-cta > a,
.ast-nav-menu .mc-menu-cta > a,
#ast-hf-mobile-menu .mc-menu-cta > a {
    background-color: #B8935A !important;
    color: #F8F1E8 !important;
    padding: 10px 22px !important;
    border-radius: 2px !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 0.85em;
    font-weight: 500;
    transition: all 0.3s ease;
    margin-left: 8px;
    display: inline-block;
}

.main-header-menu .mc-menu-cta > a:hover,
.main-navigation .mc-menu-cta > a:hover,
.ast-nav-menu .mc-menu-cta > a:hover,
#ast-hf-mobile-menu .mc-menu-cta > a:hover {
    background-color: #8B5A66 !important;
    color: #F8F1E8 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(139, 90, 102, 0.25);
}

/* --- Bouton flottant "Reserver" (Floating Action Button) --- */
.mc-floating-cta {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9999;
    background-color: #B8935A;
    color: #F8F1E8;
    padding: 14px 26px;
    border-radius: 50px;
    text-decoration: none !important;
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    box-shadow: 0 6px 20px rgba(26, 26, 26, 0.18);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(248, 241, 232, 0.15);
}

.mc-floating-cta::before {
    content: "\2709";
    font-size: 16px;
    line-height: 1;
}

.mc-floating-cta:hover {
    background-color: #8B5A66;
    color: #F8F1E8 !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(26, 26, 26, 0.25);
}

/* --- Ajustements mobile --- */
@media (max-width: 768px) {
    .mc-floating-cta {
        bottom: 16px;
        right: 16px;
        padding: 12px 20px;
        font-size: 13px;
    }
    .mc-floating-cta::before {
        font-size: 14px;
    }
}

/* Cacher sur la page de reservation elle-meme */
.page-id-787 .mc-floating-cta {
    display: none;
}

/* QUIET LUXURY REFINEMENT */

/* ========================================
   QUIET LUXURY REFINEMENT — Maison Carat
   Amélioration générale du look
   ======================================== */

:root {
    --mc-creme: #F8F1E8;
    --mc-rose-poudre: #C9A0A8;
    --mc-rose-fonce: #8B5A66;
    --mc-dore: #B8935A;
    --mc-noir: #1A1A1A;
    --mc-gris-doux: #E8E2D8;
}

/* Typographie plus aérée */
body, .site-content {
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--mc-noir);
    line-height: 1.7;
    background-color: #FEFCF9;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Cormorant Garamond', 'Playfair Display', serif;
    font-weight: 400;
    letter-spacing: 0.01em;
    color: var(--mc-noir);
}

h1 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.2; }
h2 { font-size: clamp(1.6rem, 4vw, 2.5rem); line-height: 1.3; margin-bottom: 1.5rem; }
h3 { font-size: clamp(1.2rem, 3vw, 1.6rem); }

/* Espacements plus généreux entre sections */
.elementor-section {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
}

@media (max-width: 768px) {
    .elementor-section {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }
}

/* Images plus élégantes */
.elementor-widget-image img {
    border-radius: 2px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Boutons unifiés Quiet Luxury */
.elementor-button, .wp-block-button__link, button.submit {
    background-color: var(--mc-noir) !important;
    color: var(--mc-creme) !important;
    border: 1px solid var(--mc-noir) !important;
    border-radius: 2px !important;
    padding: 14px 32px !important;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: 0.85em !important;
    font-weight: 500;
    transition: all 0.3s ease;
}

.elementor-button:hover, .wp-block-button__link:hover, button.submit:hover {
    background-color: var(--mc-dore) !important;
    border-color: var(--mc-dore) !important;
    color: var(--mc-creme) !important;
    transform: translateY(-1px);
}

/* Réduire les couleurs trop vives */
.elementor-widget-text-editor,
.elementor-widget-heading {
    color: var(--mc-noir);
}

/* Cards / boîtes prestations */
.elementor-widget-image-box .elementor-image-box-content,
.elementor-widget-icon-box .elementor-icon-box-content {
    padding: 20px 0;
}

/* Réduire le "fouillis" visuel : moins de bordures, plus d'espaces */
.elementor-widget-wrap {
    gap: 24px;
}

/* Menu plus épuré */
.ast-primary-header-bar {
    background-color: rgba(254, 252, 249, 0.98) !important;
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--mc-gris-doux);
}

.main-navigation a,
.ast-nav-menu > li > a {
    letter-spacing: 0.05em;
    font-weight: 400;
    color: var(--mc-noir) !important;
    transition: color 0.3s ease;
}

.main-navigation a:hover,
.ast-nav-menu > li > a:hover {
    color: var(--mc-dore) !important;
}

/* Footer plus doux */
.site-footer {
    background-color: var(--mc-noir);
    color: var(--mc-creme);
    padding: 60px 0 30px;
}

/* Formulaires élégants (SureForms + LatePoint) */
input[type="text"], input[type="email"], input[type="tel"],
select, textarea {
    border: 1px solid var(--mc-gris-doux) !important;
    border-radius: 2px !important;
    padding: 12px 16px !important;
    font-family: 'Inter', sans-serif !important;
    transition: border-color 0.3s ease;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus,
select:focus, textarea:focus {
    border-color: var(--mc-dore) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(184, 147, 90, 0.1) !important;
}

/* Container global : max-width plus généreux */
.elementor-container {
    max-width: 1240px;
}

/* Titres avec fine ligne décorative */
.elementor-widget-heading h2::after {
    content: '';
    display: block;
    width: 40px;
    height: 1px;
    background-color: var(--mc-dore);
    margin: 16px auto 0;
}

/* Suppression des ombres trop marquées */
.elementor-widget {
    box-shadow: none !important;
}

/* Nettoyer les fonds trop colorés */
.elementor-section-background-overlay {
    opacity: 0.15 !important;
}

/* Comment: end quiet luxury refinement */


/* MC LUMIERE START */
/* ========================================
   MAISON CARAT — Homepage Lumière DA
   Palette : crème #F8F1E8, taupe #A48F7A, brun #4A3E36, doré #B8935A
   ======================================== */

:root {
    --mc-creme: #F8F1E8;
    --mc-nude: #EDE3D5;
    --mc-taupe: #A48F7A;
    --mc-brun: #4A3E36;
    --mc-brun-clair: #6B5B4E;
    --mc-dore: #B8935A;
    --mc-noir: #1A1A1A;
    --mc-blanc-doux: #FEFCF9;
}

/* Reset section Elementor pour laisser mon design respirer */
.elementor-section, .e-con {
    padding: 0 !important;
}

/* Container général */
.mc-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px;
}

.mc-section {
    padding: 80px 0;
    background: var(--mc-blanc-doux);
}
.mc-section__title {
    font-family: 'Cormorant Garamond', 'Playfair Display', serif;
    font-weight: 400;
    font-size: clamp(2rem, 5vw, 3.5rem);
    line-height: 1.15;
    color: var(--mc-noir);
    margin: 0.4em 0 0.6em;
    letter-spacing: -0.01em;
}
.mc-section__title em {
    font-style: italic;
    color: var(--mc-dore);
}
.mc-section__intro {
    color: var(--mc-brun-clair);
    max-width: 640px;
    margin: 0 auto 40px;
    font-size: 1rem;
    line-height: 1.7;
}
.mc-section__cta { margin-top: 40px; }

.mc-eyebrow {
    font-family: 'Inter', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    font-size: 0.72rem;
    color: var(--mc-taupe);
    font-weight: 500;
    margin: 0 0 12px;
}
.mc-center { text-align: center; }
.mc-muted { color: var(--mc-brun-clair); font-size: 0.92rem; }

/* Boutons */
.mc-btn {
    display: inline-block;
    padding: 14px 28px;
    font-family: 'Inter', sans-serif;
    font-size: 0.82rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none !important;
    border-radius: 2px;
    transition: all 0.3s ease;
    border: 1px solid transparent;
    font-weight: 500;
    cursor: pointer;
}
.mc-btn--primary {
    background: var(--mc-noir);
    color: var(--mc-creme) !important;
    border-color: var(--mc-noir);
}
.mc-btn--primary:hover { background: var(--mc-dore); border-color: var(--mc-dore); }
.mc-btn--ghost {
    background: transparent;
    color: var(--mc-noir) !important;
    border-color: var(--mc-noir);
}
.mc-btn--ghost:hover { background: var(--mc-noir); color: var(--mc-creme) !important; }
.mc-btn--ghost-light {
    background: transparent;
    color: var(--mc-creme) !important;
    border-color: var(--mc-creme);
}
.mc-btn--ghost-light:hover { background: var(--mc-creme); color: var(--mc-noir) !important; }
.mc-btn--small { padding: 10px 20px; font-size: 0.72rem; }

/* ============ HERO ============ */
.mc-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 90vh;
    background: var(--mc-creme);
}
.mc-hero__media {
    position: relative;
    overflow: hidden;
    order: 2;
}
.mc-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.mc-hero__content {
    padding: 80px 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    order: 1;
}
.mc-hero__title {
    font-family: 'Cormorant Garamond', 'Playfair Display', serif;
    font-weight: 300;
    font-size: clamp(3.5rem, 8vw, 6rem);
    line-height: 0.95;
    letter-spacing: -0.02em;
    color: var(--mc-noir);
    margin: 12px 0 20px;
}
.mc-hero__subtitle {
    color: var(--mc-taupe);
    font-size: 1rem;
    letter-spacing: 0.03em;
    margin: 0 0 8px;
    font-weight: 500;
}
.mc-hero__tagline {
    color: var(--mc-brun-clair);
    font-size: 1rem;
    line-height: 1.65;
    max-width: 460px;
    margin: 8px 0 32px;
}
.mc-hero__cta { display: flex; gap: 14px; flex-wrap: wrap; }

/* ============ 3 UNIVERS ============ */
.mc-univers { background: var(--mc-creme); }
.mc-univers__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 48px;
}
.mc-univers__card {
    background: var(--mc-blanc-doux);
    padding: 40px 32px;
    border: 1px solid var(--mc-nude);
    text-decoration: none !important;
    color: inherit !important;
    display: block;
    transition: all 0.4s ease;
    position: relative;
}
.mc-univers__card:hover {
    background: var(--mc-noir);
    color: var(--mc-creme) !important;
    transform: translateY(-4px);
}
.mc-univers__card:hover h3, .mc-univers__card:hover p, .mc-univers__card:hover .mc-univers__num {
    color: var(--mc-creme) !important;
}
.mc-univers__num {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2rem;
    color: var(--mc-dore);
    font-weight: 400;
    font-style: italic;
}
.mc-univers__card h3 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.55rem;
    margin: 20px 0 12px;
    color: var(--mc-noir);
}
.mc-univers__card p {
    color: var(--mc-brun-clair);
    font-size: 0.92rem;
    line-height: 1.7;
    margin: 0 0 24px;
}
.mc-arrow {
    display: inline-block;
    color: var(--mc-dore);
    font-size: 1.2rem;
    letter-spacing: 0.1em;
}

/* ============ CARDS (Prestations) ============ */
.mc-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 28px;
    margin-top: 48px;
}
.mc-card {
    background: var(--mc-creme);
    overflow: hidden;
    border-radius: 2px;
    transition: all 0.4s ease;
}
.mc-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(74, 62, 54, 0.12); }
.mc-card__media {
    aspect-ratio: 4 / 3;
    overflow: hidden;
}
.mc-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}
.mc-card:hover .mc-card__media img { transform: scale(1.05); }
.mc-card__body {
    padding: 28px 24px;
}
.mc-card__body h3 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.5rem;
    margin: 0 0 8px;
    color: var(--mc-noir);
}
.mc-card__body p {
    color: var(--mc-brun-clair);
    font-size: 0.9rem;
    line-height: 1.6;
    margin: 0 0 14px;
}
.mc-card__price {
    color: var(--mc-noir);
    font-size: 0.95rem !important;
    margin: 14px 0 18px !important;
    padding-top: 14px;
    border-top: 1px solid var(--mc-nude);
    letter-spacing: 0.02em;
}
.mc-card__price strong { color: var(--mc-dore); font-weight: 600; }

/* ============ FORMATIONS ============ */
.mc-formations { background: var(--mc-creme); }
.mc-cards--formations {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.mc-formation-card {
    background: var(--mc-blanc-doux);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.4s ease;
    border: 1px solid var(--mc-nude);
}
.mc-formation-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(74, 62, 54, 0.12); }
.mc-formation-card__media { aspect-ratio: 16 / 10; overflow: hidden; }
.mc-formation-card__media img { width: 100%; height: 100%; object-fit: cover; }
.mc-formation-card__body { padding: 28px 24px; flex: 1; display: flex; flex-direction: column; }
.mc-formation-card__body h3 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.5rem;
    margin: 8px 0;
    color: var(--mc-noir);
}
.mc-formation-card__body p {
    color: var(--mc-brun-clair);
    font-size: 0.9rem;
    line-height: 1.6;
    margin: 0 0 14px;
    flex: 1;
}
.mc-formation-card__price {
    color: var(--mc-noir);
    padding-top: 14px;
    border-top: 1px solid var(--mc-nude);
    margin: 14px 0 18px !important;
}
.mc-formation-card__price strong { color: var(--mc-dore); font-weight: 600; }

/* ============ QUALIOPI ============ */
.mc-qualiopi { background: var(--mc-blanc-doux); }
.mc-qualiopi__wrap {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 48px;
    align-items: center;
}
.mc-qualiopi__badge img { max-width: 100%; height: auto; }
.mc-qualiopi__text h3 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.9rem;
    margin: 8px 0 16px;
    line-height: 1.3;
    color: var(--mc-noir);
}
.mc-qualiopi__text h3 em { color: var(--mc-dore); font-style: italic; }
.mc-qualiopi__text p { color: var(--mc-brun-clair); line-height: 1.7; margin: 0 0 12px; }

/* ============ RESSOURCES / BOUTIQUE ============ */
.mc-ressources { background: var(--mc-blanc-doux); }
.mc-shop {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 24px;
    margin-top: 48px;
}
.mc-shop-card {
    background: var(--mc-creme);
    padding: 32px 28px;
    border: 1px solid var(--mc-nude);
    display: flex;
    flex-direction: column;
}
.mc-shop-card--featured {
    grid-row: span 1;
    background: var(--mc-blanc-doux);
    border: 1px solid var(--mc-dore);
}
.mc-shop-card__media {
    aspect-ratio: 3 / 2;
    overflow: hidden;
    margin: -32px -28px 24px;
}
.mc-shop-card__media img { width: 100%; height: 100%; object-fit: cover; }
.mc-shop-card h3 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.35rem;
    margin: 8px 0 12px;
    color: var(--mc-noir);
    line-height: 1.3;
}
.mc-shop-card p {
    color: var(--mc-brun-clair);
    font-size: 0.88rem;
    line-height: 1.6;
    margin: 0 0 12px;
}
.mc-shop-card__price {
    padding-top: 14px;
    border-top: 1px solid var(--mc-nude);
    color: var(--mc-noir);
    margin: 14px 0 20px !important;
}
.mc-shop-card__price strong { color: var(--mc-dore); font-size: 1.2em; font-weight: 600; }
.mc-shop-card--soon { opacity: 0.75; }
.mc-tag {
    display: inline-block;
    background: var(--mc-nude);
    color: var(--mc-brun);
    padding: 6px 14px;
    font-size: 0.72rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    border-radius: 2px;
    margin-top: auto;
    align-self: flex-start;
}

/* ============ À PROPOS ============ */
.mc-about { background: var(--mc-creme); }
.mc-about__wrap {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 60px;
    align-items: center;
}
.mc-about__media {
    aspect-ratio: 3 / 4;
    overflow: hidden;
}
.mc-about__media img { width: 100%; height: 100%; object-fit: cover; }
.mc-about__text p { color: var(--mc-brun-clair); line-height: 1.75; margin: 0 0 16px; }
.mc-about__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 32px;
    padding-top: 32px;
    border-top: 1px solid var(--mc-nude);
}
.mc-about__stats > div { display: flex; flex-direction: column; }
.mc-about__stats strong {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 2rem;
    color: var(--mc-dore);
    line-height: 1;
}
.mc-about__stats span {
    color: var(--mc-taupe);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-top: 6px;
}

/* ============ AVIS ============ */
.mc-avis { background: var(--mc-creme); }
.mc-avis .mc-section__title em { color: var(--mc-dore); font-style: normal; letter-spacing: 0.15em; }

/* ============ CTA FINAL ============ */
.mc-final-cta {
    padding: 0 !important;
    position: relative;
    min-height: 60vh;
    display: grid;
    align-items: center;
}
.mc-final-cta__media { position: absolute; inset: 0; z-index: 0; }
.mc-final-cta__media img { width: 100%; height: 100%; object-fit: cover; }
.mc-final-cta__media::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(26,26,26,0.75), rgba(74,62,54,0.55));
}
.mc-final-cta__wrap {
    position: relative;
    z-index: 2;
    padding: 100px 24px;
    text-align: center;
    color: var(--mc-creme);
}
.mc-final-cta__content h2 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 300;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    color: var(--mc-creme);
    margin: 16px 0 20px;
    line-height: 1;
}
.mc-final-cta__content h2 em { color: var(--mc-dore); font-style: italic; }
.mc-final-cta__content p { color: rgba(248, 241, 232, 0.85); font-size: 1.05rem; max-width: 500px; margin: 0 auto 32px; }
.mc-final-cta__content .mc-eyebrow { color: var(--mc-dore); }
.mc-final-cta__actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

/* ============ RESPONSIVE MOBILE ============ */
@media (max-width: 900px) {
    .mc-section { padding: 56px 0; }
    .mc-hero {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    .mc-hero__media {
        order: 1;
        aspect-ratio: 4 / 5;
        max-height: 60vh;
    }
    .mc-hero__content {
        order: 2;
        padding: 40px 24px 56px;
    }
    .mc-hero__title { font-size: 3.5rem; }
    .mc-hero__cta .mc-btn { flex: 1; text-align: center; min-width: 0; }
    .mc-univers__grid { grid-template-columns: 1fr; gap: 16px; }
    .mc-univers__card { padding: 28px 24px; }
    .mc-cards { grid-template-columns: 1fr; gap: 20px; }
    .mc-cards--formations { grid-template-columns: 1fr; }
    .mc-qualiopi__wrap { grid-template-columns: 1fr; gap: 24px; text-align: center; }
    .mc-qualiopi__badge { max-width: 140px; margin: 0 auto; }
    .mc-shop { grid-template-columns: 1fr; gap: 16px; }
    .mc-about__wrap { grid-template-columns: 1fr; gap: 32px; }
    .mc-about__media { aspect-ratio: 4 / 5; max-height: 50vh; }
    .mc-about__stats { grid-template-columns: 1fr; gap: 16px; text-align: left; }
    .mc-final-cta__wrap { padding: 72px 24px; }
    .mc-final-cta__actions .mc-btn { flex: 1; text-align: center; }
}

/* Cacher le bouton flottant Réserver sur mobile (les CTAs sont dans les sections) */
@media (max-width: 900px) {
    .mc-floating-cta { display: none !important; }
}

/* Cacher aussi la bulle SureCart flottante sur mobile */
.sc-mini-cart__toggle,
.sc-floating-cart {
    display: none !important;
}

/* MC LUMIERE END */


/* MC FIXES START */

/* ========== HEADER MOBILE : logo + hamburger visibles partout ========== */
@media (max-width: 921px) {
    /* Réduire la hauteur du header mobile */
    .ast-mobile-header-wrap .ast-primary-header-bar,
    .site-header .main-header-bar {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
        min-height: 60px !important;
    }
    /* Logo bien contrasté (foncer si trop clair) */
    .site-logo-img img, .custom-logo, .astra-logo-svg {
        max-height: 44px !important;
        width: auto !important;
    }
    /* Hamburger foncer + agrandir zone tactile */
    .menu-toggle, .ast-mobile-menu-buttons-minimal, .main-header-menu-toggle {
        color: var(--mc-noir) !important;
        background: transparent !important;
        border: 1px solid var(--mc-noir) !important;
        padding: 8px 10px !important;
        border-radius: 2px !important;
    }
    .menu-toggle svg, .ast-mobile-menu-buttons-minimal svg {
        fill: var(--mc-noir) !important;
        color: var(--mc-noir) !important;
    }
    /* Aucun espace avant le début de la page */
    .site-content, #primary { padding-top: 0 !important; }
}

/* Header : fond crème pour lisibilité (dans DA) */
.ast-primary-header-bar {
    background: rgba(254, 252, 249, 0.98) !important;
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--mc-nude);
    box-shadow: none !important;
}

/* ========== BOUTON FLOTTANT BLEU (SureCart) : masquer PARTOUT ========== */
.sc-mini-cart__toggle,
.sc-floating-cart,
.sc-mini-cart,
[class*="sc-cart-launcher"],
[class*="sc-mini-cart-launcher"],
div[data-sc-cart],
sc-cart-button,
#sc-cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* ========== BOUTON RÉSERVER FLOTTANT : cacher sur mobile ========== */
@media (max-width: 900px) {
    .mc-floating-cta {
        display: none !important;
    }
}

/* MC FIXES END */


/* MC PRESTATIONS PAGE START */

/* Page Prestations : liste prix élégante */
.mc-page-hero { padding: 100px 0 40px !important; background: var(--mc-creme); }

.mc-cat { padding: 60px 0 !important; background: var(--mc-blanc-doux); }
.mc-cat__head { max-width: 780px; margin: 0 auto 32px; text-align: center; }
.mc-cat__title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    color: var(--mc-noir);
    margin: 6px 0 12px;
}
.mc-cat__title em { color: var(--mc-dore); font-style: italic; }
.mc-cat__intro { color: var(--mc-brun-clair); font-size: 0.95rem; line-height: 1.6; }

/* Price list élégante */
.mc-price-list {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    max-width: 900px;
    background: var(--mc-creme);
    border: 1px solid var(--mc-nude);
    border-radius: 2px;
}
.mc-price-list li {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    align-items: center;
    padding: 20px 28px;
    border-bottom: 1px solid var(--mc-nude);
}
.mc-price-list li:last-child { border-bottom: 0; }
.mc-price-list h4 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 1.3rem;
    margin: 0 0 4px;
    color: var(--mc-noir);
}
.mc-price-list p {
    color: var(--mc-brun-clair);
    font-size: 0.88rem;
    margin: 0;
    line-height: 1.5;
}
.mc-price-list__meta {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: flex-end;
    flex-wrap: nowrap;
}
.mc-duration {
    color: var(--mc-taupe);
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}
.mc-price {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.5rem;
    color: var(--mc-dore);
    font-weight: 500;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

/* Mobile : reflow */
@media (max-width: 700px) {
    .mc-price-list li {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 18px 20px;
    }
    .mc-price-list__meta {
        justify-content: space-between;
        width: 100%;
    }
    .mc-price { font-size: 1.35rem; }
    .mc-duration { font-size: 0.75rem; }
}

/* ========== PAGE RÉSERVATION : refonte visuelle uniquement ========== */
/* Titre plus compact */
.page-id-787 .entry-header h1,
.page-id-787 .elementor-widget-heading h1 {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 400 !important;
    font-size: clamp(2rem, 5vw, 3rem) !important;
    margin: 20px 0 8px !important;
    color: var(--mc-noir) !important;
}
.page-id-787 { background: var(--mc-blanc-doux); }
.page-id-787 .site-content { padding-top: 20px !important; }

/* LatePoint : styliser dans DA Maison Carat */
.latepoint-w, .latepoint-book-form-wrapper {
    background: var(--mc-creme) !important;
    border: 1px solid var(--mc-nude) !important;
    border-radius: 2px !important;
    font-family: 'Inter', sans-serif !important;
}

/* Enlever les icones bleu/gris des services LatePoint */
.latepoint-service-item .latepoint-service-image,
.latepoint-service .latepoint-service-image {
    filter: sepia(0.15) saturate(0.9) hue-rotate(340deg);
}
.latepoint-service-item {
    background: var(--mc-blanc-doux) !important;
    border: 1px solid var(--mc-nude) !important;
    border-radius: 2px !important;
    padding: 16px !important;
    transition: all 0.3s ease;
}
.latepoint-service-item:hover {
    border-color: var(--mc-dore) !important;
    background: var(--mc-creme) !important;
}

/* Afficher le prix à côté du nom de service dans LatePoint (via ::after) */
/* Note : déjà géré dans les paramètres LatePoint - forcer show_price_next_to_service_name */

/* Boutons LatePoint */
.latepoint-w .latepoint-btn,
.latepoint-btn-primary {
    background: var(--mc-noir) !important;
    color: var(--mc-creme) !important;
    border: 1px solid var(--mc-noir) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    font-size: 0.82rem !important;
    padding: 12px 24px !important;
    border-radius: 2px !important;
    font-family: 'Inter', sans-serif !important;
}
.latepoint-w .latepoint-btn:hover {
    background: var(--mc-dore) !important;
    border-color: var(--mc-dore) !important;
}

/* Cacher le bouton flottant flèche scroll top disgracieux si présent */
.ast-scroll-to-top {
    background-color: var(--mc-taupe) !important;
    color: var(--mc-creme) !important;
}

/* MC PRESTATIONS PAGE END */


/* MC BOOKING START */

.mc-booking-header {
    max-width: 720px;
    margin: 0 auto 24px;
    padding: 0 16px;
}
.mc-booking-title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: clamp(2rem, 5vw, 3rem);
    color: var(--mc-noir);
    margin: 8px 0 12px;
    line-height: 1.15;
}
.mc-booking-title em { color: var(--mc-dore); font-style: italic; }
.mc-booking-intro {
    color: var(--mc-brun-clair);
    font-size: 0.98rem;
    line-height: 1.6;
    margin: 0 auto;
    max-width: 480px;
}

@media (max-width: 700px) {
    .mc-booking-title { font-size: 2rem !important; }
    .mc-booking-header { margin-bottom: 16px; }
}

/* LatePoint : masquer icones bleues */
.latepoint-item.os-item-service .latepoint-service-icon,
.latepoint-service-icon,
.os-item-icon,
.latepoint-item .os-item-image[style*="background"] {
    display: none !important;
}

/* LatePoint items — style Maison Carat */
.latepoint-item.os-item-service,
.latepoint-service-item {
    background: var(--mc-blanc-doux) !important;
    border: 1px solid var(--mc-nude) !important;
    border-radius: 2px !important;
    padding: 18px 20px !important;
    margin-bottom: 10px !important;
    transition: all 0.3s ease;
}

.latepoint-item.os-item-service:hover,
.latepoint-service-item:hover {
    border-color: var(--mc-dore) !important;
    background: var(--mc-creme) !important;
    cursor: pointer;
}

.latepoint-item.os-item-service h3,
.latepoint-item.os-item-service .latepoint-service-name,
.latepoint-item.os-item-service .os-item-name {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 400 !important;
    color: var(--mc-noir) !important;
    font-size: 1.1rem !important;
}

/* Catégories dans LatePoint : plus élégantes */
.latepoint-item.os-item-service-category,
.latepoint-service-category-item {
    background: var(--mc-blanc-doux) !important;
    border: 1px solid var(--mc-nude) !important;
    border-radius: 2px !important;
    padding: 16px 20px !important;
    margin-bottom: 8px !important;
}

.latepoint-item.os-item-service-category:hover,
.latepoint-service-category-item:hover {
    border-color: var(--mc-dore) !important;
    background: var(--mc-creme) !important;
}

/* Prix affichage direct */
.latepoint-service-price,
.mc-inline-price {
    color: var(--mc-dore) !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    letter-spacing: 0.01em;
}

/* Titre entry-header caché (car on met notre titre custom) */
.page-id-787 .entry-header,
.page-id-787 .page-title-bar,
.page-id-787 .ast-page-header-wrap {
    display: none !important;
}

/* Container blanc-cassé pour LatePoint */
.page-id-787 .latepoint-w {
    box-shadow: none !important;
}

/* Boutons LatePoint - override tout */
.latepoint-w button,
.latepoint-w .latepoint-btn,
.latepoint-w input[type="submit"] {
    background: var(--mc-noir) !important;
    color: var(--mc-creme) !important;
    border: 1px solid var(--mc-noir) !important;
    border-radius: 2px !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.82rem !important;
    padding: 12px 24px !important;
    transition: all 0.3s ease;
}
.latepoint-w button:hover,
.latepoint-w .latepoint-btn:hover {
    background: var(--mc-dore) !important;
    border-color: var(--mc-dore) !important;
}

/* MC BOOKING END */


/* MC KILL SC CART START */

/* Tuer la bulle panier SureCart flottante partout */
sc-cart,
sc-cart-buyer-button,
sc-cart-button,
sc-mini-cart,
sc-mini-cart-toggle,
sc-floating-cart,
[class*="sc-cart-launcher"],
[class*="sc-mini-cart-launcher"],
[data-sc-cart],
#sc-cart,
.sc-cart,
.sc-mini-cart,
.sc-mini-cart__toggle,
.sc-floating-cart,
/* Autres selecteurs de Web Components SureCart */
[class*="sc-cart"][class*="floating"],
[class*="cart-launcher"],
.wp-block-surecart-cart,
.wp-block-surecart-floating-cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    z-index: -9999 !important;
}

/* Tuer aussi TOUT ce qui est fixé en bas à droite avec un fond bleu (bulle SureCart typique) */
[style*="position: fixed"][style*="bottom"][style*="right"] {
    /* Garder notre bouton Réserver flottant en le laissant passer */
}
.mc-floating-cta {
    /* Priorité notre bouton Réserver */
    z-index: 9999 !important;
}

/* MC KILL SC CART END */

/* MC FORMATIONS MOBILE CENTERING START */
@media (max-width: 767px) {
  body.page-id-15,
  body.page-id-15 .site,
  body.page-id-15 .site-content,
  body.page-id-15 #primary,
  body.page-id-15 main {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.page-id-15 #mcp-card-cils,
  body.page-id-15 #mcp-card-brow,
  body.page-id-15 #mcp-card-soin,
  body.page-id-15 #mcp-card-nano {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: auto !important;
  }

  body.page-id-15 #mcp-card-cils > .e-con-inner > :last-child,
  body.page-id-15 #mcp-card-brow > .e-con-inner > :last-child,
  body.page-id-15 #mcp-card-soin > .e-con-inner > :last-child,
  body.page-id-15 #mcp-card-nano > .e-con-inner > :last-child {
    box-sizing: border-box !important;
    width: 100% !important;
    padding: 34px 24px 40px !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.page-id-15 #mcp-card-cils h3,
  body.page-id-15 #mcp-card-brow h3,
  body.page-id-15 #mcp-card-soin h3,
  body.page-id-15 #mcp-card-nano h3,
  body.page-id-15 #mcp-card-cils .elementor-widget-text-editor,
  body.page-id-15 #mcp-card-brow .elementor-widget-text-editor,
  body.page-id-15 #mcp-card-soin .elementor-widget-text-editor,
  body.page-id-15 #mcp-card-nano .elementor-widget-text-editor,
  body.page-id-15 #mcp-card-cils .elementor-button-wrapper,
  body.page-id-15 #mcp-card-brow .elementor-button-wrapper,
  body.page-id-15 #mcp-card-soin .elementor-button-wrapper,
  body.page-id-15 #mcp-card-nano .elementor-button-wrapper {
    width: 100% !important;
    text-align: center !important;
  }

  body.page-id-15 #mcp-card-cils-photo,
  body.page-id-15 #mcp-card-brow-photo,
  body.page-id-15 #mcp-card-soin-photo,
  body.page-id-15 #mcp-card-nano-photo {
    width: 100% !important;
    max-width: 100% !important;
    background-position: center center !important;
    background-size: cover !important;
  }
}
/* MC FORMATIONS MOBILE CENTERING END */


/* MC FORMATIONS TAUPE START */
body.page-id-15 #mcp-hero-filet {
  background-color: #756A63 !important;
}
body.page-id-15 #mcp-hero-badge .elementor-heading-title,
body.page-id-15 #mcp-hero-title em,
body.page-id-15 #mcp-card-cils-duree .elementor-heading-title,
body.page-id-15 #mcp-card-brow-duree .elementor-heading-title,
body.page-id-15 #mcp-card-soin-duree .elementor-heading-title,
body.page-id-15 #mcp-card-nano-duree .elementor-heading-title {
  color: #756A63 !important;
  border-color: #756A63 !important;
}
/* MC FORMATIONS TAUPE END */



/* MC NUKE SC CART START */

/* Sur toutes les pages SAUF checkout/products, masquer TOUT ce qui est un cart SureCart flottant */
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) sc-cart,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) sc-cart-menu-icon-button,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) sc-cart-menu-icon,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) sc-slide-out-cart,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) sc-cart-icon,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) .wp-block-surecart-cart-menu-icon-button,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) .wp-block-surecart-cart-icon,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) .wp-block-surecart-slide-out-cart,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) .wp-block-surecart-cart,
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) [class*="wp-block-surecart-cart"],
body:not(.page-id-681):not(.page-id-682):not(.page-id-683):not(.page-id-684):not(.single-sc_product) [class*="wp-block-surecart-slide"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: fixed !important;
    left: -99999px !important;
    top: -99999px !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    z-index: -9999 !important;
}

/* Fallback : n'importe quel élément de couleur brand SureCart en position fixed */
body:not(.page-id-681):not(.page-id-682):not(.single-sc_product) [style*="background-color: rgb(30, 64, 175)"],
body:not(.page-id-681):not(.page-id-682):not(.single-sc_product) [style*="background: #1e40af"] {
    display: none !important;
    pointer-events: none !important;
}

/* MC NUKE SC CART END */

.mc-tag--new { background: var(--mc-dore) !important; color: var(--mc-creme) !important; font-weight: 600; }
.mc-shop-card--app { border-color: var(--mc-dore) !important; }


/* MC BROW LIFT FULL IMAGE START */
body.page-id-15 #mcp-card-brow-photo {
  min-height: 520px !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-color: #f5f1ec !important;
}
@media (max-width: 767px) {
  body.page-id-15 #mcp-card-brow-photo {
    min-height: 360px !important;
    background-size: contain !important;
  }
}
/* MC BROW LIFT FULL IMAGE END */


/* MC BOUTIQUE FR + CENTER START */
body.page-id-684 .wp-block-surecart-product-list-price {
  width: 100% !important;
  text-align: center !important;
}
body.page-id-684 .wp-block-surecart-product-quick-view-button > span.sc-button__link-text {
  font-size: 0 !important;
}
body.page-id-684 .wp-block-surecart-product-quick-view-button > span.sc-button__link-text::after {
  content: "AJOUTER";
  font-size: 12px !important;
}
/* MC BOUTIQUE FR + CENTER END */


/* MC HOME HERO 2026 START */
body.home .mc-hero__media {
  background-image: url('https://maison-carat.fr/wp-content/uploads/2026/09/maison-carat-accueil-institut-formation.jpg') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
body.home .mc-hero__media img {
  opacity: 0 !important;
}
@media (max-width: 767px) {
  body.home .mc-hero__media {
    background-position: 72% center !important;
  }
}
/* MC HOME HERO 2026 END */

/* MC HOME HERO 2026 START */
body.home .mc-hero__media {
  background-image: url('https://maison-carat.fr/wp-content/uploads/2026/09/maison-carat-accueil-institut-formation.jpg') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
body.home .mc-hero__media img {
  opacity: 0 !important;
}
@media (max-width: 767px) {
  body.home .mc-hero__media {
    background-position: 72% center !important;
  }
}
/* MC HOME HERO 2026 END */

/* MC HOME HERO CROP FIX */
body.home .mc-hero__media { background-position: 74% center !important; }
@media (max-width: 767px) { body.home .mc-hero__media { background-position: 72% center !important; } }
/* VISUEL APPLICATION PRO */
body.page-id-684 a[href*="application-pro-fiches-clientes"] .wp-block-cover {
  background-image: url("https://maison-carat.fr/wp-content/uploads/2026/09/application-pro-maison-carat.jpg") !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

body.page-id-684 a[href*="application-pro-fiches-clientes"] .wp-block-cover > img.wp-post-image {
  opacity: 0 !important;
}


/* MC HEADER V2 START */
/* ========================================
   HEADER MAISON CARAT — refonte complète
   Logo texte à gauche + hamburger à droite
   Fond crème lisible en toutes conditions
   ======================================== */

/* Reset header Astra pour partir d'une base propre */
.ast-primary-header-bar {
    background: var(--mc-creme) !important;
    backdrop-filter: none !important;
    box-shadow: 0 1px 0 rgba(184, 147, 90, 0.15) !important;
    border-bottom: none !important;
    padding: 12px 24px !important;
    min-height: 68px;
}

/* Header sticky pour rester visible au scroll */
.ast-header-break-point .site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
}

/* Custom logo : petit et élégant */
.custom-logo-link .custom-logo,
.site-logo-img img {
    max-height: 42px !important;
    width: auto !important;
}

/* Alternative : logo texte à la place si pas de custom logo */
.site-title, .ast-site-title-wrap .site-title a {
    font-family: 'Cormorant Garamond', 'Playfair Display', serif !important;
    font-weight: 400 !important;
    font-size: 1.5rem !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    color: var(--mc-noir) !important;
    text-decoration: none !important;
}

/* Retirer les carrés dorés / fonds louches derrière le logo */
.custom-logo-link,
.site-branding,
.ast-site-identity {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
}
.custom-logo-link::before,
.custom-logo-link::after,
.site-branding::before,
.site-branding::after {
    display: none !important;
    content: none !important;
}

/* Menu items desktop */
.main-header-menu a,
.ast-nav-menu > li > a {
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 0.82rem !important;
    letter-spacing: 0.13em !important;
    text-transform: uppercase !important;
    color: var(--mc-noir) !important;
    font-weight: 500 !important;
    padding: 8px 14px !important;
    transition: color 0.3s ease;
}
.main-header-menu a:hover,
.ast-nav-menu > li > a:hover,
.ast-nav-menu > li.current-menu-item > a {
    color: var(--mc-dore) !important;
}

/* CTA "Prendre RDV" style bouton doré discret */
.ast-nav-menu > li.mc-menu-cta > a,
.main-header-menu > li.mc-menu-cta > a,
#ast-hf-mobile-menu > li.mc-menu-cta > a {
    background: var(--mc-noir) !important;
    color: var(--mc-creme) !important;
    padding: 10px 22px !important;
    border-radius: 2px !important;
    margin-left: 12px !important;
    letter-spacing: 0.14em !important;
    transition: all 0.3s ease;
}
.ast-nav-menu > li.mc-menu-cta > a:hover,
.main-header-menu > li.mc-menu-cta > a:hover,
#ast-hf-mobile-menu > li.mc-menu-cta > a:hover {
    background: var(--mc-dore) !important;
    color: var(--mc-creme) !important;
    transform: translateY(-1px);
}

/* Hamburger mobile : encadré sobre + bien visible sur crème */
@media (max-width: 921px) {
    .ast-primary-header-bar {
        min-height: 60px;
        padding: 8px 16px !important;
    }
    .site-header .site-branding {
        max-width: 60%;
    }
    .menu-toggle,
    .ast-mobile-menu-buttons-minimal,
    .main-header-menu-toggle,
    .ast-button-wrap .menu-toggle,
    button.menu-toggle {
        background: transparent !important;
        color: var(--mc-noir) !important;
        border: 1px solid var(--mc-noir) !important;
        border-radius: 2px !important;
        padding: 8px 10px !important;
        min-width: 44px;
        min-height: 44px;
        box-shadow: none !important;
    }
    .menu-toggle svg,
    .ast-mobile-menu-buttons-minimal svg,
    .menu-toggle .menu-toggle-icon {
        fill: var(--mc-noir) !important;
        color: var(--mc-noir) !important;
        width: 20px !important;
        height: 20px !important;
    }
    /* Menu mobile déroulé : crème + items lisibles */
    #ast-hf-mobile-menu,
    .ast-mobile-header-wrap #ast-hf-mobile-menu {
        background: var(--mc-creme) !important;
        padding: 20px 24px !important;
    }
    #ast-hf-mobile-menu a {
        font-family: 'Inter', sans-serif !important;
        letter-spacing: 0.13em !important;
        text-transform: uppercase !important;
        font-size: 0.88rem !important;
        color: var(--mc-noir) !important;
        padding: 14px 0 !important;
        border-bottom: 1px solid var(--mc-nude);
    }
    #ast-hf-mobile-menu > li.mc-menu-cta > a {
        border-bottom: none !important;
        margin-top: 12px !important;
    }
}

/* ========================================
   HERO : ajustements Quiet Luxury
   ======================================== */

.mc-hero {
    background: var(--mc-creme);
    min-height: 85vh;
    padding-top: 0;
}

@media (max-width: 900px) {
    .mc-hero {
        display: flex;
        flex-direction: column;
        min-height: auto;
    }
    .mc-hero__media {
        order: 1;
        aspect-ratio: 3 / 4;
        max-height: 62vh;
        margin: 0;
    }
    .mc-hero__content {
        order: 2;
        padding: 40px 24px 60px;
        background: var(--mc-creme);
    }
    /* Un peu d'aération entre hero et section suivante */
    .mc-hero + .e-con,
    .mc-hero + .elementor-section {
        margin-top: 0 !important;
    }
}

/* AIX-EN-PROVENCE : le pré-titre plus discret, pas concurrentiel du titre */
.mc-hero__content .mc-eyebrow {
    color: var(--mc-taupe);
    font-size: 0.68rem !important;
    letter-spacing: 0.28em;
    opacity: 0.85;
    margin-bottom: 20px;
}

/* CTA hero : boutons plus équilibrés */
.mc-hero__cta {
    margin-top: 32px;
    gap: 12px;
}
@media (max-width: 900px) {
    .mc-hero__cta { flex-direction: column; }
    .mc-hero__cta .mc-btn { width: 100%; }
}

/* Watermark logo discret coin bas gauche du hero (desktop uniquement) */
@media (min-width: 901px) {
    .mc-hero::after {
        content: 'MAISON CARAT';
        position: absolute;
        bottom: 24px;
        left: 24px;
        font-family: 'Cormorant Garamond', serif;
        font-size: 0.75rem;
        letter-spacing: 0.4em;
        color: var(--mc-taupe);
        opacity: 0.6;
        z-index: 5;
    }
    .mc-hero { position: relative; }
}

/* MC HEADER V2 END */


/* MC POLISH V3 START */

/* Sous-titre role fondatrice */
.mc-about__role {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--mc-dore);
    font-size: 1.1rem;
    margin: -8px 0 20px !important;
    letter-spacing: 0.02em;
}

/* Uniformiser les 3 univers - même hauteur, même poids visuel */
.mc-univers__grid {
    align-items: stretch;
}
.mc-univers__card {
    display: flex;
    flex-direction: column;
    min-height: 220px;
}
.mc-univers__card p {
    flex: 1;
}

/* Ajouter respirations entre sections principales */
.mc-hero + .e-con,
.mc-hero + section,
.mc-univers + .e-con,
.mc-prestations + .e-con,
.mc-formations + .e-con,
.mc-ressources + .e-con,
.mc-about + .e-con {
    padding-top: 20px !important;
}

/* Prestations cards : sous-catégorie plus lisible */
.mc-card__body {
    display: flex;
    flex-direction: column;
    min-height: 200px;
}
.mc-card__body p:not(.mc-card__price) {
    flex: 1;
}
.mc-card__price {
    font-family: 'Inter', sans-serif;
    font-size: 0.92rem !important;
    letter-spacing: 0.02em;
}
.mc-card__price strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.3em;
    font-weight: 500;
    color: var(--mc-dore);
}

/* Formation cards : même architecture uniforme */
.mc-formation-card__body {
    min-height: 260px;
}
.mc-formation-card__price {
    font-family: 'Inter', sans-serif;
    font-size: 0.92rem !important;
}
.mc-formation-card__price strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.3em;
    font-weight: 500;
    color: var(--mc-dore);
}

/* Boutique cards : même hauteur */
.mc-shop-card {
    display: flex;
    flex-direction: column;
}
.mc-shop-card__body {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.mc-shop-card__body p:not(.mc-shop-card__price) {
    flex: 1;
}

/* Tag Nouveau + Bientôt : même taille */
.mc-tag, .mc-tag--new {
    font-family: 'Inter', sans-serif;
    font-size: 0.7rem;
    letter-spacing: 0.12em;
    padding: 6px 12px;
    display: inline-block;
    text-transform: uppercase;
}

/* Section fondatrice : ajuster alignement mobile */
@media (max-width: 900px) {
    .mc-about__wrap {
        gap: 24px !important;
    }
    .mc-about__media {
        aspect-ratio: 4 / 5;
        max-height: 55vh;
        margin: 0 !important;
    }
    .mc-about__stats {
        grid-template-columns: repeat(2, 1fr) !important;
        text-align: center;
    }
    .mc-about__stats > div {
        align-items: center;
    }
}

/* MC POLISH V3 END */





/* MC FINAL FIXES START */

/* ========================================
   LOGO : forcer un affichage lisible
   ======================================== */

/* Site title text : force visibilité max */
header .site-title,
header .site-title a,
header .ast-site-title-wrap a,
.ast-site-title-wrap .site-title,
.ast-site-title-wrap .site-title a {
    display: inline-block !important;
    font-family: 'Cormorant Garamond', 'Playfair Display', serif !important;
    font-weight: 400 !important;
    font-size: 1.5rem !important;
    letter-spacing: 0.22em !important;
    color: #1A1A1A !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Si custom logo image utilisée : appliquer filter pour la rendre visible sur crème */
.custom-logo,
.custom-logo-link .custom-logo,
.site-logo-img img {
    display: inline-block !important;
    max-height: 40px !important;
    width: auto !important;
    filter: brightness(0.4) contrast(1.2);
}

/* Alternative : Si le logo image n'existe pas ou est caché, afficher texte MAISON CARAT */
.ast-site-identity {
    display: flex !important;
    align-items: center !important;
    gap: 8px;
}

/* Si aucun logo/titre visible, ajouter fallback via ::before sur le container header */
.ast-primary-header-bar .site-branding {
    position: relative;
}

@media (max-width: 700px) {
    header .site-title, header .site-title a {
        font-size: 1.15rem !important;
        letter-spacing: 0.18em !important;
    }
    .custom-logo, .custom-logo-link .custom-logo { max-height: 34px !important; }
}

/* ========================================
   PHOTO BROW LIFT : cadrage centré haut
   ======================================== */

/* Toutes les images cards utilisent object-fit correct + hauteur définie */
.mc-card__media,
.mc-formation-card__media,
.mc-shop-card__media {
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #EDE3D5;
    position: relative;
}
.mc-card__media img,
.mc-formation-card__media img,
.mc-shop-card__media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
}

/* Spécifiquement pour la photo brow lift 860 = IMG_0387 : centrage vertical haut */
.mc-card__media img[src*="IMG_0387"],
.mc-formation-card__media img[src*="IMG_0387"],
.mc-shop-card__media img[src*="IMG_0387"] {
    object-position: center 25% !important;
}

/* ========================================
   SURECART : couleurs Maison Carat (noir/doré), plus de bleu
   ======================================== */

/* Boutons SureCart : noir/doré au lieu de bleu */
sc-button,
sc-button[variant="primary"],
sc-button[type="primary"],
.sc-button,
.sc-button--primary,
[part="button"] {
    --sc-color-primary: #1A1A1A !important;
    --sc-color-primary-hover: #B8935A !important;
    --sc-color-primary-500: #1A1A1A !important;
    --sc-color-primary-600: #B8935A !important;
    --sc-color-primary-700: #B8935A !important;
    background: #1A1A1A !important;
    color: #F8F1E8 !important;
    border-color: #1A1A1A !important;
}
sc-button:hover,
.sc-button:hover {
    background: #B8935A !important;
    border-color: #B8935A !important;
}

/* Custom properties de tous les Web Components SureCart */
:root {
    --sc-color-primary: #1A1A1A;
    --sc-color-primary-500: #1A1A1A;
    --sc-color-primary-600: #B8935A;
    --sc-color-primary-hover: #B8935A;
    --sc-color-accent: #B8935A;
    --sc-brand-color: #1A1A1A;
}

/* Force couleurs sur checkout SureCart hosted (via style attr inline) */
[style*="background-color: rgb(30, 64, 175)"],
[style*="background-color: #1e40af"],
[style*="background: rgb(30, 64, 175)"],
[style*="background: #1e40af"] {
    background-color: #1A1A1A !important;
    background: #1A1A1A !important;
}

/* Bouton "Purchase" du checkout : noir avec CTA doré hover */
button[type="submit"][class*="purchase"],
button[class*="purchase"],
.sc-checkout-button,
sc-checkout button[type="submit"] {
    background: #1A1A1A !important;
    color: #F8F1E8 !important;
    border-color: #1A1A1A !important;
}

/* MC FINAL FIXES END */


/* MC MOBILE MENU FIX START */

/* Menu mobile déroulé : hauteur pleine écran + scroll interne */
@media (max-width: 921px) {
    /* Container du menu mobile */
    .ast-mobile-header-wrap .main-header-menu,
    #ast-hf-mobile-menu,
    .ast-mobile-menu-buttons,
    .main-header-bar-navigation {
        max-height: calc(100vh - 68px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        background: var(--mc-creme) !important;
        padding: 24px 20px 100px 20px !important;
        position: fixed !important;
        top: 68px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        z-index: 999 !important;
    }
    
    /* Menu items dans le drawer mobile */
    #ast-hf-mobile-menu li,
    .main-header-menu li {
        display: block !important;
        width: 100% !important;
        border-bottom: 1px solid var(--mc-nude);
    }
    #ast-hf-mobile-menu li:last-child,
    .main-header-menu li:last-child {
        border-bottom: none;
    }
    #ast-hf-mobile-menu li a,
    .main-header-menu li a {
        display: block !important;
        padding: 18px 4px !important;
        font-size: 0.95rem !important;
        color: var(--mc-noir) !important;
        text-decoration: none;
    }
    
    /* CTA Prendre RDV en bouton en bas du drawer */
    #ast-hf-mobile-menu li.mc-menu-cta,
    .main-header-menu li.mc-menu-cta {
        border-bottom: none !important;
        margin-top: 20px !important;
    }
    #ast-hf-mobile-menu li.mc-menu-cta a,
    .main-header-menu li.mc-menu-cta a {
        background: var(--mc-noir) !important;
        color: var(--mc-creme) !important;
        text-align: center !important;
        border-radius: 2px !important;
        margin: 8px 0 !important;
        letter-spacing: 0.15em !important;
    }
    
    /* Corriger le hamburger qui pourrait être mal aligné */
    .ast-mobile-header-wrap .ast-primary-header-bar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    
    /* Bloquer le scroll body quand menu ouvert */
    body.ast-main-header-nav-open {
        overflow: hidden !important;
    }
}

/* MC MOBILE MENU FIX END */


/* MC FINANCEMENT BAR START */
.mc-fin-bar {
    background: #1A1A1A;
    color: #F8F1E8;
    text-align: center;
    padding: 10px 16px;
    font-family: 'Cormorant Garamond', 'Playfair Display', serif;
    font-size: 0.85rem;
    letter-spacing: 0.15em;
    line-height: 1.4;
    position: relative;
    z-index: 999;
}
.mc-fin-bar strong {
    color: #B8935A;
    font-weight: 500;
}
.mc-fin-bar a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid #B8935A;
    padding-bottom: 1px;
}
@media (max-width: 700px) {
    .mc-fin-bar { font-size: 0.75rem; padding: 8px 12px; letter-spacing: 0.1em; }
}
/* MC FINANCEMENT BAR END */


/* MC REPRISE START */
.mc-reprise-badge {
    background: linear-gradient(135deg, #FEFCF9 0%, #F8F1E8 100%);
    border: 1px solid #B8935A;
    border-left: 4px solid #B8935A;
    padding: 24px 28px;
    border-radius: 4px;
    margin: 32px auto;
    max-width: 720px;
    font-family: 'Cormorant Garamond', 'Playfair Display', serif;
    box-shadow: 0 4px 20px rgba(184, 147, 90, 0.08);
}
.mc-reprise-badge__eyebrow {
    color: #B8935A;
    letter-spacing: 0.2em;
    font-size: 0.7rem;
    text-transform: uppercase;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    margin-bottom: 8px;
}
.mc-reprise-badge__title {
    color: #1A1A1A;
    font-size: 1.35rem;
    font-weight: 400;
    margin-bottom: 8px;
    line-height: 1.3;
}
.mc-reprise-badge__text {
    color: #4A3E36;
    font-family: 'Inter', sans-serif;
    font-size: 0.95rem;
    line-height: 1.6;
    margin: 0;
}
/* MC REPRISE END */


/* MC OFFRE START */

/* Menu : item Offre du mois en dore avec pulsation */
#ast-hf-menu-1 li.mc-menu-offre > a,
.main-header-menu li.mc-menu-offre > a,
nav li.mc-menu-offre > a {
    color: #B8935A !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    position: relative;
}
#ast-hf-menu-1 li.mc-menu-offre > a::before,
nav li.mc-menu-offre > a::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #B8935A;
    border-radius: 50%;
    margin-right: 8px;
    animation: mcOffrePulse 2s ease-in-out infinite;
    vertical-align: middle;
}
@keyframes mcOffrePulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(1.4); }
}

/* Page Offre du mois */
.mc-offre-hero {
    background: linear-gradient(180deg, #1A1A1A 0%, #2A2520 100%);
    color: #F8F1E8;
    text-align: center;
    padding: 100px 20px 80px;
}
.mc-offre-hero__eyebrow {
    color: #B8935A;
    letter-spacing: 0.3em;
    font-size: 0.75rem;
    text-transform: uppercase;
    font-family: 'Inter', sans-serif;
    margin-bottom: 20px;
}
.mc-offre-hero__title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 300;
    font-size: 3.5rem;
    line-height: 1.1;
    margin-bottom: 20px;
}
.mc-offre-hero__title em { color: #B8935A; font-style: italic; }
.mc-offre-hero__sub {
    font-size: 1.15rem;
    max-width: 620px;
    margin: 0 auto;
    line-height: 1.6;
    color: #EDE3D5;
}

.mc-offre-card {
    background: #FEFCF9;
    border: 1px solid #EDE3D5;
    max-width: 720px;
    margin: -60px auto 60px;
    padding: 48px;
    text-align: center;
    border-radius: 4px;
    box-shadow: 0 20px 60px rgba(26, 26, 26, 0.12);
    position: relative;
    z-index: 2;
}
.mc-offre-card__tag {
    display: inline-block;
    background: #B8935A;
    color: #F8F1E8;
    padding: 8px 20px;
    letter-spacing: 0.25em;
    font-size: 0.7rem;
    text-transform: uppercase;
    border-radius: 2px;
    margin-bottom: 24px;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
}
.mc-offre-card__title {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 2.2rem;
    color: #1A1A1A;
    margin-bottom: 16px;
    line-height: 1.2;
}
.mc-offre-card__price {
    font-family: 'Cormorant Garamond', serif;
    font-size: 3rem;
    color: #B8935A;
    margin: 24px 0 8px;
    font-weight: 300;
}
.mc-offre-card__price s { color: #A48F7A; font-size: 1.6rem; margin-right: 12px; }
.mc-offre-card__desc {
    color: #4A3E36;
    line-height: 1.7;
    margin: 20px auto;
    max-width: 480px;
    font-family: 'Inter', sans-serif;
}
.mc-offre-card__deadline {
    color: #A84D43;
    font-size: 0.85rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    margin-top: 24px;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
}
.mc-offre-card__cta {
    display: inline-block;
    background: #1A1A1A;
    color: #F8F1E8 !important;
    padding: 16px 36px;
    letter-spacing: 0.2em;
    font-size: 0.85rem;
    text-transform: uppercase;
    border-radius: 2px;
    text-decoration: none;
    margin-top: 20px;
    transition: background 0.3s;
    font-family: 'Inter', sans-serif;
}
.mc-offre-card__cta:hover { background: #B8935A; }

@media (max-width: 700px) {
    .mc-offre-hero__title { font-size: 2.4rem; }
    .mc-offre-card { padding: 32px 24px; margin: -40px 16px 40px; }
    .mc-offre-card__title { font-size: 1.7rem; }
    .mc-offre-card__price { font-size: 2.4rem; }
}
/* MC OFFRE END */


/* MC CONTACT WIDGETS START */

/* Bulle WhatsApp flottante */
.mc-whatsapp-float {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9998;
    width: 60px;
    height: 60px;
    background: #25D366;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    text-decoration: none;
}
.mc-whatsapp-float:hover {
    transform: scale(1.08);
    box-shadow: 0 8px 26px rgba(37, 211, 102, 0.55);
}
.mc-whatsapp-float svg { width: 32px; height: 32px; fill: #fff; }
.mc-whatsapp-float::after {
    content: '';
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    border: 2px solid #25D366;
    opacity: 0.6;
    animation: mcWhatsPulse 2.2s ease-out infinite;
}
@keyframes mcWhatsPulse {
    0% { transform: scale(0.9); opacity: 0.7; }
    100% { transform: scale(1.35); opacity: 0; }
}
@media (max-width: 700px) {
    .mc-whatsapp-float { width: 54px; height: 54px; bottom: 18px; right: 18px; }
    .mc-whatsapp-float svg { width: 28px; height: 28px; }
}

/* Téléphone dans le bandeau (aligne à droite du financement) */
.mc-fin-bar {
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}
.mc-fin-bar__tel {
    color: #B8935A !important;
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 0.1em;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-left: 1px solid #4A3E36;
    padding-left: 24px;
}
.mc-fin-bar__tel:hover { color: #F8F1E8 !important; }
@media (max-width: 700px) {
    .mc-fin-bar__tel { border-left: none; padding-left: 0; }
}
/* MC CONTACT WIDGETS END */
/* MC BEAUTY MANAGER PURCHASE VISIBILITY START */
body.postid-865 .mc-floating-cta { display: none !important; }
@media (max-width: 921px) {
  body.postid-865 .mc-whatsapp-float {
    position: static !important;
    width: max-content !important;
    max-width: calc(100% - 40px) !important;
    height: auto !important;
    margin: 24px auto !important;
    padding: 12px 18px !important;
    border-radius: 6px !important;
    gap: 10px;
    color: #ffffff !important;
    font-size: 14px;
    box-sizing: border-box;
  }
  body.postid-865 .mc-whatsapp-float::before {
    content: "Une question ? Écrivez-nous";
  }
  body.postid-865 .mc-whatsapp-float::after { display: none !important; }
  body.postid-865 .mc-whatsapp-float svg { width: 22px; height: 22px; flex-shrink: 0; }
}
/* MC BEAUTY MANAGER PURCHASE VISIBILITY END */

/* MC BEAUTY MANAGER REAL SCREENSHOTS START */
body.postid-865 figure.wp-block-surecart-product-media > img {
  width: 100% !important;
  height: 560px !important;
  object-fit: contain !important;
  background: #F8F5EF;
}
@media (max-width: 767px) {
  body.postid-865 figure.wp-block-surecart-product-media > img {
    height: 340px !important;
  }
}
/* MC BEAUTY MANAGER REAL SCREENSHOTS END */
