/* New IT Granat hero banner */
body.granat-new-hero-active .slider-block {
    display: none !important;
}

.granat-new-hero {
    position: relative !important;
    overflow: hidden !important;
    min-height: 760px !important;
    background: #050506 !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    isolation: isolate !important;
}

.granat-new-hero,
.granat-new-hero * {
    box-sizing: border-box !important;
}

.granat-new-hero-bg {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 18% 36%, rgba(181,31,57,.45), transparent 27%),
        radial-gradient(circle at 76% 24%, rgba(181,31,57,.22), transparent 25%),
        radial-gradient(circle at 62% 72%, rgba(255,255,255,.07), transparent 28%),
        linear-gradient(115deg, #030304 0%, #10070b 47%, #030304 100%) !important;
}

.granat-new-hero-bg:before {
    content: "";
    position: absolute;
    inset: -40%;
    opacity: .2;
    background-image:
        linear-gradient(rgba(255,255,255,.09) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.09) 1px, transparent 1px);
    background-size: 92px 92px;
    transform: rotate(-10deg);
    animation: granatGridMove 30s linear infinite;
}

.granat-new-hero-bg:after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(0,0,0,.74) 0%, rgba(0,0,0,.34) 48%, rgba(0,0,0,.82) 100%),
        radial-gradient(circle at center, transparent 0%, rgba(0,0,0,.44) 72%);
}

.granat-new-hero-orbit {
    position: absolute;
    right: -105px;
    top: 50%;
    width: 560px;
    height: 560px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    transform: translateY(-50%);
    z-index: 2;
    opacity: .72;
    animation: granatOrbit 22s linear infinite;
}

.granat-new-hero-orbit:before,
.granat-new-hero-orbit:after {
    content: "";
    position: absolute;
    border-radius: 50%;
}

.granat-new-hero-orbit:before {
    inset: 72px;
    border: 1px solid rgba(181,31,57,.34);
}

.granat-new-hero-orbit:after {
    width: 13px;
    height: 13px;
    left: 50%;
    top: -7px;
    background: #b51f39;
    box-shadow: 0 0 26px rgba(181,31,57,.95);
}

.granat-new-hero-code-lines {
    position: absolute;
    right: 5%;
    top: 18%;
    width: 360px;
    z-index: 3;
    opacity: .3;
    pointer-events: none;
}

.granat-new-hero-code-lines span {
    display: block;
    height: 12px;
    margin-bottom: 16px;
    border-radius: 99px;
    background: linear-gradient(90deg, rgba(181,31,57,.95), rgba(255,255,255,.34), transparent);
    animation: granatCodeLine 4.8s ease-in-out infinite;
}

.granat-new-hero-code-lines span:nth-child(2) {
    width: 72%;
    margin-left: 18%;
    animation-delay: .4s;
}

.granat-new-hero-code-lines span:nth-child(3) {
    width: 54%;
    margin-left: 8%;
    animation-delay: .8s;
}

.granat-new-hero-code-lines span:nth-child(4) {
    width: 84%;
    margin-left: 12%;
    animation-delay: 1.2s;
}

.granat-new-hero-code-lines span:nth-child(5) {
    width: 62%;
    margin-left: 28%;
    animation-delay: 1.6s;
}

.granat-new-hero-inner {
    position: relative !important;
    z-index: 5 !important;
    width: 100% !important;
    max-width: 1340px !important;
    margin: 0 auto !important;
    padding: 110px 24px 92px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) 430px !important;
    gap: 58px !important;
    align-items: center !important;
}

.granat-new-hero-content {
    max-width: 800px !important;
}

.granat-new-hero-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin-bottom: 28px !important;
    padding: 11px 17px !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    border-radius: 99px !important;
    background: rgba(255,255,255,.055) !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    backdrop-filter: blur(12px) !important;
}

.granat-new-hero-kicker:before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #b51f39;
    box-shadow: 0 0 18px rgba(181,31,57,.95);
}

.granat-new-hero-title {
    margin: 0 0 24px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: clamp(56px, 5.5vw, 92px) !important;
    line-height: .96 !important;
    letter-spacing: -0.065em !important;
    font-weight: 800 !important;
    text-transform: none !important;
}

