/* Larnaka 2030 theme-specific styles */
/* Footer 'Information' word/leaf */
.word-image-container {
    z-index: 0;
}
.word-image-wrapper {
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    font-size: 2.5rem;
    line-height: 1.2;
}
.word-image-wrapper img {
    position: absolute;
    top: -35px;
    left: 72%;
    width: 50%;
    height: auto;
    z-index: 1;
}
.word-image-wrapper span {
    z-index: 2;
    position: relative;
}
@media only screen and (min-width: 480px) {
.word-image-wrapper {
    font-size: 4rem;
    line-height: 1.2;
}
.word-image-wrapper img {
    top: -35px;
    left: 75%;
    width: 45%;
}
}
@media only screen and (min-width: 560px) {
.word-image-wrapper {
    font-size: 5rem;
    line-height: 1.2;
}
.word-image-wrapper img {
    top: -45px;
    left: 75%;
    width: 45%;
}
}
@media only screen and (min-width: 767px) {
.word-image-wrapper {
    font-size: 6.8rem;
    line-height: 1.2;
}
.word-image-wrapper img {
    top: -45px;
    left: 78%;
    width: 40%;
}
}
@media only screen and (min-width: 1024px) {
.word-image-wrapper {
    font-size: 7.5rem;
    line-height: 1.2;
    letter-spacing: 1.5rem;
}
.word-image-wrapper img {
    top: -120px;
    left: 76%;
    width: 40%;
}
}
@media only screen and (min-width: 1366px) {
.word-image-wrapper {
    font-size: 7.8rem;
    line-height: 1.2;
    letter-spacing: 1.5rem;
}
.word-image-wrapper img {
    top: -145px;
    left: 74%;
    width: 45%;
}
}

/* ---- Header: sticky behaviour previously handled by the builder runtime ---- */
.skala-header.elementor-sticky{position:fixed !important;top:0;left:0;width:100%;z-index:10}
nav.elementor-nav-menu--dropdown{display:none}
.elementor-widget-nav-menu{position:relative}
.elementor-nav-menu--stretch nav.elementor-nav-menu--dropdown{position:absolute;left:0;width:100%;top:100%;max-height:calc(100vh - 100px);z-index:20}
.elementor-nav-menu--dropdown li.menu-item-has-children > ul{display:none}
.elementor-nav-menu--dropdown li.l2030-open > ul{display:block}
@media (min-width:1025px){.elementor-nav-menu--dropdown-tablet .elementor-menu-toggle{display:none}}
@media (max-width:1024px){.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main{display:none}.elementor-nav-menu--dropdown-tablet .elementor-menu-toggle{display:flex}}

/* ---- Hero carousel ---- */
.elementor-widget-media-carousel .swiper,.elementor-widget-media-carousel .elementor-main-swiper{overflow:hidden}
.elementor-widget-media-carousel .elementor-carousel-image{width:100%}

/* ---- Video ---- */
.elementor-widget-video .elementor-video{position:relative;padding-bottom:56.25%;height:0}
.elementor-widget-video .elementor-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---- Gallery lightbox ---- */
.l2030-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:99999}
.l2030-lightbox.is-open{display:flex}
.l2030-lightbox img{max-width:92vw;max-height:90vh;object-fit:contain;box-shadow:0 0 40px rgba(0,0,0,.6)}
.l2030-lightbox button{position:absolute;background:transparent;border:0;color:#fff;font-size:44px;line-height:1;cursor:pointer;padding:10px 18px}
.l2030-lightbox .l2030-lb-close{top:10px;right:14px}
.l2030-lightbox .l2030-lb-prev{left:10px;top:50%;transform:translateY(-50%)}
.l2030-lightbox .l2030-lb-next{right:10px;top:50%;transform:translateY(-50%)}

/* ---- Forms ---- */
.elementor-message{margin-top:12px;font-size:.95em}
.elementor-message-success{color:#2e7d32}
.elementor-message-danger{color:#c62828}
.l2030-hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}

/* ---- Pagination (loop grid) ---- */
.elementor-pagination{text-align:center;margin-top:30px}
.elementor-pagination .page-numbers{margin:0 6px}
