/*
Theme Name: Fleuv 2026
Author: iDizBox
Author URI: http://idizbox.com/
Description: Made with ♥ by iDizBox
Version: 1.00
Text Domain: idbxboostrap1
*/

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

:root {
    --white: #FFFFFF;
    --black: #222222;
    --greydark: #646464;
    --greymid: #CFCFCF;
    --greylight: #F8F8F8;
    --pink: #39A6FF;
    --pinkdark: #1c8be6;
}

html, body {
    padding: 0;
    margin: 0;
    width: 100%;
    overflow-x: clip;
}

body {
    background-color: #FFFFFF;
    color: #646464;
    font-family: "Outfit", sans-serif;
    font-size: 18px;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body.modal-open {
    overflow: clip !important;
}

.mobile_only {
    display: none;
}

:focus {
    outline: 0!important;
}

a, a:visited, a:focus {
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.nopadding { padding: 0; }
.no-padding-left {padding-left: 0;}
.no-padding-right {padding-right: 0;}
.px_0 { padding-left: 0; padding-right: 0; }
.px_075 { padding-left: 0.75rem; padding-right: 0.75rem; }
.pt_10 { padding-top: 10px; }
.pt_15 { padding-top: 15px; }
.pt_20 { padding-top: 20px; }
.pt_25 { padding-top: 25px; }
.pt_30 { padding-top: 30px; }
.pt_40 { padding-top: 40px; }
.pt_50 { padding-top: 50px; }
.pt_60 { padding-top: 60px; }
.pt_70 { padding-top: 70px; }
.pt_80 { padding-top: 80px; }
.pt_100 { padding-top: 100px; }
.pt_115 { padding-top: 115px; }
.pt_120 { padding-top: 120px; }
.pt_150 { padding-top: 150px; }
.pb_10 { padding-bottom: 10px; }
.pb_15 { padding-bottom: 15px; }
.pb_20 { padding-bottom: 20px; }
.pb_22 { padding-bottom: 22px; }
.pb_30 { padding-bottom: 30px; }
.pb_40 { padding-bottom: 40px; }
.pb_50 { padding-bottom: 50px; }
.pb_60 { padding-bottom: 60px; }
.pb_70 { padding-bottom: 70px; }
.pb_80 { padding-bottom: 80px; }
.pb_90 { padding-bottom: 90px; }
.pb_120 { padding-bottom: 120px; }
.pb_150 { padding-bottom: 150px; }
.mt_10 { margin-top: 10px; }
.mt_15 { margin-top: 15px; }
.mt_20 { margin-top: 20px; }
.mt_30 { margin-top: 30px; }
.mt_40 { margin-top: 40px; }
.mt_50 { margin-top: 50px; }
.mt_60 { margin-top: 60px; }
.mt_70 { margin-top: 70px; }
.mt_80 { margin-top: 80px; }
.mb_10 { margin-bottom: 10px; }
.mb_15 { margin-bottom: 15px; }
.mb_20 { margin-bottom: 20px; }
.mb_30 { margin-bottom: 30px; }
.mb_40 { margin-bottom: 40px; }
.mb_50 { margin-bottom: 50px; }
.mb_60 { margin-bottom: 60px; }
.mb_70 { margin-bottom: 70px; }
.mb_80 { margin-bottom: 80px; }

/* md ≥ 768px */
@media (min-width: 768px) {
    .px_md_0 { padding-left: 0; padding-right: 0; }
    .px_md_075 { padding-left: 0.75rem; padding-right: 0.75rem; }
    .pt_md_10 { padding-top: 10px; }
    .pt_md_15 { padding-top: 15px; }
    .pt_md_20 { padding-top: 20px; }
    .pt_md_25 { padding-top: 25px; }
    .pt_md_30 { padding-top: 30px; }
    .pt_md_40 { padding-top: 40px; }
    .pt_md_50 { padding-top: 50px; }
    .pt_md_60 { padding-top: 60px; }
    .pt_md_70 { padding-top: 70px; }
    .pt_md_80 { padding-top: 80px; }
    .pb_md_10 { padding-bottom: 10px; }
    .pb_md_15 { padding-bottom: 15px; }
    .pb_md_20 { padding-bottom: 20px; }
    .pb_md_25 { padding-bottom: 25px; }
    .pb_md_30 { padding-bottom: 30px; }
    .pb_md_40 { padding-bottom: 40px; }
    .pb_md_50 { padding-bottom: 50px; }
    .pb_md_60 { padding-bottom: 60px; }
    .pb_md_70 { padding-bottom: 70px; }
    .pb_md_80 { padding-bottom: 80px; }
    .mt_md_10 { margin-top: 10px; }
    .mt_md_15 { margin-top: 15px; }
    .mt_md_20 { margin-top: 20px; }
    .mt_md_25 { margin-top: 25px; }
    .mt_md_30 { margin-top: 30px; }
    .mt_md_40 { margin-top: 40px; }
    .mt_md_50 { margin-top: 50px; }
    .mt_md_60 { margin-top: 60px; }
    .mt_md_70 { margin-top: 70px; }
    .mt_md_80 { margin-top: 80px; }
    .mb_md_0 { margin-bottom: 0px; }
    .mb_md_10 { margin-bottom: 10px; }
    .mb_md_15 { margin-bottom: 15px; }
    .mb_md_20 { margin-bottom: 20px; }
    .mb_md_25 { margin-bottom: 25px; }
    .mb_md_30 { margin-bottom: 30px; }
    .mb_md_40 { margin-bottom: 40px; }
    .mb_md_50 { margin-bottom: 50px; }
    .mb_md_60 { margin-bottom: 60px; }
    .mb_md_70 { margin-bottom: 70px; }
    .mb_md_80 { margin-bottom: 80px; }
}

/* lg ≥ 992px */
@media (min-width: 992px) {
    .px_lg_0 { padding-left: 0; padding-right: 0; }
    .px_lg_075 { padding-left: 0.75rem; padding-right: 0.75rem; }
    .pt_lg_10 { padding-top: 10px; }
    .pt_lg_15 { padding-top: 15px; }
    .pt_lg_20 { padding-top: 20px; }
    .pt_lg_25 { padding-top: 25px; }
    .pt_lg_30 { padding-top: 30px; }
    .pt_lg_40 { padding-top: 40px; }
    .pt_lg_50 { padding-top: 50px; }
    .pt_lg_60 { padding-top: 60px; }
    .pt_lg_70 { padding-top: 70px; }
    .pt_lg_80 { padding-top: 80px; }
    .pb_lg_10 { padding-bottom: 10px; }
    .pb_lg_15 { padding-bottom: 15px; }
    .pb_lg_20 { padding-bottom: 20px; }
    .pb_lg_25 { padding-bottom: 25px; }
    .pb_lg_30 { padding-bottom: 30px; }
    .pb_lg_40 { padding-bottom: 40px; }
    .pb_lg_50 { padding-bottom: 50px; }
    .pb_lg_60 { padding-bottom: 60px; }
    .pb_lg_70 { padding-bottom: 70px; }
    .pb_lg_80 { padding-bottom: 80px; }
    .mt_lg_10 { margin-top: 10px; }
    .mt_lg_15 { margin-top: 15px; }
    .mt_lg_20 { margin-top: 20px; }
    .mt_lg_25 { margin-top: 25px; }
    .mt_lg_30 { margin-top: 30px; }
    .mt_lg_40 { margin-top: 40px; }
    .mt_lg_50 { margin-top: 50px; }
    .mt_lg_60 { margin-top: 60px; }
    .mt_lg_70 { margin-top: 70px; }
    .mt_lg_80 { margin-top: 80px; }
    .mb_lg_0 { margin-bottom: 0px; }
    .mb_lg_10 { margin-bottom: 10px; }
    .mb_lg_15 { margin-bottom: 15px; }
    .mb_lg_20 { margin-bottom: 20px; }
    .mb_lg_25 { margin-bottom: 25px; }
    .mb_lg_30 { margin-bottom: 30px; }
    .mb_lg_40 { margin-bottom: 40px; }
    .mb_lg_50 { margin-bottom: 50px; }
    .mb_lg_60 { margin-bottom: 60px; }
    .mb_lg_70 { margin-bottom: 70px; }
    .mb_lg_80 { margin-bottom: 80px; }
}

/* xl ≥ 1200px */
@media (min-width: 1200px) {
    .px_xl_0 { padding-left: 0; padding-right: 0; }
    .px_xl_075 { padding-left: 0.75rem; padding-right: 0.75rem; }
    .pt_xl_10 { padding-top: 10px; }
    .pt_xl_15 { padding-top: 15px; }
    .pt_xl_20 { padding-top: 20px; }
    .pt_xl_25 { padding-top: 25px; }
    .pt_xl_30 { padding-top: 30px; }
    .pt_xl_40 { padding-top: 40px; }
    .pt_xl_50 { padding-top: 50px; }
    .pt_xl_60 { padding-top: 60px; }
    .pt_xl_70 { padding-top: 70px; }
    .pt_xl_80 { padding-top: 80px; }
    .pb_xl_10 { padding-bottom: 10px; }
    .pb_xl_15 { padding-bottom: 15px; }
    .pb_xl_20 { padding-bottom: 20px; }
    .pb_xl_25 { padding-bottom: 25px; }
    .pb_xl_30 { padding-bottom: 30px; }
    .pb_xl_40 { padding-bottom: 40px; }
    .pb_xl_50 { padding-bottom: 50px; }
    .pb_xl_60 { padding-bottom: 60px; }
    .pb_xl_70 { padding-bottom: 70px; }
    .pb_xl_80 { padding-bottom: 80px; }
    .mt_xl_10 { margin-top: 10px; }
    .mt_xl_15 { margin-top: 15px; }
    .mt_xl_20 { margin-top: 20px; }
    .mt_xl_25 { margin-top: 25px; }
    .mt_xl_30 { margin-top: 30px; }
    .mt_xl_40 { margin-top: 40px; }
    .mt_xl_50 { margin-top: 50px; }
    .mt_xl_60 { margin-top: 60px; }
    .mt_xl_70 { margin-top: 70px; }
    .mt_xl_80 { margin-top: 80px; }
    .mb_xl_0 { margin-bottom: 0px; }
    .mb_xl_10 { margin-bottom: 10px; }
    .mb_xl_15 { margin-bottom: 15px; }
    .mb_xl_20 { margin-bottom: 20px; }
    .mb_xl_25 { margin-bottom: 25px; }
    .mb_xl_30 { margin-bottom: 30px; }
    .mb_xl_40 { margin-bottom: 40px; }
    .mb_xl_50 { margin-bottom: 50px; }
    .mb_xl_60 { margin-bottom: 60px; }
    .mb_xl_70 { margin-bottom: 70px; }
    .mb_xl_80 { margin-bottom: 80px; }
}

.zi_0 { z-index: 0; }
.zi_1 { z-index: 1; }
.zi_2 { z-index: 2; }

h1, h2, h3, h4, h5, .h1, .h2, .h3, .h4, .h5 {
    margin: 0;
}

.h2, h2 {
    font-size: 2rem;
    font-weight: bold;
}

.h1_big {
    font-size: 2.625rem;
    font-weight: bold;
    line-height: 1;
}

.h1_header {
    font-size: 2.625rem;
    font-weight: bold;
    line-height: 1;
}

.h1_medium { 
    font-size: 2rem;
    font-weight: bold;
    line-height: 1;
}

.h2_header {
    font-size: 1.125rem;
    font-weight: 600;
}

.h2_txt {
    font-size: 1.125rem;
    font-weight: 400;
}

.fs_18 {
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1;
}

.fs_20 {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1;
}

.fs_24 {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1;
}

.fs_28 {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1;
}

.fs_34 {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1;
}

.fs_36 {
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1;
}

.fs_40 {
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1;
}

@media (min-width: 992px) {
    
    .h2, h2 { font-size: 2.875rem; }
    .h1_big { font-size: 3.25rem; }
    .h1_medium { font-size: 2.625rem; }
    .h1_header { font-size: 3.25rem;}
    .h2_header { font-size: 1.25rem; }
    .h2_txt { font-size: 1.25rem; }
    .fs_20 {font-size: 1.25rem;}
    .fs_24 {font-size: 1.5rem;}
    .fs_28 {font-size: 1.75rem;}
    .fs_34 {font-size: 2.125rem;}
    .fs_36 {font-size: 2.25rem;}
    .fs_40 {font-size: 2.5rem;}
    
    
}

.p_div p:last-of-type {
    margin-bottom: 0;
}

.p_div a:not(.btn) {
    color: var(--pink);
}

.text-justify {
    text-align: justify;
}

.fs_22 {
    font-size: 1.375rem;
}

.br_15 { border-radius: 15px; }
.br_20 { border-radius: 20px; }

.border_top { border-top: 1px solid var(--greymid); }

.page_standard {
    padding-top: 85px;
}

.col_black { color: var(--black); }
.col_pink { color: var(--pink); }
.col_greylight { color: var(--greylight); }

.bg_greylight { background-color: var(--greylight); }
.bg_white { background-color: var(--white); }

.btn, .btn:visited, .btn:active, .btn:focus,   
.btn_pink, .btn_pink:visited, .btn_pink:active, .btn_pink:focus, :not(.btn-check)+.btn_pink:active {
    background-color: var(--pink);
    color: var(--white);
    font-size: 18px;
    border-radius: 10px;
    font-weight: 600;
    padding: 12px 25px;
    cursor: pointer;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.btn:hover, 
.btn_pink:hover {
    background-color: var(--pinkdark);
    color: var(--white);
}

.btn_with_svg {
    display: flex;
    align-items: center;
    gap: 6px;
}

.btn svg path {
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.btn_white_p, .btn_white_p:active, .btn_white_p:visited, .btn_white_p:focus {
    background-color: var(--white);
    color: var(--pink);
}

.btn_white_p:hover {
    background-color: var(--white);
    color: var(--black);
}

.btn_white_p.active, .btn_white_p.show, .btn_white_p:first-child:active, :not(.btn-check)+.btn_white_p:active {
    background-color: var(--white);
    color: var(--black);
}

.btn_white_p.dropdown-toggle:hover::after {
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%23222222'/%3E%3C/svg%3E");
}

.btn_white_p.dropdown-toggle::after {
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%2339A6FF'/%3E%3C/svg%3E");
}

.btn_white_black, .btn_white_black:active, .btn_white_black:visited, .btn_white_black:focus {
    background-color: var(--white);
    color: var(--black);
}

.btn_white_black:hover {
    background-color: var(--white);
    color: var(--pink);
}

.btn_white_black:hover svg path {
    fill: var(--pink);
}

.btn_white_black_border_g, .btn_white_black_border_g:active, .btn_white_black_border_g:visited, .btn_white_black_border_g:focus {
    background-color: var(--white);
    color: var(--black);
    border: 1px solid #D9D9D9;
}

.btn_white_black_border_g:hover {
    background-color: var(--white);
    color: var(--black);
    border: 1px solid var(--black);
}

.btn_white_black_border_g:hover svg path {
    fill: var(--black);
}

.btn_grey, .btn_grey:active, .btn_grey:visited, .btn_grey:focus {
    background-color: var(--greymid);
    color: var(--black);
}

.btn_grey:hover {
    background-color: var(--greydark);
    color: var(--white);
}

.btn_small, .btn_small:hover, .btn_small:active, .btn_small:visited, .btn_small:focus {
    padding: 6px 20px;
}

.btn_small_svg {
    padding: 6px 20px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.link_black, .link_black:focus {
    color: var(--black);
    text-decoration: underline;
    font-weight: 600;
}

.link_grey_p, .link_grey_p:focus {
    color: var(--greydark);
    text-decoration: none;
    font-weight: 500;
}

.link_grey_p:hover {
    color: var(--pink);
}

.modal-lg {
    max-width: 636px;
}

/******************************************/
/******************************************/
/****************** NAVBAR ****************/
/******************************************/
/******************************************/

.page-template-page-peniches-ville .navbar > .container {
      max-width: 100%;
      padding: 0 15px;
  }

@media (min-width: 992px) {
  .page-template-page-peniches-ville .navbar > .container {
      max-width: 100%;
      padding: 0 30px;
  }
}

#main_nav {
    background-color: var(--white);
    color: var(--black);
    border-bottom: 1px solid var(--greymid);
    padding: 16.5px 0;
    height: 85px;
}

.navbar-brand {
    padding: 0;
}

.navbar-brand img {
/*    width: 70px;*/
    width: 122px;
    height: auto;
}

#menu-top {
    gap: 40px;
    align-items: center;
}

#main_nav .nav-link {
    color: var(--black);
    font-weight: 600;
    padding: 0;
    font-size: 18px;
}

#main_nav .nav-link.active, #main_nav .nav-link:hover {
    color: var(--pink);
}

/* CTA header : style repris des onglets rooftops (noir, gras, trait 2px
   permanent + flèche), passage au rose au survol. La flèche est générée
   en CSS (currentColor + mask), rien à insérer dans le menu WordPress. */
#main_nav .btn_menutop a.nav-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--black);
    background-color: transparent;
    font-weight: 600;
    padding: 0 0 3px;
    border-radius: 0;
    border-bottom: 2px solid var(--black);
    transition: color .2s ease, border-color .2s ease;
}

