/*
Theme Name: Ankit Tyagi Portfolio
Theme URI: https://ankittyagi.me
Author: Ankit Tyagi
Description: Professional portfolio theme for Certified PPC Expert Ankit Tyagi
Version: 1.0
Text Domain: ankit-portfolio
*/

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

:root {
  --primary: #6c63ff;
  --accent: #ff6584;
  --bg: #0d0d1a;
  --bg2: #13132b;
  --bg3: #1a1a35;
  --text: #e8e8f0;
  --muted: #9090b0;
  --card: #1c1c38;
  --border: rgba(108,99,255,0.2);
  --grad: linear-gradient(135deg,#6c63ff,#ff6584);
}

html { scroll-behavior: smooth; }
body { font-family:'Inter','Segoe UI',sans-serif; background:var(--bg); color:var(--text); line-height:1.7; overflow-x:hidden; }
a { color:var(--primary); text-decoration:none; transition:.3s; }
img { max-width:100%; }
.container { max-width:1100px; margin:0 auto; padding:0 24px; }
section { padding:90px 0; }

::-webkit-scrollbar { width:6px; }
::-webkit-scrollbar-track { background:var(--bg); }
::-webkit-scrollbar-thumb { background:var(--primary); border-radius:3px; }

/* NAVBAR */
#navbar { position:fixed;top:0;left:0;right:0;z-index:1000;padding:18px 0;transition:.3s; }
#navbar.scrolled { background:rgba(13,13,26,.95);backdrop-filter:blur(10px);padding:12px 0;border-bottom:1px solid var(--border); }
.nav-inner { display:flex;align-items:center;justify-content:space-between; }
.nav-logo { font-size:1.4rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.nav-links { display:flex;gap:28px;list-style:none; }
.nav-links a { color:var(--text);font-weight:500;font-size:.95rem;position:relative; }
.nav-links a::after { content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--grad);transition:.3s; }
.nav-links a:hover::after { width:100%; }
.nav-cta { background:var(--grad);color:#fff!important;-webkit-text-fill-color:#fff!important;padding:10px 24px;border-radius:50px;font-weight:700; }
.nav-cta::after { display:none!important; }
.hamburger { display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none; }
.hamburger span { width:24px;height:2px;background:var(--text);display:block;transition:.3s; }

/* HERO */
#hero { min-height:100vh;display:flex;align-items:center;background:radial-gradient(ellipse at 70% 50%,rgba(108,99,255,.15) 0%,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(255,101,132,.1) 0%,transparent 50%),var(--bg); }
.hero-inner { display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px; }
.hero-badge { display:inline-flex;align-items:center;gap:8px;background:rgba(108,99,255,.15);border:1px solid var(--border);padding:8px 18px;border-radius:50px;font-size:.85rem;color:var(--primary);margin-bottom:20px;font-weight:700; }
.hero-title { font-size:clamp(2.4rem,5vw,3.6rem);font-weight:900;line-height:1.1;margin-bottom:16px;letter-spacing:-1px; }
.hero-title span { background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.hero-sub { font-size:1.1rem;color:var(--muted);margin-bottom:32px;max-width:480px; }
.hero-stats { display:flex;gap:32px;margin-bottom:36px; }
.stat-num { font-size:1.7rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.stat-label { font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:1px; }
.hero-btns { display:flex;gap:16px;flex-wrap:wrap; }
.btn-primary { background:var(--grad);color:#fff;padding:14px 32px;border-radius:50px;font-weight:700;box-shadow:0 8px 30px rgba(108,99,255,.4);transition:.3s;display:inline-block; }
.btn-primary:hover { transform:translateY(-2px);box-shadow:0 12px 40px rgba(108,99,255,.5);color:#fff; }
.btn-outline { border:2px solid var(--primary);color:var(--primary);padding:12px 32px;border-radius:50px;font-weight:700;transition:.3s;display:inline-block; }
.btn-outline:hover { background:var(--primary);color:#fff; }
.hero-visual { display:flex;justify-content:center; }
.hero-card { background:var(--card);border:1px solid var(--border);border-radius:24px;padding:40px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.4);width:300px;position:relative; }
.hero-card::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);border-radius:24px 24px 0 0; }
.hero-avatar { width:90px;height:90px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:900;color:#fff;margin:0 auto 16px; }
.hero-card-name { font-size:1.2rem;font-weight:800;margin-bottom:6px; }
.hero-card-role { color:var(--primary);font-weight:600;margin-bottom:20px;font-size:.88rem; }
.hero-tags { display:flex;flex-wrap:wrap;gap:8px;justify-content:center; }
.tag { background:rgba(108,99,255,.15);border:1px solid var(--border);color:var(--primary);padding:5px 12px;border-radius:50px;font-size:.75rem;font-weight:700; }

/* SECTION TITLES */
.section-header { text-align:center;margin-bottom:60px; }
.s-tag { display:inline-block;background:rgba(108,99,255,.15);border:1px solid var(--border);color:var(--primary);padding:6px 18px;border-radius:50px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:16px; }
.s-title { font-size:clamp(1.8rem,4vw,2.6rem);font-weight:900;letter-spacing:-.5px;margin-bottom:12px; }
.s-title span { background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.s-sub { color:var(--muted);font-size:1rem;max-width:550px;margin:0 auto; }

/* ABOUT */
#about { background:var(--bg2); }
.about-inner { display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center; }
.about-card { background:var(--card);border:1px solid var(--border);border-radius:24px;padding:30px;text-align:center;position:relative; }
.about-card::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);border-radius:24px 24px 0 0; }
.about-av { width:110px;height:110px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:900;color:#fff;margin:0 auto 16px; }
.certs { margin-top:16px;display:flex;flex-direction:column;gap:10px; }
.cert { background:var(--bg3);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-size:.82rem;display:flex;align-items:center;gap:8px; }
.about-text h3 { font-size:1.5rem;font-weight:800;margin-bottom:14px; }
.about-text p { color:var(--muted);margin-bottom:14px; }
.about-stats { display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px; }
.a-stat { background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px;text-align:center; }
.a-num { font-size:1.5rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.a-lbl { font-size:.78rem;color:var(--muted);margin-top:4px; }

/* SKILLS */
#skills { background:var(--bg); }
.skills-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px; }
.skill-card { background:var(--card);border:1px solid var(--border);border-radius:20px;padding:30px 24px;text-align:center;transition:.3s; }
.skill-card:hover { transform:translateY(-6px);border-color:var(--primary);box-shadow:0 12px 40px rgba(108,99,255,.2); }
.skill-icon { font-size:2.5rem;margin-bottom:14px; }
.skill-name { font-size:1.1rem;font-weight:800;margin-bottom:8px; }
.skill-desc { font-size:.83rem;color:var(--muted); }

/* EXPERIENCE */
#experience { background:var(--bg2); }
.exp-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px; }
.exp-card { background:var(--card);border:1px solid var(--border);border-radius:20px;padding:28px;transition:.3s;position:relative; }
.exp-card::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);border-radius:20px 20px 0 0; }
.exp-card:hover { transform:translateY(-4px);border-color:var(--primary); }
.exp-co { font-size:1.15rem;font-weight:800;margin-bottom:14px;display:flex;align-items:center;gap:10px; }
.exp-list { list-style:none;display:flex;flex-direction:column;gap:9px; }
.exp-list li { font-size:.85rem;color:var(--muted);padding-left:18px;position:relative; }
.exp-list li::before { content:'▸';position:absolute;left:0;color:var(--primary); }
.exp-link { display:inline-block;margin-top:12px;font-size:.8rem;color:var(--primary);font-weight:700; }

/* SERVICES */
#services { background:var(--bg); }
.services-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px; }
.svc-card { background:var(--card);border:1px solid var(--border);border-radius:20px;padding:32px 26px;transition:.3s; }
.svc-card:hover { border-color:var(--primary);transform:translateY(-4px);box-shadow:0 12px 40px rgba(108,99,255,.2); }
.svc-icon { font-size:2.5rem;margin-bottom:16px; }
.svc-title { font-size:1.15rem;font-weight:800;margin-bottom:12px; }
.svc-list { list-style:none;display:flex;flex-direction:column;gap:8px; }
.svc-list li { font-size:.84rem;color:var(--muted);padding-left:16px;position:relative; }
.svc-list li::before { content:'✓';position:absolute;left:0;color:#4ade80;font-weight:700; }

/* PRICING */
#pricing { background:var(--bg2); }
.pricing-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;max-width:800px;margin:0 auto; }
.price-card { background:var(--card);border:1px solid var(--border);border-radius:24px;padding:38px 30px;text-align:center;position:relative;transition:.3s; }
.price-card.featured { border-color:var(--primary);box-shadow:0 0 50px rgba(108,99,255,.2); }
.price-card::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);border-radius:24px 24px 0 0; }
.price-badge { position:absolute;top:20px;right:20px;background:var(--grad);color:#fff;font-size:.68rem;font-weight:700;padding:4px 12px;border-radius:50px;text-transform:uppercase; }
.price-icon { font-size:2.5rem;margin-bottom:14px; }
.price-name { font-size:1.15rem;font-weight:800;margin-bottom:8px; }
.price-amount { font-size:2.8rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:14px 0 4px; }
.price-period { font-size:.83rem;color:var(--muted);margin-bottom:24px; }
.price-feats { list-style:none;text-align:left;display:flex;flex-direction:column;gap:9px;margin-bottom:28px; }
.price-feats li { font-size:.85rem;color:var(--muted);display:flex;gap:10px; }
.price-feats li::before { content:'✓';color:#4ade80;font-weight:700;flex-shrink:0; }
.price-note { font-size:.76rem;color:var(--muted);font-style:italic;margin-top:12px; }

/* CONTACT */
#contact { background:var(--bg); }
.contact-inner { display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:start; }
.c-head { font-size:1.5rem;font-weight:800;margin-bottom:12px; }
.c-sub { color:var(--muted);margin-bottom:24px; }
.c-items { display:flex;flex-direction:column;gap:14px; }
.c-item { display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--border);padding:16px 18px;border-radius:14px;transition:.3s; }
.c-item:hover { border-color:var(--primary); }
.c-ico { font-size:1.4rem;width:42px;height:42px;background:rgba(108,99,255,.15);border-radius:10px;display:flex;align-items:center;justify-content:center; }
.c-txt strong { display:block;font-size:.85rem;margin-bottom:2px; }
.c-txt span { font-size:.82rem;color:var(--muted); }
.form-wrap { background:var(--card);border:1px solid var(--border);border-radius:24px;padding:38px;position:relative; }
.form-wrap::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);border-radius:24px 24px 0 0; }
.fg { margin-bottom:18px; }
.fg label { display:block;font-size:.85rem;font-weight:700;margin-bottom:8px; }
.fg input,.fg textarea,.fg select { width:100%;background:var(--bg3);border:1px solid var(--border);color:var(--text);padding:13px 15px;border-radius:10px;font-size:.93rem;font-family:inherit;transition:.3s;outline:none; }
.fg input:focus,.fg textarea:focus { border-color:var(--primary);box-shadow:0 0 0 3px rgba(108,99,255,.15); }
.fg textarea { resize:vertical;min-height:110px; }
.form-row { display:grid;grid-template-columns:1fr 1fr;gap:14px; }

