/* DANANG2NITE STEP07 | MOBILE SIDE MENU ONLY | Phase67+68 cascade preservation.
   Same order and mobile media conditions as previous separate files.
   Redundant Phase67 declarations overwritten by Phase68 are removed. */
.d2n-side-menu__eyebrow, .d2n-side-menu__section-head>span{
  font-size:9.4px!important;
  line-height:1!important;
  letter-spacing:1.35px!important;
  color:#b6a271!important;
  font-weight:900!important;
}
.d2n-side-menu__section-head>strong{
  font-size:8.2px!important;
  color:#9d8a62!important;
  border-color:rgba(215,183,111,.24)!important;
}
.d2n-side-menu__primary-nav a>strong{
  color:#f0ebe4!important;
}
.d2n-side-menu__category-grid a{
  min-height:59px!important;
}
.d2n-side-menu__category-grid a>span{
  font-size:8.1px!important;
  letter-spacing:.25px!important;
}
.d2n-side-menu__category-grid a>strong{
  font-size:12.2px!important;
  line-height:1.16!important;
  color:#ded9d3!important;
  font-weight:800!important;
}
.d2n-side-menu__category-grid a>i{
  font-size:10.2px!important;
}
.d2n-side-menu__language{
  min-height:60px!important;
}
.d2n-side-menu__language>b{
  font-size:18px!important;
}
.d2n-side-menu__language strong{
  font-size:11.4px!important;
  line-height:1!important;
  letter-spacing:.75px!important;
  color:#eee9e2!important;
}
.d2n-side-menu__language small{
  font-size:9.7px!important;
  line-height:1.22!important;
  color:#9f9993!important;
  font-weight:620!important;
}
.d2n-side-menu__language>i{
  font-size:10.4px!important;
}
.d2n-side-menu__language.is-active small{
  color:#c0b18b!important;
}
@media (max-width:390px){
.d2n-side-menu__eyebrow, .d2n-side-menu__section-head>span{
  font-size:9px!important;
  letter-spacing:1.2px!important;
}
.d2n-side-menu__category-grid a>strong{
  font-size:11.7px!important;
}
.d2n-side-menu__category-grid a>span{
  font-size:7.8px!important;
}
.d2n-side-menu__language strong{
  font-size:11px!important;
}
.d2n-side-menu__language small{
  font-size:9.2px!important;
}
}

/* Phase68 final values - must retain after Phase67. */
/* =========================================================
   DANANG2NITE — PHASE68 ENGLISH MASTER
   MOBILE SIDE MENU FINAL MICRO-POLISH
   Scope: drawer micro-contrast + identity/footer scale only.
   Layout, card dimensions, body content and image-led UI untouched.
   ========================================================= */

/* Keep card geometry exactly as Phase67; only make navigation metadata clearer. */
.d2n-side-menu__primary-nav a>span{
  color:#a78f62!important;
}
.d2n-side-menu__primary-nav a>i{
  color:#9d958d!important;
}

.d2n-side-menu__category-grid a>span{
  color:#98918a!important;
}
.d2n-side-menu__category-grid a>i{
  color:#a49c93!important;
}

.d2n-side-menu__language>i{
  color:#a39b92!important;
}
.d2n-side-menu__language.is-active>i{
  color:#e1c77f!important;
}

/* Drawer identity/footer: Phase67 was still too fine on real 360–390px devices. */
.d2n-side-menu__identity{
  padding:20px 16px 24px!important;
}
.d2n-side-menu__identity-top{
  font-size:7.8px!important;
  line-height:1!important;
  letter-spacing:1.02px!important;
  color:#8f8983!important;
}
.d2n-side-menu__identity-top span:last-child{
  color:#b49b65!important;
}
.d2n-side-menu__identity-copy{
  margin-top:14px!important;
  gap:16px!important;
}
.d2n-side-menu__identity-copy strong{
  font-size:10.8px!important;
  line-height:1!important;
  letter-spacing:1.12px!important;
  color:#c0a66f!important;
}
.d2n-side-menu__identity-copy p{
  max-width:285px!important;
  font-size:9.6px!important;
  line-height:1.45!important;
  color:#9a938d!important;
}

/* Real-device widths: prevent the previous tiny footer fallback from winning. */
@media(max-width:390px){
  .d2n-side-menu__identity{
    padding:19px 15px 23px!important;
  }
  .d2n-side-menu__identity-top{
    font-size:7.5px!important;
    letter-spacing:.96px!important;
  }
  .d2n-side-menu__identity-copy strong{
    font-size:10.4px!important;
  }
  .d2n-side-menu__identity-copy p{
    font-size:9.2px!important;
    color:#958f89!important;
  }

  .d2n-side-menu__category-grid a>span{
    color:#969089!important;
  }
  .d2n-side-menu__category-grid a>i,
  .d2n-side-menu__language>i{
    color:#a09890!important;
  }
}


/* ================================================================
   MOBILE STAGE 05 | Side menu and language accessibility
   Keep original two-column category and language architecture.
   PC and individual page stylesheets remain unchanged.
   ================================================================= */
