/* Componente exclusivo de ecrãs móveis. */
.wb-mobile-menu { display: none; }
@media (max-width: 839.98px) {
  html.wb-mobile-menu-open { scrollbar-gutter: auto !important; scrollbar-width: none !important; }
  html.wb-mobile-menu-open::-webkit-scrollbar { width: 0; height: 0; }
  html.wb-mobile-navigation .framer-Rmalo,
  html.wb-mobile-navigation header.nav,
  html.wb-mobile-navigation .blog-nav { visibility: hidden !important; pointer-events: none !important; }
  html.wb-mobile-navigation .wb-mobile-menu {
    display: block; position: fixed; inset: 0 auto 0 0; width: 100vw; z-index: 100000;
    pointer-events: none; font-family: Inter, 'Inter Tight', sans-serif;
    color: #fff; -webkit-font-smoothing: antialiased;
    --menu-x: calc(100% - 48px); --menu-y: 40px; --menu-radius: 150vmax;
  }
  .wb-mobile-menu__bar {
    position: absolute; inset: 0 0 auto; height: calc(80px + env(safe-area-inset-top, 0px));
    padding: env(safe-area-inset-top, 0px) 24px 0;
    display: flex; align-items: center; justify-content: space-between;
    background: #fff; pointer-events: auto; z-index: 2;
    transition: background-color .45s ease, top .5s cubic-bezier(.22,1,.36,1),
      left .5s cubic-bezier(.22,1,.36,1), right .5s cubic-bezier(.22,1,.36,1),
      height .5s ease, padding .5s ease, border-radius .5s ease, box-shadow .5s ease;
  }
  html[data-wb-hero-scroll] .wb-mobile-menu__bar { background: transparent; }
  html.wb-mobile-navigation .wb-mobile-menu.is-compact:not(.is-visible) .wb-mobile-menu__bar {
    top: calc(12px + env(safe-area-inset-top, 0px)); left: 16px; right: 16px;
    height: 64px; padding: 0 12px 0 20px; border-radius: 40px;
    background: #fff; border: 1px solid rgb(49 50 54 / .06);
    box-shadow: 0 4px 20px rgb(23 37 31 / .09);
  }
  html.wb-mobile-navigation .wb-mobile-menu.is-compact:not(.is-visible) .wb-mobile-menu__symbol { filter: none; }
  html.wb-mobile-navigation .wb-mobile-menu.is-compact:not(.is-visible) .wb-mobile-menu__toggle {
    color: #313236; border-color: rgb(49 50 54 / .15);
  }
  .wb-mobile-menu__brand { display: block; width: 27px; height: 32px; flex: none; }
  .wb-mobile-menu__symbol {
    display: block; width: 100%; height: 100%;
    background: url(/static/images/webiio-marca.webp) left center / auto 100% no-repeat;
  }
  html[data-wb-hero-scroll] .wb-mobile-menu__symbol {
    filter: brightness(var(--wb-nav-logo-brightness, 1)) invert(var(--wb-nav-green, 0));
  }
  .wb-mobile-menu__toggle {
    position: relative; display: grid; place-items: center; width: 48px; height: 48px;
    flex: none; padding: 0; border: 0; border-radius: 0; box-shadow: none;
    background: transparent; color: #313236; cursor: pointer;
    transition: color .25s ease, border-color .25s ease;
  }
  html[data-wb-hero-scroll] .wb-mobile-menu__toggle { color: var(--wb-nav-ink, #313236); border-color: currentColor; }
  .wb-mobile-menu__toggle span {
    position: absolute; width: 20px; height: 1.5px; border-radius: 2px; background: currentColor;
    transition: transform .5s cubic-bezier(.22,1,.36,1);
  }
  .wb-mobile-menu__toggle span:first-child { transform: translateY(-4px); }
  .wb-mobile-menu__toggle span:last-child { transform: translateY(4px); }
  .wb-mobile-menu.is-open .wb-mobile-menu__toggle span:first-child { transform: rotate(45deg); }
  .wb-mobile-menu.is-open .wb-mobile-menu__toggle span:last-child { transform: rotate(-45deg); }
  .wb-mobile-menu__panel {
    position: absolute; inset: 0; height: 100%; height: 100dvh;
    background: #17251f; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y;
    clip-path: circle(0px at var(--menu-x) var(--menu-y));
    visibility: hidden; pointer-events: none;
    transition: clip-path .8s cubic-bezier(.65,0,.35,1), visibility 0s .8s;
  }
  .wb-mobile-menu.is-open .wb-mobile-menu__panel {
    clip-path: circle(var(--menu-radius) at var(--menu-x) var(--menu-y));
    visibility: visible; pointer-events: auto;
    transition: clip-path 1.05s cubic-bezier(.22,1,.36,1), visibility 0s;
  }
  .wb-mobile-menu__panel::before {
    content: ''; position: absolute; inset: 0; min-height: 100%; pointer-events: none;
    background:
      radial-gradient(ellipse at 100% 16%, transparent 0 36%, rgb(255 255 255 / .035) 36.1% 36.25%, transparent 36.35%),
      radial-gradient(ellipse at 0 58%, transparent 0 40%, rgb(255 255 255 / .04) 40.1% 40.25%, transparent 40.35%),
      radial-gradient(ellipse at 90% 90%, transparent 0 47%, rgb(255 255 255 / .035) 47.1% 47.25%, transparent 47.35%);
  }
  .wb-mobile-menu__content {
    position: relative; min-height: 100%; display: flex; flex-direction: column;
    padding: calc(108px + env(safe-area-inset-top, 0px)) 32px calc(32px + env(safe-area-inset-bottom, 0px));
  }
  .wb-mobile-menu__label { margin: 0 0 22px; font-size: 10px; font-weight: 500; line-height: 1.4; letter-spacing: .16em; color: #bac6be; }
  .wb-mobile-menu__links { display: flex; flex-direction: column; gap: clamp(9px, 1.45vh, 15px); }
  .wb-mobile-menu__link {
    align-self: flex-start; position: relative; color: #fff; text-decoration: none;
    font-size: clamp(26px, 7.7vw, 36px); line-height: 1.22; font-weight: 500; letter-spacing: -.035em;
    opacity: 0; transform: translateY(24px); transition: opacity .25s ease, transform .3s ease;
  }
  .wb-mobile-menu__link::after { content: ''; position: absolute; height: 1px; bottom: -3px; left: 0; right: 100%; background: #fff; transition: right .3s ease; }
  .wb-mobile-menu__link[aria-current="page"]::after, .wb-mobile-menu__link:hover::after { right: 0; }
  .wb-mobile-menu.is-open .wb-mobile-menu__link {
    opacity: 1; transform: translateY(0);
    transition: opacity .7s ease calc(.16s + var(--menu-i) * .045s), transform .8s cubic-bezier(.22,1,.36,1) calc(.16s + var(--menu-i) * .045s);
  }
  .wb-mobile-menu__footer { margin-top: auto; padding-top: 30px; display: flex; flex-direction: column; gap: 12px; opacity: 0; transform: translateY(12px); transition: opacity .2s, transform .3s; }
  .wb-mobile-menu__footer a { align-self: flex-start; color: #becbc2; font-size: 14px; line-height: 1.5; text-decoration: none; }
  .wb-mobile-menu.is-open .wb-mobile-menu__footer { opacity: 1; transform: none; transition: opacity .7s .45s, transform .7s .45s; }
  .wb-mobile-menu.is-visible .wb-mobile-menu__bar { background: transparent; }
  .wb-mobile-menu.is-visible .wb-mobile-menu__symbol { filter: brightness(0) invert(1); }
  .wb-mobile-menu.is-visible .wb-mobile-menu__toggle { color: #fff; border-color: rgb(255 255 255 / .3); }
  .wb-mobile-menu a:focus-visible, .wb-mobile-menu button:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
  .wb-mobile-menu .wb-mobile-menu__toggle:focus-visible { outline: none; }
  .wb-mobile-menu__toggle:focus-visible span { height: 2.5px; }
  @media (max-height: 650px) {
    .wb-mobile-menu__content { padding-top: 92px; }
    .wb-mobile-menu__label { margin-bottom: 14px; }
    .wb-mobile-menu__links { gap: 8px; }
    .wb-mobile-menu__link { font-size: 25px; }
    .wb-mobile-menu__footer { padding-top: 22px; }
  }
  @media (prefers-reduced-motion: reduce) {
    .wb-mobile-menu *, .wb-mobile-menu *::after { transition-duration: .01ms !important; transition-delay: 0s !important; }
  }
}
@media print { .wb-mobile-menu { display: none !important; } }
