/*
Theme Name: Conall Child
Theme URI: https://conall.qodeinteractive.com/
Description: A child theme of Conall Theme
Author: Edge Themes
Author URI: http://themeforest.net/user/edge-themes
Version: 1.1.1
Text Domain: conall
Template: conall
*/


/* ================================
   CSS - CENTRO MEDIA
================================ */



/* ================================
   GRID CONTAINER
================================ */

.feature-cards,
.media-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2em;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
  font-family: 'Montserrat', sans-serif;
}

.feature-cards {
  max-width: 1100px;
  gap: 30px;
}

/* ================================
   CARD STYLE
================================ */

.feature-card,
.media-card {
  aspect-ratio: 1 / 1;
  border-radius: 20px;
  background: radial-gradient(circle at 35% 25%, #199FDA 0%, #0f7db7 45%, #01538f 100%);
  color: #ffffff !important;
  text-align: center;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;

  padding: 40px 25px;
  box-sizing: border-box;

  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

/*
.feature-card:hover,
.media-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
}
*/

/* ================================
   ICON
================================ */

.feature-icon {
  width: 60px;
  height: 50px;
  margin-bottom: 15px;

  background-image: url('https://www.europemedia.it/wp-content/uploads/2025/12/Pittogramma_Logo.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* ================================
   SEPARATOR
================================ */

.feature-separator {
  width: 80px;
  height: 3px;
  margin-bottom: 20px;
  background-color: rgba(255, 255, 255, 0.9);
}

/* ================================
   TITLES
================================ */

.feature-text,
.media-title {
  margin: 0;
  color: #ffffff !important;
  font-size: clamp(20px, 1.5vw, 22px);
  line-height: 1.2;
  font-weight: 600;
  text-transform: none;
  text-align: center;
}

.media-title {
  min-height: 60px;
  padding-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* ================================
   DESCRIPTIONS
================================ */

.media-text {
  margin: 0;
  color: #ffffff !important;
  font-size: clamp(16px, 1.3vw, 18px);
  line-height: 1.35;
  font-weight: 400;
  text-transform: none;
  text-align: center;

  min-height: 110px;

  display: flex;
  align-items: flex-start;
  justify-content: center;
}

/* ================================
   RESPONSIVE
================================ */

@media (max-width: 1024px) {
  .feature-cards {
    gap: 15px;
  }
}

@media (max-width: 850px) {
  .feature-cards,
  .media-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 550px) {
  .feature-cards {
    grid-template-columns: 1fr;
    max-width: 350px;
    margin: 20px auto;
  }

  .media-cards {
    grid-template-columns: 1fr;
    max-width: 90%;
    margin: 10px auto;
  }
}

/* ================================
   FINE CSS - CENTRO MEDIA
================================ */




/* ===== 2 COLONNE SOLO PER I CAMPI INPUT (DESKTOP) ===== */
@media (min-width: 769px){
  .gform_wrapper .gform_fields{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
  }

  /* Sezioni e campi "non input" a tutta riga (NON radio/checkbox) */
  .gform_wrapper .gsection,
  .gform_wrapper .gfield--type-textarea,
  .gform_wrapper .gfield--type-html{
    grid-column:1 / -1 !important;
  }
}

/* ===== MOBILE: 1 COLONNA ===== */
@media (max-width: 768px){
  .gform_wrapper .gform_fields{
    display:block !important;
  }
}

/* ===== INPUT / SELECT / TEXTAREA LARGHEZZA PIENA DELLA COLONNA ===== */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper select,
.gform_wrapper textarea{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}

/* Override dimensioni Gravity Forms (small/medium/large) */
.gform_wrapper input.small,
.gform_wrapper input.medium,
.gform_wrapper input.large,
.gform_wrapper select.small,
.gform_wrapper select.medium,
.gform_wrapper select.large,
.gform_wrapper textarea.small,
.gform_wrapper textarea.medium,
.gform_wrapper textarea.large{
  width:100% !important;
  max-width:100% !important;
}




#gform_submit_button_65 {
    font-size: 130% !important;
    padding: 1em !important;
    color: #fff !important;
    background-color: #0059a6;
    border-radius: 15px;
    border: hidden;
    text-transform: uppercase;
    font-weight: 500;
    cursor: pointer;
    font-family: 'Montserrat';
}



.gform_wrapper input[type="submit"].gform_button {
  font-size: 130% !important;
    padding: 1em !important;
    color: #fff !important;
    background-color: #0059a6;
    border-radius: 15px;
    border: hidden;
    text-transform: uppercase;
    font-weight: 500;
    cursor: pointer;
    font-family: 'Montserrat';
}

/* Stile al passaggio del mouse (hover) */
.gform_wrapper input[type="submit"].gform_button:hover {
    background-color: #199FDA !important; /* Colore hover */
}


/*hack primario*/



body .gform_wrapper .gfield_html {
    font-size: 17px !important;     /* prima troppo piccolo */
    line-height: 1.7em !important;
    font-weight: 500 !important;
    text-align: left !important;
}

/* Se dentro .gfield_html hai paragrafi o liste */
body .gform_wrapper .gfield_html p,
body .gform_wrapper .gfield_html ul,
body .gform_wrapper .gfield_html li {
    font-size: 17px !important;
    line-height: 1.7em !important;
    font-weight: 500 !important;
}

/* Versione più grande su desktop */
@media (min-width: 992px) {
    body .gform_wrapper .gfield_html,
    body .gform_wrapper .gfield_html p,
    body .gform_wrapper .gfield_html li {
        font-size: 18px !important;
    }
}

/* FONT + COLORE UNICO: #01538f — MIGLIORA LEGGIBILITÀ GRAVITY FORMS */
body .gform_wrapper {
    font-family: Montserrat, Arial, Helvetica, sans-serif;
    color: #01538f !important;
     font-weight: 400 !important;
}

/* LABEL DEI CAMPI */
body .gform_wrapper .gfield_label {
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.4em !important;
    margin-bottom: 6px;
    color: #01538f !important;
}

/* DESCRIZIONI / ISTRUZIONI */
body .gform_wrapper .gfield_description {
    font-size: 13px !important;
    line-height: 1.6em !important;
    color: #01538f !important;
}

/* CHECKBOX E RADIO */
body .gform_wrapper .gfield_checkbox label,
body .gform_wrapper .gfield_radio label {
    font-size: 14px !important;
    line-height: 1.5em !important;
    padding-left: 4px;
    color: #01538f !important;
}

/* INPUT / EMAIL / TEL / SELECT */
body .gform_wrapper input,
body .gform_wrapper select {
    font-size: 16px !important;
    padding: 10px 12px !important;
    color: #01538f !important;
}

/* TEXTAREA */
body .gform_wrapper textarea {
    font-size: 16px !important;
    padding: 12px !important;
    min-height: 120px;
    color: #01538f !important;
}

/* PLACEHOLDER */
body .gform_wrapper ::placeholder {
    color: #01538f !important;
    opacity: 0.7 !important; /* leggermente più soft */
}


/* Trova questa regola in fondo al tuo CSS e modificala così */
body .gform_wrapper .gfield {
    margin-bottom: 8px !important; /* Ridotto da 16px a 8px */
}

/* Avvicina il pulsante all'ultimo campo */
.gform_wrapper .gform_footer {
    margin-top: 5px !important;    /* Riduce lo spazio sopra il pulsante */
    padding-top: 0 !important;      /* Elimina eventuale padding interno */
    margin-bottom: 5px !important; 
}

/* Toglie il margine dall'ultimo campo prima del pulsante */
.gform_wrapper .gform_fields .gfield:last-child {
    margin-bottom: 0 !important;
}


/* ================================
   CSS GRAVITY FORM
================================ */




/* ============================================================
   GRAVITY FORMS: 2 COLONNE + COLORI #01538F
   VERSIONE DEFINITIVA: TITOLI BOLD E COMPATTI
============================================================ */

/* 1. RESET COLORI E FONT GENERALE */
body .gform_wrapper, 
body .gform_wrapper .gfield_label, 
body .gform_wrapper .gfield_label label, 
body .gform_wrapper .ginput_complex label, 
body .gform_wrapper .gfield_required, 
body .gform_wrapper .gfield_description, 
body .gform_wrapper .gfield_html, 
body .gform_wrapper .gfield_checkbox label, 
body .gform_wrapper .gfield_radio label, 
body .gform_wrapper .gfield_caption {
    color: #01538f !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
}

/* 2. TITOLI DI SEZIONE (es: Información del usuario) */
body .gform_wrapper .gsection_title {
    font-size: 17px !important;    /* Leggermente più piccolo */
    font-weight: 700 !important;   /* Boldato (Grassetto) */
    margin-bottom: 0 !important;    /* Rimuove spazio sotto il testo */
    padding-bottom: 0 !important;   /* Rimuove spazio sotto il testo */
    line-height: 1 !important;
}

body .gform_wrapper .gfield.gsection {
    border-bottom: 1px solid #ccc !important; /* Riga grigia */
    margin-bottom: 15px !important;           /* Spazio tra riga e campi */
    margin-top: 20px !important;            /* Spazio sopra la sezione */
    padding-bottom: 3px !important;           /* Distanza minima testo/riga */
}

/* 3. LAYOUT A 2 COLONNE (Desktop > 768px) */
@media screen and (min-width: 769px) {
    body .gform_wrapper .gform_fields {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        grid-column-gap: 25px !important;
        grid-row-gap: 15px !important;
    }

    body .gform_wrapper .gfield {
        grid-column: span 1 !important;
        width: 100% !important;
        margin-top: 0 !important;
    }

    /* Campi a tutta larghezza (Sezioni, HTML, Textarea) */
    body .gform_wrapper .gfield.gsection, 
    body .gform_wrapper .gfield_html, 
    body .gform_wrapper .gfield--type-textarea, 
    body .gform_wrapper .gfield_textarea, 
    body .gform_wrapper .gfield--type-section {
        grid-column: 1 / -1 !important;
    }
}

/* 4. INPUT (Campi di testo, Bordi e Colori) */
body .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]), 
body .gform_wrapper select, 
body .gform_wrapper textarea {
    color: #01538f !important;
    padding: 10px 12px !important;
    border: 1px solid #01538f !important;
    border-radius: 5px !important;
    background-color: #fff !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* 5. PULSANTE DI INVIO */
body .gform_wrapper .gform_footer .gform_button, 
body .gform_wrapper .gform_footer input[type="submit"] {
    background-color: #0059a6 !important;
    color: #ffffff !important;
    padding: 15px 40px !important;
    border-radius: 12px !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1rem !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

body .gform_wrapper .gform_footer .gform_button:hover, 
body .gform_wrapper .gform_footer input[type="submit"]:hover {
    background-color: #199FDA !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}


/* ============================================================
   FIX DEFINITIVO SPAZIATURE (COMPATTO)
============================================================ */

/* 1. Avvicina il titolo (Suscripción...) alla riga grigia */
body .gform_wrapper .gfield.gsection .gsection_title {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* 2. Riduce lo spazio tra la riga grigia e la descrizione sottostante */
body .gform_wrapper .gfield.gsection {
    padding-bottom: 5px !important;
    margin-bottom: 5px !important;
}

/* 3. Avvicina la descrizione (Suscríbete...) al titolo e al checkbox */
body .gform_wrapper .gfield_description {
    margin-top: 2px !important;    /* Riduce spazio sopra la descrizione */
    margin-bottom: 5px !important; /* Riduce spazio sotto (verso il checkbox) */
    padding: 0 !important;
}

/* 4. Rimuove il margine superiore del checkbox stesso */
body .gform_wrapper .ginput_container_checkbox {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* 5. Riduce lo spazio tra i singoli elementi della lista checkbox */
body .gform_wrapper .gfield_checkbox li {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
    padding-top: 0 !important;
}


/* RIDUZIONE FONT DESCRIZIONI GRAVITY FORMS */
body .gform_wrapper .gfield_description {
    font-size: 14px !important;    /* Dimensione ridotta */
    line-height: 1.4 !important;   /* Interlinea più compatta */
    margin-top: 4px !important;    /* Avvicina la descrizione alla domanda */
    margin-bottom: 8px !important; /* Spazio prima della casella di input */
    font-weight: 400 !important;   /* Peso del font normale (non bold) */
}



/* ================================
   FINE CSS GRAVITY FORM
================================ */




/* ================================ */
