/* LUMBOSO v1.4.8 — final responsive hero stack, two-row mobile search tabs, readable app menu, circular avatar */
:root{
  --lum-v148-gold:#b37d32;
  --lum-v148-paper:#f7f0e6;
  --lum-v148-ink:#202720;
}

/* --------------------------------------------------------------------------
   ONE HEADER SYSTEM EVERYWHERE
   -------------------------------------------------------------------------- */
@media(min-width:1181px){
  body .lum-v146-header{
    top:18px!important;
  }
  body.admin-bar .lum-v146-header{
    top:50px!important;
  }
  body .lum-v146-header .lum-shell,
  body.lumboso-front .lum-v146-header .lum-shell{
    width:min(1500px,calc(100% - 36px))!important;
    max-width:1500px!important;
  }
  body .lum-v146-header .lum-header-inner,
  body.lumboso-front .lum-v146-header .lum-header-inner{
    height:62px!important;
    min-height:62px!important;
    border-radius:999px!important;
  }
}

@media(max-width:1180px){
  body .lum-v146-header,
  body.lumboso-front .lum-v146-header{
    position:sticky!important;
    left:auto!important;
    right:auto!important;
    top:0!important;
    width:100%!important;
    z-index:1100!important;
  }
  body.admin-bar .lum-v146-header{top:32px!important}
  body .lum-v146-header .lum-shell,
  body.lumboso-front .lum-v146-header .lum-shell{
    width:calc(100% - 20px)!important;
    max-width:none!important;
  }
  body .lum-v146-header .lum-header-inner,
  body.lumboso-front .lum-v146-header .lum-header-inner{
    height:64px!important;
    min-height:64px!important;
    border-radius:23px!important;
    background:linear-gradient(180deg,rgba(255,251,245,.985),rgba(247,240,230,.985))!important;
  }
  body .lum-v146-header .lum-brand,
  body.lumboso-front .lum-v146-header .lum-brand{
    width:122px!important;
    min-width:122px!important;
  }
  body .lum-v146-menu-toggle{
    left:12px!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    gap:5px!important;
    border-color:rgba(179,125,50,.20)!important;
    background:rgba(255,253,249,.90)!important;
  }
  body .lum-v146-menu-toggle span:first-child{width:16px!important;height:1.5px!important}
  body .lum-v146-menu-toggle span:last-child{width:12px!important;height:1.5px!important}
  body .lum-v146-header .lum-v11-user,
  body .lum-v146-mobile-account{
    right:12px!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    min-height:38px!important;
    max-height:38px!important;
  }
  body .lum-v146-header .lum-v11-avatar{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    min-height:38px!important;
    max-height:38px!important;
  }
  body .lum-v146-mobile-account .lum-icon{width:19px!important;height:19px!important}
}

@media(max-width:700px){
  body .lum-v146-header,
  body.lumboso-front .lum-v146-header{
    padding-top:max(6px,env(safe-area-inset-top))!important;
    padding-bottom:6px!important;
    background:var(--lum-v148-paper)!important;
  }
  body .lum-v146-header .lum-shell,
  body.lumboso-front .lum-v146-header .lum-shell{width:100%!important}
  body .lum-v146-header .lum-header-inner,
  body.lumboso-front .lum-v146-header .lum-header-inner{
    height:64px!important;
    min-height:64px!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }
  body .lum-v146-menu-toggle{left:13px!important}
  body .lum-v146-header .lum-v11-user,
  body .lum-v146-mobile-account{right:13px!important}
}

