/* =============================================================================
   ROMPON.NET — FEUILLE DE STYLES PERSONNALISÉE
   ============================================================================= */


/* =============================================================================
   1. RÉINITIALISATION ET ESPACEMENTS GLOBAUX
   ============================================================================= */

   body {
    color: #333 !important;
    padding-top: 15px !important;
}

.ovatheme_nosidebar {
    text-align: justify;
}

.site-header,
.ova-bg-heading {
    margin-bottom: 0 !important;
}

.ova-bg-heading {
    margin-top: 0 !important;
}

/* Page Bibliothèque : pas de colonne latérale (body a souvent page-id-17226 sans page-bibliotheque) */
body.page-bibliotheque .ovaem_general_sidebar,
body.page-bibliotheque #sidebar,
body.page-id-17226 .ovaem_general_sidebar,
body.page-id-17226 #sidebar {
    display: none !important;
}
body.page-bibliotheque .ova-page-section .container > .row > .col-md-8:not(.ovaem_general_sidebar),
body.page-id-17226 .ova-page-section .container > .row > .col-md-8:not(.ovaem_general_sidebar) {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
}

body.page-bibliotheque h4.wp-block-heading,
body.page-id-17226 h4.wp-block-heading {
    margin-top: 0 !important;
}

body.page-bibliotheque .ova-page-section,
body.page-id-17226 .ova-page-section {
    padding-bottom: 2.5rem !important;
}

@media (min-width: 768px) {
    body.page-bibliotheque .ova-page-section,
    body.page-id-17226 .ova-page-section {
        padding-bottom: 3rem !important;
    }
}

.breadcrumb,
.ova-breadcrumb,
.breadcrumbs {
    display: none !important;
}

/* Masquer le badge reCAPTCHA */
.grecaptcha-badge {
    visibility: hidden !important;
}


/* =============================================================================
   2. TYPOGRAPHIE ET TITRES
   ============================================================================= */

h1, h2, h3, h4, h5, h6,
.ova_title,
.post-title,
.entry-title,
.page-title,
.ova_service .title,
.ova-bg-heading h1,
.ova-bg-heading h2 {
    font-family: "Poppins", sans-serif !important;
    color: #333 !important;
}

.ova-bg-heading h1,
.ova-bg-heading h2,
.page .ova-bg-heading h1,
.page .ova-bg-heading h2,
.single .ova-bg-heading h1,
.single .ova-bg-heading h2,
.archive .ova-bg-heading h1,
.archive .ova-bg-heading h2,
.search .ova-bg-heading h1,
.search .ova-bg-heading h2 {
    text-align: center !important;
    font-size: 36px !important;
    font-weight: normal !important;
}

.page .entry-content,
.single .entry-content,
.archive .entry-content,
.page .post-content,
.single .post-content,
.archive .post-content,
.page .entry-content p,
.single .entry-content p,
.archive .entry-content p,
.page .post-content p,
.single .post-content p,
.archive .post-content p {
    font-size: 14px !important;
    font-weight: normal !important;
    line-height: 1.6 !important;
}

.ovaem_detail_post article.post-wrap {
    text-align: justify;
}

