:root {
    --eis-blue: #0878d1;
    --eis-blue-bright: #0a84ff;
    --eis-blue-dark: #123b5d;
    --eis-blue-soft: #eaf4fb;

    --eis-gold: #d6a21d;
    --eis-gold-text: #9b6a00;

    --eis-text: #263238;
    --eis-text-muted: #5f6b73;

    --eis-border: #e5e9ec;

    --eis-background: #ffffff;
    --eis-background-soft: #f5f7f8;

    --hero-image: none;

    --font-main:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;
}

* {
    box-sizing: border-box;
}

html {
    min-width: 320px;
    margin: 0;
    scroll-behavior: smooth;
}

body {
    min-width: 320px;
    min-height: 100vh;

    margin: 0;

    color: var(--eis-text);
    background: var(--eis-background-soft);

    font-family: var(--font-main);
    font-size: 16px;
    line-height: 1.6;

    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

a {
    color: inherit;
}


/* HEADER */

.site-header {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding: 4px 32px 10px;

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

.identity {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.header-logo-image {
    display: block;

    width: 340px;
    height: auto;

    object-fit: contain;
}

.main-navigation {
    display: flex;
    align-items: center;

    gap: 26px;
}

.main-navigation a {
    position: relative;

    color: var(--eis-text-muted);

    font-size: 16px;
    font-weight: 600;

    text-decoration: none;

    transition: color .16s;
}

.main-navigation a::after {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    bottom: -6px;

    height: 2px;

    background: var(--eis-gold);

    transform: scaleX(0);
    transform-origin: center;

    transition: transform .16s;
}

.main-navigation a:hover,
.main-navigation a:focus-visible {
    color: var(--eis-blue);
}

.main-navigation a:hover::after,
.main-navigation a:focus-visible::after {
    transform: scaleX(1);
}


/* HERO */

.page-content {
    width: 100%;
}

.hero {
    position: relative;

    width: 100%;
    max-width: 1280px;

    margin: 0 auto;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #f8fbfd 0%,
            #f2f7fa 100%
        );
}

.hero--plain {
    min-height: 390px;
}

.hero--with-image {
    min-height: 500px;
}

.hero-visual {
    position: absolute;
    inset: 0;

    z-index: 0;

    background-image: var(--hero-image);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
}

.hero--plain .hero-visual {
    display: none;
}

.hero-overlay {
    position: absolute;
    inset: 0;

    z-index: 1;
}

.hero--plain .hero-overlay {
    background:
        radial-gradient(
            circle at 88% 10%,
            rgba(8,120,209,.10),
            transparent 30%
        );
}

.hero--with-image .hero-overlay {
    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,1) 0%,
            rgba(255,255,255,.98) 32%,
            rgba(255,255,255,.90) 44%,
            rgba(255,255,255,.45) 64%,
            rgba(255,255,255,.05) 100%
        );
}

.hero-inner {
    position: relative;

    z-index: 2;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding: 54px 32px 58px;
}

.hero--plain .hero-content {
    width: 100%;
    max-width: 840px;
}

.hero--with-image .hero-content {
    width: 55%;
    max-width: 660px;
}

.status-badge {
    width: fit-content;

    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 14px;

    padding: 8px 13px;

    color: var(--eis-blue-dark);
    background: var(--eis-blue-soft);

    border: 1px solid rgba(8,120,209,.14);
    border-radius: 999px;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: .06em;
    text-transform: uppercase;
}

.status-badge-icon {
    display: inline-flex;

    color: var(--eis-blue);
}

.status-badge-icon svg {
    display: block;
}

.hero h1 {
    display: inline-block;

    margin: 0;

    padding-bottom: 8px;

    color: var(--eis-blue-dark);

    border-bottom: 3px solid var(--eis-gold);

    font-size: clamp(46px, 4.4vw, 60px);
    font-weight: 700;

    line-height: 1.05;
    letter-spacing: -.04em;
}

.hero-introduction {
    max-width: 720px;

    margin: 26px 0 0;

    color: var(--eis-text-muted);

    font-size: 19px;
    font-weight: 400;

    line-height: 1.68;
}

