/* Navegação por toque: efeitos curtos, links reais e espaço para áreas seguras. */
.mobile-actions{display:none}
.menu-toggle{min-height:48px;min-width:92px;border:1px solid #82b8e638;border-radius:12px;padding:10px 14px;gap:9px;transition:background .2s,border-color .2s}
.menu-toggle[aria-expanded="true"]{background:#174268;border-color:#e8c67b}
.menu-toggle .icon{transition:transform .28s ease}
.menu-toggle[aria-expanded="true"] .icon{transform:rotate(90deg)}
:is(.button,.mobile-actions>a,#navigation>a){-webkit-tap-highlight-color:transparent;touch-action:manipulation}
:is(.button,.mobile-actions>a,#navigation>a).tap-feedback{box-shadow:inset 0 0 0 2px #e9c780,0 0 20px #64baff40}
@media(max-width:980px){
  .js nav#navigation,.js nav#navigation.is-open{display:flex}
  .js nav#navigation{visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-12px) scale(.98);transform-origin:top center}
  .js.menu-ready nav#navigation{transition:opacity .24s ease,transform .28s ease,visibility 0s .28s}
  .js nav#navigation.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:none;transition-delay:0s}
  nav#navigation{left:12px;right:12px;top:calc(100% + 8px);padding:14px;border:1px solid #73b7e845;border-radius:18px;background:linear-gradient(145deg,#102c49,#05172d);box-shadow:0 22px 65px #0009;max-height:calc(100dvh - var(--menu-top,120px) - 104px);overflow-y:auto;overscroll-behavior:contain}
  nav#navigation>a{min-height:48px;display:flex;align-items:center;justify-content:space-between;border-radius:10px;font-size:.95rem}
  .js nav#navigation.is-open>a{animation:menu-item-in .32s ease both}
  nav#navigation>a:nth-child(2){animation-delay:25ms!important}nav#navigation>a:nth-child(3){animation-delay:50ms!important}nav#navigation>a:nth-child(4){animation-delay:75ms!important}nav#navigation>a:nth-child(5){animation-delay:100ms!important}nav#navigation>a:nth-child(6){animation-delay:125ms!important}nav#navigation>a:nth-child(7){animation-delay:150ms!important}
  nav#navigation .nav-client{background:#ffffff08;border:1px solid #78afdc30}
  nav#navigation>a.nav-contact,nav#navigation>a.nav-contact:is(:hover,:focus-visible,[aria-current]){background:#e5c27b;color:#071b31;border-color:#e5c27b;text-shadow:none}
  nav#navigation>a:after{display:none}
  nav#navigation>a:active{background:#235479;color:#fff}
}
@keyframes menu-item-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
@media(max-width:720px){
  html{scroll-padding-bottom:100px}
  body{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}
  .nav-wrap{gap:12px;min-height:76px}
  .mobile-actions{display:grid;grid-template-columns:1.1fr 1fr;gap:8px;position:fixed;z-index:55;bottom:0;left:0;right:0;padding:10px max(14px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));background:#05162cf5;border-top:1px solid #89b9e237;backdrop-filter:blur(16px);box-shadow:0 -8px 30px #0003}
  .mobile-actions>a{min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 8px;border-radius:12px;font-size:.82rem;font-weight:750;line-height:1.25;text-decoration:none;border:1px solid #82b8e64a;color:#e8f2ff;background:#102e4a;transition:box-shadow .18s,background .18s}
  .mobile-actions>a:first-child{background:linear-gradient(120deg,#edcf8e,#d5ab59);color:#071a2d;border-color:#edcf8e}
  .mobile-actions .icon{width:20px;height:20px;flex-shrink:0}
  .mobile-actions>a:focus-visible{outline:2px solid #fff;outline-offset:3px}
  .whatsapp-float{display:none}
  .motion-toggle{position:relative;inset:auto;margin:8px 20px 12px;min-height:44px;font-size:.75rem}
  .footer-bottom{padding-bottom:20px;padding-right:0}
  .button{min-height:52px;padding:14px 18px}
  .actions{gap:12px}
  .hero-layout{padding-top:32px;gap:28px}
  .hero h1{font-size:clamp(2.4rem,9.5vw,3.7rem)}
  .hero-description{line-height:1.65}
  .contact-options>a{min-height:78px;padding:18px 14px;gap:12px}
  .contact-options>a>span{min-width:0}
  .contact-options strong{overflow-wrap:anywhere;font-size:clamp(.85rem,3.8vw,1rem)}
  .filter-button,[data-filter]{min-height:44px}
  .footer-main>div>a:not(.brand){min-height:44px;display:flex;align-items:center;margin-bottom:2px}
}
@media(max-width:380px){.mobile-actions>a{font-size:.76rem;gap:6px}.contact-page h1{font-size:2.45rem}.brand-crop{width:155px}.menu-toggle{min-width:84px;padding-inline:10px}}
.motion-paused nav#navigation,.motion-paused nav#navigation>a,.motion-paused .menu-toggle .icon{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.js nav#navigation,.js nav#navigation>a,.menu-toggle,.menu-toggle .icon,.mobile-actions>a{animation:none!important;transition:none!important;transform:none!important}}
@media print{.mobile-actions{display:none}body{padding-bottom:0}}
