﻿/* =========================================================
   Хелпмарк — стили
   Именование: BEM-совместимые семантические классы
   ========================================================= */

/* --- Base --- */
*, *::before, *::after { box-sizing: border-box; }
body { margin:0; background:#EFE7DA; font-family:'Golos Text', sans-serif; -webkit-font-smoothing:antialiased; }
body.p-download { background:#F7F2E9; }
a { color:#1F9E82; text-decoration:none; }
a:hover { color:#167a65; }
img { max-width:100%; }
@keyframes floaty { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }
.b24-form {
  display: flex;
    flex-direction: column;
    gap: 20px;
}
/* --- Layout --- */
.lp-page { display:flex; flex-wrap:wrap; gap:56px; align-items:stretch; padding:32px 32px 80px; font-family:'Golos Text', sans-serif; }
.lp-container { max-width:1180px; margin:0 auto; display:flex; flex-direction:column; gap:16px; width:100%; }

/* --- Hero Card --- */
.hero-card { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; overflow:hidden; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }

/* --- Header --- */
.site-header { display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:22px 40px; border-bottom:1px solid #F0E7D9; position:relative; }
.site-logo { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.logo-icon { width:30px; height:30px; border-radius:9px; background:#1F9E82; display:flex; align-items:center; justify-content:center; color:#fff; font-family:'Nunito',sans-serif; font-weight:900; font-size:18px; }
.logo-name { font-family:'Nunito',sans-serif; font-weight:800; font-size:20px; color:#2A2521; }
.site-nav { display:flex; align-items:center; gap:20px; font-size:15px; color:#5A5049; white-space:nowrap; flex-shrink:0; }
.nav-link { color:#5A5049; }
.header-actions { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.header-phone { color:#2A2521; font-family:'Nunito',sans-serif; font-weight:800; font-size:15px; white-space:nowrap; }
.btn-header { background:#1F9E82; color:#fff; font-weight:600; font-size:15px; padding:10px 18px; border-radius:999px; white-space:nowrap; }

/* --- Mobile menu button --- */
.mobile-menu-btn {
  display:none; flex-direction:column; justify-content:center; gap:5px;
  width:38px; height:38px; padding:7px;
  background:none; border:1px solid #E0D5C4; border-radius:10px; cursor:pointer; flex-shrink:0;
}
.mobile-menu-btn span { display:block; height:2px; background:#2A2521; border-radius:2px; transition:transform .22s, opacity .18s; }
.mobile-menu-btn.is-open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.mobile-menu-btn.is-open span:nth-child(2) { opacity:0; }
.mobile-menu-btn.is-open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.mobile-menu { display:none; background:#FFFDF9; border-top:1px solid #F0E7D9; padding:16px 22px 20px; flex-direction:column; gap:4px; }
.mobile-menu.is-open { display:flex; }
.mobile-nav__link { display:block; padding:11px 6px; color:#2A2521; font-size:16px; border-bottom:1px solid #F0E7D9; }
.mobile-nav__cta { display:block; text-align:center; margin-top:10px; background:#1F9E82; color:#fff; font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; padding:13px; border-radius:999px; }

/* --- Hero --- */
.hero { display:grid; grid-template-columns:1.05fr .95fr; }
.hero__left { padding:60px 44px; display:flex; flex-direction:column; gap:22px; justify-content:center; }
.badge { align-self:flex-start; background:#E6F4EF; color:#167a65; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; }
.hero__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:50px; line-height:1.05; color:#2A2521; letter-spacing:-.02em; }
.hero__lead { margin:0; font-size:18px; line-height:1.55; color:#6B625A; max-width:420px; }
.hero__cta-wrap { display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.btn-cta-lg { background:#1F9E82; color:#fff; font-family:'Nunito',sans-serif; font-weight:800; font-size:17px; padding:15px 28px; border-radius:999px; white-space:nowrap; }
.hero__right { background:#F3EFE6; padding:44px; display:flex; flex-direction:column; gap:14px; justify-content:center; border-left:1px solid #EBE1D2; }
.step-card { display:flex; gap:14px; align-items:flex-start; background:#FFFDF9; border:1px solid #EBE1D2; border-radius:18px; padding:16px 18px; }
.step-num { min-width:34px; height:34px; border-radius:10px; background:#E6F4EF; color:#167a65; font-family:'Nunito',sans-serif; font-weight:900; display:flex; align-items:center; justify-content:center; }
.step-name { font-family:'Nunito',sans-serif; font-weight:800; color:#2A2521; font-size:16px; }
.step-desc { color:#7A6F65; font-size:14px; line-height:1.4; }
.step-num--alt { min-width:34px; height:34px; border-radius:10px; background:#FBEAE0; color:#c1633f; font-family:'Nunito',sans-serif; font-weight:900; display:flex; align-items:center; justify-content:center; }

/* --- Stats --- */
.stats-block { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; padding:40px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.stats-grid { display:grid; grid-template-columns:1.1fr 1fr 1fr 1fr; gap:32px; align-items:center; }
.stat-primary { display:flex; flex-direction:column; gap:6px; }
.badge-sm { align-self:flex-start; background:#E6F4EF; color:#167a65; font-weight:600; font-size:13px; padding:6px 12px; border-radius:999px; margin-bottom:4px; }
.stat-primary__num { font-family:'Nunito',sans-serif; font-weight:900; font-size:36px; color:#2A2521; letter-spacing:-.02em; line-height:1; }
.stat-primary__text { color:#6B625A; font-size:15px; line-height:1.45; }
.stat-item { border-left:1px solid #EFE7D9; padding-left:28px; }
.stat-item__num { font-family:'Nunito',sans-serif; font-weight:900; font-size:28px; color:#2A2521; line-height:1; }
.stat-item__text { color:#7A6F65; font-size:14px; line-height:1.45; margin-top:6px; }

/* --- Dark Section --- */
.dark-section { background:#2A2521; border-radius:32px; padding:52px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.6); display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center; }
.section-col { display:flex; flex-direction:column; gap:16px; }
.badge-live { align-self:flex-start; display:flex; align-items:center; gap:9px; background:rgba(31,158,130,.18); color:#7BD8BE; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; }
.badge-live__dot { width:8px; height:8px; border-radius:50%; background:#1F9E82; }
.heading-lg--light { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:38px; color:#FFFDF9; letter-spacing:-.02em; line-height:1.08; }
.text-body--light { margin:0; font-size:17px; color:#C9BFB4; line-height:1.55; max-width:470px; text-wrap:pretty; }
.btn-group { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding-top:10px; }
.btn-green { background:#1F9E82; color:#fff; font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; padding:14px 26px; border-radius:999px; white-space:nowrap; }
.btn-outline-light { color:#FFFDF9; font-weight:600; font-size:15px; padding:14px 22px; border-radius:999px; border:1px solid rgba(255,253,249,.25); white-space:nowrap; }
.card-list { display:flex; flex-direction:column; gap:10px; }
.card-list__item { display:flex; gap:14px; align-items:flex-start; background:rgba(255,253,249,.05); border:1px solid rgba(255,253,249,.12); border-radius:18px; padding:20px 22px; }
.card-list__icon { font-size:18px; line-height:1.2; color:#7BD8BE; }
.card-list__title { font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; color:#FFFDF9; margin-bottom:4px; }
.card-list__desc { font-size:14px; color:#B7ADA2; line-height:1.5; }

/* --- Section Card (white) --- */
.section-card { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; padding:56px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.features-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:48px; }
.section-heading { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:38px; color:#2A2521; letter-spacing:-.02em; line-height:1.08; }
.section-text { margin:0; font-size:17px; color:#6B625A; line-height:1.5; }
.grid-2col { display:grid; grid-template-columns:1fr 1fr; gap:16px; }

/* --- Feature Cards: icon left, text right --- */
.feature-card {
  display:grid;
  grid-template-columns:38px 1fr;
  column-gap:14px;
  row-gap:6px;
  align-items:start;
  background:#F3EFE6;
  border:1px solid #EBE1D2;
  border-radius:20px;
  padding:24px;
}
.feature-icon {
  grid-row:1 / 3;
  width:38px; height:38px; border-radius:11px;
  background:#E6F4EF; color:#167a65;
  display:flex; align-items:center; justify-content:center; font-size:18px;
}
.feature-card__title { grid-column:2; align-self:end; margin:0; font-family:'Nunito',sans-serif; font-weight:800; font-size:17px; color:#2A2521; }
.feature-card__text { grid-column:2; margin:0; color:#6B625A; font-size:14px; line-height:1.45; }
.feature-icon--alt {
  grid-row:1 / 3;
  width:38px; height:38px; border-radius:11px;
  background:#FBEAE0; color:#c1633f;
  display:flex; align-items:center; justify-content:center; font-size:18px;
}

/* --- Tinted Section (green bg) --- */
.tinted-section { background:#F3EFE6; border:1px solid #E7DDCC; border-radius:32px; padding:56px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.section-intro { display:flex; flex-direction:column; gap:12px; margin-bottom:32px; max-width:660px; }
.section-title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:38px; color:#2A2521; letter-spacing:-.02em; }
.section-desc { margin:0; font-size:17px; color:#6B625A; line-height:1.55; }
.grid-4col { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.segment-card { background:#FFFDF9; border:1px solid #EBE1D2; border-radius:22px; padding:26px; display:flex; flex-direction:column; gap:10px; }
.segment-icon { width:38px; height:38px; border-radius:11px; background:#E6F4EF; color:#167a65; display:flex; align-items:center; justify-content:center; font-size:18px; }
.segment-title { margin:0; font-family:'Nunito',sans-serif; font-weight:800; font-size:18px; color:#2A2521; }
.card-body { margin:0; color:#6B625A; font-size:14px; line-height:1.5; }
.card-link { margin-top:auto; font-weight:600; font-size:14px; padding-top:8px; }
.segment-icon--alt { width:38px; height:38px; border-radius:11px; background:#FBEAE0; color:#c1633f; display:flex; align-items:center; justify-content:center; font-size:18px; }

/* --- Section Header --- */
.section-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:32px; flex-wrap:wrap; }
.section-header__col { display:flex; flex-direction:column; gap:12px; }
.badge-orange { align-self:flex-start; background:#FBEAE0; color:#c1633f; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; }
.section-header__note { margin:0; font-size:16px; color:#6B625A; max-width:320px; line-height:1.5; }
.how-card { background:#F3EFE6; border:1px solid #EBE1D2; border-radius:22px; padding:26px; display:flex; flex-direction:column; gap:10px; }
.how-num { width:36px; height:36px; border-radius:11px; background:#FFFDF9; border:1px solid #E4D9C7; color:#167a65; font-family:'Nunito',sans-serif; font-weight:900; font-size:17px; display:flex; align-items:center; justify-content:center; }
.how-title { margin:0; font-family:'Nunito',sans-serif; font-weight:800; font-size:17px; color:#2A2521; }

/* --- Integration Schema --- */
.schema-intro { display:flex; flex-direction:column; gap:12px; margin-bottom:36px; max-width:660px; }
.schema-diagram { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:stretch; gap:8px; }
.schema-node { min-width:0; background:#FFFDF9; border:1px solid #EBE1D2; border-radius:22px; padding:22px 14px; text-align:center; }
.schema-node__name { font-family:'Nunito',sans-serif; font-weight:900; font-size:17px; color:#2A2521; margin-bottom:8px; overflow-wrap:anywhere; }
.schema-node__desc { color:#6B625A; font-size:14px; line-height:1.5; }
.schema-connector { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; min-width:0; max-width:118px; padding:0 2px; }
.schema-connector__label { color:#7A6F65; font-size:12px; line-height:1.35; text-align:center; }
.schema-connector__arrow { color:#1F9E82; font-size:20px; letter-spacing:-2px; }
.schema-node--center { min-width:0; background:#1F9E82; border:1px solid #1F9E82; border-radius:22px; padding:22px 14px; text-align:center; }
.schema-node--center-name { font-family:'Nunito',sans-serif; font-weight:900; font-size:17px; color:#fff; margin-bottom:8px; overflow-wrap:anywhere; }
.schema-node--center-desc { color:#DCF1EB; font-size:14px; line-height:1.5; }
.schema-points { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:28px; }
.schema-point { background:#F3EFE6; border:1px solid #EBE1D2; border-radius:18px; padding:22px; }
.schema-point__title { font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; color:#2A2521; margin-bottom:6px; }

/* --- Download Block --- */
.download-block { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; padding:48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.download-layout { display:grid; grid-template-columns:1fr .9fr; gap:48px; align-items:center; }
.content-flex { display:flex; flex-direction:column; gap:14px; }
.download-block__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:34px; color:#2A2521; letter-spacing:-.02em; line-height:1.1; }
.download-block__text { margin:0; font-size:16px; color:#6B625A; line-height:1.55; max-width:460px; text-wrap:pretty; }
.download-links { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding-top:8px; }
.btn-ghost { color:#2A2521; font-weight:600; font-size:15px; padding:14px 22px; border-radius:999px; border:1px solid #E0D5C4; white-space:nowrap; }
.app-link { display:flex; align-items:center; justify-content:space-between; gap:16px; background:#F3EFE6; border:1px solid #EBE1D2; border-radius:16px; padding:18px 22px; }
.app-link__meta { display:flex; flex-direction:column; gap:2px; }
.app-link__name { font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; color:#2A2521; }
.app-link__sub { font-size:13px; color:#7A6F65; }
.app-link__platform { color:#1F9E82; font-weight:700; font-size:14px; white-space:nowrap; }
.app-notice { background:#F3EFE6; border:1px dashed #E0D5C4; border-radius:16px; padding:16px 22px; font-size:13px; color:#7A6F65; line-height:1.45; }

/* --- More Than Marking (dark) --- */
.dark-wide { background:#2A2521; border-radius:32px; padding:56px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.6); }
.badge-pale { align-self:flex-start; background:rgba(255,253,249,.12); color:#FBEAE0; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; }
.dark-text { margin:0; font-size:17px; color:#C9BFB4; line-height:1.55; }
.labels-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.label-card { background:rgba(255,253,249,.06); border:1px solid rgba(255,253,249,.12); border-radius:18px; padding:22px; }
.label-card__name { font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; color:#FFFDF9; margin-bottom:6px; }
.label-card__desc { color:#B8AEA3; font-size:14px; line-height:1.45; }

/* --- Free Tools --- */
.section-heading--wide { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:38px; color:#2A2521; letter-spacing:-.02em; max-width:620px; }
.section-text--narrow { margin:0; font-size:16px; color:#6B625A; max-width:300px; line-height:1.5; }
.tool-icon { width:38px; height:38px; border-radius:11px; background:#FFFDF9; border:1px solid #E4D9C7; color:#167a65; display:flex; align-items:center; justify-content:center; font-size:18px; }
.badge-soon { margin-top:auto; color:#8A7E70; font-weight:600; font-size:14px; padding-top:8px; }
.tool-icon--alt { width:38px; height:38px; border-radius:11px; background:#FFFDF9; border:1px solid #E4D9C7; color:#c1633f; display:flex; align-items:center; justify-content:center; font-size:18px; }
.section-note { margin:20px 4px 0; color:#8A7E70; font-size:14px; }
.text-link { font-weight:600; }

/* --- Pricing Preview --- */
.pricing-preview { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.pricing-preview__desc { margin:0; font-size:17px; color:#6B625A; line-height:1.55; max-width:420px; }
.pricing-preview__cta { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding-top:6px; }
.price-row--free { display:flex; align-items:baseline; justify-content:space-between; gap:16px; background:#F1F8F4; border:1px solid #DCEBE2; border-radius:18px; padding:18px 22px; }
.price-row__name { font-family:'Nunito',sans-serif; font-weight:800; font-size:17px; color:#2A2521; }
.price-row__val--free { font-family:'Nunito',sans-serif; font-weight:900; font-size:18px; color:#167a65; white-space:nowrap; }
.price-row { display:flex; align-items:baseline; justify-content:space-between; gap:16px; background:#FFFDF9; border:1px solid #EBE1D2; border-radius:18px; padding:18px 22px; }
.price-row__val { font-family:'Nunito',sans-serif; font-weight:900; font-size:18px; color:#2A2521; white-space:nowrap; }
.price-row--featured { display:flex; align-items:baseline; justify-content:space-between; gap:16px; background:#2A2521; border:1px solid #2A2521; border-radius:18px; padding:18px 22px; }
.price-row__name--light { font-family:'Nunito',sans-serif; font-weight:800; font-size:17px; color:#FFFDF9; }
.price-row__val--light { font-family:'Nunito',sans-serif; font-weight:900; font-size:18px; color:#FFFDF9; white-space:nowrap; }
.price-row__val--custom { font-family:'Nunito',sans-serif; font-weight:900; font-size:16px; color:#2A2521; white-space:nowrap; }
.pricing-note { color:#8A7E70; font-size:14px; padding-top:4px; }
.pricing-fine-print { margin:24px 4px 0; color:#8A7E70; font-size:13px; line-height:1.55; text-wrap:pretty; }

/* --- FAQ --- */
.faq-header { display:flex; flex-direction:column; gap:12px; margin-bottom:36px; }
.faq-item { background:#F3EFE6; border:1px solid #EBE1D2; border-radius:18px; padding:24px; }

/* --- Team --- */
.team-section { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; padding:48px 40px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.badge-accent { display:inline-block; background:#FBEAE0; color:#c1633f; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; margin-bottom:16px; }
.team-title { margin:0 0 12px; font-family:'Nunito',sans-serif; font-weight:900; font-size:30px; color:#2A2521; letter-spacing:-.02em; line-height:1.1; }
.team-lead { margin:0 0 28px; font-size:16px; color:#6B625A; line-height:1.5; }
.team-list { display:flex; gap:16px; }
.team-member { text-align:center; }
.team-photo { width:70px; height:70px; margin:0 auto 8px; border-radius:50%; background:repeating-linear-gradient(135deg,#F4EDE1,#F4EDE1 8px,#EFE7D8 8px,#EFE7D8 16px); border:1px solid #E4D9C7; }
.team-name { font-family:'Nunito',sans-serif; font-weight:700; font-size:13px; color:#2A2521; }

/* --- Contact / Lead Form --- */
.contact-card { background:#1F9E82; border-radius:32px; padding:40px; box-shadow:0 24px 60px -40px rgba(20,90,70,.6); display:flex; flex-direction:column; gap:14px; }
.contact-card__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:28px; color:#fff; letter-spacing:-.02em; line-height:1.1; }
.contact-card__lead { margin:0 0 6px; font-size:15px; color:#DCF1EB; line-height:1.5; }
.form-input { border:none; border-radius:12px; padding:13px 15px; font-size:15px; font-family:'Golos Text',sans-serif; color:#2A2521; background:#FFFDF9; width:100%; display:block; }
.btn-form-submit { display:block; width:100%; text-align:center; background:#2A2521; color:#fff; font-family:'Nunito',sans-serif; font-weight:800; font-size:15px; padding:14px; border-radius:999px; border:none; cursor:pointer; }
.btn-form-submit:hover { background:#3d342e; }
.form-status { font-size:13px; line-height:1.4; text-align:center; min-height:18px; }
.form-status--success { color:#b6f0e0; }
.form-status--error { color:#ffd4c2; }

/* --- Footer --- */
.site-footer { display:flex; align-items:center; justify-content:space-between; padding:28px 40px; }
.footer-brand { display:flex; align-items:center; gap:10px; }
.footer-brand__icon { width:28px; height:28px; border-radius:8px; background:#1F9E82; display:flex; align-items:center; justify-content:center; color:#fff; font-family:'Nunito',sans-serif; font-weight:900; font-size:16px; }
.footer-brand__name { font-family:'Nunito',sans-serif; font-weight:800; font-size:18px; color:#2A2521; }
.footer-copy { color:#8A7E70; font-size:14px; }
.footer-link { color:#5A5049; font-weight:600; }

/* --- Pricing Page --- */
.page-pricing { font-family:'Golos Text',sans-serif; background:#EFE7DA; min-height:100vh; padding:32px 32px 80px; }
.page-header { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:22px 40px; position:relative; }
.text-emphasis { color:#2A2521; font-weight:600; }
.pricing-hero { background:linear-gradient(180deg,#FBF5EA,#FFFDF9); border:1px solid #E7DDCC; border-radius:32px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); padding:56px 48px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:16px; }
.badge-green { background:#E6F4EF; color:#167a65; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; }
.pricing-hero__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:48px; line-height:1.05; color:#2A2521; letter-spacing:-.02em; max-width:760px; }
.pricing-hero__text { margin:0; font-size:19px; color:#6B625A; max-width:640px; line-height:1.55; }
.pricing-hero__tags { display:flex; gap:10px; flex-wrap:wrap; justify-content:center; padding-top:6px; }
.pricing-tag { background:#FFF; border:1px solid #EBE1D2; color:#5A5049; font-size:14px; font-weight:500; padding:8px 14px; border-radius:999px; }
.plans-section { background:#F3EFE6; border:1px solid #E7DDCC; border-radius:32px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); padding:56px 48px; }
.plans-section__header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:34px; flex-wrap:wrap; }
.plans-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(205px,1fr)); gap:12px; align-items:stretch; padding-top:14px; }
.plan-free { background:#F1F8F4; border:1px solid #DCEBE2; border-radius:22px; padding:24px 20px; display:flex; flex-direction:column; gap:14px; }
.plan-card__sub { color:#7A6F65; font-size:13px; line-height:1.4; margin-top:4px; }
.plan-free__price { display:flex; align-items:baseline; white-space:nowrap; min-height:44px; font-family:'Nunito',sans-serif; font-weight:900; font-size:26px; color:#167a65; }
.plan-perks { display:flex; flex-direction:column; gap:8px; color:#5A5049; font-size:13px; line-height:1.4; }
.btn-plan--primary { margin-top:auto; text-align:center; background:#1F9E82; color:#fff; font-weight:700; font-size:14px; padding:12px; border-radius:999px; display:block; }
.plan-card { background:#FFFDF9; border:1px solid #EFE7D9; border-radius:22px; padding:24px 20px; display:flex; flex-direction:column; gap:14px; }
.plan-price { display:flex; align-items:baseline; gap:3px; white-space:nowrap; min-height:44px; font-family:'Nunito',sans-serif; font-weight:900; font-size:26px; color:#2A2521; }
.plan-price__period { font-size:14px; font-weight:600; color:#7A6F65; }
.btn-plan { margin-top:auto; text-align:center; color:#2A2521; font-weight:700; font-size:14px; padding:12px; border-radius:999px; border:1px solid #E0D5C4; display:block; }
.plan-card--popular { background:#2A2521; border-radius:22px; padding:24px 20px; display:flex; flex-direction:column; gap:14px; position:relative; }
.plan-popular-label { position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:#1F9E82; color:#fff; font-size:11px; font-weight:700; padding:5px 12px; border-radius:999px; white-space:nowrap; }
.plan-card__name { font-family:'Nunito',sans-serif; font-weight:800; font-size:18px; color:#FFFDF9; }
.plan-card__sub--light { color:#B8AEA3; font-size:13px; line-height:1.4; margin-top:4px; }
.plan-price--light { display:flex; align-items:baseline; gap:3px; white-space:nowrap; min-height:44px; font-family:'Nunito',sans-serif; font-weight:900; font-size:26px; color:#FFFDF9; }
.plan-price__period--light { font-size:14px; font-weight:600; color:#B8AEA3; }
.plan-perks--light { display:flex; flex-direction:column; gap:8px; color:#E6DED4; font-size:13px; line-height:1.4; }
.plan-price--custom { display:flex; align-items:baseline; white-space:nowrap; min-height:44px; font-family:'Nunito',sans-serif; font-weight:900; font-size:22px; color:#2A2521; }
.plan-disclaimer { display:flex; gap:14px; align-items:flex-start; background:#FBF5EC; border:1px dashed #E4D9C7; border-radius:20px; padding:20px 24px; margin-top:14px; }
.plan-disclaimer__icon { font-family:'Nunito',sans-serif; font-weight:900; font-size:15px; color:#c1633f; line-height:1.5; }
.plan-disclaimer__text { margin:0; font-size:14px; color:#6B625A; line-height:1.55; text-wrap:pretty; }

/* --- Comparison Table --- */
.compare-section { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); padding:56px 48px; }
.compare-section__head { display:flex; flex-direction:column; gap:12px; margin-bottom:28px; }
.table-scroll { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.compare-table { width:100%; border-collapse:collapse; font-size:14px; color:#2A2521; }
.th-feature { text-align:left; padding:14px 12px; color:#7A6F65; font-weight:500; font-size:13px; border-bottom:1px solid #EFE7D9; }
.th-plan { text-align:center; padding:14px 12px; font-family:'Nunito',sans-serif; font-weight:800; border-bottom:1px solid #EFE7D9; }
.th-plan--hl { text-align:center; padding:14px 12px; font-family:'Nunito',sans-serif; font-weight:800; border-bottom:1px solid #EFE7D9; background:#FBF7EF; }
.td-feature { padding:14px 12px; border-bottom:1px solid #F3EDE2; color:#5A5049; }
.td { text-align:center; padding:14px 12px; border-bottom:1px solid #F3EDE2; }
.td--hl { text-align:center; padding:14px 12px; border-bottom:1px solid #F3EDE2; background:#FBF7EF; }
.td--yes { text-align:center; padding:14px 12px; border-bottom:1px solid #F3EDE2; color:#1F9E82; }
.td--yes-hl { text-align:center; padding:14px 12px; border-bottom:1px solid #F3EDE2; background:#FBF7EF; color:#1F9E82; }
.td--no { text-align:center; padding:14px 12px; border-bottom:1px solid #F3EDE2; color:#C4B8AB; }
.td-feature--last { padding:14px 12px; color:#5A5049; }
.td--last-no { text-align:center; padding:14px 12px; color:#C4B8AB; }
.td--last-hl { text-align:center; padding:14px 12px; background:#FBF7EF; }
.td--last-yes { text-align:center; padding:14px 12px; color:#1F9E82; }
.table-note { margin:20px 4px 0; color:#8A7E70; font-size:13px; line-height:1.55; text-wrap:pretty; }

/* --- Service Packages (dark table) --- */
.packages-section { background:#2A2521; border-radius:32px; box-shadow:0 24px 60px -40px rgba(60,45,30,.6); padding:56px 48px; }
.packages-title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:38px; color:#FFFDF9; letter-spacing:-.02em; max-width:640px; line-height:1.08; }
.packages-text { margin:0; font-size:16px; color:#C9BFB4; max-width:360px; line-height:1.55; }
.packages-table-wrap { background:rgba(255,253,249,.04); border:1px solid rgba(255,253,249,.12); border-radius:24px; overflow:hidden; }
.packages-table { width:100%; border-collapse:collapse; font-size:14px; color:#E6DED4; }
.pkg-th-feature { text-align:left; padding:20px 22px; color:#B8AEA3; font-weight:500; font-size:13px; border-bottom:1px solid rgba(255,253,249,.12); width:34%; vertical-align:bottom; }
.pkg-th { text-align:center; padding:20px 16px; border-bottom:1px solid rgba(255,253,249,.12); vertical-align:bottom; }
.pkg-th__note { color:#9B9086; font-size:13px; font-weight:400; margin-top:6px; line-height:1.4; }
.pkg-th--hl { text-align:center; padding:20px 16px; border-bottom:1px solid rgba(255,253,249,.12); background:rgba(31,158,130,.14); vertical-align:bottom; }
.pkg-badge { display:inline-block; background:#1F9E82; color:#fff; font-size:11px; font-weight:700; padding:4px 11px; border-radius:999px; margin-bottom:8px; }
.pkg-td-feature { padding:16px 22px; border-bottom:1px solid rgba(255,253,249,.08); color:#C9BFB4; }
.pkg-td { text-align:center; padding:16px; border-bottom:1px solid rgba(255,253,249,.08); }
.pkg-td--hl { text-align:center; padding:16px; border-bottom:1px solid rgba(255,253,249,.08); background:rgba(31,158,130,.14); }
.pkg-td--yes { text-align:center; padding:16px; border-bottom:1px solid rgba(255,253,249,.08); color:#5FCBAB; }
.pkg-td--yes-hl { text-align:center; padding:16px; border-bottom:1px solid rgba(255,253,249,.08); background:rgba(31,158,130,.14); color:#5FCBAB; }
.pkg-td--no { text-align:center; padding:16px; border-bottom:1px solid rgba(255,253,249,.08); color:#8A8078; }
.pkg-td--no-hl { text-align:center; padding:16px; border-bottom:1px solid rgba(255,253,249,.08); background:rgba(31,158,130,.14); color:#8A8078; }
.pkg-td-price-label { padding:22px; color:#FFFDF9; font-family:'Nunito',sans-serif; font-weight:800; font-size:15px; }
.pkg-td-price { text-align:center; padding:22px 16px; font-family:'Nunito',sans-serif; font-weight:900; font-size:26px; color:#FFFDF9; white-space:nowrap; }
.pkg-td-price--hl { text-align:center; padding:22px 16px; font-family:'Nunito',sans-serif; font-weight:900; font-size:26px; color:#FFFDF9; background:rgba(31,158,130,.14); white-space:nowrap; }
.pkg-td-cta-label { padding:0 22px 22px; }
.pkg-td-cta { padding:0 16px 22px; text-align:center; }
.btn-pkg { display:block; color:#FFFDF9; font-weight:700; font-size:14px; padding:12px; border-radius:999px; border:1px solid rgba(255,253,249,.28); }
.pkg-td-cta--hl { padding:0 16px 22px; text-align:center; background:rgba(31,158,130,.14); }
.btn-pkg--primary { display:block; background:#1F9E82; color:#fff; font-weight:700; font-size:14px; padding:12px; border-radius:999px; }
.packages-fine-print { margin:16px 4px 0; color:#8A8078; font-size:13px; line-height:1.55; text-wrap:pretty; }

/* --- One-time Services --- */
.services-desc { display:flex; flex-direction:column; gap:12px; margin-bottom:32px; }
.services-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.service-card__price-row { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-top:auto; padding-top:14px; }
.service-card__price { font-family:'Nunito',sans-serif; font-weight:900; font-size:22px; color:#2A2521; }
.service-card__order-link { font-weight:600; font-size:14px; }
.service-card__price--free { font-family:'Nunito',sans-serif; font-weight:900; font-size:22px; color:#167a65; }
.faq-payment-header { display:flex; flex-direction:column; gap:12px; margin-bottom:32px; }

/* --- CTA Block --- */
.cta-block { background:#1F9E82; border-radius:32px; box-shadow:0 24px 60px -40px rgba(20,90,70,.6); padding:48px; }
.cta-block__layout { display:grid; grid-template-columns:1fr .8fr; gap:48px; align-items:center; }
.cta-block__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:36px; color:#fff; letter-spacing:-.02em; line-height:1.08; }
.cta-block__text { margin:0; font-size:17px; color:#DCF1EB; line-height:1.55; max-width:420px; }
.cta-form { background:#FFFDF9; border-radius:24px; padding:28px; display:flex; flex-direction:column; gap:12px; }
.form-input--bordered { border:1px solid #E4D9C7; border-radius:12px; padding:13px 15px; font-size:15px; font-family:'Golos Text',sans-serif; color:#2A2521; background:#FBF7EF; width:100%; display:block; }
.btn-cta { display:block; width:100%; text-align:center; background:#1F9E82; color:#fff; font-family:'Nunito',sans-serif; font-weight:800; font-size:15px; padding:14px; border-radius:999px; border:none; cursor:pointer; }
.btn-cta:hover { background:#167a65; }
.footer-copy--alt { color:#8A7E70; font-size:14px; text-align:right; line-height:1.5; }

/* --- Download Page --- */
.hero-download__left { padding:56px 44px; display:flex; flex-direction:column; gap:20px; justify-content:center; }
.hero-download__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:46px; line-height:1.05; color:#2A2521; letter-spacing:-.02em; }
.hero-download__text { margin:0; font-size:18px; line-height:1.55; color:#6B625A; max-width:440px; text-wrap:pretty; }
.hero-download__sys { display:flex; gap:22px; color:#7A6F65; font-size:14px; padding-top:2px; flex-wrap:wrap; }
.hero-download__right { background:#F3EFE6; padding:44px; display:flex; flex-direction:column; gap:12px; justify-content:center; border-left:1px solid #EBE1D2; }
.toc-heading { font-family:'Nunito',sans-serif; font-weight:800; font-size:15px; color:#2A2521; }
.toc-link { display:flex; align-items:center; justify-content:space-between; gap:16px; background:#FFFDF9; border:1px solid #EBE1D2; border-radius:16px; padding:15px 18px; }
.toc-link__arrow { color:#1F9E82; font-weight:700; font-size:14px; }
.toc-notice { background:#FFFDF9; border:1px dashed #E0D5C4; border-radius:16px; padding:15px 18px; font-size:13px; color:#7A6F65; line-height:1.45; }
.app-card { background:#FFFDF9; border:1px solid #E7DDCC; border-radius:32px; padding:52px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.app-card__grid { display:grid; grid-template-columns:1.1fr .9fr; gap:48px; }
.app-card__header { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.app-badge { background:#FBEAE0; color:#c1633f; font-weight:600; font-size:14px; padding:7px 14px; border-radius:999px; }
.app-title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:36px; color:#2A2521; letter-spacing:-.02em; line-height:1.08; }
.app-desc { margin:0; font-size:17px; color:#6B625A; line-height:1.55; max-width:520px; text-wrap:pretty; }
.app-features { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding-top:8px; }
.app-feature { background:#F3EFE6; border:1px solid #EBE1D2; border-radius:16px; padding:16px 18px; }
.app-feature__name { font-family:'Nunito',sans-serif; font-weight:800; font-size:15px; color:#2A2521; margin-bottom:4px; }
.app-feature__desc { font-size:14px; color:#7A6F65; line-height:1.45; }
.dl-box { background:#F3EFE6; border:1px solid #EBE1D2; border-radius:24px; padding:28px; display:flex; flex-direction:column; gap:12px; }
.btn-download { display:block; text-align:center; background:#1F9E82; color:#fff; font-family:'Nunito',sans-serif; font-weight:800; font-size:16px; padding:15px; border-radius:999px; }
.dl-meta { display:flex; flex-direction:column; gap:9px; padding-top:4px; }
.dl-meta__row { display:flex; justify-content:space-between; gap:12px; font-size:14px; }
.dl-meta__label { color:#7A6F65; }
.dl-note { background:#FBF5EC; border:1px solid #EFE3D2; border-radius:20px; padding:20px 22px; font-size:14px; color:#6B625A; line-height:1.5; }
.app-card--alt { background:#F3EFE6; border:1px solid #E7DDCC; border-radius:32px; padding:52px 48px; box-shadow:0 24px 60px -40px rgba(60,45,30,.5); }
.app-feature--alt { background:#FFFDF9; border:1px solid #EBE1D2; border-radius:16px; padding:16px 18px; }
.dl-box--alt { background:#FFFDF9; border:1px solid #EBE1D2; border-radius:24px; padding:28px; display:flex; flex-direction:column; gap:12px; }
.dl-note--alt { background:#FFFDF9; border:1px solid #EFE3D2; border-radius:20px; padding:20px 22px; font-size:14px; color:#6B625A; line-height:1.5; }
.dark-card__title { margin:0; font-family:'Nunito',sans-serif; font-weight:900; font-size:34px; color:#FFFDF9; letter-spacing:-.02em; line-height:1.08; }
.dark-card__text { margin:0; font-size:17px; color:#C9BFB4; line-height:1.55; max-width:460px; text-wrap:pretty; }
.dark-feature { background:rgba(255,253,249,.05); border:1px solid rgba(255,253,249,.12); border-radius:18px; padding:20px 22px; }
.footer-download { display:flex; align-items:center; justify-content:space-between; padding:28px 40px; flex-wrap:wrap; gap:16px; }

/* --- Responsive: 861–1100px --- */
@media (max-width:1100px) and (min-width:861px) {
  .stats-grid { grid-template-columns:1fr 1fr !important; }
  .grid-4col { grid-template-columns:1fr 1fr !important; }
  .schema-points { grid-template-columns:1fr 1fr !important; }
  .labels-grid { grid-template-columns:1fr 1fr !important; }
}

/* --- Responsive: mobile ≤860px --- */
@media (max-width:860px) {
  body { overflow-x:hidden; }
  p, span, div, h1, h2, h3 { overflow-wrap:break-word; }
  h1, h2, h3 { text-wrap:pretty; }
  table { min-width:600px; font-size:13px !important; }
  th, td { padding:11px 9px !important; }

  /* Mobile nav: hide desktop links, show hamburger */
  .site-nav, .btn-header { display:none !important; }
  .mobile-menu-btn { display:flex !important; }

  .lp-page { gap:26px !important; padding:14px 14px 48px !important; }
  .hero-card { border-radius:24px !important; }
  .site-header { padding:16px 18px !important; gap:12px !important; }
  .hero { grid-template-columns:1fr !important; }
  .hero__left { padding:28px 20px !important; }
  .hero__title { font-size:32px !important; }
  .hero__lead { font-size:16px !important; }
  .btn-cta-lg { white-space:normal !important; font-size:16px !important; }
  .hero__right { padding:28px 20px !important; border-left:none !important; border-top:1px solid #EBE1D2 !important; }
  .stats-block { border-radius:24px !important; padding:30px 20px !important; }
  .stats-grid { grid-template-columns:1fr !important; gap:22px !important; }
  .stat-primary__num { font-size:25px !important; }
  .stat-item { border-left:none !important; padding-left:0 !important; }
  .stat-item__num { font-size:22px !important; }
  .dark-section { grid-template-columns:1fr !important; border-radius:24px !important; padding:30px 20px !important; gap:26px !important; }
  .heading-lg--light { font-size:26px !important; }
  .text-body--light { font-size:16px !important; }
  .btn-green { white-space:normal !important; }
  .btn-outline-light { white-space:normal !important; }
  .section-card { border-radius:24px !important; padding:30px 20px !important; }
  .features-layout { grid-template-columns:1fr !important; gap:26px !important; }
  .section-heading { font-size:26px !important; }
  .section-text { font-size:16px !important; }
  .grid-2col { grid-template-columns:1fr !important; }
  .tinted-section { border-radius:24px !important; padding:30px 20px !important; }
  .section-title { font-size:26px !important; }
  .section-desc { font-size:16px !important; }
  .grid-4col { grid-template-columns:1fr !important; }
  .schema-diagram { grid-template-columns:1fr !important; }
  .schema-connector { max-width:none !important; flex-direction:row !important; gap:10px !important; padding:2px 0 !important; }
  .schema-points { grid-template-columns:1fr !important; }
  .download-block { border-radius:24px !important; padding:30px 20px !important; }
  .download-layout { grid-template-columns:1fr !important; gap:26px !important; }
  .download-block__title { font-size:24px !important; }
  .btn-ghost { white-space:normal !important; }
  .dark-wide { border-radius:24px !important; padding:30px 20px !important; }
  .labels-grid { grid-template-columns:1fr !important; }
  .section-heading--wide { font-size:26px !important; }
  .pricing-preview { grid-template-columns:1fr !important; gap:26px !important; }
  .pricing-preview__desc { font-size:16px !important; }
  .price-row__val--free { white-space:normal !important; font-size:16px !important; }
  .price-row__val { white-space:normal !important; font-size:16px !important; }
  .price-row__val--light { white-space:normal !important; font-size:16px !important; }
  .team-section { border-radius:24px !important; padding:30px 20px !important; }
  .team-title { font-size:23px !important; }
  .contact-card { border-radius:24px !important; padding:30px 20px !important; }
  .contact-card__title { font-size:22px !important; }
  .site-footer { flex-direction:column !important; align-items:flex-start !important; gap:12px !important; padding:20px 6px !important; }
  .page-pricing { padding:14px 14px 48px !important; }
  .page-header { border-radius:24px !important; padding:16px 18px !important; gap:12px !important; }
  .pricing-hero { border-radius:24px !important; padding:30px 20px !important; }
  .pricing-hero__title { font-size:31px !important; }
  .pricing-hero__text { font-size:16px !important; }
  .plans-section { border-radius:24px !important; padding:30px 20px !important; }
  .plans-grid { grid-template-columns:1fr !important; }
  .plan-free__price { white-space:normal !important; }
  .plan-price { white-space:normal !important; }
  .plan-popular-label { white-space:normal !important; }
  .plan-card__name { font-size:16px !important; }
  .plan-price--light { white-space:normal !important; }
  .plan-price--custom { white-space:normal !important; }
  .compare-section { border-radius:24px !important; padding:30px 20px !important; }
  .packages-section { border-radius:24px !important; padding:30px 20px !important; }
  .packages-title { font-size:26px !important; }
  .pkg-td-price { white-space:normal !important; }
  .pkg-td-price--hl { white-space:normal !important; }
  .services-grid { grid-template-columns:1fr !important; }
  .cta-block { border-radius:24px !important; padding:30px 20px !important; }
  .cta-block__layout { grid-template-columns:1fr !important; gap:26px !important; }
  .cta-block__title { font-size:25px !important; }
  .cta-block__text { font-size:16px !important; }
  .footer-download { flex-direction:column !important; align-items:flex-start !important; gap:12px !important; padding:20px 6px !important; }
  .hero-download__left { padding:28px 20px !important; }
  .hero-download__title { font-size:30px !important; }
  .hero-download__text { font-size:16px !important; }
  .hero-download__right { padding:28px 20px !important; border-left:none !important; border-top:1px solid #EBE1D2 !important; }
  .app-card { border-radius:24px !important; padding:30px 20px !important; }
  .app-card__grid { grid-template-columns:1fr !important; gap:26px !important; }
  .app-title { font-size:25px !important; }
  .app-desc { font-size:16px !important; }
  .app-features { grid-template-columns:1fr !important; }
  .app-card--alt { border-radius:24px !important; padding:30px 20px !important; }
  .dark-card__title { font-size:24px !important; }
  .dark-card__text { font-size:16px !important; }
}