#main_nav .btn_menutop a.nav-link::after {
    content: "";
    width: 15px;
    height: 15px;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

#main_nav .btn_menutop a.nav-link:hover {
    color: var(--pink);
    background-color: transparent;
    border-color: var(--pink);
}

.dropdown-toggle::after {
    content: "";
    display: inline-block;
    width: 9px;
    height: 5px;
    margin-left: 8px;
    vertical-align: middle;
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%23222222'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    border: none;
    transition: all .15s ease-in-out;
}

.btn_pink.dropdown-toggle::after {
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
}

/* La flèche reste blanche au survol et à l'ouverture (surcharge des états génériques du thème) */
.btn_pink.dropdown-toggle:hover::after,
.btn_pink.dropdown-toggle.active::after,
.btn_pink.dropdown-toggle.show::after,
.btn_pink.dropdown-toggle:focus::after {
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
}

/* Le bouton garde son style rose quand le menu est ouvert (état .show de Bootstrap) */
.btn_pink.dropdown-toggle.show,
.btn_pink.dropdown-toggle:active,
.btn_pink.dropdown-toggle.show:focus,
.btn_pink.dropdown-toggle:first-child:active {
    background-color: var(--pink);
    color: var(--white);
    border-color: transparent;
    box-shadow: none;
}

