.core-hero{background:linear-gradient(135deg,#08245d,#1555b5);color:#fff;padding:62px 0}
.core-hero h1{font-size:clamp(2.3rem,5vw,3.8rem);line-height:1.05;margin:12px 0 18px}
.core-hero p{max-width:800px;color:#eaf3ff;font-size:1.06rem}
.core-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:start}
.core-copy h2,.core-copy h3{color:var(--navy)}
.core-copy p,.core-copy li{color:var(--muted)}
.core-side{position:sticky;top:125px}.core-side .card{margin-bottom:18px}
.core-note{background:#eef7ff;border-left:4px solid var(--blue);padding:18px 20px;border-radius:0 12px 12px 0;margin:24px 0}
.core-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:22px 0}
.core-card{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}
.core-card strong{display:block;color:var(--navy);margin-bottom:5px}
.core-links{display:flex;gap:10px;flex-wrap:wrap}.core-links a{border:1px solid var(--line);border-radius:999px;padding:9px 13px;text-decoration:none;font-weight:750;color:var(--navy);background:#fff}
.contact-box{border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff}
.contact-box a{font-weight:800}
@media(max-width:800px){.core-grid{grid-template-columns:1fr}.core-side{position:static}.core-cards{grid-template-columns:1fr}.core-hero{padding:44px 0}}

/* Ensure sidebar booking CTA labels are always visible */
.core-book-btn{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:auto !important;
  min-width:180px;
  color:#fff !important;
  text-decoration:none;
}
.core-book-btn span{
  display:inline !important;
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
}


/* Contact page postcode map — intentionally shows only the general postcode location */
.contact-map-section{
  padding:0 0 64px;
  background:#fff;
}
.contact-map-heading{
  margin-bottom:18px;
}
.contact-map-heading h2{
  margin:0 0 8px;
  color:var(--navy);
}
.contact-map-heading p{
  margin:0;
  color:var(--muted);
  max-width:760px;
}
.contact-map-frame{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(4,31,78,.06);
}
.contact-map-frame iframe{
  display:block;
  width:100%;
  height:390px;
  border:0;
}
@media(max-width:700px){
  .contact-map-section{padding-bottom:42px}
  .contact-map-frame iframe{height:320px}
}

/* LCDA final mobile refinement */

@media(max-width:700px){
 .core-hero{padding:38px 0 42px}
 .core-hero h1{font-size:clamp(2rem,9vw,2.45rem);line-height:1.08}
 .core-hero p{font-size:1rem;line-height:1.55}
 .core-grid{gap:24px}.core-card,.contact-box{padding:18px}
 .core-book-btn{width:100%!important;min-height:52px}
 .contact-map-frame iframe{height:300px}
}
