/* Capsules de réservation : simplicité et proportions du site d'origine. */
:root{--reservation-wine:#4f2030;--ldg-psb-button-border-radius:999px;}
.reservation #lodgify-search-bar a[data-testid="button"],.booking-direct button,.lh-book-btn{border-radius:999px!important;background:var(--reservation-wine)!important;color:#fff8f0!important;border:0!important;font:400 16px/1.4 var(--text)!important;letter-spacing:0!important;min-height:54px;padding:15px 30px!important;box-shadow:none!important;}
.reservation #lodgify-search-bar a[data-testid="button"]{display:inline-flex;justify-content:center;align-items:center;gap:8px;}
.reservation #lodgify-search-bar a[data-testid="button"] svg{width:24px;height:24px;}
.reservation #lodgify-search-bar a[data-testid="button"]:hover,.booking-direct button:hover,.lh-book-btn:hover{background:#371421!important;}
.site-header .book-link{background:var(--reservation-wine);color:#fff8f0;border:0;border-radius:999px;font:400 15px/1.4 var(--text);letter-spacing:.02em;padding:12px 29px;min-width:132px;text-align:center;box-shadow:none;}
.site-header .book-link:hover{background:#371421;box-shadow:none;}
.site-header .book-link:before,.site-header .book-link:after{display:none;}
@media(min-width:761px){.site-header .book-link{display:inline-flex;align-items:center;justify-content:center;}}
.lh-wa-eyebrow>a,.discovery-section .lh-eyebrow>a{display:inline-block;font:inherit;color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;text-decoration-color:#ab8f89;transition:color .25s,transform .4s;}
.lh-wa-eyebrow>a:hover,.discovery-section .lh-eyebrow>a:hover{color:#693344;transform:translateX(3px);}
.lh-wa-eyebrow>a:focus-visible,.discovery-section .lh-eyebrow>a:focus-visible{outline:2px solid #693344;outline-offset:6px;}
/* Offre sur velours bordeaux : texte dans la zone sombre, main à droite. */
.promotion-banner{min-height:300px;padding:50px 8%;gap:40px;background-color:#3d1420;background-image:linear-gradient(90deg,#240b16d9 0%,#240b1670 42%,#240b1610 70%,#240b1659 100%),url('/assets/main-fine-velours-bordeaux-rouge-desktop.webp');background-size:cover;background-position:center 50%;color:#fff8ee;border:0;}
.promotion-content{gap:26px;}
.promotion-content>strong{font-size:80px;color:#fff8ee;}
.promotion-content>p{color:#fff8ee;max-width:235px;font-size:17px;}
.promotion-banner>a{display:inline-flex;align-items:center;justify-content:center;background:#f8f3e9;color:#4f2030;border:0;border-radius:999px;font:400 16px/1.4 var(--text);padding:15px 26px;min-height:52px;align-self:center;flex:none;text-decoration:none;background-image:none;}
.promotion-banner>a:hover{background:#fff;color:#4f2030;border:0;}
/* Film spa en 4:3 sur ordinateur, cadre vertical entier sur mobile. */
.spa-film{max-width:920px;margin:0 auto;padding:35px 5% 60px;}
.spa-film .video-loop{position:relative;overflow:hidden;background:#21171e;padding:0;margin:0;width:100%;max-width:none;}
.spa-film .video-loop video{aspect-ratio:4/3;}
@media(max-width:760px){
 .site-header .book-link{display:none!important;}
 .reservation #lodgify-search-bar a[data-testid="button"],.booking-direct button,.lh-book-btn{font-size:16px!important;min-height:52px;}
 .promotion-banner{min-height:320px;padding:30px 7%;background-image:linear-gradient(90deg,#240b16e0 0%,#240b1699 48%,#240b1633 100%),url('/assets/main-fine-velours-bordeaux-rouge-mobile.webp');background-position:76% center;}
 .promotion-content{align-items:flex-start;flex-direction:column;gap:12px;}
 .promotion-content>strong{font-size:64px;}
 .promotion-content>p{font-size:16px;max-width:185px;}
 .promotion-banner>a{margin-top:20px;font-size:16px;}
 .spa-film{max-width:470px;padding:20px 7% 45px;}
 .spa-film .video-loop video{aspect-ratio:9/16;}
}
@media(prefers-reduced-motion:reduce){.lh-wa-eyebrow>a,.discovery-section .lh-eyebrow>a{transition:none;transform:none;}}
/* Réservation plus discrète : environ 20 % de recul visuel, cibles de 46 px. */
.reservation{padding-top:14px;padding-bottom:14px;}
.reservation #lodgify-search-bar{max-width:940px;margin-left:auto;margin-right:auto;}
.reservation #portable-search-bar{gap:12px;}
.reservation #portable-search-bar :is([data-testid="start-date-button"],[data-testid="end-date-button"]){padding:6px 24px 6px 12px;font-size:14px;min-height:44px;flex:1;min-width:0;}
.reservation #portable-search-bar :is([data-testid="start-date-button"],[data-testid="end-date-button"]) label{font-size:12px;line-height:14px;}
.reservation #portable-search-bar :is([data-testid="start-date-button"],[data-testid="end-date-button"]) .date{font-size:14px;line-height:18px;min-height:18px;margin:0;}
.reservation #portable-search-bar [data-testid="guests-breakdown-trigger"]{min-height:46px;height:46px;padding:5px 12px;font-size:14px;}
.reservation #portable-search-bar [data-testid="guests-breakdown-trigger"] label{font-size:12px;line-height:14px;}
.reservation #portable-search-bar [data-testid="guests-breakdown-trigger"] :is(.value-wrapper,[data-testid="guests-breakdown-trigger-value"]){font-size:14px;line-height:18px;}
.reservation #portable-search-bar [data-testid="guests-breakdown-trigger"] svg{width:16px;height:16px;}
.reservation #lodgify-search-bar a[data-testid="button"],.booking-direct button{font-size:14px!important;line-height:20px!important;min-height:46px;padding:12px 24px!important;}
.reservation #lodgify-search-bar a[data-testid="button"]{gap:6px;}
.reservation #lodgify-search-bar a[data-testid="button"] svg{width:20px;height:20px;}
.booking-direct{max-width:900px;gap:8px 14px;}
.booking-direct label{font-size:12px;line-height:16px;gap:3px;}
.booking-direct input,.booking-direct select{font-size:14px;line-height:20px;min-height:30px;padding:4px 0;}
.booking-direct-note{font-size:11px;line-height:15px;}
@media(min-width:761px){
 .reservation #portable-search-bar>button:has([data-testid="start-date-button"]){width:260px;min-width:260px;flex:0 0 260px;}
 .reservation #portable-search-bar [data-testid="guests-breakdown-trigger"]{width:190px;min-width:190px;}
}
@media(max-width:760px){
 .reservation{padding-top:12px;padding-bottom:12px;}
 .reservation #portable-search-bar{gap:10px;}
 .reservation #portable-search-bar [data-testid="guests-breakdown-trigger"]{width:100%;min-width:0;}
 .booking-direct{gap:10px 14px;}
 .booking-direct input,.booking-direct select{font-size:16px;min-height:44px;}
}
.reservation #portable-search-bar{align-items:center;}
.reservation #portable-search-bar>button:has([data-testid="start-date-button"]){height:46px;min-height:46px;}
.reservation #portable-search-bar :is([data-testid="start-date-button"],[data-testid="end-date-button"]){height:44px;}
.reservation #lodgify-search-bar{min-height:46px;}

/* Accès : deux liens sobres sous l’adresse. */
.hotel-footer address{margin-bottom:2px;}
.footer-directions{display:flex;justify-content:center;align-items:center;gap:14px;margin:0 auto 10px;font-size:12px;line-height:1.6;}
.footer-directions a{display:inline-flex;align-items:center;min-height:44px;color:#e4cdd1;text-underline-offset:5px;text-decoration:underline;text-decoration-color:#e4cdd14d;}
.footer-directions a:hover{color:#fff;text-decoration-color:currentColor;}
.footer-directions>span{color:#a7818b;}

/* Mobile : le conteneur en colonne conserve la pleine largeur des dates. */
@media(max-width:760px){
 .reservation #portable-search-bar{width:100%;max-width:360px;margin-inline:auto;align-items:stretch;}
 .reservation #portable-search-bar>button:has([data-testid="start-date-button"]){width:100%;min-width:0;flex:0 0 auto;}
 .reservation #portable-search-bar :is([data-testid="start-date-button"],[data-testid="end-date-button"]){width:50%;padding:6px 24px 6px 12px;}
 .reservation #lodgify-search-bar a[data-testid="button"]{width:100%;}
}

/* Pied de page : éviter le débordement des trois colonnes sur petit mobile. */
@media(max-width:360px){.footer-navigation nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}.footer-navigation nav>div:last-child{grid-column:1/-1;}}