.btn_pink.dropdown-toggle.show:hover {
    background-color: var(--pinkdark);
}

.dropdown-toggle:hover::after, .dropdown-toggle.active::after {
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%2339A6FF'/%3E%3C/svg%3E");
}

.dropdown-item.active, .dropdown-item:active {
    color: var(--pink);
    text-decoration: none;
    background-color: transparent;
}

#main_navbar .dropdown-menu {
    border: 1px solid var(--greymid);
    border-radius: 15px;
    margin-top: 16px;
    padding: 5px 0;
    overflow: hidden;
}

.dropdown-item {
    font-weight: 600;
    font-size: 18px;
}

.dropdown-item:focus, .dropdown-item:hover {
    background-color: transparent;
    color: var(--pink);
}

.navbar-toggler {
    background-color: transparent;
    border: 0;
    padding: 0;
    position: absolute;
    right: 0.75rem;
    top: 34px;
}

.navbar-toggler:focus {
    text-decoration: none;
    background-color: none;
    outline: 0;
    box-shadow: none;
}

.navbar-toggler .navbar_togglebar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 2px;
    background-color: var(--black);
}

.navbar-toggler .navbar_togglebar+.navbar_togglebar {
    margin-top: 5px;
}

.nav_open .navbar-toggler .navbar_togglebar_1 {
    transform: rotate(45deg);
    transform-origin: 0% 50%;
}

.nav_open .navbar-toggler .navbar_togglebar_2 {
    opacity: 0;
}

.nav_open .navbar-toggler .navbar_togglebar_3 {
    transform: rotate(-45deg);
    transform-origin: 0% 50%;
    margin-top: 6.5px;
}

.navbar-collapse {
    transition: none !important;
    will-change: transform, opacity;
}

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

.page-template-page-accueil #main_nav {
    border-bottom: 1px solid transparent;
}

.page-template-page-accueil #main_nav.scrolled {
    border-bottom: 1px solid var(--greymid);
}

/* ===== HERO — styles complémentaires à Bootstrap =====
   La structure (colonnes, hauteur, ordre mobile) est gérée par les classes
   utilitaires Bootstrap dans le template. Ici, uniquement ce que Bootstrap
   ne fournit pas nativement. */

:root {
    --nav-height: 98px;   /* hauteur de la navbar ; ajuster si elle change */
    --trust-height: 61px; /* hauteur de la barre de réassurances (18px + 18px padding + ~25px contenu) */
}

/* Le hero + la barre de réassurances tiennent ensemble dans la hauteur d'écran (desktop) */
@media (min-width: 992px) {
    .h_header_hero_row {
        min-height: calc(100svh - var(--nav-height) - var(--trust-height) - 24px);
    }
}

/* Image : remplit sa colonne quelle que soit sa hauteur */
.h_header_hero_media {
    overflow: hidden;
}

.h_header_hero_image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Badge localisation */
.h_header_hero_badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #E8F4FF;
    color: var(--pink);
    font-size: 14px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 30px;
    width: fit-content;
    margin-bottom: 20px;
}

/* Masqué sur mobile */
@media (max-width: 991px) {
    .h_header_hero_badge {
        display: none;
    }

    /* Contenu du hero centré sur mobile */
    .h_header_hero_row .h1_big,
    .h_header_hero_row .h2_txt {
        text-align: center;
    }
    .h_header_hero_btns {
        display: flex;
        justify-content: center;
    }
}

.h_header_hero_btns .dropdown-item {
    font-size: 18px;
}

/* ===== Barre de réassurances défilante sous le hero ===== */
#h_header_trust {
    margin-top: 24px;
}

.h_header_trust_bar {
    border-top: 1px solid var(--greymid);
    border-bottom: 1px solid var(--greymid);
    padding: 18px 0;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to right, transparent 0, #000 12%, #000 88%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0, #000 12%, #000 88%, transparent 100%);
}

.h_header_trust_track {
    display: flex;
    width: max-content;
    flex-wrap: nowrap;
    animation: h_header_trust_scroll 60s linear infinite;
}

.h_header_trust_group {
    display: flex;
    flex-wrap: nowrap;
    flex-shrink: 0;
}

.h_header_trust_bar:hover .h_header_trust_track {
    animation-play-state: paused;
}

.h_header_trust_item {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 15px;
    color: var(--greydark);
    white-space: nowrap;
    padding: 0 28px;
    flex-shrink: 0;
}

.h_header_trust_item svg {
    flex-shrink: 0;
}

/* Le track contient 2 groupes identiques : translater d'un groupe = -50% du track */
@keyframes h_header_trust_scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
    .h_header_trust_track {
        animation: none;
    }
}

.h_reassurance_cont {
    padding: 20px 15px;
}

.h_reassurance_tit {
    font-weight: bold;
    font-size: 2.125rem;
}

.h_reassurance_subtit {
    display: block;
    font-size: 1.375rem;
    margin-top: 10px;
}

.peniches_tabs_wrapper {
    position: relative;
}

#peniches_tabs {
    gap: 50px;
    border: 0;
    padding-top: 0;
}

#peniches_tabs.is_scrollable {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    flex-wrap: nowrap;
    justify-content: normal !important;
    padding-bottom: 8px;
    padding-left: 10px;
    padding-right: 10px;
}

#peniches_tabs.is_scrollable .nav-item {
    flex: 0 0 auto;
}

