/* ============================
   FONT GLOBAL (Archivo)
============================ */

/* Assicurati che in <head> ci sia: 
<link href="https://fonts.googleapis.com/css2?family=Archivo:wght@300;400;500;600;700;800;900&display=swap" rel="stylesheet">
*/

html, body {
    margin: 0;
    padding: 0;
    font-family: 'Archivo', sans-serif;
    color: #707070; /* colore globale */
    background: #ffffff;
}


/* ============================
   TIPOGRAFIA GLOBAL
============================ */

body, p, a, li, span, div {
    color: #707070;
    font-weight: 300;  /* default = light */
    letter-spacing: 0.2px;
}

/* Header headings */
h1, h2, h3, h4, h5, h6 {
    color: #707070;
    font-weight: 700;  /* default = black */
    margin-top: 0;
}

/* Link globali (fuori dall'articolo) */
a {
    color: #707070;
    text-decoration: none;
    font-weight: 300!important;
}

a.breadcrumb-link{
    font-weight: 800!important;
}

/* Link all'interno del contenuto dell'articolo */
.testo-articolo a {
    font-weight: 800!important;
    text-decoration: underline;
}

.testo-articolo p {
    text-align: justify;
}




/* HOVER UNIVERSALE PER TUTTO IL SITO */
/* SOLO i link devono avere il colore hover */
a:hover,
a:focus,
a:active {
    color: #73C7E7 !important;
    transition: color .2s ease-in-out;
}

b, strong{
    font-weight: 900!important;
}

strong{
    font-weight: 900!important;
}

hr{
    display: none!important;
}

/* ============================
   UTILITY CLASSI PER TESTI
============================ */

/* LIGHT (thin) */
.text-light-archivo {
    font-weight: 300 !important;
    color: #707070 !important;
}

/* REGULAR */
.text-regular-archivo {
    font-weight: 400 !important;
    color: #707070 !important;
}

/* MEDIUM */
.text-medium-archivo {
    font-weight: 500 !important;
    color: #707070 !important;
}

/* BLACK (bold UI) */
.text-black-archivo {
    font-weight: 900 !important;
}

/* WHITE (per navbar su slider) */
.text-white-archivo {
    font-weight: 300 !important;
    color: #ffffff !important;
}
.text-white{
    color: #fff;
}
/* ============================
   RESET MINIMALE
============================ */

