/*
 Theme Name:     NextAwards Child
 Template:       nextawards
 Version:        1.0.0
 Description:    Tema child di NextAwards
 Author:         MIrai Creative
*/


@media (min-width: 1190px) {
  body.page-template-menu-trasparent.scroll-down .header{background: #f07d00  !important;}
  body.page-template-menu-trasparent.scroll-down .menu li a, .page-template-menu-trasparent .header__quick ul li a{color: #000000;}
}
.menu, .menu li a{font-size: clamp(1rem, 2vw, 1.25rem)!important;}
.wp-block-cover.hero-cover{position:relative; overflow:hidden;}

.onda, .onda2, .onda3{z-index:1; overflow:hidden;}


/* Mobile e small tablet */
@media (max-width:626px) {
  .onda {
    margin-top: clamp(-83px, -8vw, -120px) !important;
    padding-top: clamp(60px, 8vw, 120px);
  }
}
@media (min-width: 627px) and (max-width: 990px) {
    .onda {
        margin-top: clamp(-102px, -8vw, -120px) !important;
        padding-top: clamp(60px, 4vw, 120px);
    }
}
/* Tablet 821–1279  */
@media (min-width:991px) and (max-width: 1279px) {
  .onda {
    margin-top: clamp(-115px, -8vw, -120px) !important;
    padding-top: clamp(60px, 4vw, 120px);
  }
}

/* Desktop medio 1280–1600 */
@media (min-width: 1280px) and (max-width: 1600px) {
  .onda { margin-top: -87px; }
}

/* Desktop large 1601+ */
@media (min-width: 1601px) {
  .onda { margin-top: -110px;
  }
}

/* Onda 2 */
@media (max-width:687px){
    .onda2 {
        margin-bottom: clamp(-72px, -8vw, -120px) !important;
        padding-bottom: clamp(50px, 7vw, 120px);
    }
}

@media (min-width:688px) and (max-width: 820px) {
  .onda2 {
    margin-bottom: clamp(-108px, -8vw, -120px) !important;
    padding-bottom: clamp(60px, 8vw, 120px);
  }
}

/* Tablet 821–1279  */
@media (min-width: 911px) {
  .onda2 {margin-bottom: clamp(-4.5em, -8vw, -5.5em) !important; }
}



/* Desktop large 1601+ */
@media (min-width: 1601px) {
  .onda2 { margin-bottom: -111px !important;
  }
}

/* Onda 3 */
@media (max-width:687px){
    .onda3 {
        margin-bottom: clamp(-131px, -8vw, -120px) !important;
        padding-bottom: clamp(47px, 7vw, 120px);
    }
}

@media (min-width:688px) and (max-width: 910px) {
  .onda3 {
    margin-bottom: -153px !important;
    padding-bottom: clamp(60px, 8vw, 120px);
  }
}

/* Tablet 821–1279  */
@media (min-width: 911px) {
  .onda3 {margin-bottom: clamp(-7em, -8vw, -20em) !important;}
}


/* Desktop large 1601+ */
@media (min-width: 1601px) {
  .onda3 { margin-bottom: -165px !important;
  }
}


/* About section - Card Section */
.card{height: clamp(340px, 4vw,310px)}

@media (max-width: 768px) {
  .card{height: auto}    
}
@media (min-width: 992px) {
  .card{height: 310px}    
}

.clickable-parent:not(a) {
  position: static;
}

.clickable-parent:not(a) > a::after {
  content: "";
  position: absolute;
  inset: 0;
  cursor: pointer !important;
  display: flex;
}
.focus-parent :focus {
  outline: none !important;
  box-shadow: none !important;
}
.card {
  position: relative;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  z-index:0;
}
.card:hover {
  transform: translateY(-15px); /* Spostamento verso l’alto */
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); /* Ombra più pronunciata */
  cursor:pointer;
}

.wp-block-cover {
    min-height: 100vh;
    min-height: 100dvh; /*tiene conto della viewport attiva */
    min-height: 100svh;   /* opzionale, per Safari */
}

@media (max-width: 768px) {
  .wp-block-cover{
    min-height: 70vh;
    min-height: 70dvh;
  }
}
.wp-block-heading.hero-title{
    position:relative;
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: 1.1;    
}

.wp-block-heading.hero-button{
    font-family: Roboto, sans-serif;
}


@media (max-width: 400px) {
  .wp-block-heading.hero-title::after {
    right: 2.8rem;
    top: 0.4rem;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
 .wp-block-heading.hero-title::after {
    right: -4rem;
    top: 0.6rem;
  }
}
.wp-block-heading.hero-subtitle{
  font-size: clamp(1rem, 2vw, 2rem);
  line-height: 1.1;    
}



/* Table */
.my_table.wp-block-table td, .wp-block-table th{border:none;  border-bottom:1px solid #CFCECE; } 
.wp-block-table table[style*=border-bottom-color] tr:not(:last-child) {
    border-bottom-color: inherit;
}
.my_table.wp-block-table td:first-child{border-right:1px solid #CFCECE; }
.wp-block-table td{padding:1em}

/* Button */
.btn_happy_chicken a{font-size: clamp(0.8em, 2vw, 1em);}
.btn_happy_chicken .wp-block-button__link{position:relative; color:#f7941d;z-index:10}
.btn_happy_chicken .wp-block-button__link:after{
    position:absolute;
    content:'';
    width:30px;
    height:15px;
    right:-40px;
    bottom:2px;
    background: url('./img/right-arrow.png');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.btn_happy_chicken .wp-block-button__link:hover:after{color: #e25a00 !important; opacity:0.5}

@media (max-width: 768px) {
  .column_reverse{flex-direction: column-reverse;}
}

/* Icona sopra il titolo nell due colonne */
.alignwide img, .alignfull img .img_column img{margin:0 !important;}

/* Accordion */
.accordion-section-group{max-width:1300px!important}
.accordion-h3{position: relative;padding-right: 30px;margin-bottom: 15px;cursor:pointer}
.accordion-h3{font-family: "Playfair Display"; font-size: clamp(1em,2vw,24px);}
.new_accordion p{line-height:1.6;}
.wp-block-group.new_accordion  p{max-width:1300px!important }
.accordion-h3:after{
  width: 30px;height: 30px;position: absolute; top:0; right:0;content: ' '; background-image: url('./img/plus.png')!important ;
  background-size:100%;
  background-repeat: no-repeat;
  background-position: center;
}

.accordion .wp-block-column{padding: 40px !important; background: #fff!important;}

/* .faq-section div:nth-child(2){margin-bottom: clamp(3em, 6vw, 120px);} */

/* Cta Section */
.cta-section{
  display:flex; align-items:center; justify-content:center;
}

.cta-box{width:100%; height: 100%; max-width: 800px; min-height:400px; display:flex; align-items:center; justify-content:center;} 
.cta-box h2{font-size: clamp(2em,3vw,2.5em); font-weight:500}
.cta-box p{font-family: "Playfair Display";font-size: clamp(1em,3vw,1.5em);}
.cta-box_column{display:flex; flex-flow:column; justify-content:center; align-items:center;}


 /* Form */
 .colonna-ombreggiata{padding: clamp(0rem,2vw,2.25rem)}
 .section-contact h2{font-size: clamp(1.5rem,3vw,2.5rem)}
 .wpcf7-form-control-wrap .wpcf7-select{margin-bottom: -6px;}

 .form-container{display:flex; flex-direction:column; width:100%; align-items:stretch;}

 .section-row-1, .section-row-2, .section-row-3{display:flex; width:100%; gap:10px; align-items:center}
 .section-row-3 > div{
  flex:1 1 50%;
  min-width:0;               /* evita overflow con input larghi */
}
/* Gli elementi CF7 dentro ai <div> prendono 100% */
.section-row-3 > div .wpcf7-form-control-wrap select{
  display:block;
  width:100%;
}
.section-row-3 > div .wpcf7-form-control{
  width:100%;
  box-sizing:border-box;     /* padding non allarga oltre il 100% */
}

 .section-row-4{display:block; width:100%}
.column-row{display:flex; flex-flow:column; width:100%}
/* Pulsante invio */
input[type=submit].wpcf7-submit.form-button{
  background-color:#f07d00; border-radius:10px;
}

/* Campi testo, email, tel, select, textarea */
.wpcf7-form .form-container input[type="text"],
.wpcf7-form .form-container input[type="email"],
.wpcf7-form .form-container input[type="tel"],
.wpcf7-form .form-container select,
.wpcf7-form .form-container textarea{
  color:#5c4b4771 ;          
  background:#F8F4F2 ;
  border:none;
  border-radius:10px;
  padding:20px;             
 
}
/* Cambia l'outline e il bordo al focus */
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form textarea:focus {
  outline: 2px solid #f07c0085; /* Colore dell'outline */
  border-color: #f07c0085; /* Colore del bordo */
}
.wpcf7-not-valid-tip {color:#f07d00;}
 .form-container .form-column input[type=submit].wpcf7-submit:hover, input[type=submit].wpcf7-submit:focus {
    background-color: #e25a00;
    color: #000;
    
}
/* Select */
/* Stile base della select */
.form-container .wpcf7 select,
.form-container select{
  border: none !important;
  background:#F8F4F2 !important;
  border-radius:10px;
  padding:14px 40px 14px 16px;
  box-shadow:none !important;   /* disattiva glow del tema */
  outline:none;                 /* disattiva focus ring UA */

  /* rimuovi la resa “nativa” (Safari/Chrome/Firefox) per controllare il bordo */
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;

  /* freccia personalizzata (SVG inline) */
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5' stroke='%235c4b47' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:18px 18px;
}

/* Focus/Keyboard focus visibile: bordo arancione + ring soft */
.form-container .wpcf7 select:focus,
.form-container .wpcf7 select:focus-visible,
.form-container select:focus,
.form-container select:focus-visible{
  border-color:#f07d00 !important;
  box-shadow:0 0 0 3px rgba(240,125,0,.25) !important; /* sostituisce il bordo nero */
  outline:none;
}

/* Alcuni temi colorano il wrapper su focus-within: override anche lì */
.form-container .wpcf7-form-control-wrap:focus-within select{
  border-color:#f07d00 !important;
  box-shadow:0 0 0 3px rgba(240,125,0,.25) !important;
}

/* Placeholder della select (prima scelta “label” se la usi) */
.form-container select:invalid{
  color:#5c4b47a6; /* più chiaro */
}


/* Placeholder (quello grigio di default) */
.form-container input[type="text"]::placeholder,
.form-container input[type="email"]::placeholder,
.form-container input[type="tel"]::placeholder,
.form-container textarea::placeholder{
  color:#5c4b4771; 
  opacity:1;                           /* Safari/Chrome riducono l’opacità */
}

/* (facoltativo) aumentare specificità su CF7 se serve */
.form-container .wpcf7 .wpcf7-form-control:not([type="submit"]){
  color:#5c4b4771 !important;
  background:#F8F4F2 !important;
  border:none !important;
}

 
@media (max-width: 998px) {
  .section-row-1, .section-row-2, .section-row-3, .section-row-4{flex-direction:column}
  .section-column-1 div{width:100%}
  .section-row-1 div, .section-row-2 div, .section-row-3 div{width:100%}
  .section-row-4 div{min-width:100%; width:100%}
  .form-button{width:100%!important}
  input[type=text], input[type=email], input[type=tel], select{padding: 10px !important}
  .colonna-ombreggiata{box-shadow: none !important;}
}

/* Footer */
.footer-container{position:relative;}
.footer-container:before{
  position:absolute;
  content:'';
  left:3%;
  bottom: 0;
  width:clamp(4.5rem, 24vw,20rem);
  height:clamp(4.5rem, 24vw,20rem);
  background: url('./img/gallina.png');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  opacity:0.3;
}
@media (max-width: 1600px) {
  .footer-container:before{bottom:8.5rem;}
}


.footer-container:after{
  position:absolute;
  content:'';
  right:3%;
  bottom: 0;
  width:clamp(4.5rem, 24vw,20rem);
  height:clamp(4rem, 24vw,20rem);
  background: url('./img/gallina3.png');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  opacity:0.6;
}
@media (max-width: 1600px) {
  .footer-container:after{bottom:8rem;}
}
@media (max-width: 768px) {
  .content-responsive{
    text-align:center;
  }
  .content-responsive img{margin:0 auto;}
}
.img-logo{
  width: 12.5rem !important; 
  max-width: 100%;           /* non supera mai il contenitore */
  height: auto;
  display: block;
}

/* Mobile */

@media (max-width: 1190px) {
    .header__content {height: 110px!important;}
    .menu{top:100px!important}
    .privacy-policy.page-template-menu-trasparent .header{background: #f07c00b2  !important;}
    .privacy-policy.page-template-menu-trasparent #content{padding-top: 5rem}
    .privacy-policy .header__logo-img{display:none!important}
    .privacy-policy .header__logo-img--default{display:block!important}

}
/* Logo */
 @media (min-width: 1190px) {
   .menu{top:20px;} 
   .privacy-policy.page-template-menu-trasparent .menu li a,
   .page-template-menu-trasparent .header__quick ul li a {color:#000}
   .privacy-policy.page-template-menu-trasparent #content{padding-top: 15rem}
   body.admin-bar .header{ top: 64px!important;}  
   body .header { top: 44px ;} 
   
    body.admin-bar.page-template-menu-trasparent.scroll-down .header {
       top: 32px !important;
    }
     body.page-template-menu-trasparent.scroll-down .header {
       top: 0 !important;
    }
 }

/* Header trasparente: niente filtri su logo e icone */
.page-template-menu-trasparent .header:not(.scroll-down) .header__logo img,
.page-template-menu-trasparent .header:not(.scroll-down) .header [class^="icon-"]{
  filter: none !important;
  mix-blend-mode: normal; /* se il tema usa blend */
}
.page-template-menu-trasparent .header:not(.scroll-down) .header [class^="icon-"]{
  color:#fff; fill:#fff;
}
.header.scroll-down .header [class^="icon-"]{
  color:#222; fill:#222;
}

/* ===================== BASE (sostituito) ===================== */

.header__logo-img--scrolled{display:none;}
@media (min-width: 1190px) {
  /* di default nascondi lo "scrolled" (quello scuro) */
:root{
  --logo-w: clamp(240px, 22vw, 420px); /* dimensione del box logo */
  --logo-ratio: 3.5 / 1;               /* rapporto del tuo logo (modifica se serve) */
}
@media (min-width: 1190px) {
  
}
.header__logo{
  position: relative;
  display: inline-block;
  width: var(--logo-w);
  aspect-ratio: var(--logo-ratio);
}

.header__logo-img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;                 /* mantiene proporzioni */
  display: block;
  transition: opacity .2s ease;
}
  .header__logo-img--scrolled{
  opacity: 0;
  pointer-events: none;                /* clic restano sul link */
}

/* sblocca eventuali limiti del tema */
.header__logo img{
  max-width: none !important;
  max-height: none !important;
}
/* =================== /BASE =================== */

/* ====== HEADER TRASPARENTE (pre-scroll) ====== */
:is(
  body.page-template-menu-trasparent:not(.scroll-down) .header,
  .page-template-menu-trasparent .header:not(.scroll-down)
) .header__logo-img--default{ opacity:1; }

:is(
  body.page-template-menu-trasparent:not(.scroll-down) .header,
  .page-template-menu-trasparent .header:not(.scroll-down)
) .header__logo-img--scrolled{ opacity:0; }

/* Niente filtri + icone bianche */
:is(
  body.page-template-menu-trasparent:not(.scroll-down) .header,
  .page-template-menu-trasparent .header:not(.scroll-down)
) .header__logo img{ filter:none !important; }

:is(
  body.page-template-menu-trasparent:not(.scroll-down) .header,
  .page-template-menu-trasparent .header:not(.scroll-down)
) [class^="icon-"]{
  filter:none !important;
  mix-blend-mode:normal;
  color:#fff; fill:#fff;
}

/* ====== HEADER COLORATO (scroll) ====== */
:is(
  body.page-template-menu-trasparent.scroll-down .header,
  .page-template-menu-trasparent .header.scroll-down
) .header__logo-img--default{ opacity:0; }

:is(
  body.page-template-menu-trasparent.scroll-down .header,
  .page-template-menu-trasparent .header.scroll-down
) .header__logo-img--scrolled{ opacity:1; }

/* Icone scure */
:is(
  body.page-template-menu-trasparent.scroll-down .header,
  .page-template-menu-trasparent .header.scroll-down
) [class^="icon-"]{ color:#222; fill:#222; }

}

/* Regole generali */
/* Hero */
.hero-cover .wp-block-button__link:hover, 
.section-eggs .wp-block-button__link:hover, 
.cta-section .wp-block-button__link:hover{color:#000;} 
.hero-cover .wp-block-button.is-style-secondary-button .wp-block-button__link:hover{color:#ffffff}
/* Immagini */
.overlay-animated {
  position: relative;
  overflow: hidden;
}
.overlay-animated:after {
  position: absolute;
  content: "";
  background: #ffffff52;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  opacity: 1;
  pointer-events: none;
}
.overlay-animated:hover:after {
  transition: all 400ms linear;
  opacity: 0;
  height: 100%;
}