.granat-new-hero-prefix {
    display: block !important;
    color: rgba(255,255,255,.9) !important;
    font-size: .42em !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
    font-weight: 500 !important;
    margin-bottom: 16px !important;
}

.granat-new-hero-code-title {
    display: block !important;
    min-height: 1.05em !important;
    color: #fff !important;
    font-family: inherit !important;
    text-shadow: 0 0 36px rgba(181,31,57,.28) !important;
}

.granat-code-symbol {
    color: #b51f39 !important;
    text-shadow: 0 0 24px rgba(181,31,57,.75) !important;
}

.granat-new-hero-subtitle {
    max-width: 620px !important;
    margin-top: 18px !important;
    color: rgba(255,255,255,.74) !important;
    font-size: 19px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

.granat-new-hero-cursor {
    display: inline-block !important;
    width: .08em !important;
    height: .82em !important;
    margin-left: .06em !important;
    background: #b51f39 !important;
    box-shadow: 0 0 18px rgba(181,31,57,.9) !important;
    vertical-align: -.08em !important;
    animation: granatCursor 1s steps(1) infinite !important;
}

/* Buttons from old banner — forced new style */
.granat-new-hero-buttons {
    margin-top: 38px !important;
}

.granat-new-hero-buttons .button-list,
.granat-new-hero-buttons ul,
.granat-new-hero-buttons div {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.granat-new-hero-buttons a,
.granat-new-hero-buttons button {
    min-width: 218px !important;
    min-height: 58px !important;
    padding: 0 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    background: rgba(255,255,255,.055) !important;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease !important;
}

.granat-new-hero-buttons a:first-child,
.granat-new-hero-buttons button:first-child {
    background: #b51f39 !important;
    border-color: #b51f39 !important;
    color: #fff !important;
    box-shadow: 0 16px 46px rgba(181,31,57,.28) !important;
}

.granat-new-hero-buttons a:hover,
.granat-new-hero-buttons button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 18px 46px rgba(181,31,57,.26) !important;
    color: #fff !important;
}

.granat-new-hero-card {
    position: relative !important;
    min-height: 420px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 30px !important;
    background: rgba(255,255,255,.055) !important;
    box-shadow: 0 34px 90px rgba(0,0,0,.38) !important;
    backdrop-filter: blur(18px) !important;
    overflow: hidden !important;
}

.granat-new-hero-card:before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 30% 16%, rgba(181,31,57,.38), transparent 28%),
        linear-gradient(135deg, rgba(255,255,255,.08), transparent 42%);
}

.granat-new-hero-window {
    position: absolute !important;
    inset: 22px !important;
    border-radius: 22px !important;
    background: rgba(5,5,8,.78) !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    overflow: hidden !important;
}

.granat-new-hero-window-top {
    height: 46px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 16px !important;
}

.granat-new-hero-window-top i {
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.22) !important;
}

.granat-new-hero-window-top i:first-child {
    background: #b51f39 !important;
    box-shadow: 0 0 16px rgba(181,31,57,.85) !important;
}

.granat-new-hero-code {
    padding: 25px 22px !important;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 14px !important;
    line-height: 1.9 !important;
    color: rgba(255,255,255,.72) !important;
}

.granat-new-hero-code div {
    transform: translateY(12px);
    opacity: 0;
    animation: granatCodeAppear .7s ease forwards;
}

.granat-new-hero-code div:nth-child(2) { animation-delay: .18s; }
.granat-new-hero-code div:nth-child(3) { animation-delay: .36s; }
.granat-new-hero-code div:nth-child(4) { animation-delay: .54s; }
.granat-new-hero-code div:nth-child(5) { animation-delay: .72s; }
.granat-new-hero-code div:nth-child(6) { animation-delay: .9s; }

.granat-code-red {
    color: #ff6b86 !important;
}

.granat-code-white {
    color: #fff !important;
}

.granat-code-muted {
    color: rgba(255,255,255,.42) !important;
}

@keyframes granatGridMove {
    0% { transform: translate3d(0,0,0) rotate(-10deg); }
    100% { transform: translate3d(92px,92px,0) rotate(-10deg); }
}

@keyframes granatOrbit {
    0% { transform: translateY(-50%) rotate(0deg); }
    100% { transform: translateY(-50%) rotate(360deg); }
}

