  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

  :root {
    --bg:        #080C14;
    --bg2:       #0D1320;
    --bg3:       #111827;
    --indigo:    #4F6EF7;
    --indigo-l:  #6B86FF;
    --cyan:      #22D3EE;
    --purple:    #A855F7;
    --green:     #22C55E;
    --orange:    #F97316;
    --text:      #F0F4FF;
    --muted:     #8892A4;
    --border:    rgba(255,255,255,0.07);
    --card:      rgba(255,255,255,0.04);
  }

  html { scroll-behavior: smooth; }

  body {
    background: var(--bg);
    color: var(--text);
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    overflow-x: hidden;
  }

  /* ─── NOISE TEXTURE ─── */
  body::before {
    content: '';
    position: fixed; inset: 0;
    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='0.03'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 0;
    opacity: .4;
  }

  h1,h2,h3,h4 { font-family: 'Space Grotesk', sans-serif; line-height: 1.15; }

  .container { max-width: 1180px; margin: 0 auto; padding: 0 24px; }

  /* ─── NAV ─── */
  nav {
    position: fixed; top: 0; width: 100%; z-index: 100;
    backdrop-filter: blur(20px);
    background: rgba(8,12,20,.7);
    border-bottom: 1px solid var(--border);
  }
  .nav-inner {
    display: flex; align-items: center; justify-content: space-between;
    height: 72px;
  }
  .nav-logo {
    display: flex; align-items: center; gap: 12px;
    text-decoration: none; color: var(--text);
  }
  .nav-logo-mark {
    width: 44px; height: 44px; border-radius: 12px;
    background: linear-gradient(135deg, var(--indigo), var(--cyan));
    display: grid; place-items: center;
    font-family: 'Space Grotesk', sans-serif;
    font-weight: 800; font-size: 18px; letter-spacing: -.5px;
    color: #fff;
    box-shadow: 0 0 20px rgba(79,110,247,.4);
  }
  .nav-logo-text h3 { font-size: 15px; font-weight: 600; }
  .nav-logo-text p  { font-size: 12px; color: var(--muted); margin-top: 1px; }

  .nav-links { display: flex; gap: 40px; list-style: none; }
  .nav-links a {
    text-decoration: none; color: var(--muted); font-size: 14px; font-weight: 500;
    transition: color .2s;
  }
  .nav-links a:hover { color: var(--text); }

  .nav-cta {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 22px; border-radius: 10px;
    background: var(--indigo); color: #fff;
    text-decoration: none; font-size: 14px; font-weight: 600;
    transition: background .2s, box-shadow .2s;
  }
  .nav-cta:hover {
    background: var(--indigo-l);
    box-shadow: 0 0 24px rgba(79,110,247,.5);
  }

  /* ─── HERO ─── */
  .hero {
    position: relative;
    padding: 140px 0 80px;
    overflow: hidden;
  }

  /* mesh blobs */
  .blob {
    position: absolute; border-radius: 50%; filter: blur(80px);
    pointer-events: none;
  }
  .blob-1 {
    width: 600px; height: 600px;
    background: radial-gradient(circle, rgba(79,110,247,.18) 0%, transparent 70%);
    top: -100px; left: -100px;
  }
  .blob-2 {
    width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(34,211,238,.12) 0%, transparent 70%);
    top: 0; right: 100px;
  }
  .blob-3 {
    width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(168,85,247,.1) 0%, transparent 70%);
    bottom: -80px; right: 200px;
  }

  .hero-grid {
    display: grid;
    grid-template-columns: 1fr 0.85fr;
    gap: 48px;
    align-items: center;
    position: relative; z-index: 1;
  }

  .hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 6px 14px; border-radius: 999px;
    border: 1px solid rgba(34,211,238,.25);
    background: rgba(34,211,238,.06);
    font-size: 13px; font-weight: 500; color: var(--cyan);
    margin-bottom: 28px;
  }
  .hero-badge-dot {
    width: 7px; height: 7px; border-radius: 50%;
    background: var(--green);
    box-shadow: 0 0 8px var(--green);
    animation: pulse 2s infinite;
  }
  @keyframes pulse {
    0%,100% { opacity: 1; transform: scale(1); }
    50%      { opacity: .6; transform: scale(1.3); }
  }

  .hero h1 {
    font-size: clamp(44px, 5.5vw, 72px);
    font-weight: 800;
    letter-spacing: -2px;
    line-height: 1.08;
  }
  .hero h1 em {
    font-style: normal;
    background: linear-gradient(90deg, var(--indigo-l), var(--cyan));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .hero-desc {
    margin-top: 24px;
    font-size: 17px;
    color: var(--muted);
    line-height: 1.75;
    max-width: 520px;
  }

  .hero-actions {
    display: flex; gap: 14px; flex-wrap: wrap;
    margin-top: 36px;
  }
  .btn-primary {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 13px 26px; border-radius: 12px;
    background: var(--indigo); color: #fff;
    text-decoration: none; font-weight: 600; font-size: 15px;
    transition: all .2s;
  }
  .btn-primary:hover { background: var(--indigo-l); box-shadow: 0 8px 30px rgba(79,110,247,.4); transform: translateY(-1px); }
  .btn-ghost {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 13px 26px; border-radius: 12px;
    border: 1px solid var(--border);
    background: var(--card);
    color: var(--text); text-decoration: none;
    font-weight: 600; font-size: 15px;
    backdrop-filter: blur(8px);
    transition: all .2s;
  }
  .btn-ghost:hover { border-color: rgba(255,255,255,.15); background: rgba(255,255,255,.07); transform: translateY(-1px); }

  /* RIGHT — image + bento stats */
  .hero-right {
    position: relative;
  }

  .hero-image-wrap {
    position: relative;
    border-radius: 28px;
    overflow: hidden;
    background: linear-gradient(160deg, rgba(79,110,247,.15), rgba(34,211,238,.06));
    border: 1px solid var(--border);
    aspect-ratio: 4/5;
    display: flex; align-items: flex-end; justify-content: center;
  }
  .hero-image-wrap::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(to top, var(--bg) 0%, transparent 40%);
  }
  .hero-img {
    width: 85%; height: 100%;
    object-fit: cover; object-position: top;
    position: relative;
  }

  .hero-glow {
    position: absolute; inset: -1px;
    border-radius: 28px;
    background: linear-gradient(135deg, rgba(79,110,247,.3), rgba(34,211,238,.15), transparent);
    z-index: -1;
    filter: blur(1px);
  }

  /* floating stats */
  .stat-chip {
    position: absolute; z-index: 10;
    backdrop-filter: blur(16px);
    background: rgba(13,19,32,.85);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    padding: 14px 18px;
    display: flex; flex-direction: column; gap: 2px;
    min-width: 130px;
    box-shadow: 0 8px 32px rgba(0,0,0,.4);
  }
  .stat-chip .num {
    font-family: 'Space Grotesk', sans-serif;
    font-size: 28px; font-weight: 700; line-height: 1;
  }
  .stat-chip .lbl { font-size: 12px; color: var(--muted); }
  .chip-tl { top: 28px;  left: -20px; }
  .chip-tr { top: 20px;  right: -20px; }
  .chip-br { bottom: 80px; right: -16px; }
  .chip-bl { bottom: 64px; left: -24px; }

  /* ─── MARQUEE ─── */
  .marquee-wrap {
    overflow: hidden;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    padding: 18px 0;
    margin: 60px 0 0;
    position: relative; z-index: 1;
  }
  .marquee-track {
    display: flex; gap: 48px; width: max-content;
    animation: marquee 30s linear infinite;
  }
  @keyframes marquee { to { transform: translateX(-50%); } }
  .marquee-item {
    display: flex; align-items: center; gap: 10px;
    font-size: 13px; font-weight: 500; color: var(--muted);
    white-space: nowrap;
  }
  .marquee-item i { font-size: 18px; }
  .marquee-dot {
    width: 4px; height: 4px; border-radius: 50%;
    background: var(--muted); opacity: .4;
  }

  /* ─── SECTION LABELS ─── */
  .section-label {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 12px; font-weight: 600; letter-spacing: 2px;
    text-transform: uppercase; color: var(--indigo);
    margin-bottom: 14px;
  }
  .section-label::before {
    content: '';
    display: block; width: 20px; height: 2px;
    background: var(--indigo); border-radius: 2px;
  }

  /* ─── PROJECTS ─── */
  .projects { padding: 100px 0; }
  .projects-header { margin-bottom: 52px; }
  .projects-header h2 { font-size: clamp(36px, 4vw, 52px); font-weight: 800; letter-spacing: -1.5px; }

  .projects-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }

  .project-card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 20px;
    overflow: hidden;
    transition: transform .25s, border-color .25s, box-shadow .25s;
    cursor: pointer;
  }
  .project-card:hover {
    transform: translateY(-6px);
    border-color: rgba(79,110,247,.3);
    box-shadow: 0 24px 60px rgba(0,0,0,.4), 0 0 0 1px rgba(79,110,247,.15);
  }
  .project-card:nth-child(2):hover { border-color: rgba(34,211,238,.3); box-shadow: 0 24px 60px rgba(0,0,0,.4), 0 0 0 1px rgba(34,211,238,.15); }
  .project-card:nth-child(3):hover { border-color: rgba(168,85,247,.3); box-shadow: 0 24px 60px rgba(0,0,0,.4), 0 0 0 1px rgba(168,85,247,.15); }

  .project-img-wrap {
    position: relative; overflow: hidden;
    background: linear-gradient(135deg, var(--bg2), var(--bg3));
    aspect-ratio: 16/9;
  }
  .project-img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
  .project-card:hover .project-img-wrap img { transform: scale(1.04); }

  .project-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(8,12,20,.8) 0%, transparent 60%);
    opacity: 0; transition: opacity .3s;
    display: flex; align-items: flex-end; justify-content: flex-end;
    padding: 16px;
  }
  .project-card:hover .project-overlay { opacity: 1; }
  .project-link-icon {
    width: 36px; height: 36px; border-radius: 50%;
    background: var(--indigo); display: grid; place-items: center;
    color: #fff; font-size: 13px;
  }

  .project-body { padding: 22px 22px 24px; }
  .project-tag {
    display: inline-block;
    padding: 3px 10px; border-radius: 6px;
    font-size: 11px; font-weight: 600; letter-spacing: .5px;
    background: rgba(79,110,247,.12); color: var(--indigo);
    margin-bottom: 10px;
  }
  .project-body h3 { font-size: 20px; font-weight: 700; letter-spacing: -.4px; }
  .project-body p  { font-size: 14px; color: var(--muted); margin-top: 8px; line-height: 1.65; }

  /* ─── SERVICES ─── */
  .services { padding: 20px 0 100px; }
  .services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 48px;
  }

  .service-card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 28px 26px;
    transition: all .25s;
    position: relative; overflow: hidden;
  }
  .service-card::before {
    content: '';
    position: absolute; inset: 0;
    opacity: 0; transition: opacity .3s;
    border-radius: inherit;
  }
  .service-card:nth-child(1)::before { background: radial-gradient(circle at top left, rgba(79,110,247,.08), transparent 70%); }
  .service-card:nth-child(2)::before { background: radial-gradient(circle at top left, rgba(168,85,247,.08), transparent 70%); }
  .service-card:nth-child(3)::before { background: radial-gradient(circle at top left, rgba(34,211,238,.08), transparent 70%); }
  .service-card:nth-child(4)::before { background: radial-gradient(circle at top left, rgba(79,110,247,.08), transparent 70%); }
  .service-card:nth-child(5)::before { background: radial-gradient(circle at top left, rgba(249,115,22,.08), transparent 70%); }
  .service-card:nth-child(6)::before { background: radial-gradient(circle at top left, rgba(239,68,68,.08), transparent 70%); }
  .service-card:hover::before { opacity: 1; }
  .service-card:hover { border-color: rgba(255,255,255,.12); transform: translateY(-3px); }

  .service-icon {
    width: 48px; height: 48px; border-radius: 12px;
    display: grid; place-items: center;
    font-size: 22px; margin-bottom: 18px;
  }
  .service-card h3 { font-size: 16px; font-weight: 700; letter-spacing: -.2px; margin-bottom: 8px; }
  .service-card p  { font-size: 13px; color: var(--muted); line-height: 1.7; }

  /* ─── TECH ─── */
  .tech { padding: 0 0 100px; }
  .tech-header { text-align: center; margin-bottom: 52px; }
  .tech-header h2 { font-size: clamp(32px, 3.5vw, 48px); font-weight: 800; letter-spacing: -1px; }

  .tech-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
  }

  .tech-card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 24px 16px;
    display: flex; flex-direction: column;
    align-items: center; gap: 12px;
    font-size: 13px; font-weight: 500; color: var(--muted);
    transition: all .25s; cursor: default;
  }
  .tech-card i { font-size: 36px; transition: transform .25s; }
  .tech-card:hover { border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.06); transform: translateY(-4px); }
  .tech-card:hover i { transform: scale(1.1); }

  /* ─── CONTACT ─── */
  .contact { padding: 0 0 100px; }
  .contact-inner {
    border-radius: 28px;
    border: 1px solid var(--border);
    background: linear-gradient(135deg, rgba(79,110,247,.08) 0%, rgba(13,19,32,.9) 40%, rgba(17,24,39,.9) 100%);
    padding: 64px 56px;
    position: relative; overflow: hidden;
  }
  .contact-inner::before {
    content: '';
    position: absolute; top: -60px; right: -60px;
    width: 300px; height: 300px; border-radius: 50%;
    background: radial-gradient(circle, rgba(79,110,247,.15), transparent 70%);
    pointer-events: none;
  }
  .contact-inner::after {
    content: '';
    position: absolute; bottom: -40px; left: 200px;
    width: 200px; height: 200px; border-radius: 50%;
    background: radial-gradient(circle, rgba(34,211,238,.1), transparent 70%);
    pointer-events: none;
  }

  .contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px; align-items: center;
    position: relative; z-index: 1;
  }
  .contact-left h2 { font-size: clamp(30px, 3vw, 42px); font-weight: 800; letter-spacing: -1px; }
  .contact-left h2 span {
    background: linear-gradient(90deg, var(--indigo-l), var(--cyan));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .contact-left p { margin-top: 16px; color: var(--muted); font-size: 15px; line-height: 1.7; }

  .contact-btns { display: flex; flex-direction: column; gap: 12px; }
  .cbtn {
    display: flex; align-items: center; gap: 12px;
    padding: 16px 22px; border-radius: 14px;
    text-decoration: none; font-weight: 600; font-size: 15px;
    transition: all .2s;
  }
  .cbtn i { width: 20px; text-align: center; }
  .cbtn-wa {
    background: linear-gradient(90deg, #25D366, #128C7E);
    color: #fff;
    box-shadow: 0 8px 24px rgba(37,211,102,.25);
  }
  .cbtn-wa:hover { transform: translateY(-2px); box-shadow: 0 12px 32px rgba(37,211,102,.35); }
  .cbtn-secondary {
    background: rgba(255,255,255,.05);
    border: 1px solid var(--border);
    color: var(--text);
    backdrop-filter: blur(8px);
  }
  .cbtn-secondary:hover { background: rgba(255,255,255,.09); border-color: rgba(255,255,255,.14); transform: translateY(-2px); }

  /* ─── FOOTER ─── */
  footer {
    border-top: 1px solid var(--border);
    padding: 28px 0;
    text-align: center;
    font-size: 13px;
    color: var(--muted);
    position: relative; z-index: 1;
  }

  /* ─── RESPONSIVE ─── */
  @media (max-width: 900px) {
    .hero-grid { grid-template-columns: 1fr; }
    .hero-right { display: none; }
    .projects-grid { grid-template-columns: 1fr; }
    .services-grid { grid-template-columns: 1fr 1fr; }
    .tech-grid { grid-template-columns: repeat(3, 1fr); }
    .contact-grid { grid-template-columns: 1fr; }
    .nav-links { display: none; }
    .contact-inner { padding: 40px 28px; }
  }
  @media (max-width: 600px) {
    .services-grid { grid-template-columns: 1fr; }
    .tech-grid { grid-template-columns: repeat(2, 1fr); }
  }

  /* ABOUT SECTION */
.about-section {
    position: relative;
    padding: 120px 0;
    overflow: hidden;
}

.about-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 60px;
    align-items: center;
}

/* LEFT SIDE */
.section-badge {
    display: inline-flex;
    align-items: center;
    padding: 10px 18px;
    border-radius: 999px;
    border: 1px solid rgba(59,130,246,.25);
    background: rgba(37,99,235,.08);
    color: #38bdf8;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 24px;
}

.about-content h2 {
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: 1.1;
    font-weight: 800;
    color: #fff;
    margin-bottom: 24px;
}

.about-desc {
    color: rgba(255,255,255,.65);
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 20px;
    max-width: 650px;
}

/* RIGHT SIDE */
.about-cards {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;
}

.about-card {
    position: relative;
    padding: 30px;
    border-radius: 24px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.05),
        rgba(255,255,255,0.02)
    );
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(14px);
    transition: all .3s ease;
}