.peniches_tabs_fleft,
.peniches_tabs_fright {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 10px;
    pointer-events: none;
    z-index: 10;
    display: none;
}
.peniches_tabs_fleft {
    left: 0;
    background: linear-gradient(to right, #fff, transparent);
}
.peniches_tabs_fright {
    right: 0;
    background: linear-gradient(to left, #fff, transparent);
}

#peniches_tabs.nav-tabs .nav-link {
    border: 0;
    color: var(--black);
    font-size: 1.25rem;
    font-weight: 600;
    padding: 0;
    position: relative;
}

#peniches_tabs.nav-tabs .nav-link:after {
    content: '';
    position: absolute;
    -moz-transition: transform .5s ease;
    -webkit-transition: transform .5s ease;
    -ms-transition: transform .5s ease;
    transition: transform .5s ease;
    left: 0;
    bottom: -3px;
    width: 100%;
    height: 2px;
    background: var(--black);
    transform: scaleX(0);
}

#peniches_tabs.nav-tabs .nav-link.active:after {
    background: var(--pink);
}

#peniches_tabs.nav-tabs .nav-link:hover:after,
#peniches_tabs.nav-tabs .nav-link.active:after {
    transform: scaleX(1);
}

#peniches_tabs.nav-tabs .nav-link.active {
    color: var(--pink);
}

.h_peniche_imgcont {
    position: relative;
    width: 100%;
    padding-top: 62%;
    overflow: hidden;
}

.h_peniche_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.h_peniche_imgcont .swiper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.h_peniche_imgcont .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.h_peniche_imgcont .swiper-pagination-bullet {
    background-color: var(--white);
    opacity: 1;
    width: 10px;
    height: 10px;
}

.h_peniche_imgcont .swiper-pagination-bullet-active {
    background-color: var(--pink);
}

.h_peniche_slider_next:after, .h_peniche_slider_prev:after {
    display: none;
}

.h_peniche_slider_next, .h_peniche_slider_prev {
    background-color: var(--white);
    width: 40px;
    height: 40px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 0;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.h_peniche_conta:hover .h_peniche_slider_next, .h_peniche_conta:hover .h_peniche_slider_prev {
    opacity: 1;
}

.h_peniche_slider_pagination {
    opacity: 0;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.h_peniche_conta:hover .h_peniche_slider_pagination {
    opacity: 1;
}

.h_peniche_imgcont .swiper-button-next svg, .swiper-button-prev svg {
    width: auto;
    height: auto;
    object-fit: none;
    transform-origin: center;
}

.h_peniche_imgcont .swiper-button-next.swiper-button-disabled, .h_peniche_imgcont .swiper-button-prev.swiper-button-disabled {
    opacity: 0;
    pointer-events: all;
}

.h_rootop_infocont {
    color: var(--greydark);
    font-size: 16px;
}

.h_peniche_nom h3 {
    font-weight: bold;
    font-size: 1.375rem;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.h_peniche_infosupin {
    display: flex;
    overflow: hidden;
    gap: 15px;
}

.h_peniche_infosup_cap {
    flex-shrink: 0;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 6px;
}

.h_peniche_infosup_vue {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
}

.h_peniche_infosup_vue svg {
    flex-shrink: 0;
}

.h_peniche_vue_text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    display: block;
    min-width: 0;
}

.h_peniche_conta:hover .h_peniche_nom h3 {
    color: var(--pink);
}

.h_privatisation_svg svg {
    height: 70px;
    width: auto;
}

.h_temoignages_slider .swiper-wrapper {
    align-items: stretch;
}

.h_temoignages_slider .swiper-slide {
    display: flex;
}

.h_temoignage_container {
    padding: 15px;
}

.h_temoignage_topfirst {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.h_temoignage_imgcont {
    width: 46px;
    height: 46px;
    position: relative;
    overflow: hidden;
    border-radius: 100px;
}

.h_temoignage_imgcont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.h_temoignage_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.swiper.h_references_logos_slider .logo_slide img {
    max-height: 75px;
    filter: grayscale(1);
    width: auto;
}

a.h_blog_card {
    width: 100%;
}

.h_blog_card_imgcont {
    position: relative;
    width: 100%;
    padding-top: 62%;
    overflow: hidden;
    border-radius: 15px 15px 0px 0px;
    flex-shrink: 0;
}

.h_blog_card_imgcont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.h_blog_card_titrecont {
    flex-grow: 1;
    display: flex;
    align-items: start;
    border: 0 solid #C9C9C9;
    border-width: 0 1px 1px;
    border-radius: 0 0 15px 15px;
    padding: 20px;
}

.h_blog_card_titrecont h3 {
    font-size: 1.375rem;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.h_blog_card:hover h3 {
    color: var(--pink);
}

.h_blog_date {
    color: var(--greydark);
    font-size: 0.875rem;
    margin-bottom: 10px;
    line-height: 1;
}

.h_blog_slider .swiper-wrapper {
    align-items: stretch;
}

.h_blog_slider .swiper-slide {
    display: flex;
    height: auto;
}

.h_blog_cardin {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.aide_peniche_image_cont {
    padding-top: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 15px;
}

.aide_peniche_image_cont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.h_villes_blocin {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    padding-top: 60%;
}

.h_villes_blocin:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--black);
    opacity: 0.2;
}

.h_villes_blocin img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.h_villes_bloca:hover .h_villes_blocin img {
    transform: scale(1.04);
}

.h_villes_blocin h3 {
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: bold;
    color: #FFFFFF;
    z-index: 1;
}

#aide_peniche h2 {
    line-height: 1.2;
}

/******************************************/
/******************************************/
/*************** PENICHES *****************/
/******************************************/
/******************************************/

.peniches_container {
    padding: 0 30px 0 30px;
}

#peniches_is_map_cont {
    height: calc(100vh - 85px);
    width: 100%;
    position: sticky;
    top: 85px;
}

#peniches_is_map_contin {
    height: 100%;
    border-bottom-left-radius: 20px;
}

.ismap_col {
    position: relative;
}

.leaflet-map-pane svg.marker_svg {
    height: 28px;
    width: auto;
}

g.marker_p path, path.marker_p {
    fill: var(--pink);
    -webkit-transition: .2s ease-in;
    -moz-transition: .2s ease-in;
    -o-transition: .2s ease-in;
    transition: all .2s ease-in;
}

path.marker_w {
    fill: var(--white);
    -webkit-transition: .2s ease-in;
    -moz-transition: .2s ease-in;
    -o-transition: .2s ease-in;
    transition: all .2s ease-in;
}

.leaflet-marker-icon.custom-marker.ison path.marker_w, .marker_svg:hover path.marker_w {
    fill: var(--pink);
}

.leaflet-marker-icon.custom-marker.ison g.marker_p path, .leaflet-marker-icon.custom-marker.ison path.marker_p, .marker_svg:hover g.marker_p path, .marker_svg:hover path.marker_p {
    fill: var(--white);
}

#peniches_is_map_contin.leaflet-container {
    font-family: "Outfit", sans-serif;
}

.leaflet-popup .leaflet-popup-content {
    width: 280px;
    margin: 0;
    overflow: hidden;
    border-radius: 15px;
    font-size: 18px;
    line-height: normal;
}

.leaflet-popup .leaflet-popup-content-wrapper, .leaflet-popup .leaflet-popup-tip {
    background: var(--white);
    color: var(--black);
    box-shadow: none;
    padding: 0;
}

.leaflet-popup .leaflet-popup-tip-container {
    display: none;
}

.popup_slider .swiper-slide {
    height: 164px;
}

.popup_info {
    padding: 20px;
}

#peniches_is_map_contin a.popup_content_a {
    color: var(--greydark);
}

#peniches_is_map_contin .popup_info_titre {
    font-weight: bold;
    font-size: 20px;
}

#peniches_is_map_contin .popup_info_titre a {
    color: var(--black);
}

#peniches_is_map_contin.leaflet-container a.leaflet-popup-close-button {
    z-index: 1;
    right: 12px;
    top: 12px;
}

.popup_info_lieu {
    font-size: 14px;
    margin-bottom: 3px;
}

