/* V130 — design bureau V127, finitions mobiles V128 et lien Pass discret.
   Les dimensions sont souples ; aucun calcul ou parcours métier n'est changé. */

/* Des reliefs plus discrets et une hiérarchie de boutons cohérente. */
.home-body .btn,
.home-body .header-cta,
.booking-design .btn,
.passes-design .btn{box-shadow:0 4px 12px rgba(28,34,38,.06)!important}
.home-body .btn-outline,
.booking-design .btn-outline,
.passes-design .btn-outline{box-shadow:none!important}
.home-body .hero-photo{box-shadow:0 12px 30px rgba(28,34,38,.09)!important;border:1px solid rgba(28,34,38,.12)!important}
.home-body .hero-photo::after{display:none!important}
.home-body .hero-photo-note{background:rgba(23,29,33,.91)!important;border:0!important;box-shadow:none!important;backdrop-filter:blur(8px)}
.home-body .hero-photo-note i{display:none!important}
.home-body .hero-photo-note span{color:#ffb490!important}
.home-body .hero-photo-note strong{color:#fff!important}
.home-body .price-card,
.home-body .booking-card{box-shadow:0 10px 30px rgba(28,34,38,.045)!important}
.home-body .selected-date-box strong{text-transform:none!important}
.home-body .date-panel .selected-date-box{min-height:68px!important}
.home-body .hero-point-icon{box-shadow:none!important}

/* Les chiffres reprennent la typographie de l'identité. */
.passes-design .pass-price strong,
.booking-design .order-total strong{
 font-family:"Nexa Black","Nexa Heavy","Inter Tight",sans-serif!important;
 font-weight:900!important;letter-spacing:-.025em!important;line-height:1.12!important
}
.passes-design .pass-price small{font-family:"Manrope",Arial,sans-serif!important;font-size:12px!important;line-height:1.5!important;font-weight:600!important;margin-left:5px!important;color:#535e65!important}
.passes-design .pass-select-card{box-shadow:0 4px 12px rgba(28,34,38,.035)!important;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease!important}
.passes-design .pass-select-card:hover{transform:none!important;border-color:#ae765b!important}
.passes-design .pass-select-card.active{background:#fff7f1!important;border-color:#c33d0b!important;box-shadow:inset 0 0 0 1px #c33d0b!important;transform:none!important}
.passes-design .pass-select-card.active::after{background:#a73105!important;color:#fff!important}
.passes-design .pass-price{gap:0!important}
.passes-design .pass-price strong{font-size:38px!important}
.booking-design .order-total strong{font-size:33px!important}
.booking-design .order-card{box-shadow:0 8px 22px rgba(28,34,38,.09)!important}
.booking-design .flow-form input:not([type=checkbox]):not([type=radio]):focus,
.booking-design .flow-form select:focus,
.passes-design .pass-fields input:focus{border-color:#9d421b!important;box-shadow:0 0 0 3px rgba(181,66,19,.10)!important}

/* Écrans intermédiaires : laisser de la place aux quatre offres. */
@media(min-width:760px) and (max-width:1050px){
 .passes-design .pass-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .passes-design .pass-select-card{min-height:190px!important}
}

/* Un récapitulatif lisible qui laisse les champs arriver plus tôt. */
@media(max-width:759px){
 .booking-design #singlePanel .order-card,
 .booking-design #studentPanel .order-card{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px 18px!important;padding:18px!important;border-radius:16px!important
 }
 .booking-design :is(#singlePanel,#studentPanel) .order-card>span{
  grid-column:1 / -1!important;grid-row:1!important;font-size:10px!important;
  letter-spacing:.11em!important;margin:0!important
 }
 .booking-design :is(#singlePanel,#studentPanel) .order-card .order-kicker{display:none!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-card>strong{
  grid-column:1!important;grid-row:2!important;align-self:center!important;
  font-family:"Manrope",Arial,sans-serif!important;font-size:14px!important;
  line-height:1.5!important;letter-spacing:0!important;margin:0!important
 }
 .booking-design :is(#singlePanel,#studentPanel) .order-total{
  grid-column:2!important;grid-row:2!important;display:flex!important;flex-direction:column-reverse!important;
  align-items:flex-end!important;gap:3px!important;margin:0!important;padding:0!important;border:0!important
 }
 .booking-design :is(#singlePanel,#studentPanel) .order-total>span{font-size:10px!important;white-space:nowrap}
 .booking-design :is(#singlePanel,#studentPanel) .order-total strong{font-size:30px!important;white-space:nowrap}
 .booking-design :is(#singlePanel,#studentPanel) .order-lines{
  grid-column:1 / -1!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:9px 16px!important;margin:6px 0 0!important;padding:13px 0 0!important;
  border-top:1px solid rgba(255,255,255,.16)!important
 }
 .booking-design :is(#singlePanel,#studentPanel) .order-lines>div{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;
  gap:2px!important;padding:0!important;border:0!important
 }
 .booking-design :is(#singlePanel,#studentPanel) .order-lines span{font-size:11px!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-lines b{font-size:12px!important;text-align:left!important;max-width:100%!important;line-height:1.5!important}

 /* Accueil : bouton principal, lien secondaire, puis trois informations compactes. */
 .home-body .hero-actions-v106{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap!important;gap:6px 17px!important}
 .home-body .hero-actions-v106 .btn-orange{width:auto!important;flex:1 1 170px!important;min-height:48px!important;padding-inline:16px!important}
 .home-body .hero-actions-v106 .btn-outline{
  width:auto!important;flex:0 1 auto!important;min-height:44px!important;padding:8px 0!important;
  background:transparent!important;border:0!important;border-radius:3px!important;
  color:#424b51!important;text-decoration:underline!important;text-underline-offset:4px!important;
  font-size:13px!important;white-space:nowrap
 }
 .home-body .hero-points{gap:8px!important;margin-top:20px!important;padding-top:16px!important;border-top:1px solid rgba(42,49,54,.13)}
 .home-body .hero-point{min-height:0!important;padding:0!important;gap:10px!important;background:transparent!important;border:0!important;border-radius:0!important}
 .home-body .hero-point-icon{width:21px!important;height:24px!important;min-width:21px!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;align-self:flex-start!important}
 .home-body .hero-point-icon .ui-icon{width:19px!important;height:19px!important;stroke-width:1.8!important}
 .home-body .hero-point>div{display:flex!important;align-items:baseline!important;gap:2px 8px!important;flex-wrap:wrap!important;min-width:0!important}
 .home-body .hero-point strong{font-size:13px!important;line-height:1.6!important}
 .home-body .hero-point small{font-size:12px!important;line-height:1.6!important;margin:0!important}
 .home-body .hero-grid{gap:23px!important}
 .home-body .hero-photo{border-radius:17px!important;min-height:0!important;aspect-ratio:4 / 3!important}
 .home-body .hero-photo-note{left:10px!important;right:10px!important;bottom:10px!important;border-radius:10px!important;padding:10px 12px!important}

 /* Pass : montant aligné à droite et bénéfices réunis sous le titre. */
 .passes-design .pass-plan-grid{gap:10px!important}
 .passes-design .pass-select-card{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;gap:10px 12px!important;min-height:0!important;
  padding:17px!important;border-radius:16px!important
 }
 .passes-design .pass-select-card .pass-label{
  grid-column:1!important;grid-row:1!important;align-self:center!important;
  padding:0!important;margin:0!important;line-height:1.5!important;font-size:12px!important
 }
 .passes-design .pass-select-card.active::after{display:none!important}
 .passes-design .pass-select-card.active .pass-label::after{content:"✓ Choisi";display:block;font-size:10px;line-height:1.5;color:#9f3209;font-weight:800;letter-spacing:0;margin-top:3px}
 .passes-design .pass-select-card .pass-price{grid-column:2!important;grid-row:1!important;display:flex!important;align-items:baseline!important;justify-content:flex-end!important;margin:0!important;padding:0!important}
 .passes-design .pass-select-card .pass-price strong{font-size:32px!important}
 .passes-design .pass-select-card .pass-price small{font-size:11px!important}
 .passes-design .pass-select-card ul{grid-column:1 / -1!important;display:grid!important;gap:4px!important;margin:0!important;padding:0!important}
 .passes-design .pass-select-card li{font-size:13px!important;line-height:1.6!important;margin:0!important}
 .passes-design .pass-summary{padding:20px!important}
 .passes-design .pass-summary-box{margin-top:12px!important;padding-top:12px!important}
 .passes-design .pass-summary-row:nth-child(-n+2){display:none!important}
 .passes-design .pass-summary-row:last-child{align-items:center!important}
 .passes-design .pass-summary-row:last-child span{display:none!important}
 .passes-design .pass-back-link{font-size:12px!important;line-height:1.6!important;display:inline-flex!important;align-items:center!important;min-height:44px!important;margin-top:8px!important}
}
@media(max-width:360px){
 .home-body .hero-actions-v106{gap:2px!important}
 .home-body .hero-actions-v106 .btn-orange{flex-basis:100%!important}
 .home-body .hero-actions-v106 .btn-outline{margin-inline:auto!important}
 .passes-design .pass-select-card{padding:15px!important;gap:10px!important}
 .passes-design .pass-select-card .pass-price strong{font-size:29px!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-card{padding:15px!important;gap:7px 12px!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-card>strong{font-size:13px!important}
}

/* Le titre suit la largeur réelle, notamment sur tablette et petit ordinateur. */
@media(min-width:760px){
 .home-body .hero-grid{
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;
  gap:clamp(28px,4.5vw,64px)!important;align-items:center!important
 }
 .home-body .hero h1{
  font-size:clamp(50px,6.6vw,98px)!important;line-height:1.01!important;
  letter-spacing:-.045em!important;max-width:100%!important
 }
 .home-body .hero-photo{
  min-height:0!important;height:auto!important;width:100%!important;
  aspect-ratio:1!important;align-self:center!important
 }
}
@media(min-width:760px) and (max-width:1100px){
 .home-body .hero{padding-top:48px!important;padding-bottom:44px!important}
 .home-body .hero-photo-note{left:14px!important;right:14px!important;bottom:14px!important;max-width:none!important;padding:13px!important}
 .home-body .hero-points{gap:12px!important}
 .home-body .hero-point{min-height:0!important}
}

/* Direction épurée : fond calme, alignements et séparateurs légers. */
body.home-body{background:#f7f6f2!important}
body.home-body::before,.home-body .hero::before,
.home-body .quick-info::before,.home-body .faq-section::before{display:none!important}
body.home-body::after{opacity:.03!important}
.home-body .section-head-left h2,
.home-body .section-mini-head h2{font-size:clamp(31px,3.2vw,45px)!important;line-height:1.1!important;letter-spacing:-.03em!important}
.home-body .section-head-left,.home-body .section-mini-head{margin-bottom:28px!important}
.home-body .quick-info{padding:80px 0 0!important}
.home-body .quick-info>.wrap{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr)!important;gap:0 64px!important}
.home-body .quick-info .section-mini-head{grid-column:1!important;grid-row:1 / 3!important;margin:0!important;padding-top:22px}
.home-body .quick-info-grid{display:block!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}
.home-body .quick-info-grid article{display:grid!important;grid-template-columns:25px minmax(0,1fr) auto!important;align-items:center!important;gap:17px!important;padding:23px 0!important;min-height:0!important;background:transparent!important;box-shadow:none!important;border:0!important;border-bottom:1px solid #d7dad5!important;border-radius:0!important;transform:none!important}
.home-body .quick-info-grid article:first-child{border-top:1px solid #d7dad5!important}
.home-body .quick-info-grid article>div{min-width:0}
.home-body .quick-icon{width:25px!important;height:28px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.home-body .quick-icon .ui-icon{width:23px!important;height:23px!important}
.home-body .quick-price{font-family:"Manrope",Arial,sans-serif!important;font-size:15px!important;font-weight:800!important;color:#9d350e!important;white-space:nowrap}
.home-body .material-specs-v106{grid-column:2!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;margin:22px 0 0!important;gap:0 28px!important}
.home-body .material-specs-v106>div{background:transparent!important;border:0!important;box-shadow:none!important;min-height:0!important;padding:12px 0!important}
.home-body .material-specs-v106 strong{font-size:14px!important}
.home-body .material-specs-v106 span{font-size:12px!important;line-height:1.6!important}
.home-body .audience-strip-v109{padding:38px 0 0!important}
.home-body .audience-strip-inner-v109{background:transparent!important;border:0!important;border-block:1px solid #d7dad5!important;border-radius:0!important;padding:24px 0!important;box-shadow:none!important;gap:28px!important}
.home-body .audience-strip-inner-v109 strong{font-size:21px!important;line-height:1.4!important;margin-top:6px!important}
.home-body .audience-strip-inner-v109 small{font-size:14px!important;color:#596168!important;line-height:1.6!important}
.home-body .audience-link-v109{border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:8px 0!important;color:#333d43!important;text-decoration:underline!important;text-underline-offset:5px!important;white-space:nowrap}

/* Les offres gardent une surface dédiée, sans halo ni effets de survol. */
.home-body .pricing-section{padding:72px 0 0!important}
.home-body .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
.home-body .price-card{padding:32px!important;border:1px solid #d8dcd5!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;transform:none!important}
.home-body .price-card:first-child{border-top:2px solid #bc3a0b!important}
.home-body .price-card.student-card{background:#f1f0eb!important}
.home-body .price-card .big-price{font-size:58px!important;line-height:1.1!important;margin:18px 0!important}
.home-body .price-card .btn{border-radius:10px!important}
.home-body .student-badge{border-radius:5px!important;background:#e7e6df!important;color:#505b61!important}
.home-body .pricing-option{width:100%!important;max-width:none!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;gap:12px!important}
.home-body .pricing-option:has(input:checked){background:transparent!important;border:0!important}
.home-body .pricing-option-status{margin:9px 0 24px!important}
.home-body .pass-teaser-v110{padding:32px 0 0!important}
.home-body .pass-teaser-shell-v110{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:44px!important;padding:34px!important;background:#edeae3!important;border:0!important;border-radius:16px!important;box-shadow:none!important}
.home-body .pass-teaser-copy-v110 h2{font-size:32px!important;line-height:1.15!important;margin:10px 0 14px!important;max-width:700px!important}
.home-body .pass-teaser-copy-v110 p{max-width:710px!important;margin:0!important}
.home-body .pass-teaser-actions{display:grid;gap:10px;justify-items:center;min-width:230px}
.home-body .pass-teaser-cta-v110{width:100%!important;border-radius:10px!important}
.home-body .pass-member-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;font-weight:650;color:#4b565e;text-decoration:underline;text-underline-offset:4px}
.home-body .local-service-section{padding:76px 0 0!important}
.home-body .local-delivery-card{box-shadow:none!important;border:1px solid #d8dcd5!important;border-radius:16px!important}
.home-body .faq-section{padding:72px 0 64px!important}
.home-body .faq-grid{gap:0 44px!important;align-items:start!important}
.home-body .faq-item{background:transparent!important;border:0!important;border-bottom:1px solid #d2d7d0!important;border-radius:0!important;box-shadow:none!important;margin:0!important;transform:none!important}
.home-body .faq-item summary{padding:20px 0!important;min-height:65px!important}
.home-body .faq-item p{padding:0 0 22px!important}
.home-body .faq-item summary i{border:0!important;background:transparent!important;box-shadow:none!important}

/* Un seul point de contact en bas de page. */
.home-body .contact-section{padding:55px 0!important;margin:0!important;background:#252c31!important;color:#fff!important}
.home-body .contact-section .contact-box{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr)!important;align-items:center!important;gap:60px!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
.home-body .contact-box>div>span{color:#ffc099!important;letter-spacing:.11em!important;font-size:11px!important}
.home-body .contact-box h2{font-size:clamp(31px,3.1vw,43px)!important;line-height:1.12!important;letter-spacing:-.025em!important;color:#fff!important;margin:14px 0 18px!important;max-width:650px}
.home-body .contact-box>div>p{color:#d1d7da!important;font-size:15px!important;line-height:1.7!important;max-width:610px}
.home-body .contact-section .contact-actions{display:block!important;width:100%!important}
.home-body .contact-actions>.btn{width:100%!important;border-radius:10px!important}
.home-body .contact-actions .contact-direct-label{font-size:12px!important;line-height:1.6!important;color:#c6cdd1!important;margin:16px 0 0!important}
.home-body .contact-channels{display:flex;flex-wrap:wrap;gap:0 22px}
.home-body .contact-channels a{color:#fff;font-size:14px;line-height:1.6;font-weight:650;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.home-body .contact-section :focus-visible{outline-color:#ffbf9b!important}
.home-body .footer{padding-top:46px!important;background:#1d2429!important}
@media(min-width:760px) and (max-width:1050px){
 .home-body .quick-info>.wrap{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:0 35px!important}
 .home-body .pass-teaser-shell-v110{gap:28px!important;padding:28px!important}
 .home-body .pass-teaser-actions{min-width:205px}
 .home-body .contact-section .contact-box{gap:32px!important}
}
@media(max-width:759px){
 .home-body .section-head-left h2,.home-body .section-mini-head h2{font-size:32px!important;line-height:1.12!important}
 .home-body .section-head-left,.home-body .section-mini-head{margin-bottom:23px!important}
 .home-body .quick-info{padding:47px 0 0!important}
 .home-body .quick-info>.wrap{display:block!important}
 .home-body .quick-info .section-mini-head{margin-bottom:24px!important;padding:0!important}
 .home-body .quick-info-grid article{gap:12px!important;padding:20px 0!important}
 .home-body .quick-info-grid strong{font-size:15px!important}
 .home-body .quick-info-grid small{font-size:12px!important}
 .home-body .material-specs-v106{margin-top:17px!important;gap:0 21px!important}
 .home-body .material-specs-v106>div{padding:10px 0!important}
 .home-body .material-specs-v106 strong{font-size:13px!important}
 .home-body .audience-strip-v109{padding:27px 0 0!important}
 .home-body .audience-strip-inner-v109{gap:12px!important;padding:22px 0!important}
 .home-body .audience-strip-inner-v109 strong{font-size:21px!important}
 .home-body .audience-link-v109{width:fit-content!important;justify-content:flex-start!important;font-size:14px!important;white-space:normal}
 .home-body .pricing-section{padding:45px 0 0!important}
 .home-body .pricing-grid{grid-template-columns:minmax(0,1fr)!important;gap:15px!important}
 .home-body .price-card{padding:25px 22px!important;border-radius:14px!important}
 .home-body .price-card .big-price{font-size:52px!important}
 .home-body .pricing-option{align-items:flex-start!important}
 .home-body .pass-teaser-v110{padding:24px 0 0!important}
 .home-body .pass-teaser-shell-v110{grid-template-columns:1fr!important;gap:20px!important;padding:25px 22px!important;border-radius:14px!important}
 .home-body .pass-teaser-copy-v110 h2{font-size:28px!important}
 .home-body .pass-teaser-actions{min-width:0;justify-items:start}
 .home-body .pass-member-link{font-size:13px}
 .home-body .local-service-section{padding:47px 0 0!important}
 .home-body .local-service-copy h2{font-size:30px!important;line-height:1.14!important}
 .home-body .faq-section{padding:47px 0 42px!important}
 .home-body .faq-grid{grid-template-columns:1fr!important;gap:0!important}
 .home-body .faq-item summary{padding:18px 0!important;min-height:62px!important}
 .home-body .faq-item p{padding:0 0 20px!important}
 .home-body .contact-section{padding:36px 0!important}
 .home-body .contact-section .contact-box{grid-template-columns:1fr!important;gap:22px!important}
 .home-body .contact-box h2{font-size:31px!important}
 .home-body .contact-channels{gap:0 20px}
 .home-body .footer{padding-top:34px!important}
}
@media(prefers-reduced-motion:reduce){
 .passes-design .pass-select-card{transition:none!important}
}

/* Lisibilité sur les nouvelles surfaces et raccord du pied de page. */
body.home-body .hero .eyebrow,
body.home-body .local-service-copy .eyebrow{color:#566168!important}
body.home-body .quick-info-grid article small{color:#545e66!important}
body.home-body .quick-info-grid article:last-child,
body.home-body .quick-info-grid article:last-child .quick-icon{background:transparent!important}
body.home-body .audience-strip-inner-v109>div>span{color:#9e390e!important;font-size:11px!important;line-height:1.5!important}
body.home-body .pricing-grid>.price-card{border:1px solid #d8dcd5!important}
body.home-body .pricing-grid>.price-card:first-child{border-top:2px solid #bc3a0b!important}
body.home-body .footer{margin-top:0!important;border-top:1px solid rgba(255,255,255,.10)!important}
body.home-body .quick-info-grid article:last-child small{color:#545e66!important}

/* V128 — téléphone. Chaque règle reste dans ce point de rupture.
   Les informations de tarif, de livraison et de consentement sont conservées.
   Les éléments masqués répètent une information déjà visible sur la même page. */
@media(max-width:759px){
 body.home-body,body.mobile-design{background:#f7f6f2!important;overflow-x:clip!important;overflow-y:visible!important}
 body.home-body::after,body.mobile-design::before,body.mobile-design::after{display:none!important}
 /* Le calque de fond historique plaçait tous les enfants du body au même niveau,
    y compris le menu et le lien d'évitement : restaurer leur rôle explicite. */
 body.home-body>.skip-link{position:fixed!important;z-index:10001!important}
 body.home-body>.header{position:sticky!important;top:0!important;z-index:1000!important;isolation:isolate;background:#f7f6f2!important;padding-top:env(safe-area-inset-top)}
 .home-body .wrap,.mobile-design .wrap{
  width:calc(100% - 36px)!important;max-width:620px!important;margin-inline:auto!important
 }
 .home-body .header .nav,.mobile-design .flow-nav{min-height:68px!important;padding-block:8px!important;gap:12px!important;flex-wrap:nowrap!important}
 .home-body .header,.mobile-design .flow-header{background:#f7f6f2!important;box-shadow:none!important;border-bottom:1px solid #e4e3de!important}
 .home-body .header .brand-logo-img,.mobile-design .flow-nav .brand-logo-img{width:132px!important;height:auto!important}
 .home-body .menu-toggle{width:44px!important;height:44px!important;min-height:44px!important;border:1px solid #d9ddd7!important;border-radius:10px!important;box-shadow:none!important}
 .home-body .header-right{gap:0!important}
 .mobile-design .flow-nav-actions{flex-wrap:nowrap!important;gap:0!important}
 .mobile-design .flow-back{padding-inline:0!important;font-size:12px!important;min-height:44px!important}
 .mobile-design .flow-help-link{display:none!important}
 .home-body .mobile-menu{top:calc(69px + env(safe-area-inset-top))!important;z-index:2!important;background:#fff!important;padding:12px 18px 18px!important;gap:0!important;max-height:calc(100dvh - 81px - env(safe-area-inset-top))!important;border-radius:0 0 14px 14px!important;box-shadow:0 12px 20px #20242812!important}
 .home-body .mobile-menu a{padding:12px!important;min-height:48px!important;font-size:15px!important;border-radius:8px!important}
 .home-body .mobile-menu .mobile-menu-cta{margin-bottom:8px!important;background:#ca3700!important;color:#fff!important}
 .home-body .btn,.mobile-design .btn{min-height:48px!important;border-radius:10px!important;font-size:14px!important;line-height:1.5!important;box-shadow:none!important}
 .home-body :is(h1,h2,h3),.mobile-design :is(h1,h2,h3){text-wrap:balance}
 .home-body .hero{padding:30px 0 32px!important}
 .home-body .hero .eyebrow{max-width:330px!important;margin:0 0 14px!important;font-size:10px!important;letter-spacing:.09em!important;line-height:1.6!important;text-wrap:balance}
 .home-body .hero h1{font-size:clamp(39px,11.25vw,54px)!important;line-height:1.04!important;letter-spacing:-.035em!important;margin:0 0 18px!important}
 .home-body .hero-sub{font-size:15px!important;line-height:1.65!important;margin:0 0 20px!important}
 .home-body .hero-actions-v106{gap:8px 14px!important}
 .home-body .hero-actions-v106 .btn-orange{flex:1 1 172px!important;font-size:14px!important}
 .home-body .hero-actions-v106 .btn-outline{font-size:12px!important;min-height:44px!important;flex:0 1 auto!important}
 .home-body .hero-points{gap:8px!important;margin-top:18px!important;padding-top:16px!important}
 .home-body .hero-point{gap:8px!important}
 .home-body .hero-point strong{font-size:12px!important}
 .home-body .hero-point small{font-size:12px!important}
 .home-body .hero-grid{gap:24px!important}
 .home-body .hero-photo{border-radius:12px!important;box-shadow:none!important}
 .home-body .hero-photo-note{border-radius:7px!important;left:8px!important;right:8px!important;bottom:8px!important;padding:9px 11px!important}
 .home-body .hero-photo-note span{font-size:9px!important;letter-spacing:.09em!important}
 .home-body .hero-photo-note strong{font-size:12px!important}

 /* Une seule surface pour choisir une date. */
 .home-body .booking-shell{padding:0!important}
 .home-body .booking-card{padding:22px 18px 20px!important;border:1px solid #dedfd9!important;border-radius:14px!important;box-shadow:none!important;background:#fff!important;overflow:visible!important}
 .home-body .booking-card::before,.home-body .booking-card::after{display:none!important}
 .home-body .booking-title-row{margin:0 0 20px!important;padding:0!important}
 .home-body .step-label{display:block!important}
 .home-body .step-label>.step-dot,.home-body .booking-trust-v116,.home-body .booking-progress,.home-body .date-service-card{display:none!important}
 .home-body .booking-title-row h2{font-size:27px!important;line-height:1.14!important;letter-spacing:-.025em!important;margin:0 0 10px!important}
 .home-body .date-question-word{white-space:nowrap}
 .home-body .booking-reassurance{margin:0!important;font-size:14px!important;line-height:1.6!important}
 .home-body .booking-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
 .home-body .calendar-panel{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
 .home-body .calendar-top{margin-bottom:12px!important;gap:10px!important}
 .home-body .calendar-top button{width:44px!important;height:44px!important;border-radius:9px!important;box-shadow:none!important;background:#f6f5f1!important}
 .home-body .calendar-top strong{font-size:16px!important}
 .home-body .weekdays{margin-bottom:8px!important}
 .home-body .weekdays span{font-size:11px!important}
 .home-body .calendar{gap:4px!important}
 .home-body .day{height:44px!important;min-height:44px!important;border-radius:8px!important;font-size:14px!important;padding:0!important}
 .home-body .day small{font-size:9px!important;line-height:1!important;letter-spacing:0!important}
 .home-body .day.booked-day{background:#f7ece8!important;color:#854438!important;opacity:1!important}
 .home-body .day.booked-day small{color:#854438!important;opacity:1!important}
 .home-body .calendar-feedback{min-height:36px!important;margin-top:8px!important}
 .home-body .calendar-feedback p{font-size:12px!important}
 .home-body .calendar-legend{gap:8px 12px!important;padding-top:10px!important;font-size:10px!important;line-height:1.5!important}
 .home-body .calendar-legend i{width:7px!important;height:7px!important}
 .home-body .calendar-legend span{gap:4px!important}
 .home-body .date-panel{padding:16px 0 0!important;border:0!important;border-top:1px solid #e4e3de!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;gap:0!important}
 .home-body .date-panel-head{margin:0 0 6px!important;gap:0!important}
 .home-body .date-panel-head strong{font-size:11px!important;color:#5a6469!important;font-weight:650!important}
 .home-body .date-panel-icon-v119{display:none!important}
 .home-body .date-panel .selected-date-box{padding:0!important;min-height:44px!important;margin:0 0 12px!important;background:transparent!important;border:0!important;border-radius:0!important;gap:12px!important}
 .home-body #selectedDateText{font-size:15px!important;line-height:1.5!important}
 .home-body #clearDate{padding:0!important;background:transparent!important;border:0!important;text-decoration:underline!important;text-underline-offset:4px!important;font-size:12px!important}
 .home-body #confirmDate{margin:0!important;font-size:13px!important;width:100%!important}
 .home-body .date-hold{margin:12px 0 0!important;padding:0!important;font-size:11px!important;line-height:1.6!important;gap:7px!important}
 .home-body .selected-offer{margin:0 0 14px!important;padding:12px!important;border-radius:10px!important}
 .home-body .availability-reason-box{margin-bottom:14px!important}

 /* Un rythme constant entre le matériel, les tarifs et les réponses. */
 .home-body .quick-info,.home-body .pricing-section,.home-body .local-service-section{padding-top:40px!important}
 .home-body .section-head-left,.home-body .section-mini-head{margin-bottom:20px!important}
 .home-body .section-head-left h2,.home-body .section-mini-head h2,.home-body .local-service-copy h2{font-size:28px!important;line-height:1.15!important;letter-spacing:-.025em!important}
 .home-body .quick-info-grid article{padding:18px 0!important;gap:10px!important;grid-template-columns:22px minmax(0,1fr) auto!important}
 .home-body .quick-info-grid strong{font-size:14px!important}
 .home-body .quick-info-grid small{font-size:12px!important}
 .home-body .quick-price{font-size:14px!important}
 .home-body .material-specs-v106{gap:0 18px!important}
 .home-body .material-specs-v106 strong{font-size:12px!important;line-height:1.5!important}
 .home-body .material-specs-v106 span{font-size:12px!important}
 .home-body .audience-strip-inner-v109 strong{font-size:19px!important}
 .home-body .pricing-option{display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;gap:10px!important}
 .home-body .pricing-option input{width:20px!important;height:20px!important;min-height:20px!important;margin:2px 0 0!important;accent-color:#bd3a0a}
 .home-body .pricing-option-status{font-size:12px!important;line-height:1.65!important;margin:10px 0 20px!important}
 .home-body .price-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px 12px!important;padding:22px 18px!important;border-radius:12px!important}
 .home-body .price-card .price-tag{grid-column:1!important;grid-row:1!important;align-self:center!important;margin:0!important;font-size:10px!important;letter-spacing:.1em!important}
 .home-body .price-card .big-price{grid-column:2!important;grid-row:1!important;align-self:center!important;font-size:39px!important;margin:0!important;white-space:nowrap!important}
 .home-body .price-card .student-badge{display:none!important}
 .home-body .price-card>p,.home-body .price-card>ul,.home-body .price-card>.btn{grid-column:1/-1!important;margin:0!important}
 .home-body .price-card>p{font-size:14px!important;line-height:1.6!important}
 .home-body .price-card>ul{gap:7px!important;padding-block:2px!important}
 .home-body .price-card>ul>li{font-size:13px!important;line-height:1.6!important}
 .home-body .price-card>.btn{font-size:13px!important}
 .home-body .pass-teaser-shell-v110{padding:24px 20px!important;gap:18px!important;border-radius:12px!important}
 .home-body .pass-teaser-copy-v110 h2{font-size:25px!important;margin:10px 0 14px!important}
 .home-body .pass-teaser-copy-v110 p{font-size:14px!important}
 .home-body .pass-teaser-actions{gap:5px!important}
 .home-body .local-service-copy p{font-size:14px!important;line-height:1.75!important}
 .home-body .local-contact-link{font-size:13px!important}
 .home-body .local-delivery-card{padding:20px 18px!important;border-radius:12px!important}
 .home-body .local-delivery-card h3{font-size:22px!important}
 .home-body .faq-section{padding:40px 0!important}
 .home-body .faq-item summary{font-size:14px!important;line-height:1.6!important;padding-block:17px!important;min-height:60px!important;gap:16px!important}
 .home-body .faq-item summary span{text-wrap:pretty}
 .home-body .contact-box h2{font-size:28px!important}
 .home-body .contact-box>div>p{font-size:14px!important}
 .home-body .contact-channels{gap:0 18px!important}
 .home-body .contact-channels a{font-size:13px!important}
 .home-body .footer{padding:28px 0 16px!important}
 .home-body .footer-premium-grid{gap:24px!important;grid-template-columns:minmax(0,1fr)!important}
 .home-body .footer-brand .brand-logo-img{width:136px!important}
 .home-body .footer-brand p{margin:12px 0 0!important;font-size:12px!important}
 .home-body .footer-links-block nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0 18px!important;margin-top:8px!important}
 .home-body .footer-links-block nav a,.home-body .footer-contact-block a,.home-body .footer-social-block a{font-size:13px!important;padding-block:8px!important;min-height:44px!important;line-height:1.5!important}
 .home-body .footer-contact-block,.home-body .footer-social-block{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap!important;gap:0 18px!important}
 .home-body .footer-contact-block>strong,.home-body .footer-social-block>strong{width:100%!important;margin-bottom:6px!important}
 .home-body .footer-contact-block>small,.home-body .footer-social-block>small{display:none!important}
 .home-body .footer-bottom{margin-top:24px!important;padding-block:18px 8px!important;gap:4px!important;font-size:11px!important}
 .home-body .footer-legal-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 16px!important;width:calc(100% - 36px)!important;max-width:620px!important;margin:0 auto!important;padding:0!important;text-align:left!important}
 .home-body .footer-legal-links a{font-size:11px!important;justify-content:flex-start!important}

 /* Réservation : champs réguliers, radios à leur taille native et choix compacts. */
 .mobile-design .flow-main{padding:24px 0 36px!important}
 .mobile-design .flow-head{margin:0 0 24px!important}
 .mobile-design .flow-head .eyebrow{font-size:10px!important;line-height:1.6!important;letter-spacing:.1em!important;margin:0 0 10px!important;color:#596168!important}
 .mobile-design .flow-head h1 span,.mobile-design .pass-hero h1 span,.mobile-design .pass-login-card h1 span{color:#c43c0b!important}
 .mobile-design .flow-head h1{font-size:34px!important;line-height:1.12!important;letter-spacing:-.025em!important;overflow-wrap:normal!important;margin:0 0 14px!important}
 .mobile-design .flow-head>p:not(.eyebrow){font-size:14px!important;line-height:1.65!important;margin:0!important}
 .mobile-design .flow-progress{padding:0 0 14px!important;margin:0 0 20px!important;border:0!important;border-bottom:1px solid #dddfd9!important;border-radius:0!important;background:transparent!important;gap:7px!important;flex-wrap:nowrap!important;box-shadow:none!important}
 .mobile-design .flow-progress span{font-size:10px!important;white-space:nowrap!important;flex:0 0 auto!important}
 .mobile-design .flow-progress i{flex:1!important;min-width:5px!important}
 .booking-design .flow-head h1,.booking-design.has-booking-mode .flow-head h1{font-size:26px!important;line-height:1.2!important}
 .mobile-design .hold-pill{padding:0!important;margin:12px 0 0!important;background:transparent!important;border:0!important;border-radius:0!important;min-height:0!important;display:block!important;text-align:left!important;font-size:11px!important;line-height:1.65!important}
 .booking-design .booking-service-strip{display:none!important}
 .booking-design .flow-panel{padding:18px 16px!important;border-radius:14px!important;box-shadow:none!important;border:1px solid #dddfd9!important;background:#fff!important}
 .booking-design .flow-panel-title{padding-bottom:12px!important;margin-bottom:14px!important;gap:12px!important}
 .booking-design .flow-panel-title>span{font-size:11px!important;letter-spacing:.08em!important}
 .booking-design .change-mode{background:transparent!important;border:0!important;padding:0 0 0 8px!important;text-decoration:underline!important;text-underline-offset:4px!important;font-size:12px!important}
 .booking-design .flow-layout{gap:20px!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-card{padding:16px!important;gap:8px 12px!important;border-radius:10px!important;box-shadow:none!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-card>strong{font-size:13px!important;line-height:1.6!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-total strong{font-size:27px!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-lines{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:3px!important;padding-top:12px!important}
 .booking-design #singlePanel .order-lines>div:has(#singleDeliveryText){display:none!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-lines span{font-size:10px!important}
 .booking-design :is(#singlePanel,#studentPanel) .order-lines b{font-size:12px!important}
 .mobile-design .flow-form,.mobile-design .member-form{gap:16px!important}
 .mobile-design .flow-form .form-grid-2{gap:16px!important}
 .mobile-design .flow-form label,.mobile-design .member-form label{font-size:14px!important;line-height:1.5!important}
 .mobile-design .flow-form input:not([type=radio]):not([type=checkbox]):not([type=hidden]),
 .mobile-design .member-form input:not([type=radio]):not([type=checkbox]):not([type=hidden]),
 .mobile-design .flow-form select,.mobile-design .flow-form textarea{
  margin-top:7px!important;min-height:50px!important;padding:12px!important;border-radius:9px!important;box-shadow:none!important;line-height:1.5!important
 }
 .mobile-design .flow-form input:is([type=checkbox],[type=radio]),
 .mobile-design .member-form input:is([type=checkbox],[type=radio]),
 .mobile-design .pass-check input{
  display:block!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;
  max-width:20px!important;padding:0!important;margin:2px 0 0!important;flex:0 0 20px!important;accent-color:#bd3a0a!important;box-shadow:none!important
 }
 .mobile-design .flow-form .optional-field-label{display:inline!important;font-size:11px!important;font-weight:500!important;margin-left:4px!important}
 .mobile-design .flow-form label:has(>.optional-field-label){display:block!important}
 .booking-design .structured-address-card{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;gap:14px!important}
 .booking-design .structured-address-card>span{margin:0!important;font-size:11px!important;color:#5c656b!important;letter-spacing:.08em!important}
 .booking-design .structured-address-grid{gap:14px!important}
 .booking-design .schedule-disclosure{padding:0!important;margin:0!important;border-radius:10px!important;background:#f7f6f2!important;box-shadow:none!important}
 .booking-design .schedule-disclosure>summary{min-height:44px!important;gap:12px!important}
 .booking-design .schedule-disclosure>summary strong{font-size:13px!important;line-height:1.6!important}
 .booking-design .schedule-disclosure>summary>span>small{font-size:11px!important}
 .booking-design .fixed-service-field{padding:12px!important;border-radius:9px!important;background:#f7f6f2!important;box-shadow:none!important}
 .booking-design .travel-quote-box{padding:14px!important;border-radius:10px!important;box-shadow:none!important}
 .booking-design .option-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;padding:14px 12px!important;border-radius:10px!important;box-shadow:none!important}
 .booking-design .option-card>span{flex:1!important;min-width:0!important;display:block!important}
 .booking-design .option-card>span>strong,.booking-design .option-card>span>small{display:block!important}
 .booking-design .option-card>span>small span{display:inline!important}
 .booking-design .option-card>b{white-space:nowrap!important;font-size:13px!important}
 .booking-design .rental-acceptance{align-items:flex-start!important;background:transparent!important;border:0!important;padding:4px 0!important}
 .booking-design .rental-acceptance>span{display:block!important}
 .booking-design .rental-acceptance small{display:block!important;margin-top:5px!important;line-height:1.7!important}
 .booking-design .rental-acceptance small span{display:inline!important}
 .booking-design .payment-choice{gap:8px!important}
 .booking-design .payment-choice legend{margin-bottom:10px!important}
 .booking-design .payment-option{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:12px!important;min-height:72px!important;padding:14px 12px!important;border:1px solid #d9ddd7!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
 .booking-design .payment-option:has(input:checked){border-color:#b33d12!important;background:#fff7f1!important;box-shadow:inset 0 0 0 1px #b33d12!important}
 .booking-design .payment-option>span{display:block!important;flex:1!important;min-width:0!important}
 .booking-design .payment-option strong,.booking-design .payment-option small{display:block!important}
 .booking-design .payment-option small{margin-top:3px!important;font-size:12px!important;line-height:1.6!important}
 .booking-design .payment-badge{display:none!important}
 .booking-design .rental-conditions-box{padding:16px!important;border-radius:10px!important;background:#f7f6f2!important;border:1px solid #e1e3dc!important;box-shadow:none!important}
 .booking-design .rental-conditions-box ul{gap:7px!important;margin-top:10px!important}
 .booking-design .rental-conditions-box li{font-size:12px!important;line-height:1.65!important}
 .booking-design .student-verification-notice{padding:16px!important;border-radius:10px!important;background:#f7f6f2!important;border-color:#daddd5!important;box-shadow:none!important}
 .booking-design .student-verification-notice>span{font-size:11px!important;line-height:1.5!important;color:#9e3b15!important;letter-spacing:.08em!important}
 .booking-design .student-verification-notice>strong{font-size:14px!important;line-height:1.6!important}
 .booking-design #studentVerificationText{font-size:13px!important;line-height:1.7!important;color:#515c63!important}
 .booking-design .booking-help-card{padding:22px 18px!important;margin-top:28px!important;border-radius:12px!important;box-shadow:none!important}
 .booking-design .booking-help-card h2{font-size:23px!important;line-height:1.2!important}
 .booking-design .booking-help-card>div>p{font-size:13px!important}
 .booking-design .booking-help-card .btn{font-size:13px!important}
 .booking-design .mode-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;padding:20px 16px!important;border-radius:12px!important;box-shadow:none!important;min-height:0!important}
 .booking-design .mode-card>span{grid-column:1!important;grid-row:1!important;align-self:center!important;font-size:11px!important}
 .booking-design .mode-card>strong{grid-column:2!important;grid-row:1!important;margin:0!important;font-family:"Nexa Black",sans-serif!important;font-size:32px!important;line-height:1.2!important}
 .booking-design .mode-card .mode-badge{display:none!important}
 .booking-design .mode-card>p,.booking-design .mode-card>ul,.booking-design .mode-card>em{grid-column:1/-1!important;margin:0!important}
 .booking-design .mode-card p,.booking-design .mode-card li{font-size:13px!important;line-height:1.55!important}
 .booking-design .mode-card>ul{gap:5px!important}
 .booking-design .mode-card>em{padding-top:10px!important;min-height:44px!important}
 .booking-design .booking-pass-alternative{font-size:13px!important;line-height:1.65!important;margin-top:18px!important}
 .booking-design .member-box :is(#memberEmailStep,#memberCodeStep)>p{font-size:13px!important;line-height:1.7!important;color:#596168!important}
 .booking-design .member-pass-shortcut{display:inline-flex!important;align-items:center!important;min-height:44px!important;font-size:12px!important;line-height:1.6!important;color:#515c63!important}
 .mobile-design .legal-mini-footer{display:block!important;margin:0!important;padding:20px 18px calc(20px + env(safe-area-inset-bottom))!important;border-top:1px solid #dedfd9!important;background:#f7f6f2!important}
 .mobile-design .legal-mini-links,.mobile-design .legal-mini-contact{display:flex!important;flex-wrap:wrap!important;gap:0 18px!important;justify-content:center!important}
 .mobile-design .legal-mini-contact{margin-top:4px!important;padding-top:4px!important}
 .mobile-design .legal-mini-footer a{font-size:11px!important;min-height:44px!important;line-height:1.5!important;margin:0!important;padding:0!important}

 /* Pass : comparer les quatre offres et arriver plus vite aux coordonnées. */
 .passes-design .pass-page{padding:28px 0 36px!important}
 .passes-design .pass-hero{margin:0 0 20px!important}
 .passes-design .pass-hero .eyebrow{font-size:10px!important;letter-spacing:.11em!important;margin:0 0 12px!important}
 .passes-design .pass-hero h1{font-size:clamp(29px,8.2vw,42px)!important;line-height:1.1!important;letter-spacing:-.025em!important;overflow-wrap:normal!important;margin:0 0 16px!important}
 .passes-design .pass-hero p:not(.eyebrow){font-size:14px!important;line-height:1.65!important;margin:0!important}
 .passes-design .pass-hero-note{display:none!important}
 .passes-design .pass-conditions{padding:14px 16px!important;margin:0 0 20px!important;border:1px solid #dddeda!important;background:transparent!important;border-radius:10px!important;font-size:13px!important;line-height:1.7!important}
 .passes-design .pass-plan-grid{gap:10px!important;margin-bottom:24px!important}
 .passes-design .pass-select-card{padding:16px!important;gap:10px!important;border-radius:12px!important;box-shadow:none!important;border-color:#daddd5!important}
 .passes-design .pass-select-card.active{border-color:#b33d12!important;box-shadow:inset 0 0 0 1px #b33d12!important}
 .passes-design .pass-select-card .pass-label{font-size:11px!important;letter-spacing:.07em!important;line-height:1.6!important}
 .passes-design .pass-select-card.active .pass-label::after{content:"✓"!important;display:inline-block!important;margin:0 0 0 7px!important;font-size:13px!important;line-height:1!important}
 .passes-design .pass-select-card .pass-price strong{font-size:29px!important}
 .passes-design .pass-select-card li{font-size:13px!important;line-height:1.5!important}
 .passes-design #passStandaloneCard{border-radius:14px!important;box-shadow:none!important;border-color:#daddd5!important}
 .passes-design #passStandaloneCard .pass-summary{display:grid!important;grid-template-columns:1fr auto!important;gap:8px 12px!important;padding:20px 18px!important;background:#eeeae3!important}
 .passes-design .pass-summary>.eyebrow{grid-column:1/-1!important;font-size:10px!important;line-height:1.5!important;letter-spacing:.1em!important;margin:0!important}
 .passes-design .pass-summary h2{font-size:24px!important;line-height:1.2!important;margin:0!important;align-self:center!important;text-wrap:initial}
 .passes-design .pass-summary-price{font-size:17px!important;margin:0!important;align-self:center!important;white-space:nowrap!important}
 .passes-design .pass-summary-box{grid-column:1/-1!important;margin-top:6px!important;padding-top:12px!important}
 .passes-design .pass-summary-icon{width:22px!important;height:22px!important;border:0!important;background:transparent!important}
 .passes-design .pass-summary-row{gap:7px!important}
 .passes-design .pass-summary-row strong{font-size:13px!important}
 .passes-design .pass-back-link{grid-column:1/-1!important;font-size:11px!important;margin:0!important;line-height:1.6!important}
 .passes-design .pass-form{padding:22px 18px!important}
 .passes-design .pass-form-title{margin-bottom:20px!important}
 .passes-design .pass-form-title h3{font-size:23px!important;line-height:1.2!important}
 .passes-design .pass-form-title p{font-size:13px!important;line-height:1.6!important;margin-top:7px!important}
 .passes-design .pass-step{display:none!important}
 .passes-design .pass-fields{gap:16px!important}
 .passes-design .pass-fields input{font-size:16px!important;line-height:1.5!important;min-height:50px!important;padding:12px!important;border-radius:9px!important;box-shadow:none!important}
 .passes-design .pass-checks{gap:14px!important;margin:20px 0!important}
 .passes-design .pass-check{gap:11px!important;font-size:13px!important;line-height:1.7!important;min-height:44px!important}
 .passes-design .pass-check small{font-size:11px!important}
 .passes-design .pass-form-actions{margin-top:18px!important}
 .passes-design .pass-form-actions .btn{display:flex!important;flex-wrap:wrap!important;gap:0 5px!important;padding:13px 10px!important;width:100%!important;font-size:13px!important}
 .passes-design .pass-inline-link{font-size:12px!important;line-height:1.7!important;margin:12px 0 0!important}
 .passes-design .pass-trust{display:block!important;margin:18px 0 0!important;padding-top:14px!important;border-top:1px solid #e0e1db!important}
 .passes-design .pass-trust>div{display:block!important;border:0!important;background:transparent!important;padding:5px 0!important;border-radius:0!important;font-size:12px!important;line-height:1.65!important}
 .passes-design .pass-trust strong{display:inline!important;font-size:12px!important;line-height:1.65!important;margin-right:5px!important}

 /* Entrées des espaces client et abonné. */
 .account-design .pass-login-card{padding:24px 20px!important;border-radius:14px!important;box-shadow:none!important}
 .account-design .pass-login-card h1{font-size:42px!important;line-height:1.05!important;margin:12px 0 18px!important;letter-spacing:-.03em!important}
 .account-design .pass-login-card h1 br{display:none!important}
 .account-design .pass-login-card h1 span::before{content:" "}
 .account-design .pass-login-card>p:not(.eyebrow){font-size:14px!important;line-height:1.7!important}
 .account-design .pass-login-card .eyebrow{font-size:10px!important;letter-spacing:.1em!important}
 .account-design .pass-login-card .member-form{margin-top:22px!important}
 .account-design .pass-login-reassurance{padding:16px 0 0!important;margin-top:20px!important;border:0!important;border-top:1px solid #daddd5!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;gap:12px!important}
 .account-design .pass-login-reassurance>div{border:0!important;padding:0!important;gap:10px!important}
 .account-design .pass-login-reassurance b{display:none!important}
 .account-design .pass-login-reassurance strong{font-size:13px!important;line-height:1.6!important;color:#333d43!important}
 .account-design .pass-login-reassurance small{font-size:12px!important;line-height:1.65!important;color:#596168!important}
 .account-design .booking-retrieve-head h1 br{display:none!important}
 .account-design .booking-retrieve-head h1 span::before{content:" "}
 .account-design .retrieve-service-strip{display:none!important}
 .account-design .booking-lookup-card{padding:22px 18px!important;border-radius:14px!important;box-shadow:none!important;gap:20px!important}
 .account-design .lookup-card-head{display:block!important}
 .account-design .lookup-card-head .eyebrow{display:none!important}
 .account-design .lookup-card-head h2{font-size:23px!important;line-height:1.2!important}
 .account-design .secure-lookup-badge{display:none!important}
 .account-design .booking-lookup-copy{font-size:13px!important;line-height:1.7!important;color:#515c63!important}
 .account-design .booking-lookup-help{font-size:12px!important;line-height:1.75!important;margin:20px 0 0!important;color:#515c63!important}

 .event-body.mobile-design .event-hero h1{font-size:clamp(33px,9vw,46px)!important;line-height:1.1!important}
 .event-body.mobile-design .event-section h2{font-size:28px!important;line-height:1.18!important}
 .event-body.mobile-design .event-price-card,.event-body.mobile-design .event-contact{border-radius:12px!important}
 .event-body.mobile-design .event-actions{gap:8px!important}
 .event-body.mobile-design .event-actions>.btn{font-size:13px!important;padding-inline:14px!important}
}
@media(max-width:359px){
 .home-body .wrap,.mobile-design .wrap{width:calc(100% - 28px)!important}
 .home-body .hero-actions-v106{flex-direction:column!important;align-items:stretch!important;gap:0!important}
 .home-body .hero-actions-v106 .btn-orange{flex:none!important;width:100%!important}
 .home-body .hero-actions-v106 .btn-outline{align-self:center!important;flex:none!important;margin-top:3px!important}
 .home-body .booking-card{padding-inline:14px!important}
 .home-body .calendar{gap:3px!important}
 .home-body .calendar-legend{gap:8px!important;font-size:9px!important}
 .mobile-design .flow-nav .brand-logo-img{width:120px!important}
 .mobile-design .flow-progress{gap:5px!important}
 .mobile-design .flow-progress span{font-size:9px!important}
 .booking-design .flow-panel{padding-inline:14px!important}
 .booking-design .order-card>strong{font-size:12px!important}
 .passes-design .pass-select-card{padding:14px!important}
 .passes-design .pass-summary h2{font-size:21px!important}
 .passes-design .pass-summary-price{font-size:15px!important}
}

/* V129 — conserver les frais utiles après le retrait du texte local répétitif. */
.home-body .delivery-summary{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px 48px;align-items:start}
.home-body .delivery-summary-head{grid-column:1;grid-row:1}
.home-body .delivery-summary-head>.eyebrow{font-size:11px!important;letter-spacing:.11em;line-height:1.6;color:#555d64!important}
.home-body .delivery-summary h2{font-family:"Nexa Heavy",sans-serif;font-size:26px;line-height:1.2;letter-spacing:-.02em;margin:12px 0}
.home-body .delivery-summary-head p{margin:0}
.home-body .delivery-summary>dl{grid-column:2;grid-row:1 / 4;align-self:center;width:100%;margin:0}
.home-body .delivery-summary>.local-delivery-note{grid-column:1;grid-row:2;margin:0;max-width:520px}
.home-body .delivery-pass-link{grid-column:1;grid-row:3;justify-self:start;min-height:44px;display:inline-flex;align-items:center;font-size:11px;font-weight:400;line-height:1.6;color:#60686e;text-decoration-color:#c2c6c9}
@media(max-width:759px){
 .home-body .delivery-summary{display:flex;flex-direction:column;gap:14px}
 .home-body .delivery-summary h2{font-size:22px;line-height:1.3}
 .home-body .delivery-summary-head p{font-size:14px;line-height:1.65}
 .home-body .delivery-summary>.local-delivery-note{font-size:13px;line-height:1.65}
 .home-body .delivery-pass-link{align-self:flex-start;margin-top:-4px}
}
