:root {
          /* Core color system */
          --bs-primary: #0d6efd;
          --bs-secondary: #6c757d;
          --bs-success: #198754;
          --bs-danger: #DF215E;
          --bs-warning: #ffc107;
          --bs-info: #0dcaf0;

          /* Background and text */
          --bs-body-bg: #fff;
          --bs-body-color: #212529;

          /* Component variables */
          --bs-border-radius: 0.375rem;
          --bs-link-color: #0d6efd;

        }

        html, body {
            background: #F8F8F8;
            font-family: Monserrat, opensans, sans-serif;
            overflow: auto;
        }

        h1 {
            color: #DF215E;
            text-align: center;
            font-family: Montserrat;
            font-size: 2rem;
            font-style: normal;
            font-weight: 700;
            line-height: 150%; /* 3rem */
            margin-bottom: 2.5rem;
        }

        h2 {
            color: #3C3C3B;
            text-align: center;
            font-family: Montserrat;
            font-size: 1.25rem;
            font-style: normal;
            font-weight: 700;
            line-height: 150%; /* 1.875rem */
        }

        .alert {
            padding: 0.75rem;
            justify-content: center;
            align-items: center;
            gap: 1rem;
            align-self: stretch;

            border-radius: 0.25rem;
            border: 2px solid var(--Status-Red-300, #ED99A6);
            background: var(--Status-Red-100, #FBE7EA);
        }
        .alert-danger {
            color: #3C3C3B;
        }

        .alert-link,
        .alert-danger .alert-link {
            color: var(--color-blue-600, #036EFC);
            font-style: normal;
            font-weight: 400;
            line-height: 150%;
            text-decoration-line: underline;
            text-decoration-style: solid;
            text-decoration-skip-ink: none;
            text-decoration-thickness: auto;
            text-underline-offset: auto;
            text-underline-position: from-font;
        }

        .carte {
            display: flex;
            padding: 2.5rem;
            flex-direction: column;
<!--            justify-content: center;-->
            align-items: flex-start;
            <!-- gap: 0.625rem;-->
            flex: 1 0 0;
            align-self: stretch;
        }

        .carte-secondaire {
            border-radius: 0.625rem;
            background: var(--color-graphite-100, #F8F8F8);
        }

        .carte-ombre {
            border-radius: 1.25rem;
            background: var(--color-bg-white, #FFF);

            /* Shadow/Drop/S */
            box-shadow: 0 0 16px 0 rgba(41, 41, 41, 0.05), 1px 1px 3px 0 rgba(41, 41, 41, 0.05);
        }


/* liens France connect */
.france-connect-login-link {
  margin: 2rem 0;
}
.france-connect-login-link a {
	margin: 0 auto .5rem auto;
	display: block;
	font-size: 14px;
	text-decoration: underline;
	text-align: center;
	color: rgb(0, 0, 145)
}

/* --- FranceConnect - Profil --- */
.france-connect-profile {
	padding: 16px 0 85px 35px;
	background: url('/ISA/images/fc-avatar-5fd70c3181e5a5a342fae011da1d3961.png') left center no-repeat;
	background-size: 30px 35px;
	background-repeat: no-repeat;
	background-position: 17px 21px;
}

#LoginConnexionFranceConnect {
	background-image: url('/ISA/images/franceconnect-btn-principal-6dcf8897c8a58821a64202ad9dac1860.png');
    background-repeat: no-repeat;
    width: 209px;
    height: 56px;
}
#LoginConnexionFranceConnect:hover {
	background-image: url('/ISA/images/franceconnect-btn-principal-hover-13c32e33234342cf4448f27853bcd82a.png');
}

@media screen and (max-width: 600px) {
    section {
        width: 100%;
    }
    .carte {
        padding: 1.5rem;
    }
}

.login-content {
    gap: 2.5rem;
    display: flex;
    /* width: 87.8125rem; */
    /* padding: 1.875rem 5rem 3.75rem 5rem; ! mobile */
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

.btn-cta {
    font-weight: 600;
    display: flex;
    <!-- width: 25rem; -->
    padding: .4rem 0.75rem;
    padding: var(--dimension-100, 0.5rem) var(--dimension-200, 1rem);
    justify-content: center;
    align-items: center;
    gap: var(--dimension-100, 0.5rem);
    border-radius: var(--radius-sm, 0.25rem);
    background: var(--Brand-Lime-500, #D2DC2E);
}

.btn-cta:hover,
a.btn-cta:hover
button.btn-cta:hover {
    color: #000;
    text-decoration: none;
    background: var(--Brand-Lime-500, rgb(170 180 0));
}

a.text-link {
    color: #036EFC;
    text-decoration: underline;
}

body nav {
    margin-bottom: 0;
}
#main-content {
    margin-top: 3rem;
}
.banniere-container {
    background: linear-gradient(90deg,rgba(213, 17, 48, 1) 45%, rgba(230, 48, 137, 1) 55%);
}
.banniere {
    display: flex;
    align-content: flex-start;
    justify-content: center;
}
.banniere-concours-2026 {
    height: 45px;
    background-image: url('/ISA/images/2026_jeu_concours-af9791f00032333d5ef9aa6862eb8570.png');
    background-repeat: no-repeat;
    background-position-x: center;
    background-size: contain;
    color: #222;
    font-weight: bold;
    padding: 1.25rem;
    margin: 0;
}
