@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin-ext-wght-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--navy:#052e40;--deep:#021e2b;--ink:#071e29;--muted:#627783;--off:#f4f6f6;--line:#dfE6e9;--cyan:#36E4FF;--yellow:#fff300;--lime:#E4FD97;--white:#fff;--shadow:0 18px 50px #05253614}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,'Arial',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.container{width:min(1200px,calc(100% - 40px));margin-inline:auto}.condensed{font-family:Inter,'Arial Black',system-ui,sans-serif;letter-spacing:-.035em;font-weight:1000;line-height:.93;text-transform:uppercase}.kicker{font-size:12px;letter-spacing:.17em;text-transform:uppercase;font-weight:900;color:#5d717b}.pill{border-radius:999px;padding:9px 13px;font-size:12px;font-weight:900}.btn{border:0;border-radius:13px;padding:17px 20px;font-weight:900;letter-spacing:-.025em;transition:transform .15s,filter .15s}.btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.btn:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #64CFFA;outline-offset:2px}.btn-cyan{color:#082936;background:var(--cyan)}.btn-dark{background:var(--navy);color:#fff}.btn-outline{color:#fff;background:transparent;border:1px solid #ffffff57}.btn-white{background:#fff;color:var(--navy)}
.ticker{background:#031e2b;color:#dcecf2;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ticker-inner{padding:9px 0;display:flex;justify-content:center;gap:17px;align-items:center;flex-wrap:wrap}.ticker b{color:var(--lime)}
.header{position:sticky;top:0;z-index:60;background:#052c3ddf;backdrop-filter:blur(14px);border-bottom:1px solid #ffffff24;color:#fff}.header-inner{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:15px}.logo{width:198px;max-height:57px;object-fit:contain;object-position:left center}.nav{display:flex;gap:26px;font-size:13px;font-weight:800;color:#e8f2f5}.nav a:hover{color:var(--cyan)}.head-cta{color:#00232f;background:var(--cyan);padding:12px 17px;border-radius:8px;border:0;font-size:12px;font-weight:1000;text-transform:uppercase}
.hero{color:#fff;background:radial-gradient(circle at 78% 60%,#047a9c55 0,transparent 32%),linear-gradient(112deg,#021e2b,#0b4a64 71%,#052f43);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:75px;background:linear-gradient(95deg,transparent,#0e729366,var(--cyan),#0c567388,transparent);filter:blur(38px);pointer-events:none}.hero-inner{display:grid;grid-template-columns:1.04fr .96fr;gap:40px;align-items:center;padding-top:34px;padding-bottom:36px;position:relative;z-index:1}.stamp{display:inline-block;transform:rotate(-3deg);background:var(--yellow);color:#021e2b;padding:11px 14px;font-size:13px;font-weight:1000;text-transform:uppercase;box-shadow:5px 5px 0 #0004}.hero-title{--hs:clamp(64px,7.3vw,114px);margin:27px 0 15px}.hero-title span{display:block;color:var(--cyan)}.hero-sub{font-weight:850;font-size:clamp(24px,2.6vw,35px);line-height:1.12;max-width:570px;letter-spacing:-.02em;margin:0 0 15px}.hero-description{font-size:16px;line-height:1.55;max-width:520px;color:#c6dce4;margin:0 0 21px}.hero-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.hero-chips span{padding:9px 11px;border:1px solid #ffffff42;border-radius:999px;font-size:12px;font-weight:850}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{font-size:11px;color:#bad0d7;margin-top:18px}.poster-frame{display:flex;align-items:center;flex-direction:column;gap:14px}.poster-holder{background:#043b51;padding:10px;border-radius:16px;box-shadow:0 25px 70px #0008;max-width:480px;width:100%;position:relative}.poster-holder img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:8px}.poster-flag{position:absolute;right:21px;bottom:24px;padding:9px 12px;border-radius:999px;background:#031e2bdb;color:#fff;font-size:11px;font-weight:900;box-shadow:0 5px 22px #0008}.carousel-nav{display:flex;align-items:center;gap:8px}.hero-dot{height:7px;width:7px;padding:0;border:0;border-radius:99px;background:#ffffff69;transition:all .2s}.hero-dot.active{width:30px;background:var(--cyan)}.hero-switch{display:flex;align-items:center;gap:12px;color:#d9eaf1;font-size:12px;font-weight:800}
.timer-strip{background:#012738;color:#fff}.timer-strip .container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0}.timer-copy{font-size:15px;font-weight:900;text-transform:uppercase}.timer-copy b{color:var(--lime)}.timer-numbers{display:flex;gap:8px}.unit{min-width:64px;text-align:center;background:#ffffff14;border:1px solid #ffffff29;border-radius:9px;padding:8px 10px}.unit strong{font-size:22px;display:block}.unit small{display:block;font-size:9px;color:#c0d6dd;font-weight:800;text-transform:uppercase}
.trust{border-bottom:1px solid var(--line);background:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{text-align:center;padding:22px 10px;border-right:1px solid #e9edef}.trust-item:last-child{border-right:none}.trust-item b{display:block;font-size:32px;line-height:1;letter-spacing:-.025em;font-weight:1000}.trust-item span{display:block;color:#61727b;font-size:13px;margin-top:8px}
.section{padding:62px 0}.off-section{background:#f4f6f6}.section-top{display:flex;justify-content:space-between;align-items:end;gap:26px;margin-bottom:25px}.section-title{font-size:clamp(34px,4vw,57px);margin:8px 0 0}.section-intro{color:#5d727c;font-size:15px;line-height:1.5;max-width:390px}.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.offer{border-radius:21px;overflow:hidden;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0}.offer-head{background:var(--accent);color:#071e29;padding:18px 18px 15px;min-height:112px;display:flex;align-items:center}.offer-punch{font-size:clamp(21px,2.2vw,32px);margin:0;line-height:.96}.offer-photo{height:210px;position:relative;background:#063b51;overflow:hidden}.offer-photo:after{content:"";position:absolute;bottom:-18px;left:13%;right:13%;height:65px;background:var(--accent);opacity:.34;filter:blur(28px);pointer-events:none}.offer-photo img{width:100%;height:100%;object-fit:cover;object-position:center center;position:relative;z-index:1}.offer-detail{padding:19px;display:flex;flex-direction:column;flex:1;gap:8px}.offer-label{font-weight:900;color:#526b78;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.offer-model{font-size:24px;font-weight:950;letter-spacing:-.02em;margin:0}.offer-price{font-size:55px;letter-spacing:-.075em;font-weight:1000;line-height:1}.offer-price small{font-size:18px;letter-spacing:-.03em}.offer-benefits{color:#536974;font-size:13px;line-height:1.55;min-height:43px}.offer-actions{display:flex;gap:8px;margin-top:auto}.offer-actions button{flex:1;padding:13px 11px;font-size:12px}.offer-actions .selected{background:#d8f4fb}.offer-micro{font-size:11px;color:#7a8990;margin-top:5px}
.model-list{margin-top:43px}.model-list h3{font-size:24px;letter-spacing:-.02em;margin:0 0 8px}.model-list .list-sub{color:#647782;font-size:14px;margin:0 0 16px}.model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.model-tile{border:1px solid #e0e7ea;background:#fff;border-radius:15px;padding:16px;text-align:left;min-height:106px;display:flex;justify-content:space-between;align-items:center;gap:8px}.model-tile:hover{border-color:#0a637f}.model-tile.selected{outline:2px solid var(--navy)}.model-tile strong{display:block;font-size:17px;letter-spacing:-.02em}.model-tile small{display:block;color:#75858e;font-size:12px;margin-top:4px}.model-tile i{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--tile);font-style:normal;font-size:22px;font-weight:900;color:#051f2a;flex:0 0 auto}
.budget-section{background:#041e2d;color:#fff}.budget-section .section-title{color:#fff}.budget-section .section-intro{color:#b5cbd4}.budget-card{background:#0a3b50;border:1px solid #ffffff1f;border-radius:22px;padding:30px;display:grid;grid-template-columns:1fr .65fr;gap:30px;align-items:center}.range-header{display:flex;justify-content:space-between;gap:10px;align-items:center}.range-header label{font-weight:900}.budget-value{font-size:34px;color:var(--cyan);font-weight:1000;letter-spacing:-.03em}.budget-range{width:100%;height:10px;accent-color:var(--cyan);margin:21px 0}.budget-markers{display:flex;justify-content:space-between;color:#b6cbd4;font-size:12px}.budget-result{background:#062a3b;border-radius:16px;padding:20px}.budget-result strong{display:block;font-size:18px}.budget-result span{color:#c7d9e0;font-size:14px;display:block;margin:8px 0 15px;line-height:1.4}
.story{background:#fff}.story-carousel{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:5px 0 14px}.story-poster{flex:0 0 255px;scroll-snap-align:start;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);position:relative}.story-poster img{width:100%;aspect-ratio:1122/1402;object-fit:cover}.story-caption{background:#f4f7f8;padding:12px 14px;font-size:12px;color:#536b76;font-weight:750}
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.help-card{background:#f4f7f8;border-radius:18px;padding:24px}.help-card b{font-size:22px;display:block;margin:10px 0 8px;letter-spacing:-.02em}.help-card p{font-size:14px;color:#586e78;line-height:1.5;margin:0}.help-symbol{font-size:28px;color:#0077a3}
.form-section{background:linear-gradient(135deg,#052b3c,#0a5069);color:#fff}.form-section .kicker{color:#a0c4d1}.form-section .section-title{color:#fff}.form-section .section-intro{color:#c2dae3}.form-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:24px;align-items:start}.selected-panel{border:1px solid #ffffff27;background:#ffffff0c;border-radius:20px;padding:24px}.selected-panel h3{font-size:26px;margin:0 0 12px}.selected-hint{color:#c3d7df;font-size:14px;line-height:1.5}.selected-models{display:flex;flex-wrap:wrap;gap:8px;margin:21px 0}.selected-chip{background:#ffffff24;border:1px solid #ffffff40;padding:10px 12px;border-radius:999px;font-size:12px;font-weight:850;color:#fff}.selected-chip button{border:0;background:transparent;color:#fff;font-weight:1000;margin-left:8px}.selected-panel ul{padding-left:20px;color:#cbdee5;font-size:14px;line-height:1.8}.lead-form{background:#fff;color:var(--ink);border-radius:21px;padding:24px;box-shadow:var(--shadow)}.lead-form h3{margin:0 0 5px;font-size:24px;letter-spacing:-.02em}.lead-form p{font-size:12px;color:#6a7c85;margin:0 0 18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px}.field.wide{grid-column:1/-1}.field label{font-size:12px;font-weight:900}.field input,.field textarea{border:1px solid #d8e2e6;border-radius:10px;padding:13px 12px;width:100%;min-width:0;color:var(--ink);background:#fff}.field textarea{min-height:72px;resize:vertical}.check{display:flex;align-items:start;gap:10px;font-size:12px;color:#59707c;line-height:1.4}.check input{margin-top:2px;flex:0 0 auto}.form-btn{width:100%;margin-top:18px}.form-status{min-height:22px;font-size:13px;margin-top:10px;font-weight:750;color:#a53d17}.privacy{font-size:11px;color:#788b93;line-height:1.45;margin-top:8px}
.faq{background:#fff}.faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.accordion details{padding:17px 0;border-bottom:1px solid #e4ebee}.accordion summary{list-style:none;font-weight:900;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-size:15px}.accordion summary:after{content:'+';color:#0687ae;font-weight:1000;font-size:20px}.accordion details[open] summary:after{content:'−'}.accordion p{color:#5d737e;font-size:14px;line-height:1.6;margin:13px 0 0}
.footer{background:#021923;color:#b8cbd4;padding:30px 0 95px}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}.footer-logo{width:176px;max-height:70px;object-fit:contain;object-position:left top}.footer-text{font-size:12px;line-height:1.6;max-width:690px}.legal-note{font-size:11px;color:#9cb4be;margin-top:12px}.floating{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);width:min(580px,calc(100% - 18px));z-index:88;background:#032331;color:#fff;border:1px solid #ffffff26;box-shadow:0 14px 45px #0019238c;border-radius:17px;padding:10px;display:none;align-items:center;gap:10px}.floating.show{display:flex}.floating span{font-size:12px;font-weight:900;flex:1;padding-left:8px}.floating button{border:0;border-radius:10px;padding:13px 15px;background:var(--cyan);color:#052b3c;font-size:12px;font-weight:950}.toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);z-index:100;background:#fff;color:#082d3f;padding:12px 16px;box-shadow:0 10px 35px #0004;border-radius:12px;font-weight:800;font-size:13px;display:none;max-width:calc(100vw - 25px)}
@media(max-width:950px){.container{width:min(100% - 28px,1200px)}.nav{display:none}.hero-inner{gap:25px;grid-template-columns:1fr 0.95fr}.hero-title{--hs:66px}.offers{gap:10px}.offer-head{padding:14px;min-height:110px}.offer-punch{font-size:22px}.model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.container{width:calc(100% - 28px)}.ticker-inner{gap:8px;padding:8px 0;font-size:9px}.ticker .hide-m{display:none}.header-inner{min-height:61px}.logo{width:141px;height:auto}.head-cta{font-size:10px;padding:11px 10px}.hero-inner{grid-template-columns:1fr;gap:18px;padding-top:24px;padding-bottom:20px}.hero-title{--hs:clamp(57px,14vw,77px);margin:20px 0 13px}.hero-sub{font-size:27px}.hero-description{font-size:14px;margin-bottom:16px}.hero-chips{margin-bottom:19px}.hero-chips span{font-size:11px}.hero-actions .btn{flex:1}.poster-holder{max-width:410px;width:min(100%,405px)}.poster-holder img{aspect-ratio:auto;height:auto}.hero-switch{margin:5px 0}.timer-strip .container{flex-direction:column;align-items:stretch;gap:12px}.timer-copy{text-align:center;font-size:12px}.timer-numbers{justify-content:center}.unit{flex:1;max-width:90px}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item{padding:17px 8px;border-bottom:1px solid #e9edef}.trust-item:nth-child(even){border-right:0}.trust-item b{font-size:27px}.trust-item span{font-size:11px}.section{padding:40px 0}.section-top{display:block}.section-title{font-size:36px}.section-intro{margin-top:12px;font-size:14px;max-width:none}.offers{grid-template-columns:1fr;gap:15px}.offer-head{min-height:85px}.offer-punch{font-size:28px}.offer-photo{height:230px}.offer-actions button{padding:16px 10px}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.model-tile{padding:12px;min-height:88px}.model-tile strong{font-size:15px}.model-tile small{font-size:11px}.model-tile i{width:28px;height:28px;font-size:18px}.budget-card{grid-template-columns:1fr;padding:20px;gap:16px}.story-poster{flex-basis:226px}.help-grid{grid-template-columns:1fr}.form-layout{grid-template-columns:1fr}.lead-form{padding:19px}.fields{grid-template-columns:1fr}.field.wide{grid-column:1}.faq-wrap{grid-template-columns:1fr;gap:5px}.footer-grid{display:block}.footer-logo{margin-bottom:15px}.floating{bottom:max(8px,env(safe-area-inset-bottom))}.floating.show{display:flex}}
@media(max-width:360px){.hero-title{--hs:53px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.model-grid{grid-template-columns:1fr 1fr}}

/* EXPERIENCE COMPLETE — 15 FICHES MODÈLES */
html{scroll-behavior:smooth}button{touch-action:manipulation}
.model-list{margin-top:44px}.model-list h3{font-size:30px;font-weight:1000;letter-spacing:-.03em}.model-list .list-sub{max-width:700px;line-height:1.5}
.model-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.model-tile{height:auto;min-height:250px;position:relative;border:0;padding:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow);border-radius:17px;transition:transform .2s;background:white}
.model-tile:hover{transform:translateY(-3px)}.model-tile .model-visual{height:150px;width:100%;position:relative;display:block;background:linear-gradient(125deg,#093d55,#031d2a);overflow:hidden}
.model-visual:before{content:'';position:absolute;background:var(--tile);height:60px;left:-10%;right:-10%;bottom:-10px;transform:rotate(-7deg);filter:blur(9px);opacity:.88}
.model-tile .model-info{display:flex;gap:8px;padding:16px;align-items:center;justify-content:space-between;width:100%;flex:1}
.model-tile .model-info strong{font-size:19px;font-weight:1000}.model-tile .model-info small{color:#61737c}.model-tile .model-info i{font-style:normal;font-size:12px;border-radius:50px;background:var(--tile);padding:10px;color:#082b3b;font-weight:1000}

.model-chip{position:absolute;left:12px;top:12px;border-radius:99px;color:#fff;background:#031f2c89;border:1px solid #ffffff2f;font-size:10px;font-weight:1000;padding:7px 10px;text-transform:uppercase}
#detailView,#thanksView{display:none}.detail-open #haut{display:none}.detail-open #detailView{display:block}.thanks-open #haut{display:none}.thanks-open #thanksView{display:block}.detail-open .ticker,.thanks-open .ticker{display:none}
.detail-hero{background:radial-gradient(circle at 78% 66%,#0b6b8488,transparent 31%),linear-gradient(125deg,#032130,#0a435b);color:white;overflow:hidden}
.detail-hero .container{padding-top:27px;padding-bottom:44px}.breadcrumbs{font-size:12px;color:#a5c3cf;font-weight:750;margin-bottom:24px}.breadcrumbs a{color:#c8e9f6}
.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center}.detail-kicker{color:#b3d7e2;font-weight:950;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.detail-claim{font-size:clamp(44px,5.2vw,81px);line-height:.91;letter-spacing:-.035em;font-weight:1000;text-transform:uppercase;margin:18px 0}.detail-claim .accent{color:var(--model-color)}
.detail-model-name{font-size:clamp(27px,3.2vw,45px);letter-spacing:-.025em;font-weight:1000;margin:0 0 12px}
.detail-intro{font-size:17px;line-height:1.55;color:#d2e2e9;max-width:540px}.detail-benefits{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.detail-benefits span{border:1px solid #ffffff30;background:#ffffff12;padding:9px 13px;border-radius:999px;font-size:12px;font-weight:850}
.detail-pricebar{margin:22px 0;padding:19px 0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30}
.detail-pricebar b{display:block;font-size:clamp(57px,6.5vw,94px);color:var(--model-color);line-height:.94;letter-spacing:-.04em}.detail-pricebar .noprice{font-size:clamp(29px,3.3vw,43px);letter-spacing:-.025em;color:#fff}.detail-pricebar small{color:#dde9ee;font-size:14px;display:block;margin-top:10px}
.detail-ctas{display:flex;flex-wrap:wrap;gap:10px}.detail-ctas .btn{background:var(--model-color);color:#042736}.detail-ctas .btn.btn-outline{background:transparent;color:white;border:1px solid #ffffff65}
.detail-visual{position:relative;border-radius:24px;min-height:480px;display:flex;justify-content:center;align-items:center;overflow:hidden;background:#063b50;box-shadow:0 24px 65px #0005}
.detail-visual.poster{background:#052b3c}.detail-visual .model-poster{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;background:#042b3d}


.detail-visual-caption{position:absolute;left:15px;right:15px;bottom:14px;text-align:center;color:white;background:#021e2bc9;border:1px solid #ffffff2f;padding:11px 13px;border-radius:13px;font-size:11px;z-index:2}
.detail-lower{background:#f4f7f8}.detail-lower .container{padding-top:42px;padding-bottom:52px}
.detail-columns{display:grid;grid-template-columns:.96fr 1.04fr;gap:22px;align-items:start}.detail-box{background:white;border:1px solid #e3e9ed;padding:25px;border-radius:23px;box-shadow:0 10px 35px #0423300d}.detail-box h2{font-size:clamp(23px,2.5vw,33px);letter-spacing:-.02em;line-height:1.04;margin:0 0 12px}.detail-box p{color:#596e79;line-height:1.6;font-size:14px}
.preference-group{margin:22px 0}.preference-group h3{font-size:13px;letter-spacing:.09em;text-transform:uppercase;margin:0 0 10px;color:#395261}.choice-row{display:flex;gap:8px;flex-wrap:wrap}.choice-row button{border:1px solid #d6e1e7;background:#f7fafb;color:#355463;padding:11px 13px;border-radius:11px;font-size:13px;font-weight:900}.choice-row button.active{background:#062f44;border-color:#062f44;color:#fff}.detail-alert{margin:17px 0;padding:14px 17px;background:#e9f5f8;border-left:4px solid var(--cyan);border-radius:8px;color:#345966;font-size:13px;line-height:1.5}
.detail-box .detail-primary{width:100%}.detail-faq summary{font-size:14px}.detail-related{margin-top:36px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.related-item{background:white;border-radius:18px;padding:14px;border:1px solid #e2e8ea;text-align:left;cursor:pointer}.related-item span{font-size:11px;font-weight:950;letter-spacing:.08em;color:#657b87;text-transform:uppercase}.related-item strong{display:block;margin:8px 0;font-size:20px;letter-spacing:-.025em}.related-item small{font-weight:900;color:#0c617d}
.thanks-section{min-height:77vh;background:linear-gradient(135deg,#032231,#0a435a);color:white;display:flex;align-items:center}.thanks-card{background:white;border-radius:26px;padding:38px;max-width:680px;margin:58px auto;color:#092a39;box-shadow:var(--shadow)}.thanks-card h1{font-size:clamp(33px,5vw,60px);letter-spacing:-.03em;line-height:.96}.thanks-card p{color:#5e7480;line-height:1.6}.demo-flag{display:inline-flex;padding:9px 13px;background:#fff1dd;color:#874e04;border-radius:9px;font-size:12px;font-weight:900}
.drawer-note{color:#687a82;font-size:11px;line-height:1.5;margin-top:12px}.nav-detail-btn{cursor:pointer}
@media(max-width:800px){.detail-grid{display:flex;flex-direction:column;gap:13px}.detail-grid>div:first-child{display:contents}.detail-kicker{order:0}.detail-claim{order:1}.detail-visual{order:2;width:100%}.detail-model-name{order:3}.detail-intro{order:4}.detail-benefits{order:5}.detail-pricebar{order:6;width:100%}.detail-ctas{order:7;width:100%}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid,.detail-columns{grid-template-columns:1fr}.detail-hero .container{padding-top:18px}.detail-visual{min-height:360px}.detail-claim{font-size:clamp(43px,11vw,74px)}.detail-lower .container{padding-top:25px}.related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:470px){.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.model-tile{min-height:203px}.model-tile .model-visual{height:118px}.model-tile .model-info{padding:11px}.model-tile .model-info strong{font-size:15px}.model-tile .model-info small{font-size:10px}.model-tile .model-info i{padding:7px}.detail-visual{min-height:330px}.detail-hero .container{padding-bottom:22px}.detail-claim{font-size:45px}.detail-pricebar b{font-size:70px}.detail-ctas{flex-direction:column}.detail-ctas button{width:100%}.detail-box{padding:18px}.related-grid{grid-template-columns:1fr}.thanks-card{padding:24px;margin:24px auto}}

/* ══ Jean Lain — animation commerciale et mini éditeur local ══ */
.jl-events{overflow:hidden;background:#fff200;border-top:1px solid #e1cf00;border-bottom:1px solid #e1cf00;color:#061e29;padding:13px 0;white-space:nowrap}
.jl-events-track{display:inline-flex;align-items:center;gap:50px;min-width:max-content;animation:jl-move 34s linear infinite;font-weight:1000;text-transform:uppercase;letter-spacing:.07em;font-size:13px}
.jl-events b{font-weight:1000;font-size:14px}
@keyframes jl-move{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.jl-events-track{animation:none}}
.jl-signal{margin:12px 0 3px;padding:10px 12px;background:#eaf7fa;color:#08384b;border-radius:12px;font-weight:900;font-size:12px;letter-spacing:.008em;display:flex;align-items:center;gap:7px}
.jl-signal strong{font-weight:1000}
.jl-dot{width:8px;height:8px;border-radius:50%;background:#00d5a0;box-shadow:0 0 0 4px #00d5a018;flex:0 0 auto}
.jl-signal.edit-stock{background:#fff9db;color:#3b3000}
.jl-stock-mini{font-size:12px;font-weight:800;color:#486575;margin:4px 0 0}

/* ═════════ V7 ═════════ */
.condensed{word-spacing:.06em}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:#fff;color:#021e2b;padding:10px 14px;border-radius:8px;font-weight:900}
.skip:focus{left:8px}
a.btn,.head-cta{display:inline-block;text-align:center}
.head-cta{color:#00232f;background:var(--cyan);padding:12px 17px;border-radius:8px;font-size:12px;font-weight:1000;text-transform:uppercase}
.btn-small{padding:8px 12px;border-radius:8px;font-size:12px}
.btn-outline{background:transparent;color:#fff;border:1px solid #ffffff66}
.poster-label{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#d9eaf1}
.hero-switch{flex-wrap:wrap;justify-content:center}
.poster-flag{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pill{background:#eef5f7}
.offer-actions .btn{display:flex;align-items:center;justify-content:center}
.offer-photo img{object-position:center 60%}

/* Cartes modèles typographiques (remplacent les silhouettes génériques) */
.model-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.model-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:0;min-height:196px;padding:18px 18px 16px 24px;border:0;border-radius:18px;overflow:hidden;color:#fff;text-align:left;background:linear-gradient(150deg,#0b4a66,#031d2a);box-shadow:var(--shadow);transition:transform .2s}
.model-tile:before{content:'';position:absolute;left:0;top:0;bottom:0;width:8px;background:var(--tile)}
.model-tile:after{content:'';position:absolute;right:-34px;top:-34px;width:130px;height:130px;border-radius:50%;background:var(--tile);opacity:.16}
.model-tile:hover{transform:translateY(-3px)}
.model-tile>*{position:relative;z-index:1}
.mt-chip{position:absolute!important;left:22px;top:14px;border-radius:99px;background:#031f2c99;border:1px solid #ffffff33;font-size:10px;font-weight:900;padding:6px 10px;letter-spacing:.06em;text-transform:uppercase}
.mt-brand{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#b9d6e1;margin-top:auto;padding-top:52px}
.model-tile .mt-name{display:block;font-size:clamp(30px,2.7vw,40px);color:var(--tile);margin:4px 0 14px;line-height:.95}
.model-tile .mt-name.long{font-size:clamp(24px,2.1vw,30px)}
.mt-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}
.model-tile .mt-foot small{font-size:12px;color:#d2e4eb;font-weight:700;margin:0}
.model-tile .mt-foot i{font-style:normal;flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--tile);color:#082b3b;font-weight:1000;font-size:13px;padding:0}

/* Visuel typographique de fiche (quand aucune photo n'est fournie) */
.detail-visual:not(.poster){background:linear-gradient(150deg,#0a4560,#031d2a)}
.tv{position:relative;width:100%;height:100%;min-height:inherit;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;overflow:hidden}
.tv:before{content:'';position:absolute;left:-15%;right:-15%;top:42%;height:90px;background:var(--model-color);transform:rotate(-7deg);opacity:.92}
.tv:after{content:'';position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:var(--model-color);opacity:.14}
.tv>*{position:relative;z-index:1}
.tv-chip{position:absolute!important;left:22px;top:22px;border-radius:99px;background:#031f2c99;border:1px solid #ffffff33;font-size:11px;font-weight:900;padding:8px 12px;letter-spacing:.07em;text-transform:uppercase;color:#fff}
.tv-brand{font-size:15px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#c3dce6;margin-top:auto}
.tv-name{display:block;font-size:clamp(56px,8vw,110px);color:var(--model-color);margin:6px 0 16px;overflow-wrap:anywhere}
.tv-line{font-size:13px;color:#d6e6ed;font-weight:700}

/* Fiche : bloc signal + aides compactes */
.detail-benefits{margin-bottom:6px}
.detail-signal,#detailSignal{background:#ffffff14;color:#e6f2f6;border:1px solid #ffffff2a;margin:12px 0 0}
.help-compact{grid-template-columns:1fr;margin-top:20px;gap:9px}
.help-compact .help-card{padding:16px}.help-compact .help-card b{font-size:17px;margin:0 0 6px}
.detail-faq{margin-top:22px}
.related-title{font-size:36px;margin:8px 0 18px}
.related-item{display:block}

/* Formulaire */
.field select{border:1px solid #d8e2e6;border-radius:10px;padding:13px 12px;width:100%;color:var(--ink);background:#fff;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#355463 50%),linear-gradient(135deg,#355463 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #64CFFA;outline-offset:1px;border-color:#0a637f}
.form-status.error{color:#a53d17}
.form-btn[disabled]{opacity:.7;cursor:wait}
.privacy a,.legal-note a,.check a{text-decoration:underline}
.selected-panel .btn{margin-bottom:6px}
.selected-panel ul{color:#d8e8ee;line-height:1.7;padding-left:20px;font-size:14px}
.floating-btn{background:var(--cyan);color:#06303f;padding:11px 15px;border-radius:11px;font-weight:1000;font-size:13px;white-space:nowrap}
.floating{justify-content:space-between}
.toast{position:fixed;left:50%;bottom:92px;transform:translateX(-50%);z-index:120;background:#032331;color:#fff;padding:12px 16px;border-radius:12px;font-size:13px;font-weight:800;display:none;max-width:calc(100% - 28px);text-align:center;box-shadow:0 14px 45px #0019238c}
.ok-flag{display:inline-flex;padding:9px 13px;background:#e0f7ec;color:#0a6a43;border-radius:9px;font-size:12px;font-weight:900}
.thanks-card .btn{display:inline-block;margin-top:14px}

/* Pages légales */
.legal-page{background:#f4f6f6;min-height:70vh}
.legal-wrap{width:min(820px,calc(100% - 32px));margin:0 auto;padding:44px 0 70px}
.legal-wrap h1{font-size:clamp(30px,4vw,46px);letter-spacing:-.03em;line-height:1.05;margin:0 0 8px}
.legal-wrap h2{font-size:21px;letter-spacing:-.02em;margin:34px 0 8px}
.legal-wrap p,.legal-wrap li{color:#445b66;line-height:1.7;font-size:15px}
.legal-wrap .todo{background:#fff4d6;border-left:4px solid #e0a800;padding:2px 6px;border-radius:4px;font-weight:700;color:#5a4300}
.legal-back{display:inline-block;margin-bottom:22px;font-weight:900;color:#0a637f}

@media(max-width:950px){.model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.model-tile{min-height:168px;padding:14px}.model-tile .mt-name{font-size:clamp(26px,8vw,34px)}.model-tile .mt-name.long{font-size:clamp(20px,6vw,25px)}.model-tile .mt-foot small{display:none}.mt-brand{padding-top:44px}.model-tile{padding:14px 14px 14px 20px}.mt-chip{left:18px}.tv{padding:20px}.tv-name{font-size:clamp(48px,16vw,80px)}.hero-switch{margin:8px 0 0}}

.offer-punch{font-size:clamp(20px,1.85vw,27px)}
@media(max-width:950px){.offer-punch{font-size:21px}}

/* Correctif : les attributs width/height des images ne doivent pas déformer les affiches */
.story-poster img{height:auto}
/* Titre du hero : chaque ligne reste sur une seule ligne ; la taille s’adapte à la largeur disponible */
.hero-inner>div:first-child{container-type:inline-size;min-width:0}
.hero-title{white-space:nowrap;font-size:var(--hs)}
@supports (font-size:1cqw){.hero-title{font-size:min(var(--hs),16.8cqw)}}

/* Jauge de budget à deux curseurs (fourchette min – max) */
.dual-range{position:relative;height:30px;margin:15px 0 8px}
.dual-track{position:absolute;left:0;right:0;top:50%;height:10px;margin-top:-5px;border-radius:99px;background:#ffffff2e}
.dual-fill{position:absolute;top:0;bottom:0;border-radius:99px;background:var(--cyan)}
.dual-input{position:absolute;left:0;top:0;width:100%;height:30px;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;outline:none}
.dual-input::-webkit-slider-runnable-track{background:transparent;height:30px}
.dual-input::-moz-range-track{background:transparent;height:30px}
.dual-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;pointer-events:auto;width:26px;height:26px;margin-top:2px;border-radius:50%;background:var(--cyan);border:3px solid #062a3b;box-shadow:0 0 0 2px var(--cyan);cursor:grab}
.dual-input::-moz-range-thumb{pointer-events:auto;width:20px;height:20px;border-radius:50%;background:var(--cyan);border:3px solid #062a3b;box-shadow:0 0 0 2px var(--cyan);cursor:grab}
.dual-input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--cyan),0 0 0 6px #64CFFA88}
.dual-input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--cyan),0 0 0 6px #64CFFA88}
.dual-input.on-top{z-index:3}
.budget-value{white-space:nowrap}
@media(max-width:700px){.budget-value{font-size:26px}}
@media(max-width:700px){.range-header{flex-wrap:wrap}.range-header label{flex-basis:100%}}

/* Offres en slider (défilement horizontal, 3 / 2 / 1 cartes selon l'écran) */
.offers-slider{position:relative}
.offers{display:flex;grid-template-columns:none;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 2px 18px;margin:0 -2px;outline:none}
.offers::-webkit-scrollbar{display:none}
.offers>.offer{flex:0 0 calc((100% - 36px)/3);scroll-snap-align:start}
.slider-btn{position:absolute;top:50%;z-index:5;width:46px;height:46px;margin-top:-23px;border:0;border-radius:50%;background:#fff;color:#062f44;font-size:28px;line-height:1;font-weight:900;box-shadow:0 8px 26px #04202e55;display:grid;place-items:center;padding:0 0 3px}
.slider-btn:hover{background:var(--cyan)}.slider-btn[disabled]{opacity:0;pointer-events:none}
.slider-btn.prev{left:-14px}.slider-btn.next{right:-14px}
.slider-dots{display:flex;justify-content:center;gap:8px;margin-top:2px}
.slider-dot{width:8px;height:8px;padding:0;border:0;border-radius:99px;background:#b8c6cc;transition:all .2s}
.slider-dot.active{width:30px;background:#062f44}
@media(max-width:950px){.offers>.offer{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:700px){.offers{gap:12px}.offers>.offer{flex-basis:84%}.slider-btn{display:none}}
@media(prefers-reduced-motion:reduce){.offers{scroll-behavior:auto}}

/* Bouton d'appel à l'action sur les vignettes modèles */
.model-tile .mt-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:2px;padding:11px 14px;border-radius:50px;background:var(--tile);color:#082b3b;font-size:13px;font-weight:1000;letter-spacing:.01em;white-space:nowrap;transition:transform .2s,filter .2s}
.model-tile .mt-cta b{font-weight:1000;transition:transform .2s}
.model-tile:hover .mt-cta b{transform:translateX(4px)}
.model-tile:hover .mt-cta{filter:brightness(1.06)}
@media(max-width:700px){.model-tile .mt-cta{padding:10px 8px;font-size:12px}.model-tile .mt-name{margin-bottom:10px}}
.model-tile .mt-name.xlong{font-size:clamp(18px,1.7vw,23px);line-height:1.02}
@media(max-width:700px){.model-tile .mt-name.xlong{font-size:clamp(16px,5vw,20px)}}

/* ===== Recherche de modèles : filtres + cartes recto/verso ===== */
.vsearch{margin-top:0}
.vs-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}
.vs-head h3{font-size:clamp(26px,3vw,38px);letter-spacing:-.03em;margin:0 0 8px}
.vs-head .list-sub{margin:0;max-width:660px}
.vs-reset{border:1px solid #bcd2da;background:#fff;color:var(--navy);border-radius:12px;padding:11px 16px;font:inherit;font-weight:900;font-size:13px;white-space:nowrap;cursor:pointer}
.vs-reset:hover{border-color:#0a637f}
.vs-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow);margin-bottom:22px}
.vs-filter{display:flex;align-items:center;gap:8px;border:1px solid #cfe3ea;border-radius:14px;padding:0 12px;background:#fff;min-height:50px}
.vs-filter:focus-within{border-color:#0a637f;box-shadow:0 0 0 3px #36e4ff40}
.vs-filter span{font-size:13px;font-weight:700;color:#0a637f;white-space:nowrap}
.vs-filter select{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-weight:900;font-size:14px;color:var(--ink);padding:12px 0;cursor:pointer;outline:none}
.vgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.vcard{position:relative;min-width:0;perspective:1400px}
.vcard-inner{display:grid;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.vcard.flipped .vcard-inner{transform:rotateY(180deg)}
.vface{grid-area:1/1;display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);border:2px solid transparent;backface-visibility:hidden;-webkit-backface-visibility:hidden;min-width:0}
.vback{transform:rotateY(180deg);padding:14px;gap:12px}
.vcard.selected .vface{border-color:var(--navy)}
.vmedia{position:relative;aspect-ratio:950/488;background:linear-gradient(140deg,#093d55,#031d2a);display:grid;place-content:center;text-align:center;overflow:hidden;padding:0 12px}
.vmedia:before{content:'';position:absolute;left:15%;right:-25%;bottom:-45%;height:95%;background:radial-gradient(circle,var(--accent),transparent 66%);opacity:.5;pointer-events:none}
.vmedia img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vm-brand{position:relative;color:#d2e4eb;font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;margin-top:14px}
.vm-model{position:relative;color:#fff;font-size:clamp(20px,2vw,28px);font-weight:1000;letter-spacing:-.03em;text-transform:uppercase;line-height:1;margin-top:6px}
.vchip{position:absolute;left:10px;top:10px;z-index:2;background:var(--cyan);color:#052e40;border-radius:50px;padding:6px 11px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.vplus{position:absolute;right:10px;top:10px;z-index:2;width:32px;height:32px;border-radius:50%;border:2px solid #fff;background:#052e40cc;color:#fff;font:inherit;font-size:20px;font-weight:900;line-height:1;display:grid;place-items:center;padding:0 0 2px;cursor:pointer}
.vcard.selected .vplus{background:var(--cyan);color:#052e40}
.vbody{display:flex;flex-direction:column;gap:10px;padding:14px 16px 16px;flex:1}
.vbody h4{margin:0;font-size:18px;font-weight:950;letter-spacing:-.02em;color:var(--ink)}
.vmeta{list-style:none;margin:0;padding:0 0 10px;border-bottom:1px solid var(--line);display:grid;gap:5px;font-size:13px;font-weight:800;color:#2e4654}
.vdot:before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;background:#12c98a;margin-right:8px}
.vprice{display:grid;gap:2px;color:var(--ink)}
.vprice strong{font-size:19px;font-weight:950;letter-spacing:-.02em}
.vprice b{font-size:34px;font-weight:1000;letter-spacing:-.05em;line-height:1.05}.vprice b span{font-size:15px;letter-spacing:-.02em}
.vprice small{font-size:12px;color:#6b7e88}
.vbadges{display:flex;gap:14px;font-size:13px;font-weight:800;color:#12506a}
.vbadges span:before{content:'✓';display:inline-grid;place-items:center;width:16px;height:16px;border:1.5px solid #12506a;border-radius:5px;margin-right:6px;font-size:10px}
.vactions{display:flex;gap:8px;margin-top:auto}
.vbtn{flex:1;border-radius:50px;padding:12px 10px;font:inherit;font-weight:900;font-size:13px;border:1px solid transparent;cursor:pointer;white-space:nowrap}
.vbtn.dark{background:var(--navy);color:#fff}
.vbtn.dark[aria-pressed="true"]{background:#d8f4fb;color:var(--navy);border-color:var(--navy)}
.vbtn.light{background:#fff;color:var(--navy);border-color:#bcd2da}
.vbtn:hover{filter:brightness(1.08)}
.vb-head{background:var(--navy);color:#fff;border-radius:14px;padding:14px}
.vb-head span{display:block;color:var(--cyan);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.vb-head h4{margin:0 0 6px;font-size:20px;font-weight:1000;letter-spacing:-.03em;line-height:1.05}
.vb-head p{margin:0;font-size:12.5px;line-height:1.4;color:#c9dde5}
.vb-rows{margin:0;display:grid}
.vb-rows div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}
.vb-rows dt{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#2f7f96;flex:0 0 auto;padding-top:1px}
.vb-rows dd{margin:0;font-weight:800;color:var(--ink);text-align:right}
.vb-note{margin:0;font-size:11px;line-height:1.4;color:#6b7e88}
.vs-empty{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;font-weight:700;color:#2e4654;margin:0}
.vs-more{display:flex;justify-content:center;margin-top:24px}
.vs-more button{background:var(--navy);color:#fff;border:0;border-radius:50px;padding:15px 28px;font:inherit;font-weight:900;font-size:14px;cursor:pointer}
@media(max-width:1100px){.vgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.vgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vs-head{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.vgrid{grid-template-columns:1fr}.vs-filters{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.vcard-inner{transition:none}}

/* Filtres : listes déroulantes à choix multiple */
.vs-filter{display:none}
.vs-dd{position:relative;min-width:0}
.vs-dd-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #cfe3ea;border-radius:14px;background:#fff;min-height:50px;padding:0 14px;font:inherit;font-weight:900;font-size:14px;color:var(--ink);cursor:pointer;text-align:left}
.vs-dd-btn:after{content:'';flex:0 0 auto;width:8px;height:8px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.vs-dd-btn[aria-expanded="true"]:after{transform:rotate(225deg) translateY(-2px)}
.vs-dd-btn:hover,.vs-dd-btn:focus-visible{border-color:#0a637f;outline:none}
.vs-dd-btn:focus-visible{box-shadow:0 0 0 3px #36e4ff40}
.vs-dd.active .vs-dd-btn{border-color:var(--navy);background:#eaf8fc}
.vs-dd-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vs-dd-panel{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid #cfe3ea;border-radius:14px;box-shadow:0 18px 40px #05253633;padding:6px;max-height:320px;overflow:auto}
.vs-dd-panel[hidden]{display:none}
.vs-opt{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;font-weight:800;font-size:14px;color:var(--ink);cursor:pointer}
.vs-opt:hover{background:#eaf8fc}
.vs-opt input{width:18px;height:18px;accent-color:var(--navy);flex:0 0 auto;margin:0}
.vtag:before{content:'★';color:#e0a800;margin-right:8px;font-size:12px}
.vmeta{min-height:52px;align-content:start}
.vmeta .vdot{display:flex;align-items:center;gap:0}.vmeta .vdot em{margin-left:auto;font-style:normal;font-weight:700;font-size:11.5px;color:#6b7e88;white-space:nowrap;padding-left:8px}
.vbadges{flex-wrap:wrap;gap:6px 12px;font-size:12.5px}
.vbadges{gap:6px 9px;font-size:12px}.vbadges span:before{margin-right:4px;width:15px;height:15px}
.vbadges{gap:6px 7px;font-size:11.5px;white-space:nowrap}.vbadges span:before{margin-right:3px;width:14px;height:14px;font-size:9px}
.vbadges span{display:inline-flex;align-items:center}.vbadges span:before{content:none;display:none}.vbadges svg{width:15px;height:15px;flex:0 0 auto;margin-right:4px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.vdots{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.vdots i{width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1px #0a2a3a33;display:block}.vb-rows dt{max-width:48%}
.vb-legal{font-size:12.5px;font-weight:700;color:#0a637f;text-decoration:underline;text-underline-offset:3px;margin-top:2px}.vb-legal:hover{color:var(--navy)}
.vb-legal{font-style:italic;font-size:11.5px;text-align:center;align-self:center;font-weight:600}
.vb-legal{margin-top:16px}

.check.wide{grid-column:1/-1}

.legal-dialog{border:0;padding:0;border-radius:18px;width:min(820px,calc(100% - 24px));max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);background:#fff;color:#445b66;box-shadow:0 24px 70px rgba(5,43,60,.35);overflow:hidden}
.legal-dialog[open]{display:flex;flex-direction:column}
.legal-dialog::backdrop{background:rgba(5,43,60,.62)}
.ld-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #e3eaec;flex:0 0 auto}
.ld-head h2{margin:0;font-size:20px;letter-spacing:-.02em;color:#052b3c}
.ld-close{border:0;background:#eef3f4;color:#052b3c;width:36px;height:36px;border-radius:50%;font-size:24px;line-height:1;cursor:pointer}
.ld-close:hover,.ld-close:focus-visible{background:#dbe6e9}
.ld-body{padding:8px 22px 26px;overflow:auto;flex:1 1 auto;overscroll-behavior:contain}
.ld-body h2{font-size:18px;letter-spacing:-.02em;margin:26px 0 6px;color:#052b3c}
.ld-body p{color:#445b66;line-height:1.65;font-size:14.5px;margin:0 0 10px}
.modal-open{overflow:hidden}

/* ---------- Match auto ---------- */
.match-section{background:radial-gradient(120% 140% at 30% 20%,#0a4a63 0%,#052e40 45%,#021e2b 100%);color:#fff;padding:56px 0;overflow:hidden}
.match-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}
.match-kicker{display:inline-flex;gap:8px;align-items:center;color:#ff8fb6;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
.match-copy h2{margin:0 0 16px;font-size:clamp(38px,5.4vw,70px);line-height:.95;letter-spacing:-.04em;text-transform:uppercase;font-weight:1000}
.match-copy h2 em{font-style:normal;color:var(--cyan)}
.match-copy p{margin:0 0 18px;max-width:560px;color:#d3e4eb;font-size:16px;line-height:1.6}
.match-hints{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.match-hints li{border:1px solid #ffffff3d;background:#ffffff12;border-radius:50px;padding:8px 14px;font-size:13px;font-weight:800}
.match-hints b{color:#ff8fb6;margin-right:4px}
.match-cta{display:inline-flex;align-items:center;gap:36px;background:var(--cyan);color:#052e40;border:0;border-radius:16px;padding:20px 28px;font:inherit;font-size:16px;font-weight:1000;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;box-shadow:0 14px 34px #36e4ff40}
.match-cta:hover{filter:brightness(1.06)}
.match-copy small{display:block;margin-top:14px;color:#a8c3cd;font-size:12px}
.match-visual{position:relative;min-height:300px;display:grid;place-items:center}
.mv-card{position:absolute;width:min(380px,92%);aspect-ratio:1.28;border-radius:22px}
.mv-back{background:#ffffff1c;border:2px solid #ffffff4a;transform:rotate(9deg) translate(34px,-14px)}
.mv-front{position:relative;background:linear-gradient(160deg,#07445c,#031d2a);border:3px solid var(--cyan);transform:rotate(-5deg);box-shadow:0 26px 60px #0008;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:16px 14px;overflow:hidden}
.mv-front img{width:100%;border-radius:10px;aspect-ratio:950/488;object-fit:cover}
.mv-top{font-size:13px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.mv-match{font-size:26px;font-weight:1000;color:#ff6b9d;letter-spacing:.02em;text-transform:uppercase}
.mv-match i{font-style:normal}
.match-dialog{border:0;padding:0;border-radius:22px;width:min(440px,calc(100% - 20px));max-height:calc(100dvh - 20px);background:linear-gradient(180deg,#0a4a63,#052e40);color:#fff;box-shadow:0 30px 80px #000a;overflow:hidden}
.match-dialog[open]{display:flex;flex-direction:column}
.match-dialog::backdrop{background:rgba(2,18,26,.8)}
.md-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 10px}
.md-top strong{display:block;font-size:17px;letter-spacing:-.02em}
.md-top span{font-size:12.5px;color:#a8c3cd;font-weight:700}
.match-dialog .ld-close{background:#ffffff1c;color:#fff}
.match-dialog .ld-close:hover{background:#ffffff33}
.md-progress{height:4px;background:#ffffff1f;margin:0 16px;border-radius:4px;overflow:hidden}
.md-progress i{display:block;height:100%;width:0;background:var(--cyan);transition:width .3s}
.md-stage{padding:14px 16px 6px;overflow:auto;overscroll-behavior:contain;flex:1 1 auto;min-height:0}
.md-card-wrap{position:relative;touch-action:pan-y;transition:transform .34s ease,opacity .34s ease;user-select:none}
.md-card-wrap.dragging{transition:none;cursor:grabbing}
.md-card-wrap .vchoose{display:none}
.md-card-wrap .vfront .vactions .vbtn{flex:1}
.md-card-wrap.go-pass{transform:translateX(-120%) rotate(-12deg);opacity:0}
.md-card-wrap.go-call{transform:translateY(-30px) scale(.96);opacity:0}
.md-card-wrap.go-like{transform:translateX(120%) rotate(12deg);opacity:0;transition-duration:.5s;transition-delay:.18s}
.md-stamp{position:absolute;top:22px;z-index:5;border:3px solid;border-radius:12px;padding:4px 12px;font-size:22px;font-weight:1000;text-transform:uppercase;letter-spacing:.04em;opacity:0;pointer-events:none;transition:opacity .15s;background:#fffffff2}
.md-stamp.like{right:18px;color:#e23d7c;border-color:#e23d7c;transform:rotate(10deg)}
.md-stamp.pass{left:18px;color:#52697a;border-color:#52697a;transform:rotate(-10deg);font-size:18px}
.md-card-wrap[data-dir="like"] .md-stamp.like,.md-card-wrap.go-like .md-stamp.like{opacity:1}
.md-card-wrap[data-dir="pass"] .md-stamp.pass,.md-card-wrap.go-pass .md-stamp.pass{opacity:1}
.md-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:10px 16px 6px}
.md-act{display:grid;justify-items:center;gap:4px;border:1px solid #ffffff33;background:#ffffff14;color:#fff;border-radius:16px;padding:10px 6px;font:inherit;cursor:pointer}
.md-act span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-size:20px;background:#fff;color:#052e40}
.md-act b{font-size:12.5px;font-weight:900}
.md-act.like span{background:#ff5c93;color:#fff}
.md-act.call span{background:var(--cyan)}
.md-act:hover,.md-act:focus-visible{background:#ffffff2b}
.md-act[hidden],.md-foot[hidden]{display:none}
.md-foot{margin:0;padding:6px 18px 14px;font-size:11.5px;line-height:1.4;color:#a8c3cd;text-align:center}
.md-end{background:#fff;color:var(--ink);border-radius:18px;padding:24px 20px;text-align:center}
.md-end h3{margin:0 0 8px;font-size:22px;letter-spacing:-.03em}
.md-end p{margin:0 0 14px;color:#445b66;line-height:1.55;font-size:14.5px}
.md-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:16px}
.md-end-actions{display:flex;gap:10px;flex-wrap:wrap}
.md-end-actions .vbtn{flex:1 1 150px}
@media (max-width:860px){.match-hero{grid-template-columns:1fr}.match-visual{min-height:250px;order:-1}.match-section{padding:40px 0}.match-cta{width:100%;justify-content:space-between}}
@media (prefers-reduced-motion:reduce){.md-card-wrap,.md-progress i{transition:none}}

.md-top-r{display:flex;align-items:center;gap:8px}
.md-matchs{display:inline-flex;align-items:center;gap:6px;border:1px solid #ffffff3d;background:#ffffff14;color:#fff;border-radius:50px;padding:8px 14px;font:inherit;font-size:13px;font-weight:900;cursor:pointer;white-space:nowrap}
.md-matchs span{color:#ff6b9d}
.md-matchs b{font-weight:1000}
.md-matchs:hover,.md-matchs[aria-pressed="true"]{background:#ffffff2e;border-color:#ffffff66}
.md-rows{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px;text-align:left}
.md-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:8px}
.md-thumb{flex:0 0 64px;aspect-ratio:950/488;border-radius:8px;overflow:hidden;background:linear-gradient(140deg,#093d55,#031d2a);display:grid;place-items:center;color:#fff;font-size:11px;font-weight:900;text-transform:uppercase}
.md-thumb img{width:100%;height:100%;object-fit:cover}
.md-thumb i{font-style:normal}
.md-rn{flex:1;min-width:0;display:grid}
.md-rn strong{font-size:14px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.md-rn small{font-size:12px;color:#627783}
.md-rm{border:0;background:#eef3f4;color:#052b3c;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:13px}
.md-rm:hover{background:#dbe6e9}
@media (max-width:420px){.md-matchs{padding:7px 10px;font-size:12px}}
.md-actions[hidden]{display:none}
.md-restart{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:14px;padding:10px;border:0;background:none;color:#0a637f;font:inherit;font-size:13.5px;font-weight:900;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.md-restart:hover,.md-restart:focus-visible{color:var(--navy)}
.md-restart span{text-decoration:none;font-size:16px}
.md-tools{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}
.md-profbtn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.md-profbtn b{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--cyan);color:#052e40;font-size:11px}
.md-profbtn b[hidden]{display:none}
.md-prof{text-align:left}
.md-prof h3,.md-prof>p{text-align:center}
.md-dd{margin-bottom:8px}
.md-dd-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #cfe3ea;border-radius:14px;background:#fff;min-height:48px;padding:0 14px;font:inherit;font-weight:900;font-size:14px;color:var(--ink);cursor:pointer;text-align:left}
.md-dd-btn:after{content:'';flex:0 0 auto;width:8px;height:8px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.md-dd-btn[aria-expanded="true"]:after{transform:rotate(225deg) translateY(-2px)}
.md-dd-btn:hover,.md-dd-btn:focus-visible{border-color:#0a637f;outline:none}
.md-dd.active .md-dd-btn{border-color:var(--navy);background:#eaf8fc}
.md-dd-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.md-dd-panel{margin-top:6px;border:1px solid #cfe3ea;border-radius:14px;padding:6px;max-height:210px;overflow:auto;background:#fff}
.md-dd-panel[hidden]{display:none}
.md-prof .md-end-actions{margin-top:14px}
.md-prof .vbtn:disabled{opacity:.5;cursor:not-allowed}
.md-again span{color:var(--cyan);font-size:15px;line-height:1}
@media (max-width:440px){.md-tools{gap:6px;padding:0 12px 12px}.md-matchs{padding:7px 10px;font-size:12px;gap:5px}}
.md-again{padding:0;width:38px;height:38px;justify-content:center;flex:0 0 auto}.md-again span{font-size:19px}
@media (max-width:440px){.md-again{width:34px;height:34px;padding:0}}
@media (max-width:440px){.md-tools{flex-wrap:nowrap;gap:5px;padding:0 12px 12px}.md-matchs{padding:0 9px;font-size:11.5px;gap:4px;height:32px}.md-profbtn svg{width:14px;height:14px}.md-again{width:32px;height:32px;padding:0;flex:0 0 32px}}
.md-matchs{height:38px}
@media (max-width:440px){.md-matchs{height:32px}.md-again{width:32px;height:32px}}
.md-card-wrap .vprice{text-align:center;justify-items:center}.md-card-wrap .vbadges{justify-content:center}

/* ---------- Match auto : améliorations ---------- */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.vribbon{display:none}
.md-card-wrap .vribbon{display:inline-flex;align-items:center;gap:5px;position:absolute;left:10px;bottom:10px;z-index:2;background:var(--yellow);color:#052e40;border-radius:50px;padding:6px 12px;font-size:11px;font-weight:1000;letter-spacing:.03em;text-transform:uppercase;box-shadow:0 4px 12px #0003}
.md-card-wrap .vribbon:before{content:'★';font-size:12px}
.md-card-wrap .vtag{display:none}
.md-prevrow{display:flex;justify-content:center;padding:2px 16px 0}
.md-prevrow[hidden]{display:none}
.md-prev{border:0;background:none;color:#c9dde5;font:inherit;font-size:13px;font-weight:800;padding:8px 12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.md-prev:hover,.md-prev:focus-visible{color:#fff}
.md-matchs.pop{animation:mdpop .45s ease}
@keyframes mdpop{0%{transform:scale(1)}35%{transform:scale(1.14);background:#ff5c9340}100%{transform:scale(1)}}
.md-burst{position:absolute;left:50%;top:34%;z-index:8;font-size:110px;line-height:1;color:#ff5c93;pointer-events:none;text-shadow:0 8px 28px #0007;animation:mdburst .62s ease-out forwards}
@keyframes mdburst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-80%) scale(1.5)}}
.md-hint{position:absolute;left:50%;top:26%;transform:translateX(-50%);z-index:7;display:flex;align-items:center;gap:12px;background:#052e40ee;color:#fff;border-radius:18px;padding:10px 14px;font-size:14px;font-weight:900;text-align:center;pointer-events:none;box-shadow:0 10px 30px #0006;animation:mdhint 5.2s ease forwards;white-space:nowrap}
.md-hint b{font-size:22px;color:var(--cyan)}
.md-hint small{display:block;font-size:11px;font-weight:700;color:#c9dde5;margin-top:2px}
@keyframes mdhint{0%{opacity:0}8%{opacity:1}85%{opacity:1}100%{opacity:0}}
.md-card-wrap.nudge{animation:mdnudge 1.3s .5s 2 ease-in-out}
@keyframes mdnudge{0%,100%{transform:translateX(0) rotate(0)}30%{transform:translateX(18px) rotate(1.5deg)}70%{transform:translateX(-18px) rotate(-1.5deg)}}
.md-hero{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:10px;text-align:left}
.md-hero-media{position:relative;aspect-ratio:950/488;background:linear-gradient(140deg,#093d55,#031d2a);display:grid;place-content:center;text-align:center;color:#fff;overflow:hidden}
.md-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.md-hero-media span:not(.md-hero-tag){font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:900;color:#d2e4eb}
.md-hero-media strong{font-size:26px;text-transform:uppercase;letter-spacing:-.03em}
.md-hero-tag{position:absolute;left:10px;top:10px;background:#ff5c93;color:#fff;border-radius:50px;padding:6px 12px;font-size:11px;font-weight:1000;letter-spacing:.03em;text-transform:uppercase}
.md-hero-tag i{font-style:normal}
.md-hero-info{display:flex;align-items:center;gap:10px;padding:10px 12px}
.md-hero-info .md-rn strong{font-size:16px}
.md-suggest{margin:10px 0 0;padding:10px 12px;border-radius:12px;background:#fff4d6;color:#5a4300;font-size:13px;line-height:1.5;text-align:left}
.md-suggest[hidden]{display:none}
.md-suggest button{border:0;background:none;color:#0a637f;font:inherit;font-weight:900;text-decoration:underline;cursor:pointer;padding:0}
.match-note{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#ffe3ee;color:#7a1f45;font-size:14px;font-weight:800;line-height:1.45}
.match-note[hidden]{display:none}
.match-note span{color:#e23d7c}
@media (prefers-reduced-motion:reduce){.md-burst,.md-card-wrap.nudge,.md-matchs.pop{animation:none}.md-hint{animation:none}}
.md-hint{top:14%}
.md-stage{position:relative}
.md-burst{top:36%}
.match-section{border-bottom:4px solid var(--cyan)}

/* ---------- Centres d'intérêt (recto) ---------- */
.vmeta .vints{display:flex;flex-wrap:wrap;gap:5px;min-height:56px;align-content:flex-start;margin-top:4px}
.vints span{display:inline-block;background:#eaf8fc;color:#12506a;border:1px solid #cfe9f1;border-radius:50px;padding:3px 9px;font-size:11.5px;font-weight:800;line-height:1.4;white-space:nowrap}
.md-card-wrap .vmeta .vints{min-height:0}

.vback .vb-rows{flex:1;display:flex;flex-direction:column;justify-content:space-evenly}
.vback .vb-rows div{align-items:center;flex:1 1 0;max-height:62px;border-bottom:1px solid var(--line)}
.vback .vb-rows div:last-child{border-bottom:0}
.vback .vb-head{text-align:center}
.vfront .vbtn.light[data-flip]{background:var(--cyan);color:#052e40;border-color:var(--cyan);box-shadow:0 6px 16px #36e4ff4d;transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}
.vfront .vbtn.light[data-flip]:hover,.vfront .vbtn.light[data-flip]:focus-visible{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 8px 20px #052e4040;transform:translateY(-1px);filter:none}

.vbtn .lbl-short{display:none}.vgrid .vbtn .lbl-short{display:inline}.vgrid .vbtn .lbl-long{display:none}
.vback .vbtn.light[data-flip]{background:var(--navy);color:#fff;border-color:var(--navy);transition:background .2s,color .2s,border-color .2s}
.vback .vbtn.light[data-flip]:hover,.vback .vbtn.light[data-flip]:focus-visible{background:var(--cyan);color:var(--navy);border-color:var(--cyan);filter:none}
.vs-reset,.vs-reset:visited{background:var(--navy);color:#fff;border-color:var(--navy);transition:background .2s,color .2s,border-color .2s}
.vs-reset:hover,.vs-reset:focus-visible{background:var(--cyan);color:var(--navy);border-color:var(--cyan);filter:none}
.timer-strip .container{justify-content:center;gap:28px;padding:16px 0}.timer-copy{font-size:16px;letter-spacing:.02em;white-space:nowrap}.timer-numbers{gap:10px}.unit{min-width:72px}.unit strong{font-variant-numeric:tabular-nums;line-height:1.15}
@media(max-width:700px){.timer-strip .container{flex-direction:column;align-items:center;gap:10px;padding:14px 0}.timer-copy{font-size:13px;white-space:normal;text-align:center}.timer-numbers{gap:8px;width:100%;justify-content:center}.unit{flex:1 1 0;min-width:0;max-width:78px;padding:7px 4px}.unit strong{font-size:20px}}

/* Filtres : version moderne (pilules, icônes, états actifs) */
.vs-filters{background:transparent;border:0;box-shadow:none;padding:0;gap:12px;margin-bottom:26px}
.vs-dd-btn{border-radius:999px;min-height:54px;padding:0 20px 0 16px;gap:12px;border:1.5px solid #d3e4ea;background:#fff;box-shadow:0 1px 2px #05253614,0 6px 18px #05253610;font-weight:800;transition:border-color .2s,box-shadow .2s,background .2s,transform .2s}
.vs-dd-btn:before{content:'';flex:0 0 auto;width:30px;height:30px;border-radius:50%;background-color:#e4f8fd;background-repeat:no-repeat;background-position:center;background-size:17px;transition:background-color .2s}
.vs-dd-text{flex:1;min-width:0}
.vs-dd-btn:after{width:7px;height:7px;border-color:#0a637f;margin-right:2px}
.vs-dd-btn:hover{border-color:var(--cyan);box-shadow:0 2px 4px #05253614,0 10px 24px #36e4ff40;transform:translateY(-1px)}
.vs-dd-btn:hover:before,.vs-dd-btn[aria-expanded="true"]:before{background-color:var(--cyan)}
.vs-dd-btn[aria-expanded="true"]{border-color:var(--navy)}
.vs-dd.active .vs-dd-btn{background:var(--navy);border-color:var(--navy);color:#fff}
.vs-dd.active .vs-dd-btn:after{border-color:#fff}
.vs-dd.active .vs-dd-btn:before{background-color:var(--cyan)}
.vs-dd[data-dd="cat"] .vs-dd-btn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23052e40' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E")}
.vs-dd[data-dd="energy"] .vs-dd-btn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23052e40' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 9-12h-7z'/%3E%3C/svg%3E")}
.vs-dd[data-dd="brand"] .vs-dd-btn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23052e40' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1'/%3E%3C/svg%3E")}
.vs-dd[data-dd="price"] .vs-dd-btn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23052e40' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 7a6 6 0 1 0 0 10'/%3E%3Cpath d='M4 10h10M4 14h10'/%3E%3C/svg%3E")}
.vs-dd-panel{border:0;border-radius:22px;box-shadow:0 24px 60px #05253640,0 0 0 1px #d3e4ea;padding:8px;top:calc(100% + 10px)}
.vs-opt{border-radius:14px;padding:11px 12px;gap:12px}
.vs-opt input{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:1.5px solid #b9d0d9;border-radius:6px;background:#fff;display:grid;place-content:center;transition:background .15s,border-color .15s}
.vs-opt input[type=radio]{border-radius:50%}
.vs-opt input:checked{background:var(--navy);border-color:var(--navy)}
.vs-opt input:checked:after{content:'';width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.vs-opt:has(input:checked){background:#eaf8fc}
.vs-opt:focus-within{outline:2px solid var(--cyan);outline-offset:-2px}
@media(max-width:560px){.vs-dd-btn{min-height:50px}}

/* Ajustements ergonomie tactile */
.check input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;accent-color:var(--navy)}
.btn-small{min-height:40px}
.hero-dot{position:relative}.hero-dot:after{content:'';position:absolute;inset:-12px -6px}

.sel-alert{margin:0 0 12px;padding:11px 14px;border-radius:12px;background:#fff3cd;color:#6b4500;font-weight:800;font-size:14px;border:1px solid #f0c75e}
.sel-alert[hidden]{display:none}
.selected-panel.needs-model{box-shadow:0 0 0 2px #f0c75e}

/* Match auto : la fiche tient dans l'écran sans défilement (la photo s'adapte à la hauteur disponible) */
.md-card-wrap .vfront .vmedia{aspect-ratio:auto;height:clamp(70px,calc(100dvh - 590px),262px)}
@media (max-width:440px){.md-card-wrap .vfront .vmedia{height:clamp(70px,calc(100dvh - 640px),262px)}}
@media (max-height:800px){
  .md-top{padding:10px 14px 6px}.md-tools{padding-bottom:8px}.md-stage{padding:8px 14px 4px}
  .md-actions{padding:8px 14px 4px}.md-act{padding:8px 6px}
  .md-card-wrap .vfront .vmeta{padding-top:10px;gap:5px}.md-card-wrap .vfront .vprice{padding-top:8px}
  .md-card-wrap .vfront .vmedia{height:clamp(70px,calc(100dvh - 600px),262px)}
}
@media (max-height:700px){.md-card-wrap .vfront .vprice strong,.md-card-wrap .vfront .vprice b{font-size:30px}.md-card-wrap .vfront .vactions .vbtn{min-height:42px}}
@media (max-height:800px) and (max-width:440px){.md-card-wrap .vfront .vmedia{height:clamp(56px,calc(100dvh - 640px),262px)}}
@media (max-height:700px){.md-foot{display:none}.md-actions{padding-bottom:12px}}

.vs-toggle{display:none}
@media(max-width:700px){
  .vs-head{display:flex;flex-wrap:wrap;gap:10px}
  .vs-head>div{flex:1 1 100%}
  .vs-toggle{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px 0 14px;border-radius:999px;border:1.5px solid #d3e4ea;background:#fff;color:var(--ink);font:inherit;font-weight:900;font-size:14px;cursor:pointer;box-shadow:0 1px 2px #05253614,0 6px 18px #05253610;margin:0 0 12px}
  .vs-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .vs-toggle b{min-width:22px;height:22px;border-radius:50%;background:var(--cyan);color:var(--navy);font-size:12px;display:inline-grid;place-items:center}
  .vs-toggle b[hidden]{display:none}
  .vs-toggle[aria-expanded="true"]{background:var(--navy);color:#fff;border-color:var(--navy)}
  #vsFilters:not(.open){display:none}
  #vsFilters.open{animation:vsopen .25s ease}
  @keyframes vsopen{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
}

/* Libellé « À la une » mis en avant */
.hero-switch .poster-label{flex:1 1 100%;text-align:center;font-size:19px;font-weight:1000;letter-spacing:.03em;color:var(--navy);background:var(--yellow);border-radius:12px;padding:12px 16px;box-shadow:0 8px 22px #fff30026;transition:opacity .3s}
.hero-switch{gap:12px}
@media(max-width:700px){.hero-switch .poster-label{font-size:16px;padding:11px 12px}}
.hero-switch .poster-label{background:transparent;color:#fff;box-shadow:none;padding:4px 0;border-radius:0}
@media(max-width:700px){.hero-switch .poster-label{padding:2px 0}}

/* Bandeau flottant : bouton de réinitialisation de la sélection */
.floating .floating-info{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.floating .floating-info span{flex:0 1 auto;padding-left:8px}
.floating .floating-reset{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:50%;border:1px solid #ffffff40;background:#ffffff14;color:#fff;cursor:pointer;transition:background .2s,border-color .2s,transform .3s}
.floating .floating-reset svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.floating .floating-reset:hover,.floating .floating-reset:focus-visible{background:#ffffff30;border-color:#ffffffa0}
.floating .floating-reset:hover svg{transform:rotate(-90deg)}
.floating .floating-reset svg{transition:transform .3s}
.floating .floating-reset:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

/* Vignettes : lien discret vers les mentions légales (ouvre la popup) */
.vcard .vprice .vlegal{display:block;margin-top:3px;font-size:10.5px;font-weight:600;line-height:1.3;color:#5b7480;text-decoration:underline;text-underline-offset:2px;width:max-content;max-width:100%}
.vcard .vprice .vlegal:hover,.vcard .vprice .vlegal:focus-visible{color:#0b3a4d}
