/* A calmer rhythm for the Livara landing page. */
.container{max-width:1360px}
.hero{min-height:47rem}
.hero-content{padding-top:11.5rem;padding-bottom:6.5rem}
.hero-copy{margin-top:2rem;line-height:1.65}
.hero-actions{margin-top:2.5rem;gap:2.5rem}
.hero-bottom{margin-top:3rem}
.rooms{padding-top:6rem;padding-bottom:2.5rem}
.rooms-layout{gap:3rem;grid-template-columns:.95fr 3.4fr;align-items:start}
.rooms-intro .eyebrow{margin-bottom:1.75rem}
.rooms-intro p:not(.eyebrow){margin-top:1.75rem;line-height:1.7}
.rooms-intro .round-controls{margin-top:2rem}
.room-grid{gap:1.5rem}
.room-card{min-height:23rem}
.room-card-copy{left:1.75rem;right:1.75rem;bottom:1.75rem}
.room-card h3{margin-top:.75rem}
.room-card p{font-size:.9375rem;line-height:1.55;margin-top:.75rem;max-width:19ch;padding-right:1.5rem}
.capacity{top:1.75rem;left:1.75rem}
.amenities{margin-top:4rem;padding:2.5rem;gap:1.75rem;align-items:start}
.amenities>div{display:block;padding:0 1.25rem 0 0;min-height:8.5rem}
.amenities>div>svg{display:block;width:2rem;height:2rem;margin:0 0 1.25rem}
.amenities b{font-size:1rem;white-space:normal;line-height:1.4;display:block}
.amenities small{font-size:.8125rem;line-height:1.65;margin-top:.75rem}
.amenities small br{display:none}
.gallery-booking{padding-top:3rem;padding-bottom:6.5rem}
.gallery-layout{gap:2.5rem}
.mosaic{height:25rem;gap:1rem}
.booking-banner{min-height:25rem}
.booking-banner>div{padding:3rem}
.booking-banner p:not(.eyebrow){line-height:1.7;margin-top:1.5rem}
.booking-banner .button{margin-top:2rem}
.experience{padding-top:2rem;padding-bottom:7rem}
.section-heading{margin-bottom:3rem;gap:3rem}
.section-heading>p{line-height:1.8}
.experience-tabs{gap:1rem;margin-bottom:2rem}
.experience-image{min-height:32rem}
.experience-copy{padding:3.5rem}
.experience-copy>p{line-height:1.8}
.experience-copy ul{margin-block:1.75rem 2.25rem}
.experience-copy li{line-height:1.65;margin:.8rem 0}
.pricing{padding-block:6.5rem}
.pricing-layout{gap:4rem;margin-top:3.5rem}
.rate-options{gap:1rem}
.rate-options>label{padding:1.5rem 1.75rem;min-height:6rem}
.duration-field{margin-top:3rem}
.duration-heading{margin-bottom:2rem}
.estimate{padding:3rem}
.estimate ul{padding-top:1.75rem;margin-block:2rem}
.estimate li{margin:1.1rem 0;line-height:1.6}
.visit{padding-block:7rem}
.visit-layout,.faq-layout{gap:6rem}
.visit li{padding-block:2rem}
.visit li p{margin-top:1rem;line-height:1.75}
.faq{padding-top:2.5rem;padding-bottom:7rem}
.faq summary{min-height:5.75rem;padding-block:1.75rem;line-height:1.6}
.faq details>p{padding-bottom:2rem;line-height:1.8}
.contacts{padding-top:2rem;padding-bottom:2.5rem}
.contact-banner{min-height:34rem}
.contact-banner>div{padding:4.5rem}
.contact-banner p:not(.eyebrow){margin-top:2rem;line-height:1.75}
.contact-banner .button{margin-top:2.5rem}
.contact-bottom{padding-top:3rem;gap:2.5rem}
.footer-inner{padding-top:2rem}
@media(max-width:1199.98px){
 .hero-content{padding-top:10.5rem}.hero{min-height:45rem}
 .rooms-layout{grid-template-columns:1fr;gap:2.5rem}.rooms-intro p:not(.eyebrow){margin:0}.room-card{min-height:23rem}
 .amenities{padding:2.25rem;gap:1.5rem}.amenities>div{padding-right:1rem}.amenities b{font-size:.9375rem}.amenities small{font-size:.75rem}
 .booking-banner>div{padding:2.5rem}.mosaic,.booking-banner{height:24rem;min-height:24rem}
 .experience-copy{padding:2.5rem}.experience-image{min-height:31rem}
 .pricing-layout{gap:2.5rem}.estimate{padding:2.5rem}
 .visit-layout,.faq-layout{gap:4rem}.contact-banner>div{padding:3.5rem}
}
@media(max-width:991.98px){
 .hero-content{padding-top:10rem}.hero{min-height:44rem}
 .rooms{padding-top:5rem}.room-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.room-grid>.room-card:last-child{grid-column:1/-1;min-height:22rem}.room-card p{max-width:25ch;font-size:1rem}.room-card-copy{left:1.75rem;right:1.75rem;bottom:1.75rem}
 .amenities{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;padding:2.5rem}.amenities>div{min-height:0;border:0;padding:0}.amenities b{font-size:1rem}.amenities small{font-size:.8125rem}
 .gallery-layout{gap:2rem}.mosaic{height:27rem}.booking-banner{height:auto;min-height:23rem}.booking-banner>div{padding:3rem}
 .section-heading{gap:2rem}.experience-copy{padding:2rem}.experience-image{min-height:33rem}
 .pricing-layout{gap:2rem}.rate-options>label{padding:1.5rem 1.25rem}.estimate{padding:2rem}
 .visit-layout,.faq-layout{gap:3rem}.contact-banner>div{padding:3rem}.contact-bottom{gap:1.75rem}
}
@media(max-width:767.98px){
 .hero{min-height:0;padding-bottom:16rem}.hero-content{padding-top:8rem;padding-bottom:4.5rem}.hero-copy{margin-top:1.75rem;line-height:1.65}.hero-actions{margin-top:2rem;gap:1.5rem}
 .rooms{padding-top:4rem;padding-bottom:2rem}.rooms-layout{gap:2rem}.rooms-intro .eyebrow{margin-bottom:1.5rem}.rooms-intro p:not(.eyebrow){margin-top:1.5rem;line-height:1.7}
 .room-grid{grid-template-columns:1fr;gap:1.75rem}.room-card,.room-grid>.room-card:last-child{min-height:23rem;grid-column:auto}.room-card p{font-size:.9375rem;max-width:23ch;line-height:1.6}.room-card-copy{left:1.75rem;right:1.75rem;bottom:1.75rem}.capacity{top:1.75rem;left:1.75rem}
 .amenities{grid-template-columns:1fr 1fr;padding:2rem 1.75rem;gap:2.25rem 1.75rem;margin-top:3rem}.amenities>div>svg{margin-bottom:1rem;width:2rem;height:2rem}.amenities b{font-size:.9375rem;line-height:1.45}.amenities small{font-size:.75rem;line-height:1.7;margin-top:.75rem}.amenities>div:last-child{grid-column:1/-1;gap:1.25rem}.amenities>div:last-child>svg{margin:0}
 .gallery-booking{padding-top:2rem;padding-bottom:4.5rem}.gallery-layout{gap:2rem}.mosaic{height:27rem;gap:1rem}.booking-banner{min-height:0}.booking-banner>div{padding:2.25rem 1.75rem 14rem}.booking-banner p:not(.eyebrow){margin-top:1.5rem;line-height:1.75}.booking-banner .button{margin-top:1.75rem}
 .experience{padding-top:1rem;padding-bottom:4.5rem}.section-heading{margin-bottom:2.5rem}.section-heading>p{margin-top:1.75rem;line-height:1.75}.experience-tabs{gap:.75rem;margin-bottom:1.5rem}.experience-image{min-height:19rem}.experience-copy{padding:2.25rem 1.75rem}.experience-copy>p{margin-top:1.5rem;line-height:1.8}.experience-copy ul{margin-block:1.75rem 2rem}.experience-copy li{margin:.8rem 0;line-height:1.7}
 .pricing{padding-block:4.5rem}.pricing-layout{margin-top:2.5rem;gap:2.5rem}.rate-options{gap:1rem}.rate-options>label{min-height:6rem;padding:1.5rem 1.25rem}.duration-field{margin-top:2.5rem}.duration-heading{margin-bottom:1.75rem}.estimate{padding:2.25rem 1.75rem}.estimate ul{margin-block:2rem;padding-top:1.5rem}.estimate li{margin:1rem 0;line-height:1.65}
 .visit{padding-block:4.5rem}.visit-layout,.faq-layout{gap:3rem}.visit li{padding-block:1.75rem;gap:1.25rem}.visit li p{margin-top:1rem;line-height:1.75}
 .faq{padding-top:1rem;padding-bottom:4.5rem}.faq summary{min-height:5.5rem;padding-block:1.5rem;font-size:1rem}.faq details>p{padding-bottom:1.75rem;line-height:1.8}
 .contacts{padding-top:1rem;padding-bottom:2rem}.contact-banner{min-height:41rem}.contact-banner>div{padding:2.75rem 1.75rem 17rem}.contact-banner p:not(.eyebrow){margin-top:1.75rem;line-height:1.75}.contact-banner .button{margin-top:2rem}.contact-bottom{padding-top:2.5rem;gap:1.75rem 1rem}.footer-inner{padding-top:1.75rem}
}
@media(max-width:359.98px){.room-card-copy{left:1.5rem;right:1.5rem;bottom:1.5rem}.room-card p{max-width:19ch;font-size:.875rem}.capacity{left:1.5rem;top:1.5rem}.amenities{padding:2rem 1.5rem;gap:2rem 1.25rem}.amenities b{font-size:.875rem}.amenities small{font-size:.6875rem}.booking-banner>div,.experience-copy{padding-inline:1.5rem}.contact-banner>div{padding-inline:1.5rem}.contact-bottom{column-gap:.5rem}}