.hero-introduction strong {
    color: var(--eis-blue-dark);
    font-weight: 700;
}

.hero-secondary {
    margin: 17px 0 0;

    color: var(--eis-text-muted);

    font-size: 15px;
    font-weight: 400;

    line-height: 1.6;
}

.domain-note {
    margin: 18px 0 0;

    padding-left: 14px;

    color: var(--eis-text-muted);

    border-left: 3px solid var(--eis-gold);

    font-size: 15px;
}


/* 3 BLOCS */

.information-section {
    width: 100%;

    background: var(--eis-background);
}

.information-grid {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding: 34px 32px 26px;

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 22px;
}

.info-card {
    min-height: 156px;

    display: flex;
    align-items: center;

    gap: 20px;

    padding: 26px 28px;

    background: var(--eis-background);

    border: 1px solid var(--eis-border);
    border-radius: 20px;

    box-shadow:
        0 16px 45px rgba(18,59,93,.055);
}

.info-icon {
    flex: 0 0 60px;

    width: 60px;
    height: 60px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: var(--eis-blue);

    background: var(--eis-blue-soft);

    border: 1px solid rgba(8,120,209,.14);
    border-radius: 15px;
}

.info-icon--gold {
    color: var(--eis-gold-text);

    background: #fff5d9;

    border-color: rgba(214,162,29,.24);
}

.info-icon--slate {
    color: #50697c;

    background: #edf3f6;

    border-color: #d6e2e8;
}

.info-icon svg {
    display: block;
}

.info-copy {
    min-width: 0;
}

.info-card h2 {
    margin: 0;

    color: var(--eis-blue-dark);

    font-size: 20px;
    font-weight: 700;

    line-height: 1.25;
}

.info-card p {
    margin: 10px 0 0;

    color: var(--eis-text-muted);

    font-size: 15px;
    font-weight: 400;

    line-height: 1.58;
}


/* CONTACT */

.domain-contact {
    width: 100%;

    background: var(--eis-background);
}

.domain-contact-inner {
    width: calc(100% - 64px);
    max-width: 1136px;

    margin: 0 auto 36px;

    padding: 23px 26px;

    display: grid;

    grid-template-columns:
        auto
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 18px;

    background: var(--eis-blue-soft);

    border: 1px solid var(--eis-border);
    border-radius: 18px;
}

.contact-icon {
    width: 58px;
    height: 58px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: var(--eis-blue);

    background: #ffffff;

    border: 1px solid rgba(8,120,209,.16);
    border-radius: 14px;
}

.contact-copy {
    min-width: 0;
}

.contact-kicker {
    margin: 0 0 2px;

    color: var(--eis-gold-text);

    font-size: 11px;
    font-weight: 800;

    letter-spacing: .11em;
    text-transform: uppercase;
}

.contact-copy h2 {
    margin: 0;

    color: var(--eis-blue-dark);

    font-size: 20px;
    font-weight: 700;

    line-height: 1.3;
}

.contact-copy p:last-child {
    margin: 5px 0 0;

    color: var(--eis-text-muted);

    font-size: 14px;
    font-weight: 400;

    line-height: 1.5;
}

.contact-action {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.button {
    min-height: 50px;

    padding: 0 22px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    border-radius: 10px;

    font-size: 16px;
    font-weight: 700;

    text-align: center;
    text-decoration: none;

    transition:
        transform .16s,
        background-color .16s;
}

.button:hover {
    transform: translateY(-2px);
}

.button.primary {
    color: #ffffff;
    background: var(--eis-blue);
}

.button.primary:hover {
    background: var(--eis-blue-bright);
}


/* FOOTER */

.site-footer {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding: 34px 32px 40px;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 40px;

    color: var(--eis-text-muted);

    border-top: 1px solid var(--eis-border);

    font-size: 14px;
}

.footer-identity {
    display: grid;

    gap: 13px;
}

.footer-brand-line {
    display: flex;
    align-items: center;

    gap: 13px;
}

.footer-logo {
    width: 84px;
    height: 84px;

    display: block;

    flex-shrink: 0;

    object-fit: contain;
}

.footer-brand-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 1px;
}