@media (max-width: 820px) {
  /* Ensure the full-screen drawer follows mobile browser viewport height. */
  .d2n-side-menu .d2n-side-menu__panel {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  .d2n-side-menu .d2n-side-menu__head {
    min-height: 70px !important;
    padding-inline: 16px !important;
  }
  .d2n-side-menu .d2n-side-menu__close {
    min-width: 44px !important;
    width: 44px !important;
    height: 44px !important;
    flex-basis: 44px !important;
  }
  .d2n-side-menu .d2n-side-menu__close:focus-visible,
  .d2n-side-menu .d2n-side-menu__primary-nav a:focus-visible,
  .d2n-side-menu .d2n-side-menu__category-grid a:focus-visible,
  .d2n-side-menu .d2n-side-menu__language:focus-visible {
    outline: 2px solid #e4c577 !important;
    outline-offset: -2px !important;
  }
  .d2n-side-menu .d2n-side-menu__primary,
  .d2n-side-menu .d2n-side-menu__categories,
  .d2n-side-menu .d2n-side-menu__languages {
    padding: 17px 14px !important;
  }
  .d2n-side-menu .d2n-side-menu__eyebrow,
  .d2n-side-menu .d2n-side-menu__section-head > span {
    color: #c6ac75 !important;
    font-size: 10.5px !important;
    line-height: 1.35 !important;
    letter-spacing: .7px !important;
  }
  .d2n-side-menu .d2n-side-menu__section-head > strong {
    font-size: 10px !important;
    min-height: 24px !important;
  }
  .d2n-side-menu .d2n-side-menu__primary-nav a {
    min-height: 54px !important;
    gap: 10px !important;
  }
  html[lang] .d2n-side-menu .d2n-side-menu__primary-nav a > strong {
    font-size: 15px !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    text-overflow: clip !important;
  }
  .d2n-side-menu .d2n-side-menu__primary-nav a > span,
  .d2n-side-menu .d2n-side-menu__primary-nav a > i {
    font-size: 10.5px !important;
  }
  .d2n-side-menu .d2n-side-menu__category-grid,
  .d2n-side-menu .d2n-side-menu__language-grid {
    gap: 8px !important;
  }
  .d2n-side-menu .d2n-side-menu__category-grid a {
    min-height: 64px !important;
    padding: 10px !important;
    grid-template-columns: 15px minmax(0, 1fr) 12px !important;
    gap: 7px !important;
  }
  html[lang] .d2n-side-menu .d2n-side-menu__category-grid a > strong {
    color: #e8e2dc !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
    font-weight: 750 !important;
    letter-spacing: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    white-space: normal !important;
  }
  .d2n-side-menu .d2n-side-menu__category-grid a > span,
  .d2n-side-menu .d2n-side-menu__category-grid a > i {
    font-size: 9.5px !important;
    color: #ab9b7e !important;
  }
  .d2n-side-menu .d2n-side-menu__language {
    min-height: 66px !important;
    padding: 10px 8px !important;
    grid-template-columns: 21px minmax(0, 1fr) 12px !important;
    gap: 6px !important;
    align-content: center !important;
  }
  .d2n-side-menu .d2n-side-menu__language > b {
    font-size: 19px !important;
  }
  .d2n-side-menu .d2n-side-menu__language > span {
    gap: 4px !important;
    min-width: 0 !important;
  }
  html[lang] .d2n-side-menu .d2n-side-menu__language strong {
    font-size: 11.5px !important;
    line-height: 1.2 !important;
  }
  html[lang] .d2n-side-menu .d2n-side-menu__language small {
    display: block !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    color: #bdb6ae !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
  }
  .d2n-side-menu .d2n-side-menu__language.is-active small {
    color: #ecce8d !important;
  }
  .d2n-side-menu .d2n-side-menu__language > i {
    font-size: 11px !important;
  }
}
@media (max-width: 820px) {
  /* Three primary destinations: readable labels instead of decorative counters. */
  .d2n-side-menu .d2n-side-menu__primary-nav {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 8px !important;
  }
  .d2n-side-menu .d2n-side-menu__primary-nav a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 5px !important;
    min-height: 60px !important;
    text-align: center !important;
  }
  .d2n-side-menu .d2n-side-menu__primary-nav a > span,
  .d2n-side-menu .d2n-side-menu__primary-nav a > i {
    display: none !important;
  }
  html[lang] .d2n-side-menu .d2n-side-menu__primary-nav a > strong {
    font-size: 14px !important;
    line-height: 1.28 !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
  }
}
@media (max-width: 359px) {
  /* On narrow phones a single language column avoids broken scripts. */
  .d2n-side-menu .d2n-side-menu__language-grid,
  .d2n-side-menu .d2n-side-menu__category-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .d2n-side-menu .d2n-side-menu__language {
    min-height: 55px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .d2n-side-menu .d2n-side-menu__panel,
  .d2n-side-menu .d2n-side-menu__backdrop {
    transition: none !important;
  }
}
