
/* ═══════════════════════════════════════════
   TOKENS
═══════════════════════════════════════════ */
:root{
  --ink:#0a1628;
  --ink2:#13223c;
  --ink3:#1e3252;
  --red:#e8393f;
  --red2:#ff5a5f;
  --red3:rgba(232,57,63,.12);
  --gold:#c9923a;
  --silver:rgba(255,255,255,.06);
  --glass:rgba(255,255,255,.04);
  --glass2:rgba(255,255,255,.07);
  --border:rgba(255,255,255,.09);
  --border2:rgba(255,255,255,.05);
  --muted:rgba(255,255,255,.45);
  --sub:rgba(255,255,255,.65);
  --white:#fff;
  --font-head:'Syne',sans-serif;
  --font-body:'DM Sans',sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
  --r-sm:14px;
  --r-md:20px;
  --r-lg:28px;
  --r-xl:36px;
}

/* ═══════════════════════════════════════════
   BASE
═══════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  font-family:var(--font-body);
  background:var(--ink);
  color:var(--white);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;cursor:pointer;}
ul{list-style:none;}

/* grain overlay */
body::before{
  content:'';
  position:fixed;inset:0;z-index:999;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
  opacity:.028;
  pointer-events:none;
}

/* ═══════════════════════════════════════════
   SCROLL ANIMATIONS
═══════════════════════════════════════════ */
[data-reveal]{
  opacity:0;
  transform:translateY(40px);
  transition:opacity .8s var(--ease),transform .8s var(--ease);
}
[data-reveal="left"]{transform:translateX(-50px);}
[data-reveal="right"]{transform:translateX(50px);}
[data-reveal="scale"]{transform:scale(.92);}
[data-reveal].is-visible{opacity:1!important;transform:none!important;}

/* ═══════════════════════════════════════════
   SHARED
═══════════════════════════════════════════ */
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(20px,5vw,60px);}
.section{position:relative;overflow:hidden;}
.chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:5px 16px;border-radius:100px;
  font-family:var(--font-body);font-size:11px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;
  border:1px solid rgba(232,57,63,.3);
  background:rgba(232,57,63,.08);color:var(--red2);
}
.chip::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--red2);flex-shrink:0;}

/* ═══════════════════════════════════════════
   NAVBAR — Ultra Premium
═══════════════════════════════════════════ */
#nav{position:fixed;top:0;left:0;right:0;z-index:9000;
  transition:background .5s var(--ease),border-color .5s var(--ease),box-shadow .5s var(--ease);}
@media(max-width:1024px){#nav{padding:0 20px;}}
#nav.solid{background:rgba(8,14,26,0.96);-webkit-backdrop-filter:blur(28px) saturate(180%);
  backdrop-filter:blur(28px) saturate(180%);border-bottom:1px solid rgba(232,57,63,.12);
  box-shadow:0 8px 48px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.04) inset;}
.nav-inner {
    max-width: 1280px;
    margin: 0 auto;
    height: 76px;
    display: flex;
    justify-content: center;
    gap: 20px;
    align-items: center;
    padding: 0 clamp(20px, 5vw, 60px);
}
@media(max-width:960px){.nav-inner 
{
        padding: 0 20px;
        display: flex;
        justify-content: space-between;
    }
    
}
@media(max-width:480px){.nav-inner{padding:0px;}}

/* Logo */
.nav-logo{
  display:flex;align-items:center;gap:12px;
  flex-shrink:0;position:relative;z-index:2;
  -webkit-tap-highlight-color:transparent;
}
.logo-mark{
  width:42px;height:42px;
  background:linear-gradient(135deg,var(--red),#c2282e);
  border-radius:11px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(232,57,63,.4),0 1px 0 rgba(255,255,255,.15) inset;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease);
  flex-shrink:0;
}
.nav-logo:hover .logo-mark{transform:rotate(-6deg) scale(1.08);box-shadow:0 8px 30px rgba(232,57,63,.55);}
.logo-mark svg{width:22px;height:22px;}
.logo-text{font-family:var(--font-head);font-size:18px;font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1;}
.logo-text span{color:var(--red2);}
@media(max-width:380px){.logo-text{font-size:16px;}.logo-mark{width:36px;height:36px;}}

/* Center nav links */
.nav-links{
  display:flex;align-items:center;justify-content:center;gap:2px;
  flex:1;
}
@media(max-width:960px){.nav-links{display:none!important;flex:none;}}
.nav-links a{
  position:relative;
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 14px;border-radius:10px;
  font-family:var(--font-body);font-size:13px;font-weight:500;
  color:var(--sub);
  transition:color .25s,background .25s;
  white-space:nowrap;
  -webkit-tap-highlight-color:transparent;
}
.nav-links a i{font-size:10.5px;opacity:.6;transition:opacity .25s;}
.nav-links a:hover{color:#fff;background:var(--glass2);}
.nav-links a:hover i{opacity:1;}
.nav-links a.active{color:#fff;}
.nav-links a.active::after{
  content:'';position:absolute;bottom:4px;left:50%;
  transform:translateX(-50%);
  width:18px;height:2px;border-radius:2px;
  background:var(--red2);
}
@media(max-width:960px){.nav-links{display:none;}}

/* Right side */
.nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.nav-available{
  display:flex;align-items:center;gap:7px;
  padding:6px 14px;border-radius:100px;
  background:rgba(34,197,94,.08);
  border:1px solid rgba(34,197,94,.2);
  font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:#4ade80;white-space:nowrap;
}
.nav-dot{
  width:6px;height:6px;border-radius:50%;background:#4ade80;flex-shrink:0;
  animation:navDot 2.4s ease-in-out infinite;
}
@keyframes navDot{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(74,222,128,.6);}50%{opacity:.3;box-shadow:0 0 0 4px rgba(74,222,128,0);}}
@media(max-width:660px){.nav-available{display:none;}}

/* CTA */
.nav-cta{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 22px;border-radius:100px;
  background:var(--red);color:#fff;
  font-family:var(--font-body);font-size:12px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;
  box-shadow:0 4px 20px rgba(232,57,63,.35);
  transition:background .3s,box-shadow .3s,transform .3s;
  white-space:nowrap;
  -webkit-tap-highlight-color:transparent;
}
.nav-cta i{font-size:10px;transition:transform .3s;}
.nav-cta:hover{background:var(--red2);box-shadow:0 8px 32px rgba(232,57,63,.5);transform:translateY(-2px);}
.nav-cta:hover i{transform:translateX(4px);}
@media(max-width:440px){.nav-cta span{display:none;}}

/* Hamburger */
.nav-burger{
  display:none;
  width:42px;height:42px;border-radius:10px;
  background:var(--glass);border:1px solid var(--border2);
  align-items:center;justify-content:center;
  flex-direction:column;gap:5px;
  transition:background .25s;
  -webkit-tap-highlight-color:transparent;
}
.nav-burger:hover{background:var(--glass2);}
.nav-burger span{
  display:block;width:18px;height:1.5px;background:#fff;border-radius:2px;
  transition:transform .38s var(--ease),opacity .25s,width .3s;
  transform-origin:center;
}
.nav-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-burger.open span:nth-child(2){opacity:0;width:0;}
.nav-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
@media(max-width:960px){.nav-burger{display:flex;}}

/* Mobile drawer */
#nav-drawer{
  position:fixed;inset:0;z-index:8999;
  background:rgba(6,10,20,0.98);
  -webkit-backdrop-filter:blur(28px);
  backdrop-filter:blur(28px);
  display:flex;flex-direction:column;padding:80px 28px 40px;
  transform:translateX(100%);
  transition:transform .48s var(--ease);
  overflow-y:auto;-webkit-overflow-scrolling:touch;
}
#nav-drawer.open{transform:translateX(0);}

/* grid bg in drawer */
#nav-drawer::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:48px 48px;
  pointer-events:none;
}
#nav-drawer::after{
  content:'';position:absolute;top:-100px;right:-100px;
  width:450px;height:450px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(232,57,63,.1),transparent 65%);
  pointer-events:none;
}
.drawer-links{
  display:flex;flex-direction:column;gap:4px;
  position:relative;z-index:1;
}
.drawer-links a{
  display:flex;align-items:center;gap:18px;
  padding:16px 20px;border-radius:16px;
  font-family:var(--font-head);font-size:18px;font-weight:600;
  color:rgba(255,255,255,.65);
  border:1px solid transparent;
  transition:color .25s,background .25s,border-color .25s,transform .3s;
  -webkit-tap-highlight-color:transparent;
  transform:translateX(32px);opacity:0;
}
#nav-drawer.open .drawer-links a{opacity:1;transform:none;}
.drawer-links a:nth-child(1){transition:color .25s,background .25s,border-color .25s,opacity .45s .07s var(--ease),transform .45s .07s var(--ease);}
.drawer-links a:nth-child(2){transition:color .25s,background .25s,border-color .25s,opacity .45s .13s var(--ease),transform .45s .13s var(--ease);}
.drawer-links a:nth-child(3){transition:color .25s,background .25s,border-color .25s,opacity .45s .19s var(--ease),transform .45s .19s var(--ease);}
.drawer-links a:nth-child(4){transition:color .25s,background .25s,border-color .25s,opacity .45s .25s var(--ease),transform .45s .25s var(--ease);}
.drawer-links a:nth-child(5){transition:color .25s,background .25s,border-color .25s,opacity .45s .31s var(--ease),transform .45s .31s var(--ease);}
.drawer-links a:nth-child(6){transition:color .25s,background .25s,border-color .25s,opacity .45s .37s var(--ease),transform .45s .37s var(--ease);}
.drawer-links a .d-icon{
  width:44px;height:44px;flex-shrink:0;
  border-radius:12px;background:var(--glass);border:1px solid var(--border2);
  display:flex;align-items:center;justify-content:center;
  font-size:15px;color:rgba(255,255,255,.4);
  transition:background .25s,border-color .25s,color .25s;
}
.drawer-links a:hover,.drawer-links a.active{
  color:#fff;background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.07);
}
.drawer-links a:hover .d-icon,.drawer-links a.active .d-icon{
  background:rgba(232,57,63,.12);border-color:rgba(232,57,63,.25);color:var(--red2);
}
.drawer-divider{margin:20px 0;border:none;border-top:1px solid var(--border2);}
.drawer-cta-wrap{
  position:relative;z-index:1;
  opacity:0;transform:translateY(20px);
  transition:opacity .45s .44s var(--ease),transform .45s .44s var(--ease);
}
#nav-drawer.open .drawer-cta-wrap{opacity:1;transform:none;}
.drawer-cta{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 24px;border-radius:100px;
  background:linear-gradient(135deg,var(--red),#c2282e);
  color:#fff;font-family:var(--font-head);font-size:15px;font-weight:700;
  box-shadow:0 8px 32px rgba(232,57,63,.35);
  transition:transform .3s,box-shadow .3s;
  -webkit-tap-highlight-color:transparent;
}
.drawer-cta:hover{transform:scale(1.03);box-shadow:0 12px 40px rgba(232,57,63,.5);}
.drawer-footer{
  margin-top:auto;padding-top:20px;position:relative;z-index:1;
  opacity:0;transition:opacity .45s .55s var(--ease);
}
#nav-drawer.open .drawer-footer{opacity:1;}
.drawer-footer p{font-size:11px;color:rgba(255,255,255,.18);letter-spacing:.12em;text-transform:uppercase;}

/* ═══════════════════════════════════════════
   HERO — merged with About
═══════════════════════════════════════════ */
#hero{
  min-height:100svh;
  display:grid;
  grid-template-rows:1fr;
  position:relative;
  padding-top:76px;
  background:var(--ink);
  overflow:hidden;
}
@media(max-width:480px){#hero{padding-top:64px;}}

/* layered backgrounds */
.hero-bg-img{
  position:absolute;inset:0;
  background:url('../img/df8746ea27b5bd87ceebb868e208056a.png') center top/cover no-repeat;
  transform:scale(1.06);
  transition:transform 10s ease;
  z-index:0;
  -webkit-transform:scale(1.06) translateZ(0);
  transform:scale(1.06) translateZ(0);
}
#hero:hover .hero-bg-img{-webkit-transform:scale(1.12) translateZ(0);transform:scale(1.12) translateZ(0);}
.hero-overlay-1{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(to right,rgba(8,14,26,.98) 42%,rgba(8,14,26,.7) 65%,rgba(8,14,26,.25) 100%);
}
.hero-overlay-2{
  position:absolute;inset:0;z-index:2;
  background:linear-gradient(to bottom,transparent 60%,rgba(8,14,26,1) 100%);
}
.hero-overlay-3{
  position:absolute;inset:0;z-index:3;
  background:radial-gradient(ellipse 50% 70% at 8% 55%,rgba(232,57,63,.13),transparent 60%);
}
.hero-grid-lines{
  position:absolute;inset:0;z-index:4;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size:60px 60px;
  pointer-events:none;
}
#hero-canvas{
  position:absolute;inset:0;z-index:5;
  pointer-events:none;width:100%;height:100%;
}