@keyframes granatCodeLine {
    0%, 100% { opacity: .22; transform: translateX(0); }
    50% { opacity: .72; transform: translateX(-24px); }
}

@keyframes granatCursor {
    0%, 48% { opacity: 1; }
    49%, 100% { opacity: 0; }
}

@keyframes granatCodeAppear {
    to { opacity: 1; transform: translateY(0); }
}

@media all and (max-width: 1100px) {
    .granat-new-hero-inner {
        grid-template-columns: 1fr !important;
        gap: 38px !important;
    }

    .granat-new-hero-card {
        max-width: 560px !important;
    }

    .granat-new-hero-orbit {
        right: -220px !important;
        opacity: .45 !important;
    }
}

@media all and (max-width: 767px) {
    .granat-new-hero {
        min-height: 690px !important;
    }

    .granat-new-hero-inner {
        padding: 86px 18px 58px !important;
    }

    .granat-new-hero-kicker {
        font-size: 12px !important;
        margin-bottom: 20px !important;
    }

    .granat-new-hero-title {
        font-size: clamp(38px, 12vw, 56px) !important;
        line-height: 1.03 !important;
        margin-bottom: 20px !important;
    }

    .granat-new-hero-prefix {
        font-size: .48em !important;
        margin-bottom: 12px !important;
    }

    .granat-new-hero-subtitle {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    .granat-new-hero-buttons {
        margin-top: 28px !important;
    }

    .granat-new-hero-buttons .button-list,
    .granat-new-hero-buttons ul,
    .granat-new-hero-buttons div {
        gap: 11px !important;
    }

    .granat-new-hero-buttons a,
    .granat-new-hero-buttons button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 52px !important;
        font-size: 15px !important;
    }

    .granat-new-hero-card {
        min-height: 295px !important;
        border-radius: 22px !important;
    }

    .granat-new-hero-window {
        inset: 14px !important;
        border-radius: 17px !important;
    }

    .granat-new-hero-code {
        font-size: 12px !important;
        line-height: 1.75 !important;
        padding: 19px 15px !important;
    }

    .granat-new-hero-code-lines {
        right: -15% !important;
        width: 280px !important;
        opacity: .18 !important;
    }

    .granat-new-hero-orbit {
        width: 420px !important;
        height: 420px !important;
        right: -250px !important;
        top: 32% !important;
    }
}

@media all and (max-width: 420px) {
    .granat-new-hero {
        min-height: 660px !important;
    }

    .granat-new-hero-inner {
        padding-top: 78px !important;
    }
}

/* ===== New hero dynamic improvements ===== */

/* Bigger bold code brackets near heading */
.granat-new-hero .granat-code-symbol {
    display: inline-block !important;
    color: #b51f39 !important;
    font-size: 1.18em !important;
    line-height: .78 !important;
    font-weight: 950 !important;
    letter-spacing: -.08em !important;
    text-shadow:
        0 0 10px rgba(181,31,57,.85),
        0 0 34px rgba(181,31,57,.55),
        0 0 70px rgba(181,31,57,.28) !important;
    transform: translateY(.03em) !important;
}

.granat-new-hero .granat-code-symbol:first-child {
    margin-right: .08em !important;
}

.granat-new-hero .granat-code-symbol:last-child {
    margin-left: .08em !important;
}

/* Dynamic code rows */
.granat-new-hero-code {
    min-height: 250px !important;
}

.granat-new-hero-code .granat-code-row {
    min-height: 26px !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    position: relative !important;
}

.granat-new-hero-code .granat-code-row.is-typing:after {
    content: "";
    display: inline-block;
    width: 7px;
    height: 1.15em;
    margin-left: 5px;
    background: #b51f39;
    box-shadow: 0 0 15px rgba(181,31,57,.95);
    vertical-align: -.18em;
    animation: granatCursor 1s steps(1) infinite;
}

.granat-new-hero-window:after {
    content: "";
    position: absolute;
    left: 0;
    top: 46px;
    width: 100%;
    height: 46px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(181,31,57,.13), transparent);
    opacity: .65;
    animation: granatScanner 3.8s ease-in-out infinite;
}

