/*
 Theme Name:   iwego child
 Description:  Theme iwego
 Author:       Iwego
 Template:     iwego
 Version:      1.0.1
*/




/*****************************************/
/******************GENERAL***************/
/*****************************************/

body {height: 100%; display: flex; flex-direction: column; min-height: 100vh;}
body:not(.wp-admin) {position: relative; background-image: url(/wp-content/uploads/2025/04/loco0009.jpg); background-size: cover;  background-position: center; background-color: var(--couleur-background); background-repeat: no-repeat; background-attachment: fixed; }
body:not(.wp-admin)::before {content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0; background-color: var(--couleur-background);z-index: 1; pointer-events: none; }



/*body {background-image: url(/wp-content/uploads/2025/04/loco0009.jpg), linear-gradient(180deg, rgba(46, 45, 29, 1) 0%, rgba(46, 45, 29, 1) 31%, rgba(73, 72, 45, 1) 73%, rgba(90, 89, 56, 0.69) 100%);}*/
#main-content, header, #primary { position: relative; z-index: 2;}
footer{z-index: 9999;position: relative;}
#main-content {background-color: transparent; flex: 1;}
.txt-white *,.txt-white{color: white;}
.bg-white{background-color: white;}
.breadcrumb *{color: white;}
.groupe-arrondi {padding: 2rem; background-color: white; border-radius: var(--border-radius);margin-top: 5rem; margin-bottom: 5rem;}
.accordeon-section .accordeon-toggle {margin: 0; border-bottom: 1px solid var(--couleur-principale); font-weight: 600;}
.accordeon-section:last-child .accordeon-toggle {border-bottom: 0;}
.h2-color h2 {color: var(--couleur-cta);}



.tarteaucitronAlertBigTop::after { content: ''; background: url('/wp-content/uploads/2026/03/cookie-iwego.png');    height: 70px; width: 100px; position: absolute;  right: 1.1em !important; margin: 0 auto !important;  background-size: contain;background-repeat: no-repeat; }
div#tarteaucitronRoot.tarteaucitronBeforeVisible:before{display:none;}

a {color: inherit;}
a.no-underline {text-decoration: none;}

button{font-family: Lato, sans-serif;}

@media (min-width:768px){
    .maxwidth800{max-width:800px;margin-left:auto;margin-right:auto}
}


@media (min-width: 1000px){
    .groupe-arrondi {padding: 3rem 5rem; }
    .accordeon-section .accordeon-toggle{font-size: 2rem;}
}

/*****************************************/
/******************HEADER***************/
/*****************************************/


#headermenu {position: relative; width: 100%;}
#headermenu.sticky {position: fixed;}
#headermenu.sticky .topbar-menu .topbar-col.topbar-logo .header-logo {max-height: 5rem;}

.home header *{color: white;}
body:not(.home) header{background-color: white;}

.home .main-menu>li.menu-item:not(.current_page_item)>a:hover,.home  .main-menu>li.menu-item.open>a,.home  .main-menu>li.current_page_item>a{color: white;font-weight: bold;}

.home header .sub-menu {background-color: var(--couleur-principale);}
header .sub-menu {background-color: white; margin-left: 0; border-bottom-left-radius: var(--border-radius); border-bottom-right-radius: var(--border-radius); padding: 1rem;  box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;}
.topbar-menu>div {justify-content: center;}
.topbar-menu .topbar-col.topbar-logo {column-gap: 2rem;}
.topbar-menu .topbar-col.topbar-logo .logo-header {align-items: center; padding: .8rem 0;}
.topbar-menu .topbar-col.topbar-logo .header-logo {max-height: 7rem;}
.topbar-menu .topbar-col.topbar-logo .baseline-logo {display: none;}
.topbar-menu .topbar-col.no-mobile {display: none;}
.topbar-menu .topbar-col .btn-cta {color: white;}
.header-menu {display: none;}
.header-menu .main-menu {justify-content: center;}


.main-menu>li.current-menu-parent>a {font-weight: bold;}


@media (min-width: 768px) {
    .topbar-menu>div { align-items: center; gap: 3rem;}
    .topbar-menu .topbar-col{align-items: center; gap: 2rem;}
    .header-menu {justify-content: center; display: flex;}
}

@media (min-width: 1000px) {
    .topbar-menu .topbar-col.no-mobile {display: flex;}
    .topbar-menu .topbar-col.topbar-logo .logo-header {padding: 0;}
    .topbar-menu .topbar-col.topbar-logo .baseline-logo {text-align: center; display: block;}
    .topbar-menu .topbar-col.topbar-logo .baseline-logo strong {font-size: 1.7rem;}
    #headermenu.sticky .topbar-menu>div {padding: 0;}
}

@media (min-width: 1500px) {
    .header-menu {padding: 1rem 0;}
}

@media (max-width: 768px) {
#headermenu{display: none;}
}

/*****************************************/
/******************FOOTER***************/
/*****************************************/