/* Bouton .ova-btn centré */
.ova-btn {
    display: block;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.ova-btn.ova-btn-large {
    padding: 10px 20px !important;
}


/* =============================================================================
   3. HEADER / NAVIGATION
   ============================================================================= */

.ova_header.ovatheme_header_v2 {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    z-index: 999 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.ova_header.ovatheme_header_v2.fixed,
.ova_header.ovatheme_header_v2.has_logo_scroll {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Navbar transparente en haut, 85 % opaque au scroll */
.ova_header.ovatheme_header_v2 .scroll_fixed,
.ova_header.ovatheme_header_v2.fixed .scroll_fixed,
.ova_header.ovatheme_header_v2:not(.shrink) .scroll_fixed,
.ova_header.ovatheme_header_v3 .scroll_fixed,
.ova_header.ovatheme_header_v3:not(.shrink) .scroll_fixed {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    transition: background-color 0.35s ease, box-shadow 0.35s ease !important;
}
.ova_header.ovatheme_header_v2.shrink .scroll_fixed,
.ova_header.ovatheme_header_v2.fixed.shrink .scroll_fixed,
.ova_header.ovatheme_header_v3.shrink .scroll_fixed,
.ova_header.ovatheme_header_v3.fixed.shrink .scroll_fixed {
    background-color: rgba(0, 0, 0, 0.85) !important;
    background-image: none !important;
    box-shadow: none !important;
    transition: background-color 0.35s ease, box-shadow 0.35s ease !important;
}

.ova_header.scroll_down .navbar,
.ova_header.ovatheme_header_v2 .navbar {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    padding: 10px 0 !important;
    min-height: auto;
    border: none !important;
}

/* Dropdown : padding et style */
.ova_header .navbar-nav > li > .dropdown-menu {
    padding-left: 8px !important;
    padding-right: 20px !important;
    padding-top: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Sous-menus dropdown transparents */
.ova-menu ul.dropdown-menu ul.dropdown-menu,
.ova-menu .dropdown-menu .dropdown-menu,
.ovatheme_header_v2 #ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu,
.ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu,
#ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu {
    text-align: right !important;
    background-color: transparent !important;
    background: none !important;
}
.ova-menu ul.dropdown-menu ul.dropdown-menu li a,
.ova-menu .dropdown-menu .dropdown-menu li a,
.ovatheme_header_v2 #ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu li a,
.ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu li a,
#ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu li a {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background-color: transparent !important;
    background: none !important;
    transition: color 0.3s ease, -webkit-text-fill-color 0.3s ease !important;
}
.ova-menu ul.dropdown-menu ul.dropdown-menu li a:hover,
.ova-menu .dropdown-menu .dropdown-menu li a:hover,
.ovatheme_header_v2 #ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu li a:hover,
.ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu li a:hover,
#ovatheme_header_v2 #menu-primary-menu ul.dropdown-menu ul.dropdown-menu li a:hover {
    color: #d1a98c !important;
    -webkit-text-fill-color: #d1a98c !important;
    background-color: transparent !important;
    background: none !important;
}

/* Logo */
.ova_header .logo_scroll { display: none !important; }
.ova_header .logo { display: block !important; }

.ova_header.ovatheme_header_v2 .container,
.ova_header.ovatheme_header_v2 .container-fluid {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.ova_header.ovatheme_header_v2 .navbar-header {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.ova_header.ovatheme_header_v2 .navbar-brand {
    padding: 10px 0 !important;
    margin: 0 !important;
    height: auto;
}
.ova_header.ovatheme_header_v2 .ova-menu {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Flex layout logo/menu desktop */
.ova_header.ovatheme_header_v2 .ova-logo.navbar-header {
    flex: 0 0 auto !important;
    max-width: none;
}
.ova_header.ovatheme_header_v2 #ovatheme_header_v2 {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}
.ova_header.ovatheme_header_v2 .ova-menu ul.navbar-nav {
    flex-wrap: nowrap !important;
}

/* Taille et espacement des items de menu */
.ova-menu ul.navbar-nav > li > a {
    font-size: 16px !important;
    font-weight: 600 !important;
}
.ova-menu ul.navbar-nav > li .dropdown-menu > li > a {
    font-size: 15px !important;
}
.ova-menu nav.navbar li ul.dropdown-menu li > a {
    padding: 0 !important;
}
.ova_header .navbar-nav > li > a {
    padding: 5px 10px !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    height: auto !important;
    margin: 0 !important;
}
.ova_header.ovatheme_header_v2 .navbar-nav > li > a {
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 15px !important;
}
.ova_header .navbar-nav > li,
.ova_header .ova-account {
    padding: 0 !important;
    margin: 0 !important;
}
.ova_header .ova-account a {
    padding: 3px 6px !important;
    font-size: 12px !important;
    margin: 0 !important;
}
.ova_header .navbar-brand span.blogname,
.ova_header .navbar-brand .blogname,
.ovatheme_header_default a.navbar-brand span.blogname {
    font-size: 14px !important;
    font-weight: normal !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.ova_header .navbar-header {
    padding: 3px 0 !important;
    margin: 0 !important;
    min-height: auto !important;
}
.ova_header .container-fluid {
    padding: 3px 15px !important;
}
.ova_header.ovatheme_header_v2 .container-fluid {
    padding-left: 5px !important;
    padding-right: 8px !important;
}
.ova_header .container {
    padding: 0 15px !important;
}
.ova_header .row {
    margin: 0 !important;
    padding: 0 !important;
}
.ova_header .navbar-toggle {
    padding: 5px 8px !important;
    margin: 5px 0 !important;
}
.ova_header .icon-bar {
    height: 2px !important;
    margin: 3px 0 !important;
}


/* =============================================================================
   4. PAGE HEADING
   ============================================================================= */

.ova-bg-heading {
    padding: 20px 0 !important;
    min-height: auto !important;
    background-attachment: scroll !important;
}
.ova-breadcrumbs {
    padding: 15px 0 !important;
}
.ova-breadcrumbs h1.ova_title,
.ova-breadcrumbs .ova_title {
    font-size: 30px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    margin: 5px 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    color: #fff !important;
}
.ova_title,
.ova-bg-heading .ova_title,
.ova-bg-heading h1.ova_title,
.ova-bg-heading h2.ova_title {
    font-size: 30px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
}
.ova-breadcrumbs .breadcrumbs {
    font-size: 11px !important;
    margin: 5px 0 0 0 !important;
}
.ova-bg-heading .bg_cover {
    opacity: 0.3 !important;
}

/* Espacement sous le header fixed */
.page .ova-bg-heading,
.single .ova-bg-heading,
.archive .ova-bg-heading,
.search .ova-bg-heading,
.error404 .ova-bg-heading {
    margin-top: -15px !important;
    padding-top: 270px !important;
}

/* Margin-top sections selon page */
body.page-saisons .ova-page-section,
body.post-type-archive-communique .ova-page-section,
body.post-type-archive-communiques .ova-page-section,
body.page-nouvelles .ova-page-section {
    margin-top: 35px !important;
}
body.page-photos .ova-page-section {
    margin-top: 35px !important;
}

/* Page Saisons : texte justifié */
body.page-saisons .ova-page-section .wpb_wrapper p,
body.page-saisons .ova-page-section .wpb_text_column .wpb_wrapper p,
body.page-saisons .ova-page-section .vc_column_text .wpb_wrapper p,
body.page-id-16285 .ova-page-section .wpb_wrapper p {
    text-align: justify !important;
}


/* =============================================================================
   5. SERVICES
   ============================================================================= */

.ova_service_link_wrapper {
    cursor: pointer;
    text-decoration: none !important;
    display: block;
    color: inherit;
}
.ova_service_link_wrapper:hover { text-decoration: none !important; }
.ova_service_link_wrapper .ova_service { cursor: pointer; }

.ova_service { padding: 10px 0; }
.ova_service .title { padding-bottom: 0; }
.ova_service .desc { padding: 0 5% !important; }
.ova_service .read_more { padding-top: 10px; }

.ova_service .icon i,
.ova_service .icon i:before {
    color: #d1a98c !important;
    -webkit-text-fill-color: #d1a98c !important;
}
.ova_service:hover {
    background-color: #d1a98c !important;
    color: #fff !important;
    transition: all 0.3s ease !important;
}
.ova_service:hover .title,
.ova_service:hover .desc { color: #fff !important; }
.ova_service:hover .icon { border-color: #fff !important; }
.ova_service:hover .icon i,
.ova_service:hover .icon i:before {
    background: #fff !important;
    color: #d1a98c !important;
    -webkit-text-fill-color: #d1a98c !important;
}
.ova_service:hover .read_more a { color: #fff !important; }

.ova_service.ova-trans.style1 { padding-top: 3px; padding-bottom: 20px; }
.ova_service.ova-trans.style1:hover { padding-top: 3px; padding-bottom: 20px; }


/* =============================================================================
   6. GRILLE CPT (Nouvelles, Communiqués, Presse)
   ============================================================================= */

/* Largeur uniforme post-media / content */
body .col-md-4 .post-wrap,
body .col-sm-6 .post-wrap,
.ovaem_blog_grid_page .col-md-4 .post-wrap,
.ovaem_blog_grid_page .col-sm-6 .post-wrap {
    width: 100%;
    display: flex !important;
    flex-direction: column !important;
}
body .col-md-4 .post-wrap .post-media,
body .col-sm-6 .post-wrap .post-media,
.ovaem_blog_grid_page .post-wrap .post-media {
    width: 100%;
    flex-shrink: 0;
}
body .col-md-4 .post-wrap .content,
body .col-sm-6 .post-wrap .content,
.ovaem_blog_grid_page .post-wrap .content {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    float: none !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Hauteur égale des cartes */
.ovaem_blog_grid_page .row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}
.ovaem_blog_grid_page .row .col-md-4,
.ovaem_blog_grid_page .row .col-sm-6 {
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
}
.ovaem_blog_grid_page .col-md-4 .post-wrap,
.ovaem_blog_grid_page .col-sm-6 .post-wrap,
.ovaem_blog_grid_page .col-md-4 article.type-nouvelle,
.ovaem_blog_grid_page .col-sm-6 article.type-nouvelle {
    float: none !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: 100% !important;
}
.ovaem_blog_grid_page .post-wrap .content .post-meta,
.ovaem_blog_grid_page .post-wrap .content .post-title,
.ovaem_blog_grid_page .post-wrap .content .read_more {
    flex-shrink: 0 !important;
}
.ovaem_blog_grid_page .post-wrap .content .post-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
}

/* Espacements internes cartes */
.ovaem_blog_grid_page .post-wrap .content .post-meta-content { margin: 0; }
.ovaem_blog_grid_page .post-wrap .content .post-title,
.ovaem_blog_grid_page .post-wrap .content .post-title h2 {
    margin-bottom: 10px !important;
    margin-top: 10px !important;
}
.ovaem_blog_grid_page .post-wrap .content .btn { margin-bottom: 20px; }
.ovaem_blog_grid_page .post-wrap .content .read_more a { margin-bottom: 30px; }

/* Archive Presse */
body.post-type-archive-presse .post-readmore .btn { margin-bottom: 0; }
body.post-type-archive-presse .ovaem_blog_grid_page .post-wrap .content .read_more a { margin-top: 0 !important; }

/* Archive Communiqués : supprimer le margin-top de la grille */
body.post-type-archive-communiques .ovaem_blog_grid_page { margin-top: 0 !important; }

/* =============================================================================
   PAGE NOUVELLES — liste des articles
   ============================================================================= */
.omc-nouvelle-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px 0;
    border-bottom: 1px solid #e0e0e0;
}
.omc-nouvelle-item:last-child { border-bottom: none; }
.omc-nouvelle-thumbnail { flex-shrink: 0; }
.omc-nouvelle-thumbnail a { display: block; line-height: 0; }
.omc-nouvelle-img {
    width: 160px;
    height: 120px;
    object-fit: cover;
    border-radius: 6px;
}
.omc-nouvelle-date-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 15px 12px;
    background: #f5f0e8;
    border-radius: 8px;
    min-width: 80px;
    min-height: 80px;
    flex-shrink: 0;
}
.omc-nouvelle-date-day {
    font-size: 32px;
    font-weight: 600;
    color: #8b6f47;
    line-height: 1;
    margin-bottom: 4px;
}
.omc-nouvelle-date-month {
    font-size: 12px;
    color: #8b6f47;
    text-transform: lowercase;
    margin-bottom: 2px;
}
.omc-nouvelle-date-year { font-size: 11px; color: #8b6f47; }
.omc-nouvelle-title-wrapper { flex-grow: 1; }
.omc-nouvelle-title {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
}
.omc-nouvelle-title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}
.omc-nouvelle-title a:hover { color: #8b6f47; }

.omc-nouvelles-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}
.omc-nouvelles-list-container {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}
.omc-nouvelle-date-box {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

@media (max-width: 768px) {
    .omc-nouvelle-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
    .omc-nouvelle-img { width: 100%; max-width: 320px; height: 180px; }
    .omc-nouvelle-date-box { min-width: 70px; min-height: 70px; }
    .omc-nouvelle-date-day { font-size: 28px; }
}

/* =============================================================================
   7. ICÔNE CALENDRIER
   ============================================================================= */

.ovaem_blog_grid_page .post-wrap .content .post-meta .post-meta-content .post-date i,
.ovaem_blog_grid_page .post-wrap .content .post-meta .post-meta-content .post-date .left i.icon_calendar,
.ovaem_blog_page .post-wrap .post-meta .left_side .post-date i,
.ovaem_blog_page .post-wrap .post-meta .left_side .post-date .left i.icon_calendar,
.ovaem_detail_post .post-meta .post-meta-content .post-date .left i,
.ovaem_detail_post .post-meta .post-meta-content .post-date .left i.icon_calendar {
    color: #b8935a !important;
    padding-right: 15px;
}


/* =============================================================================
   8. PAGINATION
   ============================================================================= */

.pagination-wrapper,
.col-md-12.row.pagination-wrapper {
    margin: 0 0 40px 0 !important;
    padding: 0 15px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    float: none !important;
    box-sizing: border-box !important;
}
.ovaem_blog_grid_page .pagination-wrapper,
.ovaem_blog_page .pagination-wrapper,
body.post-type-archive-communique .pagination-wrapper,
body.post-type-archive-communiques .pagination-wrapper,
body.post-type-archive-presse .pagination-wrapper,
body.archive .pagination-wrapper {
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    float: none !important;
}
.pagination-wrapper .blog_pagination,
.col-md-12.row.pagination-wrapper .blog_pagination {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    text-align: center !important;
}
.pagination-wrapper .blog_pagination ul.pagination,
.col-md-12.row.pagination-wrapper .blog_pagination ul.pagination {
    display: inline-flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    float: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    list-style: none !important;
}


/* =============================================================================
   9. SIDEBAR
   ============================================================================= */

/* Hover liens */
.ovaem_general_sidebar .widget ul li a:hover,
.ovaem_general_sidebar .widget.widget_categories ul li a:hover,
.ovaem_general_sidebar .widget a:hover,
.woocommerce .ovaem_general_sidebar .widget.widget_product_categories ul li a:hover {
    color: #d1a98c !important;
}

/* Border-radius widgets */
.widget.widget_block,
#sidebar .widget.widget_block,
.ovaem_general_sidebar .widget.widget_block,
body.page-nouvelles .widget.widget_block,
.ovaem_blog_page .widget.widget_block,
#recent-posts-widget-with-thumbnails-1,
#sidebar #recent-posts-widget-with-thumbnails-1,
.ovaem_general_sidebar #recent-posts-widget-with-thumbnails-1,
body.page-saisons .widget.omc_search_concerts,
body.page-saisons #sidebar .widget.omc_search_concerts,
body.page-saisons .ovaem_general_sidebar .widget.omc_search_concerts,
.widget.omc_search_concerts {
    border-radius: 4px !important;
    overflow: hidden !important;
}

/* Bouton Rechercher */
#sidebar .wp-block-search__button.wp-element-button,
.wp-block-search__button.wp-element-button {
    background: #d1a98c !important;
    color: #fff !important;
    border-color: #d1a98c !important;
    border-radius: 4px !important;
    transition: background-color 0.3s ease, border-color 0.3s ease !important;
}
#sidebar .wp-block-search__button.wp-element-button:hover,
.wp-block-search__button.wp-element-button:hover {
    background: #b8935a !important;
    border-color: #b8935a !important;
}
.omc-search-submit {
    background: #d1a98c !important;
    color: #fff !important;
    border-radius: 4px !important;
    transition: background-color 0.3s ease !important;
}
.omc-search-submit:hover {
    background: #b8935a !important;
}

body.page-id-16285 .omc-search-submit {
    padding: 10px 10px !important;
}

/* Input Rechercher */
#wp-block-search__input-1,
#sidebar #wp-block-search__input-1,
.wp-block-search__input {
    padding: 12px 45px 12px 15px !important;
    border: 2px solid #e2e2e2 !important;
    border-radius: 4px !important;
    color: #333 !important;
    background: #fff !important;
    transition: all 0.3s ease !important;
    outline: none !important;
}

/* Page Saisons : margin-bottom widget omc_search_concerts */
body.page-saisons .sidebar div.widget.omc_search_concerts,
body.page-saisons #sidebar div.widget.omc_search_concerts,
body.page-saisons .ovaem_general_sidebar div.widget.omc_search_concerts {
    margin-bottom: 50px !important;
}


/* =============================================================================
   10. PLUGIN OMC
   ============================================================================= */

/* Boutons saison */
body .omc-saisons-container a.omc-btn-saison,
body a.omc-btn-saison {
    background-color: #d1a98c !important;
    border: 1px solid #d1a98c !important;
    color: #fff !important;
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease !important;
}
body .omc-saisons-container a.omc-btn-saison:hover,
body a.omc-btn-saison:hover,
a.omc-btn-back:hover,
body a.omc-btn-back:hover {
    background-color: #b8935a !important;
    border-color: #b8935a !important;
    color: #fff !important;
}

/* États de lien omc-btn-back et omc-btn-small */
a.omc-btn-back:link,
a.omc-btn-back:visited,
a.omc-btn-back:active,
a.omc-btn-back:focus,
a.omc-btn-small:link,
a.omc-btn-small:visited,
a.omc-btn-small:active,
a.omc-btn-small:focus {
    color: #fff !important;
}

/* Bouton directives carte */
a.omc-map-directions:link,
a.omc-map-directions:visited,
a.omc-map-directions:active,
a.omc-map-directions:focus,
a.omc-map-directions:hover {
    color: #fff !important;
}

/* Lien titre concert */
.omc-concert-title-link:hover {
    color: #d1a98c !important;
    border-bottom-color: #d1a98c !important;
}

/* Bouton PDF */
.omc-btn-pdf,
.omc-btn-pdf:hover {
    color: #fff !important;
}

/* Icône musiciens */
.omc-musiciens-list .omc-list-emoji,
.omc-musiciens-list .musicien-instrument .omc-list-emoji {
    color: #b8935a !important;
    margin-right: 0.35em;
}

/* Grille saisons */
.omc-saison-year { font-weight: normal !important; }
.omc-saisons-container .omc-saisons-grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 15px !important;
    margin-top: 30px;
}
.omc-saisons-container .omc-saison-card {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    border: 1px solid #ddd !important;
    border-radius: 6px !important;
    padding: 20px !important;
    text-align: center !important;
    text-decoration: none !important;
    min-height: 80px !important;
    font-size: 24px !important;
    font-weight: bold !important;
    color: #d1a98c !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
    overflow: visible !important;
}
.omc-saisons-container .omc-saison-card:link,
.omc-saisons-container .omc-saison-card:visited,
.omc-saisons-container .omc-saison-card:active,
.omc-saisons-container .omc-saison-card:focus {
    color: #d1a98c !important;
}
.omc-saisons-container .omc-saison-card:hover {
    border-color: #d1a98c !important;
    box-shadow: 0 4px 12px rgba(209, 169, 140, 0.2) !important;
    transform: translateY(-2px) !important;
    color: #d1a98c !important;
}

/* Recherche OMC */
.omc-search-results-form { margin-bottom: 30px; }
.omc-search-form-inline .omc-search-field {
    display: flex;
    gap: 10px;
    align-items: center;
    max-width: 600px;
}
.omc-search-form-inline .omc-search-input {
    flex: 1;
    min-width: 0;
    padding: 12px 15px;
    border: 2px solid #e2e2e2;
    border-radius: 4px;
    font-size: 16px;
}
.omc-search-form-inline .omc-search-input:focus {
    border-color: #d1a98c;
    outline: none;
}


/* =============================================================================
   11. ZONE HISTOIRE ÉVÉNEMENT
   ============================================================================= */

body .event-story,
.event-story {
    background: #f2f2f2 !important;
    padding: 15px;
    border-left: 3px solid #d1a98c !important;
    border-radius: 3px;
    margin: 0;
}
body .event-story p,
.event-story p {
    margin: 0;
    color: #333;
    font-size: 14px;
    line-height: 1.7;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
body .event-story strong,
.event-story strong {
    color: #d1a98c !important;
    font-weight: 600;
}

/* =============================================================================
   COMMUNIQUES
   ============================================================================= */
   
body.page-type-archive-communiques .ovaem_blog_grid_page,
body.post-type-archive-communiques .ovaem_blog_grid_page {
    margin-top: 30px !important;
}

   .filtre-annee-communiques {
    display: flex;
    justify-content: center;
    margin-bottom: 2rem;
    margin-top: 1rem;
    position: relative;
    z-index: 100;
}

.custom-select-wrapper {
    position: relative;
    display: inline-block;
    min-width: 200px;
}

.custom-select-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    border: 1px solid #d1a98c;
    border-radius: 4px;
    font-size: 14px;
    font-family: 'Poppins', sans-serif;
    color: #333;
    background: #fff;
    cursor: pointer;
    user-select: none;
    gap: 12px;
    margin-bottom: 10px;
}

.custom-select-trigger::after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-right: 1.5px solid #d1a98c;
    border-bottom: 1.5px solid #d1a98c;
    transform: rotate(45deg);
    margin-top: -4px;
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.custom-select-wrapper.open .custom-select-trigger::after {
    transform: rotate(-135deg);
    margin-top: 2px;
}

.custom-select-trigger:hover {
    border-color: #b8935a;
}

.custom-select-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #d1a98c;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.custom-select-wrapper.open .custom-select-dropdown {
    display: block;
}

.custom-select-option {
    padding: 10px 20px;
    font-size: 14px;
    font-family: 'Poppins', sans-serif;
    color: #333;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.custom-select-option:hover {
    background: #f9f1eb;
    color: #b8935a;
}

.custom-select-option.selected {
    color: #b8935a;
    font-weight: 500;
}

.communiques-loading {
    text-align: center;
    padding: 2rem;
    color: #999;
    display: none;
}

/* Page Souvenirs : bouton retour aligné au filtre */
body.page-id-17319 .ovatheme_nosidebar {
    display: block;
    position: relative;
    margin-bottom: 1rem;
}

body.page-id-17319 #btn-retour-photos {
    position: absolute;
    top: 10px;
    left: 0;
    margin-bottom: 0 !important;
    z-index: 10 !important;
}

body.page-id-17319 .filtre-annee-communiques {
    margin: 0 0 1rem 0 !important;
    justify-content: center;
    padding-top: 10px;
    pointer-events: none !important;
}

body.page-id-17319 .filtre-annee-communiques .custom-select-wrapper {
    pointer-events: auto !important;
}

@media (max-width: 768px) {
    body.page-id-17319 #btn-retour-photos {
        margin-left: 15px !important;
        padding: 10px 20px !important;
    }

    body.page-id-17319 .filtre-annee-communiques {
        justify-content: flex-end !important;
        padding-right: 15px !important;
    }
}

/* =============================================================================
   12. CARTES HISTORIQUES
   ============================================================================= */

.historical-card {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    width: 100%;
    max-width: 100%;
}
.historical-card:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12); }

