/* =========================================================
   OBSESSION — MOBILE HEADER FINAL ALIGNMENT V1
   ========================================================= */

@media(max-width:760px){

  /* ======================================================
     HEADER — identical physical layout EN / AR
     ====================================================== */

  .header{
    position:relative!important;
    z-index:5000!important;
  }

  .header .nav,
  html[dir="rtl"] .header .nav{
    direction:ltr!important;

    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 132px!important;
    grid-template-areas:"menu brand actions"!important;

    align-items:center!important;

    width:calc(100% - 24px)!important;
    max-width:none!important;

    height:72px!important;
    min-height:72px!important;

    margin:0 auto!important;
    padding:6px 0!important;

    column-gap:6px!important;

    flex-wrap:nowrap!important;
  }


  /* MENU */

  .header .menu-btn,
  html[dir="rtl"] .header .menu-btn{
    grid-area:menu!important;

    position:static!important;

    justify-self:start!important;
    align-self:center!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:40px!important;
    height:40px!important;

    min-width:40px!important;

    margin:0!important;
    padding:0!important;

    transform:none!important;

    font-size:28px!important;
    line-height:1!important;
  }


  /* BRAND */

  .header .brand,
  html[dir="rtl"] .header .brand{
    grid-area:brand!important;

    position:static!important;

    justify-self:start!important;
    align-self:center!important;

    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;

    direction:ltr!important;

    width:auto!important;
    max-width:100%!important;
    min-width:0!important;

    gap:6px!important;

    margin:0!important;
    padding:0!important;

    transform:none!important;
  }

  .header .brand img{
    flex:none!important;

    width:38px!important;
    height:38px!important;
    min-width:38px!important;

    object-fit:contain!important;
  }

  .header .brand-copy{
    min-width:0!important;
    overflow:hidden!important;
  }

  .header .brand-copy strong{
    display:block!important;

    font-size:15px!important;
    line-height:1!important;

    letter-spacing:.11em!important;

    white-space:nowrap!important;
  }

  .header .brand-copy span{
    display:block!important;

    margin-top:5px!important;

    font-size:5.8px!important;
    line-height:1!important;

    letter-spacing:.25em!important;

    white-space:nowrap!important;
  }


  /* ======================================================
     ACTIONS — NEVER DROP TO SECOND ROW
     ====================================================== */

  .header .nav-actions,
  html[dir="rtl"] .header .nav-actions{
    grid-area:actions!important;

    position:static!important;

    justify-self:end!important;
    align-self:center!important;

    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;

    align-items:center!important;
    justify-content:flex-end!important;

    direction:ltr!important;

    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;

    height:40px!important;

    gap:4px!important;

    margin:0!important;
    padding:0!important;

    transform:none!important;
  }


  /* LANGUAGE */

  .header .lang-switch,
  html[dir="rtl"] .header .lang-switch{
    flex:0 0 62px!important;

    width:62px!important;
    min-width:62px!important;
    max-width:62px!important;

    height:38px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    gap:2px!important;

    margin:0!important;
    padding:0 3px!important;

    box-sizing:border-box!important;
  }

  .header .lang-switch .lang-btn{
    min-width:0!important;

    padding:0 2px!important;

    font-size:9px!important;
    line-height:1!important;
  }


  /* SEARCH */

  .header .obs-header-search-btn{
    flex:0 0 28px!important;

    position:static!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:28px!important;
    height:38px!important;

    min-width:28px!important;
    max-width:28px!important;

    margin:0!important;
    padding:5px!important;

    transform:none!important;
  }

  .header .obs-header-search-btn svg{
    width:16px!important;
    height:16px!important;
  }


  /* BAG */

  .header .icon-btn[href="cart.html"],
  html[dir="rtl"] .header .icon-btn[href="cart.html"]{
    flex:0 0 34px!important;

    position:relative!important;

    width:34px!important;
    height:38px!important;

    min-width:34px!important;
    max-width:34px!important;

    margin:0!important;
    padding:0!important;

    transform:none!important;
  }

  .header .cart-count{
    top:-4px!important;
    right:-3px!important;
  }


  /* ======================================================
     MOBILE MENU CONTENT
     ====================================================== */

  body > .navlinks.obs-mobile-hard-nav > a,
  body > .navlinks.obs-mobile-hard-nav > .dropdown > .dropbtn{
    min-height:50px!important;

    display:flex!important;
    align-items:center!important;

    font-size:12px!important;
    line-height:1.35!important;

    box-sizing:border-box!important;
  }

  body > .navlinks.obs-mobile-hard-nav > a{
    justify-content:flex-start!important;
  }

  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav > a{
    justify-content:flex-start!important;
    text-align:right!important;
  }


  /* ======================================================
     SCENT FINDER — emoji next to text, not opposite side
     ====================================================== */

  body > .navlinks.obs-mobile-hard-nav > a.scent-finder-nav{
    display:flex!important;
    flex-direction:row!important;

    align-items:center!important;
    justify-content:flex-start!important;

    gap:9px!important;

    width:100%!important;

    color:#fff!important;

    font-weight:500!important;
  }

  body > .navlinks.obs-mobile-hard-nav > a.scent-finder-nav span{
    display:inline-block!important;
    flex:0 0 auto!important;

    width:auto!important;

    margin:0!important;

    color:inherit!important;
  }

  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav > a.scent-finder-nav{
    direction:rtl!important;
    justify-content:flex-start!important;
    text-align:right!important;
  }


  /* dropdown rows */

  body > .navlinks.obs-mobile-hard-nav > .dropdown > .dropbtn{
    justify-content:space-between!important;
  }

  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav > .dropdown > .dropbtn{
    direction:rtl!important;
    text-align:right!important;
  }


  /* Arabic menu text */

  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav{
    font-family:"Noto Kufi Arabic",Tahoma,Arial,sans-serif!important;
  }

  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav > a,
  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav > .dropdown > .dropbtn{
    font-size:12px!important;
    line-height:1.7!important;
  }

}


