:root{--ink:#153f4b;--sand:#f7f3eb;--deep:#093440;--coral:#e67e54;--line:#d9d1c4;--muted:#527079}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.55 "DM Sans",sans-serif}.site-header{height:78px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:var(--sand);position:sticky;top:0;z-index:4}.brand{font-weight:700;letter-spacing:.16em;font-size:15px;color:var(--ink);text-decoration:none}.brand em{font-family:"Playfair Display",serif;font-weight:600;letter-spacing:.02em}nav{display:flex;gap:28px}nav a,.text-link,footer a{color:var(--ink);text-decoration:none;font-size:14px}.button{background:var(--coral);color:#fff;text-decoration:none;border-radius:100px;display:inline-flex;gap:20px;align-items:center;padding:15px 23px;font-size:14px;font-weight:700;box-shadow:0 7px 20px #0002}.button span{font-size:19px;line-height:0}.button-small{padding:10px 17px;font-size:13px;box-shadow:none}.hero{min-height:calc(100vh - 78px);position:relative;isolation:isolate;display:grid;align-items:end;padding:clamp(40px,9vw,120px) clamp(22px,8vw,132px);color:white;overflow:hidden}.hero>img,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-shade{background:linear-gradient(90deg,#071d23bb 0%,#071d233d 66%,transparent);z-index:-1}.hero-copy{max-width:660px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:12px;margin:0 0 16px}.hero h1,h2{font-family:"Playfair Display",serif;line-height:1.03;letter-spacing:-.035em;font-size:clamp(42px,6vw,84px);margin:0}.hero h1 em{font-weight:600}.intro{font-size:19px;max-width:490px;margin:22px 0 32px}.hero-credit{position:absolute;right:clamp(22px,5vw,76px);bottom:24px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.promise{padding:105px clamp(22px,12vw,180px);text-align:center}.promise h2{font-size:clamp(34px,4.2vw,58px);max-width:850px;margin:auto}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:64px;padding-top:26px}.facts div{display:flex;flex-direction:column}.facts strong{font:600 34px/1 "Playfair Display",serif}.facts span{font-size:13px;color:var(--muted);margin-top:7px}.split{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;background:#e9e3d8}.split.reverse{grid-template-columns:.9fr 1.1fr;background:var(--deep);color:white}.image-wrap{min-height:500px}.image-wrap img{width:100%;height:100%;object-fit:cover;display:block}.copy-block{padding:clamp(48px,8vw,125px) clamp(30px,7vw,105px);align-self:center}.copy-block h2,.section-head h2,.booking h2{font-size:clamp(36px,4.3vw,62px)}.copy-block>p:not(.eyebrow){font-size:17px;max-width:490px;margin:24px 0}.copy-block ul{list-style:none;padding:0;margin:29px 0 0;border-top:1px solid #c4bbae}.copy-block li{border-bottom:1px solid #c4bbae;padding:12px 0;font-size:14px}.micro{font-weight:700;letter-spacing:.05em;font-size:13px!important;text-transform:uppercase}.gallery{padding:110px clamp(22px,7vw,105px)}.section-head{max-width:700px;margin:0 auto 55px;text-align:center}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 260px;gap:16px}.gallery-grid img{width:100%;height:100%;object-fit:cover}.gallery-grid .tall{grid-row:span 2}.booking{padding:95px clamp(22px,10vw,150px);display:grid;grid-template-columns:1.2fr .8fr;gap:40px;background:var(--coral);color:white;align-items:center}.booking p{max-width:540px}.booking-actions{display:flex;flex-direction:column;align-items:flex-start;gap:21px}.button.light{background:var(--sand);color:var(--ink)}.booking .text-link{color:#fff;border-bottom:1px solid #ffffff99}.fine-print{grid-column:1/-1;font-size:12px;opacity:.8;margin:0}footer{padding:33px clamp(22px,5vw,76px);display:flex;gap:24px;justify-content:space-between;align-items:center;font-size:13px}footer span{color:var(--muted)}@media(max-width:720px){nav{display:none}.site-header{height:66px}.hero{min-height:640px;padding-bottom:85px}.hero h1{font-size:52px}.hero-credit{left:22px;right:auto}.facts{grid-template-columns:repeat(2,1fr);gap:30px}.split,.split.reverse,.booking{grid-template-columns:1fr}.split.reverse .copy-block{order:2}.image-wrap{min-height:350px}.gallery{padding:75px 22px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 230px 230px}.gallery-grid .tall{grid-row:span 2}.gallery-grid img:last-child{grid-column:span 2}.booking{padding:68px 22px}footer{flex-direction:column;align-items:flex-start;gap:10px}}
