/* nalogiturov.ru: адаптив на всю ширину экрана (25.09.2026).
html Подключается последним и перекрывает px-размеры основной вёрстки плавными clamp():
   минимум на телефоне 390px, html максимум на мониторе 1920px и шире. */
:root {
  --gx: clamp(20px, 4.2vw, 128px);          /* боковые поля */
  --gy: clamp(64px, 7vw, 160px);            /* вертикальные поля секций */
  --t-body: clamp(16px, 0.62vw + 13px, 23px);
  --t-small: clamp(15px, 0.4vw + 12.5px, 19px);
  --t-cap: clamp(12px, 0.32vw + 10px, 16px);
  --t-item: clamp(18px, 0.9vw + 14px, 32px);
  --t-sec: clamp(32px, 4.2vw, 84px);
  --t-big: clamp(32px, 4.2vw, 80px);
  --t-btn: clamp(14px, 0.42vw + 11px, 19px);
}

/* ─── поля ─── */
html header { padding: 0 var(--gx); height: clamp(64px, 4.6vw, 92px); }
html .section { padding: var(--gy) var(--gx); }
html .hero-left { padding: calc(clamp(64px, 4.6vw, 92px) + clamp(36px, 4vw, 90px)) var(--gx) clamp(56px, 5vw, 110px); }
html .fact-item, html .pain-label, html .guarantee-left, html .form-left, html .form-right { padding: var(--gy) var(--gx); }
html .num-cell { padding: clamp(40px, 4.5vw, 100px) clamp(20px, 2.6vw, 64px); }
html .quote-section { padding: var(--gy) var(--gx); }
html .urgency { padding: clamp(40px, 4vw, 90px) var(--gx); }
html footer { padding: clamp(24px, 2.2vw, 44px) var(--gx); }

/* ─── крупные заголовки ─── */
html .hero-title { font-size: clamp(40px, 5.3vw, 116px); letter-spacing: -0.02em; }
html .sec-title { font-size: var(--t-sec); letter-spacing: -0.02em; line-height: 1.08; }
html .booklet-title, html .form-left-title, html .guarantee-title { font-size: var(--t-big); letter-spacing: -0.02em; }
html .urgency-text { font-size: clamp(22px, 2.8vw, 56px); max-width: 62vw; }
html .q-text { font-size: clamp(26px, 3.7vw, 72px); max-width: min(78vw, 1500px); }
html .fact-num { font-size: clamp(48px, 7vw, 150px); }
html .num-val { font-size: clamp(40px, 5.6vw, 128px); }
html .res-n { font-size: clamp(44px, 4vw, 88px); }
html .b-n { font-size: clamp(36px, 3vw, 64px); }
html .booklet-badge-num { font-size: clamp(24px, 2vw, 40px); }

/* ─── подзаголовки пунктов ─── */
html .pain-title, html .prog-t, html .spk-name, html .psc-name, html .day-title, html .faq-q, html .fact-text, html .guarantee-refund-title, html .guarantee-text, html .wpf-blog-title, html .lp-hub-t, html .hero-date-when, html .fdr-city, html .wpf-value-main, html .bq-text {
  font-size: var(--t-item); line-height: 1.3;
}
html .day-title { font-size: clamp(20px, 1.3vw + 14px, 40px); }
html .wpf-stat b { font-size: clamp(22px, 1.4vw + 12px, 40px); }

/* ─── тексты ─── */
html .hero-desc, html .pain-desc, html .prog-d, html .spk-bio, html .res-text, html .booklet-desc, html .b-l, html .form-left-desc, html .guarantee-sub, html .guarantee-refund-desc, html .faq-a-inner, html .fact-sub, html .wpf-blog-desc, html .lp-hub-s, html .num-lbl, html .day-speaker, html .spk-fact, html .hero-date-type, html .fdr-when, html .psc-title, html .wpf-value-sub, html .wpf-seats {
  font-size: var(--t-body); line-height: 1.65;
}
html .hero-desc { max-width: min(46em, 100%); }
html .fact-text, html .fact-sub, html .guarantee-sub, html .num-lbl, html .wpf-blog-desc { max-width: none; }
html .faq-a-inner { max-width: min(60em, 100%); }
html .wpf-stats, html .wpf-value { max-width: min(46em, 100%); }
html .hero-desc, html .pain-desc, html .prog-d, html .spk-bio, html .booklet-desc, html .b-l, html .form-left-desc, html .guarantee-sub, html .guarantee-refund-desc, html .faq-a-inner, html .fact-sub, html .num-lbl, html .day-speaker, html .spk-fact {
  color: rgba(247,245,240,.72);
}

