/* ==================================================
   FINANCEMENT — SIMULATEUR DE MENSUALITÉ
   Version premium / responsive complet
================================================== */

.financement-simulator_new{
    position:relative;
    padding:68px 0 88px;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 10% 12%,
            rgba(7,87,249,.045),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7faff 100%
        );
}

.financement-simulator_new,
.financement-simulator_new *,
.financement-simulator_new *::before,
.financement-simulator_new *::after{
    box-sizing:border-box;
}

.financement-simulator_new .le-container_new{
    width:min(1640px,94%);
    margin:0 auto;
}

/* ==================================================
   CONTENEUR PRINCIPAL
================================================== */

.financement-simulator-box_new{
    position:relative;
    isolation:isolate;

    min-height:390px;
    padding:42px 48px;

    display:grid;
    grid-template-columns:250px minmax(0,1fr) 330px;
    gap:44px;
    align-items:center;

    overflow:hidden;

    border:1px solid rgba(7,87,249,.10);
    border-radius:28px;

    background:
        radial-gradient(
            circle at 12% 52%,
            rgba(7,87,249,.12),
            transparent 27%
        ),
        radial-gradient(
            circle at 88% 18%,
            rgba(7,87,249,.075),
            transparent 29%
        ),
        linear-gradient(
            135deg,
            #f5f9ff 0%,
            #edf4ff 55%,
            #f9fbff 100%
        );

    box-shadow:
        0 28px 75px rgba(0,13,32,.09),
        inset 0 1px 0 rgba(255,255,255,.96);
}

.financement-simulator-box_new::before{
    content:"";

    position:absolute;
    inset:0;
    z-index:-2;

    pointer-events:none;

    background:
        linear-gradient(
            115deg,
            rgba(255,255,255,.70),
            transparent 38%
        );
}

.financement-simulator-box_new::after{
    content:"";

    position:absolute;
    right:-160px;
    bottom:-220px;
    z-index:-1;

    width:520px;
    height:520px;

    border:1px solid rgba(7,87,249,.07);
    border-radius:50%;

    box-shadow:
        0 0 0 52px rgba(7,87,249,.025),
        0 0 0 104px rgba(7,87,249,.016);

    pointer-events:none;
}

/* ==================================================
   VISUEL CALCULATRICE
================================================== */

.financement-simulator-visual_new{
    position:relative;
    z-index:3;

    min-height:290px;

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

.financement-simulator-halo_new{
    position:absolute;

    width:255px;
    height:255px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(7,87,249,.19),
            rgba(7,87,249,.08) 46%,
            transparent 72%
        );

    animation:
        financementSimulatorHalo_new
        4.8s
        ease-in-out
        infinite;
}

.financement-simulator-orbit_new{
    position:absolute;

    width:238px;
    height:238px;

    border:1px solid rgba(7,87,249,.12);
    border-radius:50%;

    animation:
        financementSimulatorOrbit_new
        18s
        linear
        infinite;
}

.financement-simulator-orbit_new::before{
    content:"";

    position:absolute;
    top:18px;
    right:32px;

    width:8px;
    height:8px;

    border-radius:50%;

    background:#0757f9;

    box-shadow:
        0 0 0 7px rgba(7,87,249,.10),
        0 0 20px rgba(7,87,249,.42);
}

.financement-simulator-calculator_new{
    position:relative;
    z-index:2;

    width:180px;

    transform:rotate(-6deg);

    filter:
        drop-shadow(0 25px 30px rgba(0,13,32,.18));

    transition:
        transform .55s cubic-bezier(.22,.61,.36,1),
        filter .55s ease;

    animation:
        financementSimulatorFloat_new
        5.8s
        ease-in-out
        infinite;
}

.financement-simulator-box_new:hover
.financement-simulator-calculator_new{
    animation-play-state:paused;

    transform:
        rotate(-2deg)
        translateY(-7px)
        scale(1.035);

    filter:
        drop-shadow(0 32px 40px rgba(0,13,32,.23));
}