/* hero layout */
.hero-body {
    position: relative;
    z-index: 6;
    width: 100%;
    padding: clamp(50px, 7vh, 100px) 0 clamp(70px, 9vh, 130px);
    margin-bottom: 60px;
}
.hero-inner{max-width:1280px;margin:0 auto;width:100%;padding:0 clamp(20px,5vw,60px);}
.hero-cols {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: clamp(32px, 4vw, 64px);
    align-items: center;
    padding-top: clamp(16px, 1vw, 16px);
}
@media(max-width:1200px){.hero-cols{grid-template-columns:1fr 320px;}}
@media(max-width:1000px){.hero-cols{grid-template-columns:1fr 280px;gap:28px;}}
@media(max-width:820px){.hero-cols{grid-template-columns:1fr;}}


/* left column */
.hero-left{}
.hero-eyebrow{
  display:flex;align-items:center;gap:12px;margin-bottom:28px;
  animation:heroFadeUp .9s .1s var(--ease) both;
}
@keyframes heroFadeUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:none;}}
.hero-name-tag{
  display:flex;align-items:center;gap:10px;
  padding:8px 20px 8px 8px;border-radius:100px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
}
.hero-avatar{
  width:36px;height:36px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--red),#c2282e);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-size:13px;font-weight:700;color:#fff;
}
.hero-name-tag span{font-size:12px;font-weight:500;color:rgba(255,255,255,.7);letter-spacing:.04em;}
.hero-live{
  display:flex;align-items:center;gap:6px;
  padding:6px 14px;border-radius:100px;
  background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.2);
  font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#4ade80;
}
.hero-live-dot{width:5px;height:5px;border-radius:50%;background:#4ade80;animation:navDot 2.4s ease-in-out infinite;}
.hero-h1 {
    font-family: var(--font-head);
    font-size: clamp(30px, 3.1vw, 48px);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.024em;
    color: #fff;
    margin-bottom: 18px;
    animation: hUp .9s .2s var(--ease) both;
}
.hero-h1 em{
  font-style:normal;color:var(--red2);
  position:relative;display:inline-block;
}
.hero-h1 em::after{
  content:'';position:absolute;
  bottom:-4px;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--red),rgba(232,57,63,.2));
  border-radius:3px;
}
.hero-desc{
  font-size:clamp(13px,1.2vw,15px);
  color:rgb(255 255 255);
  line-height:1.82;
  max-width:520px;
  margin-bottom:28px;
  animation:heroFadeUp .9s .3s var(--ease) both;
}
.hero-pills{
  display:flex;flex-wrap:wrap;gap:7px;margin-bottom:28px;
  animation:heroFadeUp .9s .4s var(--ease) both;
}
.hero-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 13px;border-radius:100px;
  background:var(--glass);border:1px solid var(--border);
  font-size:11px;font-weight:500;color:rgba(255,255,255,.7);
  letter-spacing:.04em;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  transition:border-color .3s,color .3s,background .3s;
}
.hero-pill i{font-size:9.5px;color:var(--red2);opacity:.8;}
.hero-pill:hover{border-color:rgba(232,57,63,.3);color:#fff;background:rgba(232,57,63,.07);}
.hero-actions{
  display:flex;gap:12px;flex-wrap:wrap;
  animation:heroFadeUp .9s .5s var(--ease) both;
}
.btn-primary{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 30px;border-radius:100px;
  background:linear-gradient(135deg,var(--red),#c2282e);
  color:#fff;font-family:var(--font-body);font-size:13px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;
  box-shadow:0 6px 30px rgba(232,57,63,.35);
  transition:box-shadow .35s,transform .35s;
  -webkit-tap-highlight-color:transparent;
}
.btn-primary i{transition:transform .3s;}
.btn-primary:hover{box-shadow:0 12px 44px rgba(232,57,63,.5);transform:translateY(-3px);}
.btn-primary:hover i{transform:translateX(4px);}
.btn-outline{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 26px;border-radius:100px;
  background:var(--glass);
  border:1px solid var(--border);
  color:rgba(255,255,255,.75);font-family:var(--font-body);font-size:13px;font-weight:500;
  letter-spacing:.04em;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  transition:border-color .3s,color .3s,background .3s;
  -webkit-tap-highlight-color:transparent;
}
.btn-outline:hover{border-color:rgba(232,57,63,.4);color:#fff;background:rgba(232,57,63,.06);}

/* hero stats bar */
.hero-stats{
  display:flex;gap:0;margin-top:36px;
  padding-top:24px;border-top:1px solid var(--border2);
  animation:heroFadeUp .9s .6s var(--ease) both;
}
.hero-stat{padding-right:clamp(20px,3vw,40px);}
.hero-stat-n{
  font-family:var(--font-head);
  font-size:clamp(22px,2.8vw,36px);
  font-weight:700;color:#fff;line-height:1;
}
.hero-stat-n span{color:var(--red2);}
.hero-stat-l{font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:5px;}

/* right column — photo card */
.hero-card{
  position:relative;
    background: rgb(10 18 31 / 54%);
    border: 1px solid rgba(232, 57, 63, .25);
  border-radius:var(--r-xl);
  padding:clamp(16px,2vw,24px);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  animation:heroFadeUp 1s .3s var(--ease) both;
}
/* photo frame — iOS-safe aspect ratio */
.hero-photo-frame{
  position:relative;
  width:100%;
  padding-top:105%;
  height:0;
  border-radius:20px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  -webkit-mask-image:-webkit-radial-gradient(white,black);
  mask-image:radial-gradient(white,black);
}
.hero-photo-frame img,.hero-photo-placeholder{
  position:absolute;top:0;left:0;width:100%;height:100%;
}
.hero-photo-frame img{
  object-fit:cover;object-position:center top;
  -webkit-transform:translateZ(0);transform:translateZ(0);
}
.hero-photo-placeholder{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  background:linear-gradient(145deg,rgba(232,57,63,.06),rgba(19,34,60,.8));
}
.hero-photo-placeholder i{font-size:52px;color:rgba(255,255,255,.1);}
.hero-photo-placeholder span{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.2);}

/* corner accents */
.hero-photo-frame::before,.hero-photo-frame::after{
  content:'';position:absolute;z-index:2;pointer-events:none;
  width:24px;height:24px;
}
.hero-photo-frame::before{top:10px;left:10px;border-top:2px solid var(--red);border-left:2px solid var(--red);border-radius:4px 0 0 0;}
.hero-photo-frame::after{bottom:10px;right:10px;border-bottom:2px solid var(--red);border-right:2px solid var(--red);border-radius:0 0 4px 0;}

.hero-card-info{
  display:flex;align-items:center;gap:16px;
  margin-top:20px;padding:16px 20px;
  background:rgba(255,255,255,.04);border-radius:16px;
  border:1px solid var(--border2);
}
.hci-icon{
  width:44px;height:44px;flex-shrink:0;border-radius:12px;
  background:rgba(232,57,63,.12);border:1px solid rgba(232,57,63,.2);
  display:flex;align-items:center;justify-content:center;
  font-size:18px;color:var(--red2);
}
.hci-text h5{font-family:var(--font-head);font-size:14px;font-weight:700;color:#fff;margin-bottom:3px;}
.hci-text p{font-size:11.5px;color:var(--muted);}
.hero-card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.hero-ctag{
  padding:5px 13px;border-radius:100px;
  background:var(--glass);border:1px solid var(--border2);
  font-size:10.5px;font-weight:500;color:var(--muted);
}

/* expertise items in hero card */
.hero-exp-list{
  display:flex;flex-direction:column;gap:8px;margin-top:16px;
}
.hero-exp-row{
  display:flex;align-items:center;gap:10px;
  padding:9px 14px;border-radius:12px;
  background:rgba(255,255,255,.03);border:1px solid var(--border2);
  font-size:12px;color:rgba(255,255,255,.65);font-weight:400;
  transition:border-color .25s;
}
.hero-exp-row:hover{border-color:rgba(232,57,63,.2);}
.hero-exp-row i{color:var(--red2);font-size:10px;width:12px;flex-shrink:0;}

@media(max-width:820px){.hero-card{max-width:460px;margin:0 auto;width:100%;}}
@media(max-width:520px){
  .hero-card{padding:14px;max-width:100%;}
  .hero-eyebrow{flex-direction:column;align-items:flex-start;gap:8px;}
}

/* scroll hint */
.hero-scroll{
  position:absolute;bottom:36px;left:50%;transform:translateX(-50%);
  z-index:7;display:flex;flex-direction:column;align-items:center;gap:8px;
  opacity:.4;animation:heroScroll 3s ease-in-out infinite;
}
@keyframes heroScroll{0%,100%{opacity:.4;transform:translateX(-50%) translateY(0);}50%{opacity:.7;transform:translateX(-50%) translateY(7px);}}
.hero-scroll span{font-size:9px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#fff;}
.hero-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--red),transparent);}

/* ═══════════════════════════════════════════
   SERVICES
═══════════════════════════════════════════ */
#services{
  padding:clamp(80px,8vw,130px) 0;
  background:linear-gradient(to bottom,var(--ink),#0d1e38);
}
.section-head{margin-bottom:clamp(48px,6vw,72px);}
.section-head .chip{margin-bottom:16px;}
.section-head h2 {
    font-family: var(--font-head);
    font-size: clamp(30px, 2.5vw, 36px);
    font-weight: 800;
    color: #fff;
    margin-bottom: 16px;
    line-height: 1.03;
    letter-spacing: -.03em;
}
.section-head h2 em{font-style:normal;color:var(--red2);}
.section-head p {
    font-size: clamp(14px, 1.4vw, 17px);
    color: rgb(255, 255, 255);
    line-height: 1.85;
    max-width: 600px;
}

.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,2vw,22px);}
@media(max-width:720px){.svc-grid{grid-template-columns:1fr;}}

