/* Декор не перехватывает клики */
.hero-v9-decor-layer {
    pointer-events: none;
}

/* Точка у верхнего бейджа (w-2 h-2) — в Bootstrap без размеров растягивалась */
.hero-v9-badge-dot {
    box-sizing: border-box;
    width: 0.5rem;
    height: 0.5rem;
    flex-shrink: 0;
    border-radius: 9999px;
}

/* Круг с галочкой в списке features (w-5 h-5) */
.hero-v9-feature-check {
    box-sizing: border-box;
    width: 1.25rem;
    height: 1.25rem;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    overflow: hidden;
}

.hero-v9-feature-check i {
    line-height: 1;
}

/* Плитка иконки в key-benefits (w-12 h-12 rounded-lg) */
.hero-v9-benefit-icon {
    box-sizing: border-box;
    width: 3rem;
    height: 3rem;
    flex-shrink: 0;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    overflow: hidden;
}

.hero-v9-benefit-icon i {
    line-height: 1;
}

/* Высота картинки как Tailwind h-96 (24rem) */
.hero-v9-hero-img {
    height: 24rem;
    max-height: 70vh;
    object-fit: cover;
}

/* Фоновые блобы — позиции как в Tailwind */
.hero-v9-blob-ne {
    position: absolute;
    top: 5rem;
    right: 5rem;
    width: 18rem;
    height: 18rem;
    filter: blur(64px);
}

.hero-v9-blob-sw {
    position: absolute;
    bottom: 5rem;
    left: 5rem;
    width: 24rem;
    height: 24rem;
    filter: blur(64px);
}

/* -- Button hover states -- */
.hero-btn-primary {
    transition: filter 0.2s ease, transform 0.15s ease;
}
.hero-btn-primary:hover,
.hero-btn-primary:focus {
    filter: brightness(1.12);
    transform: translateY(-1px);
}

.hero-btn-outline-secondary {
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}
.hero-btn-outline-secondary:hover,
.hero-btn-outline-secondary:focus {
    background-color: var(--bs-secondary) !important;
    color: #fff !important;
    border-color: var(--bs-secondary) !important;
    transform: translateY(-1px);
}

.hero-btn-outline-primary-light {
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}
.hero-btn-outline-primary-light:hover,
.hero-btn-outline-primary-light:focus {
    background-color: var(--bs-primary) !important;
    color: #fff !important;
    border-color: var(--bs-primary) !important;
    transform: translateY(-1px);
}
.alternating-zigzag__media {
  height: 16rem;
}

.alternating-zigzag__bar {
  width: 2rem;
  height: 2px;
}

.alternating-zigzag__img {
    object-fit: cover;
}
.alternating-zigzag__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tips-interactive__badge {
    z-index: 20;
}

.tips-interactive__inner {
    z-index: 10;
}

.tips-interactive__panel {
    z-index: 50;
}

.tips-interactive__thumb {
    width: 4rem;
    height: 4rem;
}

.tips-interactive__thumb--sm {
    width: 3rem;
    height: 3rem;
}

.tips-interactive__panel--collapsed {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-1rem);
}

.tips-interactive__panel--open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

/* glossary gazette — multi-column flow (not CSS grid), brick avoid breaks, footnote icon */
.glossary-gazette__columns {
    column-count: 1;
    column-gap: 1.25rem;
}

@media (min-width: 768px) {
    .glossary-gazette__columns {
        column-count: 2;
        column-gap: 1.5rem;
    }
}

@media (min-width: 1200px) {
    .glossary-gazette__columns {
        column-count: 3;
    }
}

.glossary-gazette__brick {
    break-inside: avoid;
    margin-bottom: 1rem;
}

.glossary-gazette__note-ico {
    width: 3.25rem;
    height: 3.25rem;
}

.glossary-gazette__note-icon {
    font-size: 1.25rem;
    line-height: 1;
}


.pulse-boost__section {
    padding-top: 6rem;
    padding-bottom: 6rem;
}

.pulse-boost__inner {
    max-width: 72rem;
    width: 100%;
    box-sizing: border-box;
}

/* Bootstrap: col-* внутри d-flex без .row даёт неверную ширину и обрезание справа */
.pulse-boost__split-row-bs {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1.5rem;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

@media (min-width: 1024px) {
    .pulse-boost__split-row-bs {
        flex-direction: row;
        align-items: center;
    }

    .pulse-boost__split-row-bs > * {
        flex: 1 1 0;
        min-width: 0;
        max-width: 50%;
        box-sizing: border-box;
    }
}

.pulse-boost__vessel--rise:hover { transform: scale(1.05); transition: transform .2s ease; }

@keyframes pulse-boost-highlight-throb-track {
    0%, 100% { opacity: 1; }
    50%       { opacity: .5; }
}
.pulse-boost__highlight--throb {
    animation: pulse-boost-highlight-throb-track 2s cubic-bezier(.4,0,.6,1) infinite;
}

.pulse-boost__jump--rise:hover { transform: scale(1.05); transition: transform .2s ease; }

.pulse-boost__control--rise:hover { transform: scale(1.05); transition: transform .2s ease; }

