.elementor-3701 .elementor-element.elementor-element-5e5ff49{padding:0px 0px 0px 0px;}.elementor-3701 .elementor-element.elementor-element-df9c776 > .elementor-element-populated{padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-c3c48ef *//* ============================================================
   Lux Senior Care â€” Home page stylesheet (modular build)
   Prepared by Driven Digital LLC Â· September 2026

   This is HOME-PAGE-ONLY content: hero slider, offer strip, intro,
   services, how-a-registry-works, coverage, why-us, testimonials,
   resources, the consultation form, and the Google Business Profile
   map. Meant for the homepage's own content area â€” NOT the header
   or footer, which live in their own separate files.

   Everything is scoped under .lux-home-page so this file cannot leak
   styles onto the rest of the site, and the rest of the site's CSS
   cannot silently override this component's own reset either.
   ============================================================ */

/* ============================================================
   Lux Senior Care â€” Homepage stylesheet
   Prepared by Driven Digital LLC Â· September 2026

   Tokens
   ------
   Color   navy #1E2740 (header/footer ground)
           slate #424867 (brand primary, headings)
           harbor #094676 (brand deep blue, links, buttons)
           gold #CCB118 (brand accent â€” offer, slide indicator)
           mist #EEF3F7 (pale sea, alternate section ground)
   Type    Playfair Display â€” headlines
           Raleway â€” body & interface
   Layout  1200px content column, left-aligned throughout.
           The slider is a split panel (navy text / photo), not
           text-over-photo, so copy stays legible at any width.
   ============================================================ */
.lux-home-page {
  --navy: #1E2740;
  --navy-deep: #151C30;
  --slate: #424867;
  --harbor: #094676;
  --harbor-hover: #0B5A97;
  --gold: #CCB118;
  --gold-pale: #FBF6D6;
  --mist: #EEF3F7;
  --mist-deep: #DCE5EE;
  --ink: #1B2233;
  --muted: #5B6478;
  --line: #D8DFE8;
  --white: #FFFFFF;

  --font-display: "Playfair Display", Georgia, "Times New Roman", serif;
  --font-body: "Raleway", "Segoe UI", Helvetica, Arial, sans-serif;

  --measure: 62ch;
  --container: 1200px;
  --gutter: clamp(20px, 4vw, 40px);
  --radius: 6px;
  --shadow: 0 10px 30px rgba(30, 39, 64, 0.12);
}

/* ============================================================
   SELF-HOSTED FONTS
   Raleway + Playfair Display, self-hosted (Latin subset, woff2 only)
   instead of the Google Fonts CDN â€” removes two cross-origin
   round trips (fonts.googleapis.com + fonts.gstatic.com) on every
   visit. font-display: swap avoids invisible-text blocking.
   ============================================================ */
@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://luxseniorcare.com/wp-content/uploads/2026/09/raleway-latin-400-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("https://luxseniorcare.com/wp-content/uploads/2026/09/raleway-latin-500-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("https://luxseniorcare.com/wp-content/uploads/2026/09/raleway-latin-600-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://luxseniorcare.com/wp-content/uploads/2026/09/raleway-latin-700-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("https://luxseniorcare.com/wp-content/uploads/2026/09/playfair-display-latin-600-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://luxseniorcare.com/wp-content/uploads/2026/09/playfair-display-latin-700-normal.woff2") format("woff2");
}

/* ---------- Reset & base ---------- */
.lux-home-page *, .lux-home-page *::before, .lux-home-page *::after { box-sizing: border-box; }
.lux-home-page { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  .lux-home-page { scroll-behavior: auto; }
  .lux-home-page *, .lux-home-page *::before, .lux-home-page *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}