.date-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px;
    background: #f8f9fa;
    border-bottom: 1px solid #e0e0e0;
    flex-wrap: wrap;
}
.date-icon { font-size: 20px; flex-shrink: 0; }
.date-header h3 {
    margin: 0;
    color: #333;
    font-size: 16px;
    font-weight: 600;
    flex: 1;
    min-width: 200px;
}
.event-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.event-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 600;
    color: #333;
    margin: 0;
    flex-wrap: wrap;
}
.music-icon { font-size: 24px; flex-shrink: 0; }
.location {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
    font-size: 14px;
    margin: 0;
    flex-wrap: wrap;
}
.location-icon { font-size: 16px; flex-shrink: 0; }
.event-description {
    color: #555;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
.event-description strong { color: #333; font-weight: 600; }
.event-action {
    margin-top: 10px;
    padding-top: 20px;
    border-top: 1px solid #e0e0e0;
}
.action-text { color: #666; font-size: 14px; margin: 0 0 12px 0; word-wrap: break-word; overflow-wrap: break-word; }
.btn-programmes {
    display: inline-block;
    padding: 12px 24px;
    background: #d1a98c;
    color: white;
    text-decoration: none;
    border-radius: 3px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    white-space: nowrap;
}
.btn-programmes:hover { background: #b8935a; color: white; }


/* =============================================================================
   13. LIENS ET BOUTONS GÉNÉRAUX
   ============================================================================= */

/* Liens .post-excerpt / .em4u-excerpt-links (remplace excerpt-links.css) */
.em4u-excerpt-links a,
.post-excerpt a {
    color: #d1a98c !important;
    -webkit-text-fill-color: #d1a98c !important;
}
.em4u-excerpt-links a:hover,
.post-excerpt a:hover {
    color: #b8935a !important;
    -webkit-text-fill-color: #b8935a !important;
    text-decoration: underline !important;
}

/* Extraits (recherche, listes) : interligne un peu plus serré (évite l’effet « double » avec nl2br) */
.post-excerpt.em4u-excerpt-links {
    line-height: 1.45;
}

/* Bouton "Lire la suite" */
body .post-readmore a.btn.btn-theme.btn-theme-transparent {
    padding: 10px 20px !important;
    border-radius: 4px !important;
    background: #d1a98c !important;
    border: 1px solid #d1a98c !important;
    color: #fff !important;
}
body .post-readmore a.btn.btn-theme.btn-theme-transparent:hover {
    background: #b8935a !important;
    border-color: #b8935a !important;
}

/* Bouton scroll to top */
#scrollUp {
    border-radius: 4px !important;
    background-color: #d1a98c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}
#scrollUp i {
    display: block !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}
#scrollUp i.arrow_carrot-up::before { margin-left: -3px !important; }
#scrollUp:hover { background-color: #b8935a !important; }


/* =============================================================================
   14. FORMULAIRES CF7
   ============================================================================= */

.wpcf7-form input[type="submit"],
.wpcf7-submit,
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    display: inline-block !important;
    padding: 10px 20px !important;
    background-color: #d1a98c !important;
    color: #fff !important;
    border: 1px solid transparent !important;
    border-radius: 4px !important;
    transition: background-color 0.3s ease, border-color 0.3s ease !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    font-size: 14px !important;
    transform: none !important;
    box-sizing: border-box !important;
}
/* Hover global CF7 : gris neutre (sauf page-id-16169) */
.wpcf7-form input[type="submit"]:hover,
.wpcf7-submit:hover:not(.omc-btn-saison),
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    background-color: #555 !important;
}
/* Page Informations Pratiques : hover #b8935a */
body.page-id-16169 .wpcf7-form input[type="submit"]:hover,
body.page-id-16169 .wpcf7-submit:hover,
body.page-id-16169 .event_contact .submit .wpcf7-submit:hover,
body.page-id-16169 .event_contact .submit input.wpcf7-submit:hover {
    background-color: #b8935a !important;
    border: 1px solid #b8935a !important;
    border-color: #b8935a !important;
    color: #fff !important;
}

/* Inputs CF7 : largeur et box-sizing */
.wpcf7-form,
.event_contact form { max-width: 100%; box-sizing: border-box; }
.wpcf7-form .wpcf7-form-control-wrap,
.wpcf7-form p,
.event_contact .group-form { max-width: 100%; box-sizing: border-box; width: 100%; display: block !important; }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea,
.event_contact input,
.event_contact textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
    width: 100% !important;
}
.wpcf7-response-output {
    margin: 0 !important;
    border-color: red !important;
}