/* FOOTER */
#footer { background:var(--bg2);border-top:1px solid var(--border);padding:40px 0;text-align:center; }
.f-logo { font-size:1.3rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:14px; }
.f-links { display:flex;justify-content:center;gap:24px;list-style:none;margin-bottom:16px;flex-wrap:wrap; }
.f-links a { color:var(--muted);font-size:.88rem; }
.f-links a:hover { color:var(--primary); }
.f-copy { color:var(--muted);font-size:.82rem; }

/* RESPONSIVE */
@media(max-width:900px) {
  .hero-inner,.about-inner,.contact-inner { grid-template-columns:1fr; }
  .hero-visual { display:none; }
  .hero-stats { flex-wrap:wrap; }
}
@media(max-width:768px) {
  section { padding:60px 0; }
  .nav-links { display:none;flex-direction:column;position:absolute;top:65px;left:0;right:0;background:var(--bg2);padding:20px;border-bottom:1px solid var(--border); }
  .nav-links.open { display:flex; }
  .hamburger { display:flex; }
  .form-row { grid-template-columns:1fr; }
  .about-stats { grid-template-columns:1fr 1fr; }
}

/* ===================== GTM STRATEGY ===================== */
#gtm { background: var(--bg2); }
.gtm-intro { text-align:center; max-width:700px; margin:0 auto 50px; color:var(--muted); font-size:1.05rem; }
.gtm-steps { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:24px; margin-bottom:50px; }
.gtm-step {
  background:var(--card); border:1px solid var(--border); border-radius:20px;
  padding:32px 24px; position:relative; transition:.3s; text-align:center;
}
.gtm-step:hover { border-color:var(--primary); transform:translateY(-4px); box-shadow:0 12px 40px rgba(108,99,255,.2); }
.gtm-num {
  width:48px; height:48px; border-radius:50%; background:var(--grad);
  display:flex; align-items:center; justify-content:center;
  font-size:1.1rem; font-weight:900; color:#fff; margin:0 auto 18px;
}
.gtm-step-title { font-size:1.05rem; font-weight:800; margin-bottom:10px; }
.gtm-step-desc { font-size:.85rem; color:var(--muted); line-height:1.7; }
.gtm-connector {
  display:flex; align-items:center; justify-content:center;
  gap:0; margin-bottom:50px; flex-wrap:wrap;
}
.gtm-phase {
  background:var(--card); border:1px solid var(--border); border-radius:16px;
  padding:20px 24px; min-width:180px; text-align:center; flex:1; max-width:200px;
}
.gtm-phase-icon { font-size:1.8rem; margin-bottom:8px; }
.gtm-phase-name { font-size:.88rem; font-weight:800; margin-bottom:4px; }
.gtm-phase-time { font-size:.75rem; color:var(--primary); font-weight:700; background:rgba(108,99,255,.15); padding:3px 10px; border-radius:50px; display:inline-block; }
.gtm-arrow { font-size:1.5rem; color:var(--primary); margin:0 8px; flex-shrink:0; }

