/* Designeo mobile navigation — editorial full-screen menu, 2026-11-02.
   Keep Gutenberg native modal/focus handling; replace only its presentation. */
@media (max-width:767px) {
 .dws-site-header .dws-main-navigation .wp-block-navigation__responsive-container-open {
  display:inline-flex!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:9px!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  background:#141414!important;
  border:2px solid #141414!important;
 }
 .dws-site-header .dws-main-navigation .wp-block-navigation__responsive-container-open svg {
  fill:#fff;
  width:24px;
  height:24px;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open {
  width:100%!important;
  height:100vh!important;
  height:100dvh!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  background:#141414!important;
  color:#fff!important;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
  width:100%!important;
  min-height:100%!important;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
  display:flex!important;
  flex-direction:column!important;
  position:relative;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::before {
  content:"DESIGNEO.";
  position:absolute;
  top:calc(30px + env(safe-area-inset-top, 0px));
  left:28px;
  font:500 26px/1 Jost,Arial,sans-serif;
  letter-spacing:.015em;
  color:#fff;
  pointer-events:none;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::after {
  content:"DESIGN  /  WEB  /  SERIGRAFIA";
  position:absolute;
  bottom:calc(30px + env(safe-area-inset-bottom, 0px));
  left:28px;
  color:#a8a8a8;
  font:400 10px/1.4 "Space Mono",monospace;
  letter-spacing:.07em;
  pointer-events:none;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  top:calc(19px + env(safe-area-inset-top, 0px))!important;
  right:24px!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  padding:10px!important;
  border:1px solid #5c5c5c!important;
  color:#fff!important;
  background:transparent!important;
  box-sizing:border-box!important;
  z-index:1;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
  fill:#fff!important;
  width:23px!important;
  height:23px!important;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  display:flex!important;
  flex:1 0 auto!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
  min-height:100%!important;
  padding:clamp(132px,18vh,176px) 28px 110px!important;
  box-sizing:border-box!important;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content::before {
  content:"NAVEGAÇÃO  /  01—05";
  display:block;
  padding-bottom:16px;
  margin-bottom:8px;
  border-bottom:1px solid #505050;
  color:#f5411f;
  font:400 11px/1.3 "Space Mono",monospace;
  letter-spacing:1.3px;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
  width:100%!important;
  max-width:none!important;
  counter-reset:dws-mobile-menu;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border-bottom:1px solid #393939;
  counter-increment:dws-mobile-menu;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item::before {
  content:counter(dws-mobile-menu, decimal-leading-zero);
  display:block;
  flex:0 0 40px;
  color:#f5411f;
  font:400 11px/1 "Space Mono",monospace;
  letter-spacing:.04em;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex:1 1 auto;
  min-width:0;
  width:auto!important;
  min-height:68px;
  padding:14px 0!important;
  box-sizing:border-box;
  border:0!important;
  color:#f7f7f5!important;
  background:transparent!important;
  text-align:left!important;
  text-decoration:none!important;
  font:500 clamp(29px,7.7vw,37px)/1.15 Jost,Arial,sans-serif!important;
  letter-spacing:-.035em;
  transition:color .18s ease;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
  color:#f5411f!important;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open :is(.wp-block-navigation-item__content,.wp-block-navigation__responsive-container-close):focus-visible {
  outline:2px solid #f5411f!important;
  outline-offset:3px!important;
 }
 body.page-id-20 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href="https://designeo.pt/"],
 body.page-id-55 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/packs-designeo/"],
 body.page-id-52 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/servicos/"],
 body.page-id-196 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/serigrafia/"],
 body.page-id-129 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/contactos/"] {
  color:#f5411f!important;
 }
 body.page-id-20 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href="https://designeo.pt/"]::after,
 body.page-id-55 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/packs-designeo/"]::after,
 body.page-id-52 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/servicos/"]::after,
 body.page-id-196 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/serigrafia/"]::after,
 body.page-id-129 .dws-main-navigation .is-menu-open .wp-block-navigation-item__content[href$="/contactos/"]::after {
  content:"↗";
  display:block;
  margin-left:auto;
  padding-left:8px;
  font:400 26px/1 Jost,Arial,sans-serif;
 }
}
@media (max-width:767px) and (max-height:670px) {
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  padding-top:115px!important;
  padding-bottom:85px!important;
 }
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  min-height:56px;
  padding-top:9px!important;
  padding-bottom:9px!important;
 }
}
@media(prefers-reduced-motion:reduce) {
 .dws-main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  transition:none!important;
 }
}
