/* Belite Skali 1.9 — a consistent editorial scale, spacing and photo system. */
:root{--bs-frame:24px;--bs-arch:160px 160px 24px 24px;--bs-accent:#996a50;--bs-body:#4b5c50}
main h1,main h2{text-wrap:balance}
main :is(.stay-lead,.spa-lead,.restaurant-lead,.offers-hero,.story-hero,.contact-hero,.retreats-hero,.corporate-hero) h1{font-size:clamp(52px,5.5vw,82px)!important;line-height:1.06!important;margin:22px 0 24px!important;letter-spacing:-.035em!important;max-width:100%}
main .spa-lead h1{font-size:clamp(50px,5.15vw,76px)!important}
main .hero h1{font-size:clamp(64px,6.5vw,96px)!important;line-height:1.03!important;letter-spacing:-.035em!important}
main :is(.section-heading,.stay-section-heading) h2,main :is(.spa-intro,.restaurant-intro,.restaurant-garden,.spa-gallery,.stay-intro,.belite-offer-conditions) h2{font-size:clamp(40px,4.5vw,64px)!important;line-height:1.1!important}
main :is(.stay-lead,.spa-lead,.restaurant-lead){min-height:660px!important;padding-top:112px!important;padding-bottom:60px!important;gap:6%!important}
main :is(.stay-lead-copy,.spa-lead-copy,.restaurant-lead-copy)>p{font-size:18px!important;line-height:1.75!important;color:var(--bs-body)!important;max-width:510px}
main :is(.intro,.stay,.restaurant.section,.spa-intro,.spa-gallery,.stay-intro,.stay-real-photos,.stay-choices,.house-options,.restaurant-intro,.restaurant-garden,.offers-intro,.offers-final,.belite-offer-conditions){padding-top:clamp(56px,5.8vw,84px)!important;padding-bottom:clamp(56px,5.8vw,84px)!important}
main :is(.section-heading,.stay-section-heading){margin-bottom:36px!important}
main .eyebrow{font-size:12px!important;font-weight:700!important;line-height:1.6!important;letter-spacing:.095em!important;color:#80624e}
main :is(.offers-hero,.offers-home-teaser) .eyebrow{color:#ead0b4!important}
main :is(.stay-lead-image,.spa-lead-photo,.restaurant-lead-photo,.offers-hero-photo){border-radius:var(--bs-arch)!important;height:510px!important;box-shadow:12px 14px 0 #a89b7c22!important;overflow:hidden!important}
main :is(.stay-lead-image,.spa-lead-photo,.restaurant-lead-photo,.offers-hero-photo)>img{border-radius:0!important}
main .hero-photo{border-radius:220px 220px 24px 24px!important;box-shadow:12px 14px 0 #a89b7c22!important}
main :is(.stay-photo-grid,.spa-gallery-grid,.event-real-gallery-grid,.event-story-grid,.wed-gallery-grid) :is(figure,.gallery-open){border-radius:var(--bs-frame)!important;overflow:hidden}
main :is(.spa-room img,.restaurant-interior-photo,.restaurant-garden-photo,.contact-hero>img,.intro-story>img,.restaurant-images img){border-radius:var(--bs-frame)!important}
main .restaurant-images img:nth-child(2){border-radius:var(--bs-frame)!important}
main :is(.button,.header-book),main .stay-choice-list>article>a,main .house-option>a{display:inline-flex!important;justify-content:center;align-items:center;min-height:50px!important;box-sizing:border-box;padding:14px 24px!important;border-radius:999px!important;font:700 12px/1.5 var(--sans,Manrope,sans-serif)!important;letter-spacing:.035em!important;text-align:center;text-decoration:none!important;transition:background .2s ease,transform .2s ease}
main .button:not(.button-light),main .stay-choice-list>article>a,main .house-option>a{background:#284839!important;color:#fff!important;border:1px solid #284839!important}
main .button-light{background:#f8f3e9!important;color:#284839!important;border:1px solid #f8f3e9!important}
@media(hover:hover){main .button:hover,main .stay-choice-list>article>a:hover{transform:translateY(-2px);filter:brightness(1.07)}}
main .stay-choice-list{gap:24px!important;align-items:stretch!important}
main .stay-choice-list>article{display:flex!important;flex-direction:column!important;background:#fcfaf4!important;border:1px solid #394a3620!important;border-radius:24px!important;padding:24px!important;min-width:0!important;box-shadow:none!important}
main .stay-choice-list>article .belite-room-photo{width:calc(100% + 48px)!important;margin:-24px -24px 24px!important}
main .stay-choice-list>article .belite-room-photo img{width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important;border-radius:24px 24px 0 0!important}
main .stay-choice-list>article .belite-room-photo figcaption{padding:9px 24px 0!important;color:#5e675b!important;font-size:11px!important}
main .stay-choice-list h3{font-size:32px!important;line-height:1.13!important;margin:14px 0!important;min-height:2.26em}
main .stay-choice-list>article>p{font-size:15px!important;line-height:1.75!important;color:#4b5c50!important;margin:0 0 22px!important}
main .stay-choice-list .stay-rate{margin-top:auto!important;padding-top:18px!important;border-top:1px solid #394a3620!important;display:flex!important;align-items:baseline!important;gap:10px!important;flex-wrap:wrap!important}
main .stay-choice-list .stay-rate strong{font:500 43px/1.1 var(--serif,Georgia,serif)!important;color:#284839!important}
main .stay-choice-list .stay-rate span{font-size:12px!important;color:#566350!important}
main .stay-choice-list>article>a{margin-top:20px!important;width:100%!important}
.design-stay-details{margin:0!important;background:#f5f1e8;border-block:1px solid #394a3620}
.design-stay-details>summary{cursor:pointer;padding:24px clamp(24px,7vw,120px);color:#314c3a;font:600 15px/1.6 var(--sans);list-style-position:inside}
.design-stay-details .belite-stay-compare{padding-top:36px!important;padding-bottom:40px!important}
/* A genuine festive photograph gives the current offer a visible place. */
main .offers-home-teaser.design-offer{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7%!important;padding:64px clamp(24px,7vw,120px)!important;min-height:0!important}
main .offers-home-teaser.design-offer>div{max-width:none!important}
main .offers-home-teaser.design-offer h2{font-size:clamp(43px,4.8vw,68px)!important;line-height:1.08!important;margin:18px 0!important}
main .offers-home-teaser.design-offer p{color:#e5e8dd!important;font-size:16px!important}
.design-offer-photo{position:relative;margin:0!important;min-width:0!important;height:390px!important;border-radius:24px!important;overflow:hidden;order:2}
.design-offer-photo img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 58%!important;border-radius:24px!important}
.design-offer-facts{display:flex;gap:7px 20px;flex-wrap:wrap;margin:22px 0 12px;color:#eed8bd;font:600 11px/1.6 var(--sans);letter-spacing:.04em}
.design-offer-rate{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin:14px 0 6px!important;font:400 16px var(--sans);color:#f9f4ea!important}
.design-offer-rate strong{font:400 48px/1.1 var(--serif)!important}
.design-offer-rate small{font:400 12px/1.6 var(--sans);color:#e5e8dd;max-width:180px}
main .offers-home-teaser.design-offer .offers-home-year{display:none!important}
@media(max-width:1000px){main :is(.stay-lead,.spa-lead,.restaurant-lead){min-height:610px!important}main :is(.stay-lead-image,.spa-lead-photo,.restaurant-lead-photo,.offers-hero-photo){height:445px!important}main .stay-choice-list{gap:16px!important}main .stay-choice-list>article{padding:20px!important}main .stay-choice-list>article .belite-room-photo{width:calc(100% + 40px)!important;margin:-20px -20px 22px!important}}
@media(max-width:760px){
 main :is(.stay-lead,.spa-lead,.restaurant-lead){grid-template-columns:minmax(0,1fr)!important;gap:32px!important;padding:110px 24px 52px!important;min-height:0!important}
 main :is(.stay-lead,.spa-lead,.restaurant-lead,.offers-hero,.story-hero,.contact-hero,.retreats-hero,.corporate-hero) h1{font-size:clamp(43px,10.5vw,64px)!important;line-height:1.08!important;margin:18px 0 20px!important}
 main .hero h1{font-size:clamp(49px,11.5vw,72px)!important}
 main :is(.section-heading,.stay-section-heading) h2,main :is(.spa-intro,.restaurant-intro,.restaurant-garden,.spa-gallery,.stay-intro) h2{font-size:clamp(37px,9.4vw,52px)!important}
 main :is(.stay-lead-copy,.spa-lead-copy,.restaurant-lead-copy)>p{font-size:16px!important}
 main :is(.stay-lead-image,.spa-lead-photo,.restaurant-lead-photo,.offers-hero-photo){height:350px!important;border-radius:130px 130px 24px 24px!important;box-shadow:8px 9px 0 #a89b7c22!important}
 main .stay-choice-list{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}main .stay-choice-list h3{min-height:0;font-size:32px!important}
 main .offers-home-teaser.design-offer{grid-template-columns:minmax(0,1fr)!important;gap:28px!important;padding:48px 24px!important}
 main .offers-home-teaser.design-offer h2{font-size:46px!important}
 .design-offer-photo{order:0;height:270px!important}
 main .eyebrow{font-size:11px!important}
 main :is(.stay-lead-actions,.spa-lead-actions,.restaurant-lead-actions){gap:18px!important}
}
@media(max-width:380px){main :is(.stay-lead-image,.spa-lead-photo,.restaurant-lead-photo){height:305px!important}main .spa-lead h1{font-size:42px!important}}
@media(prefers-reduced-motion:reduce){main .button{transition:none!important;transform:none!important}}
