/* Phone and tablet layout, loaded after the reference design. */
img{max-width:100%}main,header,nav,.section,article,footer,dialog{min-width:0}button,a,input,select{-webkit-tap-highlight-color:transparent}p,small,figcaption,.contactLink span{overflow-wrap:anywhere}
@media(max-width:1000px){
 .hero{padding-bottom:20px;min-height:0}.heroContent{padding:75px 0 35px}.photoNote{position:static;display:block;text-align:right;margin:0 0 10px}.search{position:static;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);margin-top:14px}.search>.occupancyFields{grid-column:1}.search>button{grid-column:2;grid-row:2;margin-top:20px;min-height:48px}.searchFoot{grid-column:1/-1;grid-row:auto;display:flex}.childAges{grid-template-columns:repeat(3,minmax(0,1fr))}.roomList{gap:14px}.room h3{font-size:21px}
}
@media(max-width:700px){
 body{font-size:16px;line-height:1.65}html{scroll-padding-top:16px}main{padding:8px 8px 0}.hero{padding:0 16px 16px;border-radius:10px;background-position:55% center}.heroContent{padding:35px 0 28px}h1{font-size:clamp(32px,9vw,46px);line-height:1.12;letter-spacing:-1px;overflow-wrap:normal}.heroContent>p:last-child{font-size:16px}.heroContent>p:last-child br{display:none}.eyebrow{font-size:11px;letter-spacing:1.3px}.demo{font-size:11px;padding:8px 18px}.logo{font-size:clamp(22px,6.3vw,29px);line-height:1.2}.logo span{font-size:10px}
 header{padding:20px 0 0}header nav,html[lang="fr"] header nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px;width:100%}header nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;font-size:14px;border:1px solid #ffffff60;border-radius:5px;background:#0004;text-align:center;overflow-wrap:anywhere}header nav .button{display:flex;grid-column:1/-1;color:#171717;background:white;border-color:white;min-height:46px}#languagePicker{grid-column:1/-1;max-width:none;width:100%;font-size:16px;min-height:48px;margin:2px 0 0}
 .search{grid-template-columns:minmax(0,1fr);gap:15px;padding:16px;margin-top:10px;border-radius:8px}.search label,.search legend{font-size:14px}.search input,.search select,dialog input,dialog select{font-size:16px;min-height:48px;padding:10px;width:100%;min-width:0}.search>.occupancyFields,.search>button,.searchFoot,.childAges{grid-column:1/-1;grid-row:auto}.search>.occupancyFields{gap:12px}.search>button{margin:0;min-height:50px;font-size:16px}.search fieldset{display:grid;grid-template-columns:minmax(0,1fr);gap:5px}.search fieldset>span{display:none}.search fieldset>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.search fieldset .srOnly{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.search fieldset input{margin-top:0;margin-bottom:8px}.childAges{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.searchFoot{display:block;font-size:12px;line-height:1.6}.searchFoot a{display:block;margin-top:10px;min-height:44px;padding:8px 0}.searchNote{font-size:12px;margin:16px 16px 0;line-height:1.65}
 .section{padding:36px 16px}h2{font-size:clamp(27px,7.5vw,34px);line-height:1.2;letter-spacing:-.8px}.sectionHeading>a{white-space:normal;min-height:44px;padding:8px 0}.sectionHeading p,.editorialText>p:not(.eyebrow),.locationMap p{font-size:15px}.transferGrid,.roomList,.editorial,.locationMap,.contactGrid{grid-template-columns:minmax(0,1fr)}.transfer{padding:24px;min-height:300px;display:flex;flex-direction:column;align-items:flex-start}.transfer h3{font-size:32px}.transfer p{font-size:14px}.transfer button{margin-top:auto;min-height:46px;font-size:14px}.roomPhoto img{height:auto;aspect-ratio:4/3;object-fit:cover}.room h3{font-size:26px}.room p{font-size:15px;min-height:0}.room .eyebrow{font-size:11px}.room .roomUnit,.muted{font-size:12px}.room>button:last-child{min-height:48px;font-size:15px}.roomPhoto span{font-size:12px;padding:7px 10px}.editorial h2{font-size:38px}.editorial .button,.locationMap .button{min-height:46px;font-size:14px}.propertyGallery{grid-template-columns:repeat(2,minmax(0,1fr))}.propertyGallery img{height:auto;aspect-ratio:1/1}.propertyGallery button:first-child{grid-column:1/-1;grid-row:auto}.propertyGallery button:first-child img{height:auto;aspect-ratio:4/3}.locationMap iframe{height:300px;width:100%}.contactGrid button,.contactLink{min-height:76px;padding:18px;font-size:16px}.contactGrid small,.contactLink small,#contactNote{font-size:12px}.contact svg{flex-shrink:0}footer{padding:30px 24px;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}footer h3{font-size:14px}footer a:not(.logo){font-size:13px;min-height:44px;padding:7px 0;margin-bottom:0}footer p,footer small{font-size:12px}.socials button{min-width:44px;min-height:44px}.footerBottom{flex-wrap:wrap;gap:8px;font-size:11px}.photoCredits{font-size:10px;line-height:1.7}
 dialog{padding:22px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);overflow-y:auto}dialog h2{font-size:28px}dialog label{font-size:14px}dialog .close{width:44px;height:44px}dialog form>button{min-height:48px;font-size:16px}.check{align-items:flex-start}.check input{width:22px;min-height:22px;flex-shrink:0}.staySummary{grid-template-columns:1fr}.staySummary small,.staySummary strong{font-size:14px}.photoViewer{padding:56px 44px 20px;width:calc(100% - 12px);max-height:calc(100dvh - 12px)}.photoViewer img{max-height:60dvh}.photoViewer figcaption{font-size:13px}.photoClose,.photoPrev,.photoNext{min-width:44px;min-height:44px}.photoClose{right:4px}.photoPrev{left:0}.photoNext{right:0}.galleryHint{font-size:12px}
}
@media(max-width:360px){.hero{padding-left:12px;padding-right:12px}.search{padding:12px}.section{padding-left:12px;padding-right:12px}.transfer{padding:20px}.childAges{grid-template-columns:minmax(0,1fr)}footer{padding-left:20px;padding-right:20px}.photoViewer{padding-left:42px;padding-right:42px}}