/* More dynamic background elements */
.granat-new-hero-bg {
    background:
        radial-gradient(circle at 18% 36%, rgba(181,31,57,.52), transparent 27%),
        radial-gradient(circle at 78% 24%, rgba(181,31,57,.28), transparent 25%),
        radial-gradient(circle at 54% 74%, rgba(255,255,255,.08), transparent 28%),
        linear-gradient(115deg, #030304 0%, #14070d 47%, #030304 100%) !important;
}

.granat-new-hero-bg .dummy {
    display: none;
}

.granat-new-hero:before {
    content: "";
    position: absolute;
    z-index: 2;
    left: -12%;
    top: 18%;
    width: 56%;
    height: 42%;
    border-radius: 999px;
    background: radial-gradient(ellipse at center, rgba(181,31,57,.21), transparent 66%);
    filter: blur(30px);
    opacity: .75;
    transform: rotate(-13deg);
    animation: granatHeroGlowFloat 8s ease-in-out infinite alternate;
    pointer-events: none;
}

.granat-new-hero:after {
    content: "";
    position: absolute;
    z-index: 2;
    right: 8%;
    bottom: 10%;
    width: 32%;
    height: 28%;
    border-radius: 999px;
    background: radial-gradient(ellipse at center, rgba(255,255,255,.075), transparent 70%);
    filter: blur(34px);
    opacity: .65;
    animation: granatHeroGlowFloat2 10s ease-in-out infinite alternate;
    pointer-events: none;
}

/* Floating small tech tags */
.granat-new-hero-floating {
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
    overflow: hidden;
}

.granat-new-hero-floating i {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 62px;
    height: 31px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.1);
    background: rgba(255,255,255,.045);
    color: rgba(255,255,255,.34);
    font-style: normal;
    font-size: 12px;
    line-height: 1;
    letter-spacing: .02em;
    backdrop-filter: blur(8px);
    animation: granatFloatTag 9s ease-in-out infinite alternate;
}

.granat-new-hero-floating i:nth-child(1) {
    left: 8%;
    top: 22%;
    animation-delay: .2s;
}

.granat-new-hero-floating i:nth-child(2) {
    left: 38%;
    top: 15%;
    color: rgba(181,31,57,.56);
    animation-delay: 1s;
}

.granat-new-hero-floating i:nth-child(3) {
    right: 33%;
    top: 73%;
    animation-delay: 1.8s;
}

.granat-new-hero-floating i:nth-child(4) {
    right: 10%;
    top: 31%;
    color: rgba(181,31,57,.58);
    animation-delay: 2.6s;
}

.granat-new-hero-floating i:nth-child(5) {
    left: 48%;
    bottom: 16%;
    animation-delay: 3.4s;
}

.granat-new-hero-floating i:nth-child(6) {
    left: 18%;
    bottom: 19%;
    color: rgba(181,31,57,.54);
    animation-delay: 4.2s;
}

/* More alive card */
.granat-new-hero-card {
    transform: translateZ(0);
    animation: granatCardFloat 6s ease-in-out infinite alternate !important;
}

.granat-new-hero-card:after {
    content: "";
    position: absolute;
    inset: -40%;
    background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.13), transparent 58%);
    transform: translateX(-60%) rotate(12deg);
    animation: granatCardShine 5.5s ease-in-out infinite;
    pointer-events: none;
}

@keyframes granatScanner {
    0% {
        transform: translateY(0);
        opacity: 0;
    }
    18% {
        opacity: .7;
    }
    100% {
        transform: translateY(260px);
        opacity: 0;
    }
}

@keyframes granatHeroGlowFloat {
    0% {
        transform: translate3d(0,0,0) rotate(-13deg) scale(1);
        opacity: .55;
    }
    100% {
        transform: translate3d(5%,8%,0) rotate(-8deg) scale(1.12);
        opacity: .9;
    }
}

@keyframes granatHeroGlowFloat2 {
    0% {
        transform: translate3d(0,0,0) scale(1);
        opacity: .45;
    }
    100% {
        transform: translate3d(-6%,-10%,0) scale(1.18);
        opacity: .78;
    }
}

