/* Hero / services / pricing — расширенные стили (дополнение к site.css) */
.hero-main {
  display:flex;
  gap:28px;
  align-items:center;
  margin:22px 0;
  padding:28px;
  border-radius:18px;
  background: linear-gradient(135deg, #f3f9ff 0%, #fef6ff 45%, #f3fff7 100%);
  box-shadow: 0 20px 60px rgba(50,30,120,0.06);
}
.hero-left { flex:1; padding:12px 18px; }
.eyebrow { font-weight:600; color:#7b59ff; margin-bottom:6px; }
.hero-title { font-size:36px; margin:0 0 12px; color:#0f1724; line-height:1.05; }
.hero-sub { color:#444; margin-bottom:18px; max-width:60ch; }

.hero-cta { display:flex; gap:12px; margin-bottom:18px; flex-wrap:wrap; }
.btn-lg { padding:12px 18px; font-size:16px; border-radius:14px; }

/* stats */
.hero-stats { display:flex; gap:14px; margin-top:12px; }
.stat { background:rgba(255,255,255,0.6); padding:10px 14px; border-radius:10px; border:1px solid rgba(255,255,255,0.6); text-align:center; min-width:110px; }
.stat .num { font-weight:700; font-size:18px; color:#182031; }
.stat .label { font-size:12px; color:#666; }

/* Right illustration */
.hero-right { width:460px; display:flex; justify-content:center; align-items:center; position:relative; }
.card-illustration { width:360px; height:240px; position:relative; border-radius:20px; overflow:visible; }
.device-mock { width:260px; height:160px; background:linear-gradient(135deg,#ffffff,#f6f8ff); border-radius:18px; box-shadow: 0 16px 40px rgba(30,30,80,0.08); display:flex; align-items:center; justify-content:center; position:absolute; right:0; top:20px; transform: rotate(-6deg); }
.screen { width:220px; height:120px; border-radius:12px; background:linear-gradient(90deg,#7b59ff 0%, #8fb6ff 100%); display:flex; align-items:center; justify-content:center; color:white; font-size:34px; font-weight:700; box-shadow: inset 0 -6px 24px rgba(0,0,0,0.06);}
.floating-blob { position:absolute; border-radius:50%; filter: blur(18px); opacity:0.9; transition: transform .6s ease; }
.blob1 { width:140px; height:140px; background: radial-gradient(circle,#ffb6e4,#8fb6ff); left:-30px; top:-20px; transform: translateY(0); }
.blob2 { width:100px; height:100px; background: radial-gradient(circle,#64f0d6,#7b59ff); right:-20px; bottom:-10px; transform: translateY(0); }

/* Services */
.services { padding:28px 0; }
.section-title { font-size:22px; margin-bottom:6px; }
.section-sub { color:#666; margin-bottom:16px; }
.service-cards { display:flex; gap:12px; flex-wrap:wrap; }
.service-card { flex:1 1 220px; padding:18px; border-radius:14px; background: linear-gradient(180deg,#ffffffcc,#ffffffcc); box-shadow: 0 10px 30px rgba(30,30,80,0.04); text-align:center; text-decoration:none; color:inherit; border:1px solid rgba(0,0,0,0.03); }
.service-card .icon { font-size:28px; margin-bottom:8px; }

/* Pricing */
.pricing { padding:28px 0; }
.pricing-grid { display:flex; gap:16px; flex-wrap:wrap; }
.plan { flex:1 1 260px; padding:18px; border-radius:14px; background:linear-gradient(180deg,#ffffff,#fbfbff); border:1px solid rgba(0,0,0,0.04); box-shadow: 0 12px 36px rgba(20,20,70,0.04); display:flex; flex-direction:column; gap:12px; }
.plan.highlight { background: linear-gradient(90deg,#7b59ff,#8fb6ff); color:#fff; }
.plan .price { font-weight:700; font-size:18px; }
.features { list-style:none; padding:0; margin:0; color:inherit; }
.features li { padding:6px 0; border-bottom:1px dashed rgba(0,0,0,0.04); }

/* About / curators */
.about { display:flex; gap:20px; padding:28px 0; align-items:flex-start; flex-wrap:wrap; }
.about-left { flex:1; }
.about-right { width:360px; }
.curator { padding:12px; border-radius:10px; background:rgba(255,255,255,0.9); margin-bottom:12px; }

/* Responsive */
@media(max-width:1000px){
  .hero-main { flex-direction:column; padding:18px; }
  .hero-right { width:100%; order:2; }
  .hero-left { order:1; }
  .pricing-grid { flex-direction:column; }
}
@media(max-width:480px){
  .hero-title { font-size:26px; }
  .device-mock { transform: none; position:relative; right:auto; top:auto; margin-top:14px; }
  .hero-stats { flex-direction:column; gap:8px; }
}