/*
Theme Name: Impulsa Theme
Author: Tezen
Description: Чистая блочная тема-компаньон для Impulsa Builder. Единый холст без лишних шаблонов, синхронизация шрифтов, цветов, ширины, шапки и подвала.
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
Version: 2.2.5
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: impulsa
Tags: full-site-editing, block-styles, wide-blocks
*/

/* Companion release for Impulsa Builder 10.26.3. */

:root {
  --wp--preset--color--primary: var(--ib-primary, #305ff6);
  --wp--preset--color--secondary: var(--ib-secondary, #17b6a4);
  --wp--preset--color--contrast: var(--ib-contrast, #142033);
  --wp--preset--color--surface: var(--ib-surface, #f3f6fb);
  --wp--preset--color--muted: var(--ib-muted, #667085);
  --wp--preset--color--border: var(--ib-border, #e4e8f0);
  --wp--style--global--content-size: var(--ib-content, 760px);
  --wp--style--global--wide-size: var(--ib-wide, 1240px);
  --wp--style--root--padding-left: var(--ib-page-padding, clamp(18px, 3vw, 36px));
  --wp--style--root--padding-right: var(--ib-page-padding, clamp(18px, 3vw, 36px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { text-rendering: optimizeLegibility; }
body.impulsa-builder-ready { background: var(--ib-background, #fff); color: var(--ib-contrast, #142033); font-family: var(--ib-body-font, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif); font-size: var(--ib-base-size, 16px); }
body.impulsa-builder-ready h1,
body.impulsa-builder-ready h2,
body.impulsa-builder-ready h3,
body.impulsa-builder-ready h4,
body.impulsa-builder-ready h5,
body.impulsa-builder-ready h6 { font-family: var(--ib-heading-font, inherit); font-weight: var(--ib-heading-weight, 800); }
a { text-underline-offset: .18em; }

.wp-site-blocks { overflow: clip; }

.impulsa-builder-ready .wp-site-blocks > main,
.impulsa-builder-ready .wp-site-blocks > .wp-block-group { --wp--style--global--content-size: var(--ib-content,760px); --wp--style--global--wide-size: var(--ib-wide,1240px); }
.impulsa-builder-ready .wp-block-template-part > .alignfull > .alignwide { max-width: var(--ib-wide,1240px); }

/* Impulsa sections manage their own vertical rhythm. Keep WordPress' global
 * block gap for ordinary content, but never insert it between root sections. */
.impulsa-builder-ready :is(
  .wp-block-post-content,
  .impulsa-builder-canvas__content,
  [data-impulsa-layout]
) > .ib-section {
  margin-block-end: var(--ib-space-m-b-d, 0px) !important;
  margin-block-start: var(--ib-space-m-t-d, 0px) !important;
}

@media (max-width: 1024px) {
  .impulsa-builder-ready :is(
    .wp-block-post-content,
    .impulsa-builder-canvas__content,
    [data-impulsa-layout]
  ) > .ib-section {
    margin-block-end: var(--ib-space-m-b-t, var(--ib-space-m-b-d, 0px)) !important;
    margin-block-start: var(--ib-space-m-t-t, var(--ib-space-m-t-d, 0px)) !important;
  }
}

@media (max-width: 767px) {
  .impulsa-builder-ready :is(
    .wp-block-post-content,
    .impulsa-builder-canvas__content,
    [data-impulsa-layout]
  ) > .ib-section {
    margin-block-end: var(--ib-space-m-b-m, var(--ib-space-m-b-t, var(--ib-space-m-b-d, 0px))) !important;
    margin-block-start: var(--ib-space-m-t-m, var(--ib-space-m-t-t, var(--ib-space-m-t-d, 0px))) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
