.elementor-3130 .elementor-element.elementor-element-b857188{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-228217c *//* ══════════════════════════════════════════════════════════
   ALL STYLES SCOPED TO .lp-wrap — zero global leakage
══════════════════════════════════════════════════════════ */
.lp-wrap {
  --black:      #0a0a0a;
  --dark:       #111111;
  --mid:        #1c1c1c;
  --white:      #ffffff;
  --cream:      #f8f6f3;
  --gold:       rgb(214,206,206);
  --sage:       #303D38;
  --sage-light: #C2CCC5;
  --muted:      #6b6b6b;
  --border:     rgba(0,0,0,0.08);
  --ff:         "Montserrat", sans-serif;
  --r:          16px;
  --mw:         1200px;
  --ease:       0.3s cubic-bezier(0.4,0,0.2,1);

  font-family: var(--ff);
  color: var(--black);
  background: var(--white);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
}
.lp-wrap *, .lp-wrap *::before, .lp-wrap *::after { box-sizing: border-box; }
.lp-wrap h1,.lp-wrap h2,.lp-wrap h3,.lp-wrap h4 { margin:0; padding:0; font-weight:500; }
.lp-wrap p { margin:0; padding:0; }
.lp-wrap a { text-decoration:none; display:inline-block; }
.lp-wrap img { display:block; max-width:100%; height:auto; }
.lp-wrap ul { list-style:none; margin:0; padding:0; }

.lp-wrap .con { max-width:var(--mw); margin:0 auto; padding:0 40px; }

/* ── shared label ────────────────────────────────────── */
.lp-wrap .eyebrow {
  display:inline-block; font-size:11px; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted); margin-bottom:14px;
}
.lp-wrap .eyebrow--light { color:var(--sage-light); }
.lp-wrap .divider { width:48px; height:1px; background:var(--gold); margin:18px 0; }

/* ── buttons ─────────────────────────────────────────── */
.lp-wrap .btn-dark {
  background:var(--sage); color:var(--sage-light);
  font-family:"Roboto",sans-serif; font-size:14px; font-weight:400;
  border:none; border-radius:12px; padding:13px 30px; cursor:pointer;
  transition:background var(--ease),color var(--ease);
  white-space:nowrap;
}
.lp-wrap .btn-dark:hover { background:var(--gold); color:var(--dark); }

.lp-wrap .btn-outline {
  background:transparent; color:var(--dark);
  font-family:"Roboto",sans-serif; font-size:14px; font-weight:400;
  border:1px solid rgba(0,0,0,0.18); border-radius:12px; padding:13px 30px;
  transition:background var(--ease),color var(--ease),border-color var(--ease);
  white-space:nowrap;
}
.lp-wrap .btn-outline:hover { background:var(--dark); color:var(--white); border-color:var(--dark); }

.lp-wrap .btn-ghost {
  background:transparent; color:var(--sage-light);
  font-family:"Roboto",sans-serif; font-size:14px; font-weight:400;
  border:1px solid var(--sage-light); border-radius:12px; padding:13px 30px;
  transition:opacity var(--ease); white-space:nowrap;
}
.lp-wrap .btn-ghost:hover { opacity:.72; }

/* ══════════════════════════════════════════════════════
   HERO
══════════════════════════════════════════════════════ */
.lp-wrap .hero {
  background:var(--dark); color:var(--white);
  padding:110px 0 96px; position:relative; overflow:hidden;padding-top:200px; margin-top:-135px;
}
.lp-wrap .hero::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(ellipse 80% 70% at 50% -10%, rgba(201,169,110,.07) 0%, transparent 65%);
}
.lp-wrap .hero__inner {
  position:relative; z-index:1;
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;
}
.lp-wrap .hero__heading {
  font-size:clamp(2.6rem,5vw,4.4rem); font-weight:400; font-style:italic;
  line-height:1.08; color:var(--white); margin-bottom:22px;
}
.lp-wrap .hero__heading em { font-style:italic; color:var(--gold); }
.lp-wrap .hero__sub {
  font-size:15px; font-weight:300; line-height:1.8;
  color:rgba(255,255,255,.58); max-width:440px; margin-bottom:36px;
}
.lp-wrap .hero__btns { display:flex; gap:12px; flex-wrap:wrap; }