/* Very narrow phones */
@media(max-width:390px){

  .header .nav,
  html[dir="rtl"] .header .nav{
    grid-template-columns:38px minmax(0,1fr) 124px!important;
    column-gap:4px!important;
  }

  .header .nav-actions,
  html[dir="rtl"] .header .nav-actions{
    width:124px!important;
    min-width:124px!important;
    max-width:124px!important;
  }

  .header .brand img{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }

  .header .brand-copy strong{
    font-size:13px!important;
  }

  .header .brand-copy span{
    font-size:5px!important;
  }

  .header .lang-switch,
  html[dir="rtl"] .header .lang-switch{
    flex-basis:58px!important;

    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
  }
}

/* =========================================================
   OBSESSION — RTL MENU SAME SIDE AS ENGLISH V1
   Drawer always opens from LEFT
   ========================================================= */

@media(max-width:760px){

  /* Hamburger stays physically on the LEFT */
  html[dir="rtl"] .header .menu-btn{
    grid-area:menu!important;
    justify-self:start!important;
    margin:0!important;
    left:auto!important;
    right:auto!important;
  }

  /* Arabic drawer opens from LEFT just like English */
  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav{
    left:0!important;
    right:auto!important;

    transform:translate3d(-105%,0,0)!important;

    box-shadow:20px 0 50px rgba(0,0,0,.35)!important;

    direction:rtl!important;
    text-align:right!important;
  }

  html[dir="rtl"] body > .navlinks.obs-mobile-hard-nav.obs-mobile-hard-open{
    transform:translate3d(0,0,0)!important;
  }
}

/* =========================================================
   OBSESSION — MOBILE STICKY HEADER + MENU SCROLL FIX V1
   ========================================================= */

