/**
 * HandlaOnline — Porto carousel section tweaks (CMS)
 */

.section-carousel .owl-carousel,
.section-carousel .owl-carousel.owl-loaded {
    opacity: 1 !important;
}

.section-carousel.ho-carousel-fullwidth {
    overflow: hidden;
}

.section-carousel.ho-carousel-fullwidth .ho-carousel-fullwidth__wrapper {
    width: 100%;
}

.section-carousel.ho-carousel-fullwidth .owl-carousel .owl-item {
    min-height: inherit;
}

.section-carousel.ho-carousel-fullwidth .ho-carousel-fw-slide {
    position: relative;
    width: 100%;
}

.section-carousel.ho-carousel-fullwidth .ho-carousel-fw-slide__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.section-carousel.ho-carousel-fullwidth .ho-carousel-fw-slide__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.section-carousel.ho-carousel-fullwidth .ho-carousel-fw-slide__content {
    position: relative;
    z-index: 2;
}

.section-carousel.ho-carousel-fullwidth .owl-nav button {
    opacity: 1;
}

.section-carousel .owl-carousel.owl-loading:not(.owl-carousel-init):not(.owl-loaded) {
    opacity: 1 !important;
    min-height: 120px;
}

.section-carousel.ho-carousel-fullwidth .owl-carousel:not(.owl-loaded) > .ho-carousel-fw-slide:not(:first-child) {
    display: none;
}

@media (max-width: 767px) {
    .section-carousel.ho-carousel-fullwidth .ho-carousel-fw-slide__content h2 {
        font-size: 2rem !important;
        line-height: 1.15 !important;
    }
}

/* Center active item — Porto carousel-center-active-item */
.section-carousel.ho-carousel-center .owl-item.current .ho-carousel-center__image {
    max-height: 160px !important;
}

.section-carousel.ho-carousel-center .ho-carousel-center-caption__panel {
    display: none;
}

.section-carousel.ho-carousel-center .ho-carousel-center-caption__panel.is-active {
    display: block;
}

/* Nav chevrons (nav-style-1 / nav-style-4) — no Font Awesome dependency */
.section-carousel .nav-style-1 .owl-nav button.owl-prev,
.section-carousel .nav-style-1 .owl-nav button.owl-next,
.section-carousel .nav-style-4 .owl-nav button.owl-prev,
.section-carousel .nav-style-4 .owl-nav button.owl-next {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.section-carousel .nav-style-1 .owl-nav button.owl-prev::before,
.section-carousel .nav-style-1 .owl-nav button.owl-next::before,
.section-carousel .nav-style-4 .owl-nav button.owl-prev::before,
.section-carousel .nav-style-4 .owl-nav button.owl-next::before {
    font-family: inherit !important;
    font-weight: 700 !important;
    font-size: 1.2rem !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
}

.section-carousel .nav-style-1 .owl-nav button.owl-prev::before,
.section-carousel .nav-style-4 .owl-nav button.owl-prev::before {
    content: '‹' !important;
}

.section-carousel .nav-style-1 .owl-nav button.owl-next::before,
.section-carousel .nav-style-4 .owl-nav button.owl-next::before {
    content: '›' !important;
}

@media (max-width: 767px) {
    .section-carousel.ho-carousel-center .owl-item.current .ho-carousel-center__image {
        max-height: 120px !important;
    }
}

/* Keep carousel content rail aligned with page-section containers */
.section-carousel:not(.ho-carousel-fullwidth) .ho-section-rail {
    overflow-x: clip;
}

/* Card variants — equal-height rows; shadow room inside rail (no negative bleed) */
.section-carousel.ho-carousel-cards .owl-stage {
    display: flex !important;
}

.section-carousel.ho-carousel-cards .owl-item {
    display: flex !important;
}

.section-carousel.ho-carousel-cards .owl-item > div {
    display: flex;
    width: 100%;
}

.section-carousel.ho-carousel-cards .owl-stage-outer {
    padding: 12px 0;
    margin: 0;
}

@media (min-width: 768px) {
    .section-carousel.ho-carousel-cards .owl-stage-outer {
        padding: 15px 12px;
        margin: 0;
    }
}

/* Center / logos — Owl + Porto center-active can peek past rail without clip */
.section-carousel.ho-carousel-center .owl-stage-outer,
.section-carousel.ho-carousel-logos .owl-stage-outer {
    margin: 0;
}

/* Nav flush-to-edge reads wider than other sections — inset inside rail */
.section-carousel .ho-section-rail .owl-carousel.nav-inside-edge .owl-nav button.owl-prev {
    left: 12px !important;
}

.section-carousel .ho-section-rail .owl-carousel.nav-inside-edge .owl-nav button.owl-next {
    right: 12px !important;
}
