
html,body{margin:0;background:#fff;font-family:Arial,Helvetica,sans-serif}
.page-wrap{width:100%;display:flex;justify-content:center;background:#fff}
.stage{position:relative;width:min(100vw,1536px);aspect-ratio:1536/1024;background:url('assets/approved-homepage.png') center top/100% 100% no-repeat;overflow:hidden}
.hotspot{position:absolute;display:block;cursor:pointer;background:rgba(0,0,0,0)}
.hotspot:focus{outline:3px solid rgba(0,170,170,.45);outline-offset:2px}
.note{max-width:1100px;margin:18px auto 50px;padding:0 20px;color:#475569;font-size:14px}

.legal-disclosure{
  max-width:1100px;
  margin:18px auto 32px;
  padding:0 24px;
  color:#475569;
  font-size:12px;
  line-height:1.55;
  text-align:center;
}
.legal-disclosure strong{color:#17304f}


/* Dropdown navigation overlays for the approved live-design image.
   The background artwork is unchanged; these menus add behavior only. */
.nav-group{
  position:absolute;
  z-index:30;
}
.nav-group > .hotspot{
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
}
.dropdown-menu{
  position:absolute;
  left:0;
  top:calc(100% + 2px);
  min-width:220px;
  padding:8px 0;
  background:#fff;
  border:1px solid rgba(20,155,155,.22);
  border-radius:8px;
  box-shadow:0 12px 28px rgba(15,35,55,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s;
  z-index:50;
}
.dropdown-menu.dropdown-right{
  left:auto;
  right:0;
}
.dropdown-menu a{
  display:block;
  padding:10px 14px;
  color:#17304f;
  text-decoration:none;
  font-size:14px;
  line-height:1.25;
  white-space:nowrap;
  background:#fff;
}
.dropdown-menu a:hover,
.dropdown-menu a:focus{
  color:#0b777d;
  background:#eefafa;
  outline:none;
}
.nav-group:hover .dropdown-menu,
.nav-group:focus-within .dropdown-menu,
.nav-group.open .dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
@media (max-width:760px){
  .dropdown-menu{
    min-width:190px;
  }
  .dropdown-menu a{
    font-size:13px;
    padding:9px 12px;
  }
}

.migrated-content{max-width:900px;margin:36px auto;padding:0 24px;color:#334155;font:16px/1.7 Arial,Helvetica,sans-serif}
.migrated-content h2,.migrated-content h3{color:#17304f}
.migrated-content h2{font-size:28px;margin:0 0 14px}
.migrated-content h3{font-size:20px;margin:28px 0 8px}
.migrated-content ul{padding-left:22px}
.migrated-content [id]{scroll-margin-top:24px}

.home-testimonial-cta{
  max-width:1000px;
  margin:30px auto 8px;
  padding:32px 24px;
  text-align:center;
  background:#f4fbfb;
  border:1px solid #dbeeee;
  border-radius:14px;
}
.home-testimonial-cta h2{
  margin:0 0 10px;
  color:#17304f;
  font:700 28px/1.2 Arial,Helvetica,sans-serif;
}
.home-testimonial-cta p{
  margin:0 auto 18px;
  max-width:680px;
  color:#475569;
  font:16px/1.6 Arial,Helvetica,sans-serif;
}
.home-testimonial-cta a{
  display:inline-block;
  padding:12px 20px;
  border-radius:8px;
  background:#40aaa9;
  color:#fff;
  text-decoration:none;
  font:700 15px/1 Arial,Helvetica,sans-serif;
}
.home-testimonial-cta a:hover,
.home-testimonial-cta a:focus{background:#278c8b}

.home-review-actions{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  margin:0 0 14px;
}
.yelp-status-note{
  margin:14px auto 0 !important;
  max-width:760px !important;
  font-size:13px !important;
  line-height:1.5 !important;
  color:#64748b !important;
}
@media (max-width:640px){
  .home-review-actions{flex-direction:column;align-items:stretch}
  .home-review-actions a{width:100%;box-sizing:border-box}
}