.svc-card {
    position: relative;
    overflow: hidden;
    border-radius: var(--r-lg);
    padding: clamp(28px, 3.5vw, 44px);
    background: rgb(255 255 255 / 6%);
    border: 1px solid var(--border2);
    transition: transform .4s var(--ease), border-color .35s, box-shadow .4s;
}
.svc-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(0,0,0,.4);}
.svc-card:nth-child(1):hover{border-color:rgba(96,144,255,.2);}
.svc-card:nth-child(2):hover{border-color:rgba(232,57,63,.22);}
.svc-card:nth-child(3):hover{border-color:rgba(34,197,94,.2);}
.svc-card:nth-child(4):hover{border-color:rgba(192,132,252,.2);}

.svc-num{
  position:absolute;top:20px;right:24px;
  font-family:var(--font-head);
  font-size:72px;font-weight:700;line-height:1;
  background:linear-gradient(180deg,rgba(255,255,255,.04),transparent);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
  pointer-events:none;user-select:none;
}
.svc-icon{
  width:58px;height:58px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  font-size:23px;margin-bottom:22px;flex-shrink:0;
  position:relative;z-index:1;
}
.svc-card:nth-child(1) .svc-icon{background:rgba(96,144,255,.1);border:1px solid rgba(96,144,255,.2);color:#8bb0ff;}
.svc-card:nth-child(2) .svc-icon{background:rgba(232,57,63,.1);border:1px solid rgba(232,57,63,.2);color:var(--red2);}
.svc-card:nth-child(3) .svc-icon{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.18);color:#4ade80;}
.svc-card:nth-child(4) .svc-icon{background:rgba(192,132,252,.08);border:1px solid rgba(192,132,252,.18);color:#c084fc;}
.svc-card h3{
  font-family:var(--font-head);
  font-size:clamp(18px,2vw,23px);font-weight:700;
  color:#fff;margin-bottom:12px;letter-spacing:-.015em;
  position:relative;z-index:1;
}
.svc-card>p{
  font-size:14px;color:var(--sub);line-height:1.82;
  margin-bottom:22px;position:relative;z-index:1;
}
.svc-tags{display:flex;flex-wrap:wrap;gap:7px;position:relative;z-index:1;}
.stag{
  padding:5px 13px;border-radius:100px;
  background:rgba(255,255,255,.04);border:1px solid var(--border2);
  font-size:10.5px;font-weight:500;color:var(--muted);
  transition:color .25s,border-color .25s;
}
.stag:hover{color:#fff;border-color:rgba(232,57,63,.3);}

/* top accent line */
.svc-line{
  position:absolute;top:0;left:0;right:0;height:2px;
  border-radius:0 0 2px 2px;
}
.svc-card:nth-child(1) .svc-line{background:linear-gradient(90deg,transparent,rgba(96,144,255,.5),transparent);}
.svc-card:nth-child(2) .svc-line{background:linear-gradient(90deg,transparent,rgba(232,57,63,.5),transparent);}
.svc-card:nth-child(3) .svc-line{background:linear-gradient(90deg,transparent,rgba(34,197,94,.45),transparent);}
.svc-card:nth-child(4) .svc-line{background:linear-gradient(90deg,transparent,rgba(192,132,252,.45),transparent);}

/* ═══════════════════════════════════════════
   SKILLS
═══════════════════════════════════════════ */
#skills{
  padding:clamp(80px,8vw,130px) 0;
  background:#0d1e38;
  position:relative;overflow:hidden;
}

.skills-layout{
  display:grid;grid-template-columns:1fr 380px;
  gap:clamp(48px,6vw,90px);align-items:start;
}
@media(max-width:900px){.skills-layout{grid-template-columns:1fr;}}
.skill-item{margin-bottom:30px;}
.skill-label-row{
  display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;
}
.skill-label-row span:first-child{
  font-family:var(--font-head);font-size:14px;font-weight:600;color:#fff;
}
.skill-pct{
  font-size:10.5px;font-weight:600;letter-spacing:.12em;
  color:var(--red2);
  background:rgba(232,57,63,.1);border:1px solid rgba(232,57,63,.2);
  padding:3px 10px;border-radius:100px;
}
.skill-track{
  height:4px;border-radius:100px;
  background:rgba(255,255,255,.07);overflow:hidden;
  position:relative;
}
.skill-bar{
  height:100%;border-radius:100px;
  background:linear-gradient(90deg,var(--red),var(--red2));
  width:0;
  transition:width 1.6s cubic-bezier(.4,0,.2,1);
  position:relative;
}
.skill-bar::after{
  content:'';position:absolute;right:0;top:0;bottom:0;
  width:6px;background:rgba(255,255,255,.5);filter:blur(2px);border-radius:100px;
}

/* language rings */
.lang-cards{display:flex;flex-direction:column;gap:16px;}
.lang-card {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 22px;
    border-radius: var(--r-md);
    background: rgb(255 255 255 / 6%);
    border: 1px solid var(--border2);
    transition: border-color .3s, transform .3s var(--ease);
}
.lang-card:hover{border-color:rgba(232,57,63,.22);transform:translateX(6px);}
.lang-ring{width:60px;height:60px;flex-shrink:0;position:relative;}
.lang-ring svg{width:60px;height:60px;transform:rotate(-90deg);}
.lang-ring circle{fill:none;stroke-width:2.5;}
.lr-track{stroke:rgba(255,255,255,.07);}
.lr-fill{
  stroke:var(--red2);stroke-linecap:round;
  stroke-dasharray:131.9;stroke-dashoffset:131.9;
  transition:stroke-dashoffset 1.6s cubic-bezier(.4,0,.2,1);
}
.ring-label{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;color:#fff;
}
.lang-info h5{font-family:var(--font-head);font-size:15px;font-weight:700;color:#fff;margin-bottom:3px;}
.lang-info p{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.lang-bar{height:2px;background:rgba(255,255,255,.07);border-radius:2px;margin-top:10px;overflow:hidden;}
.lang-fill{height:100%;background:linear-gradient(90deg,var(--red),var(--red2));border-radius:2px;}

/* ═══════════════════════════════════════════
   PROCESS
═══════════════════════════════════════════ */
#process{
  padding:clamp(80px,8vw,130px) 0;
  background:linear-gradient(to bottom,#0d1e38,var(--ink));
}
.proc-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:clamp(12px,2vw,20px);
  margin-top:clamp(48px,6vw,72px);
  position:relative;
}
/* connector line */
.proc-grid::before{
  content:'';
  position:absolute;
  top:56px;left:calc(12.5% + 28px);right:calc(12.5% + 28px);
  height:1px;
  background:linear-gradient(90deg,rgba(232,57,63,.4),rgba(232,57,63,.1) 50%,rgba(232,57,63,.4));
  z-index:0;
}
@media(max-width:800px){.proc-grid{grid-template-columns:1fr 1fr;}.proc-grid::before{display:none;}}
@media(max-width:460px){.proc-grid{grid-template-columns:1fr;}}

.proc-card{
  position:relative;z-index:1;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;
}
.proc-bubble{
  width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;margin-bottom:28px;flex-shrink:0;
  position:relative;
  transition:transform .4s var(--ease),box-shadow .4s;
}
.proc-bubble::before{
  content:'';position:absolute;inset:-1px;
  border-radius:50%;border:1px solid rgba(255,255,255,.08);
  transition:transform .4s var(--ease),border-color .3s;
}
.proc-card:hover .proc-bubble{transform:scale(1.12) translateY(-4px);}
.proc-card:nth-child(1) .proc-bubble{background:rgba(96,144,255,.14);border:1px solid rgba(96,144,255,.25);color:#8bb0ff;box-shadow:0 8px 32px rgba(96,144,255,.12);}
.proc-card:nth-child(2) .proc-bubble{background:rgba(232,57,63,.14);border:1px solid rgba(232,57,63,.28);color:var(--red2);box-shadow:0 8px 32px rgba(232,57,63,.12);}
.proc-card:nth-child(3) .proc-bubble{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.25);color:#4ade80;box-shadow:0 8px 32px rgba(34,197,94,.1);}
.proc-card:nth-child(4) .proc-bubble{background:rgba(251,146,60,.12);border:1px solid rgba(251,146,60,.25);color:#fb923c;box-shadow:0 8px 32px rgba(251,146,60,.1);}
.proc-card:nth-child(1):hover .proc-bubble{box-shadow:0 16px 44px rgba(96,144,255,.25);}
.proc-card:nth-child(2):hover .proc-bubble{box-shadow:0 16px 44px rgba(232,57,63,.25);}
.proc-card:nth-child(3):hover .proc-bubble{box-shadow:0 16px 44px rgba(34,197,94,.22);}
.proc-card:nth-child(4):hover .proc-bubble{box-shadow:0 16px 44px rgba(251,146,60,.22);}
.proc-step-n{
  font-size:9.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted);margin-bottom:10px;display:block;
}
.proc-body {
    padding: 22px 18px 26px;
    border-radius: 20px;
    width: 100%;
    background: rgb(255 255 255 / 7%);
    border: 1px solid var(--border2);
    transition: border-color .35s, box-shadow .35s;
}
.proc-card:nth-child(1):hover .proc-body{border-color:rgba(96,144,255,.2);box-shadow:0 12px 40px rgba(0,0,0,.25);}
.proc-card:nth-child(2):hover .proc-body{border-color:rgba(232,57,63,.2);box-shadow:0 12px 40px rgba(0,0,0,.25);}
.proc-card:nth-child(3):hover .proc-body{border-color:rgba(34,197,94,.18);box-shadow:0 12px 40px rgba(0,0,0,.25);}
.proc-card:nth-child(4):hover .proc-body{border-color:rgba(251,146,60,.18);box-shadow:0 12px 40px rgba(0,0,0,.25);}
.proc-body h4{font-family:var(--font-head);font-size:clamp(13.5px,1.5vw,16px);font-weight:700;color:#fff;margin-bottom:9px;}
.proc-body p{font-size:13.5px;color:var(--sub);line-height:1.78;}

/* ═══════════════════════════════════════════
   TECH STACK
═══════════════════════════════════════════ */
#tech{
  padding:clamp(80px,8vw,130px) 0;
  background:var(--ink);
  position:relative;overflow:hidden;
}

.tech-grid{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:clamp(16px,2.2vw,24px);
  margin-top:clamp(48px,6vw,72px);
}
@media(max-width:700px){.tech-grid{grid-template-columns:1fr;}}
.tech-card{
  position:relative;overflow:hidden;
  border-radius:var(--r-lg);
  padding:clamp(28px,3.5vw,44px);
  transition:transform .4s var(--ease),box-shadow .4s;
}
.tech-card:hover{transform:translateY(-7px);}
.tc-fe{background:linear-gradient(135deg,rgba(96,144,255,.1),rgba(13,30,56,.7));border:1px solid rgba(96,144,255,.15);}
.tc-be{background:linear-gradient(135deg,rgba(232,57,63,.1),rgba(13,30,56,.7));border:1px solid rgba(232,57,63,.15);}
.tc-inf{background:linear-gradient(135deg,rgba(34,197,94,.08),rgba(13,30,56,.7));border:1px solid rgba(34,197,94,.13);}
.tc-sec{background:linear-gradient(135deg,rgba(192,132,252,.08),rgba(13,30,56,.7));border:1px solid rgba(192,132,252,.13);}
.tc-fe:hover{box-shadow:0 32px 70px rgba(96,144,255,.14);}
.tc-be:hover{box-shadow:0 32px 70px rgba(232,57,63,.14);}
.tc-inf:hover{box-shadow:0 32px 70px rgba(34,197,94,.12);}
.tc-sec:hover{box-shadow:0 32px 70px rgba(192,132,252,.12);}

/* glow blob */
.tech-card::before{
  content:'';position:absolute;top:-50px;right:-50px;
  width:200px;height:200px;border-radius:50%;filter:blur(60px);
  pointer-events:none;opacity:.5;transition:opacity .4s;
}
.tech-card:hover::before{opacity:.85;}
.tc-fe::before{background:rgba(96,144,255,.4);}
.tc-be::before{background:rgba(232,57,63,.4);}
.tc-inf::before{background:rgba(34,197,94,.3);}
.tc-sec::before{background:rgba(192,132,252,.3);}

.tech-card-head{display:flex;align-items:center;gap:18px;margin-bottom:28px;position:relative;z-index:1;}
.tc-icon{
  width:58px;height:58px;flex-shrink:0;border-radius:16px;
  display:flex;align-items:center;justify-content:center;font-size:24px;
}
.tc-fe .tc-icon{background:rgba(96,144,255,.15);border:1px solid rgba(96,144,255,.25);color:#8bb0ff;}
.tc-be .tc-icon{background:rgba(232,57,63,.15);border:1px solid rgba(232,57,63,.25);color:var(--red2);}
.tc-inf .tc-icon{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.22);color:#4ade80;}
.tc-sec .tc-icon{background:rgba(192,132,252,.12);border:1px solid rgba(192,132,252,.22);color:#c084fc;}
.tc-head-copy h3{font-family:var(--font-head);font-size:clamp(18px,2vw,23px);font-weight:700;color:#fff;letter-spacing:-.015em;margin-bottom:3px;}
.tc-head-copy span{font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;}
.tc-fe .tc-head-copy span{color:rgba(139,176,255,.5);}
.tc-be .tc-head-copy span{color:rgba(255,90,95,.5);}
.tc-inf .tc-head-copy span{color:rgba(74,222,128,.5);}
.tc-sec .tc-head-copy span{color:rgba(192,132,252,.5);}

.tc-tags{display:flex;flex-wrap:wrap;gap:10px;position:relative;z-index:1;}
.tctag{
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 16px;border-radius:100px;font-size:12px;font-weight:500;
  color:rgba(255,255,255,.75);
  transition:background .3s,border-color .3s;cursor:default;
}
.tctag::before{content:'';width:4px;height:4px;border-radius:50%;flex-shrink:0;}
.tc-fe .tctag{border:1px solid rgba(96,144,255,.18);}
.tc-fe .tctag:hover{background:rgba(96,144,255,.14);border-color:rgba(96,144,255,.35);}
.tc-fe .tctag::before{background:#8bb0ff;}
.tc-be .tctag{border:1px solid rgba(232,57,63,.18);}
.tc-be .tctag:hover{background:rgba(232,57,63,.14);border-color:rgba(232,57,63,.35);}
.tc-be .tctag::before{background:var(--red2);}
.tc-inf .tctag{border:1px solid rgba(34,197,94,.15);}
.tc-inf .tctag:hover{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.3);}
.tc-inf .tctag::before{background:#4ade80;}
.tc-sec .tctag{border:1px solid rgba(192,132,252,.15);}
.tc-sec .tctag:hover{background:rgba(192,132,252,.12);border-color:rgba(192,132,252,.3);}
.tc-sec .tctag::before{background:#c084fc;}

.tc-corner {
    position: absolute;
    bottom: 16px;
    right: 22px;
    font-family: var(--font-head);
    font-size: clamp(80px, 10vw, 120px);
    font-weight: 700;
    line-height: 1;
    -webkit-text-fill-color: #00000026;
    -webkit-background-clip: text;
    background-clip: text;
    pointer-events: none;
    user-select: none;
}
.tc-fe .tc-corner{background:linear-gradient(180deg,rgba(96,144,255,.07),transparent);}
.tc-be .tc-corner{background:linear-gradient(180deg,rgba(232,57,63,.07),transparent);}
.tc-inf .tc-corner{background:linear-gradient(180deg,rgba(34,197,94,.06),transparent);}
.tc-sec .tc-corner{background:linear-gradient(180deg,rgba(192,132,252,.06),transparent);}

/* ═══════════════════════════════════════════
   WHAT YOU GET
═══════════════════════════════════════════ */
#deliverables{
  padding:clamp(80px,8vw,130px) 0;
  background:linear-gradient(135deg,#0d1e38 0%,var(--ink) 100%);
}
.del-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:clamp(14px,2vw,20px);margin-top:clamp(48px,6vw,72px);
}
@media(max-width:860px){.del-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.del-grid{grid-template-columns:1fr;}}
.del-card {
    padding: clamp(24px, 3vw, 36px);
    border-radius: var(--r-lg);
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--border2);
    position: relative;
    overflow: hidden;
    transition: transform .4s var(--ease), border-color .3s, box-shadow .4s;
}
.del-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,0,0,.4);}
.del-card:nth-child(1):hover{border-color:rgba(232,57,63,.2);}
.del-card:nth-child(2):hover{border-color:rgba(96,144,255,.2);}
.del-card:nth-child(3):hover{border-color:rgba(34,197,94,.18);}
.del-card:nth-child(4):hover{border-color:rgba(251,146,60,.18);}
.del-card:nth-child(5):hover{border-color:rgba(192,132,252,.18);}
.del-card:nth-child(6):hover{border-color:rgba(251,191,36,.18);}
.del-icon{
  width:52px;height:52px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;margin-bottom:18px;flex-shrink:0;
}
.del-card:nth-child(1) .del-icon{background:rgba(232,57,63,.1);border:1px solid rgba(232,57,63,.2);color:var(--red2);}
.del-card:nth-child(2) .del-icon{background:rgba(96,144,255,.1);border:1px solid rgba(96,144,255,.2);color:#8bb0ff;}
.del-card:nth-child(3) .del-icon{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.18);color:#4ade80;}
.del-card:nth-child(4) .del-icon{background:rgba(251,146,60,.08);border:1px solid rgba(251,146,60,.18);color:#fb923c;}
.del-card:nth-child(5) .del-icon{background:rgba(192,132,252,.08);border:1px solid rgba(192,132,252,.18);color:#c084fc;}
.del-card:nth-child(6) .del-icon{background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.18);color:#fbbf24;}
.del-card h4{font-family:var(--font-head);font-size:clamp(14px,1.6vw,17px);font-weight:700;color:#fff;margin-bottom:9px;}
.del-card p{font-size:13px;color:var(--sub);line-height:1.8;}
.del-card-span{grid-column:1/-1;}

/* ═══════════════════════════════════════════
   WHY ME
═══════════════════════════════════════════ */
#why{
  padding:clamp(80px,8vw,130px) 0;
  background:var(--ink);
  position:relative;overflow:hidden;
}

.why-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(14px,2vw,20px);margin-top:clamp(48px,6vw,72px);
}
@media(max-width:680px){.why-grid{grid-template-columns:1fr;}}
.why-card {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: clamp(24px, 3vw, 36px);
    border-radius: var(--r-lg);
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--border2);
    position: relative;
    overflow: hidden;
    transition: transform .4s var(--ease), border-color .35s, box-shadow .4s;
}
.why-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,0,0,.4);}
.why-card:nth-child(1):hover{border-color:rgba(96,144,255,.2);}
.why-card:nth-child(2):hover{border-color:rgba(232,57,63,.22);}
.why-card:nth-child(3):hover{border-color:rgba(34,197,94,.18);}
.why-card:nth-child(4):hover{border-color:rgba(251,146,60,.18);}
.why-icon{
  width:56px;height:56px;flex-shrink:0;border-radius:16px;
  display:flex;align-items:center;justify-content:center;font-size:22px;
}
.why-card:nth-child(1) .why-icon{background:rgba(96,144,255,.1);border:1px solid rgba(96,144,255,.2);color:#8bb0ff;}
.why-card:nth-child(2) .why-icon{background:rgba(232,57,63,.1);border:1px solid rgba(232,57,63,.22);color:var(--red2);}
.why-card:nth-child(3) .why-icon{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.18);color:#4ade80;}
.why-card:nth-child(4) .why-icon{background:rgba(251,146,60,.08);border:1px solid rgba(251,146,60,.18);color:#fb923c;}
.why-body{flex:1;}
.why-body h4{font-family:var(--font-head);font-size:clamp(15px,1.7vw,18px);font-weight:700;color:#fff;margin-bottom:9px;letter-spacing:-.01em;}
.why-body p{font-size:13.5px;color:var(--sub);line-height:1.82;}
.why-n{
  position:absolute;bottom:12px;right:18px;
  font-family:var(--font-head);font-size:72px;font-weight:700;line-height:1;
  background:linear-gradient(180deg,rgba(255,255,255,.035),transparent);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;pointer-events:none;user-select:none;
}
@media(max-width:460px){.why-card{flex-direction:column;}.why-icon{width:48px;height:48px;font-size:18px;}}

/* ═══════════════════════════════════════════
   STATS
═══════════════════════════════════════════ */
#stats{
  padding:clamp(80px,8vw,120px) 0;
  background:linear-gradient(to bottom,#0d1e38,var(--ink));
  position:relative;overflow:hidden;
}

.stats-layout{
  display:flex;flex-direction:column;gap:clamp(52px,6vw,80px);
}
.stats-intro{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(32px,5vw,80px);align-items:center;
}
@media(max-width:720px){.stats-intro{grid-template-columns:1fr;gap:24px;}}
.stats-left h2{
  font-family:var(--font-head);
  font-size:clamp(28px,4vw,52px);
  font-weight:700;line-height:1.06;letter-spacing:-.025em;color:#fff;
  margin:16px 0;
}
.stats-left h2 em{font-style:normal;color:var(--red2);}
.stats-left p {
    font-size: clamp(13px, 1.3vw, 15px);
    color: rgb(255 255 255);
    line-height: 1.85;
    margin-bottom: 28px;
    max-width: 400px;
}
.stats-cta-link{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 24px;border-radius:100px;
  border:1.5px solid rgba(255,255,255,.14);
  font-family:var(--font-body);font-size:12px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.65);
  transition:border-color .3s,color .3s,background .3s;
}
.stats-cta-link i{transition:transform .3s;}
.stats-cta-link:hover{border-color:var(--red);color:var(--red);background:rgba(232,57,63,.06);}
.stats-cta-link:hover i{transform:translateX(4px);}

/* big stat strip */
.stats-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:rgba(255,255,255,.06);
  border-radius:var(--r-lg);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
}
@media(max-width:640px){.stats-strip{grid-template-columns:repeat(2,1fr);}}
.stat-box{
  padding:clamp(28px,4vw,44px) clamp(16px,2vw,28px);
  background:var(--glass);
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  transition:background .35s;
}
.stat-box:hover{background:rgba(255,255,255,.06);}

/* colored top accent per box */
.stat-box::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
}
.stat-box:nth-child(1)::before{background:linear-gradient(90deg,transparent,var(--red),transparent);}
.stat-box:nth-child(2)::before{background:linear-gradient(90deg,transparent,#8bb0ff,transparent);}
.stat-box:nth-child(3)::before{background:linear-gradient(90deg,transparent,#4ade80,transparent);}
.stat-box:nth-child(4)::before{background:linear-gradient(90deg,transparent,#fb923c,transparent);}

/* glow blob */
.stat-box::after{
  content:'';position:absolute;top:-30px;left:50%;transform:translateX(-50%);
  width:120px;height:80px;border-radius:50%;filter:blur(30px);opacity:.35;
  pointer-events:none;
}
.stat-box:nth-child(1)::after{background:rgba(232,57,63,.5);}
.stat-box:nth-child(2)::after{background:rgba(96,144,255,.5);}
.stat-box:nth-child(3)::after{background:rgba(34,197,94,.4);}
.stat-box:nth-child(4)::after{background:rgba(251,146,60,.4);}

.stat-n{
  font-family:var(--font-head);
  font-size:clamp(36px,5vw,62px);font-weight:700;color:#fff;line-height:1;
  margin-bottom:8px;position:relative;z-index:1;
}
.stat-n .sp{color:var(--red2);}
.stat-l{
  font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);position:relative;z-index:1;
}
.stat-bar{height:2px;background:rgba(255,255,255,.06);border-radius:2px;margin-top:14px;overflow:hidden;width:100%;position:relative;z-index:1;}
.stat-bar-fill{height:100%;background:linear-gradient(90deg,var(--red),var(--red2));width:0;transition:width 1.5s cubic-bezier(.4,0,.2,1);}


/* ═══════════════════════════════════════════
   CTA
═══════════════════════════════════════════ */
#cta-sec{
  padding:clamp(100px,10vw,150px) 0;
  position:relative;overflow:hidden;
  background:var(--ink);
}
.cta-bg-img{
  position:absolute;inset:0;
  background:url('../img/new/herophoto/1451187580459-43490279c0fa.jpg') center/cover no-repeat;
}
.cta-ov {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(8, 14, 26, .98) 40%, #080e1a54 70%, #080e1a 100%);
}
.cta-grid-bg{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:60px 60px;
  pointer-events:none;z-index:1;
}
.cta-ring{
  position:absolute;border-radius:50%;z-index:1;
  border:1px solid rgba(232,57,63,.06);
  top:50%;left:50%;transform:translate(-50%,-50%);
  animation:ctaRing 6s ease-in-out infinite;
}
.cta-ring:nth-child(4){width:600px;height:600px;animation-delay:2s;opacity:.5;}
.cta-ring:nth-child(5){width:1100px;height:1100px;animation-delay:4s;opacity:.25;}
@keyframes ctaRing{0%,100%{transform:translate(-50%,-50%) scale(1);}50%{transform:translate(-50%,-50%) scale(1.04);}}
.cta-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr auto;
  gap:clamp(40px,6vw,100px);align-items:center;
}
@media(max-width:780px){
  .cta-inner{grid-template-columns:1fr;text-align:center;}
  .cta-chip-row{justify-content:center;}
}
.cta-chip-row{display:flex;margin-bottom:20px;}
.cta-text h2{
  font-family:var(--font-head);
  font-size:clamp(34px,6vw,76px);
  font-weight:700;line-height:1.04;letter-spacing:-.03em;color:#fff;
  margin-bottom:20px;
}
.cta-text h2 em{font-style:normal;color:var(--red2);}
.cta-text p {
    font-size: clamp(14px, 1.5vw, 17px);
    color: rgb(255 255 255);
    line-height: 1.85;
    max-width: 480px;
}
@media(max-width:780px){.cta-text p{margin:0 auto;}}
.cta-btns{display:flex;flex-direction:column;gap:12px;flex-shrink:0;min-width:220px;}
@media(max-width:780px){.cta-btns{flex-direction:column;width:100%;}}
.cta-btn-main{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 32px;border-radius:100px;
  background:linear-gradient(135deg,var(--red),#c2282e);
  color:#fff;font-family:var(--font-head);font-size:14px;font-weight:700;
  letter-spacing:.04em;
  box-shadow:0 8px 32px rgba(232,57,63,.35);
  transition:box-shadow .35s,transform .35s;
  -webkit-tap-highlight-color:transparent;
}
.cta-btn-main i{transition:transform .3s;}
.cta-btn-main:hover{box-shadow:0 16px 50px rgba(232,57,63,.5);transform:translateY(-3px);}
.cta-btn-main:hover i{transform:translateX(4px);}
.cta-btn-ghost{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:14px 28px;border-radius:100px;
  background:var(--glass);border:1px solid var(--border);
  color:rgba(255,255,255,.65);
  font-family:var(--font-body);font-size:13px;font-weight:500;
  letter-spacing:.04em;
  transition:border-color .3s,color .3s;
  -webkit-tap-highlight-color:transparent;
}
.cta-btn-ghost:hover{border-color:rgba(232,57,63,.35);color:#fff;}

/* ═══════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════ */
#footer{
  background:#050c1a;
  border-top:1px solid rgba(255,255,255,.06);
  position:relative;overflow:hidden;
}
.footer-glow{
  position:absolute;bottom:-200px;left:50%;transform:translateX(-50%);
  width:800px;height:400px;
  background:radial-gradient(ellipse,rgba(232,57,63,.06),transparent 65%);
  pointer-events:none;
}
.footer-top{
  padding:clamp(64px,7vw,100px) 0 clamp(48px,5vw,72px);
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;
  gap:clamp(32px,4vw,60px);
  position:relative;z-index:1;
}
@media(max-width:900px){.footer-top{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.footer-top{grid-template-columns:1fr;}}
.footer-brand{}
.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.footer-logo-mark{
  width:44px;height:44px;border-radius:12px;flex-shrink:0;
  background:linear-gradient(135deg,var(--red),#c2282e);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(232,57,63,.3);
}
.footer-logo-mark svg{width:22px;height:22px;}
.footer-brand-name{font-family:var(--font-head);font-size:19px;font-weight:700;color:#fff;}
.footer-brand-name span{color:var(--red2);}
.footer-tagline{font-size:13.5px;color:rgba(255,255,255,.38);line-height:1.75;margin-bottom:24px;max-width:280px;}
.footer-socials{display:flex;gap:10px;}
.footer-social{
  width:38px;height:38px;border-radius:10px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;
  font-size:14px;color:rgba(255,255,255,.45);
  transition:background .25s,border-color .25s,color .25s,transform .3s var(--ease);
  -webkit-tap-highlight-color:transparent;
}
.footer-social:hover{background:rgba(232,57,63,.12);border-color:rgba(232,57,63,.3);color:var(--red2);transform:translateY(-3px);}
.footer-col h5{
  font-family:var(--font-head);font-size:13px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.4);margin-bottom:20px;
}
.footer-col ul{display:flex;flex-direction:column;gap:10px;}
.footer-col a{
  font-size:13.5px;color:rgba(255,255,255,.5);
  transition:color .25s,padding-left .25s;
  display:inline-block;
}
.footer-col a:hover{color:#fff;padding-left:6px;}
.footer-contact-item{
  display:flex;align-items:center;gap:10px;margin-bottom:10px;
}
.footer-contact-item i{
  width:28px;height:28px;flex-shrink:0;border-radius:8px;
  background:rgba(232,57,63,.1);border:1px solid rgba(232,57,63,.18);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;color:var(--red2);
}
.footer-contact-item span{font-size:13px;color:rgba(255,255,255,.5);}
.footer-bottom{
  position:relative;z-index:1;
  padding:22px 0;
  border-top:1px solid rgba(255,255,255,.05);
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:12px;
}
.footer-copy{font-size:12px;color:rgba(255,255,255,.22);letter-spacing:.04em;}
.footer-copy span{color:var(--red2);}
.footer-links{display:flex;gap:20px;}
.footer-links a{font-size:11.5px;color:rgba(255,255,255,.22);letter-spacing:.06em;transition:color .25s;}
.footer-links a:hover{color:rgba(255,255,255,.55);}

/* wave strip */
.wave{width:100%;height:2px;background:linear-gradient(90deg,transparent,rgba(232,57,63,.2) 30%,rgba(255,255,255,.06) 50%,rgba(232,57,63,.2) 70%,transparent);}


/* ═══════════════════════════════════════════
   SECTION BACKGROUND IMAGES
═══════════════════════════════════════════ */
.sec-bg-img{
  position:absolute;inset:0;
  background-size:cover;
  background-position:center;
  background-attachment:fixed;
  pointer-events:none;
  z-index:0;
}
@media(max-width:768px){
  .sec-bg-img{background-attachment:scroll;}
}

/* grid overlay reusable for all sections */
.sec-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size:60px 60px;
  pointer-events:none;
  z-index:1;
}
/* ensure all section children sit above overlays */
#services>.wrap,
#skills>.wrap,
#process>.wrap,
#tech>.wrap,
#deliverables>.wrap,
#why>.wrap,
#stats>.wrap{position:relative;z-index:2;}


/* ═══════════════════════════════════════════
   DECORATIVE BACKGROUND ELEMENTS
═══════════════════════════════════════════ */

/* ── shared pointer-events none for all deco ── */
.deco{position:absolute;pointer-events:none;user-select:none;z-index:1;}

/* ── SERVICES: floating code brackets + orbs ── */
#services .deco-orb-1{
  width:420px;height:420px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(96,144,255,.08),transparent 65%);
  top:-100px;right:-100px;
}
#services .deco-orb-2{
  width:280px;height:280px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(232,57,63,.07),transparent 65%);
  bottom:-60px;left:-60px;
}
#services .deco-line-1{
  width:1px;height:200px;
  background:linear-gradient(to bottom,transparent,rgba(96,144,255,.18),transparent);
  top:80px;right:18%;
}
#services .deco-line-2{
  width:200px;height:1px;
  background:linear-gradient(to right,transparent,rgba(232,57,63,.15),transparent);
  bottom:120px;left:10%;
}
#services .deco-bracket{
  font-family:'Syne',sans-serif;
  font-size:180px;font-weight:700;line-height:1;
  color:rgba(255,255,255,.022);
  top:clamp(40px,6vw,80px);left:clamp(10px,3vw,40px);
  letter-spacing:-10px;
}
#services .deco-dots{
  width:120px;height:120px;
  background-image:radial-gradient(rgba(96,144,255,.18) 1.5px,transparent 1.5px);
  background-size:16px 16px;
  bottom:80px;right:5%;
  opacity:.6;
}

/* ── SKILLS: diagonal slash lines + right orb ── */
#skills .deco-orb-1{
  width:500px;height:500px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(232,57,63,.07),transparent 60%);
  top:-150px;right:-150px;
}
#skills .deco-slash{
  width:3px;height:340px;
  background:linear-gradient(to bottom,transparent,rgba(232,57,63,.12),transparent);
  top:50%;left:48%;
  transform:rotate(25deg) translateY(-50%);
}
#skills .deco-slash-2{
  width:2px;height:220px;
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.06),transparent);
  top:50%;left:52%;
  transform:rotate(25deg) translateY(-50%);
}
#skills .deco-ring-1{
  width:320px;height:320px;border-radius:50%;
  border:1px solid rgba(232,57,63,.07);
  bottom:-80px;left:-80px;
}
#skills .deco-ring-2{
  width:180px;height:180px;border-radius:50%;
  border:1px solid rgba(96,144,255,.06);
  top:40px;left:40px;
}
#skills .deco-dots{
  width:160px;height:100px;
  background-image:radial-gradient(rgba(255,255,255,.1) 1px,transparent 1px);
  background-size:14px 14px;
  bottom:100px;right:4%;
  opacity:.45;
}

