/* ITexpertSolutions final release stabilization layer */
:root{--rc-header-h:82px;--rc-safe-x:clamp(18px,4vw,64px)}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--rc-header-h) + 18px);overflow-x:hidden}
body{overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
.site-header{height:var(--rc-header-h);min-height:var(--rc-header-h);z-index:1000}
.header-inner{min-height:var(--rc-header-h);gap:clamp(14px,2vw,30px)}
.brand{flex:0 0 auto}.brand-logo{display:block;width:auto!important;height:48px!important;object-fit:contain}
.main-nav{min-width:0}.main-nav a,.header-cta{white-space:nowrap}
.premium-inner-hero,.premium-home-hero{isolation:isolate;overflow:hidden}
.hero-content-shell,.internal-hero-grid,.hero-layout{position:relative;z-index:3}
.hero-ai-network,.hero-ai-halo,.hero-ambient-code,.hero-scanline{pointer-events:none}
.hero-float-layer{pointer-events:none;z-index:8}
.hero-float{max-width:min(240px,40vw);white-space:normal;text-align:center;line-height:1.25}
.solutions-map{isolation:isolate;overflow:hidden}
.solutions-map .map-core,.solutions-map .map-node,.solutions-map .hero-float-layer{position:absolute;z-index:4}
.solutions-map .hero-ai-network,.solutions-map .hero-ai-halo,.solutions-map .hero-ambient-code,.solutions-map .hero-scanline{position:absolute;inset:0;z-index:1}
section[id]{scroll-margin-top:calc(var(--rc-header-h) + 24px)}
.quick-contact{z-index:900}
.footer-grid>*{min-width:0}.footer-contact a{overflow-wrap:anywhere}

@media (max-width:1180px){
 :root{--rc-header-h:74px}
 .header-cta{display:none!important}
 .main-nav{gap:clamp(12px,2vw,22px)}
 .hero-layout,.internal-hero-grid,.solutions-hero-layout,.about-hero-grid,.wd-hero-grid,.contact-hero-grid{column-gap:clamp(28px,5vw,64px)}
}
@media (max-width:900px){
 :root{--rc-header-h:68px}
 .site-header,.header-inner{height:var(--rc-header-h);min-height:var(--rc-header-h)}
 .brand-logo{height:42px!important}
 .menu-toggle{display:flex!important;position:relative;z-index:1002}
 .main-nav{position:fixed!important;inset:var(--rc-header-h) 0 auto 0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:14px var(--rc-safe-x) 22px!important;max-height:calc(100dvh - var(--rc-header-h));overflow:auto;background:rgba(8,12,20,.98)!important;backdrop-filter:blur(18px);transform:translateY(-125%);opacity:0;visibility:hidden;transition:transform .28s ease,opacity .2s ease,visibility .2s;z-index:1001}
 .main-nav.is-open,.site-header.menu-open .main-nav{transform:translateY(0);opacity:1;visibility:visible}
 .main-nav a{display:block!important;padding:14px 0!important;border-bottom:1px solid rgba(255,255,255,.09);font-size:17px!important}
 .language-switch{margin-left:auto}
 .hero-layout,.internal-hero-grid,.solutions-hero-layout,.about-hero-grid,.wd-hero-grid,.contact-hero-grid{grid-template-columns:1fr!important;display:grid!important}
 .premium-home-hero,.premium-inner-hero,.solutions-hero,.about-hero,.wd-hero,.contact-hero{min-height:auto!important;padding-top:clamp(100px,15vw,132px)!important;padding-bottom:clamp(54px,10vw,88px)!important}
 .hero-copy,.internal-hero-copy,.solutions-hero-copy,.about-copy,.wd-copy,.contact-hero-copy{max-width:720px!important}
 .hero-visual,.solutions-map,.about-visual,.editorial-canvas,.contact-hero-panel{width:min(100%,720px)!important;margin:28px auto 0!important}
 .hero-float-layer{display:none!important}
 .hero-ai-core{transform:scale(.78);transform-origin:center}
 .solutions-quick-nav__inner,.page-quick-nav__inner,.ux-local-nav__inner{overflow-x:auto;scrollbar-width:none;white-space:nowrap;justify-content:flex-start!important}
 .solutions-quick-nav__inner::-webkit-scrollbar,.page-quick-nav__inner::-webkit-scrollbar,.ux-local-nav__inner::-webkit-scrollbar{display:none}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:600px){
 :root{--rc-header-h:64px}
 .shell{width:min(100% - 32px,var(--shell,1200px))!important}
 .brand-logo{height:38px!important}
 .language-switch{font-size:13px}
 h1{font-size:clamp(38px,11vw,58px)!important;line-height:1.02!important;overflow-wrap:anywhere}
 h2{font-size:clamp(30px,8.5vw,44px)!important;line-height:1.08!important}
 .hero-lead,.premium-inner-hero p,.solutions-hero-copy>p,.about-copy>p,.wd-copy>p,.contact-hero-copy>p{font-size:17px!important;line-height:1.6!important}
 .hero-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
 .hero-actions .btn,.hero-actions a{justify-content:center;text-align:center;width:100%}
 .hero-proof{grid-template-columns:1fr!important;gap:10px!important}
 .hero-visual{min-height:390px!important}
 .hero-ai-core{display:block!important;transform:scale(.66)!important;transform-origin:50% 40%!important}
 .hero-laptop-stage{margin-top:50px!important}
 .hero-laptop-ui{font-size:8px!important}
 .solutions-map{min-height:520px!important;transform:none!important}
 .solutions-map .map-node{font-size:12px!important;max-width:122px!important}
 .contact-hero-trust{grid-template-columns:1fr!important}
 .footer-grid{grid-template-columns:1fr!important}
 .footer-bottom{flex-direction:column!important;align-items:flex-start!important;gap:10px!important}
 .quick-contact{right:10px!important;bottom:10px!important;gap:8px!important}
 .quick-contact a{font-size:11px!important;padding:10px 12px!important}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-ai-core,.hero-ai-network,.hero-scanline,.hero-ambient-code,.hero-data-pulse,.reveal{animation:none!important;transition:none!important;transform:none!important}}

/* Final desktop active navigation state */
@media (min-width: 761px) {
  .site-header .main-nav a {
    position: relative;
  }
  .site-header .main-nav a[aria-current="page"] {
    color: #fff !important;
  }
  .site-header .main-nav a[aria-current="page"]::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -12px;
    width: 24px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, #69b3ff, #2386ff);
    box-shadow: 0 0 14px rgba(35, 134, 255, .65);
    transform: translateX(-50%);
  }
}