/* right panel */
.lp-wrap .hero__panel {
  background:rgba(255,255,255,.04); border:1px solid rgba(201,169,110,.22);
  border-radius:var(--r); padding:40px 36px; display:flex; flex-direction:column; gap:24px;
}
.lp-wrap .hero__panel-row { display:flex; align-items:flex-start; gap:14px; }
.lp-wrap .hero__panel-icon {
  width:38px; height:38px; border-radius:10px; flex-shrink:0;
  background:rgba(194,204,197,.1); display:flex; align-items:center; justify-content:center;
}
.lp-wrap .hero__panel-icon svg { width:16px; height:16px; stroke:var(--sage-light); fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.lp-wrap .hero__panel-label { font-size:10px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:rgba(194,204,197,.55); margin-bottom:3px; }
.lp-wrap .hero__panel-val { font-size:14px; font-weight:400; color:var(--white); line-height:1.5; }
.lp-wrap .hero__panel-val a { color:var(--white); }
.lp-wrap .hero__panel-val a:hover { color:var(--gold); }
.lp-wrap .hero__panel-sep { height:1px; background:rgba(201,169,110,.15); }

/* ══════════════════════════════════════════════════════
   LOCATIONS LISTING
══════════════════════════════════════════════════════ */
.lp-wrap .listing { padding:96px 0; background:var(--cream); }
.lp-wrap .listing__hdr { margin-bottom:56px; }
.lp-wrap .listing__hdr h2 { font-size:clamp(1.9rem,3.2vw,3rem); font-weight:500; line-height:1.15; letter-spacing:-.01em; }
.lp-wrap .listing__hdr h2 em { font-style:italic; font-weight:400; }

/* ── location entry ─────────────────────────────────── */
.lp-wrap .loc-entry {
  background:var(--white); border-radius:var(--r);
  border:1px solid var(--border);
  overflow:hidden; margin-bottom:28px;
  transition:box-shadow var(--ease);
}
.lp-wrap .loc-entry:last-child { margin-bottom:0; }
.lp-wrap .loc-entry:hover { box-shadow:0 10px 40px rgba(0,0,0,.08); }

/* two-column layout inside each entry */
.lp-wrap .loc-entry__grid { display:grid; grid-template-columns:420px 1fr; }

/* image col */
.lp-wrap .loc-entry__img-col { position:relative; overflow:hidden; min-height:360px; }
.lp-wrap .loc-entry__img {
  width:100%; height:100%; object-fit:cover; object-position:center top;
  display:block; transition:transform .5s ease;
}
.lp-wrap .loc-entry:hover .loc-entry__img { transform:scale(1.03); }
.lp-wrap .loc-entry__img-overlay {
  position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(135deg, rgba(10,10,10,.45) 0%, transparent 60%);
}
.lp-wrap .loc-entry__badge {
  position:absolute; top:20px; left:20px;
  background:var(--sage); color:var(--sage-light);
  font-size:11px; font-weight:500; letter-spacing:.1em; text-transform:uppercase;
  padding:6px 14px; border-radius:40px;
}
.lp-wrap .loc-entry__rating {
  position:absolute; bottom:20px; left:20px;
  background:rgba(10,10,10,.75); backdrop-filter:blur(8px);
  color:#fff; font-size:13px; font-weight:500;
  padding:7px 14px; border-radius:40px;
  display:flex; align-items:center; gap:6px;
}
.lp-wrap .loc-entry__stars { color:var(--gold); letter-spacing:1px; }

/* content col */
.lp-wrap .loc-entry__content { padding:36px 40px; display:flex; flex-direction:column; }
.lp-wrap .loc-entry__suburb { font-size:11px; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); margin-bottom:8px; }
.lp-wrap .loc-entry__name { font-size:1.65rem; font-weight:500; color:var(--dark); line-height:1.2; margin-bottom:10px; }
.lp-wrap .loc-entry__tagline { font-size:14px; font-weight:300; color:var(--muted); line-height:1.7; margin-bottom:28px; max-width:460px; }