/* ── PROCESS: horizontal connector aura + corner squares ── */
#process .deco-orb-1{
  width:600px;height:300px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(34,197,94,.05),transparent 65%);
  top:50%;left:50%;transform:translate(-50%,-50%);
}
#process .deco-sq-tl{
  width:60px;height:60px;
  border-top:1.5px solid rgba(96,144,255,.15);
  border-left:1.5px solid rgba(96,144,255,.15);
  top:40px;left:40px;border-radius:4px 0 0 0;
}
#process .deco-sq-br{
  width:60px;height:60px;
  border-bottom:1.5px solid rgba(251,146,60,.15);
  border-right:1.5px solid rgba(251,146,60,.15);
  bottom:40px;right:40px;border-radius:0 0 4px 0;
}
#process .deco-line-h{
  height:1px;width:30%;
  background:linear-gradient(to right,transparent,rgba(34,197,94,.1),transparent);
  bottom:80px;left:35%;
}
#process .deco-dots{
  width:100px;height:100px;
  background-image:radial-gradient(rgba(34,197,94,.14) 1.5px,transparent 1.5px);
  background-size:14px 14px;
  top:60px;right:6%;
  opacity:.6;
}
#process .deco-num{
  font-family:'Syne',sans-serif;
  font-size:clamp(100px,14vw,200px);font-weight:800;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
  bottom:0;right:2%;line-height:1;
}