.childAgeHelp{grid-column:1/-1;font-size:12px;line-height:1.6;margin:0;color:#686868}@media(max-width:700px){.childAgeHelp{font-size:13px}}
.datePrices{grid-column:1/-1;color:#b42324;background:#fff5f5;border:1px solid #f1c5c5;border-radius:6px;padding:12px;font-size:13px;line-height:1.6;margin-top:7px}.datePrices p{margin:5px 0}.datePrices small{display:block;margin-top:7px;font-size:11px}.datePrices summary{cursor:pointer;padding:8px 0;min-height:44px}.datePrices ul{margin:0;padding-left:20px;max-height:150px;overflow:auto}.datePrices li{padding:3px 0}@media(max-width:700px){.datePrices{font-size:14px}.datePrices small{font-size:12px}}

.amenityGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:28px 0}.amenityGrid li{display:flex;align-items:center;gap:14px;padding:18px;background:#fafafa;border:1px solid #e7e7e7;border-radius:6px;font-size:14px}.amenityGrid svg{width:25px;height:25px;flex-shrink:0}.amenityNote{font-size:13px;color:#686868;max-width:780px}.propertyFaq details{border-bottom:1px solid #e7e7e7}.propertyFaq summary{cursor:pointer;padding:18px 0;font-weight:500;min-height:48px}.propertyFaq details p{font-size:14px;color:#686868;max-width:860px;margin:0 0 20px}.propertyFaq{padding-top:20px}@media(max-width:700px){.amenityGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.amenityGrid li{padding:14px;font-size:13px;gap:10px}.amenityGrid svg{width:22px;height:22px}.amenityNote,.propertyFaq details p{font-size:14px}.propertyFaq summary{font-size:15px}}@media(max-width:360px){.amenityGrid{grid-template-columns:1fr}}

/* Compact nightly pricing beneath the dates. */
.datePrices{color:#555;background:#faf9f6;border-color:#e6e2da;padding:10px 12px;font-size:12px;line-height:1.5}.datePrices strong{display:block;font-size:13px;line-height:1.5;font-weight:600;letter-spacing:normal}.datePrices p{font-size:12px;line-height:1.5}.datePrices small{font-size:11px}.datePrices summary{font-size:12px}@media(max-width:700px){.datePrices{font-size:12px}.datePrices strong{font-size:13px}.datePrices small{font-size:11px}}

/* Keep language selection at the top of the header. */
header>#languagePicker{flex-shrink:0}@media(max-width:700px){.hero>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.hero>header>.logo{grid-column:1;grid-row:1}.hero>header>#languagePicker{grid-column:2;grid-row:1;width:auto;max-width:125px;margin:0;min-height:44px;font-size:14px}.hero>header>nav{grid-column:1/-1;grid-row:2;margin-top:6px}}
