/**************/
/* RESPONSIVE */
/**************/

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {

    body, html { overflow-x: hidden; font-size: 1rem; }
    .tel-link { pointer-events: auto; cursor: pointer; }
    .g-2, .gx-2 { --bs-gutter-x: 2rem; }
    .g-2, .gy-2 { --bs-gutter-y: 2rem; }
    .g-5, .gx-5 { --bs-gutter-x: 2rem; }
    .g-5, .gy-5 { --bs-gutter-y: 2rem; }

    h1 { font-size: 2rem; margin: 0 0 1.5rem 0; }
    h2 { font-size: 2rem; margin: 0 0 1.5rem 0; }
    h2 br {display: none; }
    h3 { font-size: 1.5rem; margin: 0 0 1.5rem 0; }
    p { margin-bottom: 1rem; }
    ol, ul { margin-bottom: 1rem; padding-left: 1.2rem;  }

    header.main { padding: 0; }
    header.main .header_section, header.main .header_section.logo { width: auto; }
    header.main .header_section.logo { position: static; }
    header.main .header_section.logo img { width: 100%; padding: 1rem 2rem 0 1rem; }
    header.main .header_section.logo svg { width: 14rem; padding: .5rem 0 0 .5rem; margin: 0; }
    .menu_wrapper { font-size: .75rem; padding: 0 1rem; height: 4rem; }
    .menu_wrapper span.label { display: none; }
    #menu_panel { top: 4rem; width: 100%; padding: 2rem 0;  }
    .side_left { padding: 0; border-right: 0; border-bottom: 0; height: auto; padding-bottom: 1.5rem; }
    #menu_panel ul a { padding: .5rem 0 .5rem 2rem; font-size: 1rem;  }
    .has_sub::after { font-size: 1rem; top: .5rem; right: 1rem; }
    #menu_panel ul.submenu a { font-size: .85rem; padding: .5rem 0 .5rem 2rem; }
    .side_right { padding: 1rem 2rem; height: auto; display: none; }
    .infoBlock__icon i { font-size: 1rem; }
    .infoBlock { gap: 1rem; }
    .socials { margin-top: 1rem; gap: 1rem; }
    .socials a { width: 2rem; height: 2rem; font-size: 1rem;  }
    .side_form { font-size: 1rem; padding: 2rem 2rem 0 2rem; }
    .side_form .form_wrapper { padding-top: 1rem; }
    .menu_panel__wrapper { overflow-y: auto; max-height: 90svh; }
    .menu_panel__wrapper .row { --bs-gutter-x: 0; --bs-gutter-y: 0; }
    header.main.sticky { height: 4rem; }
    footer.main { padding: 0 2rem; background-image: none; }
    .footer_left_wrapper { border-right: 0; padding-right: 0; padding-bottom: 2rem; }
    .footer_menu, .footer_menu_other { display: none; }
    footer h3 { margin: 0 0 1rem 0; }
    .footer_contact_wrapper { display: block; }
    .logo_footer { width: 75%; margin: 2rem auto 1rem auto; }
    footer small { font-size: .75rem; }
    .footer_right_wrapper { padding: 2rem 0; }
    footer .row { flex-direction: column-reverse !important; }
    .hamburger-box { width: 3rem; }
    .hamburger-inner, .hamburger-inner:after, .hamburger-inner:before { width: 3rem; height: 5px; border-radius: 0; }
    .hamburger-inner:before { top: -.75rem;  }
    .hamburger-inner:after { bottom: -.75rem;  }
    .header_section.btns { position: absolute; top: 6rem; left: 0; z-index: 100; padding: 0 1rem; gap: 1rem; }
    .header_section.btns a { text-align: center; }
    .wpml-ls-legacy-list-horizontal { padding: 0 0 0 1rem; }

    /* Home */
    #hero { padding: 5rem 2rem 2rem 2rem; background-position: top center; overflow: hidden; min-height: 100svh; height: 100svh;}
    #hero h1 { color: #fff; text-shadow: 1px 1px 1px #000; }
    #introduction { padding: 2rem; }
    .slider_packages__slide img { padding-bottom: 1rem; }
    .slider_packages__content_wrapper { padding: 1rem 2rem 2rem 2rem; }
    .slider_packages__content_wrapper p.price { margin: 0 0 1rem 0; }
    .btn_white, .btn_blue, .btn_white, .btn_trans, .btn_lite_blue, .btn_green { border-radius: 2rem; padding: .5rem 1rem; font-size: 1rem; }
    .slick-dots { gap: .5rem; margin: 1.5rem auto 0 auto; padding: 0 2rem; border-radius: 2rem; min-width: 10rem; height: 2rem; }
    .slick-dots button { width: .75rem; height: .75rem; }
    .normal_content_boxe { padding: 2rem; }
    .alternative_content_boxes { padding: 0; }
    .alternative_content_boxes img { padding-top: 2rem; }
    .alternative_content_boxes p { font-size: 2rem; }
    .alternative_content_boxes .row:last-child { flex-direction: column-reverse !important; }
    #home_activities h2 { text-align: center; }
    #home_activities h2 br { display: none; }
    #home_activities { padding: 2rem;  }
    #home_activities .tab-wrapper { display: block; }
    #home_activities .tab-wrapper nav { display: none; }
    .tab-content { display: block !important; margin-bottom: 2rem; }
    #home_activities .section_wrapper { width: 100%; background-color: transparent; }
    .tab_content_wrapper { background-color: #fff; }
    .btn_icon, .btn_icon_blue { gap: 1rem; font-size: 1rem; }
    .btn_icon svg, .btn_icon_blue  svg { width: 1.25rem; }
    #home_cta { padding: 02rem 0; min-height: auto; height: auto; display: flex; align-items: center; justify-content: center; }
    .actions_wrapper { gap: 1rem; padding-top: 2rem; }
    .btn_go_down { width: 2rem; margin: 0 auto 1rem auto; }
    .h2_lined { margin-left: 0; display: block; text-align: center; text-indent: initial; margin-bottom: 2rem; }
    .h2_lined h2 { display: block; padding: 0 2rem;  margin: 0 0 1rem 0; text-align: left; text-indent: initial; }
    #cabins_listing { padding: 2rem 0 0 0;  }
    .h2_lined p { font-size: 1rem; }
    h4 { font-size: 1rem; display: block; }
    .aCabin__infos { padding: 1rem;  }
    .aCabin__infos__title { margin: 0 0 1rem 0;  }
    .aCabin__infos__specs { font-size: 1rem; }
    .aCabin__infos__specs svg { width: 1rem;  margin: 0 .25rem 0 0;  }
    #home_about { padding: 2rem; }
    #home_about img { margin-bottom: 2rem; }
    #home_about h2 br { display: none; }
    .home_about_pin { width: 2rem;  margin: 1rem;  }
    .home_about_content { padding: 0 0 0 1rem; }
    .slider .slick-dots { bottom: -1rem; }
    .egg_content { position: static; width: 100%; margin-bottom: -2rem; }
    .egg_content__text {  text-align: center; }
    #hero h1 { font-size: 2.5rem; }
    .video-background { height: 75svh; }

    /* Cabins */
    #cabins #cabins_listing {padding: 10rem 2rem 2rem 2rem; }
    #hero_inner { padding-top: 0; display: flex; align-items: flex-end; justify-content: flex-end; }
    #hero_inner .egg_content { width: 75%; }
    #hero_inner svg { width: 100%; height: auto; }
    #hero_inner .egg_content__text h2 { font-size: 1.25rem;  }
    .cabin_person { font-size: 1rem; margin-bottom: 1.5rem; justify-content: center; }
    #hero_inner .cabin_person svg { width: 1rem; margin: 0 .5rem 0 0;  }
    .cabin_price { font-size: 1rem; }
    #inner_intro { padding: 5rem 2rem 2rem 2rem; }
    #cabin_specs { padding: 2rem;  }
    .cabin_specs_wrapper { display: block; padding: 2rem;  }
    .cabin_specs_wrapper__icon svg, .cabin_specs_wrapper__icon img { width: 100%; padding-bottom: 2rem;  }
    #cabin_specs .cabin_specs_wrapper h4 { margin: 0 0 1rem 0; }
    #cabin_specs h4 { text-align: center; margin: 0 0 2rem 0; }
    p.notes { font-size: .75rem;  }
    #inner_about { padding: 2rem; }
    .single_fading_slider { display: block !important;  }
    #single_gallery { text-align: center; }
    #single_gallery .slick-dots { position: static; }
    #inner_about img { margin-bottom: 2rem; }
    .home_about_actions { padding: 2rem 0 0 1rem;  }
    .home_about_deco { width: 75%; bottom: inherit; top: 2rem; }

    /* events */
    #events #inner_intro { padding: 2rem; }
    .content_box { padding: 2rem; }
    .content_box .home_about_deco { display: none; }
    h2 .sub_title { margin: 0 0 0.5rem 0;  font-size: 1rem; }
    .content_box img { margin: 2rem 0; }
    .mobileReverse { flex-direction: column-reverse !important; }
    .content_box.bg_white img { margin: 0 0 2rem 0; }
    .visible_label { height: 12rem; padding: 0 1rem; }
    .visible_label span { font-size: .75rem; }
    .hidden_content { width: 20rem; min-height: 20rem; padding: 2rem 4rem 2rem 2rem; border-radius: 0; }
    #aside_event { position: static; }
    #aside_event.open { right: -2rem; }
    #aside_event { font-size: 2rem; border-radius: 1rem; padding: 2rem; }
    #aside_event svg { margin: 2rem auto 0; width: 5rem; }
    .hidden_content p { margin: 0 0 1.5rem 0; }

    /* Promos */
    #promos_listing { padding: 2rem; }
    #promotions_packages .h2_lined { margin-left: -2rem; }
    .aPromo { border-radius: 1rem; flex-direction: column; height: auto; }
    .aPromo__img { width: 100%; height: 15rem; }
    .aPromo_infos { width: 100%; padding: 2rem; }
    h3 span { padding-bottom: .5rem; font-size: 1rem; }
    .aPromo__infos__action { padding: 1rem 0 0 0; margin: 2rem 0 0 0; }
    .aPromo__infos__action a { font-size: 1rem; }
    #promotions_packages .h2_lined { margin-left: -2rem; text-indent: 2rem; }
    #promotions_packages .content_box .h2_lined { margin-left: 0; margin-bottom: 2rem; text-indent: 0; }
    #promotions_packages .content_box .flex_center,
    #promotions_packages .content_box .flex_center:nth-child(even) { flex-direction: column-reverse !important; }
    #promotions_packages .content_box img { margin: 0; }
    #promotions_packages .content_box h2 { padding: 0 2rem 0 0; }
    #promotions_packages .content_box .home_about_content { margin: 2rem; }
    #promotions_packages .content_box .actions_wrapper { padding: 1rem 0 0 0; }
    #promotions_packages .content_box .row { margin-bottom: 2rem !important; }

    /* WPFORMS */
    .wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field { padding: 0 0 1rem 0 !important; }
    .form_wrapper ::placeholder { font-size: 1rem !important; }
    div.wpforms-container-full input[type=date], div.wpforms-container-full input[type=datetime], div.wpforms-container-full input[type=datetime-local], div.wpforms-container-full input[type=email], div.wpforms-container-full input[type=month], div.wpforms-container-full input[type=number], div.wpforms-container-full input[type=password], div.wpforms-container-full input[type=range], div.wpforms-container-full input[type=search], div.wpforms-container-full input[type=tel], div.wpforms-container-full input[type=text], div.wpforms-container-full input[type=time], div.wpforms-container-full input[type=url], div.wpforms-container-full input[type=week], div.wpforms-container-full select, div.wpforms-container-full textarea, .wp-core-ui div.wpforms-container-full input[type=date], .wp-core-ui div.wpforms-container-full input[type=datetime], .wp-core-ui div.wpforms-container-full input[type=datetime-local], .wp-core-ui div.wpforms-container-full input[type=email], .wp-core-ui div.wpforms-container-full input[type=month], .wp-core-ui div.wpforms-container-full input[type=number], .wp-core-ui div.wpforms-container-full input[type=password], .wp-core-ui div.wpforms-container-full input[type=range], .wp-core-ui div.wpforms-container-full input[type=search], .wp-core-ui div.wpforms-container-full input[type=tel], .wp-core-ui div.wpforms-container-full input[type=text], .wp-core-ui div.wpforms-container-full input[type=time], .wp-core-ui div.wpforms-container-full input[type=url], .wp-core-ui div.wpforms-container-full input[type=week], .wp-core-ui div.wpforms-container-full select, .wp-core-ui div.wpforms-container-full textarea {
        padding: .5rem !important;
        font-size: 1rem !important;
    }
    div.wpforms-container-full input[type=submit], 
    div.wpforms-container-full button[type=submit], 
    div.wpforms-container-full .wpforms-page-button, 
    .wp-core-ui div.wpforms-container-full input[type=submit], 
    .wp-core-ui div.wpforms-container-full button[type=submit], 
    .wp-core-ui div.wpforms-container-full .wpforms-page-button {
        border-radius: 1rem !important;
        padding: .5rem 1.5rem !important;
        font-size: 1rem !important;
    }
    #aside_event_popup .wpforms-layout-column .wpforms-field { padding: 0 0 1rem 0 !important; }
    .aside_event_popup_content ::placeholder { font-size: 1rem !important; }
    .aside_event_popup_content p { margin-bottom: 2rem; }

    /* Fixes */
    .aCabin { border-radius: 1rem; }
    .aCabin__infos__title { font-size: 1rem; }
    .aCabin__infos__action { padding: 1rem 0 0 0;  }
    .aCabin__infos__title svg { width: 1rem; margin: 0 .25rem 0 0; }
    .aCabin__infos__title .person { font-size: .75rem; }
    .aCabin__infos__action a { font-size: 1rem; }
    .aCabin__infos__action a svg { width: 2rem; height: 2rem; }
    .home_cta_img2, .home_cta_img3 { display: none; }
    .home_cta_img1 { position: relative; z-index: 1; width: 100%; height: 100%; top: 0; left: 0; display: none; }
    .home_cta_content { position: static; z-index: 10; background-color: #fff; padding: 2rem; text-align: center; margin: 0 2rem; }
    #home_cta h2 { font-size: 2rem; }
    .aside_event_popup_content { padding: 2rem; width: 85%; }
    .close_popup { font-size: 1.5rem; top: .5rem; right: .5rem; }
    .inner_intro_infos { padding: 2rem; border-radius: 1rem; text-align: center; }
    .inner_intro_infos h4 { font-size: 1.5rem; margin: 0 0 1.5rem 0; text-align: center; }
    .cabin_person svg { width: 1.25rem; margin: 0 1rem 0 0; }
    body.single #inner_intro { padding: 2rem; }
    #important_notes { font-size: 1rem; padding: 2rem; display: block; }
    .important_notes_title { font-size: 1.2rem;  }
    body.single #inner_intro .row { flex-direction: column-reverse !important; }
    .arrows { top: 14%; font-size: 2rem; color: #fff; }
    .arrow_left { left: 1rem; }
    .arrow_right { right: 1rem; }
    #home_advantages { margin-bottom: 2rem; }
    #home_advantages h2 { margin: 0 0 2rem 0; }
    #home_advantages .aAdv { padding: 0 0 2rem 0; }
    #home_advantages .aAdv h2 { margin: 0 0 1rem 0; }
    #home_advantages .aAdv img { height: 5rem; margin: 0 0 1rem 0; }
    #promotions_packages #promos_golf { padding: 10rem 2rem 2rem 2rem; }
    .btn_green.big { padding: 1.25rem 0; font-size: 1.25rem; width: 100%; text-align: center; justify-content: center; }
    .intro_deco { display: none; }

    .home_popup_wrapper { flex-direction: column; margin: 0 2rem; }
    .home_popup_wrapper__content { padding: 2rem; }
    .home_popup_wrapper__content .hpp_icon { width: 2rem; margin: 0 0 1rem 0; }
    .btn_popup { border-radius: 2rem; padding: .5rem 1.5rem; font-size: 1rem; }
    .home_popup_wrapper__content h2 { margin: 0 0 1rem 0; font-size: 1.5rem; }
    #home_popup .close_popup { color: #102B4E; }

    /* Slider Chalet */
    .arrows { top: 15%; }
    #single_gallery .arrow_left { left: 1rem; }
    #single_gallery .arrow_right { right: 1rem; }
    #single_gallery .slick-dots { margin: 1rem auto; }
    #single_gallery .slick-dots button { background-color: #102B4E; }

    /* Ajouts - Février 2025 */
    #activities_listing { padding: 2rem; }
    #activities_onsite { padding: 10rem 2rem 2rem; }
    .aActivity { border-radius: 1rem; }
    .aActivity__img { height: 400px; }
    .aActivity__content { padding: 2rem; }
    .activities_slider_wrapper .slider_activities .slick-dots { bottom: 2rem; }
    .content_box_paragraphes { margin-bottom: 2rem; }
    body:not(.home) .header_section.btns { position: relative; margin-top: 5rem; top: 0; }
    .btn_trans.big { padding: 1rem; font-size: 1rem; }

    /* Ajustements Juin 2026 */
    #activities_onsite .slick-slide img {
        width: 100% !important;
        height: auto !important;
    }
    

}

/* Small devices (portrait tablets and large phones, 600px to 991px) */
@media only screen and (min-width: 601px) and (max-width: 991px)  {

    body, html { overflow-x: hidden; }
    .tel-link { pointer-events: auto; cursor: pointer; }

}

/* Medium devices (landscape tablets, 992px to 1024px) */
@media only screen and (min-width: 992px) and (max-width: 1024px) {

    body, html { overflow-x: hidden; }
    .tel-link { pointer-events: auto; cursor: pointer; }

}

/* Large devices (laptops/desktops, 1025px to 1200px) */
@media only screen and (min-width: 1025px) and (max-width: 1200px) {

    body, html { overflow-x: hidden; }

}

/* Extra large devices (large laptops and desktops, 1201px to 1366px) */
@media only screen and (min-width: 1201px) and (max-width: 1366px) {

    body, html { overflow-x: hidden; }
  
}