/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
:root {
    --primary-color: #4A6BB3;
    --aqua-color: #C9E8FF;
}
header .header-wrapper .header-inner-content-wrapper,
main,
div[data-elementor-type="single-page"],
div[data-elementor-type="single-post"],
footer .footer-wrapper {
    max-width: 1440px !important;
    margin: 0 auto !important;
}
/* Post Card Loop Item */
.news-posts-container .e-n-tabs-heading .e-n-tabs-heading__buttons button[tabindex="-1"] {
    border-bottom: 2px solid var(--aqua-color);
}
.news-posts-container .e-n-tabs-heading .e-n-tabs-heading__buttons button[tabindex="-1"]:hover,
.news-posts-container .e-n-tabs-heading .e-n-tabs-heading__buttons button[tabindex="0"] {
    border-bottom: 2px solid var(--primary-color);
}
.post-image-wrapper {
    max-height: 155px;
}
.post-action-wrapper svg {
    height: 24px !important;
}
/* Equal-height cards: pin the date + arrow row to the bottom,
   so cards without an excerpt align with cards that have one */
.e-loop-item > .elementor-element-aa08b41 {
    height: 100%;
}
.e-loop-item .elementor-element-fd50639 {
    flex-grow: 1;
}
.e-loop-item .elementor-element-ab04f70 {
    margin-top: auto;
}
/* Limit card title to a maximum of two lines */
.e-loop-item .elementor-element-968b591 .elementor-heading-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* Post Card Loop Item */
/* Branch Carousel Section */
.branch-carousel .swiper .swiper-slide [data-widget_type="icon.default"] {
    max-height: 50px;
    min-height: 50px;
}
.branch-carousel .swiper .swiper-slide [data-widget_type="icon.default"] .elementor-icon-wrapper {
    height: 100%;
}
.branch-carousel .swiper .swiper-slide .elementor-counter {
    text-align: center;
}
/* Branch Carousel Section */
/* News Tabs Section */
.news-posts-container .e-n-tabs-heading__buttons {
    overflow: scroll;
}
.news-posts-container .e-n-tabs-heading__buttons button span {
    width: max-content;
}
/* Align news cards in every tab: clamp titles to two lines so the
   image/excerpt/date rows line up regardless of title length */
.news-posts-container .post-card .post-card-title .elementor-heading-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2lh;
}
/* Equal-height cards with the date + arrow row pinned to the bottom */
.news-posts-container .elementor-loop-container.elementor-grid {
    grid-auto-rows: 1fr;
    align-items: stretch;
}
.news-posts-container .e-loop-item,
.news-posts-container .e-loop-item > .post-card {
    height: 100%;
}
.news-posts-container .e-loop-item .elementor-element-d145019 {
    flex-grow: 1;
}
.news-posts-container .e-loop-item .elementor-element-5c9fefe {
    margin-top: auto;
}
/* News Tabs Section */
h6 {
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: 0;
}
header .mobile .elementor-nav-menu--dropdown {
    top: 80px !important;
}
.no-margin p {
    margin: 0 !important;
}
/* Align Loop Grid cards into even rows (section 99eb837, masonry misalignment fix) */
.elementor-element-99eb837 .elementor-element-75cc368 .elementor-loop-container.elementor-grid {
    grid-auto-rows: 1fr;
    align-items: stretch;
    height: auto !important;
}

.elementor-element-99eb837 .elementor-element-75cc368 .e-loop-item {
    margin-top: 0 !important;
    height: 100%;
}

.elementor-element-99eb837 .elementor-element-75cc368 .e-loop-item > .e-con {
    height: 100%;
}

/* Edukacijos tab content: intro text + image side by side,
   the rest full width below (non-accordion section) */
.edu-section {
    font-size: 16px;
    line-height: 26px;
    color: #212121;
}
.edu-section__top {
    display: flex;
    gap: 48px;
    align-items: flex-start;
    margin-bottom: 16px;
}
.edu-section__text {
    flex: 1 1 55%;
}
.edu-section p {
    margin: 0 0 16px;
}
.edu-section ul {
    margin: 0 0 16px;
    padding-left: 24px;
}
.edu-section li {
    margin-bottom: 8px;
}
.edu-section a {
    color: var(--primary-color);
    text-decoration: none;
}
.edu-section a:hover {
    text-decoration: underline;
}
.edu-section__image {
    flex: 1 1 45%;
    margin: 0;
}
.edu-section__image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
}
@media (max-width: 767px) {
    .edu-section__top {
        flex-direction: column;
        gap: 24px;
    }
    .edu-section__image {
        width: 100%;
    }
}
/* Edukacijos tab content */

/* Hero title band (.main-heading): constant thickness — sized for one line
   of the full clamp() font. Long titles wrap to max 2 lines and the
   hero-title-fit.js script shrinks the font until the text fits the band. */
.main-heading {
    --hero-title-size: clamp(27px, 6.94vw, 100px);
    height: calc(var(--hero-title-size) * 1.2 + 12px);
    --justify-content: center;
    justify-content: center;
    overflow: hidden;
}
.main-heading .elementor-heading-title {
    line-height: 1.1 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    /* Header */
    nav.nav-container {
        gap: 24px;
    }
    nav.nav-container .header-main-menu {
        --e-nav-menu-horizontal-menu-item-margin: calc(24px / 2) !important;
    }
    nav.nav-container div:nth-child(2) {
        gap: 12px;
    }
    /* Header */

    /* Footer */
    footer .footer-grid {
        gap: 24px;
    }
    /* Footer */
}
@media screen and (max-width: 1024px) {
    /* Contacts */
    .map-wrapper {
        max-width: 100% !important;
        min-width: 100% !important;
    }
    /* Contacts */
}
@media screen and (max-width: 768px) {
    /* Footer */
    .nav-column1 li a, .nav-column2 li a, .nav-column3 li a {
        justify-content: center !important;
    }
    footer .footer-menu-container {
        max-width: 100%;
    }
    /* Footer */
}
@media screen and (max-width: 550px) {
    /* Header */
    header .header-wrapper {
        flex-direction: column !important;
    }
    /* Header */
}
@media screen and (max-width: 460px) {
    /* Hero title band: the h1 override below forces 2.5rem, so size the band for it */
    .main-heading {
        --hero-title-size: 2.5rem;
    }
    /* Copyright */
    footer .copyright-nav ul {
        gap: 8px;
        margin: 0 !important;
    }
    /* Copyright */
    h1 {
        font-size: 2.5rem !important;
        line-height: 62px !important;
    }
    h2 {
        font-size: 2rem !important;
        line-height: 42px !important;
    }
    h3 {
        font-size: 1.75rem !important;
        line-height: 34px !important;
    }
    h4 {
        font-size: 1.5rem !important;
        line-height: 32px !important;
    }
    h5 {
        font-size: 1.2rem !important;
        line-height: 23px !important;
    }
    p {
        font-size: 1rem !important;
    }
}