/* Правки под WordPress: гасим то, что добавляет админка и Elementor,
   и восстанавливаем поля контента, которые в исходном сайте задавала вёрстка. */

/* админ-панель не должна перекрывать закреплённую шапку */
body.admin-bar .topbar { top: 32px; }
@media (max-width: 782px) { body.admin-bar .topbar { top: 46px; } }

/* контейнер Elementor внутри контентной колонки не должен ломать поля */
.page-content .elementor { width: 100%; }

/* заголовок страницы, если он выводится темой */
.page-content > h1:first-child { margin-top: 0; }

/* списки и типографика в редакторе WordPress */
.page-content ul, .page-content ol { padding-left: 22px; }
.page-content img { max-width: 100%; height: auto; }

/* Карточка услуги, собранная в Elementor, — в оформлении сайта */
.cm-tile > .elementor-widget-wrap {
    background: #fff;
    border: 1px solid #ededed;
    border-radius: 13px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .05);
    padding: 24px !important;
    height: 100%;
    transition: box-shadow .2s;
}
.cm-tile > .elementor-widget-wrap:hover { box-shadow: 0 4px 25px rgba(0, 0, 0, .08); }
.cm-tile .elementor-icon-box-icon {
    width: 88px; height: 88px; margin: 0 auto 20px !important;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, #eaf4fc, #dceffc);
    border-radius: 16px;
}
.cm-tile .elementor-icon svg { width: 42px; height: 42px; fill: #0588D1; }
.cm-tile .elementor-icon-box-title { font-size: 18px !important; line-height: 27px; margin-bottom: 12px; }
.cm-tile .elementor-icon-box-description { font-size: 16px !important; line-height: 24px; }

/* ==========================================================================
   Главная, собранная в Elementor: приводим её к виду исходного сайта.
   Elementor добавляет свои обёртки и отступы — гасим их там, где вёрстка
   сайта рассчитывает на собственную структуру.
   ========================================================================== */

/* Первый экран */
.hero-section > .elementor-container { align-items: center; }
.hero-section .elementor-widget:not(:last-child) { margin-bottom: 0; }
/* кегль, интерлиньяж и начертание берутся из пресета H1 (Настройки сайта →
   Глобальные шрифты); здесь остаётся только то, что к шкале не относится */
.hero-section .hero-title .elementor-heading-title {
    color: #1b1a1d;
    margin-bottom: 22px;
}
.hero-section .hero-text { max-width: 620px; margin-bottom: 26px; }
.hero-section .hero-btn-box { margin-bottom: 22px; }
.hero-section .hero-image-inner img { max-width: 100%; height: auto; }


/* Преимущества */
.about-section .elementor-container { flex-wrap: wrap; }
.about-section .about-col > .elementor-widget-wrap {
    background: #fff; border: 1px solid #ededed; border-radius: 13px;
    padding: 24px 18px !important; text-align: center; height: 100%;
    align-content: flex-start;
}
.about-section .about-col .elementor-widget-image { margin-bottom: 12px; }
.about-section .about-col img { width: 44px; height: 44px; }
.about-section .about-col p, .about-section .about-col span {
    color: #1b1a1d; font-size: 16px; line-height: 24px;
}

/* Карточка услуги */
.services-section--cards .solution-tile > .elementor-widget-wrap {
    display: flex; flex-direction: column; align-items: center; text-align: center;
    height: 100%; padding: 0 !important;
}
.services-section--cards .solution-tile .elementor-widget { width: 100%; margin-bottom: 0; }
.services-section--cards .solution-tile__title .elementor-heading-title {
    color: #1b1a1d; margin-bottom: 12px;
}
.services-section--cards .solution-tile__text-wrap {
    color: #605f67; font-size: 16px; line-height: 24px; flex-grow: 1; margin-bottom: 16px;
}
.services-section--cards .solution-tile__text-wrap p { margin: 0; }

/* Карточка объекта */
.object-section--cards .project-tile > .elementor-widget-wrap {
    padding: 0 !important; height: 100%; align-content: flex-start;
}
.object-section--cards .project-tile .elementor-widget { width: 100%; margin-bottom: 0; }
.object-section--cards .project-tile__img img {
    width: 100%; height: 220px; object-fit: cover; display: block;
    border-radius: 13px 13px 0 0;
}
.object-section--cards .project-tile__title .elementor-heading-title {
    color: #1b1a1d;
    padding: 20px 20px 10px;
}
.object-section--cards .project-tile__list { padding: 0 20px 20px; }

/* Заголовки секций и отступы между секциями */
.services-section--head, .object-section--head { padding-top: 8px; }
/* кегль и начертание — из пресета H2 */
.services-section--head .title .elementor-heading-title,
.object-section--head .title .elementor-heading-title,
.software-new--home .title .elementor-heading-title {
    color: #1b1a1d;
    margin-bottom: 28px;
}
.software-new--home .software-new__intro-wrap {
    color: #605f67; font-size: 17px; line-height: 26px; max-width: 900px; margin-bottom: 28px;
}
.services-section--more, .object-section--more { padding-bottom: 48px; }


/* Точная подгонка под исходный сайт: размеры взяты замерами с chronosmeterservice.ru */
.hero-section .hero-image img { width: 460px; max-width: 100%; height: auto; }
.hero-section .hero-box { max-width: 615px; }
.about-section .about-col > .elementor-widget-wrap { padding: 16px !important; }
.about-section .about-col img { width: 32px; height: 32px; }
.about-section .about-col .elementor-widget-image { margin-bottom: 8px; }
.about-section .about-col p, .about-section .about-col span { font-size: 15px; line-height: 21px; }

/* Карточка = внутренняя обёртка колонки, а не сама колонка: в исходной вёрстке
   между колонками есть отступ 15 px, а рамка нарисована у блока внутри. */
.services-section--cards .solution-tile,
.object-section--cards .project-tile {
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 15px !important;
}
.services-section--cards .solution-tile > .elementor-widget-wrap {
    background: #fff;
    border: 1px solid #ededed;
    border-radius: 13px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .05);
    padding: 24px !important;
}
.object-section--cards .project-tile > .elementor-widget-wrap {
    background: #fff;
    border: 1px solid #ededed;
    border-radius: 13px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .05);
    overflow: hidden;
}
.about-section .about-col { padding: 0 12px !important; }

