/* Accueil : les écrans réels précèdent le détail. Les autres pages gardent leur mise en page. */
.home { --largeur: 1160px; }
.home main { overflow: clip; }
.home-anchor { position: absolute; scroll-margin-top: 6rem; }
.home :is(section, .home-panel, #equi-mamour) { scroll-margin-top: 6rem; }
.home .entete { background: rgba(20,18,16,.96); }
.home .bouton { min-height: 48px; border-radius: .8rem; }
.home .entete .bouton { min-height: 44px; }
.home .sur-titre { font-size: .72rem; letter-spacing: .15em; margin-bottom: .85rem; color: var(--or-clair); }
.home-hero { display: grid; grid-template-columns: 1.2fr 1fr; gap: 4rem; align-items: center; padding-block: 7.5rem 3.25rem; }
.home-hero h1 { font-size: clamp(2.5rem, 4.4vw, 4rem); line-height: 1.08; letter-spacing: -.025em; }
.home-hero h1 span { color: var(--or-clair); }
.home-lead { max-width: 34rem; margin-block: 1.5rem; line-height: 1.65; }
.home-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.home-platforms { font-size: .82rem; margin-top: 1.25rem; }
.home-stores { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem .6rem; margin-top: .65rem; }
.home-stores .boutiques__lien { display: inline-flex; align-items: center; min-height: 44px; }
.home-stores .boutiques__lien img { height: 40px; max-width: 100%; }
.home-stores .boutiques__lien img[src$="badge-google-play-en-20260910.png"] { height: 60px; margin: -10px -9px; }
.home-start .home-stores { justify-content: center; margin-top: 0; }
.home-text-link { display: inline-flex; align-items: center; min-height: 44px; font-size: .9rem; font-weight: 600; }
.home-hero__preview { position: relative; width: 100%; margin: 0; display: grid; justify-items: center; padding: 1.25rem; border-radius: 2rem; background: radial-gradient(ellipse at 50% 40%, #6f522e70, #252019 70%); border: 1px solid var(--ligne); }
.home-preview-label { display: flex; align-items: center; gap: .5rem; font-size: .8rem; color: var(--ivoire); margin-bottom: 1rem; }
.home-dot { width: .45rem; height: .45rem; border-radius: 50%; background: var(--or-clair); flex-shrink: 0; }
.home-shot { display: block; width: min(100%, 230px); border: 5px solid #3a332b; border-radius: 1.4rem; overflow: hidden; box-shadow: 0 16px 36px #0004; background: #f9f6ed; }
.home-shot img { width: 100%; height: auto; }
.home-shot--hero { width: min(100%, 260px); }
.home-shot--hero img { max-height: 450px; object-fit: cover; object-position: top; }
.home figcaption { margin-top: .85rem; text-align: center; font-size: .7rem; line-height: 1.45; color: var(--ivoire-doux); }
.home-section { padding-block: 3.5rem; }
.home-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 1.75rem; }
.home h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); letter-spacing: -.015em; line-height: 1.16; }
.home-heading > p { max-width: 23rem; font-size: .95rem; }
.home-demo { background: #1b1814; border-block: 1px solid var(--ligne); }
.home-tabs { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.5rem; }
.home-tabs a { display: inline-flex; min-width: 0; min-height: 44px; align-items: center; padding: .55rem 1.1rem; border: 1px solid var(--ligne-forte); border-radius: 99px; color: var(--ivoire); text-decoration: none; overflow-wrap: anywhere; font: 500 .9rem/1.35 var(--sans); }
.home-tabs a:hover { border-color: var(--or); }
.home-tabs a[aria-selected="true"] { background: var(--ivoire); color: var(--encre); border-color: var(--ivoire); }
.home-panel { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 3rem; padding: 2rem 3rem; border: 1px solid var(--ligne); border-radius: 1.5rem; background: var(--encre); }
.home-panel + .home-panel { margin-top: 1.5rem; }
.home-gallery[data-ready] .home-panel { margin-top: 0; }
.home-panel[hidden] { display: none; }
.home-index { color: var(--or-clair); font-size: .72rem; letter-spacing: .12em; margin-bottom: 1rem; }
.home-panel h3 { font-size: clamp(1.6rem, 2.8vw, 2.35rem); margin-bottom: 1rem; }
.home-panel__copy > p:not(.home-index) { max-width: 29rem; font-size: .96rem; }
.home-panel ul { padding-left: 1.2rem; margin-block: 1.25rem .5rem; color: var(--ivoire-doux); font-size: .86rem; line-height: 1.65; }
.home-panel li { margin-block: .4rem; padding-left: .2rem; }
.home-panel li::marker { color: var(--or); }
.home-panel figure { display: grid; justify-items: center; margin: 0; }
.home-rides { position: relative; }
.home-rides__heading { display: grid; grid-template-columns: 1.25fr 1fr; align-items: end; gap: 2.5rem; margin-bottom: 1.75rem; }
.home-rides__intro { max-width: 28rem; justify-self: end; }
.home-rides__intro > p { font-size: .95rem; }
.home-rides__intro .home-text-link { gap: .6rem; margin-top: .35rem; }
.home-rides__screens { display: grid; grid-template-columns: 1.7fr 1fr; gap: 1.25rem; align-items: start; }
.home-rides__gallery { max-width: 1000px; margin-inline: auto; }
.home-ride-card { min-width: 0; margin: 0; padding: 1rem; background: #211d17; border: 1px solid var(--ligne); border-radius: 1.5rem; }
.home-ride-card[hidden] { display: none; }
.home .home-ride-card figcaption { margin: 0 0 1rem; min-height: 4rem; text-align: left; display: grid; grid-template-columns: auto 1fr; align-content: start; gap: .35rem .75rem; }
.home-ride-card .home-index { grid-row: 1 / 3; margin: .2rem 0 0; }
.home-ride-card h3 { font-size: 1.25rem; line-height: 1.25; color: var(--ivoire); }
.home-ride-card figcaption p { grid-column: 2; font-size: .78rem; line-height: 1.45; }
.home-ride-capture { display: block; overflow: hidden; border-radius: 1rem; background: #faf8f2; border: 1px solid #5b5140; }
.home-ride-capture img { display: block; width: 100%; height: auto; }
.home-rides__tabs { display: none; }
.home .home-rides__note { margin-top: 1rem; font-size: .73rem; text-align: center; }
.home-rides .home-related { margin-top: .75rem; text-align: center; }
.home-related { margin-top: 1.5rem; font-size: .85rem; line-height: 1.8; }
.home-business { background: #1b1814; border-top: 1px solid var(--ligne); }
.home-business__panel { display: grid; grid-template-columns: 1.5fr 1fr; gap: 2rem; padding: 2rem; border-radius: 1.5rem; border: 1px solid var(--ligne); background: var(--encre); align-items: center; }
.home-business__panel[hidden] { display: none; }
.home-business__panel + .home-business__panel { margin-top: 1rem; }
.home-business__gallery[data-ready] .home-business__panel { margin-top: 0; }
.home-business__copy h3 { font-size: clamp(1.6rem,2.4vw,2.1rem); margin-bottom: 1rem; }
.home-business__copy > p { font-size: .9rem; max-width: 37rem; }
.home-business__benefits { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem 1.4rem; padding: 0; margin: 1.5rem 0; list-style: none; }
.home-business__benefits li { display: grid; gap: .35rem; border-top: 1px solid var(--ligne-forte); padding-top: .75rem; }
.home-business__benefits strong { font-size: .85rem; font-weight: 600; color: var(--ivoire); }
.home-business__benefits span { font-size: .8rem; line-height: 1.5; color: var(--ivoire-doux); }
.home-business__panel figure { display: grid; justify-items: center; margin: 0; padding: 1rem; border-radius: 1.25rem; background: #282218; }
.home-business__panel .home-shot { width: 200px; }
.home-business__panel .home-shot--professional { width: 300px; }
.home-business__copy .home-business__note { font-size: .73rem; margin-top: .85rem; }
.home-faq { border-block: 1px solid var(--ligne); }
.home-faq__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.home-faq__grid > div > p:not(.sur-titre) { font-size: .95rem; margin-top: 1rem; }
.home-faq .home-signature { font-family: var(--serif); color: var(--or-clair); }
.home-questions details { border-bottom: 1px solid var(--ligne-forte); padding-block: .2rem; }
.home-questions summary, .home-contact summary { cursor: pointer; min-height: 48px; padding-block: 1rem; font-size: .94rem; line-height: 1.5; }
.home-questions p, .home-questions details > a { font-size: .9rem; margin-bottom: 1rem; }
.home-questions details > a { display: inline-flex; align-items: center; min-height: 44px; }
.home-start { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 2.5rem; background: #2b241a; border: 1px solid var(--ligne-forte); border-radius: 1.5rem; }
.home-start p:not(.sur-titre) { margin-top: 1rem; font-size: .9rem; }
.home-start__actions { display: grid; gap: .75rem; flex-shrink: 0; }
.home-contact { max-width: 42rem; margin: 1.25rem auto 0; }
.home-contact summary { text-align: center; color: var(--ivoire-doux); }
.home-contact .formulaire { margin-top: 1rem; }
.home .pied { padding-block: 2rem; }
.home .pied__logo { width: 8rem; }
.home .pied__devise { display: none; }
.home .pied__nav { margin-top: .75rem; gap: .2rem 1rem; }
.home .pied__nav a { min-height: 44px; display: inline-flex; align-items: center; font-size: .78rem; }
.home .pied__copyright { margin-top: 1rem; font-size: .7rem; }
@media (max-width: 55rem) {
  .home-hero { gap: 2rem; grid-template-columns: 1.15fr 1fr; padding-top: 6rem; }
  .home-panel { padding: 1.5rem; gap: 1.5rem; }
  .home-faq__grid { gap: 2rem; }
  .home-rides__heading { gap: 1.5rem; }
  .home-rides__screens { gap: 1rem; }
  .home-ride-card { padding: .75rem; }
  .home-business__panel { padding: 1.5rem; gap: 1.25rem; }
  .home-start { padding: 1.5rem; }
  .home-start__actions { flex-shrink: 1; }
}
@media (max-width: 40rem) {
  .home { font-size: 1rem; }
  .home .entete__interieur { gap: .4rem; }
  .home .entete__cta--mobile { margin: 0; padding-inline: .6rem; font-size: .75rem; }
  .home .conteneur { width: calc(100% - 2rem); }
  .home-hero { grid-template-columns: minmax(0,1fr); padding-block: 6.25rem 2rem; gap: 1.75rem; }
  .home-hero h1 { font-size: clamp(2rem, 8.8vw, 3rem); }
  .home-lead { font-size: .94rem; margin-block: 1.1rem; }
  .home-actions { gap: .6rem; }
  .home-actions .bouton { padding: .75rem 1rem; font-size: .9rem; }
  .home-platforms { margin-top: .85rem; }
  .home-hero__preview { padding: 1rem .75rem; border-radius: 1.5rem; }
  .home-shot--hero { width: 260px; }
  .home-shot--hero img { max-height: 300px; }
  .home-section { padding-block: 2.5rem; }
  .home-heading { display: block; margin-bottom: 1.25rem; }
  .home-heading > p { margin-top: .85rem; font-size: .9rem; }
  .home-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .5rem; }
  .home-tabs a { justify-content: center; padding-inline: .5rem; font-size: .85rem; }
  .home-panel { grid-template-columns: minmax(0,1fr); gap: 1.25rem; padding: 1.25rem; }
  .home-panel__copy > p:not(.home-index) { font-size: .9rem; }
  .home-panel h3 { font-size: 1.65rem; }
  .home-panel ul { margin-block: .75rem .25rem; }
  .home-index { margin-bottom: .5rem; }
  .home-shot { width: 210px; }
  .home-shot--hero { width: 260px; }
  .home-rides__heading { grid-template-columns: minmax(0,1fr); gap: 1rem; margin-bottom: 1rem; }
  .home-rides__intro { max-width: none; justify-self: stretch; }
  .home-rides__intro > p { font-size: .9rem; }
  .home-rides__tabs { display: grid; margin-bottom: 1rem; }
  .home-rides__screens { grid-template-columns: minmax(0,1fr); }
  .home-ride-card h3 { font-size: 1.25rem; }
  .home .home-rides__note, .home-rides .home-related { text-align: left; }
  .home-business__panel { grid-template-columns: minmax(0,1fr); padding: 1.1rem; gap: 1.25rem; }
  .home-business__benefits { gap: 1rem; margin-block: 1rem; }
  .home-business__benefits strong { font-size: .82rem; }
  .home-business__benefits span { font-size: .77rem; }
  .home-business__panel figure { padding: .85rem; }
  .home-business__panel .home-shot { width: 210px; max-height: 245px; }
  .home-business__panel .home-shot--professional { width: 260px; max-height: none; }
  .home-faq__grid { grid-template-columns: minmax(0,1fr); gap: 1.25rem; }
  .home-start { flex-direction: column; align-items: stretch; gap: 1.25rem; padding: 1.5rem; }
  .home-start h2 { font-size: 1.8rem; }
  .home-start .bouton { font-size: .9rem; padding-inline: .8rem; }
  .home-contact summary { text-align: left; font-size: .85rem; }
}
@media (max-width: 23rem) { .home .entete__logo { width: 4.5rem; } }
@media (prefers-reduced-motion: reduce) { .home * { scroll-behavior: auto; } }