.lux-home-page { overflow-x: clip; }
.lux-home-page {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1.0625rem; /* 17px */
  line-height: 1.6;
  color: var(--ink);
  background: var(--white);
}
.lux-home-page img, .lux-home-page picture { max-width: 100%; display: block; border: 0; }
.lux-home-page img { height: auto; }
.lux-home-page address { font-style: normal; }
.lux-home-page a { color: var(--harbor); text-decoration-line: underline; text-decoration-style: solid; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.lux-home-page a:hover { color: var(--harbor-hover); }
.lux-home-page h1, .lux-home-page h2, .lux-home-page h3, .lux-home-page h4 {
  font-family: var(--font-display);
  color: var(--slate);
  font-weight: 700;
  line-height: 1.15;
  margin: 0 0 0.5em;
  letter-spacing: -0.005em;
}
.lux-home-page h1 { font-size: clamp(2rem, 4.2vw, 2.9rem); }
.lux-home-page h2 { font-size: clamp(1.7rem, 3.2vw, 2.25rem); }
.lux-home-page h3 { font-size: clamp(1.2rem, 2vw, 1.4rem); }
.lux-home-page p { margin: 0 0 1em; }
.lux-home-page p:last-child { margin-bottom: 0; }
.lux-home-page ul, .lux-home-page ol { margin: 0; padding: 0; list-style: none; }
.lux-home-page button { font: inherit; }
.lux-home-page :focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }

.lux-home-page .container {
  width: min(100% - 2 * var(--gutter), var(--container));
  margin-inline: auto;
}
.lux-home-page .lead { font-size: 1.15rem; color: var(--muted); max-width: var(--measure); }
.lux-home-page .prose p { max-width: var(--measure); }

.lux-home-page .skip-link {
  position: absolute; left: 8px; top: -60px;
  background: var(--gold); color: var(--navy); padding: 10px 14px;
  border-radius: var(--radius); z-index: 1000; font-weight: 600;
}
.lux-home-page .skip-link:focus { top: 8px; }

.lux-home-page .visually-hidden {
  position: absolute !important; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}

/* ---------- Buttons ---------- */
.lux-home-page .btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 14px 24px; border-radius: var(--radius);
  font-weight: 600; font-size: 1rem; text-decoration: none;
  border: 2px solid transparent; cursor: pointer; line-height: 1.2;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}
.lux-home-page .btn--primary { background: var(--harbor); color: var(--white); border-color: var(--harbor); }
.lux-home-page .btn--primary:hover { background: var(--harbor-hover); border-color: var(--harbor-hover); color: var(--white); }
.lux-home-page .btn--gold { background: var(--gold); color: var(--navy); border-color: var(--gold); }
.lux-home-page .btn--gold:hover { background: #E0C623; border-color: #E0C623; color: var(--navy); }
.lux-home-page .btn--ghost { background: transparent; color: var(--white); border-color: rgba(255,255,255,0.55); }
.lux-home-page .btn--ghost:hover { border-color: var(--white); color: var(--white); }
.lux-home-page .btn--outline { background: transparent; color: var(--harbor); border-color: var(--harbor); }
.lux-home-page .btn--outline:hover { background: var(--harbor); color: var(--white); }
.lux-home-page .btn svg { width: 18px; height: 18px; flex: none; }

/* ============================================================
   HERO SLIDER
   ============================================================ */
.lux-home-page .hero { background: var(--navy); color: var(--white); }
.lux-home-page .slider { position: relative; }
/* Fixed height so the page doesn't shift vertically as slides of different
   headline/copy length cycle. All slides are absolutely positioned (none dictates
   flow height); the container height is fixed and slide content is centered within it. */
.lux-home-page .slides { position: relative; height: 560px; }
.lux-home-page .slide {
  position: absolute; inset: 0; display: grid; grid-template-columns: 1fr 1fr;
  opacity: 0; visibility: hidden; transition: opacity .55s ease, visibility 0s linear .55s;
}
.lux-home-page .slide.is-active { opacity: 1; visibility: visible; transition: opacity .55s ease, visibility 0s; }
.lux-home-page .slide__text {
  padding: clamp(40px, 6vw, 84px) clamp(24px, 5vw, 72px) clamp(40px, 6vw, 84px) 0;
  display: flex; flex-direction: column; justify-content: center; max-width: 620px;
  overflow: hidden;
}
.lux-home-page .slide__kicker { color: var(--gold); font-weight: 600; font-size: 0.95rem; margin-bottom: 14px; }
.lux-home-page .slide__title {
  color: var(--white); font-size: clamp(2rem, 3.9vw, 3rem); margin-bottom: 18px;
  text-wrap: balance;
}
.lux-home-page .slide__copy { font-size: 1.12rem; color: #D3DAE6; max-width: 52ch; margin-bottom: 28px; line-height: 1.55; }
.lux-home-page .slide__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.lux-home-page .slide__media { position: relative; overflow: hidden; }
.lux-home-page .slide__media picture { height: 100%; }
.lux-home-page .slide__media img { width: 100%; height: 100%; object-fit: cover; }
.lux-home-page .slide__media::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(90deg, var(--navy) 0%, rgba(30,39,64,0) 22%);
}

.lux-home-page .slider__controls {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  border-top: 1px solid rgba(255,255,255,0.12); padding: 14px 0;
}
.lux-home-page .slider__tabs { display: flex; gap: 4px; flex-wrap: wrap; }
.lux-home-page .slider__tab {
  background: none; border: 0; color: #AAB5C8; padding: 8px 12px; cursor: pointer;
  font-weight: 500; font-size: 0.9rem; border-radius: var(--radius);
  box-shadow: inset 0 -2px 0 transparent; transition: color .18s ease, box-shadow .18s ease;
}
.lux-home-page .slider__tab:hover { color: var(--white); }
.lux-home-page .slider__tab[aria-selected="true"] { color: var(--white); box-shadow: inset 0 -2px 0 var(--gold); }
.lux-home-page .slider__arrows { display: flex; gap: 8px; }
.lux-home-page .slider__arrow {
  width: 42px; height: 42px; border-radius: 50%; border: 1.5px solid rgba(255,255,255,0.35);
  background: transparent; color: var(--white); cursor: pointer; display: grid; place-items: center;
}
.lux-home-page .slider__arrow:hover { border-color: var(--white); background: rgba(255,255,255,0.08); }
.lux-home-page .slider__arrow svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.4; }
.lux-home-page .slider__arrow .icon-play { fill: currentColor; stroke: none; }
.lux-home-page .slider__arrows { gap: 8px; }
.lux-home-page .slider__arrows [data-play-toggle] { margin-right: 2px; }