/* Page Informations Pratiques : inputs font-weight */
body.page-informations-pratiques .vc_column-inner input,
body.page-informations-pratiques .vc_column-inner textarea,
body.page-id-16169 .vc_column-inner input,
body.page-id-16169 .vc_column-inner textarea,
body.page-informations-pratiques .event_contact input,
body.page-informations-pratiques .event_contact textarea,
body.page-id-16169 .event_contact input,
body.page-id-16169 .event_contact textarea {
    font-weight: 400 !important;
}
body.page-informations-pratiques .vc_column-inner input[type="submit"],
body.page-informations-pratiques .vc_column-inner .wpcf7-submit,
body.page-id-16169 .vc_column-inner input[type="submit"],
body.page-id-16169 .vc_column-inner .wpcf7-submit {
    font-weight: 500 !important;
}

/* Zone message */
body.page-informations-pratiques .vc_column-inner textarea[name="your-message"],
body.page-informations-pratiques .event_contact textarea[name="your-message"],
body.page-id-16169 .vc_column-inner textarea[name="your-message"],
body.page-id-16169 .event_contact textarea[name="your-message"] {
    min-height: 100px !important;
    height: 130px !important;
    resize: vertical;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
}

body.page-informations-pratiques .vc_column-inner textarea[name="your-message"]:focus,
body.page-informations-pratiques .event_contact textarea[name="your-message"]:focus,
body.page-id-16169 .vc_column-inner textarea[name="your-message"]:focus,
body.page-id-16169 .event_contact textarea[name="your-message"]:focus {
    outline: none !important;
    box-shadow: none !important;
    border-color: #ccc;
}

body.page-id-16169 .wpcf7-form {
    min-width: 0 !important;
    width: 100% !important;
}

body.page-id-16169 .wpcf7-form fieldset.hidden-fields-container {
    min-width: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    display: block !important;
    float: left !important;
}