footer {padding-top: 3rem;}
footer *{color: white;}
.footer-desktop .footer-logo.informations-footer{ text-align: center; display: flex; flex-direction: column; align-items: center; gap: 0; justify-content: center;}
.footer-desktop .footer-logo.informations-footer p {margin: 0;}
.footer-desktop .footer-logo.informations-footer p:first-of-type {font-size: 2.3rem}
.footer-desktop .footer-logo.informations-footer p:last-of-type {font-size: 1.8rem;}
.footer-mobile {background-color: var(--couleur-footer); padding-top: 10rem;}
.footer-mobile-bottom {border: .2rem solid #fff;}
.footer-devis-button {padding: 0;}
.container-footer-mobile-bottom i {font-size: 2.4rem;}
.hamburger-box {height: 2rem; width: 2.6rem;}
.hamburger-box .line {background-color: #fff;}
.footer-mobile .footer-col ul li {display: block;}
.footer-mobile .footer-col li.hassubmenu {padding: 2rem 0;}
.footer-mobile-menu ul.menu>li>a {padding-bottom: 2rem;}
.footer-mobile .footer-col ul li ul {background-color: var(--couleur-background); margin-left: 0;}
.footer-arbo {width: 100%;}

.hamburger-box.active .line:nth-child(1) {transform: translateY(8px) rotate(45deg);} 
.hamburger-box.active .line:nth-child(3) {transform: translateY(-9px) rotate(-45deg);}

.footer-mobile-bottom .btn-cta { background-color: transparent; width: max-content; padding: 0;}


@media (min-width: 1000px) {
    .footer-arbo {width: auto;}
    .footer-desktop .footer-logo.informations-footer {width: 50%;}
    .footer-copyright ul {margin-top: 4rem;}
}



/*****************************************/
/******************ACCUEIL***************/
/*****************************************/

.home h1 {margin-block-start: 0;}
.container-bloc-voyage {position: relative; padding-top: 3rem;}
.container-bloc-voyage::before {content: ''; width: 100%; height: 50%; top: 0; left: 0; background: linear-gradient(180deg,rgba(46, 45, 29, 1) 0%, rgba(46, 45, 29, 1) 31%, rgba(83, 82, 52, 1) 78%, rgba(90, 89, 56, 0.83) 87%, rgba(90, 89, 56, 0) 100%); position: absolute; z-index: -1;}
.bloc-voyages-accueil {background-color: white; border-radius: var(--border-radius); padding: 5rem 2rem 3rem;}
/*.bloc-voyages-accueil:before {content:''; background-image: url('/wp-content/uploads/2025/12/train_entete.png'); background-size: contain; background-position: center; background-repeat: no-repeat; display: block; position: absolute; width: 100%; height: 20vh; max-width: 100%; left: 0; top: -15vh;}*/
.bloc-voyages-img {position: relative; top: 10px;}
.bloc-voyages-img figure {position: relative; max-width: 80%;}

.titre-accueil h1{font-weight: 400;}



@media (min-width: 1000px) {
    .bloc-voyages-accueil {padding: 5rem;}
    .container-bloc-voyage {padding-top: 0;}
    .container-bloc-voyage::before {height: 95vh;}
    .bloc-voyages-img figure {position: relative; max-width: 100%;}
    .bloc-voyages-img::before {font-size: 28rem;  top: -1rem; }
    .bloc-voyages-img {top: 35px;}
}


/************************************************/
/**                                            **/
/**                   FORM                     **/
/**                                            **/
/************************************************/

.wpcf7-form { display: flex; flex-wrap: wrap;gap: 2rem; margin: auto;max-width: 800px;}
.wpcf7-form .form-row { display: flex;  flex-wrap: wrap; gap: 2rem; width: 100%;}
.wpcf7-form .form-row .form-column {width: 100%;}
.wpcf7-form .form-row .form-column p{margin: 0;}
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],.wpcf7-form textarea {width: 100%; padding: 1.5rem 2rem !important; border: 1px solid #bababa; border-radius: 5px; transition: border-color 0.3s ease, box-shadow 0.3s ease;font-size: 1.6rem;font-family: Lato, sans-serif; font-weight: 400;}
.wpcf7-form input[type="text"]:required,.wpcf7-form input[type="email"]:required,.wpcf7-form input[type="tel"]:required,.wpcf7-form textarea:required {border-color: #ff5733;}
.wpcf7-form input[type="text"]:focus,.wpcf7-form input[type="email"]:focus,.wpcf7-form input[type="tel"]:focus,.wpcf7-form textarea:focus { border-color: var(--couleur-principale); box-shadow: 0 2px 4px rgba(59, 166, 132, 0.3); outline: none;}
.wpcf7-form input::placeholder,.wpcf7-form textarea::placeholder { color: #bababa; font-size: 1.6rem;}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item,.wpcf7-form .wpcf7-checkbox .wpcf7-list-item label{margin-left: 0 !important;}
.wpcf7-form input[type="checkbox"] { -webkit-appearance: auto;}


.wpcf7-checkbox label {position: relative;cursor: pointer;}
.wpcf7-checkbox input[type=checkbox] {position: absolute;visibility: hidden;width: 20px;height: 20px;top: 0;left: 0;}
.wpcf7-checkbox input[type=checkbox] + span:before {display: block;position: absolute;content: '';border-radius: 0;height: 20px;width: 20px;top: 0px;left: 0px;border: 1px solid var(--couleur-principale);}
.wpcf7-checkbox input[type=checkbox] + span:after {display: block;position: absolute;content: "\2713";height: 20px;width: 20px;top: 0;left: 0;visibility: hidden;font-size: 18px;text-align: center;line-height: 20px;color:var(--couleur-principale);font-weight: bold;}
.wpcf7-checkbox input[type=checkbox]:checked + span:before {background: transparent;}
.wpcf7-checkbox input[type=checkbox]:checked + span:after {visibility: visible;}
.wpcf7-list-item-label {margin-left: 40px;display: inline-block;}

.wpcf7-response-output { margin-top: 1rem; padding: 1rem;  border-radius: var(--border-radius);}
.wpcf7-mail-sent-ok {background-color: var(--couleur-principale);color: white; border: 0;}
.wpcf7-validation-errors {background-color: #f8d7da; color: white; border: 0px;}


.wpcf7-form input[type="submit"]{    padding: 1rem 4rem;width: max-content;    transition: box-shadow 350msease-in-out, color 200msease-in-out, background-color 200msease-in-out;background-color: var(--couleur-principale);
    color: white;border-radius: var(--border-radius);position: relative;    display: block;font-weight: 400;
    font-size: 1.6rem;border:0;cursor: pointer;}
.wpcf7-form input[type="submit"]:hover{color: var(--couleur-principale);
    box-shadow: inset 25em 0 0 0 rgb(255 255 255);}


.section-contact .container-bloc-texte-image{align-items: flex-start;}

.bloc-fourgon .slick-carousel-texte-image:not(.slider-cover) img{border-radius: var(--border-radius);}

.wpcf7-turnstile.cf-turnstile{order:2;}

input::placeholder, .wc-block-components-form .wc-block-components-text-input label, .wc-block-components-text-input label {color: #bdbdbd !important;}


@media (min-width: 1000px) {
    .wpcf7-form .form-row .form-column {flex: 1; min-width: calc(50% - 2rem);}

}




/*******************************************/
/****************SINGLE PRODUIT************/
/******************************************/

.content-single-voyage .contenu-voyage *{color: var(--couleur-texte);}

.content-single-voyage .contenu-voyage .accordion-details-voyage{margin-top: 2rem;}
.content-single-voyage .contenu-voyage .accordion-item-details-voyage {margin-bottom: 1rem;}
.content-single-voyage .contenu-voyage .accordion-item-details-voyage:not(:last-child) {border-bottom: 1px solid var(--couleur-principale-light);padding-bottom: 1rem;}

.content-single-voyage .contenu-voyage .accordion-item-details-voyage:last-child {margin-bottom: 0;}
.bloc-liste-programmee .accordion-header-details-voyage {font-weight: 600;}
.content-single-voyage .contenu-voyage .accordion-header-details-voyage {border: none;outline: none;width: 100%; cursor: pointer; background-color: transparent; position: relative;}
.content-single-voyage .contenu-voyage .accordion-header-details-voyage h3 { font-weight: 600; padding: 1.2rem 0; text-align: left; font-size: 1.6rem;  display: flex; justify-content: space-between; align-items: center; margin: 0; }
.content-single-voyage .contenu-voyage .accordion-content-details-voyage {display: none;overflow: hidden;padding: 1.5rem 0;}

.content-single-voyage .contenu-voyage .accordion-content-details-voyage.active {display: block;}

.content-single-voyage .contenu-voyage .accordion-item-details-voyage .accordion-icon{width: 30px;height: 30px;display: flex;align-items: center;justify-content: center;background: var(--couleur-principale);color: white;border-radius: 50%;font-size: 1.4rem;font-weight: bold;transition: background-color 0.3s ease;flex-shrink: 0;}

.content-single-voyage .contenu-voyage .accordion-item-details-voyage:has(.accordion-content-details-voyage.active) .accordion-icon {background: var(--couleur-secondaire);}


.content-single-voyage .bandeau-entete-voyage {position: relative; background-size: cover;background-position: center;background-repeat: no-repeat;padding: 4rem 0;background-color:var(--couleur-background);overflow: hidden;display: flex;align-items: center;margin-bottom: 4rem;}
.content-single-voyage .bandeau-entete-voyage::after {content: "";position: absolute; bottom: 0; left: 0;width: 100%;height: 60px; background: linear-gradient(to bottom, transparent 0%, rgba(90, 89, 56, 0.3) 100%); z-index: 1;clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 50%);}
.content-single-voyage .bandeau-entete-voyage .main-container {position: relative; z-index: 2; width: 100%;}

.content-single-voyage .bandeau-entete-voyage .breadcrumb {text-align: left;color: white;}
.content-single-voyage .bandeau-entete-voyage .breadcrumb span,.bandeau-entete-voyage .breadcrumb a{color: white;}
.content-single-voyage .bandeau-entete-voyage h1{text-align: left;color: white;max-width: none;font-size: 3.5rem;position: relative;padding-left: 2rem;border-left: 4px solid var(--couleur-cta);margin-left: -2rem;}
.content-single-voyage .bandeau-entete-voyage .type-voyage{background: var(--couleur-cta);color: white;padding: 0.8rem 1.5rem;font-weight: bold;border-radius: var(--border-radius);display: inline-block;margin-bottom: 1.5rem;transform: translateY(0);transition: transform 0.3s ease, box-shadow 0.3s ease;position: relative;overflow: hidden;}

.content-single-voyage .bandeau-entete-voyage .type-voyage:hover::before {left: 100%;}
.content-single-voyage .bandeau-entete-voyage .introduction{color: white;text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);}
.content-single-voyage .bandeau-entete-voyage .btn-cta{margin-top: 2rem;}

.content-single-voyage .bloc-cartouche img{width: 100%;height: auto;object-fit: contain;object-position: center;border-top-left-radius: var(--border-radius);border-top-right-radius: var(--border-radius);background-color: white;display: block;max-height: 60vh;aspect-ratio: 1 / 1.414;}
.content-single-voyage  .bloc-cartouche *{color: white;font-size:1.3rem;}
.content-single-voyage  .bloc-cartouche .bloc-info-cartouche{display: flex;margin-top: 1rem;}
.content-single-voyage  .bloc-cartouche .bloc-info-cartouche p{margin: 0;}
.content-single-voyage  .bloc-cartouche .bloc-info-cartouche i{margin-right: 1rem;}
.content-single-voyage  .bloc-cartouche .btn-cta a{color: var(--couleur-secondaire);}
.content-single-voyage  .bloc-cartouche .btn-cta{margin-top: 2rem;}
.content-single-voyage  .bloc-cartouche .btn-cta:hover a{color: var(--couleur-principale);}
.content-single-voyage .bloc-cartouche .cartouche-entete{box-shadow: 0 8px 24px rgba(90, 89, 56, 0.2), 0 0 0 1px rgba(255, 255, 255, 0.1);background: linear-gradient(180deg, var(--couleur-secondaire) 0%, rgba(255, 11, 33, 0.95) 100%);border-radius: var(--border-radius);overflow: hidden;position: relative;transition: transform 0.3s ease, box-shadow 0.3s ease;}

.content-single-voyage .bloc-cartouche .cartouche-entete:hover {transform: translateY(-4px);box-shadow: 0 12px 32px rgba(90, 89, 56, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.15);}
.content-single-voyage .bloc-cartouche{width: 100%;margin-top: 2rem;}
.content-single-voyage .bloc-cartouche .detail-cartouche{width: 100%;padding: 2rem;position: relative;}


.content-single-voyage .lieu-hebergement{background-color: white;border-radius: var(--border-radius);padding: 2rem;margin: 4rem 0;}
.content-single-voyage #mapvoyage{margin-top: 2rem;}

.contenu-voyage .accroche{font-style: italic;}

.voyage-complet{color: var(--couleur-cta-texte);background-color: var(--couleur-background); display: inline-block; padding: 1rem;  border-radius: var(--border-radius);font-weight: bold;font-size: 1.8rem; margin-bottom: 1rem;}

.content-single-voyage .bandeau-entete-voyage h1{margin-top: 1rem;margin-bottom: 1rem;animation: fadeInUp 0.8s ease;}
@keyframes fadeInUp {from {opacity: 0;transform: translateY(30px);} to {opacity: 1;transform: translateY(0);}}

.content-single-voyage .bandeau-entete-voyage .introduction{font-size: 1.8rem;line-height: 1.6;margin-top: 1rem;}
.content-single-voyage .contenu-article{margin-top: 2rem;}
.content-single-voyage .contenu-voyage {background-color: white; padding: 2rem; border-radius: var(--border-radius); width: 100%;}
.content-single-voyage .contenu-voyage h2{color: var(--couleur-principale);font-size: 2.4rem;margin-top: 3rem;margin-bottom: 1.5rem;font-weight: 700;position: relative;padding-bottom: 1rem;display: inline-block;width: 100%;}
.content-single-voyage .contenu-voyage h2::after {content: "";position: absolute;bottom: 0;left: 0;width: 80px;height: 4px;background: linear-gradient(90deg, var(--couleur-principale), var(--couleur-principale-light));border-radius: 2px;}

.content-single-voyage .contenu-voyage h2:first-child{margin-top: 0;}
.content-single-voyage .contenu-voyage .bloc-texte-voyage{margin-bottom: 3rem;}
.content-single-voyage .contenu-voyage .bloc-texte-voyage p{line-height: 1.8;margin-bottom: 1rem;}
.content-single-voyage .contenu-voyage .bloc-texte-voyage table{border-collapse: collapse;width: 100%;margin: 1.5rem 0;background-color: rgba(255, 255, 255, 0.1);border-radius: var(--border-radius);overflow: hidden;}
.content-single-voyage .contenu-voyage .bloc-texte-voyage table th{background-color: var(--couleur-principale);color: white;padding: 1rem;text-align: left;font-weight: 700;}
.content-single-voyage .contenu-voyage .bloc-texte-voyage table td{padding: 0.8rem 1rem;border-bottom: 1px solid rgba(255, 255, 255, 0.1);}
.content-single-voyage .contenu-voyage .bloc-texte-voyage table tr:last-child td{border-bottom: none;}
.content-single-voyage .contenu-voyage .bloc-texte-voyage table tr:nth-child(even){background-color: rgba(255, 255, 255, 0.05);}
.content-single-voyage .contenu-voyage .accordion-header-details-voyage{color: var(--couleur-principale);font-weight: 600;transition: color 0.3s ease;}
.content-single-voyage .contenu-voyage .accordion-header-details-voyage:hover{color: var(--couleur-secondaire);}
.content-single-voyage .contenu-voyage .accordion-content-details-voyage{padding: 1.5rem 0;line-height: 1.8;}
.content-single-voyage .contenu-voyage .accordion-content-details-voyage p{margin-bottom: 1rem;}
.content-single-voyage .contenu-voyage .accordion-content-details-voyage ul,.content-single-voyage .contenu-voyage .accordion-content-details-voyage ol{margin: 1rem 0;padding-left: 2rem;}
.content-single-voyage .contenu-voyage .accordion-content-details-voyage li{margin-bottom: 0.5rem;}
.content-single-voyage .bloc-cartouche .bloc-info-cartouche{align-items: flex-start;gap: 1rem;}
.content-single-voyage .bloc-cartouche .bloc-info-cartouche i{color:white;font-size: 1.6rem;margin-top: 0.2rem;flex-shrink: 0;}
.content-single-voyage .bloc-cartouche .bloc-info-cartouche div,.content-single-voyage .bloc-cartouche .bloc-info-cartouche p{flex: 1;line-height: 1.6;color:white;}
.content-single-voyage .bloc-cartouche .inscription-pdf h2{font-size: 1.8rem;margin-bottom: 1rem;}
.content-single-voyage .bloc-cartouche .inscription-pdf .btn-cta{display: inline-block;padding: 1rem 2rem;background-color: var(--couleur-principale);color: white;text-decoration: none;border-radius: var(--border-radius);font-weight: 600;}
.content-single-voyage .bloc-cartouche .inscription-pdf .btn-cta:hover{box-shadow: inset 25em 0 0 0 white;color:var(--couleur-principale);}
.content-single-voyage .woocommerce form.woocommerce-form{background-color: rgba(255, 255, 255, 0.1);padding: 2rem;border-radius: var(--border-radius);margin-top: 2rem;}
.content-single-voyage .woocommerce form.woocommerce-form h3{color: var(--couleur-principale);font-size: 2rem;margin-bottom: 1.5rem;}
.content-single-voyage .woocommerce form.woocommerce-form label{color: white;font-weight: 600;margin-bottom: 0.5rem;display: block;}
.content-single-voyage .woocommerce form.woocommerce-form select,.content-single-voyage .woocommerce form.woocommerce-form input[type="number"]{width: 100%;padding: 0.8rem;border-radius: var(--border-radius);border: 1px solid rgba(255, 255, 255, 0.3);background-color: rgba(255, 255, 255, 0.9);color: var(--couleur-secondaire);font-size: 1.4rem;margin-bottom: 1rem;}
.content-single-voyage .woocommerce form.woocommerce-form table{border-collapse: collapse;width: 100%;margin: 1.5rem 0;background-color: rgba(255, 255, 255, 0.95);border-radius: var(--border-radius);overflow: hidden;}
.content-single-voyage .woocommerce form.woocommerce-form table th{background-color: var(--couleur-principale);color: white;padding: 1rem;text-align: left;font-weight: 700;}
.content-single-voyage .woocommerce form.woocommerce-form table td{padding: 0.8rem 1rem;border-bottom: 1px solid rgba(0, 0, 0, 0.1);color: var(--couleur-secondaire);}
.content-single-voyage .woocommerce form.woocommerce-form table tr:last-child td{border-bottom: none;font-weight: 700;}
.content-single-voyage .woocommerce form.woocommerce-form .button,.content-single-voyage .woocommerce form.woocommerce-form button[type="submit"]{background-color: var(--couleur-principale);color: white;padding: 1.2rem 3rem;border: none;border-radius: var(--border-radius);font-size: 1.6rem;font-weight: 600;cursor: pointer;transition: background-color 0.3s ease, transform 0.2s ease;margin-top: 1.5rem;}
.content-single-voyage .woocommerce form.woocommerce-form .button:hover,.content-single-voyage .woocommerce form.woocommerce-form button[type="submit"]:hover{background-color: var(--couleur-secondaire);transform: translateY(-2px);box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);}


.content-single-voyage .section-autres-voyages{color: white;margin-bottom: 4rem;}

.content-single-voyage .panier-cartouche.bloc-texte-voyage a{background-color: white;color: var(--couleur-background);}
.content-single-voyage .panier-cartouche.bloc-texte-voyage a *{color: var(--couleur-background);}
.content-single-voyage .panier-cartouche.bloc-texte-voyage a:hover *{color: white;}
.content-single-voyage .panier-cartouche.bloc-texte-voyage a:hover{color: white;}


.main-container.wp-block-woocommerce-cart {width: auto;}


@media (min-width: 768px) {
.articles-complementaires .affiche-voyage{width: 100%;}
}


@media (min-width: 1000px) {
    .content-single-voyage .contenu-voyage {width: calc(65% - 4rem); min-height: 80vh;}
   .content-single-voyage  .bloc-cartouche .cartouche-entete{position: sticky;top: 20rem;}
    .content-single-voyage   .bloc-cartouche {width: calc(35% - 3.5rem); position: relative;top: -25rem; margin-top: 0;z-index: 1;order: 2;}
    .content-single-voyage   .bloc-cartouche .detail-cartouche{     padding: 2rem 4rem 3rem; margin-top: 0;}
    .content-single-voyage .bloc-cartouche img {max-height: 50vh;width: 100%;height: auto;object-fit: contain;aspect-ratio: 1 / 1.414;}
    .content-single-voyage .contenu-article{gap: 4rem;}

    .articles-complementaires {column-gap: 30px; }
}

@media (min-width: 1200px) {
.content-single-voyage  .bloc-cartouche *{font-size: 1.6rem; }
}





.content-single-voyage .articles-complementaires::before {content: "";position: absolute;top: 0;left: 50%;transform: translateX(-50%);width: 200px;height: 4px;background: linear-gradient(90deg, transparent, var(--couleur-principale), transparent);}
.content-single-voyage .articles-complementaires h2{color: var(--couleur-principale);font-size: 2.8rem;margin-bottom: 3rem;text-align: center;position: relative;padding: 2rem 0;}
.content-single-voyage .articles-complementaires h2::before,.content-single-voyage .articles-complementaires h2::after {content: "🚂";font-size: 2rem;position: absolute;top: 50%;transform: translateY(-50%);opacity: 0.3;}
.content-single-voyage .articles-complementaires h2::before {left: 10%;}
.content-single-voyage .articles-complementaires h2::after {right: 10%;}
.content-single-voyage .articles-complementaires .affiche-voyage {text-decoration: none; background-color: #fff; border-radius: var(--border-radius); overflow: hidden; position: relative; align-items: center; width: 100%;}

.content-single-voyage .articles-complementaires .affiche-voyage .affiche {position: relative;overflow: hidden; height: 15rem;}
.content-single-voyage .articles-complementaires .affiche-voyage .affiche img {width: 100%; height: 100%; object-fit: contain; background-color: white;transition: transform 0.3s ease;}
.content-single-voyage .articles-complementaires .affiche-voyage:hover .affiche img{transform: scale(1.05);}
.content-single-voyage .articles-complementaires .affiche-voyage .overlay-voyage{position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.7) 100%);opacity: 0;transition: opacity 0.3s ease;display: flex;flex-direction: column;justify-content: flex-end;padding: 2rem;}
.content-single-voyage .articles-complementaires .affiche-voyage:hover .overlay-voyage{opacity: 1;}
.content-single-voyage .articles-complementaires .affiche-voyage .type-voyage {position: absolute; top: 1rem; right: 1rem; background-color: #fff; color: var(--couleur-principale); padding: 0.5rem 1rem;border-radius: var(--border-radius);font-weight: 600;z-index: 2;}
.content-single-voyage .articles-complementaires .affiche-voyage .titre {color: var(--couleur-principale); font-size: 2rem;margin: 1.5rem;font-weight: 700;margin: 0;}
.content-single-voyage .date-voyage.bloc-info-cartouche{    display: flex; align-items: center;gap: 1rem;}
.content-single-voyage .date-voyage.bloc-info-cartouche * {color: var(--couleur-principale);}
.content-single-voyage .articles-complementaires .affiche-voyage .bloc-info-voyage p{margin: 0;padding: 1rem 0;}
.content-single-voyage .articles-complementaires .affiche-voyage .bloc-info-voyage {padding: 3.5rem 2rem 1rem;}
.single-product-container {column-gap: 8rem; max-width: 80%; margin-left: auto; margin-right: auto;}
.single-product-container .product-container-left, .single-product-container .product-container-right {background-color: #fff; border-radius: var(--border-radius); overflow: hidden;}
.single-product-container .product-container-left {flex: 1; padding: 5rem 6rem;}
.single-product-container .product-container-left h1 {text-align: left; margin-bottom: 1.2rem;}
.single-product-container .product-container-left .introduction {font-style: italic; font-size: 1.8rem;}
.single-product-container .product-container-left .accordeon-content, .single-product-container .product-container-left .accordeon-toggle {padding: 2rem 0;}
.single-product-container .product-container-left .accordeon-horaires p {font-size: 1.4rem; font-style: italic;}
.single-product-container .product-container-left .accordeon-horaires table {border: 1px solid 1px solid #b7b7b7; border-collapse: collapse; border-spacing: 0;}
.single-product-container .product-container-left .accordeon-horaires tr:first-of-type {background-color: var(--couleur-principale-light) !important; font-weight: 700;}
.single-product-container .product-container-left .accordeon-horaires tr:nth-child(even) {background-color: #f8f8f8;}
.single-product-container .product-container-left .accordeon-horaires td {text-align: left !important; padding: .8rem;}

.single-product-container .product-container-right {width: 35%;}
.single-product-container .product-container-right img {width: 100%;}

.woocommerce div.product form.cart .button {float: none !important; border-radius: var(--border-radius);background-color: var(--couleur-cta); font-size: 1.6rem; transition: all 230ms ease-in-out; margin-top: 2rem;}
.woocommerce div.product form.cart .button:hover {transform: translateY(-0.4rem);}





@media (max-width: 999px) {
.content-single-voyage .contenu-article{flex-direction: column;}
.content-single-voyage .bloc-cartouche{order: 2;margin-top: 2rem;}
.content-single-voyage .contenu-voyage{order: 1;}
.content-single-voyage .bandeau-entete-voyage h1{font-size: 2.4rem;}
.content-single-voyage .contenu-voyage h2{font-size: 2rem;}
}

@media (min-width: 1000px) {
    .content-single-voyage .bandeau-entete-voyage h1{font-size: 4rem;}
    .content-single-voyage .contenu-voyage h2{font-size: 2.6rem;}
    .content-single-voyage .articles-complementaires .affiche-voyage {flex-direction: column; width: calc(33.333% - 2rem);}
    .content-single-voyage .articles-complementaires .affiche-voyage .type-voyage { left: 1rem; right: auto; background-color: var(--couleur-principale); color: white; flex-direction: column;}
    .content-single-voyage .articles-complementaires .affiche-voyage .affiche {height: auto; width: 100%;}
    .content-single-voyage .articles-complementaires .affiche-voyage .affiche img {aspect-ratio: 1 / 1.414;}
    .content-single-voyage .articles-complementaires .affiche-voyage .bloc-info-voyage {padding: 2rem;}
    }




/*******************************************/
/************ PAGES GUTTENBERG *************/
/******************************************/

.section-mot-president {border-radius: var(--border-radius); overflow: hidden;}
.section-txt-img-talon .text-img-bandeau {margin: 0; width: 100%; height: 20rem;}
.section-txt-img-talon .text-img-bandeau img {width: 100%; height: 100%; object-fit: cover;}

.section-galerie-intro {padding: 5rem; background-color: #fff; border-radius: var(--border-radius);} 

@media (min-width: 1200px) {
    .section-txt-img-talon .text-img-bandeau {height: 27rem;}
}


/*******************************************/
/************ DÉSACTIVER QUANTITÉS **************/
/*******************************************/

.woocommerce .quantity, .woocommerce .quantity input[type="number"], .woocommerce .quantity .qty, .woocommerce .quantity input.qty {display: none !important;}
.woocommerce-cart-form .quantity, .woocommerce-cart-form .quantity input[type="number"], .woocommerce-cart-form .quantity .qty, .woocommerce-cart-form .quantity input.qty {display: none !important;}
.woocommerce-cart-form .quantity::after {content: "1"; display: inline-block; padding: 0.5rem;}
.woocommerce-cart-form .quantity .minus, .woocommerce-cart-form .quantity .plus {display: none !important;}
.woocommerce table.cart .product-quantity, .woocommerce table.cart .quantity {display: none !important;}
.woocommerce-checkout .quantity, .woocommerce-checkout .quantity input {display: none !important;}

/*******************************************/
/************ TABLEAU RÉSERVATION **************/
/*******************************************/


.contenu-voyage .train-selection-fields{background: none !important;border-radius: 0 !important;border: 0 !important;margin: 0 !important;padding: 0 !important;}
.contenu-voyage .train-selection-fields h3{color: var(--couleur-principale);font-size: 2.2rem;font-weight: 700;margin-bottom: 2rem;padding-bottom: 1rem;border-bottom: 2px solid var(--couleur-principale-light);margin-top: 0;}
.contenu-voyage .train-selection-fields label{color: var(--couleur-texte);font-weight: 600;font-size: 1.5rem;margin-bottom: 0.8rem;display: block;}
.contenu-voyage .train-selection-fields select{width: 100%;padding: 1rem 1.5rem;border: 2px solid var(--couleur-principale-light);border-radius: var(--border-radius);background-color: #fff;color: var(--couleur-texte);font-size: 1.5rem;transition: border-color 0.3s ease, box-shadow 0.3s ease;appearance: none;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235a5938' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 1.5rem center;padding-right: 4rem;}
.contenu-voyage .train-selection-fields select:focus{outline: none;border-color: var(--couleur-principale);box-shadow: 0 0 0 3px rgba(90, 89, 56, 0.1);}
.contenu-voyage .train-selection-fields select option{color: var(--couleur-texte);padding: 0.5rem;}
.contenu-voyage #passengers-selection{background-color: #fff;border: 2px solid var(--couleur-principale-light);border-radius: var(--border-radius);padding: 2rem;margin: 2rem 0;}
.contenu-voyage #passengers-selection h4{color: var(--couleur-principale);font-size: 1.8rem;font-weight: 700;margin-bottom: 1rem;}
.contenu-voyage #passengers-selection .description, .contenu-voyage #train-schedule-display .description{color: var(--couleur-texte);font-size: 1.4rem;margin-bottom: 1.5rem;font-style: italic;}
.contenu-voyage #passengers-selection table{border-collapse: collapse;overflow: hidden;}
.contenu-voyage #passengers-selection table thead tr{background-color: var(--couleur-principale) !important;}
.contenu-voyage #passengers-selection table thead th{color: white;font-weight: 700;font-size: 1.4rem;}
.contenu-voyage #passengers-selection table thead th:nth-child(2){text-align: center;}
.contenu-voyage #passengers-selection table thead th:nth-child(3),.contenu-voyage #passengers-selection table thead th:nth-child(4){text-align: right;}
.contenu-voyage #passengers-selection table tbody tr{border-bottom: 1px solid var(--couleur-principale-light);transition: background-color 0.2s ease;}
.contenu-voyage #passengers-selection table tbody tr:hover{background-color: var(--couleur-principale-light);}
.contenu-voyage #passengers-selection table tbody tr:last-child{border-bottom: none;}
.contenu-voyage #passengers-selection table tbody td{padding: 1.2rem;color: var(--couleur-texte);font-size: 1.4rem;}
.contenu-voyage #passengers-selection table tbody td strong{color: var(--couleur-principale);font-size: 1.5rem;}
.contenu-voyage #passengers-selection table tbody td small{color: #666;font-size: 1.2rem;display: block;margin-top: 0.3rem;}
.contenu-voyage #passengers-selection table tbody td:nth-child(2){text-align: center;}
.contenu-voyage #passengers-selection table tbody td:nth-child(3),.contenu-voyage #passengers-selection table tbody td:nth-child(4){text-align: right;}
.contenu-voyage #passengers-selection table tbody .passenger-count{width: 80px;padding: 0.8rem;text-align: center;border: 2px solid var(--couleur-principale-light);border-radius: var(--border-radius);font-size: 1.5rem;font-weight: 600;color: var(--couleur-texte);transition: border-color 0.3s ease, box-shadow 0.3s ease;}
.contenu-voyage #passengers-selection table tbody .passenger-count:focus{outline: none;border-color: var(--couleur-principale);box-shadow: 0 0 0 3px rgba(90, 89, 56, 0.1);}
.contenu-voyage #passengers-selection table tbody .unit-price{color: var(--couleur-texte);font-size: 1.4rem;}
.contenu-voyage #passengers-selection table tbody .row-total{color: var(--couleur-principale) !important;font-size: 1.5rem;}
.contenu-voyage #passengers-selection table tfoot tr:first-child{background-color: var(--couleur-principale-light) !important;border-top: 3px solid var(--couleur-principale) !important;}
.contenu-voyage #passengers-selection table tfoot tr:first-child td{color: var(--couleur-principale);font-weight: 700;font-size: 1.6rem;padding: 1.2rem;}
.contenu-voyage #passengers-selection table tfoot tr:first-child td:last-child{text-align: right;font-size: 2rem;color: var(--couleur-principale);}
.contenu-voyage #passengers-selection table tfoot tr:last-child td{color: var(--couleur-texte);font-size: 1.8rem;padding: 1rem 1.2rem;}
.contenu-voyage #passengers-selection table tfoot tr:last-child td strong{color: var(--couleur-principale);font-size: 1.5rem;}
.contenu-voyage #train-schedule-display{background-color: #fff;border: 2px solid var(--couleur-principale-light);border-radius: 0 !important;padding: 2rem;margin: 2rem 0;}
.contenu-voyage #train-schedule-display h4{color: var(--couleur-principale);font-size: 1.8rem;font-weight: 700;margin-bottom: 1.5rem;margin-top: 0;}
.contenu-voyage #train-schedule-display h5{color: var(--couleur-principale);font-size: 1.6rem;font-weight: 700;margin-bottom: 1rem;padding-bottom: 0.5rem;border-bottom: 2px solid var(--couleur-principale-light);}
.contenu-voyage #train-schedule-display  .train-schedule-retour h5{color: var(--couleur-principale) !important;}
.contenu-voyage #train-schedule-display  .train-schedule-aller h5{color:var(--couleur-principale-light) !important;}
.contenu-voyage #train-schedule-display table{width: 100%;border-collapse: collapse;overflow: hidden;}
.contenu-voyage #train-schedule-display  .train-schedule-retour table thead tr{background-color: var(--couleur-principale) !important;}
.contenu-voyage #train-schedule-display .train-schedule-aller table thead tr{background-color: var(--couleur-principale-light) !important;}
.contenu-voyage #train-schedule-display table thead th{color: var(--couleur-principale);padding: 1rem;text-align: left;font-weight: 700;font-size: 1.4rem;border: 1px solid rgba(255, 255, 255, 0.2);}
.contenu-voyage #train-schedule-display table thead th:nth-child(2),.contenu-voyage #train-schedule-display table thead th:nth-child(3){text-align: center;}
.contenu-voyage #train-schedule-display table tbody tr{border-bottom: 1px solid var(--couleur-principale-light);transition: background-color 0.2s ease;}
.contenu-voyage #train-schedule-display table tbody tr:hover{background-color: var(--couleur-principale-light);}
.contenu-voyage #train-schedule-display table tbody tr:last-child{border-bottom: none;}
.contenu-voyage #train-schedule-display table tbody td{padding: 1rem;border: 1px solid var(--couleur-principale-light);color: var(--couleur-texte);font-size: 1.4rem;}
.contenu-voyage #train-schedule-display table tbody td strong{color: var(--couleur-principale);font-weight: 700;}
.contenu-voyage #train-schedule-display table tbody td:nth-child(2),.contenu-voyage #train-schedule-display table tbody td:nth-child(3){text-align: center;font-weight: 600;color: var(--couleur-principale);}
.contenu-voyage .train-selection-fields p[style*="background: #e3f2fd"]{background-color: var(--couleur-principale-light) !important;border-left: 4px solid var(--couleur-principale) !important;color: var(--couleur-texte) !important;padding: 1.5rem !important;border-radius: var(--border-radius);margin-top: 2rem;}
.contenu-voyage .train-selection-fields p[style*="background: #e3f2fd"] strong{color: var(--couleur-principale);font-size: 1.5rem;}
.contenu-voyage .train-selection-fields p{margin: 1.5rem 0;}
.contenu-voyage .train-selection-fields p:first-of-type{margin-top: 0;}
.contenu-voyage .train-selection-fields p:last-of-type{margin-bottom: 0;}
.contenu-voyage #total-passengers-price {color: var(--couleur-principale);font-weight: 700; text-wrap: nowrap;}
.contenu-voyage #total-passengers-count{color: var(--couleur-principale);font-weight: 700;}

@media (max-width: 768px) {
.contenu-voyage .train-selection-fields{padding: 1.5rem;}
.contenu-voyage .train-selection-fields h3{font-size: 1.8rem;}
.contenu-voyage #passengers-selection table{font-size: 1.2rem;}
.contenu-voyage #passengers-selection table thead th,.contenu-voyage #passengers-selection table tbody td{padding: 0.8rem;font-size: 1.2rem;}
.contenu-voyage #passengers-selection table{display: block;overflow-x: auto;}
.contenu-voyage #train-schedule-display table{display: block;overflow-x: auto;}
}

@media (min-width: 1000px) {
.bandeau-entete-voyage .entete-contenu { width: calc(65% - 3.5rem); }
}


/********************************************/
/***************PAGES WOOCOMMERCE****************/
/********************************************/


.wc-block-cart__submit-button{background-color: var(--couleur-cta) !important;padding: 15px 20px !important;color: var(--couleur-cta-texte) !important; transition: box-shadow 350ms ease-in-out, color 200ms ease-in-out, background-color 200ms ease-in-out;font-weight: 400;font-size: 1.5rem;text-align: center;  border-radius: var(--border-radius); position: relative;color: white;}
.wc-block-cart__submit-button:hover {box-shadow: inset 40em 0 0 0 var(--couleur-principale);}

.wc-block-cart__submit-button span{color: white;}

.wc-block-components-button{background-color: var(--couleur-cta) !important;padding: 15px 20px !important;color: var(--couleur-cta-texte) !important; transition: box-shadow 350ms ease-in-out, color 200ms ease-in-out, background-color 200ms ease-in-out;font-weight: 400;font-size: 1.5rem;text-align: center;  border-radius: var(--border-radius); position: relative;color: white;border: 0;text-decoration: none;}

.wc-block-components-button:hover {box-shadow: inset 40em 0 0 0 var(--couleur-principale);}
.wc-block-components-button div,.wc-block-components-button span{color: white;}



.woocommerce-account .woocommerce { display: flex;  flex-wrap: wrap;  gap: 2rem; margin-top: 2rem;}
.woocommerce-account .woocommerce-MyAccount-navigation {  flex: 0 0 250px; padding: 20px;background-color: var(--couleur-principale)}
.woocommerce-account .woocommerce-MyAccount-navigation ul {list-style: none; padding: 0; margin: 0;}
.woocommerce-account .woocommerce-MyAccount-navigation li {  margin-bottom: 10px;}

.woocommerce-account .woocommerce-MyAccount-navigation a {display: block;  padding: 10px 15px; color: white;  text-decoration: none;transition: background-color 0.3s, color 0.3s;}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {background-color: var(--couleur-secondaire);color: white;}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {  background-color: var(--couleur-secondaire); color: white; font-weight: bold;}
.woocommerce-account .woocommerce-MyAccount-content { flex: 1;  background: white; padding: 30px;}
.woocommerce-account .woocommerce-MyAccount-content a {  color: var(--couleur-secondaire);text-decoration: underline;}
.woocommerce-account .woocommerce-MyAccount-content a:hover {text-decoration: none;}



.woocommerce-Button,.woocommerce .woocommerce-form-login .woocommerce-form-login__submit{background-color: var(--couleur-cta) !important;padding: 15px 20px !important;color: var(--couleur-cta-texte) !important; transition: box-shadow 350ms ease-in-out, color 200ms ease-in-out, background-color 200ms ease-in-out;font-weight: 400;font-size: 1.5rem;text-align: center;  border-radius: var(--border-radius); position: relative;color: white;border: 0;font-weight: 400;}
.woocommerce-Button:hover,.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover {box-shadow: inset 40em 0 0 0 var(--couleur-principale);}
.woocommerce form .form-row .input-text, .woocommerce form .form-row select{border-radius: var(--border-radius) !important;}
.woocommerce form .form-row label{margin-left: 0 !important;}
.woocommerce-account .woocommerce{display: block !important;max-width: 800px;margin: auto;}

.woocommerce-page .wp-block-woocommerce-cart, .woocommerce-page .wp-block-woocommerce-checkout {background-color: #fff; padding: 2rem; border-radius: var(--border-radius); margin-bottom: 5rem;}
.wp-block-woocommerce-cart *, .wp-block-woocommerce-checkout * {color: var(--couleur-texte);}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__quantity span {color: #fff;}
.is-large.wc-block-cart .wc-block-cart-items { border-bottom: 1px solid white !important;}
.is-large.wc-block-cart .wc-block-cart-items td,.wc-block-components-totals-wrapper,.wp-block-woocommerce-cart-order-summary-totals-block,.wc-block-components-totals-wrapper{border-top: 1px solid white !important;}
.wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-wrapper{border-top: 0 !important;}
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content:last-child{color: var(--couleur-texte);}
.wc-block-components-form .wc-block-checkout__order-notes.wc-block-components-checkout-step{margin-bottom: 0 !important;}
.wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-wrapper{border-top: 0 !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity{background-color: var(--couleur-principale) !important;box-shadow: none !important;color: white !important;}

.woocommerce-form.woocommerce-form-login *{color: white !important;}
.woocommerce-Address-title{background-color: white;}

.intro-categorie  *{color: white;}

.woocommerce-order *{color: white;}
.woocommerce table.shop_table td,.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th{border-top: 1px solid white !important;}
.woocommerce table.shop_table,.woocommerce .woocommerce-customer-details address{border: 1px solid white !important;}

.woocommerce table.shop_table *{border-color: white !important;}
.wc-block-components-address-card address .wc-block-components-address-card__address-section--secondary{color: white !important;}