/* ===== Header ===== */
.site-header__cta{background:#12141b;color:#fff;border-color:#12141b}

/* ===== Home: hero headline over the video ===== */
.legacy-home__video-wrap{position:relative}
.legacy-home__video-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.42));pointer-events:none}
.legacy-home__hero-text{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem;pointer-events:none}
.legacy-home__hero-text h1{margin:0;color:#fff;font-family:"Roboto Serif",Georgia,"Times New Roman",serif;font-weight:300;font-size:clamp(1.8rem,5vw,4rem);line-height:1.15;letter-spacing:.02em;text-shadow:0 2px 18px rgba(0,0,0,.45)}

/* ===== Home: intro links ===== */
.legacy-home__intro p a{text-decoration:underline;text-underline-offset:3px}

/* ===== Footer: social band across the full width (logo hidden) ===== */
.legacy-footer-top__brand{display:none}
.legacy-footer-top{grid-template-columns:1fr}
.legacy-footer-top__social{align-items:center;text-align:center;min-height:0;padding:3.5rem 1.5rem}
.legacy-footer-top__kicker{justify-content:center}
.legacy-footer-top__icons{justify-content:center}

/* ===== Footer: address, phone and copyright; old copyright bar hidden ===== */
.legacy-footer-bottom{display:none}
.lux-footer-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;padding:1.1rem 1.5rem 1.4rem;background:#e2dece;color:#4f5660;border-top:1px solid rgba(158,152,127,.35);font-size:.8rem;letter-spacing:.04em}
.lux-footer-contact a{color:#12141b;text-decoration:underline;text-underline-offset:3px}
.lux-footer-contact__legal{flex-basis:100%;margin:0;text-align:center;color:#9e987f}

/* Mayflower – styling for editor-built pages (guides, articles).
   Applies only to pages using the default template (page.php), so the
   hand-coded Home, About, Portfolio, SkyRidge and Contact pages are untouched. */

body.page-template-default .lux-page-section { padding-top: 3.5rem; padding-bottom: 4.5rem; }
body.page-template-default .lux-article { max-width: 46rem; margin-inline: auto; }

/* Title */
body.page-template-default .lux-article h1 {
  font-family: "Roboto Serif", Georgia, "Times New Roman", serif;
  font-weight: 300; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.15;
  color: #0c0c0c; letter-spacing: -0.01em; margin: 0 0 1.25rem;
}

/* Body text */
body.page-template-default .lux-entry-content { font-size: 1.0625rem; line-height: 1.75; color: #4f5660; }
body.page-template-default .lux-entry-content > * + * { margin-top: 1.25rem; }
body.page-template-default .lux-entry-content p.lead,
body.page-template-default .lux-entry-content > p:first-child { font-size: 1.25rem; line-height: 1.6; color: #2f343a; }

/* Headings */
body.page-template-default .lux-entry-content h2 {
  font-family: "Roboto Serif", Georgia, serif; font-weight: 300;
  font-size: clamp(1.6rem, 2.6vw, 2.1rem); line-height: 1.25; color: #0c0c0c;
  margin-top: 3rem; margin-bottom: 0.75rem;
}
body.page-template-default .lux-entry-content h3 {
  font-family: Montserrat, "Segoe UI", sans-serif; font-weight: 600;
  font-size: 0.85rem; letter-spacing: 0.12em; text-transform: uppercase;
  color: #0c0c0c; margin-top: 2.25rem; margin-bottom: 0.5rem;
}

/* Links */
body.page-template-default .lux-entry-content a:not(.wp-block-button__link) {
  color: #0c0c0c; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px;
}
body.page-template-default .lux-entry-content a:not(.wp-block-button__link):hover { color: #6b6a5e; }

/* Lists */
body.page-template-default .lux-entry-content ul,
body.page-template-default .lux-entry-content ol { padding-left: 1.25rem; }
body.page-template-default .lux-entry-content li + li { margin-top: 0.4rem; }

/* Images: allow wide images to break out of the text column */
body.page-template-default .lux-entry-content .wp-block-image { margin: 2.5rem 0; }
body.page-template-default .lux-entry-content .wp-block-image img { width: 100%; height: auto; display: block; }
body.page-template-default .lux-entry-content .wp-block-image.alignwide { margin-inline: calc(50% - min(36rem, 48vw)); }
body.page-template-default .lux-entry-content .wp-element-caption,
body.page-template-default .lux-entry-content figcaption { font-size: 0.8rem; color: #7a7f86; margin-top: 0.6rem; text-align: left; }

/* Quotes */
body.page-template-default .lux-entry-content blockquote {
  margin: 2.5rem 0; padding: 0.25rem 0 0.25rem 1.5rem; border-left: 1px solid #0c0c0c;
}
body.page-template-default .lux-entry-content blockquote p {
  font-family: "Roboto Serif", Georgia, serif; font-weight: 300; font-size: 1.4rem; line-height: 1.5; color: #0c0c0c;
}
body.page-template-default .lux-entry-content blockquote cite {
  display: block; margin-top: 0.75rem; font-style: normal; font-size: 0.75rem;
  letter-spacing: 0.12em; text-transform: uppercase; color: #7a7f86;
}

/* Tables */
body.page-template-default .lux-entry-content .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
body.page-template-default .lux-entry-content .wp-block-table th,
body.page-template-default .lux-entry-content .wp-block-table td {
  border: 0; border-bottom: 1px solid #dcd8cb; padding: 0.75rem 0.5rem; text-align: left;
}
body.page-template-default .lux-entry-content .wp-block-table thead th {
  border-bottom: 1px solid #0c0c0c; font-size: 0.75rem; letter-spacing: 0.12em; text-transform: uppercase; color: #0c0c0c;
}

/* Buttons – match the header "Start a conversation" button */
body.page-template-default .lux-entry-content .wp-block-buttons { margin-top: 2.5rem; }
body.page-template-default .lux-entry-content .wp-block-button__link {
  background: #0c0c0c; color: #fff; border-radius: 0; padding: 1rem 1.75rem;
  font-size: 0.75rem; letter-spacing: 0.12em; text-transform: uppercase; text-decoration: none;
}
body.page-template-default .lux-entry-content .wp-block-button__link:hover { background: #2f343a; }

/* Mobile */
@media (max-width: 640px) {
  body.page-template-default .lux-page-section { padding-top: 2rem; padding-bottom: 3rem; }
  body.page-template-default .lux-entry-content { font-size: 1rem; }
  body.page-template-default .lux-entry-content blockquote p { font-size: 1.2rem; }
}

/* Legibility + mobile tables (modern-web-guidance: improve-text-layout-and-legibility, responsive-table) */
body.page-template-default .lux-article h1,body.page-template-default .lux-entry-content :is(h2,h3,h4,blockquote p){text-wrap:balance}
body.page-template-default .lux-entry-content :is(p,li,figcaption){text-wrap:pretty}
body.page-template-default .lux-entry-content .wp-block-table{overflow-x:auto;max-inline-size:100%}
body.page-template-default .lux-entry-content .wp-block-table caption{caption-side:top;text-align:left;font-size:.8rem;color:#7a7f86;padding-bottom:.5rem}
body.page-template-default .lux-entry-content .wp-block-table tbody th{font-weight:600;color:#0c0c0c;text-transform:none;letter-spacing:0}
.lux-footer-contact{display:none}

  .legacy-footer-top__icons a { color: #575e68; }
  .legacy-footer-top__icons a:hover { color: #0c0c0c; }