/* ===================== TESTIMONIALS ===================== */
#testimonials { background:var(--bg); }
.testimonials-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:28px; }
.testi-card {
  background:var(--card); border:1px solid var(--border); border-radius:24px;
  padding:36px 32px; position:relative; transition:.3s;
}
.testi-card:hover { border-color:var(--primary); transform:translateY(-4px); box-shadow:0 16px 50px rgba(108,99,255,.15); }
.testi-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:var(--grad); border-radius:24px 24px 0 0;
}
.testi-quote { font-size:3rem; color:var(--primary); opacity:.4; line-height:1; margin-bottom:16px; font-family:Georgia,serif; }
.testi-text { font-size:.95rem; color:var(--text); line-height:1.8; margin-bottom:28px; font-style:italic; }
.testi-author { display:flex; align-items:center; gap:14px; }
.testi-avatar {
  width:50px; height:50px; border-radius:50%; background:var(--grad);
  display:flex; align-items:center; justify-content:center;
  font-size:1.1rem; font-weight:900; color:#fff; flex-shrink:0;
}
.testi-name { font-size:1rem; font-weight:800; margin-bottom:2px; }
.testi-role { font-size:.78rem; color:var(--muted); margin-bottom:4px; }
.testi-source { font-size:.72rem; color:var(--primary); font-weight:700; }
.testi-stars { color:#f59e0b; font-size:.95rem; margin-bottom:16px; letter-spacing:2px; }

/* ===================== CLIENTS STRIP ===================== */
.clients-strip { background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:40px 0; }
.clients-inner { text-align:center; }
.clients-label { font-size:.8rem; color:var(--muted); text-transform:uppercase; letter-spacing:2px; font-weight:700; margin-bottom:28px; }
.clients-logos { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:12px; }
.client-pill {
  background:var(--card); border:1px solid var(--border);
  padding:10px 22px; border-radius:50px; font-size:.9rem; font-weight:700;
  color:var(--text-muted,var(--muted)); transition:.3s; white-space:nowrap;
}
.client-pill:hover { border-color:var(--primary); color:var(--primary); }

/* ===================== HERO PHOTO ===================== */
.hero-photo-wrap {
  position: relative; display: flex; justify-content: center; align-items: center;
}
.hero-photo-ring {
  width: 340px; height: 340px; border-radius: 50%;
  background: var(--grad); padding: 4px;
  box-shadow: 0 20px 60px rgba(108,99,255,.4);
  position: relative; flex-shrink: 0;
}
.hero-photo-ring img {
  width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: block;
}
.hero-photo-initials {
  width: 100%; height: 100%; border-radius: 50%;
  background: var(--card); display: flex; align-items: center; justify-content: center;
  font-size: 4rem; font-weight: 900; color: var(--primary);
}
.hero-photo-badge {
  position: absolute; bottom: 10px; right: -10px;
  background: var(--card); border: 1px solid var(--border); border-radius: 16px;
  padding: 12px 18px; font-size: .82rem; font-weight: 700;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
}
.hero-photo-badge span { color: #4ade80; margin-right: 6px; }
.hero-photo-badge2 {
  position: absolute; top: 20px; left: -20px;
  background: var(--card); border: 1px solid var(--border); border-radius: 16px;
  padding: 12px 18px; font-size: .82rem; font-weight: 700;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
}
.hero-photo-badge2 span { color: #f59e0b; margin-right: 6px; }

/* ===================== TESTIMONIAL PHOTO ===================== */
.testi-avatar-img {
  width: 50px; height: 50px; border-radius: 50%; object-fit: cover;
  border: 2px solid var(--primary); flex-shrink: 0;
}
.testi-avatar {
  width: 50px; height: 50px; border-radius: 50%; background: var(--grad);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; font-weight: 900; color: #fff; flex-shrink: 0;
}

/* ===================== CLIENTS LOGOS ===================== */
.client-logo-item {
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  background: var(--card); border: 1px solid var(--border);
  padding: 16px 20px; border-radius: 16px; transition: .3s; min-width: 120px;
}
.client-logo-item:hover { border-color: var(--primary); transform: translateY(-3px); }
.client-logo-item img { height: 40px; width: auto; object-fit: contain; filter: brightness(0) invert(1); opacity: .7; transition: .3s; }
.client-logo-item:hover img { opacity: 1; filter: none; }
.client-logo-name { font-size: .78rem; font-weight: 700; color: var(--muted); text-align: center; }
.clients-logos { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 14px; }

/* ===================== ABOUT SOCIALS ===================== */
.about-socials { display: flex; flex-direction: column; gap: 10px; margin-top: 20px; }
.about-social-item {
  display: flex; align-items: center; gap: 12px;
  background: var(--bg3); border: 1px solid var(--border);
  padding: 11px 16px; border-radius: 12px; transition: .3s; text-decoration: none;
}
.about-social-item:hover { border-color: var(--primary); background: rgba(108,99,255,.1); }
.about-social-icon { font-size: 1.2rem; width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; background: rgba(108,99,255,.15); border-radius: 8px; flex-shrink: 0; }
.about-social-text { font-size: .83rem; font-weight: 600; color: var(--text); }

/* ===================== CASE STUDIES ===================== */
#casestudies { background: var(--bg); }
.cases-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 30px; }
.case-card {
  background: var(--card); border: 1px solid var(--border); border-radius: 24px;
  overflow: hidden; transition: .3s; display: flex; flex-direction: column;
}
.case-card:hover { transform: translateY(-6px); border-color: var(--primary); box-shadow: 0 20px 60px rgba(108,99,255,.2); }
.case-card-header {
  padding: 28px 28px 20px;
  background: linear-gradient(135deg, rgba(108,99,255,.12), rgba(255,101,132,.06));
  border-bottom: 1px solid var(--border);
  display: flex; align-items: center; gap: 16px;
}
.case-logo {
  width: 56px; height: 56px; border-radius: 14px;
  background: var(--bg3); border: 1px solid var(--border);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; overflow: hidden;
}
.case-logo img { width: 100%; height: 100%; object-fit: contain; padding: 6px; }
.case-logo-placeholder { font-size: 1.6rem; }
.case-client-name { font-size: 1.15rem; font-weight: 900; }
.case-industry { font-size: .78rem; color: var(--primary); font-weight: 700; margin-top: 3px; background: rgba(108,99,255,.15); padding: 3px 10px; border-radius: 50px; display: inline-block; }
.case-body { padding: 24px 28px; flex: 1; display: flex; flex-direction: column; gap: 18px; }
.case-challenge, .case-solution, .case-results { display: flex; flex-direction: column; gap: 6px; }
.case-label { font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: 1.5px; color: var(--muted); }
.case-challenge .case-label { color: #f59e0b; }
.case-solution .case-label  { color: var(--primary); }
.case-results .case-label   { color: #4ade80; }
.case-value { font-size: .9rem; color: var(--text); line-height: 1.6; }
.case-metrics { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 4px; }
.case-metric {
  background: rgba(74,222,128,.1); border: 1px solid rgba(74,222,128,.25);
  padding: 8px 14px; border-radius: 10px; text-align: center;
}
.case-metric-num { font-size: 1.1rem; font-weight: 900; color: #4ade80; }
.case-metric-lbl { font-size: .68rem; color: var(--muted); margin-top: 2px; }
.case-footer { padding: 0 28px 24px; }
.case-pdf-btn {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--grad); color: #fff; padding: 11px 22px;
  border-radius: 50px; font-size: .85rem; font-weight: 700;
  width: 100%; justify-content: center; transition: .3s;
  box-shadow: 0 6px 20px rgba(108,99,255,.35);
}
.case-pdf-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(108,99,255,.45); color: #fff; }
.case-pdf-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  border: 2px solid var(--primary); color: var(--primary); padding: 9px 22px;
  border-radius: 50px; font-size: .85rem; font-weight: 700;
  width: 100%; justify-content: center; transition: .3s; margin-top: 10px;
}
.case-pdf-btn-outline:hover { background: var(--primary); color: #fff; }

/* ===================== CONTACT (no form) ===================== */
#contact { background: var(--bg2); }
.contact-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; max-width: 800px; margin: 0 auto; }
.contact-big-card {
  background: var(--card); border: 1px solid var(--border); border-radius: 20px;
  padding: 28px 24px; text-align: center; transition: .3s; text-decoration: none; display: block;
}
.contact-big-card:hover { border-color: var(--primary); transform: translateY(-4px); box-shadow: 0 12px 40px rgba(108,99,255,.2); }
.contact-big-icon { font-size: 2rem; width: 60px; height: 60px; background: rgba(108,99,255,.15); border-radius: 16px; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; }
.contact-big-label { font-size: .78rem; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 6px; }
.contact-big-value { font-size: .95rem; font-weight: 700; color: var(--text); word-break: break-all; }

/* ===================== LOGO CAROUSEL ===================== */
.clients-strip { overflow: hidden; background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 36px 0; }
.clients-inner { text-align: center; }
.clients-label { font-size: .78rem; color: var(--muted); text-transform: uppercase; letter-spacing: 2px; font-weight: 700; margin-bottom: 28px; }

.carousel-track-wrap { overflow: hidden; position: relative; }
.carousel-track-wrap::before,
.carousel-track-wrap::after {
  content: ''; position: absolute; top: 0; bottom: 0; width: 120px; z-index: 2; pointer-events: none;
}
.carousel-track-wrap::before { left: 0; background: linear-gradient(to right, var(--bg2), transparent); }
.carousel-track-wrap::after  { right: 0; background: linear-gradient(to left,  var(--bg2), transparent); }

.carousel-track {
  display: flex; gap: 32px; align-items: center;
  width: max-content;
  animation: carousel-scroll 28s linear infinite;
}
.carousel-track:hover { animation-play-state: paused; }

@keyframes carousel-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.carousel-logo-item {
  display: flex; align-items: center; justify-content: center;
  background: var(--card); border: 1px solid var(--border);
  border-radius: 14px; padding: 14px 28px; min-width: 130px; height: 70px;
  transition: .3s; flex-shrink: 0;
}
.carousel-logo-item:hover { border-color: var(--primary); }
.carousel-logo-item img {
  max-height: 36px; max-width: 110px; width: auto; object-fit: contain;
  filter: brightness(0) invert(.7); opacity: .8; transition: .3s;
}
.carousel-logo-item:hover img { filter: none; opacity: 1; }

/* ===================== SKILLS — 8 items ===================== */
.skills-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; }
