/* Échec de l'agrandissement. Renvoi du contenu non agrandi.
(693,30): run-time error CSS1039: Token not allowed after unary operator: '-unnamed-character-spacing-0'
(770,26): run-time error CSS1039: Token not allowed after unary operator: '-unnamed-character-spacing-0'
(8518,24): run-time error CSS1039: Token not allowed after unary operator: '-rm-content-max'
(8560,24): run-time error CSS1039: Token not allowed after unary operator: '-rm-content-max'
(8573,24): run-time error CSS1039: Token not allowed after unary operator: '-rm-content-max'
(8597,26): run-time error CSS1039: Token not allowed after unary operator: '-rm-content-max'
(8671,34): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
body {
    padding-top: 100px;
    font-family: 'Open_Sans_regular',sans-serif;
}

.no-padding {
     padding-right: 0px; 
     padding-left: 0px;
}

.main-container {
    display: flex;
    min-height: 95vh;
    flex-direction: column;
    justify-content: space-between;
}

@font-face {
    font-family: 'Open_Sans_regular';
    src: url('/webfonts/OpenSans-Regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Lobster';
    src: url('/webfonts/lobster-regular-webfont.woff2') format('woff2'), url('/webfonts/lobster-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/webfonts/Montserrat-Regular.woff2') format('woff2'), url('/webfonts/Montserrat-Regular.woff') format('woff'), url('/webfonts/Montserrat-Regular.ttf') format('ttf');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/webfonts/Montserrat-Bold.woff2') format('woff2'), url('/webfonts/Montserrat-Bold.woff') format('woff'), url('/webfonts/Montserrat-Bold.ttf') format('ttf');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Fjalla One';
    src: url('/webfonts/FjallaOne-Regular.woff2') format('woff2'), url('/webfonts/FjallaOne-Regular.woff') format('woff'), url('/webfonts/FjallaOne-Regular.ttf') format('ttf');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-Regular.woff2') format('woff2'), url('/webfonts/Cairo-Regular.woff') format('woff'), url('/webfonts/Cairo-Regular.ttf') format('ttf'), url('/webfonts/Cairo-Regular.eot') format('eot');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-Italic.woff2') format('woff2'), url('/webfonts/Cairo-Italic.woff') format('woff'), url('/webfonts/Cairo-Italic.ttf') format('ttf'), url('/webfonts/Cairo-Italic.eot') format('eot');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-SemiBold.woff2') format('woff2'), url('/webfonts/Cairo-SemiBold.woff') format('woff'), url('/webfonts/Cairo-SemiBold.ttf') format('ttf'), url('/webfonts/Cairo-SemiBold.eot') format('eot');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-SemiBoldItalic.woff2') format('woff2'), url('/webfonts/Cairo-SemiBoldItalic.woff') format('woff'), url('/webfonts/Cairo-SemiBoldItalic.ttf') format('ttf'), url('/webfonts/Cairo-SemiBoldItalic.eot') format('eot');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-Bold.woff2') format('woff2'), url('/webfonts/Cairo-Bold.woff') format('woff'), url('/webfonts/Cairo-Bold.ttf') format('ttf'), url('/webfonts/Cairo-Bold.eot') format('eot');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-BoldItalic.woff2') format('woff2'), url('/webfonts/Cairo-BoldItalic.woff') format('woff'), url('/webfonts/Cairo-BoldItalic.ttf') format('ttf'), url('/webfonts/Cairo-BoldItalic.eot') format('eot');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-Black.woff2') format('woff2'), url('/webfonts/Cairo-Black.woff') format('woff'), url('/webfonts/Cairo-Black.ttf') format('ttf'), url('/webfonts/Cairo-Black.eot') format('eot');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-ExtraLight.woff2') format('woff2'), url('/webfonts/Cairo-ExtraLight.woff') format('woff'), url('/webfonts/Cairo-ExtraLight.ttf') format('ttf'), url('/webfonts/Cairo-ExtraLight.eot') format('eot');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-ExtraLightItalic.woff2') format('woff2'), url('/webfonts/Cairo-ExtraLightItalic.woff') format('woff'), url('/webfonts/Cairo-ExtraLightItalic.ttf') format('ttf'), url('/webfonts/Cairo-ExtraLightItalic.eot') format('eot');
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-Light.woff2') format('woff2'), url('/webfonts/Cairo-Light.woff') format('woff'), url('/webfonts/Cairo-Light.ttf') format('ttf'), url('/webfonts/Cairo-Light.eot') format('eot');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Cairo';
    src: url('/webfonts/Cairo-LightItalic.woff2') format('woff2'), url('/webfonts/Cairo-LightItalic.woff') format('woff'), url('/webfonts/Cairo-LightItalic.ttf') format('ttf'), url('/webfonts/Cairo-LightItalic.eot') format('eot');
    font-weight: 300;
    font-style: italic;
}

.xx-small-font {
    font-size: 0.56rem;
}
.xx-large-font {
    font-size: 2rem;
}
p {
    font-family: 'Open_Sans_regular',sans-serif;
}

#footer-news, #footer-address {
    font-family: 'Open_Sans_regular',sans-serif;
}

nav.navbar, div.search_panel, .fiche {
    font-family: 'Open_Sans_regular',sans-serif;
}

a.btn, span.badge {
    font-family: 'Open_Sans_regular',sans-serif;
}

h1, h2, h3, h4, h5, h6, th {
    font-family: 'Open_Sans_regular',sans-serif;
}

.img-igd, .id-fiche {
    font-family: 'Open_Sans_regular',sans-serif;
}

@media screen{
    .screen-invisible{
        display:none;
    }
}

@media print {
    a[href]:after { content: none !important; }
    img[src]:after { content: none !important; }

    .print-invisible {
        display:none;
    }

}


a.image-link:visited, a.acte-link:visited {
    color:#777;
}

a.popovers_gq {
    color: black;
}

.sidebar{
	border-left:2px solid #ebebeb;
	padding-left:21px;
}

/* Content list */
    ul .sidebar-list{
	margin:0px; 
	padding:0px 0px 13px 0px; 
	list-style-type:none;
}
ul.sidebar-list li{
	padding-bottom:4px;
	line-height:26px;
}
ul.sidebar-list li a{
	color:#000000;
	text-decoration:none;
}
ul.sidebar-list li a:hover{
	text-decoration:underline;
}

li .content_block img{
	padding:0px;
	margin:0px;
	float:left;
}

li .content_block{
	margin:15px 0px 22px 0px;
	border-bottom:1px solid #ebebeb;
	float:left;
}

li .content_block h4{
	width:485px;
	margin-left:20px;
	float:left;
}

li .content_block p{
	width:485px;
	font-size:14px;
	margin-left:20px;
	float:left;
}

.pf-box-view{
	background-color:#ebebeb;
	margin-bottom:25px;
	padding:12px 12px 13px 12px;
	float:left;
}

.more-button{
	height:29px;
	font-size:16px;
	color:#3e4043;
	text-align:center;
	margin:10px 0px 20px 0px;
	padding:6px 20px 0px 20px;
	background-color:#ebebeb;
	float:right;
}
.more-button a, .more-button a:visited{
	text-decoration:none;
	color:#3e4043;
}

.feedback-box {
    background-color: #F0EAE1;
    box-shadow: inset 0px 3px 6px #00000029;
    padding: 12px;
    border-radius: 11px;
    margin-bottom: 20px;
    height: 265px;
    width: 366px;
    margin-left: auto;
    margin-right: auto;
}

.feedback {
    text-align: center;
    font-style: italic;
    padding-top: 15px;
    color: #51433a;
    font-size: 15px;
}

.person {
    text-align: center;
    font-style: italic;
    color: #51433a;
    font-size: 15px;
}

.feedback-box > i {
    border: 1px solid #eceef0;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 20px;
    text-align: center;
    border-radius: 50px;
    margin-bottom: 15px;
    background-color: #fff;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background: #C44931;
}

.owl-theme .owl-dots .owl-dot span {
    background: white;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
}

div.outil {
    border: 12px solid #ebebeb;
    padding: 1em;
    font-weight: bold;
    font-size: medium;
    border-radius: 8px;
}

.red-button {
    background-color: #561414;
    border-color: #561414;
    color: #fff;
    width: 480px;
    margin-bottom: 8px;
}
    .red-button:hover {
        color: #fff;
        filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.4));
    }

.red-button-small {
    color: #fff;
    background-color: #561414;
    border-color: #561414;
    margin-bottom: 20px;
}

    .red-button-small:hover {
        color: #fff;
        filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.4));
    }

.red-button-small-inverted {
    color: #561414;
    background-color: #fff;
    border-color: #561414;
    margin-bottom: 20px;
}
    .red-button-small-inverted:hover {
        color: #561414;
        filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.4));
    }

.lafrance-image {
    height: 270px;
}

.modal-image {
    width: 75%;
}

.registres-drouin-image {
    height: 330px;
}

.necrologe-images{
    height: 240px;
}

.img-thumbnail2 {
    width: 540px;
    height: 540px;
    overflow: hidden;
}

.img-thumbnail2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.img-thumbnail3 {
    width: 400px;
    height: 300px;
    overflow: hidden;
}

.img-thumbnail3 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.img-thumbnail4 {
    width: 400px;
    height: 230px;
    overflow: hidden;
}

.img-thumbnail4 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

div.outil p.outil{
    font-size: x-large;
}

.padding-right-unset {
    padding-right: unset !important;
}

.highlighted-search-term {
    background-color: yellow;
}

    .modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}

/* Modal Content/Box */
.modal-content {
    background-color: #fefefe;
    margin: 5% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 70vw;
}

/* The Close Button */
.close2 {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    display: flex;
    justify-content: right;
}

.close2:hover,
.close2:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.image-link:hover{
    cursor: pointer;
}

.form-group input[type=text],
.form-group select {
    color: black;
    font-weight: bold;
    font-size: larger;
    font-family: 'Open_Sans_regular',sans-serif;
}


.achat .form-group select {
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
    text-indent: 0px;
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
}

::-ms-input-placeholder { /* Microsoft Edge */
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
}

::placeholder { /* Most modern browsers support this now. */
    font-weight: normal;
    font-size: initial;
    font-family: 'Open_Sans_regular',sans-serif;
}

@media (min-width: 768px) {
    .adsbygoogle{
        width:400px;
    }
}

@media (min-width: 992px) {
    .adsbygoogle{
        width:728px;
    }

}
@media (min-width: 1200px) {
    .adsbygoogle{
        width:728px;
    }
}

@media (max-width: 992px) {
    .red-button {
        width: 330px;
    }
    .modal-content {
        width: 95vw;
        margin: 15% auto;
    }
    .login-panel {
        width: 100% !important;
    }
}



@media (max-width: 991px) and (min-width: 200px)  {
    .navbar-nav > li > a {
        font-size: small;
        padding-left: 4px;
        padding-right: 4px;
    }
}

.offre-container {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.offre-texte-container {
    width: 62%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.offre-texte-wrapper {
    color: #544339;
    text-align: center;
    width: 440px;
}

.offre-texte-main {
    font-size: 25px;
    font-weight: 500;
}

.offre-texte-sub {
    font-size: 17px;
    margin-top: 15px;
}

.spacing-top-bottom {
    margin-top: 10px;
    margin-bottom: 10px;
}

/* PAGE ABONNEMENTS */

.disclaimer-abonnement {
    line-height: 10px;
    margin-left: 16px;
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
}

@media (max-width: 992px) {
    .disclaimer-abonnement {
        line-height: 10px;
        margin-left: 20px;
        margin-bottom: 20px;
    }
    .price-table-1 {
        flex-direction: column;
    }
}

.hvr-grow {
    display: inline-block;
    vertical-align: middle;
    transform: translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    transition-duration: 0.3s;
    transition-property: transform;
}

    .hvr-grow:hover,
    .hvr-grow:focus,
    .hvr-grow:active {
        transform: scale(1.1);
    }

.abo-section-1 {
    background-color: #F8F4EE;
}

.abo-section-2 {
    background-color: #F8F4EE;
    padding-bottom: 55px;
}

.abo-section-3 {
    background-color: #F8F4EE;
    padding-bottom: 60px;
}

.abo-section-4 {
    padding-top: 0px;
}

.abo-section-5 {
    padding-top: 80px;
}

.header-image {
    background-image: url('/Pages/images/abonnement/abo-image.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    height: 315px;
}

.custom-quote {
    font-size: 38px;
    color: #C44931;
    font-weight: 900;
    font-family: sans-serif;
}

#price-table-1 {
    display: flex;
    flex-direction: row;
    margin-top: 80px;
}

.price-table-1 {
    display: flex;
    align-items: center;
    justify-content: center;
}

    .price-table-1 > div {
        display: inline-block;
        border: 3px solid #eceef0;
        padding-right: 30px;
        padding-left: 30px;
        padding-top: 23px;
        border-radius: 10px;
        height: 525px;
        text-align: center;
        width: 324px;
        margin: 15px;
        margin-bottom: 5px;
    }

        .price-table-1 > div:hover {
            box-shadow: 0 10px 30px 0 rgba(0,0,0,0.15)
        }

    .price-table-1 .price {
        font-size: 45px;
        font-weight: 700;
        border-top: 2px solid rgba(81, 66, 58, 0.13);
        border-bottom: 2px solid rgba(81, 66, 58, 0.13);
        padding: 30px 0;
        margin: 20px 0;
        margin-bottom: 40px;
        letter-spacing: var(--unnamed-character-spacing-0);
        text-align: center;
        font-family: sans-serif !important;
        letter-spacing: 0px;
        color: #C44931;
    }

    .price-table-1 .free .price {
        font-size: 60px;
        font-weight: 300;
        border-top: 1px solid #eceef0;
        border-bottom: 1px solid #eceef0;
        padding: 20px 0;
        margin: 20px 0
    }

    .price-table-1 .price > small {
        font-size: 16px;
        font-weight: 600;
    }

    .price-table-1 ul {
        list-style-type: none;
        margin: 0 0 40px 0;
        padding: 0
    }

        .price-table-1 ul li {
            margin: 10px 0
        }


    .price-table-1 .pro1 {
        border-color: #C44931;
        background-color: #F8F7F4;
    }

    .price-table-1 .free .hd {
        min-height: 70px;
    }

.yearly-price {
    font-size: 19px;
}

.prices-container {
    display: flex;
    flex-direction: column;
}

.price-suffix {
    font-size: 19px;
    color: #C44931;
    font-family: 'Open_Sans_regular',sans-serif !important;
}

.price-subtext {
    min-height: 50px;
    font-weight: 300;
    line-height: 22px;
}

.prices-renews-disclaimer {
    text-align: center;
    font-style: italic;
    font-size: 11px;
    color: #51433a;
}

.sub-text {
    text-align: center;
    margin-right: 10px;
}

.abonnement-title {
    font-family: 'Open_Sans_regular',sans-serif !important;
    color: #C44931;
    letter-spacing: var(--unnamed-character-spacing-0);
    font-size: 23px;
    font-weight: bold;
    letter-spacing: 0px;
}

.abo {
    color: #51423a;
    font-size: 19px;
}

.purcent-off-price {
    background-color: #C44931;
    color: white;
    position: absolute;
    top: -17px;
    left: 114px;
    width: 100px;
    border-radius: 7px;
    font-size: 22px;
}

.btn-sabonner {
    background-color: #C44931;
    border-color: #C44931;
    color: white;
    width: 210px;
    height: 47px;
    border-radius: 15px;
    padding-top: 4px;
    font-size: 22px;
    font-family: 'Open_Sans_regular',sans-serif !important;
}

.btn-sabonner:hover {
    background-color: white;
    border-color: #C44931;
    border: 2px solid #C44931;
    color: #C44931;
}

.btn-acheter {
    background-color: white;
    border-color: #C44931;
    border: 2px solid #C44931;
    color: #C44931;
}

    .btn-acheter:hover {
        background-color: #C44931;
        border-color: #C44931;
        color: white;
    }



.acc-hd {
    font-size: 16px;
    cursor: pointer;
    position: relative;
    background-color: rgba(0,0,0,0.05);
    border: 1px solid rgba(0,0,0,0.05);
    padding: 10px 20px;
    color: #1f2229;
    border-radius: 4px;
    margin-top: 5px;
}

.acc-block {
    margin-bottom: 5px
}

.acc-hd-selected {
    font-size: 16px;
    cursor: pointer;
    position: relative;
    padding: 10px 20px;
    background-color: #1f2229;
    color: #fff;
    border-radius: 4px 4px 0 0;
    margin-top: 5px;
}

.acc-content {
    padding: 20px;
    border: 1px solid rgba(0,0,0,0.05);
    background-color: rgba(0,0,0,0.02);
    border-radius: 0 0 4px 4px;
    height: 115px;
    margin-top: 0px;
    margin-bottom: 0px;
}


.accordionLink,
.accordionLink:hover,
.accordionLink:focus,
.accordionLink:active {
    text-decoration: none;
    color: #1f2229;
}

.acc-hd-selected .accordionLink,
.acc-hd-selected .accordionLink:hover,
.acc-hd-selected .accordionLink:focus,
.acc-hd-selected .accordionLink:active {
    text-decoration: none;
    color: #fff;
}

.mr-b-40 {
    margin-bottom: 40px
}

.section-orange {
    height: 75vh;
    min-height: 75vh;
    background-color: rgba(205, 64, 49, 0.9);
    display: flex;
    flex-direction: row;
}

.section-orange-left {
    width: 50%;
    height: 100%;
    background: url('/Pages/images/pageabonnement2-07.png') no-repeat center;
    background-size: cover;
}

.section-orange-right {
    width: 50%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 145px;
}

.section-orange-zonetexte {
    color: white;
    border-top: 2px solid white;
    border-bottom: 2px solid white;
    width: 730px;
    padding-left: 15px;
    padding-right: 15px;
    font-family: 'Cairo',sans-serif;
}

.section-orange-titre {
    font-size: 38px;
    font-weight: bold;
    line-height: 1.1;
    margin-top: 25px;
    padding-bottom: 20px;
    overflow-wrap: break-word;
}

.section-orange-texte {
    font-size: 26px;
    overflow-wrap: break-word;
}

.section-decouverte {
    display: flex;
    flex-direction: row;
    min-height: 75vh;
}

.section-decouverte-left {
    background: url('/Pages/images/lys-right.png') no-repeat left;
    background-size: contain;
    width: 20%;
}

.section-decouverte-right {
    background: url('/Pages/images/lys-left.png') no-repeat right;
    background-size: contain;
    width: 20%;
}

.section-decouverte-center {
    width: 60%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.section-decouverte-zonetexte {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.section-decouverte-titre {
    width: 80%;
    font-size: 38px;
    font-weight: bold;
    line-height: 1.1;
    margin-top: 50px;
    padding-bottom: 50px;
    color: #c44931;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    overflow-wrap: break-word;
}

.section-decouverte-texte {
    font-size: 25px;
    line-height: 1.3;
    padding-bottom: 80px;
    color: #c44931;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    overflow-wrap: break-word;
}

.btn.section-decouverte-button {
    background-color: #C44931;
    color: white !important;
    font-size: 30px;
    border-radius: 2.25rem;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    padding-bottom: 10px;
}

.btn.section-decouverte-button:hover {
    background-color: white;
    border-color: #C44931;
    border: 2px solid #C44931;
    color: #C44931 !important;
}

.price-table-title {
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: linear-gradient(to bottom, #e8e8e8 0%, #FFFFFF 100%);
}

.price-table-title-text {
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-weight: bold;
    font-size: 35px;
}

.commentaires-title {
    max-width: unset;
}

.questions-title h3 {
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-size: 35px;
    color: #561414;
    padding-bottom: 35px;
}

@media (max-width: 992px) {
    .section-orange-zonetexte {
        width: 100%;
    }

    .section-orange-right {
        margin-right: unset;
    }

    .section-orange-titre {
        font-size: 32px;
    }

    .section-orange-texte {
        font-size: 20px;
    }
}

@media (max-width: 768px) {
    .section-orange-left {
        display: none;
    }

    .section-orange-right {
        width: 100%;
        padding-right: 15px;
        padding-left: 15px;
    }

    .section-decouverte-titre {
        font-size: 25px;
    }

    .section-decouverte-texte {
        padding-bottom: 35px;
        font-size: 19px;
    }

    .btn.section-decouverte-button {
        font-size: 20px;
    }
}

@media (max-width: 600px) {
    .section-decouverte-left {
        display: none;
    }

    .section-decouverte-right {
        display: none;
    }

    .section-decouverte-center {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    .section-decouverte {
        height: 60vh;
    }

    .commentaires-title {
        padding-top: 80px;
        padding-right: 15px;
        padding-left: 15px;
    }

    .commentaires-title .title {
        font-size: 35px !important;
    }
}

    /* Page de connexion */
    .connexion-password-box {
        margin-bottom: 5px;
    }

    .connexion-right-section {
        display: flex;
    }

    .connexion-button {
        margin-bottom: unset;
        margin-right: 20px;
    }

    .section-text-center {
        text-align: center;
    }

    .connexion-page-subtitle {
        font-size: 20px;
        margin-bottom: 50px;
    }

    .log-in-url {
        text-decoration: underline;
    }

    /* Confirmation D'abonnement */
    .subscription-confirmation-container {
        display: flex;
        align-items: center;
        text-align: center;
    }

        .subscription-confirmation-container h1 {
            margin-bottom: 40px;
        }

        .subscription-confirmation-container h4 {
            margin-bottom: 40px;
        }

    /* Création de compte */
    .create-user-button {
        color: #fff;
        float: left;
        background-color: #561414;
        border-color: #561414;
        margin-left: -5px;
    }

    .container .row-padding {
        padding-left: 15px;
    }

    .hidden-element {
        display: none !important;
    }

    .element-float-left {
        float: left;
    }

    .pr-2.pb-3.element-float-left label {
        margin-top: .5rem;
    }

    .create-user-container {
        width: 100%;
    }

    .create-user-form {
        display: flex;
    }

    .create-user-left {
        width: 50%;
        border-right: 1px solid black;
    }

    .create-user-left input {
        max-width: 300px;
    }

    .create-user-left-title h3 {
        font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
        font-size: 30px;
        padding-bottom: 25px;
        padding-top: 15px;
    }

    .create-user-right {
        width: 50%;
        border-left: 1px solid black;
        display: flex;
        flex-direction:column;
        align-items: center;
    }

    .create-user-right-title h3 {
        font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
        font-size: 30px;
        padding-bottom: 25px;
        padding-top: 15px;
    }

    .create-user-right a {
        font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
        font-weight: 400;
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 10px;
    }

    @media (max-width: 768px) {
        .create-user-form {
            flex-direction: column;
        }

        .create-user-right {
            width: 100%;
            border-left: none;
            margin-top: 25px;
            align-items: unset;
        }

        .create-user-left {
            width: 100%;
            border-right: none;
        }
    }

    /* Page outils */
    .outils-image {
        width: 100%;
        margin-top: 35px;
    }

        .outils-image img {
            display: block;
            width: 100%;
        }

    .outils-category-title {
        font-weight: bold;
        padding-top: 30px;
        padding-bottom: 30px;
        padding-left: 10px;
        font-weight: bold;
    }

    .outils-category-title-container {
        margin-top: 20px;
        margin-bottom: 20px;
        margin-left: -10px;
        background-color: #ebebeb;
    }

    .more-info-button-container {
        text-align: right;
    }

    .button-fixed-size {
        width: 145px;
    }

    .button-fixed-size-larger {
        width: 175px;
    }

    @media (max-width: 992px) {
        .button-container .more-info-button-container {
            text-align: left
        }
    }

    /* Pages d'outils spécifiques */

    .grey-text {
        color: #495057;
    }

        .grey-text:hover {
            color: #495057 !important;
        }

    .nav-item.grey-text .nav-link {
        color: #495057;
    }

        .nav-item.grey-text .nav-link:hover {
            color: #495057;
        }

    .ressemblance-flex-box {
        display: flex;
        padding-left: unset;
    }

    .notice {
        position: relative;
        display: inline-block;
    }

        .notice .icon {
            display: inline-block;
            position: relative;
            transition: all .15s ease;
        }

        .notice .content {
            display: none;
            position: absolute;
            top: 85%;
            left: calc(-175px - 8px);
            width: 450px;
            padding: 10px 12px;
            font-size: 13px;
            line-height: 1.35em;
            color: black;
            background-color: white;
            border-radius: 2px;
            box-shadow: 0 0 10px rgba(0,0,0,.25);
            z-index: 100;
        }

        .notice:hover .icon {
            color: #333;
        }

        .notice:hover .content {
            display: block;
        }

    .ressemblance-checkbox {
        padding-left: 10px;
    }

    .outils-search-buttons-container {
        max-width: 435px;
    }

        .outils-search-buttons-container .btn-outline-secondary {
            height: 48px;
        }

    .margin-top-1rem {
        margin-top: 1rem;
    }

    .dirviewer-tooltipbox {
        margin-top: 50px;
    }

    /* NAVBAR AND FOOTER */
    .titreDansMenu {
        margin-left: 12px;
        color: rgba(0,0,0,.5);
    }

    .custom-toggler .navbar-toggler-icon {
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
    }

    .custom-toggler .navbar-toggler {
        border-color: rgb(255,255,255);
    }

    .dropdown-menu-tools {
        max-height: 91vh;
        overflow-y: auto;
    }

    .tools-dropdown-menu {
        width: 340px;
        padding: 0;
        margin-top: 0;
        border: 1px solid #d8d8d8;
        border-radius: 0;
        background: #f3f3f3;
        box-shadow: 0 10px 24px rgba(0,0,0,.16);
        overflow: hidden;
    }

        .tools-dropdown-menu .tools-dropdown-link,
        .tools-dropdown-menu .tools-accordion-toggle {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            min-height: 48px;
            padding: 10px 20px;
            font-size: 15px;
            line-height: 1.35;
            color: #555 !important;
            background: #f3f3f3;
            border: 0;
            border-radius: 0;
            text-decoration: none !important;
            white-space: normal;
            text-align: left;
        }

            .tools-dropdown-menu .tools-dropdown-link:hover,
            .tools-dropdown-menu .tools-accordion-toggle:hover,
            .tools-dropdown-menu .tools-dropdown-link:focus,
            .tools-dropdown-menu .tools-accordion-toggle:focus {
                background: #ebebeb;
                color: #561414 !important;
                outline: none;
            }

    .tools-dropdown-separator {
        margin: 0 20px;
        border-top: 1px solid #d4d4d4;
    }

    .tools-accordion-toggle {
        cursor: pointer;
        border-top: 1px solid #dcdcdc;
    }

    .tools-accordion-icon {
        flex: 0 0 auto;
        margin-left: 12px;
        font-size: 18px;
        line-height: 1;
        color: #666;
        transition: transform .18s ease;
    }

    .tools-accordion-toggle.is-open .tools-accordion-icon {
        transform: rotate(90deg);
    }

    .tools-accordion-panel {
        display: none;
        background: #f3f3f3;
    }

        .tools-accordion-panel.is-open {
            display: block;
        }

        .tools-accordion-panel .tools-dropdown-link {
            min-height: 42px;
            padding: 8px 20px 8px 38px;
            font-weight: 400;
            border-top: 1px solid #dddddd;
        }

    .tools-dropdown-menu .dropdown-item {
        margin: 0;
    }

    .dropdown-menu-tools.tools-dropdown-menu {
        max-height: 91vh;
        overflow-y: auto;
    }

        .dropdown-menu-tools.tools-dropdown-menu::-webkit-scrollbar {
            width: 10px;
        }

        .dropdown-menu-tools.tools-dropdown-menu::-webkit-scrollbar-thumb {
            border-radius: 10px;
            background-color: #8a8a8a;
            border: 2px solid #f3f3f3;
        }

    .dropdown-menu .dropdown-item {
        font-size: 12pt;
    }

    .navbar-lower {
        margin-top: 77px !important;
    }

    .navbar .navbar-collapse.collapse.show .navbar-last-element {
        margin-bottom: 20px !important;
    }

    .navbar .navbar-collapse.collapse.show .nav-right-side {
        border-top: 1px solid rgba(0,0,0,.1);
        margin-top: 5px;
        padding-top: 10px;
    }

    .navbar .navbar-collapse.collapse.show .btn-login {
        margin-left: -4px;
    }

    .navbar-nav .dropdown-toggle::after {
        display: none;
    }

    .navbar-nav .nav-link:hover {
        color: #C44931 !important;
    }

    .navbar .nav-link {
        font-size: 12pt;
    }

    .nav-pills .nav-link.active, .nav-pills .show > .nav-link {
        background-color: unset;
        color: white !important;
        border: 1px solid white;
    }

    .dropdown-menu-tools::-webkit-scrollbar-thumb {
        border-radius: 10px;
        box-shadow: inset 0 0 6px rgba(0,0,0,.3);
        background-color: #737272;
        border: 1px solid #000;
    }

    .navbar-brand img {
        height: 50px;
    }

    .btn-deconnection {
        border-top: 1px solid #D1D1D1;
    }

    .outils-subtitles {
        background-color: #ebebeb;
    }

.login-panel {
    width: 28%;
}

.btn-login {
    background-color: white;
    border-radius: 4px;
    color: black;
    border: 2px solid #C44931;
    margin-right: 10px;
}

    a.btn.btn-login {
        font-family: 'Open_Sans_regular',sans-serif;
        font-size: 11pt;
        font-weight: bold;
    }

    a.btn-login:hover {
        background-color: #C44931;
        color: white;
    }

    .btn-logout {
        background-color: white;
        border-radius: 4px;
        color: darkgrey;
        border: 2px solid lightgrey;
    }

    a.btn-logout:hover {
        background-color: lightgrey;
        color: white;
    }

    .navbar .nav-other {
        margin-left: 20px;
        padding: 0;
    }

    .nav-other {
        display: inline-block;
        vertical-align: middle;
        font-size: 16px;
    }

    .margin-top-bottom-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .footer-section {
        background-color: #ebebeb;
        font-size: 13px;
        padding: 35px 0 30px 0;
        margin-top: 50px;
    }

        .footer-subtitle-css {
            font-size: 16px;
            /*color: rgba(255,255,255,0.6);*/
            line-height: 1.4;
            font-weight: 400;
            margin-bottom: 0.5rem;
        }

        .footer-section a {
            margin-bottom: 3px;
            color: inherit;
            text-decoration: none;
            outline: 0;
            background-color: transparent
        }

    @media (max-width: 768px) {
        .footer-mobile {
            text-align: center;
        }

        #footer-services {
            margin-top: 25px;
        }

        #footer-socials {
            margin-top: 25px;
        }

        #footer-contact {
            margin-top: 25px;
        }

        .navbar-lower {
            margin-top: 181px !important;
        }
    }

    .copyright-section {
        text-align: center;
    }

    .footer-link-spotlight {
        color: #C44931;
        font-weight: bold;
    }

    .navbar .nav-item {
        margin-right: 1rem !important;
        font-weight: 500;
    }

    .navbar {
        min-height: 65px;
        background-color: #561414 !important;
    }

        .navbar .nav-item .nav-link {
            color: white;
        }

    .navbar-btn.btn-login {
        background-color: #561414;
        color: white;
    }

    .nav-right-side {
        margin-left: auto;
        margin-right: unset !important;
    }

    .footer-link:hover {
        text-decoration: underline;
    }

    .pre-footer-div {
        margin-bottom: auto;
    }

    /* closable card */

    .close-icon {
        cursor: pointer;
        margin-right: 5px;
    }

    .card-close-button {
        text-align: right;
        background-color: #81A7B2;
        color: white;
    }

    .closable-card-link {
        color: white;
    }

.closable-card-text {
    margin-left: 15px;
    margin-right: 15px;
    font-size: 19px;
    margin-top: -8px;
}

    .tooltipbox-special-text {
        color: red;
    }

@media (max-width: 870px) {
    .sw-top-banner {
        min-height: unset;
    }
    .closable-card-text {
        margin-top: 10px;
        margin-bottom: 10px;
        font-size: 18px;
    }

    .info-wrp {
        margin-top: 85px !important;
        padding-top: 0px !important;
        padding-bottom: 85px !important;
    }
    .btn-abonnement {
        margin-top: 30px;
    }
    .shadowed-element.sub-text {
        margin-top: -5px !important;
    }
    .intro-section {
        padding-top: 120px;
    }
    .shadowed-element.main-text {
        line-height: 1;
    }
    .main-text {
        line-height: 1;
    }
    .connection-bar-label-user {
        margin-right: 5px;
    }
    .btn.btn-lg.btn-abonnement.hvr-grow-2.mt-sm-3{
        margin-top: 5px;
    }
    .shadowed-element.sub-text {
        font-size: 18px !important;
    }
}


.documents-main-section {
    padding-top: 0px;
    height: 600px;
    padding-bottom: 0px;
}

    .documents-section {
        display: flex;
        flex-direction: row;
        justify-content: center;
        background-color: #eae6e0;
        height: 100%;
    }

    .documents-section-left {
        width: 40%;
        background-image: url('/Pages/images/image_documents.png');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .documents-section-right {
        width: 38%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .documents-section-right .title {
        text-align: center;
        font-family: 'Open_Sans_regular',sans-serif;
        font-weight: 600;
        line-height: 0.9;
        margin-bottom: 55px;
        width: 86%;
    }

    .documents-section-right .title-sub {
        text-align: center;
        font-family: 'Open Sans',sans-serif;
        line-height: 1.2;
        font-size: 20px;
    }

    .outils-main-section {
        padding-top: 0px;
        height: 600px;
        padding-bottom: 0px;
    }

    .outils-section {
        display: flex;
        flex-direction: column;
        background-color: #2c2f36;
        height: 100%;
        align-items: center;
        justify-content: center;
    }

    .outils-section-top {
        height: 30%;
        width: 100%;
        color: #81a7b3;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Open_Sans_regular',sans-serif;
    }

    .outils-section-top .title {
        font-weight: 600;
        text-align: center;
    }

    .outils-section-bottom {
        height: 50%;
        width: 90%;
        display: flex;
        flex-direction: row;
        align-content: center;
    }

    .outils-section-bottom-item {
        display: flex;
        flex-direction: row;
        width: 100%;
    }

    .outils-section-bottom-item-text {
        margin-left: 95px;
        font-size: 17px;
        margin-right: 60px;
    }

    .outils-section-bottom-item-content {
        display: flex;
        flex-direction: column;
        color: white;
    }

    .outils-section-bottom-item-title-icon {
        height: 90px;
        width: 95px;
    }

    .outils-section-bottom-item-title {
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    .outils-section-bottom-item-title-text {
        font-size: 32px;
        font-weight: bold;
        font-family: 'Open Sans',sans-serif;
    }

    .outils-section-bottom-item-title-icon.icon-item1 {
        background-image: url('/Pages/images/icones-donnees.png');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .outils-section-bottom-item-title-icon.icon-item2 {
        background-image: url('/Pages/images/icones-recherche.png');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .outils-section-bottom-item-title-icon.icon-item3 {
        background-image: url('/Pages/images/icones-qualite.png');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .outils-section-bottom-item-title-icon.icon-item4 {
        background-image: url('/Pages/images/icones-communaute.png');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .cta-main-section {
        padding-top: 0px;
        height: 345px;
        padding-bottom: 0px;
    }

.cta-section {
    background-image: url('/Pages/images/image_call_to_action.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-homepage-cta {
    background-color: #C44931;
    color: white !important;
    font-size: 30px;
    font-family: 'Open Sans',sans-serif !important;
    padding-bottom: 10px;
}

@media (max-width: 992px) {
    .documents-section-left {
        width: 50%;
    }
    .documents-section-right {
        width: 50%;
    }

    .header-container {
        text-align: center;
    }

    .sub-text-abo {
        
    }
}

@media (max-width: 768px) {
    .documents-section-left {
        display: none;
    }

    .documents-section-right {
        width: 90%;
    }

    .outils-section-top .title {
        font-size: 35px;
    }

    .outils-section-bottom-item {
        width: 100% !important;
    }
}

@media (max-width: 1393px) {
    .outils-section-bottom-item {
        width: 50%;
    }

    .outils-section-bottom {
        flex-wrap: wrap;
    }

    .outils-section {
        padding-top: 50px;
        padding-bottom: 50px;
        min-height: 600px;
    }

    .outils-main-section {
        height: auto;
    }
}

@media (max-width: 1393px) {
    .outils-main-section {
        min-height: 600px;
    }
}


/* Elastic Search */
/* search fields */
.search-page-header {
    height: 30px;
    display: flex;
    flex-direction: row;
    justify-content: right;
    width: 100%;
    align-items: center;
}

.search-page-header .btn {
    margin-right: 20px;
}

.search-page-header .button-details {
    width: unset;
}

.date-fields-container {
    display: flex;
    flex-direction: row;
}

.search-page-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: -50px;
    background-color: #eae6e0;
    min-height: 100vh;
}

.search-page-main-search-container {
    width: 1270px;
    padding-bottom: 30px;
}

.search-page-main-rubriques-container {
    width: 1270px;
    padding-bottom: 30px;
    display: flex;
    flex-direction: column;
}

.rubriques-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding-bottom: 30px;
}

.rubrique-container {
    width: 50%;
    height: 273px;
    border-radius: 10px;
    background-color: #F8F7F4;
    padding-left: 25px;
    padding-right: 25px;
    padding-bottom: 25px;
    padding-top: 20px;
}

.rubrique-container-first-column {
    margin-right: 30px;
}

.rubrique-main-content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.rubrique-container-left {
    width: 65%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.rubrique-container-right {
    width: 30%;
    display: flex;
    justify-content: center;
}

.rubrique-title {
    color: #561414;
    font-weight: bold;
    font-size: 18px;
    border-bottom: 1px solid;
    padding-bottom: 8px;
    margin-bottom: 20px;
}

.rubrique-text {
    font-size: 14px;
}

.rubrique-image {
    height: 170px;
    width: 170px;
    border: 1px solid rgba(86, 20, 20, 0.6);
    opacity: 0.6;
}

.rubrique-quote {
    padding-top: 10px;
    font-size: 13px;
}

.rubrique-link a {
    color: #561414;
}

.search-page-main-search-container-title {
    display: flex;
    justify-content: center;
    margin-top: 10px;
    margin-bottom: 40px;
}

.search-page-main-search-container-title h1 {
    font-weight: bold;
}

.search-page-main-search-container-fields {
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 100px;
    padding-right: 100px;
    padding-top: 5px;
    border-radius: 10px;
}

.search-page-main-search-container-fields-row {
    display: flex;
    flex-direction: row;
    padding-top: 15px;
}

.search-page-main-search-container-fields-row-2 {
    display: flex;
    flex-direction: row;
    padding-bottom: 10px;
}

.search-page-main-search-container-fields-row-1-fields {
    width: 50%;
    padding-right: 25px;
}

.search-page-main-search-container-fields-row-1-birth-field {
    padding-right: 25px;
    display: flex;
}

.search-page-main-search-container-fields-row-1-location-field {
    width: 100%;
    padding-right: 25px;
}

.search-page-main-search-container-fields-row-1-birth-subfield {
    width: 100%;
}

#txtBirthYear {
    border-right: none;
}

.search-fields-invalid {
    display: none;
}

.search-fields-invalid-show {
    display: block !important;
}

.search-fields-invalid-message {
    color: red
}

.search-limit-reached {
    display: none;
}

.search-limit-reached-show {
    display: block !important;
}

.search-limit-reached-message {
    color: red
}

.search-page-main-search-container-fields-single {
    display: flex;
    flex-direction: column;
}

    .search-page-main-search-container-fields-single label {
        font-weight: bold;
    }

    .search-page-main-search-container-fields-single input {
        height: 40px;
        border: 1px solid #561414;
        padding-left: 10px;
    }

    .search-page-main-search-container-fields-single select {
        height: 40px;
        margin-left: 5px;
        border: 1px solid #561414;
        background-color: white;
    }

@media (max-width: 1630px) {
    .search-page-main-search-container {
        margin-left: 50px;
        margin-right: 50px;
    }
    .search-page-main-rubriques-container {
        margin-left: 50px;
        margin-right: 50px;
    }
}



@media (max-width: 1250px) {
    .search-page-main-search-container {
        margin-left: 50px;
        margin-right: 50px;
        width: unset;
    }
    .search-page-main-rubriques-container {
        margin-left: 50px;
        margin-right: 50px;
        width: unset;
    }
    .rubriques-row {
        flex-direction: column;
    }
    .rubrique-container {
        width: unset;
        margin-bottom: 30px;
    }
    .rubrique-container-first-column {
        margin-right: unset;
    }
    .search-page-main-search-container-fields-row-1-location-field {
        padding-right: unset;
    }
}

@media (max-width: 1145px) {
    .search-page-main-search-container-fields-row {
        flex-direction: column;
    }

    .search-page-main-search-container-fields-row-1-fields {
        width: 100%;
        padding-right: unset;
    }

    .search-page-main-search-container-fields-row-1-birth-field {
        flex-direction: column;
    }

    .search-page-main-search-container-fields {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (max-width: 1000px) {
    .search-result-list {
        flex-direction: column !important;
    }
    .search-result-list-filters {
        width: 100% !important;
        max-height: 40px;
        overflow: hidden;
    }
    .search-result-list-filters.filters-expanded {
        max-height: unset;
    }

    .search-result-list-results {
        width: 100% !important;
    }
}

@media (min-width: 1001px) {
    .show-filters {
        display: none;
    }
    .hide-filters {
        display: none;
    }
}

/* result list*/
.result-item {
    display: flex;
    flex-direction: row;
    margin-bottom: 5px;
    justify-content: space-between
}

.result-item-left {
    width: 20%;
    color: #561414;
    opacity: 85%;
}

.result-item-right {
    width: 75%;
}

.filter-row-collection-number {
    padding-left: 15px;
}

.search-result-list {
    background-color: #eae6e0;
    display: flex;
    flex-direction: row;
}

.search-result-list-filters {
    border-radius: 10px;
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 4px;
    padding-bottom: 20px;
    display: none;
    flex-direction: column;
    align-self: flex-start;
    width: 25%;
}

    .search-result-list-filters.filled {
        border: 1px solid #561414;
        margin-bottom: 15px;
        display: flex;
        margin-top: 29px;
    }

.filters-hidden {
    display: none;
}

.show-filters {
    color: black;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}

    .show-filters:hover {
        color: #561414;
    }

.hide-filters {
    color: black;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}

    .hide-filters:hover {
        color: #561414;
    }

.search-result-list-results {
    width: 75%;
    padding-left: 40px;
}

.search-result-list-results.search-result-list-results-empty {
    width: 100%;
    padding-left: unset;
}

.filter-title {
    padding-top: 15px;
    color: #561414;
}

    .filter-title h5 {
        font-weight: bold !important;
        font-family: 'Open Sans', sans-serif !important;
    }

.filter-row {
    display: flex;
    font-size: 14px;
    margin-bottom: 7px;
    line-height: 21px;
}

.filter-row-collection {
    width: 100%;
    margin-right: 5px;
}

.filter-row-number {
    
}

.filter-clear {
    cursor: pointer;
    font-weight: 700;
    color: #508591;
    font-size: 20px;
    transform: scaleX(1.5);
}

.div-matches-found {
    height: 25px;
    display: flex;
    justify-content: right;
    font-size: 14px;
    margin-top: 2px;
    margin-bottom: 2px;
}

.div-matches-found b {
    padding-right: 5px;
}

.button-details {
    width: 96px;
    height: 30px;
    padding-top: 2px;
    font-weight: bold;
    margin-top: 5px;
    font-family: 'Open Sans', sans-serif !important;
    border-radius: unset;
}

.result-list-subject-name {
    color: #561414;
    font-weight: bold;
    font-size: 18px;
    border-bottom: 1px solid;
    padding-bottom: 8px;
}

.result-list-collection-name {
    color: #561414;
    font-size: 13px;
    padding-bottom: 17px;
    padding-top: 5px;
}

.result-list-info {
    flex-direction: row;
}

.record-container {
    padding: 10px;
    margin-bottom: 15px;
    background-color: white;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
}

.record-container-top {
    display: flex;
    flex-direction: row;
}

.result-opened-date {
    color: #561414;
    font-size: 13px;
}

.record-container-infos {
    display: flex;
    flex-direction: row;
}

.record-container-left {
    width: 88%;
}

.record-container-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 35px;
    padding-left: 10px;
}

.prev-next-button-disabled {
    pointer-events: none;
    color: #d3d3d3;
}

.select-container {
    position: relative;
    display: inline-block;
    width: 58px; /* Adjust width to accommodate both select and arrow div */
    height: 30px;
}

.page-size-dropdown {
    position: absolute;
    width: 62px; /* Width of the select */
    height: 30px; /* Height of the select */
    border: 1px solid #561414;
    background-color: #eae6e0;
    color: #000;
    padding-left: 4px;
    padding-right: 4px;
    text-align: center;
}

.select-arrow {
    position: absolute;
    top: 0;
    right: 0;
    width: 18px; /* Width of the arrow area */
    height: 30px; /* Same height as the select */
    background-color: #561414;
    color: white;
    text-align: center;
    line-height: 30px; /* Center the arrow vertically */
    font-size: 12px;
    user-select: none;
}

/* Default style for the filter link */
#showFilterLink {
    display: none;
}

/* Style for screens smaller than 1000px */
@media (max-width: 1000px) {
    .search-result-list-filters:not(.filled) {
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        transition: max-height 0.3s ease, opacity 0.3s ease;
    }

    .search-result-list-filters.filled #showFilterLink {
        display: block; /* Show the link when filters are collapsed */
    }
}

/* Style for screens larger than 1000px */
@media (min-width: 1001px) {
    .search-result-list-filters {
        max-height: none; /* Remove the max-height restriction for larger screens */
        opacity: 1;
    }
}

@media (max-width: 1450px) {
    .filter-row {
        flex-direction: row;
    }

    .filter-row-collection {
        width: 100%;
    }

    .filter-row-collection-number {
        
    }

    .filter-row-number {
        
    }

    .search-result-list-filters {
        padding-right: 20px;
        padding-left: 20px;
    }

    .filter-row-collection {
    }
}

@media (max-width: 600px) {
    .record-container-infos {
        flex-direction: column;
    }

    .record-container-top {
        display: flex;
        flex-direction: column;
    }

    .record-container-left {
        width: 100%;
    }

    .record-container-right {
        width: 100%;
        padding-top: 25px;
    }

    .result-item {
        margin-bottom: 10px;
    }

    .search-page-main-search-container {
        margin-left: 20px;
        margin-right: 20px;
    }
    .search-page-main-rubriques-container {
        margin-left: 20px;
        margin-right: 20px;
    }
}

.slider-container {
    position: relative;
}

.slider-container-main {
    display: flex;
    flex-direction: row;
}

.slider-tooltip {
    padding-top: 3px;
}

.slider-value-container {
    display: none;
}

.broadness-range {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 100%;
    height: 3px !important;
    background: #d3d3d3;
    outline: none;
    z-index: 0;
    position: relative;
    border: none !important;
    padding-left: 0 !important;
}

    .broadness-range::-webkit-slider-thumb {
        -webkit-appearance: none !important;
        appearance: none !important;
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

    .broadness-range::-moz-range-thumb {
        width: 0;
        height: 0;
        background: none;
        border: none;
    }

.ticks {
    position: absolute;
    width: 100%;
    display: flex;
    justify-content: space-between;
    top: 11px;
    z-index: 2;
}

.tick {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #561414;
    box-shadow: 0px 0px 2px #000;
    z-index: 2;
}

.custom-thumb {
    position: absolute;
    width: 20px;
    height: 20px;
    background: white;
    border: 5px solid #561414;
    border-radius: 50%;
    top: 5px; /* Adjust this value to vertically center the thumb */
    z-index: 3;
    transition: left 0.3s ease; /* Adding transition for smooth sliding */
}

.slider-tag {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 5px;
    font-size: 13px;
}

.slider-tag.slider-tag-right {
    padding-right: 10px;
}

    .slider-tag.slider-tag-left {
        padding-left: 0px;
    }

.info-prompt {
    display: flex;
    flex-direction: column;
}

    .info-prompt label {
        margin-left: 15px;
        margin-right: 15px;
    }

.toggleDateRangeBtn,
#toggleDateRange {
    border-top: 1px solid #561414;
    border-right: 1px solid #561414;
    border-bottom: 1px solid #561414;
    border-left: none;
    background-color: white;
}

#toggleDateInfo {
    background-color: white;
    margin-left: 10px;
}

#toggleLocationInfo {
    background-color: white;
    margin-left: 10px;
}

#dateRangeInfos {
    width: 200px;
}

#locationInfos {
    width: 200px;
}

#btnSearch {
    margin-bottom: 10px;
}

.btn-search-row {
    justify-content: space-between;
    margin-bottom: 15px;
    height: 45px;
    flex-direction: row;
    align-items: center;
}

.beta-buttons {
    display: flex;
    flex-direction: column;
    font-size: 13px;
    text-align: right;
    margin-top: 15px;
    margin-bottom: 30px;
}

.beta-buttons-link {
    color: #561414;
}

.record-container.search-no-result {
    background-color: unset;
    text-align: center;
    font-weight: bold;
    padding-top: 20px;
    display: block;
}
/**************/
/* Details pages*/
.details-page-fa {
    width: 20px;
}

.tablinks {
    font-weight: bold;
    color: black;
    margin-right: 20px;
    padding-bottom: 3px;
}

    .tablinks:hover {
        color: initial;
        text-decoration: none;
    }

    .tablinks.active {
        color: initial;
        border-bottom: 2px solid #508591;
    }

.tab-container {
    padding-top: 25px;
    padding-bottom: 20px;
}

#Source.tabcontent {
    font-size: 14px;
    border-top: 1px solid #561414;
    padding-top: 10px;
}

.source-texte-bottom {
    padding-bottom: 20px;
}

.details-page-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: -50px;
    background-color: #eae6e0;
    min-height: 100vh;
}

.details-page-container {
    width: 1270px;
}

.details-page-header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 15px;
    margin-bottom: 15px;
    background-color: white;
    padding-left: 30px;
    padding-right: 30px;
    border-radius: 10px;
}