/* ── TECH: circuit-style corner lines + orbs ── */
#tech .deco-orb-1{
  width:500px;height:500px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(96,144,255,.07),transparent 60%);
  top:-150px;right:-120px;
}
#tech .deco-orb-2{
  width:350px;height:350px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(192,132,252,.06),transparent 60%);
  bottom:-100px;left:-80px;
}
#tech .deco-circuit-h{
  height:1px;width:180px;
  background:linear-gradient(to right,rgba(96,144,255,.2),transparent);
  top:60px;left:5%;
}
#tech .deco-circuit-v{
  width:1px;height:120px;
  background:linear-gradient(to bottom,rgba(96,144,255,.2),transparent);
  top:60px;left:calc(5% + 179px);
}
#tech .deco-circuit-h2{
  height:1px;width:120px;
  background:linear-gradient(to left,rgba(192,132,252,.18),transparent);
  bottom:80px;right:6%;
}
#tech .deco-circuit-v2{
  width:1px;height:90px;
  background:linear-gradient(to top,rgba(192,132,252,.18),transparent);
  bottom:80px;right:calc(6% + 119px);
}
#tech .deco-ring-1{
  width:260px;height:260px;border-radius:50%;
  border:1px solid rgba(96,144,255,.06);
  top:50%;left:50%;transform:translate(-50%,-50%);
}
#tech .deco-dots{
  width:140px;height:90px;
  background-image:radial-gradient(rgba(192,132,252,.16) 1.5px,transparent 1.5px);
  background-size:14px 14px;
  top:80px;right:8%;opacity:.5;
}

