/**
 * Mobile + cross-viewport fixes
 * Loaded AFTER visual-editor-overrides.css.
 * High-specificity selectors match the auto-generated VE rules so we win the cascade.
 *
 * Generated by autonomous bug hunt 2026-04-26
 */

/* ============================================================
   Bug #M-B1: Hero H1 inline left:-48px clips heading off mobile
   ============================================================ */
@media (max-width: 991px) {
    div.main-slider-two__item > div.main-slider-two__wrapper.container > div.main-slider-two__left > div.main-slider-two__content > div.flex.flex-col > h1.text-brand-sky.text-glow {
        position: static !important;
        left: 0 !important;
        top: 0 !important;
    }
    div.main-slider-two__item > div.main-slider-two__wrapper.container > div.main-slider-two__left > div.main-slider-two__content > div.flex.flex-col > h1.text-brand-sky.text-glow > span.text-brand-text.opacity-90 {
        position: static !important;
        left: 0 !important;
        top: 0 !important;
    }
    div.main-slider-two__item > div.main-slider-two__wrapper.container > div.main-slider-two__left > div.main-slider-two__content > div.flex.flex-col > p.text-xl.leading-relaxed {
        position: static !important;
        left: 0 !important;
        top: 0 !important;
    }
}

/* ============================================================
   Bug #M-B-br: <br> in headings/paragraphs is set to display:none
   somewhere, so author-intended line breaks are gone and text
   re-wraps to look like glued words ("BYDOPSklo", "výrobyod").
   Restore default br behaviour everywhere.
   ============================================================ */
br {
    display: initial !important;
}

/* ============================================================
   Bug #VE-1: section-space pinned to 1663px breaks every viewport
   narrower than 1663px.
   ============================================================ */
section.section-space[style*="width"],
section.section-space,
div.page-wrapper > section.section-space {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
}

/* ============================================================
   Bug #VE-2: ve-shape-* decoratives bleed off-screen on mobile
   ============================================================ */
@media (max-width: 768px) {
    [id^="ve-shape-"] {
        display: none !important;
    }
}

/* ============================================================
   Bug #B-overflow: defensive — kill horizontal scroll
   ============================================================ */
html, body {
    overflow-x: hidden;
    max-width: 100%;
}

/* ============================================================
   Bug #B2 (desktop): About section's worker-3 floating image
   uses right:-170px which bleeds 170px past parent's right edge
   into the right-column text. Clamp the overflow.
   ============================================================ */
@media (min-width: 992px) {
    .about-two__image__inner__inner {
        right: -30px !important;
    }
}

/* ============================================================
   Bug #B3: Portfolio service cards have CTA buttons unaligned
   because text paragraphs differ in length. Use flex-column
   pattern with margin-top:auto on the button to push it to
   the bottom of every card regardless of text height.
   ============================================================ */
.service-card {
    display: flex !important;
    flex-direction: column !important;
}
.service-card__content {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    align-items: flex-start !important;
}
.service-card__btn {
    margin-top: auto !important;
}
