/*
Theme Name: Hello Elementor Child — ELANDRY
Description: Thème enfant du site ELANDRY
Author: Emma LANDRY
Author URI: https://elandry.fr
Template: hello-elementor
Version: 1.0.0
*/


.last-updated-date{
background-color:#f7d7d9;
text-align:center;
font-size:10px;
margin-top:0;
margin-bottom:30px;
padding: 10px 0;
}

.post-thumbnail {
margin-bottom:0px !important;
}

.wp-caption-text,
.sticky,
.gallery-caption,
.bypostauthor,
.main-page {}

  #PriceTable{
     border-collapse: collapse;
  }
  #PriceTable td{
     border: solid 2px #D7EAF8;
    border-right-style: none;
      border-left-style: none;
     padding: 10px;
     font-size: 14px;
  }

  #PriceTable th{
     border: solid 1px #c72c48;
     padding: 10px;
     color: #FFFFFF;
     background-color: #C72C48;
     font-size: 16px;
  }

.elandry-service{
display:flex;
justify-content: center;
align-items: center;
padding:10px;
}

.elandry-service .elandry-title{
padding:5px 15px 5px 15px;
text-transform : uppercase;
text-indent : 0%;
transform: translate(-20px, 40px) !important;
background-color:#C72C48;
width:200px;
color:white;
font-size:20px;
line-height:36px;
text-align:center;
}

.elandry-service .elandry-box{
height: auto;
min-height: 100px !important;
display:flex;
justify-content: center;
align-items: center;
padding:50px 15px 50px 15px;
max-width:400px;
border-radius: 50% 20% / 10% 40%;
border: 2px solid #D7EAF8;
color:#303030;
}


.elandry-accompagnement{
display:flex;
justify-content: center;
align-items: center;
padding:10px;
margin-top:15px;
margin-left:10px;
margin-right:10px;
}

.elandry-accompagnement .price{
width:70px;
padding:5px 15px 5px 15px;
background-color:#C72C48 !important;
color:white !important;
font-size:18px;
text-align:center;
border: 2px solid #C72C48;
margin: 0 auto;
border-radius: 50% 20% / 10% 40%;
display:flex;
justify-content: center;
align-items: center;
z-index: 100;
transform: translate(0px, -20px);
}

.elandry-accompagnement .elandry-title{
margin-bottom:0px !important;
padding:50px 15px 50px 15px;
text-transform : uppercase;
text-indent : 0%;
background-color:#D7EAF8;
color:#303030;
font-size:22px;
text-align:center;
border: 2px solid #D7EAF8;
border-bottom: 1px solid #C72C48 !important;
z-index:1;
max-width:400px;
min-width:250px;
}

.elandry-accompagnement .elandry-box{
margin-top:0px !important;
margin-bottom:0px !important;
height: auto;
min-height: 100px !important;
display:flex;
justify-content: center;
align-items: center;
padding:50px 15px 40px 15px;
border-top: 0px !important;
border: 2px solid #D7EAF8;
color:#303030;
z-index:1;
transform: translate(0px, -45px);
max-width:400px;
min-width:250px;
}








.one-half,
.one-third {
    position: relative;
    margin-right: 4%;
    float: left;
        margin-bottom: 20px;
 
}
 
.one-half { width: 48%; }
.one-third { width: 30.66%; }
 
.last {
    margin-right: 0 !important;
    clear: right;
}
 
@media only screen and (max-width: 767px) {
    .one-half, .one-third {
        width: 100%;
        margin-right: 0;
    }
}








/*Instructions pour le responsive*/
@media only screen and (min-width: 48em) { 
	.column-half{
		width: 50%;
	}
}



.elandry-accordion {
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    margin-bottom: 10px;
    padding: 0;
    overflow: hidden;
}

.elandry-accordion summary {
    cursor: pointer;
    font-weight: 600;
    padding: 14px 18px;
    background: #F8FAFC;
    list-style: none;
    position: relative;
    color: #1E3A8A;
}

/* Supprime la petite flèche moche par défaut du navigateur */
.elandry-accordion summary::-webkit-details-marker {
    display: none;
}

/* Notre propre flèche, avec rotation à l'ouverture */
.elandry-accordion summary::after {
    content: "\f107"; /* flèche Font Awesome "chevron-down" */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.2s ease;
}

.elandry-accordion[open] summary::after {
    transform: translateY(-50%) rotate(180deg);
}

.elandry-accordion > div {
    padding: 14px 18px;
    border-top: 1px solid #E2E8F0;
}


.elandry-jauge {
    margin: 16px 0;
}
.elandry-jauge-texte {
    font-size: 14px;
    margin-bottom: 6px;
}
.elandry-jauge-barre {
    background: #E2E8F0;
    border-radius: 20px;
    height: 10px;
    overflow: hidden;
}
.elandry-jauge-remplissage {
    background: #1E3A8A;
    height: 100%;
    border-radius: 20px;
    transition: width 0.3s ease;
}


.elandry-lookup-form label {
    display: block;
    margin-bottom: 14px;
    font-weight: 500;
}
.elandry-lookup-form input {
    width: 100%;
    max-width: 420px;
    padding: 10px 14px;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 15px;
    margin-top: 6px;
    box-sizing: border-box;
}
.elandry-lookup-form button {
    background: #1E3A8A;
    color: #fff;
    border: none;
    padding: 10px 22px;
    border-radius: 6px;
    font-size: 15px;
    cursor: pointer;
    margin-top: 8px;
}
.elandry-lookup-form button:hover {
    background: #1e40af;
}

.elandry-commande-recap {
    max-width: 600px;
}
.elandry-articles-table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0;
}
.elandry-articles-table th {
    text-align: left;
    padding: 8px;
    border-bottom: 2px solid #E2E8F0;
}
.elandry-articles-table td {
    padding: 8px;
    border-bottom: 1px solid #E2E8F0;
}
.elandry-total {
    text-align: right;
    font-weight: 600;
}
.elandry-point-relais {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    padding: 12px 16px;
    margin: 12px 0;
}
.elandry-retractation-box {
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    padding: 16px 18px;
    margin-top: 20px;
}
.elandry-btn-retractation {
    background: #B91C1C;
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 15px;
}
.elandry-btn-retractation:hover {
    background: #991B1B;
}
.elandry-retractation-confirmee {
    background: #F0FDF4;
    border: 1px solid #86EFAC;
    border-radius: 6px;
    padding: 16px 18px;
}





@font-face {
    font-family: 'Space Grotesk';
    src: url('assets/fonts/SpaceGrotesk-Medium.ttf') format('truetype');
    font-style: normal;
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Space Grotesk';
    src: url('assets/fonts/SpaceGrotesk-SemiBold.ttf') format('truetype');
    font-style: normal;
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Space Grotesk';
    src: url('assets/fonts/SpaceGrotesk-Bold.ttf') format('truetype');
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}



.elandry-kit-page h1,
.elandry-kit-page h2,
.elandry-kit-page h3,
.elandry-kit-page .kit-price {
    font-family: 'Space Grotesk', sans-serif;
}


/* =========================================================
   ELANDRY — KIT NUMÉRIQUE
   Hero
   ========================================================= */