/* ── DELIVERABLES: floating hexagonal outline + blobs ── */
#deliverables .deco-orb-1{
  width:440px;height:440px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(232,57,63,.07),transparent 60%);
  bottom:-120px;right:-100px;
}
#deliverables .deco-orb-2{
  width:300px;height:300px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(34,197,94,.05),transparent 60%);
  top:-80px;left:-60px;
}
#deliverables .deco-line-diag{
  width:2px;height:300px;
  background:linear-gradient(to bottom,transparent,rgba(232,57,63,.1),transparent);
  top:50%;right:8%;transform:rotate(15deg) translateY(-50%);
}
#deliverables .deco-ring-1{
  width:200px;height:200px;border-radius:50%;
  border:1px solid rgba(232,57,63,.07);
  top:40px;right:3%;
}
#deliverables .deco-ring-2{
  width:120px;height:120px;border-radius:50%;
  border:1px solid rgba(34,197,94,.07);
  top:80px;right:calc(3% + 40px);
}
#deliverables .deco-dots{
  width:100px;height:160px;
  background-image:radial-gradient(rgba(255,255,255,.1) 1.5px,transparent 1.5px);
  background-size:14px 14px;
  bottom:80px;left:3%;opacity:.4;
}
#deliverables .deco-sq{
  width:80px;height:80px;
  border:1.5px solid rgba(251,191,36,.1);
  bottom:60px;right:12%;
  transform:rotate(45deg);
  border-radius:8px;
}

/* ── WHY: diagonal band + orbs ── */
#why .deco-orb-1{
  width:500px;height:500px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(232,57,63,.08),transparent 58%);
  top:-160px;right:-140px;
}
#why .deco-orb-2{
  width:400px;height:400px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(96,144,255,.06),transparent 60%);
  bottom:-120px;left:-100px;
}
#why .deco-band{
  width:200%;height:1px;
  background:linear-gradient(to right,transparent,rgba(232,57,63,.09),transparent);
  top:50%;left:-50%;transform:rotate(-4deg);
}
#why .deco-sq-1{
  width:100px;height:100px;
  border:1.5px solid rgba(255,255,255,.04);
  top:60px;left:3%;transform:rotate(18deg);border-radius:12px;
}
#why .deco-sq-2{
  width:60px;height:60px;
  border:1.5px solid rgba(232,57,63,.1);
  bottom:80px;left:6%;transform:rotate(32deg);border-radius:8px;
}
#why .deco-dots{
  width:140px;height:140px;
  background-image:radial-gradient(rgba(232,57,63,.16) 1.5px,transparent 1.5px);
  background-size:16px 16px;
  top:50px;right:3%;opacity:.45;
}
#why .deco-num{
  font-family:'Syne',sans-serif;
  font-size:clamp(120px,16vw,240px);font-weight:800;
  background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
  bottom:0;right:1%;line-height:1;letter-spacing:-8px;
}

/* ── STATS: data-lines aesthetic + orbs ── */
#stats .deco-orb-1{
  width:500px;height:300px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(96,144,255,.06),transparent 65%);
  top:-80px;left:-100px;
}
#stats .deco-orb-2{
  width:400px;height:400px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(232,57,63,.07),transparent 60%);
  bottom:-120px;right:-80px;
}
#stats .deco-line-v1{
  width:1px;height:250px;
  background:linear-gradient(to bottom,transparent,rgba(96,144,255,.14),transparent);
  top:50%;right:22%;transform:translateY(-50%);
}
#stats .deco-line-v2{
  width:1px;height:160px;
  background:linear-gradient(to bottom,transparent,rgba(232,57,63,.12),transparent);
  top:50%;right:20%;transform:translateY(-50%);
}
#stats .deco-ring-1{
  width:280px;height:280px;border-radius:50%;
  border:1px solid rgba(255,255,255,.04);
  top:50%;left:50%;transform:translate(-50%,-50%);
}
#stats .deco-dots{
  width:120px;height:80px;
  background-image:radial-gradient(rgba(255,255,255,.1) 1.5px,transparent 1.5px);
  background-size:14px 14px;
  top:60px;left:4%;opacity:.4;
}

