/* Mobile header and information bar: copied from the approved v23 homepage. */

/* Seamless mobile ticker; the existing desktop bar is preserved. */
.utility .mobile-info-ticker{display:none}
@media(max-width:800px){
  .utility{height:26px;overflow:hidden}
  .utility>.utility-inner{display:none}
  .utility .mobile-info-ticker{display:flex;width:max-content;max-width:none;height:26px;animation:jakobi-mobile-ticker 34s linear infinite}
  .utility .mobile-info-group{display:flex;align-items:center;flex-shrink:0;gap:24px;width:max-content;min-width:100vw;height:26px;padding:0 12px;white-space:nowrap;font-size:12px;line-height:26px;letter-spacing:0}
  .utility .mobile-info-group>*{flex-shrink:0}
  .utility .mobile-info-group .utility-region{display:flex;align-items:center;flex-wrap:nowrap;max-width:none;gap:10px;font-size:12px;line-height:26px}
  .utility .mobile-info-group .utility-district-prefix{display:inline}
  .utility .mobile-info-group .utility-region>i{display:inline;padding:0}
  .utility .mobile-info-group>a,.utility .mobile-info-group>.utility-hours{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
  .utility .mobile-info-group svg{display:block;width:14px;height:14px;flex-shrink:0;color:#edc24d}
  .utility .mobile-info-group>.utility-hours{color:#e1e5df}
  .utility:hover .mobile-info-ticker,.utility:focus-within .mobile-info-ticker{animation-play-state:paused}
  @keyframes jakobi-mobile-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
}
@media(max-width:800px) and (prefers-reduced-motion:reduce){
  .utility{overflow-x:auto;scrollbar-width:none}
  .utility::-webkit-scrollbar{display:none}
  .utility .mobile-info-ticker{animation:none;transform:none}
  .utility .mobile-info-group[aria-hidden="true"]{display:none}
}


/* Mobile contact layout: visual separation from the unchanged logo. */
@media(max-width:800px){
  .header .header-contacts>.header-contact-item{display:flex;min-width:0}
  .header .header-contacts>.header-contact-item>span{min-width:0;overflow-wrap:anywhere}
  .header .header-contacts{
    border-left:1px solid #d9ded6;
    padding:4px 0 4px 12px;
    gap:6px;color:#24312a;align-content:center;
  }
  .header .header-contacts>.header-contact-item{
    align-items:center;gap:7px;min-height:26px;padding:0;
    font-weight:500;line-height:1.3;letter-spacing:0;
  }
  .header .header-contacts>.header-contact-item>svg{
    width:24px;height:24px;margin:0;padding:5px;
    border-radius:7px;background:#f6f1df;color:#826b2b;stroke-width:1.8;
  }
  .header .header-contacts>.header-contact-phone{
    font-size:clamp(12px,3.7vw,14.5px);font-weight:700;
    letter-spacing:-.25px;color:#1c2922;
  }
  .header .header-contacts>.header-contact-email{
    font-size:clamp(10.5px,2.9vw,11.5px);color:#58635d;font-weight:500;
  }
}
@media(max-width:360px){
  .header .header-contacts{padding-left:7px;gap:5px}
  .header .header-contacts>.header-contact-item{gap:5px}
  .header .header-contacts>.header-contact-item>svg{width:20px;height:20px;padding:3px}
}


@media(max-width:800px){
  .header .header-contacts{gap:0;padding-block:2px}
  .header .header-contacts>.header-contact-item{min-height:22px;gap:6px}
  .header .header-contacts>.header-contact-item>svg{width:22px;height:22px;padding:4px;border-radius:6px}
  .header .menu-toggle{
    position:relative;height:44px;width:36px;gap:5px;
    border:1px solid #e7e1ce;border-radius:10px;
    background:#f6f1df;box-shadow:none;color:#66572e;
    transition:background .2s,border-color .2s;
  }
  .header .menu-toggle span{height:1.5px;background:#66572e;border-radius:2px;transition:transform .2s,width .2s}
  .header .menu-toggle span:first-child{width:18px}
  .header .menu-toggle span:last-child{width:12px;align-self:center;margin-left:6px}
  .header .menu-toggle:hover{background:#efe5c5;border-color:#d9c998}
  .header .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.25px) rotate(45deg)}
  .header .menu-toggle[aria-expanded="true"] span:last-child{width:18px;margin-left:0;transform:translateY(-3.25px) rotate(-45deg)}
}
@media(max-width:360px){
  .header .header-contacts>.header-contact-item>svg{width:20px;height:20px;padding:3px}
}
@media(prefers-reduced-motion:reduce){
  .header .menu-toggle,.header .menu-toggle span{transition:none}
}


@media(max-width:800px){
  .header .header-contacts{position:relative;border-left:0}
  .header .header-contacts::before{
    content:"";position:absolute;left:0;top:7px;bottom:7px;width:2px;
    border-radius:50%;pointer-events:none;
    background:linear-gradient(to bottom,transparent,#c7cdc8 24%,#b9c1bb 50%,#c7cdc8 76%,transparent);
    filter:drop-shadow(2px 0 1px #ffffff) drop-shadow(-1px 0 1px #20302512);
  }
  .header .header-contacts>.header-contact-phone,
  .header .header-contacts>.header-contact-email{
    font-size:clamp(10.5px,3.05vw,12px);font-weight:900;
    color:#090d0b;-webkit-text-stroke:.25px currentColor;letter-spacing:-.15px;line-height:1.35;
  }
  .header .header-contacts>.header-contact-item>svg{
    color:#202421;background:linear-gradient(145deg,#ffffff,#edf0ed);
    box-shadow:inset 0 1px 0 #fff,0 1px 2px #18231b16;
    stroke-width:2;
  }
  .header .menu-toggle{
    color:#202421;background:linear-gradient(145deg,#ffffff,#e9ede9);
    border-color:#dce1dc;box-shadow:inset 0 1px 0 #fff,0 2px 4px #18231b12;
  }
  .header .menu-toggle span{background:#202421}
  .header .menu-toggle:hover{background:#e8ece8;border-color:#cbd3cb}
}


@media(max-width:800px){
  .utility .mobile-info-group{gap:0;padding:0}
  .utility .mobile-info-group>.utility-hours,
  .utility .mobile-info-group>a,
  .utility .mobile-info-group .utility-region>span{
    position:relative;padding-inline:15px;
  }
  .utility .mobile-info-group .utility-region{gap:0}
  .utility .mobile-info-group>.utility-hours::after,
  .utility .mobile-info-group>a::after,
  .utility .mobile-info-group .utility-region>span::after{
    content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);
    width:2px;height:16px;border-radius:50%;pointer-events:none;
    background:linear-gradient(to bottom,transparent,#ffffff35 24%,#ffffff70 50%,#ffffff35 76%,transparent);
    filter:drop-shadow(1px 0 1px #0009);
  }
}


@media(max-width:800px){
  .header{top:5px;box-shadow:inset 0 -1px 0 #ffffffd9,inset 0 1px 0 #ffffffd9,0 2px 3px #15221a0d,0 -2px 3px #15221a0d,0 7px 12px -5px #15221a38,0 -7px 12px -5px #15221a38,0 16px 24px -17px #15221a40,0 -16px 24px -17px #15221a40}
  .header::before{content:"";position:absolute;bottom:100%;left:0;right:0;height:5px;background:linear-gradient(180deg,#59675e 0,#9aa69e 1px,#e4ebe6 3px,#ffffff 100%);box-shadow:0 -3px 5px #0a110d40,0 -8px 12px -4px #0a110d66;pointer-events:none}
  .header .brand{filter:drop-shadow(1px 4px 2px #0a110d80) drop-shadow(0 9px 6px #0a110d52)}
  .header .brand>img,.header .brand:hover>img,.header .brand>.brand-motion{filter:none}
}


@media(max-width:800px){
  .header .menu-toggle{width:44px;justify-self:start;box-shadow:inset 0 1px 0 #ffffff,inset 0 -1px 0 #c4cec6,0 3px 5px #15221a26,0 8px 12px -5px #15221a52}
}
@media(max-width:360px){
  .header .menu-toggle{width:40px}
}


@media(max-width:800px){
  .header .header-contacts>.header-contact-phone,
  .header .header-contacts>.header-contact-phone *{text-decoration:none!important;border-bottom:0!important}
  .header .header-contacts>.header-contact-phone [x-apple-data-detectors],
  .header .header-contacts>.header-contact-phone a[x-apple-data-detectors]{color:inherit!important;-webkit-text-fill-color:currentColor!important;text-decoration:none!important}
}


@media (max-width:800px) {
  .utility{position:sticky;top:0;z-index:30}
  .header{top:31px}
  .header .header-contacts{gap:0}
  .header .header-contacts>.header-contact-item{min-height:22px;gap:4px}
  .header .header-contacts>.header-contact-phone span,
  .header .header-contacts>.header-contact-email span{text-shadow:0 2px 3px #20302566}
}
/* The desktop black bar also matches the homepage. */
@media (min-width:801px) {
  .utility>.utility-inner>.utility-region{display:none}
  .utility>.utility-inner>.utility-contacts{margin-left:auto}
}