.elandry-kit-page {
    --kit-ink: #09111f;
    --kit-brand: #1E3A8A;
    --kit-blue: #2563EB;
    --kit-steel: #B7C5DB;
    --kit-muted: #66758A;
    --kit-paper: #F5F7FB;
    --kit-line: rgba(21, 45, 83, 0.12);

    --kit-shadow:
        0 30px 80px rgba(10, 27, 56, 0.14);

    --kit-radius: 24px;
}


/* Neutralise les espacements du conteneur extérieur du hero */
.kit-hero-row {
    margin: 0 !important;
    padding: 0 !important;
}


/* HERO */

.elandry-kit-page .kit-hero {
    position: relative;
    overflow: hidden;

    padding:
        clamp(60px, 7vw, 95px)
        0
        clamp(70px, 8vw, 105px);

    color: var(--kit-ink);

    background:
        radial-gradient(
            circle at 88% 15%,
            rgba(37, 99, 235, 0.14),
            transparent 30rem
        ),
        radial-gradient(
            circle at 10% 0%,
            rgba(183, 197, 219, 0.20),
            transparent 26rem
        ),
        linear-gradient(
            180deg,
            #fbfcff 0%,
            #f5f8fc 100%
        );
}


/* Grille techno très discrète */

.elandry-kit-page .kit-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.18;

    background-image:
        linear-gradient(
            rgba(30, 58, 138, 0.04) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(30, 58, 138, 0.04) 1px,
            transparent 1px
        );

    background-size: 42px 42px;

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            black,
            transparent 85%
        );

    mask-image:
        linear-gradient(
            to bottom,
            black,
            transparent 85%
        );
}


/* Largeur intérieure */

.elandry-kit-page .kit-shell {
    position: relative;
    z-index: 2;

    width: min(
        1180px,
        calc(100% - 48px)
    );

    margin-inline: auto;
}


/* Deux colonnes */

.elandry-kit-page .kit-hero__grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.03fr)
        minmax(0, 0.97fr);

    align-items: center;

    gap: clamp(
        45px,
        5vw,
        75px
    );
}


/* =========================================================
   TEXTE HERO
   ========================================================= */

.elandry-kit-page .kit-eyebrow {
    display: flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 22px;

    color: var(--kit-brand);

    font-family: "Space Grotesk", sans-serif;
    font-size: 12px;
    font-weight: 600;

    line-height: 1.4;

    letter-spacing: 0.12em;

    text-transform: uppercase;
}


.elandry-kit-page .kit-eyebrow__dot {
    display: block;

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--kit-blue);

    box-shadow:
        0 0 14px
        rgba(37, 99, 235, 0.65);
}


.elandry-kit-page .kit-hero__title {
    max-width: 780px;

    margin:
        0
        0
        26px;

    color: var(--kit-ink);

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size:
        clamp(
            46px,
            5.5vw,
            76px
        );

    font-weight: 600;

    line-height: 1.02;

    letter-spacing: -0.045em;
}


/* Partie métallique du H1 */

.elandry-kit-page .kit-hero__title span {
    display: block;

    color: transparent;

    background:
        linear-gradient(
            95deg,
            #1E3A8A 0%,
            #416fcf 48%,
            #91a9cc 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}


.elandry-kit-page .kit-hero__lead {
    max-width: 620px;

    margin: 0;

    color: #526076;

    font-size:
        clamp(
            16px,
            1.45vw,
            19px
        );

    line-height: 1.68;
}


/* =========================================================
   BOUTONS
   ========================================================= */

.elandry-kit-page .kit-hero__actions {
    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 14px;

    margin-top: 31px;
    margin-bottom: 27px;
}


.elandry-kit-page .kit-btn {
    display: inline-flex;

    min-height: 50px;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding:
        0
        23px;

    border-radius: 13px;

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

    line-height: 1;

    text-decoration: none !important;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}


.elandry-kit-page .kit-btn:hover {
    transform:
        translateY(-2px);

    text-decoration: none;
}


/* Bouton bleu métallique */

.elandry-kit-page .kit-btn--primary {
    color: #fff !important;

    background:
        linear-gradient(
            115deg,
            rgba(255, 255, 255, 0.17),
            transparent 36%
        ),
        linear-gradient(
            135deg,
            #3268ff 0%,
            #1E3A8A 70%,
            #12265e 100%
        );

    box-shadow:
        0 15px 36px
        rgba(30, 58, 138, 0.25),
        inset
        0 1px 0
        rgba(255, 255, 255, 0.22);
}


.elandry-kit-page .kit-btn--primary:hover {
    color: #fff !important;

    box-shadow:
        0 18px 42px
        rgba(30, 58, 138, 0.33),
        inset
        0 1px 0
        rgba(255, 255, 255, 0.22);
}


/* Deuxième CTA discret */

.elandry-kit-page .kit-btn--secondary {
    padding-left: 10px;
    padding-right: 10px;

    color: var(--kit-brand) !important;

    background: transparent;
}


.elandry-kit-page .kit-btn--secondary span {
    transition:
        transform 0.2s ease;
}


.elandry-kit-page .kit-btn--secondary:hover span {
    transform:
        translateX(4px);
}


/* =========================================================
   PRIX / RÉASSURANCE
   ========================================================= */

.elandry-kit-page .kit-price {
    display: flex;

    flex-wrap: wrap;

    align-items: baseline;

    gap: 14px;
}


.elandry-kit-page .kit-price strong {
    color: var(--kit-ink);

    font-family:
        "Space Grotesk",
        sans-serif;

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

    letter-spacing:
        -0.025em;
}


.elandry-kit-page .kit-price span {
    color: var(--kit-muted);

    font-size: 12px;
}


.elandry-kit-page .kit-trust {
    display: flex;

    flex-wrap: wrap;

    gap:
        8px
        18px;

    margin-top: 20px;

    color: var(--kit-muted);

    font-size: 12px;
    font-weight: 500;
}


/* =========================================================
   VISUEL PRODUIT
   ========================================================= */

.elandry-kit-page .kit-hero__visual {
    position: relative;
}


.elandry-kit-page .kit-product-frame {
    position: relative;

    padding: 13px;

    border-radius: 34px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.96),
            rgba(183, 197, 219, 0.42) 38%,
            rgba(255, 255, 255, 0.86) 63%,
            rgba(123, 146, 184, 0.30)
        );

    box-shadow:
        var(--kit-shadow),
        inset
        0 1px 0
        rgba(255, 255, 255, 1);
}


/* Bordure intérieure métallique */

.elandry-kit-page .kit-product-frame::after {
    content: "";

    position: absolute;

    inset: 13px;

    z-index: 2;

    pointer-events: none;

    border:
        1px solid
        rgba(255, 255, 255, 0.62);

    border-radius: 23px;
}


.elandry-kit-page .kit-product-frame img {
    display: block;

    width: 100%;

    height: auto;

    aspect-ratio: 1.22 / 1;

    object-fit: cover;

    border-radius: 23px;
}


/* Petit reflet */

.elandry-kit-page .kit-frame-shine {
    position: absolute;

    z-index: 4;

    top: 15px;
    left: 15%;

    width: 34%;
    height: 2px;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, 0.88),
            transparent
        );
}


/* =========================================================
   CARTES FLOTTANTES
   ========================================================= */