@keyframes granatFloatTag {
    0% {
        transform: translate3d(0,0,0);
        opacity: .28;
    }
    50% {
        opacity: .62;
    }
    100% {
        transform: translate3d(22px,-26px,0);
        opacity: .42;
    }
}

@keyframes granatCardFloat {
    0% {
        transform: translate3d(0,0,0);
    }
    100% {
        transform: translate3d(0,-12px,0);
    }
}

@keyframes granatCardShine {
    0%, 42% {
        transform: translateX(-70%) rotate(12deg);
        opacity: 0;
    }
    58% {
        opacity: .45;
    }
    100% {
        transform: translateX(70%) rotate(12deg);
        opacity: 0;
    }
}

@media all and (max-width: 767px) {
    .granat-new-hero .granat-code-symbol {
        font-size: 1.08em !important;
    }

    .granat-new-hero-floating i {
        font-size: 10px;
        height: 27px;
        min-width: 48px;
        opacity: .55;
    }

    .granat-new-hero-floating i:nth-child(1),
    .granat-new-hero-floating i:nth-child(2),
    .granat-new-hero-floating i:nth-child(5) {
        display: none;
    }

    .granat-new-hero-code {
        min-height: 220px !important;
    }

    .granat-new-hero-code .granat-code-row {
        min-height: 22px !important;
    }
}

/* ===== Fix hero title jumping + hide code card on mobile ===== */

/* Desktop: keep typed heading stable in one line */
@media all and (min-width: 768px) {
    .granat-new-hero-content {
        max-width: 880px !important;
        min-width: 0 !important;
    }

    .granat-new-hero-title {
        font-size: clamp(48px, 4.35vw, 74px) !important;
        line-height: 1 !important;
        min-height: 1.72em !important;
        margin-bottom: 24px !important;
    }

    .granat-new-hero-code-title {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        min-height: 1.08em !important;
        max-width: 100% !important;
    }

    .granat-new-hero-typed {
        display: inline-block !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }

    .granat-new-hero .granat-code-symbol {
        flex: 0 0 auto !important;
        font-size: 1.08em !important;
        line-height: 1 !important;
    }
}

/* Medium screens: make title a bit smaller so long words do not jump */
@media all and (min-width: 768px) and (max-width: 1280px) {
    .granat-new-hero-inner {
        grid-template-columns: minmax(0, 1fr) 390px !important;
        gap: 36px !important;
    }

    .granat-new-hero-title {
        font-size: clamp(42px, 4vw, 60px) !important;
    }

    .granat-new-hero-card {
        min-height: 380px !important;
    }
}