@media (max-width: 900px) {
  .lux-home-page .slides { height: 620px; }
  .lux-home-page .slide { grid-template-columns: 1fr; grid-template-rows: auto 1fr; }
  .lux-home-page .slide__media { order: -1; aspect-ratio: 16 / 10; }
  .lux-home-page .slide__media::after { background: linear-gradient(180deg, rgba(30,39,64,0) 60%, var(--navy) 100%); }
  .lux-home-page .slide__text { padding: 8px 0 24px; max-width: none; justify-content: flex-start; }
  .lux-home-page .slide__title { font-size: clamp(1.75rem, 6.5vw, 2.4rem); }
  .lux-home-page .slider__controls { flex-direction: column; align-items: stretch; }
  .lux-home-page .slider__tabs { justify-content: center; }
  .lux-home-page .slider__tab { font-size: 0.84rem; padding: 6px 9px; }
  .lux-home-page .slider__arrows { justify-content: center; }
}
@media (max-width: 560px) {
  .lux-home-page .slides { height: 660px; }
}

/* ---------- Offer strip ---------- */
.lux-home-page .offer {
  background: var(--gold-pale); border-bottom: 1px solid #EFE3A2;
}
.lux-home-page .offer .container {
  display: flex; align-items: center; justify-content: space-between; gap: 18px;
  padding: 16px 0; flex-wrap: wrap;
}
.lux-home-page .offer__text { display: flex; align-items: center; gap: 14px; font-size: 1.05rem; }
.lux-home-page .offer__text strong { font-family: var(--font-display); font-size: 1.25rem; color: var(--slate); }
.lux-home-page .offer__text svg { width: 28px; height: 28px; fill: var(--gold); flex: none; }
.lux-home-page .offer__terms { color: var(--muted); font-size: 0.95rem; }
.lux-home-page .offer a.btn { padding: 11px 18px; }

/* ============================================================
   SECTIONS
   ============================================================ */
.lux-home-page .section { padding: clamp(56px, 8vw, 96px) 0; }
.lux-home-page .section--mist { background: var(--mist); }
.lux-home-page .section__head { max-width: 760px; margin-bottom: clamp(28px, 4vw, 44px); }
.lux-home-page .section__head p { color: var(--muted); font-size: 1.1rem; }

