/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

html {display:block;margin:0 auto;font-weight:700;text-transform: uppercase;border-radius: 5px;}
body {
    overflow-x: hidden;
}
a {
    text-decoration: none !important;
}
.home .site-branding {display:none!important;color:#000000;}
.home .eventihome a{color:black;}
.logohome img{padding:20px;}
.site-branding span {color:#243263;}
.menu-toggle {background-color:rgba(38,40,40,0.8)!important;color:#03312D!important;border-radius: 5px;}
.slideout-toggle {background-color:black!important;border-radius: 5px;}
.main-navigation{background-color:black!important;}
.pro-menu-bars {color: #243263 !important;}
#site-navigation,#mobile-menu-control-wrapper {border-radius:6px;}
.gp-icon svg {
    height: 32px;
    width: 24px;
    top: 11px;
    position: relative;
    fill: #ea0000;
}
.slideout-navigation.do-overlay .inside-navigation {
    max-width: 800px !important;
    padding: 0 !important;
}
@media screen and (min-width: 769px) {
    #generate-slideout-menu {
        padding-top: 10%;
    }
}
/*.home a{color:#fff;}*/

.wpcf7-submit {background-color: #ea0000!important;color:#FFF!important;display:block;margin:0 auto;font-weight:700;text-transform: uppercase;border-radius: 5px;}

.wp-block-post-date {color:black!important;}

.polylang_langswitcher {
    position: absolute;
    right: 115px;
    top: 41px;
    list-style-type: none;}
.polylang_langswitcher img {    width: 25px !important;    height: 17px !important;}
.firma{  -webkit-filter: drop-shadow(0px 0px 2px #fff);
  filter: drop-shadow(0px 0px 2px #fff);}

@media screen and (max-width: 768px) {
      #news h2 a {
          font-size: 25px !important;
      }
}

.single-post .entry-content,.single-post .entry-header, .single-post .entry-meta{padding:0 15px;}
.single-post .entry-header {padding-top:15px;}
.header-widget {
        position: absolute;
        right: 155px;
}
@media screen and (max-width: 768px) {
.site-branding {position: absolute;
    left: 15px;
    top: 15px;}
        .header-widget {
            position: absolute;
            left: 15px;
            
        }
        .header-widget .wp-block-social-links {font-size: 18px !important;}
        
}
.wp-block-query a{color:white!important;}
.wp-block-query .wp-block-post-date {color:white!important;}


/* ===== PREMIUM ENHANCEMENTS ===== */

/* Smooth Transitions Globali */
* {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Logo con effetto premium */
.main-title a {
    position: relative;
    display: inline-block;
}

.main-title a::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, #ea0000, #000000);
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.main-title a:hover::after {
    width: 100%;
}

/* Hero Section Premium */
.nk-awb {
    position: relative;
    overflow: hidden;
}

.nk-awb::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    mix-blend-mode: multiply;
}

.nk-awb-wrap-content {
    position: relative;
    z-index: 2;
}



/* Columns Premium con Hover Effect */
.wp-block-columns .wp-block-column {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-columns .wp-block-column:hover {
    transform: translateY(-10px);
}

/* Immagini con effetto Premium */
figure img {    
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

figure img:hover {
    transform: scale(1.05) rotate(1deg);
}

.firma figure img {box-shadow: none;}

/* Video Wrapper Premium */
#video-wrapper {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    position: relative;
}

#video-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, rgba(107, 43, 133, 0.1), rgba(212, 175, 55, 0.1));
    z-index: 1;
    opacity: 0;
    transition: opacity 0.3s;
}

#video-wrapper:hover::before {
    opacity: 1;
}

/* Bottoni Premium */
.cmplz-btn,
button,
input[type="submit"],
.button,
.wp-block-button__link {
    border: none;
    border-radius: 50px;
    padding: 15px 40px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.cmplz-btn::before,
button::before,
input[type="submit"]::before,
.button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.5s;
}

.cmplz-btn:hover::before,
button:hover::before,
input[type="submit"]:hover::before,
.button:hover::before {
    left: 100%;
}

.cmplz-btn:hover,
button:hover,
input[type="submit"]:hover,
.button:hover {
    transform: translateY(-3px);
}

/* Social Links Premium - VERSIONE SENZA MOVIMENTO */
.wp-block-social-links {
    gap: 15px !important;
}


.wp-block-social-links a {
    /*background: rgba(255, 255, 255, 0.1) !important;*/
    backdrop-filter: blur(10px);
    border-radius: 50px !important;
    padding: 12px !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

/* Effetto gradiente al hover */
.wp-block-social-links a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #000000, #ea0000);
    opacity: 0;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 0;
}

.wp-block-social-links a:hover::before {
    opacity: 1;
}

.wp-block-social-links a:hover {
    /* NESSUN transform, solo effetti visivi */
    border-color: #ea0000;
    box-shadow:
        0 0 30px rgba(212, 175, 55, 0.6),
        0 0 60px rgba(212, 175, 55, 0.3),
        inset 0 0 20px rgba(255, 255, 255, 0.1);
}

/* Icone sempre visibili e sopra il background */
.wp-block-social-links a svg {
    position: relative;
    z-index: 1;
    transition: none;
    /* Nessuna animazione sull'icona */
}


/* Tabelle Premium */
.wp-block-table table {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

.wp-block-table td {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(107, 43, 133, 0.1);
}

/* Form Premium */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 2px solid rgba(107, 43, 133, 0.2);
    border-radius: 15px;
    padding: 15px 20px;
    color: #fff;
    transition: all 0.3s;
}

.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
    border-color: #ea0000;
    box-shadow: 0 0 30px rgba(212, 175, 55, 0.2);
    transform: scale(1.02);
}


/* Scroll Animations */
.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Menu Mobile Premium */
.slideout-navigation {
    //background: linear-gradient(135deg, #000000 0%, #4a1d5c 100%);
    backdrop-filter: blur(20px);
}

.slideout-navigation .main-nav ul li a {
    position: relative;
    display: block;
}

.slideout-navigation .main-nav ul li a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    transform: translateY(-50%);
    width: 0;
    height: 2px;
    background: #ea0000;
    transition: width 0.3s;
}

.slideout-navigation .main-nav ul li a:hover::before {
    width: 100%;
}

/* Newsletter Popup Premium */
#pum-499 .pum-container {
    backdrop-filter: blur(20px);
    border-radius: 30px;
    border: 2px solid rgba(212, 175, 55, 0.3);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
}

/* Loading Animation Premium */
@keyframes pulse {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}

.loading {
    animation: pulse 2s ease-in-out infinite;
}



/* Cursore Custom Premium */
body {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20"><circle cx="10" cy="10" r="8" fill="%23000000" opacity="0.5"/></svg>'), auto;
}

a,
button {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"><circle cx="12" cy="12" r="10" fill="%23ea0000" opacity="0.7"/></svg>'), pointer;
}


.entry-content>div {margin-top: -1px;
    margin-bottom: -1px;}
    .gb-shape-961ddd4d{margin-bottom:-2px;}