/**
 * Alpesolidaires territory CSS overrides.
 * Loaded conditionally when on the alpesolidaires domain.
 * Styles sourced from Drupal production: alpesolidaires.css + probesys.css.
 *
 * Scoped under .territory-alpesolidaires body class to avoid
 * affecting other territories.
 */

/* ========================================================================
   FONT-FACE: Renner
   ======================================================================== */

@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-thin-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-thin-webfont.woff') format('woff');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-thinitalic-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-thinitalic-webfont.woff') format('woff');
    font-weight: 100;
    font-style: italic;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-light-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-light-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-lightitalic-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-lightitalic-webfont.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-book-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-book-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-bookitalic-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-bookitalic-webfont.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-medium-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-medium-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-mediumitalic-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-mediumitalic-webfont.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-bold-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-bolditalic-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-bolditalic-webfont.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-black-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-black-webfont.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'renner';
    src: url('../fonts/renner/renner-blackitalic-webfont.woff2') format('woff2'),
         url('../fonts/renner/renner-blackitalic-webfont.woff') format('woff');
    font-weight: 900;
    font-style: italic;
}

/* ========================================================================
   SKIN COLA COM - Juin 2026
   ======================================================================== */
.brevo .sib-email-area
{max-width:200px;}
.brevo input.sib-default-btn {
    color: #fff;
    background-color: #EC5C6D;
    border:none;
}
.brevo input.sib-default-btn:hover {
    color: #fff;
    background-color: #ed304a;
}
header .elementor-icon-box-icon .st0 {
    fill: #fff;
}
footer .sib-email-area
{color:#ec5c6d;
font-size:16px;}
footer .sib-email-area
{display:block;}
footer input.sib-default-btn
{
border: none;
background-color: #ec5c6d;
padding: 2px 20px;
color: #fff;
}
footer input.sib-default-btn:hover
{background-color:#383838;}
/* ========================================================================
   GLOBAL: Font, Border Radius, Colors
   ======================================================================== */

.territory-alpesolidaires,
.territory-alpesolidaires p,
.territory-alpesolidaires a,
.territory-alpesolidaires span,
.territory-alpesolidaires li,
.territory-alpesolidaires label,
.territory-alpesolidaires input,
.territory-alpesolidaires button,
.territory-alpesolidaires .btn {
    font-family: "renner", Helvetica, Arial, sans-serif;
}

/* Body font size & color to match Drupal (1.6rem / #383838) */
.territory-alpesolidaires {
    font-size: 1.6rem;
    color: #383838;
}

.territory-alpesolidaires h1,
.territory-alpesolidaires h2,
.territory-alpesolidaires h3,
.territory-alpesolidaires h4,
.territory-alpesolidaires h5,
.territory-alpesolidaires h6 {
    font-family: "renner", Helvetica, Arial, sans-serif;
}

/* Heading sizes to match Drupal */
.territory-alpesolidaires h1 { font-size: 3.8rem; }
.territory-alpesolidaires h2 { font-size: 2.6rem; }
.territory-alpesolidaires h3 { font-size: 1.75rem; }

.territory-alpesolidaires .btn,
.territory-alpesolidaires .form-control,
.territory-alpesolidaires .custom-select,
.territory-alpesolidaires .card,
.territory-alpesolidaires .card-new {
    border-radius: 0;
}

/* Links */
.territory-alpesolidaires a {
    color: #EC5C6D;
}
.territory-alpesolidaires a:hover {
    color: #383838;
}

/* Primary button */
.territory-alpesolidaires .btn-primary {
    color: #fff;
    background-color: #EC5C6D;
    border-color: #EC5C6D;
}
.territory-alpesolidaires .btn-primary:hover {
    color: #fff;
    background-color: #e83a4e;
    border-color: #e62e43;
}
.territory-alpesolidaires .btn-primary:focus,
.territory-alpesolidaires .btn-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(236, 92, 109, 0.5);
}

/* Secondary button */
.territory-alpesolidaires .btn-secondary {
    color: #fff;
    background-color: #E0737F;
    border-color: #E0737F;
}
.territory-alpesolidaires .btn-secondary:hover {
    color: #fff;
    background-color: #d95462;
    border-color: #d74959;
}
.territory-alpesolidaires .btn-secondary:focus,
.territory-alpesolidaires .btn-secondary.focus {
    box-shadow: 0 0 0 0.2rem rgba(229, 136, 146, 0.5);
}
.territory-alpesolidaires .btn-secondary:not(:disabled):not(.disabled):active,
.territory-alpesolidaires .btn-secondary:not(:disabled):not(.disabled).active {
    color: #fff;
    background-color: #d74959;
    border-color: #d43f4f;
}

/* Text/background utilities */
.territory-alpesolidaires .text-primary {
    color: #EC5C6D !important;
}
.territory-alpesolidaires .bg-primary {
    background-color: #EC5C6D !important;
}

/* ========================================================================
   PAGE 404
   ======================================================================== */
.error404 .container .page__content
{margin-top: 100px;
font-weight: bold;
text-align: center;}
/* ========================================================================
   GLOBAL ELEMENTS: content-type, title-border, title-section
   ======================================================================== */

.territory-alpesolidaires .content-type {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: 500;
}

.territory-alpesolidaires .title-border {
    width: 45px;
    margin-bottom: 15px;
    margin-top: 15px;
}

.territory-alpesolidaires .title-border-bottom {
    border-top: 2px solid #383838;
}

.territory-alpesolidaires .title-section-box {
    margin-bottom: 60px;
}

.territory-alpesolidaires .title-section-box .title-section {
    font-size: 3.6rem;
}

/* ========================================================================
   HEADER / NAVIGATION
   ======================================================================== */

/* Page header background */
.territory-alpesolidaires .section-header-content {
    background-color: #E0737F;
    color: #fff;
}
.territory-alpesolidaires .section-header-content a {
    color: #fff;
}
.territory-alpesolidaires .section-header-content .main-content-title {
    color: #fff;
}

/* Dotted border in header: white on pink bg */
.territory-alpesolidaires .section-header-content .title-border-dashed-bottom {
    border-top-color: #fff;
}

/* Header padding for fixed nav on view/listing pages */
.territory-alpesolidaires .section-header-content.Vue {
    padding-top: 110px;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .section-header-content.Vue {
        padding-top: 80px;
    }
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .section-header-content.Vue {
        padding-top: 60px;
    }
}

/* Header SVG icon sizing */
.territory-alpesolidaires .section-header-content .header-content .col-md-5 .img-responsive {
    max-width: 250px;
}

/* Social share icons: white on pink bg */
.territory-alpesolidaires .section-header-content .link-socialshare a {
    color: #fff;
}
.territory-alpesolidaires .section-header-content .link-socialshare a:hover {
    color: #151e28;
}

/* Subnavbar */
.territory-alpesolidaires #subnavbar1 {
    border-bottom-color: #E0737F;
}

/* Territory name */
.territory-alpesolidaires .territory-name {
    color: #EC5C6D;
}

/* Hide territory dropdown (single territory) */
.territory-alpesolidaires .nav-item-right.Territoires {
    display: none;
}

/* Nav link hover */
.territory-alpesolidaires .nav-link:hover {
    color: #EC5C6D;
}

/* ========================================================================
   SECTION: News "À la une"
   ======================================================================== */

.territory-alpesolidaires .section-on-news {
    padding: 60px 0;
    box-shadow: 0 0 8px 0 #c9c9c9;
    position: relative;
    z-index: 2;
}

.territory-alpesolidaires .news-content {
    margin-top: 25px;
}