@media(max-width:760px){

  /* Header must stay visible while scrolling */
  .header,
  html[dir="rtl"] .header{
    position:sticky!important;
    top:0!important;
    z-index:5000!important;
  }

  /* Physical header layout stays identical EN / AR */
  .header .nav,
  html[dir="rtl"] .header .nav{
    direction:ltr!important;
  }

  .header .menu-btn,
  html[dir="rtl"] .header .menu-btn{
    grid-area:menu!important;
    justify-self:start!important;

    margin:0!important;
    left:auto!important;
    right:auto!important;

    transform:none!important;
  }

  /* Drawer itself scrolls, NOT the page behind it */
  body > .navlinks.obs-mobile-hard-nav{
    overflow-y:auto!important;
    overflow-x:hidden!important;

    overscroll-behavior:contain!important;

    max-height:calc(100dvh - var(--obs-mobile-nav-top,72px))!important;
  }

  /* Lock background whenever drawer is open */
  html:has(body > .navlinks.obs-mobile-hard-nav.obs-mobile-hard-open),
  body:has(> .navlinks.obs-mobile-hard-nav.obs-mobile-hard-open){
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
}

/* =========================================================
   OBSESSION — MOBILE HEADER PHYSICAL LOCK V1
   Same physical layout EN / AR
   Arabic page content remains RTL
   ========================================================= */

@media(max-width:760px){

  .header .nav,
  html[dir="rtl"] .header .nav{
    display:grid!important;
    direction:ltr!important;

    grid-template-columns:42px minmax(0,1fr) 132px!important;
    grid-template-areas:"menu brand actions"!important;

    column-gap:4px!important;
    row-gap:22px!important;

    align-items:center!important;
  }

  .header .menu-btn,
  html[dir="rtl"] .header .menu-btn{
    grid-area:menu!important;

    justify-self:start!important;
    align-self:center!important;

    margin:0!important;

    position:static!important;
    left:auto!important;
    right:auto!important;

    transform:none!important;
  }

  .header .brand,
  html[dir="rtl"] .header .brand{
    grid-area:brand!important;

    justify-self:start!important;
    align-self:center!important;

    display:flex!important;
    align-items:center!important;

    direction:ltr!important;
    text-align:left!important;

    margin:0!important;
    padding:0!important;

    gap:6px!important;

    transform:none!important;
    transition:none!important;

    font-family:"Montserrat",Arial,sans-serif!important;
  }

  .header .brand img,
  html[dir="rtl"] .header .brand img{
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;

    flex:0 0 34px!important;

    margin:0!important;
    padding:0!important;

    transform:none!important;
    transition:none!important;
  }

  .header .brand-copy,
  .header .brand-copy strong,
  .header .brand-copy span,
  html[dir="rtl"] .header .brand-copy,
  html[dir="rtl"] .header .brand-copy strong,
  html[dir="rtl"] .header .brand-copy span{
    direction:ltr!important;
    text-align:left!important;

    font-family:"Montserrat",Arial,sans-serif!important;

    transform:none!important;
    transition:none!important;
    animation:none!important;
  }

  .header .nav-actions,
  html[dir="rtl"] .header .nav-actions{
    grid-area:actions!important;

    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;

    direction:ltr!important;

    justify-self:end!important;
    align-self:center!important;

    justify-content:flex-end!important;
    align-items:center!important;

    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;

    height:40px!important;

    gap:4px!important;

    margin:0!important;
    padding:0!important;

    transform:none!important;
  }

  .header .lang-switch,
  html[dir="rtl"] .header .lang-switch{
    width:62px!important;
    min-width:62px!important;
    max-width:62px!important;

    height:40px!important;

    direction:ltr!important;
  }

  .header .obs-global-search-link,
  html[dir="rtl"] .header .obs-global-search-link{
    width:39px!important;
    min-width:39px!important;
    max-width:39px!important;

    height:40px!important;
  }

  .header .nav-actions > a.icon-btn[href="cart.html"],
  html[dir="rtl"] .header .nav-actions > a.icon-btn[href="cart.html"]{
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;

    height:40px!important;

    direction:ltr!important;
  }
}


/* Phones used in current mobile layout */
@media(max-width:390px){

  .header .nav,
  html[dir="rtl"] .header .nav{
    grid-template-columns:38px minmax(0,1fr) 124px!important;
    column-gap:4px!important;
  }

  .header .brand,
  html[dir="rtl"] .header .brand{
    width:122px!important;
    min-width:122px!important;
    max-width:122px!important;

    height:34px!important;
  }

  .header .nav-actions,
  html[dir="rtl"] .header .nav-actions{
    width:124px!important;
    min-width:124px!important;
    max-width:124px!important;

    height:40px!important;
  }

  .header .lang-switch,
  html[dir="rtl"] .header .lang-switch{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;

    height:40px!important;
  }
}


/* =========================================================
   OBSESSION — MOBILE HEADER FINAL PHYSICAL LOCK
   Same physical positions EN / AR
   ========================================================= */
@media(max-width:760px){

  .header .container.nav,
  html[dir="rtl"] .header .container.nav{
    display:grid!important;
    direction:ltr!important;
    grid-template-areas:"menu brand actions"!important;
    grid-template-columns:42px minmax(0,1fr) 132px!important;
    column-gap:4px!important;
    row-gap:22px!important;
    align-items:center!important;
  }

  .header .menu-btn,
  html[dir="rtl"] .header .menu-btn{
    grid-area:menu!important;
    justify-self:start!important;
    align-self:center!important;
    margin:0!important;
    position:static!important;
    transform:none!important;
  }

  .header .brand,
  html[dir="rtl"] .header .brand{
    grid-area:brand!important;
    justify-self:start!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    direction:ltr!important;
    text-align:left!important;
    gap:6px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    transition:none!important;
  }

  .header .brand img,
  html[dir="rtl"] .header .brand img{
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    transition:none!important;
  }

  .header .brand-copy,
  .header .brand-copy strong,
  .header .brand-copy span,
  html[dir="rtl"] .header .brand-copy,
  html[dir="rtl"] .header .brand-copy strong,
  html[dir="rtl"] .header .brand-copy span{
    font-family:"Montserrat",Arial,sans-serif!important;
    direction:ltr!important;
    text-align:left!important;
    transform:none!important;
    transition:none!important;
    animation:none!important;
  }

  .header .nav-actions,
  html[dir="rtl"] .header .nav-actions{
    grid-area:actions!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    direction:ltr!important;
    justify-self:end!important;
    justify-content:flex-end!important;
    align-items:center!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:40px!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
  }
}

@media(max-width:390px){

  .header .container.nav,
  html[dir="rtl"] .header .container.nav{
    grid-template-columns:38px minmax(0,1fr) 124px!important;
    column-gap:4px!important;
  }

  .header .brand,
  html[dir="rtl"] .header .brand{
    width:122px!important;
    min-width:122px!important;
    max-width:122px!important;
  }

  .header .nav-actions,
  html[dir="rtl"] .header .nav-actions{
    width:124px!important;
    min-width:124px!important;
    max-width:124px!important;
    gap:4px!important;
  }

  .header .lang-switch,
  html[dir="rtl"] .header .lang-switch{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:40px!important;
    direction:ltr!important;
  }

  .header .obs-global-search-link,
  html[dir="rtl"] .header .obs-global-search-link{
    width:39px!important;
    min-width:39px!important;
    max-width:39px!important;
    height:40px!important;
  }

  .header .nav-actions > a[href="cart.html"],
  html[dir="rtl"] .header .nav-actions > a[href="cart.html"]{
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:40px!important;
    direction:ltr!important;
  }
}

/* =========================================================
   OBSESSION — NARROW PHONE WORDMARK FIX V1
   Keep full OBSESSION visible on small phones
   ========================================================= */
@media(max-width:390px){

  .header .brand,
  html[dir="rtl"] .header .brand{
    overflow:visible!important;
  }

  .header .brand-copy,
  html[dir="rtl"] .header .brand-copy{
    overflow:visible!important;
    min-width:0!important;
  }

  .header .brand-copy strong,
  html[dir="rtl"] .header .brand-copy strong{
    font-size:12px!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
}
