/**
 * Balanced Bangla hero typography, loaded after the main theme bundle.
 * Shared grid sizing gives every slide the height required by the longest copy,
 * including dashboard edits, without cropping text or moving the next section.
 */
.dtbl-slider {
    --dtbl-hero-min-height: 570px;
    height: auto;
    min-height: var(--dtbl-hero-min-height);
}

.dtbl-slider .dtbl-slider__slides {
    display: grid;
    min-height: inherit;
}

.dtbl-slider .dtbl-slider__slide {
    position: relative;
    inset: auto;
    grid-area: 1 / 1;
    min-width: 0;
    min-height: var(--dtbl-hero-min-height);
    transform: none;
}

.dtbl-slider .dtbl-slider__container {
    width: min(calc(100% - 152px), 1200px);
}

.dtbl-slider .dtbl-slider__content {
    width: min(100%, 700px);
    margin: 0;
    padding: 68px 0 90px;
    text-align: left;
}

.dtbl-slider .dtbl-slider__eyebrow {
    gap: 10px;
    margin: 0 0 18px;
    font-size: 12px;
    line-height: 1.6;
    letter-spacing: 0.14em;
}

.dtbl-slider .dtbl-slider__eyebrow::before {
    flex: 0 0 28px;
}

.dtbl-slider .dtbl-slider__title {
    max-width: 700px;
    min-height: 2.48em;
    margin: 0;
    font-family: "Hind Siliguri", "Noto Sans Bengali", sans-serif;
    font-size: clamp(42px, 4.05vw, 58px);
    font-weight: 700;
    line-height: 1.24;
    letter-spacing: 0;
    text-wrap: balance;
    overflow-wrap: break-word;
    word-break: normal;
}

.dtbl-slider .dtbl-slider__title-line {
    display: block;
}

.dtbl-slider .dtbl-slider__subtitle {
    max-width: 560px;
    min-height: 3.3em;
    margin: 18px 0 0;
    font-family: "Hind Siliguri", "Noto Sans Bengali", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.65;
    letter-spacing: 0;
    color: rgba(255, 255, 255, 0.9);
    text-wrap: pretty;
    overflow-wrap: break-word;
}

.dtbl-slider .dtbl-slider__actions {
    margin-top: 26px;
}

.dtbl-slider .dtbl-slider__cta {
    min-width: 154px;
    min-height: 50px;
    gap: 12px;
    padding: 10px 22px;
    font-family: "Hind Siliguri", "Noto Sans Bengali", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

.dtbl-slider .dtbl-slider__arrow {
    width: 44px;
    height: 44px;
}

.dtbl-slider .dtbl-slider__dots {
    bottom: 20px;
    gap: 7px;
}

.dtbl-slider .dtbl-slider__dot {
    width: 32px;
    height: 32px;
}

.dtbl-slider .dtbl-slider__dot::before {
    left: 3px;
    width: calc(100% - 6px);
}

@media (max-width: 1100px) {
    .dtbl-slider {
        --dtbl-hero-min-height: 530px;
    }

    .dtbl-slider .dtbl-slider__container {
        width: calc(100% - 132px);
    }

    .dtbl-slider .dtbl-slider__content {
        padding-top: 58px;
        padding-bottom: 84px;
    }
}

@media (max-width: 900px) {
    .dtbl-slider {
        --dtbl-hero-min-height: 510px;
    }

    .dtbl-slider .dtbl-slider__content {
        margin-inline: auto;
        text-align: center;
    }

    .dtbl-slider .dtbl-slider__title {
        margin-inline: auto;
        font-size: clamp(36px, 5.4vw, 46px);
    }

    .dtbl-slider .dtbl-slider__eyebrow,
    .dtbl-slider .dtbl-slider__actions {
        justify-content: center;
    }

    .dtbl-slider .dtbl-slider__subtitle {
        margin-inline: auto;
        font-size: 17px;
    }
}

@media (max-width: 600px) {
    .dtbl-slider {
        --dtbl-hero-min-height: 480px;
    }

    .dtbl-slider .dtbl-slider__container {
        width: calc(100% - 40px);
    }

    .dtbl-slider .dtbl-slider__content {
        padding: 46px 0 100px;
    }

    .dtbl-slider .dtbl-slider__eyebrow {
        margin-bottom: 16px;
        font-size: 10px;
        letter-spacing: 0.1em;
    }

    .dtbl-slider .dtbl-slider__title {
        max-width: 460px;
        font-size: clamp(30px, 7.8vw, 40px);
        line-height: 1.28;
        min-height: 2.56em;
    }

    .dtbl-slider .dtbl-slider__subtitle {
        max-width: 420px;
        min-height: 4.95em;
        margin-top: 16px;
        font-size: 16px;
    }

    .dtbl-slider .dtbl-slider__actions {
        margin-top: 22px;
    }

    .dtbl-slider .dtbl-slider__cta {
        min-height: 48px;
        font-size: 15px;
    }

    .dtbl-slider .dtbl-slider__arrow {
        bottom: 15px;
    }

    .dtbl-slider .dtbl-slider__dots {
        bottom: 21px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dtbl-slider .dtbl-slider__title,
    .dtbl-slider .dtbl-slider__subtitle,
    .dtbl-slider .dtbl-slider__eyebrow,
    .dtbl-slider .dtbl-slider__actions {
        animation: none;
        opacity: 1;
        transform: none;
    }
}