.financement-simulator-calculator_new svg{
    width:100%;
    height:auto;

    display:block;
}

.calculator-body_new{
    fill:#dcecff;
    stroke:#77a8ee;
    stroke-width:2;
}

.calculator-screen_new{
    fill:#7798a8;
    stroke:#57788d;
    stroke-width:1.5;

    transition:
        fill .35s ease,
        filter .35s ease;
}

.financement-simulator-calculator_new.is-screen-active
.calculator-screen_new{
    fill:#91b7c8;
    filter:drop-shadow(0 0 8px rgba(7,87,249,.25));
}

.calculator-value_new{
    fill:#132c38;

    font-family:Arial,sans-serif;
    font-size:24px;
    font-weight:700;
}

.calculator-buttons_new rect{
    fill:#edf5ff;
    stroke:#9bbce8;
    stroke-width:1.4;

    transition:
        fill .22s ease,
        stroke .22s ease,
        filter .22s ease;
}

.calculator-buttons_new rect:nth-child(4n){
    fill:#60a1ec;
    stroke:#3d81d1;
}

.calculator-buttons_new rect.is-lit{
    fill:#0757f9;
    stroke:#0048d5;

    filter:drop-shadow(0 0 6px rgba(7,87,249,.40));
}

/* Badge euro — attaché au visuel */

.financement-simulator-euro_new{
    position:absolute;
    right:18px;
    bottom:34px;
    z-index:4;

    width:48px;
    height:48px;

    border:4px solid #edf4ff;
    border-radius:50%;

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

    color:#fff;

    background:
        linear-gradient(
            145deg,
            #2679ff,
            #0757f9
        );

    font-size:23px;
    font-weight:900;
    line-height:1;

    box-shadow:
        0 14px 28px rgba(7,87,249,.27),
        inset 0 1px 0 rgba(255,255,255,.20);

    animation:
        financementSimulatorEuro_new
        3.6s
        ease-in-out
        infinite;
}

/* Reflet */

.financement-simulator-shine_new{
    position:absolute;
    inset:6% 4%;

    overflow:hidden;

    pointer-events:none;
}

.financement-simulator-shine_new::before{
    content:"";

    position:absolute;
    top:-20%;
    left:-60%;

    width:28%;
    height:150%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.08),
            rgba(255,255,255,.55),
            rgba(255,255,255,.08),
            transparent
        );

    transform:rotate(13deg);

    animation:
        financementSimulatorShine_new
        6.5s
        ease-in-out
        infinite;
}

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

.financement-simulator-content_new{
    position:relative;
    z-index:3;

    min-width:0;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
}

.financement-simulator-label_new{
    display:inline-flex;
    align-items:center;
    gap:12px;

    margin-bottom:15px;

    color:#0757f9;

    font-size:12px;
    font-weight:900;
    line-height:1.2;
    letter-spacing:2.7px;
    text-transform:uppercase;
}

.financement-simulator-label_new::before{
    content:"";

    width:30px;
    height:2px;

    border-radius:999px;

    background:#0757f9;

    box-shadow:
        0 0 13px rgba(7,87,249,.30);
}

.financement-simulator-content_new h2{
    max-width:720px;
    margin:0 0 17px;

    color:#000d20;

    font-size:40px;
    font-weight:900;
    line-height:1.1;
    letter-spacing:-1px;
}

.financement-simulator-content_new h2 span{
    color:#0757f9;
}

.financement-simulator-content_new p{
    max-width:680px;
    margin:0 0 25px;
    padding-bottom:0 !important;

    color:#56657c;

    font-size:16.5px;
    font-weight:500;
    line-height:1.65;
}

/* ==================================================
   BOUTON
================================================== */

.financement-simulator-btn_new{
    position:relative;
    isolation:isolate;

    width:fit-content;
    min-height:60px;
    padding:0 28px;

    overflow:hidden;

    border:1px solid rgba(7,87,249,.14);
    border-radius:12px;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:15px;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            #1f73ff 0%,
            #0757f9 58%,
            #0048d5 100%
        );

    text-decoration:none;

    font-size:16px;
    font-weight:900;
    line-height:1;

    box-shadow:
        0 17px 36px rgba(7,87,249,.27),
        inset 0 1px 0 rgba(255,255,255,.20);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        background .3s ease,
        border-color .3s ease;
}