/* Mobile and tablet active navigation state */
@media (max-width: 900px) {
  .site-header .main-nav a {
    position: relative;
    padding-left: 18px !important;
    border-radius: 10px;
  }

  .site-header .main-nav a[aria-current="page"] {
    color: #ffffff !important;
    background: linear-gradient(90deg, rgba(35, 134, 255, .22), rgba(35, 134, 255, .04)) !important;
    border-bottom-color: rgba(105, 179, 255, .28) !important;
    box-shadow: inset 3px 0 0 #2386ff;
  }

  .site-header .main-nav a[aria-current="page"]::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #69b3ff;
    box-shadow: 0 0 12px rgba(105, 179, 255, .85);
    transform: translateY(-50%);
  }
}

/* CRITICAL FIX: visible and functional mobile/tablet menu toggle */
@media (max-width: 900px) {
  .site-header .menu-toggle {
    display: flex !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    padding: 10px !important;
    margin-left: auto !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 6px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 12px !important;
    background: rgba(7,17,31,.72) !important;
    cursor: pointer !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .site-header .menu-toggle span {
    display: block !important;
    flex: 0 0 2px !important;
    width: 23px !important;
    height: 2px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #fff !important;
    transform-origin: center !important;
    transition: transform .22s ease, opacity .18s ease !important;
  }
  .site-header .menu-toggle[aria-expanded="true"] span:first-child {
    transform: translateY(4px) rotate(45deg) !important;
  }
  .site-header .menu-toggle[aria-expanded="true"] span:last-child {
    transform: translateY(-4px) rotate(-45deg) !important;
  }
  .site-header .main-nav.open,
  .site-header .main-nav.is-open,
  .site-header.menu-open .main-nav,
  body.menu-open .site-header .main-nav {
    transform: translateY(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

/* Mobile UX: remove top-of-page hero CTAs that resemble secondary/legal navigation. */
@media (max-width: 900px) {
  main > section:first-of-type .hero-actions,
  main > section:first-of-type .contact-hero-actions,
  main > section:first-of-type .solutions-hero-actions,
  main > section:first-of-type .wd-hero-actions,
  .premium-inner-hero .hero-actions,
  .premium-home-hero .hero-actions {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
}

/* Contact page mobile: explicitly remove hero action buttons. */
@media (max-width: 900px) {
  body.contact-page .contact-hero .contact-actions {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
}