.details-page-header-subject {
    border-bottom: 1px solid #561414;
    padding-top: 10px;
}

    .details-page-header-subject h1 {
        font-weight: bold;
    }

.details-page-header-other {
    padding-top: 10px;
    padding-bottom: 10px;
    font-weight: bold;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.details-page-header-buttons {
    
}

.details-page-header-buttons .button-details {
    color: white !important;
}

.details-page-main-section {
    display: flex;
    flex-direction: row;
    margin-bottom: 15px;
}

.details-page-main-section-left {
    width: 50%;
    background-color: white;
    margin-right: 15px;
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 25px;
    padding-bottom: 25px;
    align-self: flex-start;
    border-radius: 10px;
}

.details-page-main-section-right {
    background-color: white;
    padding-left: 25px;
    padding-right: 25px;
    width: 100%;
    margin-bottom: 13px;
    padding-bottom: 25px;
    border-radius: 10px;
}

    .details-page-main-section-right-main {
        width: 50%;
    }

    .details-page-main-section-left-picture {
        width: 100%;
    }

    .details-page-main-section-left-picture img {
        max-width: 100%;
        height: auto;
    }

.details-page-main-section-left-up {
    border-bottom: 1px solid #561414;
    padding-bottom: 25px;
}

.details-page-main-section-left-down {
    padding-top: 10px;
    border-top: 1px solid #561414;
    margin-top: 25px;
}

.carousel-cell {
    width: 100%;
    max-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.carousel-cell img {
    display: block;
    max-height: 500px;
}

.detailed-result-row {
    border-top: 1px solid #561414;
    padding-bottom: 10px;
    padding-top: 10px;
    font-size: 14px;
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

.detailed-result-row-left {
    width: 30%;
    color: #561414;
    opacity: 85%;
}

.detailed-result-row-right {
    width: 60%;
}

.pagination-container {
    border-top: 1px solid #561414;
    margin-top: 25px;
    padding-top: 10px;
    display: flex;
    flex-direction: row;
}

.pagination-container-left {
    width: 100%;
    justify-content: center;
    display: flex;
}

.pagination-container-right {
    display: flex;
    flex-direction: row;
    align-items: center; /* Align items vertically */
}

.pagination-container-right > span {
    white-space: nowrap; /* Prevent the text from wrapping */
    padding-right: 10px;
}

.page-number {
    color: black;
    margin-right: 20px;
}

    .page-number:hover {
        color: #561414;
    }

    .page-number.selected {
        font-weight: bold;
        border: 1px solid #561414;
        padding-left: 7px;
        padding-right: 7px;
        margin-left: -3px;
        margin-right: 13px;
    }

.pagination-delimiter-right {
    color: #561414;
    border-left: 1px solid #561414;
    margin-right: 10px;
}

.pagination-delimiter-left {
    color: #561414;
    border-left: 1px solid #561414;
    margin-left: 10px;
    margin-right: 20px;
}

@media (max-width: 725px) {
    .pagination-delimiter-right {
        display: none;
    }

    .pagination-delimiter-left {
        display: none;
    }

    #previous-btn {
        display: none;
    }

    #pagination-next-btn {
        display: none;
    }

    #pagination-previous-btn {
        display: none;
    }

    .result-item-left {
        width: 30%;
    }

    #txtBirthYear {
        width: 100%;
    }

    .slider-container {
        width: 100%;
    }

    .search-page-main-search-container-fields-row-1-birth-field {
        padding-bottom: 15px;
    }

    .record-container-infos {
        flex-direction: column;
    }

    .result-list-image {
        padding-top: 25px;
    }

    .search-result-list-results {
        padding-left: 0px;
    }

    .search-page-main-search-container-fields-row-2 {
        flex-direction: column;
    }

    .search-page-main-search-container-fields-row-1-birth-field {
        padding-right: unset;
        padding-top: 20px;
    }

    .rubrique-main-content {
        flex-direction: column;
    }

    .rubrique-container {
        height: unset;
    }

    .rubrique-container-left {
        width: unset;
        padding-bottom: 20px;
    }

    .rubrique-container-right {
        width: unset;
    }

    .rubriques-row {
        padding-bottom: 0px;
    }

    .rubrique-text {
        padding-bottom: 0px;
    }

    .rubrique-link-container {
        padding-top: 30px;
    }
}

main-search-button {
    margin-top: unset;
}

.detailed-page-deceased {
    font-style: italic;
    font-size: 12px;
}

.details-page-hyperlink {
    color: #508591 !important;
}

@media (max-width: 1450px) {
    .details-page-container {
        width: 992px;
    }
}

@media (max-width: 850px) {
    .details-page-container {
        width: 90%;
        margin-left: 10px;
        margin-right: 10px;
    }

    .details-page-main-section {
        flex-direction: column;
    }

    .details-page-main-section-left {
        width: 100%;
        margin-bottom: 30px;
        padding-bottom: 30px;
    }

    .details-page-main-section-right {
        width: 100%;
        margin-bottom: 50px;
        padding-bottom: 50px;
    }

    .details-page-main-section-right-main {
        width: 100%;
    }
}

@media (max-width: 550px) {
    .details-page-container {
        width: 100%;
        padding-left: 10px;
        padding-right: 10px;
    }
}
/****************/

/***PROFILE PAGE***/
.profile-page-content {
    background-color: white;
}
.profile-page-content {
    border-radius: 10px;
}

.profile-page-content {
    padding-left: 30px;
    padding-top: 5px;
    padding-right: 30px;
}

.profile-page-content .tabcontent table {
    margin-left: 15px !important;
    margin-right: unset !important;
    margin-top: 10px;
}

.profile-facturation-button {
    margin-top: 10px;
    margin-bottom: 20px;
}

.profile-facturation-button a {
    margin-left: unset;
}
/******************/

/******************/
/*Advanced Search*/



.advanced-search-container {
    display: none;
}

.advanced-search-container-main {
}

.search-arrow-up {
    display: inline-block;
    transform: rotate(180deg);
    margin-left: 5px;
}

.advanced-filter-option {
    padding-left: 15px;
    padding-right: 15px;
    margin-right: 15px;
    background-color: #f7f7f7;
    border-radius: 15px;
    cursor: pointer;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 2px 3px #00000029;
}

.advanced-filter-option.active {
    border: 1px solid #561414;
    pointer-events: none;
    cursor: default;
}

.advanced-search-relation-label {
    color: #51433a;
    width: 180px;
    display: flex;
    justify-content: right;
    margin-right: 20px;
    margin-bottom: 40px;
}

.as-filter-div {
    display: none;
}

.txtYear {
    border-right: none !important;
    width: 130px;
    border-left: 1px solid #707070 !important;
    border-bottom: 1px solid #707070 !important;
    border-top: 1px solid #707070 !important;
}

.txtLocation {
    border: 1px solid #707070;
}

.txt-indiv {
    color: #51433a;
    width: 330px;
    height: 70px;
}

.exact-check-input {
    height: 12px !important;
    margin-top: 5px;
    box-shadow: 0px 2px 3px #00000029;
    transform: scale(1.3);
}

.exact-check-label {
    margin-left: 3px;
    margin-bottom: 7px;
    margin-right: 5px;
    font-weight: normal !important;
    font-size: 12px;
    color: #a09998;
}

.ac-toggle-container {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    text-align: center;
}

.search-toggle-btn {
    color: #561414;
    font-weight: bold;
    text-decoration: none;
    margin-left: 20px;
}
    .search-toggle-btn:hover {
        color: #561414;
        text-decoration: none;
    }

.search-toggle-arrow {
    color: #561414;
    font-weight: normal;
}

.ac-toggle-bar-left {
    display: flex;
    align-items: center;
}

.ra-add-event {
    display: flex;
    align-items: center;
    margin-right: 10px;
    color: #51433a;
}

.ra-add-indiv {
    display: flex;
    align-items: center;
    margin-right: 10px;
    color: #51433a;
}

.ra-annee {
    color: #51433a;
}

.ra-lieu {
    color: #51433a;
    width: 500px;
}

.filter-clear-2 {
    cursor: pointer;
    color: #561414;
    margin-left: 15px;
    margin-bottom: 35px;
}

.ra-add-event-container {
    display: flex;
    margin-bottom: 10px;
}

.ra-add-indiv-container {
    margin-top: 20px;
}

.ra-events-container {
    display: flex;
}

.ra-add-indiv-container {
    display: flex;
    margin-bottom: 10px;
}

.ra-indivs-container {
    display: flex;
}

.ra-added-fields-container {
    display: flex;
    align-items: flex-start;
}

.ra-added-fields-container-left {
    display: flex;
    align-items: center;
}

.ra-search-field-container {
    margin-right: 20px;
}

.ra-search-field {
    border: 1px solid black;
}

.ra-toggleDateRangeBtn {
    border-top: 1px solid #707070;
    border-right: 1px solid #707070;
    border-bottom: 1px solid #707070;
    border-left: none;
    background-color: white;
    color: #a09998;
}

.ra-events-header {
    width: 900px;
}

.ra-annee-header {
    width: 158px;
}

.ra-lieu-header {
    width: 500px;
}

.mobile-as-search-button-container {
    
}

@media (max-width: 590px) {
    .ra-lieu {
        width: 275px;
    }
}

/* Top Banner Sitewide */

.sw-top-banner {
    width: 100%;
    min-height: 60px;
    background-color: #003DA5;
    border-radius: unset;
    display: none;
    flex-direction: row;
}

.sw-top-banner a {
    color: white;
}
    .sw-top-banner a:hover {
        text-decoration: none;
    }

.nav-main-container {
    display: flex;
    flex-direction: column;
}

.menu-mobile-open .nav-main-container-bottom {
    padding-bottom: 4.5rem;
}

.container-with-banner {
    margin-top: unset !important;
}

.container-with-banner-2 {
    margin-top: 60px !important;
}

.card-block.text-center {
    width: 100%;
    margin-top: unset;
    margin-bottom: unset;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-folders-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.nav-folders-mobile-text {
    display: none;
}

@media (max-width: 767.98px) {
    .nav-folders-mobile-text {
        display: inline;
    }
}

.nav-folders-link .nav-folders-mobile-text {
    display: none;
}

.nav-folders-link .nav-folders-icon {
    display: inline-flex;
    align-items: center;
}

@media (max-width: 1199.98px) {
    .nav-folders-link {
        display: inline-flex;
        align-items: center;
        gap: .4rem;
    }

        .nav-folders-link .nav-folders-mobile-text {
            display: inline;
        }
}

.has-badge {
    display: flex;
    align-items: center;
    gap: 8px;
}

.nav-badge-new {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    background: #d4573a; /* orange */
    color: #fff;
    transform: translateY(-1px);
    margin-left: -15px;
    margin-top: -10px;
    margin-bottom: 0px;
    padding-bottom: 2px;
}

.has-badge {
    position: relative;
}

.nav-badge-new {
    position: absolute;
    top: 50%;
    right: -6px;
    transform: translate(100%, -50%);

    display: inline-block;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    background: #d4573a;
    color: #fff;
    white-space: nowrap;
    pointer-events: none;
}

.nav-user-name {
    display: inline-flex;
    align-items: center;
}

.nav-user-icon {
    margin-right: 6px;
}

.nav-badge-new {
    position: absolute;
    right: 12px;
    transform: translateY(-50%);
    background: #d4573a;
    color: #fff;
    font-weight: 700;
    font-size: 11px;
    padding: 2px 7px;
    border-radius: 999px;
    line-height: 1;
}

.nav-badge-new-in-menu {
    background: #d4573a;
    color: #fff;
    font-weight: 700;
    font-size: 11px;
    padding: 2px 7px;
    border-radius: 999px;
    line-height: 1;
    height: 17px;
    margin-right: 6px;
}

#ctl00_UserMenuNewBadge {
    margin-right: -40px;
}

