/* Une navigation en tête de page et des contours plus doux. */
html{scroll-padding-top:24px}
.header,.header.is-scrolled,.header.menu-open{position:absolute;top:0;height:100px;transition:background .2s,color .2s}
.mobile-nav{position:absolute;top:100px}
.cta,.text-link,.film-more,.press-action,.contact-submit,.dialog-close,.menu-toggle,.desktop-nav a:last-child,.press-filters button,.resource-links>a,.contact-ready>[data-copy-message]{border-radius:10px}
dialog{border-radius:18px}
.intro-copy h2,.offers-heading h2,.gesture-copy h2,.visit h2,.page-heading h1,.press-feature h2,.press-resources h2,.contact-intro h1,.contact-visit h2{margin-top:0}
.offers-heading{display:block;margin-bottom:40px}
.product h3{margin-top:0}
.basket-offer h3{margin-top:0}
.film h2,.landscape h2{margin-top:0}
.contact-launcher{display:flex;align-items:center;justify-content:center;gap:15px;right:24px;bottom:24px;padding:15px 20px;min-height:58px;border:1px solid #eee8da7a;border-radius:14px;background:var(--ink);color:var(--paper);box-shadow:0 5px 25px #12291a30;font-size:13px}
.contact-launcher img{width:110px;height:auto;object-fit:contain;flex-shrink:0}
.contact-launcher span{border-left:1px solid #eee8da55;padding-left:15px}
.contact-launcher:hover{background:#354c39;transform:translateY(-2px)}
/* Une fenêtre de conversation, indépendante de la page. */
.contact-panel{inset:auto 24px 24px auto;width:min(440px,calc(100vw - 48px));height:auto;max-height:min(780px,calc(100svh - 48px));margin:0;padding:0;border:1px solid #e8e1d040;border-radius:24px;box-shadow:0 18px 90px #10251d55;overflow:auto}
.contact-panel::backdrop{background:#13251c55;backdrop-filter:blur(3px)}
.contact-panel-heading{background:var(--ink);color:var(--paper);padding:24px 28px 25px}
.contact-panel .dialog-top{gap:20px;margin:0 0 19px;align-items:center}
.contact-panel-logo{width:145px;height:auto;object-fit:contain}
.contact-panel .dialog-close{min-height:34px;height:34px;padding:6px 11px;font-size:11px;border:1px solid #eee8da88;color:var(--paper)}
.contact-panel h2{font-size:37px;line-height:1.05;letter-spacing:-.045em;margin:0 0 12px}
.contact-panel-heading>p{font-size:12px;line-height:1.7;color:#eee8dad9}
.contact-panel .contact-panel-body{padding:22px 28px 25px}
.contact-panel .contact-form-wrap label{font-size:12px;font-weight:600;line-height:1.5;margin:0 0 15px}
.contact-panel label>span{font-size:10px;font-weight:400;color:var(--muted)}
.contact-panel .contact-form-wrap input,.contact-panel .contact-form-wrap textarea{border:0;border-bottom:1px solid #263c2d55;border-radius:0;background:transparent;padding:10px 0 8px;margin-top:2px;font-size:13px;line-height:1.6;outline-offset:3px}
.contact-panel .contact-form-wrap textarea{min-height:82px;max-height:190px;resize:vertical}
.contact-panel .contact-submit{min-height:47px;padding:12px 18px;font-size:13px;background:var(--clay);border-color:var(--clay);color:#fff9ec}
.contact-panel .contact-submit:hover{background:#904729;border-color:#904729}
.contact-panel .form-note{font-size:10px;line-height:1.65;margin:12px 0 0}
.contact-panel .contact-ready{margin-top:18px;padding-top:18px}
.contact-panel .contact-ready h3{font-size:27px}
.contact-panel .contact-ready .text-link{font-size:12px;min-height:43px}
.contact-form-wrap input,.contact-form-wrap select,.contact-form-wrap textarea{border-radius:8px}
@media(max-width:760px){
html{scroll-padding-top:18px}
.header,.header.is-scrolled,.header.menu-open{position:absolute;height:78px}
.mobile-nav{position:absolute;top:78px}
.offers-heading{margin-bottom:30px}
.intro-copy h2,.offers-heading h2,.gesture-copy h2,.visit h2,.page-heading h1,.press-feature h2,.press-resources h2,.contact-intro h1,.contact-visit h2{margin-top:0}
.contact-launcher{right:14px;bottom:16px;gap:12px;padding:13px 16px;min-height:52px;font-size:12px;border-radius:13px}
.contact-launcher img{width:90px}
.contact-launcher span{padding-left:12px}
.contact-panel{inset:auto 12px 12px auto;width:calc(100vw - 24px);max-height:85svh;border-radius:22px}
.contact-panel-heading{padding:20px 22px 21px}
.contact-panel .dialog-top{margin-bottom:17px}
.contact-panel-logo{width:132px}
.contact-panel h2{font-size:34px}
.contact-panel-heading>p{font-size:12px}
.contact-panel .contact-panel-body{padding:20px 22px 22px}
.contact-panel .contact-form-wrap input,.contact-panel .contact-form-wrap textarea{font-size:16px;padding:9px 0 8px}
.contact-panel .contact-form-wrap label{margin-bottom:14px;font-size:12px}
.contact-panel .contact-form-wrap textarea{min-height:84px}
.contact-panel .form-note{font-size:10px}
}

/* Un pied de page court et des réseaux identifiables au premier regard. */
.footer{padding:25px 7% 19px}
.footer-main{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:30px;padding-bottom:20px}
.footer-brand{width:190px}
.footer-contact{display:flex;align-items:center;gap:28px;margin:0}
.footer-contact>a{font-size:13px}
.footer-nav{display:flex;align-items:center;gap:19px;font-size:11px}
.footer-nav a:hover,.footer-contact>a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-socials{display:flex;align-items:center;gap:4px}
.social-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;transition:background .2s}
.social-icon svg{display:block;width:22px;height:22px;flex-shrink:0}
.social-icon:hover{background:#eee8da16}
.footer-bottom{align-items:center;padding-top:14px;gap:20px;font-size:8px}
.footer-bottom button{font-size:10px;line-height:1.6}
.contact-launcher{bottom:calc(24px + var(--footer-offset,0px))}
@media(max-width:1000px) and (min-width:761px){
.footer-main{gap:22px}.footer-contact{gap:20px}.footer-brand{width:165px}
}
@media(max-width:760px){
.visit{padding-bottom:90px}
.footer{padding:22px 6% 16px}
.footer-main{grid-template-columns:1fr auto;gap:12px 20px;padding-bottom:17px}
.footer-brand{width:165px}
.footer-socials{grid-column:2;grid-row:1;gap:2px}
.footer-contact{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 22px;margin:0}
.footer-contact>a{font-size:13px}
.footer-nav{font-size:11px;gap:18px}
.footer-bottom{padding-top:12px;font-size:8px;letter-spacing:.04em}
.footer-bottom button{font-size:9px}
.contact-launcher{bottom:calc(16px + var(--footer-offset,0px))}
}