.territory-alpesolidaires .news-content .img-card-new {
    height: 220px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.territory-alpesolidaires .news-content .card-new {
    padding: 10px;
    box-shadow: 0 0 8px 0 #c9c9c9;
    height: 480px;
    border-bottom: 15px solid #fff;
    overflow: hidden;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .news-content .card-new {
        margin-bottom: 25px;
        height: auto;
    }
}

.territory-alpesolidaires .news-content .content-card {
    position: relative;
}

.territory-alpesolidaires .news-content .a-more-link {
    background-color: #fff;
    position: absolute;
    top: -25px;
    right: 15px;
    border-radius: 100%;
}

.territory-alpesolidaires .news-content .more-link {
    transition: all 0.3s;
    border-radius: 100%;
}
.territory-alpesolidaires .news-content .more-link:hover {
    transform: scale(0.93);
}

.territory-alpesolidaires .news-content .content-type {
    padding-top: 15px;
}

.territory-alpesolidaires .news-content .title-card-new {
    font-size: 2.2rem;
}

/* Empty image placeholder */
.territory-alpesolidaires .img-card-empty {
    background-color: #ec5c6d;
    display: flex;
    align-items: center;
    justify-content: center;
}
.territory-alpesolidaires .img-card-empty img {
    height: 80px;
    width: auto;
    max-width: 80px;
    object-fit: contain;
    margin: 0 auto;
    display: block;
}

/* Title link colors */
.territory-alpesolidaires .title-card-new a,
.territory-alpesolidaires .title-link {
    color: #151E28;
}
.territory-alpesolidaires .title-link:hover {
    color: #EC5C6D;
}

/* Card image: fill container with cover */
.territory-alpesolidaires .news-content .img-card-new img {
    height: 220px;
    width: 100%;
    object-fit: cover;
    border-radius: 0;
}

/* Card date styling */
.territory-alpesolidaires .date-create-actu {
    font-size: 1.4rem;
    font-style: italic;
}

/* Card content-author: red, bold */
.territory-alpesolidaires .news-content .content-author {
    color: #EC5C6D;
    font-size: 1.7rem;
    font-weight: bold;
}

/* Card on mobile: no border-radius */
@media (max-width: 767.98px) {
    .territory-alpesolidaires .card-new {
        border-radius: 0;
    }
}

/* ========================================================================
   SECTION: 3-Column Grid (Events / Jobs / Membership)
   ======================================================================== */

@media (min-width: 992px) {
    .territory-alpesolidaires .section-column .row-column-homepage .col-lg-4.col-event,
    .territory-alpesolidaires .section-column .row-column-homepage .col-lg-4.col-joboffer {
        max-width: 38%;
        flex: 0 0 38%;
    }
    .territory-alpesolidaires .section-column .row-column-homepage .col-lg-4.col-membership {
        max-width: 24%;
        flex: 0 0 24%;
    }
}

.territory-alpesolidaires .section-column .col-joboffer {
    background-color: #f5f5f5;
}

.territory-alpesolidaires .section-column .col-membership {
    background-color: #ec5c6d;
    color: #fff;
}
.territory-alpesolidaires .section-column .col-membership .content-type {
    color: #fff;
}
.territory-alpesolidaires .section-column .col-membership .title-section {
    color: #fff;
}
.territory-alpesolidaires .section-column .col-membership .title-section-box {
    margin-bottom: 30px;
}

.territory-alpesolidaires .section-column .col-homepage {
    padding-top: 60px;
    padding-bottom: 60px;
}

.territory-alpesolidaires .section-column .title-section-box {
    padding: 0 35px;
}

.territory-alpesolidaires .section-column .content-column {
    padding: 0;
}
@media (min-width: 768px) {
    .territory-alpesolidaires .section-column .content-column {
        padding: 0 35px;
        padding-right: 45px;
    }
}

.territory-alpesolidaires .section-column .membership-img {
    display: block;
    margin: 0 auto;
}

/* Event & Job Offer cards */
.territory-alpesolidaires .section-column .content-info-box {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.territory-alpesolidaires .section-column .content-event,
.territory-alpesolidaires .section-column .content-joboffer {
    display: flex;
    margin-bottom: 30px;
    box-shadow: 0 0 8px 0 #c9c9c9;
    background-color: #fff;
    min-height: 100px;
    overflow: hidden;
}

.territory-alpesolidaires .section-column .content-event .event-date-box,
.territory-alpesolidaires .section-column .content-joboffer .event-date-box {
    background-color: #f5f5f5;
    color: #ec5c6d;
    padding: 10px 25px;
}

.territory-alpesolidaires .section-column .event-date-box .event-date-month {
    font-size: 1.6rem;
    text-transform: uppercase;
}

.territory-alpesolidaires .section-column .event-date-box .event-date-day {
    font-size: 2.4rem;
    font-weight: 900;
    position: relative;
    top: 15px;
}

.territory-alpesolidaires .section-column .event-date-box .event-date {
    overflow: hidden;
    width: 35px;
}

.territory-alpesolidaires .section-column .content-event .home-content-box,
.territory-alpesolidaires .section-column .content-joboffer .home-content-box {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
}

.territory-alpesolidaires .section-column .home-content-box .more-link {
    position: absolute;
    right: 0;
    bottom: 0;
    border-radius: 0;
    transition: all 0.3s;
}
.territory-alpesolidaires .section-column .home-content-box .more-link:hover {
    right: -2px;
    bottom: -2px;
}

.territory-alpesolidaires .section-column .home-content-box .box-title {
    padding: 0 20px;
}

.territory-alpesolidaires .section-column .home-content-box .box-title h3 {
    font-weight: 500;
    font-size: 1.6rem;
}

.territory-alpesolidaires .section-column .home-content-box .box-title .created {
    font-size: 0.85rem;
    color: #999;
    margin-top: 5px;
}

/* Job offer type box */
.territory-alpesolidaires .section-column .content-joboffer .joboffer-type-box {
    align-items: center;
    background-color: #ec5c6d;
    color: #fff;
    padding: 10px 35px;
    font-size: 2.3rem;
    width: 100px;
}

/* ========================================================================
   BUTTONS: Membership + Master
   ======================================================================== */

.territory-alpesolidaires .btn-membership {
    color: #e0737f;
    background-color: #fff;
    z-index: 1;
    position: relative;
    outline: none;
    border: none;
}

.territory-alpesolidaires .btn-membership::before {
    content: "";
    z-index: -1;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border: 3px solid #fff;
    transform-origin: center;
    transform: scale(1);
}
.territory-alpesolidaires .btn-membership:hover::before {
    transition: all 0.75s ease-in-out;
    transform-origin: center;
    transform: scale(1.3);
    opacity: 0;
}
.territory-alpesolidaires .btn-membership:hover {
    color: #e0737f;
    background-color: #fff;
}

.territory-alpesolidaires .btn-master {
    text-transform: uppercase;
    width: 250px;
    padding: 10px;
    font-size: 1.2rem;
    font-weight: 500;
}

/* ========================================================================
   PAGINATION
   ======================================================================== */

.territory-alpesolidaires .page-item.active .page-link {
    background-color: #EC5C6D;
    border-color: #EC5C6D;
}
.territory-alpesolidaires .page-link {
    color: #EC5C6D;
}
.territory-alpesolidaires .page-link:hover {
    color: #d4364a;
}

/* ========================================================================
   FOOTER
   ======================================================================== */

.territory-alpesolidaires .page__footer a {
    color: #EC5C6D;
}
.territory-alpesolidaires .page__footer a:hover {
    color: #d4364a;
}

/* ========================================================================
   FORMS
   ======================================================================== */

.territory-alpesolidaires .form-control:focus {
    border-color: #EC5C6D;
    box-shadow: 0 0 0 0.2rem rgba(236, 92, 109, 0.25);
}

/* Search form container: remove border-radius */
.territory-alpesolidaires .search-form {
    border-radius: 0;
}

/* Form custom-select inputs */
.territory-alpesolidaires form .custom-select {
    padding: 10px;
    height: 45px;
    font-size: 1.6rem;
    border-radius: 0;
    background: none;
}

/* Form control font size */
.territory-alpesolidaires .form-control {
    font-size: 1.6rem;
}

/* Search form select dropdown: override blue arrow to neutral */
.territory-alpesolidaires .search-form select {
    color: #383838 !important;
    border-radius: 0;
}

/* Form submit button sizing */
.territory-alpesolidaires form .btn.form-submit,
.territory-alpesolidaires .custom-submit {
    padding: 10px 15px;
    font-size: 1.6rem;
}

/* ========================================================================
   MISC
   ======================================================================== */

.territory-alpesolidaires .breadcrumb-item a {
    color: #383838;
}

.territory-alpesolidaires .brand-shadow {
    box-shadow: 0 0 8px 0 #c9c9c9;
}

/* Hide Ambition ESS hero block on homepage */
.territory-alpesolidaires .hero-block {
    display: none;
}

/* Hide territory map block on homepage */
.territory-alpesolidaires .section-territory {
    display: none;
}

/* Hide standard Ambition ESS nav on Alpesolidaires */
.territory-alpesolidaires .nav-desktop,
.territory-alpesolidaires .nav-mobile {
    display: none;
}

/* Override base theme #navbar1 rules (ID selector has higher specificity) */
.territory-alpesolidaires #navbar1 {
    border-bottom: none;
    height: auto;
    z-index: 10;
    overflow: visible;
}
@media (min-width: 992px) {
    .territory-alpesolidaires #navbar1 {
        border-bottom: none;
        height: auto;
        z-index: 10;
    }
}

/* ========================================================================
   ALPESOLIDAIRES HEADER / MAIN NAV
   ======================================================================== */

.territory-alpesolidaires .main-nav {
    padding: 0;
    position: fixed;
    left: 0;
    right: 0;
    z-index: 10;
    text-transform: uppercase;
    color: #151E28;
    background-color: #fff;
    transition: height 0.5s cubic-bezier(0.62, 0.28, 0.23, 0.99);
    font-family: "renner", Helvetica, Arial, sans-serif;
}

.territory-alpesolidaires .main-nav .main-nav-inner {
    padding: 0;
    margin: 0 auto;
}

.territory-alpesolidaires .main-nav .main-nav-inner > div,
.territory-alpesolidaires .main-nav .main-nav-inner > a {
    display: flex;
    flex-direction: row;
    justify-content: center;
    height: 110px;
    transition: height 0.5s cubic-bezier(0.62, 0.28, 0.23, 0.99);
    align-items: center;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .main-nav .main-nav-inner > div,
    .territory-alpesolidaires .main-nav .main-nav-inner > a {
        height: 80px;
    }
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .main-nav .main-nav-inner > div,
    .territory-alpesolidaires .main-nav .main-nav-inner > a {
        height: 60px;
    }
}

/* First 3 items: hamburger, agenda, contact */
.territory-alpesolidaires .main-nav-inner > *:nth-child(-n+3) {
    flex-basis: 90px;
    border-right: solid 1px #E3E3E3;
}
.territory-alpesolidaires .main-nav-inner > *:first-child {
    background-color: #F7F7F7;
    border-right: 0;
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .main-nav-inner > *:first-child {
        margin-right: auto;
    }
    .territory-alpesolidaires .main-nav-inner > *:nth-child(-n+3):not(:first-child) {
        display: none;
    }
}

/* Last 3 items: logo, login, search */
.territory-alpesolidaires .main-nav-inner > *:nth-last-child(-n+3) {
    flex-basis: 90px;
}
.territory-alpesolidaires .main-nav-inner > *:nth-child(3) {
    margin-right: auto;
}
.territory-alpesolidaires .main-nav-inner > *:nth-child(5) {
    margin-right: auto;
}
.territory-alpesolidaires .main-nav-inner > *:last-child {
    border-right: solid 1px #E3E3E3;
}

/* User login block width */
.territory-alpesolidaires .main-nav-inner > *:nth-last-child(-n+3).block--menuducomptedelutilisateur {
    flex-basis: 205px;
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .main-nav-inner > *:nth-last-child(-n+3).block--menuducomptedelutilisateur {
        display: none;
    }
}

/* Icon labels */
.territory-alpesolidaires .main-nav-icon-label {
    font-size: 1.57rem;
    font-weight: 500;
    color: #EC5C6D;
    text-transform: capitalize;
}

.territory-alpesolidaires .main-nav-icon-block img,
.territory-alpesolidaires .main-nav-icon-block button {
    transition: transform 0.15s cubic-bezier(0.62, 0.28, 0.23, 0.99);
}
.territory-alpesolidaires .main-nav-icon-block:hover {
    text-decoration: none;
}
.territory-alpesolidaires .main-nav-icon-block:hover img,
.territory-alpesolidaires .main-nav-icon-block:hover button {
    transform: scale(1.1);
}

/* Navbar brand / logo */
.territory-alpesolidaires .navbar-brand {
    margin-right: 0;
}
.territory-alpesolidaires .navbar-brand img {
    height: 55px;
    width: auto;
    transition: all 0.5s cubic-bezier(0.62, 0.28, 0.23, 0.99);
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .navbar-brand img {
        height: 45px;
    }
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .navbar-brand img {
        height: 26px;
    }
}

/* Scroll-shrink state */
.territory-alpesolidaires .main-nav.scroll-navbar {
    box-shadow: 0 0 8px 0 #c9c9c9;
}
.territory-alpesolidaires .main-nav.scroll-navbar .main-nav-inner > div,
.territory-alpesolidaires .main-nav.scroll-navbar .main-nav-inner > a {
    height: 80px;
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .main-nav.scroll-navbar .main-nav-inner > div,
    .territory-alpesolidaires .main-nav.scroll-navbar .main-nav-inner > a {
        height: 60px;
    }
}
.territory-alpesolidaires .scroll-navbar .navbar-brand img {
    height: 45px;
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .scroll-navbar .navbar-brand img {
        height: 26px;
    }
}