/* mobile: hide heavy decorative elements */
@media(max-width:768px){
  .deco-num,.deco-slash,.deco-slash-2,.deco-band,
  .deco-circuit-h,.deco-circuit-v,.deco-circuit-h2,.deco-circuit-v2{
    display:none;
  }
  .deco-orb-1,.deco-orb-2{opacity:.5;}
}





/* ── page: loader ── */
#page-loader{position:fixed;inset:0;z-index:99999;pointer-events:auto;visibility:visible;overflow:hidden;}
#page-loader::before{
  content:'';
  position:absolute;
  left:0;right:0;
  top:calc(50% - 1px);
  height:3px;
  background:rgba(6,10,20,1);
  z-index:2;
  transition:opacity .1s ease;
}
#page-loader.is-open::before{
  opacity:0;
}
#page-loader.is-open{pointer-events:none;}
#page-loader.is-gone{pointer-events:none;visibility:hidden;}
.pl-curtain{position:absolute;left:0;right:0;height:50%;background:rgba(6,10,20,1);transition:transform .9s cubic-bezier(.76,0,.24,1);overflow:hidden;}
.pl-curtain--top{top:0;transform:translateY(0);}
.pl-curtain--bot{bottom:0;transform:translateY(0);}
#page-loader.is-open .pl-curtain--top{transform:translateY(-101%);}
#page-loader.is-open .pl-curtain--bot{transform:translateY(101%);}
.pl-brand{position:absolute;font-family:'Syne',sans-serif;font-weight:800;font-size:clamp(18px,5vw,88px);letter-spacing:-.02em;color:rgba(232,57,63,.03);user-select:none;pointer-events:none;white-space:nowrap;top:50%;left:50%;transform:translate(-50%,-50%);animation:plBrand 3s ease-in-out infinite;}
.pl-brand-bot{animation-delay:.5s;color:rgba(232,57,63,.02);}
@keyframes plBrand{0%,100%{opacity:.5;color:rgba(232,57,63,.02);filter:blur(1.5px);}50%{opacity:1;color:rgba(232,57,63,.06);filter:blur(0px);}}
.pl-orb{position:absolute;border-radius:50%;pointer-events:none;}
.pl-orb-1{width:600px;height:600px;top:-200px;right:-100px;background:radial-gradient(ellipse,rgba(232,57,63,.13),transparent 65%);animation:plOrb1 8s ease-in-out infinite;}
.pl-orb-3{width:520px;height:520px;bottom:-160px;left:-80px;background:radial-gradient(ellipse,rgba(232,57,63,.11),transparent 65%);animation:plOrb2 10s ease-in-out infinite;}
@keyframes plOrb1{0%,100%{transform:scale(1) translate(0,0);}50%{transform:scale(1.1) translate(-15px,12px);}}
@keyframes plOrb2{0%,100%{transform:scale(1) translate(0,0);}50%{transform:scale(1.15) translate(12px,-10px);}}
.pl-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:80px 80px;}
.pl-scanline{position:absolute;left:0;right:0;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(232,57,63,.22) 30%,rgba(232,57,63,.3) 50%,rgba(232,57,63,.22) 70%,transparent);animation:plScan 3.5s linear infinite;}
@keyframes plScan{0%{top:0;opacity:0;}5%{opacity:1;}95%{opacity:1;}100%{top:100%;opacity:0;}}
.pl-corner{position:absolute;width:28px;height:28px;pointer-events:none;animation:plCorner 3s ease-in-out infinite alternate;}
.pl-corner::before,.pl-corner::after{content:'';position:absolute;background:rgba(232,57,63,.5);}
.pl-corner::before{width:100%;height:1.5px;}
.pl-corner::after{width:1.5px;height:100%;}
.pl-corner-tl{top:20px;left:20px;}.pl-corner-tl::before{top:0;left:0;}.pl-corner-tl::after{top:0;left:0;}
.pl-corner-tr{top:20px;right:20px;transform:scaleX(-1);}.pl-corner-tr::before{top:0;left:0;}.pl-corner-tr::after{top:0;left:0;}
.pl-corner-bl{bottom:20px;left:20px;transform:scaleY(-1);}.pl-corner-bl::before{top:0;left:0;}.pl-corner-bl::after{top:0;left:0;}
.pl-corner-br{bottom:20px;right:20px;transform:scale(-1);}.pl-corner-br::before{top:0;left:0;}.pl-corner-br::after{top:0;left:0;}
@keyframes plCorner{0%{opacity:.4;}100%{opacity:1;}}
.pl-ring{position:absolute;border-radius:50%;pointer-events:none;border:1px solid rgba(232,57,63,.08);}
.pl-ring-1{width:320px;height:320px;top:50%;right:-80px;transform:translateY(-50%);animation:plRing 6s ease-in-out infinite;}
.pl-ring-2{width:180px;height:180px;top:50%;right:20px;transform:translateY(-50%);border-color:rgba(232,57,63,.12);animation:plRing 6s ease-in-out infinite .5s;}
.pl-ring-3{width:280px;height:280px;top:50%;left:-60px;transform:translateY(-50%);animation:plRing 8s ease-in-out infinite 1s;}
@keyframes plRing{0%,100%{transform:translateY(-50%) scale(1);opacity:.6;}50%{transform:translateY(-50%) scale(1.06);opacity:1;}}
.pl-line{position:absolute;pointer-events:none;background:rgba(255,255,255,.03);}
.pl-line-v1{width:1px;top:0;bottom:0;left:25%;}
.pl-line-v2{width:1px;top:0;bottom:0;right:25%;}
.pl-line-v3{width:1px;top:0;bottom:0;left:33%;}
.pl-line-h1{height:1px;left:0;right:0;top:40%;}
.pl-line-h2{height:1px;left:0;right:0;bottom:35%;}
.pl-particle{position:absolute;border-radius:50%;pointer-events:none;background:rgba(232,57,63,.5);width:3px;height:3px;}
.pl-p1{top:20%;left:15%;animation:plFloat1 5s ease-in-out infinite;}
.pl-p2{top:60%;left:40%;animation:plFloat2 7s ease-in-out infinite .8s;}
.pl-p3{top:35%;right:20%;animation:plFloat1 6s ease-in-out infinite 1.2s;}
.pl-p4{top:25%;left:20%;animation:plFloat2 6s ease-in-out infinite .4s;}
.pl-p5{top:55%;right:25%;animation:plFloat1 8s ease-in-out infinite 1s;}
.pl-p6{top:40%;left:55%;animation:plFloat2 5s ease-in-out infinite .6s;}
@keyframes plFloat1{0%,100%{transform:translate(0,0);opacity:.4;}50%{transform:translate(8px,-12px);opacity:1;}}
@keyframes plFloat2{0%,100%{transform:translate(0,0);opacity:.3;}50%{transform:translate(-10px,8px);opacity:.9;}}
.pl-hud{position:absolute;font-family:'Syne',sans-serif;font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(232,57,63,.25);display:flex;flex-direction:column;gap:4px;pointer-events:none;animation:plHud 4s ease-in-out infinite;}
.pl-hud span{display:block;}
.pl-hud-tl{top:52px;left:58px;}
.pl-hud-tr{top:52px;right:58px;text-align:right;}
.pl-hud-bl{bottom:12px;left:58px;}
.pl-hud-br{bottom:12px;right:58px;text-align:right;}
@keyframes plHud{0%,100%{opacity:.4;}50%{opacity:1;}}
.pl-hex{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);font-family:'Syne',sans-serif;font-size:8px;font-weight:700;letter-spacing:.25em;color:rgba(255,255,255,.08);white-space:nowrap;pointer-events:none;animation:plHex 5s ease-in-out infinite;}
.pl-hex-bot{bottom:auto;top:10px;animation-delay:.8s;}
@keyframes plHex{0%,100%{opacity:.3;letter-spacing:.25em;}50%{opacity:.8;letter-spacing:.3em;}}
.pl-crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;pointer-events:none;animation:plCross 4s ease-in-out infinite;}
.pl-crosshair::before,.pl-crosshair::after{content:'';position:absolute;background:rgba(232,57,63,.2);}
.pl-crosshair::before{width:100%;height:1px;top:50%;left:0;transform:translateY(-50%);}
.pl-crosshair::after{width:1px;height:100%;left:50%;top:0;transform:translateX(-50%);}
@keyframes plCross{0%,100%{opacity:.3;transform:translate(-50%,-50%) scale(1);}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.3);}}
.pl-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;z-index:2;opacity:1;transition:opacity .3s ease;}
#page-loader.is-open .pl-center{opacity:0;}
.pl-logo{width:56px;height:56px;background:linear-gradient(135deg,#e8393f,#c2282e);border-radius:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(232,57,63,.45);animation:plPulse 1.8s ease-in-out infinite;}
.pl-logo svg{width:34px;height:34px;}
@keyframes plPulse{0%,100%{box-shadow:0 8px 32px rgba(232,57,63,.45),0 0 0 0 rgba(232,57,63,.3);}50%{box-shadow:0 8px 32px rgba(232,57,63,.45),0 0 0 12px rgba(232,57,63,0);}}
.pl-bar-wrap{width:160px;height:2px;background:rgba(255,255,255,.08);border-radius:2px;overflow:hidden;}
.pl-bar{height:100%;width:0%;border-radius:2px;background:linear-gradient(90deg,#e8393f,#ff5a5f);box-shadow:0 0 10px rgba(232,57,63,.6);animation:plFill 2.5s ease-in-out forwards;}
#page-loader.is-open .pl-bar{width:100%;animation:none;}
@keyframes plFill{0%{width:0%;}12%{width:14%;}30%{width:35%;}50%{width:56%;}68%{width:72%;}83%{width:84%;}95%{width:94%;}100%{width:100%;}}
.pl-label{font-family:'Syne',sans-serif;font-size:10px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.3);display:flex;align-items:center;gap:1px;}
.pl-dots span{display:inline-block;animation:plDot 1.2s ease-in-out infinite;opacity:0;}
.pl-dots span:nth-child(1){animation-delay:0s;}
.pl-dots span:nth-child(2){animation-delay:.2s;}
.pl-dots span:nth-child(3){animation-delay:.4s;}
@keyframes plDot{0%,80%,100%{opacity:0;}40%{opacity:1;}}
@media(max-width:600px){
  .pl-brand{font-size:clamp(18px,5vw,42px);}
  .pl-hud{font-size:7px;letter-spacing:.1em;}
  .pl-hud-tl{top:36px;left:36px;}.pl-hud-tr{top:36px;right:36px;}
  .pl-hud-bl{bottom:8px;left:36px;}.pl-hud-br{bottom:8px;right:36px;}
  .pl-hex{font-size:6px;letter-spacing:.12em;}
  .pl-corner{width:20px;height:20px;}
  .pl-corner-tl{top:14px;left:14px;}.pl-corner-tr{top:14px;right:14px;}
  .pl-corner-bl{bottom:14px;left:14px;}.pl-corner-br{bottom:14px;right:14px;}
}

/* ── Scroll Progress Bar ── */
#scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 0%;
  height: 2px;
  z-index: 9999;
  background: linear-gradient(90deg, #e8393f 0%, #ff5a5f 60%, #e8393f 100%);
  background-size: 200% 100%;
  box-shadow: 0 0 8px rgba(232,57,63,.7), 0 0 2px rgba(232,57,63,.4);
  border-radius: 0 2px 2px 0;
  transition: width .08s linear;
  animation: spShimmer 2.4s linear infinite;
  pointer-events: none;
}
/* glow dot at tip */
#scroll-progress::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff5a5f;
  box-shadow: 0 0 8px 3px rgba(232,57,63,.7);
  opacity: 0;
  transition: opacity .15s;
}
#scroll-progress.active::after {
  opacity: 1;
}
@keyframes spShimmer {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* ─────────────────────────────────────────────────────
   DESKTOP SIDE NAV  (shfaqet ≥1025px)
───────────────────────────────────────────────────── */
#snav {
  position: fixed;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9998;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  padding: 6px 0;
  background: rgba(8,14,26,0.72);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 30px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow:
    0 0 0 1px rgba(0,0,0,0.4),
    0 8px 32px rgba(0,0,0,0.5),
    inset 0 1px 0 rgba(255,255,255,0.05);
}
#snav .sn-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
  text-decoration: none;
  isolation: isolate;
  transition: background 0.2s;
}
#snav .sn-item i {
  font-size: 12px;
  color: rgba(255,255,255,0.28);
  position: relative;
  z-index: 2;
  pointer-events: none;
  transition: color 0.2s, transform 0.2s;
}
#snav .sn-item:hover i,
#snav .sn-item.is-active i {
  color: #e8393f;
  transform: scale(1.15);
}
#snav .sn-item.is-active::before {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: rgba(232,57,63,0.12);
  border: 1px solid rgba(232,57,63,0.25);
  z-index: 1;
}
#snav .sn-item.is-active::after {
  content: "";
  position: absolute;
  right: -7px;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 14px;
  border-radius: 3px;
  background: linear-gradient(to bottom, #e8393f, #ff5a5f);
  box-shadow: 0 0 6px rgba(232,57,63,0.7);
}
#snav .sn-item .sn-tip {
  position: absolute;
  right: calc(100% + 14px);
  top: 50%;
  transform: translateY(-50%) translateX(6px);
  white-space: nowrap;
  background: rgba(8,14,26,0.92);
  border: 1px solid rgba(232,57,63,0.2);
  border-radius: 6px;
  padding: 5px 11px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  font-weight: 700;
  color: rgba(255,255,255,0.85);
  letter-spacing: 0.04em;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.18s, transform 0.18s;
  box-shadow: 0 4px 16px rgba(0,0,0,0.4);
  z-index: 10;
}
#snav .sn-item .sn-tip::after {
  content: "";
  position: absolute;
  right: -5px;
  top: 50%;
  transform: translateY(-50%);
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid rgba(8,14,26,0.92);
}
#snav .sn-item:hover .sn-tip {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}
#snav .sn-item.is-active .sn-tip { color: #fff; }
#snav .sn-divider {
  width: 16px;
  height: 1px;
  background: rgba(255,255,255,0.07);
  margin: 3px 0;
  border-radius: 1px;
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  #snav { display: none !important; }
}


