.fp-section{position:relative}.fp-wrap{max-width:1280px;margin:0 auto;padding-left:40px;padding-right:40px}.fp-center{max-width:860px;margin-left:auto;margin-right:auto}.fp-eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 18px}.fp-title{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.98;letter-spacing:-.03em;margin:0 0 24px;font-size:clamp(42px,6vw,86px)}.fp-copy{font-size:18px;line-height:1.6;max-width:620px}.fp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;margin-top:28px;border:1px solid currentColor;text-decoration:none;color:inherit;font-weight:600;letter-spacing:.04em;background:rgba(255,255,255,.08);backdrop-filter:blur(4px)}.fp-btn--light{background:#fff;color:#111;border-color:#fff}.fp-btn-row{display:flex;gap:14px;flex-wrap:wrap}.fp-text-box{width:fit-content;max-width:100%;box-sizing:border-box}.fp-hero{min-height:720px;display:flex;align-items:center;background-position:center;background-size:cover;isolation:isolate}.fp-hero:before,.fp-feature:before{content:'';position:absolute;inset:0;background:rgba(0,0,0,var(--fp-overlay,.35));z-index:-1}.fp-hero__content{max-width:700px}.fp-brand{display:grid;grid-template-columns:320px 1fr;gap:80px;align-items:center}.fp-brand__logo img{display:block;width:100%;height:auto}.fp-brand__text .fp-title{font-size:clamp(38px,5vw,68px)}.fp-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fp-gallery-card{overflow:hidden;min-height:460px;background:#eee}.fp-gallery-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.fp-gallery-card:hover img{transform:scale(1.02)}.fp-feature{min-height:620px;display:flex;align-items:center;background-position:center;background-size:cover;isolation:isolate}.fp-feature__content{max-width:620px}.fp-feature .fp-title{font-size:clamp(40px,5vw,72px)}.fp-booking .fp-title{font-size:clamp(40px,5vw,68px)}@media(max-width:900px){.fp-wrap{padding-left:22px;padding-right:22px}.fp-hero{min-height:640px;background-position:62% center}.fp-brand{grid-template-columns:1fr;gap:36px}.fp-brand__logo{max-width:220px;margin:0 auto}.fp-brand__text{text-align:center}.fp-brand__text .fp-copy{margin-left:auto;margin-right:auto}.fp-gallery-grid{grid-template-columns:1fr}.fp-gallery-card{min-height:420px}.fp-feature{min-height:560px}}