/* User account block */
.territory-alpesolidaires .block--menuducomptedelutilisateur {
    border-right: solid 1px #e3e3e3;
    border-left: solid 1px #e3e3e3;
}
.territory-alpesolidaires .block--menuducomptedelutilisateur .main-nav-icon-block {
    padding-left: 0;
    margin: 0;
    list-style: none;
}
.territory-alpesolidaires .block--menuducomptedelutilisateur .main-nav-connect-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-transform: uppercase;
    color: #151E28;
    font-size: 1.57rem;
    font-weight: 500;
}
.territory-alpesolidaires .block--menuducomptedelutilisateur .main-nav-connect-item::before {
    content: url(../img/alpesolidaires/header/connect.svg);
    margin-right: 5px;
}
.territory-alpesolidaires .block--menuducomptedelutilisateur .main-nav-connect-item:hover {
    text-decoration: none;
}

/* Hamburger button */
.territory-alpesolidaires .main-nav .btn-burger-parent {
    cursor: pointer;
}
.territory-alpesolidaires .main-nav .btn-burger {
    padding: 5px;
    margin-right: 32px;
    margin-left: 32px;
    border: 0;
    width: 25px;
    height: 38px;
    position: relative;
    background-color: transparent;
}
.territory-alpesolidaires .main-nav .btn-burger:before,
.territory-alpesolidaires .main-nav .btn-burger:after,
.territory-alpesolidaires .main-nav .btn-burger span {
    content: "";
    display: block;
    background-color: #EC5C6D;
    width: 25px;
    height: 2px;
    position: absolute;
}
.territory-alpesolidaires .main-nav .btn-burger:before {
    top: 8px;
    left: 0;
    transition: all 0.3s ease;
}
.territory-alpesolidaires .main-nav .btn-burger span {
    top: 18px;
    left: 0;
    transition: all 0.3s ease 0.2s;
}
.territory-alpesolidaires .main-nav .btn-burger:after {
    top: 28px;
    left: 0;
    transition: all 0.3s ease;
}
.territory-alpesolidaires .main-nav .btn-burger.active:before {
    top: 18px;
    transform: rotate(135deg);
    transition: all 0.3s ease 0.2s;
}
.territory-alpesolidaires .main-nav .btn-burger.active span {
    opacity: 0;
    transition: all 0.3s ease;
}
.territory-alpesolidaires .main-nav .btn-burger.active:after {
    top: 18px;
    transform: rotate(-135deg);
    transition: all 0.3s ease 0.2s;
}

/* Main menu wrapper (expandable panel) */
.territory-alpesolidaires .main-menu-wrapper {
    border-top: solid 1px #E3E3E3;
    text-transform: uppercase;
    height: 0;
    position: absolute;
    top: 110px;
    right: 0;
    left: 0;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.62, 0.28, 0.23, 0.99);
    z-index: 3;
}
@media (min-width: 1200px) {
    .territory-alpesolidaires .main-menu-wrapper {
        height: 82px;
    }
    .territory-alpesolidaires .main-menu-wrapper .main-menu {
        top: 0;
    }
}
.territory-alpesolidaires .main-menu-wrapper.main-menu-show {
    height: 82px;
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .main-menu-wrapper.main-menu-show {
        height: 100vh;
    }
}
.territory-alpesolidaires .main-menu-wrapper.main-menu-show .main-menu {
    top: 0;
}

.territory-alpesolidaires .main-menu {
    border-bottom: solid 1px #E3E3E3;
    position: absolute;
    top: -81px;
    right: 0;
    left: 0;
    background-color: #fff;
    transition: top 0.5s cubic-bezier(0.62, 0.28, 0.23, 0.99);
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .main-menu {
        position: relative;
        background-color: #F7F7F7;
    }
}

.territory-alpesolidaires .main-menu .main-menu-inner {
    height: 80px;
    margin-bottom: 0;
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 0;
}
@media (min-width: 768px) {
    .territory-alpesolidaires .main-menu .main-menu-inner {
        flex-direction: row;
        align-items: center;
    }
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .main-menu .main-menu-inner {
        padding-top: 20px;
        padding-bottom: 20px;
        height: auto;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
}

.territory-alpesolidaires .main-menu .main-menu-inner .nav-item,
.territory-alpesolidaires .main-menu .main-menu-inner .menu-item {
    font-size: 1.6rem;
    list-style: none;
}
@media (max-width: 1199.98px) {
    .territory-alpesolidaires .main-menu .main-menu-inner .nav-item,
    .territory-alpesolidaires .main-menu .main-menu-inner .menu-item {
        font-size: 1.4rem;
    }
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .main-menu .main-menu-inner .nav-item,
    .territory-alpesolidaires .main-menu .main-menu-inner .menu-item {
        font-size: 1.8rem;
        line-height: 1.8em;
    }
}

.territory-alpesolidaires .main-menu .main-menu-inner .nav-item .nav-link,
.territory-alpesolidaires .main-menu .main-menu-inner .menu-item a {
    color: #383838;
    font-weight: 500;
    transition: color 0.2s cubic-bezier(0.62, 0.28, 0.23, 0.99);
    display: inline-block;
    text-align: center;
    text-decoration: none;
}
.territory-alpesolidaires .main-menu .main-menu-inner .nav-item .nav-link:hover,
.territory-alpesolidaires .main-menu .main-menu-inner .menu-item a:hover {
    color: #EC5C6D;
}

.territory-alpesolidaires .main-menu .boxs-items-mobile-parent {
    padding-top: 15px;
    border-top: solid 1px #E3E3E3;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.05);
}
.territory-alpesolidaires .main-menu .boxs-items-mobile-parent ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.territory-alpesolidaires .scroll-navbar .main-menu-wrapper {
    top: 80px;
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .scroll-navbar .main-menu-wrapper {
        top: 60px;
    }
}

/* Search form overlay */
.territory-alpesolidaires .search-block-form {
    border-left: 1px solid #f0f0f0;
}

.territory-alpesolidaires .searchform-wrap {
    width: 100%;
    height: 110px;
    position: fixed;
    right: 0;
    left: 0;
    background: #fff;
    visibility: hidden;
    z-index: 90;
    opacity: 0;
    transition: all 0.5s cubic-bezier(0.62, 0.28, 0.23, 0.99);
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .searchform-wrap {
        height: 80px;
    }
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .searchform-wrap {
        height: 60px;
    }
}

.territory-alpesolidaires .main-nav-search-form {
    height: 60%;
    max-height: 57.5px;
    width: 100%;
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .main-nav-search-form {
        width: 90%;
        margin-left: 0;
    }
}

.territory-alpesolidaires .main-nav-search-form .form-item-keys {
    width: 70%;
    max-width: 600px;
    height: 100%;
    margin-bottom: 0;
}
.territory-alpesolidaires .main-nav-search-form .form-item-keys input {
    margin-right: 25px;
    height: 100%;
    width: 100%;
    border: none;
    position: relative;
    font-size: 3.1rem;
    border-radius: 0;
    transition: border 0.2s cubic-bezier(0.62, 0.28, 0.23, 0.99);
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .main-nav-search-form .form-item-keys input {
        width: 93%;
        font-size: 1.8rem;
    }
}
.territory-alpesolidaires .main-nav-search-form .form-item-keys input:not(:focus) {
    border-bottom: solid 2px #E3E3E3;
}
.territory-alpesolidaires .main-nav-search-form .form-item-keys input:focus {
    box-shadow: none;
    border-bottom: solid 2px #E0737F;
}
.territory-alpesolidaires .main-nav-search-form .form-item-keys input::placeholder {
    color: #E3E3E3;
}

.territory-alpesolidaires .searchform-wrap .searchform-close-btn {
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
}

/* Body padding for fixed nav */
/*.territory-alpesolidaires .homepage-content {
    padding-top: 110px;
}
@media (min-width: 1200px) {
.territory-alpesolidaires .homepage-content {
        padding-top: 192px;
    }
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .homepage-content {
        padding-top: 80px;
    }
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .homepage-content {
        padding-top: 60px;
    }
}*/

/* ========================================================================
   ALPESOLIDAIRES CAROUSEL
   ======================================================================== */

.territory-alpesolidaires .section-carousel {
    background-color: #f5f5f5;
    padding: 60px 0;
}

.territory-alpesolidaires .section-carousel .carousel-item {
    height: 41vw;
    transition: all 0.3s;
    overflow: hidden;
}
@media (min-width: 992px) {
    .territory-alpesolidaires .section-carousel .carousel-item {
        height: 540px;
    }
}

.territory-alpesolidaires .section-carousel .carousel-control-next,
.territory-alpesolidaires .section-carousel .carousel-control-prev {
    width: 5%;
}

.territory-alpesolidaires .section-carousel .carousel-caption {
    text-align: left;
    position: absolute;
    left: 45px;
    max-width: 650px;
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .section-carousel .carousel-caption {
        width: 100%;
        bottom: -20px;
        left: 0;
    }
}

.territory-alpesolidaires .section-carousel .carousel-caption .row-carousel {
    background-color: #fff;
    display: inline-block;
    margin: 0;
    padding: 10px 15px;
}
@media (max-width: 575.98px) {
    .territory-alpesolidaires .section-carousel .carousel-caption .row-carousel {
        display: block;
    }
}

.territory-alpesolidaires .section-carousel .carousel-caption .content-type-carousel {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: 500;
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .section-carousel .carousel-caption .content-type-carousel {
        font-size: 1.2rem;
        display: none;
    }
}

.territory-alpesolidaires .section-carousel .carousel-caption .title-carousel {
    color: #383838;
    font-weight: 500;
    font-size: 2.2rem;
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .section-carousel .carousel-caption .title-carousel {
        font-size: 1.8rem;
    }
}

.territory-alpesolidaires .section-carousel .display-block {
    display: block;
    height: 5px;
}

.territory-alpesolidaires .carousel-front .carousel-control-prev {
    left: -55px;
}
.territory-alpesolidaires .carousel-front .carousel-control-next {
    right: -55px;
}
.territory-alpesolidaires .carousel-front .carousel-control-prev,
.territory-alpesolidaires .carousel-front .carousel-control-next {
    color: #383838;
    font-size: 2rem;
}
@media (max-width: 991.98px) {
    .territory-alpesolidaires .carousel-front .carousel-control-prev {
        left: 0;
    }
    .territory-alpesolidaires .carousel-front .carousel-control-next {
        right: 0;
    }
}

.territory-alpesolidaires .link-content-carousel {
    width: 120vh;
    height: 60vh;
    display: inline-block;
}

/* Bootstrap carousel-fade overrides */
.territory-alpesolidaires .carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
}
.territory-alpesolidaires .carousel-fade .carousel-item.active,
.territory-alpesolidaires .carousel-fade .carousel-item-next.carousel-item-left,
.territory-alpesolidaires .carousel-fade .carousel-item-prev.carousel-item-right {
    z-index: 1;
    opacity: 1;
}
.territory-alpesolidaires .carousel-fade .active.carousel-item-left,
.territory-alpesolidaires .carousel-fade .active.carousel-item-right {
    z-index: 0;
    opacity: 0;
    transition: opacity 0s 0.6s;
}