.popup_info_cap {
    font-size: 14px;
    margin-top: 5px;
    flex-shrink: 0;
    white-space: nowrap;
}

.popup_info_cap svg {
    width: 12px;
    height: auto;
}

.popup_info_cap a {
    display: flex;
    align-items: center;
    gap: 6px;
}

.popup_info_vue {
    font-size: 14px;
    margin-top: 5px;
    flex: 1 1 auto;
    min-width: 0;
}

.popup_info_vue svg {
    width: 15px;
    height: auto;
    flex: none;
}

.popup_info_vue .popup_content_a {
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
}

.popup_info_vue_text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    display: block;
    min-width: 0;
}

.popup_info_more {
    display: flex;
    overflow: hidden;
    gap: 10px;
}

.popup_slider .swiper-pagination-bullet {
    background-color: var(--white);
    opacity: 1;
    width: 10px;
    height: 10px;
}

.popup_slider .swiper-pagination-bullet-active {
    background-color: var(--pink);
}

.hm_peniche_slider_next:after, .hm_peniche_slider_prev:after {
    display: none;
}

.hm_peniche_slider_next, .hm_peniche_slider_prev {
    background-color: var(--white);
    width: 40px;
    height: 40px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 0;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.leaflet-popup-content:hover .hm_peniche_slider_next, .leaflet-popup-content:hover .hm_peniche_slider_prev {
    opacity: 1;
}

.hm_peniche_slider_pagination {
    opacity: 0;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.leaflet-popup-content:hover .hm_peniche_slider_pagination {
    opacity: 1;
}

.leaflet-popup-content .swiper-button-next svg, .leaflet-popup-content .swiper-button-prev svg {
    width: auto;
    height: auto;
    object-fit: none;
    transform-origin: center;
}

.popup_slider .swiper-button-next.swiper-button-disabled, .popup_slider .swiper-button-prev.swiper-button-disabled {
    opacity: 0;
    pointer-events: all;
}

#peniches_filtres_container_in {
    display: flex;
}

.btn_plus_filtres, .btn_plus_filtres:active, .btn_plus_filtres:focus, .btn_plus_filtres:visited {
    display: inline-flex;
    padding: 10.5px 25px;
    font-weight: 400;
    gap: 10px;
}

.peniches_container.peniches_container_filtres {
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid var(--greymid);
    border-bottom: 1px solid var(--greymid);
/*
    position: sticky;
    top: 84px;
    z-index: 1029;
*/
    background-color: var(--white);
}

#peniches_mid_top {
    border-top: 1px solid var(--greymid);
}

.peniches_total_container {
    font-weight: 600;
    color: var(--black);
}

.form_select_filtre {
    font-size: 18px;
    padding: 10.5px 36px 10.5px 0px;
    border: 1px solid #D9D9D9;
}

.peniche_filtre_block_1, .peniche_filtre_block_2 {
    border-right: 0;
}

.peniche_filtre_block_2, .peniche_filtre_block_3 {
    border-left: 0;
}

.peniche_filtre_block_1, .peniche_filtre_block_2, .peniche_filtre_block_3 {
    position: relative;
}

.peniche_filtre_block_1 .form_select_filtre, .peniche_filtre_block_2 .form_select_filtre {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
    border-left: 0;
}

.peniche_filtre_block_3 .form_select_filtre {
    border-left: 0;
}

.peniche_filtre_block_1 .input-group-text, .peniche_filtre_block_2 .input-group-text, .peniche_filtre_block_3 .input-group-text {
    border: 1px solid #D9D9D9;
    border-right: 0;
    background-color: transparent;
    position: absolute;
    z-index: 1;
    height: 50px;
}

.peniche_filtre_block_1 select, .peniche_filtre_block_1 .select2-container {
    padding-left: 41px;
}

.peniche_filtre_block_2 select, .peniche_filtre_block_2 .select2-container {
    padding-left: 45px;
}

.peniche_filtre_block_3 select, .peniche_filtre_block_3 .select2-container {
    padding-left: 41px;
}

.select2-dropdown.select2_filter_cont {
    border: 1px solid #D9D9D9;
    border-radius: 10px;
}

.select2-container--default .select2-results>.select2-results__options {
    max-height: 300px;
    overflow-y: auto;
    padding: 5px;
}

.select2-container--default .select2_filter_cont .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: var(--black);
    color: white;
    border-radius: 5px;
}

.select2-container--default .select2_filter_cont .select2-results__option--selected {
    background-color: var(--pink);
    border-radius: 5px;
    color: var(--white);
}

.select2-container--default .select2_filter_cont .select2-results__option--disabled {
    display: none;
}

.peniche_filtre_block_2 .input-group-text, .peniche_filtre_block_3 .input-group-text {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
}

.peniche_filtre_block_2:before, .peniche_filtre_block_2:after {
    content: '';
    position: absolute;
    height: calc(100% - 16px);
    width: 1px;
    background-color: #CFCFCF;
    top: 8px;
}

.peniche_filtre_block_2:after {
    right: 0;
}

.peniche_filtre_block .select2-container--default .select2-selection--single {
    background-color: #fff;
    border: 1px solid #D9D9D9;
    border-radius: 10px;
    height: 50px;
}

.peniche_filtre_block.peniche_filtre_block_1 .select2-container--default .select2-selection--single {
    border-radius: 0px;
    border-right: 0;
    border-left: 0;
}

.peniche_filtre_block.peniche_filtre_block_2 .select2-container--default .select2-selection--single {
    border-radius: 0px;
    border-right: 0;
    border-left: 0;
}

.peniche_filtre_block.peniche_filtre_block_3 .select2-container--default .select2-selection--single {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-left: 0;
}

.peniche_filtre_block .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--black);
    line-height: 48px;
    padding-left: 0;
    padding-right: 30px;
}

.peniche_filtre_block .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 48px;
}

.peniche_filtre_block .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 14px;
    position: absolute;
    top: 19px;
    right: 10px;
    width: 14px;
}

.peniche_filtre_block .select2-container--default .select2-selection--single .select2-selection__arrow b {
    height: 12px;
    position: absolute;
    width: 12px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    border: 0;
    left: auto;
    top: auto;
    margin: 0;
}

.form-check-input {
    border-color: #D9D9D9;
}

.form-check-input:checked {
    background-color: var(--pink);
    border-color: var(--pink);
}

.form-check-input:focus {
    border-color: #D9D9D9;
    outline: 0;
    box-shadow: none;
}

.form-check-input:checked:focus {
    border-color: var(--pink);
}

.form-select:focus {
    border-color: #D9D9D9;
    outline: 0;
    box-shadow: none;
}

.heading_filtres_counter {
    background-color: var(--pink);
    color: var(--white);
    min-width: 20px;
    font-size: 12px;
    font-weight: bold;
    min-height: 20px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    border-radius: 100px;
    margin-left: 6px;
    display: none;
}

.heading_filtres_counter.ison {
    display: flex;
}

.modal-content {
    border-radius: 15px;
    border: 0;
    background-color: var(--white);
}

#modal_filtres .modal-content {
  display: flex;
  flex-direction: column;
  height: 80vh;
}

#modal_filtres .modal-header, #modal_filtres .modal-footer {
  position: sticky;
  z-index: 2;
  background: white;
}

#modal_filtres .modal-header {
  top: 0;
  border-bottom: 1px solid #dee2e6;
}

#modal_filtres .modal-footer {
  bottom: 0;
  border-top: 1px solid #dee2e6;
}

#modal_filtres .modal-body {
    overflow-y: auto;
    flex-grow: 1;
    padding-bottom: 0;
    padding-top: 0;
}

.acc_body_quartiers, .acc_body_equipements, .acc_body_evenements {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.toggle-capacite-container {
    display: grid;
    grid-template-rows: repeat(3, auto);
    grid-auto-flow: column;
    gap: 10px;
}

.modal-title {
    color: var(--black);
    font-size: 1.25rem;
}

.modal_subtitle {
    color: #888888;
    font-size: 1rem;
    font-weight: 400;
}

.modal-header .btn-close {
    font-size: 14px;
}

#accordionFiltres .accordion-item {
    color: var(--black);
    border-left: 0;
    border-right: 0;
    border-radius: 0;
}