.footer-brand-text strong {
    color: var(--eis-blue-dark);

    font-size: 16px;
    font-weight: 700;
}

.footer-brand-text span {
    color: var(--eis-text-muted);

    font-size: 14px;
    font-weight: 400;
}

.registry-link {
    width: fit-content;

    color: #0773ca;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;
}

.registry-link:hover,
.registry-link:focus-visible {
    color: var(--eis-blue);

    text-decoration: underline;

    text-decoration-color: var(--eis-gold);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

.footer-legal,
.footer-nav {
    display: flex;
    flex-wrap: wrap;

    gap: 8px 18px;
}

.footer-legal a,
.footer-nav a {
    color: var(--eis-text-muted);

    font-size: 13px;
    font-weight: 650;

    text-decoration: none;
}

.footer-legal a:hover,
.footer-nav a:hover,
.footer-legal a:focus-visible,
.footer-nav a:focus-visible {
    color: var(--eis-blue);

    text-decoration: underline;

    text-decoration-color: var(--eis-gold);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

.footer-secondary {
    display: grid;

    justify-items: end;

    gap: 14px;
}

.footer-copyright {
    margin: 0;

    color: var(--eis-text-muted);

    font-size: 14px;
    font-weight: 400;

    text-align: right;
}


/* RESPONSIVE */

@media (max-width: 940px) {

    .site-header {
        flex-direction: column;
        align-items: flex-start;

        gap: 18px;
    }

    .main-navigation {
        flex-wrap: wrap;

        gap: 12px 20px;
    }

    .hero--with-image .hero-content {
        width: 68%;
    }

    .information-grid {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 800px) {

    .site-header {
        padding: 6px 20px 8px;
    }

    .header-logo-image {
        width: 230px;
    }

    .hero-inner {
        padding: 44px 20px 48px;
    }

    .hero--with-image .hero-content {
        width: 82%;
    }

    .information-grid {
        padding: 28px 20px 24px;
    }

    .domain-contact-inner {
        width: calc(100% - 40px);

        grid-template-columns:
            auto
            minmax(0, 1fr);

        margin-bottom: 28px;
    }

    .contact-action {
        grid-column: 1 / -1;

        justify-content: flex-start;

        padding-left: 76px;
    }

    .site-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 24px;

        padding: 30px 20px;
    }

    .footer-secondary {
        justify-items: start;
    }

    .footer-copyright {
        text-align: left;
    }

}


@media (max-width: 620px) {

    .hero--plain,
    .hero--with-image {
        min-height: auto;
    }

    .hero--with-image .hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(255,255,255,1) 0%,
                rgba(255,255,255,.95) 75%,
                rgba(255,255,255,.82) 100%
            );
    }

    .hero--with-image .hero-content {
        width: 100%;
    }

    .hero h1 {
        font-size: clamp(38px, 12vw, 52px);
    }

    .hero-introduction {
        font-size: 18px;
    }

    .info-card {
        align-items: flex-start;
    }

    .domain-contact-inner {
        grid-template-columns: 1fr;
    }

    .contact-action {
        grid-column: auto;

        padding-left: 0;
    }

    .button {
        width: 100%;
    }

}

/* EIS FIX HERO STACK START */
.hero-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.status-badge {
    margin-bottom: 14px !important;
}
/* EIS FIX HERO STACK END */

/* EIS TYPO ALIGNMENT START */

/* Header navigation = site principal EIS */
.main-navigation a {
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.6 !important;
}