/* ========================================================================
   SECTION: "À voir également" (mixed content)
   ======================================================================== */

.territory-alpesolidaires .section-contents {
    padding: 60px 0;
    box-shadow: 0 0 8px 0 #c9c9c9;
    position: relative;
    z-index: 2;
    background-color: #fff;
}

.territory-alpesolidaires .section-contents .card-new-bottom {
    height: 420px;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .section-contents .card-new-bottom {
        height: auto;
        margin-bottom: 25px;
    }
}

/* Pagination pages: hide pages 2 & 3 by default */
.territory-alpesolidaires .content-page-2,
.territory-alpesolidaires .content-page-3 {
    display: none;
}

/* Pagination */
.territory-alpesolidaires .pagination-content-homepage {
    margin-top: 35px;
}
.territory-alpesolidaires .pagination-content-homepage .page-item {
    margin: 10px;
    cursor: pointer;
}
.territory-alpesolidaires .pagination-content-homepage .page-link {
    color: #ec5c6d;
    padding: 5px 10px;
    font-weight: 700;
    border: none;
    box-shadow: 0 0 8px 0 #c9c9c9;
}
.territory-alpesolidaires .pagination-content-homepage .page-item.active .page-link {
    background-color: #ec5c6d;
    color: #fff;
}

/* ========================================================================
   ALPESOLIDAIRES FOOTER — reveal-on-scroll effect
   Matches Drupal production exactly:
   - .main-content / #main-content: position relative, z-index 1, white bg
     → sits above the fixed footer and covers it while scrolling.
   - margin-bottom: 340px → creates space at bottom that reveals the footer.
   - .page__footer: position fixed, bottom 0, z-index 0 → pinned behind content.
   - html, body height: auto → overrides base theme height:100% which
     prevents margin-bottom from creating scrollable space.
   ======================================================================== */

/* Override base theme "html, body { height: 100% }" — Drupal production
   does NOT have this rule. It prevents margin-bottom from generating
   scrollable overflow needed for the footer reveal effect. */
.territory-alpesolidaires,
html:has(> body.territory-alpesolidaires) {
    height: auto !important;
}

/* #main-content wrapper: sits above the fixed footer (always, not just desktop).
   Matches Drupal: .main-content { position: relative; z-index: 1; background-color: #fff; } */
.territory-alpesolidaires #main-content {
    position: relative;
    z-index: 1;
    background-color: #fff;
}
@media (min-width: 768px) {
    .territory-alpesolidaires #main-content {
        margin-bottom: 340px;
    }
}

/* Footer: matches Drupal compiled .page__footer exactly.
   Drupal has NO general padding — only padding-top: 50px at md+.
   Must also override base theme's padding: 35px 15px, bg: #005E85, color: #fff,
   and .container-footer { padding-top: 35px }. */
/* WP base body is 2rem (20px); Drupal is 1.6rem (16px). Override on footer. */
.territory-alpesolidaires .page__footer {
    color: #ec5c6d;
    background-color: #fff;
    width: 100%;
    z-index: 0;
    padding: 0;
    font-size: 1.6rem;
}
.territory-alpesolidaires .page__footer p {
    color: #ec5c6d !important;
}
@media (min-width: 768px) {
    .territory-alpesolidaires .page__footer {
        position: fixed;
        bottom: 0;
        height: 360px;
        padding-top: 50px;
    }
}

.territory-alpesolidaires .page__footer .container-footer {
    margin: 0 auto;
    padding: 0 15px;
}
@media (min-width: 768px) {
    .territory-alpesolidaires .page__footer .container-footer {
        max-width: 1140px;
    }
}
@media (min-width: 992px) {
    .territory-alpesolidaires .page__footer .container-footer {
        max-width: 1140px;
    }
}

.territory-alpesolidaires .page__footer .block--basic {
    margin: 0 10px;
    padding: 15px;
}
/* On desktop, ensure all 4 footer blocks share space and never wrap off-screen */
@media (min-width: 768px) {
    .territory-alpesolidaires .page__footer .block--basic {
        flex: 1 1 0;
        min-width: 0;
    }
    /* Web Solidaire has more links — give it ~2x the width of other blocks */
    .territory-alpesolidaires .page__footer .block--websolidaire {
        flex: 2 1 0;
    }
}

/* h2: Drupal global h2 is 2.6rem; WP base theme is 3.3rem — match Drupal */
.territory-alpesolidaires .page__footer .footer-content h2 {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 2.6rem;
}

.territory-alpesolidaires .page__footer .footer-content ul {
    padding: 0;
    list-style: none;
    margin: 0;
}

.territory-alpesolidaires .page__footer .footer-content ul li {
    padding-top: 5px;
}

.territory-alpesolidaires .page__footer .footer-content a {
    color: #ec5c6d;
}
.territory-alpesolidaires .page__footer .block--websolidaire a {
    white-space: nowrap;
}
.territory-alpesolidaires .page__footer .footer-content a:hover {
    color: #383838;
}

/* Mailchimp form in footer */
.territory-alpesolidaires .page__footer .mc-field-group label {
    color: #ec5c6d;
}
.territory-alpesolidaires .page__footer .mc-field-group .asterisk {
    color: #ec5c6d;
}
.territory-alpesolidaires .page__footer #mc_embed_signup input[type="email"] {
    border: 1px solid #ec5c6d;
    padding: 4px 8px;
}

/* #return-to-top for Alpesolidaires — matches Drupal production exactly */
.territory-alpesolidaires #return-to-top {
    background: #ec5c6d;
    width: 50px;
    height: 50px;
    border-radius: 35px;
    bottom: 20px;
    right: 20px;
    z-index: 5;
    box-shadow: 0 0 8px 0 #c9c9c9;
    cursor: pointer;
    transition: all 0.3s ease;
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
}
.territory-alpesolidaires #return-to-top i {
    color: #fff;
    margin: 0;
    font-size: 19px;
    transition: all 0.3s ease;
}
.territory-alpesolidaires #return-to-top:hover {
    background: #ed2d4a;
}
.territory-alpesolidaires #return-to-top:hover i {
    color: #fff;
    transform: translateY(-5px);
}

/* ========================================================================
   ALPESOLIDAIRES STRUCTURE PAGE
   Matches Drupal production: section-top header, 8/4 content+sidebar, bottom.
   ======================================================================== */

/* --- Page Header: pink background, white text --- */
.territory-alpesolidaires .page__header {
    padding-top: 0px!important;
    background-color: #e0737f;
    color: #fff;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .page__header {
        padding-top: 0px!important;
    }
}
.territory-alpesolidaires .page__header .section-top {
    display: flex;
    align-items: center;
}
@media (min-width: 992px) {
    .territory-alpesolidaires .page__header .section-top {
        min-height: 350px;
    }
}
.territory-alpesolidaires .page__header .section-top a {
    color: #fff;
}
.territory-alpesolidaires .page__header .header-content .row {
    align-items: center;
    padding-top: 55px;
    padding-bottom: 35px;
}
.territory-alpesolidaires .page__header .section-top .page-title {
    padding-right: 40px;
}
.territory-alpesolidaires .page__header h1 {
    color: #fff;
}
.territory-alpesolidaires .page__header .header-content-type {
    font-size: 1.5rem;
    text-transform: uppercase;
    font-weight: 500;
    color: #fff;
}
.territory-alpesolidaires .page__header .header-summary {
    font-size: 2rem;
    font-weight: 500;
}
.territory-alpesolidaires .page__header .created {
    margin-top: 15px;
    font-size: 1.4rem;
    font-style: italic;
    color: #fff;
}

/* Ensure all text inside pink header stays white */
.territory-alpesolidaires .page__header p,
.territory-alpesolidaires .page__header div,
.territory-alpesolidaires .page__header span {
    color: #fff;
}
.territory-alpesolidaires .page__header .col-content-type {
    text-align: right;
    padding-top: 15px;
}

/* Breadcrumb: transparent bg, white text */
.territory-alpesolidaires .page__header .breadcrumb {
    background-color: transparent;
    font-size: 1.4rem;
    padding: 0;
    margin-bottom: 1rem;
}
.territory-alpesolidaires .page__header .breadcrumb .breadcrumb-item,
.territory-alpesolidaires .page__header .breadcrumb .breadcrumb-item::before {
    color: #fff;
}
.territory-alpesolidaires .page__header .breadcrumb .breadcrumb-item a {
    color: #fff;
}
.territory-alpesolidaires .page__header .breadcrumb .breadcrumb-item a:hover {
    color: #151e28;
}
.territory-alpesolidaires .page__header .breadcrumb .breadcrumb-item:last-child {
    font-weight: bold;
}

/* --- Content Node area --- */
.territory-alpesolidaires .content-node {
    margin-top: 40px;
}

/* Field labels in content area: match Drupal typography */
.territory-alpesolidaires .content-node .field__label {
    font-size: 1.6rem;
    font-family: "renner", Helvetica, Arial, sans-serif;
    color: #383838;
}
.territory-alpesolidaires .content-node .page__content {
    margin-bottom: 80px;
}
.territory-alpesolidaires .content-node .sidebar-right {
    margin-top: 60px;
}

/* Structure field map spacing */
.territory-alpesolidaires .structure__field-map {
    margin-top: 25px;
}

/* --- Sidebar Blocks: event + job --- */
.territory-alpesolidaires .block-sidebar {
    border-left: 5px solid #e0737f;
    padding: 10px;
}
.territory-alpesolidaires .block-sidebar .title-sidebar {
    text-transform: uppercase;
    font-size: 1.7rem;
}
.territory-alpesolidaires .block-sidebar .img-sidebar {
    max-width: 150px;
    height: auto;
    margin: 10px 0;
}
.territory-alpesolidaires .block-sidebar .subtitle-sidebar {
    margin: 0;
}
.territory-alpesolidaires .more-sidebar {
    color: #ec5c6d;
    font-weight: 500;
    padding: 10px 15px;
    transition: all 0.3s;
}
.territory-alpesolidaires .more-sidebar::before {
    content: "> ";
}
.territory-alpesolidaires .more-sidebar:hover {
    color: #ec5c6d;
    font-weight: bold;
    text-decoration: none;
}