.recaptcha-mention a:hover { color: #b8935a !important; text-decoration: underline !important; }
h4.ftco-animate.fadeInUp.ftco-animated { margin-top: 0 !important; }
.omc-location-section { padding: 30px 20px; }

body.page-id-16169 .vc_col-sm-6 {
    width: 50% !important;
    flex: 0 0 50% !important;
}

@media (max-width: 768px) {
    body.page-id-16169 .vc_col-sm-6 {
        width: 100% !important;
        flex: 0 0 100% !important;
    }
}

/* =============================================================================
   15. LIENS SPÉCIFIQUES PAR PAGE
   ============================================================================= */

/* Pages Contact / Informations pratiques / Bibliothèque */
.page-contact .entry-content a,
.page-contact .post-content a,
.page-contact .wpb_text_column a,
.page-contact .vc_column-inner a,
.page-contact .wpb_content_element a,
.page-nous-contacter .entry-content a,
.page-nous-contacter .post-content a,
.page-nous-contacter .wpb_text_column a,
.page-nous-contacter .vc_column-inner a,
.page-nous-contacter .wpb_content_element a,
.page-informations-pratiques .entry-content a,
.page-informations-pratiques .post-content a,
.page-informations-pratiques .wpb_text_column a,
.page-informations-pratiques .vc_column-inner a,
.page-informations-pratiques .wpb_content_element a,
.page-bibliotheque .entry-content a,
.page-bibliotheque .post-content a,
.page-bibliotheque .wpb_text_column a,
.page-bibliotheque .vc_column-inner a,
.page-bibliotheque .wpb_content_element a,
.page-id-17226 .entry-content a,
.page-id-17226 .post-content a,
.page-id-17226 .wpb_text_column a,
.page-id-17226 .vc_column-inner a,
.page-id-17226 .wpb_content_element a {
    color: #d1a98c !important;
}
.page-contact .entry-content a:hover,
.page-contact .post-content a:hover,
.page-contact .wpb_text_column a:hover,
.page-contact .vc_column-inner a:hover,
.page-contact .wpb_content_element a:hover,
.page-nous-contacter .entry-content a:hover,
.page-nous-contacter .post-content a:hover,
.page-nous-contacter .wpb_text_column a:hover,
.page-nous-contacter .vc_column-inner a:hover,
.page-nous-contacter .wpb_content_element a:hover,
.page-informations-pratiques .entry-content a:hover,
.page-informations-pratiques .post-content a:hover,
.page-informations-pratiques .wpb_text_column a:hover,
.page-informations-pratiques .vc_column-inner a:hover,
.page-informations-pratiques .wpb_content_element a:hover,
.page-bibliotheque .entry-content a:hover,
.page-bibliotheque .post-content a:hover,
.page-bibliotheque .wpb_text_column a:hover,
.page-bibliotheque .vc_column-inner a:hover,
.page-bibliotheque .wpb_content_element a:hover,
.page-id-17226 .entry-content a:hover,
.page-id-17226 .post-content a:hover,
.page-id-17226 .wpb_text_column a:hover,
.page-id-17226 .vc_column-inner a:hover,
.page-id-17226 .wpb_content_element a:hover {
    color: #b8935a !important;
}

/*
 * Bibliothèque : sur page.php le contenu n’est pas dans .entry-content mais directement
 * dans .ova-page-section > .ovatheme_nosidebar (cf. templates/open_layout.php).
 */
body.page-bibliotheque .ova-page-section .ovatheme_nosidebar a,
body.page-id-17226 .ova-page-section .ovatheme_nosidebar a {
    color: #d1a98c !important;
    -webkit-text-fill-color: #d1a98c !important;
    text-decoration: none !important;
}
body.page-bibliotheque .ova-page-section .ovatheme_nosidebar a:hover,
body.page-id-17226 .ova-page-section .ovatheme_nosidebar a:hover {
    color: #b8935a !important;
    -webkit-text-fill-color: #b8935a !important;
    text-decoration: underline !important;
}

/* Email / téléphone */
.email-link a,
.adhesion-col a[href^="mailto:"] {
    color: #d1a98c !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}
.email-link a:hover,
.adhesion-col a[href^="mailto:"]:hover {
    color: #b8935a !important;
    text-decoration: underline !important;
}
.phone-number { display: inline-block; margin: 0 10px 0 0; }
.phone-number a { color: inherit; text-decoration: none; }
.email-link { display: inline-block; margin: 0; }

/* Lien PDF adhésion */
a[href*="bi-adhesion-statuts-telech"] { color: #d1a98c !important; -webkit-text-fill-color: #d1a98c !important; }
a[href*="bi-adhesion-statuts-telech"]:hover { color: #b8935a !important; -webkit-text-fill-color: #b8935a !important; text-decoration: underline !important; }

/* Mentions légales reCAPTCHA */
.recaptcha-mention a:hover { color: #b8935a !important; text-decoration: underline !important; }


/* =============================================================================
   16. PAGE RÉSULTATS DE RECHERCHE
   ============================================================================= */

body.search .ovatheme_container_wide,
body.search .ovatheme_container_boxed,
body.search-results .ovatheme_container_wide,
body.search-results .ovatheme_container_boxed,
body.search-no-results .ovatheme_container_wide,
body.search-no-results .ovatheme_container_boxed,
body.search .ova-page-section,
body.search-results .ova-page-section,
body.search-no-results .ova-page-section,
body.search .ova_header,
body.search-results .ova_header,
body.search-no-results .ova_header,
body.search .ova_header .scroll_fixed,
body.search-results .ova_header .scroll_fixed,
body.search-no-results .ova_header .scroll_fixed,
body.search .ova-bg-heading,
body.search-results .ova-bg-heading,
body.search-no-results .ova-bg-heading,
body.error404 .ovatheme_container_wide,
body.error404 .ovatheme_container_boxed,
body.error404 .ova_header,
body.error404 .ova_header .scroll_fixed {
    overflow: visible !important;
}

/* Page 404 */
.error404 .search-form input.search-submit,
.search-no-results .search-form input.search-submit {
    background: #d1a98c !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    transition: background-color 0.3s ease !important;
}
.error404 .search-form input.search-submit:hover,
.search-no-results .search-form input.search-submit:hover {
    background: #b8935a !important;
    color: #fff !important;
}
.error404 .search-form input.search-field,
.search-no-results .search-form input.search-field {
    padding: 12px 45px 12px 15px;
    border: 2px solid #e2e2e2;
    border-radius: 4px;
    color: #333;
    background: #fff;
    transition: all 0.3s ease;
    outline: none;
}
body.error404 .ova-page-section { margin-bottom: 30px; }


/* =============================================================================
   17. PAGE PHOTOS
   ============================================================================= */

.page-photos .wp-block-columns {
    align-items: flex-start !important;
    gap: 2rem !important;
}
.page-photos .wp-block-column {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}
.page-photos .wp-block-columns .wp-block-column {
    flex: 1 1 50% !important;
    max-width: 50% !important;
}
.page-photos .wp-block-column h2 {
    width: 100% !important;
    text-align: center !important;
    margin-bottom: 1rem !important;
}
.page-photos .wp-block-column figure.wp-block-image,
.page-photos .wp-block-column figure.wp-block-image a {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
}
.page-photos .wp-block-column figure.wp-block-image a {
    overflow: hidden !important;
    border-radius: 4px !important;
}
.page-photos .wp-block-column figure.wp-block-image img,
body.page-photos .wp-block-column figure.wp-block-image img {
    height: 300px !important;
    width: 100% !important;
    object-fit: cover !important;
    border-radius: 4px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    cursor: pointer !important;
    display: block !important;
}
.page-photos .wp-block-column figure.wp-block-image img:hover,
body.page-photos .wp-block-column figure.wp-block-image img:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18) !important;
}
.page-photos h2.wp-block-heading {
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #333 !important;
    text-transform: uppercase !important;
    margin-top: 1rem !important;
    margin-bottom: 0.5rem !important;
}
.page-photos .wp-block-heading.has-text-align-center { margin-top: 0 !important; }

/* Galerie page Lieu */
.page-lieu figure.wp-block-image img {
    border-radius: 4px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    cursor: pointer !important;
}
.page-lieu figure.wp-block-image img:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18) !important;
}


/* =============================================================================
   18. FOOTER
   ============================================================================= */

.footer-hero {
    background: url('/wp-content/uploads/2025/11/rompon.jpg') center center / cover no-repeat;
    color: #fff;
    text-align: center;
    position: relative !important;
    z-index: 200 !important;
    padding: 40px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    clear: both !important;
}
.footer-hero::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 0;
}

