/* Swiss TrottiPass — accueil v3 (octobre 2026)
   Page claire, sans blocs de cartes, contenu sur toute la largeur.
   Toutes les règles sont limitées à #home-page.home3 pour ne pas toucher au reste du site. */
:root{--h3-red:#E30613;--h3-red-d:#c30511;--h3-navy:#14263f;--h3-text:#33415a;--h3-muted:#5b6780;--h3-bg:#FAFAF8;--h3-line:#e6e4df}

/* fond clair au lieu du gris quand l'accueil est affiché */
html body:has(#home-page.home3:not([hidden])){background:var(--h3-bg)!important}
html body #home-page.home3{background:transparent!important;max-width:none!important;padding:0!important;margin:0!important}
#home-page.home3 *{text-shadow:none!important}
#home-page.home3 .h3-btn,#home-page.home3 .h3-hero h1,#home-page.home3 h2{-webkit-font-smoothing:antialiased}

/* ---------- éléments communs ---------- */
#home-page.home3 .h3-kick{margin:0 0 10px!important;font-size:13px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--h3-red)!important}
#home-page.home3 .h3-kick-muted{color:var(--h3-muted)!important}
#home-page.home3 h2{margin:0!important;font-size:clamp(28px,2.6vw,40px)!important;line-height:1.12!important;font-weight:700!important;letter-spacing:-.015em!important;color:var(--h3-navy)!important;text-align:left!important}
#home-page.home3 .h3-lead{margin:14px 0 0!important;font-size:18px!important;line-height:1.55!important;color:var(--h3-muted)!important;max-width:60ch}
#home-page.home3 .h3-btn{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:50px!important;padding:0 24px!important;border:0!important;border-radius:12px!important;background:var(--h3-red)!important;color:#fff!important;font:600 16px/1 inherit!important;font-weight:600!important;text-decoration:none!important;box-shadow:0 8px 20px -10px rgba(227,6,19,.7)!important;cursor:pointer;transition:background-color .15s,transform .15s}
#home-page.home3 .h3-btn:hover{background:var(--h3-red-d)!important;transform:translateY(-1px)}
#home-page.home3 .h3-sec{padding:clamp(64px,7vw,104px) clamp(20px,4.5vw,72px) 0!important;margin:0!important;background:none!important;border:0!important;box-shadow:none!important}

/* apparition douce */
#home-page.home3 .h3-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
#home-page.home3 .h3-reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){#home-page.home3 .h3-reveal{opacity:1;transform:none;transition:none}}

/* ---------- hero ---------- */
#home-page.home3 .h3-hero{position:relative!important;margin:8px clamp(10px,2.2vw,32px) 0!important;min-height:clamp(560px,calc(100vh - 140px),700px);border-radius:28px!important;overflow:hidden!important;display:flex!important;align-items:center!important;background:#1b2840!important}
#home-page.home3 .h3-hero-photo{position:absolute;inset:0;background:url(/public/images/photos/home-friends.webp) 60% 62%/cover no-repeat}
#home-page.home3 .h3-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(14,22,42,.86) 0%,rgba(14,22,42,.6) 36%,rgba(14,22,42,0) 62%)}
#home-page.home3 .h3-hero-in{position:relative;z-index:3;width:min(760px,58%);padding:48px 0 48px clamp(28px,4.5vw,72px);color:#fff}
#home-page.home3 .h3-hero h1{margin:0!important;font-size:clamp(40px,3.9vw,60px)!important;line-height:1.03!important;font-weight:800!important;letter-spacing:-.02em!important;color:#fff!important;max-width:none!important}
#home-page.home3 .h3-hero-lead{margin:20px 0 18px!important;font-size:clamp(16px,1.15vw,18px)!important;line-height:1.55!important;color:#e7ecf5!important;max-width:46ch!important}
#home-page.home3 .h3-checks{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0 0 26px!important;padding:0!important;list-style:none!important}
#home-page.home3 .h3-checks li{margin:0!important;padding:0!important;font-size:15px;font-weight:500;color:#fff;background:none!important;border:0!important}
#home-page.home3 .h3-checks li::before{content:"✓";margin-right:6px;color:#7be29b;font-weight:700}
#home-page.home3 .h3-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
#home-page.home3 .h3-ctas .hero-social{display:block!important;margin:0!important}
#home-page.home3 .h3-tiktok{display:inline-flex!important;align-items:center;gap:8px;color:#fff!important;font-size:15px;font-weight:500;text-decoration:none!important;opacity:.92;background:none!important;border:0!important;padding:4px 0!important;min-height:0!important}
#home-page.home3 .h3-tiktok[hidden]{display:none!important}
#home-page.home3 .h3-tiktok:hover{opacity:1;text-decoration:underline!important}
#home-page.home3 .h3-tiktok-i{display:grid;place-items:center;width:26px;height:26px;border-radius:7px;background:#000}
#home-page.home3 .h3-verify{margin:30px 0 0!important;padding:0!important;width:min(470px,100%);background:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
#home-page.home3 .h3-verify label{display:block;margin:0 0 8px!important;font-size:14px!important;font-weight:600!important;color:#fff!important}
#home-page.home3 .h3-field{display:flex;align-items:center;gap:6px;padding:5px;border-radius:12px;background:#fff}
#home-page.home3 .h3-field input{flex:1;min-width:0;height:44px!important;margin:0!important;padding:0 12px!important;border:0!important;outline:none;background:transparent!important;box-shadow:none!important;font-size:16px!important;color:var(--h3-navy)!important}
#home-page.home3 .h3-field button{flex:none;height:44px!important;min-height:44px!important;margin:0!important;padding:0 20px!important;border:0!important;border-radius:9px!important;background:var(--h3-navy)!important;color:#fff!important;font-size:15px!important;font-weight:600!important;box-shadow:none!important}
#home-page.home3 .h3-under{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;margin-top:10px;font-size:13px;color:#c9d1e0}
#home-page.home3 .h3-scan{display:inline-flex!important;align-items:center;gap:7px;min-height:32px!important;margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#fff!important;font-size:14px!important;font-weight:600!important;cursor:pointer}
#home-page.home3 .h3-scan:hover span{text-decoration:underline}
#home-page.home3 .h3-msg{margin:8px 0 0!important;font-size:14px;color:#fff;min-height:0}
#home-page.home3 .h3-msg:empty{display:none}

/* ---------- comment ça marche ---------- */
#home-page.home3 .h3-how-grid{display:grid;grid-template-columns:minmax(200px,250px) 1fr;gap:clamp(28px,4vw,56px);margin-top:40px;align-items:start}
#home-page.home3 .h3-video .hv-sec{margin:0!important;padding:0!important;background:none!important}
#home-page.home3 .h3-video .hv-phone-wrap{margin:0!important;padding:0!important;background:none!important}
#home-page.home3 .h3-video .hv-phone{width:100%!important;max-width:250px!important;border-radius:26px!important;border-width:4px!important;box-shadow:0 18px 40px -16px rgba(20,38,63,.45)!important}
#home-page.home3 .h3-video-cap{margin:12px 4px 0!important;font-size:15px;font-weight:600;color:var(--h3-navy)}
#home-page.home3 .h3-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,32px)}
#home-page.home3 .h3-step{margin:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
#home-page.home3 .h3-step-ph{position:relative;aspect-ratio:3/2.4;border-radius:22px;overflow:hidden;background:#e9edf2}
#home-page.home3 .h3-step-ph img{display:block;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;object-position:center;transition:transform .6s ease}
#home-page.home3 .h3-step:hover .h3-step-ph img{transform:scale(1.03)}
#home-page.home3 .h3-n{position:absolute;top:14px;left:14px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--h3-red);color:#fff;font-weight:700;font-size:16px;box-shadow:0 4px 12px rgba(0,0,0,.25)}
#home-page.home3 .h3-step h3{margin:20px 0 8px!important;font-size:21px!important;line-height:1.25!important;font-weight:700!important;color:var(--h3-navy)!important}
#home-page.home3 .h3-step p{margin:0!important;font-size:16px!important;line-height:1.55!important;color:var(--h3-text)!important}

/* ---------- ce que fait / ne fait pas ---------- */
#home-page.home3 .h3-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px)}
#home-page.home3 .h3-two h3{margin:0 0 20px!important;font-size:clamp(22px,1.8vw,26px)!important;font-weight:700!important;color:var(--h3-navy)!important}
#home-page.home3 .h3-list{margin:0!important;padding:0!important;list-style:none!important}
#home-page.home3 .h3-list li{display:flex;gap:14px;align-items:flex-start;margin:0!important;padding:14px 0!important;border-top:1px solid var(--h3-line);font-size:17px;line-height:1.45;color:var(--h3-navy);background:none!important}
#home-page.home3 .h3-list li:last-child{border-bottom:1px solid var(--h3-line)}
#home-page.home3 .h3-list i{flex:none;display:grid;place-items:center;width:24px;height:24px;margin-top:1px;border-radius:50%;font-size:13px;font-weight:700;font-style:normal}
#home-page.home3 .h3-ok{background:#e5f5ea;color:#1c8a42}
#home-page.home3 .h3-info{background:#eef0f4;color:var(--h3-muted);font-family:Georgia,serif!important;font-style:italic!important}

/* ---------- communauté ---------- */
#home-page.home3 .h3-comm{display:grid;grid-template-columns:1.05fr 1fr;margin:clamp(64px,7vw,104px) clamp(10px,2.2vw,32px) 0!important;border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--h3-line)}
#home-page.home3 .h3-comm-ph{min-height:420px;background:#e9edf2}
#home-page.home3 .h3-comm-ph img{display:block;width:100%;height:100%;object-fit:cover}
#home-page.home3 .h3-comm-tx{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,4.5vw,64px)}
#home-page.home3 .h3-stats{display:flex;flex-wrap:wrap;gap:16px 44px;margin:28px 0 4px}
#home-page.home3 .h3-stats[hidden]{display:none}
#home-page.home3 .h3-stats b{display:block;font-size:clamp(32px,3vw,42px);line-height:1.05;font-weight:800;letter-spacing:-.02em;color:var(--h3-navy)}
#home-page.home3 .h3-stats span{font-size:15px;color:var(--h3-muted)}
#home-page.home3 .h3-comm-tx .h3-btn{margin-top:30px}

/* ---------- avis ---------- */
#home-page.home3 .h3-avis[hidden]{display:none!important}
#home-page.home3 .h3-avis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:32px}
#home-page.home3 .h3-quote{margin:0;padding:0 0 0 18px;border-left:3px solid var(--h3-red)}
#home-page.home3 .h3-quote .st{color:#f2a900;letter-spacing:2px;font-size:15px}
#home-page.home3 .h3-quote p{margin:8px 0 10px!important;font-size:17px;line-height:1.55;color:var(--h3-navy)}
#home-page.home3 .h3-quote small{font-size:14px;color:var(--h3-muted)}
#home-page.home3 .h3-link{display:inline-block;margin-top:24px;font-weight:600;color:var(--h3-red)!important;text-decoration:none}
#home-page.home3 .h3-link:hover{text-decoration:underline}

/* ---------- rouler en Suisse ---------- */
html body #home-page.home3 #regles-suisses{padding:0!important;margin:clamp(64px,7vw,104px) 0 0!important;background:none!important;border:0!important;box-shadow:none!important;max-width:none!important;display:block!important}
#home-page.home3 .h3-rules{position:relative;margin:0 clamp(10px,2.2vw,32px);min-height:420px;border-radius:28px;overflow:hidden;display:flex;align-items:center}
#home-page.home3 .h3-rules>img{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;object-position:center 60%}
#home-page.home3 .h3-rules::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(250,250,248,.9) 0%,rgba(250,250,248,.65) 32%,rgba(250,250,248,0) 58%)}
#home-page.home3 .h3-rules-tx{position:relative;z-index:2;width:min(470px,90%);padding:48px clamp(28px,4.5vw,64px)}
#home-page.home3 .h3-rules-tx p:not(.h3-kick){margin:14px 0 26px!important;font-size:18px;line-height:1.5;color:#26324d}
html body #home-page.home3 .home-law-fold{margin:0 clamp(20px,4.5vw,72px)!important;border:0!important;background:none!important;box-shadow:none!important}
html body #home-page.home3 .home-law-fold>summary{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;padding:0!important;margin:0!important;border:0!important}
html body #home-page.home3 .home-law-fold[open]{margin-top:32px!important}

/* projet futur / revendeurs : retiré de l'accueil (le « + » sans texte) */
html body #home-page.home3 .home-future-info{display:none!important}

/* ---------- questions fréquentes ---------- */
html body #home-page.home3 .home-questions{display:grid!important;grid-template-columns:minmax(220px,380px) 1fr!important;gap:8px clamp(32px,6vw,96px)!important;max-width:none!important;margin:0!important;padding:clamp(64px,7vw,104px) clamp(20px,4.5vw,72px) 0!important;background:none!important;border:0!important;box-shadow:none!important;align-items:start!important}
html body #home-page.home3 .home-questions>h2{grid-column:1!important;grid-row:1 / span 6!important;text-align:left!important;margin:0!important}
html body #home-page.home3 .home-questions details{grid-column:2!important;margin:0!important;padding:0!important;border:0!important;border-top:1px solid var(--h3-line)!important;border-radius:0!important;background:none!important;box-shadow:none!important}
html body #home-page.home3 .home-questions details:last-of-type{border-bottom:1px solid var(--h3-line)!important}
html body #home-page.home3 .home-questions summary{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:16px;padding:20px 0!important;font-size:18px!important;font-weight:600!important;color:var(--h3-navy)!important;list-style:none!important;cursor:pointer;background:none!important}
html body #home-page.home3 .home-questions summary::-webkit-details-marker{display:none}
html body #home-page.home3 .home-questions summary::after{content:"+"!important;flex:none;font-size:26px;font-weight:400;line-height:1;color:var(--h3-red);transition:transform .2s;position:static!important;background:none!important;width:auto!important;height:auto!important;border:0!important}
html body #home-page.home3 .home-questions details[open] summary::after{transform:rotate(45deg)}
html body #home-page.home3 .home-questions details p{margin:0 0 20px!important;font-size:16px!important;line-height:1.6!important;color:var(--h3-text)!important;max-width:70ch}
html body #home-page.home3 .home-legal-links{padding:40px clamp(20px,4.5vw,72px) 0!important;margin:0!important;justify-content:flex-start!important}

/* ---------- tablette ---------- */
@media(max-width:1000px){
 #home-page.home3 .h3-hero-in{width:min(640px,78%)}
 #home-page.home3 .h3-hero::before{background:linear-gradient(90deg,rgba(14,22,42,.88) 0%,rgba(14,22,42,.66) 50%,rgba(14,22,42,.15) 85%)}
 #home-page.home3 .h3-how-grid{grid-template-columns:1fr}
 #home-page.home3 .h3-video{display:flex;align-items:center;gap:20px}
 #home-page.home3 .h3-video .hv-phone{max-width:170px!important}
 #home-page.home3 .h3-video-cap{font-size:18px}
 #home-page.home3 .h3-comm{grid-template-columns:1fr}
 #home-page.home3 .h3-comm-ph{min-height:300px;max-height:380px}
 #home-page.home3 .h3-avis-grid{grid-template-columns:1fr 1fr}
}
/* ---------- téléphone ---------- */
@media(max-width:700px){
 #home-page.home3 .h3-hero{display:block!important;min-height:0;border-radius:22px!important;margin:6px 10px 0!important}
 #home-page.home3 .h3-hero-photo{position:relative;height:250px;background-position:55% 60%}
 #home-page.home3 .h3-hero::before{display:none}
 #home-page.home3 .h3-hero-in{width:auto;padding:24px 20px 28px;background:#1b2840}
 #home-page.home3 .h3-hero h1{font-size:34px!important}
 #home-page.home3 .h3-hero-lead{font-size:16px!important}
 #home-page.home3 .h3-checks{gap:6px 16px;margin-bottom:20px!important}
 #home-page.home3 .h3-checks li{font-size:14px}
 #home-page.home3 .h3-ctas .h3-btn{width:100%;justify-content:center}
 #home-page.home3 .h3-verify{width:100%;margin-top:24px!important}
 #home-page.home3 .h3-steps{grid-template-columns:1fr;gap:32px}
 #home-page.home3 .h3-video{flex-direction:column;align-items:flex-start}
 #home-page.home3 .h3-two{grid-template-columns:1fr;gap:44px}
 #home-page.home3 .h3-list li{font-size:16px}
 #home-page.home3 .h3-comm{margin:56px 10px 0!important;border-radius:22px}
 #home-page.home3 .h3-comm-ph{min-height:220px}
 #home-page.home3 .h3-avis-grid{grid-template-columns:1fr}
 #home-page.home3 .h3-rules{margin:0 10px;min-height:0;display:block;border-radius:22px}
 #home-page.home3 .h3-rules>img{position:relative;height:220px!important}
 #home-page.home3 .h3-rules::before{display:none}
 #home-page.home3 .h3-rules-tx{width:auto;padding:24px 20px 28px;background:#fff}
 html body #home-page.home3 .home-questions{grid-template-columns:1fr!important}
 html body #home-page.home3 .home-questions>h2{grid-row:auto!important;margin-bottom:12px!important}
 html body #home-page.home3 .home-questions details{grid-column:1!important}
 html body #home-page.home3 .home-questions summary{font-size:16px!important}
}

/* ---------- Rouler en Suisse v2 : bloc centré, trottinette entière ---------- */
html body #home-page.home3 #regles-suisses{width:auto!important;max-width:none!important;margin:clamp(64px,7vw,104px) clamp(10px,2.2vw,32px) 0!important;padding:0!important}
#home-page.home3 #regles-suisses .h3-rules{margin:0!important;width:100%;min-height:480px;background:#dce8f3 url(/public/images/photos/lake-scooter.webp) center/cover no-repeat}
#home-page.home3 #regles-suisses .h3-rules::before{z-index:0;background:rgba(244,247,250,.45);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
#home-page.home3 #regles-suisses .h3-rules>img{z-index:1;left:auto!important;right:0;top:0;width:auto!important;height:100%!important;max-width:none!important;object-fit:contain;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%);mask-image:linear-gradient(90deg,transparent 0,#000 30%)}
#home-page.home3 #regles-suisses .h3-rules-tx{z-index:2}
@media(max-width:700px){
 html body #home-page.home3 #regles-suisses{margin:56px 10px 0!important}
 #home-page.home3 #regles-suisses .h3-rules{min-height:0;background:none}
 #home-page.home3 #regles-suisses .h3-rules::before{display:none}
 #home-page.home3 #regles-suisses .h3-rules>img{position:relative;width:100%!important;height:220px!important;object-fit:cover;object-position:75% 50%;-webkit-mask-image:none;mask-image:none}
}