/* Mobile: hide right code card completely and reserve space for title */
@media all and (max-width: 767px) {
    .granat-new-hero {
        min-height: 620px !important;
    }

    .granat-new-hero-inner {
        grid-template-columns: 1fr !important;
        padding: 92px 18px 64px !important;
        gap: 0 !important;
    }

    .granat-new-hero-card {
        display: none !important;
    }

    .granat-new-hero-orbit {
        display: none !important;
    }

    .granat-new-hero-code-lines {
        opacity: .12 !important;
        right: -25% !important;
        top: 18% !important;
    }

    .granat-new-hero-title {
        font-size: clamp(36px, 10.8vw, 48px) !important;
        line-height: 1.04 !important;
        min-height: 3.05em !important;
        margin-bottom: 18px !important;
    }

    .granat-new-hero-prefix {
        min-height: 1.05em !important;
        margin-bottom: 12px !important;
    }

    .granat-new-hero-code-title {
        display: block !important;
        min-height: 2.15em !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .granat-new-hero-typed {
        display: inline !important;
    }

    .granat-new-hero .granat-code-symbol {
        font-size: .95em !important;
        line-height: 1 !important;
        vertical-align: baseline !important;
    }

    .granat-new-hero-subtitle {
        min-height: 1.6em !important;
    }
}

/* Very small mobile */
@media all and (max-width: 420px) {
    .granat-new-hero {
        min-height: 600px !important;
    }

    .granat-new-hero-inner {
        padding-top: 82px !important;
    }

    .granat-new-hero-title {
        font-size: clamp(32px, 10.2vw, 42px) !important;
        min-height: 3.12em !important;
    }
}

/* ===== Mobile hero compact layout + square buttons ===== */
@media all and (max-width: 767px) {

    .granat-new-hero {
        min-height: 560px !important;
        height: auto !important;
        display: flex !important;
        align-items: flex-start !important;
    }

    .granat-new-hero-inner {
        min-height: 560px !important;
        padding: 58px 18px 42px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        gap: 0 !important;
    }

    .granat-new-hero-content {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        min-height: 460px !important;
    }

    .granat-new-hero-kicker {
        margin-bottom: 26px !important;
        max-width: 100% !important;
        font-size: 12px !important;
        padding: 10px 14px !important;
    }

    .granat-new-hero-title {
        margin-top: 0 !important;
        margin-bottom: 14px !important;
        font-size: clamp(31px, 9.2vw, 40px) !important;
        line-height: 1.03 !important;
        min-height: 2.65em !important;
        letter-spacing: -0.055em !important;
    }

    .granat-new-hero-prefix {
        margin-bottom: 10px !important;
        font-size: .52em !important;
    }

    .granat-new-hero-code-title {
        min-height: 1.9em !important;
    }

    .granat-new-hero-subtitle {
        margin-top: 4px !important;
        font-size: 15px !important;
        line-height: 1.45 !important;
        min-height: auto !important;
    }

    .granat-new-hero-buttons {
        margin-top: auto !important;
        padding-top: 28px !important;
        width: 100% !important;
    }

    .granat-new-hero-buttons .button-list,
    .granat-new-hero-buttons ul,
    .granat-new-hero-buttons div {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .granat-new-hero-buttons a,
    .granat-new-hero-buttons button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 54px !important;
        height: 54px !important;
        border-radius: 0 !important;
        padding: 0 18px !important;
        font-size: 15px !important;
        font-weight: 700 !important;
    }

    .granat-new-hero-card,
    .granat-new-hero-orbit {
        display: none !important;
    }
}

/* Very small mobile */
@media all and (max-width: 420px) {
    .granat-new-hero {
        min-height: 540px !important;
    }

    .granat-new-hero-inner {
        min-height: 540px !important;
        padding-top: 52px !important;
        padding-bottom: 36px !important;
    }

    .granat-new-hero-content {
        min-height: 445px !important;
    }

    .granat-new-hero-title {
        font-size: clamp(29px, 8.8vw, 37px) !important;
        min-height: 2.65em !important;
    }

    .granat-new-hero-buttons {
        padding-top: 22px !important;
    }
}

/* ===== Mobile hero: compact title gap + kicker width by text ===== */
@media all and (max-width: 767px) {

    .granat-new-hero-kicker {
        display: inline-flex !important;
        width: auto !important;
        max-width: max-content !important;
        align-self: flex-start !important;
        margin-bottom: 22px !important;
        padding: 10px 16px !important;
    }

    .granat-new-hero-title {
        margin-bottom: 6px !important;
        min-height: 2.15em !important;
    }

    .granat-new-hero-code-title {
        min-height: 1.35em !important;
        margin-bottom: 0 !important;
    }

    .granat-new-hero-typed {
        display: inline !important;
    }

    .granat-new-hero-subtitle {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .granat-new-hero-buttons {
        padding-top: 18px !important;
    }

    /* прибираємо можливий зайвий контур/рамку після заголовка */
    .granat-new-hero-title,
    .granat-new-hero-code-title,
    .granat-new-hero-typed {
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }
}

/* Very small mobile */
@media all and (max-width: 420px) {

    .granat-new-hero-kicker {
        margin-bottom: 20px !important;
        padding: 9px 14px !important;
    }

    .granat-new-hero-title {
        margin-bottom: 4px !important;
        min-height: 2.1em !important;
    }

    .granat-new-hero-buttons {
        padding-top: 16px !important;
    }
}

/* ===== New hero buttons: no radius on desktop and mobile ===== */
.granat-new-hero .granat-new-hero-buttons a,
.granat-new-hero .granat-new-hero-buttons button {
    border-radius: 0 !important;
}

/* Also override any old button classes inside cloned button-list */
.granat-new-hero .button-list a,
.granat-new-hero .button-list button,
.granat-new-hero a.btn,
.granat-new-hero .btn {
    border-radius: 0 !important;
}