.elandry-kit-page .kit-floating-card {
    position: absolute;

    z-index: 6;

    display: flex;

    align-items: center;

    gap: 11px;

    min-width: 178px;

    padding:
        12px
        14px;

    border:
        1px solid
        rgba(255, 255, 255, 0.75);

    border-radius: 15px;

    background:
        rgba(250, 252, 255, 0.88);

    -webkit-backdrop-filter:
        blur(16px);

    backdrop-filter:
        blur(16px);

    box-shadow:
        0 20px 50px
        rgba(14, 31, 63, 0.15);
}


.elandry-kit-page .kit-floating-card--top {
    top: 42px;
    right: -25px;
}


.elandry-kit-page .kit-floating-card--bottom {
    bottom: 48px;
    left: -32px;
}


.elandry-kit-page .kit-floating-card > span:last-child {
    display: block;
}


.elandry-kit-page .kit-floating-card strong,
.elandry-kit-page .kit-floating-card small {
    display: block;
}


.elandry-kit-page .kit-floating-card strong {
    color: var(--kit-ink);

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.15;
    margin: 0;
}

.elandry-kit-page .kit-floating-card small {
    margin-top: 0;

    color: var(--kit-muted);

    font-size: 10px;
    line-height: 1.15;
}


.elandry-kit-page .kit-floating-icon {
    display: grid;

    flex:
        0
        0
        32px;

    width: 32px;
    height: 32px;

    place-items: center;

    border-radius: 9px;

    color: #fff;

    background:
        linear-gradient(
            145deg,
            #416dce,
            #172f70
        );

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 10px;
    font-weight: 600;
}


/* =========================================================
   TABLETTE
   ========================================================= */

@media (max-width: 980px) {

    .elandry-kit-page .kit-hero__grid {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .elandry-kit-page .kit-hero__copy {
        max-width: 760px;
    }

    .elandry-kit-page .kit-hero__visual {
        max-width: 760px;
    }

    .elandry-kit-page .kit-floating-card--top {
        right: 10px;
    }

    .elandry-kit-page .kit-floating-card--bottom {
        left: 10px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 680px) {

    .elandry-kit-page .kit-hero {
        padding:
            46px
            0
            62px;
    }

    .elandry-kit-page .kit-shell {
        width:
            min(
                calc(100% - 28px),
                1180px
            );
    }

    .elandry-kit-page .kit-eyebrow {
        font-size: 10px;
    }

    .elandry-kit-page .kit-hero__title {
        font-size:
            clamp(
                42px,
                12vw,
                55px
            );

        letter-spacing:
            -0.04em;
    }

    .elandry-kit-page .kit-hero__lead {
        font-size: 16px;
    }

    .elandry-kit-page .kit-hero__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .elandry-kit-page .kit-btn {
        width: 100%;
    }

    .elandry-kit-page .kit-btn--secondary {
        min-height: 42px;
    }

    .elandry-kit-page .kit-trust {
        flex-direction: column;

        gap: 6px;
    }

    .elandry-kit-page .kit-product-frame {
        padding: 8px;

        border-radius: 23px;
    }

    .elandry-kit-page .kit-product-frame img {
        border-radius: 17px;
    }

    .elandry-kit-page .kit-product-frame::after {
        inset: 8px;

        border-radius: 17px;
    }

    .elandry-kit-page .kit-floating-card {
        display: none;
    }

}


/* =========================================================
   BANDEAU DÉFILANT — RÉASSURANCE
   ========================================================= */

.kit-marquee-row {
    margin: 0 !important;
    padding: 0 !important;
}

.elandry-kit-page .kit-marquee {
    position: relative;
    overflow: hidden;

    width: 100%;

    color: rgba(255,255,255,.82);

    background:
        linear-gradient(
            90deg,
            #08111f 0%,
            #102455 50%,
            #08111f 100%
        );

    border-top:
        1px solid
        rgba(255,255,255,.08);

    border-bottom:
        1px solid
        rgba(255,255,255,.08);
}


/* Légère disparition sur les bords */

.elandry-kit-page .kit-marquee::before,
.elandry-kit-page .kit-marquee::after {
    content: "";

    position: absolute;
    z-index: 2;

    top: 0;
    bottom: 0;

    width: 80px;

    pointer-events: none;
}

.elandry-kit-page .kit-marquee::before {
    left: 0;

    background:
        linear-gradient(
            90deg,
            #08111f,
            transparent
        );
}

.elandry-kit-page .kit-marquee::after {
    right: 0;

    background:
        linear-gradient(
            -90deg,
            #08111f,
            transparent
        );
}


.elandry-kit-page .kit-marquee__track {
    display: flex;

    width: max-content;

    animation:
        kit-marquee-scroll
        32s
        linear
        infinite;
}


.elandry-kit-page .kit-marquee__group {
    display: flex;

    flex-shrink: 0;

    align-items: center;

    gap: 24px;

    padding:
        15px
        12px;

    white-space: nowrap;
}


.elandry-kit-page .kit-marquee span {
    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 12px;

    font-weight: 500;

    letter-spacing: 0.025em;
}


.elandry-kit-page .kit-marquee i {
    color: #6f91ef;

    font-style: normal;

    font-size: 15px;
}


/* Pause au survol sur desktop */

.elandry-kit-page .kit-marquee:hover
.kit-marquee__track {
    animation-play-state: paused;
}


@keyframes kit-marquee-scroll {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* Accessibilité : pas de mouvement imposé
   aux personnes qui ont désactivé les animations */

@media (prefers-reduced-motion: reduce) {

    .elandry-kit-page .kit-marquee__track {
        width: 100%;

        animation: none;
    }

    .elandry-kit-page .kit-marquee__group {
        flex-wrap: wrap;

        justify-content: center;

        white-space: normal;
    }

    .elandry-kit-page
    .kit-marquee__group[aria-hidden="true"] {
        display: none;
    }

}


/* Mobile */

@media (max-width: 680px) {

    .elandry-kit-page .kit-marquee__group {
        gap: 18px;

        padding-top: 13px;
        padding-bottom: 13px;
    }

    .elandry-kit-page .kit-marquee span {
        font-size: 11px;
    }

}


/* =========================================================
   INTRO — VERSION ALIGNÉE À GAUCHE + VISUEL À DROITE
   ========================================================= */

.kit-intro-row {
    margin: 0 !important;
    padding: 0 !important;
}

.elandry-kit-page .kit-intro {
    position: relative;
    overflow: hidden;

    padding:
        clamp(90px, 10vw, 140px)
        0;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8faff 100%
        );
}

.elandry-kit-page .kit-intro::before {
    content: "";

    position: absolute;

    top: 50%;
    right: 8%;

    width: 520px;
    height: 520px;

    transform: translateY(-50%);

    border-radius: 50%;

    pointer-events: none;

    background:
        radial-gradient(
            circle,
            rgba(37, 99, 235, 0.06),
            transparent 70%
        );
}

.elandry-kit-page .kit-intro__shell {
    position: relative;
    z-index: 2;

    width: min(1180px, calc(100% - 48px));
    margin-inline: auto;
}

.elandry-kit-page .kit-intro__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: clamp(36px, 5vw, 70px);
    align-items: center;
}

.elandry-kit-page .kit-intro__text-col {
    max-width: 680px;
}

.elandry-kit-page .kit-intro__eyebrow {
    margin-bottom: 22px;

    color: var(--kit-brand);

    font-family: "Space Grotesk", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.elandry-kit-page .kit-intro__title {
    margin: 0 0 30px;

    color: var(--kit-ink);

    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(38px, 4.5vw, 58px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.035em;
}

.elandry-kit-page .kit-intro__title span {
    color: var(--kit-brand);
}

.elandry-kit-page .kit-intro__text p {
    margin: 0 0 16px;

    color: var(--kit-muted);

    font-size: clamp(16px, 1.4vw, 18px);
    line-height: 1.72;
}

.elandry-kit-page .kit-intro__highlight {
    margin-top: 30px !important;

    color: var(--kit-ink) !important;

    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(19px, 2vw, 23px) !important;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: -0.015em;
}

.elandry-kit-page .kit-intro__highlight strong {
    color: var(--kit-brand);
    font-weight: 600;
}

.elandry-kit-page .kit-intro__visual-col {
    display: flex;
    justify-content: center;
}

.elandry-kit-page .kit-intro__visual-card {
    position: relative;

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

    padding: 14px;

    border-radius: 26px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,0.96),
            rgba(183,197,219,0.42) 38%,
            rgba(255,255,255,0.86) 63%,
            rgba(123,146,184,0.30)
        );

    box-shadow:
        0 24px 60px rgba(10, 27, 56, 0.12),
        inset 0 1px 0 rgba(255,255,255,1);
}

.elandry-kit-page .kit-intro__visual-card::after {
    content: "";

    position: absolute;
    inset: 14px;

    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.65);

    pointer-events: none;
}