/* Hard circular crop for both header and drawer avatars. */
body .lum-v146-header .lum-v11-user{
  aspect-ratio:1/1!important;
  border-radius:50%!important;
}
body .lum-v146-header .lum-v11-avatar{
  box-sizing:border-box!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  clip-path:circle(49.8% at 50% 50%)!important;
  object-fit:cover!important;
  object-position:center!important;
}
body .lum-v146-profile-avatar{
  box-sizing:border-box!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  min-height:52px!important;
  max-height:52px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
}
body .lum-v146-profile-avatar img{
  box-sizing:border-box!important;
  display:block!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  min-height:52px!important;
  max-height:52px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  clip-path:circle(49.8% at 50% 50%)!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* --------------------------------------------------------------------------
   APP MENU — restore readable proportions, same menu on every page
   -------------------------------------------------------------------------- */
@media(max-width:1180px){
  body .lum-v146-menu-panel{
    width:min(420px,94vw)!important;
    border-radius:0 30px 30px 0!important;
  }
  body .lum-v146-menu-head{
    min-height:78px!important;
    padding:max(16px,env(safe-area-inset-top)) 18px 12px 20px!important;
  }
  body .lum-v146-menu-brand{width:148px!important}
  body .lum-v146-menu-close{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
  }
  body .lum-v146-profile{
    grid-template-columns:52px minmax(0,1fr) 18px!important;
    gap:13px!important;
    margin:14px 15px 5px!important;
    padding:12px!important;
    border-radius:20px!important;
  }
  body .lum-v146-profile-copy strong{
    font-size:20px!important;
    line-height:1.08!important;
  }
  body .lum-v146-profile-copy small{
    margin-top:4px!important;
    font-size:10px!important;
    line-height:1.25!important;
  }
  body .lum-v146-profile>b{font-size:23px!important}
  body .lum-v146-menu-scroll{
    padding:7px 15px 20px!important;
  }
  body .lum-v146-menu-section{padding:16px 0 3px!important}
  body .lum-v146-menu-label{
    margin:0 5px 10px!important;
    font-size:9px!important;
    line-height:1.2!important;
    letter-spacing:.17em!important;
  }
  body .lum-v146-quick-grid{
    gap:9px!important;
  }
  body .lum-v146-quick-grid a{
    grid-template-columns:31px minmax(0,1fr)!important;
    gap:10px!important;
    min-height:64px!important;
    padding:11px 12px!important;
    border-radius:17px!important;
    font-size:12px!important;
    line-height:1.15!important;
    font-weight:600!important;
  }
  body .lum-v146-quick-grid a .lum-icon{
    width:21px!important;
    height:21px!important;
  }
  body .lum-v146-link-list{gap:4px!important}
  body .lum-v146-link-list>a{
    min-height:50px!important;
    padding:6px 11px!important;
    border-radius:14px!important;
  }
  body .lum-v146-link-list>a>span{gap:12px!important}
  body .lum-v146-link-list .lum-icon{
    width:20px!important;
    height:20px!important;
    flex-basis:20px!important;
  }
  body .lum-v146-link-list strong{
    font-size:12.5px!important;
    line-height:1.2!important;
    font-weight:550!important;
  }
  body .lum-v146-link-list b{font-size:21px!important}
  body .lum-v146-menu-footer{
    gap:9px!important;
    padding:13px 15px calc(13px + env(safe-area-inset-bottom))!important;
  }
  body .lum-v146-menu-primary,
  body .lum-v146-menu-secondary{
    height:48px!important;
    border-radius:15px!important;
    font-size:11.5px!important;
  }
}
@media(max-width:390px){
  body .lum-v146-menu-panel{width:100vw!important;border-radius:0!important}
  body .lum-v146-menu-head{padding-left:16px!important;padding-right:14px!important}
  body .lum-v146-profile{margin-left:12px!important;margin-right:12px!important}
  body .lum-v146-menu-scroll{padding-left:12px!important;padding-right:12px!important}
  body .lum-v146-menu-footer{padding-left:12px!important;padding-right:12px!important}
}

/* --------------------------------------------------------------------------
   HOME HERO — script + weather use one right guide and never overlap
   -------------------------------------------------------------------------- */
@media(min-width:1181px){
  body.lumboso-front .lum-v11-hero-script{
    right:calc((100vw - 100%)/-2 + 44px)!important;
    top:15.2%!important;
    width:min(470px,34vw)!important;
    text-align:right!important;
    font-size:clamp(28px,2.15vw,38px)!important;
    line-height:1.06!important;
    white-space:normal!important;
  }
  body.lumboso-front .lum-v136-live-panel{
    left:auto!important;
    right:calc((100vw - 100%)/-2 + 44px)!important;
    top:31.5%!important;
    bottom:auto!important;
    width:245px!important;
  }
  body.lumboso-front .lum-v136-location-pill{
    right:calc((100vw - 100%)/-2 + 44px)!important;
  }
}

@media(min-width:701px) and (max-width:1180px){
  body.lumboso-front .lum-v11-hero-script{
    display:block!important;
    right:0!important;
    top:15.5%!important;
    width:340px!important;
    text-align:right!important;
    font-size:clamp(23px,3vw,31px)!important;
    line-height:1.06!important;
  }
  body.lumboso-front .lum-v136-live-panel{
    left:auto!important;
    right:0!important;
    top:31.5%!important;
    bottom:auto!important;
    width:225px!important;
  }
  body.lumboso-front .lum-v136-location-pill{right:0!important}
}

/* Phone: weather lives in its own reserved band above the hero copy. */
@media(max-width:700px){
  body.lumboso-front .lum-v11-hero{
    min-height:1010px!important;
  }
  body.lumboso-front .lum-v11-hero-inner{
    min-height:720px!important;
    padding-top:220px!important;
  }
  body.lumboso-front .lum-v11-hero-script{display:none!important}
  body.lumboso-front .lum-v136-live-panel{
    left:auto!important;
    right:12px!important;
    top:26px!important;
    bottom:auto!important;
    width:min(228px,calc(100% - 24px))!important;
    padding:10px 12px!important;
    border-radius:16px!important;
  }
  body.lumboso-front .lum-v136-live-location{
    font-size:7.5px!important;
    line-height:1.2!important;
    margin-bottom:7px!important;
  }
  body.lumboso-front .lum-v136-live-row{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
  }
  body.lumboso-front .lum-v136-date{display:none!important}
  body.lumboso-front .lum-v136-time{font-size:13px!important}
  body.lumboso-front .lum-v136-location-pill{display:none!important}
}
@media(max-width:390px){
  body.lumboso-front .lum-v11-hero-inner{padding-top:214px!important}
  body.lumboso-front .lum-v136-live-panel{right:11px!important;top:24px!important;width:218px!important}
}

/* --------------------------------------------------------------------------
   PHONE SEARCH CATEGORIES — 12 icons in exactly TWO rows (6 + 6)
   -------------------------------------------------------------------------- */
@media(max-width:700px){
  body.lumboso-front .lum-v11-search-wrap .lum-smart-search{
    padding-top:12px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,64px)!important;
    gap:5px 2px!important;
    overflow:visible!important;
    padding:0 0 11px!important;
    scroll-snap-type:none!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:64px!important;
    min-height:64px!important;
    flex:none!important;
    padding:7px 2px 6px!important;
    gap:5px!important;
    border-radius:13px!important;
    overflow:hidden!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button .lum-icon{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    min-height:21px!important;
    flex:0 0 21px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button span{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    font-size:8.2px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    text-align:center!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button.active{
    box-shadow:0 7px 18px rgba(25,32,27,.14)!important;
  }
}
@media(max-width:390px){
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs{
    grid-template-rows:repeat(2,61px)!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button{
    height:61px!important;
    min-height:61px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button span{font-size:7.7px!important}
}