/* ─── подписи капсом ─── */
html .hero-eyebrow, html .sec-sub, html .prog-n, html .day-label, html .psc-role, html .spk-role, html .guarantee-eyebrow, html .q-author, html .bq-author, html .booklet-badge-text, html .f-lbl, html .pain-label, html .prog-tag, html .hero-date-city, html .wpf-blog-tag, html .ticker-item, html nav a, html .f-nav a, html .logo, html .f-logo, html .wpf-stat span, html .f-copy, html .mobile-menu a {
  font-size: var(--t-cap);
}
html .sec-sub, html .prog-n, html .q-author, html .f-nav a, html .f-copy { color: rgba(247,245,240,.5); }
html nav a { color: rgba(247,245,240,.7); }

/* ─── кнопки и форма ─── */
html .btn-main, html .btn-ghost, html .urgency-btn, html .f-submit {
  font-size: var(--t-btn);
  padding: clamp(17px, 1.15vw + 8px, 30px) clamp(28px, 2.4vw, 60px);
  min-height: 52px;
}
html .btn-reg { font-size: clamp(12px, 0.3vw + 10px, 16px); padding: clamp(11px, 0.7vw, 16px) clamp(20px, 1.6vw, 36px); }
html .f-submit { padding: clamp(18px, 1.3vw + 8px, 32px); }
html .f-radio-lbl { font-size: clamp(12px, 0.3vw + 10px, 16px); padding: clamp(13px, 0.9vw, 20px) 8px; }
html .f-inp, html .f-sel { font-size: clamp(16px, 0.4vw + 13px, 20px); padding: clamp(14px, 1vw, 22px) clamp(16px, 1.2vw, 26px); }
html .f-inp::placeholder { font-size: inherit; }
html .f-consent { font-size: clamp(13px, 0.25vw + 11px, 15px); }

/* ─── сетки на широком экране ─── */
@media (min-width: 1101px) {
html .prog-row { grid-template-columns: clamp(52px, 4vw, 90px) minmax(280px, 26vw) 1fr auto; gap: clamp(32px, 3vw, 72px); padding: clamp(28px, 2.2vw, 48px) 0; }
html .day-divider { grid-template-columns: clamp(110px, 9vw, 190px) 1fr; }
html .photo-strip { height: clamp(520px, 38vw, 820px); }
html .booklet-inner { gap: clamp(60px, 6vw, 160px); }
html .pain-items > *, html .speakers-grid > *, html .results-grid > * { padding: clamp(32px, 3vw, 72px) !important; }
}
@media (min-width: 1101px) {
html .wpf-blog-grid { grid-template-columns: repeat(auto-fit, minmax(clamp(260px, 17vw, 420px), 1fr)); gap: clamp(16px, 1.4vw, 32px); }
html .lp-hub-grid { grid-template-columns: repeat(5, 1fr); gap: clamp(16px, 1.4vw, 32px); }
html .lp-hub-card { padding: clamp(24px, 2vw, 44px); }
}
@media (max-width: 1100px) {
html .prog-row { gap: 16px; }
}
html .lp-hub-t { font-size: var(--t-item); }
html .lp-hub-s { font-size: var(--t-small); color: rgba(247,245,240,.65); }
html .wpf-blog-desc { color: rgba(247,245,240,.72); }

