/* Центральное свечение (Tailwind: top-1/2 left-1/2 -translate w-96 blur) */
.hero-v12-glow-center {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 0;
    transform: translate(-50%, -50%);
    width: 24rem;
    height: 24rem;
    pointer-events: none;
    filter: blur(64px);
}

/* Иконки в ряду key-benefits (w-12 h-12 rounded-lg) */
.hero-v12-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-v12-benefit-icon i {
    line-height: 1;
}

/* Описание: как max-w-2xl в Bootstrap */
.hero-v12-desc-max {
    max-width: 42rem;
    margin-left: auto;
    margin-right: auto;
}

/* -- 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);
}
.content-brief__float-square {
    width: 4rem;
    height: 4rem;
}

.content-brief__orbit {
    left: 50%;
    top: 50%;
    width: min(34rem, 78vw);
    height: min(34rem, 78vw);
    transform: translate(-50%, -50%);
    animation: content-brief-orbit 18s linear infinite;
}

.content-brief__float-square--slow {
    animation: content-brief-float-slow 10s ease-in-out infinite;
}

.content-brief__float-square--fast {
    animation: content-brief-float-fast 7s ease-in-out infinite;
}

@keyframes content-brief-float-slow {
    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-8px) rotate(6deg);
    }
}

@keyframes content-brief-float-fast {
    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(8px) rotate(-7deg);
    }
}

@keyframes content-brief-orbit {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

.content-col-grow {
    flex: 1 1 0%;
    min-width: 0;
}

.content-img-fill {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 16rem;
    min-width: 0;
    object-fit: cover;
    flex-shrink: 0;
}

.writeup-document__text-panel-inset {
    padding: 4rem;
}

.writeup-document__img-tilt {
    transform: rotate(6deg);
}

.content-col-grow {
    flex: 1 1 0%;
    min-width: 0;
}

.content-grid-gap {
    gap: 2rem;
}

.content-heading-gap {
    margin-bottom: 2rem;
}

.content-section-pad {
    padding-top: 6rem;
    padding-bottom: 6rem;
}

.content-small-height {
    display: block;
    width: 100%;
    height: 12rem;
    min-height: 12rem;
    flex-shrink: 0;
    object-fit: cover;
}

/* Bootstrap: grid + gap (row gutters often collapse) */
.tips-detailed__bs-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .tips-detailed__bs-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.tips-detailed__subtitle-max {
    max-width: 42rem;
}

.tips-detailed__thumb {
    width: 3rem;
    height: 3rem;
}

.tips-detailed__cta-thumb {
    width: 2rem;
    height: 2rem;
}

.tips-detailed__min-shrink {
    min-width: 0;
}