.about-card:hover {
    transform: translateY(-6px);
    border-color: rgba(59,130,246,.3);
    box-shadow: 0 15px 40px rgba(37,99,235,.12);
}

.about-card span {
    display: block;
    color: rgba(255,255,255,.55);
    font-size: 14px;
    margin-bottom: 14px;
}

.about-card h3 {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

/* BUTTON */
.about-content .btn-primary {
    margin-top: 20px;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .about-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .about-content {
        text-align: center;
    }

    .about-desc {
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 768px) {
    .about-section {
        padding: 80px 0;
    }

    .about-cards {
        grid-template-columns: 1fr;
    }

    .about-content h2 {
        font-size: 42px;
    }

    .about-desc {
        font-size: 16px;
    }
}

.about-highlights {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.highlight-card {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 28px;
    border-radius: 24px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.05),
        rgba(255,255,255,0.02)
    );
    border: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(14px);
    transition: all .3s ease;
}

.highlight-card:hover {
    transform: translateY(-5px);
    border-color: rgba(59,130,246,.35);
    box-shadow: 0 15px 40px rgba(37,99,235,.12);
}

.highlight-icon {
    min-width: 54px;
    height: 54px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(37,99,235,.12);
    border: 1px solid rgba(59,130,246,.2);
}

.highlight-icon i {
    color: #38bdf8;
    font-size: 20px;
}

.highlight-content span {
    display: block;
    color: rgba(255,255,255,.55);
    font-size: 14px;
    margin-bottom: 8px;
}

.highlight-content h3 {
    color: white;
    font-size: 24px;
    margin-bottom: 10px;
    line-height: 1.3;
    font-weight: 700;
}

.highlight-content p {
    color: rgba(255,255,255,.65);
    line-height: 1.7;
    font-size: 15px;
    margin: 0;
}

@media (max-width: 768px) {
    .highlight-card {
        padding: 22px;
        gap: 16px;
    }

    .highlight-content h3 {
        font-size: 20px;
    }

    .highlight-content p {
        font-size: 14px;
    }
}
.footer {
    margin-top: 100px;
    border-top: 1px solid rgba(255,255,255,.06);
    padding-top: 60px;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 50px;
}

.footer-brand p {
    margin-top: 20px;
    color: rgba(255,255,255,.6);
    line-height: 1.8;
    max-width: 350px;
}

.footer-links,
.footer-social {
    display: flex;
    flex-direction: column;
}

.footer h4 {
    color: white;
    margin-bottom: 20px;
}

.footer-links a {
    color: rgba(255,255,255,.65);
    margin-bottom: 12px;
    text-decoration: none;
    transition: .3s;
}

.footer-links a:hover {
    color: #4F7DF3;
}

.social-icons {
    display: flex;
    gap: 14px;
}

.social-icons a {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    color: white;
    text-decoration: none;
    transition: .3s;
}

.social-icons a:hover {
    transform: translateY(-4px);
    border-color: rgba(79,125,243,.35);
    color: #4F7DF3;
}

.footer-bottom {
    margin-top: 50px;
    padding: 25px 0;
    text-align: center;
    border-top: 1px solid rgba(255,255,255,.06);
}

.footer-bottom p {
    color: rgba(255,255,255,.5);
}

@media (max-width: 992px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

.projects-page{
    padding:140px 0 100px;
}

.projects-page-header{
    text-align:center;
    max-width:850px;
    margin:0 auto 80px;
}

.projects-page-header h1{
    font-size:64px;
    line-height:1.1;
    margin:20px 0;
}

.projects-page-header p{
    color:var(--muted);
    font-size:18px;
    line-height:1.8;
}

.projects-grid-section{
    margin-top:40px;
}

.pagination-wrap{
    margin-top:70px;
    display:flex;
    justify-content:center;
}

.no-projects{
    grid-column:1/-1;
    text-align:center;
    padding:80px 0;
}

.no-projects h3{
    font-size:32px;
    margin-bottom:12px;
}

.no-projects p{
    color:var(--muted);
}

.project-actions{
    margin-top:22px;
}

.project-read-more{
    display:inline-flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    font-weight:600;
    color:white;
    transition:all .3s ease;
}

.project-read-more i{
    font-size:14px;
    transition:transform .3s ease;
}

.project-read-more:hover{
    opacity:.8;
}

.project-read-more:hover i{
    transform:translateX(6px);
}
.project-hero{
    padding:140px 0 80px;
}

.project-hero-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
}

.project-hero h1{
    font-size:64px;
    margin:20px 0;
}

.project-hero p{
    color:var(--muted);
    line-height:1.8;
    font-size:18px;
}

.project-main-image{
    width:100%;
    border-radius:24px;
}

.project-content{
    padding:80px 0;
}

.content-block{
    margin-bottom:60px;
}

.content-block h2,
.content-card h3{
    margin-bottom:20px;
}

.content-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
}