.financement-simulator-btn_new::before{
    content:"";

    position:absolute;
    top:0;
    bottom:0;
    left:-36%;
    z-index:-1;

    width:30%;

    background:
        linear-gradient(
            100deg,
            transparent,
            rgba(255,255,255,.25),
            transparent
        );

    transform:skewX(-18deg);

    transition:left .55s ease;
}

.financement-simulator-btn_new span,
.financement-simulator-btn_new svg{
    position:relative;
    z-index:2;
}

.financement-simulator-btn_new svg{
    width:22px;
    height:22px;
    flex:0 0 22px;

    display:block;

    fill:none;
    stroke:currentColor;
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;

    transition:transform .3s ease;
}

.financement-simulator-btn_new:hover{
    color:#fff;

    border-color:rgba(7,87,249,.22);

    background:
        linear-gradient(
            135deg,
            #0f67ff 0%,
            #0050e8 58%,
            #003fbf 100%
        );

    transform:translateY(-3px);

    box-shadow:
        0 23px 46px rgba(7,87,249,.35),
        inset 0 1px 0 rgba(255,255,255,.22);
}

.financement-simulator-btn_new:hover::before{
    left:112%;
}

.financement-simulator-btn_new:hover svg{
    transform:translateX(5px);
}

.financement-simulator-btn_new:focus-visible{
    outline:3px solid rgba(7,87,249,.22);
    outline-offset:4px;
}

.financement-simulator-btn_new:active{
    transform:translateY(-1px);
}

.financement-simulator-disclaimer_new{
    display:block;

    max-width:650px;
    margin-top:14px;

    color:#718097;

    font-size:11.5px;
    font-weight:600;
    line-height:1.45;
}

/* ==================================================
   AVANTAGES DROITE
================================================== */

.financement-simulator-benefits_new{
    position:relative;
    z-index:3;

    min-width:0;
    padding-left:36px;

    display:grid;
    grid-template-rows:repeat(3,minmax(88px,1fr));
    gap:22px;

    border-left:1px solid rgba(7,87,249,.17);
}

.financement-simulator-benefit_new{
    min-width:0;
    min-height:88px;

    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:16px;
    align-items:center;
}

