/* LUMBOSO v1.5.11 — iPad orientation reset, complete app menu and restored language UI */

/* Safari may otherwise enlarge/reflow text after an iPad rotation. */
html{
  -webkit-text-size-adjust:100%!important;
  text-size-adjust:100%!important;
}

/* --------------------------------------------------------------------------
   TABLET HEADER / LANGUAGE
   Keep the compact tablet header clean. Older map CSS was forcing the language
   bubble back into the header where it collided with the hamburger. Language
   switching now lives inside the app menu on tablet/phone.
   -------------------------------------------------------------------------- */
@media (max-width:1279px){
  body .lum-v146-header .lum-language-menu,
  body.lum-map-page .lum-v146-header .lum-language-menu,
  body.lum-map-page .lum-v11-tools .lum-language-menu{
    display:none!important;
  }
}

/* --------------------------------------------------------------------------
   APP MENU — complete, compact and actually usable on iPad in both rotations.
   -------------------------------------------------------------------------- */
.lum-v1511-menu-language{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:5px 13px 1px!important;
  padding:7px 9px!important;
  border:1px solid rgba(173,129,60,.10)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.62)!important;
}
.lum-v1511-menu-language>span{
  font-size:8px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  color:#8c6b39!important;
  white-space:nowrap!important;
}
.lum-v1511-menu-language nav{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
}
.lum-v1511-menu-language a{
  display:grid!important;
  place-items:center!important;
  width:31px!important;
  height:28px!important;
  border-radius:9px!important;
  border:1px solid rgba(29,33,29,.07)!important;
  background:#fff!important;
  font-size:8px!important;
  font-weight:700!important;
  line-height:1!important;
}
.lum-v1511-menu-language a.active{
  background:#283128!important;
  border-color:#283128!important;
  color:#fff!important;
}

@media (min-width:701px) and (max-width:1279px){
  body .lum-v146-menu-panel{
    width:min(440px,92vw)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    top:0!important;
    bottom:auto!important;
    border-radius:0 28px 28px 0!important;
  }
  body.admin-bar .lum-v146-menu-panel{
    top:32px!important;
    height:calc(100dvh - 32px)!important;
    max-height:calc(100dvh - 32px)!important;
  }

  body .lum-v146-menu-head{
    min-height:52px!important;
    height:52px!important;
    padding:6px 13px 5px 16px!important;
  }
  body .lum-v146-menu-brand{width:118px!important}
  body .lum-v146-menu-brand img{max-height:33px!important}
  body .lum-v146-menu-close{
    width:31px!important;height:31px!important;min-width:31px!important;
  }

  body .lum-v146-profile{
    grid-template-columns:42px minmax(0,1fr) 14px!important;
    gap:9px!important;
    margin:7px 13px 2px!important;
    padding:7px 9px!important;
    border-radius:15px!important;
  }
  body .lum-v146-profile-avatar,
  body .lum-v146-profile-avatar img{
    width:42px!important;height:42px!important;
    min-width:42px!important;max-width:42px!important;
    min-height:42px!important;max-height:42px!important;
  }
  body .lum-v146-profile-copy strong{font-size:17px!important;line-height:1.02!important}
  body .lum-v146-profile-copy small{font-size:7.5px!important;margin-top:2px!important;line-height:1.1!important}
  body .lum-v146-profile>b{font-size:17px!important}

  body .lum-v146-menu-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    padding:1px 12px 6px!important;
    scrollbar-gutter:stable!important;
  }
  body .lum-v146-menu-section{padding:5px 0 1px!important}
  body .lum-v146-menu-label{
    margin:0 4px 4px!important;
    font-size:7.5px!important;
    line-height:1!important;
    letter-spacing:.16em!important;
  }

  body .lum-v146-quick-grid{gap:5px!important}
  body .lum-v146-quick-grid a{
    grid-template-columns:22px minmax(0,1fr)!important;
    gap:7px!important;
    min-height:43px!important;
    padding:6px 8px!important;
    border-radius:13px!important;
    font-size:10px!important;
    line-height:1.05!important;
  }
  body .lum-v146-quick-grid a .lum-icon{width:17px!important;height:17px!important}

  /* Explore in two columns so Community + Advertising remain visible without
     disappearing below the fixed footer. */
  body .lum-v146-menu-section:nth-of-type(2) .lum-v146-link-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:3px 5px!important;
  }
  body .lum-v146-menu-section:nth-of-type(3) .lum-v146-link-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:3px 5px!important;
  }
  body .lum-v146-link-list>a{
    min-height:32px!important;
    padding:3px 6px!important;
    border-radius:10px!important;
    grid-template-columns:minmax(0,1fr) 10px!important;
    gap:3px!important;
  }
  body .lum-v146-link-list>a>span{
    min-width:0!important;
    gap:6px!important;
  }
  body .lum-v146-link-list .lum-icon{
    width:15px!important;height:15px!important;flex:0 0 15px!important;
  }
  body .lum-v146-link-list strong{
    min-width:0!important;
    font-size:9.2px!important;
    line-height:1.05!important;
    font-weight:600!important;
    white-space:normal!important;
  }
  body .lum-v146-link-list b{font-size:14px!important}

  body .lum-v146-menu-footer{
    flex:0 0 auto!important;
    gap:6px!important;
    padding:7px 12px calc(7px + env(safe-area-inset-bottom))!important;
  }
  body .lum-v146-menu-primary,
  body .lum-v146-menu-secondary{
    height:40px!important;
    min-height:40px!important;
    border-radius:12px!important;
    font-size:10px!important;
  }
}