.nav-item-with-badge {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.nav-folders-link {
    position: relative;
}

.nav-badge-hidden {
    display: none !important;
}

.has-badge {
    position: relative;
}

.navbar-toggler.has-badge .nav-badge-new--toggler {
    position: absolute;
    right: -6px;
    z-index: 2;
}

.dropdown-menu-single-line {
    display: flex;
    flex-direction: row;
    align-items: center;
}

@media (max-width: 1199px) {
    .navbar-collapse.collapsing {
        transition: none !important;
        -webkit-transition: none !important;
        height: auto !important;
        overflow: hidden !important;
    }

    .collapsing {
        transition: none !important;
        -webkit-transition: none !important;
    }

    nav.fixed-top,
    .nav-main-container,
    .nav-main-container-bottom,
    .nav-main-container-bottom.navbar,
    #navbarSupportedContent,
    #navbarSupportedContent.navbar-collapse,
    #navbarSupportedContent.navbar-collapse.collapse.show {
        background: #6b1712 !important;
    }

    .nav-main-container-bottom {
        padding: 10px 0 0 0 !important;
        align-items: flex-start;
    }

    .navbar-brand {
        margin: 0 !important;
        padding: 10px 20px 14px 20px !important;
    }

        .navbar-brand img {
            height: 58px;
        }

    .navbar-toggler {
        margin: 12px 20px 0 auto !important;
        border: 1px solid rgba(255,255,255,.9) !important;
        border-radius: 4px !important;
        padding: 8px 10px !important;
        background: transparent !important;
    }

    #navbarSupportedContent {
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .navbar-nav,
    .nav-right-side {
        width: 100%;
        margin: 0 !important;
        padding: 0 20px !important;
        background: transparent !important;
    }

        .navbar-nav > li,
        .nav-right-side > li {
            width: 100%;
            margin: 0 !important;
        }

            .navbar-nav > li > .nav-link,
            .nav-right-side > li > .nav-link,
            .nav-right-side .btn-logout {
                display: block !important;
                width: 100% !important;
                padding: 18px 12px !important;
                color: #fff !important;
                font-size: 18px !important;
                font-weight: 700 !important;
                background: transparent !important;
                border: 0 !important;
                border-bottom: 1px solid rgba(255,255,255,.30) !important;
                border-radius: 0 !important;
                box-shadow: none !important;
                text-align: left !important;
            }

        .nav-right-side .btn-login {
            display: block !important;
            width: 100% !important;
            margin: 0 !important;
            padding: 18px 12px !important;
            color: #fff !important;
            font-size: 18px !important;
            font-weight: 700 !important;
            background: transparent !important;
            border: 0 !important;
            border-bottom: 1px solid rgba(255,255,255,.30) !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            text-align: left !important;
        }

            .nav-right-side .btn-login:hover,
            .nav-right-side .btn-login:focus {
                background: transparent !important;
                color: #fff !important;
            }

    .dropdown-menu-tools.tools-dropdown-menu {
        position: static !important;
        float: none !important;
        transform: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: #F8F4EE !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .tools-dropdown-menu .tools-dropdown-link,
    .tools-dropdown-menu .tools-accordion-toggle {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        width: 100% !important;
        min-height: 0 !important;
        padding: 18px 12px !important;
        color: #555 !important;
        background: #F8F4EE !important;
        font-size: 17px !important;
        font-weight: 700 !important;
        border: 0 !important;
        border-bottom: 1px solid lightgrey !important;
        text-decoration: none !important;
        box-shadow: none !important;
        white-space: normal !important;
        text-align: left !important;
    }

        .tools-dropdown-menu .tools-dropdown-link:hover,
        .tools-dropdown-menu .tools-accordion-toggle:hover,
        .tools-dropdown-menu .tools-dropdown-link:focus,
        .tools-dropdown-menu .tools-accordion-toggle:focus {
            background: #F8F4EE !important;
            color: #555 !important;
        }

    .tools-dropdown-link-top {
        font-weight: 700 !important;
    }

    .tools-dropdown-separator,
    .dropdown-divider.tools-dropdown-separator {
        display: none !important;
    }

    .tools-accordion-panel {
        display: none;
        background: #F8F4EE !important;
    }

        .tools-accordion-panel.is-open {
            display: block;
        }

        .tools-accordion-panel .tools-dropdown-link {
            padding: 14px 12px 14px 28px !important;
            font-size: 16px !important;
            font-weight: 400 !important;
            background: #F8F4EE !important;
            border-bottom: 1px solid #dcdcdc !important;
        }

    .tools-accordion-icon {
        font-size: 20px !important;
        color: #555 !important;
        line-height: 1 !important;
        transition: none !important;
        transform: rotate(0deg);
    }

    .tools-accordion-toggle.is-open .tools-accordion-icon {
        transform: rotate(90deg);
    }

    .navbar-collapse.collapsing,
    .collapsing {
        transition: none !important;
        -webkit-transition: none !important;
    }

    .navbar-collapse.collapsing {
        height: auto !important;
        overflow: hidden !important;
    }

    .navbar-toggler {
        border: 0 !important;
        box-shadow: none !important;
        outline: none !important;
    }

        .navbar-toggler:focus,
        .navbar-toggler:active {
            border: 0 !important;
            box-shadow: none !important;
            outline: none !important;
        }

    .dropdown-menu-tools.tools-dropdown-menu {
        position: static !important;
        float: none !important;
        transform: none !important;
        width: calc(100% + 40px) !important;
        max-width: calc(100% + 40px) !important;
        margin: 0 0 0 -20px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: #efefef !important;
        max-height: none !important;
        overflow: visible !important;
        background: #F8F4EE !important;
    }

    .nav-right-side > li:last-child > .nav-link,
    .nav-right-side > li:last-child > .btn-login,
    .nav-right-side > li:last-child > .btn-logout {
        border-bottom: 0 !important;
    }

    #navbarSupportedContent,
    #navbarSupportedContent.navbar-collapse,
    #navbarSupportedContent.navbar-collapse.collapse.show {
        max-height: calc(100vh - 92px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
    }

    .tools-dropdown-menu .outils-subtitles {
        cursor: default;
        pointer-events: none;
    }

    .tools-dropdown-link-top {
        font-weight: 700 !important;
        color: #555 !important;
    }

    .tools-accordion-toggle > span:first-child,
    .tools-accordion-toggle .titreDansMenu {
        color: #555 !important;
    }

    .dropdown-menu-single-line .tools-dropdown-link {
        width: 100%;
    }

    .dropdown-item.tools-accordion-toggle span,
    .dropdown-item.tools-dropdown-link {
        margin-left: 20px;
    }
    .dropdown-item.tools-accordion-toggle .tools-accordion-icon {
        margin-right: 10px;
    }
}

/* Ask Expert Tickets */

.ticket-unread-dot {
    display: inline-block;
    width: 9px;
    height: 9px;
    background: #dc3545;
    border-radius: 50%;
    vertical-align: middle;
}

.ticket-unread-dot--username {
    margin-left: 6px;
    margin-right: 4px;
    position: relative;
    top: -1px;
}

.dropdown-menu-single-line {
    position: relative;
}

.nav-ticket-link {
    display: flex !important;
    align-items: center;
    gap: 7px;
}

.nav-ticket-row {
    display: flex;
    align-items: center;
    gap: 7px;
}

    .nav-ticket-row .nav-ticket-link {
        flex: 0 1 auto;
        width: auto !important;
        padding-right: 0 !important;
    }

.ticket-unread-dot--dropdown {
    display: inline-block;
    flex: 0 0 auto;
}

/*****************/
/* Shared correction suggestion UI for record detail pages */
.correction-suggestion-link-row {
    margin-top: 14px;
    padding: 13px 2px 0;
    border-top: 1px solid #ddd4cc;
}

.correction-suggestion-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #6b1712;
    font-size: 14px;
    line-height: 1.4;
    text-decoration: underline;
}

.correction-suggestion-link:hover,
.correction-suggestion-link:focus {
    color: #8d1f2d;
    text-decoration: underline;
}

.correction-suggestion-link i {
    font-size: 17px;
    text-decoration: none;
}

.correction-additional-info {
    margin-top: 14px;
    padding: 13px 14px 8px;
    border: 1px solid #e4ddd7;
    border-radius: 5px;
    background: linear-gradient(135deg, #fbfaf9 0%, #f4f1ef 100%);
}

.correction-additional-info h3 {
    margin: 0 0 3px;
    color: #4d4743;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
}

.correction-additional-info .additional-info-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.correction-additional-info .additional-info-item {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 16px;
    row-gap: 2px;
    margin: 0;
    padding: 10px 0 10px 20px;
    border-bottom: 1px solid #d8d0ca;
}

.correction-additional-info .additional-info-item:last-child {
    border-bottom: 0;
}

.correction-additional-info .additional-info-icon {
    position: absolute;
    top: 14px;
    left: 0;
    color: #741813;
    font-size: 12px;
    line-height: 1;
}

.correction-additional-info .additional-info-text {
    min-width: 0;
    color: #514c48;
    font-size: 13px;
    line-height: 1.45;
}

.correction-additional-info .additional-info-attribution {
    align-self: end;
    color: #817873;
    font-size: 10px;
    font-style: italic;
    line-height: 1.4;
    text-align: right;
    white-space: nowrap;
}

@media (max-width: 600px) {
    .correction-additional-info .additional-info-item {
        grid-template-columns: minmax(0, 1fr);
    }

    .correction-additional-info .additional-info-attribution {
        margin-top: 3px;
        white-space: normal;
    }
}

/* Shared correction suggestion modal and form */
body.correction-modal-page-locked {
    overflow: hidden;
}

.correction-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(0, 0, 0, 0.58);
    box-sizing: border-box;
}

.correction-modal-overlay.is-open {
    display: flex;
}

.correction-modal-dialog {
    width: calc(100% - 32px);
    max-width: 840px;
    max-height: 86vh;
    margin: 0;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.correction-modal-header {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    border-bottom: 1px solid #e4ddd7;
}

.correction-modal-title {
    margin: 0;
    color: #4f1210;
    font-size: 1.35rem;
    line-height: 1.3;
}

.correction-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 20px 22px;
}

.correction-modal-footer {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 22px;
    border-top: 1px solid #e4ddd7;
    background: #fff;
}

.correction-modal-icon-close {
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #5e5550;
    cursor: pointer;
    font-size: 28px;
    line-height: 34px;
}

.correction-modal-icon-close:hover {
    background: #f3eeea;
    color: #4f1210;
}

.correction-intro-card {
    white-space: pre-line;
    margin-bottom: 16px;
    padding: 12px 14px;
    border-left: 4px solid #6b1712;
    border-radius: 6px;
    background: #f8f1e8;
    color: #403a36;
    line-height: 1.5;
}

.correction-section-title {
    margin: 0 0 8px;
    color: #4f1917;
    font-size: 1rem;
    font-weight: 700;
}

.correction-fields-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.correction-field-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 14px;
    border: 1px solid #e1d8d1;
    border-radius: 7px;
    background: #fff;
}

.correction-field-row.is-editing {
    display: block;
    background: #fbf8f5;
    border-color: #c9aaa0;
}

.correction-field-summary {
    min-width: 0;
    flex: 1;
}

.correction-field-label {
    margin-bottom: 3px;
    color: #4f1917;
    font-weight: 700;
}

.correction-field-preview {
    overflow: hidden;
    color: #666;
    font-size: 13px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.correction-field-preview-long {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    white-space: normal;
}

.correction-field-row.is-editing .correction-field-preview,
.correction-field-row.is-editing .correction-add-action {
    display: none;
}

.correction-current-label {
    margin-top: 12px;
    color: #756b65;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.correction-current-value {
    margin-top: 6px;
    padding: 9px 11px;
    background: #f7f4f1;
    border-left: 3px solid #6b1712;
    border-radius: 4px;
    color: #333;
    line-height: 1.4;
    white-space: normal;
    overflow-wrap: anywhere;
}

.correction-field-action,
.correction-field-cancel {
    flex: 0 0 auto;
    padding: 5px 9px;
    border: 1px solid #8b312c;
    border-radius: 5px;
    background: #fff;
    color: #8d1f2d;
    cursor: pointer;
    font-size: 0.78rem;
    line-height: 1.3;
}

.correction-field-action:hover,
.correction-field-cancel:hover {
    background: #f7ecea;
}

.correction-field-cancel {
    margin-top: 8px;
    border-color: #aaa19b;
    color: #5c534e;
}

.correction-edit-area {
    display: none;
}

.correction-field-row.is-editing .correction-edit-area {
    display: block;
}

.correction-edit-area label {
    display: block;
    margin-top: 12px;
    margin-bottom: 5px;
    color: #4f4540;
    font-size: 0.86rem;
    font-weight: 600;
}

.correction-proposed-value,
.correction-comment-input {
    display: block;
    box-sizing: border-box;
    width: 100%;
    padding: 9px 10px;
    border: 1px solid #bcb3ad;
    border-radius: 5px;
    background: #fff;
    color: #292522;
    font: inherit;
    line-height: 1.4;
}

textarea.correction-proposed-value,
.correction-comment-input {
    resize: vertical;
}

.correction-comment-input {
    min-height: 110px;
}

.correction-comment-card {
    margin-top: 18px;
    padding: 15px;
    border: 1px solid #d8c9c1;
    border-radius: 8px;
    background: #faf7f3;
}

.correction-comment-label {
    display: inline-block;
    margin-right: 3px;
    margin-bottom: 7px;
    color: #4f1210;
    font-weight: 700;
}

.correction-required-marker {
    color: #a20f0f;
}

.correction-comment-helper {
    display: block;
    margin-top: 7px;
    color: #6b625d;
    font-size: 0.82rem;
}

.correction-validation-message {
    margin-bottom: 16px;
    padding: 10px 12px;
    border: 1px solid #cf7772;
    border-radius: 6px;
    background: #fff0ef;
    color: #761c18;
}

.correction-success-message {
    margin-bottom: 15px;
    padding: 11px 13px;
    border: 1px solid #83ad8c;
    border-radius: 6px;
    background: #eff8f1;
    color: #285f34;
}

.correction-modal-secondary-button {
    background: #fff !important;
    color: #561414 !important;
    border-color: #561414 !important;
}

.correction-modal-footer .button-details {
    width: auto;
    margin-bottom: 0;
}

.correction-modal-secondary-button:hover,
.correction-modal-secondary-button:focus {
    background: #f8eeee !important;
    color: #561414 !important;
    border-color: #561414 !important;
}

.correction-modal-icon-close:focus-visible,
.correction-field-action:focus-visible,
.correction-field-cancel:focus-visible,
.correction-proposed-value:focus-visible,
.correction-comment-input:focus-visible {
    outline: 3px solid rgba(80, 133, 145, 0.45);
    outline-offset: 2px;
}

@media (max-width: 767px) {
    .correction-modal-overlay {
        padding: 12px;
    }

    .correction-modal-dialog {
        max-height: 92vh;
    }

    .correction-modal-header,
    .correction-modal-body,
    .correction-modal-footer {
        padding-left: 16px;
        padding-right: 16px;
    }

    .correction-field-row {
        align-items: stretch;
        flex-direction: column;
    }

    .correction-field-action {
        align-self: flex-start;
    }

    .correction-modal-footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .correction-modal-footer .button-details {
        width: 100%;
    }
}

.correction-message {
    margin: 0 0 15px;
}

/* ============================================================
   Homepage development page
============================================================ */
        .homepage-dev-page body {
            padding-top: unset;
        }

        .homepage-dev-page section {
            padding-top: 25px;
            padding-bottom: 25px;
        }

        .homepage-dev-page .navbar {
            background-color: unset !important;
            z-index: 15;
        }

        .homepage-dev-page .navbar-btn.btn-login {
            border: 2px solid #C44931; 
            border-radius: unset;
            background-color: transparent;
        }

        .homepage-dev-page .menu-mobile-open {
            background-color: transparent !important;
        }

        .homepage-dev-page .intro-section {
            height: 110vh;
            position: relative;
            color: #fff;
            text-align: center;
            display: flex;
            margin-top: -80px;
        }

        .homepage-dev-page .info-wrp {
            position: relative;
            z-index: 9;
            max-width: 1300px;
            margin: auto;
            top: initial;
        }

        .homepage-dev-page .abo-section-1 {
            padding-bottom: 50px;
        }

        .homepage-dev-page .abo-section-2 {
            padding-top: 50px;
        }

        .homepage-dev-page .full-wh {
            position: absolute;
            top: 0;
            bottom: 0;
            width: 100%;
        }

        .homepage-dev-page .bg-cover {
            background-size: cover;
            background-repeat: no-repeat;
        }


        .homepage-dev-page .bg-cc {
            background-position: center center;
        }

        .homepage-dev-page .bg-cb {
            background-position: top center;
        }

        .homepage-dev-page .title {
            font-size: 50px;
            margin-bottom: 20px;
            font-weight: 300;
        }

        .homepage-dev-page .title-section-center {
            font-size: 45px;
            margin-bottom: 20px;
            font-weight: 300;
        }

        .homepage-dev-page .commentaires .title {
            text-align: center;
            font-size: 50px;
            margin-bottom: 20px;
            font-weight: 300;
            color: #1f2229;
        }

        .homepage-dev-page .commentaires .title-sub {
            text-align: center;
            font-size: 20px;
            margin-bottom: 40px;
            font-weight: 300;
            color: #494c52;
        }

        .homepage-dev-page .main-text {
            font-size: 65px;
            font-weight: bolder;
            color: #fff;
            letter-spacing: 3px;
            line-height: 1.4;
            margin-bottom: unset !important;
            border-radius: 90px;
        }

        .homepage-dev-page .navbar.fixed-top {
            position: absolute;
        }

        .homepage-dev-page .sub-text {
            font-size: 25px;
            font-weight: 600;
            color: #fff;
            max-width: 800px;
            border-radius: 90px;
        }

        .homepage-dev-page .sub-txt {
            color: rgba(255,255,255,0.6);
        }

        .homepage-dev-page .text-center {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .homepage-dev-page .main-text-abo {
            font-size: 38px;
            font-weight: 700;
            color: #544339;
            margin-bottom: unset !important;
            font-family: 'Lato', sans-serif !important;
            text-align: center;
            padding-bottom: 25px;
            line-height: 1.1;
        }


        .homepage-dev-page .sub-text-abo {
            font-size: 20px;
            font-weight: 200;
            color: #544339;
            text-align: center;
        }

        .homepage-dev-page .homepage-pictures {
            background-position: center center; 
            background-repeat: no-repeat; 
            background-size: cover; 
            background-attachment: scroll;
        }

        @media (max-width: 768px) {
            .homepage-dev-page .homepage-pictures {
                display: none;
            }
            .homepage-dev-page .sub-text {
                margin-left: 20px;
                margin-right: 20px;
            }
        }

        .homepage-dev-page .hd {
            line-height: 1.5;
        }

        .homepage-dev-page .hd.hdunset {
            line-height: 1.2;
        }

        .homepage-dev-page .presentation {
            position: relative;
            width: 80%;
            margin: auto;
            padding: 100px 0;
        }

        .homepage-dev-page .dunkel {
            background-color: #33373E;
            color: white;
            height: 814px;
        }

        .homepage-dev-page .info-box5 .img {
            width: 40px;
            height: 40px;
            position: relative;
            float: left;
            color: #8BCE7B;
        }

        .homepage-dev-page .info-box5 .info {
            position: relative;
            margin: 10px 0 0 60px;
        }

        .homepage-dev-page .btn-abonnement {
            background-color: #C44931;
            color: white;
            font-weight: bold;
            box-shadow: 0px 10px 60px black;
            border: 2px solid transparent;
        }

        .homepage-dev-page .btn-abonnement:hover {
            background-color: white;
            border-color: #C44931;
            border: 2px solid #C44931;
            color: #C44931;
        }

        @media (min-width: 576px) {
            .homepage-dev-page .mt-sm-3,

            .homepage-dev-page .my-sm-3 {
                margin-top: 15px !important;
            }
        }

        .homepage-dev-page .hvr-grow-2 {
            display: inline-block;
            vertical-align: middle;
            transform: translateZ(0) scale(1.08);
            backface-visibility: hidden;
            transition-duration: 0.3s;
            transition-property: transform;
        }

        .homepage-dev-page /* enlarged on hover (or keyboard focus) */
            .hvr-grow-2:hover,


        .homepage-dev-page .hvr-grow-2:focus {
              transform:translateZ(0) scale(1.08);  /* ← larger scale */
        }

        .homepage-dev-page .form-section-infolettre {
            padding: 50px 0;
            background-color: #81A7B2;
            color: #fff;
            margin-bottom: -50px;
        }

        .homepage-dev-page .form-section-infolettre .email-infolettre {
            display: block;
            position: relative;
            font-size: 20px;
            width: 100%;
            padding: 10px 70px 10px 15px;
            border: 2px solid rgba(255,255,255,0.5);
            border-radius: 4px;
            height: 52px;
            vertical-align: middle;
            background-color: transparent;
            box-shadow: none;
            color: #fff;
            margin-bottom: 10px;
        }


        .homepage-dev-page .col-infolettre {
            height: 143px;
        }

        .homepage-dev-page .title.medium {
            font-size: 40px;
        }

        .homepage-dev-page .title-sub.medium {
            font-size: 25px;
        }

        .homepage-dev-page .mr-b-10 {
            margin-bottom: 10px;
        }

        .homepage-dev-page .btn-envelope {
            position: absolute;
            margin-bottom: 0;
            color: white;
            background-color: black;
            vertical-align: middle;
            right: 25px;
            top: 9px;
        }

        .homepage-dev-page .btn-envelope:hover {
            background-color: white;
            color: black;
        }

        .homepage-dev-page .email-infolettre::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
            color: white;
            opacity: 1; /* Firefox */
        }

        .homepage-dev-page .email-infolettre:-ms-input-placeholder { /* Internet Explorer 10-11 */
            color: white;
        }

        .homepage-dev-page .email-infolettre::-ms-input-placeholder { /* Microsoft Edge */
            color: white;
        }

        .homepage-dev-page .intro-section {
            height: 110vh;
            position: relative;
            color: #fff;
            text-align: center;
            display: flex;
            margin-top: -80px;
            overflow: hidden;
        }

        .homepage-dev-page .intro-section::before {
            content: "";
            position: absolute;
            inset: 0;
            background: rgba(0,0,0,.35);
            z-index: 1;
            pointer-events: none;
        }

        .homepage-dev-page .documents-main-section {
            background: #f4eddf url('/Pages/images/homepage/section1-background.png') center center / cover no-repeat;
            overflow: hidden;
            padding: 0;
        }

        .homepage-dev-page .documents-main-section .documents-section {
            position: relative;
            display: block;
            box-sizing: border-box;
            width: 100%;
            max-width: 1600px;
            min-height: 645px;
            margin: 0 auto;
            padding: 86px 72px 76px;
            background: transparent !important;
        }

        .homepage-dev-page .documents-section-left {
            position: relative;
            z-index: 2;
            width: 555px;
            max-width: 48%;
            background: none !important;
            background-image: none !important;
        }

        .homepage-dev-page .documents-section-eyebrow {
            display: inline-block;
            margin-bottom: 42px;
            color: #075f76;
            font-size: 17px;
            font-weight: 800;
            letter-spacing: 0;
            line-height: 1.2;
            text-transform: uppercase;
        }

        .homepage-dev-page .documents-section-eyebrow::after {
            content: "";
            display: block;
            width: 74px;
            height: 2px;
            margin-top: 24px;
            background: #d4aa5d;
        }

        .homepage-dev-page .documents-section .title {
            max-width: 590px;
            margin: 0 0 38px;
            color: #111a44;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 45px;
            font-weight: 700;
            line-height: 1.06;
            overflow-wrap: normal;
            word-break: normal;
        }

        .homepage-dev-page .documents-section .title-sub {
            max-width: 620px;
            margin: 0;
            color: #292929;
            font-size: 20px;
            font-weight: 400;
            line-height: 1.58;
        }

        .homepage-dev-page .documents-section-right {
            position: absolute;
            z-index: 1;
            right: 32px;
            top: 50%;
            width: min(52vw, 720px);
            transform: translateY(-49%);
            display: block !important;
        }

        .homepage-dev-page .documents-section-image {
            display: block;
            width: 100%;
            height: auto;
        }

        .homepage-dev-page .info-wrp {
            position: relative;
            z-index: 2;
            max-width: 1300px;
            margin: auto;
            top: initial;
        }

        .homepage-dev-page .full-wh {
            position: absolute;
            top: 0;
            bottom: 0;
            width: 100%;
            z-index: 0;
        }

        @media (max-width: 1280px) and (min-width: 1000px) {
            .homepage-dev-page .price-table {
                display: table;
                border-spacing: 5px;
            }

            .homepage-dev-page .price-table > div {
                padding: 15px;
                margin: 5px;
                width: auto;
                min-width: 200px;
                display: table-cell;
            }
        }

        @media (max-width: 999px) and (min-width: 200px) {
            .homepage-dev-page #price-table-1.container {
                flex-direction: column;
            }

            .homepage-dev-page .price-table > div {
                width: 100%;
                margin: 0 5px 20px 5px;
            }

            .homepage-dev-page .sub-text-abo {
                text-align: center;
            }

            .homepage-dev-page .feedback-box {
                width: auto;
                margin-left: 10px;
                margin-right: 10px;
            }

            .homepage-dev-page .commentaires .title {
                font-size: 40px;
            }

            .homepage-dev-page .commentaires .title-sub {
            }

            .homepage-dev-page .main-text {
                font-size: 50px;
                font-weight: 700;
                color: #fff;
                letter-spacing: initial;
                line-height: 1.4;
            }

            .homepage-dev-page .dunkel {
                height: auto;
            }

            .homepage-dev-page .presentation {
                padding-top: 25px;
            }

            .homepage-dev-page section {
                padding-top: 25px;
                padding-bottom: 25px;
            }

            .homepage-dev-page .col-infolettre {
                height: auto;
            }

            .homepage-dev-page .documents-main-section {
                padding: 0;
            }

            .homepage-dev-page .documents-main-section .documents-section {
                display: block !important;
                height: auto !important;
                min-height: 0;
                padding: 62px 24px;
            }

            .homepage-dev-page .documents-section-left {
                display: block !important;
                width: auto !important;
                max-width: none;
            }

            .homepage-dev-page .documents-section-eyebrow {
                margin-bottom: 28px;
                font-size: 15px;
            }

            .homepage-dev-page .documents-section-eyebrow::after {
                margin-top: 18px;
            }

            .homepage-dev-page .documents-section .title {
                max-width: none;
                margin-bottom: 24px;
                font-size: 38px;
                line-height: 1.12;
            }

            .homepage-dev-page .documents-section .title-sub {
                font-size: 18px;
                line-height: 1.5;
            }

            .homepage-dev-page .documents-section-image {
                max-width: 560px;
            }

            .homepage-dev-page .documents-section-right {
                display: none !important;
            }
        }

        @media (max-width: 1199px) and (min-width: 1000px) {
            .homepage-dev-page .documents-main-section .documents-section {
                min-height: 0;
                padding: 72px 48px;
            }

            .homepage-dev-page .documents-section-left {
                width: auto;
                max-width: 680px;
            }

            .homepage-dev-page .documents-section-right {
                display: none !important;
            }
        }

        .homepage-dev-page .outils-main-section {
            height: auto !important;
            min-height: 0 !important;
            padding: 0 !important;
            background: #003f54;
        }

        .homepage-dev-page .outils-main-section .outils-section {
            display: block !important;
            box-sizing: border-box;
            min-height: 650px;
            height: auto !important;
            padding: 126px 56px 118px !important;
            background:
                radial-gradient(circle at 50% 46%, rgba(20, 103, 123, 0.52), rgba(0, 60, 80, 0.88) 46%, #002f42 100%) !important;
        }

        .homepage-dev-page .outils-section-top {
            display: none !important;
        }

        .homepage-dev-page .outils-section-bottom {
            display: grid !important;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            width: min(100%, 1360px) !important;
            height: auto !important;
            margin: 0 auto;
            color: #fff;
            align-items: stretch;
            align-content: stretch;
        }

        .homepage-dev-page .outils-section-bottom-item {
            position: relative;
            display: block !important;
            box-sizing: border-box;
            width: auto !important;
            padding: 0 42px;
            text-align: center;
        }

        .homepage-dev-page .outils-section-bottom-item + .outils-section-bottom-item {
            border-left: 1px solid rgba(255, 255, 255, 0.38);
        }

        .homepage-dev-page .outils-section-bottom-item-content {
            display: flex !important;
            flex-direction: column !important;
            align-items: center;
            height: 100%;
            color: #fff;
        }

        .homepage-dev-page .outils-section-bottom-item-title {
            display: contents !important;
        }

        .homepage-dev-page .outils-section-bottom-item-title-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 140px !important;
            height: 130px !important;
            margin: 0 auto 46px;
            color: #ffe7c9;
            background: none !important;
            background-image: none !important;
            font-size: 104px;
            line-height: 1;
        }

        .homepage-dev-page .outils-section-bottom-item-title-icon i {
            display: block;
            color: inherit;
            font-size: inherit;
            font-weight: 400;
            line-height: 1;
        }

        .homepage-dev-page .outils-section-bottom-item-title-text {
            margin: 0 0 30px;
            color: #fff;
            font-family: Georgia, 'Times New Roman', serif !important;
            font-size: 38px !important;
            font-weight: 700 !important;
            line-height: 1.16;
        }

        .homepage-dev-page .outils-section-bottom-item-text {
            margin: 0 !important;
            color: #fff;
            font-size: 22px !important;
            font-weight: 300;
            line-height: 1.72;
        }

        @media (max-width: 1199px) {
            .homepage-dev-page .outils-main-section .outils-section {
                padding: 78px 28px !important;
            }

            .homepage-dev-page .outils-section-bottom {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                row-gap: 56px;
            }

            .homepage-dev-page .outils-section-bottom-item {
                padding: 0 28px;
            }

            .homepage-dev-page .outils-section-bottom-item:nth-child(3) {
                border-left: 0;
            }

            .homepage-dev-page .outils-section-bottom-item-title-icon {
                margin-bottom: 28px;
                font-size: 82px;
            }
        }

        @media (max-width: 768px) {
            .homepage-dev-page .outils-main-section .outils-section {
                min-height: 0;
                padding: 58px 26px !important;
            }

            .homepage-dev-page .outils-section-bottom {
                grid-template-columns: 1fr;
                row-gap: 42px;
            }

            .homepage-dev-page .outils-section-bottom-item,


            .homepage-dev-page .outils-section-bottom-item + .outils-section-bottom-item {
                border-left: 0;
                padding: 0;
            }

            .homepage-dev-page .outils-section-bottom-item-title-icon {
                width: 96px !important;
                height: 86px !important;
                margin-bottom: 20px;
                font-size: 66px;
            }

            .homepage-dev-page .outils-section-bottom-item-title-text {
                margin-bottom: 16px;
                font-size: 30px !important;
            }

            .homepage-dev-page .outils-section-bottom-item-text {
                font-size: 18px !important;
                line-height: 1.55;
            }
        }

        .homepage-dev-page .expert-help-main-section {
            position: relative;
            overflow: hidden;
            min-height: 650px;
            padding: 0 !important;
            background: #f8f1e8 url('/Pages/images/homepage/section2-background.png') center center / cover no-repeat;
        }

        .homepage-dev-page .expert-help-section {
            display: grid;
            grid-template-columns: minmax(360px, 0.85fr) minmax(520px, 1.15fr);
            align-items: center;
            gap: 72px;
            box-sizing: border-box;
            width: min(100%, 1480px);
            min-height: 650px;
            margin: 0 auto;
            padding: 96px 72px;
        }

        .homepage-dev-page .expert-help-eyebrow {
            display: inline-block;
            margin-bottom: 38px;
            color: #6d0f27;
            font-size: 18px;
            font-weight: 800;
            letter-spacing: 0;
            line-height: 1.2;
            text-transform: uppercase;
        }

        .homepage-dev-page .expert-help-eyebrow::after {
            content: "";
            display: block;
            width: 74px;
            height: 2px;
            margin-top: 22px;
            background: #9a1c39;
        }

        .homepage-dev-page .expert-help-title {
            max-width: 590px;
            margin: 0 0 32px;
            color: #651026;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 54px;
            font-weight: 700;
            line-height: 1.14;
        }

        .homepage-dev-page .expert-help-text {
            max-width: 585px;
            margin: 0 0 46px;
            color: #1f2630;
            font-size: 22px;
            font-weight: 400;
            line-height: 1.55;
        }

        .homepage-dev-page .expert-help-button,


        .homepage-dev-page .expert-help-button.btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 18px;
            min-width: 438px;
            min-height: 72px;
            padding: 14px 28px;
            border: 0;
            border-radius: 5px;
            background: #760f2a;
            color: #fff !important;
            box-shadow: 0 10px 22px rgba(80, 16, 31, 0.22);
            font-size: 20px;
            font-weight: 700;
            text-decoration: none !important;
        }

        .homepage-dev-page .expert-help-button::before {
            content: "\f007";
            font-family: "Font Awesome 5 Free";
            font-size: 32px;
            font-weight: 400;
        }

        .homepage-dev-page .expert-help-button::after {
            content: "\f061";
            margin-left: auto;
            font-family: "Font Awesome 5 Free";
            font-size: 24px;
            font-weight: 900;
        }

        .homepage-dev-page .expert-help-button:hover,


        .homepage-dev-page .expert-help-button:focus {
            background: #5f0b22;
            color: #fff !important;
        }

        .homepage-dev-page .expert-help-note {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-top: 46px;
            color: #1f2630;
            font-size: 16px;
        }

        .homepage-dev-page .expert-help-note i {
            color: #7d112d;
            font-size: 20px;
        }

        .homepage-dev-page .expert-help-card {
            box-sizing: border-box;
            width: 100%;
            padding: 32px 52px 42px;
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.82);
            box-shadow: 0 18px 34px rgba(92, 64, 40, 0.18);
        }

        .homepage-dev-page .expert-help-card-title {
            margin: 0 0 38px;
            color: #651026;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 30px;
            font-weight: 700;
            line-height: 1.2;
            text-align: center;
        }

        .homepage-dev-page .expert-help-steps {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            align-items: start;
        }

        .homepage-dev-page .expert-help-step {
            position: relative;
            min-height: 220px;
            padding: 0 34px;
            text-align: center;
        }

        .homepage-dev-page .expert-help-step + .expert-help-step {
            border-left: 1px solid rgba(102, 73, 58, 0.16);
        }

        .homepage-dev-page .expert-help-step:not(:last-child)::after {
            content: "";
            position: absolute;
            top: 94px;
            right: -25px;
            width: 48px;
            border-top: 2px dotted #74142d;
        }

        .homepage-dev-page .expert-help-step-number {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 36px;
            height: 36px;
            margin: 0 0 22px;
            border-radius: 50%;
            background: #74142d;
            color: #fff;
            font-size: 18px;
            font-weight: 800;
        }

        .homepage-dev-page .expert-help-step-icon {
            height: 72px;
            margin-bottom: 32px;
            color: #74142d;
            font-size: 66px;
            line-height: 1;
        }

        .homepage-dev-page .expert-help-step-title {
            color: #181820;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 23px;
            font-weight: 700;
            line-height: 1.12;
        }

        @media (max-width: 1199px) {
            .homepage-dev-page .expert-help-section {
                grid-template-columns: 1fr;
                gap: 56px;
                padding: 78px 36px;
            }

            .homepage-dev-page .expert-help-left {
                max-width: 680px;
            }
        }

        @media (max-width: 768px) {
            .homepage-dev-page .expert-help-main-section {
                min-height: 0;
            }

            .homepage-dev-page .expert-help-section {
                min-height: 0;
                padding: 58px 24px;
            }

            .homepage-dev-page .expert-help-title {
                font-size: 38px;
            }

            .homepage-dev-page .expert-help-text {
                font-size: 18px;
            }

            .homepage-dev-page .expert-help-button,


            .homepage-dev-page .expert-help-button.btn {
                width: 100%;
                min-width: 0;
                min-height: 62px;
                font-size: 17px;
            }

            .homepage-dev-page .expert-help-card {
                padding: 28px 22px 34px;
                border-radius: 12px;
            }

            .homepage-dev-page .expert-help-card-title {
                margin-bottom: 28px;
                font-size: 26px;
            }

            .homepage-dev-page .expert-help-steps {
                grid-template-columns: 1fr;
                row-gap: 34px;
            }

            .homepage-dev-page .expert-help-step {
                min-height: 0;
                padding: 0;
            }

            .homepage-dev-page .expert-help-step + .expert-help-step {
                border-left: 0;
            }

            .homepage-dev-page .expert-help-step:not(:last-child)::after {
                display: none;
            }

            .homepage-dev-page .expert-help-step-number {
                margin-right: auto;
                margin-left: auto;
            }

            .homepage-dev-page .expert-help-step-icon {
                margin-bottom: 18px;
                font-size: 56px;
            }
        }

        .homepage-dev-page .abo-section-2 {
            overflow: hidden;
            padding: 78px 0 76px !important;
            background: #fbfaf8 url('/Pages/images/homepage/section3-background.png') center top / cover no-repeat;
        }

        .homepage-dev-page .commentaires-title {
            width: min(100%, 1240px);
            margin: 0 auto 58px;
            padding: 0 32px;
            text-align: center;
        }

        .homepage-dev-page .commentaires-eyebrow {
            display: inline-block;
            margin-bottom: 26px;
            color: #74142d;
            font-size: 16px;
            font-weight: 800;
            letter-spacing: 6px;
            line-height: 1.2;
            text-transform: uppercase;
        }

        .homepage-dev-page .commentaires-eyebrow::after {
            content: "";
            display: block;
            width: 82px;
            height: 1px;
            margin: 22px auto 0;
            background: #74142d;
        }

        .homepage-dev-page .commentaires-eyebrow::before {
            content: "";
            position: relative;
            display: block;
            width: 8px;
            height: 8px;
            margin: 43px auto -47px;
            background: #74142d;
            transform: translateX(45px) rotate(45deg);
        }

        .homepage-dev-page .abo-section-2 .commentaires .title {
            max-width: 1120px;
            margin: 0 auto 24px;
            color: #151b2b;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 49px;
            font-weight: 700;
            line-height: 1.14;
            text-align: center;
        }

        .homepage-dev-page .abo-section-2 .commentaires .title-sub {
            max-width: 780px;
            margin: 0 auto;
            color: #202632;
            font-size: 21px;
            font-weight: 400;
            line-height: 1.45;
            text-align: center;
        }

        .homepage-dev-page .abo-section-2 .homepage-dev-carousel {
            width: min(100%, 1260px);
            max-width: 1260px;
            height: auto !important;
            padding: 0 28px;
        }

        .homepage-dev-page .abo-section-2 .homepage-dev-carousel > .row {
            display: block;
            margin-right: 0;
            margin-left: 0;
        }

        .homepage-dev-page .abo-section-2 .owl-stage {
            display: flex;
            align-items: stretch;
        }

        .homepage-dev-page .abo-section-2 .owl-item {
            display: flex;
        }

        .homepage-dev-page .abo-section-2 .owl-item .item {
            display: flex;
            width: 100%;
            padding: 0 12px 28px;
        }

        .homepage-dev-page .abo-section-2 .feedback-box {
            display: flex;
            flex-direction: column;
            align-items: center;
            box-sizing: border-box;
            width: 100%;
            min-height: 365px;
            margin: 0;
            padding: 26px 42px 30px;
            border: 1px solid rgba(95, 68, 47, 0.16);
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.74);
            box-shadow: 0 18px 32px rgba(80, 61, 42, 0.14);
            color: #171d2a;
            text-align: center;
        }

        .homepage-dev-page .abo-section-2 .custom-quote {
            display: block;
            flex: 0 0 auto;
            height: auto;
            margin: 0 0 14px;
            color: #7a142f;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 0;
            font-weight: 700;
            line-height: 1;
        }

        .homepage-dev-page .abo-section-2 .custom-quote::before {
            content: "\201C";
            font-size: 72px;
            font-weight: 800;
            line-height: 0.65;
        }

        .homepage-dev-page .abo-section-2 .custom-quote::after {
            content: "";
            display: block;
            width: 82px;
            height: 1px;
            margin: 8px auto 0;
            background: #d7caba;
        }

        .homepage-dev-page .abo-section-2 .feedback {
            display: block;
            flex: 0 1 auto;
            margin: 0;
            color: #151b2b;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 17px;
            font-style: italic;
            font-weight: 400;
            line-height: 1.45;
        }

        .homepage-dev-page .abo-section-2 .person {
            position: relative;
            flex: 0 0 auto;
            margin: auto 0 0;
            padding-top: 26px;
            color: #74142d;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 18px;
            font-style: normal;
            font-weight: 400;
        }

        .homepage-dev-page .abo-section-2 .person::before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            width: 86px;
            height: 1px;
            background: #d7caba;
            transform: translateX(-50%);
        }

        .homepage-dev-page .abo-section-2 .owl-theme .owl-nav {
            display: none;
        }

        .homepage-dev-page .abo-section-2 .owl-theme .owl-dots {
            margin-top: 16px;
        }

        .homepage-dev-page .abo-section-2 .owl-theme .owl-dots .owl-dot span {
            width: 14px;
            height: 14px;
            margin: 5px 13px;
            background: #d8d8d8;
            box-shadow: 0 1px 5px rgba(0,0,0,0.14);
        }

        .homepage-dev-page .abo-section-2 .owl-theme .owl-dots .owl-dot.active span,


        .homepage-dev-page .abo-section-2 .owl-theme .owl-dots .owl-dot:hover span {
            background: #0a8b8d;
        }

        @media (max-width: 999px) {
            .homepage-dev-page .abo-section-2 {
                padding: 58px 0 62px !important;
            }

            .homepage-dev-page .abo-section-2 .commentaires .title {
                font-size: 38px;
            }

            .homepage-dev-page .abo-section-2 .commentaires .title-sub {
                font-size: 18px;
            }

            .homepage-dev-page .abo-section-2 .feedback-box {
                min-height: 350px;
                padding: 28px 28px 32px;
            }
        }

        @media (max-width: 768px) {
            .homepage-dev-page .commentaires-title {
                margin-bottom: 36px;
                padding: 0 24px;
            }

            .homepage-dev-page .commentaires-eyebrow {
                font-size: 14px;
                letter-spacing: 4px;
            }

            .homepage-dev-page .abo-section-2 .commentaires .title {
                font-size: 32px;
            }

            .homepage-dev-page .abo-section-2 .homepage-dev-carousel {
                padding: 0 18px;
            }

            .homepage-dev-page .abo-section-2 .owl-item .item {
                padding: 0 0 24px;
            }

            .homepage-dev-page .abo-section-2 .feedback {
                font-size: 17px;
            }
        }

        .homepage-dev-page .trial-main-section {
            position: relative;
            overflow: hidden;
            min-height: 720px;
            padding: 0 !important;
            background: #330806 url('/Pages/images/homepage/section4-background.png') center center / cover no-repeat;
            color: #fff8ea;
        }

        .homepage-dev-page .trial-main-section::before {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(90deg, rgba(55, 4, 6, 0.95) 0%, rgba(71, 5, 8, 0.84) 30%, rgba(74, 6, 8, 0.42) 54%, rgba(74, 6, 8, 0.06) 100%);
            pointer-events: none;
        }

        .homepage-dev-page .trial-section {
            position: relative;
            z-index: 1;
            box-sizing: border-box;
            width: min(100%, 1480px);
            min-height: 720px;
            margin: 0 auto;
            padding: 92px 78px 78px;
        }

        .homepage-dev-page .trial-content {
            max-width: 690px;
        }

        .homepage-dev-page .trial-eyebrow {
            display: inline-block;
            margin-bottom: 44px;
            color: #fff8ea;
            font-size: 18px;
            font-weight: 800;
            letter-spacing: 0;
            line-height: 1.2;
            text-transform: uppercase;
        }

        .homepage-dev-page .trial-eyebrow::after {
            content: "";
            display: block;
            width: 78px;
            height: 2px;
            margin-top: 16px;
            background: #d7b55f;
        }

        .homepage-dev-page .trial-title {
            max-width: 660px;
            margin: 0 0 34px;
            color: #fff8ea;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 63px;
            font-weight: 400;
            line-height: 1.05;
        }

        .homepage-dev-page .trial-list {
            display: grid;
            gap: 16px;
            max-width: 690px;
            margin: 0;
            padding: 0;
            list-style: none;
        }

        .homepage-dev-page .trial-list-item {
            display: grid;
            grid-template-columns: 58px minmax(0, 1fr);
            align-items: center;
            gap: 20px;
            color: #fff;
            font-size: 22px;
            font-weight: 400;
            line-height: 1.35;
        }

        .homepage-dev-page .trial-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 50px;
            height: 50px;
            border: 1px solid #d7b55f;
            border-radius: 50%;
            color: #e2c469;
            font-size: 25px;
        }

        .homepage-dev-page .trial-divider {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            align-items: center;
            gap: 18px;
            width: min(100%, 590px);
            margin-top: 44px;
            color: #d7b55f;
        }

        .homepage-dev-page .trial-divider::before,


        .homepage-dev-page .trial-divider::after {
            content: "";
            height: 1px;
            background: rgba(215, 181, 95, 0.78);
        }

        .homepage-dev-page .trial-divider i {
            display: none;
        }

        .homepage-dev-page .trial-divider span {
            position: relative;
            display: block;
            width: 42px;
            height: 14px;
        }

        .homepage-dev-page .trial-divider span::before,


        .homepage-dev-page .trial-divider span::after {
            content: "";
            position: absolute;
            top: 50%;
            width: 12px;
            height: 12px;
            border: 1px solid #d7b55f;
            transform: translateY(-50%) rotate(45deg);
        }

        .homepage-dev-page .trial-divider span::before {
            left: 6px;
        }

        .homepage-dev-page .trial-divider span::after {
            right: 6px;
        }

        @media (max-width: 1199px) {
            .homepage-dev-page .trial-main-section::before {
                background: rgba(55, 4, 6, 0.78);
            }

            .homepage-dev-page .trial-section {
                min-height: 0;
                padding: 76px 42px;
            }

            .homepage-dev-page .trial-title {
                font-size: 50px;
            }
        }

        @media (max-width: 768px) {
            .homepage-dev-page .trial-main-section {
                min-height: 0;
                background-position: 62% center;
            }

            .homepage-dev-page .trial-section {
                padding: 58px 24px;
            }

            .homepage-dev-page .trial-eyebrow {
                margin-bottom: 28px;
                font-size: 15px;
            }

            .homepage-dev-page .trial-title {
                font-size: 38px;
            }

            .homepage-dev-page .trial-list-item {
                grid-template-columns: 46px minmax(0, 1fr);
                gap: 14px;
                font-size: 18px;
            }

            .homepage-dev-page .trial-icon {
                width: 42px;
                height: 42px;
                font-size: 20px;
            }
        }

        .homepage-dev-page .abo-section-1 {
            padding: 54px 0 66px !important;
            background: #f8efe5;
            color: #24180f;
        }

        .homepage-dev-page .abo-section-1 #price-table-1 {
            display: block !important;
            flex-direction: initial !important;
            width: min(100%, 1180px);
            max-width: 1180px;
            margin: 0 auto;
            padding: 0 28px;
        }

        .homepage-dev-page .abo-section-1 .header-image {
            display: none !important;
            height: 0 !important;
            background: none !important;
        }

        .homepage-dev-page .abo-section-1 .header-container {
            margin-bottom: 68px;
            text-align: center;
        }

        .homepage-dev-page .abo-section-1 .text-left {
            text-align: center !important;
        }

        .homepage-dev-page .abo-section-1 .main-text-abo {
            max-width: 980px;
            margin: 0 auto 22px !important;
            padding: 0;
            color: #24180f;
            font-family: Georgia, 'Times New Roman', serif !important;
            font-size: 48px;
            font-weight: 700;
            line-height: 1.14;
        }

        .homepage-dev-page .abo-section-1 .sub-text-abo {
            margin: 0;
            color: #3a2b20;
            font-family: Georgia, 'Times New Roman', serif !important;
            font-size: 25px;
            font-weight: 400;
            line-height: 1.35;
        }

        .homepage-dev-page .pricing-plans {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 30px;
            align-items: stretch;
            max-width: 980px;
            margin: 0 auto;
        }

        .homepage-dev-page .pricing-card {
            position: relative;
            display: grid;
            grid-template-columns: 54px minmax(0, 1fr);
            gap: 18px;
            min-height: 238px;
            padding: 48px 40px 34px;
            border: 1px solid #d9c7b4;
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.52);
            box-shadow: 0 10px 22px rgba(80, 47, 22, 0.09);
            cursor: pointer;
        }

        .homepage-dev-page .pricing-card-plan {
            min-width: 0;
            min-height: 120px;
        }

        .homepage-dev-page .pricing-card.is-selected {
            border-color: #d33820;
            box-shadow: 0 10px 24px rgba(163, 44, 27, 0.14);
        }

        .homepage-dev-page .pricing-card-input {
            position: absolute;
            width: 1px;
            height: 1px;
            opacity: 0;
            pointer-events: none;
        }

        .homepage-dev-page .pricing-badge {
            position: absolute;
            top: -30px;
            left: 50%;
            min-width: 360px;
            padding: 12px 24px;
            border-radius: 5px;
            background: #007864;
            color: #fff;
            box-shadow: 0 8px 14px rgba(0, 68, 58, 0.28);
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 20px;
            font-weight: 400;
            line-height: 1.1;
            text-align: center;
            transform: translateX(-50%);
        }

        .homepage-dev-page .pricing-radio {
            width: 38px;
            height: 38px;
            margin-top: 10px;
            border: 2px solid #9a7a5f;
            border-radius: 50%;
        }

        .homepage-dev-page .pricing-card-input:checked ~ .pricing-radio {
            border-color: #d33820;
            box-shadow: inset 0 0 0 8px #fff;
            background: #d33820;
        }

        .homepage-dev-page .pricing-card-title {
            margin: 0 0 8px;
            color: #24180f;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 46px;
            font-weight: 700;
            line-height: 1.05;
        }

        .homepage-dev-page .pricing-price {
            margin-bottom: 22px;
            color: #d23820;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 33px;
            font-weight: 400;
            line-height: 1.1;
            white-space: normal;
        }

        .homepage-dev-page .pricing-price small {
            color: #d23820;
            font-size: 28px;
            font-weight: 400;
        }

        .homepage-dev-page .pricing-card-divider {
            grid-column: 1 / -1;
            height: 1px;
            margin: -4px 0 14px;
            background: #d9c7b4;
        }

        .homepage-dev-page .pricing-note {
            grid-column: 1 / -1;
            display: grid;
            grid-template-columns: 34px minmax(0, 1fr);
            gap: 18px;
            align-items: start;
            color: #2f271f;
            font-size: 20px;
            line-height: 1.35;
        }

        .homepage-dev-page .pricing-note span:last-child {
            align-self: start;
            padding-top: 0;
        }

        .homepage-dev-page .pricing-check {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 28px;
            height: 28px;
            margin-top: 2px;
            color: #006b60;
            font-size: 28px;
            font-weight: 900;
            line-height: 1;
        }

        .homepage-dev-page .pricing-check::before {
            color: #006b60;
        }

        .homepage-dev-page .pricing-actions {
            max-width: 560px;
            margin: 38px auto 0;
            text-align: center;
        }

        .homepage-dev-page .pricing-trial-button,


        .homepage-dev-page .pricing-trial-button.btn {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 66px;
            padding: 12px 28px;
            border: 0;
            border-radius: 7px;
            background: #d5361f;
            color: #fff !important;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 30px;
            font-weight: 700;
            text-decoration: none !important;
        }

        .homepage-dev-page .pricing-trial-button:hover,


        .homepage-dev-page .pricing-trial-button:focus {
            background: #b92d1b;
            color: #fff !important;
        }

        .homepage-dev-page .pricing-secure-note {
            display: grid;
            grid-template-columns: 42px minmax(0, 1fr);
            gap: 14px;
            align-items: center;
            max-width: 520px;
            margin: 18px auto 0;
            color: #2f271f;
            font-size: 17px;
            line-height: 1.35;
            text-align: left;
        }

        .homepage-dev-page .pricing-secure-note i {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: rgba(128, 85, 42, 0.12);
            color: #24180f;
            font-size: 18px;
        }

        .homepage-dev-page .pricing-login-divider {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            align-items: center;
            gap: 14px;
            width: 420px;
            max-width: 100%;
            margin: 20px auto 18px;
            color: #b08652;
        }

        .homepage-dev-page .pricing-login-divider::before,


        .homepage-dev-page .pricing-login-divider::after {
            content: "";
            height: 1px;
            background: #d9c7b4;
        }

        .homepage-dev-page .pricing-login-divider span {
            width: 10px;
            height: 10px;
            background: #b08652;
            transform: rotate(45deg);
        }

        .homepage-dev-page .pricing-login {
            color: #24180f;
            font-size: 20px;
            line-height: 1.3;
        }

        .homepage-dev-page .pricing-login a {
            color: #c33220;
            text-decoration: underline;
        }

        @media (max-width: 999px) {
            .homepage-dev-page .abo-section-1 .main-text-abo {
                font-size: 40px;
            }

            .homepage-dev-page .pricing-plans {
                grid-template-columns: 1fr;
                gap: 46px;
            }
        }

        @media (max-width: 768px) {
            .homepage-dev-page .abo-section-1 {
                padding: 44px 0 52px !important;
            }

            .homepage-dev-page .abo-section-1 .main-text-abo {
                font-size: 32px;
            }

            .homepage-dev-page .abo-section-1 .sub-text-abo {
                font-size: 20px;
            }

            .homepage-dev-page .pricing-card {
                grid-template-columns: 42px minmax(0, 1fr);
                padding: 44px 22px 28px;
            }

            .homepage-dev-page .pricing-card-plan {
                min-height: 104px;
            }

            .homepage-dev-page .pricing-badge {
                min-width: 0;
                width: calc(100% - 44px);
                font-size: 16px;
            }

            .homepage-dev-page .pricing-card-title {
                font-size: 36px;
            }

            .homepage-dev-page .pricing-price {
                font-size: 27px;
            }

            .homepage-dev-page .pricing-price small {
                font-size: 22px;
            }

            .homepage-dev-page .pricing-note {
                font-size: 17px;
            }

            .homepage-dev-page .pricing-trial-button,


            .homepage-dev-page .pricing-trial-button.btn {
                font-size: 24px;
            }
        }

        .homepage-dev-page .commentaires-title h2 {
            font-family: unset;
            margin-top: unset;
            margin-bottom: unset;
            font-size: unset;
            font-weight: unset;
            line-height: unset;
        }

        .homepage-dev-page .commentaires .title {
            text-align: center;
            font-size: 37px;
            margin-bottom: 20px;
            font-weight: 300;
            color: #26262d;
        }

        .homepage-dev-page .commentaires .title-sub {
            text-align: center;
            font-size: 19px;
            margin-bottom: 40px;
            font-weight: 300;
            color: #51433a;
        }

        @media (max-width: 1199px) {
            .homepage-dev-page nav.fixed-top,

            .homepage-dev-page .nav-main-container,

            .homepage-dev-page .nav-main-container-bottom,

            .homepage-dev-page .nav-main-container-bottom.navbar,

            .homepage-dev-page .navbar,

            .homepage-dev-page .bg-white {
                background: transparent !important;
            }

            .homepage-dev-page nav.menu-mobile-open,


            .homepage-dev-page nav.menu-mobile-open .nav-main-container,


            .homepage-dev-page nav.menu-mobile-open .nav-main-container-bottom,


            .homepage-dev-page nav.menu-mobile-open .nav-main-container-bottom.navbar,


            .homepage-dev-page nav.menu-mobile-open .navbar,


            .homepage-dev-page nav.menu-mobile-open .bg-white {
                background: #6b1712 !important;
            }

            .homepage-dev-page #navbarSupportedContent,


            .homepage-dev-page #navbarSupportedContent.navbar-collapse,


            .homepage-dev-page #navbarSupportedContent.collapse {
                background: transparent !important;
                padding: 0 !important;
                margin: 0 !important;
            }

            .homepage-dev-page nav.menu-mobile-open #navbarSupportedContent,


            .homepage-dev-page #navbarSupportedContent.navbar-collapse.collapse.show {
                background: #6b1712 !important;
                padding: 0 !important;
            }

            .homepage-dev-page #navbarSupportedContent,


            .homepage-dev-page #navbarSupportedContent.navbar-collapse,


            .homepage-dev-page #navbarSupportedContent.navbar-collapse.collapse.show {
                max-height: calc(100vh - 92px) !important;
                overflow-y: auto !important;
                overflow-x: hidden !important;
                -webkit-overflow-scrolling: touch;
                overscroll-behavior: contain;
            }
        }