/* ─── посадочные /seminar-spb/, /seminar-msk/, /droblenie-biznesa/, /zashchita-aktivov/, /nds-2026/ ─── */
:root { --col: min(1320px, calc(100vw - 2 * var(--gx))); }
html .article-header { max-width: none; padding: calc(clamp(64px, 4.6vw, 92px) + clamp(40px, 5vw, 110px)) var(--gx) clamp(48px, 4.5vw, 100px); }
html .article-header > * { max-width: var(--col); margin-left: auto; margin-right: auto; }
html .article-header h1 { font-size: clamp(23px, min(7.4vw, 5vw + 8px), 104px);  /* слово до 19 букв влезает в 320px */ letter-spacing: -0.02em; line-height: 1.06; }
html .article-header .lead { font-size: clamp(18px, 0.8vw + 14px, 28px); max-width: var(--col); color: rgba(247,245,240,.72); }
html .article-breadcrumb, html .article-date { font-size: var(--t-cap); }
html .article-body, html .article-cta, html .article-faq { max-width: calc(var(--col) + 2 * var(--gx)); padding-left: var(--gx); padding-right: var(--gx); }
html .article-body { padding-top: clamp(40px, 4vw, 96px); padding-bottom: clamp(56px, 5vw, 120px); }
html .article-body h2 { font-size: clamp(21px, min(6.6vw, 2.6vw + 13px), 56px);  /* слово до 20 букв влезает в 320px */ letter-spacing: -0.02em; margin: clamp(44px, 4vw, 96px) 0 clamp(18px, 1.4vw, 32px); }
html .article-body h3 { font-size: clamp(20px, 1.4vw + 12px, 38px); }
html .article-body p, html .article-body ul, html .article-body ol { font-size: var(--t-body); line-height: 1.7; }
html .article-body blockquote { font-size: var(--t-body); padding: clamp(16px, 1.5vw, 32px) clamp(20px, 2vw, 44px); }
html .article-body th, html .article-body td { font-size: var(--t-small); padding: clamp(10px, 0.8vw, 18px) clamp(14px, 1.1vw, 24px); }
html .article-cta-box { padding: clamp(28px, 3vw, 64px); }
html .article-cta-text { font-size: var(--t-item); max-width: none; }
html .article-cta-sub { font-size: var(--t-small); color: rgba(247,245,240,.7); }
html .article-faq h2 { font-size: clamp(26px, 2.6vw, 56px); }
html .lp-form { padding: clamp(24px, 3vw, 64px); }
html .lp-form-title { font-size: clamp(24px, 2.2vw, 48px); }
html .lp-form-sub, html .lp-links a { font-size: var(--t-body); }
html .lp-inp { font-size: clamp(16px, 0.4vw + 13px, 20px); padding: clamp(14px, 1vw, 22px) clamp(16px, 1.2vw, 26px); }
html .lp-btn { font-size: var(--t-btn); padding: clamp(17px, 1.15vw + 8px, 30px); }
html .lp-consent { font-size: clamp(13px, 0.25vw + 11px, 15px); }
html .lp-city { padding: clamp(20px, 2vw, 44px); }
html .lp-city-name { font-size: var(--t-cap); }
html .lp-city-date { font-size: clamp(20px, 1.6vw + 10px, 44px); }
html .lp-city-fmt { font-size: var(--t-small); }
@media (min-width: 1101px) {
  html .lp-form select, html .lp-form .lp-inp { max-width: none; }
}

/* ─── блог /blog/: статьи и список ─── */
html .article-cover { max-width: calc(var(--col) + 2 * var(--gx)) !important; margin: clamp(32px, 3vw, 64px) auto 0 !important; padding: 0 var(--gx) !important; }
html .article-cover img { width: 100%; height: auto; }
html figure.article-inline { margin: clamp(32px, 3vw, 64px) 0 !important; }
html figure.article-inline figcaption { font-size: var(--t-small) !important; margin-top: 12px !important; }
html .author-card { padding: clamp(24px, 2.4vw, 48px) !important; gap: clamp(20px, 1.6vw, 36px) !important; }
html .author-card [itemprop="jobTitle"] { font-size: var(--t-small) !important; }
html .author-card [itemprop="name"] { font-size: var(--t-item); }
html .article-sources h2 { font-size: clamp(20px, 1.2vw + 12px, 34px) !important; }
html .article-sources ul { font-size: var(--t-small) !important; }
html .article-breadcrumb a, html .article-breadcrumb span { font-size: inherit; }

html .page-header { padding: calc(clamp(64px, 4.6vw, 92px) + clamp(40px, 5vw, 110px)) var(--gx) clamp(48px, 4.5vw, 100px); }
html .page-header h1 { font-size: clamp(28px, min(9vw, 5.3vw + 8px), 116px); letter-spacing: -0.02em; }
html .page-header-sub { font-size: var(--t-body); max-width: min(46em, 100%); color: rgba(247,245,240,.72); }
html .page-header-breadcrumb { font-size: var(--t-cap); }
html .blog-card { padding: clamp(28px, 2.6vw, 60px) clamp(22px, 2.2vw, 52px); }
html .blog-card-date, html .blog-card-link { font-size: var(--t-cap); }
html .blog-card-title { font-size: var(--t-item); line-height: 1.3; }
html .blog-card-desc { font-size: var(--t-body); line-height: 1.6; color: rgba(247,245,240,.65); }
html .blog-cta { padding: clamp(40px, 4vw, 90px) var(--gx); }
html .blog-cta-text { font-size: clamp(22px, 2.8vw, 56px); max-width: 62vw; }
html .blog-cta-btn { font-size: var(--t-btn); padding: clamp(17px, 1.15vw + 8px, 30px) clamp(28px, 2.4vw, 60px); }
@media (min-width: 1700px) { html .blog-grid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 768px) { html .blog-cta-text { max-width: none; } }