/* ─────────────────────────────────────────────────────
   MOBILE / TABLET  (shfaqet ≤1024px)
───────────────────────────────────────────────────── */

/* overlay */
#bnav-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 9994;
  opacity: 0;
  transition: opacity 0.28s;
}
#bnav-overlay.is-open {
  display: block;
  opacity: 1;
}

/* bottom sheet */
#bnav-sheet {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 9996;
  background: #0a1220;
  border-top: 1px solid rgba(232,57,63,0.18);
  border-radius: 20px 20px 0 0;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  transform: translateY(100%);
  transition: transform 0.38s cubic-bezier(0.32,0.72,0,1);
  max-height: 80vh;
  overflow-y: auto;
  box-shadow: 0 -8px 40px rgba(0,0,0,0.6);
}
#bnav-sheet.is-open {
  transform: translateY(0);
}
#bnav-sheet .bnav-handle {
  width: 36px; height: 4px;
  background: rgba(255,255,255,0.12);
  border-radius: 4px;
  margin: 14px auto 6px;
}
#bnav-sheet .bnav-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 22px 14px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
#bnav-sheet .bnav-header-title {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  font-weight: 700;
  color: rgba(255,255,255,0.28);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
#bnav-sheet .bnav-close {
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  border: none;
  color: rgba(255,255,255,0.4);
  font-size: 12px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.18s, color 0.18s;
}
#bnav-sheet .bnav-close:hover {
  background: rgba(232,57,63,0.15);
  color: #e8393f;
}

/* grid list */
#bnav-sheet .bnav-list {
  list-style: none;
  margin: 0;
  padding: 12px 14px 22px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
#bnav-sheet .bnav-list li a {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 12px 14px;
  border-radius: 12px;
  text-decoration: none;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
  transition: background 0.18s, border-color 0.18s, transform 0.14s;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
#bnav-sheet .bnav-list li a:active {
  transform: scale(0.96);
}
#bnav-sheet .bnav-list li a:hover,
#bnav-sheet .bnav-list li a.is-active {
  background: rgba(232,57,63,0.08);
  border-color: rgba(232,57,63,0.22);
}
#bnav-sheet .bnav-list li a .bl-icon {
  width: 32px; height: 32px;
  border-radius: 9px;
  background: rgba(255,255,255,0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 13px;
  color: rgba(255,255,255,0.32);
  transition: background 0.18s, color 0.18s;
}
#bnav-sheet .bnav-list li a:hover .bl-icon,
#bnav-sheet .bnav-list li a.is-active .bl-icon {
  background: rgba(232,57,63,0.14);
  color: #e8393f;
}
#bnav-sheet .bnav-list li a .bl-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#bnav-sheet .bnav-list li a .bl-label {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: rgba(255,255,255,0.58);
  letter-spacing: 0.02em;
  line-height: 1;
  transition: color 0.18s;
}
#bnav-sheet .bnav-list li a:hover .bl-label,
#bnav-sheet .bnav-list li a.is-active .bl-label {
  color: #fff;
}
#bnav-sheet .bnav-list li a .bl-active-tag {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 9px;
  font-weight: 700;
  color: #e8393f;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity 0.18s;
}
#bnav-sheet .bnav-list li a.is-active .bl-active-tag {
  opacity: 1;
}

/* trigger pill */
#bnav-trigger {
  position: fixed;
  left: 50%;
  bottom: 22px;
  transform: translateX(-50%);
  z-index: 8998;
  display: none;
  align-items: center;
  gap: 10px;
  padding: 10px 18px 10px 12px;
  background: rgba(8,14,26,0.9);
  border: 1px solid rgba(232,57,63,0.22);
  border-radius: 50px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  cursor: pointer;
  box-shadow:
    0 0 0 1px rgba(0,0,0,0.4),
    0 8px 28px rgba(0,0,0,0.55),
    0 0 20px rgba(232,57,63,0.08);
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.14s;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
}
#bnav-trigger:active {
  transform: translateX(-50%) scale(0.96);
}
#bnav-trigger:hover {
  border-color: rgba(232,57,63,0.38);
  box-shadow:
    0 0 0 1px rgba(0,0,0,0.4),
    0 8px 28px rgba(0,0,0,0.55),
    0 0 24px rgba(232,57,63,0.18);
}
#bnav-trigger .bt-icon-wrap {
  width: 28px; height: 28px;
  border-radius: 8px;
  background: rgba(232,57,63,0.14);
  border: 1px solid rgba(232,57,63,0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: #e8393f;
  flex-shrink: 0;
  transition: background 0.2s;
}
#bnav-trigger .bt-label {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: rgba(255,255,255,0.82);
  letter-spacing: 0.03em;
  white-space: nowrap;
  max-width: 130px;
  overflow: hidden;
  text-overflow: ellipsis;
}
#bnav-trigger .bt-chevron {
  font-size: 10px;
  color: rgba(255,255,255,0.28);
  transition: transform 0.28s, color 0.2s;
  flex-shrink: 0;
}
#bnav-trigger.is-open .bt-chevron {
  transform: rotate(180deg);
  color: #e8393f;
}
#bnav-trigger::before {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 54px;
  border: 1px solid rgba(232,57,63,0.14);
  animation: bnavPulse 2.8s ease-in-out infinite;
  pointer-events: none;
}
@keyframes bnavPulse {
  0%, 100% { opacity: 0; transform: scale(1);    }
  50%       { opacity: 1; transform: scale(1.04); }
}
@media (max-width: 1024px) {
  #bnav-trigger { display: flex; }
}




/* ─────────────────────────────
   GLOBAL SCROLLBAR
───────────────────────────── */

html {
  scrollbar-width: thin;
  scrollbar-color: #4bdd81 #0b0f18;
}


/* CHROME / EDGE / SAFARI */

::-webkit-scrollbar {
  width: 10px;
}


::-webkit-scrollbar-track {

  background: #0b0f18;

  border-left: 1px solid rgba(255,255,255,.05);

}


::-webkit-scrollbar-thumb {

  border-radius: 10px;

  background: linear-gradient(
    180deg,
    #4da3ff,
    #ff4d4d,
    #4dff9c,
    #ffa64d,
    #c27cff
  );

  box-shadow:
    0 0 8px rgba(77,163,255,.5),
    0 0 8px rgba(255,77,77,.4),
    0 0 8px rgba(77,255,156,.4);

}


::-webkit-scrollbar-thumb:hover {

  background: linear-gradient(
    180deg,
    #66b3ff,
    #ff6666,
    #66ffb3,
    #ffbb66,
    #d699ff
  );

}