/* Accent navy, warm paper and gold highlights. */
.ahi-paths,.ahi-paths-end,.ahi-path-dock,.ahi-path-dialog {--ahi-navy:#142b46;--ahi-gold:#f5c654;color:var(--ahi-navy);font-family:inherit}
.ahi-paths {padding:clamp(32px,5vw,66px) 6%;background:#f7f5ef;border-bottom:1px solid #e4dfd4}
.ahi-paths-inner {max-width:1180px;margin:auto}
.ahi-paths-kicker {margin:0 0 9px;font-size:12px;font-weight:700;letter-spacing:.13em;color:#465969}
.ahi-paths h2,.ahi-paths-end h2,.ahi-path-dialog h2 {color:var(--ahi-navy);font-family:Georgia,serif;font-weight:400;letter-spacing:-.025em;font-size:clamp(27px,4vw,42px);line-height:1.13;margin:0 0 10px}
.ahi-paths-intro,.ahi-paths-end p:not(.ahi-paths-kicker) {margin:0;max-width:62ch;font-size:17px;line-height:1.5}
.ahi-paths-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 16px}
#main a.ahi-path-card {position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:19px 42px 20px 19px;background:#fff;color:var(--ahi-navy);border:1px solid #ddd9cf;border-radius:10px;text-decoration:none;line-height:1.42;box-shadow:0 2px 0 #182c3e09}
#main a.ahi-path-card-primary {background:var(--ahi-navy);color:#fff;border-color:var(--ahi-navy)}
#main a.ahi-path-card:hover {box-shadow:0 4px 14px #142b4618}
.ahi-path-card strong {font-size:22px;line-height:1.2}
.ahi-path-step {font-size:11px;font-weight:700;letter-spacing:.09em}
.ahi-path-card-primary .ahi-path-step,.ahi-path-card-primary .ahi-path-arrow {color:var(--ahi-gold)}
#main a.ahi-path-card:not(.ahi-path-card-primary):hover {border-color:#8294a4}
.ahi-path-arrow {position:absolute;right:16px;top:16px;font-size:21px;font-weight:700}
.ahi-path-picker {margin:0;scroll-margin-top:120px;border:1px solid #ddd9cf;border-radius:10px;background:#fff;padding:15px 19px}
.ahi-path-picker label {display:block;font-weight:700;margin-bottom:8px}
.ahi-path-picker-fields {display:flex;flex-wrap:wrap;gap:8px}
.ahi-path-picker select {flex:1;min-width:175px;min-height:44px;padding:8px 12px;border:1px solid #8299ac;border-radius:6px;background:#fff;color:#142b46;font:inherit}
a.ahi-path-button,button.ahi-path-button {display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 16px;border:0;border-radius:6px;background:#142b46;color:#fff!important;font:inherit;font-weight:700;line-height:1.2;text-align:center;text-decoration:none!important;cursor:pointer}
a.ahi-path-button:hover,button.ahi-path-button:hover {background:#27445f}
.ahi-paths :focus-visible,.ahi-paths-end :focus-visible,.ahi-path-dock :focus-visible,.ahi-path-dialog :focus-visible {outline:3px solid #bd7900;outline-offset:3px}
.ahi-paths-end {display:flex;align-items:center;justify-content:space-between;gap:22px;padding:clamp(24px,4vw,48px) 6%;background:#f7f5ef;border-top:1px solid #ddd9cf}
.ahi-paths-end h2 {font-size:clamp(24px,3vw,34px)}
.ahi-paths-end-actions {display:flex;flex-direction:column;align-items:flex-start;gap:10px;flex-shrink:0}
.ahi-paths-end-actions>a:not(.ahi-path-button) {color:#17496b;text-decoration:underline}
.ahi-path-dock {display:none}
.ahi-path-dialog {max-width:min(420px,calc(100vw - 36px));width:100%;padding:25px;border:1px solid #cad9e4;border-radius:12px;background:#fff}
.ahi-path-dialog::backdrop {background:#142b469c}
.ahi-path-dialog h2 {font-size:26px;padding-right:30px}
.ahi-path-dialog a {display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;align-items:center;min-height:48px;padding:10px 12px;margin-top:9px;border-radius:6px;background:#edf4fa;color:#153b5a;font-weight:700}
.ahi-path-close {position:absolute;right:10px;top:10px;width:40px;height:40px;border:0;border-radius:7px;background:#edf4fa;color:#142b46;font-size:26px;cursor:pointer}
.ahi-measure {position:fixed;top:clamp(98px,13vh,132px);right:env(safe-area-inset-right,0px);bottom:clamp(76px,12vh,114px);z-index:90;width:26px;cursor:ns-resize;touch-action:none;user-select:none}
.ahi-measure::before {content:"";position:absolute;inset:0 9px 0 auto;width:5px;border-radius:4px;background:repeating-linear-gradient(to bottom,#7a94a9 0 1px,#e0eaf1 1px 9px)}
.ahi-measure-thumb {position:absolute;top:0;right:0;width:25px;height:40px;transform:translateY(var(--ahi-scroll-y,0px));filter:drop-shadow(0 2px 2px #142b4640);pointer-events:none}
.ahi-measure:focus-visible {outline:2px solid #006ca4;outline-offset:-2px;border-radius:7px}
.ahi-path-dock[hidden],.ahi-measure[hidden],.ahi-path-button[hidden] {display:none!important}
@media (pointer:fine) and (forced-colors:none) {
  html.ahi-measure-active {scrollbar-width:none}
  html.ahi-measure-active::-webkit-scrollbar {display:none}
}
@media (max-width:760px) {
  .ahi-paths-grid {grid-template-columns:1fr;gap:8px;margin-top:17px}
  #main a.ahi-path-card {padding:13px 37px 14px 14px;gap:4px}
  .ahi-path-card strong {font-size:20px}
  .ahi-path-picker-fields {flex-direction:column}
  .ahi-path-picker select {width:100%}
  .ahi-paths-end {align-items:flex-start;flex-direction:column;gap:14px}
  .ahi-path-dock:not([hidden]) {position:fixed;bottom:0;left:0;right:0;z-index:95;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:8px;padding:7px max(12px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#fff;border-top:1px solid #cad9e4;box-shadow:0 -3px 16px #142b4621}
  .ahi-path-dock a.ahi-path-call {display:grid;place-items:center;min-height:44px;border:1px solid #8da4b8;border-radius:6px;font-weight:700;color:#142b46;text-decoration:none}
  html.ahi-dock-ready #call-now-button,html.ahi-dock-ready body #wrapper #main .ahi-avada.me-mobile-actions {display:none!important}
}
@media (pointer:coarse) {
  .ahi-measure {width:22px;opacity:0;pointer-events:none;transition:opacity .2s}
  .ahi-measure::before {right:8px;width:3px}
  .ahi-measure-thumb {right:0;width:21px;height:40px}
  .ahi-measure-thumb svg {width:21px}
  .ahi-measure.ahi-measure-visible,.ahi-measure:focus-visible {opacity:1;pointer-events:auto}
}
@media (max-height:430px) {.ahi-measure {top:70px;bottom:64px}}
@media (forced-colors:active),print {.ahi-measure,.ahi-path-dock {display:none!important}}
@media (prefers-reduced-motion:reduce) {.ahi-measure {transition:none}}
[data-ahi-install]:not([hidden]) {margin:18px 6% 0}
.ahi-project-selected {padding:9px 12px;border-left:4px solid #006ca4;background:#eef4f8;color:#142b46;margin-bottom:12px}

/* Reserve the full height of adjacent service directories on narrow screens. */
@media (max-width:760px) {
  #main .fusion-fullwidth.awb-cv-auto:has(.ahi-directory-links) {
    content-visibility:visible;
    contain-intrinsic-size:none;
  }
}


.ahi-path-step{display:flex;align-items:center;gap:8px}
.ahi-path-number{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eef1f3;color:#142b46;font-size:16px;font-weight:800;letter-spacing:0}
.ahi-path-card-primary .ahi-path-number{background:var(--ahi-gold)}

/* Keep the estimate form checkmark visible. */
#frm_form_9_container #frm_field_88_container .frm_checkbox label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:38px}
#frm_form_9_container #frm_field_88_container .frm_checkbox label::before,
#frm_form_9_container #frm_field_88_container .frm_checkbox label::after{content:none!important}
#frm_form_9_container #frm_field_88_container input[type=checkbox]{
  appearance:auto!important;-webkit-appearance:checkbox!important;accent-color:#00658d;
  display:inline-block!important;position:static!important;opacity:1!important;visibility:visible!important;
  width:20px!important;height:20px!important;margin:0!important;flex:none;clip:auto!important;clip-path:none!important;
  transform:none!important;pointer-events:auto!important
}


.ahi-path-dialog a span{font-size:19px}
.fusion-mobile-menu-icons a.ahi-nav-estimate{
  display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;
  min-height:44px;padding:0 12px;margin:0 9px 0 0!important;
  background:#f5c654;color:#142b46!important;border:1px solid #bc902d;
  border-radius:7px;font-size:14px!important;font-weight:800;line-height:1!important;text-decoration:none
}
.fusion-mobile-menu-icons a.ahi-nav-estimate:focus-visible{outline:2px solid #00648d;outline-offset:2px}
@media(max-width:430px){
  .fusion-header .fusion-logo{max-width:calc(100% - 140px)!important}
  .fusion-header .fusion-logo .fusion-logo-link img{max-width:min(100%,225px)!important;height:auto!important}
}
/* Estimate cards keep their light surface while hovered or focused. */
/* Keep the two mobile controls in the logo row, including at 320px. */
.fusion-header .fusion-row:has(>.fusion-mobile-menu-icons .ahi-nav-estimate){position:relative}
.fusion-header .fusion-mobile-menu-icons:has(.ahi-nav-estimate){
  position:absolute!important;right:0;top:var(--ahi-nav-center,26px);transform:translateY(-50%);z-index:2;
  width:max-content!important;height:44px!important;margin:0!important;white-space:nowrap
}
.fusion-header .fusion-mobile-menu-icons:has(.ahi-nav-estimate) a{
  float:none!important;vertical-align:middle
}
.fusion-header .fusion-mobile-menu-icons:has(.ahi-nav-estimate) a.awb-icon-bars{
  display:inline-flex!important;align-items:center;justify-content:center;
  min-height:44px;min-width:36px;margin:0!important
}

.fusion-header .fusion-mobile-menu-icons a.awb-icon-bars[aria-expanded="true"]{
  background:#e7f3fa;border-radius:7px;color:#123958!important
}
.fusion-header .fusion-mobile-menu-icons a.awb-icon-bars[aria-expanded="true"]::before{
  content:"";width:20px;height:20px;
  background:
    linear-gradient(45deg,transparent 45%,currentColor 46% 54%,transparent 55%),
    linear-gradient(-45deg,transparent 45%,currentColor 46% 54%,transparent 55%)
}
.fusion-header .fusion-mobile-menu-icons a.awb-icon-bars:focus-visible{
  outline:2px solid #00648d;outline-offset:2px
}

/* Give collection links and photo frames the same visual rhythm. */
html body.page-id-455 #wrapper #main .ahi-avada.ad-designed.av-gallery-index{
  background:#edf7fb!important;padding-block:clamp(16px,3vw,34px)!important
}
html body.page-id-455 #wrapper #main .ahi-avada.ad-designed.av-gallery-index a.av-cta{
  display:flex!important;align-items:center;justify-content:space-between;gap:7px;height:100%;
  padding:11px clamp(9px,1.4vw,17px)!important;line-height:1.3!important;
  background:#fff!important;border:1px solid #a9c9d9!important;border-bottom:3px solid #1a7ca7!important;
  border-radius:9px!important;box-shadow:0 2px 5px #142b4612!important
}
html body.page-id-455 #wrapper #main .ahi-avada.ad-designed.av-gallery-index a.av-cta::after{
  content:"";flex:none;width:8px;height:8px;margin:0 2px 4px;
  border:solid #00648d;border-width:0 2px 2px 0;transform:rotate(45deg)
}
html body.page-id-455 #wrapper #main .ahi-avada.ad-designed.av-gallery-index a.av-cta:is(:hover,:focus-visible){
  background:#d9effb!important;border-color:#087ba9!important
}
html body.page-id-455 #wrapper #main .ahi-avada.ad-designed.av-gallery-index .fusion-button-text{
  color:#123958!important;overflow-wrap:anywhere!important
}
body.page-id-455 #main .ad-gallery-collection{scroll-margin-top:20px}
html body.page-id-455 #wrapper #main .ad-gallery-collection .av-gallery .fusion-gallery-image{
  display:block;width:100%;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#dfe8ec
}
html body.page-id-455 #wrapper #main .ad-gallery-collection .av-gallery .fusion-gallery-image>a{
  display:block;width:100%;height:100%
}
html body.page-id-455 #wrapper #main .ahi-avada.ad-designed.ad-gallery-collection .av-gallery .fusion-gallery-image img{
  display:block;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0!important
}

html body.page-id-459 #wrapper #main .ahi-avada.ad-crosslinks .fusion-text p{font-size:0;line-height:0}
html body.page-id-459 #wrapper #main .ahi-avada.ad-crosslinks.ad-paper .fusion-text a:not(.fusion-button){
  display:inline-flex;align-items:center;min-height:44px;margin:0 8px 8px 0;padding:6px 12px;
  background:#eaf5fa;border:1px solid #bad2e0;border-radius:7px;
  color:#10446a!important;font-size:15px;font-weight:700;line-height:1.35;text-decoration:none
}
html body.page-id-459 #wrapper #main .ahi-avada.ad-crosslinks.ad-paper .fusion-text a:not(.fusion-button):is(:hover,:focus-visible){
  background:#d4ebf8;border-color:#2585af;text-decoration:underline
}

/* Make the checklist offer tangible, with compact alternative paths. */
.ahi-paths-offer{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:34px;margin-bottom:24px}
html body #wrapper #main .ahi-paths-offer h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.8vw,44px);line-height:1.12;max-width:15ch;margin:0 0 18px;color:#142b46}
html body #wrapper #main .ahi-paths-offer .ahi-paths-intro{font-size:17px;line-height:1.65;max-width:47ch}
.ahi-plan-benefits{display:flex;gap:9px 18px;flex-wrap:wrap;list-style:none;padding:0;margin:22px 0 0}
html body #wrapper #main .ahi-plan-benefits li{font-size:12px;font-weight:700;line-height:1.6;color:#344f63;padding:0}
.ahi-plan-benefits li::before{content:"✓";margin-right:6px;color:#8c6514;font-weight:800}
.ahi-plan-preview{margin:0;max-width:520px;justify-self:center;width:100%}
.ahi-plan-preview a{display:block;border-radius:10px}
.ahi-plan-preview img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
html body #wrapper #main .ahi-plan-preview figcaption{font-size:11px;color:#526372;line-height:1.5;text-align:center;margin-top:8px}
html body #wrapper #main .ahi-path-choices-label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#526372;margin:0 0 12px}
.ahi-paths .ahi-paths-grid{margin-top:0;margin-bottom:22px}
html body #wrapper #main .ahi-paths .ahi-path-card strong{font-size:19px;line-height:1.25}
html body #wrapper #main .ahi-path-card>span:not(.ahi-path-step):not(.ahi-path-arrow){font-size:15px;line-height:1.5}
html body #wrapper #main .ahi-path-step{font-size:10px;line-height:1.5;letter-spacing:.08em}
.ahi-paths .ahi-path-number{width:26px;height:26px;font-size:14px}
.ahi-paths .ahi-path-card-planner{border-color:#baa270}
html body #wrapper #main .ahi-paths .ahi-plan>p:not(.ahi-paths-kicker){font-size:16px;line-height:1.65;max-width:60ch}
html body #wrapper #main .ahi-route-faq-heading h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(27px,3vw,36px);line-height:1.2;color:#142d44;margin:0 0 16px}
html body #wrapper #main .ahi-route-faq-heading>p{font-size:16px;line-height:1.7;color:#243e50}
html body #wrapper #main .ahi-route-accordions .panel-title a{color:#142d44;font-size:17px;line-height:1.4}
html body #wrapper #main .ahi-route-accordions .panel-body p{color:#243e50;font-size:16px;line-height:1.7}
@media(max-width:800px){
 .ahi-paths-offer{grid-template-columns:1fr;gap:16px;margin-bottom:26px}
 .ahi-plan-preview{max-width:360px}
 html body #wrapper #main .ahi-paths-offer h2{max-width:20ch}
 .ahi-plan-benefits{margin-top:16px;gap:8px 15px}
 .ahi-paths .ahi-paths-grid{gap:10px}
 html body #wrapper #main .ahi-paths a.ahi-path-card{padding:15px 40px 16px 16px;gap:7px}
}

html body #wrapper #main .ahi-paths .ahi-plan>h2{font-size:clamp(26px,2.5vw,34px);line-height:1.15;margin:0 0 14px}


/* Keep the final install link above the mobile action dock on every page. */
@media(max-width:800px){
 html body.fusion-body{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))!important}
}