.elandry-kit-page .kit-intro__visual-card img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 18px;
}

/* Tablette */
@media (max-width: 980px) {
    .elandry-kit-page .kit-intro__content {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .elandry-kit-page .kit-intro__text-col {
        max-width: 100%;
    }

    .elandry-kit-page .kit-intro__visual-col {
        justify-content: flex-start;
    }

    .elandry-kit-page .kit-intro__visual-card {
        max-width: 360px;
    }
}

/* Mobile */
@media (max-width: 680px) {
    .elandry-kit-page .kit-intro {
        padding: 72px 0;
    }

    .elandry-kit-page .kit-intro__shell {
        width: min(100% - 28px, 1180px);
    }

    .elandry-kit-page .kit-intro__title {
        font-size: clamp(34px, 10vw, 45px);
    }

    .elandry-kit-page .kit-intro__visual-card {
        max-width: 100%;
    }
}


/* =========================================================
   SECTION 6 CARTES — CONTENU DU KIT
   ========================================================= */

.kit-features-row {
    margin: 0 !important;
    padding: 0 !important;
}

.elandry-kit-page .kit-features {
    position: relative;
    overflow: hidden;

    padding:
        clamp(90px, 10vw, 130px)
        0;

    color: #ffffff;

    background:
        radial-gradient(
            circle at 90% 15%,
            rgba(58, 105, 224, 0.20),
            transparent 28rem
        ),
        linear-gradient(
            145deg,
            #08111f,
            #0d1a30 55%,
            #0a1425
        );
}

.elandry-kit-page .kit-features::before {
    content: "";
    position: absolute;
    inset: 0;

    opacity: 0.07;
    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(255,255,255,.6) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.6) 1px,
            transparent 1px
        );

    background-size: 60px 60px;
}

.elandry-kit-page .kit-features .kit-shell {
    position: relative;
    z-index: 2;
}

/* Petit label section */
.elandry-kit-page .kit-section-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 18px;

    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.elandry-kit-page .kit-section-label::before {
    content: "";
    display: block;

    width: 7px;
    height: 7px;

    border-radius: 50%;
}

.elandry-kit-page .kit-section-label--light {
    color: #9db6ff;
}

.elandry-kit-page .kit-section-label--light::before {
    background: #7da2ff;
    box-shadow: 0 0 14px rgba(125,162,255,.65);
}

/* Head */
.elandry-kit-page .kit-features__head {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
    gap: 50px;
    align-items: end;

    margin-bottom: 42px;
}

.elandry-kit-page .kit-features__title {
    margin: 0;

    color: #fff;

    font-size: clamp(36px, 4vw, 54px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.035em;
}

.elandry-kit-page .kit-features__text p {
    margin: 0;
    color: #aebbd0;
    font-size: 16px;
    line-height: 1.7;
}

/* Grille */
.elandry-kit-page .kit-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

/* Carte */
.elandry-kit-page .kit-card {
    position: relative;
    overflow: hidden;

    min-height: 300px;

    padding: 28px 28px 56px;

    border: 1px solid rgba(255,255,255,.10);
    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.07),
            rgba(255,255,255,.025)
        );
}

.elandry-kit-page .kit-card::after {
    content: "";
    position: absolute;

    width: 180px;
    height: 180px;

    right: -100px;
    bottom: -100px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(64,105,226,.28),
            transparent 70%
        );
}

/* Numéro */
.elandry-kit-page .kit-card__number {
    position: absolute;
    top: 24px;
    right: 24px;

    color: #6d7d96;

    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.04em;
}

/* Icône */
.elandry-kit-page .kit-card__icon {
    position: relative;

    display: grid;
    place-items: center;

    width: 46px;
    height: 46px;

    margin-bottom: 42px;

    border-radius: 13px;

    color: #fff;

    background:
        linear-gradient(
            145deg,
            #3f6dd2,
            #162e6a
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.28);
}

.elandry-kit-page .kit-card__icon i {
    font-size: 18px;
    line-height: 1;
}

/* Téléphone barré */
.elandry-kit-page .kit-card__icon--slashed::after {
    content: "";

    position: absolute;

    width: 26px;
    height: 2px;

    background: rgba(255,255,255,.95);

    transform: rotate(-45deg);

    border-radius: 999px;
}

/* Titre carte */
.elandry-kit-page .kit-card__title {
    margin: 0 0 14px;

    color: #fff;

    font-size: 23px;
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -0.02em;
}