.content-card{
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.06);
    padding:40px;
    border-radius:24px;
}

.tech-stack{
    margin-top:60px;
}

.tech-list{
    display:flex;
    gap:15px;
    flex-wrap:wrap;
    margin-top:20px;
}

.tech-list span{
    padding:12px 18px;
    border-radius:999px;
    background:rgba(255,255,255,.06);
}

.project-gallery{
    padding:80px 0;
}

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
    margin-top:50px;
}

.gallery-grid img{
    width:100%;
    border-radius:20px;
}

.project-cta{
    padding:80px 0 120px;
}

.cta-box{
    text-align:center;
    padding:80px;
    border-radius:32px;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.06);
}
.project-gallery{
    padding:80px 0;
}

.mySwiper{
    margin-top:50px;
}

.swiper-slide img{
    width:100%;
    height:650px;
    object-fit:cover;
    border-radius:24px;
}
.gallery-slider{
    display:flex;
    gap:24px;
    overflow-x:auto;
    padding:20px 0;
    scroll-behavior:smooth;
}

.gallery-slider::-webkit-scrollbar{
    display:none;
}

.gallery-card{
    min-width:420px;
    height:260px;
    border-radius:24px;
    overflow:hidden;
    cursor:pointer;
    flex-shrink:0;
    border:1px solid rgba(255,255,255,.08);
}

.gallery-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.4s;
}

.gallery-card:hover img{
    transform:scale(1.05);
}

.image-modal{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.95);
    z-index:9999;
    justify-content:center;
    align-items:center;
}

.image-modal img{
    max-width:90%;
    max-height:90%;
    border-radius:20px;
}

.image-modal span{
    position:absolute;
    top:30px;
    right:40px;
    color:white;
    font-size:42px;
    cursor:pointer;
}
.gallery-wrapper{
    position:relative;
}

.gallery-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:50px;
    height:50px;
    border:none;
    border-radius:50%;
    background:rgba(20,20,30,.9);
    color:white;
    cursor:pointer;
    z-index:10;
    transition:.3s;
}

.gallery-arrow:hover{
    background:#4F6BFF;
}

.gallery-arrow.left{
    left:-25px;
}

.gallery-arrow.right{
    right:-25px;
}