#accordionFiltres .accordion-button:focus {
    box-shadow: none;
}

#accordionFiltres .accordion-item:first-of-type {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top: 0;
}

#accordionFiltres .accordion-item:last-of-type {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 0;
}

#accordionFiltres .accordion-button {
/*    padding: 20px 0;*/
    padding: 20px 0 10px 0;
    font-size: 18px;
    font-weight: 500;
    pointer-events: none;
}

#accordionFiltres .accordion-button:not(.collapsed) {
    color: var(--black);
    background-color: var(--white);
/*    box-shadow: inset 0 -1px 0 var(--greymid);*/
    box-shadow: none;
}

#accordionFiltres .accordion-button::after {
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 14px;
    display: none;
}

#accordionFiltres .accordion-body {
    padding: 15px 0;
    font-size: 17px;
}

#accordionFiltres .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    transform: rotate(180deg);
    display: none;
}

.btn_plus_filtres {
    position: relative;
}

.btn_plus_filtres_nb {
    position: absolute;
    right: -6px;
    top: -6px;
    background-color: var(--black);
    color: var(--white);
    width: 20px;
    height: 20px;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    border-radius: 100px;
}

.peniche_tag {
    position: absolute;
    z-index: 2;
    background-color: var(--pink);
    color: var(--white);
    top: 15px;
    left: 15px;
    font-size: 14px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 5px;
}

.toggle_map {
    position: sticky;
    margin-top: 30px;
    bottom: 20px;
    z-index: 1028;
    text-align: center;
}

.roofmapison .toggle_map {
    position: fixed;
    left: 0;
    right: 0;
}

#toggle_map_list {
    background-color: var(--pink);
    color: var(--white);
    font-weight: 600;
    padding: 6.5px 15px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

/******************************************/
/******************************************/
/**************** peniche *****************/
/******************************************/
/******************************************/

.ariane_container {
    color: var(--black);
    font-weight: 500;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 5px;
}

.ariane_container a {
    color: var(--black);
}

.peniche_top_infoscont {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 30px;
}

.peniche_galerie_imgcont_1 {
    position: relative;
    height: 100%;
    border-radius: 15px 0px 0px 15px;
    overflow: hidden;
    background-color: var(--greylight);
}

.peniche_galerie_imgcont_1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.peniche_top_infos {
    display: flex;
    align-items: center;
    gap: 6px;
}

.peniche_top_info_vue {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
}

.peniche_top_info_vue_in {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    display: block;
    min-width: 0;
}

.peniche_top_info_vue svg {
    flex-shrink: 0;
}

.peniche_top_info_cap {
    flex-shrink: 0;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 6px;
}

.peniche_galerie_imgcont {
    position: relative;
    padding-top: 76.5%;
    overflow: hidden;
    background-color: var(--greylight);
    width: 100%;
}

.peniche_galerie_imgcontsmall_1 {
    border-radius: 0px 15px 0px 0px;
}

.peniche_galerie_imgcontsmall_3 {
    border-radius: 0px 0px 15px 0px;
}

.col_peniche_galerie_0, .col_peniche_galerie_1 {
    padding-bottom: calc(1.5rem * 0.5);
}

.col_peniche_galerie_3 {
    position: relative;
}

.peniche_galerie_imgcont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.peniche_galerie_btncont {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translate(-50%, 0%);
    width: max-content;
}

.peniche_top_info_cap svg {
    width: 16px;
    height: auto;
}

.peniche_top_info_vue svg {
    width: 18px;
    height: auto;
}

.peniche_top_adresse {
    display: flex;
    align-items: center;
    gap: 6px;
}

.peniche_top_adresse svg {
    height: auto;
    width: 13px;
}

