/* DominiPay — menu único (extraído verbatim do header da Home para fidelidade total) */
:root{
  --navy:#12183d;--navy-2:#19224f;--navy-3:#283468;
  --blue:#11bfe5;--blue-2:#31cbed;--light:#b9f1fb;--ice:#eefbfe;
  --white:#fff;--paper:#f6f7f9;--text:#111722;--muted:#626e7d;--line:#dce2ea;
  --menu-tech:#121215;--menu-tech-2:#17191f;--menu-tech-3:#0e1015;
}
.site-header{position:fixed;z-index:1200;inset:0 0 auto;background:rgba(255,255,255,.96);border-bottom:1px solid transparent;transition:box-shadow .25s,border .25s,transform .35s;backdrop-filter:blur(16px)}
.site-header.scrolled{border-color:var(--line);box-shadow:0 10px 28px rgba(6,21,47,.07)}
.header-bar{min-height:82px;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}
.brand-symbol{width:40px;height:40px;color:var(--white);background:var(--navy);display:grid;place-items:center;border-radius:50%}
.brand-symbol svg{width:27px;height:27px}
.brand-name{font-size:1rem;letter-spacing:-.04em;font-weight:650}
.brand-name b{font-weight:900}
.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:25px}
.nav-trigger,.nav-direct{padding:30px 0;border:0;background:transparent;color:#303a48;font-size:.88rem;font-weight:690;position:relative;text-decoration:none}
.nav-trigger::after,.nav-direct::after{content:"";position:absolute;left:0;bottom:21px;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav-trigger:hover,.nav-trigger.active,.nav-direct:hover{color:var(--blue)}
.nav-trigger:hover::after,.nav-trigger.active::after,.nav-direct:hover::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center}
.nav-cta{cursor:pointer}
.mobile-toggle{display:none;width:44px;height:44px;border:0;background:var(--navy);position:relative}
.mobile-toggle span{position:absolute;left:12px;right:12px;height:2px;background:#fff;transition:.25s}
.mobile-toggle span:first-child{top:17px}
.mobile-toggle span:last-child{top:25px}
.mobile-toggle.open span:first-child{top:21px;transform:rotate(45deg)}
.mobile-toggle.open span:last-child{top:21px;transform:rotate(-45deg)}

/* Mega menu */
.mega-shell{position:absolute;left:0;right:0;top:82px;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .28s,transform .28s,visibility .28s;pointer-events:none;will-change:opacity,transform}
.mega-shell.open{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.mega-shell::before{content:"";position:absolute;inset:0;background:rgba(6,21,47,.24);height:100vh;z-index:-2;pointer-events:none!important}
.mega-pointer{position:absolute;top:-8px;width:18px;height:18px;background:var(--white);transform:rotate(45deg);transition:left .28s;z-index:2;box-shadow:-1px -1px 0 var(--line)}
.mega-stage{position:relative;min-height:390px;background:var(--white);box-shadow:0 30px 80px rgba(6,21,47,.22);overflow:hidden}
.mega-panel{display:none;grid-template-columns:350px 1fr;gap:54px;padding:48px 54px;min-height:390px;animation:megaIn .3s ease both}
.mega-panel.active{display:grid}
@keyframes megaIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.mega-intro{padding-right:36px;border-right:1px solid var(--line)}
.mega-intro.compact{max-width:430px}
.mega-overline,.mega-column-title{display:block;color:var(--blue);font-size:.7rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase;margin-bottom:17px}
.mega-intro h2{font-size:2.05rem;line-height:1.08;letter-spacing:-.045em;margin-bottom:18px}
.mega-intro p{color:var(--muted);font-size:.9rem;margin:0}
.mega-links{display:grid;gap:8px}
.mega-links.three{grid-template-columns:repeat(3,1fr)}
.mega-links.two{grid-template-columns:repeat(2,1fr)}
.mega-links a,.mega-column a{position:relative;padding:18px 18px;border:1px solid transparent;transition:.22s;display:block;text-decoration:none!important;color:inherit}
.mega-links a:hover,.mega-column a:hover{background:var(--ice);border-color:#d6e6fa;transform:translateY(-2px)}
.mega-links b,.mega-column b{display:block;font-size:.91rem;margin-bottom:3px}
.mega-links small,.mega-column small{display:block;color:var(--muted);font-size:.72rem;line-height:1.35}
.link-icon{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:var(--ice);color:var(--blue);font-size:.7rem;font-weight:850;margin-bottom:12px}
.mega-links .link-icon{width:42px;height:42px;background:transparent;border-radius:0}
.mega-links .link-icon img{width:100%;height:100%;object-fit:contain}
.mega-links .link-icon img[src$=".webp"]{background:linear-gradient(145deg,#f8f5ff,#eaf4ff);padding:4px;border-radius:10px}
.inline-arrow{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-weight:800;font-size:.86rem;text-decoration:none!important}
.mobile-drawer{display:none}

/* Wordmark/logo oficial */
.official-brand-icon{display:block;width:100%;height:100%;object-fit:contain}
.official-site-logo{display:block;object-fit:contain;width:112px;height:61px}
.site-header .brand.official-brand-lockup{min-width:132px;min-height:64px;padding:3px 10px;border-radius:15px;background:var(--navy);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(18,24,61,.15)}

/* Cabeçalho: fundo escuro com gradiente + logo horizontal */
.site-header{
  background:linear-gradient(115deg,rgba(18,18,21,.985) 0%,rgba(23,25,31,.985) 52%,rgba(14,16,21,.985) 100%)!important;
  border-bottom:1px solid rgba(17,191,229,.16)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(18px) saturate(125%)!important;
}
.site-header::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.025),transparent)}
.site-header.scrolled{
  background:linear-gradient(115deg,rgba(15,15,18,.985),rgba(21,23,29,.985),rgba(12,14,18,.985))!important;
  border-bottom-color:rgba(17,191,229,.24)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.28)!important;
}
.header-bar{min-height:86px!important;position:relative;z-index:2}
.site-header .brand.official-brand-lockup.header-horizontal-brand{
  min-width:0!important;min-height:0!important;padding:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;justify-content:flex-start!important;flex:0 0 auto;
}
.site-header .header-horizontal-logo{
  display:block!important;width:202px!important;height:auto!important;max-height:41px!important;
  object-fit:contain!important;object-position:left center!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.22));
}
.desktop-nav{gap:23px!important}
.nav-trigger,.nav-direct{color:rgba(255,255,255,.84)!important;padding-top:32px!important;padding-bottom:30px!important}
.nav-trigger:hover,.nav-trigger.active,.nav-direct:hover{color:#fff!important}
.nav-trigger::after,.nav-direct::after{background:var(--blue)!important;bottom:21px!important}
.mobile-toggle{background:rgba(255,255,255,.055)!important;border:1px solid rgba(17,191,229,.36)!important;border-radius:12px!important}
.mobile-toggle span{background:#fff!important}
.mega-shell{top:86px!important}

@media(max-width:1160px){
  .site-header .header-horizontal-logo{width:174px!important;max-height:37px!important}
  .desktop-nav{gap:16px!important}
}

@media(max-width:980px){
  .desktop-nav{display:none}
  .mobile-toggle{display:block;margin-left:auto}
  .mega-shell{display:none}
  .mobile-drawer{display:block;position:fixed;left:0;right:0;top:72px;bottom:0;background:#fff;transform:translateX(100%);transition:transform .38s cubic-bezier(.2,.75,.25,1);overflow:auto}
  .mobile-drawer.open{transform:none}
  .mobile-drawer-inner{padding:20px 18px 50px}
  .mobile-accordion,.mobile-main-link{border-bottom:1px solid var(--line)}
  .mobile-accordion-title,.mobile-main-link{width:100%;padding:19px 0;border:0;background:transparent;display:flex;justify-content:space-between;text-align:left;font-size:1.05rem;font-weight:800}
  .mobile-accordion-title span{color:var(--blue);font-size:1.3rem;transition:.25s}
  .mobile-accordion.open .mobile-accordion-title span{transform:rotate(45deg)}
  .mobile-accordion-content{max-height:0;overflow:hidden;transition:max-height .3s}
  .mobile-accordion-content a{display:block;padding:10px 12px;color:var(--muted);font-size:.9rem}
  .mobile-accordion.open .mobile-accordion-content{max-height:280px}
  .mobile-drawer .btn{width:100%;margin-top:26px}

  .site-header{background:linear-gradient(115deg,#121215,#17191f,#0e1015)!important}
  .header-bar{min-height:76px!important}
  .site-header .header-horizontal-logo{width:185px!important;max-height:34px!important}
  .mobile-drawer{top:76px!important;background:linear-gradient(160deg,#15171d,#0f1116)!important;color:#fff!important;border-top:1px solid rgba(17,191,229,.16)}
  .mobile-accordion,.mobile-main-link{border-bottom-color:rgba(255,255,255,.11)!important}
  .mobile-accordion-title,.mobile-main-link{color:#fff!important}
  .mobile-accordion-content a{color:rgba(255,255,255,.72)!important}
  .mobile-accordion-content a:hover{color:var(--light,#fff)!important}

  .site-header{z-index:6000!important}
  .mobile-toggle{position:relative!important;z-index:3!important;display:block!important;flex:0 0 48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;padding:0!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important}
  .mobile-toggle span{left:13px!important;right:13px!important;height:2px!important;border-radius:999px!important}
  .mobile-toggle span:first-child{top:18px!important}
  .mobile-toggle span:last-child{top:27px!important}
  .mobile-toggle.open span:first-child{top:23px!important;transform:rotate(45deg)!important}
  .mobile-toggle.open span:last-child{top:23px!important;transform:rotate(-45deg)!important}
  .mobile-menu-backdrop{
    display:block!important;position:fixed!important;left:0!important;right:0!important;top:76px!important;bottom:0!important;
    z-index:5800!important;border:0!important;padding:0!important;margin:0!important;background:rgba(2,7,18,.62)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:opacity .28s ease,visibility .28s ease!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important;
  }
  .mobile-menu-backdrop.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  #mobileDrawer.mobile-drawer{
    display:block!important;position:fixed!important;left:0!important;right:0!important;top:76px!important;bottom:0!important;
    width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;z-index:5900!important;
    margin:0!important;padding:0!important;border:0!important;border-top:1px solid rgba(17,191,229,.22)!important;
    background:linear-gradient(165deg,#151820 0%,#101219 52%,#0b0d13 100%)!important;color:#fff!important;
    overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;
    transform:translate3d(100%,0,0)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:transform .34s cubic-bezier(.22,.78,.22,1),opacity .24s ease,visibility .34s!important;
    box-shadow:-24px 0 60px rgba(0,0,0,.34)!important;contain:none!important;
  }
  #mobileDrawer.mobile-drawer.open{transform:translate3d(0,0,0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  #mobileDrawer .mobile-drawer-inner{width:100%!important;max-width:720px!important;margin:0 auto!important;padding:24px 24px calc(42px + env(safe-area-inset-bottom,0px))!important}
  .mobile-menu-heading{display:grid!important;gap:3px!important;padding:4px 0 20px!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
  .mobile-menu-heading span{font-size:1.45rem!important;font-weight:800!important;letter-spacing:-.035em!important;color:#fff!important}
  .mobile-menu-heading small{font-size:.78rem!important;color:rgba(255,255,255,.58)!important}
  #mobileDrawer .mobile-accordion,#mobileDrawer .mobile-main-link{border-bottom:1px solid rgba(255,255,255,.12)!important}
  #mobileDrawer .mobile-accordion-title,#mobileDrawer .mobile-main-link{
    width:100%!important;min-height:62px!important;padding:18px 2px!important;margin:0!important;border:0!important;background:transparent!important;
    color:#fff!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
    text-align:left!important;font-size:1.06rem!important;line-height:1.25!important;font-weight:780!important;text-decoration:none!important;
  }
  #mobileDrawer .mobile-accordion-title span,#mobileDrawer .mobile-main-link span{
    flex:0 0 auto!important;color:#11bfe5!important;font-size:1.25rem!important;font-weight:500!important;line-height:1!important;transition:transform .25s ease!important;
  }
  #mobileDrawer .mobile-accordion.open .mobile-accordion-title span{transform:rotate(45deg)!important}
  #mobileDrawer .mobile-accordion-content{display:block!important;max-height:0!important;overflow:hidden!important;opacity:0!important;transition:max-height .32s ease,opacity .22s ease!important}
  #mobileDrawer .mobile-accordion.open .mobile-accordion-content{max-height:360px!important;opacity:1!important}
  #mobileDrawer .mobile-accordion-content a{
    display:block!important;padding:11px 14px!important;margin:0 0 2px!important;border-radius:10px!important;
    color:rgba(255,255,255,.72)!important;background:transparent!important;font-size:.92rem!important;line-height:1.35!important;text-decoration:none!important;
  }
  #mobileDrawer .mobile-accordion-content a:last-child{margin-bottom:14px!important}
  #mobileDrawer .mobile-accordion-content a:active{background:rgba(17,191,229,.12)!important;color:#fff!important}
}

@media(max-width:700px){
  .header-bar{min-height:72px!important}
  .site-header .header-horizontal-logo{width:160px!important;max-height:30px!important}
  .mobile-drawer{top:72px!important}
  .mobile-menu-backdrop{top:72px!important}
  #mobileDrawer.mobile-drawer{top:72px!important}
  #mobileDrawer .mobile-drawer-inner{padding-left:20px!important;padding-right:20px!important}
}

@media(max-width:430px){
  .site-header .header-horizontal-logo{width:141px!important;max-height:26px!important}
  .site-header .header-actions{padding-left:10px!important}
  #mobileDrawer .mobile-drawer-inner{padding-left:18px!important;padding-right:18px!important}
  #mobileDrawer .mobile-accordion-title,#mobileDrawer .mobile-main-link{min-height:58px!important;font-size:1rem!important}
}

@media(min-width:981px){
  #mobileDrawer,.mobile-menu-backdrop{display:none!important}
}

.mobile-menu-backdrop{display:none}
