/* EVENT86 v99.3: Android and cross-browser mobile compatibility */
:root{--event86-mobile-vh:100vh}
html.event86-modal-open,body.event86-modal-open,html.event86-cookie-panel-open,body.event86-cookie-panel-open{overflow:hidden!important;overscroll-behavior:none!important}
button,a,input,select,textarea,summary,[role="button"]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button,input,select,textarea{font-family:inherit}
.menu-button,.close,.cookie-panel-close{min-width:48px!important;min-height:48px!important}
.menu-button{flex:0 0 48px!important;display:grid!important;place-content:center!important}
.modal{z-index:200!important;overflow:hidden;overscroll-behavior:contain;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important}
.modal-card{max-height:calc(100vh - 24px)!important;max-height:calc(100dvh - 24px)!important;max-height:calc(var(--event86-mobile-vh) - 24px)!important;overflow:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
body.event86-modal-open .cookie-consent,body.event86-modal-open .cookie-reopen,body.event86-modal-open .social-dock{visibility:hidden!important;pointer-events:none!important}
.cookie-panel{z-index:220!important;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.cookie-panel-card{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);max-height:calc(var(--event86-mobile-vh) - 24px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.social-dock{pointer-events:none}.social-dock-link{pointer-events:auto}
.v34-case-filters,.v34-calc-steps,.blog-filter-row,.catalog-filter-row{-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:none}
.v34-case-filters::-webkit-scrollbar,.v34-calc-steps::-webkit-scrollbar,.blog-filter-row::-webkit-scrollbar,.catalog-filter-row::-webkit-scrollbar{display:none}

@media (hover:none),(pointer:coarse){
  .btn:hover,.home-info-link:hover,.ref-more:hover,.v34-pill:hover,.image-card:hover,.catalog-card:hover,.blog-card:hover,.case-tile:hover,.team-member-card:hover,.presentation-card-v46:hover,.presentation-mini-v46:hover,.v34-capabilities article:hover,.v34-benefits-six article:hover,.v31-benefits-grid article:hover,.contact-quick-card-v45:hover{transform:none!important}
  .btn:hover span,.home-info-link:hover,.catalog-v33-card:hover b,.service-v33-card:hover b,.ref-service-card:hover em{transform:none!important}
  .btn:active,.v34-pill:active,.menu-button:active,.mobile-menu a:active,.cookie-btn:active{transform:scale(.98)!important}
}

@media(max-width:900px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .page-shell{min-height:100vh;min-height:100dvh;min-height:var(--event86-mobile-vh)}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:16px!important}
  .modal{align-items:flex-start!important}
  .modal-card{width:100%!important;max-width:560px!important;margin:auto!important;border-radius:24px!important}
  #menuModal .modal-card.small{width:min(100%,430px)!important;padding:22px!important}
  .mobile-menu{gap:8px!important}
  .mobile-menu a{display:flex!important;align-items:center!important;min-height:52px!important;padding:12px 16px!important;line-height:1.15!important}
  .mobile-menu-brand{padding-right:52px!important}
  .motion-item,.motion-item.motion-v46-left,.motion-item.motion-v46-right,.motion-item.motion-v46-up{filter:none!important;transform:translateY(12px) scale(.995)!important;transition-duration:.42s!important}
  .motion-item.motion-visible{transform:none!important}
  .team-members-grid.motion-item,.team-departments-grid.motion-item,.team-values-grid.motion-item,.team-members-grid,.team-departments-grid,.team-values-grid{opacity:1!important;transform:none!important;filter:none!important}
  .team-member-card,.team-departments-grid article,.team-values-grid article,.team-vacancy,.team-stats{min-width:0!important;max-width:100%!important}
  .team-member-body{min-width:0}.team-member-body>a{width:44px!important;height:44px!important}
  .team-member-body h3,.team-member-body p,.team-departments-grid h3,.team-values-grid h3{overflow-wrap:anywhere}
  .cookie-consent{width:calc(100% - 20px)!important;max-height:calc(100vh - 20px)!important;max-height:calc(100dvh - 20px)!important;max-height:calc(var(--event86-mobile-vh) - 20px)!important;bottom:max(10px,env(safe-area-inset-bottom))!important;padding:18px!important;gap:12px!important;overflow:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .cookie-consent-copy b{font-size:18px!important}.cookie-consent-copy p{font-size:14px!important;line-height:1.38!important}
  .cookie-consent-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}
  .cookie-consent-actions .cookie-link{grid-column:1/-1;min-height:44px;justify-self:start}.cookie-btn{min-height:48px!important;padding:10px 14px!important}
  .cookie-panel{padding:10px!important}.cookie-panel-card{padding:26px 20px!important;border-radius:22px!important}.cookie-panel-card h2{font-size:32px!important;padding-right:44px}
  .social-dock{right:max(10px,env(safe-area-inset-right))!important;bottom:max(10px,env(safe-area-inset-bottom))!important;gap:8px!important}
  .social-dock-link{width:44px!important;height:44px!important;border-radius:14px!important}
  .cookie-reopen{left:max(10px,env(safe-area-inset-left))!important;bottom:max(10px,env(safe-area-inset-bottom))!important;min-height:44px}
}

@media(max-width:560px){
  #menuModal{padding:8px!important}
  #menuModal .modal-card.small{max-height:calc(100vh - 16px)!important;max-height:calc(100dvh - 16px)!important;max-height:calc(var(--event86-mobile-vh) - 16px)!important;padding:20px!important;border-radius:22px!important}
  .mobile-menu-brand{width:min(230px,78%)!important;margin-bottom:16px!important}.mobile-menu a{min-height:50px!important;font-size:19px!important}
  .team-hero-copy h1{font-size:clamp(46px,15vw,66px)!important;line-height:.88!important}
  .team-hero-art{min-height:360px!important}.team-hero-main{height:315px!important;inset:0 0 34px 0!important}
  .team-hero-note{top:150px!important;right:6px!important;width:158px!important;padding:16px!important}.team-hero-note b{font-size:34px!important}
  .team-stats article{min-width:0;padding:18px 14px!important}.team-stats b{font-size:29px!important}.team-stats span{font-size:12px!important;overflow-wrap:anywhere}
  .team-member-photo{height:auto!important;aspect-ratio:4/4.25}.team-vacancy img{height:220px!important}.team-vacancy>div{padding:26px 20px!important}.team-vacancy h2{font-size:38px!important;overflow-wrap:anywhere}
}


/* EVENT86 v99.3.2: Android scroll/click safety layer */
html.event86-ui-locked,
body.event86-ui-locked,
html.event86-modal-open,
body.event86-modal-open,
html.event86-cookie-panel-open,
body.event86-cookie-panel-open{overflow:hidden!important;overscroll-behavior:contain!important}

@media(max-width:900px){
  html:not(.event86-ui-locked):not(.event86-modal-open):not(.event86-cookie-panel-open),
  body:not(.event86-ui-locked):not(.event86-modal-open):not(.event86-cookie-panel-open){overflow-y:auto!important}
  .page-shell{overflow-x:hidden!important;overflow-y:visible!important}
  .modal{overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  .modal-card{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
}

@media(max-width:760px){
  html,body,body.v34-page,body.case-detail-page,body.services-page,body.team-page{overscroll-behavior-y:auto!important}
}

/* EVENT86 v99.3.3: single-tap menu and case gallery reliability */
.menu-button,[data-modal],[data-close],.v34-case-gallery-hero [data-case-thumb],.v34-case-gallery-hero [data-case-main]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.v34-case-gallery-hero [data-case-thumb]{cursor:pointer;user-select:none;-webkit-user-select:none}
.v34-case-gallery-hero [data-case-thumb].is-active{pointer-events:auto}
.v34-case-gallery-hero [data-case-main]{cursor:zoom-in}