/* ============================================================
   Stripe subscription page
============================================================ */
        .abonnement-stripe-page body {
            padding-top: unset;
        }
        .abonnement-stripe-page .footer-section {
            background-color: #d8d0c5;
        }
        .abonnement-stripe-page section {
            padding-top: 60px;
            padding-bottom: 25px;
        }

        .abonnement-stripe-page .abo-section-4 {
            padding-top: 0px;
        }

        .abonnement-stripe-page .footer-section {
            margin-top: 0px;
        }

        .abonnement-stripe-page .menu-mobile-open {
            background-color: rgba(107,101,89,0.9) !important;
        }

        .abonnement-stripe-page .intro-section {
            height: 319px;
            position: relative;
            color: #fff;
            text-align: center;
            display: flex;
            margin-bottom: 35px;
        }

        .abonnement-stripe-page .full-wh {
            position: absolute;
            top: 0;
            bottom: 0;
            width: 100%;
        }

        .abonnement-stripe-page .bg-cover {
            background-size: cover;
            background-repeat: no-repeat;
        }

        .abonnement-stripe-page .bg-cb {
            background-position: center;
        }

        .abonnement-stripe-page .navbar.fixed-top {
            position: absolute;
        }

        .abonnement-stripe-page #ctl00_ContentPanel {
            max-width: unset;
            padding-left: unset;
            padding-right: unset;
        }

        .abonnement-stripe-page .info-wrp {
            position: relative;
            z-index: 9;
            max-width: 1000px;
            margin: auto;
            top: initial;
            padding-left: 113px;
        }

        .abonnement-stripe-page .main-text {
            font-size: 38px;
            font-weight: 700;
            color: #544339;
            margin-bottom: unset !important;
            font-family: 'Lato', sans-serif !important;
            text-align: center;
            padding-bottom: 25px;
            line-height: 1.1;
        }


        .abonnement-stripe-page .sub-text {
            font-size: 20px;
            font-weight: 200;
            color: #544339;
        }

        .abonnement-stripe-page .expert-help-main-section {
            position: relative;
            overflow: hidden;
            min-height: 650px;
            padding: 0 !important;
            border-bottom: 25px solid #C44931;
            background: #f8f1e8 url('/Pages/images/homepage/section2-background.png') center center / cover no-repeat;
        }

        .abonnement-stripe-page .abo-section-4 {
            padding-bottom: 0 !important;
        }

        .abonnement-stripe-page .expert-help-section {
            display: grid;
            grid-template-columns: minmax(360px, 0.85fr) minmax(520px, 1.15fr);
            align-items: center;
            gap: 72px;
            box-sizing: border-box;
            width: min(100%, 1480px);
            min-height: 650px;
            margin: 0 auto;
            padding: 96px 72px;
        }

        .abonnement-stripe-page .expert-help-eyebrow {
            display: inline-block;
            margin-bottom: 38px;
            color: #C44931;
            font-size: 18px;
            font-weight: 800;
            line-height: 1.2;
            text-transform: uppercase;
        }

        .abonnement-stripe-page .expert-help-eyebrow::after {
            content: "";
            display: block;
            width: 74px;
            height: 2px;
            margin-top: 22px;
            background: #C44931;
        }

        .abonnement-stripe-page .expert-help-title {
            max-width: 590px;
            margin: 0 0 32px;
            color: #651026;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 54px;
            font-weight: 700;
            line-height: 1.14;
        }

        .abonnement-stripe-page .expert-help-text {
            max-width: 585px;
            margin: 0 0 46px;
            color: #1f2630;
            font-size: 22px;
            font-weight: 400;
            line-height: 1.55;
        }

        .abonnement-stripe-page .expert-help-note {
            display: flex;
            align-items: center;
            gap: 12px;
            color: #1f2630;
            font-size: 16px;
        }

        .abonnement-stripe-page .expert-help-note i,


        .abonnement-stripe-page .expert-help-note .fa-lock,


        .abonnement-stripe-page .expert-help-note .fa-lock::before {
            color: #C44931 !important;
            font-size: 20px;
        }

        .abonnement-stripe-page .expert-help-card {
            box-sizing: border-box;
            width: 100%;
            padding: 46px 52px 54px;
            border: 1px solid rgba(196, 73, 49, 0.28);
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.82);
            box-shadow: 0 18px 34px rgba(92, 64, 40, 0.18);
        }

        .abonnement-stripe-page .expert-help-card-title {
            position: relative;
            margin: 0 0 38px;
            color: #651026;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 30px;
            font-weight: 700;
            line-height: 1.2;
            text-align: center;
        }

        .abonnement-stripe-page .expert-help-card-title::after {
            content: "";
            position: relative;
            display: block;
            width: 118px;
            height: 1px;
            margin: 22px auto 0;
            background: #C44931;
        }

        .abonnement-stripe-page .expert-help-steps {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            align-items: start;
        }

        .abonnement-stripe-page .expert-help-step {
            position: relative;
            min-height: 220px;
            padding: 0 18px;
            text-align: center;
        }

        .abonnement-stripe-page .expert-help-step + .expert-help-step {
            border-left: 1px solid rgba(102, 73, 58, 0.16);
        }

        .abonnement-stripe-page .expert-help-step-number {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 42px;
            height: 42px;
            margin: 0 auto 34px;
            border-radius: 50%;
            background: #C44931;
            color: #fff;
            font-size: 20px;
            font-weight: 800;
        }

        .abonnement-stripe-page .expert-help-step-icon {
            height: 72px;
            margin-bottom: 32px;
            color: #C44931;
            font-size: 66px;
            line-height: 1;
        }

        .abonnement-stripe-page .expert-help-step-title {
            color: #181820;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 23px;
            font-weight: 700;
            line-height: 1.12;
        }

        .abonnement-stripe-page .abo-section-2 {
            overflow: hidden;
            padding: 78px 0 76px !important;
            background: #fbfaf8 url('/Pages/images/homepage/section3-background.png') center top / cover no-repeat;
        }

        .abonnement-stripe-page .commentaires-title {
            width: min(100%, 1240px);
            margin: 0 auto 58px;
            padding: 0 32px;
            text-align: center;
        }

        .abonnement-stripe-page .abo-section-2 .commentaires .title {
            max-width: 1120px;
            margin: 0 auto 24px;
            color: #151b2b;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 49px;
            font-weight: 700;
            line-height: 1.14;
            text-align: center;
        }

        .abonnement-stripe-page .abo-section-2 .commentaires .title-sub {
            max-width: 780px;
            margin: 0 auto;
            color: #202632;
            font-size: 21px;
            font-weight: 400;
            line-height: 1.45;
            text-align: center;
        }

        .abonnement-stripe-page .abo-section-2 .abonnement-stripe-carousel {
            width: min(100%, 1260px);
            max-width: 1260px;
            height: auto !important;
            padding: 0 28px;
        }

        .abonnement-stripe-page .abo-section-2 .abonnement-stripe-carousel > .row {
            display: block;
            margin-right: 0;
            margin-left: 0;
        }

        .abonnement-stripe-page .abo-section-2 .owl-stage,


        .abonnement-stripe-page .abo-section-2 .owl-item {
            display: flex;
        }

        .abonnement-stripe-page .abo-section-2 .owl-stage {
            align-items: stretch;
        }

        .abonnement-stripe-page .abo-section-2 .owl-item .item {
            display: flex;
            width: 100%;
            padding: 0 12px 28px;
        }

        .abonnement-stripe-page .abo-section-2 .feedback-box {
            display: flex;
            flex-direction: column;
            align-items: center;
            box-sizing: border-box;
            width: 100%;
            min-height: 365px;
            margin: 0;
            padding: 26px 42px 30px;
            border: 1px solid rgba(95, 68, 47, 0.16);
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.74);
            box-shadow: 0 18px 32px rgba(80, 61, 42, 0.14);
            color: #171d2a;
            text-align: center;
        }

        .abonnement-stripe-page .abo-section-2 .custom-quote {
            display: block;
            flex: 0 0 auto;
            height: auto;
            margin: 0 0 14px;
            color: #7a142f;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 0;
            font-weight: 700;
            line-height: 1;
        }

        .abonnement-stripe-page .abo-section-2 .custom-quote::before {
            content: "\201C";
            font-size: 72px;
            font-weight: 800;
            line-height: 0.65;
        }

        .abonnement-stripe-page .abo-section-2 .custom-quote::after {
            content: "";
            display: block;
            width: 82px;
            height: 1px;
            margin: 8px auto 0;
            background: #d7caba;
        }

        .abonnement-stripe-page .abo-section-2 .feedback {
            display: block;
            flex: 0 1 auto;
            margin: 0;
            color: #151b2b;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 17px;
            font-style: italic;
            font-weight: 400;
            line-height: 1.45;
        }

        .abonnement-stripe-page .abo-section-2 .person {
            position: relative;
            flex: 0 0 auto;
            margin: auto 0 0;
            padding-top: 26px;
            color: #74142d;
            font-family: Georgia, 'Times New Roman', serif;
            font-size: 18px;
            font-style: normal;
            font-weight: 400;
        }

        .abonnement-stripe-page .abo-section-2 .person::before {
            content: "";
            position: absolute;
            top: 0;
            left: 50%;
            width: 86px;
            height: 1px;
            background: #d7caba;
            transform: translateX(-50%);
        }

        .abonnement-stripe-page .abo-section-2 .owl-theme .owl-nav {
            display: none;
        }

        .abonnement-stripe-page .abo-section-2 .owl-theme .owl-dots {
            margin-top: 16px;
        }

        .abonnement-stripe-page .abo-section-2 .owl-theme .owl-dots .owl-dot span {
            width: 14px;
            height: 14px;
            margin: 5px 13px;
            background: #d8d8d8;
            box-shadow: 0 1px 5px rgba(0,0,0,0.14);
        }

        .abonnement-stripe-page .abo-section-2 .owl-theme .owl-dots .owl-dot.active span,


        .abonnement-stripe-page .abo-section-2 .owl-theme .owl-dots .owl-dot:hover span {
            background: #0a8b8d;
        }

        @media (max-width: 992px) {
            .abonnement-stripe-page .info-wrp {
                padding-left: 0px;
                max-width: 782px;
            }

            .abonnement-stripe-page .expert-help-section {
                grid-template-columns: 1fr;
                gap: 56px;
                padding: 78px 36px;
            }

            .abonnement-stripe-page .bg-cb {
                background-position: unset;
                background-position-x: -450px;
            }
        }

        @media (max-width: 768px) {
            .abonnement-stripe-page .bg-cb {
                background-position: unset;
                background-position-x: -710px;
            }

            .abonnement-stripe-page .info-wrp {
                max-width: 355px;
                margin-left: 20px;
                margin-right: 20px;
            }

            .abonnement-stripe-page .text-left {
                margin-left: 0px;
            }

            .abonnement-stripe-page .sub-text {
                font-size: 17px;
                padding-top: 13px;
            }

            .abonnement-stripe-page .main-text {
                font-size: 32px;
                line-height: 1;
            }

            .abonnement-stripe-page .navbar-collapse.collapse.show {
                background-color: #d1c2b7 !important;
                margin-left: -16px;
                margin-right: -16px;
                padding-left: 15px;
            }

            .abonnement-stripe-page #price-table-1 {
                flex-direction: column;
            }

            .abonnement-stripe-page .header-image {
                display: none;
            }

            .abonnement-stripe-page .expert-help-main-section {
                min-height: 0;
            }

            .abonnement-stripe-page .expert-help-section {
                min-height: 0;
                padding: 58px 24px;
            }

            .abonnement-stripe-page .expert-help-title {
                font-size: 38px;
            }

            .abonnement-stripe-page .expert-help-text {
                font-size: 18px;
            }

            .abonnement-stripe-page .expert-help-card {
                padding: 28px 22px 34px;
                border-radius: 12px;
            }

            .abonnement-stripe-page .expert-help-card-title {
                margin-bottom: 28px;
                font-size: 26px;
            }

            .abonnement-stripe-page .expert-help-steps {
                grid-template-columns: 1fr;
                row-gap: 34px;
            }

            .abonnement-stripe-page .expert-help-step {
                min-height: 0;
                padding: 0;
            }

            .abonnement-stripe-page .expert-help-step + .expert-help-step {
                border-left: 0;
            }

            .abonnement-stripe-page .expert-help-step-number {
                margin-right: auto;
                margin-left: auto;
            }

            .abonnement-stripe-page .expert-help-step-icon {
                margin-bottom: 18px;
                font-size: 56px;
            }

            .abonnement-stripe-page .abo-section-2 {
                padding: 58px 0 62px !important;
            }

            .abonnement-stripe-page .commentaires-title {
                margin-bottom: 36px;
                padding: 0 24px;
            }

            .abonnement-stripe-page .abo-section-2 .commentaires .title {
                font-size: 32px;
            }

            .abonnement-stripe-page .abo-section-2 .commentaires .title-sub {
                font-size: 18px;
            }

            .abonnement-stripe-page .abo-section-2 .abonnement-stripe-carousel {
                padding: 0 18px;
            }

            .abonnement-stripe-page .abo-section-2 .owl-item .item {
                padding: 0 0 24px;
            }
        }

        .abonnement-stripe-page .commentaires .title {
            text-align: center;
            font-size: 38px;
            margin-bottom: 8px;
            font-weight: 300;
            color: #26262d;
        }

        .abonnement-stripe-page .commentaires .title-sub {
            text-align: center;
            font-size: 19px;
            margin-bottom: 40px;
            font-weight: 300;
            color: #51433a;
        }

