/*
 * Nirvanabahis structural layer
 *
 * Mirrors the final Nisbet/Merlot shell geometry without importing any
 * Nisbet branding, palette or artwork.  Brand presentation remains owned by
 * nirvana-authentic.css and the existing Nirvana asset catalog.
 */

html.factory-theme-nirvana-core body:not(.backoffice) .layout-content-holder-bc{
  width:100%!important;
  max-width:1650px!important;
  margin-inline:auto!important;
  padding-inline:19px!important;
}

@media(min-width:701px){
  html.factory-theme-nirvana-core body:not(.backoffice) .header-bc{
    width:100%!important;
    height:94px!important;
    min-height:94px!important;
    padding:0 19px!important;
    overflow:visible!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-main-content-bc{
    width:100%!important;
    max-width:none!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
    padding:0!important;
    gap:10px!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-logo-bc{
    display:flex!important;
    width:250px!important;
    min-width:250px!important;
    height:50px!important;
    max-height:50px!important;
    align-items:center!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-logo-bc img{
    width:116px!important;
    height:48px!important;
    max-height:48px!important;
    object-fit:contain!important;
    object-position:left center!important;
    transform:none!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-user-bc{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-user-bc .quick-button{
    width:auto!important;
    min-width:116px!important;
    height:31px!important;
    min-height:31px!important;
    padding:0 14px!important;
    border-radius:5px!important;
    font-size:11px!important;
    font-weight:800!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-user-bc .btn{
    height:31px!important;
    min-height:31px!important;
    min-width:64px!important;
    padding:0 15px!important;
    border-radius:18px!important;
    font-size:11px!important;
    font-weight:850!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) :is(.language,#clock){height:31px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .settings-button{width:36px!important;height:31px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .header-navigation{
    width:100%!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    overflow:hidden!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-menu{
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 10px!important;
    justify-content:space-around!important;
    overflow:visible!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-menu>li{
    flex:0 1 auto!important;
    min-width:0!important;
    height:44px!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-menu-item{
    height:44px!important;
    min-height:44px!important;
    padding:0 clamp(7px,.65vw,14px)!important;
    gap:7px!important;
    font-size:clamp(10px,.72vw,14px)!important;
    letter-spacing:-.15px!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-menu-item img,
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-glyph{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
  }
}

html.factory-theme-nirvana-core body:not(.backoffice) .hero-slider.merlot-hero{
  width:100%!important;
  aspect-ratio:2880/880!important;
  margin-top:14px!important;
  overflow:hidden!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .merlot-hero :is(.hero-link,picture,#hero-image){
  display:block!important;
  width:100%!important;
  height:100%!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .merlot-hero #hero-image{
  object-fit:cover!important;
  object-position:center!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .merlot-hero .hero-controls{
  top:auto!important;
  right:10px!important;
  bottom:10px!important;
  left:auto!important;
  min-height:28px!important;
}

html.factory-theme-nirvana-core body:not(.backoffice) .product-banner-container-bc:has(.merlot-product){
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:9px!important;
  overflow:visible!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .product-banner-container-bc .merlot-product{
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1.18!important;
}

html.factory-theme-nirvana-core body:not(.backoffice) .sectionTitle{
  min-height:52px!important;
  padding-inline:16px!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) :is(.game-grid,.catalog-game-grid){
  gap:12px!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .game-card{
  min-width:0!important;
  aspect-ratio:1.42/1!important;
  overflow:hidden!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .game-card>img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}

html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-card{
  min-width:0!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-card .merlot-campaign-art,
html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-card .merlot-art-scene,
html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-card .merlot-art-scene img{
  width:100%!important;
  height:100%!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-card .merlot-art-scene img{
  object-fit:cover!important;
  object-position:center!important;
}

html.factory-theme-nirvana-core body:not(.backoffice) #account-modal{
  width:min(1340px,calc(100% - 40px))!important;
  height:min(1040px,calc(100dvh - 90px))!important;
  max-width:none!important;
  max-height:none!important;
  margin:auto!important;
  padding:0!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-window{
  display:grid!important;
  grid-template-columns:314px minmax(0,1fr)!important;
  width:100%!important;
  height:100%!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-sidebar{
  width:auto!important;
  height:100%!important;
  overflow-y:auto!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-main{
  display:flex!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-title{
  height:49px!important;
  min-height:49px!important;
  padding:0 15px!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-body{
  flex:1!important;
  height:auto!important;
  padding:15px!important;
  overflow-y:auto!important;
}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .personal-grid{gap:6px!important}
html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .profile-field input{
  height:48px!important;
  padding:20px 13px 5px!important;
}

@media(min-width:701px) and (max-width:1200px){
  html.factory-theme-nirvana-core body:not(.backoffice) .header-bc{padding-inline:8px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-logo-bc{width:145px!important;min-width:145px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-user-bc{gap:6px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-user-bc .quick-button{min-width:46px!important;padding-inline:9px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-user-bc .quick-button>span{display:none!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-menu{
    justify-content:flex-start!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .nav-menu>li{flex:0 0 auto!important}
}

@media(max-width:1100px){
  html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:700px){
  html.factory-theme-nirvana-core,
  html.factory-theme-nirvana-core body{width:100%;max-width:100%;overflow-x:clip!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .layout-content-holder-bc{padding-inline:8px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .hero-slider.merlot-hero{aspect-ratio:3/1!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .merlot-hero #hero-image{object-fit:contain!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .sectionTitle{
    min-height:43px!important;
    height:43px!important;
    padding:0 10px 0 12px!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .promotion-showcase-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
}

@media(max-width:600px){
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-logo-bc{width:136px!important;min-width:136px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .hdr-logo-bc img{width:132px!important;max-width:132px!important;height:45px!important;max-height:45px!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .language{display:none!important}
  html.factory-theme-nirvana-core body:not(.backoffice) .product-banner-container-bc:has(.merlot-product){
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .product-banner-container-bc .merlot-product:nth-child(n+5){display:none!important}
  html.factory-theme-nirvana-core body:not(.backoffice) :is(#home-slots,#home-live,#home-games) .game-card:nth-child(n+7){display:none!important}
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal{
    position:fixed!important;
    inset:0 0 0 auto!important;
    width:min(90vw,440px)!important;
    height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    transform:none!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-window{
    display:block!important;
    height:100dvh!important;
    overflow:hidden!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-sidebar{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:100dvh!important;
    min-height:0!important;
    padding-bottom:86px!important;
    overflow-y:auto!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .account-main{display:none!important}
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal.account-deposit-panel .account-sidebar{display:none!important}
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal.account-deposit-panel .account-main{display:block!important;width:100%!important}
  html.factory-theme-nirvana-core body:not(.backoffice) #account-modal .mobile-profile-close{
    position:absolute!important;
    top:8px!important;
    right:8px!important;
    float:none!important;
    margin:0!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .mobile-bottom{
    display:flex!important;
    height:54px!important;
    padding:0!important;
    align-items:center!important;
    overflow:visible!important;
  }
  html.factory-theme-nirvana-core body:not(.backoffice) .mobile-bottom :is(a,button){height:52px!important;min-height:52px!important}
}