/* Первый экран: убираем лишний воздух, который добавляют обёртки Elementor */
.hero-section .elementor-widget-text-editor { margin-bottom: 0; }
.hero-section .hero-text p { margin-bottom: 0; }
.hero-section .hero-title .elementor-heading-title { margin-bottom: 18px; }
.hero-section .hero-text { margin-bottom: 22px; }
.hero-section .hero-btn-box { margin-bottom: 18px; }

/* Первый экран: изображение прибора вынесено из потока и подрезается секцией —
   так же, как на исходном сайте (иначе экран становится выше на ~120 px). */
.hero-section { position: relative; overflow: hidden; }
.hero-section > .elementor-container { position: relative; }
.hero-section .hero-image {
    position: absolute !important;
    right: 27px;
    top: 22px;
    width: 460px !important;
}
.hero-section .hero-box { width: 100% !important; max-width: 615px; }
@media (max-width: 991px) {
    .hero-section .hero-image { display: none !important; }
    .hero-section .hero-box { max-width: 100%; }
}

/* На исходном сайте у крупных заголовков сжатый межбуквенный интервал */
.hero-section .hero-title .elementor-heading-title { letter-spacing: -0.02em; }
.services-section--head .title .elementor-heading-title,
.object-section--head .title .elementor-heading-title,
.software-new--home .title .elementor-heading-title { letter-spacing: -0.02em; }

/* Отступы между секциями: Elementor добавляет свои сверху и снизу каждой
   секции, а исходная страница задаёт их один раз на блок. Обнуляем и
   выставляем те же значения, что на chronosmeterservice.ru. */
.services-section, .object-section, .software-new--home, .about-section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.about-section { padding: 40px 0 8px !important; }
.services-section--head { padding-top: 40px !important; }
.services-section--head .title .elementor-heading-title,
.object-section--head .title .elementor-heading-title,
.software-new--home .title .elementor-heading-title { margin-bottom: 20px; }
.services-section--cards .elementor-column,
.object-section--cards .elementor-column { margin-bottom: 24px; }
.services-section--more, .object-section--more { padding-bottom: 40px !important; }
.software-new--home { padding: 24px 0 56px !important; }
.hero-section { padding-top: 82px !important; padding-bottom: 96px !important; }
