/* ATREZZO / McBride — shared Home-approved chrome for all 10 pages.
   A single announcement and mobile callbar, not page-specific visual variants. */
.site-announcement {
  display:block;
  background:#307953;
  color:#fff;
  font:700 12px/1.4 Manrope,system-ui,sans-serif;
  letter-spacing:.02em;
}
.site-announcement .announcement-inner {
  width:min(1250px,calc(100% - 80px));
  margin-inline:auto;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
}
.site-announcement .announcement-inner>span {
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.site-announcement .announcement-dot {
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#E1F7E6;
  box-shadow:0 0 0 3px rgba(255,255,255,.16);
  flex:0 0 7px;
}
.site-announcement .announcement-inner>a {
  color:#fff;
  white-space:nowrap;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
}
.site-announcement .announcement-inner>a span {margin-left:6px}
.site-announcement a:focus-visible,.mobile-callbar a:focus-visible{
  outline:3px solid #B5E7C5;outline-offset:3px
}
.mobile-callbar{display:none}
@media(max-width:1023px){
  .site-announcement .announcement-inner{width:calc(100% - 52px)}
}
@media(max-width:640px){
  body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
  .site-announcement{font-size:10px}
  .site-announcement .announcement-inner{
    width:calc(100% - 36px);
    min-height:36px;
    justify-content:center;
    text-align:center;
  }
  .site-announcement .announcement-inner>a{display:none}
  .mobile-callbar{
    display:flex;
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:50;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    background:#fff;
    box-shadow:0 -6px 30px rgba(16,44,33,.20);
    border-top:1px solid #d9e0d8;
    padding:9px 17px calc(9px + env(safe-area-inset-bottom,0px));
    font-family:Manrope,system-ui,sans-serif;
  }
  .mobile-callbar>div{display:flex;flex-direction:column;gap:4px;min-width:0}
  .mobile-callbar span{font-weight:800;font-size:9px;color:#518066;letter-spacing:.06em;line-height:1.35}
  .mobile-callbar strong{font-weight:800;font-size:13px;color:#173f35;line-height:1.35}
  .mobile-callbar a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:none;
    gap:9px;
    min-height:49px;
    padding:11px 20px;
    background:#173f35;
    color:#fff;
    border-radius:4px;
    font-size:12px;
    font-weight:800;
    line-height:1.3;
    text-decoration:none;
    white-space:nowrap;
  }
  .mobile-callbar a:hover{background:#205742}
  .mobile-callbar svg{
    width:15px;height:15px;fill:none;
    stroke:currentColor;stroke-width:1.8;
    stroke-linecap:round;stroke-linejoin:round;
  }
}
@media(max-width:375px){
  .mobile-callbar a{padding-inline:12px}
  .mobile-callbar strong{font-size:12px}
}
