.hl-direct{--hl-ink:#173d48;--hl-sea:#0d5266;--hl-gold:#f2c66d;--hl-sand:#e8dfd0;--hl-paper:#fffdf8;--hl-muted:#60727a;background:var(--hl-paper);color:var(--hl-ink);font-family:Inter,Arial,sans-serif;line-height:1.55;margin:0 -1rem;overflow:hidden}.hl-direct *{box-sizing:border-box}.hl-direct h1,.hl-direct h2,.hl-direct h3{font-family:Georgia,'Times New Roman',serif}.hl-header{align-items:center;background:var(--hl-paper);display:flex;justify-content:space-between;min-height:78px;padding:12px clamp(20px,5vw,72px)}.hl-brand{align-items:center;color:var(--hl-ink);display:flex;gap:10px;text-decoration:none}.hl-brand img{height:42px;width:auto}.hl-brand span{display:grid;line-height:1}.hl-brand strong{font-family:Georgia,serif;font-size:19px;font-weight:400}.hl-brand small{color:var(--hl-muted);font-size:10px;margin-top:5px}.hl-header nav{display:flex;gap:20px}.hl-header nav a,.hl-text-link{color:var(--hl-sea);font-size:13px;font-weight:700;text-decoration:none}.hl-hero{background:#123d4b;min-height:570px;position:relative}.hl-hero>img{height:100%;inset:0;object-fit:cover;position:absolute;width:100%}.hl-hero:after{background:linear-gradient(90deg,rgba(5,34,47,.9),rgba(5,34,47,.43));content:'';inset:0;position:absolute}.hl-hero-content{color:white;max-width:760px;padding:clamp(100px,13vw,160px) clamp(24px,8vw,110px);position:relative;z-index:1}.hl-eyebrow{color:var(--hl-gold);font-size:11px;font-weight:800;letter-spacing:.12em;margin:0 0 13px;text-transform:uppercase}.hl-eyebrow-dark{color:#a06e10}.hl-hero h1{font-size:clamp(46px,6vw,76px);letter-spacing:-.05em;line-height:.95;margin:0}.hl-hero h1 span{display:block}.hl-hero-content>p:not(.hl-eyebrow){font-size:18px;line-height:1.65;max-width:610px}.hl-button{background:var(--hl-gold);border:0;border-radius:999px;color:#102b36;display:inline-block;font-size:14px;font-weight:800;padding:14px 22px;text-decoration:none}.hl-section,.hl-booking{padding:clamp(64px,9vw,120px) clamp(20px,6vw,96px)}.hl-heading{margin:0 auto 46px;max-width:760px;text-align:center}.hl-heading h2{font-size:clamp(38px,5vw,66px);letter-spacing:-.05em;line-height:1;margin:0}.hl-heading>p:last-child{color:var(--hl-muted);font-size:16px;line-height:1.75;margin:20px auto 0;max-width:650px}.hl-apartments{background:#f8f5ef}.hl-apartment-grid{display:grid;gap:28px;grid-template-columns:repeat(2,minmax(0,1fr));margin:auto;max-width:1060px}.hl-apartment-card{background:var(--hl-paper);box-shadow:0 14px 40px rgba(23,61,72,.1)}.hl-apartment-card>img{aspect-ratio:16/9;display:block;object-fit:cover;width:100%}.hl-apartment-card>div{padding:28px}.hl-card-label{color:#a06e10;font-size:11px;font-weight:800;letter-spacing:.1em;margin:0;text-transform:uppercase}.hl-apartment-card h3{font-size:32px;margin:7px 0}.hl-apartment-card p:not(.hl-card-label){color:var(--hl-muted);margin:0}.hl-apartment-card ul{display:grid;gap:6px;grid-template-columns:repeat(2,1fr);list-style:none;margin:20px 0;padding:0}.hl-apartment-card li{font-size:13px;font-weight:700}.hl-apartment-card li:before{color:var(--hl-sea);content:'✓ ';}.hl-booking{background:var(--hl-sand)}.hl-booking-grid{align-items:start;display:grid;gap:clamp(22px,3vw,42px);grid-template-columns:minmax(310px,.72fr) minmax(520px,1.28fr);margin:auto;max-width:1380px}.hl-side{display:grid;gap:20px;position:sticky;top:20px}.hl-calendar-card,.hl-price-card{background:var(--hl-paper);box-shadow:0 16px 42px rgba(23,61,72,.1);padding:20px}.hl-switcher{display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:14px}.hl-switcher button{background:transparent;border:1px solid #d2c9b9;color:var(--hl-ink);cursor:pointer;font-family:Georgia,serif;padding:10px 8px}.hl-switcher button.is-active{background:var(--hl-sea);border-color:var(--hl-sea);color:white}.hl-calendar-stage{background:white;height:430px;position:relative}.hl-calendar-stage iframe{border:0;height:100%;inset:0;opacity:0;pointer-events:none;position:absolute;visibility:hidden;width:100%}.hl-calendar-stage iframe.is-active{opacity:1;pointer-events:auto;visibility:visible}.hl-calendar-note{color:var(--hl-muted);font-size:12px;line-height:1.5;margin:14px 0 0}.hl-price-card{border-top:4px solid var(--hl-gold)}.hl-price-kicker{color:#a06e10;font-size:11px;font-weight:800;letter-spacing:.1em;margin:0 0 10px;text-transform:uppercase}.hl-price-content>p{color:var(--hl-muted);font-size:13px;margin:0}.hl-total{align-items:baseline;display:flex;gap:10px;justify-content:space-between}.hl-total strong{color:var(--hl-sea);font-family:Georgia,serif;font-size:31px;font-weight:400}.hl-total span{color:var(--hl-muted);font-size:12px}.hl-breakdown{border-top:1px solid #e4ded2;display:grid;gap:6px;margin-top:10px;padding-top:10px}.hl-breakdown div{display:flex;font-size:12px;justify-content:space-between}.hl-breakdown dt,.hl-breakdown dd{margin:0}.hl-price-footnote{color:var(--hl-muted);font-size:12px;margin:12px 0 0}.hl-form{background:#0d3b4a;box-shadow:0 16px 42px rgba(23,61,72,.14);color:var(--hl-paper);display:grid;gap:15px;padding:clamp(28px,4vw,48px)}.hl-form h3{font-size:31px;margin:0}.hl-form-kicker{color:var(--hl-gold);font-size:11px;font-weight:800;letter-spacing:.12em;margin:0 0 3px;text-transform:uppercase}.hl-form-copy{color:rgba(255,253,248,.74);font-size:14px;margin:8px 0 0}.hl-form label{color:rgba(255,253,248,.9);display:grid;font-size:12px;font-weight:700;gap:6px;letter-spacing:.03em}.hl-form label span,.hl-form summary span{color:rgba(255,253,248,.6);font-size:11px;font-weight:400;letter-spacing:0}.hl-form input,.hl-form select,.hl-form textarea{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:6px;color:white;font:inherit;font-size:14px;min-height:42px;padding:9px 10px;width:100%}.hl-form select option{color:#102b36}.hl-form textarea{resize:vertical}.hl-form-row{display:grid;gap:12px;grid-template-columns:1fr 1fr}.hl-form details{border-top:1px solid rgba(255,255,255,.2);padding-top:15px}.hl-form summary{cursor:pointer;font-size:13px;font-weight:800}.hl-extras{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:15px}.hl-submit{cursor:pointer;width:100%}.hl-form-notice{color:rgba(255,253,248,.62);font-size:11px;margin:0;text-align:center}.hl-gallery{background:#f8f5ef}.hl-gallery-grid{display:grid;gap:14px;grid-auto-rows:minmax(180px,22vw);grid-template-columns:repeat(4,1fr);margin:auto;max-width:1380px}.hl-gallery-grid figure{margin:0;overflow:hidden;position:relative}.hl-gallery-grid figure.hl-feature{grid-column:span 2;grid-row:span 2}.hl-gallery-grid figure.hl-wide{grid-column:span 2}.hl-gallery-grid img{height:100%;object-fit:cover;width:100%}.hl-gallery-grid figure:after{background:linear-gradient(0deg,rgba(7,35,44,.82),transparent 60%);content:'';inset:0;position:absolute}.hl-gallery-grid figcaption{bottom:0;color:white;display:grid;gap:3px;left:0;padding:18px;position:absolute;right:0;z-index:1}.hl-gallery-grid figcaption span{color:var(--hl-gold);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hl-gallery-grid figcaption strong{font-family:Georgia,serif;font-size:18px;font-weight:400;line-height:1.1}.hl-floorplan{align-items:center;background:var(--hl-sand);display:grid;gap:clamp(22px,4vw,56px);grid-template-columns:minmax(170px,.65fr) 1fr;margin:42px auto 0;max-width:940px;padding:24px}.hl-floorplan img{background:white;max-height:250px;object-fit:contain;padding:8px;width:100%}.hl-floorplan h3{font-size:30px;line-height:1;margin:0}.hl-floorplan p:not(.hl-eyebrow){color:var(--hl-muted);margin:10px 0 16px}@media(max-width:850px){.hl-header nav a:not(:last-child){display:none}.hl-apartment-grid,.hl-booking-grid{grid-template-columns:1fr}.hl-side{position:static}.hl-gallery-grid{grid-auto-rows:230px;grid-template-columns:1fr 1fr}.hl-gallery-grid figure.hl-feature,.hl-gallery-grid figure.hl-wide{grid-column:span 2;grid-row:auto}.hl-floorplan{grid-template-columns:1fr}}@media(max-width:520px){.hl-direct{margin:0 -10px}.hl-header{padding:12px 18px}.hl-header nav{display:none}.hl-brand small{display:none}.hl-hero{min-height:520px}.hl-hero-content{padding:100px 24px}.hl-hero h1{font-size:48px}.hl-form-row,.hl-extras{grid-template-columns:1fr}.hl-gallery-grid{grid-template-columns:1fr}.hl-gallery-grid figure.hl-feature,.hl-gallery-grid figure.hl-wide{grid-column:auto}.hl-gallery-grid figure{min-height:230px}}