.financement-simulator-benefit-icon_new{
    width:50px;
    height:50px;
    flex:0 0 50px;

    border-radius:50%;

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

    color:#0757f9;

    background:
        linear-gradient(
            145deg,
            #f8fbff,
            #e4efff
        );

    box-shadow:
        inset 0 0 0 1px rgba(7,87,249,.11),
        0 12px 27px rgba(7,87,249,.10);

    line-height:0;

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

.financement-simulator-benefit-icon_new svg{
    width:26px;
    height:26px;

    display:block;

    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.financement-simulator-icon-mask_new{
    width:26px;
    height:26px;
    display:block;

    background:currentColor;

    -webkit-mask:var(--simulator-icon) center / contain no-repeat;
    mask:var(--simulator-icon) center / contain no-repeat;
}

.financement-simulator-benefit_new:hover
.financement-simulator-benefit-icon_new{
    color:#fff;

    background:
        linear-gradient(
            145deg,
            #1f73ff,
            #0757f9
        );

    transform:
        translateY(-4px)
        rotate(-3deg);

    box-shadow:
        0 18px 34px rgba(7,87,249,.24);
}

.financement-simulator-benefit_new > div{
    min-width:0;
}

.financement-simulator-benefit_new strong,
.financement-simulator-benefit_new small{
    display:block;
}

.financement-simulator-benefit_new strong{
    min-height:39px;
    margin:0 0 4px;

    display:flex;
    align-items:center;

    color:#000d20;

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

.financement-simulator-benefit_new small{
    min-height:35px;

    color:#65738a;

    font-size:12.5px;
    font-weight:600;
    line-height:1.4;
}

/* ==================================================
   ANIMATIONS
================================================== */

@keyframes financementSimulatorFloat_new{

    0%,
    100%{
        transform:
            rotate(-6deg)
            translateY(0);
    }

    50%{
        transform:
            rotate(-4deg)
            translateY(-10px);
    }

}

@keyframes financementSimulatorHalo_new{

    0%,
    100%{
        opacity:.72;
        transform:scale(.96);
    }

    50%{
        opacity:1;
        transform:scale(1.05);
    }

}

@keyframes financementSimulatorOrbit_new{

    from{
        transform:rotate(0deg);
    }

    to{
        transform:rotate(360deg);
    }

}

@keyframes financementSimulatorShine_new{

    0%,
    32%{
        left:-60%;
        opacity:0;
    }

    43%{
        opacity:1;
    }

    72%,
    100%{
        left:130%;
        opacity:0;
    }

}

@keyframes financementSimulatorEuro_new{

    0%,
    100%{
        transform:translateY(0) scale(1);
    }

    50%{
        transform:translateY(-5px) scale(1.04);
    }

}

/* ==================================================
   ANIMATION D’ARRIVÉE
================================================== */

.financement-simulator-visual_new,
.financement-simulator-content_new,
.financement-simulator-benefits_new{
    opacity:0;

    transition:
        opacity .75s ease,
        transform .75s cubic-bezier(.22,.61,.36,1);
}

.financement-simulator-visual_new{
    transform:translateX(-42px);
}

.financement-simulator-content_new{
    transform:translateY(25px);
}

.financement-simulator-benefits_new{
    transform:translateX(42px);
}

.financement-simulator-box_new.active
.financement-simulator-visual_new,
.financement-simulator-box_new.active
.financement-simulator-content_new,
.financement-simulator-box_new.active
.financement-simulator-benefits_new,
.financement-simulator-box_new.is-visible
.financement-simulator-visual_new,
.financement-simulator-box_new.is-visible
.financement-simulator-content_new,
.financement-simulator-box_new.is-visible
.financement-simulator-benefits_new{
    opacity:1;
    transform:none;
}

.financement-simulator-box_new.active
.financement-simulator-content_new,
.financement-simulator-box_new.is-visible
.financement-simulator-content_new{
    transition-delay:.10s;
}

.financement-simulator-box_new.active
.financement-simulator-benefits_new,
.financement-simulator-box_new.is-visible
.financement-simulator-benefits_new{
    transition-delay:.20s;
}

/* ==================================================
   RESPONSIVE — PETIT DESKTOP
================================================== */

@media(max-width:1280px){

    .financement-simulator-box_new{
        grid-template-columns:220px minmax(0,1fr) 300px;
        gap:32px;

        padding:38px 34px;
    }

    .financement-simulator-calculator_new{
        width:158px;
    }

    .financement-simulator-content_new h2{
        font-size:35px;
    }

    .financement-simulator-benefits_new{
        padding-left:28px;
    }

}

/* ==================================================
   RESPONSIVE — TABLETTE
================================================== */

@media(max-width:1000px){

    .financement-simulator-box_new{
        grid-template-columns:210px minmax(0,1fr);
        gap:30px;
    }

    .financement-simulator-benefits_new{
        grid-column:1 / -1;

        padding:28px 0 0;

        grid-template-columns:repeat(3,minmax(0,1fr));
        grid-template-rows:auto;
        gap:18px;

        border-top:1px solid rgba(7,87,249,.15);
        border-left:0;
    }

    .financement-simulator-benefit_new{
        min-height:94px;
        padding:14px;

        grid-template-columns:46px minmax(0,1fr);
        gap:13px;

        border:1px solid rgba(7,87,249,.08);
        border-radius:14px;

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

    .financement-simulator-benefit-icon_new{
        width:44px;
        height:44px;
    }

.financement-simulator-benefit-icon_new svg,
.financement-simulator-icon-mask_new{
    width:23px;
    height:23px;
}

    .financement-simulator-benefit_new strong{
        min-height:39px;
        font-size:14px;
    }

    .financement-simulator-benefit_new small{
        min-height:34px;
        font-size:11.5px;
    }

}

/* ==================================================
   RESPONSIVE — MOBILE
================================================== */

@media(max-width:700px){

    .financement-simulator_new{
        padding:52px 0 72px;
    }

    .financement-simulator_new .le-container_new{
        width:calc(100% - 28px);
    }

    .financement-simulator-box_new{
        min-height:auto;
        padding:32px 22px;

        grid-template-columns:1fr;
        gap:28px;

        border-radius:22px;

        text-align:center;
    }

    .financement-simulator-visual_new{
        min-height:230px;
    }

    .financement-simulator-calculator_new{
        width:154px;
    }

    .financement-simulator-euro_new{
        right:calc(50% - 108px);
        bottom:23px;
    }

    .financement-simulator-content_new{
        align-items:center;
    }

    .financement-simulator-label_new{
        justify-content:center;
    }

    .financement-simulator-content_new h2{
        max-width:550px;

        font-size:32px;
        letter-spacing:-.7px;
    }

    .financement-simulator-content_new p{
        max-width:550px;

        font-size:15.5px;
    }

    .financement-simulator-btn_new{
        width:100%;
        min-height:58px;
    }

    .financement-simulator-disclaimer_new{
        margin-left:auto;
        margin-right:auto;
    }

    .financement-simulator-benefits_new{
        grid-column:auto;
        grid-template-columns:1fr;
        gap:12px;

        text-align:left;
    }

    .financement-simulator-benefit_new{
        min-height:auto;
    }

    .financement-simulator-benefit_new strong,
    .financement-simulator-benefit_new small{
        min-height:auto;
    }

}

/* ==================================================
   RESPONSIVE — TRÈS PETITS MOBILES
================================================== */

@media(max-width:420px){

    .financement-simulator_new .le-container_new{
        width:calc(100% - 20px);
    }

    .financement-simulator-box_new{
        padding:28px 16px;

        border-radius:18px;
    }

    .financement-simulator-content_new h2{
        font-size:28px;
    }

    .financement-simulator-content_new p{
        font-size:14.5px;
    }

    .financement-simulator-btn_new{
        min-height:55px;
        padding:0 17px;

        font-size:14px;
    }

    .financement-simulator-halo_new{
        width:220px;
        height:220px;
    }

    .financement-simulator-orbit_new{
        width:205px;
        height:205px;
    }

    .financement-simulator-visual_new{
        min-height:215px;
    }

    .financement-simulator-calculator_new{
        width:140px;
    }

    .financement-simulator-euro_new{
        right:calc(50% - 97px);
        width:44px;
        height:44px;

        font-size:20px;
    }

}

/* ==================================================
   ÉCRANS TACTILES
================================================== */

@media(hover:none){

    .financement-simulator-box_new:hover
    .financement-simulator-calculator_new{
        animation-play-state:running;

        transform:rotate(-6deg);

        filter:
            drop-shadow(0 25px 30px rgba(0,13,32,.18));
    }

    .financement-simulator-benefit_new:hover
    .financement-simulator-benefit-icon_new{
        color:#0757f9;

        background:
            linear-gradient(
                145deg,
                #f8fbff,
                #e4efff
            );

        transform:none;

        box-shadow:
            inset 0 0 0 1px rgba(7,87,249,.11),
            0 12px 27px rgba(7,87,249,.10);
    }

}

/* ==================================================
   ACCESSIBILITÉ
================================================== */

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

    .financement-simulator-calculator_new,
    .financement-simulator-halo_new,
    .financement-simulator-orbit_new,
    .financement-simulator-euro_new,
    .financement-simulator-shine_new::before{
        animation:none !important;
    }

    .financement-simulator-visual_new,
    .financement-simulator-content_new,
    .financement-simulator-benefits_new{
        opacity:1;
        transform:none;
        transition:none;
    }

}