/*
Theme Name: Vastlytech
Theme URI: https://vastlytech.com/
Author: Vastlytech
Description: Absolute-fidelity Elementor-compatible theme for the Vastlytech interactive platform.
Version: 1.0.3
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: vastlytech
*/

  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:'Inter',system-ui,sans-serif;color:#0B1739;background:#F4FAFF;-webkit-font-smoothing:antialiased}
  ::selection{background:#38BDF8;color:#071A3D}
  a{color:#0EA5E9;text-decoration:none}
  a:hover{color:#2563EB}
  .vt-scroll::-webkit-scrollbar{width:8px;height:8px}
  .vt-scroll::-webkit-scrollbar-thumb{background:#D6EAF7;border-radius:8px}
  @keyframes vt-fade-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
  @keyframes vt-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
  @keyframes vt-pulse{0%,100%{opacity:.35}50%{opacity:1}}
  @keyframes vt-dash{to{stroke-dashoffset:0}}
  @keyframes vt-spin-slow{to{transform:rotate(360deg)}}
  @keyframes vt-sheen{0%{transform:translateX(-120%)}60%,100%{transform:translateX(220%)}}
  @keyframes vt-grid-pan{to{background-position:60px 60px}}
  @keyframes vt-rise{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
  @keyframes vt-aurora{to{background-position:200% 50%}}
  @keyframes vt-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  .vt-shimmer{background-size:220% 100%;animation:vt-aurora 6s linear infinite alternate}
  .vt-tilt{transition:transform .16s ease-out, box-shadow .3s ease;transform-style:preserve-3d;will-change:transform;box-shadow:0 12px 30px -20px rgba(7,26,61,.4)}
  .vt-tilt:hover{transform:perspective(900px) translateY(-6px) scale(1.02);box-shadow:0 34px 70px -30px rgba(7,26,61,.5),0 10px 24px -14px rgba(56,189,248,.35)}
  .vt-tilt>*{transition:transform .2s ease}
  @media (hover:none){.vt-tilt{transform:none !important}}
  @supports (animation-timeline: view()){
    .vt-svc-grid,.vt-sol-grid,.vt-case-grid,.vt-ins-grid,.vt-stat-grid{animation:vt-rise both;animation-timeline:view();animation-range:entry 2% cover 20%}
  }
  #vt-progress{animation:vt-progress linear both;animation-timeline:scroll(root)}
  @media (prefers-reduced-motion: reduce){*{animation-duration:.001ms !important;animation-iteration-count:1 !important}}
  @media (max-width:1280px){
    .vt-desk-nav{display:none !important}
    .vt-mob-btn{display:flex !important}
  }
  @media (max-width:1080px){
    .vt-desk-nav{display:none !important}
    .vt-mob-btn{display:flex !important}
    .vt-hero-grid{grid-template-columns:1fr !important;gap:36px !important}
    .vt-hero-visual{height:320px !important}
    .vt-ai-grid{grid-template-columns:1fr !important;gap:34px !important}
    .vt-eco-grid{grid-template-columns:1fr !important}
    .vt-ind-panel{grid-template-columns:1fr !important}
    .vt-est-grid{grid-template-columns:1fr !important}
    .vt-svc-grid,.vt-sol-grid,.vt-case-grid,.vt-ins-grid,.vt-prod-grid{grid-template-columns:repeat(2,1fr) !important}
    .vt-stat-grid{grid-template-columns:repeat(3,1fr) !important;gap:24px 12px !important}
    .vt-proc-grid{grid-template-columns:repeat(4,1fr) !important;gap:24px 12px !important}
    .vt-challenge-grid{grid-template-columns:repeat(2,1fr) !important}
  }
  @media (max-width:900px){
    .vt-p2,.vt-p3,.vt-p8{grid-template-columns:1fr !important}
    .vt-p4{grid-template-columns:repeat(2,1fr) !important}
    .vt-foot-grid{grid-template-columns:1fr 1fr !important;gap:28px !important}
    .vt-prod-grid,.vt-news-grid{grid-template-columns:1fr !important}
  }
  @media (min-width:641px) and (max-width:900px){
    .vt-p3{grid-template-columns:repeat(2,1fr) !important}
  }
  @media (max-width:640px){
    .vt-svc-grid,.vt-sol-grid,.vt-case-grid,.vt-ins-grid,.vt-challenge-grid{grid-template-columns:1fr !important}
    .vt-stat-grid{grid-template-columns:repeat(2,1fr) !important}
    .vt-proc-grid{grid-template-columns:repeat(2,1fr) !important}
    .vt-finder-opts{grid-template-columns:1fr !important}
    .vt-p4{grid-template-columns:repeat(2,1fr) !important}
  }
  @media (max-width:960px){
    .vt-portal-aside{display:none !important}
    .vt-portal-burger{display:flex !important}
  }
  @media (max-width:760px){
    .vt-portal-login{grid-template-columns:1fr !important}
    .vt-portal-login-aside{display:none !important}
    .vt-portal-main{padding:18px !important}
  }
  @media (max-width:640px){
    .vt-inv-head{display:none !important}
    .vt-inv-row{grid-template-columns:1fr auto !important;gap:4px 10px !important}
  }

/* WordPress/Elementor integration guards — source values remain authoritative. */
html,body{margin:0!important;padding:0!important}
body.admin-bar .vt-admin-offset{top:32px}
.vt-fragment-mount,.vt-elementor-fragment{display:contents}
.vt-source-page{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.elementor-widget-vastlytech_fragment,.elementor-widget-vastlytech_header,.elementor-widget-vastlytech_footer,.elementor-widget-vastlytech_portal{margin:0!important}
.elementor-widget-vastlytech_fragment>.elementor-widget-container,.elementor-widget-vastlytech_header>.elementor-widget-container,.elementor-widget-vastlytech_footer>.elementor-widget-container,.elementor-widget-vastlytech_portal>.elementor-widget-container{margin:0!important;padding:0!important}
@media(max-width:782px){body.admin-bar .vt-admin-offset{top:46px}}
