/* V5 — offres en couleurs, pages d'exemples, aperçu, Clarity Audit, contact en trois choix. */
:root{--o-starter:#c9cdd3;--o-presence:#7fa3c7;--o-shop:#d9a441;--o-signature:#c9806b;--line2:#262626;--card:#101010}
html.modal-open{overflow:hidden}
[hidden]{display:none!important}
.dock-cap{white-space:normal!important;line-height:1.45;text-overflow:clip!important}
.dock-cap i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o);margin-right:8px;vertical-align:1px}

/* ——— Offres ——— */
.offers{background:#080808;border-top:1px solid var(--line2)}
.offers-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}
.offers-head h2{font-size:clamp(46px,6vw,96px);line-height:.98;letter-spacing:-.05em;margin:18px 0 0}
.offers-head>p{max-width:340px;font-size:13px;line-height:1.7;color:#a3a3a0}
.picker{border:1px solid var(--line2);border-radius:18px;padding:22px;margin-bottom:28px;background:linear-gradient(180deg,#121212,#0b0b0b)}
.picker-title{font-size:20px;letter-spacing:-.02em;margin:0 0 14px}
.picker-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.picker-row button{text-align:left;background:#151515;border:1px solid #2c2c2c;border-radius:12px;padding:16px;color:#ecece9;font-size:14px;line-height:1.35;min-height:76px;display:flex;flex-direction:column;gap:6px;cursor:pointer;transition:border-color .2s,background .2s}
.picker-row button i{width:10px;height:10px;border-radius:50%;background:var(--o)}
.picker-row button small{font-size:11px;color:#9a9a97;line-height:1.4}
.picker-row button:hover,.picker-row button[aria-pressed="true"]{border-color:#f2f2f0;background:#1b1b1b}
.picker-foot{margin:14px 0 0;font-size:13px;color:#a3a3a0}.picker-foot a{color:#f2f2f0;border-bottom:1px solid #6d6d6b}
.offer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.offer{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid #232323;border-radius:18px;overflow:hidden;transition:transform .3s,box-shadow .3s}
.offer:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:var(--o)}
.offer.flash{box-shadow:0 0 0 2px var(--o),0 30px 60px -30px var(--o);transform:translateY(-4px)}
.offer-thumb{position:relative;height:150px;overflow:hidden;background:#151515;border-bottom:1px solid #222}
.offer-thumb .mini{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}
.offer-thumb:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#101010)}
.offer-body{display:flex;flex-direction:column;flex:1;padding:22px}
.offer-no{margin:0;font-size:11px;letter-spacing:.14em;color:var(--o)}
.offer h3{font-size:28px;letter-spacing:.02em;font-weight:600;margin:10px 0 2px;color:#f6f6f4}
.offer-tag{margin:0;color:var(--o);font-size:14px}
.offer-price{margin:16px 0 8px;color:#a3a3a0;font-size:13px}.offer-price b{font-size:34px;color:#f6f6f4;font-weight:500;letter-spacing:-.03em;margin-left:4px}
.offer-for{margin:0 0 14px;font-size:13.5px;line-height:1.6;color:#d0d0cd}
.offer ul{list-style:none;padding:0;margin:0 0 14px;font-size:12.5px;line-height:1.55;color:#bdbdba}
.offer li{padding:8px 0 8px 18px;border-top:1px solid #222;position:relative}
.offer li:before{content:'';position:absolute;left:0;top:15px;width:7px;height:7px;border-radius:50%;background:var(--o)}
.offer-not{margin:auto 0 16px;font-size:12px;line-height:1.5;color:#8f8f8c}.offer-not b{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#bdbdba;margin-bottom:4px}
.offer .starter-switch{display:flex;gap:6px;margin:0 0 12px}
.offer .starter-switch button{flex:1;background:transparent;border:1px solid #333;color:#d0d0cd;border-radius:99px;padding:10px 8px;font-size:11.5px;min-height:44px}
.offer .starter-switch button[aria-pressed="true"]{background:var(--o);color:#0b0b0b;border-color:var(--o)}
.offer-actions{display:grid;gap:8px}
.offer-more{display:flex;justify-content:space-between;align-items:center;min-height:46px;border:1px solid var(--o);color:var(--o);background:transparent;border-radius:99px;padding:0 18px;font-size:13px;cursor:pointer}
.offer-more:hover{background:var(--o);color:#0b0b0b}
.offer-choose{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12.5px;color:#bdbdba}
.offer-choose:hover{color:#fff}
.offers-note{margin:20px 0 0;font-size:11px;line-height:1.7;color:#7d7d7a;max-width:760px}

/* ——— Page « exemples d'une offre » ——— */
.offer-view{position:fixed;inset:0;z-index:200;background:#080808;color:#f2f2f0;overflow-y:auto;overscroll-behavior:contain}
.offer-view[hidden],.viewer[hidden]{display:none}
.ov-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:18px;padding:14px max(20px,env(safe-area-inset-right,0px)) 14px max(20px,env(safe-area-inset-left,0px));background:#080808ee;backdrop-filter:blur(12px);border-bottom:1px solid #1f1f1f}
.ov-back,.vw-back{background:transparent;border:1px solid #333;color:#e9e9e6;border-radius:99px;padding:10px 16px;font-size:12.5px;min-height:44px;cursor:pointer;white-space:nowrap}
.ov-tabs{display:flex;gap:6px;margin:0 auto;overflow-x:auto}
.ov-tabs button{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid #2c2c2c;color:#bdbdba;border-radius:99px;padding:9px 14px;font-size:12px;letter-spacing:.06em;min-height:40px;cursor:pointer;white-space:nowrap}
.ov-tabs button i{width:8px;height:8px;border-radius:50%;background:var(--o)}
.ov-tabs button[aria-pressed="true"]{border-color:var(--o);color:#fff}
.ov-cta{font-size:12.5px;border-bottom:1px solid #6d6d6b;white-space:nowrap}
.ov-body{padding:56px 5.5vw 80px;max-width:1500px;margin:0 auto}
.ov-head{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:end;padding-bottom:36px;border-bottom:1px solid #1f1f1f}
.ov-head .offer-no{font-size:12px}
.ov-head h2{font-size:clamp(54px,7vw,110px);line-height:.92;letter-spacing:-.04em;margin:10px 0}
.ov-head h2 em{display:block;font-size:.38em;color:var(--o);font-family:var(--serif);letter-spacing:-.01em;margin-top:12px}
.ov-head p{font-size:14px;line-height:1.7;color:#c9c9c6;margin:0 0 14px}
.ov-fit{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none}
.ov-fit li{border:1px solid #2e2e2e;border-radius:99px;padding:7px 12px;font-size:12px;color:#d6d6d3}
.ov-sub{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:44px 0 18px}
.ov-sub h3{font-size:26px;font-weight:500;letter-spacing:-.02em;margin:0}.ov-sub p{margin:0;font-size:12.5px;color:#9a9a97;max-width:420px}
.ov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}
.ex-card{display:flex;flex-direction:column;background:#101010;border:1px solid #232323;border-radius:16px;overflow:hidden;text-align:left;color:inherit;padding:0;cursor:pointer;transition:border-color .25s,transform .25s}
.ex-card:hover,.ex-card:focus-visible{border-color:var(--o);transform:translateY(-3px)}
.ex-shot{position:relative;aspect-ratio:1120/700;overflow:hidden;background:#151515}
.ex-shot .mini{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}
.ex-info{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px}
.ex-info b{display:block;font-size:16px;font-weight:500}.ex-info span{font-size:12px;color:#9a9a97}
.ex-info em{font-style:normal;font-size:12px;color:var(--o);white-space:nowrap}
.ov-end{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:44px;padding-top:30px;border-top:1px solid #1f1f1f}
.ov-end .offer-more{min-width:240px}
.ov-end p{margin:0 0 0 auto;font-size:12px;color:#8f8f8c;max-width:420px}

/* Mini-aperçus : un site à taille réelle, réduit */
.mini{width:1120px;height:700px;background:#141414}
.mini .win-site{top:0;overflow:hidden}

/* ——— Aperçu d'un exemple (comme un thème) ——— */
.viewer{position:fixed;inset:0;z-index:210;background:#050505;display:flex;flex-direction:column}
.vw-bar{display:flex;align-items:center;gap:16px;padding:12px max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px));border-bottom:1px solid #1f1f1f;color:#e9e9e6}
.vw-info{margin:0;display:flex;flex-direction:column;min-width:0}
.vw-info b{font-size:14px;font-weight:600}.vw-meta{font-size:11.5px;color:#9a9a97;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vw-device{display:flex;margin-left:auto;border:1px solid #333;border-radius:99px;padding:3px}
.vw-device button{background:transparent;border:0;color:#bdbdba;border-radius:99px;padding:8px 14px;font-size:12px;min-height:38px;cursor:pointer}
.vw-device button[aria-pressed="true"]{background:#f2f2f0;color:#0b0b0b}
.vw-cta{font-size:12.5px;background:#f2f2f0;color:#0b0b0b;border-radius:99px;padding:11px 16px;white-space:nowrap}
.vw-stage{flex:1;min-height:0;display:grid;place-items:center;padding:18px;overflow:hidden}
.vw-frame{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 0 0 1px #ffffff17,0 40px 100px -30px #000}
.vw-canvas{position:absolute;left:0;top:0;transform-origin:0 0;background:#141414}
.vw-canvas .win-site{overflow-y:auto}

/* ——— Clarity Audit ——— */
.audit-app{background:radial-gradient(60% 80% at 85% 20%,#1a1712,transparent 60%),#0a0a0a;border-top:1px solid var(--line2);display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;align-items:start}
.q4-hook{grid-column:1/-1;margin:0 0 10px;padding:14px 18px;border:1px solid #3a3122;border-radius:12px;background:#15120d;font-size:13px;color:#d9cdb5}
.q4-hook b{color:var(--o-shop);margin-right:6px}
.audit-intro h2{font-size:clamp(42px,5vw,78px);line-height:1;letter-spacing:-.045em;margin:18px 0 22px}
.audit-intro>p:last-child{font-size:14px;line-height:1.7;color:#bdbdba;max-width:420px}
.au-card{background:#111;border:1px solid #262626;border-radius:20px;padding:30px;min-height:420px;display:flex;flex-direction:column}
.au-start{display:flex;flex-direction:column;gap:18px;margin:auto 0}
.au-facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.au-facts li{border:1px solid #333;border-radius:99px;padding:8px 14px;font-size:12.5px;color:#d6d6d3}
.au-honest{margin:0;font-size:12.5px;line-height:1.6;color:#9a9a97}
.au-go{align-self:flex-start;cursor:pointer;border:0}
.au-quiz{display:flex;flex-direction:column;flex:1}
.au-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#9a9a97}
.au-back{background:transparent;border:0;color:#bdbdba;font-size:12.5px;min-height:44px;cursor:pointer;padding:0}
.au-back:disabled{opacity:.3;cursor:default}
.au-bar{height:3px;background:#262626;border-radius:3px;margin:6px 0 26px;overflow:hidden}.au-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--o-starter),var(--o-presence),var(--o-shop),var(--o-signature));transition:width .35s}
.au-section{margin:0 0 10px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#8f8f8c}
.au-q{font-size:clamp(22px,2.2vw,30px);line-height:1.2;letter-spacing:-.02em;font-weight:500;margin:0 0 26px;outline:none}
.au-answers{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.au-answers button{min-height:58px;text-align:left;background:#181818;border:1px solid #2e2e2e;border-radius:12px;padding:14px 16px;color:#ecece9;font-size:14px;cursor:pointer;transition:border-color .15s,background .15s}
.au-answers button:hover,.au-answers button[aria-pressed="true"]{border-color:#f2f2f0;background:#202020}
.au-text{margin-top:auto}
.au-text textarea{width:100%;background:#181818;border:1px solid #333;border-radius:12px;color:#f2f2f0;padding:14px;font:inherit;font-size:14px;resize:vertical}
.au-text-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}
.au-skip,.au-next{min-height:46px;border-radius:99px;padding:0 20px;font-size:13px;cursor:pointer}
.au-skip{background:transparent;border:1px solid #333;color:#d6d6d3}.au-next{background:#f2f2f0;border:0;color:#0b0b0b}
.au-result h3{font-size:26px;font-weight:500;letter-spacing:-.02em;margin:0 0 6px}
.au-result .au-note{font-size:12px;color:#8f8f8c;margin:0 0 20px}
.au-cause{border:1px solid #2a2a2a;border-left:3px solid var(--c,#f2f2f0);border-radius:12px;padding:18px 18px 16px;margin-bottom:12px;background:#151515}
.au-cause small{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--c)}
.au-cause h4{font-size:19px;font-weight:500;margin:8px 0 8px}
.au-cause p{font-size:13.5px;line-height:1.65;color:#d0d0cd;margin:0 0 10px}
.au-cause .au-fix{font-size:13px;color:#ecece9;background:#1d1d1d;border-radius:8px;padding:10px 12px;margin:0}
.au-cause .au-fix b{color:#fff}
.au-quote{font-size:13px;color:#bdbdba;border-left:2px solid #444;padding-left:12px;margin:12px 0}
.au-offer{display:flex;align-items:center;gap:10px;font-size:13px;color:#d0d0cd;margin:14px 0}.au-offer i{width:10px;height:10px;border-radius:50%;background:var(--o)}
.au-ends{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.au-ends .silver-button{border:0;cursor:pointer}
.au-ends .au-q2{min-height:48px;border:1px solid #444;border-radius:2px;background:transparent;color:#ecece9;padding:0 18px;font-size:13px;cursor:pointer}
.au-ends small{width:100%;font-size:11.5px;color:#8f8f8c}
.au-again{background:transparent;border:0;color:#9a9a97;font-size:12px;margin-top:14px;cursor:pointer;min-height:40px;padding:0;text-decoration:underline}

/* ——— Trois étapes ——— */
.steps{background:#080808;border-top:1px solid var(--line2);padding-top:60px;padding-bottom:60px}
.steps ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps li{border-top:2px solid #2a2a2a;padding-top:18px}
.steps li:nth-child(1){border-color:var(--o-starter)}.steps li:nth-child(2){border-color:var(--o-presence)}.steps li:nth-child(3){border-color:var(--o-shop)}
.steps b{font-size:11px;color:#8f8f8c;font-weight:400}
.steps h3{font-size:24px;font-weight:500;letter-spacing:-.02em;margin:10px 0 8px}
.steps p{font-size:13px;line-height:1.65;color:#bdbdba;margin:0;max-width:340px}

/* ——— Contact ——— */
.contact2{background:#0b0b0b;border-top:1px solid var(--line2)}
.c2-head h2{font-size:clamp(46px,6vw,96px);line-height:.98;letter-spacing:-.05em;margin:18px 0 34px}
.c2-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.c2-tabs button{min-height:48px;background:transparent;border:1px solid #333;color:#d6d6d3;border-radius:99px;padding:0 20px;font-size:13.5px;cursor:pointer}
.c2-tabs button[aria-selected="true"]{background:#f2f2f0;color:#0b0b0b;border-color:#f2f2f0}
.c2-panel{max-width:720px}
.c2-lead{font-size:14.5px;line-height:1.7;color:#c9c9c6;margin:0 0 18px}
.c2-form label{display:block;font-size:11.5px;color:#bdbdba;margin:0 0 16px}
.c2-form label small{color:#8f8f8c}
.c2-form input,.c2-form textarea,.c2-form select{display:block;width:100%;margin-top:6px;background:#141414;border:1px solid #2e2e2e;border-radius:10px;color:#f2f2f0;padding:13px 14px;font:inherit;font-size:14px}
.c2-form select option{background:#141414}
.c2-form button[type=submit]{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:52px;background:#f2f2f0;color:#0b0b0b;border:0;border-radius:2px;padding:0 20px;font-size:13.5px;cursor:pointer;margin-top:8px}
.c2-form button[disabled]{opacity:.5}
.c2-attached{font-size:12.5px;color:var(--o-shop);margin:-4px 0 14px}
.form-status{font-size:12.5px;line-height:1.6;color:#d6d6d3;min-height:1em}
.c2-direct{display:flex;flex-wrap:wrap;gap:10px}
.c2-pending{border:1px dashed #444;border-radius:99px;padding:12px 18px;font-size:13px;color:#9a9a97}
.contact2 .preview-note{font-size:11px;color:#8f8f8c;margin-top:20px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-privacy{font-size:11px;color:#a8a8a5;opacity:1!important;margin:4px 0 0}

@media (max-width:1100px){.offer-grid{grid-template-columns:1fr 1fr}.picker-row{grid-template-columns:1fr 1fr}}
@media (max-width:800px){
  .offers-head{flex-direction:column;align-items:start;gap:16px}
  .picker-row,.offer-grid{grid-template-columns:1fr}
  .audit-app{grid-template-columns:1fr;gap:26px}
  .au-card{padding:22px;min-height:440px}
  .au-answers{grid-template-columns:1fr}
  .steps ol{grid-template-columns:1fr;gap:22px}
  .ov-bar{flex-wrap:wrap;gap:10px}.ov-tabs{order:3;width:100%;margin:0}.ov-cta{margin-left:auto}
  .ov-head{grid-template-columns:1fr;gap:20px}.ov-sub{flex-direction:column;gap:6px}.ov-grid{grid-template-columns:1fr}.ov-end p{margin:0}
  .vw-bar{flex-wrap:wrap;gap:10px}.vw-info{order:3;width:100%}.vw-cta{display:none}
  .vw-stage{padding:10px}
}
@media (prefers-reduced-motion:reduce){.offer,.ex-card,.au-bar i{transition:none}}
/* V6 — langue et devise */
.nav nav>a.lang-switch{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #444;border-radius:99px;padding:0 12px;font-size:11px;letter-spacing:.08em}
.nav nav>a.lang-switch:hover{border-color:#e5e5e5}
.cur-pick label{display:inline-flex;align-items:center;gap:10px}
.cur-pick select{background:transparent;color:inherit;border:1px solid #444;border-radius:99px;padding:8px 12px;min-height:36px;font-size:11px}
.cur-pick option{background:#111;color:#e5e5e5}
.c2-mail{border:1px solid #444;border-radius:99px;padding:12px 18px;font-size:13px;color:#e5e5e5}
.c2-mail:hover{border-color:#e5e5e5}
/* V9 — « Ce que vous pourriez avoir », sous les exemples de chaque offre */
.ov-have{margin:0 0 20px;padding:16px 18px;border:1px solid #2c2c2c;border-left:3px solid var(--o);border-radius:10px;background:#111;font-size:14px;line-height:1.6;color:#d7d7d3;max-width:860px}
.ov-have b{color:#f2f2f0;font-weight:600;margin-right:6px}
.c2-wa{border:1px solid #444;border-radius:99px;padding:12px 18px;font-size:13px;color:#e5e5e5}
.c2-wa:hover{border-color:#e5e5e5}
/* V9 (2026-10-30) — fondatrice : « le devis en premier », une offre « page produit », et « une petite bannière… nos
   caractéristiques… des petites encoches vertes à côté. Dynamique. » */
:root{--o-product:#9ad48f;--ok:#3fd47a}
/* Bannière des points forts : défile doucement, s'arrête au survol ; les encoches se tracent à l'arrivée puis pulsent tour à tour */
.perks{position:relative;background:#0b0b0b;border-top:1px solid var(--line2);overflow:hidden;padding-block:18px}
.perks-track{display:flex;width:max-content;animation:perks-run 52s linear infinite}
.perks:hover .perks-track,.perks:focus-within .perks-track{animation-play-state:paused}
.perks ul{display:flex;gap:46px;list-style:none;margin:0;padding:0 23px}
.perks li{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:14.5px;color:#ecece9;letter-spacing:-.01em}
.perk-ok{flex:none;width:24px;height:24px;border-radius:50%;background:#3fd47a1c;box-shadow:inset 0 0 0 1.5px var(--ok);display:grid;place-items:center}
.perk-ok svg{width:14px;height:14px;display:block}
.perk-ok path{fill:none;stroke:var(--ok);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20}
.perks.on .perk-ok path{animation:perk-tick .55s cubic-bezier(.6,0,.2,1) forwards;animation-delay:calc(var(--i)*140ms)}
.perks.on .perk-ok{animation:perk-pulse 5.6s ease-in-out infinite;animation-delay:calc(var(--i)*.8s + 1s)}
.perks:before,.perks:after{content:'';position:absolute;top:0;bottom:0;width:72px;z-index:1;pointer-events:none}
.perks:before{left:0;background:linear-gradient(90deg,#0b0b0b,transparent)}.perks:after{right:0;background:linear-gradient(270deg,#0b0b0b,transparent)}
@keyframes perks-run{to{transform:translateX(-50%)}}
@keyframes perk-tick{to{stroke-dashoffset:0}}
@keyframes perk-pulse{0%,80%,100%{box-shadow:inset 0 0 0 1.5px var(--ok),0 0 0 0 #3fd47a00;background:#3fd47a1c}88%{box-shadow:inset 0 0 0 1.5px var(--ok),0 0 0 7px #3fd47a2e;background:#3fd47a40}}
/* Devis d'abord */
.quote-first{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:end;border:1px solid #2c2c2c;border-radius:22px;padding:clamp(24px,4vw,52px);margin-bottom:72px;background:radial-gradient(70% 120% at 100% 0%,#16261a,transparent 62%),linear-gradient(180deg,#121212,#0b0b0b)}
.quote-first h2{font-size:clamp(42px,5.4vw,86px);line-height:.98;letter-spacing:-.05em;margin:18px 0 20px}
.qf-copy>p:not(.eyebrow){max-width:580px;font-size:15px;line-height:1.7;color:#c9c9c6;margin:0 0 26px}
.qf-actions{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.qf-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.qf-steps li{display:flex;gap:16px;align-items:baseline;border-top:1px solid #2a2a2a;padding-top:14px;font-size:14px;line-height:1.55;color:#d6d6d3}
.qf-steps b{flex:none;font-size:11px;color:var(--ok);font-weight:500;letter-spacing:.12em}
/* Page produit, à la carte */
.offer-solo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);margin-top:14px}
.offer-solo .offer-thumb{height:auto;min-height:320px;border-bottom:0;border-right:1px solid #222}
.offer-solo .offer-thumb:after{background:linear-gradient(90deg,transparent 86%,#101010)}
.offer-solo .offer-thumb .mini{height:1700px}
.offer-price .op-pack{display:block;margin-top:8px;font-size:13px}.offer-price .op-pack b{font-size:22px;margin-left:2px}
.offer-solo ul{columns:1}
/* Formulaire de devis */
.c2-row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.c2-form textarea::placeholder,.c2-form input::placeholder{color:#77777a}
.picker-row{grid-template-columns:repeat(5,1fr)}
@media (max-width:1100px){.picker-row{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:800px){
  .quote-first{grid-template-columns:1fr;gap:28px;margin-bottom:48px}
  .offer-solo{grid-template-columns:1fr}.offer-solo .offer-thumb{min-height:170px;border-right:0;border-bottom:1px solid #222}
  .offer-solo .offer-thumb:after{background:linear-gradient(180deg,transparent 55%,#101010)}
  .picker-row{grid-template-columns:1fr}
  .c2-row{grid-template-columns:1fr}
  .perks{padding-block:14px}.perks li{font-size:13.5px}.perks ul{gap:34px;padding:0 17px}
}
@media (prefers-reduced-motion:reduce){
  .perks-track{animation:none;width:auto}.perks ul[aria-hidden]{display:none}
  .perks ul{flex-wrap:wrap;gap:12px 28px;padding-left:max(16px,6vw);padding-right:max(16px,6vw)}.perks li{white-space:normal}
  .perk-ok path{stroke-dashoffset:0}.perks.on .perk-ok,.perks.on .perk-ok path{animation:none}.perks:before,.perks:after{display:none}
}
/* Aperçu « Téléphone » : la barre de la fenêtre fait 390 px, comme sur un vrai téléphone (l'adresse ne recouvre plus l'étiquette) */
.vw-canvas.is-mob .win-tag{display:none}.vw-canvas.is-mob .win-url{min-width:0;padding:6px 14px}
/* Page des exemples : les cinq onglets défilent au lieu de passer sous le lien du haut (801-1000 px) */
.ov-tabs{min-width:0}
@media (max-width:1000px){.ov-tabs{gap:4px}.ov-tabs button{padding:9px 10px;letter-spacing:.03em}}
