
:root{
  --bg:#f4f0ea;
  --text:#111111;
  --muted:#5f5a54;
  --muted-2:#7a746d;
  --card:#ffffff;
  --line:rgba(17,17,17,0.10);
  --soft:#faf8f4;
  --blue:#9CC9FF;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, Arial, Helvetica, sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.5;
}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.site-header{
  position:sticky;top:0;z-index:20;
  border-bottom:1px solid var(--line);
  background:rgba(244,240,234,.92);
  backdrop-filter: blur(14px);
}
.header-inner{max-width:1320px;margin:0 auto;padding:18px 32px;display:flex;justify-content:space-between;align-items:center}
.brand-name{font-size:1.3rem;font-weight:800;letter-spacing:-.04em;text-transform:uppercase}
.brand-sub{margin-top:4px;font-size:.62rem;letter-spacing:.30em;text-transform:uppercase;color:var(--muted-2)}
.hero{padding-top:76px;padding-bottom:28px}
.hero h1{margin:0;max-width:1100px;font-size:clamp(3rem,9vw,6.4rem);line-height:.92;letter-spacing:-.07em;font-weight:800}
.gradient-text{background:linear-gradient(120deg,#0f172a 0%,#2563eb 38%,#7c3aed 68%,#ec4899 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.gradient-text-light{background:linear-gradient(120deg,#ffffff 0%,#93c5fd 34%,#c4b5fd 68%,#f9a8d4 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:760px;margin:28px 0 0;font-size:clamp(1.1rem,2.2vw,1.75rem);line-height:1.55;color:var(--muted)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-size:.87rem;letter-spacing:.16em;text-transform:uppercase}
.button.small{padding:12px 18px;font-size:.72rem;letter-spacing:.18em}
.button-dark{background:#111;color:#fff}
.button-light{background:rgba(255,255,255,.74);border:1px solid rgba(17,17,17,.15);color:#111}
.button-contact{background:#f4f0ea;color:#111}
.stats-wrap{padding:24px 24px 32px}
.stats{background:#fff;border:1px solid var(--line);border-radius:40px;overflow:hidden;display:grid;grid-template-columns:repeat(3,1fr)}
.stat{padding:34px 32px;position:relative}
.stat:not(:last-child){border-right:1px solid var(--line)}
.stat-number{font-size:clamp(2.8rem,5vw,4.4rem);font-weight:800;letter-spacing:-.09em;line-height:.95}
.stat-label{margin-top:14px;font-size:.7rem;letter-spacing:.28em;color:var(--muted-2);text-transform:uppercase;line-height:1.45}
.image-frame-wrap{padding-top:8px;padding-bottom:64px}
.image-frame{background:#111;padding:20px;border-radius:40px;overflow:hidden;box-shadow:0 20px 70px rgba(0,0,0,.16)}
.image-frame img{width:100%;height:560px;object-fit:cover;border-radius:28px}
.card{background:#fff;border:1px solid var(--line);border-radius:40px;box-shadow:0 12px 50px rgba(0,0,0,.08)}
.about-wrap{padding-bottom:64px}
.about-card{padding:40px}
.about-card h2,.section-title,.logos-card h2,.contact-copy h2{margin:0;font-size:clamp(2.2rem,4vw,3.4rem);line-height:.95;letter-spacing:-.06em;font-weight:800}
.about-card p{max-width:920px;margin:24px 0 0;font-size:1.12rem;line-height:1.78;color:var(--muted)}
.about-tag{margin-top:28px;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.05em}
.feature-wrap{padding-bottom:72px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feature-card{background:#fff;border:1px solid rgba(17,17,17,.12);border-radius:34px;overflow:hidden;box-shadow:0 16px 60px rgba(0,0,0,.08)}
.feature-card.dark{background:#111;color:#fff;box-shadow:0 16px 60px rgba(0,0,0,.14)}
.feature-card:hover{transform:translateY(-2px)}
.feature-image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.feature-body{padding:24px}
.feature-kicker{font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted-2)}
.feature-card.dark .feature-kicker{color:rgba(255,255,255,.45)}
.feature-body h3{margin:12px 0 0;font-size:2rem;line-height:1;letter-spacing:-.05em;font-weight:800}
.feature-body p{margin:14px 0 0;font-size:1.02rem;line-height:1.65;color:var(--muted)}
.feature-card.dark .feature-body p{color:rgba(255,255,255,.74)}
.dark-panel-wrap{padding-bottom:80px}
.dark-panel{
  position:relative;overflow:hidden;border-radius:44px;border:1px solid rgba(17,17,17,.1);
  background:radial-gradient(circle at top left, rgba(37,99,235,.22), transparent 28%), radial-gradient(circle at bottom right, rgba(236,72,153,.18), transparent 24%), linear-gradient(135deg,#111 0%,#16181d 50%,#0f172a 100%);
  box-shadow:0 20px 80px rgba(0,0,0,.18);color:#fff;padding:40px
}
.dark-copy{max-width:860px}
.dark-copy p{max-width:760px;margin:24px 0 0;font-size:1.15rem;line-height:1.72;color:rgba(255,255,255,.74)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.service-card{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);backdrop-filter:blur(10px);border-radius:32px;padding:24px}
.service-card h3{margin:0 0 18px;font-size:1.9rem;line-height:1;letter-spacing:-.05em}
.service-card p{margin:0 0 16px;font-size:1rem;line-height:1.8;color:rgba(255,255,255,.76)}
.service-card span{color:var(--blue);font-weight:800}
.logos-wrap{padding-bottom:72px}
.logos-header{padding-bottom:32px}
.logos-header h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;letter-spacing:-.04em}
.marquee-outer{overflow:hidden;display:flex;flex-direction:column;gap:12px}
.marquee-track{display:flex;width:100%}
.marquee-inner{display:flex;gap:12px;animation:marquee-left 28s linear infinite}
.marquee-right .marquee-inner{animation:marquee-right 32s linear infinite}
@keyframes marquee-left{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes marquee-right{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}
.logo-tile{flex:0 0 auto;min-width:160px;height:84px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--soft);border-radius:20px;padding:14px 22px}
.logo-tile img{max-width:120px;max-height:44px;width:auto;height:auto}
.contact-wrap{padding-bottom:84px}
.contact-card{
  position:relative;overflow:hidden;border-radius:44px;border:1px solid rgba(17,17,17,.1);color:#fff;
  background:radial-gradient(circle at top left, rgba(37,99,235,.16), transparent 28%), radial-gradient(circle at bottom right, rgba(236,72,153,.14), transparent 24%), linear-gradient(135deg,#111 0%,#171717 46%,#0f172a 100%);
  box-shadow:0 20px 80px rgba(0,0,0,.18);padding:40px;display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:center
}
.contact-copy h2{font-size:clamp(3.2rem,8vw,5.5rem);line-height:.9;letter-spacing:-.08em}
.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:40px}
.contact-email{font-size:.95rem;color:rgba(255,255,255,.72)}
.contact-image-wrap{display:flex;justify-content:flex-end}
.contact-circle{width:380px;height:380px;border-radius:50%;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 60px rgba(0,0,0,.28);position:relative}
.contact-circle img{width:100%;height:100%;object-fit:cover}
.site-footer{border-top:1px solid var(--line);background:var(--bg)}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:32px;padding-bottom:32px}
.footer-email{margin-top:10px;font-size:.95rem;color:var(--muted)}
.footer-socials{display:flex;gap:12px}
.footer-socials a{
  width:46px;height:46px;border-radius:999px;border:1px solid var(--line);background:#fff;
  display:inline-flex;align-items:center;justify-content:center;color:#111;transition:background .2s
}
.footer-socials a:hover{background:var(--soft)}
.footer-socials svg{width:20px;height:20px;fill:currentColor}
@media (max-width: 980px){
  .feature-grid,.service-grid,.logo-grid,.contact-card{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr}
  .stat:not(:last-child){border-right:none;border-bottom:1px solid var(--line)}
  .image-frame img{height:400px}
  .contact-image-wrap{justify-content:center}
}
@media (max-width: 640px){
  .container{padding:0 18px}
  .header-inner{padding:16px 18px}
  .hero{padding-top:52px}
  .about-card,.logos-card,.dark-panel,.contact-card{padding:28px}
  .contact-circle{width:260px;height:260px}
  .image-frame{padding:14px}
  .image-frame img{height:320px;border-radius:22px}
  .footer-inner{flex-direction:column;align-items:flex-start}
}