/* --- Bottom Section: Logo + Structure associée --- */
.territory-alpesolidaires .page__bottom {
    margin-top: 25px;
    background-color: #f5f5f5;
}
.territory-alpesolidaires .page__bottom .bottom-section {
    margin: 0 auto;
    box-shadow: 0 0 8px 1px #9e9e9e;
}
/* Logo de structure (gauche) - fond blanc */
.territory-alpesolidaires .bottom-logo {
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 35px 40px;
}
.territory-alpesolidaires .bottom-logo .structure-logo-bottom {
    max-height: 200px;
    max-width: 100%;
    object-fit: contain;
}
/* Structure associée (droite) - fond rose, texte blanc */
.territory-alpesolidaires .bottom-associated-structure {
    background-color: #e0737f;
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .bottom-content {
    padding: 35px 40px;
}
@media (min-width: 1200px) {
    .territory-alpesolidaires .bottom-associated-structure .bottom-content {
        max-width: 100%;
    }
}
.territory-alpesolidaires .bottom-associated-structure .title-bottom {
    color: #fff;
}
.territory-alpesolidaires .title-bottom {
    font-weight: 700;
    margin: 0;
    display: inline-block;
}
.territory-alpesolidaires .title-bottom::after {
    content: " ";
    width: 45px;
    display: block;
    padding: 5px;
    border-top: 2px solid currentColor;
}
.territory-alpesolidaires .bottom-associated-structure .title-bottom::after {
    border-top-color: #fff;
}
.territory-alpesolidaires .title-style {
    width: 25px;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom .subtitle-bottom {
    margin: 0;
    margin-top: 10px;
    font-weight: bold;
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom a {
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom h3 {
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom address {
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom .facebook-bottom {
    text-decoration: underline;
    font-weight: bold;
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom .link-bottom {
    font-weight: normal;
    color: #fff;
}
.territory-alpesolidaires .bottom-associated-structure .block-bottom .facebook-bottom:hover,
.territory-alpesolidaires .bottom-associated-structure .block-bottom .link-bottom:hover {
    color: #ffd4d9;
}
.territory-alpesolidaires .bottom-associated-structure .btn-primary,
.territory-alpesolidaires .bottom-associated-structure .btn-primary.text-white {
    background-color: #fff !important;
    color: #e0737f !important;
    border: none;
}
.territory-alpesolidaires .bottom-associated-structure .btn-primary:hover {
    background-color: #f5f5f5 !important;
    color: #e0737f !important;
}

/* ========================================================================
   ALPESOLIDAIRES ACTUALITES PAGE
   Matches Drupal production: form-inline search, card-job grid, content-page.
   ======================================================================== */

/* Content page container: padding around the news listing */
.territory-alpesolidaires .content-page {
    padding-top: 45px;
    padding-bottom: 45px;
}

/* Form inline: spacing between form groups */
.territory-alpesolidaires .form-inline .form-group-offer-type {
    margin-right: 10px;
    margin-bottom: 10px;
}
.territory-alpesolidaires .form-inline .form-group-offer-type .form-control {
    width: 100%;
    min-width: 180px;
    height: 40px;
    padding: 5px 10px;
    border-radius: 0;
    font-size: 1.6rem;
}
.territory-alpesolidaires .form-inline .form-submit {
    margin-bottom: 10px;
}
.territory-alpesolidaires .form-inline .form-submit .btn {
    height: 40px;
    border-radius: 0;
    padding: 5px 20px;
    font-weight: 500;
}

/* Large search form for actualités */
.territory-alpesolidaires .search-form-wrapper {
    margin-bottom: 30px;
}
.territory-alpesolidaires .form-search-large .input-group {
    max-width: 600px;
}
.territory-alpesolidaires .form-search-large .form-control {
    border-radius: 0;
    border: 2px solid #e0737f;
    font-size: 1.6rem;
    padding: 12px 20px;
    height: auto;
}
.territory-alpesolidaires .form-search-large .form-control:focus {
    border-color: #e0737f;
    box-shadow: 0 0 0 0.2rem rgba(224, 115, 127, 0.25);
}
.territory-alpesolidaires .form-search-large .input-group-append .btn {
    border-radius: 0;
    padding: 12px 25px;
    font-size: 1.6rem;
    font-weight: 500;
}

/* Card-job: bottom margin for card grid spacing */
.territory-alpesolidaires .news-content .card-new.card-job {
    margin-bottom: 25px;
}

/* Content card summary text — match Drupal 16px / 24px */
.territory-alpesolidaires .content-card-summary {
    font-size: 16px;
    color: #383838;
    line-height: 1.5;
}
.territory-alpesolidaires .content-card-summary p {
    margin-bottom: 0;
    font-size: inherit;
    line-height: inherit;
}

/* No results block */
.territory-alpesolidaires .no-results {
    text-align: center;
    padding: 40px 20px;
}
.territory-alpesolidaires .no-results h2 {
    font-size: 2.4rem;
    color: #383838;
}

/* ========================================================================
   ALPESOLIDAIRES SINGLE ARTICLE PAGE
   Matches Drupal production: page--node.html.twig + node article layout.
   ======================================================================== */

/* Article body: top padding inside content area */
.territory-alpesolidaires .content-node .article__body {
    padding-top: 20px;
}

/* Featured image at top of article body */
.territory-alpesolidaires .content-node .article__field-image img {
    width: 100%;
    height: auto;
}

/* File attachment with "Fichier" label */
.territory-alpesolidaires .content-node .article__field-file {
    margin-top: 25px;
}
.territory-alpesolidaires .content-node .article__field-file .field__label {
    font-size: 1.6rem;
    margin-bottom: 5px;
}

/* Belt-info in pink header: white text */
.territory-alpesolidaires .page__header .belt-info {
    color: #fff;
}
.territory-alpesolidaires .page__header .belt-info strong {
    color: #fff;
}

/* Article images: max-width 100% inside content */
.territory-alpesolidaires .content-node .article--full img {
    max-width: 100%;
    height: auto;
}

/* ========================================================================
   ALPESOLIDAIRES ANNUAIRE PAGE
   Matches Drupal: page--annuaire.html.twig + searchProbDirectory.html.twig
   4/8 form+map layout, 3-col tile cards, map always visible.
   ======================================================================== */

/* --- Form container --- */
.territory-alpesolidaires .probesys-geolocation {
    margin-top: 35px;
    padding: 25px 15px;
    border: 2px solid #f0f0f0;
}

/* --- Form fields spacing --- */
.territory-alpesolidaires .probesys-geolocation .form-group-city {
    margin-bottom: 15px;
}

.territory-alpesolidaires .probesys-geolocation .form-group-city select,
.territory-alpesolidaires .probesys-geolocation .form-group-city input {
    width: 100%;
}

/* --- "Plus de filtres" button --- */
.territory-alpesolidaires .btn-filter {
    background-color: #f5f5f5;
    color: #ec5c6d;
    border: none;
    padding: 10px 15px;
    margin-bottom: 15px;
    cursor: pointer;
    font-size: 1.5rem;
    display: block;
    width: 100%;
    text-align: left;
    border-radius: 5px;
}
.territory-alpesolidaires .btn-filter:hover {
    background-color: #eee;
}
.territory-alpesolidaires .btn-filter .i-filter {
    margin-right: 5px;
}

/* --- Map (always visible) --- */
.territory-alpesolidaires .carto-section #map {
    height: 575px;
    width: 100%;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .carto-section #map {
        height: 350px;
        margin-top: 20px;
    }
}

/* --- Annuaire tile cards (reuse news-content card-new) --- */
.territory-alpesolidaires .carto-section .news-content {
    margin-top: 35px;
}

.territory-alpesolidaires .carto-section .news-content .card-new {
    margin-bottom: 25px;
}

/* Card content-type: structure title link (pink default, dark hover — matches Drupal) */
.territory-alpesolidaires .carto-section .news-content .content-type a {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 1.7rem;
}
.territory-alpesolidaires .carto-section .news-content .content-type a:hover {
    color: #383838;
    text-decoration: none;
}

/* Card summary text */
.territory-alpesolidaires .carto-section .news-content .content-card p {
    font-size: 1.4rem;
    color: #383838;
    line-height: 1.5;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
}

/* Title border separator in annuaire cards: reset bottom border, use existing top border */
.territory-alpesolidaires .carto-section .news-content .title-border-bottom {
    margin: 8px 0;
}

/* Card info carto popup adjustments */
.territory-alpesolidaires .card-info-carto .link-popup {
    color: #ec5c6d;
    font-weight: 500;
}

/* --- No results --- */
.territory-alpesolidaires .carto-section .news-content h3 {
    font-size: 2rem;
    color: #383838;
    text-align: center;
}

/* ============================================================================
   ALPESOLIDAIRES SINGLE EVENT PAGE
   Matches Drupal: page--node.html.twig + block--alpesolidaires-content
   Flat single-column layout inside col-md-8, sidebar col-md-4
   Fields: body > date > event type > registration > address > contact > phone > mail > on/off
   ============================================================================ */

/* --- Date: remove calendar-block styling, make inline text --- */
/* Base has: border dashed, 160px width, flex-column, centered */
.territory-alpesolidaires .page-agenda .content-node .field-item-date {
    border: none;
    padding: 0;
    width: auto;
    display: block;
    margin-top: 15px;
}
.territory-alpesolidaires .page-agenda .content-node .field-item-date .field-date-event {
    display: block;
}
.territory-alpesolidaires .page-agenda .content-node .agenda__field-date-event {
    text-align: left;
}
.territory-alpesolidaires .page-agenda .content-node .field-item-date .date-name {
    text-transform: none;
    color: #383838;
    font-size: 1.6rem;
    font-weight: normal;
    display: inline;
}

/* --- Field labels: override base 3.3rem/blue/HKGrotesk --- */
.territory-alpesolidaires .page-agenda .content-node .field__label {
    font-size: 1.6rem;
    font-family: "renner", Helvetica, Arial, sans-serif;
    color: #383838;
    margin-top: 15px;
    margin-bottom: 5px;
    line-height: 1.4;
}

/* --- Inline fields (d-flex): proper spacing between label and value --- */
.territory-alpesolidaires .page-agenda .content-node .d-flex .field__item {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 5px;
}
.territory-alpesolidaires .page-agenda .content-node .d-flex .field__label {
    margin-top: 15px;
    margin-bottom: 0;
    white-space: nowrap;
    flex-shrink: 0;
}
/* Align items vertically on same baseline */
.territory-alpesolidaires .page-agenda .content-node .agenda__field-event-type,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-registration,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-access-conditions {
    align-items: baseline;
    flex-wrap: wrap;
}

/* --- Body text --- */
.territory-alpesolidaires .page-agenda .content-node .agenda__body {
    font-size: 1.6rem;
    line-height: 1.8;
    color: #383838;
}
.territory-alpesolidaires .page-agenda .content-node .agenda__body img {
    max-width: 100%;
    height: auto;
}

/* --- Stacked fields: address, contact, phone, mail --- */
.territory-alpesolidaires .page-agenda .content-node .agenda__field-address,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-contact-name,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-phone,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-mail {
    margin-top: 15px;
}
.territory-alpesolidaires .page-agenda .content-node .agenda__field-address .field__label,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-contact-name .field__label,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-phone .field__label,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-mail .field__label {
    margin-top: 0;
    margin-bottom: 5px;
    margin-right: 10px;
}
.territory-alpesolidaires .page-agenda .content-node .agenda__field-address .field__item,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-contact-name .field__item,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-phone .field__item,
.territory-alpesolidaires .page-agenda .content-node .agenda__field-mail .field__item {
    font-size: 1.6rem;
    margin-top: 0;
}

/* --- On/off line: plain text, no badge --- */
.territory-alpesolidaires .page-agenda .content-node .agenda__field-on-off-line {
    margin-top: 15px;
    font-size: 1.6rem;
    color: #383838;
}

/* --- Article padding --- */
.territory-alpesolidaires .page-agenda .content-node .agenda--full {
    padding-bottom: 20px;
}

/* --- Belt-info in pink header --- */
.territory-alpesolidaires .page-agenda .page__header .belt-info div {
    font-size: 1.6rem;
}

/* --- Dotted border color override --- */
.territory-alpesolidaires .page-agenda .title-border-dashed-bottom {
    border-top-color: #ec5c6d;
}

/* --- Structure block (standard layout fallback) --- */
.territory-alpesolidaires .page-agenda .section-structure {
    margin-top: 30px;
    margin-bottom: 30px;
}
.territory-alpesolidaires .page-agenda .section-structure .title-structure {
    color: #ec5c6d;
    font-size: 2rem;
}
.territory-alpesolidaires .page-agenda .section-structure .link-bottom {
    color: #ec5c6d;
    font-size: 2rem;
    margin-right: 10px;
}
.territory-alpesolidaires .page-agenda .section-structure .link-bottom:hover {
    color: #383838;
}
.territory-alpesolidaires .page-agenda .link-more-content a {
    color: #ec5c6d;
    font-weight: 500;
}
.territory-alpesolidaires .page-agenda .link-more-content a:hover {
    color: #383838;
    text-decoration: none;
}

/* --- Section headings (standard layout fallback) --- */
.territory-alpesolidaires .page-agenda .title-bloc {
    font-size: 2.4rem;
    color: #383838;
    position: relative;
    display: inline-block;
}
.territory-alpesolidaires .page-agenda .title-bloc::after {
    content: " ";
    width: 45px;
    display: block;
    padding: 5px;
    border-top: 2px solid #ec5c6d;
}

/* --- Content-type labels in cards (pink) --- */
.territory-alpesolidaires .page-agenda .content-type {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 1.4rem;
}

/* --- Card title links --- */
.territory-alpesolidaires .page-agenda .title-link {
    color: #383838;
}
.territory-alpesolidaires .page-agenda .title-link:hover {
    color: #ec5c6d;
    text-decoration: none;
}

/* --- Card titles --- */
.territory-alpesolidaires .page-agenda .title-card-new,
.territory-alpesolidaires .page-agenda .event-title h3 {
    font-size: 1.8rem;
    font-weight: 500;
    color: #383838;
}

/* ============================================================================
   ALPESOLIDAIRES AGENDA LISTING PAGE
   Matches Drupal: page--agenda.html.twig + alpesolidaires.css calendar rules
   Pink header, hide thematic/event-type filters, coral button
   ============================================================================ */

/* Agenda listing: top margin between header and filters (match Drupal spacing) */
.territory-alpesolidaires .page__content .views-exposed-form {
    margin-top: 30px;
}

/* Agenda listing: filter form labels */
.territory-alpesolidaires .views-exposed-form label {
    color: #383838;
    font-size: 1.4rem;
    font-weight: 500;
}

/* Agenda listing: submit button (coral) */
.territory-alpesolidaires .views-exposed-form .btn-primary {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .views-exposed-form .btn-primary:hover,
.territory-alpesolidaires .views-exposed-form .btn-primary:focus {
    background-color: #e0737f;
    border-color: #e0737f;
}

/* Agenda listing: form input styling */
.territory-alpesolidaires .views-exposed-form .form-control {
    font-size: 1.4rem;
    color: #383838;
}

/* Agenda listing: Chosen.js multi-select overrides */
.territory-alpesolidaires .chosen-container-multi .chosen-choices li.search-choice {
    background-color: #ec5c6d;
    color: #fff;
    border: 1px solid #ec5c6d;
    background-image: none;
}
.territory-alpesolidaires .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
    filter: brightness(0) invert(1);
}
.territory-alpesolidaires .chosen-container .chosen-results li.highlighted {
    background-color: #ec5c6d;
    background-image: none;
}
/* Chosen placeholder text: grey instead of default ESS blue (#005E85) */
.territory-alpesolidaires .chosen-container-multi .chosen-choices .search-field .chosen-search-input.default {
    color: #999 !important;
}

/* Agenda listing: FullCalendar event title wrapping (multi-line) */
.territory-alpesolidaires .fc-day-grid-event .fc-content {
    white-space: normal !important;
}

/* Agenda listing: FullCalendar toolbar button active state (coral) */
.territory-alpesolidaires .fc-button-primary {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .fc-button-primary:not(:disabled):active,
.territory-alpesolidaires .fc-button-primary:not(:disabled).fc-button-active {
    background-color: #e0737f;
    border-color: #e0737f;
}
.territory-alpesolidaires .fc-button-primary:hover {
    background-color: #e0737f;
    border-color: #e0737f;
}

.territory-alpesolidaires .fc-day-grid-event .fc-content .fc-title {
 color: #fff;
}

.territory-alpesolidaires .fc-day-grid-event .fc-time {
color: #fff;
}

/* Agenda listing: FullCalendar event color (matches Drupal default #3a87ad) */

/* ============================================================================
   ALPESOLIDAIRES CONTACT PAGE
   Matches Drupal: page--webform--nous-contacter.html.twig + webform styling
   Pink header, contact form with coral submit button
   ============================================================================ */

/* Contact page: content area spacing */
.territory-alpesolidaires .contact-page-wrapper .content-page {
    margin-top: 40px;
    margin-bottom: 60px;
}

/* Contact form: labels */
.territory-alpesolidaires .wpcf7 label {
    font-size: 1.6rem;
    font-weight: bold;
    color: #383838;
    display: block;
    margin-bottom: 5px;
}

/* Contact form: inputs and textarea */
.territory-alpesolidaires .wpcf7 input[type="text"],
.territory-alpesolidaires .wpcf7 input[type="email"],
.territory-alpesolidaires .wpcf7 textarea {
    width: 100%;
    padding: 8px 12px;
    font-size: 1.6rem;
    border: 1px solid #ccc;
    border-radius: 0;
    font-family: "renner", Helvetica, Arial, sans-serif;
    color: #383838;
    margin-top: 5px;
}
.territory-alpesolidaires .wpcf7 input[type="text"]:focus,
.territory-alpesolidaires .wpcf7 input[type="email"]:focus,
.territory-alpesolidaires .wpcf7 textarea:focus {
    border-color: #ec5c6d;
    outline: none;
    box-shadow: 0 0 0 2px rgba(236, 92, 109, 0.2);
}

/* Contact form: textarea height */
.territory-alpesolidaires .wpcf7 textarea {
    min-height: 150px;
}

/* Contact form: paragraph spacing */
.territory-alpesolidaires .wpcf7 p {
    margin-bottom: 15px;
}

/* Contact form: submit button (coral) */
.territory-alpesolidaires .wpcf7 input[type="submit"] {
    background-color: #ec5c6d;
    border: none;
    color: #fff;
    padding: 10px 25px;
    font-size: 1.6rem;
    font-family: "renner", Helvetica, Arial, sans-serif;
    cursor: pointer;
    transition: background-color 0.3s;
}
.territory-alpesolidaires .wpcf7 input[type="submit"]:hover {
    background-color: #e0737f;
}

/* Contact form: validation messages */
.territory-alpesolidaires .wpcf7-not-valid-tip {
    color: #ec5c6d;
    font-size: 1.3rem;
    margin-top: 5px;
}
.territory-alpesolidaires .wpcf7 .wpcf7-not-valid {
    border-color: #ec5c6d;
}

/* Contact form: response output */
.territory-alpesolidaires .wpcf7-response-output {
    border-color: #ec5c6d;
    padding: 10px 15px;
    margin-top: 15px;
    font-size: 1.4rem;
}
.territory-alpesolidaires .wpcf7-mail-sent-ok {
    border-color: #46b450;
    color: #46b450;
}


/* ============================================================================
   ALPESOLIDAIRES OFFRES EMPLOI PAGE
   Matches Drupal: page--offres-emploi.html.twig + alpesolidaires.css
   Pink header, coral filter buttons, coral card accents
   ============================================================================ */

/* --- Form global overrides (from Drupal alpesolidaires.css FORM section) --- */
.territory-alpesolidaires form .btn.form-submit {
    padding: 10px 15px;
    font-size: 1.6rem;
}
.territory-alpesolidaires form .custom-select {
    padding: 10px;
    height: 45px;
    font-size: 1.6rem;
    border-radius: 0;
    background: none;
}
.territory-alpesolidaires .form-control {
    font-size: 1.6rem;
}
.territory-alpesolidaires form label {
    font-weight: bold;
}

/* --- Job offer form: padding --- */
.territory-alpesolidaires #viewjoboffer_form,
.territory-alpesolidaires #view_form {
    padding-bottom: 35px;
}

/* --- Filter toggle buttons: coral text on grey bg --- */
.territory-alpesolidaires .btn-filter {
    color: #ec5c6d !important;
    background-color: #f5f5f5;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' style='fill:%23ec5c6d' height='24' width='24'%3e%3cpath d='M8.122 24l-4.122-4 8-8-8-8 4.122-4 11.878 12z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 8px 10px;
    padding-right: 30px;
    border: none;
    margin-bottom: 15px;
    font-size: inherit;
    font-family: inherit;
}
.territory-alpesolidaires .btn-filter:hover {
    cursor: pointer;
}

/* --- Collapse panels: checkbox styling --- */
.territory-alpesolidaires .search-form .collapse input[type="checkbox"]:checked {
    accent-color: #ec5c6d;
}

/* --- Department multi-select (Chosen.js): coral tags --- */
.territory-alpesolidaires .search-form .chosen-container-multi .chosen-choices li.search-choice {
    background-color: #ec5c6d;
    color: #fff;
    border: none;
    border-radius: 3px;
}
.territory-alpesolidaires .search-form .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
    filter: brightness(0) invert(1);
}
.territory-alpesolidaires .search-form .chosen-container .chosen-results li.highlighted {
    background-color: #ec5c6d;
    background-image: none;
}

/* --- Submit / Reset buttons: both use .btn-secondary (coral #E0737F) ---
     No custom overrides needed — .btn-secondary is already coral at line 168.
     Both "Rechercher" and "Toutes les offres" buttons share btn-secondary styling. */

/* --- Content-type label on cards: coral uppercase --- */
.territory-alpesolidaires .content-type {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: 500;
}

/* --- Job offer cards --- */
.territory-alpesolidaires .content-joboffers .card-job-offer {
    position: relative;
    min-height: 370px;
    padding: 30px;
    margin: 15px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-around;
    background-color: #fff;
    font-size: 1.6rem;
}
.territory-alpesolidaires .content-joboffers .card-job-offer .content-card {
    margin: 0;
    margin-bottom: 10px;
}

/* Card image area */
.territory-alpesolidaires .content-joboffers .card-job-offer .img-card-new {
    text-align: center;
    margin-bottom: 10px;
}
.territory-alpesolidaires .content-joboffers .card-job-offer .img-card-new img {
    max-height: 120px;
    width: auto;
    max-width: 100%;
}

/* Card title: renner font, matching Drupal Alpesolidaires */
.territory-alpesolidaires .content-joboffers .job-title .title-link {
    color: #383838;
    line-height: 145%;
}
.territory-alpesolidaires .content-joboffers .job-title .title-link h3 {
    font-family: "renner", Helvetica, Arial, sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .content-joboffers .job-title .title-link h3 {
        font-size: 2.2rem;
    }
}
.territory-alpesolidaires .content-joboffers .job-title .title-link:hover {
    color: #0e1112;
    text-decoration: none;
}

/* Card author/structure name (no background on listing page, matching Drupal base) */
.territory-alpesolidaires .content-joboffers .card-job-offer .content-author {
    max-width: 90%;
    color: #383838;
    font-size: 1.6rem;
}

/* Card link icon */
.territory-alpesolidaires .content-joboffers .card-job-offer .link-content-job {
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.territory-alpesolidaires .content-joboffers .card-job-offer .link-content-job .i-link {
    font-size: 2.8rem;
    color: #ec5c6d;
    transition: color 0.3s;
}
.territory-alpesolidaires .content-joboffers .card-job-offer .link-content-job .i-link:hover {
    color: #e0737f;
}

/* --- Pagination: coral with box-shadow (matching Drupal alpesolidaires.css) --- */
.territory-alpesolidaires .pagination-content-homepage {
    margin-top: 35px;
}
.territory-alpesolidaires .pagination-content-homepage .page-item {
    margin: 10px;
    cursor: pointer;
}
.territory-alpesolidaires .pagination-content-homepage .page-link {
    color: #ec5c6d;
    padding: 5px 10px;
    font-weight: 700;
    border: none;
    box-shadow: 0 0 8px 0 #c9c9c9;
}
.territory-alpesolidaires .pagination-content-homepage .page-link:hover {
    color: #e0737f;
    background-color: #f5f5f5;
}
.territory-alpesolidaires .pagination-content-homepage .page-item.active .page-link {
    background-color: #ec5c6d;
    color: #fff;
    border: none;
}

/* --- No results message --- */
.territory-alpesolidaires .no-results h2 {
    font-family: "renner", Helvetica, Arial, sans-serif;
    color: #383838;
}

/* ==========================================================================
   Account Pages — Alpesolidaires Territory Overrides
   ========================================================================== */

/* --- Account page header: pink section-top (same as contact page) --- */
.territory-alpesolidaires .account-page-wrapper .section-top,
.territory-alpesolidaires .register-page-wrapper .section-top {
    background-color: #ec5c6d;
    padding: 30px 0;
}
.territory-alpesolidaires .account-page-wrapper .section-top h1 span,
.territory-alpesolidaires .register-page-wrapper .section-top h1 span {
    color: #fff;
    font-family: "renner", Helvetica, Arial, sans-serif;
    font-weight: 700;
}
.territory-alpesolidaires .account-page-wrapper .section-top .page-title,
.territory-alpesolidaires .register-page-wrapper .section-top .page-title {
    padding: 15px 0;
}

/* --- Login form colors --- */
.territory-alpesolidaires .ess-login-form h2 {
    color: #ec5c6d;
}
.territory-alpesolidaires .ess-login-form .btn-primary {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .ess-login-form .btn-primary:hover {
    background-color: #e0737f;
    border-color: #e0737f;
}
.territory-alpesolidaires .ess-login-form .form-control:focus {
    border-color: #ec5c6d;
    box-shadow: 0 0 0 0.2rem rgba(236, 92, 109, 0.15);
}
.territory-alpesolidaires .ess-login-links a {
    color: #ec5c6d;
}

/* --- Registration form colors --- */
.territory-alpesolidaires .ess-register-form h2 {
    color: #ec5c6d;
}
.territory-alpesolidaires .ess-register-form legend {
    color: #ec5c6d;
}
.territory-alpesolidaires .ess-register-form .btn-primary {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .ess-register-form .btn-primary:hover {
    background-color: #e0737f;
    border-color: #e0737f;
}
.territory-alpesolidaires .ess-register-form .form-control:focus {
    border-color: #ec5c6d;
    box-shadow: 0 0 0 0.2rem rgba(236, 92, 109, 0.15);
}

/* --- Dashboard colors --- */
.territory-alpesolidaires .ess-dashboard h2 {
    color: #ec5c6d;
}
.territory-alpesolidaires .ess-dashboard-card h3 {
    color: #ec5c6d;
}
.territory-alpesolidaires .ess-dashboard .btn-primary {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .ess-dashboard .btn-primary:hover {
    background-color: #e0737f;
    border-color: #e0737f;
}
.territory-alpesolidaires .ess-dashboard .btn-outline-primary {
    color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .ess-dashboard .btn-outline-primary:hover {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
    color: #fff;
}

/* --- Profile edit colors --- */
.territory-alpesolidaires .ess-profile-form h2 {
    color: #ec5c6d;
}
.territory-alpesolidaires .ess-profile-form .btn-primary {
    background-color: #ec5c6d;
    border-color: #ec5c6d;
}
.territory-alpesolidaires .ess-profile-form .btn-primary:hover {
    background-color: #e0737f;
    border-color: #e0737f;
}

/* ==========================================================================
   ALPESOLIDAIRES DRUPAL-STYLE CARDS (card-new card-job)
   Matches Drupal: viewjoboffer.html.twig + alpesolidaires.css
   3-column layout with background-image cards and circular plus icon
   ========================================================================== */

/* --- Card grid container --- */
.territory-alpesolidaires .news-content {
    margin-top: 25px;
}

/* --- Card: box with shadow, fixed height, border-bottom accent --- */
.territory-alpesolidaires .news-content .card-new.card-job {
    padding: 10px;
    box-shadow: 0 0 8px 0 #c9c9c9;
    height: 480px;
    border-bottom: 15px solid #fff;
    overflow: hidden;
    margin-bottom: 25px;
}
@media (max-width: 767.98px) {
    .territory-alpesolidaires .news-content .card-new.card-job {
        margin-bottom: 25px;
        height: auto;
    }
}

/* --- Card image: background-image container --- */
.territory-alpesolidaires .news-content .img-card-new {
    height: 220px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/* --- Card image: empty fallback (coral bg with SVG) --- */
.territory-alpesolidaires .news-content .img-card-empty {
    background-color: #ec5c6d;
    display: flex;
    align-items: center;
    justify-content: center;
}
.territory-alpesolidaires .news-content .img-card-empty img {
    height: 80px;
    width: auto;
    max-width: 80px;
    margin: 0 auto;
    display: block;
    object-fit: contain;
}

/* --- Card content area --- */
.territory-alpesolidaires .news-content .content-card {
    position: relative;
}

/* --- Circular "more" link icon (plus button) --- */
.territory-alpesolidaires .news-content .a-more-link {
    background-color: #fff;
    position: absolute;
    top: -25px;
    right: 15px;
    border-radius: 100%;
}
.territory-alpesolidaires .news-content .more-link {
    transition: all 0.3s;
    border-radius: 100%;
    width: 50px;
    height: 50px;
}
.territory-alpesolidaires .news-content .more-link:hover {
    transform: scale(0.93);
}

/* --- Content type label --- */
.territory-alpesolidaires .news-content .content-type {
    padding-top: 15px;
}

/* --- Title border separator --- */
.territory-alpesolidaires .news-content .title-border-bottom {
    border-top: 2px solid #ec5c6d;
    width: 45px;
    margin: 8px 0;
}

/* --- Card title: renner font --- */
.territory-alpesolidaires .news-content .title-card-new {
    font-size: 2.2rem;
    font-family: "renner", Helvetica, Arial, sans-serif;
    font-weight: bold;
    color: #383838;
}
.territory-alpesolidaires .news-content .title-link {
    color: #383838;
    text-decoration: none;
}
.territory-alpesolidaires .news-content .title-link:hover {
    color: #0e1112;
    text-decoration: none;
}

/* --- Date text --- */
.territory-alpesolidaires .news-content .created {
    font-size: 1.4rem;
    font-style: italic;
    margin-top: 5px;
    color: #666;
}

/* --- Offer type toggle buttons (Drupal-style) --- */
.territory-alpesolidaires .btn-primary.btn-dark {
    background-color: #383838;
    border-color: #383838;
}
.territory-alpesolidaires .btn-primary.btn-dark:hover {
    background-color: #222;
    border-color: #222;
}

/* ==========================================================================
   ALPESOLIDAIRES SINGLE JOB OFFER — Pink Header + Content-Node Layout
   Matches Drupal: page--node.html.twig for Alpesolidaires territory
   ========================================================================== */

/* --- Content-node wrapper (8/4 content + sidebar layout) --- */
.territory-alpesolidaires .content-node {
    margin-top: 40px;
}
.territory-alpesolidaires .content-node .sidebar-right {
    margin-top: 60px;
}
.territory-alpesolidaires .content-node .page__content {
    margin-bottom: 80px;
}

/* --- Author block below content --- */
.territory-alpesolidaires .content-node .content-author {
    background-color: #f5f5f5;
    font-size: 1.8rem;
    padding: 15px 20px;
    font-weight: bold;
    margin-top: 25px;
}
.territory-alpesolidaires .content-node .content-author p {
    margin-bottom: 0;
}

/* --- Bottom page section (associated structure) --- */
.territory-alpesolidaires .page__bottom {
    margin-top: 25px;
    background-color: #f5f5f5;
}
.territory-alpesolidaires .page__bottom .bottom-section {
    margin: 0 auto;
    box-shadow: 0 0 8px 1px #9e9e9e;
}
.territory-alpesolidaires .page__bottom .title-bottom {
    margin: 0;
    display: inline-block;
}
.territory-alpesolidaires .page__bottom .title-bottom::after {
    content: " ";
    width: 45px;
    display: block;
    padding: 5px;
}
.territory-alpesolidaires .page__bottom .bottom-associated-structure .bottom-content {
    padding: 35px 40px;
}
@media (min-width: 1200px) {
    .territory-alpesolidaires .page__bottom .bottom-associated-structure .bottom-content {
        max-width: 50%;
    }
}
.territory-alpesolidaires .page__bottom .bottom-associated-structure .bottom-content .title-bottom {
    color: #FFF;
}
.territory-alpesolidaires .page__bottom .bottom-associated-structure .bottom-content .title-bottom::after {
    border-top: 2px solid #e0737f;
}

/* --- Sidebar block (border-left accent) --- */
.territory-alpesolidaires .block-sidebar {
    border-left: 5px solid #e0737f;
    padding: 10px;
}
.territory-alpesolidaires .block-sidebar .title-sidebar {
    text-transform: uppercase;
    font-size: 1.7rem;
}

/* --- Single job offer header: pink header with metadata belt --- */
.territory-alpesolidaires .section-top .header-content-type {
    font-size: 1.5rem;
    text-transform: uppercase;
    font-weight: 500;
}
.territory-alpesolidaires .section-top .created {
    font-size: 1.4rem;
    font-style: italic;
    margin-top: 15px;
}

/* --- Single metadata belt for Alpesolidaires --- */
.territory-alpesolidaires .belt-info-alpesolidaires {
    background-color: #f5f5f5;
    padding: 20px 0;
}
.territory-alpesolidaires .belt-info-alpesolidaires .belt-info .content-type {
    font-size: 1.3rem;
}
.territory-alpesolidaires .belt-info-alpesolidaires .belt-info strong {
    font-size: 1.5rem;
}
.territory-alpesolidaires .belt-info-alpesolidaires .link-structure {
    color: #ec5c6d;
}

/* ============================================================================
   ALPESOLIDAIRES BIENS ET SERVICES ARCHIVE PAGE
   "Les dossiers d'alpeso" — Zigzag alternating layout
   Matches Drupal: /biens-et-services on alpesolidaires.org
   ============================================================================ */

/* --- Zigzag layout: alternating text/image rows --- */
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-row {
    padding: 30px 0;
    border-bottom: 1px solid #e0e0e0;
}
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-row:last-child {
    border-bottom: none;
}

/* Category label (pink uppercase) */
.territory-alpesolidaires .alpeso-products-zigzag .content-type {
    color: #ec5c6d;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.3rem;
    letter-spacing: 0.5px;
    margin-bottom: 10px;
}

/* Product title */
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-title {
    font-size: 2.2rem;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.3;
}
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-title a {
    color: #ec5c6d;
    text-decoration: none;
}
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-title a:hover {
    color: #e0737f;
    text-decoration: none;
}

/* Product summary text */
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-summary {
    font-size: 16px;
    color: #383838;
    line-height: 1.6;
}

/* Product image */
.territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-image img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    border-radius: 5px;
}

/* Mobile: stack vertically, image on top */
@media (max-width: 767px) {
    .territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-row {
        padding: 20px 0;
    }
    .territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-image {
        order: -1;
        margin-bottom: 15px;
    }
    .territory-alpesolidaires .alpeso-products-zigzag .product-zigzag-image img {
        height: 200px;
    }
}

/* ============================================================================
   CALISOLI MAP: Leaflet MarkerCluster custom styling
   ============================================================================ */
.territory-alpesolidaires .calisoli-map-section h2 {
    font-size: 2.2rem;
    font-weight: 600;
    color: #383838;
    margin-bottom: 20px;
}
.calisoli-cluster {
    background: rgba(229, 115, 128, 0.6);
    border-radius: 50%;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    text-align: center;
    line-height: 40px;
}
.territory-alpesolidaires #calisoli-map {
    border: 1px solid #e0e0e0;
}

/* ── RGPD Cookie banner: Alpesolidaires red override ── */
.territory-alpesolidaires div#sliding-popup,
.territory-alpesolidaires div#sliding-popup .eu-cookie-withdraw-banner,
.territory-alpesolidaires .eu-cookie-withdraw-tab {
    background-color: #ED2D4A !important;
}

/* ========================================================================
   CLIENT FEEDBACK FIXES (Feb 2026)
   ======================================================================== */

/* --- Issue 1: À propos page - prevent image cropping in header --- */
.territory-alpesolidaires .page__header .col-content-type img {
    max-height: 280px;
    width: 250px;
    max-width: 100%;
    object-fit: contain;
}

/* --- Issue 4: Normalize paragraph and list typography in content --- */
.territory-alpesolidaires .page__content p,
.territory-alpesolidaires .page__content ul,
.territory-alpesolidaires .page__content ol,
.territory-alpesolidaires .page__content li,
.territory-alpesolidaires .node-content p,
.territory-alpesolidaires .node-content ul,
.territory-alpesolidaires .node-content ol,
.territory-alpesolidaires .node-content li {
    font-size: 1.6rem;
    color: #383838;
    line-height: 1.6;
}

/* --- Issue 5: Footer - more space at bottom --- */
.territory-alpesolidaires .container-footer {
    padding-bottom: 40px;
}

/* --- Issue 8: Articles - pink "Structure associée" text on pink background --- */
.territory-alpesolidaires .section-structure .content-type,
.territory-alpesolidaires .bottom-associated-structure .content-type {
    color: #fff;
}

/* --- Issue 10 & 11: Event/Structure pages - Infos pratiques alignment --- */
.territory-alpesolidaires .agenda__field-address,
.territory-alpesolidaires .agenda__field-phone,
.territory-alpesolidaires .agenda__field-website,
.territory-alpesolidaires .agenda__field-email,
.territory-alpesolidaires .structure__field-address,
.territory-alpesolidaires .structure__field-phone,
.territory-alpesolidaires .structure__field-website,
.territory-alpesolidaires .structure__field-mail,
.territory-alpesolidaires .structure__field-email {
    display: flex;
    align-items: baseline;
}
.territory-alpesolidaires .agenda__field-address i,
.territory-alpesolidaires .agenda__field-phone i,
.territory-alpesolidaires .agenda__field-website i,
.territory-alpesolidaires .agenda__field-email i,
.territory-alpesolidaires .structure__field-address i,
.territory-alpesolidaires .structure__field-phone i,
.territory-alpesolidaires .structure__field-website i,
.territory-alpesolidaires .structure__field-mail i,
.territory-alpesolidaires .structure__field-email i {
    margin-right: 10px;
    min-width: 20px;
    flex-shrink: 0;
}
/* Structure page: mail/website field label spacing */
.territory-alpesolidaires .structure__field-mail .field__label,
.territory-alpesolidaires .structure__field-website .field__label,
.territory-alpesolidaires .structure__field-address .field__label {
    margin-right: 10px;
    flex-shrink: 0;
    white-space: nowrap;
}
.territory-alpesolidaires .structure__field-mail .field__item,
.territory-alpesolidaires .structure__field-website .field__item {
    margin-top: 0;
}

/* --- Issue 12: Job offer pages - structure section uses Alpesolidaires colors --- */
.territory-alpesolidaires .single-ess_job_offer .section-structure,
.territory-alpesolidaires .single-ess_job_offer .page__bottom {
    background-color: #ffeef0;
}
.territory-alpesolidaires .single-ess_job_offer .section-structure .title-bottom,
.territory-alpesolidaires .single-ess_job_offer .page__bottom .title-bottom {
    color: #ec5c6d;
}
.territory-alpesolidaires .single-ess_job_offer .section-structure .title-bottom::after,
.territory-alpesolidaires .single-ess_job_offer .page__bottom .title-bottom::after {
    border-top-color: #ec5c6d;
}
.territory-alpesolidaires .single-ess_job_offer .block-bottom {
    background-color: #e0737f;
    color: #fff;
}
.territory-alpesolidaires .single-ess_job_offer .block-bottom a {
    color: #fff;
}
.territory-alpesolidaires .single-ess_job_offer .block-bottom .subtitle-bottom,
.territory-alpesolidaires .single-ess_job_offer .block-bottom h3,
.territory-alpesolidaires .single-ess_job_offer .block-bottom address {
    color: #fff;
}

/* --- Job offer single page: Single-column layout (matching Drupal) --- */
.territory-alpesolidaires .single-ess_job_offer .page__content {
    width: 100%;
    max-width: 100%;
}

.territory-alpesolidaires .single-ess_job_offer .content-node {
    padding-top: 40px;
    padding-bottom: 40px;
}

/* Field styling for single-column job offer fields */
.territory-alpesolidaires .single-ess_job_offer .job-offer__field-contact,
.territory-alpesolidaires .single-ess_job_offer .job-offer__field-date,
.territory-alpesolidaires .single-ess_job_offer .job-offer__field-file,
.territory-alpesolidaires .single-ess_job_offer .job-offer__field-structure {
    padding: 15px 0;
    border-bottom: 1px solid #eee;
}

.territory-alpesolidaires .single-ess_job_offer .job-offer__field-contact .field__label,
.territory-alpesolidaires .single-ess_job_offer .job-offer__field-date .field__label,
.territory-alpesolidaires .single-ess_job_offer .job-offer__field-structure .field__label {
    color: #383838;
    font-size: 1.5rem;
    margin-bottom: 5px;
}

.territory-alpesolidaires .single-ess_job_offer .link-structure {
    color: #ec5c6d;
    font-weight: 500;
}

.territory-alpesolidaires .single-ess_job_offer .link-structure:hover {
    color: #383838;
}

/* Author block styling */
.territory-alpesolidaires .single-ess_job_offer .content-author {
    font-size: 1.4rem;
    color: #666;
    font-style: italic;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

