  :root{
    --royal:#0B3D91;
    --navy:#082A63;
    --orange:#FF7A00;
    --lightgray:#F8FAFC;
    --inktext:#1E293B;
    --bordergray:#E5E7EB;
  }
  html{scroll-behavior:smooth;}
  section[id]{scroll-margin-top:88px;}
  body{font-family:'Plus Jakarta Sans',sans-serif;color:var(--inktext); background:#fff; overflow-x:hidden;}
  h1,h2,h3,h4,.font-heading{font-family:'Poppins',sans-serif;}
  .font-display{font-family:'Outfit',sans-serif;}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;}
  }

  .orange-gradient{background:linear-gradient(90deg,#FF7A00 0%, #FF9E45 100%); -webkit-background-clip:text; background-clip:text; color:transparent;}
  .royal-gradient{background:linear-gradient(135deg,#0B3D91 0%, #082A63 100%);}
  .glass{background:rgba(255,255,255,0.65); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,0.5);}
  .glass-dark{background:rgba(8,42,99,0.55); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,0.12);}

  .btn-primary{
    background:linear-gradient(90deg,#FF7A00,#FF9640);
    box-shadow:0 12px 30px -8px rgba(255,122,0,0.55);
    transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease;
  }
  .btn-primary:hover{transform:translateY(-3px) scale(1.02); box-shadow:0 18px 40px -8px rgba(255,122,0,0.65);}

  .btn-outline{
    border:1.5px solid var(--royal); color:var(--royal);
    transition:all .35s ease;
  }
  .btn-outline:hover{background:var(--royal); color:#fff; transform:translateY(-3px);}

  .card-hover{transition:transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s ease;}
  .card-hover:hover{transform:translateY(-10px); box-shadow:0 25px 50px -12px rgba(11,61,145,0.25);}

  .navlink{position:relative;}
  .navlink::after{content:'';position:absolute; left:0; bottom:-6px; width:0%; height:2px; background:var(--orange); transition:width .3s ease;}
  .navlink:hover::after{width:100%;}

  .blur-blob{filter:blur(70px); opacity:.55;}

  .float-slow{animation:floatY 6s ease-in-out infinite;}
  .float-slow2{animation:floatY 7.5s ease-in-out infinite; animation-delay:.6s;}
  @keyframes floatY{0%,100%{transform:translateY(0);}50%{transform:translateY(-16px);}}

  .marquee-track{display:flex; width:max-content; animation:marquee 28s linear infinite;}
  @keyframes marquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

  .accordion-content{max-height:0; overflow:hidden; transition:max-height .4s ease;}

  .counter{font-variant-numeric:tabular-nums;}

  .section-eyebrow{letter-spacing:.14em;}

  input:focus, textarea:focus{outline:none; box-shadow:0 0 0 3px rgba(255,122,0,0.25);}

  ::selection{background:var(--orange); color:#fff;}

  .scrollbar-hide::-webkit-scrollbar{display:none;}
  .scrollbar-hide{-ms-overflow-style:none; scrollbar-width:none;}

  .masonry{column-count:1; column-gap:1rem;}
  @media(min-width:640px){.masonry{column-count:2;}}
  @media(min-width:1024px){.masonry{column-count:3;}}
  .masonry > div{break-inside:avoid; margin-bottom:1rem;}

  .whatsapp-pulse::before{
    content:''; position:absolute; inset:0; border-radius:9999px; background:#25D366; opacity:.6;
    animation:pulseRing 2.2s ease-out infinite;
  }
  @keyframes pulseRing{0%{transform:scale(1); opacity:.55;}100%{transform:scale(2.1); opacity:0;}}

  .sticky-nav-shadow{box-shadow:0 8px 30px -12px rgba(11,61,145,0.15);}