/* ============================================================
   New subscription checkout page and controls
============================================================ */

/* Page */
.abonnement-new-page body {
            background-color: #F8F4EE;
        }
        .abonnement-new-page .footer-section {
            background-color: #d8d0c5;
        }
        .abonnement-new-page .abo-section {
            background-color: white;
            box-shadow: 0px 3px 6px #00000029;
            border-radius: 8px;
            opacity: 1;
            margin-bottom: 30px;
            max-width: 780px;
            margin-left: auto;
            margin-right: auto;
        }
        .abonnement-new-page .abo-section-title {
            font-size: 20px;
        }
        .abonnement-new-page .abo-section-subtitle {
            font-size: 16px;
        }
        .abonnement-new-page .abo-panel {
            padding-bottom: 20px;
            padding-left: 30px;
            padding-right: 30px;
            padding-top: 15px
            
        }
        .abonnement-new-page .abo-row {
            display: flex;
            flex-direction: row;
            margin-top: 5px;
            padding-top: 5px;
            justify-content: space-between;
            border-top: 1px solid #707070;
        }
        .abonnement-new-page .hidden-form-control {
            display: none;
        }
        .abonnement-new-page .account-textbox {
            width: 100%;
            height: 50px;
            background-color: white;
            border: 1px solid #707070;
            border-radius: 8px;
            padding-left: 15px;
            padding-right: 15px;
            font-size: 19px;
        }
        .abonnement-new-page .log-in-row {
            display: flex;
            flex-direction: row;
            align-items: center;
            font-size: 14px;
            margin-top: 5px;
        }
        .abonnement-new-page .log-in-row-right {
            margin-left: 5px;
        }
        .abonnement-new-page .log-in-link {
            color: #56b3c9;
            text-decoration: underline; 
        }

