* { margin: 0; padding: 0; box-sizing: border-box; }
:root { --primary:#3a5ef0; --primary-light:#6b8aff; --primary-dark:#2342c0; --primary-gradient:linear-gradient(135deg,#3a5ef0,#6d8cff); --success:#10b981; --warning:#f59e0b; --dark:#0f172a; --light:#f8fafc; --gray:#94a3b8; --card-bg:#ffffff; --shadow-sm:0 2px 8px rgba(0,0,0,0.02),0 4px 12px rgba(0,0,0,0.02); --shadow-md:0 8px 20px rgba(0,0,0,0.03),0 4px 8px rgba(0,0,0,0.02); --shadow-lg:0 20px 40px -12px rgba(0,0,0,0.1); --radius:16px; --radius-sm:12px; }
body { font-family:'Inter',sans-serif; background:#f8fafd; color:var(--dark); line-height:1.4; overflow-x:hidden; }
.top,.mobile-nav{display:none !important;}
.container { max-width:1300px; margin:0 auto; padding:0 16px; }
.header { position:sticky; top:8px; z-index:100; background:rgba(255,255,255,0.9); backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,0.5); border-radius:60px; padding:8px 16px 8px 20px; margin:8px 0 20px; display:flex; align-items:center; justify-content:space-between; box-shadow:var(--shadow-sm); }
.logo { display:flex; align-items:center; gap:8px; font-weight:700; font-size:20px; background:var(--primary-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; text-decoration:none; }
.logo i { font-size:24px; background:var(--primary-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.desktop-nav { display:flex; gap:24px; font-size:14px; font-weight:500; }
.desktop-nav a { text-decoration:none; color:var(--dark); }
.desktop-nav-accent { color:var(--primary); font-weight:600; margin-left:12px; padding-left:16px; border-left:1px solid #e2e8f0; }
.desktop-nav a.desktop-nav-accent:hover { text-decoration:underline; }
.btn { padding:8px 16px; border-radius:40px; font-weight:600; font-size:13px; border:none; background:white; box-shadow:var(--shadow-sm); cursor:pointer; transition:.15s; white-space:nowrap; text-decoration:none; color:var(--dark); display:inline-block; }
.btn-primary { background:var(--primary-gradient); color:white; box-shadow:0 6px 14px rgba(58,94,240,0.25); }
.btn-primary:hover { transform:scale(1.02); box-shadow:0 10px 20px rgba(58,94,240,0.3); }
.btn-outline { background:transparent; border:1px solid #e2e8f0; }
.mobile-menu-btn { display:none; background:none; border:none; font-size:24px; color:var(--dark); cursor:pointer; }
.mobile-dropdown { display:none; position:absolute; top:70px; left:16px; right:16px; background:white; border-radius:32px; padding:24px; box-shadow:var(--shadow-lg); border:1px solid #eef2f6; z-index:99; backdrop-filter:blur(16px); }
.mobile-dropdown.show { display:block; }
.mobile-nav-item { padding:14px 0; border-bottom:1px solid #eef2f6; font-weight:500; }
.mobile-nav-item:last-child { border-bottom:none; }
.hero { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:center; padding:20px 0 40px; }
.hero-badge { background:rgba(58,94,240,0.1); padding:6px 14px; border-radius:40px; font-size:13px; font-weight:600; color:var(--primary); display:inline-block; margin-bottom:16px; }
.hero h1 { font-size:44px; line-height:1.1; margin-bottom:16px; font-weight:800; letter-spacing:-1px; background:linear-gradient(145deg,#0f172a,#334155); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.hero h1 .hero-brand { background:var(--primary-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.hero-desc { font-size:16px; color:#475569; margin-bottom:24px; max-width:560px; line-height:1.55; }
.hero-desc strong { color:#334155; font-weight:600; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-top:4px; }
.btn-hero-primary { padding:12px 22px !important; font-size:14px !important; }
.btn-hero-secondary { padding:12px 22px !important; font-size:14px !important; }
.hero-stats { display:flex; gap:24px; margin:24px 0; }
.section-title-gradient { text-align:center; margin:28px 0 8px; font-size:22px; font-weight:700; background:var(--primary-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; scroll-margin-top:96px; line-height:1.3; }
.section-title-dark { text-align:center; margin:24px 0 8px; font-size:18px; font-weight:700; color:var(--dark); scroll-margin-top:96px; line-height:1.35; }
.stat-num { font-size:24px; font-weight:800; background:var(--primary-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; line-height:1.2; }
.stat-label { font-size:12px; color:#64748b; }
.request-path { background:white; border-radius:28px; padding:20px; box-shadow:var(--shadow-lg); border:1px solid #eef2f6; }
.path-steps { display:flex; align-items:center; justify-content:space-between; margin:16px 0; }
.step { display:flex; flex-direction:column; align-items:center; gap:4px; }
.step-icon { width:40px; height:40px; background:#f1f5f9; border-radius:40px; display:flex; align-items:center; justify-content:center; font-size:18px; color:var(--primary); }
.step.active .step-icon { background:var(--primary-gradient); color:white; box-shadow:0 6px 14px rgba(58,94,240,0.3); }
.step-label { font-size:11px; font-weight:600; }
.step-line { flex:1; height:2px; background:linear-gradient(90deg,#e2e8f0,var(--primary-light),#e2e8f0); margin:0 6px; }
.features-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:40px 0; }
.feature-card { background:white; border-radius:20px; padding:20px 16px; box-shadow:var(--shadow-sm); border:1px solid #eef2f6; transition:.2s; }
.feature-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-2px); }
.feature-icon { width:44px; height:44px; background:rgba(58,94,240,0.1); border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:22px; color:var(--primary); margin-bottom:14px; }
.feature-card h3 { font-size:16px; margin-bottom:4px; }
.feature-card p { font-size:13px; color:#64748b; }
.section-sub { text-align:center; max-width:640px; margin:0 auto 20px; font-size:14px; color:#64748b; line-height:1.55; padding:0 10px; }
.features-grid-extended { grid-template-columns:repeat(4,1fr); gap:14px; }
.func-compact-extended { grid-template-columns:repeat(3,1fr); gap:14px; margin:28px 0 36px; }
.func-compact { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; background:white; border-radius:32px; padding:28px 24px; margin:40px 0; box-shadow:var(--shadow-sm); }
.func-item { display:flex; gap:12px; align-items:center; }
.func-marker { width:28px; height:28px; background:rgba(58,94,240,0.1); border-radius:10px; display:flex; align-items:center; justify-content:center; color:var(--primary); font-size:14px; flex-shrink:0; }
.func-text { font-size:14px; font-weight:500; }
.func-badge { background:rgba(58,94,240,0.1); color:var(--primary); padding:2px 8px; border-radius:30px; font-size:10px; font-weight:600; margin-left:6px; white-space:nowrap; }
.pricing { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:40px 0; }
.pricing-dynamic { grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); align-items:stretch; }
.pricing-empty { grid-column:1 / -1; text-align:center; padding:36px 20px; background:#fff; border-radius:28px; border:1px solid #eef2f6; box-shadow:var(--shadow-sm); }
.pricing-empty p { max-width:520px; margin:0 auto 18px; color:#64748b; line-height:1.55; font-size:14px; }
.price-trial-hint { font-size:12px; color:#64748b; margin:-4px 0 8px; font-weight:500; }
.pricing-card { background:white; border-radius:28px; padding:24px 20px; box-shadow:var(--shadow-sm); border:1px solid #eef2f6; display:flex; flex-direction:column; }
.pricing-card .btn { margin-top:auto; }
.pricing-card.popular { border:2px solid var(--primary); box-shadow:0 12px 24px -12px rgba(58,94,240,0.4); }
.popular-tag { background:var(--primary-gradient); color:white; padding:4px 12px; border-radius:40px; font-size:11px; font-weight:600; display:inline-block; margin-bottom:12px; }
.price-name { font-size:18px; font-weight:700; }
.price-amount { font-size:32px; font-weight:800; background:var(--primary-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; margin:12px 0; }
.price-features { list-style:none; font-size:13px; margin:16px 0; }
.price-features li { padding:6px 0; display:flex; align-items:center; gap:8px; }
.price-features i { color:var(--success); font-size:12px; }
.landing-bottom-cta { margin:40px 0 8px; padding:0; border:none; background:transparent; }
.landing-bottom-cta__inner { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px 20px; background:#fff; border:1px solid #e8ecf4; border-radius:20px; padding:18px 22px; box-shadow:var(--shadow-sm); }
.landing-bottom-cta__text { margin:0; font-size:15px; color:#475569; line-height:1.5; flex:1; min-width:220px; max-width:720px; }
.landing-bottom-cta__text strong { color:#0f172a; }
.landing-bottom-cta__btn { flex-shrink:0; padding:12px 24px !important; font-size:14px !important; }
.landing-bottom-cta__hint { margin:10px 0 0; font-size:12px; color:#94a3b8; text-align:right; }
@media screen and (max-width:600px) {
  .landing-bottom-cta__inner { flex-direction:column; align-items:stretch; text-align:center; }
  .landing-bottom-cta__btn { width:100%; justify-content:center; text-align:center; }
  .landing-bottom-cta__hint { text-align:center; }
}
.header .logo .site-logo-wrap { display: inline-flex; align-items: center; line-height: 0; flex-shrink: 0; max-width: 170px; }
.header .logo.logo-with-img span { background: none !important; -webkit-text-fill-color: #3a5ef0 !important; color: #3a5ef0; }
.header .logo .site-logo-img { max-height: 34px; max-width: 170px; width: auto; height: auto; object-fit: contain; display: block; }
.site-footer-compact { border-top: 1px solid #e2e8f0; padding: 14px 0 18px; margin-top: 28px; font-size: 12px; color: #64748b; clear: both; }
.site-footer-compact__row { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 10px 16px; }
.site-footer-compact__brand { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; max-width: 100%; line-height: 1.35; }
.site-footer-compact__brand strong { color: #0f172a; font-size: 13px; font-weight: 700; }
.site-footer-compact__legal, .site-footer-compact__inn { font-size: 11px; color: #64748b; }
.site-footer-compact__nav { display: flex; flex-wrap: wrap; gap: 6px 12px; justify-content: flex-end; flex: 1; min-width: 200px; }
.site-footer-compact__nav a { color: #3a5ef0; text-decoration: none; font-size: 12px; font-weight: 500; white-space: nowrap; }
.site-footer-compact__nav a:hover { text-decoration: underline; }
.site-footer-compact__note { margin: 10px 0 0; font-size: 11px; line-height: 1.45; color: #64748b; max-width: 100%; }
.site-footer-compact__copy { margin: 10px 0 0; font-size: 11px; line-height: 1.4; color: #94a3b8; }
@media screen and (max-width: 700px) {
  .site-footer-compact__row { flex-direction: column; }
  .site-footer-compact__nav { justify-content: flex-start; }
}
@media screen and (max-width:1100px){.features-grid,.features-grid-extended{grid-template-columns:repeat(2,1fr)}.pricing:not(.pricing-dynamic){grid-template-columns:repeat(2,1fr)}.func-compact-extended{grid-template-columns:repeat(2,1fr)}}
@media screen and (max-width:900px){.hero{grid-template-columns:1fr;gap:32px}.desktop-nav{display:none}.mobile-menu-btn{display:block}.hero h1{font-size:32px}.func-compact{grid-template-columns:1fr;gap:12px}}
@media screen and (max-width:650px){.features-grid,.features-grid-extended{grid-template-columns:1fr}.pricing:not(.pricing-dynamic){grid-template-columns:1fr}.func-compact-extended{grid-template-columns:1fr}.hero-stats{flex-wrap:wrap;gap:16px}.section-title-gradient{font-size:19px}.header{padding:6px 12px}.logo{font-size:18px}.container{padding:0 12px}}
@media screen and (max-width:480px){.btn-hero-primary{font-size:13px !important;padding:11px 16px !important}.hero h1{font-size:28px}}
