
  html { scroll-behavior: smooth; }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  }
  body { 

  font-family: 'Poppins', sans-serif;

     color: #16202C; }
  h1, h2, h3, .font-display {  font-family: 'Poppins', sans-serif; }
  .font-mono-tight {  font-family: 'Poppins', sans-serif, monospace; letter-spacing: 0.02em; }

  /* Sticky header state */
  #site-header { transition: background-color 0.3s ease, box-shadow 0.3s ease, padding 0.3s ease; }
  #site-header.scrolled {
    background-color: rgba(255,255,255,0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 1px 0 0 rgba(20,40,63,0.08);
  }

  /* Dashboard frame corner brackets */
  .frame-corner { position: absolute; width: 22px; height: 22px; border-color: #4C8062; }
  .frame-corner.tl { top: -1px; left: -1px; border-top: 2px solid; border-left: 2px solid; }
  .frame-corner.tr { top: -1px; right: -1px; border-top: 2px solid; border-right: 2px solid; }
  .frame-corner.bl { bottom: -1px; left: -1px; border-bottom: 2px solid; border-left: 2px solid; }
  .frame-corner.br { bottom: -1px; right: -1px; border-bottom: 2px solid; border-right: 2px solid; }

  /* Live pulse dot */
  .pulse-dot { position: relative; }
  .pulse-dot::after {
    content: '';
    position: absolute; inset: 0;
    border-radius: 9999px;
    background-color: #E08A3C;
    animation: pulse-ring 1.8s cubic-bezier(0.4,0,0.6,1) infinite;
  }
  @keyframes pulse-ring {
    0% { transform: scale(1); opacity: 0.6; }
    100% { transform: scale(2.4); opacity: 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .pulse-dot::after { animation: none; }
  }

  /* Scan line across dashboard frame */
  .scan-line {
    position: absolute; left: 0; right: 0; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(76,128,98,0.6), transparent);
    animation: scan 3.2s ease-in-out infinite;
  }
  @keyframes scan {
    0%, 100% { top: 8%; opacity: 0; }
    10% { opacity: 1; }
    50% { top: 88%; opacity: 1; }
    60% { opacity: 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .scan-line { animation: none; opacity: 0; }
  }

  /* Focus visibility */
  a:focus-visible, button:focus-visible {
    outline: 2px solid #E08A3C;
    outline-offset: 3px;
    border-radius: 4px;
  }
@keyframes megaMenuFade{
from{opacity:0;transform:translateY(12px);}
to{opacity:1;transform:translateY(0);}
}
.group:hover>.absolute{
animation:megaMenuFade .25s ease;
}
.service-box{
position:relative;
display:flex;
align-items:center;
gap:12px;
padding:14px 8px;
border-radius:12px;
transition:all .25s ease;
text-decoration:none;
overflow:hidden;
}
.service-box::before{
content:"";
position:absolute;
left:0;
top:50%;
transform:translateY(-50%);
width:3px;
height:0;
background:#f97316;
border-radius:999px;
transition:.25s;
}
.service-box:hover::before{
height:26px;
}
.service-box:hover{
padding-left:16px;
background:rgba(249,115,22,.05);
}
.dark .service-box:hover{
background:rgba(249,115,22,.08);
}
.service-icon{
display:flex;
align-items:center;
justify-content:center;
width:38px;
height:38px;
flex-shrink:0;
border-radius:10px;
background:#f8fafc;
font-size:18px;
transition:.25s;
}
.dark .service-icon{
background:#1e293b;
}
.service-box:hover .service-icon{
background:#fff7ed;
color:#f97316;
transform:scale(1.08);
}
.dark .service-box:hover .service-icon{
background:rgba(249,115,22,.12);
}
.service-title{
flex:1;
font-size:14px;
font-weight:600;
line-height:1.4;
color:#0f172a;
transition:.25s;
}
.dark .service-title{
color:#f8fafc;
}
.service-box:hover .service-title{
color:#f97316;
}
.service-arrow{
opacity:0;
transform:translateX(-8px);
color:#f97316;
font-size:18px;
font-weight:700;
transition:.25s;
}
.service-box:hover .service-arrow{
opacity:1;
transform:translateX(0);
}
.group>.absolute>div{
transition:.3s;
}
.group:hover>.absolute>div{
box-shadow:0 30px 70px rgba(15,23,42,.18);
}
.dark .group:hover>.absolute>div{
box-shadow:0 30px 70px rgba(0,0,0,.45);
}

/* Mobile menu */
.mobile-link{
display:flex;
align-items:center;
padding:14px 20px;
font-weight:600;
color:#0B1F3A;
transition:.3s;
}
.dark .mobile-link{
color:#fff;
}
.mobile-link:hover{
background:#fff7ed;
color:#FF7A00;
}
.dark .mobile-link:hover{
background:rgba(255,122,0,.08);
}
.mobile-sub-link{
display:block;
padding:10px 20px;
color:#64748b;
transition:.3s;
}
.dark .mobile-sub-link{
color:#cbd5e1;
}
.mobile-sub-link:hover{
color:#FF7A00;
padding-left:28px;
}

.active-page{
color:#FF7A00 !important;
}

.dark .active-page{
color:#FF7A00 !important;
}

.active-page::after{
content:"";
position:absolute;
left:0;
bottom:-8px;
width:100% !important;
height:2px;
background:#FF7A00;
}