/* Intro */
.lux-home-page .intro { display: grid; grid-template-columns: 1.15fr 1fr; gap: clamp(32px, 5vw, 72px); align-items: center; }
.lux-home-page .intro__media img { border-radius: var(--radius); box-shadow: var(--shadow); }
.lux-home-page .intro__links { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 22px; font-weight: 600; }
.lux-home-page .intro__links a { text-decoration: none; border-bottom: 2px solid var(--gold); padding-bottom: 2px; }
.lux-home-page .intro__links a:hover { border-color: var(--harbor); }
@media (max-width: 900px) {
  .lux-home-page .intro { grid-template-columns: 1fr; }
  .lux-home-page .intro__media { order: -1; }
}

/* Services */
.lux-home-page .services { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 36px; border-top: 1px solid var(--line); }
.lux-home-page .service { border-bottom: 1px solid var(--line); padding: 22px 0; }
.lux-home-page .service a { text-decoration: none; display: flex; gap: 16px; align-items: flex-start; color: inherit; }
.lux-home-page .service__icon {
  flex: none; width: 60px; height: 60px; border-radius: 16px;
  background: linear-gradient(160deg, #ffffff 0%, var(--mist) 100%);
  border: 1px solid var(--line);
  display: grid; place-items: center; margin-top: 2px;
  box-shadow: 0 1px 0 rgba(30,39,64,0.03);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.lux-home-page .service__icon img { width: auto; height: auto; max-width: 40px; max-height: 40px; display: block; }
.lux-home-page .service__body { min-width: 0; }
.lux-home-page .service h3 { margin: 0 0 5px; font-size: 1.15rem; color: var(--harbor); transition: color .15s ease; }
.lux-home-page .service p { margin: 0; color: var(--muted); font-size: 0.96rem; }
.lux-home-page .service__cta {
  display: inline-flex; align-items: center; gap: 5px; margin-top: 10px;
  font-size: 0.88rem; font-weight: 600; color: var(--harbor);
}
.lux-home-page .service__cta svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s ease; }
.lux-home-page .service a:hover .service__icon { transform: translateY(-2px) scale(1.04); box-shadow: 0 10px 20px rgba(30,39,64,0.16); border-color: var(--gold); }
.lux-home-page .service a:hover h3 { color: var(--slate); }
.lux-home-page .service a:hover .service__cta { color: var(--slate); }
.lux-home-page .service a:hover .service__cta svg { transform: translateX(3px); }
.lux-home-page .service a:focus-visible .service__cta svg { transform: translateX(3px); }
.lux-home-page .services-more { margin-top: 28px; color: var(--muted); font-size: 0.98rem; max-width: 80ch; }
.lux-home-page .services-more a { white-space: nowrap; }
@media (max-width: 900px) { .lux-home-page .services { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .lux-home-page .services { grid-template-columns: 1fr; } }

/* How a registry works â€” a true sequence, so it is numbered */
.lux-home-page .steps { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(28px, 3vw, 44px); counter-reset: step; }
.lux-home-page .step { position: relative; padding-top: 6px; }
.lux-home-page .step::before {
  counter-increment: step; content: counter(step);
  display: grid; place-items: center;
  width: 56px; height: 56px; margin-bottom: 20px;
  background: linear-gradient(150deg, var(--harbor) 0%, var(--navy) 100%);
  color: var(--gold); font-family: var(--font-display); font-weight: 700; font-size: 1.5rem;
  border-radius: 16px;
  box-shadow: 0 6px 16px rgba(9,70,118,0.28), inset 0 0 0 1px rgba(255,255,255,0.06);
}
.lux-home-page .step h3 { margin-top: 0; }
.lux-home-page .step p { color: var(--muted); }
.lux-home-page .registry-note {
  margin-top: clamp(28px, 4vw, 44px); padding: 22px 26px; background: var(--white);
  border-left: 4px solid var(--gold); border-radius: 0 var(--radius) var(--radius) 0;
  display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center;
}
.lux-home-page .registry-note p { margin: 0; max-width: 78ch; }
@media (max-width: 900px) {
  .lux-home-page .steps { grid-template-columns: 1fr; gap: 32px; }
  .lux-home-page .step { display: grid; grid-template-columns: 56px 1fr; column-gap: 20px; align-items: start; padding-top: 0; }
  .lux-home-page .step::before { margin-bottom: 0; grid-row: 1 / span 2; }
  .lux-home-page .step h3 { align-self: center; }
  .lux-home-page .registry-note { grid-template-columns: 1fr; }
}

/* Coverage â€” five counties, city links */
.lux-home-page .coverage {
  position: relative; color: var(--white); overflow: hidden;
  background: var(--navy) url("https://luxseniorcare.com/wp-content/uploads/2026/09/west-palm-beach-aerial-sm.webp") center / cover no-repeat;
}
@media (min-width: 761px) {
  .lux-home-page .coverage { background-image: url("https://luxseniorcare.com/wp-content/uploads/2026/09/west-palm-beach-aerial.webp"); }
}
.lux-home-page .coverage::before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(21,28,48,0.93) 0%, rgba(21,28,48,0.82) 100%);
}
.lux-home-page .coverage .container { position: relative; }
.lux-home-page .coverage h2, .lux-home-page .coverage h3 { color: var(--white); }
.lux-home-page .coverage .section__head p { color: #C9D2E0; }
.lux-home-page .counties { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 28px 32px; }
.lux-home-page .county { border-top: 2px solid var(--gold); padding-top: 16px; }
.lux-home-page .county h3 { font-size: 1.15rem; margin-bottom: 4px; }
.lux-home-page .county__note { color: #AAB5C8; font-size: 0.85rem; margin-bottom: 14px; }
.lux-home-page .county ul { display: flex; flex-wrap: wrap; gap: 8px; }
.lux-home-page .county li a {
  display: inline-block; padding: 7px 12px; border: 1px solid rgba(255,255,255,0.28);
  border-radius: 999px; color: var(--white); text-decoration: none; font-size: 0.93rem; font-weight: 500;
  transition: background-color .15s ease, border-color .15s ease;
}
.lux-home-page .county li a:hover { background: var(--white); color: var(--navy); border-color: var(--white); }
.lux-home-page .county li.is-hub a { border-color: var(--gold); background: rgba(204,177,24,0.15); }
.lux-home-page .coverage__foot { margin-top: 36px; color: #C9D2E0; max-width: 80ch; }
.lux-home-page .coverage__foot a { color: var(--white); }
@media (max-width: 1080px) { .lux-home-page .counties { grid-template-columns: 1fr 1fr; } .lux-home-page .county--pbc { grid-column: 1 / -1; } }
@media (max-width: 600px) { .lux-home-page .counties { grid-template-columns: 1fr; } }

/* Why Lux */
.lux-home-page .why { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 72px); align-items: start; }
.lux-home-page .why__media picture img { border-radius: var(--radius); box-shadow: var(--shadow); }
.lux-home-page .why__logo { width: 260px; max-width: 70%; height: auto; margin: 26px auto 0; display: block; }
.lux-home-page .why__block + .why__block { margin-top: 32px; padding-top: 32px; border-top: 1px solid var(--line); }
.lux-home-page .help-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; margin: 16px 0 20px; }
.lux-home-page .help-list li { padding-left: 24px; position: relative; }
.lux-home-page .help-list li::before {
  content: ""; position: absolute; left: 0; top: 0.55em; width: 12px; height: 12px;
  background: var(--gold); border-radius: 2px; transform: rotate(45deg) scale(0.75);
}
@media (max-width: 900px) { .lux-home-page .why { grid-template-columns: 1fr; } .lux-home-page .why__media { position: static; } }
@media (min-width: 901px) { .lux-home-page .why__media { position: sticky; top: 110px; } }

/* Testimonials */
.lux-home-page .testimonials { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.lux-home-page .quote {
  margin: 0;
  background: var(--white); border-radius: var(--radius); padding: 28px 28px 24px;
  border: 1px solid var(--line); display: flex; flex-direction: column;
}
.lux-home-page .quote__stars { color: var(--gold); letter-spacing: 3px; font-size: 1.05rem; margin-bottom: 12px; }
.lux-home-page .quote blockquote { margin: 0 0 18px; font-size: 1rem; color: var(--ink); flex: 1; }
.lux-home-page .quote blockquote p::before { content: "\201C"; font-family: var(--font-display); color: var(--gold); font-size: 1.4em; line-height: 0; margin-right: 2px; }
.lux-home-page .quote cite { font-style: normal; font-weight: 600; color: var(--slate); font-size: 0.95rem; }
.lux-home-page .quote cite span { display: block; font-weight: 400; color: var(--muted); font-size: 0.85rem; }
.lux-home-page .testimonials__foot { margin-top: 28px; display: flex; gap: 14px 28px; flex-wrap: wrap; align-items: center; color: var(--muted); }
@media (max-width: 900px) { .lux-home-page .testimonials { grid-template-columns: 1fr; } }

/* Resources */
.lux-home-page .resources { display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; border-top: 1px solid var(--line); }
.lux-home-page .resource { border-bottom: 1px solid var(--line); padding: 18px 0; }
.lux-home-page .resource a { text-decoration: none; color: var(--harbor); font-weight: 600; font-size: 1.08rem; font-family: var(--font-display); }
.lux-home-page .resource a:hover { text-decoration: underline; text-decoration-color: var(--gold); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.lux-home-page .resource p { margin: 4px 0 0; color: var(--muted); font-size: 0.95rem; }
.lux-home-page .resources__foot { margin-top: 28px; }
@media (max-width: 720px) { .lux-home-page .resources { grid-template-columns: 1fr; } }

/* Consultation */
.lux-home-page .consult {
  background: var(--navy) url("https://luxseniorcare.com/wp-content/uploads/2026/09/florida-beach-palms-sm.webp") center 40% / cover no-repeat;
  position: relative; color: var(--white);
}
@media (min-width: 761px) {
  .lux-home-page .consult { background-image: url("https://luxseniorcare.com/wp-content/uploads/2026/09/florida-beach-palms.webp"); }
}
.lux-home-page .consult::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(21,28,48,0.82) 0%, rgba(21,28,48,0.66) 55%, rgba(21,28,48,0.4) 100%); }
.lux-home-page .consult .container { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 72px); align-items: start; }
.lux-home-page .consult h2 { color: var(--white); }
.lux-home-page .consult p { color: #D3DAE6; }
.lux-home-page .consult__phone { margin-top: 28px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,0.15); }
.lux-home-page .consult__phone a.tel {
  font-family: var(--font-display); font-size: clamp(1.6rem, 3vw, 2.2rem); color: var(--white); text-decoration: none; font-weight: 700;
}
.lux-home-page .consult__phone a.tel:hover { color: var(--gold); }
.lux-home-page .consult__aux { margin-top: 10px; font-size: 0.95rem; }
.lux-home-page .consult__aux a { color: var(--white); }
.lux-home-page .form {
  background: var(--white); color: var(--ink); border-radius: var(--radius); padding: 30px; box-shadow: var(--shadow);
}
.lux-home-page .form h3 { margin-bottom: 4px; }
.lux-home-page .form p { color: var(--muted); font-size: 0.95rem; margin-bottom: 18px; }
.lux-home-page .form label { display: block; font-weight: 600; font-size: 0.9rem; margin: 12px 0 6px; }
.lux-home-page .form input, .lux-home-page .form textarea, .lux-home-page .form select {
  width: 100%; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius);
  font: inherit; font-size: 1rem; background: #FBFCFD; color: var(--ink);
}
.lux-home-page .form input:focus, .lux-home-page .form textarea:focus, .lux-home-page .form select:focus { border-color: var(--harbor); outline: 3px solid rgba(9,70,118,0.18); outline-offset: 0; }
.lux-home-page .form textarea { min-height: 110px; resize: vertical; }
.lux-home-page .form .btn { width: 100%; justify-content: center; margin-top: 18px; }
.lux-home-page .form__fine { font-size: 0.82rem; color: var(--muted); margin: 12px 0 0; }
@media (max-width: 900px) { .lux-home-page .consult .container { grid-template-columns: 1fr; } }

/* ============================================================
   GOOGLE BUSINESS PROFILE MAP â€” full-bleed, above the footer
   Breaks out of the 1200px content column to span the full page width.
   ============================================================ */
.lux-home-page .gbp-map {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  line-height: 0; /* removes the descender gap under the iframe */
}
.lux-home-page .gbp-map iframe {
  display: block;
  width: 100%;
  height: 420px;
  border: 0;
}
/* Mobile gets a TALLER box, not shorter. Google's embed drops the business-name
   label bubble when the iframe is too short to render pin + label without
   clipping â€” the previous 340px here was actively causing that. Since mobile
   is also narrower (less horizontal room for Google's own UI chrome), it needs
   more height, not less, to keep the label visible. */
@media (max-width: 600px) {
  .lux-home-page .gbp-map iframe { height: 480px; }
}/* End custom CSS */