.peniche_service_cont {
    gap: 15px;
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.peniche_service_svgcont {
    height: 28px;
    width: 28px;
    display: flex;
}

.table_capacite {
    border: 1px solid var(--greymid);
    border-radius: 15px;
}

.table_capacite_inner .container-fluid {
    border-bottom: 1px solid var(--greymid);
}

.table_capacite_inner > .row:last-of-type > .col-12 > .container-fluid {
    border: 0;
}

.table_capacite_header {
    padding-top: 25px;
    padding-bottom: 25px;
}

.table_capacite_row {
    padding-top: 15px;
    padding-bottom: 15px;
    align-items: center;
}

.peniche_formule_cont {
    border: 1px solid var(--greymid);
    border-radius: 15px;
    padding: 15px;
    margin-bottom: 20px;
}

.peniche_info_mapcont {
    padding-top: 70%;
    border-radius: 15px;
    overflow: hidden;
    position: relative;
}

.peniche_info_map {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.peniche_acces_solo {
    display: flex;
    align-items: center;
    gap: 8px;
}

.peniche_horaires_cont {
    background-color: var(--greylight);
    border-radius: 15px;
}

.peniche_horaires_row {
    padding: 15px;
    border-bottom: 1px solid var(--greymid);
    line-height: 1;
}

.peniche_horaires_row:last-of-type {
    border-bottom: 0;
}

.col_privatisation {
    position: relative;
}

.bloc_privatisation_cont {
    position: sticky;
    top: 115px;
    margin-left: 15px;
    border: 1px solid var(--pink);
    background-color: var(--white);
    padding: 20px;
    border-radius: 15px;
}

.bloc_privatisation_header {
    border-bottom: 1px solid var(--greymid);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.bloc_privatisation_check {
    display: flex;
    align-items: center;
    gap: 8px;
}

.bloc_privatisation_check_modal {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1rem;
    font-weight: 400;
    color: #8a8a8a;
}

.form-label {
    margin-bottom: 6px;
    font-weight: 500;
    color: var(--black);
}

.form-label .required {
    color: var(--pink);
}

.mob_privatisation_container {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: var(--white);
    border-top: 1px solid var(--greymid);
    padding: 12px 0;
    z-index: 2;
}

.peniche_photos_slidercont {
    position: relative;
    width: 100%;
    padding-top: 62%;
    overflow: hidden;
    border-radius: 15px;
}

.peniche_photos_slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.peniche_photos_slidercont .peniche_photos_slide_a {
    height: 100%;
    display: block;
}

.peniche_photos_slidercont .peniche_photos_slide_imgcont {
    height: 100%;
}

.peniche_photos_slidercont .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.peniche_photos_slidercont .swiper-pagination-bullet {
    background-color: var(--white);
    opacity: 1;
    width: 10px;
    height: 10px;
}

.peniche_photos_slidercont .swiper-pagination-bullet-active {
    background-color: var(--pink);
}

.fancybox__caption {
    display: none;
}

/******************************************/
/******************************************/
/******************* BLOG *****************/
/******************************************/
/******************************************/

.pagination {
    gap: 10px;
    margin-bottom: 0px;
    margin-top: 10px;
}

.page-item .page-link, .page-item:first-child .page-link, .page-item:last-child .page-link {
    width: 40px;
    height: 40px;
    border-radius: 100px;
    color: var(--black);
    border: 0;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.page-item.active>.page-link, .page-item .page-link.active {
    color: var(--white);
    background-color: var(--pink);
}

.page-link:focus {
    box-shadow: none;
}

.blog_auteur_infos {
    display: flex;
    align-items: center;
    gap: 15px;
}

.blog_auteur_imgcont img {
    width: 40px;
    height: 40px;
    border-radius: 100px;
}

.post_header_img {
    position: relative;
    width: 100%;
    padding-top: 75%;
    overflow: hidden;
    border-radius: 15px;
}

.post_header_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.post_contenu_singleimgcont {
    position: relative;
    width: 100%;
    padding-top: 50%;
    overflow: hidden;
    border-radius: 15px;
}

.post_contenu_singleimgcont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.post_separateur {
    width: 100%;
    height: 1px;
    background-color: var(--greymid);
}

.post_contenu_slider_imgcont {
    position: relative;
    width: 100%;
    padding-top: 50%;
    overflow: hidden;
}

.post_contenu_slider_imgcont .swiper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.post_contenu_slider_imgcont .swiper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.post_contenu_slider_imgcont .swiper-pagination-bullet {
    background-color: var(--white);
    opacity: 1;
    width: 10px;
    height: 10px;
}

.post_contenu_slider_imgcont .swiper-pagination-bullet-active {
    background-color: var(--pink);
}

.post_contenu_slider_next:after, .post_contenu_slider_prev:after {
    display: none;
}

.post_contenu_slider_next, .post_contenu_slider_prev {
    background-color: var(--white);
    width: 40px;
    height: 40px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 0;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.post_contenu_slider_imgcont:hover .post_contenu_slider_next, .post_contenu_slider_imgcont:hover .post_contenu_slider_prev {
    opacity: 0.7;
}

.post_contenu_slider_imgcont .post_contenu_slider_next:hover, .post_contenu_slider_imgcont .post_contenu_slider_prev:hover {
    opacity: 1;
}

.post_contenu_slider_imgcont .swiper-button-next svg, .swiper-button-prev svg {
    width: auto;
    height: auto;
    object-fit: none;
    transform-origin: center;
}

.post_contenu_slider_imgcont .swiper-button-next.swiper-button-disabled, .post_contenu_slider_imgcont .swiper-button-prev.swiper-button-disabled {
    opacity: 0;
}

.h_blog_intro {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--greydark);
}

.h_blog_card_sugg h3 {
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 20px;
    right: 20px;
    color: var(--white);
}

.h_blog_card_sugg .h_blog_card_imgcont:after {
    content: '';
    position: absolute;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    background: linear-gradient(360deg, rgba(34, 34, 34, 0.6) 0%, rgba(34, 34, 34, 0) 50%, rgba(34, 34, 34, 0) 100%);
    z-index: 1;
}

.container_post_blog img {
    border-radius: 15px;
}

h2.wp-block-heading {
    color: var(--black);
    font-size: 1.625rem;
}

@media (min-width: 992px) {
    
    h2.wp-block-heading {
        font-size: 2.5rem;
    }
    
}

/******************************************/
/******************************************/
/*************** A PROPOS *****************/
/******************************************/
/******************************************/

.apropos_header_imgcont {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    padding-top: 40%;
}

.apropos_header_imgcont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/******************************************/
/******************************************/
/**************** CONTACT *****************/
/******************************************/
/******************************************/

.contact_infos_container {
    padding-left: 48px;
}

.contact_infos_img_cont {
    position: relative;
    width: 100%;
    padding-top: 50%;
    overflow: hidden;
    border-radius: 15px;
}

.contact_infos_img_cont img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contact_infos_presta {
    display: flex;
    align-items: center;
    gap: 15px;
}

.contact_infos_presta_svg {
    width: 45px;
    text-align: center;
    flex: none;
}

.contact_infos_presta_svg svg {
    height: 35px;
    width: auto;
}

.contact_form_container {
    border: 1px solid #cfcfcf;
    border-radius: 15px;
    padding: 20px;
}

.form_select {
    border: 1px solid #D9D9D9;
    font-size: 18px;
    padding: 10.5px 32.5px 10.5px 10.5px;
    border-radius: 10px;
    color: var(--black);
}

.form_control {
    border: 1px solid #D9D9D9;
    font-size: 18px;
    padding: 10.5px;
    border-radius: 10px;
    color: var(--black);
    resize: none;
}

.input_group .form_control {
    border-right: 0;
}

.form_control::placeholder {
  color: #aaaaaa;
  opacity: 1;
}

.form_control::-webkit-input-placeholder {
  color: #aaaaaa;
}

.form_control::-moz-placeholder {
  color: #aaaaaa;
}

.form_control:-ms-input-placeholder {
  color: #aaaaaa;
}

.form_control:-moz-placeholder {
  color: #aaaaaa;
}

.input_group .input-group-text {
    background-color: var(--white);
    border-left: 0;
    color: #aaaaaa;
    font-size: 18px;
    font-weight: 400;
}

.contact_form_merci_recap ul li, .privatisation_merci_recap ul li {
    margin-bottom: 10px;
}

.page_standard .datepicker-dropdown .datepicker-picker {
    box-shadow: none;
    border: 1px solid #D6D6D6;
    border-radius: 15px;
    background-color: var(--white);
    overflow: hidden;
    color: var(--greydark);
}

.page_standard .datepicker-cell.selected, .datepicker-cell.selected:hover {
    background-color: var(--pink);
    color: #fff;
    font-weight: 600;
}

.page_standard .datepicker-controls button {
    -webkit-appearance: none;
    background-color: transparent;
    border: 0;
}

.page_standard .datepicker-header .datepicker-controls {
    padding: 4px;
    border-bottom: 1px solid #D6D6D6;
    margin-bottom: 4px;
}

.page_standard .datepicker-controls .view-switch {
    font-weight: 600;
    color: var(--black);
}

.privatisation_steps {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 20px;
}

.privatisation_step_bar {
    height: 5px;
    border-radius: 20px;
    background: #eee;
}

.privatisation_step.active .privatisation_step_bar {
    background: #39A6FF;
}

.privatisation_step_label {
    margin-top: 2px;
    font-weight: 600;
    font-size: .765rem;
    color: #cccccc;
}

.privatisation_step.active .privatisation_step_label {
    color: #39A6FF;
}

.privatisation_step.done .privatisation_step_label {
    color: #39A6FF;
    opacity: 0.35;
}

.privatisation_step.done .privatisation_step_bar {
    background: #39A6FF;
    opacity: 0.35;
}

.optional_field {
    color: #bbbbbb;
    font-size: .875rem;
    margin-left: 5px;
}

#modal_privatisation .form_select:invalid,
#modal_privatisation .form_select option[value=""],
.page_contact .form_select:invalid,
.page_contact .form_select option[value=""] {
    color: #aaaaaa;
}

.form_check_label_small {
    font-size: .925rem;
}

.form_check_label_nl {
    font-size: 18px;
}

.privatisation_recap_card {
    border: 1px solid #f0f0f0;
    border-radius: 20px;
    padding: 15px;
    background: #fafafa;
}

.privatisation_recap_title {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: bold;
    color: #a9a9a9;
}

.privatisation_recap_row {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 20px;
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
    color: #878787;
    font-weight: 400;
}

.privatisation_recap_row:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.privatisation_recap_row strong {
    text-align: right;
    color: var(--black);
    font-weight: 600;
}

.datepicker-cell.next:not(.disabled), .datepicker-cell.prev:not(.disabled) {
    color: #6c757d;
    opacity: 0.3;
}

.datepicker-cell.disabled {
    color: #6c757d;
    opacity: 0.3;
    position: relative;
}

.datepicker-cell.disabled::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 10%;
    width: 80%;
    height: 1px;
    background: #6c757d;
}

.datepicker-cell.selected, .datepicker-cell.selected:hover {
    background-color: var(--pink)!important;
}

/******************************************/
/******************************************/
/******************** FAQ *****************/
/******************************************/
/******************************************/

#faqAccordion .accordion-item {
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid var(--greymid);
}

#faqAccordion .accordion-button {
    color: var(--black);
    font-size: 18px;
    font-weight: 600;
    padding: 20px;
}

#faqAccordion .accordion-button:not(.collapsed) {
    color: var(--pink);
    background-color: var(--white);
    box-shadow: none!important;
    border-bottom: none;
}

#faqAccordion .accordion-button:focus {
    box-shadow: none;
}