/* details table */
.lp-wrap .loc-details { display:flex; flex-direction:column; gap:0; margin-bottom:28px; flex:1; }
.lp-wrap .loc-row { display:flex; align-items:flex-start; gap:12px; padding:11px 0; border-bottom:1px solid var(--border); }
.lp-wrap .loc-row:first-child { border-top:1px solid var(--border); }
.lp-wrap .loc-row__icon {
  width:30px; height:30px; flex-shrink:0; margin-top:1px;
  background:var(--cream); border-radius:8px;
  display:flex; align-items:center; justify-content:center;
}
.lp-wrap .loc-row__icon svg { width:13px; height:13px; stroke:var(--sage); fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lp-wrap .loc-row__lbl { font-size:10px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:2px; }
.lp-wrap .loc-row__val { font-size:13px; font-weight:400; color:var(--dark); line-height:1.55; }
.lp-wrap .loc-row__val a { color:var(--dark); }
.lp-wrap .loc-row__val a:hover { color:var(--sage); text-decoration:underline; }

/* actions + chips */
.lp-wrap .loc-entry__actions { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:20px; }
.lp-wrap .loc-chips { display:flex; flex-wrap:wrap; gap:7px; padding-top:18px; border-top:1px solid var(--border); }
.lp-wrap .chip {
  font-size:11px; font-weight:500; color:var(--sage);
  background:rgba(48,61,56,.07); border-radius:20px; padding:5px 12px;
  letter-spacing:.02em;
}

/* ══════════════════════════════════════════════════════
   MAP
══════════════════════════════════════════════════════ */
.lp-wrap .map-sec { padding:80px 0; background:var(--white); }
.lp-wrap .map-sec__hdr { margin-bottom:36px; }
.lp-wrap .map-sec__hdr h2 { font-size:clamp(1.6rem,2.8vw,2.4rem); font-weight:500; }
.lp-wrap .map-sec__hdr h2 em { font-style:italic; font-weight:400; }
.lp-wrap .map-frame { border-radius:var(--r); overflow:hidden; border:1px solid var(--border); box-shadow:0 6px 28px rgba(0,0,0,.07); }
.lp-wrap .map-frame iframe { display:block; width:100%; height:440px; border:none; }

/* ══════════════════════════════════════════════════════
   CTA
══════════════════════════════════════════════════════ */
.lp-wrap .cta-sec {
  background:var(--dark); color:var(--white);
  padding:80px 0; text-align:center; position:relative; overflow:hidden;
}
.lp-wrap .cta-sec::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(ellipse 70% 100% at 50% 0%, rgba(201,169,110,.06) 0%, transparent 65%);
}
.lp-wrap .cta-sec__inner { position:relative; z-index:1; }
.lp-wrap .cta-sec__heading { font-size:clamp(2rem,4vw,3.6rem); font-weight:500; line-height:1.1; margin-bottom:16px; }
.lp-wrap .cta-sec__heading em { font-style:italic; font-weight:400; color:var(--gold); }
.lp-wrap .cta-sec__sub { font-size:15px; font-weight:300; color:rgba(255,255,255,.5); max-width:440px; margin:0 auto 36px; line-height:1.75; }
.lp-wrap .cta-sec__btns { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

/* ══════════════════════════════════════════════════════
   RESPONSIVE — TABLET ≤ 960px
══════════════════════════════════════════════════════ */
@media (max-width:960px) {
  .lp-wrap .con { padding:0 28px; }
  .lp-wrap .hero__inner { grid-template-columns:1fr; gap:48px; }
  .lp-wrap .hero { padding:80px 0 72px; }
  .lp-wrap .hero__sub { max-width:100%; }
  .lp-wrap .loc-entry__grid { grid-template-columns:1fr; }
  .lp-wrap .loc-entry__img-col { min-height:280px; }
  .lp-wrap .loc-entry__content { padding:28px 28px 32px; }
  .lp-wrap .listing { padding:72px 0; }
  .lp-wrap .map-sec { padding:60px 0; }
  .lp-wrap .map-frame iframe { height:360px; }
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE — MOBILE ≤ 600px
══════════════════════════════════════════════════════ */
@media (max-width:600px) {
  .lp-wrap .con { padding:0 18px; }
  .lp-wrap .hero { padding:60px 0 56px; padding-top:200px; }
  .lp-wrap .hero__heading { font-size:clamp(2rem,9vw,2.8rem); }
  .lp-wrap .hero__sub { font-size:14px; margin-bottom:28px; }
  .lp-wrap .hero__btns { flex-direction:column; }
  .lp-wrap .hero__btns .btn-dark,
  .lp-wrap .hero__btns .btn-ghost { width:100%; text-align:center; }
  .lp-wrap .hero__panel { padding:28px 22px; gap:18px; }
  .lp-wrap .listing { padding:56px 0; }
  .lp-wrap .listing__hdr { margin-bottom:36px; }
  .lp-wrap .loc-entry__img-col { min-height:220px; }
  .lp-wrap .loc-entry__content { padding:22px 20px 26px; }
  .lp-wrap .loc-entry__name { font-size:1.35rem; }
  .lp-wrap .loc-entry__tagline { font-size:13px; margin-bottom:20px; }
  .lp-wrap .loc-entry__actions { flex-direction:column; }
  .lp-wrap .loc-entry__actions .btn-dark,
  .lp-wrap .loc-entry__actions .btn-outline { width:100%; text-align:center; }
  .lp-wrap .map-sec { padding:48px 0; }
  .lp-wrap .map-frame iframe { height:260px; }
  .lp-wrap .cta-sec { padding:60px 0; }
  .lp-wrap .cta-sec__heading { font-size:clamp(1.8rem,8vw,2.4rem); }
  .lp-wrap .cta-sec__btns { flex-direction:column; align-items:center; }
  .lp-wrap .cta-sec__btns .btn-dark,
  .lp-wrap .cta-sec__btns .btn-ghost { width:100%; max-width:300px; text-align:center; }
  .lp-wrap .divider { margin:14px 0; }
  .lp-wrap .eyebrow { margin-bottom:10px; }
}/* End custom CSS */