/* Sostituti statici dei componenti Joomla (Revolution Slider, Phoca Maps, FoxContact) */

/* ---------- Slider home (era Revolution Slider 4.8, griglia 800x800) ---------- */
.hero-slider {
    --s: 1;
    position: relative;
    float: left;
    width: 100%;
    aspect-ratio: 1 / 1;
    max-height: 800px;
    margin-top: 30px;
    background-color: #e9e9e9;
    z-index: 0;
}
.hero-slider::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -60px;
    width: 890px;
    max-width: 100%;
    height: 60px;
    transform: translateX(-50%);
    background: url(../img/shadow2.png) no-repeat;
    background-size: 100% 100%;
    pointer-events: none;
}
.hero-slide {
    position: absolute;
    inset: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease-in-out, visibility 0s linear 300ms;
}
.hero-slide.is-active {
    opacity: 1;
    visibility: visible;
    transition: opacity 300ms ease-in-out, visibility 0s;
    z-index: 1;
}
/* Le foto sono 4:3: oltre 800px x 4/3 di larghezza non si allargano più e restano bande laterali */
.hero-slide img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: calc(800px * var(--ratio, 4 / 3));
    margin: 0 auto;
    object-fit: fill;
}
.hero-caption {
    position: absolute;
    left: calc((100% - 800px * var(--s)) / 2 + var(--x) * 1px * var(--s));
    top: calc(var(--y) * 1px * var(--s));
    z-index: 5;
    white-space: nowrap;
    font-family: "Open Sans";
    font-size: calc(50px * var(--s));
    line-height: calc(60px * var(--s));
    font-weight: 800;
    color: #000;
    opacity: 0;
    transition: opacity 300ms cubic-bezier(.645, .045, .355, 1);
}
.hero-slide.is-active .hero-caption.is-visible {
    opacity: 1;
}
.hero-timer {
    visibility: hidden;
}

/* ---------- Mappe (era Phoca Maps) ---------- */
.phocamaps-box {
    margin: 10px 0 0;
    padding: 0;
    text-align: center;
}
iframe.phocamaps-map {
    display: block;
    width: 100%;
    height: 550px;
    border: 0;
}

/* ---------- Moduli (era FoxContact) ---------- */
.fox-hp {
    position: absolute !important;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
div.foxcontainer .control-group.error input,
div.foxcontainer .control-group.error textarea,
div.foxcontainer .control-group.error select {
    border-color: #b94a48;
}
div.foxcontainer .control-group.error .control-label,
div.foxcontainer .control-group.error .checkbox {
    color: #b94a48;
}
.fox-esito {
    clear: both;
    margin: 0 0 20px;
    padding: 8px 14px;
    border: 1px solid;
    border-radius: 5px;
}
.fox-esito.alert-success {
    color: #468847;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}
.fox-esito.alert-error {
    color: #b94a48;
    background-color: #f2dede;
    border-color: #eed3d7;
}

/* ---------- Varie ---------- */
#menu-particle {
    margin-top: 27px;
}
.icons .dropdown-menu a {
    cursor: pointer;
}
.g-powered {
    text-align: center;
}
.g-powered a {
    font-size: 5pt;
    color: #fff;
}