#faqAccordion .accordion-button::after {
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.47799 3.46394L7.73397 0.207929C7.79931 0.14011 7.878 0.0866292 7.96511 0.0508242C8.05221 0.0150191 8.1458 -0.00230684 8.23995 -4.86371e-05C8.33429 -0.000475883 8.42777 0.0181578 8.51473 0.0547609C8.60168 0.0913641 8.68029 0.145164 8.74593 0.212934C8.81385 0.278924 8.86759 0.358146 8.90371 0.445691C8.93982 0.533236 8.95758 0.627248 8.95595 0.721936C8.95758 0.816625 8.93982 0.910637 8.90371 0.998181C8.86759 1.08573 8.81385 1.16495 8.74593 1.23094L5.33596 4.64195C5.22109 4.75901 5.08316 4.85093 4.93093 4.91194C4.78687 4.96973 4.6332 4.99961 4.47799 4.99995C4.32277 4.99961 4.16904 4.96973 4.02498 4.91194C3.87275 4.85093 3.73482 4.75901 3.61995 4.64195L0.203938 1.22294C0.137678 1.15808 0.0856638 1.08012 0.0512276 0.994031C0.0167913 0.90794 0.000738144 0.815609 0.00398636 0.722943C0.00514317 0.629459 0.0247717 0.537131 0.0618477 0.451306C0.0989237 0.365481 0.152655 0.287864 0.219929 0.222943C0.285919 0.155018 0.365172 0.101347 0.452717 0.0652285C0.540261 0.0291099 0.634274 0.0113189 0.728962 0.0129519C0.82365 0.0113189 0.917663 0.0291099 1.00521 0.0652285C1.09275 0.101347 1.17194 0.155018 1.23793 0.222943L4.47799 3.46394Z' fill='%23222222'/%3E%3C/svg%3E");
    width: 14px;
    height: 14px;
    background-size: 14px;
    background-position: center;
}

#faqAccordion .accordion-body {
    padding: 20px;
    padding-top: 10px;
    color: var(--greydark);
}


/******************************************/
/******************************************/
/******************** 404 *****************/
/******************************************/
/******************************************/

.erreur_404_img img {
    width: 120px;
    height: auto;
}

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

footer {
    border-top: 1px solid #cfcfcf;
    padding-top: 30px;
}

ul.menu-footer-liens {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.menu-footer-liens li {
    display: block;
    margin-bottom: 5px;
}

ul.menu-footer-liens li a {
    color: var(--greydark);
}

ul.menu-footer-liens li a:hover {
    color: var(--pink);
}

.footer_bottom {
    font-size: 14px;
}

.footer_bottom a {
    color: var(--greydark);
    text-decoration: underline;
}

.footer_social {
    display: flex;
    align-items: center;
    gap: 15px;
}

.footer_social_link {
    display: flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--black);
    border-radius: 100px;
}

.footer_social_link:hover {
    border-color: var(--pink);
}

.footer_social_link svg path {
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.footer_social_link:hover svg path {
    fill: var(--pink);
}



/******************************************/
/******************************************/
/************* MEDIA QUERIES **************/
/******************************************/
/******************************************/

@media (max-width: 992px) {
    
    /* NAVBAR */
    
    .navbar-brand img {
        width: 122px;
        height: auto;
    }
    
    .navbar-collapse ul.navbar-nav {
        position: absolute;
        top: 100px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }

    .navbar-collapse {
        width: 100%;
        background-color: var(--white);
        position: fixed;
        z-index: 9;
        display: block;
        visibility: hidden;
        opacity: 0;
        z-index: -1;
        top: 85px;
        left: 0;
        width: 100%;
        height: 100%;
        transition: all 0.4s;
    }

    .navbar-collapse.show {
        min-height: calc(100vh - 85px);
        visibility: visible;
        opacity: 1;
        z-index: 9;
    }
    
    #main_nav .nav-link {
        text-align: center;
    }
    
    #main_navbar .dropdown-menu {
        border: 0;
        margin-top: 5px;
        text-align: center;
    }
    
    a.nav-link.dropdown-toggle {
        margin-left: 17px;
    }
    
    /* GLOBAL */
    
    body {
        font-size: 16px;
    }
    
    .btn, .btn:visited, .btn:active, .btn:focus, .btn_pink, .btn_pink:visited, .btn_pink:active, .btn_pink:focus {
        font-size: 16px;
    }
    
    /* ACCUEIL */
    
    .h_reassurance_cont {
        padding: 0;
        background-color: transparent;
    }
    
    .h_reassurance_tit {
        font-size: 1.625rem;
    }
    
    .h_reassurance_subtit {
        display: block;
        font-size: 1rem;
        color: var(--greydark);
        font-weight: 400;
    }
    
    .h_reassurance_txt {
        display: none;
    }
    
    .h_temoignages_in {
        border-radius: 0;
    }
    
    .h_peniche_slider_next, .h_peniche_slider_prev {
        display: none;
    }
    
    .h_peniche_slider_pagination {
        opacity: 1;
    }
    
    /* PENICHES */
    
    .peniches_container {
        padding: 0 12px 0 12px;
    }
    
    .ismap_col {
        background-color: var(--greylight);
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1027;
        display: none;
    }
    
    .ismap_col.mapison {
        display: block;
        height: 100vh;
        width: 100%;
    }
    
    #peniches_is_map_cont {
        height: 100vh;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        top: 0;
        z-index: 1049;
    }
    
    .acc_body_quartiers, .acc_body_equipements, .acc_body_evenements, .toggle-capacite-container {
        display: block;
    }
    
    .h_villes_blocin h3 {
        font-size: 1.625rem;
    }
    
    .h_header_hero_btns .dropdown-item {
        font-size: 16px;
    }
    
    /* peniche SOLO */
    
    .peniche_galerie_imgcont_1 {
        padding-top: 64%;
        border-radius: 15px;
    }
    
    .peniche_top_infoscont {
        display: flex;
        flex-direction: column;
        text-align: left;
        justify-content: start;
        margin-top: 15px;
        align-items: start;
        gap: 10px;
    }
    
    .table_capacite_t1 {
        display: none;
    }
    
    .table_capacite_t2 {
        text-transform: capitalize;
    }
    
    .table_capacite {
        min-width: 500px;
    }
    
    .peniche_top_info_vue {
        align-items: baseline;
    }
    
    .peniche_top_info_vue_in {
        white-space: normal;
    }
    
    .peniche_top_info_vue svg {
        top: 2px;
        position: relative;
    }
    
    .peniche_top_info_type {
        align-items: baseline;
    }
    
    .peniche_top_info_type_in {
        white-space: normal;
    }
    
    .peniche_top_info_type svg {
        top: 2px;
        position: relative;
    }
    
    .table_capacite_cont {
        overflow-x: auto;
    }
    
    .btn_peniche_formule_cont, .btn_peniche_formule_cont:visited, .btn_peniche_formule_cont:active, .btn_peniche_formule_cont:focus {
        padding: 12px 15px;
    }
    
    /* CONTACT */
    
    .contact_infos_container {
        padding-left: 0;
    }
    
    /* BLOG */
    
    .post_contenu_slider_imgcont {
        padding-top: 64%;
    }
    
    .post_contenu_slider_next, .post_contenu_slider_prev {
        display: none;
    }
    
    /* A PROPOS */
    
    .apropos_header_imgcont {
        padding-top: 65%;
    }
    
    /* FOOTER */
    
    .footer_social {
        justify-content: center;
    }
    
}
/* ===== Type de péniche (Navigante / À quai) =====
   Calque sur les styles "vue" de TTMT. Picto type = 24x24 (carré),
   dimensionne explicitement pour rester dans l'echelle des autres pictos. */

/* Cartes (accueil, liste ville, suggestions single) */
.h_peniche_infosup_type {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
}

.h_peniche_infosup_type svg {
    flex-shrink: 0;
}

.h_peniche_type_text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    display: block;
    min-width: 0;
}

/* Fiche péniche : bloc top infos */
.peniche_top_info_type {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
}

.peniche_top_info_type_in {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    display: block;
    min-width: 0;
}

.peniche_top_info_type svg {
    flex-shrink: 0;
    width: 18px;
    height: auto;
}

/* Popup carte */
.popup_info_type {
    font-size: 14px;
    margin-top: 5px;
    flex: 1 1 auto;
    min-width: 0;
}

.popup_info_type svg {
    width: 15px;
    height: auto;
    flex: none;
}

.popup_info_type .popup_content_a {
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
}

.popup_info_type_text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;
}