/* Create account control */
.abonnement-new-create-account .abo-section-title { margin-bottom:15px; font-size:20px; }

  .abonnement-new-create-account #ctl00_ContentPlaceHolder1_CreateAccountControl_CreateUserWizard1___CustomNav0_StepNextButtonButton { display:none; }

  .abonnement-new-create-account .btn.create-user-button {
    font-size:17px; font-weight:bold; height:40px; border-radius:unset; margin-left:unset;
    box-shadow:0px 3px 6px #00000029; padding-top:1px; margin-top:0px; padding-right:10px; padding-left:10px;
  }

  .abonnement-new-create-account .disclaimer-row { display:flex; flex-direction:row; align-items:flex-start; margin-bottom:15px; }
  .abonnement-new-create-account .disclaimer-row-right { font-size:11px; color:#707070; margin-left:8px; max-width:490px; line-height:1.25; }

  .abonnement-new-create-account .create-account-main-container { margin:18px; }

  .abonnement-new-create-account .account-textbox {
    width:100%; height:40px; margin-bottom:10px; padding-left:10px;
    border:1px solid #d3d3d3; border-radius:8px; box-sizing:border-box;
  }

  .abonnement-new-create-account .name-row { display:flex; flex-direction:row; gap:12px; align-items:flex-start; width:100%; }
  .abonnement-new-create-account .name-row > div { flex:1 1 0; min-width:0; }

  .abonnement-new-create-account .button-row { display:flex; justify-content:center; margin-top:8px; }

  .abonnement-new-create-account .create-account-main-container div[id$="UserNamePanel"],


  .abonnement-new-create-account .create-account-main-container div[id$="EmailPanel"],


  .abonnement-new-create-account .create-account-main-container div[id$="PasswordPanel"],


  .abonnement-new-create-account .create-account-main-container div[id$="DisclaimerPanel"],


  .abonnement-new-create-account .create-account-main-container div[id$="ErrorMessagePanel"] { display:block; width:100%; }

  @media (max-width: 450px){
    .abonnement-new-create-account .name-row { flex-direction:column; }
    .abonnement-new-create-account .prenom-textbox { margin-bottom:0px; }
    .abonnement-new-create-account .name-row > div { display:block; width:100%; }
  }

  .abonnement-new-create-account .validation-summary {
    margin-top:12px; padding:10px 12px; border:1px solid #dc3545; background:#fff5f5; color:#dc3545;
    border-radius:8px; font-size:13px; line-height:1.25;
  }
  .abonnement-new-create-account .validation-summary ul { margin:0; padding-left:18px; }
  .abonnement-new-create-account .validation-summary li { margin:4px 0; }
  .abonnement-new-create-account .validation-summary:empty { display:none; }

  .abonnement-new-create-account .ajax__validatorcallout_popup_table,


  .abonnement-new-create-account .ajax__validatorcallout_callout { display:none !important; visibility:hidden !important; }

  .abonnement-new-create-account .input-error { border-color:#dc3545 !important; background:#fff5f5 !important; outline:none; }

  .abonnement-new-create-account .form-group {
    margin-bottom: unset;
  }

.abonnement-new-create-account .create-user-left { border-right:unset; }

/* Login account control */
.abonnement-new-login-account .login-main-container {
    margin:18px;
  }

  .abonnement-new-login-account .abo-section-title {
    margin-bottom:15px;
    font-size:20px;
    font-weight:700;
  }

  .abonnement-new-login-account .account-textbox {
    width:100%;
    height:40px;
    margin-bottom:10px;
    padding-left:10px;
    border:1px solid #d3d3d3;
    border-radius:8px;
    box-sizing:border-box;
  }

  .abonnement-new-login-account .failed-login-text {
    margin:0 0 6px 0;
    font-size:13px;
  }

  .abonnement-new-login-account .button-row {
    display:flex;
    justify-content:flex-start;
    margin-top:8px;
  }

  .abonnement-new-login-account input.btn.red-button-small.connexion-button {
    font-size:17px;
    font-weight:bold;
    height:40px;
    border-radius:unset;
    margin-left:unset;
    box-shadow:0px 3px 6px #00000029;
    padding:1px 16px;
    border:0;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  .abonnement-new-login-account .log-in-row {
    display:flex;
    flex-direction:row;
    font-size:13px;
    margin-top:5px;
  }

  .abonnement-new-login-account .log-in-row-top {
      justify-content:start;
      margin-left: 0px;
      margin-top: 8px;
      margin-bottom: 7px;
  }

  .abonnement-new-login-account .log-in-row-right {margin-left:5px;}
  .abonnement-new-login-account .log-in-link {color:#56b3c9;text-decoration:underline;}

  .abonnement-new-login-account .password-toggle-wrap {
      position:relative;
    }

    .abonnement-new-login-account .password-toggle-input {
      padding-right:52px;
    }

    .abonnement-new-login-account .password-toggle-button {
      position:absolute;
      right:0;
      top:0;
      width:42px;
      height:40px;
      border:0;
      background:#6b1712;
      color:#fff;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
      border-radius:0 8px 8px 0;
      padding:0;
      box-shadow:0px 3px 6px #00000029;
    }

    .abonnement-new-login-account .password-toggle-button:hover,


    .abonnement-new-login-account .password-toggle-button:focus {
      background:#7d201a;
      color:#fff;
      outline:none;
    }

    .abonnement-new-login-account .password-toggle-button.is-visible {
      background:#4f100d;
    }

    .abonnement-new-login-account .password-eye {
      font-size:30px;
      line-height:1;
      opacity:1;
    }

  @media (max-width:640px){
    .abonnement-new-login-account .login-main-container { margin:14px; }
    .abonnement-new-login-account .button-row { justify-content:stretch; }
    .abonnement-new-login-account input.btn.red-button-small.connexion-button { width:100%; }
  }

  .abonnement-new-login-account .form-group {
      margin-bottom: unset;
  }

/* Overview control */
.abonnement-new-overview .overview-price-section {
        font-size: 16px;
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .abonnement-new-overview .overview-price-section-row {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: baseline;
    }
    .abonnement-new-overview .abo-price-right {
        color: #707070;
        font-weight: bold;
        font-size: 9px;
        padding-top: 5px;
        margin-left: 5px;
        white-space: nowrap;
        min-width: 22px;
    }
    .abonnement-new-overview .abo-price-left {
        white-space: nowrap;
    }
    .abonnement-new-overview .abo-price-label {
        flex-grow: 1;
    }
    .abonnement-new-overview .abo-price-amount {
        display: flex;
        flex-direction: row;
    }
    .abonnement-new-overview .abo-section-title {
        font-weight: bold;
        margin-bottom: 10px !important;
    }
    .abonnement-new-overview .overview-abo-name-text {
        font-size: 20px;
        margin-top: 10px;
    }
    .abonnement-new-overview .overview-abo-description {
        color: #707070;
        font-size: 16px;
        margin-bottom: 20px;
    }
    .abonnement-new-overview .overview-price-regular-row {
        margin-bottom: 12px;
    }
    .abonnement-new-overview .overview-code-promo-text {
        color: #a09998;
        font-size: 12px;
    }
    .abonnement-new-overview .overview-code-promo-text-bottom {
        margin-top: 15px;
    }
    .abonnement-new-overview .overview-price-total-row {
        justify-content: right;
    }
    .abonnement-new-overview .overview-price-total-row .abo-section-subtitle {
        font-weight: bold;
        font-size: 16px;
        margin-right: 10px;
    }
    .abonnement-new-overview .overview-price-discount-row .abo-section-subtitle {
        font-size: 16px;
        color: #707070;
    }
    .abonnement-new-overview .overview-price-section-row .abo-section-subtitle {
        font-weight: bold;
    }
    .abonnement-new-overview .overview-promo-code-row {
        justify-content: right;
    }
    .abonnement-new-overview #PromoCodeInput {
        border: none;
        background-color: #f5f4f4;
        font-size: 16px;
        padding: 8px;
        color: black;
        width: 140px;
        box-sizing: border-box;
    }

    .abonnement-new-overview #PromoCodeInput::placeholder {
        color: #a09998;
        font-size: 16px;
        text-align: center;
    }
    .abonnement-new-overview .apply-promo-button {
        border-radius: unset;
    }
    .abonnement-new-overview .discount-hidden {
        display: none;
    }
    .abonnement-new-overview .abo-section-subtitle {
        display: flex;
        flex-direction: column;
    }
    .abonnement-new-overview .red-button-small {
        margin-bottom: unset;
    }
    .abonnement-new-overview .promo-code-container {
        display: flex;
        flex-direction: column;
        text-align: center;
    }
    .abonnement-new-overview .promo-code-error {
        color: red;
        font-size: 12px;
        margin-top: 5px;
        display: none;
    }
    .abonnement-new-overview .footer-link-spotlight {
        font-weight: normal;
    }
    .abonnement-new-overview .trial-panel {
        box-shadow:
            inset  0   6px 8px -2px  rgba(0,0,0,.20),
            inset -6px 0   6px -3px  rgba(0,0,0,.07),
            inset  6px 0   6px -3px  rgba(0,0,0,.07),
            inset  0  -6px 4px -3px  rgba(0,0,0,.02);
        border-radius: 12px;
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 20px;
        padding-bottom: 25px;
        margin-bottom: 20px;
        margin-top: 20px;
        display: flex;
        flex-direction: row;
    }
    .abonnement-new-overview .trial-title {
        font-size: 16px;
        font-weight: bolder;
        margin-bottom: 20px;
    }
    .abonnement-new-overview .trial-description {
        font-size: 15px;
    }
    .abonnement-new-overview .trial-panel-right {
        background:url('/Pages/abonnementNew/abonnementParts/images/trial-img.png')
               center/contain no-repeat;
        width: 275px;
    }
    .abonnement-new-overview ul {
        padding-left: 15px;
    }
    .abonnement-new-overview ul.custom-check {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    .abonnement-new-overview ul.custom-check li {
        position: relative;
        padding-left: 18px;
    }
    .abonnement-new-overview ul.custom-check li::before {
        content: "\2713";
        color: #c44931;
        font-weight: bold;
        position: absolute;
        left: 0;
        top: 0.15em;
    }
    .abonnement-new-overview .price-section-divider {
        border-top: 1px solid #ccc;
        margin: 15px 0 10px 0;
    }
    @media (max-width: 768px) {
        .abonnement-new-overview .trial-panel-right {
            display: none;
        }
        .abonnement-new-overview .abo-panel {
            padding-left: 20px;
            padding-right: 20px;
        }
    }

/* Payment method control */
.abonnement-new-payment-method .payment-location-row {
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-top: 15px;
        width: 100%;
    }
    .abonnement-new-payment-method .payment-location-type {
        width: 100px;
        text-align: right;
        margin-right: 5px;
        color: #707070;
        font-size: 19px;
    }
    .abonnement-new-payment-method .payment-location-dropdown {
        width: 100%;
    }
    .abonnement-new-payment-method .payment-location-dropdown select {
        color: #707070;
        width: 100%;
        height: 50px;
        background-color: white;
        border: 1px solid #707070;
        appearance: none;
        -webkit-appearance: none; /* Chrome, Safari, Opera */
        -moz-appearance: none;    /* Firefox */
        border-radius: 8px;
        padding-left: 15px;
        padding-right: 15px;
        font-size: 19px;
    }
    .abonnement-new-payment-method .payment-location-dropdown select option {
        color: #707070;
        font-size: 19px;
    }
    .abonnement-new-payment-method .payment-location-dropdown select option:hover {
        background-color: #c6c2c2;
    }
    .abonnement-new-payment-method .payment-option-row {
        margin-top: 15px;
        display: flex;
        flex-direction: row;
    }
    .abonnement-new-payment-method .payment-option {
        margin-right: 20px;
        border: 1px solid #707070;
        border-radius: 8px;
        display: flex;
        align-items: center;
        box-shadow: 0px 3px 6px #00000029;
    }
    .abonnement-new-payment-method .trial-options-wrapper {
        margin-top: 10px;
        margin-bottom: 18px;
    }
    .abonnement-new-payment-method .trial-options-title {
        font-size: 16px;
        color: #1f1f1f;
        margin-bottom: 10px;
        font-weight: 400;
    }
    .abonnement-new-payment-method .trial-option-list {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .abonnement-new-payment-method .trial-option-card {
        position: relative;
        display: block;
        border: 1px solid #707070;
        border-radius: 12px;
        box-shadow: 0px 3px 6px #00000029;
        background-color: #fff;
        cursor: pointer;
        transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }
    .abonnement-new-payment-method .trial-option-card.selected {
        border: 1px solid #2f6fed;
        box-shadow: 0px 0px 0px 1px #2f6fed;
    }
    .abonnement-new-payment-method .trial-option-card:not(.selected) {
        border: 1px solid #707070;
        box-shadow: 0px 3px 6px #00000029;
    }
    .abonnement-new-payment-method .trial-option-card input[type=radio] {
        position: absolute;
        left: 16px;
        top: 22px;
        transform: scale(1.05);
    }
    .abonnement-new-payment-method .trial-option-content {
        padding: 16px 18px 16px 40px;
        color: #1f1f1f;
    }
    .abonnement-new-payment-method .trial-option-name {
        font-size: 16px;
        font-weight: 700;
        margin-bottom: 4px;
        line-height: 1.3;
    }
    .abonnement-new-payment-method .trial-option-line {
        font-size: 14px;
        color: #3f3f3f;
        line-height: 1.45;
    }
    .abonnement-new-payment-method .trial-option-badge {
        position: absolute;
        top: 18px;
        right: 18px;
        background: #ffe3c2;
        color: #f28c28;
        border-radius: 999px;
        padding: 6px 12px;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.2;
    }
    .abonnement-new-payment-method .trial-option-note {
        margin-top: 12px;
        color: #707070;
        font-size: 12px;
        line-height: 1.5;
    }
    .abonnement-new-payment-method .billing-subtitle-row {
        margin-top: 8px;
        margin-bottom: 6px;
    }
    .abonnement-new-payment-method .billing-subtitle {
        font-size: 16px;
        color: #1f1f1f;
    }
    .abonnement-new-payment-method .disabled {
        pointer-events: none; /* Prevent any mouse interactions */
        cursor: not-allowed;  /* Change cursor appearance */
        filter: grayscale(100%); /* Apply black and white effect */
        opacity: 0.5; /* Optionally reduce opacity */
    }

    .abonnement-new-payment-method /* Styling for the Stripe button */
    .stripe-button {
      background: url('/Pages/abonnementNew/abonnementParts/images/credit.png') no-repeat center center;
      background-size: contain; /* Adjust as needed: contain, cover, or specific dimensions */
      width: 140px;   /* Set to the image width */
      height: 98px;   /* Set to the image height */
      border: none;   /* Remove default border if desired */
      cursor: pointer;
    }

    .abonnement-new-payment-method /* Styling for the PayPal hyperlink */
    .paypal-button {
      background: url('/Pages/abonnementNew/abonnementParts/images/paypal.png') no-repeat center center;
      background-size: contain;
      width: 210px;   /* Set to the image width */
      height: 100px;   /* Set to the image height */
      display: inline-block; /* Allow width and height to be applied */
      text-decoration: none; /* Remove underline if present */
    }

    .abonnement-new-payment-method .already-subscribed-title {
        font-size: 20px;
        font-weight: bolder;
    }
    .abonnement-new-payment-method .already-subscribed-text {
        color: #707070;
    }
    .abonnement-new-payment-method .already-subscribed-info {
        font-weight: bold;
    }

    @media (max-width: 460px) {
        .abonnement-new-payment-method .payment-option-row {
            flex-direction: column;
        }
        .abonnement-new-payment-method .payment-option {
            margin-bottom: 15px;
            justify-content: center;
        }
        .abonnement-new-payment-method .payment-location-type {
            width: 130px;
        }
        .abonnement-new-payment-method .trial-option-name {
            font-size: 15px;
        }
        .abonnement-new-payment-method .trial-option-line {
            font-size: 13px;
        }
        .abonnement-new-payment-method .trial-option-badge {
            position: static;
            display: inline-block;
            margin-top: 8px;
        }
    }

/* ============================================================
   Elastic App Search pages
============================================================ */

/* Elastic search version 1 */
.elastic-app-search-page.elastic-app-search-v1 #as-mention-chip {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v1 .result-heading {
            font-weight: bold;
            font-size: 1.1rem;
            margin-bottom: 0.5rem;
        }

        .elastic-app-search-page.elastic-app-search-v1 .result-item {
            font-size: 14px;
            justify-content: unset;
        }
        .elastic-app-search-page.elastic-app-search-v1 .result-item b {
            min-width: 300px;
        }

        .elastic-app-search-page.elastic-app-search-v1 .record-image {
            width: 96px;
            height: 96px;
            border: 1px solid #561414;
        }

        .elastic-app-search-page.elastic-app-search-v1 .collection-filter-item,


        .elastic-app-search-page.elastic-app-search-v1 .country-filter-item,


        .elastic-app-search-page.elastic-app-search-v1 .province-filter-item,


        .elastic-app-search-page.elastic-app-search-v1 .region-filter-item,


        .elastic-app-search-page.elastic-app-search-v1 .city-filter-item,


        .elastic-app-search-page.elastic-app-search-v1 .date-filter-item {
            text-decoration: none;
            cursor: pointer;
            color: #508591 !important;
        }

        .elastic-app-search-page.elastic-app-search-v1 .collection-filter-group,


        .elastic-app-search-page.elastic-app-search-v1 .collection-filter-sub-group,


        .elastic-app-search-page.elastic-app-search-v1 .date-filter-group,


        .elastic-app-search-page.elastic-app-search-v1 .date-filter-sub-group {
            text-decoration: none;
            cursor: pointer;
            color: #508591 !important;
            margin-right: -15px;
        }

        .elastic-app-search-page.elastic-app-search-v1 .collection-filter-group-child,


        .elastic-app-search-page.elastic-app-search-v1 .collection-filter-sub-group-child,


        .elastic-app-search-page.elastic-app-search-v1 .date-filter-group-child,


        .elastic-app-search-page.elastic-app-search-v1 .date-filter-sub-group-child {
            margin-left: 20px;
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v1 .container {
            max-width: unset;
            margin-top: -40px;
            padding-left: unset;
            padding-right: unset;
            margin-left: unset;
            margin-right: unset;
        }

        .elastic-app-search-page.elastic-app-search-v1 .footer-section {
            background-color: #d8d0c5;
        }

        .elastic-app-search-page.elastic-app-search-v1 .footer-mobile {
            max-width: 1140px !important;
            margin-left: auto !important;
            margin-right: auto !important;
        }

        @media (max-width: 1200px) {
            .elastic-app-search-page.elastic-app-search-v1 .footer-mobile {
                max-width: 960px !important;
            }
        }

        @media (max-width: 992px) {
            .elastic-app-search-page.elastic-app-search-v1 .footer-mobile {
                max-width: 720px !important;
            }
        }

        @media (max-width: 768px) {
            .elastic-app-search-page.elastic-app-search-v1 .footer-mobile {
                max-width: 540px !important;
            }
        }

        .elastic-app-search-page.elastic-app-search-v1 .btn {
            border-radius: unset;
        }

        .elastic-app-search-page.elastic-app-search-v1 .result-item .button-details {
            padding-left: unset;
            padding-right: unset;
            padding-top: 2px;
            padding-bottom: unset;
            margin-bottom: unset;
        }

        .elastic-app-search-page.elastic-app-search-v1 .search-page-header .button-details {
            padding-top: 2px;
            padding-bottom: 2px;
        }

        .elastic-app-search-page.elastic-app-search-v1 .button-fixed-size {
            width: unset;
            height: 30px;
            padding-top: 2px;
            font-weight: bold;
            font-family: 'Open Sans', sans-serif;
        }

        .elastic-app-search-page.elastic-app-search-v1 .checkbox-tooltip {
            position: absolute;
            display: none;
            background-color: white;
            border: 1px solid #ccc;
            padding: 10px;
            z-index: 1000;
        }

            .elastic-app-search-page.elastic-app-search-v1 .checkbox-tooltip.active {
                display: block;
            }

            .elastic-app-search-page.elastic-app-search-v1 .checkbox-tooltip .sub-checkbox {
                margin-left: 20px;
            }

            .elastic-app-search-page.elastic-app-search-v1 .checkbox-tooltip label {
                margin-left: 5px;
            }

        .elastic-app-search-page.elastic-app-search-v1 input[type="checkbox"] { 
            accent-color: #561414;
        }

        .elastic-app-search-page.elastic-app-search-v1 .loading-spinner {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 300px;
        }

        .elastic-app-search-page.elastic-app-search-v1 .loading-spinner-hidden {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v1 .loading-spinner-image {
            width: 50px;
            height: 50px;
        }

        .elastic-app-search-page.elastic-app-search-v1 .card-block.text-center {
            font-size: 12pt;
        }

        .elastic-app-search-page.elastic-app-search-v1 .lastViewedPlaceholder {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v1 .all-must-match {
            display: none !important;
        }

        .elastic-app-search-page.elastic-app-search-v1 .exact-check-row {
            display: ruby;
        }

        .elastic-app-search-page.elastic-app-search-v1 .popover-body label {
            font-weight: unset;
        }

        .elastic-app-search-page.elastic-app-search-v1 #btnAdvancedSearch {
            margin-right: 10px;
        }

        @media (max-width: 550px) {
            .elastic-app-search-page.elastic-app-search-v1 .btn.red-button-small.button-details {
                height: unset;
                margin-top: 20px;
            }

            .elastic-app-search-page.elastic-app-search-v1 .search-page-header .btn {
                margin-right: 10px;
                margin-left: 10px;
                line-height: 18px;
            }

            .elastic-app-search-page.elastic-app-search-v1 .card-block.text-center {
                font-size: 16px;
            }
        }

        @media (max-width: 1250px) {
            .elastic-app-search-page.elastic-app-search-v1 .ra-add-event-container {
                flex-direction: column;
            }
            .elastic-app-search-page.elastic-app-search-v1 .ra-events-container {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                margin-top: 10px;
            }
            .elastic-app-search-page.elastic-app-search-v1 .advanced-filter-option {
                margin-bottom: 7px;
            }
            .elastic-app-search-page.elastic-app-search-v1 .ra-added-fields-container {
                margin-bottom: 10px;
                margin-top: 10px;
            }
        }
        @media (min-width: 1145px) {
            .elastic-app-search-page.elastic-app-search-v1 .txtYear::placeholder {
                opacity: 0;
            }
            .elastic-app-search-page.elastic-app-search-v1 .txtLocation::placeholder {
                opacity: 0;
            }
            .elastic-app-search-page.elastic-app-search-v1 .txtIndiv::placeholder {
                opacity: 0;
            }
            .elastic-app-search-page.elastic-app-search-v1 .txtIndiv::placeholder {
                opacity: 0;
            }
        }
        @media (max-width: 1145px) {
            .elastic-app-search-page.elastic-app-search-v1 .ra-added-fields-container-left {
                flex-direction: column;
            }
            .elastic-app-search-page.elastic-app-search-v1 .ra-events-header {
                display: none !important;
            }
            .elastic-app-search-page.elastic-app-search-v1 .ra-indiv-header {
                display: none !important;
            }
            .elastic-app-search-page.elastic-app-search-v1 .ra-added-fields-container-left {
                align-items: flex-start;
            }
            .elastic-app-search-page.elastic-app-search-v1 .advanced-search-relation-label {
                justify-content: left;
                margin-bottom: 5px;
            }
            .elastic-app-search-page.elastic-app-search-v1 #btnAdvancedSearch {
                margin-right: unset;
            }
            .elastic-app-search-page.elastic-app-search-v1 .ra-search-field-container {
                margin-right: unset;
            }
        }
        @media (max-width: 515px) {
            .elastic-app-search-page.elastic-app-search-v1 .beta-buttons-link-form {
                display: none;
            }
        }
        .elastic-app-search-page.elastic-app-search-v1 .ra-prenom-header {
            width: 330px;
        }

        .elastic-app-search-page.elastic-app-search-v1 #filtersContainer.filters-loading {
            opacity: 0.45;
            pointer-events: none;
            user-select: none;
        }

        .elastic-app-search-page.elastic-app-search-v1 .search-result-list-filters.filters-loading {
            cursor: wait;
        }

/* Elastic search version 2 */
.elastic-app-search-page.elastic-app-search-v2 .result-heading {
            font-weight: bold;
            font-size: 1.1rem;
            margin-bottom: 0.5rem;
        }

        .elastic-app-search-page.elastic-app-search-v2 .result-item {
            font-size: 14px;
            justify-content: unset;
        }

        .elastic-app-search-page.elastic-app-search-v2 .result-item b {
            min-width: 300px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .record-image {
            width: 96px;
            height: 96px;
            border: 1px solid #561414;
        }

        .elastic-app-search-page.elastic-app-search-v2 .collection-filter-item,


        .elastic-app-search-page.elastic-app-search-v2 .country-filter-item,


        .elastic-app-search-page.elastic-app-search-v2 .province-filter-item,


        .elastic-app-search-page.elastic-app-search-v2 .region-filter-item,


        .elastic-app-search-page.elastic-app-search-v2 .city-filter-item,


        .elastic-app-search-page.elastic-app-search-v2 .date-filter-item {
            text-decoration: none;
            cursor: pointer;
            color: #508591 !important;
        }

        .elastic-app-search-page.elastic-app-search-v2 .collection-filter-group,


        .elastic-app-search-page.elastic-app-search-v2 .collection-filter-sub-group,


        .elastic-app-search-page.elastic-app-search-v2 .date-filter-group,


        .elastic-app-search-page.elastic-app-search-v2 .date-filter-sub-group {
            text-decoration: none;
            cursor: pointer;
            color: #508591 !important;
            margin-right: -15px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .collection-filter-group-child,


        .elastic-app-search-page.elastic-app-search-v2 .collection-filter-sub-group-child,


        .elastic-app-search-page.elastic-app-search-v2 .date-filter-group-child,


        .elastic-app-search-page.elastic-app-search-v2 .date-filter-sub-group-child {
            margin-left: 20px;
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .container {
            max-width: unset;
            margin-top: -40px;
            padding-left: unset;
            padding-right: unset;
            margin-left: unset;
            margin-right: unset;
        }

        .elastic-app-search-page.elastic-app-search-v2 .footer-section {
            background-color: #d8d0c5;
        }

        .elastic-app-search-page.elastic-app-search-v2 .footer-mobile {
            max-width: 1140px !important;
            margin-left: auto !important;
            margin-right: auto !important;
        }

        @media (max-width: 1200px) {
            .elastic-app-search-page.elastic-app-search-v2 .footer-mobile {
                max-width: 960px !important;
            }
        }

        @media (max-width: 992px) {
            .elastic-app-search-page.elastic-app-search-v2 .footer-mobile {
                max-width: 720px !important;
            }
        }

        @media (max-width: 768px) {
            .elastic-app-search-page.elastic-app-search-v2 .footer-mobile {
                max-width: 540px !important;
            }
        }

        .elastic-app-search-page.elastic-app-search-v2 .btn {
            border-radius: unset;
        }

        .elastic-app-search-page.elastic-app-search-v2 .result-item .button-details {
            padding-left: unset;
            padding-right: unset;
            padding-top: 2px;
            padding-bottom: unset;
            margin-bottom: unset;
        }

        .elastic-app-search-page.elastic-app-search-v2 .search-page-header .button-details {
            padding-top: 2px;
            padding-bottom: 2px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .button-fixed-size {
            width: unset;
            height: 30px;
            padding-top: 2px;
            font-weight: bold;
            font-family: 'Open Sans', sans-serif;
        }

        .elastic-app-search-page.elastic-app-search-v2 .checkbox-tooltip {
            position: absolute;
            display: none;
            background-color: white;
            border: 1px solid #ccc;
            padding: 10px;
            z-index: 1000;
        }

        .elastic-app-search-page.elastic-app-search-v2 .checkbox-tooltip.active {
            display: block;
        }

        .elastic-app-search-page.elastic-app-search-v2 .checkbox-tooltip .sub-checkbox {
            margin-left: 20px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .checkbox-tooltip label {
            margin-left: 5px;
        }

        .elastic-app-search-page.elastic-app-search-v2 input[type="checkbox"] {
            accent-color: #561414;
        }

        .elastic-app-search-page.elastic-app-search-v2 .loading-spinner {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 300px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .loading-spinner-hidden {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .loading-spinner-image {
            width: 50px;
            height: 50px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .card-block.text-center {
            font-size: 12pt;
        }

        .elastic-app-search-page.elastic-app-search-v2 .lastViewedPlaceholder {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .all-must-match {
            display: none !important;
        }

        .elastic-app-search-page.elastic-app-search-v2 .popover-body label {
            font-weight: unset;
        }

        .elastic-app-search-page.elastic-app-search-v2 #btnAdvancedSearch {
            margin-right: 10px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .exact-check-row {
            display: flex;
            align-items: center;
            min-height: 34px;
            gap: 5px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .exact-check-row input[type="checkbox"] {
            margin: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .exact-check-row label {
            margin-bottom: 0;
            line-height: 16px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .basic-force-image-container {
            display: flex;
            align-items: center;
            gap: 5px;
            margin-top: 7px;
            white-space: nowrap;
            height: 34px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .basic-force-image-container input[type="checkbox"] {
            margin: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .basic-force-image-container label {
            margin-bottom: 0;
            line-height: 16px;
            font-weight: normal;
        }

        .elastic-app-search-page.elastic-app-search-v2 .basic-force-image-container .exact-check-label {
            font-weight: normal;
        }

        .elastic-app-search-page.elastic-app-search-v2 /*
            Individual broadness sliders:
            the visual slider styling now comes from site.css:
            .broadness-range,


        .elastic-app-search-page.elastic-app-search-v2 .slider-container,


        .elastic-app-search-page.elastic-app-search-v2 .ticks,


        .elastic-app-search-page.elastic-app-search-v2 .tick,


        .elastic-app-search-page.elastic-app-search-v2 .custom-thumb,


        .elastic-app-search-page.elastic-app-search-v2 .slider-tag.
            Keep only row sizing/positioning here so we do not fight site.css.
        */
        .indiv-slider-row {
            min-height: 34px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .indiv-slider-row .slider-container-main {
            align-items: center;
        }

        .elastic-app-search-page.elastic-app-search-v2 .indiv-slider-row .slider-container {
            width: 160px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .indiv-slider-row .slider-value-container,


        .elastic-app-search-page.elastic-app-search-v2 .indiv-slider-row .slider-tooltip {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section {
            margin-top: 16px;
            border: 1px solid #d6d0c8;
            background: #fff;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-header-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 20px;
            border-bottom: 1px solid #e7e0d8;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-toggle-zone {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 20px;
            flex: 1;
            min-width: 0;
            padding: 10px 12px;
            cursor: pointer;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-heading-copy {
            min-width: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-title {
            font-weight: 700;
            font-size: 14px;
            margin-bottom: 2px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-help {
            display: none;
            font-size: 12px;
            color: #333;
            margin-bottom: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-help {
            display: block;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-actions {
            display: flex;
            align-items: center;
            gap: 20px;
            padding: 10px 12px 10px 0;
            font-size: 12px;
            white-space: nowrap;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-actions a {
            color: #561414 !important;
            text-decoration: underline;
            cursor: pointer;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-selection-action {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-selection-action {
            display: inline;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-reset-action {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-reset-action {
            display: inline;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-modify-action {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-toggle {
            display: inline-flex;
            width: 18px;
            height: 18px;
            flex: 0 0 auto;
            align-items: center;
            justify-content: center;
            text-decoration: none !important;
            pointer-events: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-chevron {
            display: inline-block;
            width: 8px;
            height: 8px;
            border-right: 2px solid #111;
            border-bottom: 2px solid #111;
            transform: rotate(45deg);
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-chevron {
            transform: rotate(225deg);
            margin-top: 5px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-summary-text {
            display: block;
            margin-top: 2px;
            font-size: 12px;
            color: #333;
            font-weight: 400;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-summary-text {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-editor {
            display: none;
            padding: 0 12px 12px 12px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section.expanded .document-limit-editor {
            display: block;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-grid {
            position: relative;
            min-height: 260px;
            padding-top: 10px;
            border-top: 1px solid #f0ebe5;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-grid:before {
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            left: 385px;
            width: 1px;
            background: #d9d2ca;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-grid:after {
            content: "";
            position: absolute;
            top: 36px;
            left: 0;
            right: 0;
            height: 1px;
            background: #eee;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-column {
            display: contents;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-item {
            padding: 1px 0;
            margin-bottom: 3px;
            width: 350px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-main {
            display: flex;
            align-items: center;
            gap: 6px;
            cursor: pointer;
            min-height: 21px;
            line-height: 18px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-item.active .document-type-label {
            color: #561414;
            font-weight: 700;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-main input[type="checkbox"],


        .elastic-app-search-page.elastic-app-search-v2 .document-collection-row input[type="checkbox"] {
            margin: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-label {
            font-weight: 400;
            font-size: 13px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-count {
            margin-left: auto;
            padding-left: 12px;
            font-size: 11px;
            color: #777;
            font-weight: 400;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-collections-heading {
            position: absolute;
            left: 385px;
            top: 10px;
            right: 0;
            font-weight: 700;
            font-size: 13px;
            min-height: 27px;
            padding-left: 24px;
            padding-bottom: 5px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-types-heading {
            font-weight: 700;
            font-size: 13px;
            margin-bottom: 5px;
            width: 350px;
            padding-bottom: 5px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-collections {
            display: none;
            position: absolute;
            left: 385px;
            right: 0;
            top: 43px;
            margin: 0;
            padding-left: 24px;
            padding-bottom: 10px;
            min-height: 190px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-item.active .document-type-collections {
            display: block;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-collection-row {
            display: flex;
            align-items: center;
            gap: 6px;
            min-height: 20px;
            font-size: 12px;
            line-height: 16px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-collection-row label {
            margin: 0;
            font-weight: 400;
            cursor: pointer;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            padding-top: 10px;
            border-top: 1px solid #e7e0d8;
            font-size: 12px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-footer-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 16px;
            min-height: 30px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-footer a {
            display: inline-flex;
            align-items: center;
            min-height: 30px;
            color: #561414 !important;
            cursor: pointer;
            line-height: 16px;
            text-decoration: underline;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-apply {
            margin: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-meta {
            color: #333;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-resource {
            display: none;
        }

        /* Two-pane collection picker used by advanced search. */
        .elastic-app-search-page.elastic-app-search-v2 .document-limit-section {
            border-color: #d8ccc4;
            border-radius: 4px;
            background: #fdfbf9;
            overflow: hidden;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-header-row {
            border-bottom-color: #e2dad4;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-toggle-zone {
            padding: 12px 14px 9px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-title {
            font-weight: 600;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-actions {
            padding-right: 20px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-editor {
            padding: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-grid {
            min-height: 305px;
            padding: 10px 14px 12px;
            border-top: 0;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-grid:before,


        .elastic-app-search-page.elastic-app-search-v2 .document-collections-heading,


        .elastic-app-search-page.elastic-app-search-v2 .document-type-collections {
            left: 39%;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-item,


        .elastic-app-search-page.elastic-app-search-v2 .document-types-heading {
            width: calc(39% - 30px);
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-type-item.active .document-type-label {
            color: inherit;
            font-weight: 400;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-collections-heading,


        .elastic-app-search-page.elastic-app-search-v2 .document-type-collections {
            padding-left: 22px;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-meta {
            display: none;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-selection-invalid {
            display: none;
            margin-top: 8px;
            color: #b00020;
            font-size: 12px;
            font-weight: 600;
        }

        .elastic-app-search-page.elastic-app-search-v2 .document-limit-selection-invalid-show {
            display: block;
        }

        @media (max-width: 768px) {
            .elastic-app-search-page.elastic-app-search-v2 .document-limit-header-row {
                flex-direction: column;
                align-items: stretch;
                gap: 0;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-limit-toggle-zone {
                padding-bottom: 6px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-limit-actions {
                justify-content: flex-end;
                padding: 0 12px 10px 12px;
                gap: 14px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-type-grid {
                min-height: 0;
                padding-top: 8px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-type-grid:before {
                display: none;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-type-grid:after {
                display: none;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-type-item {
                width: 100%;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-collections-heading,


            .elastic-app-search-page.elastic-app-search-v2 .document-type-collections {
                position: static;
                margin-left: 22px;
                padding-left: 14px;
                border-left: 1px solid #d9d2ca;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-collections-heading,


            .elastic-app-search-page.elastic-app-search-v2 .document-types-heading {
                margin-top: 10px;
                width: auto;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-limit-footer {
                flex-direction: column;
                align-items: flex-start;
            }

            .elastic-app-search-page.elastic-app-search-v2 .document-limit-footer-actions {
                width: 100%;
                justify-content: space-between;
            }
        }

        @media (max-width: 550px) {
            .elastic-app-search-page.elastic-app-search-v2 .btn.red-button-small.button-details {
                height: unset;
                margin-top: 20px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .search-page-header .btn {
                margin-right: 10px;
                margin-left: 10px;
                line-height: 18px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .card-block.text-center {
                font-size: 16px;
            }
        }

        @media (max-width: 1250px) {
            .elastic-app-search-page.elastic-app-search-v2 .ra-add-event-container {
                flex-direction: column;
            }

            .elastic-app-search-page.elastic-app-search-v2 .ra-events-container {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                margin-top: 10px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .advanced-filter-option {
                margin-bottom: 7px;
            }

            .elastic-app-search-page.elastic-app-search-v2 .ra-added-fields-container {
                margin-bottom: 10px;
                margin-top: 10px;
            }
        }

        @media (min-width: 1145px) {
            .elastic-app-search-page.elastic-app-search-v2 .txtYear::placeholder {
                opacity: 0;
            }

            .elastic-app-search-page.elastic-app-search-v2 .txtLocation::placeholder {
                opacity: 0;
            }

            .elastic-app-search-page.elastic-app-search-v2 .txtIndiv::placeholder {
                opacity: 0;
            }
        }

        @media (max-width: 1145px) {
            .elastic-app-search-page.elastic-app-search-v2 .ra-added-fields-container-left {
                flex-direction: column;
            }

            .elastic-app-search-page.elastic-app-search-v2 .ra-events-header {
                display: none !important;
            }

            .elastic-app-search-page.elastic-app-search-v2 .ra-indiv-header {
                display: none !important;
            }

            .elastic-app-search-page.elastic-app-search-v2 .ra-added-fields-container-left {
                align-items: flex-start;
            }

            .elastic-app-search-page.elastic-app-search-v2 .advanced-search-relation-label {
                justify-content: left;
                margin-bottom: 5px;
            }

            .elastic-app-search-page.elastic-app-search-v2 #btnAdvancedSearch {
                margin-right: unset;
            }

            .elastic-app-search-page.elastic-app-search-v2 .ra-search-field-container {
                margin-right: unset;
            }
        }

        @media (max-width: 515px) {
            .elastic-app-search-page.elastic-app-search-v2 .beta-buttons-link-form {
                display: none;
            }
        }

        .elastic-app-search-page.elastic-app-search-v2 .ra-prenom-header {
            width: 330px;
        }

/* ============================================================
   Record modal standalone page and controls
============================================================ */

/* Standalone modal document */
html.record-modal-page {height:auto;margin:0;overflow:auto;}
        .record-modal-page body {
            background-color:#F8F4EE;
            margin:0;
            padding:0px 30px 0px;
            overflow:auto;
            -webkit-overflow-scrolling:touch;
        }

      .record-modal-page .footer-section {background-color:#d8d0c5}

      .record-modal-page .abo-section {
        background-color:#fff;
        box-shadow:0 3px 6px #00000029;
        border-radius:8px;
        max-width:var(--rm-content-max);
        width:100%;
        opacity:1;
      }

      .record-modal-page .abo-section-title {font-size:36px;font-weight:700}
      .record-modal-page .abo-section-subtitle {font-size:20px;font-weight:700}
      .record-modal-page .abo-panel {}

      .record-modal-page .abo-row {
        display:flex;flex-direction:row;margin-top:5px;padding-top:5px;
        justify-content:space-between;border-top:1px solid #707070
      }

      .record-modal-page .hidden-form-control {display:none}

      .record-modal-page .account-textbox {
        width:100%;
        height:50px;
        background:#fff;
        border:1px solid #707070;
        border-radius:8px;
        font-size:19px
      }

      .record-modal-page .log-in-row {
          display:flex;
          flex-direction:row;
          align-items:center;
          font-size:13px;
          justify-content: center;
          margin-bottom: 18px;
          margin-left: 15px;
      }

      .record-modal-page .log-in-row-right {margin-left:5px}
      .record-modal-page .log-in-link {color:#56b3c9;text-decoration:underline}

      .record-modal-page .wrap {padding:12px 14px}

      .record-modal-page .record-modal-container {
        width:100%;
        max-width:var(--rm-content-max);
        margin:0 auto;
        display:grid;
        grid-template-rows:auto auto auto;
        gap:12px;
        margin-bottom: 30px;
      }

      .record-modal-page .rm-hero {
        background:transparent;
        padding:30px 0px 30px;
        text-align:center;
        width:95%;
        max-width:var(--rm-content-max);
        margin:0 auto;
      }
      .record-modal-page .rm-hero-title {
        margin:0 0 6px;
        font-weight:800;
        font-size:27px;
        line-height:1.25
      }
      .record-modal-page .rm-hero-sub {
        margin:0;
        line-height:1.25;
        font-weight: bold;
      }

      .record-modal-page .rm-teaser {
          background:transparent;
          padding:0 6px 8px;
          display:flex;
          align-items:flex-start;
          justify-content:center;

          gap:24px;
          width:100%;
          max-width:var(--rm-content-max);
          margin:0 auto;
      }

      .record-modal-page .rm-img-ph {
        width:92px;
        height:92px;
        background:#ddd;
        border-radius:8px;
        object-fit:cover;
      }

      .record-modal-page .rm-benefits {
          list-style:none;
          margin:0;
          padding:0;

          display:grid;
          grid-template-columns:1fr 1fr;
          column-gap:24px;
          row-gap:10px;
      }

      .record-modal-page .rm-benefits > li {
        flex:0 0 calc(50% - 27.5px);
        box-sizing:border-box;
      }

      .record-modal-page .rm-benefits li {position:relative;padding-left:28px;line-height:1.25}
      .record-modal-page .rm-benefits li::before {
        content:"";
        position:absolute;left:0;top:2px;
        width:20px;height:20px;border-radius:50%;
        background:#449D93;
        box-shadow:0 0 0 2px rgba(46,125,50,.15) inset
      }
      .record-modal-page .rm-benefits li::after {
        content:"";
        position:absolute;left:4px;top:6px;
        width:12px;height:12px;
        background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/contain no-repeat
      }

      .record-modal-page .rm-teaser.no-img {
          justify-content:center;
      }
      .record-modal-page .rm-teaser.no-img .rm-col--bullets {
          width:100%;
          display:flex;
          justify-content:center;
      }

      .record-modal-page .rm-teaser.no-img .rm-col--img { display:none; }

      .record-modal-page .rm-teaser {
          gap: 18px;
          margin-bottom: 20px;
      }

      .record-modal-page .rm-col--img { flex: 0 0 auto; }

      .record-modal-page .rm-col--bullets {
          flex: 1 1 0;
          min-width: 0;
          max-width: 520px;
          width: auto;
      }

      .record-modal-page .abo-section-2 {
          background-color:#F8F4EE;
          padding-bottom:0px !important;
      }

      @media (max-width:540px){
        html.record-modal-page { --rm-content-max: 100%; }
        .record-modal-page body {padding:10px 10px 12px;}
        .record-modal-page .record-modal-container {max-width:100%;gap:10px;}
        .record-modal-page .rm-teaser {gap:10px;}
        .record-modal-page .rm-benefits { grid-template-columns:1fr; }
        .record-modal-page .abo-section {max-width:100%;margin-bottom:12px;}

        .record-modal-page .rm-col--bullets {
          max-width: 100%;
        }
      }

      @media (max-width: 450px) {
          .record-modal-page .rm-teaser {
              flex-direction: column;
              align-items: center;
          }
          .record-modal-page .rm-col--img {
              justify-content: center;
              display: flex;
              width: 100%;
          }
      }

/* Create account control */
.record-modal-create-account .abo-section-title {
    margin-bottom:15px;
    font-size:20px;
  }

  .record-modal-create-account #ctl00_ContentPlaceHolder1_CreateAccountControl_CreateUserWizard1___CustomNav0_StepNextButtonButton {
    display:none;
  }

  .record-modal-create-account .btn.create-user-button {
    font-size:17px;
    font-weight:bold;
    height:40px;
    border-radius:unset;
    margin-left:unset;
    box-shadow:0px 3px 6px #00000029;
    padding-top: 1px;
    margin-top: 0px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .record-modal-create-account .disclaimer-row {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    margin-bottom:15px;
  }

  .record-modal-create-account .disclaimer-row-right {
    font-size:11px;
    color:#707070;
    margin-left:8px;
    max-width:490px;
    line-height:1.25;
  }

  .record-modal-create-account .create-account-main-container {
    margin:18px;
  }

  .record-modal-create-account .account-textbox {
    width:100%;
    height:40px;
    margin-bottom:10px;
    padding-left:10px;
    border:1px solid #d3d3d3;
    border-radius:8px;
    box-sizing:border-box;
  }

  .record-modal-create-account .name-row {
    display:flex;
    flex-direction:row;
    gap:12px;
    align-items:flex-start;
    width:100%;
  }

  .record-modal-create-account .name-row > div {
    flex:1 1 0;
    min-width:0;
  }

  .record-modal-create-account .button-row {
    display:flex;
    justify-content:center;
    margin-top:8px;
  }

  .record-modal-create-account .create-account-main-container div[id$="UserNamePanel"],


  .record-modal-create-account .create-account-main-container div[id$="EmailPanel"],


  .record-modal-create-account .create-account-main-container div[id$="PasswordPanel"],


  .record-modal-create-account .create-account-main-container div[id$="DisclaimerPanel"],


  .record-modal-create-account .create-account-main-container div[id$="ErrorMessagePanel"] {
    display:block;
    width:100%;
  }

  @media (max-width: 450px) {
    .record-modal-create-account .name-row {
      flex-direction: column;
    }
    .record-modal-create-account .prenom-textbox {
      margin-bottom: 0px;
    }
    .record-modal-create-account .name-row > div {
      display: block;
      width: 100%;
    }
  }

  .record-modal-create-account /* Bottom error box */
  .validation-summary {
    margin-top:12px;
    padding:10px 12px;
    border:1px solid #dc3545;
    background:#fff5f5;
    color:#dc3545;
    border-radius:8px;
    font-size:13px;
    line-height:1.25;
  }
  .record-modal-create-account .validation-summary ul { margin:0; padding-left:18px; }
  .record-modal-create-account .validation-summary li { margin:4px 0; }
  .record-modal-create-account .validation-summary:empty { display:none; }

  .record-modal-create-account .ajax__validatorcallout_popup_table,


  .record-modal-create-account .ajax__validatorcallout_callout {
    display:none !important;
    visibility:hidden !important;
  }

  .record-modal-create-account .input-error {
    border-color:#dc3545 !important;
    background:#fff5f5 !important;
    outline:none;
  }


              .record-modal-create-account .create-user-left { border-right: unset; }

/* Login account control */
.record-modal-login-account .login-main-container {
    margin:18px;
  }

  .record-modal-login-account .abo-section-title {
    margin-bottom:15px;
    font-size:20px;
    font-weight:700;
  }

  .record-modal-login-account .account-textbox {
    width:100%;
    height:40px;
    margin-bottom:10px;
    padding-left:10px;
    border:1px solid #d3d3d3;
    border-radius:8px;
    box-sizing:border-box;
  }

  .record-modal-login-account .failed-login-text {
    margin:0 0 6px 0;
    font-size:13px;
  }

  .record-modal-login-account .button-row {
    display:flex;
    justify-content:flex-start;
    margin-top:8px;
  }

  .record-modal-login-account input.btn.red-button-small.connexion-button {
    font-size:17px;
    font-weight:bold;
    height:40px;
    border-radius:unset;
    margin-left:unset;
    box-shadow:0px 3px 6px #00000029;
    padding:1px 16px;
    border:0;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  .record-modal-login-account .log-in-row {
    display:flex;
    flex-direction:row;
    font-size:13px;
    margin-top:5px;
  }

  .record-modal-login-account .log-in-row-top {
      justify-content:start;
      margin-left: 0px;
      margin-top: 8px;
      margin-bottom: 7px;
  }

  .record-modal-login-account .log-in-row-right {margin-left:5px;}
  .record-modal-login-account .log-in-link {color:#56b3c9;text-decoration:underline;}

  .record-modal-login-account .password-toggle-wrap {
      position:relative;
    }

    .record-modal-login-account .password-toggle-input {
      padding-right:52px;
    }

    .record-modal-login-account .password-toggle-button {
      position:absolute;
      right:0;
      top:0;
      width:42px;
      height:40px;
      border:0;
      background:#6b1712;
      color:#fff;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
      border-radius:0 8px 8px 0;
      padding:0;
      box-shadow:0px 3px 6px #00000029;
    }

    .record-modal-login-account .password-toggle-button:hover,


    .record-modal-login-account .password-toggle-button:focus {
      background:#7d201a;
      color:#fff;
      outline:none;
    }

    .record-modal-login-account .password-toggle-button.is-visible {
      background:#4f100d;
    }

    .record-modal-login-account .password-eye {
      font-size:30px;
      line-height:1;
      opacity:1;
    }

  @media (max-width:640px){
    .record-modal-login-account .login-main-container { margin:14px; }
    .record-modal-login-account .button-row { justify-content:stretch; }
    .record-modal-login-account input.btn.red-button-small.connexion-button { width:100%; }
  }

/* Trial subscription control */
.record-modal-subscribe-trial .login-button-container {
        display: flex;
        flex-direction: column;
    }
    .record-modal-subscribe-trial .btn.red-button-small.connexion-button {
        font-size: 19px;
        font-weight: bold;
        height: 49px;
        border-radius: unset;
        margin-left: unset;
        box-shadow: 0px 3px 6px #00000029;
        margin-top: unset;
        margin-left: unset;
    }

    .record-modal-subscribe-trial #SubscribeTrialPart_SubscribeTrialButton {
        margin-right: 0px;
    }

/* General subscription control */
.record-modal-subscribe-general .btn.red-button-small.connexion-button {
        font-size: 19px;
        font-weight: bold;
        height: 49px;
        border-radius: unset;
        margin-left: unset;
        box-shadow: 0px 3px 6px #00000029;
        margin-top: unset;
        margin-left: unset;
    }
    .record-modal-subscribe-general .login-button-container {
        display: flex;
        flex-direction: column;
    }

/* ============================================================
   Transition subscription page
============================================================ */
        .page-transition-page body {
            padding-top: unset;
            background: #f7f1ea;
        }

        .page-transition-page nav.fixed-top {
            position: static;
            top: auto;
            right: auto;
            left: auto;
            z-index: auto;
        }

        .page-transition-page section {
            padding-top: 60px;
            padding-bottom: 25px;
        }

        .page-transition-page .intro-section {
            padding-top: 70px;
            padding-bottom: 70px;
            background: #F8F4EE;
        }

        .page-transition-page .transition-hero {
            max-width: 1180px;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 0;
        }

        .page-transition-page .transition-hero-up,


        .page-transition-page .transition-hero-down {
            width: 100%;
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            gap: 48px;
        }

        .page-transition-page .transition-hero-up {
            align-items: stretch;
        }

        .page-transition-page .transition-hero-down {
            align-items: flex-start;
        }

        .page-transition-page .transition-hero-left {
            flex: 0 0 34%;
            text-align: center;
            color: #5a241f;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: flex-start;
        }

        .page-transition-page .transition-hero-right {
            flex: 1;
            max-width: 700px;
        }

        .page-transition-page .main-text {
            font-size: 38px;
            font-weight: 700;
            color: #544339;
            margin: 0 !important;
            font-family: 'Lato', sans-serif !important;
            text-align: center;
            padding-bottom: 8px;
            line-height: 1.1;
        }

        .page-transition-page .sub-text {
            font-size: 20px;
            font-weight: 200;
            color: #544339;
            text-align: center;
            margin: 0 auto 4px auto;
            max-width: 360px;
            line-height: 1.15;
        }

        .page-transition-page .header-image {
            width: 365px;
            flex: 1;
            min-height: 260px;
            margin: 0 auto;
            background-image: url('/Pages/images/abonnement/abo-image.png');
            background-size: contain;
            background-position: center top;
            background-repeat: no-repeat;
        }

        .page-transition-page .trial-card {
            position: relative;
            display: block;
            background: #fffdfb;
            border: 1px solid #d84b35;
            border-radius: 6px;
            box-shadow: 0 2px 6px rgba(0,0,0,.18);
            margin-bottom: 40px;
            min-height: 200px;
            box-sizing: border-box;
            cursor: pointer;
        }

        .page-transition-page .trial-card:hover {
            box-shadow: 0 4px 10px rgba(0,0,0,.2);
        }

        .page-transition-page .trial-card-input {
            position: absolute;
            opacity: 0;
            pointer-events: none;
        }

        .page-transition-page .trial-card-featured {
            padding: 63px 34px 28px;
        }

        .page-transition-page .trial-card-monthly {
            padding: 34px;
            display: flex;
            align-items: center;
        }

        .page-transition-page .trial-card-monthly .trial-card-row {
            width: 100%;
        }

        .page-transition-page .trial-card-featured-badge {
            position: absolute;
            top: -14px;
            left: 50%;
            transform: translateX(-50%);
            background: #459b94;
            color: #fff;
            font-size: 15px;
            font-weight: 800;
            padding: 9px 34px;
            text-align: center;
            white-space: nowrap;
            z-index: 2;
            letter-spacing: .3px;
        }

        .page-transition-page .trial-card-featured-note {
            position: absolute;
            top: 31px;
            left: 50%;
            transform: translateX(-50%);
            color: #459b94;
            font-size: 11px;
            white-space: nowrap;
            z-index: 2;
        }

        .page-transition-page .trial-card-row {
            display: flex;
            align-items: center;
            gap: 28px;
        }

        .page-transition-page .trial-card-radio {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            border: 2px solid #d04a35;
            flex: 0 0 42px;
            position: relative;
        }

        .page-transition-page .trial-card-radio:after {
            content: '';
            position: absolute;
            top: 7px;
            left: 7px;
            width: 24px;
            height: 24px;
            border-radius: 50%;
            background: transparent;
        }

        .page-transition-page .trial-card-input:checked ~ .trial-card-row .trial-card-radio:after {
            background: #d04a35;
        }

        .page-transition-page .trial-card-plan {
            flex: 0 0 160px;
        }

        .page-transition-page .trial-card-plan-title {
            display: block;
            font-size: 36px;
            line-height: 1;
            font-weight: 800;
            color: #d04a35;
            margin-bottom: 12px;
        }

        .page-transition-page .trial-card-plan-price {
            display: block;
            font-size: 21px;
            color: #d04a35;
            line-height: 1;
            white-space: nowrap;
        }

        .page-transition-page .trial-card-description {
            flex: 1;
            color: #d04a35;
        }

        .page-transition-page .trial-card-description-title {
            display: block;
            font-size: 19px;
            line-height: 1.2;
            font-weight: 400;
            margin-bottom: 8px;
        }

        .page-transition-page .trial-card-description-note {
            display: block;
            font-size: 11px;
            line-height: 1.25;
            color: #d04a35;
        }

        .page-transition-page .transition-hero-actions {
            text-align: center;
            margin-top: -5px;
        }

        .page-transition-page .transition-cta {
            display: inline-block;
            min-width: 354px;
            background: #c74b32;
            color: white !important;
            font-size: 22px;
            font-weight: 800;
            padding: 16px 34px;
            text-decoration: none;
            margin-bottom: 12px;
            border-radius: 0;
            letter-spacing: .2px;
        }

        .page-transition-page .transition-cta:hover {
            text-decoration: none;
            background: #b9432d;
        }

        .page-transition-page .transition-login-text {
            font-size: 18px;
            color: #4f211f;
            font-weight: 800;
        }

        .page-transition-page .transition-login-link {
            color: #4f211f;
            text-decoration: underline;
        }

        .page-transition-page .footer-section {
            margin-top: 0px;
            background-color: #d8d0c5;
        }

        .page-transition-page .menu-mobile-open {
            background-color: rgba(107,101,89,0.9) !important;
        }

        .page-transition-page #ctl00_ContentPanel {
            max-width: unset;
            padding-left: unset;
            padding-right: unset;
        }

        .page-transition-page h2 {
            font-family: unset;
            margin-top: unset;
            margin-bottom: unset;
            font-size: unset;
            font-weight: unset;
            line-height: unset;
        }

        .page-transition-page .commentaires .title {
            text-align: center;
            font-size: 38px;
            margin-bottom: 8px;
            font-weight: 300;
            color: #26262d;
        }

        .page-transition-page .commentaires .title-sub {
            text-align: center;
            font-size: 19px;
            margin-bottom: 40px;
            font-weight: 300;
            color: #51433a;
        }

        .page-transition-page .text-center {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .page-transition-page .btn-abonnement {
            background-color: #C44931;
            color: white;
            font-weight: bold;
            box-shadow: 0px 10px 60px black;
            border: 2px solid transparent;
        }

        .page-transition-page .btn-abonnement:hover {
            background-color: white;
            border-color: #C44931;
            border: 2px solid #C44931;
            color: #C44931;
        }

        @media (min-width: 576px) {
            .page-transition-page .mt-sm-3,

            .page-transition-page .my-sm-3 {
                margin-top: 15px !important;
            }
        }

        .page-transition-page .hvr-grow-2 {
            display: inline-block;
            vertical-align: middle;
            transform: translateZ(0) scale(1.08);
            backface-visibility: hidden;
            transition-duration: 0.3s;
            transition-property: transform;
        }

        .page-transition-page .hvr-grow-2:hover,


        .page-transition-page .hvr-grow-2:focus {
            transform: translateZ(0) scale(1.08);
        }

        .page-transition-page .navbar-btn.btn-login {
            border: 2px solid #C44931;
            border-radius: unset;
            background-color: transparent;
        }

        @media (max-width: 991px) {
            .page-transition-page .transition-hero {
                max-width: 720px;
                padding: 0 18px;
            }

            .page-transition-page .transition-hero-up,


            .page-transition-page .transition-hero-down {
                flex-direction: column;
                gap: 24px;
            }

            .page-transition-page .transition-hero-left,


            .page-transition-page .transition-hero-right {
                flex: none;
                width: 100%;
                max-width: 100%;
            }

            .page-transition-page .transition-hero-down .transition-hero-left {
                display: none;
            }

            .page-transition-page .trial-card {
                width: 100%;
                min-height: 0;
                margin-bottom: 28px;
            }

            .page-transition-page .trial-card-featured {
                padding: 24px 18px 28px;
            }

            .page-transition-page .trial-card-monthly {
                padding: 34px 18px;
                min-height: 0;
                display: block;
            }

            .page-transition-page .trial-card-row {
                flex-direction: column;
                align-items: center;
                text-align: center;
                gap: 14px;
            }

            .page-transition-page .trial-card-plan {
                flex: none;
            }

            .page-transition-page .trial-card-description {
                max-width: 100%;
            }

            .page-transition-page .trial-card-featured-badge {
                position: static;
                transform: none;
                display: block;
                width: auto;
                max-width: 100%;
                margin: 0 auto 10px auto;
                padding: 9px 14px;
                white-space: normal;
                line-height: 1.25;
                box-sizing: border-box;
            }

            .page-transition-page .trial-card-featured-note {
                position: static;
                transform: none;
                display: block;
                max-width: 100%;
                margin: 0 auto 20px auto;
                padding: 0 4px;
                white-space: normal;
                line-height: 1.3;
                text-align: center;
                box-sizing: border-box;
            }

            .page-transition-page .header-image {
                width: 320px;
                min-height: 220px;
                flex: none;
            }
        }

        @media (max-width: 768px) {
            .page-transition-page .intro-section {
                padding-top: 38px;
                padding-bottom: 45px;
            }

            .page-transition-page .transition-hero {
                padding: 0 18px;
            }

            .page-transition-page .main-text {
                font-size: 31px;
                line-height: 1.05;
                padding-bottom: 10px;
            }

            .page-transition-page .sub-text {
                font-size: 17px;
                line-height: 1.2;
                padding-top: 0;
                margin-bottom: 22px;
                max-width: 330px;
            }

            .page-transition-page .header-image {
                display: none;
            }

            .page-transition-page .trial-card {
                padding-left: 18px;
                padding-right: 18px;
                margin-bottom: 28px;
            }

            .page-transition-page .trial-card-radio {
                width: 40px;
                height: 40px;
                flex-basis: 40px;
            }

            .page-transition-page .trial-card-radio:after {
                top: 7px;
                left: 7px;
                width: 22px;
                height: 22px;
            }

            .page-transition-page .trial-card-plan-title {
                font-size: 30px;
                margin-bottom: 10px;
            }

            .page-transition-page .trial-card-plan-price {
                font-size: 19px;
            }

            .page-transition-page .trial-card-description-title {
                font-size: 18px;
                line-height: 1.25;
            }

            .page-transition-page .trial-card-description-note {
                font-size: 11px;
                line-height: 1.35;
            }

            .page-transition-page .transition-cta {
                width: 100%;
                min-width: 0;
                max-width: 354px;
                font-size: 19px;
            }

            .page-transition-page .navbar-collapse.collapse.show {
                background-color: #d1c2b7 !important;
                margin-left: -16px;
                margin-right: -16px;
                padding-left: 15px;
            }

            .page-transition-page .trial-card-featured-badge {
                font-size: 13px;
            }

            .page-transition-page .trial-card-featured {
                padding-top: 15px;
            }

            .page-transition-page .abo-section-2 {
                padding-top: 0px;
            }

            .page-transition-page .commentaires.commentaires-title {
                padding-top: 40px;
            }
        }

/* ============================================================
   Scoped content and utility pages
============================================================ */

/* Tools directory page */
.outils-v2-page body {
            background: #f9f5f0;
        }
        
        .outils-v2-page .footer-section {
          background-color: #d8d0c5;
        }

        .outils-v2-page .tools-page {
            max-width: 1280px;
            margin: 0 auto;
            padding: 28px 20px 40px 20px;
            color: #2f2f2f;
        }

        .outils-v2-page .tools-page *,


        .outils-v2-page .tools-page *:before,


        .outils-v2-page .tools-page *:after {
            box-sizing: border-box;
        }

        .outils-v2-page .tools-page a {
            color: #561414;
            text-decoration: underline;
        }

        .outils-v2-page .tools-page a:hover {
            text-decoration: underline;
        }

        .outils-v2-page .tools-hero {
            border: 1px solid #ece6df;
            border-radius: 20px;
            padding: 34px 28px;
            margin-bottom: 28px;
            box-shadow: 0 10px 30px rgba(0,0,0,.06);
            text-align: center;
            background: white;
        }

        .outils-v2-page .tools-section {
            margin-top: 34px;
        }

        .outils-v2-page .tools-hero h1 {
            margin: 0 0 12px 0;
            font-size: 2.2rem;
            line-height: 1.15;
            color: #561414;
            font-weight: 700;
        }

        .outils-v2-page .tools-hero p {
            margin: 0;
            font-size: 1.06rem;
            line-height: 1.7;
            color: #5f5a55;
        }

        .outils-v2-page .tools-section-title-wrap {
            margin: 34px 0 18px 0;
            padding: 14px 18px;
            border-left: 6px solid #561414;
            background: white;
            border-radius: 12px;
        }

        .outils-v2-page .tools-section-title {
            margin: 0;
            font-size: 1.55rem;
            color: #561414;
            font-weight: 700;
        }

        .outils-v2-page .tools-list {
            display: flex;
            flex-direction: column;
            gap: 22px;
        }

        .outils-v2-page .tool-card {
            display: grid;
            grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
            gap: 26px;
            background: #fff;
            border: 1px solid #ece6df;
            border-radius: 18px;
            padding: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-v2-page .tool-card + .tool-card {
            margin-top: 0;
        }

        .outils-v2-page .tool-panel-left {
            border: 1px solid #e1d8cf;
            border-radius: 16px;
            padding: 20px;
            position: relative;
            overflow: hidden;
        }

        .outils-v2-page .tool-logo {
            display: flex;
            margin-bottom: 14px;
        }

        .outils-v2-page .tool-logo img {
            width: 75px;
            height: 77px;
            object-fit: cover;
            border-radius: 10px;
            box-shadow: 0 8px 18px rgba(0,0,0,.15);
        }

        .outils-v2-page .tool-name {
            margin: 0 0 14px 0;
            color: #561414;
            font-size: 1.55rem;
            line-height: 1.2;
            font-weight: 700;
        }

        .outils-v2-page .tool-panel-left ul,


        .outils-v2-page .tool-panel-right ul {
            margin: 0;
            padding-left: 20px;
        }

        .outils-v2-page .tool-panel-left li,


        .outils-v2-page .tool-panel-right li {
            margin-bottom: 9px;
            line-height: 1.55;
        }

        .outils-v2-page .tool-image-wrap {
            margin-top: 18px;
            border-radius: 14px;
            overflow: hidden;
            text-align: center;
            background: #fff;
            box-shadow: inset 0 0 0 1px rgba(86,20,20,.08);
        }

        .outils-v2-page .tool-image-wrap img {
            display: block;
            max-height: 260px;
            margin: 0 auto;
        }

        .outils-v2-page .tool-panel-right {
            display: flex;
            flex-direction: column;
            min-width: 0;
        }

        .outils-v2-page .tool-title {
            margin: 0 0 12px 0;
            font-size: 1.35rem;
            line-height: 1.3;
            color: #232323;
            font-weight: 700;
        }

        .outils-v2-page .tool-description {
            margin: 0 0 14px 0;
            line-height: 1.7;
            color: #4f4a46;
            font-size: 1rem;
        }

        .outils-v2-page .tool-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: auto;
            padding-top: 12px;
        }

        .outils-v2-page .tool-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 155px;
            min-height: 46px;
            padding: 10px 18px;
            border-radius: 12px;
            font-weight: 700;
            text-align: center;
            transition: all .18s ease;
            border: 2px solid transparent;
            text-decoration: none !important;
        }

        .outils-v2-page .tool-btn-primary {
            background: #561414;
            border-color: #561414;
            color: #fff !important;
        }

        .outils-v2-page .tool-btn-primary:hover {
            background: #6f1c1c;
            border-color: #6f1c1c;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(86,20,20,.18);
        }

        .outils-v2-page .tool-btn-secondary {
            background: #fff;
            border-color: #d8cfc6;
            color: #561414 !important;
        }

        .outils-v2-page .tool-btn-secondary:hover {
            border-color: #561414;
            color: #561414 !important;
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(0,0,0,.08);
        }

        .outils-v2-page .admin-box,


        .outils-v2-page .warning-box {
            border-radius: 16px;
            padding: 18px 20px;
            margin-bottom: 22px;
            box-shadow: 0 8px 20px rgba(0,0,0,.05);
        }

        .outils-v2-page .admin-box {
            background: #eef6fb;
            border: 1px solid #cfe2f0;
        }

        .outils-v2-page .warning-box {
            background: #fff8e7;
            border: 1px solid #f2dfa6;
        }

        .outils-v2-page .admin-box h4,


        .outils-v2-page .warning-box h4 {
            margin: 0 0 14px 0;
            color: #561414;
            font-size: 1.15rem;
            font-weight: 700;
        }

        .outils-v2-page .admin-links,


        .outils-v2-page .warning-links {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        .outils-v2-page .admin-link,


        .outils-v2-page .warning-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-weight: 600;
            color: #2f2f2f !important;
        }

        .outils-v2-page .admin-link i,


        .outils-v2-page .warning-link i {
            width: 20px;
            text-align: center;
            color: #561414;
        }

        .outils-v2-page .soft-divider {
            height: 1px;
            background: linear-gradient(to right, transparent, #d9d1c8, transparent);
            margin: 8px 0 2px 0;
            border: 0;
        }

        .outils-v2-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-v2-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border-radius: 16px;
            border: 1px solid #ddd;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-v2-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-v2-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
            display: inline-block;
        }

        .outils-v2-page .close2:hover,


        .outils-v2-page .close2:focus {
            color: #000;
            text-decoration: none;
        }

        @media (max-width: 992px) {
            .outils-v2-page .tool-card {
                grid-template-columns: 1fr;
            }

            .outils-v2-page .tool-logo {
                justify-content: flex-start;
            }
        }

        @media (max-width: 640px) {
            .outils-v2-page .tools-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-v2-page .tools-hero {
                padding: 24px 18px;
            }

            .outils-v2-page .tools-hero h1 {
                font-size: 1.7rem;
            }

            .outils-v2-page .tool-card {
                padding: 16px;
                gap: 18px;
            }

            .outils-v2-page .tool-panel-left {
                padding: 16px;
            }

            .outils-v2-page .tool-name {
                font-size: 1.3rem;
            }

            .outils-v2-page .tool-title {
                font-size: 1.12rem;
            }

            .outils-v2-page .tool-actions {
                flex-direction: column;
            }

            .outils-v2-page .tool-btn {
                width: 100%;
                min-width: 0;
            }
        }

/* Free tools page */
.outils-gratuits-page body {
            background: #f9f5f0;
        }

        .outils-gratuits-page .footer-section {
          background-color: #d8d0c5;
        }

        .outils-gratuits-page .free-tools-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-gratuits-page .free-tools-page *,


        .outils-gratuits-page .free-tools-page *:before,


        .outils-gratuits-page .free-tools-page *:after {
            box-sizing: border-box;
        }

        .outils-gratuits-page .free-tools-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-gratuits-page .free-tools-page a:hover {
            text-decoration: underline;
        }

        .outils-gratuits-page .free-tools-hero {
            background: white;
            border: 1px solid #ebe4dc;
            border-radius: 20px;
            padding: 30px 28px;
            padding-bottom: 15px;
            margin-bottom: 26px;
            box-shadow: 0 10px 28px rgba(0,0,0,.06);
        }

        .outils-gratuits-page .free-tools-hero p {
            text-align: center;
        }

        .outils-gratuits-page .free-tools-hero h1 {
            text-align: center;
        }

        .outils-gratuits-page .free-tools-hero h1 {
            margin: 0 0 10px 0;
            color: #561414;
            font-size: 2.15rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-gratuits-page .free-tools-hero .free-tools-subtitle {
            margin: 0;
            font-size: 1.06rem;
            line-height: 1.7;
            color: #5a534d;
        }

        .outils-gratuits-page .free-tools-layout {
            display: grid;
            grid-template-columns: minmax(0, 2fr) minmax(280px, 360px);
            gap: 28px;
            align-items: start;
        }

        .outils-gratuits-page .free-tools-main,


        .outils-gratuits-page .free-tools-sidebar-column {
            min-width: 0;
        }

        .outils-gratuits-page .free-tools-card {
            background: #fff;
            border: 1px solid #ebe4dc;
            border-radius: 18px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
            overflow: hidden;
        }

        .outils-gratuits-page .free-tools-card-header {
            padding: 18px 22px;
            background: white;
            border-bottom: 1px solid #e4ddd5;
        }

        .outils-gratuits-page .free-tools-card-header h2 {
            margin: 0;
            font-size: 1.35rem;
            line-height: 1.3;
            color: #561414;
            font-weight: 700;
        }

        .outils-gratuits-page .free-tools-card-body {
            padding: 10px 0;
        }

        .outils-gratuits-page .free-tools-list {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .outils-gratuits-page .free-tools-list li {
            border-bottom: 1px solid #eee7de;
        }

        .outils-gratuits-page .free-tools-list li:last-child {
            border-bottom: none;
        }

        .outils-gratuits-page .free-tools-list a {
            display: block;
            padding: 15px 22px;
            font-size: 1rem;
            line-height: 1.55;
            color: #2f2f2f;
            transition: background-color .15s ease, color .15s ease, padding-left .15s ease;
        }

        .outils-gratuits-page .free-tools-list a:hover {
            background: #faf7f3;
            color: #561414;
            text-decoration: none;
            padding-left: 26px;
        }

        .outils-gratuits-page .free-tools-sidebar-block {
            background: #fff;
            border: 1px solid #ebe4dc;
            border-radius: 18px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
            padding: 22px;
            margin-bottom: 22px;
        }

        .outils-gratuits-page .free-tools-sidebar-block h2,


        .outils-gratuits-page .free-tools-sidebar-block h3 {
            margin: 0 0 16px 0;
            color: #561414;
            font-size: 1.25rem;
            line-height: 1.3;
            font-weight: 700;
        }

        .outils-gratuits-page .sidebar-nav-list {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .outils-gratuits-page .sidebar-nav-list li {
            margin-bottom: 8px;
        }

        .outils-gratuits-page .sidebar-nav-list li:last-child {
            margin-bottom: 0;
        }

        .outils-gratuits-page .sidebar-nav-list a {
            display: inline-block;
            line-height: 1.55;
            color: #2f2f2f;
        }

        .outils-gratuits-page .sidebar-nav-list a:hover {
            color: #561414;
        }

        .outils-gratuits-page .quality-block {
            margin-bottom: 18px;
        }

        .outils-gratuits-page .quality-block:last-child {
            margin-bottom: 0;
        }

        .outils-gratuits-page .quality-block strong {
            display: block;
            color: #2f2f2f;
            margin-bottom: 6px;
            font-size: 1rem;
        }

        .outils-gratuits-page .quality-block p {
            margin: 0;
            line-height: 1.7;
            color: #5b554f;
        }

        @media (max-width: 960px) {
            .outils-gratuits-page .free-tools-layout {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 640px) {
            .outils-gratuits-page .free-tools-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-gratuits-page .free-tools-hero {
                padding: 24px 18px;
            }

            .outils-gratuits-page .free-tools-hero h1 {
                font-size: 1.75rem;
            }

            .outils-gratuits-page .free-tools-card-header,


            .outils-gratuits-page .free-tools-sidebar-block {
                padding-left: 18px;
                padding-right: 18px;
            }

            .outils-gratuits-page .free-tools-list a {
                padding-left: 18px;
                padding-right: 18px;
            }

            .outils-gratuits-page .free-tools-list a:hover {
                padding-left: 21px;
            }
        }
        .outils-gratuits-page .btn-abonnement {
            background-color: #C44931;
            color: white !important;
            font-weight: bold;
            border: 2px solid transparent;
            font-size: 16px;
        }
        .outils-gratuits-page .btn-abonnement:hover {
            text-decoration: none !important;
            color: white;
        }

/* 404 error page */
.page-404-page body {
            background: #f8f4ef;
        }


        .page-404-page .footer-section {
            background-color: #d8d0c5;
        }

        .page-404-page .page404 {
            width: 100vw;
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
            background: #f8f4ef;
            color: #1f1f1f;
        }

        .page-404-page .page404-inner {
            width: min(1120px, calc(100% - 36px));
            min-height: calc(100vh - 210px);
            margin: 0 auto;
            padding: 72px 0 54px 0;
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(320px, 455px);
            gap: 58px;
            align-items: center;
        }

        .page-404-page .page404-kicker {
            display: inline-flex;
            align-items: center;
            min-height: 32px;
            margin: 0 0 18px 0;
            padding: 6px 12px;
            border: 1px solid rgba(97, 11, 32, .18);
            border-radius: 4px;
            background: #ffffff;
            color: #610b20;
            font-size: 13px;
            line-height: 1.3;
            font-weight: 700;
            text-transform: uppercase;
        }

        .page-404-page .page404-title {
            margin: 0 0 18px 0;
            color: #5b1020;
            font-family: Georgia, "Times New Roman", serif;
            font-size: 50px;
            line-height: 1.08;
            font-weight: 400;
            letter-spacing: 0;
        }

        .page-404-page .page404-body {
            max-width: 610px;
            margin: 0 0 28px 0;
            color: #333333;
            font-size: 18px;
            line-height: 1.62;
        }

        .page-404-page .page404-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin: 0 0 26px 0;
        }

        .page-404-page .page404-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 52px;
            padding: 13px 22px;
            border-radius: 5px;
            text-decoration: none !important;
            font-size: 15px;
            line-height: 1.3;
            font-weight: 700;
            transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
        }

        .page-404-page .page404-btn-primary {
            background: #610b20;
            border: 1px solid #610b20;
            color: #ffffff !important;
        }

        .page-404-page .page404-btn-primary:hover {
            background: #731026;
            border-color: #731026;
            color: #ffffff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(97, 11, 32, .18);
        }

        .page-404-page .page404-btn-secondary {
            background: #ffffff;
            border: 1px solid #dfd2c7;
            color: #610b20 !important;
        }

        .page-404-page .page404-btn-secondary:hover {
            background: #fffaf6;
            border-color: #c8b6a9;
            color: #610b20 !important;
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(63, 41, 34, .11);
        }

        .page-404-page .page404-hint {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            max-width: 590px;
            margin: 0;
            color: #514a45;
            font-size: 14px;
            line-height: 1.55;
        }

        .page-404-page .page404-hint-icon {
            flex: 0 0 auto;
            width: 24px;
            height: 24px;
            border-radius: 50%;
            background: #eadfd6;
            color: #610b20;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            line-height: 1;
            font-weight: 700;
        }

        .page-404-page .page404-visual {
            position: relative;
            min-height: 455px;
            border-radius: 8px;
            overflow: hidden;
            background-image: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.42)), url('/Pages/images/welcome/photo-landing.webp');
            background-position: center center;
            background-size: cover;
            box-shadow: 0 24px 54px rgba(63, 41, 34, .18);
        }

        .page-404-page .page404-visual:before {
            content: "";
            position: absolute;
            inset: 18px;
            border: 1px solid rgba(255,255,255,.55);
            border-radius: 5px;
            pointer-events: none;
        }

        .page-404-page .page404-code {
            position: absolute;
            left: 30px;
            bottom: 26px;
            color: #ffffff;
            font-family: Georgia, "Times New Roman", serif;
            font-size: 92px;
            line-height: .9;
            font-weight: 400;
            text-shadow: 0 8px 22px rgba(0,0,0,.28);
        }

        @media (max-width: 900px) {
            .page-404-page .page404-inner {
                grid-template-columns: 1fr;
                gap: 34px;
                padding-top: 44px;
            }

            .page-404-page .page404-visual {
                min-height: 295px;
                order: -1;
            }

            .page-404-page .page404-title {
                font-size: 40px;
            }

            .page-404-page .page404-code {
                font-size: 74px;
            }

        }

        @media (max-width: 560px) {
            .page-404-page .page404-inner {
                width: min(100% - 28px, 1120px);
                padding: 32px 0 42px 0;
            }

            .page-404-page .page404-title {
                font-size: 34px;
            }

            .page-404-page .page404-body {
                font-size: 16px;
            }

            .page-404-page .page404-actions {
                display: grid;
                grid-template-columns: 1fr;
            }

            .page-404-page .page404-btn {
                width: 100%;
            }
        }

/* Application error page */
.page-error-page body {
            background: #f8f4ef;
        }

        .page-error-page .footer-section {
            background-color: #d8d0c5;
        }

        .page-error-page .page-error {
            width: 100vw;
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
            background: #f8f4ef;
            color: #1f1f1f;
        }

        .page-error-page .page-error-inner {
            width: min(1120px, calc(100% - 36px));
            min-height: calc(100vh - 210px);
            margin: 0 auto;
            padding: 72px 0 54px 0;
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(320px, 455px);
            gap: 58px;
            align-items: center;
        }

        .page-error-page .page-error-kicker {
            display: inline-flex;
            align-items: center;
            min-height: 32px;
            margin: 0 0 18px 0;
            padding: 6px 12px;
            border: 1px solid rgba(97, 11, 32, .18);
            border-radius: 4px;
            background: #ffffff;
            color: #610b20;
            font-size: 13px;
            line-height: 1.3;
            font-weight: 700;
            text-transform: uppercase;
        }

        .page-error-page .page-error-title {
            margin: 0 0 18px 0;
            color: #5b1020;
            font-family: Georgia, "Times New Roman", serif;
            font-size: 50px;
            line-height: 1.08;
            font-weight: 400;
            letter-spacing: 0;
        }

        .page-error-page .page-error-body {
            max-width: 610px;
            margin: 0 0 26px 0;
            color: #333333;
            font-size: 18px;
            line-height: 1.62;
        }

        .page-error-page .page-error-meta {
            display: inline-flex;
            flex-wrap: wrap;
            gap: 8px;
            align-items: center;
            margin: 0 0 28px 0;
            padding: 11px 14px;
            border: 1px solid #e4d9cf;
            border-radius: 5px;
            background: #ffffff;
            color: #403832;
            font-size: 14px;
            line-height: 1.45;
        }

        .page-error-page .page-error-meta-label {
            color: #610b20;
            font-weight: 700;
        }

        .page-error-page .page-error-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin: 0 0 26px 0;
        }

        .page-error-page .page-error-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 52px;
            padding: 13px 22px;
            border-radius: 5px;
            text-decoration: none !important;
            font-size: 15px;
            line-height: 1.3;
            font-weight: 700;
            cursor: pointer;
            transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
        }

        .page-error-page .page-error-btn-primary {
            background: #610b20;
            border: 1px solid #610b20;
            color: #ffffff !important;
        }

        .page-error-page .page-error-btn-primary:hover {
            background: #731026;
            border-color: #731026;
            color: #ffffff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(97, 11, 32, .18);
        }

        .page-error-page .page-error-btn-secondary {
            background: #ffffff;
            border: 1px solid #dfd2c7;
            color: #610b20 !important;
        }

        .page-error-page .page-error-btn-secondary:hover {
            background: #fffaf6;
            border-color: #c8b6a9;
            color: #610b20 !important;
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(63, 41, 34, .11);
        }

        .page-error-page .page-error-hint {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            max-width: 590px;
            margin: 0;
            color: #514a45;
            font-size: 14px;
            line-height: 1.55;
        }

        .page-error-page .page-error-hint-icon {
            flex: 0 0 auto;
            width: 24px;
            height: 24px;
            border-radius: 50%;
            background: #eadfd6;
            color: #610b20;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            line-height: 1;
            font-weight: 700;
        }

        .page-error-page .page-error-visual {
            position: relative;
            min-height: 455px;
            border-radius: 8px;
            overflow: hidden;
            background-image: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.42)), url('/Pages/images/welcome/photo-landing.webp');
            background-position: center center;
            background-size: cover;
            box-shadow: 0 24px 54px rgba(63, 41, 34, .18);
        }

        .page-error-page .page-error-visual:before {
            content: "";
            position: absolute;
            inset: 18px;
            border: 1px solid rgba(255,255,255,.55);
            border-radius: 5px;
            pointer-events: none;
        }

        .page-error-page .page-error-code {
            position: absolute;
            left: 30px;
            bottom: 26px;
            color: #ffffff;
            font-family: Georgia, "Times New Roman", serif;
            font-size: 92px;
            line-height: .9;
            font-weight: 400;
            text-shadow: 0 8px 22px rgba(0,0,0,.28);
        }

        @media (max-width: 900px) {
            .page-error-page .page-error-inner {
                grid-template-columns: 1fr;
                gap: 34px;
                padding-top: 44px;
            }

            .page-error-page .page-error-visual {
                min-height: 295px;
                order: -1;
            }

            .page-error-page .page-error-title {
                font-size: 40px;
            }

            .page-error-page .page-error-code {
                font-size: 74px;
            }
        }

        @media (max-width: 560px) {
            .page-error-page .page-error-inner {
                width: min(100% - 28px, 1120px);
                padding: 32px 0 42px 0;
            }

            .page-error-page .page-error-title {
                font-size: 34px;
            }

            .page-error-page .page-error-body {
                font-size: 16px;
            }

            .page-error-page .page-error-actions {
                display: grid;
                grid-template-columns: 1fr;
            }

            .page-error-page .page-error-btn {
                width: 100%;
            }
        }

/* Contact page version 2 */
.contact-v2-page body {
            background: #f9f5f0;
        }

        .contact-v2-page .footer-section {
            background-color: #d8d0c5;
        }

        .contact-v2-page .contactv2-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .contact-v2-page .contactv2-page *,


        .contact-v2-page .contactv2-page *:before,


        .contact-v2-page .contactv2-page *:after {
            box-sizing: border-box;
        }

        .contact-v2-page .contactv2-page a {
            color: #561414;
        }

        .contact-v2-page .contactv2-page a:hover {
            color: #6e1d1d;
        }

        .contact-v2-page .contactv2-header {
            text-align: center;
            margin-bottom: 28px;
        }

        .contact-v2-page .contactv2-header h1 {
            margin: 0 0 14px 0;
            color: #1f2937;
            font-size: 3rem;
            line-height: 1.1;
            font-weight: 700;
        }

        .contact-v2-page .contactv2-subtitle {
            margin: 0 0 10px 0;
            color: #7a1f1f;
            font-size: 1.55rem;
            line-height: 1.35;
            font-weight: 700;
        }

        .contact-v2-page .contactv2-intro {
            margin: 0;
            color: #374151;
            font-size: 1.3rem;
            line-height: 1.6;
        }

        .contact-v2-page .contactv2-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 22px;
            margin-bottom: 22px;
            align-items: stretch;
        }

        .contact-v2-page .contactv2-card,


        .contact-v2-page .contactv2-info-card,


        .contact-v2-page .contactv2-privacy-card {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .contact-v2-page .contactv2-card {
            padding: 28px 28px 24px 28px;
            text-align: center;
            display: flex;
            flex-direction: column;
            height: 100%;
        }

        .contact-v2-page .contactv2-icon-circle {
            width: 92px;
            height: 92px;
            margin: 0 auto 22px auto;
            border-radius: 50%;
            border: 1px solid #efe5da;
            background: linear-gradient(180deg, #fbf8f4 0%, #f5eee7 100%);
            display: flex;
            align-items: center;
            justify-content: center;
            color: #7a1f1f;
            font-size: 2.8rem;
            line-height: 1;
        }

        .contact-v2-page .contactv2-card-title {
            margin: 0;
            color: #7a1f1f;
            font-size: 1.95rem;
            line-height: 1.3;
            font-weight: 700;
        }

        .contact-v2-page .contactv2-card-divider {
            width: 56px;
            height: 4px;
            margin: 18px auto 22px auto;
            border-radius: 999px;
            background: #7a1f1f;
        }

        .contact-v2-page .contactv2-card-text,


        .contact-v2-page .contactv2-card-note,


        .contact-v2-page .contactv2-card-footer {
            margin: 0;
            color: #374151;
            font-size: 1.18rem;
            line-height: 1.8;
        }

        .contact-v2-page .contactv2-card-text {
            flex-grow: 1;
        }

        .contact-v2-page .contactv2-email-box,


        .contact-v2-page .contactv2-badge {
            margin: 24px 0 18px 0;
            padding: 18px 16px;
            border-radius: 10px;
            border: 1px solid #eee4d8;
            background: #faf7f3;
            color: #7a1f1f;
            font-size: 1.12rem;
            line-height: 1.5;
            font-weight: 700;
        }

        .contact-v2-page .contactv2-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            min-height: 58px;
            padding: 14px 20px;
            border-radius: 10px;
            background: #7a1f1f;
            color: #ffffff !important;
            text-decoration: none !important;
            font-size: 1.18rem;
            line-height: 1.4;
            font-weight: 700;
            box-shadow: 0 8px 18px rgba(122,31,31,.14);
            transition: all .18s ease;
            margin-top: auto;
        }

        .contact-v2-page .contactv2-button:hover {
            background: #8f2626;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(122,31,31,.18);
        }

        .contact-v2-page .contactv2-button-icon {
            margin-right: 10px;
            font-size: 1.1em;
            line-height: 1;
        }

        .contact-v2-page .contactv2-card-note {
            margin-top: 18px;
        }

        .contact-v2-page .contactv2-card-footer {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee4d8;
        }

        .contact-v2-page .contactv2-info-card,


        .contact-v2-page .contactv2-privacy-card {
            display: flex;
            align-items: flex-start;
            gap: 22px;
            padding: 24px 26px;
            margin-bottom: 18px;
        }

        .contact-v2-page .contactv2-side-icon {
            flex: 0 0 72px;
            width: 72px;
            height: 72px;
            border-radius: 50%;
            border: 1px solid #efe5da;
            background: linear-gradient(180deg, #fbf8f4 0%, #f5eee7 100%);
            display: flex;
            align-items: center;
            justify-content: center;
            color: #7a1f1f;
            font-size: 2.2rem;
            line-height: 1;
        }

        .contact-v2-page .contactv2-side-content {
            flex: 1 1 auto;
        }

        .contact-v2-page .contactv2-side-title {
            margin: 0 0 10px 0;
            color: #7a1f1f;
            font-size: 1.7rem;
            line-height: 1.3;
            font-weight: 700;
        }

        .contact-v2-page .contactv2-side-text {
            margin: 0;
            color: #374151;
            font-size: 1.12rem;
            line-height: 1.75;
        }

        .contact-v2-page .contactv2-list {
            margin: 14px 0 0 0;
            padding-left: 22px;
            color: #374151;
            font-size: 1.12rem;
            line-height: 1.8;
        }

        .contact-v2-page .contactv2-list li {
            margin-bottom: 4px;
        }

        .contact-v2-page .contactv2-privacy-link {
            display: inline-block;
            margin-top: 10px;
            font-size: 1.08rem;
            line-height: 1.5;
            font-weight: 700;
        }

        @media (max-width: 900px) {
            .contact-v2-page .contactv2-grid {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 640px) {
            .contact-v2-page .contactv2-page {
                padding: 20px 14px 34px 14px;
            }

            .contact-v2-page .contactv2-header h1 {
                font-size: 2.2rem;
            }

            .contact-v2-page .contactv2-subtitle {
                font-size: 1.25rem;
            }

            .contact-v2-page .contactv2-intro,


            .contact-v2-page .contactv2-card-text,


            .contact-v2-page .contactv2-card-note,


            .contact-v2-page .contactv2-card-footer,


            .contact-v2-page .contactv2-side-text,


            .contact-v2-page .contactv2-list {
                font-size: 1rem;
            }

            .contact-v2-page .contactv2-card-title {
                font-size: 1.55rem;
            }

            .contact-v2-page .contactv2-side-title {
                font-size: 1.35rem;
            }

            .contact-v2-page .contactv2-info-card,


            .contact-v2-page .contactv2-privacy-card {
                flex-direction: column;
                gap: 16px;
            }
        }

/* ============================================================
   Tool detail pages
============================================================ */

/* Acadie */
.outils-acadie-page body {
            background: #f9f5f0;
        }

        .outils-acadie-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-acadie-page .acadie-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-acadie-page .acadie-page *,


        .outils-acadie-page .acadie-page *:before,


        .outils-acadie-page .acadie-page *:after {
            box-sizing: border-box;
        }

        .outils-acadie-page .acadie-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-acadie-page .acadie-page a:hover {
            text-decoration: underline;
        }

        .outils-acadie-page .acadie-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-acadie-page .acadie-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-acadie-page .acadie-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-acadie-page .acadie-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-acadie-page .acadie-hero-body p {
            margin: 0;
        }

        .outils-acadie-page .acadie-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-acadie-page .acadie-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-acadie-page .acadie-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-acadie-page .acadie-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-acadie-page .acadie-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-acadie-page .acadie-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-acadie-page .acadie-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-acadie-page .acadie-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-acadie-page .acadie-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-acadie-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-acadie-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-acadie-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-acadie-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-acadie-page .close2:hover,


        .outils-acadie-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-acadie-page .acadie-actions,

            .outils-acadie-page .acadie-gallery {
                grid-template-columns: 1fr;
            }

            .outils-acadie-page .acadie-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-acadie-page .acadie-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-acadie-page .acadie-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-acadie-page .acadie-hero {
                padding: 24px 18px;
            }

            .outils-acadie-page .acadie-gallery-imagewrap {
                height: 250px;
            }

            .outils-acadie-page .acadie-btn {
                max-width: none;
            }
        }

/* Directories */
.outils-annuaires-page body {
            background: #f9f5f0;
        }

        .outils-annuaires-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-annuaires-page .annuaires-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-annuaires-page .annuaires-page *,


        .outils-annuaires-page .annuaires-page *:before,


        .outils-annuaires-page .annuaires-page *:after {
            box-sizing: border-box;
        }

        .outils-annuaires-page .annuaires-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-annuaires-page .annuaires-page a:hover {
            text-decoration: underline;
        }

        .outils-annuaires-page .annuaires-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-annuaires-page .annuaires-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-annuaires-page .annuaires-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-annuaires-page .annuaires-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-annuaires-page .annuaires-hero-body p {
            margin: 0;
        }

        .outils-annuaires-page .annuaires-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-annuaires-page .annuaires-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-annuaires-page .annuaires-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-annuaires-page .annuaires-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-annuaires-page .annuaires-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-annuaires-page .annuaires-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-annuaires-page .annuaires-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-annuaires-page .annuaires-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-annuaires-page .annuaires-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-annuaires-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-annuaires-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-annuaires-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-annuaires-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-annuaires-page .close2:hover,


        .outils-annuaires-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-annuaires-page .annuaires-actions,

            .outils-annuaires-page .annuaires-gallery {
                grid-template-columns: 1fr;
            }

            .outils-annuaires-page .annuaires-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-annuaires-page .annuaires-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-annuaires-page .annuaires-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-annuaires-page .annuaires-hero {
                padding: 24px 18px;
            }

            .outils-annuaires-page .annuaires-gallery-imagewrap {
                height: 250px;
            }

            .outils-annuaires-page .annuaires-btn {
                max-width: none;
            }
        }

/* Postcards */
.outils-cartes-postales-page body {
            background: #f9f5f0;
        }

        .outils-cartes-postales-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-cartes-postales-page .cartespostales-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-cartes-postales-page .cartespostales-page *,


        .outils-cartes-postales-page .cartespostales-page *:before,


        .outils-cartes-postales-page .cartespostales-page *:after {
            box-sizing: border-box;
        }

        .outils-cartes-postales-page .cartespostales-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-cartes-postales-page .cartespostales-page a:hover {
            text-decoration: underline;
        }

        .outils-cartes-postales-page .cartespostales-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-cartes-postales-page .cartespostales-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-cartes-postales-page .cartespostales-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-cartes-postales-page .cartespostales-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-cartes-postales-page .cartespostales-hero-body p {
            margin: 0;
        }

        .outils-cartes-postales-page .cartespostales-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-cartes-postales-page .cartespostales-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-cartes-postales-page .cartespostales-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-cartes-postales-page .cartespostales-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-cartes-postales-page .cartespostales-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-cartes-postales-page .cartespostales-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-cartes-postales-page .cartespostales-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-cartes-postales-page .cartespostales-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-cartes-postales-page .cartespostales-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-cartes-postales-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-cartes-postales-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-cartes-postales-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-cartes-postales-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-cartes-postales-page .close2:hover,


        .outils-cartes-postales-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-cartes-postales-page .cartespostales-actions,

            .outils-cartes-postales-page .cartespostales-gallery {
                grid-template-columns: 1fr;
            }

            .outils-cartes-postales-page .cartespostales-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-cartes-postales-page .cartespostales-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-cartes-postales-page .cartespostales-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-cartes-postales-page .cartespostales-hero {
                padding: 24px 18px;
            }

            .outils-cartes-postales-page .cartespostales-gallery-imagewrap {
                height: 250px;
            }

            .outils-cartes-postales-page .cartespostales-btn {
                max-width: none;
            }
        }

/* Drouin miscellaneous collections */
.outils-collections-diverses-page body {
            background: #f9f5f0;
        }

        .outils-collections-diverses-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-collections-diverses-page .cdd-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-collections-diverses-page .cdd-page *,


        .outils-collections-diverses-page .cdd-page *:before,


        .outils-collections-diverses-page .cdd-page *:after {
            box-sizing: border-box;
        }

        .outils-collections-diverses-page .cdd-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-collections-diverses-page .cdd-page a:hover {
            text-decoration: underline;
        }

        .outils-collections-diverses-page .cdd-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-collections-diverses-page .cdd-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-collections-diverses-page .cdd-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-collections-diverses-page .cdd-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-collections-diverses-page .cdd-hero-body p {
            margin: 0;
        }

        .outils-collections-diverses-page .cdd-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-collections-diverses-page .cdd-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-collections-diverses-page .cdd-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-collections-diverses-page .cdd-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-collections-diverses-page .cdd-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-collections-diverses-page .cdd-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-collections-diverses-page .cdd-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-collections-diverses-page .cdd-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-collections-diverses-page .cdd-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-collections-diverses-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-collections-diverses-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-collections-diverses-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-collections-diverses-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-collections-diverses-page .close2:hover,


        .outils-collections-diverses-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-collections-diverses-page .cdd-actions,

            .outils-collections-diverses-page .cdd-gallery {
                grid-template-columns: 1fr;
            }

            .outils-collections-diverses-page .cdd-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-collections-diverses-page .cdd-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-collections-diverses-page .cdd-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-collections-diverses-page .cdd-hero {
                padding: 24px 18px;
            }

            .outils-collections-diverses-page .cdd-gallery-imagewrap {
                height: 250px;
            }

            .outils-collections-diverses-page .cdd-btn {
                max-width: none;
            }
        }

/* Notarial contracts */
.outils-contrats-notaries-page body {
            background: #f9f5f0;
        }

        .outils-contrats-notaries-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-contrats-notaries-page .contrats-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-contrats-notaries-page .contrats-page *,


        .outils-contrats-notaries-page .contrats-page *:before,


        .outils-contrats-notaries-page .contrats-page *:after {
            box-sizing: border-box;
        }

        .outils-contrats-notaries-page .contrats-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-contrats-notaries-page .contrats-page a:hover {
            text-decoration: underline;
        }

        .outils-contrats-notaries-page .contrats-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-contrats-notaries-page .contrats-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-contrats-notaries-page .contrats-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-contrats-notaries-page .contrats-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-contrats-notaries-page .contrats-hero-body p {
            margin: 0;
        }

        .outils-contrats-notaries-page .contrats-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-contrats-notaries-page .contrats-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-contrats-notaries-page .contrats-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-contrats-notaries-page .contrats-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-contrats-notaries-page .contrats-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-contrats-notaries-page .contrats-gallery {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-contrats-notaries-page .contrats-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-contrats-notaries-page .contrats-gallery-imagewrap {
            width: 100%;
            height: 540px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-contrats-notaries-page .contrats-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-contrats-notaries-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-contrats-notaries-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-contrats-notaries-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-contrats-notaries-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-contrats-notaries-page .close2:hover,


        .outils-contrats-notaries-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-contrats-notaries-page .contrats-actions,

            .outils-contrats-notaries-page .contrats-gallery {
                grid-template-columns: 1fr;
            }

            .outils-contrats-notaries-page .contrats-gallery-imagewrap {
                height: 360px;
            }
        }

        @media (max-width: 640px) {
            .outils-contrats-notaries-page .contrats-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-contrats-notaries-page .contrats-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-contrats-notaries-page .contrats-hero {
                padding: 24px 18px;
            }

            .outils-contrats-notaries-page .contrats-gallery-imagewrap {
                height: 250px;
            }

            .outils-contrats-notaries-page .contrats-btn {
                max-width: none;
            }
        }

/* BMS cards */
.outils-fiches-bms-page body {
            background: #f9f5f0;
        }

        .outils-fiches-bms-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-fiches-bms-page .fichesbms-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-fiches-bms-page .fichesbms-page *,


        .outils-fiches-bms-page .fichesbms-page *:before,


        .outils-fiches-bms-page .fichesbms-page *:after {
            box-sizing: border-box;
        }

        .outils-fiches-bms-page .fichesbms-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-fiches-bms-page .fichesbms-page a:hover {
            text-decoration: underline;
        }

        .outils-fiches-bms-page .fichesbms-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-fiches-bms-page .fichesbms-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-fiches-bms-page .fichesbms-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-fiches-bms-page .fichesbms-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-fiches-bms-page .fichesbms-hero-body p {
            margin: 0;
        }

        .outils-fiches-bms-page .fichesbms-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-fiches-bms-page .fichesbms-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-fiches-bms-page .fichesbms-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-fiches-bms-page .fichesbms-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-fiches-bms-page .fichesbms-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-fiches-bms-page .fichesbms-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-fiches-bms-page .fichesbms-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-fiches-bms-page .fichesbms-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-fiches-bms-page .fichesbms-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-fiches-bms-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-fiches-bms-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-fiches-bms-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-fiches-bms-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-fiches-bms-page .close2:hover,


        .outils-fiches-bms-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-fiches-bms-page .fichesbms-actions,

            .outils-fiches-bms-page .fichesbms-gallery {
                grid-template-columns: 1fr;
            }

            .outils-fiches-bms-page .fichesbms-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-fiches-bms-page .fichesbms-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-fiches-bms-page .fichesbms-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-fiches-bms-page .fichesbms-hero {
                padding: 24px 18px;
            }

            .outils-fiches-bms-page .fichesbms-gallery-imagewrap {
                height: 250px;
            }

            .outils-fiches-bms-page .fichesbms-btn {
                max-width: none;
            }
        }

/* Connolly file */
.outils-fichier-connolly-page body {
            background: #f9f5f0;
        }

        .outils-fichier-connolly-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-fichier-connolly-page .connolly-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-fichier-connolly-page .connolly-page *,


        .outils-fichier-connolly-page .connolly-page *:before,


        .outils-fichier-connolly-page .connolly-page *:after {
            box-sizing: border-box;
        }

        .outils-fichier-connolly-page .connolly-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-fichier-connolly-page .connolly-page a:hover {
            text-decoration: underline;
        }

        .outils-fichier-connolly-page .connolly-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-fichier-connolly-page .connolly-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-fichier-connolly-page .connolly-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-fichier-connolly-page .connolly-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-fichier-connolly-page .connolly-hero-body p {
            margin: 0;
        }

        .outils-fichier-connolly-page .connolly-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-fichier-connolly-page .connolly-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-fichier-connolly-page .connolly-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-fichier-connolly-page .connolly-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-fichier-connolly-page .connolly-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-fichier-connolly-page .connolly-gallery {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-fichier-connolly-page .connolly-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-fichier-connolly-page .connolly-gallery-imagewrap {
            width: 100%;
            height: 540px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-fichier-connolly-page .connolly-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-fichier-connolly-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-fichier-connolly-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-fichier-connolly-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-fichier-connolly-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-fichier-connolly-page .close2:hover,


        .outils-fichier-connolly-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-fichier-connolly-page .connolly-actions,

            .outils-fichier-connolly-page .connolly-gallery {
                grid-template-columns: 1fr;
            }

            .outils-fichier-connolly-page .connolly-gallery-imagewrap {
                height: 360px;
            }
        }

        @media (max-width: 640px) {
            .outils-fichier-connolly-page .connolly-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-fichier-connolly-page .connolly-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-fichier-connolly-page .connolly-hero {
                padding: 24px 18px;
            }

            .outils-fichier-connolly-page .connolly-gallery-imagewrap {
                height: 250px;
            }

            .outils-fichier-connolly-page .connolly-btn {
                max-width: none;
            }
        }

/* Drouin major collections */
.outils-grandes-collections-page body {
            background: #f9f5f0;
        }

        .outils-grandes-collections-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-grandes-collections-page .gcd-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-grandes-collections-page .gcd-page *,


        .outils-grandes-collections-page .gcd-page *:before,


        .outils-grandes-collections-page .gcd-page *:after {
            box-sizing: border-box;
        }

        .outils-grandes-collections-page .gcd-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-grandes-collections-page .gcd-page a:hover {
            text-decoration: underline;
        }

        .outils-grandes-collections-page .gcd-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-grandes-collections-page .gcd-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-grandes-collections-page .gcd-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-grandes-collections-page .gcd-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-grandes-collections-page .gcd-hero-body p {
            margin: 0;
        }

        .outils-grandes-collections-page .gcd-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-grandes-collections-page .gcd-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-grandes-collections-page .gcd-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-grandes-collections-page .gcd-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-grandes-collections-page .gcd-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-grandes-collections-page .gcd-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-grandes-collections-page .gcd-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-grandes-collections-page .gcd-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-grandes-collections-page .gcd-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-grandes-collections-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-grandes-collections-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-grandes-collections-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-grandes-collections-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-grandes-collections-page .close2:hover,


        .outils-grandes-collections-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-grandes-collections-page .gcd-actions,

            .outils-grandes-collections-page .gcd-gallery {
                grid-template-columns: 1fr;
            }

            .outils-grandes-collections-page .gcd-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-grandes-collections-page .gcd-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-grandes-collections-page .gcd-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-grandes-collections-page .gcd-hero {
                padding: 24px 18px;
            }

            .outils-grandes-collections-page .gcd-gallery-imagewrap {
                height: 250px;
            }

            .outils-grandes-collections-page .gcd-btn {
                max-width: none;
            }
        }

/* Marriages and deaths 1926-1997 */
.outils-mariages-deces-page body {
            background: #f9f5f0;
        }

        .outils-mariages-deces-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-mariages-deces-page .mariages-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-mariages-deces-page .mariages-page *,


        .outils-mariages-deces-page .mariages-page *:before,


        .outils-mariages-deces-page .mariages-page *:after {
            box-sizing: border-box;
        }

        .outils-mariages-deces-page .mariages-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-mariages-deces-page .mariages-page a:hover {
            text-decoration: underline;
        }

        .outils-mariages-deces-page .mariages-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-mariages-deces-page .mariages-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-mariages-deces-page .mariages-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-mariages-deces-page .mariages-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-mariages-deces-page .mariages-hero-body p {
            margin: 0;
        }

        .outils-mariages-deces-page .mariages-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-mariages-deces-page .mariages-actions {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 14px;
        }

        .outils-mariages-deces-page .mariages-button-wrap {
            display: flex;
            justify-content: center;
            width: 100%;
        }

        .outils-mariages-deces-page .mariages-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 520px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-mariages-deces-page .mariages-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-mariages-deces-page .mariages-secondary-link {
            display: inline-block;
            font-weight: 600;
            line-height: 1.5;
            text-align: center;
            margin-top: 2px;
        }

        .outils-mariages-deces-page .mariages-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-mariages-deces-page .mariages-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-mariages-deces-page .mariages-gallery-imagewrap {
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-mariages-deces-page .mariages-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-mariages-deces-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-mariages-deces-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-mariages-deces-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-mariages-deces-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-mariages-deces-page .close2:hover,


        .outils-mariages-deces-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-mariages-deces-page .mariages-gallery {
                grid-template-columns: 1fr;
            }

            .outils-mariages-deces-page .mariages-gallery-imagewrap {
                height: 320px;
            }
        }

        @media (max-width: 640px) {
            .outils-mariages-deces-page .mariages-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-mariages-deces-page .mariages-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-mariages-deces-page .mariages-hero {
                padding: 24px 18px;
            }

            .outils-mariages-deces-page .mariages-gallery-imagewrap {
                height: 250px;
            }

            .outils-mariages-deces-page .mariages-btn {
                max-width: none;
            }
        }

/* Necrologue */
.outils-necrologe-page body {
            background: #f9f5f0;
        }

        .outils-necrologe-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-necrologe-page .necrologe-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-necrologe-page .necrologe-page *,


        .outils-necrologe-page .necrologe-page *:before,


        .outils-necrologe-page .necrologe-page *:after {
            box-sizing: border-box;
        }

        .outils-necrologe-page .necrologe-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-necrologe-page .necrologe-page a:hover {
            text-decoration: underline;
        }

        .outils-necrologe-page .necrologe-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-necrologe-page .necrologe-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-necrologe-page .necrologe-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-necrologe-page .necrologe-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-necrologe-page .necrologe-hero-body p {
            margin: 0;
        }

        .outils-necrologe-page .necrologe-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-necrologe-page .necrologe-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-necrologe-page .necrologe-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-necrologe-page .necrologe-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-necrologe-page .necrologe-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-necrologe-page .necrologe-gallery {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-necrologe-page .necrologe-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-necrologe-page .necrologe-gallery-imagewrap {
            width: 100%;
            height: 230px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-necrologe-page .necrologe-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-necrologe-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-necrologe-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-necrologe-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-necrologe-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-necrologe-page .close2:hover,


        .outils-necrologe-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 1100px) {
            .outils-necrologe-page .necrologe-gallery {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        @media (max-width: 900px) {
            .outils-necrologe-page .necrologe-actions,

            .outils-necrologe-page .necrologe-gallery {
                grid-template-columns: 1fr;
            }

            .outils-necrologe-page .necrologe-gallery-imagewrap {
                height: 280px;
            }
        }

        @media (max-width: 640px) {
            .outils-necrologe-page .necrologe-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-necrologe-page .necrologe-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-necrologe-page .necrologe-hero {
                padding: 24px 18px;
            }

            .outils-necrologe-page .necrologe-gallery-imagewrap {
                height: 240px;
            }

            .outils-necrologe-page .necrologe-btn {
                max-width: none;
            }
        }

/* Petit NBMDS */
.outils-petit-nbmds-page body {
            background: #f9f5f0;
        }

        .outils-petit-nbmds-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-petit-nbmds-page .petitnbmds-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-petit-nbmds-page .petitnbmds-page *,


        .outils-petit-nbmds-page .petitnbmds-page *:before,


        .outils-petit-nbmds-page .petitnbmds-page *:after {
            box-sizing: border-box;
        }

        .outils-petit-nbmds-page .petitnbmds-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-petit-nbmds-page .petitnbmds-page a:hover {
            text-decoration: underline;
        }

        .outils-petit-nbmds-page .petitnbmds-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-petit-nbmds-page .petitnbmds-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-petit-nbmds-page .petitnbmds-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-petit-nbmds-page .petitnbmds-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-petit-nbmds-page .petitnbmds-hero-body p {
            margin: 0;
        }

        .outils-petit-nbmds-page .petitnbmds-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-petit-nbmds-page .petitnbmds-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-petit-nbmds-page .petitnbmds-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-petit-nbmds-page .petitnbmds-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-petit-nbmds-page .petitnbmds-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-petit-nbmds-page .petitnbmds-gallery {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-petit-nbmds-page .petitnbmds-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-petit-nbmds-page .petitnbmds-gallery-imagewrap {
            width: 100%;
            height: 540px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-petit-nbmds-page .petitnbmds-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-petit-nbmds-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-petit-nbmds-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-petit-nbmds-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-petit-nbmds-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-petit-nbmds-page .close2:hover,


        .outils-petit-nbmds-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-petit-nbmds-page .petitnbmds-actions,

            .outils-petit-nbmds-page .petitnbmds-gallery {
                grid-template-columns: 1fr;
            }

            .outils-petit-nbmds-page .petitnbmds-gallery-imagewrap {
                height: 360px;
            }
        }

        @media (max-width: 640px) {
            .outils-petit-nbmds-page .petitnbmds-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-petit-nbmds-page .petitnbmds-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-petit-nbmds-page .petitnbmds-hero {
                padding: 24px 18px;
            }

            .outils-petit-nbmds-page .petitnbmds-gallery-imagewrap {
                height: 250px;
            }

            .outils-petit-nbmds-page .petitnbmds-btn {
                max-width: none;
            }
        }

/* Censuses */
.outils-recensements-page body {
            background: #f9f5f0;
        }

        .outils-recensements-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-recensements-page .recensements-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-recensements-page .recensements-page *,


        .outils-recensements-page .recensements-page *:before,


        .outils-recensements-page .recensements-page *:after {
            box-sizing: border-box;
        }

        .outils-recensements-page .recensements-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-recensements-page .recensements-page a:hover {
            text-decoration: underline;
        }

        .outils-recensements-page .recensements-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-recensements-page .recensements-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-recensements-page .recensements-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-recensements-page .recensements-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-recensements-page .recensements-hero-body p {
            margin: 0;
        }

        .outils-recensements-page .recensements-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-recensements-page .recensements-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-recensements-page .recensements-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-recensements-page .recensements-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-recensements-page .recensements-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-recensements-page .recensements-gallery {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-recensements-page .recensements-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-recensements-page .recensements-gallery-imagewrap {
            width: 100%;
            height: 540px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-recensements-page .recensements-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-recensements-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-recensements-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-recensements-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-recensements-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-recensements-page .close2:hover,


        .outils-recensements-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-recensements-page .recensements-actions,

            .outils-recensements-page .recensements-gallery {
                grid-template-columns: 1fr;
            }

            .outils-recensements-page .recensements-gallery-imagewrap {
                height: 360px;
            }
        }

        @media (max-width: 640px) {
            .outils-recensements-page .recensements-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-recensements-page .recensements-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-recensements-page .recensements-hero {
                padding: 24px 18px;
            }

            .outils-recensements-page .recensements-gallery-imagewrap {
                height: 250px;
            }

            .outils-recensements-page .recensements-btn {
                max-width: none;
            }
        }

/* Drouin records */
.outils-registres-drouin-page body {
            background: #f9f5f0;
        }

        .outils-registres-drouin-page .footer-section {
            background-color: #d8d0c5;
        }

        .outils-registres-drouin-page .registres-page {
            max-width: 1240px;
            margin: 0 auto;
            padding: 28px 20px 42px 20px;
            color: #2f2f2f;
        }

        .outils-registres-drouin-page .registres-page *,


        .outils-registres-drouin-page .registres-page *:before,


        .outils-registres-drouin-page .registres-page *:after {
            box-sizing: border-box;
        }

        .outils-registres-drouin-page .registres-page a {
            color: #561414;
            text-decoration: none;
        }

        .outils-registres-drouin-page .registres-page a:hover {
            text-decoration: underline;
        }

        .outils-registres-drouin-page .registres-page-title {
            display: flex;
            justify-content: center;
            margin-bottom: 24px;
            text-align: center;
        }

        .outils-registres-drouin-page .registres-page-title h1 {
            margin: 0;
            color: #561414;
            font-size: 2.2rem;
            line-height: 1.15;
            font-weight: 700;
        }

        .outils-registres-drouin-page .registres-hero {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 20px;
            padding: 30px 28px;
            margin-bottom: 24px;
            box-shadow: 0 10px 28px rgba(0,0,0,.05);
        }

        .outils-registres-drouin-page .registres-hero-body {
            font-size: 1.04rem;
            line-height: 1.8;
            color: #544d47;
        }

        .outils-registres-drouin-page .registres-hero-body p {
            margin: 0;
        }

        .outils-registres-drouin-page .registres-divider {
            height: 1px;
            border: 0;
            background: linear-gradient(to right, transparent, #d7ccc0, transparent);
            margin: 28px 0;
        }

        .outils-registres-drouin-page .registres-actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
            margin-bottom: 6px;
        }

        .outils-registres-drouin-page .registres-button-wrap {
            display: flex;
            justify-content: center;
        }

        .outils-registres-drouin-page .registres-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 420px;
            min-height: 54px;
            padding: 12px 20px;
            border-radius: 14px;
            background: #561414;
            color: #fff !important;
            border: 2px solid #561414;
            font-weight: 700;
            font-size: 1rem;
            text-align: center;
            text-decoration: none !important;
            transition: all .18s ease;
            box-shadow: 0 8px 18px rgba(86,20,20,.12);
        }

        .outils-registres-drouin-page .registres-btn:hover {
            background: #6e1d1d;
            border-color: #6e1d1d;
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 12px 24px rgba(86,20,20,.18);
        }

        .outils-registres-drouin-page .registres-gallery {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 20px;
        }

        .outils-registres-drouin-page .registres-gallery-item {
            background: #ffffff;
            border: 1px solid #e7ddd2;
            border-radius: 18px;
            padding: 14px;
            box-shadow: 0 10px 24px rgba(0,0,0,.04);
        }

        .outils-registres-drouin-page .registres-gallery-imagewrap {
            width: 100%;
            height: 540px;
            overflow: hidden;
            border-radius: 14px;
            background: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .outils-registres-drouin-page .registres-gallery-imagewrap img {
            display: block;
            max-width: 100%;
            max-height: 100%;
            width: auto;
            height: auto;
            margin: 0 auto;
            cursor: pointer;
        }

        .outils-registres-drouin-page .modal-main {
            display: none;
            position: fixed;
            z-index: 1000;
            left: 0;
            top: 0;
            width: 100vw;
            height: 100vh;
            overflow: auto;
            background-color: rgba(0,0,0,0.55);
            padding: 30px 15px;
        }

        .outils-registres-drouin-page .modal-content {
            background-color: #fff;
            margin: 0 auto;
            padding: 20px;
            border: 1px solid #d8d0c7;
            border-radius: 16px;
            width: 100%;
            max-width: 980px;
            box-shadow: 0 20px 45px rgba(0,0,0,.25);
        }

        .outils-registres-drouin-page .modal-content img {
            display: block;
            max-width: 100%;
            height: auto;
            margin: 0 auto;
        }

        .outils-registres-drouin-page .close2 {
            color: #777;
            float: right;
            font-size: 30px;
            font-weight: bold;
            display: inline-block;
            cursor: pointer;
            line-height: 1;
            margin-bottom: 12px;
        }

        .outils-registres-drouin-page .close2:hover,


        .outils-registres-drouin-page .close2:focus {
            color: black;
            text-decoration: none;
        }

        @media (max-width: 900px) {
            .outils-registres-drouin-page .registres-actions,

            .outils-registres-drouin-page .registres-gallery {
                grid-template-columns: 1fr;
            }

            .outils-registres-drouin-page .registres-gallery-imagewrap {
                height: 360px;
            }
        }

        @media (max-width: 640px) {
            .outils-registres-drouin-page .registres-page {
                padding: 20px 14px 34px 14px;
            }

            .outils-registres-drouin-page .registres-page-title h1 {
                font-size: 1.8rem;
            }

            .outils-registres-drouin-page .registres-hero {
                padding: 24px 18px;
            }

            .outils-registres-drouin-page .registres-gallery-imagewrap {
                height: 250px;
            }

            .outils-registres-drouin-page .registres-btn {
                max-width: none;
            }
        }

/* ============================================================
   Subscription confirmation page
============================================================ */
.confirmation-page body {
    background-color: #F8F4EE;
}

.confirmation-page .footer-section {
    background-color: #d8d0c5;
}

.confirmation-page .abo-section {
    background-color: white;
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 8px;
    opacity: 1;
    margin-bottom: 30px;
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 100px;
    padding-right: 100px;
    padding-bottom: 50px;
    padding-top: 25px;
    color: #707070;
}

.confirmation-page .red-button {
    width: unset;
    border-radius: unset;
}

.confirmation-page .abo-section div {
    display: flex;
    justify-content: center;
    text-align: center;
}

.confirmation-page .confirmation-felicitation {
    font-size: 22px;
    color: #4F1917 !important;
    font-weight: bolder;
    padding-bottom: 25px;
}

.confirmation-page .confirmation-quick-start {
    display: block !important;
}

.confirmation-page .confirmation-intro {
    padding-bottom: 25px;
}

.confirmation-page .confirmation-email {
    padding-bottom: 25px;
}

.confirmation-page .confirmation-button {
    padding-top: 25px;
}

.confirmation-page .log-in-link {
    color: #56b3c9;
    text-decoration: underline;
}

.confirmation-page .confirmation-checkmark {
    height: 50px;
    margin-bottom: 10px;
}

.confirmation-page .sub-info {
    margin-left: 5px;
}

/* ============================================================
   New connection page and account controls
============================================================ */
.connexion-new-page body {
    background-color: #F8F4EE;
    padding-top: 65px;
}

.connexion-new-page .footer-section {
    background-color: #d8d0c5;
    margin-top: 0px;
}

.connexion-new-page .pre-footer-div {
    display: none;
}

.connexion-new-page .abo-section {
    background-color: white;
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 8px;
    opacity: 1;
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
}

.connexion-new-page .abo-section-title {
    font-size: 36px;
    font-weight: bold;
}

.connexion-new-page .abo-section-subtitle {
    font-size: 20px;
    font-weight: bold;
}

.connexion-new-page .abo-panel {
    padding-bottom: 20px;
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 15px;
}

.connexion-new-page .abo-row {
    display: flex;
    flex-direction: row;
    margin-top: 5px;
    padding-top: 5px;
    justify-content: space-between;
    border-top: 1px solid #707070;
}

.connexion-new-page .hidden-form-control {
    display: none;
}

.connexion-new-page .account-textbox {
    width: 100%;
    height: 50px;
    background-color: white;
    border: 1px solid #707070;
    border-radius: 8px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 19px;
}

.connexion-new-page .log-in-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 14px;
    margin-top: 5px;
}

.connexion-new-page .log-in-row-right {
    margin-left: 5px;
}

.connexion-new-page .log-in-link {
    color: #56b3c9;
    text-decoration: underline;
}

.connexion-new-page #ctl00_ContentPanel {
    margin-top: auto;
    margin-bottom: auto;
}

.connexion-new-page #ctl00_ContentPlaceHolder1_UpdatePanel1 {
    margin-top: 30px;
    margin-bottom: 30px;
}

.connexion-new-page .form-group {
    margin-bottom: unset;
}

/* Login account control */
.connexion-new-page .connexion-new-login-account .login-main-container {
    margin: 18px;
}

.connexion-new-page .connexion-new-login-account .abo-section-title {
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 700;
}

.connexion-new-page .connexion-new-login-account .account-textbox {
    width: 100%;
    height: 40px;
    margin-bottom: 10px;
    padding-left: 10px;
    border: 1px solid #d3d3d3;
    border-radius: 8px;
    box-sizing: border-box;
}

.connexion-new-page .connexion-new-login-account .sgce-label {
    display: block;
    font-size: 13px;
    margin: 0 0 6px 2px;
    color: #707070;
    font-weight: 600;
}

.connexion-new-page .connexion-new-login-account .failed-login-text {
    margin: 0 0 6px 0;
    font-size: 13px;
}

.connexion-new-page .connexion-new-login-account .button-row {
    display: flex;
    justify-content: flex-start;
    margin-top: 8px;
}

.connexion-new-page .connexion-new-login-account input.btn.red-button-small.connexion-button {
    font-size: 17px;
    font-weight: bold;
    height: 40px;
    border-radius: unset;
    margin-left: unset;
    box-shadow: 0px 3px 6px #00000029;
    padding: 1px 16px;
    border: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.connexion-new-page .connexion-new-login-account .log-in-row {
    display: flex;
    flex-direction: row;
    font-size: 13px;
    margin-top: 5px;
}

.connexion-new-page .connexion-new-login-account .log-in-row-top {
    justify-content: start;
    margin-left: 0;
    margin-top: 8px;
    margin-bottom: 7px;
}

.connexion-new-page .connexion-new-login-account .password-toggle-wrap {
    position: relative;
}

.connexion-new-page .connexion-new-login-account .password-toggle-input {
    padding-right: 46px;
}

.connexion-new-page .connexion-new-login-account .password-toggle-button {
    position: absolute;
    right: 0;
    top: 0;
    width: 42px;
    height: 40px;
    border: 0;
    background: #6b1712;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 8px 8px 0;
    padding: 0;
    box-shadow: 0px 3px 6px #00000029;
}

.connexion-new-page .connexion-new-login-account .password-toggle-button:hover,
.connexion-new-page .connexion-new-login-account .password-toggle-button:focus {
    background: #7d201a;
    color: #fff;
    outline: none;
}

.connexion-new-page .connexion-new-login-account .password-toggle-button.is-visible {
    background: #4f100d;
}

.connexion-new-page .connexion-new-login-account .password-eye {
    font-size: 30px;
    line-height: 1;
    opacity: 1;
}

.connexion-new-page .connexion-new-login-account .log-in-row-right {
    margin-left: 5px;
}

.connexion-new-page .connexion-new-login-account .log-in-link {
    color: #56b3c9;
    text-decoration: underline;
}

@media (max-width: 640px) {
    .connexion-new-page .connexion-new-login-account .login-main-container {
        margin: 14px;
    }

    .connexion-new-page .connexion-new-login-account .button-row {
        justify-content: stretch;
    }

    .connexion-new-page .connexion-new-login-account input.btn.red-button-small.connexion-button {
        width: 100%;
    }
}

/* Create account control */
.connexion-new-page .connexion-new-create-account .abo-section-title {
    margin-bottom: 15px;
    font-size: 20px;
}

.connexion-new-page .connexion-new-create-account #ctl00_ContentPlaceHolder1_CreateAccountControl_CreateUserWizard1___CustomNav0_StepNextButtonButton {
    display: none;
}

.connexion-new-page .connexion-new-create-account .btn.create-user-button {
    font-size: 17px;
    font-weight: bold;
    height: 40px;
    border-radius: unset;
    margin-left: unset;
    box-shadow: 0px 3px 6px #00000029;
    padding-top: 1px;
    margin-top: 0px;
    padding-right: 10px;
    padding-left: 10px;
}

.connexion-new-page .connexion-new-create-account .disclaimer-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin-bottom: 15px;
}

.connexion-new-page .connexion-new-create-account .disclaimer-row-right {
    font-size: 11px;
    color: #707070;
    margin-left: 8px;
    max-width: 490px;
    line-height: 1.25;
}

.connexion-new-page .connexion-new-create-account .create-account-main-container {
    margin: 18px;
}

.connexion-new-page .connexion-new-create-account .account-textbox {
    width: 100%;
    height: 40px;
    margin-bottom: 10px;
    padding-left: 10px;
    border: 1px solid #d3d3d3;
    border-radius: 8px;
    box-sizing: border-box;
}

.connexion-new-page .connexion-new-create-account .name-row {
    display: flex;
    flex-direction: row;
    gap: 12px;
    align-items: flex-start;
    width: 100%;
}

.connexion-new-page .connexion-new-create-account .name-row > div {
    flex: 1 1 0;
    min-width: 0;
}

.connexion-new-page .connexion-new-create-account .button-row {
    display: flex;
    justify-content: center;
    margin-top: 8px;
}

.connexion-new-page .connexion-new-create-account .create-account-main-container div[id$="UserNamePanel"],
.connexion-new-page .connexion-new-create-account .create-account-main-container div[id$="EmailPanel"],
.connexion-new-page .connexion-new-create-account .create-account-main-container div[id$="PasswordPanel"],
.connexion-new-page .connexion-new-create-account .create-account-main-container div[id$="DisclaimerPanel"],
.connexion-new-page .connexion-new-create-account .create-account-main-container div[id$="ErrorMessagePanel"] {
    display: block;
    width: 100%;
}

@media (max-width: 450px) {
    .connexion-new-page .connexion-new-create-account .name-row {
        flex-direction: column;
    }

    .connexion-new-page .connexion-new-create-account .prenom-textbox {
        margin-bottom: 0px;
    }

    .connexion-new-page .connexion-new-create-account .name-row > div {
        display: block;
        width: 100%;
    }
}

.connexion-new-page .connexion-new-create-account .validation-summary {
    margin-top: 12px;
    padding: 10px 12px;
    border: 1px solid #dc3545;
    background: #fff5f5;
    color: #dc3545;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.25;
}

.connexion-new-page .connexion-new-create-account .validation-summary ul {
    margin: 0;
    padding-left: 18px;
}

.connexion-new-page .connexion-new-create-account .validation-summary li {
    margin: 4px 0;
}

.connexion-new-page .connexion-new-create-account .validation-summary:empty {
    display: none;
}

.connexion-new-page .ajax__validatorcallout_popup_table,
.connexion-new-page .ajax__validatorcallout_callout {
    display: none !important;
    visibility: hidden !important;
}

.connexion-new-page .connexion-new-create-account .input-error {
    border-color: #dc3545 !important;
    background: #fff5f5 !important;
    outline: none;
}

.connexion-new-page .connexion-new-create-account .create-user-left {
    border-right: unset;
}

