/* ==========  Палітра 2025  ========== */
:root{
  --dark-900:#0d0b21;
  --dark-800:#181633;
  --accent:#ff3ca9;
  --accent-light:#ff7ecd;
  --text-light:#fafafa;
  --text-dark:#222;
  --radius:10px;
  --transition:.3s ease;
}

/* ====== Reset & base ====== */
*,
*::before,
*::after{
  box-sizing:border-box;
  margin:0;
  padding:0;
}

body{
  font-family:'Manrope',sans-serif;
  background:var(--dark-800);
  color:var(--text-dark);
  line-height:1.6;
  overflow-x:hidden;
}

img{max-width:100%;display:block}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
h2{font-size:36px;font-weight:800;text-align:center;margin-bottom:60px;color:var(--text-light)}

/* ===== Header ===== */
.header{
  position:fixed;inset:0 0 auto;
  background:rgba(13,11,33,.92);
  backdrop-filter:blur(14px);
  z-index:1000;
  border-bottom:1px solid rgba(255,255,255,.05);
  transition:background var(--transition);
}
.header.scrolled{background:rgba(13,11,33,.8)}
.nav-content{display:flex;justify-content:space-between;align-items:center;padding:18px 0}
.logo img{height:42px}

.nav-menu{
  display:flex;gap:40px;list-style:none
}
.nav-menu a{
  color:var(--text-light);text-decoration:none;font-weight:600;
  transition:opacity var(--transition)
}
.nav-menu a:hover{opacity:.7}

.menu-toggle{display:none;flex-direction:column;gap:6px;background:none;border:0;cursor:pointer}
.menu-toggle span{width:26px;height:3px;background:var(--text-light);transition:transform var(--transition)}

/* ===== Hero ===== */
.hero{
  min-height:90vh;
  display:flex;align-items:center;text-align:center;
  padding:120px 0 80px;
  background:linear-gradient(135deg,var(--dark-900) 0%,#201b44 45%,var(--accent) 100%);
  color:var(--text-light)
}
.hero-content h1{
  font-size:clamp(32px,6vw,64px);
  font-weight:800;
  max-width:820px;
  margin:0 auto 42px
}
.cta-button,.cta-button-large{
  display:inline-block;background:var(--accent);color:var(--text-light);
  padding:15px 34px;border-radius:var(--radius);font-weight:700;text-decoration:none;
  transition:transform var(--transition),box-shadow var(--transition);border:none;cursor:pointer
}
.cta-button-large{background:var(--text-light);color:var(--dark-900);font-size:18px;padding:20px 48px}
.cta-button:hover,.cta-button-large:hover{
  transform:translateY(-3px);box-shadow:0 10px 20px rgba(255,71,170,.4)
}

/* ===== Clients ===== */
.clients-section{padding:80px 0;background:var(--text-light);text-align:center}
.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:40px;align-items:center}
.clients-grid img{filter:grayscale(100%);opacity:.7;transition:all var(--transition)}
.clients-grid img:hover{filter:none;opacity:1}

/* ===== Services ===== */
.services-section{padding:90px 0;background:var(--dark-900);color:var(--text-light)}
.services-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.service-item{
  padding:42px 30px;text-align:center;border:1px solid rgba(255,255,255,.06);
  transition:background var(--transition)
}
.service-item:hover{background:var(--dark-800)}
.service-item svg{width:60px;height:60px;margin:0 auto 20px;fill:none;stroke:var(--accent);stroke-width:2}

/* ===== About ===== */
.about-section{padding:90px 0;background:var(--text-light);color:var(--text-dark)}
.about-content p{font-size:18px;margin-bottom:26px}

/* ===== Case studies ===== */
.case-studies-section{padding:90px 0;background:var(--dark-900);color:var(--text-light)}
.case-studies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px}
.case-study-item{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius);transition:transform var(--transition)}
.case-study-item:hover{transform:translateY(-8px)}
.case-study-overlay{
  position:absolute;inset:0;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:30px;background:linear-gradient(0deg,rgba(0,0,0,.8) 0%,transparent 100%)
}

/* ===== Philosophy & Values ===== */
.philosophy-section,.values-section{padding:90px 0;background:var(--dark-800);color:var(--text-light)}
.philosophy-quotes,.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:42px}
.quote-item,.value-item{
  padding:32px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);text-align:center
}
.quote-item blockquote{font-style:italic;margin-bottom:18px}

.office-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:30px;margin-top:60px}

/* ===== Partners ===== */
.partners-section{padding:80px 0;background:var(--text-light);text-align:center}
.partners-grid{display:flex;gap:50px;justify-content:center;flex-wrap:wrap}
.partners-grid img{max-height:60px;filter:grayscale(100%);opacity:.7;transition:all var(--transition)}
.partners-grid img:hover{filter:none;opacity:1}

/* ===== CTA ===== */
.cta-section{padding:90px 0;background:var(--text-light);text-align:center}

/* ===== Footer ===== */
.footer{background:var(--dark-800);color:var(--text-light);padding:70px 0 40px}
.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px;margin-bottom:40px}
.footer-section h3{font-size:18px;margin-bottom:22px}
.footer-section a{color:var(--text-light);text-decoration:none;opacity:.8;transition:opacity var(--transition)}
.footer-section a:hover{opacity:1}
.social-links{display:flex;gap:16px;margin-top:22px}
.social-links a{
  width:40px;height:40px;display:grid;place-items:center;
  background:rgba(255,255,255,.1);border-radius:50%;font-size:14px;
  transition:background var(--transition);color:var(--text-light);text-decoration:none
}
.social-links a:hover{background:rgba(255,255,255,.2)}
.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.08);padding-top:32px;font-size:14px}

/* ===== Responsive ===== */
@media (max-width:768px){
  .nav-menu{
    position:absolute;top:100%;left:0;right:0;background:var(--dark-900);
    flex-direction:column;padding:24px;display:none
  }
  .nav-menu.active{display:flex}
  .menu-toggle{display:flex}
}
