/* BD IT Home - Modern Hero Banner 1.2.1. Always boxed within theme site-wrapper. */
.bdhero {
    position: relative;
    isolation: isolate;
    width: 100% !important;
    max-width: 1320px !important;
    left: auto !important;
    right: auto !important;
    margin: 0 auto !important;
    height: var(--bdhero-h-desktop, 560px);
    min-height: 320px;
    margin: 0 auto;
    overflow: hidden;
    background: #172832;
    color: #fff;
    font-family: 'Ruposhi Bangla', 'Noto Sans Bengali', system-ui, sans-serif;
}
/* Override any previously cached full-bleed class or old stylesheet rule. */
#bdithome-modern-hero.bdhero--full,
#bdithome-modern-hero.bdhero--boxed {
    width: 100% !important;
    max-width: 1320px !important;
    left: auto !important;
    right: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.site-wrapper #bdithome-modern-hero {
    max-width: 100% !important;
}
.bdhero * { box-sizing: border-box; }
.bdhero-track, .bdhero-slide, .bdhero-scrim, .bdhero-content-wrap {
    position: absolute;
    inset: 0;
}
.bdhero-slide {
    display: block;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 0;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    /* Hide the outgoing slide instantly: never overlay two headings/buttons. */
    transition: opacity .45s ease;
}
.bdhero-slide.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: 1;
}
.bdhero-scrim {
    background: linear-gradient(90deg,
        rgba(5, 12, 23, var(--bdhero-overlay, .58)) 0%,
        rgba(5, 12, 23, var(--bdhero-overlay-mid, .52)) 42%,
        rgba(5, 12, 23, var(--bdhero-overlay-far, .47)) 100%);
    z-index: 0;
}
.bdhero-content-wrap {
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 38px clamp(52px, 9%, 128px);
}
.bdhero-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: min(780px, 90%);
    transform: translateY(-9px);
    text-align: left;
    color: #fff;
}
.bdhero-badge {
    font-family: Arial, system-ui, sans-serif !important;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: auto;
    max-width: 100%;
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 100px;
    padding: 7px 13px;
    background: rgba(65, 67, 72, .48);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
    color: #fff !important;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03px;
    overflow-wrap: anywhere;
}
.bdhero-cap { color: #fff; font-size: 14px; line-height: 1; flex-shrink: 0; }
.bdhero-headline {
    margin: 13px 0 20px !important;
    max-width: 780px;
    font-family: 'Ruposhi Bangla', 'Noto Sans Bengali', sans-serif !important;
    font-size: clamp(35px, 3.9vw, 57px) !important;
    line-height: 1.12 !important;
    letter-spacing: -.8px;
    font-weight: 700 !important;
    text-wrap: balance;
    color: #fff !important;
    text-shadow: 0 2px 5px rgba(0,0,0,.30);
}
.bdhero-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 47px;
    background: #7c3aed;
    border-radius: 8px;
    padding: 10px 25px;
    border: 1px solid rgba(255,255,255,.10);
    box-shadow: 0 9px 21px rgba(60,20,130,.33);
    color: #fff !important;
    font-family: 'Ruposhi Bangla', 'Noto Sans Bengali', system-ui, sans-serif !important;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    text-decoration: none !important;
    transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.bdhero-cta[href]:hover, .bdhero-cta[href]:focus-visible {
    background: #6930d3;
    transform: translateY(-2px);
    box-shadow: 0 12px 25px rgba(60,20,130,.40);
}
.bdhero-cta--demo { cursor: default; }
.bdhero-cta-arrow { font-family: system-ui, sans-serif !important; font-size: 23px; line-height: .8; }
.bdhero-arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.55);
    background: rgba(27, 36, 47, .43);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    transform: translateY(-50%);
    color: #fff;
    cursor: pointer;
    padding: 0;
    transition: background .2s ease, border-color .2s ease;
}
.bdhero-arrow:hover, .bdhero-arrow:focus-visible { background: rgba(85,64,120,.72); border-color:#fff; }
.bdhero-arrow span { font-family: Arial, sans-serif !important; font-size: 38px; font-weight: 300; line-height: 31px; transform: translateY(-2px); }
.bdhero-prev { left: 12px; }
.bdhero-next { right: 12px; }
.bdhero-dots {
    position: absolute;
    left: 50%;
    bottom: 20px;
    z-index: 12;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}
.bdhero-dot {
    appearance: none;
    width: 10px;
    height: 10px;
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 40px;
    background: rgba(255,255,255,.32);
    cursor: pointer;
    transition: width .2s ease, background .2s ease;
    padding: 0;
}
.bdhero-dot.is-active { width: 26px; background: #fff; border-color: #fff; }
.bdhero-dot:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (max-width: 767px) {
    .bdhero { height: var(--bdhero-h-mobile, 460px); }
    .bdhero-content-wrap { padding: 36px 26px 55px; align-items: center; }
    .bdhero-content { width: 100%; max-width: 100%; transform: none; }
    .bdhero-badge { font-size: 9.5px; padding: 8px 9px; gap: 5px; }
    .bdhero-headline { font-size: clamp(29px, 8vw, 40px) !important; line-height: 1.25 !important; margin: 14px 0 19px !important; }
    .bdhero-cta { font-size: 17px; padding: 9px 17px; min-height: 43px; }
    .bdhero-arrow { width: 34px; height: 34px; top: auto; bottom: 8px; transform: none; }
    .bdhero-arrow span { font-size: 29px; line-height: 28px; }
    .bdhero-prev { left: 15px; }
    .bdhero-next { right: 15px; }
    .bdhero-dots { bottom: 19px; }
}
@media (max-width: 380px) {
    .bdhero-content-wrap { padding-inline: 23px; }
    .bdhero-badge { font-size: 9px; }
    .bdhero-headline { font-size: 29px !important; }
}
@media (prefers-reduced-motion: reduce) {
    .bdhero-slide, .bdhero-cta, .bdhero-arrow, .bdhero-dot { transition: none !important; }
}

/* Only displayed with ?bdhero_debug=1 to administrators. */
.bdhero-debug-pill { position: fixed; bottom: 18px; left: 18px; z-index: 2147483000; max-width: min(510px, calc(100vw - 36px)); border-radius: 10px; padding: 11px 15px; background: #052e29; color: white !important; border: 1px solid #34d399; font: 13px/1.5 system-ui, sans-serif; box-shadow: 0 8px 24px rgba(0,0,0,.28); }
.bdhero-debug-pill[data-error="1"] { background: #7f1d1d; border-color: #f87171; }
