/* SpectraVision — maquette néon */
:root{--bg:#050714;--surface:#0b0920;--text:#fff;--muted:#d2cce6;--accent:#c339ff;--line:#6330a4}body{background:radial-gradient(ellipse at 85% 10%,#15205a 0,transparent 36%),radial-gradient(ellipse at 0 55%,#280855 0,transparent 30%),#050613;color:white}.test-banner{display:none}.header{background:#070816ed;border-bottom:1px solid #42286b;box-shadow:0 8px 35px #0d0723aa}.topbar{max-width:none;height:64px;padding:0 2.5%;gap:1.2rem}.brand{font:600 clamp(1rem,1.6vw,1.55rem)/1 Georgia,serif;letter-spacing:-.045em;gap:0;text-transform:uppercase;color:#ffd58b;filter:drop-shadow(0 0 5px #ae77ff77)}.brand-mark{display:none}.brand-v{display:inline-block;font:bold 1.65em/0.6 Georgia,serif;margin:0 -.04em 0 -.02em;transform:translateY(.09em);color:#e055ff;text-shadow:0 0 12px #dd2fff,0 0 24px #7b28ff}.brand-end{color:#69baff;text-shadow:0 0 12px #225dff}.brand small{display:block;font:400 .32em/1.7 Arial,sans-serif;letter-spacing:.22em;text-align:center;color:#ffd891}.desktop{gap:clamp(.4rem,1.35vw,1.6rem)}.desktop>a,.desktop .nav-group>a{font-size:clamp(.59rem,.82vw,.78rem);text-transform:uppercase;white-space:nowrap;color:#f5efff}.desktop a[aria-current]{color:#fff;border-bottom:2px solid #ed39ff;padding-bottom:9px;text-shadow:0 0 10px #e735ff}.nav-cta{display:none!important}.nav-icons{display:flex;gap:1rem;align-items:center;font-size:1.3rem}.nav-icons a{color:#fff}.nav-icons a:hover{color:#f0aaff}.menu-button{color:white;border-color:#a845f2}.mobile{background:#080915}.hero,.sub-hero{min-height:520px}.hero:before{background:linear-gradient(90deg,#030713b8 0%,#08051975 42%,#07041b12 100%),var(--hero) center/cover}.hero:after{background:linear-gradient(transparent 65%,#050613 100%)}.hero-inner{max-width:1200px;width:100%;padding:5rem 4.5vw;position:relative;z-index:2}.hero p{max-width:510px}.hero h1{font-size:clamp(3rem,5.4vw,6rem);line-height:1.04}.hero h1 em{color:#ef61ff;text-shadow:0 0 20px #e539ff}.button{border-radius:30px!important;padding:.83rem 1.5rem!important;background:linear-gradient(100deg,#ec29dd,#4827ff)!important;color:white!important;border:1px solid #e780ff!important;box-shadow:0 0 16px #9821fb99,0 0 30px #411cfb66;font-weight:700;text-transform:uppercase;font-size:.78rem}.button:hover{box-shadow:0 0 28px #e73cff}.text-link{color:#fff!important;border:1px solid #dd41f3;border-radius:30px;padding:.77rem 1.25rem;text-transform:uppercase;font-size:.78rem;box-shadow:0 0 16px #a838ed77}.section{max-width:1440px}.section h2{letter-spacing:.02em}.eyebrow{color:#f0b6ff!important;letter-spacing:.19em}.feature,.portfolio-card,.video-grid figure,.drawing-grid a{background:#0c0b20;border:1px solid #7746c1;box-shadow:0 0 18px #4e1aa348;border-radius:14px;overflow:hidden}.feature img,.portfolio-card img{object-fit:cover}.feature:hover,.portfolio-card:hover{box-shadow:0 0 26px #9c39ecaa}.contact-band{background:linear-gradient(110deg,#110726,#151244,#0a1029);border-block:1px solid #a33ee8}.footer{background:#050611;border-top:1px solid #6330a4}.home-hero{min-height:430px;display:flex;align-items:center;background:linear-gradient(90deg,#040614e8 0,#050a1d95 46%,#05071a11 100%);background-size:cover;background-position:center 48%;position:relative}.home-hero:after{content:'';position:absolute;inset:auto 0 0;height:100px;background:linear-gradient(transparent,#050613)}.home-hero-inner{position:relative;z-index:2;padding:3.5rem 7.5vw;max-width:800px}.home-logo{font:500 clamp(3.3rem,7vw,7rem)/1 Georgia,serif;letter-spacing:-.07em;color:#ffdb9f;text-shadow:0 0 18px #edac7299;white-space:nowrap}.home-logo .brand-v{font-size:1.37em}.home-logo .brand-end{color:#78baff}.home-tagline{color:#ffe2a5;font-size:clamp(.68rem,1.25vw,1rem);letter-spacing:.42em;text-transform:uppercase;margin:1rem 0 1.5rem 2rem}.home-description{font-size:1.12rem;color:#f2eaff;max-width:560px;line-height:1.5}.home-actions{display:flex;gap:1.4rem;flex-wrap:wrap;margin-top:1.7rem}.universe-cards{max-width:1440px;margin:-2px auto 0;padding:0 4.4%;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;position:relative;z-index:3}.universe-card{position:relative;height:200px;display:flex;align-items:end;overflow:hidden;border-radius:12px;border:1px solid var(--glow);box-shadow:0 0 14px var(--glow);isolation:isolate}.universe-card img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:-2;transition:transform .35s}.universe-card:hover img{transform:scale(1.06)}.universe-card:before{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#050516ec);z-index:-1}.universe-card span{padding:1rem;width:100%;display:flex;flex-direction:column}.universe-card strong{font-size:.95rem;text-transform:uppercase}.universe-card small{font-size:.8rem;color:#e2dcf0}.universe-card:nth-child(1){--glow:#2866ff}.universe-card:nth-child(2){--glow:#b82eff}.universe-card:nth-child(3){--glow:#ff3caf}.universe-card:nth-child(4){--glow:#dc9739}.qualities{max-width:1300px;margin:2rem auto 3rem;padding:0 4%;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}.qualities div{font-weight:700;color:#f8e7ff;text-shadow:0 0 15px #ad4bff;font-size:1.15rem}.qualities i{font-style:normal;color:#e548ff;font-size:1.7rem;vertical-align:middle;margin-right:.4rem}.showcase{max-width:1450px;margin:auto;padding:2rem 4.5% 5rem;display:grid;grid-template-columns:34% 1fr;gap:2rem;align-items:center}.showcase h2{font-size:clamp(2.3rem,3.6vw,4.1rem);line-height:1.16;text-transform:uppercase;background:linear-gradient(90deg,#fff,#7cbdff,#ff6ede);color:transparent;background-clip:text}.showcase p{color:#e8dcf4}.showcase-gallery{display:grid;grid-template-columns:1.6fr 1fr 1fr;grid-template-rows:145px 145px;gap:.8rem}.showcase-gallery a{border:1px solid #9945ed;box-shadow:0 0 16px #8329da66;border-radius:12px;overflow:hidden}.showcase-gallery a:first-child{grid-row:span 2}.showcase-gallery img{height:100%;width:100%;object-fit:cover}.showcase-gallery a:hover{box-shadow:0 0 27px #e74bff}.home-extras{background:radial-gradient(circle at 50% 0,#170b37,transparent 65%)}@media(max-width:1200px){.desktop{display:none}.menu-button{display:block}.topbar{height:68px}.nav-icons{margin-left:auto}.home-hero{min-height:490px}}@media(max-width:760px){.home-hero-inner{padding:4rem 5vw}.home-logo{font-size:clamp(2.9rem,10.5vw,5rem)}.home-tagline{margin-left:0;letter-spacing:.16em}.universe-cards{grid-template-columns:repeat(2,1fr);padding:0 4%}.qualities{grid-template-columns:repeat(2,1fr)}.showcase{grid-template-columns:1fr}.showcase-gallery{grid-template-rows:120px 120px}.nav-icons{gap:.6rem}.hero-inner{padding:4rem 5vw}}@media(max-width:460px){.home-logo{font-size:10vw}.universe-card{height:155px}.universe-card strong{font-size:.74rem}.universe-card small{font-size:.66rem}.showcase-gallery{grid-template-columns:1fr 1fr;grid-template-rows:140px 100px 100px}.showcase-gallery a:first-child{grid-column:span 2;grid-row:auto}.qualities div{font-size:.9rem}.nav-icons a:nth-child(1){display:none}}
.showcase-gallery video{height:100%;width:100%;object-fit:cover}

/* Accueil : galerie et avis authentiques issus des modules WordPress. */
.sv-home-gallery{padding:70px 4.5% 85px;background:radial-gradient(circle at 50% 0,#201044 0%,#080919 55%,#050613 100%);border-top:1px solid #573184}
.sv-home-gallery-inner{max-width:1290px;margin:auto}
.sv-home-gallery h2{font:700 clamp(2.3rem,4.3vw,4rem)/1.1 Georgia,serif;text-transform:uppercase;color:#f7eaff;text-shadow:0 0 24px #a23dff}
.sv-home-gallery-inner>p:not(.eyebrow){color:#d8d1ea;margin-bottom:28px}
.sv-home-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:32px}
.sv-home-gallery-card{aspect-ratio:4/3;border:1px solid #a946f1;border-radius:14px;overflow:hidden;background:#0c0b20;box-shadow:0 0 16px #8034d366}
.sv-home-gallery-card:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.sv-home-gallery-card a,.sv-home-gallery-card img,.sv-home-gallery-card video{display:block;width:100%;height:100%}
.sv-home-gallery-card img,.sv-home-gallery-card video{object-fit:cover}
.sv-home-gallery-card:hover{box-shadow:0 0 25px #d54bffaa}
.sv-google-reviews,.sv-google-reviews.svgr-empty-state{background:#080817!important;color:#f6efff!important;border-top:1px solid #6330a4!important;padding:32px 4.5%!important}
.sv-google-reviews .svgr-inner{max-width:1290px}
.sv-google-reviews .svgr-kicker{color:#c57cff!important}
.sv-google-reviews .svgr-head h2{color:#fff;text-shadow:0 0 19px #a23dff88}
.sv-google-reviews .svgr-card{background:#111026;border-color:#713ba5}
.sv-google-reviews .svgr-btn-gold{background:linear-gradient(100deg,#e72ed9,#5027eb);color:#fff!important;border-radius:30px;box-shadow:0 0 15px #8425e899}
.sv-google-reviews .svgr-btn-line{border-color:#ab55ed;color:#edd2ff!important;border-radius:30px}
.sv-google-reviews .svgr-empty{color:#ddd4ee!important}
@media(max-width:800px){.sv-home-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sv-home-gallery-card:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:16/9}}
@media(max-width:480px){.sv-home-gallery{padding:50px 5% 65px}.sv-home-gallery-grid{gap:9px}.sv-home-gallery-card{aspect-ratio:1/1}}

/* =========================================================
   HOME V2 — ALIGNEMENT FINAL DES SECTIONS
   UNIQUEMENT PAGE D'ACCUEIL
   ========================================================= */

body.sv-static-header main{
    width:100%;
    overflow:hidden;
}

/* ----- conteneur commun ----- */

.home-entry-heading,
.home-three-doors,
.showcase,
.home-pack,
.home-final,
.sv-home-gallery-inner,
.sv-google-reviews .svgr-inner{
    width:min(1380px,92%)!important;
    max-width:1380px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}


/* ----- HERO ----- */

.home-hero{
    width:100%!important;
    min-height:650px!important;
}

.home-hero-inner{
    width:min(1380px,92%)!important;
    max-width:1380px!important;
    margin:0 auto!important;
    padding:90px 0 110px!important;
}

.home-hero h1{
    max-width:900px;
}


/* ----- 3 PORTES ----- */

.home-entry{
    width:100%;
    padding:75px 0 100px!important;
}

.home-entry-heading{
    margin-bottom:38px!important;
}

.home-three-doors{
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
}

.home-three-doors .universe-card{
    width:100%!important;
    min-width:0!important;
    height:400px!important;
}


/* ----- REALISATIONS ----- */

.showcase{
    padding:105px 0!important;
    display:grid!important;
    grid-template-columns:minmax(280px,.72fr) minmax(0,1.65fr)!important;
    gap:65px!important;
}

.showcase-gallery{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:1.6fr 1fr 1fr!important;
    grid-template-rows:210px 210px!important;
}


/* ----- PACKS ----- */

.home-pack{
    width:min(1380px,92%)!important;
    max-width:1380px!important;
    min-height:520px!important;
    margin:20px auto 110px!important;

    display:grid!important;
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)!important;

    border:1px solid #7440b4!important;
    border-radius:20px!important;
    overflow:hidden!important;
}

.home-pack-visual{
    width:100%!important;
    min-width:0!important;
    height:520px!important;
}

.home-pack-visual img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
}

.home-pack-copy{
    width:100%!important;
    min-width:0!important;
    padding:60px!important;
}


/* ----- GALERIE WORDPRESS ----- */

.sv-home-gallery{
    width:100%!important;
    padding:55px 0 60px!important;
}

.sv-home-gallery-inner{
    padding:0!important;
}

.sv-home-gallery-grid{
    width:100%!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:16px!important;
}


/* ----- AVIS GOOGLE ----- */

.sv-google-reviews,
.sv-google-reviews.svgr-empty-state{
    width:100%!important;
    padding:32px 0!important;
}

.sv-google-reviews .svgr-inner{
    padding:0!important;
}


/* ----- CTA FINAL ----- */

.home-final{
    box-sizing:border-box!important;
    margin-top:24px!important;
    margin-bottom:24px!important;
    padding:24px 42px!important;

    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:60px!important;
}

.home-final > div:first-child{
    max-width:760px;
}

.home-final-actions{
    flex:0 0 auto;
}


/* ----- FOOTER ----- */

.footer-inner{
    width:min(1380px,92%)!important;
    max-width:1380px!important;
}


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

@media(max-width:1000px){

    .home-three-doors{
        grid-template-columns:1fr!important;
    }

    .home-three-doors .universe-card{
        height:320px!important;
    }

    .showcase{
        grid-template-columns:1fr!important;
        gap:35px!important;
    }

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

    .home-pack-visual{
        height:400px!important;
    }

    .home-final{
        flex-direction:column!important;
        align-items:flex-start!important;
    }
}


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

@media(max-width:600px){

    .home-hero{
        min-height:570px!important;
    }

    .home-hero-inner{
        width:90%!important;
        padding:65px 0 80px!important;
    }

    .home-entry-heading,
    .home-three-doors,
    .showcase,
    .home-pack,
    .home-final,
    .sv-home-gallery-inner,
    .sv-google-reviews .svgr-inner{
        width:90%!important;
    }

    .home-three-doors .universe-card{
        height:260px!important;
    }

    .showcase{
        padding:32px 0!important;
    }

    .showcase-gallery{
        grid-template-columns:1fr 1fr!important;
        grid-template-rows:190px 130px 130px!important;
    }

    .showcase-gallery a:first-child{
        grid-column:1/-1!important;
        grid-row:auto!important;
    }

    .home-pack{
        margin-bottom:75px!important;
    }

    .home-pack-visual{
        height:300px!important;
    }

    .home-pack-copy{
        padding:38px 25px!important;
    }

    .sv-home-gallery{
        padding:50px 0 55px!important;
    }

    .sv-home-gallery-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
    }

    .sv-home-gallery-card:first-child{
        grid-column:1/-1!important;
        grid-row:auto!important;
    }

    .sv-google-reviews,
    .sv-google-reviews.svgr-empty-state{
        padding:35px 0!important;
    }

    .home-final{
        padding:40px 25px!important;
        margin:65px auto!important;
    }
}


/* =========================================================
   HOME — GALERIE CREATIONS COMPACTE
   ========================================================= */

.sv-home-gallery{
    padding:55px 0 60px!important;
}

.sv-home-gallery-inner{
    width:min(1380px,92%)!important;
    max-width:1380px!important;
}

.sv-home-gallery h2{
    margin:8px 0 14px!important;
    font-size:clamp(2.6rem,4vw,4.4rem)!important;
}

.sv-home-gallery-inner > p:not(.eyebrow){
    margin:0 0 30px!important;
}

/* grille plus compacte */
.sv-home-gallery-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:220px 220px!important;
    gap:14px!important;
    margin-bottom:24px!important;
}

/* grosse réalisation */
.sv-home-gallery-card:first-child{
    grid-column:span 2!important;
    grid-row:span 2!important;
    aspect-ratio:auto!important;
}

/* autres réalisations */
.sv-home-gallery-card{
    min-height:0!important;
    height:auto!important;
    aspect-ratio:auto!important;
}

/* cadrage uniforme */
.sv-home-gallery-card a{
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
}

.sv-home-gallery-card img,
.sv-home-gallery-card video{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center!important;
    transition:transform .35s ease!important;
}

.sv-home-gallery-card:hover img{
    transform:scale(1.035);
}


/* éviter que les images très verticales dominent */
.sv-home-gallery-card:nth-child(3) img,
.sv-home-gallery-card:nth-child(5) img{
    object-position:center 35%!important;
}


/* bouton galerie */
.sv-home-gallery-inner > .button{
    margin-top:4px!important;
}


/* TABLETTE */
@media(max-width:900px){

    .sv-home-gallery-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        grid-template-rows:300px 190px 190px!important;
    }

    .sv-home-gallery-card:first-child{
        grid-column:1/-1!important;
        grid-row:auto!important;
    }
}


/* MOBILE */
@media(max-width:560px){

    .sv-home-gallery{
        padding:55px 0 65px!important;
    }

    .sv-home-gallery-grid{
        grid-template-columns:1fr 1fr!important;
        grid-template-rows:230px 145px 145px!important;
        gap:9px!important;
    }

    .sv-home-gallery-card:first-child{
        grid-column:1/-1!important;
    }
}



/* =========================================================
   SPECTRAVISION — FOOTER GLOBAL V2
   ========================================================= */

.sv-footer{
    position:relative;
    background:
        radial-gradient(circle at 15% 0%, rgba(117,40,190,.16), transparent 32%),
        radial-gradient(circle at 90% 100%, rgba(48,54,180,.12), transparent 30%),
        #04050d;
    border-top:1px solid rgba(183,78,255,.35);
    color:#fff;
    padding:70px 0 0;
    overflow:hidden;
}

.sv-footer::before{
    content:"";
    position:absolute;
    top:0;
    left:50%;
    width:min(1380px,92%);
    height:1px;
    transform:translateX(-50%);
    background:linear-gradient(
        90deg,
        transparent,
        #933cff,
        #ec52ff,
        #426dff,
        transparent
    );
    box-shadow:0 0 18px rgba(190,55,255,.55);
}

.sv-footer-grid{
    width:min(1380px,92%);
    margin:0 auto;
    display:grid;
    grid-template-columns:1.45fr .9fr .9fr 1.05fr;
    gap:55px;
    padding-bottom:55px;
}

.sv-footer-brand{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    font:700 clamp(1.5rem,2vw,2rem)/1 Manrope,sans-serif;
    letter-spacing:-.04em;
    color:#fff;
}

.sv-footer-brand span{
    color:#e74cff;
    text-shadow:
        0 0 10px #db42ff,
        0 0 25px rgba(111,55,255,.75);
}

.sv-footer-grid > div:first-child > p{
    max-width:440px;
    color:#bdb9ca;
    line-height:1.75;
    margin:0 0 14px;
}

.sv-footer .sv-gold{
    color:#e8b9ff !important;
    font-weight:600;
}

.sv-footer .sv-payment{
    display:inline-block;
    margin-top:10px;
    padding:7px 12px;
    border:1px solid rgba(183,78,255,.28);
    border-radius:20px;
    color:#8e899d;
    font-size:.72rem;
    letter-spacing:.06em;
}

.sv-footer h3{
    position:relative;
    margin:3px 0 22px;
    padding-bottom:12px;
    color:#fff;
    font:700 .84rem Manrope,sans-serif;
    text-transform:uppercase;
    letter-spacing:.14em;
}

.sv-footer h3::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:35px;
    height:2px;
    background:linear-gradient(90deg,#df43ff,#573aff);
    box-shadow:0 0 9px rgba(219,55,255,.7);
}

.sv-footer ul{
    list-style:none;
    padding:0;
    margin:0;
}

.sv-footer li{
    margin:9px 0;
    color:#aaa6b7;
    font-size:.88rem;
}

.sv-footer a{
    color:#bcb7c9;
    transition:color .2s ease, transform .2s ease;
}

.sv-footer a:hover{
    color:#ed70ff;
}

.sv-partner-entry{
    display:flex !important;
    align-items:center;
    gap:12px;
    margin-bottom:17px !important;
}

.sv-partner-logo{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(183,78,255,.35);
    border-radius:10px;
    overflow:hidden;
    background:#090817;
}

.sv-partner-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}

.sv-partner-button,
.sv-contact-button{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    width:auto;
    padding:10px 17px;
    margin:8px 0 16px !important;
    border:1px solid rgba(217,74,255,.6);
    border-radius:24px;
    color:#fff !important;
    font-size:.78rem;
    font-weight:700;
    text-transform:uppercase;
    background:linear-gradient(
        100deg,
        rgba(217,42,222,.16),
        rgba(74,39,255,.16)
    );
    box-shadow:0 0 16px rgba(136,37,230,.18);
}

.sv-partner-button:hover,
.sv-contact-button:hover{
    border-color:#ef71ff;
    box-shadow:0 0 22px rgba(203,48,255,.35);
}

.sv-footer-grid > div:last-child p{
    color:#aaa6b7;
    font-size:.87rem;
    line-height:1.7;
    margin:8px 0;
}

.sv-footer-bottom{
    width:min(1380px,92%);
    margin:0 auto;
    min-height:70px;
    border-top:1px solid rgba(255,255,255,.09);
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px;
}

.sv-footer-bottom p{
    margin:0;
    color:#777483;
    font-size:.76rem;
}

.sv-footer-bottom > div{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:22px;
    flex-wrap:wrap;
}

.sv-footer-bottom a{
    margin:0 !important;
    color:#898594;
    font-size:.75rem;
}


/* TABLETTE */

@media(max-width:1050px){

    .sv-footer-grid{
        grid-template-columns:1.3fr 1fr;
        gap:45px;
    }
}


/* MOBILE */

@media(max-width:650px){

    .sv-footer{
        padding-top:50px;
    }

    .sv-footer-grid{
        width:90%;
        grid-template-columns:1fr;
        gap:38px;
        padding-bottom:40px;
    }

    .sv-footer-bottom{
        width:90%;
        padding:25px 0 30px;
        flex-direction:column;
        align-items:flex-start;
    }

    .sv-footer-bottom > div{
        justify-content:flex-start;
        gap:12px 20px;
    }
}


/* Footer navigation */
.sv-footer-nav{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.sv-footer-nav a{
    display:block;
    margin:0 0 9px !important;
    color:#aaa6b7;
    font-size:.88rem;
}

.sv-footer-nav a:hover{
    color:#ed70ff;
    transform:translateX(3px);
}

/* ===== PACKS — BADGES ===== */

.home-pack-names{
    display:flex !important;
    flex-wrap:wrap;
    gap:10px;
    margin:22px 0 24px;
}

.home-pack-names span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 14px;
    border:1px solid rgba(211,74,255,.55);
    border-radius:999px;
    background:rgba(122,40,190,.12);
    color:#f3d9ff;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.08em;
    line-height:1;
    white-space:nowrap;
    box-shadow:
        inset 0 0 12px rgba(173,49,255,.08),
        0 0 12px rgba(137,38,224,.10);
}

@media(max-width:650px){
    .home-pack-names{
        gap:8px;
    }

    .home-pack-names span{
        padding:7px 11px;
        font-size:.62rem;
    }
}


/* =========================================================
   SPECTRAVISION — A PROPOS V2
   ========================================================= */

.sv-about-v2{
    background:#03040a;
    color:#fff;
    overflow:hidden;
}

.sv-about-v2-container{
    position:relative;
    z-index:2;
    width:min(1380px,92%);
    margin:0 auto;
}

.sv-about-v2-eyebrow{
    margin:0 0 15px;
    color:#d34aff;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.sv-about-v2 h1,
.sv-about-v2 h2,
.sv-about-v2 h3{
    margin-top:0;
    color:#fff;
}

.sv-about-v2 h1{
    margin-bottom:25px;
    font-size:clamp(2.7rem,6vw,5.8rem);
    line-height:.95;
    letter-spacing:-.055em;
}

.sv-about-v2 h1 em,
.sv-about-v2 h2 em,
.sv-about-v2 h2 span{
    color:#d34aff;
    font-style:normal;
}

.sv-about-v2 h2{
    margin-bottom:20px;
    font-size:clamp(2rem,4vw,4rem);
    line-height:1;
    letter-spacing:-.04em;
}

.sv-about-v2 p{
    color:#aaa6b7;
    line-height:1.75;
}


/* HERO */

.sv-about-v2-hero{
    position:relative;
    display:flex;
    align-items:center;
    min-height:620px;
    padding:120px 0 90px;
    background:
        radial-gradient(circle at 78% 45%,rgba(133,36,224,.22),transparent 33%),
        radial-gradient(circle at 20% 20%,rgba(211,74,255,.08),transparent 25%),
        #03040a;
}

.sv-about-v2-glow{
    position:absolute;
    top:15%;
    right:-120px;
    width:550px;
    height:550px;
    border-radius:50%;
    background:rgba(137,38,224,.13);
    filter:blur(100px);
    pointer-events:none;
}

.sv-about-v2-intro{
    max-width:760px;
    margin:0;
    font-size:1.12rem;
}

.sv-about-v2-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:25px;
    margin-top:35px;
}


/* SECTIONS */

.sv-about-v2-section{
    padding:95px 0;
    border-top:1px solid rgba(255,255,255,.06);
}

.sv-about-v2-dark{
    background:
        radial-gradient(circle at 50% 0,rgba(129,35,211,.10),transparent 35%),
        #060710;
}

.sv-about-v2-story{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:100px;
    align-items:start;
}

.sv-about-v2-story-text{
    max-width:680px;
}

.sv-about-v2-story-text p:first-child{
    margin-top:0;
    color:#fff;
    font-size:1.25rem;
}

.sv-about-v2-heading{
    max-width:820px;
    margin-bottom:48px;
}


/* SAVOIR-FAIRE */

.sv-about-v2-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.sv-about-v2-card{
    position:relative;
    display:block;
    min-height:285px;
    padding:30px;
    overflow:hidden;
    border:1px solid rgba(211,74,255,.22);
    border-radius:20px;
    background:
        linear-gradient(145deg,rgba(128,38,196,.10),rgba(255,255,255,.015));
    text-decoration:none;
    transition:.25s ease;
}

.sv-about-v2-card:hover{
    border-color:rgba(224,91,255,.7);
    transform:translateY(-5px);
    box-shadow:0 15px 45px rgba(111,25,183,.18);
}

.sv-about-v2-card > span{
    display:block;
    margin-bottom:65px;
    color:#d34aff;
    font-size:.75rem;
    font-weight:800;
    letter-spacing:.15em;
}

.sv-about-v2-card h3{
    margin-bottom:12px;
    font-size:1.25rem;
}

.sv-about-v2-card p{
    margin:0;
    font-size:.9rem;
}


/* ETAPES */

.sv-about-v2-steps{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-top:45px;
}

.sv-about-v2-steps article{
    padding:27px 25px;
    border-top:1px solid rgba(211,74,255,.5);
    background:rgba(255,255,255,.018);
}

.sv-about-v2-steps strong{
    display:block;
    margin-bottom:35px;
    color:#d34aff;
    font-size:.72rem;
    letter-spacing:.15em;
}

.sv-about-v2-steps h3{
    margin-bottom:9px;
    font-size:1.15rem;
}

.sv-about-v2-steps p{
    margin:0;
    font-size:.88rem;
}


/* PUBLIC */

.sv-about-v2-audience{
    padding:90px 0;
    border-top:1px solid rgba(255,255,255,.06);
    border-bottom:1px solid rgba(255,255,255,.06);
    background:
        radial-gradient(circle at 50% 100%,rgba(142,42,222,.14),transparent 40%),
        #05060c;
}

.sv-about-v2-audience-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-top:45px;
}

.sv-about-v2-audience-grid > div{
    padding:28px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    background:rgba(255,255,255,.02);
}

.sv-about-v2-audience-grid strong{
    color:#fff;
    font-size:.8rem;
    letter-spacing:.12em;
}

.sv-about-v2-audience-grid p{
    margin:12px 0 0;
    font-size:.9rem;
}


/* CTA */

.sv-about-v2-cta{
    padding:80px 0;
}

.sv-about-v2-cta > .sv-about-v2-container{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:50px;
    padding:42px;
    border:1px solid rgba(211,74,255,.32);
    border-radius:24px;
    background:
        radial-gradient(circle at 85% 50%,rgba(139,35,225,.17),transparent 40%),
        rgba(255,255,255,.02);
}

.sv-about-v2-cta h2{
    margin-bottom:0;
}

.sv-about-v2-cta-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:17px;
    flex-shrink:0;
}


/* RESPONSIVE */

@media(max-width:1050px){

    .sv-about-v2-grid,
    .sv-about-v2-steps{
        grid-template-columns:repeat(2,1fr);
    }

    .sv-about-v2-story{
        grid-template-columns:1fr;
        gap:35px;
    }
}

@media(max-width:700px){

    .sv-about-v2-hero{
        min-height:auto;
        padding:95px 0 65px;
    }

    .sv-about-v2-section,
    .sv-about-v2-audience{
        padding:65px 0;
    }

    .sv-about-v2-grid,
    .sv-about-v2-steps,
    .sv-about-v2-audience-grid{
        grid-template-columns:1fr;
    }

    .sv-about-v2-card{
        min-height:auto;
    }

    .sv-about-v2-card > span{
        margin-bottom:35px;
    }

    .sv-about-v2-cta{
        padding:55px 0;
    }

    .sv-about-v2-cta > .sv-about-v2-container{
        display:block;
        padding:28px 24px;
    }

    .sv-about-v2-cta-actions{
        margin-top:30px;
    }
}


/* Accueil SpectraVision — maquette neon 28/09/2026 */
.sv-home-ref{min-height:100vh;background:radial-gradient(circle at 7% 50%,#281052 0,#090b1b 29%,#03050d 67%,#050610 100%);padding:28px 0 80px;color:#fff}
.svref-stage{width:min(1540px,94vw);margin:auto}.svref-ring{position:relative;display:grid;grid-template-columns:59% 41%;min-height:490px;padding:3px;border-radius:34px;overflow:hidden;background:linear-gradient(112deg,#ffd16d 0,#f04bff 17%,#7b39ff 70%,#ffc45a 100%);box-shadow:0 0 22px #b934ff9c,0 0 60px #7225ff42}
.svref-ring:before{content:"";position:absolute;inset:3px;border-radius:31px;background:#050713}.svref-media,.svref-copy{position:relative;z-index:1}.svref-media{margin:4px 0 4px 4px;border-radius:27px 0 0 27px;overflow:hidden;min-height:480px;background:#05060a}.svref-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.svref-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),transparent 48%,rgba(1,2,7,.82))}
.svref-brand{position:absolute;z-index:3;top:25px;left:28px;padding:12px 20px;border:1px solid #a744df;border-radius:25px;background:#080914dc;box-shadow:0 0 18px #9d2ee15e;font-size:18px}.svref-brand small{display:block;margin-left:27px;font-size:10px;color:#ddd}.svref-play{position:absolute;z-index:4;left:50%;top:52%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;border:3px solid #e181ff;border-radius:50%;background:#431579cf;color:#fff;text-decoration:none;font-size:28px;box-shadow:0 0 27px #c63fff}.svref-caption{position:absolute;z-index:3;left:30px;bottom:26px}.svref-caption b,.svref-caption span{display:block}.svref-caption span{margin-top:4px;color:#bfc0ca;font-size:13px}
.svref-copy{padding:48px 52px 35px;background:radial-gradient(circle at 100% 90%,#a65d1040,transparent 27%),radial-gradient(circle at 100% 0,#40167c42,transparent 37%)}.svref-copy>small{font-weight:800;letter-spacing:.25em;color:#ddd}.svref-copy h1{margin:20px 0;font:900 clamp(38px,4vw,60px)/.98 Arial,sans-serif;letter-spacing:-.025em}.svref-copy h1 span{color:#f2ce79}.svref-copy>p{max-width:620px;color:#e1e2e7;font-size:17px;line-height:1.55}.svref-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:27px 0}.svref-benefits div{text-align:center}.svref-benefits i{display:grid;place-items:center;width:57px;height:57px;margin:0 auto 9px;border:1px solid #9d36e3;border-radius:50%;box-shadow:0 0 18px #8f2cda;color:#fff;font-style:normal;font-size:24px}.svref-benefits b{font-size:11px;line-height:1.25}.svref-actions{display:flex;gap:16px}.svref-actions a{flex:1;padding:16px;border:1px solid #b344dc;border-radius:30px;box-shadow:0 0 14px #8b27c75c;color:#fff;text-align:center;text-decoration:none;font-size:12px;font-weight:900}.svref-actions .gold{border-color:#ffe18b;background:linear-gradient(100deg,#ffd86c,#f6b83d);box-shadow:0 0 20px #f5b53b80;color:#090a0f}

@media(max-width:1100px){.svref-ring{grid-template-columns:1fr}.svref-media{min-height:470px;margin:4px 4px 0;border-radius:27px 27px 0 0}}
@media(max-width:650px){.sv-home-ref{padding-top:12px}.svref-stage{width:94vw}.svref-ring{border-radius:24px}.svref-media{min-height:340px;border-radius:20px 20px 0 0}.svref-brand{top:14px;left:14px}.svref-copy{padding:32px 20px}.svref-copy h1{font-size:39px}.svref-copy>p{font-size:15px}.svref-benefits{grid-template-columns:repeat(2,1fr)}.svref-actions{flex-direction:column}}

/* Accueil : définition unique des cinq cartes de index.html. */
.svref-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:1fr;gap:14px;margin:14px auto 0;width:100%}
.svref-cards>a{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:374px;min-width:0;overflow:hidden;border:2px solid #bd49ed;border-radius:23px;background:#080a12;box-shadow:0 0 15px #9e32d980;color:#fff;text-decoration:none;transition:transform .25s,box-shadow .25s}
.svref-cards>a:nth-child(odd){border-color:#f0bd53;box-shadow:0 0 15px #d69b3470}
.svref-cards>a:hover{transform:translateY(-5px);box-shadow:0 0 28px #c13cffaa}
.svref-cards>a:focus-visible{outline:3px solid #fff;outline-offset:4px}
.svref-cards>a>img{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;margin:0;padding:0}
.svref-cards>a::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 30%,rgba(3,5,12,.18) 48%,rgba(3,5,12,.82) 69%,rgba(3,5,12,.94) 100%)}
.svref-cards>a>div{display:flex;flex:none;gap:9px;min-height:106px;padding:15px 12px 8px}
.svref-cards i{flex:none;color:#f4c759;font-style:normal;font-size:25px;line-height:36px}
.svref-cards span{min-width:0}
.svref-cards span b,.svref-cards span small{display:block}
.svref-cards span b{min-height:36px;margin-bottom:5px;color:#f3d783;font-size:14px;line-height:18px;overflow-wrap:break-word}
.svref-cards span small{color:#f2f2f6;font-size:12px;line-height:16px;text-shadow:0 1px 3px #000}
.svref-cards em{background:rgba(5,6,14,.72);display:block;flex:none;width:calc(100% - 28px);margin:8px auto 14px;padding:9px;border:1px solid #b94ae5;border-radius:22px;color:#f2d87f;text-align:center;font-style:normal;font-size:10px;line-height:16px;font-weight:900}
@media(max-width:1023px){.svref-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.svref-cards>a:last-child{grid-column:1/-1;width:calc((100% - 14px)/2);justify-self:center}.svref-cards>a>img{height:100%}}
@media(max-width:650px){.svref-cards{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px}.svref-cards>a,.svref-cards>a:last-child{grid-column:auto;width:100%;border-radius:18px}.svref-cards>a{min-height:clamp(374px,100vw,460px)}.svref-cards>a>img{height:100%}}

/* Mobile final — accueil neon */
.svref-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(max-width:780px){
 body.sv-static-header{overflow-x:hidden}.sv-home-ref{padding:10px 0 48px}.svref-stage{width:calc(100% - 20px)}
 .svref-ring{display:block;min-height:0;padding:2px;border-radius:22px}.svref-ring:before{inset:2px;border-radius:20px}
 .svref-media{height:58vw;min-height:260px;max-height:390px;margin:3px 3px 0;border-radius:18px 18px 0 0}
 .svref-brand{top:12px;left:12px;padding:8px 12px;font-size:13px}.svref-brand small{margin-left:19px;font-size:8px}
 .svref-play{width:58px;height:58px;font-size:21px}.svref-caption{left:17px;bottom:16px}.svref-caption b{font-size:12px}.svref-caption span{font-size:11px}
 .svref-copy{padding:28px 17px 25px}.svref-copy>small{font-size:10px;letter-spacing:.2em}.svref-copy h1{font-size:clamp(32px,10vw,43px);margin:13px 0 16px}
 .svref-copy>p{font-size:14px;line-height:1.5}.svref-benefits{grid-template-columns:1fr 1fr;gap:18px 8px;margin:23px 0}.svref-benefits i{width:48px;height:48px;font-size:20px}.svref-benefits b{font-size:10px}
 .svref-actions{display:grid;grid-template-columns:1fr;gap:10px}.svref-actions a{padding:14px 10px;font-size:11px}
 
 
 .sv-home-gallery{padding-left:10px!important;padding-right:10px!important}.sv-home-gallery-grid{grid-template-columns:1fr!important}
}

@media(max-width:780px){.sv-home-ref .svref-caption{max-width:calc(100% - 34px)}}

/* Three playable previews on the homepage. */
.sv-home-playable .sv-home-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px;height:auto!important;min-height:0!important;grid-template-rows:auto!important}
.sv-home-playable .sv-home-gallery-card,
.sv-home-playable .sv-home-gallery-card:first-child{grid-column:auto!important;grid-row:auto!important;aspect-ratio:auto!important;display:flex!important;flex-direction:column;min-width:0;height:auto!important;min-height:0!important;max-height:none!important}
.sv-home-playable .sv-home-gallery-card video{position:static;flex:none;display:block;width:100%;height:auto!important;aspect-ratio:16/9!important;object-fit:contain;background:#05060b;transform:none}
.sv-home-playable .sv-home-creation-title{display:block!important;position:static!important;flex:none;padding:14px 16px;font-size:14px;line-height:1.4;color:#f3d175}
@media(max-width:780px){.sv-home-playable .sv-home-gallery-grid{grid-template-columns:1fr!important;gap:16px}}

/* YouTube players load only on a visitor click. */
.sv-home-playable .sv-youtube-media{position:relative;aspect-ratio:16/9;width:100%;flex:none;overflow:hidden;background:#05060b}
.sv-home-playable .sv-youtube-play{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:#05060b;cursor:pointer}
.sv-home-playable .sv-youtube-play img{display:block;width:100%;height:100%;object-fit:cover;transform:none!important}
.sv-home-playable .sv-youtube-play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:46px;border-radius:13px;background:#e62117;color:#fff;font-size:23px;padding-left:4px;box-shadow:0 3px 18px #0008}
.sv-home-playable .sv-youtube-play:hover .sv-youtube-play-icon{background:#ff3026}
.sv-home-playable .sv-youtube-play:focus-visible{outline:3px solid #f3d175;outline-offset:-4px}
.sv-home-playable .sv-youtube-media iframe{display:block;width:100%;height:100%;border:0}
.sv-home-playable .sv-home-creation-title{min-height:64px}
.sv-home-playable .sv-youtube-external{display:block;width:auto;height:auto;padding:0 16px 14px;color:#c6b9e0;font-size:12px;text-decoration:none}