.footer-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    text-align: left;
    flex-wrap: wrap;
}
.footer-content > .footer-copyright { order: 999; }
.footer-content h1,
.footer-content h2,
.footer-content h3,
.footer-content h4,
.footer-content h5,
.footer-content h6 { color: #fff !important; }
.concert-title { color: #fff !important; }

.footer-left,
.footer-center,
.footer-right {
    flex: 1 1 30%;
    min-width: 280px;
}
.footer-left { text-align: left; }
.footer-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.footer-right {
    text-align: right;
    align-self: flex-start;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.footer-left h3,
.footer-right h3 { font-size: 20px; margin-bottom: 10px; }

.footer-left a { color: #d1a98c; text-decoration: none; transition: color 0.2s ease, text-decoration 0.2s ease; }
.footer-left a:hover { color: #b8935a; text-decoration: underline; }
.footer-right a { color: #b49e83; text-decoration: none; transition: text-decoration 0.2s ease; }
.footer-right a:hover { text-decoration: underline; }

/* Formulaire newsletter Infomaniak */
.footer-newsletter-form {
    margin-top: 15px;
    width: 100%;
}
.footer-newsletter-form form,
.footer-newsletter-form > div,
.footer-newsletter-form [class*="inf-main"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
}
.footer-newsletter-form form > *,
.footer-newsletter-form > div > *,
.footer-newsletter-form [class*="inf-main"] > *:not(.inf-success) {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
}

.footer-newsletter-form .inf-success {
    display: none;
    width: 100% !important;
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
    min-width: 100% !important;
    margin-top: 0.75em;
    padding: 0;
    order: 2;
}
.footer-newsletter-form .inf-success[style*="display: block"],
.footer-newsletter-form .inf-success[style*="display:block"] {
    display: block !important;
    width: 100% !important;
    flex: 0 0 100% !important;
}
.footer-newsletter-form div:has(> .inf-success),
.footer-newsletter-form form:has(> .inf-success) { flex-wrap: wrap !important; }

.footer-newsletter-form input[type="email"][style*="display: none"],
.footer-newsletter-form input[type="email"][style*="display:none"],
.footer-newsletter-form input[name="email"][style*="display: none"],
.footer-newsletter-form input[name="email"][style*="display:none"] {
    display: none !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    flex: 0 0 0 !important;
}

.footer-newsletter-form input[type="email"]:not([style*="display: none"]):not([style*="display:none"]),
.footer-newsletter-form input[type="text"] {
    flex: 1 !important;
    min-width: 200px !important;
    max-width: 300px !important;
    padding: 10px 15px !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 4px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    font-size: 14px !important;
}
.footer-newsletter-form input[type="email"]::placeholder,
.footer-newsletter-form input[type="text"]::placeholder { color: rgba(255, 255, 255, 0.7) !important; }

.footer-newsletter-form button,
.footer-newsletter-form input[type="submit"],
.footer-newsletter-form .btn-subscribe {
    padding: 10px 20px !important;
    background: #d1a98c !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    transition: background 0.3s ease !important;
}
.footer-newsletter-form button:hover,
.footer-newsletter-form input[type="submit"]:hover,
.footer-newsletter-form .btn-subscribe:hover { background: #b8935a !important; }

/* Bloc Infomaniak principal */
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 {
    background: rgba(0, 0, 0, 0.3) !important;
    color: #fff !important;
    border-radius: 8px;
    padding: 20px !important;
    max-width: 500px;
    margin: 0 auto !important;
    justify-content: center !important;
    align-items: center !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content form,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 form {
    display: flex !important;
    margin: 0 !important;
    padding: 0 !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content {
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 h4,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 span { color: #fff !important; font-family: "Poppins", sans-serif !important; }

.inf-main_f8d1fd344c855b7d20e10071befd4ae1 > *:not(.inf-success) {
    flex: 0 0 auto !important;
    max-width: 100% !important;
    order: 1 !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="email"] {
    background: #fff !important;
    color: #000 !important;
    border-radius: 4px;
    padding: 10px !important;
    border: none !important;
    flex: 1 1 auto !important;
    min-width: 180px !important;
    max-width: 320px !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="email"]::placeholder { color: #999 !important; }
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-submit {
    flex-shrink: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-submit input[type="submit"] {
    background: #d1a98c !important;
    color: #fff !important;
    border: none !important;
    white-space: nowrap !important;
    border-radius: 4px !important;
    padding: 10px 20px !important;
    margin: 0 !important;
    transition: background 0.3s ease !important;
    cursor: pointer !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-submit input[type="submit"]:hover { background: #b8935a !important; }
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-success {
    display: none !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
    min-width: 100% !important;
    margin-top: 0.75em !important;
    padding: 0 !important;
    order: 2 !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-success[style*="display: block"],
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-success[style*="display:block"] {
    display: block !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    order: 2 !important;
}
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 form:has(.inf-success),
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(> .inf-success) { flex-wrap: wrap !important; }

.footer-newsletter-form .inf-btn,
.footer-newsletter-form .inf-success .inf-btn,
.footer-newsletter-form .inf-success a.inf-btn,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-btn,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-success .inf-btn,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-success a.inf-btn {
    display: none !important;
    visibility: hidden !important;
}
.footer-newsletter-form .inf-success h4,
.inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-success h4 { font-size: 16px !important; margin: 0 !important; }

/* Altcha captcha */
.footer-newsletter-form .altcha-main .altcha-label,
.altcha-main .altcha-label,
[class*="altcha-main"] .altcha-label { color: #333 !important; margin-bottom: 0 !important; }
.footer-newsletter-form .altcha-main .altcha-spinner,
.altcha-main .altcha-spinner,
[class*="altcha-main"] .altcha-spinner { color: #333 !important; border-color: #333 !important; }

/* Copyright */
.footer-copyright {
    width: 100% !important;
    margin-top: 10px;
    padding: 0 !important;
    border-top: none !important;
    text-align: center;
    color: rgba(255, 255, 255, 0.8);
    font-size: 13px;
    line-height: 1.6;
    flex: 1 1 100% !important;
    flex-basis: 100% !important;
    min-width: 100% !important;
    box-sizing: border-box !important;
}
.footer-copyright a { color: #d1a98c; text-decoration: none; transition: color 0.3s ease; }
.footer-copyright a:hover { color: #b8935a; text-decoration: underline; }

/* Logo desktop */
.ova_header .navbar-brand img,
.ova_header.ovatheme_header_v2 .navbar-brand img {
    width: auto !important;
    height: auto !important;
    max-width: 400px !important;
    object-fit: contain !important;
}

/* Logo tablette */
@media (max-width: 992px) {
    .ova_header .navbar-brand img,
    .ova_header.ovatheme_header_v2 .navbar-brand img {
        max-width: 400px !important;
    }
}

/* Logo mobile */
@media (max-width: 768px) {
  .ova_header .navbar-brand img,
  .ova_header.ovatheme_header_v2 .navbar-brand img {
      max-width: 300px !important;
  }
}


/* =============================================================================
   19. HOME
   ============================================================================= */

body.home {
    padding-bottom: 0 !important;
    overflow-x: hidden;
}
body.home .main-content-wrapper { position: relative; z-index: 1; }
body.home .concert-countdown-wrapper { overflow: hidden !important; }
.concert-countdown-content .btn-concert { margin-right: 20px; }


/* =============================================================================
   20. RESPONSIVE — DESKTOP À TABLETTE (max-width: 1074px)
   ============================================================================= */

@media (max-width: 1074px) and (min-width: 993px) {
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 {
        max-height: 10px !important;
        min-height: 0 !important;
        overflow: visible !important;
    }
}


/* =============================================================================
   21. RESPONSIVE — TABLETTE (max-width: 992px)
   ============================================================================= */

@media (max-width: 992px) {

    /* Navbar */
    .ova_header.ovatheme_header_v2 .navbar,
    .ova_header .navbar {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
        min-height: auto !important;
    }
    .ova_header .scroll_fixed {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }
    .ova_header .navbar-brand,
    .ova_header.ovatheme_header_v2 .navbar-brand {
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }
    .ova_header .ova-logo .navbar-toggle,
    .ova_header.ovatheme_header_v2 .ova-logo .navbar-toggle {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    /* Burger blanc */
    .ova_header .navbar-toggle .icon-bar,
    .ova_header.ovatheme_header_v2 .navbar-toggle .icon-bar { background-color: #fff !important; }
    .ova_header .navbar-toggle,
    .ova_header.ovatheme_header_v2 .navbar-toggle { border-color: rgba(255, 255, 255, 0.6) !important; }
    .ova_header .navbar-toggle:hover,
    .ova_header .navbar-toggle:focus,
    .ova_header.ovatheme_header_v2 .navbar-toggle:hover,
    .ova_header.ovatheme_header_v2 .navbar-toggle:focus { border-color: #fff !important; }
    .ova_header .navbar-toggle:hover .icon-bar,
    .ova_header .navbar-toggle:focus .icon-bar,
    .ova_header.ovatheme_header_v2 .navbar-toggle:hover .icon-bar,
    .ova_header.ovatheme_header_v2 .navbar-toggle:focus .icon-bar { background-color: #fff !important; }

    /* Layout logo/burger */
    .ova_header .scroll_fixed .container,
    .ova_header.ovatheme_header_v2 .scroll_fixed .container { padding: 0 !important; }
    .ova_header .scroll_fixed .container .row,
    .ova_header.ovatheme_header_v2 .scroll_fixed .container .row { margin: 0 !important; }
    .ova_header .navbar .container-fluid,
    .ova_header.ovatheme_header_v2 .navbar .container-fluid { padding: 0 !important; }
    .ova_header .ova-logo.navbar-header,
    .ova_header.ovatheme_header_v2 .ova-logo.navbar-header {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        justify-content: space-between !important;
        flex-direction: row-reverse !important;
    }

    /* Menu déroulant aligné à droite */
    .ova_header .navbar-collapse.collapse.in,
    .ova_header.ovatheme_header_v2 .navbar-collapse.collapse.in,
    .ova_header #ovatheme_header_v2.in { text-align: right !important; }
    .ova_header .navbar-collapse.collapse.in ul.nav,
    .ova_header.ovatheme_header_v2 .navbar-collapse.collapse.in ul.nav,
    .ova_header #ovatheme_header_v2.in ul.nav { text-align: right !important; align-items: flex-end !important; }
    .ova_header #ovatheme_header_v2.in .container-fluid { justify-content: flex-end !important; }
    .ova-menu nav ul.nav.navbar-nav,
    .ova_header .navbar-collapse.in ul.nav.navbar-nav,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav { margin: 0 !important; height: auto !important; }

    /* Dropdown Histoire */
    .ova_header .navbar-nav > li > .dropdown-menu { padding-right: 0 !important; }

    /* Dropdown toggle bouton */
    .ova_header .navbar-collapse.collapse.in ul.nav.navbar-nav li.dropdown,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav li.dropdown {
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-end;
    }
    .ova_header .navbar-collapse.collapse.in ul.nav.navbar-nav li.dropdown > a,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav li.dropdown > a {
        flex: 0 1 auto;
        text-align: right;
        order: 1;
    }
    .ova_header .navbar-collapse.collapse.in ul.nav.navbar-nav li.dropdown button.dropdown-toggle,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav li.dropdown button.dropdown-toggle {
        position: static !important;
        flex-shrink: 0;
        order: -1;
        margin-right: 0.5em;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 0.35em !important;
        margin-top: 3px;
    }
    .ova_header .navbar-collapse.collapse.in ul.nav.navbar-nav li.dropdown button.dropdown-toggle i,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav li.dropdown button.dropdown-toggle i { display: none; }
    .ova_header .navbar-collapse.collapse.in ul.nav.navbar-nav li.dropdown button.dropdown-toggle::before,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav li.dropdown button.dropdown-toggle::before {
        content: "\f0d7";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        display: inline-block;
        color: inherit;
    }
    .ova_header .navbar-collapse.collapse.in ul.nav.navbar-nav li.dropdown > ul.dropdown-menu,
    .ova_header #ovatheme_header_v2.in ul.nav.navbar-nav li.dropdown > ul.dropdown-menu {
        order: 2;
        width: 100%;
        flex-basis: 100%;
    }
    #menu-primary-menu { padding-right: 100px !important; }
    .ova_header .navbar-header { padding: 0; }

    /* Saisons */
    .omc-saisons-container { padding: 0 !important; }
    .omc-saisons-container .omc-saisons-grid { grid-template-columns: repeat(3, 1fr) !important; }
    .widget.omc_search_concerts { margin-bottom: 30px !important; }

    /* Services */
    .ova_service .title { margin-top: 10px !important; }
    .wrap_service > .wpb_column:nth-child(3),
    .wrap_service > .wpb_column:nth-child(4),
    .wrap_service > [class*="vc_col"]:nth-child(3),
    .wrap_service > [class*="vc_col"]:nth-child(4) { border-top: 1px solid #fff; }

    /* Footer */
    .footer-content {
        flex-direction: column !important;
        justify-content: flex-start !important;
        align-items: center !important;
        text-align: center !important;
    }
    .footer-left,
    .footer-center,
    .footer-right {
        text-align: center !important;
        align-items: center !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
    }
    .footer-center { justify-content: flex-start !important; }
    .footer-right { align-items: center !important; }
    .footer-left ul { padding: 0; list-style: none !important; }
    .footer-left ul li::marker { content: none; display: none; }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 {
        padding: 20px !important;
        min-height: 0 !important;
        max-height: 150px !important;
        flex: 0 0 auto !important;
    }

    /* CF7 */
    .wpcf7-form,
    .event_contact form { padding: 0; }
}

@media (min-width: 769px) {
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 form,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 > div:not(.inf-success) {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        flex-wrap: wrap !important;
    }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(.inf-submit),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(input[type="submit"]) {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        flex-wrap: nowrap !important;
    }
}


/* =============================================================================
   22. RESPONSIVE — MOBILE (max-width: 768px)
   ============================================================================= */

@media (max-width: 768px) {

    /* Navbar */
    .ova_header {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    .ova_header .scroll_fixed {
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        margin-top: 0 !important;
        background-color: rgba(0, 0, 0, 0.85) !important;
        background-image: none !important;
        box-shadow: none !important;
        padding: 10px 0 !important;
        min-height: auto !important;
    }
    .ova_header.ovatheme_header_v2 .navbar {
        padding-top: 6px !important;
        padding-bottom: 6px !important;
        min-height: auto !important;
    }
    .ova_header.ovatheme_header_v2 { min-height: auto !important; }
    .ova_header .navbar-header {
        min-height: auto !important;
        display: flex !important;
        flex-direction: row-reverse !important;
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        padding: 0 !important;
    }

    .navbar-brand.logo,
    .navbar-brand.logo_scroll { display: none !important; }

    /* Burger */
    .ova_header .navbar-toggle {
        margin: 0 !important;
        padding: 6px 8px !important;
        border-color: rgba(255, 255, 255, 0.5) !important;
    }
    .ova_header .navbar-toggle .icon-bar { background-color: #fff !important; }
    .ova_header .navbar-toggle:hover,
    .ova_header .navbar-toggle:focus {
        background-color: transparent !important;
        border-color: #fff !important;
    }
    .ova_header .navbar-toggle:hover .icon-bar,
    .ova_header .navbar-toggle:focus .icon-bar { background-color: #fff !important; }

    /* Menu déroulant mobile */
    .ova_header.ovatheme_header_v2 .navbar-collapse,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 {
        transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s ease, padding 0.35s ease !important;
    }
    .ova_header.ovatheme_header_v2 .navbar-collapse.in,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2.in {
        text-align: right !important;
        max-height: 80vh !important;
        opacity: 1 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 0 !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2.in .container-fluid { display: flex !important; justify-content: flex-end !important; }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2.in ul.nav.navbar-nav {
        flex-direction: column !important;
        align-items: flex-end !important;
        width: 100%;
    }
    .ova_header.ovatheme_header_v2 .navbar-collapse.collapse:not(.in),
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2.collapse:not(.in) {
        max-height: 0 !important;
        opacity: 0 !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin-top: 0 !important;
    }
    .ova_header.ovatheme_header_v2 .navbar-collapse,
    .ova_header.ovatheme_header_v2 .navbar-collapse.collapse,
    .ova_header.ovatheme_header_v2 .navbar-collapse.in,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2.in {
        background-color: transparent !important;
        background-image: none !important;
        border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
        margin-left: -15px !important;
        margin-right: -15px !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 nav.navbar,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 .container-fluid,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 .dropdown-menu { background: transparent !important; }

    /* Couleurs liens menu mobile */
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav li a,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav > li > a,
    .ova_header.ovatheme_header_v2 .ova-menu ul.navbar-nav li a {
        color: rgba(255, 255, 255, 0.9) !important;
        -webkit-text-fill-color: rgba(255, 255, 255, 0.9) !important;
        opacity: 1 !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav li a:hover,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav li a:focus {
        color: #d1a98c !important;
        -webkit-text-fill-color: #d1a98c !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 .dropdown-menu {
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-left: none !important;
        border-right: none !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 .dropdown-menu li a,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.dropdown-menu li a {
        color: rgba(255, 255, 255, 0.9) !important;
        -webkit-text-fill-color: rgba(255, 255, 255, 0.9) !important;
        opacity: 1 !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 .dropdown-menu li a:hover,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.dropdown-menu li a:hover {
        color: #d1a98c !important;
        -webkit-text-fill-color: #d1a98c !important;
        background-color: rgba(255, 255, 255, 0.08) !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav li button.dropdown-toggle { color: rgba(255, 255, 255, 0.9) !important; }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav li button.dropdown-toggle:hover { color: #d1a98c !important; }

    /* Scrollbar cachée menu */
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav,
    .ova_header.ovatheme_header_v2 .navbar-collapse.in,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2.in {
        -ms-overflow-style: none !important;
        scrollbar-width: none !important;
    }
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2::-webkit-scrollbar,
    .ova_header.ovatheme_header_v2 #ovatheme_header_v2 ul.nav.navbar-nav::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* Navbar non-scrollée (non .shrink) */
    body .ova_header.ovatheme_header_v2:not(.shrink) .navbar-collapse,
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 {
        background-color: transparent !important;
        background-image: none !important;
        border-top-color: rgba(255, 255, 255, 0.2) !important;
    }
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.nav.navbar-nav li a,
    body .ova_header.ovatheme_header_v2:not(.shrink) .ova-menu ul.navbar-nav li a {
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.nav.navbar-nav li a:hover,
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.nav.navbar-nav li a:focus {
        color: #d1a98c !important;
        -webkit-text-fill-color: #d1a98c !important;
        background-color: rgba(255, 255, 255, 0.1) !important;
    }
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 .dropdown-menu li a,
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.dropdown-menu li a {
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 .dropdown-menu li a:hover,
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.dropdown-menu li a:hover {
        color: #d1a98c !important;
        -webkit-text-fill-color: #d1a98c !important;
        background-color: rgba(255, 255, 255, 0.1) !important;
    }
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.nav.navbar-nav li button.dropdown-toggle { color: #fff !important; }
    body .ova_header.ovatheme_header_v2:not(.shrink) #ovatheme_header_v2 ul.nav.navbar-nav li button.dropdown-toggle:hover { color: #d1a98c !important; }

    /* Cartes historiques */
    .event-content { padding: 20px; }
    .event-title { font-size: 18px; }
    .date-header { flex-direction: column; align-items: flex-start; }
    .date-header h3 { min-width: auto; }

    /* CF7 / formulaires */
    .omc-location-map,
    .wpb_gmaps_widget,
    .wpb_map_wraper,
    .event-google-map-wrap,
    .ovaem_map { margin-bottom: 2.5rem !important; }
    body div.wpcf7::before {
        content: "" !important;
        display: block !important;
        height: 3rem !important;
        width: 100% !important;
    }
    div.wpcf7 { margin-top: 0 !important; padding-top: 0 !important; }
    .wpcf7-form input[type="submit"],
    .wpcf7-submit,
    .event_contact .submit .wpcf7-submit {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .wpcf7-form input[type="text"],
    .wpcf7-form input[type="email"],
    .wpcf7-form input[type="tel"],
    .wpcf7-form input[type="url"],
    .wpcf7-form textarea,
    .event_contact input,
    .event_contact textarea { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }

    /* =========================================================
       NEWSLETTER FOOTER — correctif : row entre 481px et 768px
       ========================================================= */

    /* Champ + bouton côte à côte (row) sur tablette et grand mobile */
    .footer-newsletter-form form,
    .footer-newsletter-form > div,
    .footer-newsletter-form [class*="inf-main"] > *:not(.inf-success),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 form,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 > div:not(.inf-success),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(.inf-submit),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(input[type="submit"]) {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
    }

    /* Champ email : flex pour occuper l'espace disponible */
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="email"],
    .footer-newsletter-form input[type="email"]:not([style*="display: none"]):not([style*="display:none"]) {
        flex: 1 1 180px !important;
        min-width: 150px !important;
        max-width: 260px !important;
        width: auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Bouton : ne s'étire pas */
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-submit,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="submit"],
    .footer-newsletter-form input[type="submit"],
    .footer-newsletter-form button {
        flex: 0 0 auto !important;
        width: auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Footer */
    .footer-hero { padding: 30px 16px 24px !important; overflow-x: hidden !important; box-sizing: border-box !important; max-width: 100vw !important; }
    .footer-content { max-width: 100% !important; width: 100% !important; padding: 0 !important; gap: 24px !important; box-sizing: border-box !important; flex-direction: column !important; align-items: center !important; }
    .footer-left,
    .footer-center,
    .footer-right { flex: 1 1 auto !important; min-width: 0 !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
    .footer-left h3,
    .footer-right h3 { font-size: 18px !important; }
    .footer-center h2 { font-size: 16px !important; }
    .footer-left ul { list-style: none !important; margin: 0 !important; }
    .footer-left ul li { margin: 4px 0 !important; }

    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 {
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
    }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content { align-self: center !important; width: 100% !important; max-width: 280px !important; }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 form,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 form > div,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 > div:not(.inf-success),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(.inf-submit),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(input[type="submit"]) { align-items: center !important; justify-content: center !important; }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="email"],
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="text"] { margin-left: auto !important; margin-right: auto !important; }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-submit,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="submit"] { margin-left: auto !important; margin-right: auto !important; }
}

@media (max-width: 767px) {
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 { max-height: 150px !important; }
}


/* =============================================================================
   23. RESPONSIVE — TABLETTE (max-width: 992px)
   ============================================================================= */

@media (max-width: 992px) {
    .ova-menu .navbar-collapse.collapse.in,
    .ova-menu .navbar-collapse.collapsing,
    #ovatheme_header_v2.collapse.in,
    #ovatheme_header_v2.collapsing {
        background-color: transparent !important;
        background-image: none !important;
    }

    .ova-menu .navbar-collapse.collapse.in a,
    .ova-menu .navbar-collapse.collapsing a,
    #ovatheme_header_v2.collapse.in a,
    #ovatheme_header_v2.collapsing a {
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
    }
}

.ova_header.ovatheme_header_v2 .navbar-collapse.in ul.nav.navbar-nav li button.dropdown-toggle,
#ovatheme_header_v2.in ul.nav.navbar-nav li button.dropdown-toggle {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

.ova_header.ovatheme_header_v2 .navbar-collapse.in ul.nav.navbar-nav li button.dropdown-toggle:hover,
#ovatheme_header_v2.in ul.nav.navbar-nav li button.dropdown-toggle:hover {
    color: #d1a98c !important;
    -webkit-text-fill-color: #d1a98c !important;
}


/* =============================================================================
   23. RESPONSIVE — MOBILE (max-width: 576px)
   ============================================================================= */

@media (max-width: 576px) {
    .omc-saisons-container .omc-saisons-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .omc-saisons-container .omc-saison-card {
        font-size: 20px !important;
        min-height: 70px !important;
        padding: 16px !important;
    }
}


/* =============================================================================
   24. RESPONSIVE — PETIT MOBILE (max-width: 480px)
   ============================================================================= */

@media (max-width: 480px) {

    .ova-page-section { margin-top: 35px !important; }
    .ovaem_blog_grid_page { margin-top: 50px !important; }
    .omc-location-map { margin-bottom: 0 !important; }

    h2 { margin-top: 0 !important; }

    /* Services */
    .vc_row.wrap_service .ova_service .read_more,
    .wrap_service .ova_service .read_more,
    .vc_row.wrap_service .ova_service:hover .read_more,
    .wrap_service .ova_service:hover .read_more { padding-top: 2px !important; }
    .wrap_service .vc_column-inner.vc_custom_1504854319866 { border-bottom: 1px solid #fff; margin-bottom: 0; }
    .ova_service.ova-trans.style1,
    .ova_service.ova-trans.style1:hover { padding-bottom: 10px; }
    .ova_service.ova-trans.style1 .icon {
        width: 120px; height: 120px;
        border-radius: 100%;
        margin-left: auto; margin-right: auto;
    }
    .ova_service.ova-trans.style1 .icon i {
        border-radius: 100%;
        width: 100px; height: 100px;
        padding: 18px;
        position: absolute;
        left: 50%; top: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center; justify-content: center;
        box-sizing: border-box;
    }
    .ova_service.ova-trans.style1:hover .icon i { border-radius: 100%; background: #fff !important; }

    /* Archive Presse */
    body.post-type-archive-presse .ovaem_blog_grid_page .row .col-md-4,
    body.post-type-archive-presse .ovaem_blog_grid_page .row .col-sm-6 { padding-right: 15px !important; }
    body.post-type-archive-presse .ovaem_blog_grid_page .row { margin-left: 0 !important; margin-right: 0 !important; }
    body.post-type-archive-presse .ovaem_blog_grid_page .container { padding-left: 0 !important; padding-right: 0 !important; }

    /* Archive Communiqués : ordre pagination/contenu */
    body.post-type-archive-communiques .ovaem_blog_grid_page .row .col-md-12.row.pagination-wrapper { order: 1; }
    body.post-type-archive-communiques .ovaem_blog_grid_page .row .desk_row { order: 2; }

    /* Pagination */
    .pagination-wrapper .pagination > li a { margin: 5px; }

    /* Menu */
    #menu-primary-menu { padding-right: 12px !important; }

    /* Recherche OMC */
    .omc-search-results-form .omc-search-field { flex-direction: column; max-width: 100%; }
    .omc-search-results-form .omc-search-submit { position: static !important; transform: none !important; width: 100%; order: 2; }
    .omc-search-results-form .omc-search-input { width: 100%; order: 1; padding: 12px 15px !important; }

    /* Page 404 */
    body.error404 .ova-page-section { margin-top: 30px !important; margin-bottom: 25px; padding-left: 15px; padding-right: 15px; }
    body.error404 h1.page-title { font-size: 24px !important; line-height: 1.3; margin-bottom: 15px; }
    body.error404 .page-content { font-size: 15px; line-height: 1.5; margin-bottom: 20px; }
    body.error404 .page-content p { margin-bottom: 15px; }
    body.error404 .search-form,
    body.search-no-results .search-form { display: flex; flex-direction: column; gap: 10px; width: 100%; }
    body.error404 .search-form label,
    body.search-no-results .search-form label { width: 100%; }
    body.error404 .search-form input.search-field,
    body.search-no-results .search-form input.search-field { width: 100%; max-width: 100%; box-sizing: border-box; padding: 12px 15px; }
    body.error404 .search-form input.search-submit,
    body.search-no-results .search-form input.search-submit { width: 100%; padding: 0; }

    /* CF7 */
    .wpcf7-form,
    .event_contact form { margin-left: 0; margin-right: 0; }
    .wpcf7-form .wpcf7-response-output { margin-left: 0; margin-right: 0; max-width: 100%; }

    /* Newsletter : colonne sur très petit écran */
    .footer-newsletter-form form,
    .footer-newsletter-form > div,
    .footer-newsletter-form [class*="inf-main"] > *:not(.inf-success),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 form,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 > div:not(.inf-success),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-content,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(.inf-submit),
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 div:has(input[type="submit"]) {
        flex-direction: column !important;
        align-items: center !important;
    }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="email"],
    .footer-newsletter-form input[type="email"] {
        width: 100% !important;
        max-width: 280px !important;
        flex: 0 0 auto !important;
    }
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 .inf-submit,
    .inf-main_f8d1fd344c855b7d20e10071befd4ae1 input[type="submit"],
    .footer-newsletter-form input[type="submit"],
    .footer-newsletter-form button {
        width: 100% !important;
        max-width: 280px !important;
    }

    /* Footer */
    .footer-hero { padding: 24px 12px 20px !important; }
    .footer-left h3,
    .footer-right h3 { font-size: 16px !important; }
    .footer-center p { margin-bottom: 0 !important; }
    .footer-center h2 { font-size: 15px !important; }
    .footer-copyright { font-size: 11px !important; }

    /* Cartes historiques */
    .event-content { padding: 15px; }
    .event-title { font-size: 16px; }
    .event-description { font-size: 14px; }
}