* {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* ================
 COLORE NAVBAR + FOOTER SU CATEGORY / SINGLE / SUBCATEGORY
================ */

/* Navbar testo */
body.ep-dark-header .navbar,
body.ep-dark-header .navbar a,
body.ep-dark-header .navbar .nav-link,
body.ep-dark-header .navbar-brand {
    color: #707070 !important;
}

/* Hover navbar */
body.ep-dark-header .navbar .nav-link:hover {
    color: #73C7E7 !important;
}

/* Footer testo */
body.ep-dark-header footer,
body.ep-dark-header footer a,
body.ep-dark-header .ep-footer a {
    color: #707070 !important;
}

/* Toggle menu (linee, testo, icone) */
body.ep-dark-header .ep-menu-toggle,
body.ep-dark-header .ep-menu-toggle *,
body.ep-dark-header .ep-menu-toggle svg path {
    color: #707070 !important;
    stroke: #707070 !important;
    fill: #707070 !important;
}

/* Link nel footer */
body.ep-dark-header .ep-footer a:hover {
    color: #73C7E7 !important;
}

body .is-layout-flex {
    display: contents;
}

nav.navigation.pagination {
    text-align: center;
    display: block;
    font-family: 'Archivo', sans-serif;
    font-size: 15px;
}

span.page-numbers.current{
    font-weight: 900;
    color: #73C7E7 !important;
    font-size: 20px;
}

a.bottone{
    padding: 10px;
    text-transform: uppercase;
    border:0.5px solid #707070;
    border-radius: 10px;
}

.ep-cat-active a {
    font-weight: 900;
    color: #73C7E7 !important;
}

a.page-numbers {
    font-size: 20px;
}

/* Masonry: random height coerente con hover */

.ep-masonry-item {
    position: relative;
    margin-bottom: 50px;
}

/* l'articolo ha l'altezza random (ep-size-*) */
.ep-work-item {
    position: relative;
    width: 100%;
    break-inside: avoid;
    overflow: hidden; /* così overlay e immagine non sbordano */
}

/* il link riempie sempre tutta la card */
.ep-work-link {
    display: block;
    width: 100%;
    position: relative;
}

.ep-work-thumb {
    margin: 0 auto;
    width: auto;
    max-height: 200px;
    object-fit: contain;
}


/* NON più altezze fisse qui
.ep-work-item.ep-size-sm { height: 220px; }
.ep-work-item.ep-size-md { height: 320px; }
.ep-work-item.ep-size-lg { height: 420px; }
*/

.ep-work-item {
    position: relative;
    width: 100%;
    break-inside: avoid;
    overflow: hidden;
}


/* OVERLAY che fitta SEMPRE la thumb */
.ep-work-overlay {
    position: absolute;
    inset: 0;                  /* segue il box della card, che è quanto la thumb */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(0,0,0,.5);
    opacity: 0;
    transition: opacity .3s ease-in-out;
}

.ep-work-title {
    margin: 0;
    color: #fff;
    font-size: 1rem;
    text-align: center;
}

.ep-work-item:hover .ep-work-overlay {
    opacity: 1;
}



/* Normalizza voci menu categorie */
.ep-category-list {
    display: flex !important;
    align-items: center !important;
}

.ep-category-list li {
    list-style: none;
    display: inline-flex !important;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;
}

.ep-category-list li a {
    display: inline-block !important;
    padding: 0 5px;
    font-size: 16px;
    white-space: nowrap;
    vertical-align: middle;
}

/* MOBILE: categorie più compatte */
@media (max-width: 768px) {
    .ep-category-list li a {
        font-size: 0.9rem;
        line-height: 1.1;
        padding: 0 3px;
    }
}


.top-main{
    margin-top:100px;
}

/* Pagination stile "Google" */
.ep-pagination {
    text-align: center;
    margin-top: 2rem;
}

.ep-pagination a,
.ep-pagination span {
    display: inline-block;
    margin: 0 0.25rem;
    font-size: 1.1rem;
    text-decoration: none;
    color: #666;
}

.ep-pagination .current {
    font-weight: 900;
    color: #73C7E7 !important;
}

/* ==== LIGHTBOX GALLERY FIX MOBILE ==== */

.ep-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.9);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.ep-lightbox.open {
    display: flex;
}

.ep-lightbox-inner img {
    max-width: 90vw;
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* Bottoni lightbox (freccia + close) */
.ep-lightbox-close,
.ep-lightbox-prev,
.ep-lightbox-next {
    position: absolute;
    border: 0;
    background: none;
    color: #fff;
    font-size: 2.5rem;
    line-height: 1;
    cursor: pointer;
    z-index: 10000;
}

/* Close in alto a destra */
.ep-lightbox-close {
    top: 1rem;
    right: 1rem;
}

/* Frecce ai lati, centrate verticalmente */
.ep-lightbox-prev,
.ep-lightbox-next {
    top: 50%;
    transform: translateY(-50%);
    padding: 0.5rem 0.75rem;
}

.ep-lightbox-prev {
    left: 0.75rem;
}

.ep-lightbox-next {
    right: 0.75rem;
}

/* Ingrossa un po' su mobile */
@media (max-width: 768px) {
    .ep-lightbox-close,
    .ep-lightbox-prev,
    .ep-lightbox-next {
        font-size: 3rem;
        padding: 0.75rem 1rem;
    }
}

.bg_white_footer{
    background: #fff;
}



