/* ShrineAC template 0.4.2 — compact mobile identity + touch-first root navigation */

/* The desktop header already carries the full brand copy. 0.4.2 restores that
   context on phones without bringing back the former full-size Welcome block. */
.site-mobile-identity{display:none}

@media(max-width:760px){
  .site-mobile-identity{
    box-sizing:border-box;
    display:flex;
    flex:1 0 100%;
    order:3;
    min-width:0;
    min-height:42px;
    margin-top:.18rem;
    padding:.38rem .15rem .46rem;
    flex-direction:column;
    justify-content:center;
    border-top:1px solid rgba(255,255,255,.14);
    color:#fff;
  }
  .site-mobile-identity strong{
    display:block;
    overflow:hidden;
    margin:0;
    font-family:Georgia,Cambria,"Times New Roman",serif;
    font-size:.98rem;
    font-weight:650;
    line-height:1.08;
    letter-spacing:.01em;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .site-mobile-identity small{
    display:block;
    overflow:hidden;
    margin-top:.12rem;
    color:rgba(255,255,255,.76);
    font-size:.55rem;
    font-weight:750;
    line-height:1.12;
    letter-spacing:.075em;
    text-overflow:ellipsis;
    text-transform:uppercase;
    white-space:nowrap;
  }

  /* Root menu items need to be genuine touch rows. Joomla can output a root
     item as an <a> or as a Menu Heading <span>; style both identically. */
  .site-nav>ul>li,
  .site-nav .mod-menu>li{
    min-height:58px;
  }
  .site-nav>ul>li:not(.has-submenu),
  .site-nav .mod-menu>li:not(.has-submenu){
    grid-template-columns:minmax(0,1fr);
  }
  .site-nav>ul>li>a,
  .site-nav .mod-menu>li>a,
  .site-nav>ul>li>.nav-header,
  .site-nav .mod-menu>li>.nav-header,
  .site-nav>ul>li>.mod-menu__heading,
  .site-nav .mod-menu>li>.mod-menu__heading{
    box-sizing:border-box;
    display:flex;
    width:100%;
    min-height:58px;
    align-items:center;
    padding:.78rem .72rem;
    border-bottom:1px solid rgba(255,255,255,.18);
    color:#fff;
    font-size:1rem;
    font-weight:780;
    line-height:1.18;
    letter-spacing:.035em;
    text-transform:uppercase;
  }
  .site-nav>ul>li>.nav-header,
  .site-nav .mod-menu>li>.nav-header,
  .site-nav>ul>li>.mod-menu__heading,
  .site-nav .mod-menu>li>.mod-menu__heading{
    cursor:pointer;
    user-select:none;
  }
  .site-nav>ul>li>.nav-header:focus-visible,
  .site-nav .mod-menu>li>.nav-header:focus-visible,
  .site-nav>ul>li>.mod-menu__heading:focus-visible,
  .site-nav .mod-menu>li>.mod-menu__heading:focus-visible{
    outline:3px solid rgba(195,240,245,.62);
    outline-offset:-3px;
  }
  .site-nav>ul>li.has-submenu>.site-submenu-toggle,
  .site-nav .mod-menu>li.has-submenu>.site-submenu-toggle{
    width:52px;
    height:52px;
    margin-right:.18rem;
  }
  .site-nav>ul>li.has-submenu-heading>.nav-header,
  .site-nav .mod-menu>li.has-submenu-heading>.nav-header,
  .site-nav>ul>li.has-submenu-heading>.mod-menu__heading,
  .site-nav .mod-menu>li.has-submenu-heading>.mod-menu__heading{
    background:rgba(255,255,255,.025);
  }
  .site-nav>ul>li.submenu-open>.nav-header,
  .site-nav .mod-menu>li.submenu-open>.nav-header,
  .site-nav>ul>li.submenu-open>.mod-menu__heading,
  .site-nav .mod-menu>li.submenu-open>.mod-menu__heading{
    background:rgba(255,255,255,.08);
  }

  /* The menu itself follows the identity strip in the mobile flex order. */
  .site-header__navigation{order:4}
}

@media(max-width:420px){
  .site-mobile-identity small{font-size:.51rem;letter-spacing:.055em}
}