/* Texte carte */
.elandry-kit-page .kit-card__text {
    margin: 0;

    color: #aeb8c9;

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

/* Label carte */
.elandry-kit-page .kit-card__label {
    position: absolute;
    left: 28px;
    bottom: 24px;

    color: #7699ef;

    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

/* Tablette */
@media (max-width: 980px) {
    .elandry-kit-page .kit-features__head {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .elandry-kit-page .kit-cards-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 680px) {
    .elandry-kit-page .kit-features {
        padding: 74px 0;
    }

    .elandry-kit-page .kit-cards-grid {
        grid-template-columns: 1fr;
    }

    .elandry-kit-page .kit-card {
        min-height: 260px;
        padding: 24px 22px 52px;
    }

    .elandry-kit-page .kit-card__label {
        left: 22px;
        bottom: 20px;
    }

    .elandry-kit-page .kit-features__title {
        font-size: clamp(32px, 9vw, 42px);
    }
}


/* =========================================================
   BLOC ACHAT / CONVERSION
   ========================================================= */

.kit-buy-row {
    margin: 0 !important;
    padding: 0 !important;
}


.elandry-kit-page .kit-buy {
    position: relative;

    padding:
        clamp(90px, 10vw, 135px)
        0;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #f5f8fc 0%,
            #edf3fb 100%
        );
}


.elandry-kit-page .kit-buy__panel {
    display: grid;

    grid-template-columns:
        minmax(0, .92fr)
        minmax(0, 1.08fr);

    overflow: hidden;

    border:
        1px solid
        rgba(21,45,83,.11);

    border-radius: 30px;

    background:
        rgba(255,255,255,.96);

    box-shadow:
        0 30px 80px
        rgba(10,27,56,.13);
}


/* =========================================================
   IMAGE
   ========================================================= */

.elandry-kit-page .kit-buy__visual {
    position: relative;

    min-height: 650px;

    overflow: hidden;

    background: #e8edf5;
}


.elandry-kit-page .kit-buy__visual::after {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            135deg,
            transparent 55%,
            rgba(9,17,31,.07)
        );
}


.elandry-kit-page .kit-buy__visual img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.elandry-kit-page .kit-buy__badge {
    position: absolute;

    z-index: 2;

    top: 24px;
    left: 24px;

    padding:
        9px
        14px;

    border:
        1px solid
        rgba(255,255,255,.75);

    border-radius: 999px;

    color: var(--kit-ink);

    background:
        rgba(255,255,255,.86);

    -webkit-backdrop-filter:
        blur(12px);

    backdrop-filter:
        blur(12px);

    box-shadow:
        0 12px 30px
        rgba(10,27,56,.10);

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

    letter-spacing: .08em;

    text-transform: uppercase;
}


/* =========================================================
   CONTENU
   ========================================================= */

.elandry-kit-page .kit-buy__content {
    padding:
        clamp(
            38px,
            5vw,
            62px
        );
}


.elandry-kit-page .kit-buy__title {
    max-width: 560px;

    margin:
        0
        0
        20px;

    color: var(--kit-ink);

    font-size:
        clamp(
            38px,
            4vw,
            52px
        );

    font-weight: 600;

    line-height: 1.08;

    letter-spacing: -.035em;
}


.elandry-kit-page .kit-buy__lead {
    max-width: 580px;

    margin:
        0
        0
        30px;

    color: var(--kit-muted);

    font-size: 16px;

    line-height: 1.7;
}


/* =========================================================
   LISTE
   ========================================================= */

.elandry-kit-page .kit-buy__list {
    display: grid;

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

    gap:
        12px
        20px;

    margin-bottom: 34px;
}


.elandry-kit-page .kit-buy__list > div {
    display: flex;

    align-items: flex-start;

    gap: 9px;

    color: #39465b;

    font-size: 13px;

    font-weight: 500;

    line-height: 1.45;
}


.elandry-kit-page .kit-buy__list i {
    flex: 0 0 auto;

    margin-top: 3px;

    color: var(--kit-brand);

    font-size: 11px;
}


/* =========================================================
   PRIX
   ========================================================= */

.elandry-kit-page .kit-buy__price {
    display: flex;

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

    gap: 20px;

    padding-top: 26px;

    border-top:
        1px solid
        var(--kit-line);
}


.elandry-kit-page .kit-buy__price-main {
    display: flex;

    align-items: baseline;

    gap: 8px;
}


.elandry-kit-page .kit-buy__price strong {
    color: var(--kit-ink);

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size:
        clamp(
            36px,
            4vw,
            46px
        );

    font-weight: 600;

    line-height: 1;
}


.elandry-kit-page .kit-buy__price-main span {
    color: var(--kit-muted);

    font-size: 12px;

    font-weight: 600;
}


.elandry-kit-page .kit-buy__price p {
    max-width: 220px;

    margin: 0;

    color: var(--kit-muted);

    font-size: 11px;

    line-height: 1.45;

    text-align: right;
}


/* =========================================================
   ZONE WOOCOMMERCE
   ========================================================= */

.elandry-kit-page .kit-buy__woocommerce {
    margin-top: 24px;
}


/* On neutralise le style un peu daté du shortcode Woo */
.elandry-kit-page
.kit-buy__woocommerce
.add_to_cart_inline {
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
}


/* Prix Woo masqué au cas où */
.elandry-kit-page
.kit-buy__woocommerce
.add_to_cart_inline
.woocommerce-Price-amount {
    display: none !important;
}


/* Vrai bouton WooCommerce */
.elandry-kit-page
.kit-buy__woocommerce
.button {
    display: flex !important;

    width: 100%;

    min-height: 56px;

    align-items: center;
    justify-content: center;

    margin: 0 !important;

    padding:
        0
        25px !important;

    border: 0 !important;

    border-radius:
        14px !important;

    color:
        #fff !important;

    background:
        linear-gradient(
            115deg,
            rgba(255,255,255,.17),
            transparent 36%
        ),
        linear-gradient(
            135deg,
            #3268ff 0%,
            #1E3A8A 70%,
            #12265e 100%
        ) !important;

    box-shadow:
        0 15px 36px
        rgba(30,58,138,.25),
        inset
        0 1px 0
        rgba(255,255,255,.22);

    font-size:
        15px !important;

    font-weight:
        600 !important;

    line-height:
        1 !important;

    text-transform:
        none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.elandry-kit-page
.kit-buy__woocommerce
.button:hover {
    transform:
        translateY(-2px);

    color:
        #fff !important;

    box-shadow:
        0 20px 44px
        rgba(30,58,138,.33),
        inset
        0 1px 0
        rgba(255,255,255,.22);
}


/* =========================================================
   RÉASSURANCE
   ========================================================= */

.elandry-kit-page .kit-buy__reassurance {
    display: flex;

    flex-wrap: wrap;

    justify-content: center;

    gap:
        10px
        22px;

    margin-top: 18px;

    color: var(--kit-muted);

    font-size: 11px;
}


.elandry-kit-page
.kit-buy__reassurance span {
    display: inline-flex;

    align-items: center;

    gap: 7px;
}


.elandry-kit-page
.kit-buy__reassurance i {
    color: var(--kit-brand);
}


/* =========================================================
   TABLETTE
   ========================================================= */

@media (max-width: 980px) {

    .elandry-kit-page
    .kit-buy__panel {
        grid-template-columns:
            1fr;
    }


    .elandry-kit-page
    .kit-buy__visual {
        min-height:
            500px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 680px) {

    .elandry-kit-page .kit-buy {
        padding:
            72px
            0;
    }


    .elandry-kit-page
    .kit-buy__panel {
        border-radius: 22px;
    }


    .elandry-kit-page
    .kit-buy__visual {
        min-height: 330px;
    }


    .elandry-kit-page
    .kit-buy__content {
        padding:
            34px
            23px;
    }


    .elandry-kit-page
    .kit-buy__list {
        grid-template-columns:
            1fr;
    }


    .elandry-kit-page
    .kit-buy__price {
        align-items: flex-start;
        flex-direction: column;
    }


    .elandry-kit-page
    .kit-buy__price p {
        max-width: none;

        text-align: left;
    }

}


/* =========================================================
   RISQUES → SOLUTIONS
   ========================================================= */

.kit-risks-row {
    margin: 0 !important;
    padding: 0 !important;
}


.elandry-kit-page .kit-risks {
    position: relative;
    overflow: hidden;

    padding:
        clamp(90px, 10vw, 140px)
        0;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f5f8fc 100%
        );
}


/* Halo discret */

.elandry-kit-page .kit-risks::before {
    content: "";

    position: absolute;

    top: 100px;
    right: -180px;

    width: 520px;
    height: 520px;

    border-radius: 50%;

    pointer-events: none;

    background:
        radial-gradient(
            circle,
            rgba(37,99,235,.07),
            transparent 70%
        );
}


/* =========================================================
   INTRO
   ========================================================= */

.elandry-kit-page .kit-risks__head {
    position: relative;
    z-index: 2;

    max-width: 800px;

    margin-bottom:
        clamp(45px, 6vw, 70px);
}


.elandry-kit-page .kit-risks__title {
    margin:
        0
        0
        22px;

    color: var(--kit-ink);

    font-size:
        clamp(
            38px,
            4.5vw,
            58px
        );

    font-weight: 600;

    line-height: 1.06;

    letter-spacing: -.035em;
}


.elandry-kit-page .kit-risks__title span {
    color: var(--kit-brand);
}


.elandry-kit-page .kit-risks__lead {
    max-width: 690px;

    margin: 0;

    color: var(--kit-muted);

    font-size: 17px;

    line-height: 1.7;
}


/* =========================================================
   LISTE
   ========================================================= */

.elandry-kit-page .kit-risks__list {
    position: relative;
    z-index: 2;

    border-top:
        1px solid
        var(--kit-line);
}


/* Une ligne = un risque */

.elandry-kit-page .kit-risk {
    position: relative;

    display: grid;

    grid-template-columns:
        80px
        minmax(0, 1fr)
        minmax(240px, 310px);

    gap:
        clamp(
            25px,
            4vw,
            55px
        );

    align-items: center;

    padding:
        clamp(30px, 4vw, 46px)
        8px;

    border-bottom:
        1px solid
        var(--kit-line);

    transition:
        padding-left .25s ease,
        background-color .25s ease;
}


.elandry-kit-page .kit-risk:hover {
    padding-left: 18px;

    background:
        rgba(255,255,255,.48);
}


/* =========================================================
   NUMÉRO
   ========================================================= */

.elandry-kit-page .kit-risk__number {
    color: transparent;

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size:
        clamp(
            40px,
            5vw,
            60px
        );

    font-weight: 600;

    line-height: 1;

    letter-spacing: -.06em;

    -webkit-text-stroke:
        1px
        #b6c4d9;
}


/* =========================================================
   TEXTE RISQUE
   ========================================================= */

.elandry-kit-page .kit-risk__meta {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 13px;
}


.elandry-kit-page .kit-risk__icon {
    display: grid;

    width: 30px;
    height: 30px;

    place-items: center;

    border-radius: 8px;

    color: var(--kit-brand);

    background:
        rgba(30,58,138,.07);
}


.elandry-kit-page .kit-risk__icon i {
    font-size: 12px;
}


.elandry-kit-page .kit-risk__category {
    color: var(--kit-brand);

    font-family:
        "JetBrains Mono",
        monospace;

    font-size: 10px;

    font-weight: 500;

    letter-spacing: .12em;

    text-transform: uppercase;
}


.elandry-kit-page .kit-risk__content h3 {
    max-width: 610px;

    margin:
        0
        0
        13px;

    color: var(--kit-ink);

    font-size:
        clamp(
            21px,
            2.1vw,
            27px
        );

    font-weight: 600;

    line-height: 1.22;

    letter-spacing: -.025em;
}


.elandry-kit-page .kit-risk__content p {
    max-width: 650px;

    margin: 0;

    color: var(--kit-muted);

    font-size: 14px;

    line-height: 1.7;
}


.elandry-kit-page .kit-risk__content strong {
    color: #45536b;

    font-weight: 600;
}


/* =========================================================
   COLONNE SOLUTION
   ========================================================= */

.elandry-kit-page .kit-risk__answer {
    position: relative;

    padding-left: 37px;
}


/* Petite ligne / flèche */

.elandry-kit-page .kit-risk__answer::before {
    content: "";

    position: absolute;

    top: 50%;
    left: 0;

    width: 21px;
    height: 1px;

    background:
        linear-gradient(
            90deg,
            #9bacc5,
            var(--kit-brand)
        );
}


.elandry-kit-page .kit-risk__answer::after {
    content: "";

    position: absolute;

    top: calc(50% - 3px);
    left: 17px;

    width: 6px;
    height: 6px;

    border-top:
        1px solid
        var(--kit-brand);

    border-right:
        1px solid
        var(--kit-brand);

    transform:
        rotate(45deg);
}


.elandry-kit-page .kit-risk__answer-label {
    display: block;

    margin-bottom: 8px;

    color: #8897ac;

    font-family:
        "JetBrains Mono",
        monospace;

    font-size: 9px;

    font-weight: 500;

    letter-spacing: .13em;

    text-transform: uppercase;
}


/* Capsule bleue */

.elandry-kit-page .kit-risk__solution {
    display: flex;

    align-items: center;

    gap: 12px;

    padding:
        14px
        15px;

    overflow: hidden;

    border:
        1px solid
        rgba(30,58,138,.10);

    border-radius: 14px;

    color: var(--kit-ink);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.95),
            rgba(226,234,248,.88)
        );

    box-shadow:
        0 10px 28px
        rgba(10,27,56,.06);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.elandry-kit-page .kit-risk:hover
.kit-risk__solution {
    transform:
        translateX(3px);

    box-shadow:
        0 14px 35px
        rgba(10,27,56,.10);
}


.elandry-kit-page .kit-risk__solution > i {
    display: grid;

    flex:
        0
        0
        38px;

    width: 38px;
    height: 38px;

    place-items: center;

    border-radius: 10px;

    color: #fff;

    background:
        linear-gradient(
            145deg,
            #416dce,
            #172f70
        );

    box-shadow:
        inset
        0 1px 0
        rgba(255,255,255,.25);

    font-size: 14px;
}


.elandry-kit-page .kit-risk__solution span {
    min-width: 0;
}


.elandry-kit-page .kit-risk__solution strong,
.elandry-kit-page .kit-risk__solution small {
    display: block;
}


.elandry-kit-page .kit-risk__solution strong {
    color: var(--kit-ink);

    font-size: 13px;

    font-weight: 600;

    line-height: 1.3;
}


.elandry-kit-page .kit-risk__solution small {
    margin-top: 3px;

    color: var(--kit-muted);

    font-size: 10px;

    line-height: 1.35;
}


/* =========================================================
   TABLETTE
   ========================================================= */

@media (max-width: 980px) {

    .elandry-kit-page .kit-risk {
        grid-template-columns:
            60px
            minmax(0, 1fr);

        gap:
            20px
            28px;
    }


    .elandry-kit-page .kit-risk__answer {
        grid-column:
            2;

        width: min(100%, 330px);

        margin-top: 6px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 680px) {

    .elandry-kit-page .kit-risks {
        padding:
            72px
            0;
    }


    .elandry-kit-page .kit-risks__title {
        font-size:
            clamp(
                34px,
                10vw,
                44px
            );
    }


    .elandry-kit-page .kit-risk {
        display: block;

        padding:
            32px
            0;
    }


    .elandry-kit-page .kit-risk:hover {
        padding-left: 0;
    }


    .elandry-kit-page .kit-risk__number {
        margin-bottom: 22px;

        font-size: 42px;
    }


    .elandry-kit-page .kit-risk__answer {
        width: 100%;

        margin-top: 24px;

        padding-left: 0;
    }


    .elandry-kit-page .kit-risk__answer::before,
    .elandry-kit-page .kit-risk__answer::after {
        display: none;
    }


    .elandry-kit-page .kit-risk__solution {
        width: 100%;
    }

}

/* =========================================================
   POURQUOI ELANDRY
   ========================================================= */

.kit-brand-row {
    margin: 0 !important;
    padding: 0 !important;
}

.elandry-kit-page .kit-brand {
    position: relative;
    overflow: hidden;

    padding:
        clamp(90px, 10vw, 135px)
        0;

    background: #f4f7fb;
}

.elandry-kit-page .kit-brand__grid {
    display: grid;

    grid-template-columns:
        minmax(280px, .58fr)
        minmax(0, 1.42fr);

    gap:
        clamp(45px, 7vw, 85px);

    align-items: center;
}


/* 404 */

.elandry-kit-page .kit-brand__visual span {
    display: block;

    color: transparent;

    font-size:
        clamp(
            120px,
            16vw,
            220px
        );

    font-weight: 700;

    line-height: .8;

    letter-spacing: -.08em;

    -webkit-text-stroke:
        1px
        #bac7db;
}


/* Texte */

.elandry-kit-page .kit-brand__title {
    max-width: 720px;

    margin:
        0
        0
        26px;

    color: var(--kit-ink);

    font-size:
        clamp(
            38px,
            4.5vw,
            58px
        );

    font-weight: 600;

    line-height: 1.07;

    letter-spacing: -.035em;
}


.elandry-kit-page .kit-brand__content > p {
    max-width: 700px;

    margin:
        0
        0
        16px;

    color: var(--kit-muted);

    font-size: 16px;

    line-height: 1.72;
}


/* Signature */

.elandry-kit-page .kit-brand__statement {
    display: flex;

    align-items: center;

    gap: 15px;

    max-width: 590px;

    margin-top: 32px;

    padding:
        18px
        20px;

    border:
        1px solid
        rgba(30,58,138,.10);

    border-radius: 15px;

    background:
        rgba(255,255,255,.72);
}


.elandry-kit-page
.kit-brand__statement > i {
    display: grid;

    flex:
        0
        0
        42px;

    width: 42px;
    height: 42px;

    place-items: center;

    border-radius: 11px;

    color: #fff;

    background:
        linear-gradient(
            145deg,
            #416dce,
            #172f70
        );
}


.elandry-kit-page
.kit-brand__statement strong,
.elandry-kit-page
.kit-brand__statement small {
    display: block;
}


.elandry-kit-page
.kit-brand__statement strong {
    color: var(--kit-ink);

    font-size: 13px;
}


.elandry-kit-page
.kit-brand__statement small {
    margin-top: 3px;

    color: var(--kit-muted);

    font-size: 11px;
}


@media (max-width: 850px) {

    .elandry-kit-page .kit-brand__grid {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .elandry-kit-page .kit-brand__visual span {
        font-size: 120px;
    }

}


@media (max-width: 680px) {

    .elandry-kit-page .kit-brand {
        padding:
            72px
            0;
    }

    .elandry-kit-page .kit-brand__visual span {
        font-size: 95px;
    }

}




/* =========================================================
   FAQ
   ========================================================= */

.kit-faq-row {
    margin: 0 !important;
    padding: 0 !important;
}


.elandry-kit-page .kit-faq {
    padding:
        clamp(90px, 10vw, 140px)
        0;

    background: #ffffff;
}


.elandry-kit-page .kit-faq__layout {
    display: grid;

    grid-template-columns:
        minmax(260px, .65fr)
        minmax(0, 1.35fr);

    gap:
        clamp(55px, 8vw, 100px);

    align-items: start;
}


/* Colonne gauche */

.elandry-kit-page .kit-faq__intro {
    position: sticky;
    top: 120px;
}


.elandry-kit-page .kit-faq__title {
    margin:
        0
        0
        22px;

    color: var(--kit-ink);

    font-size:
        clamp(
            36px,
            4vw,
            52px
        );

    font-weight: 600;

    line-height: 1.08;

    letter-spacing: -.035em;
}


.elandry-kit-page .kit-faq__intro > p {
    max-width: 380px;

    margin: 0;

    color: var(--kit-muted);

    font-size: 15px;

    line-height: 1.7;
}


.elandry-kit-page .kit-faq__contact {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-top: 25px;

    color: var(--kit-brand) !important;

    font-size: 13px;

    font-weight: 600;

    text-decoration: none !important;
}


.elandry-kit-page .kit-faq__contact span {
    transition:
        transform .2s ease;
}


.elandry-kit-page .kit-faq__contact:hover span {
    transform:
        translateX(4px);
}


/* Questions */

.elandry-kit-page .kit-faq__questions {
    border-top:
        1px solid
        var(--kit-line);
}


.elandry-kit-page .kit-faq details {
    border-bottom:
        1px solid
        var(--kit-line);
}


/* On retire le triangle natif */

.elandry-kit-page .kit-faq summary {
    position: relative;

    cursor: pointer;

    list-style: none;

    padding:
        25px
        55px
        25px
        0;

    color: var(--kit-ink);

    font-size: 18px;

    font-weight: 600;

    line-height: 1.4;
}


.elandry-kit-page
.kit-faq summary::-webkit-details-marker {
    display: none;
}


/* Le + */

.elandry-kit-page .kit-faq summary::after {
    content: "+";

    position: absolute;

    top: 21px;
    right: 6px;

    display: grid;

    width: 32px;
    height: 32px;

    place-items: center;

    border-radius: 9px;

    color: var(--kit-brand);

    background:
        rgba(30,58,138,.06);

    font-size: 20px;

    font-weight: 400;

    line-height: 1;

    transition:
        transform .2s ease,
        background-color .2s ease;
}


.elandry-kit-page
.kit-faq details[open]
summary::after {
    content: "−";

    color: #ffffff;

    background:
        var(--kit-brand);
}


/* Réponse */

.elandry-kit-page .kit-faq__answer {
    max-width: 680px;

    padding:
        0
        50px
        25px
        0;
}


.elandry-kit-page .kit-faq__answer p {
    margin:
        0
        0
        10px;

    color: var(--kit-muted);

    font-size: 14px;

    line-height: 1.72;
}


.elandry-kit-page
.kit-faq__answer p:last-child {
    margin-bottom: 0;
}


.elandry-kit-page
.kit-faq__answer strong {
    color: var(--kit-ink);

    font-weight: 600;
}


/* Responsive */

@media (max-width: 850px) {

    .elandry-kit-page
    .kit-faq__layout {
        grid-template-columns: 1fr;

        gap: 45px;
    }


    .elandry-kit-page
    .kit-faq__intro {
        position: static;
    }

}


@media (max-width: 680px) {

    .elandry-kit-page .kit-faq {
        padding:
            72px
            0;
    }


    .elandry-kit-page .kit-faq summary {
        padding:
            22px
            48px
            22px
            0;

        font-size: 16px;
    }


    .elandry-kit-page
    .kit-faq__answer {
        padding-right: 10px;
    }

}




/* =========================================================
   CTA FINAL
   ========================================================= */

.elandry-kit-page .kit-final {
    position: relative;

    overflow: hidden;

    padding:
        clamp(70px, 8vw, 100px)
        0;

    color: #fff;

    background:
        radial-gradient(
            circle at 15% 0%,
            rgba(100,140,255,.24),
            transparent 28rem
        ),
        linear-gradient(
            120deg,
            #0a1426,
            #102455 62%,
            #163276
        );
}


.elandry-kit-page .kit-final__content {
    display: flex;

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

    gap: 50px;
}


.elandry-kit-page .kit-final h2 {
    max-width: 700px;

    margin: 0;

    color: #fff;

    font-size:
        clamp(
            40px,
            5vw,
            64px
        );

    font-weight: 600;

    line-height: 1.02;

    letter-spacing: -.04em;
}


.elandry-kit-page .kit-final__buy {
    display: flex;

    align-items: center;

    gap: 25px;
}


.elandry-kit-page
.kit-final__price strong,
.elandry-kit-page
.kit-final__price small {
    display: block;
}


.elandry-kit-page
.kit-final__price strong {
    color: #fff;

    font-size: 29px;

    font-weight: 600;

    line-height: 1.2;
}


.elandry-kit-page
.kit-final__price small {
    margin-top: 3px;

    color: #9fb0cc;

    font-size: 10px;
}


.elandry-kit-page .kit-final__button {
    display: inline-flex;

    min-height: 50px;

    align-items: center;
    justify-content: center;

    gap: 9px;

    padding:
        0
        22px;

    border-radius: 13px;

    color:
        var(--kit-ink) !important;

    background:
        #ffffff;

    box-shadow:
        0 15px 40px
        rgba(0,0,0,.16);

    font-size: 13px;

    font-weight: 600;

    text-decoration:
        none !important;

    transition:
        transform .2s ease;
}


.elandry-kit-page
.kit-final__button:hover {
    transform:
        translateY(-2px);
}


.elandry-kit-page
.kit-final__button span {
    transition:
        transform .2s ease;
}


.elandry-kit-page
.kit-final__button:hover span {
    transform:
        translateX(4px);
}


@media (max-width: 760px) {

    .elandry-kit-page
    .kit-final__content {
        align-items: flex-start;

        flex-direction: column;
    }


    .elandry-kit-page
    .kit-final__buy {
        width: 100%;

        justify-content: space-between;
    }

}


@media (max-width: 520px) {

    .elandry-kit-page
    .kit-final__buy {
        align-items: stretch;

        flex-direction: column;
    }


    .elandry-kit-page
    .kit-final__button {
        width: 100%;
    }

}



/* =========================================================
   SUR-TITRES — STYLE TERMINAL GLOBAL
   ========================================================= */

/* Tous les petits sur-titres de la landing */
.elandry-kit-page .kit-section-label,
.elandry-kit-page .kit-intro__eyebrow,
.elandry-kit-page .kit-hero__eyebrow {

    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 18px;

    color: var(--kit-brand);

    font-family: "JetBrains Mono", monospace !important;
    font-size: 10px;
    font-weight: 600;

    line-height: 1.2;

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


/* Le petit point devant */
.elandry-kit-page .kit-section-label::before,
.elandry-kit-page .kit-intro__eyebrow::before,
.elandry-kit-page .kit-hero__eyebrow::before {

    content: "";

    display: block;
    flex: 0 0 6px;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: currentColor;

    box-shadow:
        0 0 10px
        rgba(50, 104, 255, .45);
}


/* Curseur terminal */
.elandry-kit-page .kit-section-label::after,
.elandry-kit-page .kit-intro__eyebrow::after,
.elandry-kit-page .kit-hero__eyebrow::after {

    content: "";

    display: inline-block;
    flex: 0 0 6px;

    width: 6px;
    height: 11px;

    margin-left: 1px;

    background: currentColor;

    animation:
        kit-terminal-cursor
        1.05s
        steps(1, end)
        infinite;
}


@keyframes kit-terminal-cursor {

    0%,
    48% {
        opacity: 1;
    }

    49%,
    100% {
        opacity: 0;
    }

}


/* Respect accessibilité */
@media (prefers-reduced-motion: reduce) {

    .elandry-kit-page .kit-section-label::after,
    .elandry-kit-page .kit-intro__eyebrow::after,
    .elandry-kit-page .kit-hero__eyebrow::after {
        animation: none;
        opacity: 1;
    }

}

/* Variante sur fond bleu nuit */
.elandry-kit-page .kit-section-label--light {
    color: #9db6ff;
}


/* =========================================================
   404 — VIGNETTE : RESSERRER LES 2 LIGNES
   ========================================================= */

.elandry-kit-page
.kit-brand__statement > span {

    display: flex;
    flex-direction: column;

    gap: 2px;

    min-width: 0;
}


.elandry-kit-page
.kit-brand__statement strong {

    display: block;

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

    line-height: 1.15 !important;
}


.elandry-kit-page
.kit-brand__statement small {

    display: block;

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

    line-height: 1.15 !important;
}


/* =========================================================
   MOBILE — CTA : EMPÊCHER LES DÉBORDEMENTS
   ========================================================= */

@media (max-width: 680px) {

    /* Tous les éléments calculent padding + largeur correctement */
    .elandry-kit-page *,
    .elandry-kit-page *::before,
    .elandry-kit-page *::after {
        box-sizing: border-box;
    }


    /* Premier CTA du hero */
    .elandry-kit-page
    .kit-hero a[href="#le-kit"] {

        width: 100%;
        max-width: 100%;

        white-space: normal;

        text-align: center;
    }


    /* Conteneur des CTA du hero */
    .elandry-kit-page
    .kit-hero__actions {

        width: 100%;
        max-width: 100%;

        flex-wrap: wrap;
    }


    /* Dernier CTA */
    .elandry-kit-page
    .kit-final__button {

        width: 100%;
        max-width: 100%;

        padding-left: 18px;
        padding-right: 18px;

        white-space: normal;

        text-align: center;
    }


    /* Sécurité supplémentaire */
    .elandry-kit-page
    .kit-final__buy {

        width: 100%;
        max-width: 100%;

        min-width: 0;
    }

}




/* =========================================================
   404 — VIGNETTE TEXTE RESSERRÉ
   ========================================================= */

.elandry-kit-page .kit-brand__statement > span {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    gap: 0 !important;

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

    line-height: 1 !important;
}


.elandry-kit-page .kit-brand__statement strong {
    display: block !important;

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

    line-height: 1.2 !important;
}


.elandry-kit-page .kit-brand__statement small {
    display: block !important;

    margin: 2px 0 0 0 !important;
    padding: 0 !important;

    line-height: 1.15 !important;
}


/* =========================================================
   MOBILE — CTA #LE-KIT
   ========================================================= */

@media (max-width: 680px) {

    .elandry-kit-page {
        overflow-x: clip;
    }


    .elandry-kit-page a[href="#le-kit"] {
        display: flex !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        box-sizing: border-box !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 18px !important;
        padding-right: 18px !important;

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

        white-space: normal !important;

        text-align: center !important;
    }


    /* Conteneur boutons du hero */
    .elandry-kit-page .kit-hero__actions,
    .elandry-kit-page .kit-hero-actions,
    .elandry-kit-page .hero-actions {

        display: flex !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        flex-direction: column !important;
        align-items: stretch !important;

        box-sizing: border-box !important;
    }


    /* Tous les boutons du hero */
    .elandry-kit-page .kit-hero__actions a,
    .elandry-kit-page .kit-hero-actions a,
    .elandry-kit-page .hero-actions a {

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        box-sizing: border-box !important;

        justify-content: center !important;
    }


    /* CTA final */
    .elandry-kit-page .kit-final__buy {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        box-sizing: border-box !important;
    }


    .elandry-kit-page .kit-final__button {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        box-sizing: border-box !important;
    }

}
