/* Parcours tactile. La classe est fixée avant le premier rendu et reste
   stable quand la barre d’adresse ou l’orientation change. */
.ft-mobile-leger {scroll-behavior:auto;scroll-padding-top:calc(82px + var(--ft-services-hauteur,0px))}
.ft-mobile-leger body {overflow-x:clip}
.ft-mobile-leger .loader {display:none}
.ft-mobile-leger .site-header {height:68px;padding-inline:20px;background:#f3eee7;border-bottom:1px solid #d8c9bc;gap:12px}
.ft-mobile-leger .site-header .wordmark {font-size:18px}
.ft-mobile-leger .site-header .wordmark>span {font-size:10px}
.ft-mobile-leger .site-header nav {display:none}
.ft-mobile-leger .header-documents-mobile,.ft-mobile-leger .header-contact-mobile {display:inline-flex;font-size:11px;min-height:44px}
.ft-mobile-leger .header-documents-mobile {margin-left:auto}
.ft-mobile-leger .header-contact-mobile {margin-left:0}
.ft-mobile-leger #accueil.hero-panorama {display:block;min-height:0;padding:92px 20px 32px}
.ft-mobile-leger #accueil .hero-copy {display:grid;width:100%;max-width:none;min-height:0;padding:0;grid-template-columns:1fr;grid-template-rows:auto;gap:16px;pointer-events:auto}
.ft-mobile-leger #accueil .hero-prelude {grid-column:1;grid-row:1;font-size:8px;max-width:none}
.ft-mobile-leger #accueil #hero-title {grid-column:1;grid-row:2;font-size:clamp(38px,9.5vw,62px);line-height:1.1;margin:0;white-space:normal}
.ft-mobile-leger #accueil .mobile-preview {grid-column:1;grid-row:3;position:relative;height:clamp(270px,42svh,380px);isolation:isolate;overflow:hidden;border:1px solid #d5c6b7;border-radius:3px;background:#e8dfd1}
.ft-mobile-leger #ftShowroom {position:relative;inset:auto;width:100%;height:100%;background:transparent;z-index:0;opacity:1;visibility:visible;transform:none;transition:none;touch-action:pan-y}
html.ft-mobile-leger body #ftShowroom:not(.is-docked) {top:0!important}
.ft-mobile-leger #ftShowroom:after,.ft-mobile-leger #ftShowroom>.scene-tools,.ft-mobile-leger #ftDragGuide {display:none}
.ft-mobile-leger #ftShowroom .scene-poster {display:block;inset:0;width:100%;height:100%;padding:14px 20px;object-fit:contain}
.ft-mobile-leger #ftShowroom.mobile-3d-ready .scene-poster {display:none}
.ft-mobile-leger .mobile-close-scene {position:absolute;right:8px;top:8px;z-index:4;min-height:44px;padding:8px 12px;border:1px solid #bca58f;background:#fffaf3;color:#49392d;font-size:11px;border-radius:3px}
.ft-mobile-leger #ftShowroom .scene-notice {left:12px;right:12px;top:auto;bottom:10px;width:auto;max-width:none;transform:none;font-size:11px;padding:10px}
.ft-mobile-leger #accueil .hero-description {grid-column:1;grid-row:4;max-width:none}
.ft-mobile-leger #accueil .hero-description .intro {font-size:13px;line-height:1.6;max-width:none;margin:0}
.ft-mobile-leger #accueil .hero-description small {display:none}
.ft-mobile-leger #accueil .hero-action {grid-column:1;grid-row:5;padding:0;width:100%}
.ft-mobile-leger #accueil .hero-create {display:flex;justify-content:space-between;background:#9d514c;color:#fff9f0;padding:12px 18px;min-height:52px;gap:14px;flex-wrap:nowrap}
.ft-mobile-leger #accueil .hero-create>span {font:400 15px/1.4 var(--sans);padding:0;border:0}
.ft-mobile-leger #accueil .hero-create br {display:none}
.ft-mobile-leger #accueil .hero-create>span br:after {content:' '}
.ft-mobile-leger #accueil .hero-create>i {width:28px;height:28px;font-size:22px;background:transparent}
.ft-mobile-leger #accueil .hero-action-note {display:none}
.ft-mobile-leger #accueil .hero-provenance {grid-column:1;grid-row:6;padding:4px 0 0;gap:14px;flex-wrap:wrap}
.ft-mobile-leger #accueil .hero-provenance img {width:76px}
.ft-mobile-leger #accueil .hero-provenance>span {font-size:12px}
.ft-mobile-leger #accueil .hero-bottom {position:static;display:flex;flex-direction:column;margin-top:20px;padding-top:18px;gap:12px;border-top:1px solid #c2a58c;pointer-events:auto}
.ft-mobile-leger #accueil .hero-product {grid-template-columns:minmax(0,1fr) auto;width:100%;max-width:none;pointer-events:auto}
.ft-mobile-leger #accueil .hero-product h2 {font-size:21px;grid-column:1;grid-row:2}
.ft-mobile-leger #accueil .hero-product>[data-product-dim] {grid-row:3}
.ft-mobile-leger #accueil .hero-product p {grid-column:2;grid-row:2/4;font-size:15px;text-align:right;margin:0;max-width:145px}
.ft-mobile-leger #accueil .hero-product p>strong {white-space:normal}
.ft-mobile-leger #accueil .hero-product small {font-size:9px;max-width:145px}
.ft-mobile-leger #accueil .hero-model-controls {width:100%;display:flex;justify-content:space-between;gap:12px}
.ft-mobile-leger #accueil .hero-model-controls .hero-open {font-size:12px;min-height:46px}
.ft-mobile-leger #accueil .slideshow-controls button {min-width:44px;min-height:44px}
.ft-mobile-leger #accueil #ftAuto {display:grid;width:44px;min-width:44px;max-width:none;height:44px;padding:0;border:1px solid #c5ad97;border-radius:50%;background:#f6f0e67a;color:#765740}
.ft-mobile-leger #accueil #ftAuto .ft-icon {width:18px;height:18px}
.ft-mobile-leger #accueil .hero-signature,.ft-mobile-leger #accueil .scroll-cue {display:none}
.ft-mobile-leger #accueil [data-hero-entree] {animation:none!important;opacity:1!important;transform:none!important}

/* Deux rangées compactes, des libellés lisibles et des cibles de 44 px. */
.ft-mobile-leger #familles {display:block;min-height:0;padding:44px 20px}
.ft-mobile-leger #familles .boutique-heading {display:block;margin-bottom:20px}
.ft-mobile-leger #familles .boutique-heading h2 {font-size:clamp(36px,9vw,52px)}
.ft-mobile-leger #familles .boutique-heading>p {margin-top:16px;font-size:13px}
.ft-mobile-leger #familles .catalogue-toolbar {padding:10px 0;margin-bottom:18px;gap:8px}
.ft-mobile-leger #familles .catalogue-filters {width:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:0;border-radius:0;gap:6px}
.ft-mobile-leger #familles .catalogue-filters button {flex:none;min-height:44px;padding:10px 13px;font-size:11px}
.ft-mobile-leger #familles .collection-tools {display:none}
.ft-mobile-leger #familles .product-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ft-mobile-leger #familles .product-card {min-width:0;box-shadow:none}
.ft-mobile-leger #familles .product-card[data-family] .product-card-visual {height:clamp(146px,42vw,210px)}
.ft-mobile-leger #familles .product-photo {padding:16px 8px 22px;transition:none}
.ft-mobile-leger #familles .product-badge,.ft-mobile-leger #familles .visual-action {display:none}
.ft-mobile-leger #familles .product-card-visual:before {font-size:18px;top:10px;right:10px}
.ft-mobile-leger #familles .product-card-visual:after {display:none}
.ft-mobile-leger #familles .product-card-body {padding:12px}
.ft-mobile-leger #familles .product-category {font-size:9px;letter-spacing:.03em;margin-bottom:8px}
.ft-mobile-leger #familles .product-card h3 {font-size:19px;line-height:1.15;min-height:44px;margin:0 0 8px}
.ft-mobile-leger #familles .product-card-body>p:not(.product-category) {font-size:11px;line-height:1.4;min-height:31px;margin-bottom:8px}
.ft-mobile-leger #familles .card-dimensions {font-size:10px;padding-top:8px;margin-bottom:8px}
.ft-mobile-leger #familles .card-price {margin:8px 0 12px;min-height:58px}
.ft-mobile-leger #familles .card-price strong {font-size:18px;line-height:1.2;white-space:normal}
.ft-mobile-leger #familles .card-price small {font-size:9px;line-height:1.4;min-height:26px}
.ft-mobile-leger #familles .card-cta {min-height:44px;font-size:11px;padding:10px 8px;gap:4px}
.ft-mobile-leger #familles .boutique-assurance {margin-top:20px;padding-top:18px;gap:8px;font-size:10px}

/* Le film conserve son panorama complet ; aucun bord noir, aucun zoom WebGL. */
.ft-mobile-leger #film {min-height:0;padding:44px 20px;gap:24px;pointer-events:auto}
.ft-mobile-leger #film .film-heading h2 {font-size:clamp(36px,9vw,52px)}
.ft-mobile-leger #film .film-stage {width:100%;max-width:900px;aspect-ratio:auto;border:4px solid #fffaf3;box-shadow:0 0 0 1px #bca58f,0 12px 24px #5b402015;overflow:hidden;background:#d7c3ad}
.ft-mobile-leger #film .film-fallback {display:none}
.ft-mobile-leger #film video {display:block;width:100%;height:auto;aspect-ratio:12/5;object-fit:cover;object-position:center;background:#d7c3ad}
.ft-mobile-leger #film .film-play {min-height:44px;font-size:12px;margin:0}

.ft-mobile-leger #accompagnement {padding:44px 20px;min-height:0}
.ft-mobile-leger #accompagnement .journey-intro {margin-bottom:24px}
.ft-mobile-leger #accompagnement .journey-title-row {display:block}
.ft-mobile-leger #accompagnement .journey-title-row h2 {font-size:clamp(36px,9vw,52px)}
.ft-mobile-leger #accompagnement .journey-title-row>p {font-size:13px;margin-top:16px;max-width:none}
.ft-mobile-leger #accompagnement .journey-layout {display:block}
.ft-mobile-leger #accompagnement .journey-visual {position:static;padding:0;margin-bottom:24px}
.ft-mobile-leger #accompagnement .journey-photo {aspect-ratio:16/9;max-height:290px}
.ft-mobile-leger #accompagnement .journey-photo>img {transform:none;transition:none}
.ft-mobile-leger #accompagnement .journey-detail,.ft-mobile-leger #accompagnement .journey-signature {display:none}
.ft-mobile-leger #accompagnement .journey-step {padding:22px 0;gap:14px;grid-template-columns:30px minmax(0,1fr)}
.ft-mobile-leger #accompagnement .journey-number {width:30px;height:30px}
.ft-mobile-leger #accompagnement .journey-step h3 {font-size:27px;margin-bottom:12px;animation:none}
.ft-mobile-leger #accompagnement .journey-step h3+p {font-size:13px;line-height:1.65;max-width:none}
.ft-mobile-leger .mobile-journey-detail {min-width:0}
.ft-mobile-leger .mobile-journey-detail summary {cursor:pointer;list-style:none;position:relative;padding-right:26px;min-height:44px}
.ft-mobile-leger .mobile-journey-detail summary::-webkit-details-marker {display:none}
.ft-mobile-leger .mobile-journey-detail summary:after {content:'+';position:absolute;right:0;top:12px;font:24px/1 var(--sans);color:#80634e}
.ft-mobile-leger .mobile-journey-detail[open] summary:after {content:'−'}
.ft-mobile-leger #accompagnement .mobile-journey-detail>p {font-size:13px;line-height:1.65;margin:0;color:#726459}
.ft-mobile-leger #accompagnement .journey-services {grid-template-columns:1fr;margin-top:16px}
.ft-mobile-leger #accompagnement .journey-services>div {display:none}
.ft-mobile-leger #accompagnement .journey-cta {grid-column:1;margin:0;padding:22px}

.ft-mobile-leger #confiance {padding:44px 20px 32px}
.ft-mobile-leger #confiance .trust-heading {padding-bottom:24px;gap:16px;grid-template-columns:1fr}
.ft-mobile-leger #confiance .trust-heading h2 {font-size:clamp(36px,9vw,52px)}
.ft-mobile-leger #confiance .trust-heading>p:last-child {font-size:13px}
.ft-mobile-leger #confiance .trust-salon {display:flex;flex-direction:column;gap:24px}
.ft-mobile-leger #confiance .trust-visual {height:200px;min-height:0;order:2}
.ft-mobile-leger #confiance .trust-visual img {object-position:center 40%;transform:none;transition:none}
.ft-mobile-leger #confiance .trust-dialogue {padding:0;gap:24px}
.ft-mobile-leger #confiance .trust-contact>.trust-overline {font-size:30px;margin-bottom:14px}
.ft-mobile-leger #confiance .trust-phone {font-size:clamp(29px,8vw,38px);min-height:60px}
.ft-mobile-leger #confiance .trust-company {padding-top:22px}
.ft-mobile-leger #confiance .trust-company h3 {font-size:29px}
.ft-mobile-leger #confiance .trust-company>p:not(.trust-overline) {font-size:13px;line-height:1.65}
.ft-mobile-leger #confiance .trust-range {display:none}
.ft-mobile-leger #confiance .trust-faq-layout {display:block;padding:32px 0}
.ft-mobile-leger #confiance .trust-faq-intro {position:static;margin-bottom:20px}
.ft-mobile-leger #confiance .trust-faq-intro h3 {font-size:40px;margin:16px 0}
.ft-mobile-leger #confiance .trust-faq summary {min-height:72px;font-size:21px;gap:10px;padding:18px 2px;grid-template-columns:18px minmax(0,1fr) 28px}
.ft-mobile-leger #confiance .trust-answer {padding:0 10px 22px 30px}
.ft-mobile-leger #confiance .trust-answer p {font-size:13px;line-height:1.65}
.ft-mobile-leger #confiance .trust-closing {grid-template-columns:1fr;padding:26px 22px;gap:20px}
.ft-mobile-leger #confiance .trust-closing>span {font-size:30px}
.ft-mobile-leger #confiance .trust-revele {animation:none}
.ft-mobile-leger #ftFooter {min-height:0;padding:30px 20px}
.ft-mobile-leger #ftFooter .letter-flap,.ft-mobile-leger #ftFooter .footer-content>.eyebrow,.ft-mobile-leger #ftFooter .footer-content>h2,.ft-mobile-leger #ftFooter .footer-content>.button {display:none}
.ft-mobile-leger #ftFooter .footer-content {padding:0;transform:none;opacity:1}
.ft-mobile-leger #ftFooter .footer-bottom {margin-top:0;padding-top:0;gap:24px}
.ft-mobile-leger #ftFooter .footer-bottom nav {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;width:100%}
.ft-mobile-leger #ftFooter nav a,.ft-mobile-leger #ftFooter nav button {display:inline-flex;align-items:center;min-height:44px}
@media(max-width:360px){.ft-mobile-leger .site-header{padding-inline:16px;gap:8px}.ft-mobile-leger #familles .product-card-body{padding:10px}.ft-mobile-leger #familles .product-card h3{font-size:17px}.ft-mobile-leger #accueil .hero-product{grid-template-columns:1fr}.ft-mobile-leger #accueil .hero-product p{grid-column:1;grid-row:4;text-align:left;margin-top:9px;max-width:none}.ft-mobile-leger #accueil .hero-product small{max-width:none}}
