/* Area71 standalone consultation and thank-you pages.
   Scoped to avoid changing the main landing page. */
.a71-funnel-page { min-height:100vh; background:#f4f8f6; color:#111f2b; }
.a71-funnel-header { background:#fff; border-bottom:1px solid #dce6e4; }
.a71-funnel-header-inner {
  display:flex; align-items:center; justify-content:space-between;
  min-height:84px; gap:16px; padding-block:10px;
}
.a71-funnel-brand { display:inline-flex; align-items:center; flex:0 1 178px; }
.a71-funnel-brand img {
  display:block; width:164px; height:auto; max-width:100%;
  background:#fff; padding:5px; border-radius:10px; object-fit:contain;
}
.a71-funnel-header-actions { display:flex; align-items:center; gap:12px; }
.a71-funnel-back {
  display:inline-flex; align-items:center; min-height:46px; padding:11px 16px;
  border:1px solid #d6e4dd; border-radius:11px; color:#155b4b;
  background:#eef6f1; font-weight:800; font-size:14px; white-space:nowrap;
}
.a71-funnel-back:hover { background:#e1f0e7; border-color:#b9d7ca; }
.a71-funnel-page .a71-lead-section {
  background:transparent; border:0; padding:68px 0 92px;
}
.a71-funnel-page .a71-lead-layout {
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(34px,5vw,80px);
}
.a71-funnel-page .a71-lead-copy { padding-top:32px; }
.a71-funnel-page .a71-lead-card {
  box-shadow:0 20px 60px rgba(16,60,48,.09);
}
.a71-funnel-footer {
  border-top:1px solid #dce6e4; background:rgba(255,255,255,.75);
}
.a71-funnel-footer-inner {
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap;
  gap:12px; padding-block:24px; font-size:13px; color:#52695f;
}
.a71-funnel-footer a { color:#015a49; text-decoration:underline; }
.a71-funnel-noscript {
  margin:16px auto 0; width:min(100% - 52px,1180px);
  padding:12px 16px; background:#fff4d9; color:#633f10; border-radius:9px;
}
/* Branded thank-you screen */
.a71-thanks-main {
  min-height:calc(100vh - 175px); display:grid; place-items:center;
  padding:70px 20px 90px;
}
.a71-thanks-card {
  width:min(100%,650px); padding:clamp(32px,6vw,64px);
  background:#fff; border:1px solid #dbe8e1; border-radius:24px;
  box-shadow:0 24px 70px rgba(16,60,48,.1); text-align:center;
}
.a71-thanks-icon {
  display:grid; place-items:center; width:76px; height:76px; margin:0 auto 24px;
  border-radius:50%; background:#e8f6eb; color:#08765c;
  font-size:41px; font-weight:850;
}
.a71-funnel-kicker {
  display:block; color:#08765c; font-size:12px; font-weight:850;
  letter-spacing:.13em; margin-bottom:18px;
}
.a71-thanks-card h1 {
  font-size:clamp(38px,5vw,58px); margin-bottom:12px;
}
.a71-thanks-card h2 {
  font-size:clamp(20px,3vw,26px); line-height:1.4; margin-bottom:17px;
}
.a71-thanks-card p {
  max-width:490px; margin:0 auto 12px; font-size:16px; line-height:1.75;
}
.a71-thanks-note { font-size:14px !important; }
.a71-thanks-home { margin-top:23px; }
/* Existing navy-charcoal dark mode */
:root[data-theme="dark"] .a71-funnel-page {
  background:#111f2b; color:#eef4f8;
}
:root[data-theme="dark"] .a71-funnel-header {
  background:#152635; border-color:#354c5e;
}
:root[data-theme="dark"] .a71-funnel-page .a71-lead-section {
  background:transparent; border:0;
}
:root[data-theme="dark"] .a71-funnel-back {
  background:#243b4b; border-color:#4c697b; color:#e9f3f8;
}
:root[data-theme="dark"] .a71-funnel-back:hover { background:#304d60; }
:root[data-theme="dark"] .a71-funnel-footer {
  background:#152635; border-color:#354c5e;
}
:root[data-theme="dark"] .a71-funnel-footer-inner { color:#bccdd8; }
:root[data-theme="dark"] .a71-funnel-footer a { color:#c4e1dd; }
:root[data-theme="dark"] .a71-thanks-card {
  background:#1e3141; border-color:#354c5e;
  box-shadow:0 22px 60px rgba(0,0,0,.2);
}
:root[data-theme="dark"] .a71-thanks-icon {
  background:#254b42; color:#cbe86c;
}
:root[data-theme="dark"] .a71-funnel-kicker { color:#cbe86c; }
:root[data-theme="dark"] .a71-thanks-card p { color:#c1d1dc; }
@media(max-width:900px) {
  .a71-funnel-page .a71-lead-layout {
    grid-template-columns:minmax(0,1fr); max-width:710px;
  }
  .a71-funnel-page .a71-lead-copy { padding-top:0; }
  .a71-funnel-page .a71-lead-section { padding:46px 0 70px; }
}
@media(max-width:540px) {
  .a71-funnel-header-inner { min-height:70px; gap:8px; }
  .a71-funnel-brand { flex-basis:146px; }
  .a71-funnel-brand img { width:140px; }
  .a71-funnel-header-actions { gap:8px; }
  .a71-funnel-back { font-size:12px; padding:10px; min-height:43px; }
  .a71-thanks-main { min-height:70vh; padding:38px 16px 56px; }
  .a71-thanks-card { border-radius:18px; }
}
@media(prefers-reduced-motion:reduce) {
  .a71-funnel-page * { scroll-behavior:auto; }
}

/* Align both optional fields on a single label line, with their inputs level.
   The optional annotation remains available to screen readers. */
.a71-funnel-visually-hidden {
  position:absolute !important; width:1px !important; height:1px !important;
  padding:0 !important; margin:-1px !important; overflow:hidden !important;
  clip:rect(0,0,0,0) !important; white-space:nowrap !important;
  border:0 !important;
}
.a71-funnel-consultation label[for="a71-lead-residence"],
.a71-funnel-consultation label[for="a71-lead-call-time"] {
  white-space:nowrap;
}
/* Keep form labels readable rather than squeezing at tablet/mobile widths. */
@media (max-width:700px) {
  .a71-funnel-consultation .a71-lead-fields {
    grid-template-columns:minmax(0,1fr);
  }
}
