/* LOT 7.1 — reference-led contact, institutional why-section, and closing CTA. */
.lot6-contact{--l6-ink:#12294f;--l6-muted:#5f7392;color:#12294f;background:linear-gradient(135deg,#f4f9ff,#eaf4ff 55%,#f7fbff);padding:clamp(48px,6vw,92px) 0;}
.lot6-contact:before{top:-20%;right:-8%;background:radial-gradient(circle,#54baff25,transparent 66%)}
.lot6-contact:after{bottom:-12%;left:-14%;background:radial-gradient(circle,#91d9ff3b,transparent 68%)}
.lot6-contact-shell{width:min(1580px,calc(100% - 72px));}
.lot6-contact-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:stretch;gap:clamp(28px,4vw,72px)}
.lot6-contact-editorial{position:relative;isolation:isolate;display:flex;min-width:0;flex-direction:column;align-self:stretch;justify-content:flex-start;overflow:hidden;padding:clamp(8px,1.6vw,24px) 0 0}
.lot6-contact-eyebrow,.lot6-form-heading>span{color:#087bf1}
.lot6-contact-editorial h2{max-width:10ch;margin-bottom:17px;color:#10264b;font-size:clamp(2.7rem,5.1vw,5.2rem);line-height:.98;}
.lot6-contact-editorial h2 em{color:#087ff4;text-shadow:none}
.lot6-contact-intro{max-width:39ch;color:#536c91;font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.55}
.lot6-contact-arguments{position:relative;z-index:2;gap:16px;margin:24px 0 24px}
.lot6-contact-arguments li{align-items:flex-start;gap:15px;color:#17325b;font-size:.93rem;line-height:1.35}
.lot6-contact-arguments li>span{width:44px;height:44px;border:0;background:#fff;color:#0788ff;font-size:1.2rem;box-shadow:0 8px 22px #3174b21b}
.lot6-contact-arguments li div{display:grid;gap:4px;padding-top:2px}
.lot6-contact-arguments b{font-size:.95rem;font-weight:720}
.lot6-contact-arguments small{max-width:34ch;color:#607796;font-size:.81rem;line-height:1.45}
.lot6-contact-photo{position:absolute;z-index:0;inset:auto -8% 0 -12%;height:43%;min-height:300px;max-height:430px;margin:0;border:0;border-radius:28px 28px 0 0;background:#dcecff;box-shadow:none}
.lot6-contact-photo:before{position:absolute;z-index:1;inset:0;content:"";background:linear-gradient(180deg,#edf6ff 0%,#edf6ff25 35%,#06193312 100%);pointer-events:none}
.lot6-contact-photo picture,.lot6-contact-photo img{display:block;width:100%;height:100%}
.lot6-contact-photo img{position:absolute;inset:0;object-fit:cover;object-position:center 35%}
.lot6-contact-form-panel{align-self:center;padding:clamp(25px,3.4vw,52px);border:1px solid #91c9ff65;border-radius:23px;background:#ffffffed;box-shadow:0 20px 70px #3b6c9b18,inset 0 1px #fff;backdrop-filter:blur(14px)}
.lot6-form-heading{margin-bottom:25px}
.lot6-form-heading>span{font-size:.72rem}
.lot6-form-heading h3{font-size:clamp(1.65rem,2.2vw,2.35rem);color:#10264b}
.lot6-form-heading p{max-width:70ch;color:#627797;font-size:clamp(.92rem,1.1vw,1.05rem);line-height:1.5}
.lot6-form{display:block;height:auto;min-height:0;margin:0}
.lot6-form-fields{display:grid;height:auto;min-height:0;align-content:start;align-items:start;grid-auto-rows:min-content;gap:15px 20px;margin:0}
.lot6-field{align-self:start;margin:0}
.lot6-field>label,.lot6-contact-preference legend{color:#243c61;font-size:.82rem}
.lot6-field input:not([type=checkbox]):not([type=radio]),.lot6-field select,.lot6-field textarea{min-height:50px;border-color:#c7d9ee;background:#fff;color:#142b50;padding:12px 15px;font-size:.91rem}
.lot6-field textarea{min-height:110px}
.lot6-field input::placeholder,.lot6-field textarea::placeholder{color:#8495ad}
.lot6-phone-controls{display:flex!important;align-items:stretch;gap:8px}.lot6-phone-controls select{flex:0 0 39%;min-width:0}.lot6-phone-controls input{flex:1 1 auto;min-width:0}
.lot6-contact-preference{gap:10px 25px}
.lot6-contact-preference>label{color:#324a6c}
.lot6-contact input[type=radio],.lot6-contact input[type=checkbox]{accent-color:#0787f9}
.lot6-consent{color:#607695!important;font-size:.76rem!important}
.lot6-consent a{color:#087bf1}
.lot6-submit{min-width:230px;min-height:56px;border:0;border-radius:999px;background:linear-gradient(100deg,#087df5,#05b9ed);box-shadow:0 12px 27px #158ee53d;color:#fff;font-size:.95rem}
/* Responsive contact form rules retained from LOT 7.1. */
@media(max-width:1100px){
  .lot6-contact-shell{width:min(calc(100% - 48px),980px)}
  .lot6-contact-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}
  .lot6-contact-photo{inset:auto -6% 0;height:38%;min-height:240px}
}
@media(max-width:760px){
  .lot6-contact{padding:52px 0}
  .lot6-contact-shell{width:calc(100% - 36px)}
  .lot6-contact-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .lot6-contact-editorial,.lot6-contact-form-panel{grid-column:auto;grid-row:auto}
  .lot6-contact-editorial{min-height:0;padding:0;overflow:visible}
  .lot6-contact-editorial h2{max-width:12ch;font-size:clamp(2.6rem,11vw,4rem)}
  .lot6-contact-arguments{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:19px}
  .lot6-contact-photo{position:relative;inset:auto;width:100%;height:clamp(250px,70vw,390px);min-height:0;max-height:none;margin-top:9px;border-radius:18px}
  .lot6-contact-photo:before{background:linear-gradient(0deg,#06244925,transparent 45%)}
  .lot6-contact-form-panel{grid-column:auto;grid-row:auto;padding:24px 20px;border-radius:18px}
  .lot6-form-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .lot6-phone-controls{grid-template-columns:minmax(115px,.8fr) minmax(0,1.2fr)}
}
@media(max-width:430px){
  .lot6-contact-shell{width:calc(100% - 28px)}
  .lot6-contact-arguments{grid-template-columns:1fr;gap:12px}
  .lot6-contact-arguments li>span{width:38px;height:38px}
  .lot6-form-fields{grid-template-columns:1fr}
  .lot6-field:not(.lot6-field--full){grid-column:1}
  .lot6-phone-controls{grid-template-columns:minmax(112px,.8fr) minmax(0,1.2fr)}
  .lot6-form-heading h3{font-size:1.45rem}
  .lot6-submit{width:100%;min-width:0}
}

/* Preserve the approved Why Victovis composition. */
.lot71-why{display:grid;grid-template-columns:minmax(0,45%) minmax(0,55%);min-height:clamp(430px,39vw,585px);overflow:hidden;background:linear-gradient(110deg,#edf7ff,#f9fcff);color:#10264b}
.lot71-why-photo{position:relative;min-width:0;min-height:0;overflow:hidden}
.lot71-why-photo:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,transparent 82%,#edf7ff50 100%),linear-gradient(0deg,#0a23431c,transparent 44%)}
.lot71-why-photo img{display:block;width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:left center}
.lot71-why-copy{position:relative;align-self:center;padding:clamp(36px,4.4vw,68px) clamp(28px,4.6vw,72px) clamp(36px,4.4vw,68px) clamp(28px,3.6vw,55px)}
.lot71-eyebrow{margin:0 0 13px;color:#0786ef;font-size:.68rem;font-weight:800;letter-spacing:.2em}
.lot71-why .lot71-eyebrow{color:#087bf1}
.lot71-why-copy h2{max-width:18ch;margin:0 0 clamp(18px,2.2vw,32px);color:#10264b;font-size:clamp(2.05rem,3.15vw,3.25rem);line-height:1.08;letter-spacing:-.045em}
.lot71-why-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(125px,19%);align-items:center;gap:clamp(18px,2.8vw,42px)}
.lot71-why-copy ul{display:grid;gap:clamp(10px,1.2vw,17px);margin:0;padding:0;list-style:none}
.lot71-why-copy li{display:flex;align-items:center;gap:14px;color:#294469;font-size:clamp(.9rem,1.05vw,1rem);line-height:1.5}
.lot71-why-copy li>span{display:grid;width:30px;height:30px;flex:none;place-items:center;border-radius:50%;background:linear-gradient(145deg,#27eff0,#63dce9);color:#052d50;font-weight:900;box-shadow:0 4px 15px #12c8df32}
.lot71-story{display:flex;width:auto;max-width:165px;flex-direction:column;align-items:center;gap:13px;margin:0;color:#16345e;text-align:center}
.lot71-story-play{display:grid;width:76px;height:76px;place-items:center;border:1px solid #46e5f6;border-radius:50%;background:radial-gradient(circle at 40% 36%,#0d3757,#031226 72%);color:#39e7f5;box-shadow:0 0 0 8px #26bfe51a,0 0 30px #13c9f14a;font-size:1.15rem}
.lot71-story b,.lot71-story small{display:block}
.lot71-story b{font-size:1rem}
.lot71-story small{max-width:18ch;margin-top:3px;color:#516987;font-size:.75rem;line-height:1.4}

/* LOT 7.5.1 — CTA and footer geometry aligned to the supplied 1034 × 760 reference. */
.lot71-cta{position:relative;isolation:isolate;display:block;height:369px;min-height:369px;margin-bottom:-10px;padding:0;overflow:hidden;background:#031126;color:#fff}
.lot71-cta-art{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,#03112655 0%,#03112622 31%,#03112608 61%,#03112633 100%),linear-gradient(0deg,#03112622,transparent 62%),url('../images/victovis-cta-final.png');background-position:center 54%;background-size:cover}
.lot71-cta:before{position:absolute;z-index:-1;inset:0;content:"";background:radial-gradient(ellipse at 56% 74%,#08c9ff25,transparent 33%);pointer-events:none}
.lot71-cta-copy{position:absolute;z-index:1;top:29.5%;left:18px;width:min(455px,46vw);max-width:455px}
.lot71-cta .lot71-eyebrow{margin:0 0 2px;color:#43e7f1;font-size:9px;font-weight:800;letter-spacing:.17em}
.lot71-cta h2{max-width:none;margin:0 0 13px;color:#fff;font-size:clamp(34px,3.85vw,40px);line-height:1.04;letter-spacing:-.045em}
.lot71-cta-copy>p:not(.lot71-eyebrow){max-width:48ch;margin:0;color:#edf3fb;font-size:12px;line-height:1.45}
.lot71-cta-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}
.lot71-cta-actions a{display:inline-flex;width:152px;min-height:36px;min-width:152px;flex:0 0 152px;align-items:center;justify-content:center;gap:10px;padding:0 10px;border:1px solid #48e6ec;border-radius:999px;background:#42e3e8;color:#06243a;font-size:11px;font-weight:750;text-decoration:none}
.lot71-cta-actions .lot71-cta-secondary{min-width:125px;border-color:#ffffffa3;background:#06172b45;color:#fff}
.lot71-cta-mark{position:absolute;z-index:1;top:50%;left:56%;display:flex;width:120px;height:102px;align-items:center;justify-content:flex-start;overflow:hidden;transform:translate(-50%,-50%);filter:drop-shadow(0 0 22px #168bffad)}
.lot71-cta-mark img{display:block;width:100%;height:100%;max-width:none;flex:none;object-fit:contain;object-position:center;filter:drop-shadow(0 0 12px #118dff7a)}
.lot71-contact-card{position:absolute;z-index:1;top:27.5%;right:10.6%;display:grid;width:145px;height:166px;grid-template-rows:28px 28px 28px;gap:0;box-sizing:border-box;margin:0;padding:18px 12px;border:1px solid #35d9f6a6;border-radius:12px;background:linear-gradient(140deg,#061c35e8,#03142be8);box-shadow:0 18px 55px #00102170,inset 0 1px #ffffff18;backdrop-filter:blur(12px);font-style:normal}
.lot71-contact-card>a,.lot71-contact-card>div{display:flex;min-width:0;min-height:28px;height:28px;align-items:center;gap:8px;color:#fff;text-decoration:none}
.lot71-contact-card>a:nth-child(2){margin-top:10px}
.lot71-contact-card>p:empty{display:none}
.lot71-contact-card>div{margin-top:44px}
.lot71-contact-card>a>span:first-child,.lot71-contact-card>div>span:first-child{display:grid;width:26px;height:26px;flex:none;place-items:center;border:1px solid #35d9f6;border-radius:50%;color:#48e5f6;font-size:10px}
.lot71-contact-card svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lot71-contact-card small,.lot71-contact-card b{display:block}
.lot71-contact-card small{margin-bottom:3px;color:#a8bed5;font-size:8px;line-height:1.2}
.lot71-contact-card b{font-size:9px;font-weight:650;line-height:1.25;overflow-wrap:anywhere}

/* The footer uses the reference's centered, four-column information block. */
.site-footer.v7-footer{position:relative;isolation:isolate;min-height:377px;overflow:hidden;margin-top:14px;padding:59px 0 13px;border-top:1px solid #54baff35;background:radial-gradient(ellipse at 8% 0%,#113b7045,transparent 42%),linear-gradient(135deg,#050d1b,#081a31 55%,#071326);color:#eaf2ff}
.v7-footer:before{position:absolute;z-index:-1;inset:0;content:"";pointer-events:none;background:linear-gradient(110deg,transparent 0 68%,#168bff08 68.1%,transparent 68.4%),radial-gradient(circle at 93% 20%,#168bff13,transparent 22%)}
.v7-footer-wrap{position:relative;width:min(870px,calc(100% - 48px));margin-inline:auto}
.v7-footer-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,1fr) minmax(0,.97fr) minmax(0,1.57fr);align-items:start;gap:14px;padding-bottom:12px}
.v7-footer-brand{min-width:0}
.v7-footer-logo{display:inline-flex;width:min(211px,100%);align-items:center}
.v7-footer-logo img{display:block;width:100%;height:auto;max-height:46px;object-fit:contain;object-position:left center}
.v7-footer-tagline{max-width:none;margin:5px 0 12px;color:#c0cce0;font-size:12px;line-height:1.5}
.v7-footer-legal-name{margin:0 0 5px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em}
.v7-footer-incorporation{max-width:26ch;margin:0 0 8px;color:#aabbd1;font-size:9px;line-height:1.4}
.v7-footer-brand address{display:grid;gap:5px;font-style:normal}
.v7-footer-brand address a{display:flex;width:fit-content;align-items:center;gap:8px;color:#c2d1e6;font-size:10px;text-decoration:none}
.v7-footer-brand address svg{width:15px;height:15px;flex:none;fill:none;stroke:#32d9ef;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v7-footer-col{position:relative;display:flex;min-width:0;flex-direction:column;align-items:stretch;gap:6px;padding-left:18px;border-left:1px solid #67a8e52b}
.v7-footer-col h2{margin:0 0 10px;color:#3dddf1;font-size:9px;font-weight:750;letter-spacing:.13em;text-transform:uppercase}
.v7-footer-col a,.v7-footer-legal-unavailable{display:flex;min-height:17px;align-items:baseline;justify-content:space-between;gap:5px;width:100%;color:#d2dced;font-size:10px;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}
.v7-footer-legal-unavailable{display:block;color:#b9c8db}
.v7-footer-static{display:block;min-height:17px;color:#d2dced;font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.v7-footer-col a span{flex:0 0 auto;color:#41d9ec;opacity:0;transition:opacity .18s ease}
.v7-footer-col a:hover,.v7-footer-col a:focus-visible{color:#fff}
.v7-footer-col a:hover span,.v7-footer-col a:focus-visible span{opacity:1}
.v7-footer-payment-note{display:flex;min-height:35px;align-items:center;gap:14px;margin:0 0 12px;padding:8px 0;border-top:1px solid #bed4ed27;border-bottom:1px solid #bed4ed27}
.v7-footer-payment-note>span{flex:none;color:#43dcee;font-size:8px;font-weight:750;letter-spacing:.14em}
.v7-footer-payment-note p{margin:0;color:#aebed3;font-size:10px}
.v7-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:10px;border-top:1px solid #bed4ed27;color:#aebed3;font-size:9px;line-height:1.4}
.v7-footer-bottom span:last-child{text-align:right}
@media(max-width:900px){
  .lot71-cta{height:420px;min-height:420px}
  .lot71-cta-copy{top:25%;width:min(44vw,430px)}
  .lot71-cta-mark{left:59%;width:112px;height:98px}
  .lot71-contact-card{right:4%;width:142px}
  .v7-footer-grid{gap:12px}
  .v7-footer-col{padding-left:12px}
}
@media(min-width:701px) and (max-width:800px){
  .lot71-cta{height:282px;min-height:282px;margin-bottom:0}
  .home .wp-site-blocks>.wp-block-template-part:last-child{margin-block-start:0}
  .lot71-cta-art{background-position:center center}
  .lot71-cta-copy{top:23.8%;left:4.8%;width:48%;max-width:360px}
  .lot71-cta .lot71-eyebrow{font-size:7px;letter-spacing:.16em}
  .lot71-cta h2{margin-bottom:7px;font-size:30px;line-height:1.03;letter-spacing:-.045em}
  .lot71-cta-copy>p:not(.lot71-eyebrow){font-size:10px;line-height:1.45}
  .lot71-cta-actions{gap:9px;margin-top:9px}
  .lot71-cta-actions a{box-sizing:border-box;width:170px;min-width:170px;min-height:37px;flex-basis:170px;font-size:9px}
  .lot71-cta-actions .lot71-cta-secondary{width:139px;min-width:139px;flex-basis:139px}
  .lot71-cta-mark{top:33%;left:64.2%;width:98px;height:74px}
  .lot71-contact-card{top:16.7%;right:2.7%;width:166px;height:193px;padding:18px 12px}
  .lot71-contact-card small{font-size:8px}
  .lot71-contact-card b{font-size:9px}
  .site-footer.v7-footer{box-sizing:border-box;min-height:346px;margin-top:0;border-top:2px solid #164365;padding:40px 0 13px}
  .v7-footer-wrap{width:calc(100% - 68px)}
  .v7-footer-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.95fr) minmax(0,.84fr) minmax(0,.88fr);gap:14px;padding-bottom:12px}
  .v7-footer-logo{width:min(190px,100%)}
  .v7-footer-logo img{max-height:42px}
  .v7-footer-tagline{max-width:160px;margin:5px 0 10px;font-size:10px;line-height:1.45}
  .v7-footer-legal-name{margin:0 0 4px;padding-top:7px;border-top:1px solid #bed4ed35;font-size:9px}
  .v7-footer-incorporation{margin-bottom:6px;font-size:8px}
  .v7-footer-brand address{gap:4px}
  .v7-footer-brand address a{gap:6px;font-size:9px}
  .v7-footer-brand address svg{width:12px;height:12px}
  .v7-footer-col{gap:4px;padding-left:12px}
  .v7-footer-col h2{margin-bottom:7px;font-size:8px}
  .v7-footer-col a,.v7-footer-legal-unavailable,.v7-footer-static{min-height:14px;font-size:9px;line-height:1.25}
  .v7-footer-payment-note{min-height:30px;margin-bottom:10px;padding:6px 0 6px 226px;gap:12px}
  .v7-footer-payment-note>span{font-size:7px}
  .v7-footer-payment-note p{font-size:9px}
  .v7-footer-bottom{gap:14px;margin-top:22px;padding-top:8px;font-size:8px}
}
@media(max-width:700px){
  .home .wp-site-blocks>.wp-block-template-part:last-child{margin-block-start:0}
  .lot71-cta{display:grid;height:auto;min-height:0;grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:0;padding:32px 20px 26px}
  .lot71-cta-copy,.lot71-cta-mark,.lot71-contact-card{position:relative;top:auto;right:auto;left:auto;grid-column:1;grid-row:auto;transform:none}
  .lot71-cta-copy{width:auto;max-width:520px}
  .lot71-cta h2{font-size:clamp(30px,8vw,40px)}
  .lot71-cta-mark{justify-self:center;width:118px;height:102px}
  .lot71-contact-card{width:min(100%,360px);height:auto;justify-self:center;grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:auto;gap:8px;padding:12px}
  .lot71-contact-card>a,.lot71-contact-card>div{height:auto;min-height:34px}.lot71-contact-card>a:nth-child(2),.lot71-contact-card>div{margin-top:0}
  .v7-footer.v7-footer{min-height:0;margin-top:0;border-top:2px solid #164365;padding:40px 0 18px}
  .v7-footer-wrap{width:calc(100% - 36px)}
  .v7-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px;padding-bottom:24px}
  .v7-footer-brand{grid-column:1/-1;padding-bottom:18px;border-bottom:1px solid #bed4ed27}
  .v7-footer-col{padding-left:11px}
  .v7-footer-col.v7-footer-legal-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-footer-legal-col h2{grid-column:1/-1}
  .v7-footer-payment-note{align-items:flex-start;flex-direction:column;gap:5px;padding:10px 0}
  .v7-footer-bottom{flex-direction:column;gap:5px}
  .v7-footer-bottom span:last-child{text-align:left}
}
@media(prefers-reduced-motion:reduce){
  .lot71-cta-actions a,.lot71-contact-card a,.v7-footer-col a,.v7-footer-col a span,.v7-footer-brand address a{transition:none}
}

/* CTA / FOOTER — jonction sans bande blanche */
.home .wp-site-blocks > .wp-block-template-part:last-child {
    margin-block-start: 0 !important;
    margin-top: 0 !important;
}

.home .site-footer.v7-footer {
    margin-top: 0 !important;
}

/* VICTOVIS — Footer premium desktop */
@media (min-width: 1024px) {
    .site-footer.v7-footer .v7-footer-wrap {
        width: min(1360px, calc(100% - 100px));
        max-width: none;
    }

    .site-footer.v7-footer .v7-footer-grid {
        grid-template-columns: 1.45fr 1fr 1fr 1.15fr;
        gap: 48px;
    }
}

/* VICTOVIS — ajustement des proportions du Footer */
@media (min-width: 1024px) {
    .site-footer.v7-footer .v7-footer-wrap {
        width: min(1250px, calc(100% - 80px));
    }

    .site-footer.v7-footer .v7-footer-grid {
        grid-template-columns: 1.2fr 1fr 0.9fr 1.1fr;
        gap: 28px;
    }
}

/* VICTOVIS — carte de contact CTA */
@media (min-width: 1024px) {
    .lot71-cta .lot71-contact-card {
        width: 210px;
        height: auto;
        min-height: 250px;
        padding: 20px 16px;
        grid-template-rows: none;
        grid-auto-rows: auto;
        align-content: space-between;
    }

    .lot71-cta .lot71-contact-card > a,
    .lot71-cta .lot71-contact-card > div {
        height: auto;
        min-height: 38px;
        margin-top: 0;
    }
}

/* VICTOVIS — carte CTA à 4 informations */
.lot71-contact-card {
    grid-template-rows: none;
    grid-auto-rows: auto;
    gap: 12px;
    height: auto;
    min-height: 220px;
    align-content: center;
}

.lot71-contact-card > a,
.lot71-contact-card > div {
    height: auto;
    min-height: 38px;
    margin-top: 0 !important;
}

.lot71-service-area {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lot71-service-area > span:first-child {
    display: grid;
    width: 26px;
    height: 26px;
    flex: none;
    place-items: center;
    border: 1px solid #35d9f6;
    border-radius: 50%;
    color: #48e5f6;
}

/* Victovis — icone localisation harmonisee */
.lot71-service-area > span:first-child {
    color: #48e5f6 !important;
    font-size: 13px;
}

/* VICTOVIS — logos officiels des moyens de paiement */
.site-footer.v7-footer .v7-footer-payment-note {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 22px;
    padding: 22px 0;
}

.site-footer.v7-footer .v7-footer-payment-note > span {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    white-space: nowrap;
}

.site-footer.v7-footer .v7-footer-payment-logos {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
}

.site-footer.v7-footer .v7-footer-payment-logos img {
    display: block;
    width: 82px;
    height: 42px;
    object-fit: contain;
    padding: 7px;
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid #dce8f4;
    border-radius: 7px;
}

@media (max-width: 700px) {
    .site-footer.v7-footer .v7-footer-payment-note {
        flex-direction: column;
        gap: 12px;
    }

    .site-footer.v7-footer .v7-footer-payment-logos {
        gap: 8px;
    }

    .site-footer.v7-footer .v7-footer-payment-logos img {
        width: 68px;
        height: 38px;
    }
}

/* VICTOVIS — bandeau final paiements + copyright */
.site-footer.v7-footer .v7-footer-wrap {
    position: relative;
}

.site-footer.v7-footer .v7-footer-payment-note {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    padding: 18px 0;
    padding-right: 360px;
    margin: 0;
    border-bottom: 0;
}

.site-footer.v7-footer .v7-footer-payment-logos {
    justify-content: flex-start;
}

.site-footer.v7-footer .v7-footer-bottom {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0;
    padding: 0 0 18px;
    border: 0;
}

.site-footer.v7-footer .v7-footer-bottom span:last-child {
    display: none;
}

@media (max-width: 1100px) {
    .site-footer.v7-footer .v7-footer-payment-note {
        padding-right: 0;
    }

    .site-footer.v7-footer .v7-footer-bottom {
        position: static;
        justify-content: flex-start;
        padding: 0 0 18px;
    }
}

/* VICTOVIS — taille finale des logos de paiement */
.site-footer.v7-footer .v7-footer-payment-logos {
    gap: 10px;
}

.site-footer.v7-footer .v7-footer-payment-logos img {
    width: 65px;
    height: 34px;
    padding: 5px;
}

@media (max-width: 700px) {
    .site-footer.v7-footer .v7-footer-payment-logos img {
        width: 60px;
        height: 32px;
    }
}

/* VICTOVIS — alignement paiements et copyright */
@media (min-width: 1101px) {
    .site-footer.v7-footer .v7-footer-payment-note {
        min-height: 64px;
        padding: 12px 360px 12px 0;
        box-sizing: border-box;
        align-items: center;
    }

    .site-footer.v7-footer .v7-footer-bottom {
        top: auto;
        bottom: 0;
        height: 64px;
        padding: 0;
        margin: 0;
        display: flex;
        align-items: center;
        box-sizing: border-box;
    }
}

/* VICTOVIS — V metallique lumineux dans le CTA */
@media (min-width: 1024px) {
    .lot71-cta .lot71-cta-mark {
        width: 155px;
        height: 125px;
        filter: drop-shadow(0 0 18px rgba(0, 170, 255, .95))
                drop-shadow(0 0 38px rgba(0, 110, 255, .65));
    }

    .lot71-cta .lot71-cta-mark img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        filter: drop-shadow(0 0 12px rgba(45, 190, 255, .85));
    }
}

/* VICTOVIS — position finale du V sur desktop */
@media (min-width: 1024px) {
    .lot71-cta .lot71-cta-mark {
        top: 56%;
    }
}

/* VICTOVIS — position du V selon la maquette */
@media (min-width: 1024px) {
    .lot71-cta .lot71-cta-mark {
        top: 38%;
        left: 61%;
    }
}

/* VICTOVIS — transparence lumineuse du V */
@media (min-width: 1024px) {
    .lot71-cta .lot71-cta-mark img {
        opacity: 0.86;
        filter: drop-shadow(0 0 16px rgba(52, 190, 255, 0.85));
    }

    .lot71-cta .lot71-cta-mark {
        filter: drop-shadow(0 0 24px rgba(0, 170, 255, 0.75));
    }
}

/* VICTOVIS — ajustement position du V */
@media (min-width: 1024px) {
    .lot71-cta .lot71-cta-mark {
        left: 54.8% !important;
        top: 54.5% !important;
    }
}

/* VICTOVIS — ajustement horizontal du V */
@media (min-width: 1024px) {
    .lot71-cta .lot71-cta-mark {
        left: 58% !important;
    }
}

/* VICTOVIS — largeur de la section Pourquoi Victovis */
@media (min-width: 1024px) {
    .lot71-why {
        width: calc(100% - 60px);
        max-width: 1600px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }
}

/* VICTOVIS — hauteur réduite pour Pourquoi Victovis */
@media (min-width: 1024px) {
    .lot71-why {
        width: 100%;
        max-width: none;
        min-height: 490px;
        margin-left: 0;
        margin-right: 0;
    }

    .lot71-why-copy {
        padding-top: 28px;
        padding-bottom: 28px;
    }
}

/* VICTOVIS — Contact compact desktop */
@media (min-width: 1024px) {
    .lot6-contact {
        padding-top: 24px;
        padding-bottom: 24px;
    }

    .lot6-contact-editorial {
        justify-content: flex-start;
    }

    .lot6-contact-photo {
        height: 32%;
        min-height: 180px;
        max-height: 260px;
    }

    .lot6-contact-form-panel {
        padding: 25px 30px;
    }
}

/* VICTOVIS — supprimer le grand vide dans la colonne Contact */
@media (min-width: 1024px) {
    .lot6-contact .lot6-contact-editorial {
        overflow: visible;
    }

    .lot6-contact .lot6-contact-photo {
        position: relative;
        inset: auto;
        width: 100%;
        height: 180px;
        min-height: 0;
        max-height: none;
        margin-top: 18px;
        border-radius: 16px;
    }
}

/* VICTOVIS — espacement photo Contact */
@media (min-width: 1024px) {
    .lot6-contact .lot6-contact-photo {
        margin-top: 35px;
    }
}

/* VICTOVIS — espacement final photo Contact */
@media (min-width: 1024px) {
    .lot6-contact .lot6-contact-photo {
        margin-top: 16px;
    }
}

/* VICTOVIS — formulaire Contact plus compact sur desktop */
@media (min-width: 1024px) {
    .lot6-contact .lot6-form-fields {
        gap: 10px 18px;
    }

    .lot6-contact .lot6-field input:not([type=checkbox]):not([type=radio]),
    .lot6-contact .lot6-field select {
        min-height: 44px;
        padding: 9px 12px;
    }

    .lot6-contact .lot6-field textarea {
        min-height: 90px;
        padding: 10px 12px;
    }

    .lot6-contact .lot6-form-heading {
        margin-bottom: 16px;
    }
}

/* VICTOVIS — compactage final section Contact + photo */
@media (min-width: 1024px) {
    .lot6-contact {
        padding-top: 24px !important;
        padding-bottom: 12px !important;
    }

    .lot6-contact-shell {
        width: min(calc(100% - 48px), 1320px) !important;
    }

    .lot6-contact-grid {
        align-items: start !important;
        row-gap: 18px !important;
        column-gap: 40px !important;
        grid-template-columns: minmax(0, 360px) minmax(0, 1fr) !important;
    }

    .lot6-contact-editorial {
        display: flex !important;
        flex-direction: column !important;
        align-self: start !important;
        min-height: 0 !important;
        padding-top: 8px !important;
    }

    .lot6-contact-copy {
        margin-bottom: 10px !important;
    }

    .lot6-contact-arguments {
        margin-bottom: 14px !important;
        gap: 10px !important;
    }

    .lot6-contact-photo {
        margin-top: 8px !important;
        align-self: start !important;
        height: 140px !important;
        min-height: 140px !important;
        overflow: hidden !important;
        border-radius: 16px !important;
    }

    .lot6-contact-photo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center 62% !important;
        transform: none !important;
    }

    .lot6-contact-form-panel {
        align-self: start !important;
        padding: 18px 18px 14px !important;
    }

    .lot6-form-heading {
        margin-bottom: 12px !important;
    }

    .lot6-form-heading h3 {
        margin-bottom: 6px !important;
    }

    .lot6-form-heading p {
        margin: 0 !important;
        line-height: 1.35 !important;
    }

    .lot6-form {
        margin: 0 !important;
    }

    .lot6-form-fields {
        gap: 10px 14px !important;
    }

    .lot6-field,
    .lot6-field p {
        margin: 0 !important;
    }

    .lot6-field input:not([type=checkbox]):not([type=radio]),
    .lot6-field select,
    .lot6-field textarea {
        min-height: 44px !important;
        padding: 10px 12px !important;
    }

    .lot6-field textarea {
        min-height: 86px !important;
    }

    .lot6-contact-preference {
        gap: 6px 18px !important;
        margin: 0 !important;
    }

    .lot6-consent {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .lot6-submit {
        min-height: 48px !important;
        margin-top: 4px !important;
    }

    .lot6-contact-form-panel > p:last-child {
        margin-top: 6px !important;
        margin-bottom: 0 !important;
    }
}

/* VICTOVIS — cadrage correct de la photo Contact */
@media (min-width: 1024px) {
    .lot6-contact .lot6-contact-photo {
        height: 240px !important;
        min-height: 240px !important;
        max-height: 240px !important;
    }

    .lot6-contact .lot6-contact-photo img {
        object-fit: cover !important;
        object-position: center 15% !important;
    }
}

/* VICTOVIS — espacement des options de contact */
@media (min-width: 1024px) {
    .lot6-contact .lot6-contact-preference {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px !important;
    }

    .lot6-contact .lot6-contact-preference > label {
        margin: 0;
        display: inline-flex;
        align-items: center;
        gap: 10px;
    }

    .lot6-contact .lot6-submit {
        margin-top: 18px !important;
    }
}

/* Contact — espace entre bouton radio et texte */
.lot6-contact .lot6-contact-preference > label {
    gap: 16px !important;
}

/* Espace horizontal entre radio et libelle */
.lot6-contact .lot6-contact-preference input[type="radio"] {
    margin-right: 10px !important;
}