/* Footer = site principal EIS */
.footer-brand-text strong {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

.footer-brand-text span {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

.registry-link {
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
}

.footer-legal a,
.footer-nav a {
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.6 !important;
}

.footer-copyright {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

/* EIS TYPO ALIGNMENT END */

/* EIS HEADER FOOTER EXACT START */

/*
 * Référence :
 * european-is.net
 * Layout._JPJPFma.css
 *
 * Ce bloc doit rester à la fin du fichier afin de prendre
 * priorité sur les anciennes règles de la landing page.
 */


/* ---------------------------------------------------------
   TYPOGRAPHIE GLOBALE EIS
   --------------------------------------------------------- */

body {
    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: 16px !important;
    line-height: 1.6 !important;

    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}


/* ---------------------------------------------------------
   HEADER — IDENTIQUE AU SITE PRINCIPAL
   --------------------------------------------------------- */

.site-header {
    width: 100% !important;
    max-width: 1200px !important;

    margin: 0 auto !important;

    padding: 4px 32px 10px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    gap: 0 !important;
}

.identity {
    display: inline-flex !important;
    align-items: center !important;

    color: #123b5d !important;

    text-decoration: none !important;
}

.header-logo-image {
    display: block !important;

    width: 340px !important;
    max-width: none !important;
    height: auto !important;

    object-fit: contain !important;
}

.main-navigation {
    display: flex !important;
    align-items: center !important;

    gap: 26px !important;

    margin: 0 !important;
    padding: 0 !important;
}

.main-navigation a {
    position: relative !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #5f6b73 !important;

    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.6 !important;

    letter-spacing: normal !important;

    text-decoration: none !important;
    text-transform: none !important;

    transition: color .16s !important;
}

.main-navigation a::after {
    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    right: 0 !important;
    bottom: -6px !important;

    height: 2px !important;

    background: #d6a21d !important;

    transform: scaleX(0) !important;
    transform-origin: 50% !important;

    transition: transform .16s !important;
}

.main-navigation a:hover,
.main-navigation a:focus-visible {
    color: #0878d1 !important;
}

.main-navigation a:hover::after,
.main-navigation a:focus-visible::after {
    transform: scaleX(1) !important;
}


/* ---------------------------------------------------------
   FOOTER — IDENTIQUE AU SITE PRINCIPAL
   --------------------------------------------------------- */

.site-footer {
    width: 100% !important;
    max-width: 1200px !important;

    margin: 0 auto !important;

    padding: 38px 32px 44px !important;

    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;

    gap: 40px !important;

    color: #5f6b73 !important;

    background: transparent !important;

    border-top: 1px solid #e5e9ec !important;

    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: 14px !important;
    line-height: 1.6 !important;
}

.footer-identity {
    display: grid !important;

    gap: 14px !important;
}

.footer-brand-line {
    display: flex !important;
    align-items: center !important;

    gap: 12px !important;
}

.footer-logo {
    display: block !important;

    width: 84px !important;
    height: 84px !important;

    flex-shrink: 0 !important;

    object-fit: contain !important;
}

.footer-brand-text {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    gap: 1px !important;
}

.footer-brand-text strong {
    color: #123b5d !important;

    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
}

.footer-brand-text > span {
    color: #5f6b73 !important;

    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

.registry-link {
    width: fit-content !important;

    color: #0773ca !important;

    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;

    text-decoration: none !important;
}

.registry-link:hover,
.registry-link:focus-visible {
    color: #0878d1 !important;

    text-decoration: underline !important;
    text-decoration-color: #d6a21d !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

.footer-legal {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 8px 18px !important;

    margin: 0 !important;
    padding: 0 !important;
}

.footer-legal a {
    margin: 0 !important;
    padding: 0 !important;

    color: #5f6b73 !important;

    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.6 !important;

    letter-spacing: normal !important;

    text-decoration: none !important;
    text-transform: none !important;
}

.footer-secondary {
    display: grid !important;

    justify-items: end !important;

    gap: 14px !important;
}

.footer-nav {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 8px 18px !important;

    margin: 0 !important;
    padding: 0 !important;
}

.footer-nav a {
    margin: 0 !important;
    padding: 0 !important;

    color: #5f6b73 !important;

    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.6 !important;

    letter-spacing: normal !important;

    text-decoration: none !important;
    text-transform: none !important;
}

.footer-legal a:hover,
.footer-legal a:focus-visible,
.footer-nav a:hover,
.footer-nav a:focus-visible {
    color: #0878d1 !important;

    text-decoration: underline !important;
    text-decoration-color: #d6a21d !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

.footer-copyright {
    margin: 0 !important;

    color: #5f6b73 !important;

    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;

    letter-spacing: normal !important;

    text-align: right !important;
}


/* ---------------------------------------------------------
   RESPONSIVE — VALEURS DU SITE EIS
   --------------------------------------------------------- */

@media (max-width: 940px) {

    .site-header {
        flex-direction: column !important;
        align-items: flex-start !important;

        gap: 20px !important;
    }

    .main-navigation {
        flex-wrap: wrap !important;

        gap: 12px 20px !important;
    }
}


@media (max-width: 800px) {

    .site-header {
        padding: 6px 20px 8px !important;
    }

    .header-logo-image {
        width: 230px !important;
    }

    .site-footer {
        flex-direction: column !important;
        align-items: flex-start !important;

        gap: 24px !important;

        padding: 30px 20px !important;
    }

    .footer-secondary {
        justify-items: start !important;
    }

    .footer-copyright {
        text-align: left !important;
    }
}

/* EIS HEADER FOOTER EXACT END */

/* EIS CARDS HELP EXACT START */


/* =========================================================
   CARTES — VERSION ILLUSTRATION
   ========================================================= */

.information-grid {
    width: 100% !important;
    max-width: 1200px !important;

    margin: 0 auto !important;

    padding: 28px 32px 22px !important;

    display: grid !important;

    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap: 18px !important;
}

.info-card {
    min-height: 118px !important;

    display: flex !important;
    align-items: center !important;

    gap: 20px !important;

    padding: 20px 22px !important;

    background: #ffffff !important;

    border: 1px solid #dfe8ef !important;
    border-radius: 16px !important;

    box-shadow:
        0 8px 24px rgba(18,59,93,.05) !important;
}


/* pictogrammes ronds */

.info-icon {
    width: 68px !important;
    min-width: 68px !important;
    height: 68px !important;

    flex: 0 0 68px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 50% !important;
}

.info-icon svg {
    width: 35px !important;
    height: 35px !important;

    display: block !important;
}

.info-icon-domain {
    color: #1477e8 !important;

    background: #e8f3ff !important;

    border: 1px solid #cfe4f8 !important;
}

.info-icon-tech {
    color: #e0a000 !important;

    background: #fff3cf !important;

    border: 1px solid #efd89b !important;
}

.info-icon-web {
    color: #536a7b !important;

    background: #edf2f5 !important;

    border: 1px solid #d9e4ea !important;
}

.info-copy {
    min-width: 0 !important;
}

.info-card h2 {
    margin: 0 !important;

    color: #123b5d !important;

    font-size: 18px !important;
    font-weight: 700 !important;

    line-height: 1.3 !important;
}

.info-card p {
    margin: 6px 0 0 !important;

    color: #5f6b73 !important;

    font-size: 14px !important;
    font-weight: 400 !important;

    line-height: 1.5 !important;
}


/* =========================================================
   BESOIN D'AIDE
   ========================================================= */

.domain-contact-inner {
    width: calc(100% - 64px) !important;
    max-width: 1136px !important;

    margin: 0 auto 34px !important;

    padding: 18px 24px !important;

    display: grid !important;

    grid-template-columns:
        76px
        minmax(0, 1fr)
        auto !important;

    align-items: center !important;

    gap: 12px !important;

    background: #eaf4fb !important;

    border: 1px solid #d7e7f2 !important;
    border-radius: 16px !important;
}


/* casque : grand, bleu très foncé, sans pastille */

.help-icon {
    width: 68px !important;
    height: 68px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    color: #0b3150 !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;
}

.help-icon svg {
    width: 52px !important;
    height: 52px !important;

    display: block !important;
}

.contact-copy {
    min-width: 0 !important;
}

.contact-kicker {
    margin: 0 0 2px !important;

    color: #9b6a00 !important;

    font-size: 11px !important;
    font-weight: 800 !important;

    letter-spacing: .11em !important;
    text-transform: uppercase !important;
}

.contact-copy h2 {
    margin: 0 !important;

    color: #123b5d !important;

    font-size: 19px !important;
    font-weight: 700 !important;

    line-height: 1.3 !important;
}

.contact-copy p:last-child {
    margin: 4px 0 0 !important;

    color: #5f6b73 !important;

    font-size: 14px !important;

    line-height: 1.5 !important;
}


/* bouton conserve la charte EIS */

.contact-action .button {
    min-height: 50px !important;

    padding: 0 22px !important;

    border-radius: 10px !important;

    font-size: 16px !important;
    font-weight: 700 !important;
}


/* responsive */

@media (max-width: 940px) {

    .information-grid {
        grid-template-columns: 1fr !important;
    }
}


@media (max-width: 800px) {

    .information-grid {
        padding: 24px 20px !important;
    }

    .domain-contact-inner {
        width: calc(100% - 40px) !important;

        grid-template-columns:
            68px
            minmax(0, 1fr) !important;
    }

    .contact-action {
        grid-column: 1 / -1 !important;

        padding-left: 80px !important;
    }
}


@media (max-width: 620px) {

    .info-card {
        min-height: auto !important;
    }

    .domain-contact-inner {
        grid-template-columns: 1fr !important;
    }

    .contact-action {
        padding-left: 0 !important;
    }

}

/* EIS CARDS HELP EXACT END */

/* EIS ICON SIZE FIX START */

/*
 * Réglage définitif des pictogrammes.
 *
 * IMPORTANT :
 * - dimensions des cercles : 78 x 78 px
 * - seule la taille du dessin intérieur change
 * - casque du bloc Besoin d'aide inchangé
 */

.info-icon {
    width: 78px !important;
    min-width: 78px !important;
    height: 78px !important;

    flex: 0 0 78px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 50% !important;
}


/* Globe : Nom de domaine */

.info-icon-domain svg {
    width: 58px !important;
    height: 58px !important;
    max-width: 58px !important;
    max-height: 58px !important;

    display: block !important;
}


/* Bouclier : Gestion technique */

.info-icon-tech svg {
    width: 68px !important;
    height: 62px !important;
    max-width: 68px !important;
    max-height: 62px !important;

    display: block !important;
}


/* Serveur : Service web */

.info-icon-web svg {
    width: 58px !important;
    height: 58px !important;
    max-width: 58px !important;
    max-height: 58px !important;

    display: block !important;
}


/* Couleurs des pastilles : inchangées */

.info-icon-domain {
    color: #1477e8 !important;
    background: #e8f3ff !important;
    border: 1px solid #cfe4f8 !important;
}

.info-icon-tech {
    color: #e0a000 !important;
    background: #fff1c7 !important;
    border: 1px solid #eed697 !important;
}

.info-icon-web {
    color: #536a7b !important;
    background: #edf2f5 !important;
    border: 1px solid #d9e4ea !important;
}


/* Casque : on conserve exactement son réglage actuel */

.help-icon {
    width: 76px !important;
    height: 76px !important;

    color: #0b3150 !important;
    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;
}

.help-icon svg {
    width: 58px !important;
    height: 58px !important;

    display: block !important;
}

/* EIS ICON SIZE FIX END */

/* EIS BRUSSELS HERO POSITION START */

/*
 * Bruxelles hero
 *
 * - bord droit exactement aligné sur les cartes
 * - carte d'Europe légèrement abaissée
 * - angles supérieur droit et inférieur droit arrondis
 *
 * Géométrie desktop :
 * hero max-width       : 1280px
 * information-grid     : 1200px
 * padding grid         : 32px
 * bord carte           : 40px + 32px = 72px
 */

.hero--with-image .hero-visual {
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;

    /*
     * 32px quand la fenêtre est plus étroite,
     * 72px lorsque le hero atteint 1280px.
     */
    right: max(
        32px,
        calc((100% - 1200px) / 2 + 32px)
    ) !important;

    /*
     * 43% déplace l'image vers le bas,
     * donc révèle davantage la partie supérieure
     * de l'illustration et notamment l'Angleterre.
     */
    background-position: right 43% !important;
    background-size: cover !important;

    /*
     * Même rayon visuel que les cartes actuelles.
     */
    border-radius: 0 16px 16px 0 !important;

    overflow: hidden !important;
}


.hero--with-image .hero-overlay {
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;

    right: max(
        32px,
        calc((100% - 1200px) / 2 + 32px)
    ) !important;

    border-radius: 0 16px 16px 0 !important;

    overflow: hidden !important;
}


/*
 * Sur petits écrans on revient au hero pleine largeur.
 */
@media (max-width: 800px) {

    .hero--with-image .hero-visual,
    .hero--with-image .hero-overlay {
        left: 0 !important;
        right: 0 !important;

        border-radius: 0 !important;
    }

}

/* EIS BRUSSELS HERO POSITION END */

/* EIS BRUSSELS FULL HEIGHT FIX START */

.hero--with-image .hero-visual {
    background-size: auto 100% !important;
    background-position: right center !important;
    background-repeat: no-repeat !important;
}

/* EIS BRUSSELS FULL HEIGHT FIX END */

/* EIS CONSULTING BLOCK START */

.hero-consulting {
    max-width: 570px;

    margin-top: 24px;
    padding: 21px 22px 22px;

    background: rgba(234, 244, 251, .90);

    border: 1px solid rgba(8, 120, 209, .14);
    border-left: 3px solid #d6a21d;
    border-radius: 12px;
}

.hero-consulting-kicker {
    margin: 0 0 6px;

    color: #123b5d;

    font-size: 15px;
    font-weight: 750;
    line-height: 1.3;
}

.hero-consulting-text {
    margin: 0;

    color: #5f6b73;

    font-size: 14px;
    line-height: 1.5;
}

.hero-consulting-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    margin-top: 9px;

    color: #0878d1;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}

.hero-consulting-link:hover {
    color: #0a84ff;

    text-decoration: underline;
    text-decoration-color: #d6a21d;
    text-underline-offset: 4px;
}

@media (max-width: 620px) {

    .hero-consulting {
        max-width: none;
        margin-top: 20px;
    }

}

/* EIS CONSULTING BLOCK END */

/* EIS HELP HEADSET SIZE START */

/*
 * Casque du bloc "Besoin d'aide ?"
 * Boîte conservée ; seul le dessin intérieur est agrandi.
 */

.help-icon {
    width: 86px !important;
    min-width: 86px !important;
    height: 86px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border: 0 !important;
}

.help-icon svg {
    width: 74px !important;
    height: 74px !important;

    max-width: 74px !important;
    max-height: 74px !important;

    display: block !important;
}

/* EIS HELP HEADSET SIZE END */

/* EIS FINAL POLISH START */

/*
 * Polissage final de la landing EIS.
 * Aucun changement structurel.
 */

/* ---------------------------------------------------------
   1. Casque légèrement plus présent
   --------------------------------------------------------- */

.help-icon {
    width: 92px !important;
    min-width: 92px !important;
    height: 92px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border: 0 !important;
}

.help-icon svg {
    width: 82px !important;
    height: 82px !important;

    max-width: 82px !important;
    max-height: 82px !important;

    display: block !important;
}


/* ---------------------------------------------------------
   2. Meilleur contraste des textes secondaires
   --------------------------------------------------------- */

.info-card p {
    color: #56646d !important;
}

.contact-copy p:last-child {
    color: #56646d !important;
}

.hero-consulting-text {
    color: #56646d !important;
}


/* ---------------------------------------------------------
   3. Bordures légèrement plus présentes
   --------------------------------------------------------- */

.info-card {
    border-color: #d5e1e8 !important;
}

.domain-contact-inner {
    border-color: #cddfea !important;
}

.hero-consulting {
    border-top-color: #cddfea !important;
    border-right-color: #cddfea !important;
    border-bottom-color: #cddfea !important;
}

/* EIS FINAL POLISH END */


/* EIS TECH SHIELD WIDTH FIX START */

/*
 * Bouclier volontairement plus large.
 * Hauteur conservée.
 * preserveAspectRatio="none" permet d'étirer réellement
 * le dessin horizontalement.
 */
.info-icon-tech svg {
    width: 72px !important;
    height: 62px !important;

    max-width: 72px !important;
    max-height: 62px !important;

    display: block !important;
}

/* EIS TECH SHIELD WIDTH FIX END */

/* EIS HELP HEADSET ALIGNMENT START */

/*
 * Aligne visuellement le bord droit du casque
 * avec le bord droit du cercle "Nom de domaine".
 * Aucun changement de taille.
 */
.help-icon {
    transform: translateX(-11px) !important;
}

/* EIS HELP HEADSET ALIGNMENT END */
