/* September 2026: readable copy and controls within the existing Viera design. */
.article p,.article li,.rc-content p,.rc-content li{font-size:1rem;line-height:1.75}
.blog-form-card .bfc-header p,.bfc-form label,.lcf-form label,.form-group label{font-size:.875rem;line-height:1.5}
.blog-hero .meta{color:rgba(255,255,255,.78);font-size:.875rem}
.blog-hero .breadcrumb,.blog-hero .breadcrumb a{color:rgba(255,255,255,.82);font-size:.875rem}
.article-buyer-positioning,.article-buyer-bridge{line-height:1.65}
.article a,.rc-content a{overflow-wrap:anywhere}
.blog-form-card,.blog-hero-left{min-width:0}
form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),form select,form textarea{max-width:100%;font-size:1rem}
form button[type=submit],form input[type=submit]{min-height:48px;white-space:normal;line-height:1.4}
.vig-form-status{font-size:.9375rem!important}
.vig-form-status--success{background:#e9f4ed!important;color:#174f35!important}
.vig-form-status--error{background:#fff0ef!important;color:#6f2525!important}
.flinks a{color:rgba(255,255,255,.78);font-size:.875rem}
.fcopy{color:rgba(255,255,255,.65);font-size:.8125rem}
.vig-next-step{margin:1.5rem 0;padding:1rem 1.25rem;border-left:3px solid #b89c6a;background:#f7f4ef;border-radius:0 8px 8px 0}
.vig-next-step p{margin:0 0 .6rem}
.vig-next-step a{color:#18345a;font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media(max-width:768px){
  .blog-hero h1{overflow-wrap:break-word}
  .mobile-sticky-cta a{font-size:.875rem;letter-spacing:0;min-height:48px}
  .mobile-sticky-cta{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}
  body:has(.mobile-sticky-cta){padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .blog-form-card .bfc-header{padding:1.1rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Consistent property intake, including dynamically created forms. */
.vig-intake-form{background:#fff;color:#26364b;min-width:0}
.vig-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.vig-intake-full{grid-column:1/-1}
.vig-intake-field{min-width:0}
.vig-intake-field label{display:block;margin:0 0 .35rem;font-size:.875rem!important;font-weight:600;color:#26364b!important;line-height:1.45;text-transform:none!important;letter-spacing:normal!important}
.vig-intake-field input,.vig-intake-field select,.vig-intake-field textarea{display:block;width:100%;min-height:46px;padding:.7rem .8rem;border:1px solid #a9b2bf;border-radius:6px;background:#fff;color:#15253d;font:inherit;font-size:1rem}
.vig-intake-field textarea{min-height:90px}
.vig-intake-details{margin:.85rem 0;padding:.7rem 0;border-top:1px solid #dbe0e7;border-bottom:1px solid #dbe0e7}
.vig-intake-details summary{cursor:pointer;font-size:.9375rem;font-weight:600;color:#26364b;min-height:32px;line-height:1.6}
.vig-intake-details[open]>.vig-intake-grid{margin-top:.7rem}
.vig-followup-note{font-size:.875rem!important;line-height:1.6!important;color:#39495f!important;margin:.8rem 0!important}
.vig-intake-form button[type=submit]{display:block;width:100%;margin-top:.8rem;min-height:48px;background:#b89c6a;color:#0f1f38;border:1px solid #b89c6a;border-radius:7px;font-size:1rem;letter-spacing:normal;text-transform:none;font-weight:600;cursor:pointer}
.vig-intake-form button[type=submit]:disabled{cursor:default;opacity:.75}
@media(max-width:480px){.vig-intake-grid{grid-template-columns:1fr}}

/* Mobile contact controls share one layout across static and runtime pages. */
.vig-intake-form,.vig-intake-form *{box-sizing:border-box}
.vig-intake-details summary{min-height:44px;display:list-item;padding:.35rem 0}
.vig-intake-form .viera-ai-consent label{font-size:.875rem!important;line-height:1.55!important;cursor:pointer}
.vig-intake-form input[type=checkbox]{flex-shrink:0;width:20px;min-width:20px;height:20px;min-height:20px}
.vig-intake-form button[type=submit]{padding:.8rem 1rem;overflow-wrap:break-word}
@media(max-width:768px){
  .mobile-sticky-cta{box-sizing:border-box;padding:.5rem max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left))!important}
  .mobile-sticky-cta .mobile-sticky-cta-inner{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2.5fr);gap:.4rem;max-width:600px}
  .mobile-sticky-cta .mobile-sticky-cta-inner a{box-sizing:border-box;min-width:0;min-height:48px;padding:.55rem .35rem;font-size:.875rem!important;line-height:1.3;letter-spacing:normal!important;text-transform:none!important;white-space:normal;overflow-wrap:break-word}
  body:has(.mobile-sticky-cta){padding-bottom:calc(var(--vig-sticky-height,80px) + .75rem)!important}
  body:has(form:focus-within) .mobile-sticky-cta,
  body:has(.lead-popup-overlay.is-open) .mobile-sticky-cta,
  body:has(.vig-lead-pop.is-open) .mobile-sticky-cta{visibility:hidden;pointer-events:none}
  .hero-card-header p,.lcf-head p,.blog-form-card .bfc-header p{font-size:1rem!important;line-height:1.6!important}
  .hero-card,.hero-form-card,.lcf-card,.blog-form-card,.vig-intake-form{min-width:0;max-width:100%}
  .lead-popup-overlay,.vig-lead-pop{box-sizing:border-box!important;top:var(--vig-viewport-top,0px)!important;bottom:auto!important;height:var(--vig-viewport-height,100dvh)!important;align-items:center!important;padding:.75rem max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left))!important}
  .lead-popup-overlay .lead-popup-dialog,.vig-lead-pop .vig-lead-pop__dialog{box-sizing:border-box;max-height:100%!important;min-height:0;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  #homepage-lead-popup-content{max-height:none!important;overflow:visible!important}
  .lead-popup-close,.vig-lead-pop__close{width:44px!important;height:44px!important;min-width:44px;min-height:44px}
  .vig-lead-pop .vig-lead-pop__head{padding-right:4.25rem!important}
  .vig-lead-pop .vig-lead-pop__head h2{margin-right:0!important}
  .vig-lead-pop .vig-lead-pop__head>p,.lead-popup-card .hero-card-header>p{font-size:1rem!important;line-height:1.55!important}
  .lead-popup-card .hero-card-header .lead-popup-urgency,.vig-lead-pop .vig-lead-pop__head .vig-lead-pop__urgent{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;font-weight:400!important}
  .vig-lead-pop__dismiss{min-height:44px;font-size:.875rem!important}
}

.vig-intake-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.vig-intake-form select,.vig-intake-form textarea{font-size:1rem!important;min-height:46px}
/* Visual QA: retain menu access and keep popup dismissal above the card. */
.lead-popup-close{z-index:20!important}
@media(max-width:480px){nav .ncta{display:none!important}nav .mobile-menu-btn{flex-shrink:0;min-width:44px;min-height:44px}}
@media(max-width:768px){
 .lead-popup-dialog .lead-popup-close{position:sticky;float:right;top:.75rem;right:auto;margin:.75rem .75rem -56px 0;z-index:20!important}
 .lead-popup-card{z-index:0!important}
 .direct-urgency{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;font-size:1rem!important;line-height:1.6!important}
}
.vig-intake-form .viera-ai-consent{min-width:0;max-width:100%;box-sizing:border-box}
.vig-intake-form .viera-ai-consent input[type=checkbox]{width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;flex:0 0 20px!important;padding:0!important}
.vig-intake-form .viera-ai-consent label{min-width:0;flex:1;overflow-wrap:anywhere}
@media(max-width:768px){.vig-lead-pop__dialog .vig-lead-pop__close{position:sticky;float:right;top:.75rem;right:auto;margin:.75rem .75rem -56px 0;z-index:20}}
.lead-popup-close,.vig-lead-pop__close{background:#10233f!important;color:#fff!important;border:1px solid #c8b17f!important;opacity:1!important}
@media(max-width:768px){.lcf-head p,.hero-card-header p,.bfc-header p{color:rgba(255,255,255,.88)!important}}
@media(max-width:480px){.bfc-form,.lcf-body,.hero-card-form{padding-left:1rem!important;padding-right:1rem!important}}
#county-bottom-form .vig-intake-form{padding:1rem;border-radius:8px}
/* Reassurance headline: the existing serif face, with calm navy/gold styling. */
.direct-stop-today,.vig-reassurance-headline{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:clamp(1.75rem,3vw,2.5rem)!important;font-weight:600!important;line-height:1.2!important;letter-spacing:normal!important;text-transform:none!important;text-wrap:balance;max-width:28ch;margin:.9rem 0 .65rem!important}
.direct-stop-today span,.vig-reassurance-headline span{font:inherit;color:#e7c477}
@media(max-width:480px){.direct-stop-today,.vig-reassurance-headline{font-size:1.75rem!important;line-height:1.22!important}}

/* Focused guides and resource pathways — September 2026 */
.vig-answer-content section{scroll-margin-top:6rem}.vig-answer-content>section{margin:2.25rem 0}.vig-answer-content h2{line-height:1.25}.vig-answer-content li{margin:.6rem 0}.vig-answer-content .cluster-links h2{font-size:1.4rem}.vig-answer-paths{margin:2rem 0;padding:1.5rem;border:1px solid #d8c9b0;border-radius:12px;background:#f6f3ed;color:#17283a}.vig-answer-paths h2{color:#17283a;font-family:Georgia,serif;font-size:1.6rem;line-height:1.25;margin:0 0 1rem}.vig-answer-paths .cluster-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.75rem}.vig-answer-paths a{display:block;padding:.8rem 1rem;color:#17283a;background:white;border:1px solid #dedbd3;border-radius:6px;text-decoration:underline;text-underline-offset:3px;font-size:1rem;line-height:1.5;overflow-wrap:anywhere}.vig-answer-paths a:hover{border-color:#8a6936;background:#fffaf0}.vig-standalone-paths{max-width:1120px;margin:2.5rem auto;width:calc(100% - 2rem)}.vig-comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:2rem 0}.vig-comparison-grid article{padding:1.4rem;background:white;border:1px solid #d8c9b0;border-radius:10px}.vig-sale-options h3{margin:1.5rem 0 .7rem}.vig-sale-options li{margin:.7rem 0;line-height:1.75}.vig-sale-options p{line-height:1.8;margin-bottom:1rem}.vig-answer-content .vig-next-step h2{font-size:1.6rem}.vig-answer-content .vig-next-step a{display:inline-block;min-height:44px;padding:.7rem 1rem;background:#17283a;color:white;border-radius:6px}.vig-answer-content a:focus-visible,.vig-answer-paths a:focus-visible{outline:3px solid #9a6a24;outline-offset:3px}@media(max-width:700px){.vig-comparison-grid{grid-template-columns:1fr}.vig-answer-paths{padding:1.1rem}.vig-answer-content .cluster-grid{grid-template-columns:1fr}.vig-answer-content nav.cluster-links{position:static}}
.vig-answer-content>.cluster-links{position:static;display:block;padding:1.25rem;border:1px solid #d8c9b0;border-radius:10px;background:#f6f3ed;margin:2rem 0}.vig-answer-content>.cluster-links .cluster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.vig-answer-content>.cluster-links a{display:block;padding:.8rem;background:white;border:1px solid #dedbd3;border-radius:6px;line-height:1.5;color:#17283a;overflow-wrap:anywhere}.vig-answer-content>.cluster-links h2{margin:0 0 1rem}.vig-answer-content>.cluster-links h2::before{display:none}@media(max-width:700px){.vig-answer-content>.cluster-links .cluster-grid{grid-template-columns:1fr}}
@media screen and (max-width:768px){body[data-vmx="1"] .blog-hero .meta,body[data-vmx="1"] .blog-hero .breadcrumb{color:#4b5563!important}body[data-vmx="1"] .blog-hero .breadcrumb a{color:#263c55!important}body[data-vmx="1"] .blog-hero .article-buyer-positioning{color:#263c55!important;background:#f7f2e8!important}body[data-vmx="1"] .blog-hero .article-buyer-positioning strong,body[data-vmx="1"] .blog-hero .article-buyer-positioning a{color:#73521f!important}}

.blog-hero .meta a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* Compact heroes and inquiry forms — 20260907-compact1 */
.vig-compact-hero .hero-inner,.vig-compact-hero .hero-grid,.vig-compact-hero .blog-hero-inner{align-items:center!important;gap:clamp(1.5rem,4vw,4rem)!important}
.vig-compact-hero .hero-left,.vig-compact-hero .hero-main,.vig-compact-hero .blog-hero-left{min-width:0;padding-top:0!important}
.vig-compact-hero .hero-sub,.vig-compact-hero .hero-desc,.vig-hero-summary{font-size:1.05rem!important;line-height:1.65!important;max-width:38rem;margin:1rem 0!important}
.vig-compact-hero .hero-sub,.vig-compact-hero .hero-desc,.blog-hero .vig-hero-summary{color:rgba(255,255,255,.9)}
.vig-compact-hero .direct-stop-today{font-size:clamp(1.6rem,2.8vw,2.15rem)!important;line-height:1.2!important;max-width:30rem;margin:1.5rem 0 0!important}
.vig-compact-hero .article-buyer-positioning{padding:.4rem .7rem!important;margin-bottom:.7rem!important;font-size:.8rem!important}
.hero-card-header,.blog-form-card .bfc-header,.hero-form-card .lcf-head,.lead-popup-header{padding:1rem 1.25rem!important}
.hero-card-header h3,.bfc-header h3,.lcf-head h2,.lcf-head h3{font-size:1.5rem!important;line-height:1.2!important;margin:0 0 .3rem!important}
.hero-card-header p,.bfc-header p,.lcf-head p{font-size:.875rem!important;line-height:1.4!important;margin:0!important}
.hero-card-form,.bfc-form,.lcf-body{padding:1rem 1.25rem!important}
.vig-intake-grid{gap:.65rem!important;grid-template-columns:repeat(2,minmax(0,1fr))}
.vig-intake-field input,.vig-intake-field select{padding:.6rem .65rem!important;min-height:44px!important}
.vig-intake-field label{font-size:.8125rem!important;margin-bottom:.25rem!important}
.vig-intake-details{margin:.55rem 0!important;padding:.2rem 0!important}
.vig-intake-details summary{min-height:44px!important;padding:.6rem 0!important;font-size:.875rem!important;line-height:1.4!important}
.vig-followup-note{font-size:.8125rem!important;line-height:1.45!important;margin:.55rem 0!important}
.vig-intake-form .viera-ai-consent{display:flex!important;align-items:flex-start!important;gap:.5rem!important;padding:0!important;margin:.6rem 0!important;border:0!important;background:transparent!important}
.vig-intake-form .viera-ai-consent label{display:block!important;font-size:.8125rem!important;line-height:1.4!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:#384356!important;margin:0!important}
.vig-intake-form .viera-ai-consent input{flex:0 0 18px!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:.1rem 0 0!important;padding:0!important}
.vig-intake-form button[type=submit]{min-height:46px!important;padding:.65rem .8rem!important;margin-top:.65rem!important;font-size:.9375rem!important}
.form-reassurance,.bfc-reassurance,.lcf-reassurance{font-size:.75rem!important;line-height:1.4!important;margin:.6rem 0 .25rem!important;padding:0!important}
.cta-talk,.lcf-alt{font-size:.8125rem!important;line-height:1.4!important;margin:.3rem 0 0!important;text-align:center!important}
.vig-below-hero-answer{margin:0 0 2rem!important}
@media(min-width:769px){.vig-compact-hero .hero-inner,.vig-compact-hero .blog-hero-inner{padding-top:7rem!important;padding-bottom:3rem!important}.vig-compact-hero .hero-card,.vig-compact-hero .hero-form-card,.vig-compact-hero .blog-form-card{width:100%;max-width:430px;justify-self:end}.vig-compact-hero .hero-inner,.vig-compact-hero .blog-hero-inner{grid-template-columns:minmax(0,1fr) minmax(340px,410px)!important}.vig-compact-hero .hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,410px)!important}}
@media(max-width:768px){body[data-vmx="1"] .vig-compact-hero .hero-sub,body[data-vmx="1"] .vig-compact-hero .hero-desc,body[data-vmx="1"] .vig-hero-summary{color:#263c55!important}.vig-compact-hero .hero-inner,.vig-compact-hero .blog-hero-inner,.vig-compact-hero .hero-grid{gap:1.25rem!important}.hero-card-header,.blog-form-card .bfc-header,.hero-form-card .lcf-head{padding:.9rem 1rem!important}.hero-card-form,.bfc-form,.lcf-body{padding:1rem!important}.vig-intake-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hero-card-header p,.bfc-header p,.lcf-head p{font-size:.875rem!important;line-height:1.4!important}}
@media(min-width:769px){body>nav .nlinks a,body>nav .nav-phone{white-space:nowrap}body>nav{align-items:center!important}.vig-compact-hero .hero-inner,.vig-compact-hero .blog-hero-inner{padding-bottom:3rem!important}.vig-lead-pop .vig-lead-pop__head{padding:1rem 1.25rem!important}.vig-lead-pop .vig-lead-pop__head h2{font-size:1.5rem!important;margin-bottom:.3rem!important}}
@media(min-width:769px) and (max-width:1250px){body>nav{padding:.75rem 2rem!important;gap:1rem}body>nav .nav-phone-wrap{display:none!important}body>nav .nlinks{gap:1rem!important}body>nav .nlogo-img{width:150px!important}body>nav .ncta{font-size:.75rem!important;padding:.7rem .8rem!important}}
@media(min-width:769px) and (max-width:1050px){body>nav .nav-right{display:none!important}}
@media(max-width:768px){body[data-vmx="1"] .hero-card,body[data-vmx="1"] .hero-form-card,body[data-vmx="1"] .blog-form-card,body[data-vmx="1"] .lcf-card{padding:0!important;overflow:hidden}body[data-vmx="1"] .bfc-form,body[data-vmx="1"] .hero-card-form,body[data-vmx="1"] .lcf-body{padding:1rem!important}}

/* QA 2026-09-07 — base card layout for hub/index pages that use .rs-grid/.rs-card
   but are NOT the article template. Scoped with :not() so the article template's
   horizontal carousel (assets/css/article-experience.css) is left untouched. */
body:not([data-vig-template="article"]) .rs-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:1.1rem;
  margin:1.25rem 0;
}
body:not([data-vig-template="article"]) .rs-card{
  display:block;
  padding:1.35rem 1.5rem;
  border:1px solid var(--border,rgba(0,0,0,.08));
  border-radius:var(--radius-lg,12px);
  background:var(--white,#fff);
  text-decoration:none;
  color:inherit;
  transition:transform .25s,box-shadow .25s,border-color .25s;
}
body:not([data-vig-template="article"]) .rs-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-md,0 6px 24px rgba(0,0,0,.08));
  border-color:var(--border-gold,rgba(184,156,106,.4));
}
body:not([data-vig-template="article"]) .rs-card h3{
  font-size:.98rem;line-height:1.4;margin:0 0 .35rem;color:var(--navy,#0f1f38);
}
body:not([data-vig-template="article"]) .rs-card p{
  font-size:.85rem;line-height:1.6;margin:0;color:var(--tm,#262636);
}
/* article-batch link list had no styling anywhere */
.article-batch{margin:1.5rem 0}
.article-batch>h2{margin-bottom:.75rem}
.article-batch ul{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.5rem .9rem}
.article-batch li{margin:0}
.article-batch li a{display:block;padding:.6rem .75rem;border-radius:8px;
  border:1px solid var(--border,rgba(0,0,0,.08));text-decoration:none;
  color:var(--navy,#0f1f38);font-size:.88rem;line-height:1.45;transition:background .2s,border-color .2s}
.article-batch li a:hover{background:var(--cream,#f7f4ef);border-color:var(--border-gold,rgba(184,156,106,.4))}

/* QA 2026-09-07 — container width for relocated blocks. These sections were
   moved from after </footer> to before it, so they sit at body top level and
   need the same 1140px containment the .ti-cluster-nav blocks use. */
body:not([data-vig-template="article"])>.article-batch,
body:not([data-vig-template="article"])>.related-situations{
  max-width:1140px;
  margin:2rem auto;
  padding:0 1.5rem;
}
