/**
 * Complexe GUEB'S — couche mobile (≤991px)
 * Ne modifie pas le rendu desktop au-delà de ce breakpoint.
 */

/* -------------------------------------------------------------------------
   Hero : texte clair sur photo + overlay (ex. /Reserver, hub annexes futur)
   Le thème force #000 sur .inner-page — on corrige quand un voile sombre est présent.
   ------------------------------------------------------------------------- */
.untree_co--site-hero.inner-page.overlay .site-hero-contents .hero-heading,
.untree_co--site-hero.inner-page.overlay .site-hero-contents .hero-heading span,
.untree_co--site-hero.inner-page.overlay .site-hero-contents .sub-text,
.untree_co--site-hero.inner-page.overlay .site-hero-contents .lead,
.untree_co--site-hero.inner-page.overlay .site-hero-contents p.lead {
    color: #fff !important;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.55);
}

.untree_co--site-hero.inner-page.overlay .site-hero-contents a {
    color: #fff !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 991.98px) {
    .untree_co--site-wrap {
        overflow-x: hidden;
    }

    .untree_co--site-wrap .container,
    .untree_co--site-wrap .container-fluid {
        padding-left: max(16px, env(safe-area-inset-left));
        padding-right: max(16px, env(safe-area-inset-right));
    }

    /* Hero accueil (carrousel) : bandeau plus haut sur téléphone */
    .owl-hero .untree_co--site-hero,
    .owl-hero .untree_co--site-hero > .container > .row {
        min-height: max(88vh, 520px) !important;
    }

    /* Hero pages intérieures : plus haut sur mobile + typo lisible */
    .untree_co--site-hero.inner-page {
        min-height: max(68vh, 440px) !important;
        padding-top: 3rem;
        padding-bottom: 3rem;
        background-position: center center !important;
        background-size: cover !important;
    }

    .untree_co--site-hero.inner-page .site-hero-contents .hero-heading {
        font-size: 2rem !important;
        line-height: 1.2 !important;
    }

    .untree_co--site-hero.inner-page.overlay .site-hero-contents .hero-heading {
        font-size: 1.85rem !important;
    }

    /* Héros avec image mais sans classe overlay : titres souvent illisibles en #000 */
    .untree_co--site-hero.inner-page:not(.bg-light):not(.overlay) .site-hero-contents .hero-heading,
    .untree_co--site-hero.inner-page:not(.bg-light):not(.overlay) .site-hero-contents .hero-heading.text-white {
        color: #fff !important;
        text-shadow: 0 2px 14px rgba(0, 0, 0, 0.65);
    }

    /*
     * Grilles Bootstrap : entre md et lg, les col-md-* restent à 50 % — on passe tout en pleine largeur.
     * Portée = wrap (sections accueil, annexes, footer, formulaires).
     * col-sm-* : demi-largeur entre sm et md si présent dans le markup.
     */
    .untree_co--site-wrap .row > [class*="col-sm-"],
    .untree_co--site-wrap .row > [class*="col-md-"],
    .untree_co--site-wrap .row > [class*="col-lg-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* Formulaires : toutes les colonnes internes en pile (y compris col-md-6 dans un row) */
    .untree_co--site-wrap form .row > [class*="col-"],
    .untree_co--site-wrap form .form-row > [class*="col-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* Grille 4 logos partenaires : conserver 2 par ligne */
    .untree_co--site-wrap .row > .col-6.col-md-3 {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    /* Blocs réservation type col-7 / col-5 */
    .untree_co--site-wrap .row > .col-7,
    .untree_co--site-wrap .row > .col-5 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
    }

    .untree_co--site-main .form-control,
    .untree_co--site-main input[type="text"],
    .untree_co--site-main input[type="email"],
    .untree_co--site-main input[type="number"],
    .untree_co--site-main input[type="date"],
    .untree_co--site-main input[type="datetime-local"],
    .untree_co--site-main select,
    .untree_co--site-main textarea {
        min-height: 48px;
        font-size: 16px;
    }

    .untree_co--site-main textarea.form-control {
        min-height: 120px;
    }

    .untree_co--site-main .btn.btn-black,
    .untree_co--site-main input[type="submit"].btn {
        width: 100%;
        max-width: 100%;
        min-height: 48px;
        padding-top: 12px;
        padding-bottom: 12px;
    }

    /* Cartes hub / sections */
    .untree_co--site-section .media-29191 {
        padding: 1.25rem !important;
    }

    .untree_co--site-section .media-29191 .readmore {
        display: inline-block;
        padding: 10px 0;
        min-height: 44px;
        line-height: 1.4;
    }

    /* Suites / accueil : piles plus aérées */
    .suite-wrap {
        margin-bottom: 2rem;
    }

    .post-entry .thumb img {
        width: 100%;
        max-height: 240px;
        object-fit: cover;
    }

    /* Cartes infrastructures accueil */
    .untree_co--site-section .post-entry-contents h3 {
        font-size: 1.15rem;
    }

    /* Carte */
    iframe[src*="google.com/maps"] {
        height: 260px !important;
        min-height: 220px;
    }

    /* Logo barre nav : évite débordement */
    .untree_co--site-nav .untree_co--site-logo {
        font-size: 1.05rem !important;
        white-space: normal;
        line-height: 1.2;
        max-width: 70vw;
    }

    /* Bandeau d’aide hub */
    .untree_co--site-section.bg-body-darker .readmore {
        display: inline-block;
        margin: 6px 4px;
        padding: 8px 4px;
    }
}

@media (max-width: 575.98px) {
    .untree_co--site-hero.inner-page .site-hero-contents .hero-heading {
        font-size: 1.65rem !important;
    }
}

/* -------------------------------------------------------------------------
   Pages vitrine FTCO (ex. event.blade, rdv.blade) — même head que Untree
   ------------------------------------------------------------------------- */
@media (max-width: 991.98px) {
    .hero-wrap.hero-wrap-2 {
        min-height: max(52vh, 340px);
        background-position: center center !important;
        background-size: cover !important;
    }

    .hero-wrap.hero-wrap-2 .slider-text {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }

    .hero-wrap .bread {
        font-size: 1.65rem !important;
        line-height: 1.25;
        padding-left: 12px;
        padding-right: 12px;
    }

    .ftco-section .container {
        padding-left: max(16px, env(safe-area-inset-left));
        padding-right: max(16px, env(safe-area-inset-right));
    }

    .ftco-section .wrap-about.pr-md-4 {
        padding-right: 0 !important;
    }

    .ftco-section .form-control,
    .ftco-section input[type="text"],
    .ftco-section input[type="email"],
    .ftco-section textarea {
        min-height: 48px;
        font-size: 16px;
    }

    .ftco-section textarea.form-control {
        min-height: 120px;
    }

    .ftco-section .btn.btn-primary,
    .ftco-section button[type="submit"] {
        width: 100%;
        max-width: 100%;
        min-height: 48px;
    }

    /* FTCO : mêmes grilles que Bootstrap sur tablette étroite */
    .ftco-section .row > [class*="col-sm-"],
    .ftco-section .row > [class*="col-md-"],
    .ftco-section .row > [class*="col-lg-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    .ftco-section form .row > [class*="col-"],
    .ftco-section form .form-row > [class*="col-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /*
     * Pages vitrine FTCO : bandeau .bg-top et héros ne sont pas dans .ftco-section ni .untree_co--site-wrap.
     */
    .bg-top .row > [class*="col-sm-"],
    .bg-top .row > [class*="col-md-"],
    .bg-top .row > [class*="col-lg-"],
    .bg-top .row .row > [class*="col-md"],
    .hero-wrap .row > [class*="col-sm-"],
    .hero-wrap .row > [class*="col-md-"],
    .hero-wrap .row > [class*="col-lg-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* -------------------------------------------------------------------------
   Desktop : barre « Complexe GUEB'S » — éviter que les liens passent sous le logo
   (utilisé avec .site-nav-ul--compact sur welcome + hub réservation)
   ------------------------------------------------------------------------- */
@media (min-width: 992px) {
    /* Avec ou sans .sticky-wrapper (nav au chargement ou après scroll) */
    .untree_co--site-nav .container,
    .sticky-wrapper .untree_co--site-nav .container {
        flex-wrap: nowrap;
    }

    .untree_co--site-nav .site-nav-ul-wrap,
    .sticky-wrapper .untree_co--site-nav .site-nav-ul-wrap {
        flex: 1 1 auto;
        min-width: 0;
    }

    .untree_co--site-nav .site-nav-ul--compact > li > a,
    .sticky-wrapper .untree_co--site-nav .site-nav-ul--compact > li > a {
        padding-left: 0.55rem !important;
        padding-right: 0.55rem !important;
        font-size: 0.88rem !important;
    }
}