/* Landscape has less vertical room — slightly wider panel and tighter rows. */
@media (min-width:901px) and (max-width:1279px) and (orientation:landscape){
  body .lum-v146-menu-panel{width:min(470px,78vw)!important}
  body .lum-v146-profile{margin-top:5px!important}
  body .lum-v1511-menu-language{margin-top:3px!important;padding-top:5px!important;padding-bottom:5px!important}
  body .lum-v146-menu-section{padding-top:4px!important}
  body .lum-v146-link-list>a{min-height:30px!important}
}

/* --------------------------------------------------------------------------
   HOME / iPAD PORTRAIT — fluid text and a stable three-column search.
   -------------------------------------------------------------------------- */
@media (min-width:701px) and (max-width:900px) and (orientation:portrait){
  body.lumboso-front .lum-v11-hero{
    min-height:940px!important;
  }
  body.lumboso-front .lum-v11-hero-inner{
    min-height:760px!important;
    align-items:flex-start!important;
    padding-top:190px!important;
  }
  body.lumboso-front .lum-v11-hero-copy{
    transform:none!important;
    width:52%!important;
    max-width:470px!important;
    padding-top:0!important;
    margin:0!important;
  }
  body.lumboso-front .lum-v11-kicker{
    font-size:8.5px!important;
    line-height:1.1!important;
    letter-spacing:.28em!important;
    white-space:nowrap!important;
  }
  body.lumboso-front .lum-v11-hero-copy h1{
    font-size:clamp(58px,8.1vw,74px)!important;
    line-height:.80!important;
    margin:15px 0 20px!important;
  }
  body.lumboso-front .lum-v11-hero-copy p{
    font-size:clamp(19px,2.8vw,23px)!important;
    line-height:1.08!important;
  }
  body.lumboso-front .lum-v11-hero-script{
    transform:none!important;
    top:20%!important;
    width:40%!important;
    font-size:clamp(22px,3.2vw,29px)!important;
    line-height:1.05!important;
  }
  body.lumboso-front .lum-v136-live-panel{
    transform:none!important;
    top:34%!important;
    width:225px!important;
  }
  body.lumboso-front .lum-v136-location-pill{
    display:flex!important;
    bottom:286px!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,54px)!important;
    gap:3px!important;
    overflow:visible!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button{
    width:100%!important;
    min-width:0!important;
    height:54px!important;
    min-height:54px!important;
    padding:4px 2px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button .lum-icon{
    width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button span{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    font-size:7.5px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }

  body.lumboso-front .lum-v11-search-wrap .lum-smart-search-form{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    align-items:stretch!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-cell,
  body.lumboso-front .lum-v11-search-wrap .lum-smart-search-submit{
    grid-column:auto!important;
    grid-row:auto!important;
    min-width:0!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-cell{
    min-height:58px!important;
    padding:8px 10px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-smart-search-submit{
    width:auto!important;
    min-height:58px!important;
    padding:0 14px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-cell small{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    min-height:10px!important;
    font-size:7px!important;
    line-height:1!important;
    margin-bottom:4px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-foot{
    grid-column:1/-1!important;
  }
}

/* --------------------------------------------------------------------------
   HOME / iPAD LANDSCAPE — all field labels stay visible and Search occupies
   the circled empty position at the right of the first row.
   -------------------------------------------------------------------------- */
@media (min-width:901px) and (max-width:1279px) and (orientation:landscape){
  body.lumboso-front .lum-v11-hero{
    min-height:840px!important;
  }
  body.lumboso-front .lum-v11-hero-inner{
    min-height:690px!important;
    align-items:flex-start!important;
    padding-top:205px!important;
  }
  body.lumboso-front .lum-v11-hero-copy{
    transform:none!important;
    width:47%!important;
    max-width:545px!important;
    padding-top:0!important;
    margin:0!important;
  }
  body.lumboso-front .lum-v11-kicker{
    font-size:9px!important;
    line-height:1.1!important;
    letter-spacing:.30em!important;
    white-space:nowrap!important;
  }
  body.lumboso-front .lum-v11-hero-copy h1{
    font-size:clamp(62px,6.4vw,82px)!important;
    line-height:.79!important;
    margin:16px 0 20px!important;
  }
  body.lumboso-front .lum-v11-hero-copy p{
    font-size:clamp(20px,2.15vw,24px)!important;
    line-height:1.08!important;
  }
  body.lumboso-front .lum-v11-hero-script{
    transform:none!important;
    top:17.5%!important;
    width:38%!important;
    font-size:clamp(24px,2.65vw,32px)!important;
    line-height:1.05!important;
  }
  body.lumboso-front .lum-v136-live-panel{
    transform:none!important;
    top:31%!important;
    width:245px!important;
  }
  body.lumboso-front .lum-v136-location-pill{
    display:flex!important;
    bottom:230px!important;
  }

  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs{
    display:grid!important;
    grid-template-columns:repeat(12,minmax(0,1fr))!important;
    grid-template-rows:58px!important;
    gap:2px!important;
    overflow:visible!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button{
    width:100%!important;
    min-width:0!important;
    height:58px!important;
    min-height:58px!important;
    padding:5px 1px!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;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button span{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    font-size:7.2px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  body.lumboso-front .lum-v11-search-wrap .lum-smart-search-form{
    display:grid!important;
    grid-template-columns:minmax(0,1.28fr) minmax(0,1.12fr) minmax(0,.96fr) minmax(0,.96fr) minmax(0,.78fr) 118px!important;
    gap:7px!important;
    align-items:stretch!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-cell{
    grid-column:auto!important;
    grid-row:auto!important;
    min-width:0!important;
    min-height:55px!important;
    padding:8px 9px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-cell small{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    min-height:10px!important;
    font-size:6.8px!important;
    line-height:1!important;
    margin-bottom:4px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-smart-search-submit{
    grid-column:6!important;
    grid-row:1!important;
    width:118px!important;
    min-width:118px!important;
    min-height:55px!important;
    padding:0 10px!important;
  }
  body.lumboso-front .lum-v11-search-wrap .lum-search-foot,
  body.lumboso-front .lum-v11-search-wrap .lum-advanced-search-panel{
    grid-column:1/-1!important;
  }
}

/* --------------------------------------------------------------------------
   MAP / TABLET — same outside guide as the header; no language/hamburger clash.
   -------------------------------------------------------------------------- */
@media (min-width:701px) and (max-width:900px){
  body.lum-map-page .lum-app-page{
    width:calc(100% - 24px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.lum-map-page .lum-map-shell--social{
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
@media (min-width:901px) and (max-width:1279px){
  body.lum-map-page .lum-app-page{
    width:calc(100% - 36px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.lum-map-page .lum-map-shell--social{
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Labels must never vanish just because Safari recalculated the layout. */
@media (min-width:701px) and (max-width:1279px){
  body.lumboso-front .lum-v11-search-wrap .lum-search-cell small,
  body.lumboso-front .lum-v11-search-wrap .lum-search-mode-tabs button span{
    visibility:visible!important;
    opacity:1!important;
  }
}
