/* Stili Generali per la Landing BoostWeek */
body.landing-boostweek {
    font-family: 'Merriweather', serif;
    margin: 0;
    color: var(--Grigi-Main, #1E293B);
    background-color: #fff;
    line-height: var(--Body-Serif-lineheight, 32px); 
    font-size: var(--Body-Serif-fontsize, 18px);
}

.container-landing {
    width: 100%;
    max-width: 730px; 
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
    display: block; /* Evita spazi extra sotto le immagini */
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    font-weight: bold; /* O come da design */
}

p {
    margin:0 0 32px;
}

ul {
    margin-bottom: 1em;
    padding-left: 20px;
}

/* Header Specifico Landing */
.site-header-landing {
    background: var(--Blu-600-Main, #24213E);
    padding: 24px 0;
}


.site-header-landing .header-container {
    display: flex;
    justify-content: space-between; 
    align-items: center;
    max-width: 1112px;
}

.site-branding-landing img.noiza-logo {
    height: 16px; /* Adatta all'altezza del tuo logo PNG 2x */
    width: auto;
}
.site-branding-landing img.boostlab-logo {
    height: 32px;
    width: auto;
}
.site-branding-landing img.spacer {
    height: 24px;
    width: 1px;
}
.site-branding-landing a {
    display: flex;
    gap: 24px;
    align-items: center;
}

.boost-edition {
    color: var(--Grigi-Main, #1E293B);
    /* Montserrat/caption M #bold */
    font-family: Montserrat;
    font-size: var(--Caption-M-fontsize, 12px);
    font-style: normal;
    font-weight: 700;
    line-height: 12px;
    display: flex;
    padding: var(--Spacing-2xs, 4px) var(--Spacing-sm, 12px);
    justify-content: center;
    align-items: center;
    gap: var(--Spacing-xs, 8px);
    border-radius: var(--Corner-radius-md, 16px);
    background: var(--Blu-100, #DBEAFE);
}

/* Sezione Hero */
.landing-hero {
    background: var(--Blu-600-Main, #24213E);
    color: #fff;
    padding: 60px 0;
    text-align: left; 
}
.landing-hero h1 {
    color: var(--Grigi-white, #FFF);

    /* Montserrat/heading L */
    font-family: Montserrat;
    font-size: var(--Heading-L-fontsize, 32px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Heading-L-lineheight, 44px); /* 137.5% */
    margin: 0 0 32px;
}
.landing-hero .hero-container {
    display: flex;
    flex-direction: row; 
    align-items: center;
    gap: 30px;
    max-width: calc(100% - 30px);
    width: 1112px;
}

.hero-text-content {
    flex: 1;
}
.hero-container .boost-date {
    justify-self: flex-start;
    display: flex;
    height: 24px;
    justify-content: flex-start;
    align-items: center;
    gap: var(--Spacing-xs, 8px);
    flex-shrink: 0;
    margin-bottom: 12px;
        border-radius: 0;
    border: none;
}
.hero-container .boost-date span {
    color: var(--Blu-200, #B3D6FC);
    /* Montserrat/caption L #bold */
    font-family: Montserrat;
    font-size: var(--Caption-L-fontsize, 14px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Caption-L-lineheight, 20px); /* 142.857% */
    background-image: url(../img/blackfriday2025/calendar-icon.svg);
    background-repeat: no-repeat;
    background-position: center left;
    padding-left: 32px;
    background-size: 24px;
    display: inline-block;

}

.hero-title-svg {
    max-width: 100%; 
    width: 484px;
    margin-bottom: 17px;
}

.hero-subtitle {
    color: var(--Grigi-white, #FFF);
    font-family: Montserrat;
    font-size: var(--Size-base, 16px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Body-lineheight, 24px); /* 150% */
}

.landing-main-cta {
    position: relative;
    background: #24213E;
    background: linear-gradient(180deg,rgba(36, 33, 62, 1) 0%, rgba(36, 33, 62, 1) 48px, rgba(90, 97, 188, 1) 48px,  rgba(90, 97, 188, 1) 100%);
    overflow:hidden; 
    padding-bottom: 48px;
}
.zig-zag-dark {
    position: absolute;
    width: 100%;
    top: 48px;
}
.zig-zag-dark-blue {
    position: absolute;
    width: 100%;
    bottom: 48px;
}
.zig-zag-dark img,
.zig-zag-white img,
.zig-zag-dark-blue img,
.zig-zag-dark-white img  {
    display: block;
    width: 100%;
    max-height: 96px;
}
.zig-zag-white {
    position: absolute;
    width: 100%;
    bottom: 0;
}
.zig-zag-container {
    background-color: #fff;
    position: relative;
}
.zig-zag-dark-white {
    position: absolute;
    width: 100%;
}

.cta-container {
    max-width: 1112px;
}
a.btn.btn-primary-landing {
    display: inline-flex;
    padding: var(--Spacing-xl, 32px) var(--Spacing-2xl, 40px);
    justify-content: center;
    align-items: center;
    gap: var(--Spacing-xs, 8px);
    border-radius: 80px;
    border: 4px solid #24213E;
    background: #A2D5A7;
    color: #24213E;
    text-align: right;

    /* Montserrat/heading M */
    font-family: Montserrat;
    font-size: var(--Heading-M-fontsize, 24px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Heading-M-lineheight, 32px); /* 133.333% */
    text-decoration: none;
    z-index: 3;
    position: relative;
}

.btn.btn-primary-landing:hover {
    background-color: #81C688;
}

.hero-image-content {
    flex: 1;
    display: flex;
    justify-content: center; /* Centra l'immagine se più piccola del suo contenitore */
}

.hero-image-content img {
    width: 480px; 
    max-width: 100%;
}

.landing-intro-claim {
    background-color: #5A61BC;
    position: relative;
}
.landing-intro-claim .claim {
    max-width: 896px;
    padding: 64px 10px 114px;
    margin: 0 auto;
}
.landing-intro-claim h2 {
    color: var(--Grigi-white, #FFF);
    text-align: center;

    /* Montserrat/heading L */
    font-family: Montserrat;
    font-size: var(--Heading-L-fontsize, 32px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Heading-L-lineheight, 44px); /* 137.5% */
}

/* Sezione Intro */
.landing-intro {
    padding: 50px 0 80px;
    background-color: #fff;
}

.landing-intro h2 {
    color: var(--Grigi-Main, #1E293B);

    /* Montserrat/heading M */
    font-family: Montserrat;
    font-size: var(--Heading-M-fontsize, 24px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Heading-M-lineheight, 32px); /* 133.333% */
    padding: var(--Spacing-4xl, 64px) 0px var(--Corner-radius-md, 16px) 0px;
}

.landing-intro .text-container {
    max-width: 730px; /* Larghezza contenuta per il testo */
}

.highlight-box {
    background: #FFF4CB; /* Giallo chiaro */
    margin: 30px 0;
    border-radius: 16px;
    color: var(--Grigi-Main, #1E293B);

    /* Merriweather/font-size-md */
    font-family: Merriweather;
    font-size: var(--Body-fontsize, 16px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--Body-lineheight, 24px);
}

.highlight-box ul {
    list-style-type: none;
    padding-left: 0;
    margin: 0;
}

.highlight-box ul li {
    position: relative;
    padding: 12px 16px 12px 32px; 
    border-bottom: 1px solid #F0DFA1;
}
.highlight-box ul li:last-of-type {
    border-bottom: 0;
}

.highlight-box ul li::before {
    content: '.'; /* Puoi usare un SVG o un'icon font per un look migliore */
    color: var(--Grigi-Main, #1E293B);
    position: absolute;
    left: 16px;
    top: 8px; /* Aggiusta verticalmente */
    font-weight: bold;
}
.soft-highlight {
    padding: 16px 16px 16px 90px;
    border-radius: var(--Corner-radius-md, 16px);
    background-color: #EFF6FF;
    background-image: url(../img/blackfriday2025/hand.png);
    background-repeat: no-repeat;
    background-position: left 16px center;
    background-size: 66px auto;
    margin-bottom: 104px;
}
.soft-highlight p {
    margin-bottom: 0;
    color: var(--Grigi-Main, #1E293B);
    font-family: Merriweather;
    font-size: 16px;
    font-style: normal;
    line-height: 24px; /* 150% */
}


.landing-additional-info h3 {
    color: var(--Grigi-Main, #1E293B);

    padding: var(--Spacing-4xl, 64px) 0px var(--Corner-radius-md, 16px) 0px;
    font-family: Montserrat;
    font-size: var(--Heading-M-fontsize, 24px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Heading-M-lineheight, 32px); /* 133.333% */
}
.landing-additional-info p + h3 {
    padding-top: 32px;
}
.landing-additional-info h3:first-of-type {
    margin-top: 0;
}


.landing-additional-info p strong {
    color: #0D101C;
}

.landing-second-cta {
    position: relative;
    background: #24213E;
    background: linear-gradient(180deg,rgba(36, 33, 62, 1) 0%, rgba(36, 33, 62, 1) calc(100% - 48px), rgba(255, 255, 255, 1) calc(100% - 48px), rgba(255, 255, 255, 1) 100%);
    padding-bottom: 32px;
}
.landing-second-cta .hero-cta {
    display: flex;
    justify-content: center;
}

/* Details */

.landing-details {
    background-color: #24213E;
}
.container-details {
    max-width: 1172px;
    margin: 0 auto;
    padding: 92px 32px;
}
.landing-when,
.landing-hosts {
    display: flex;
    gap: 48px;
    align-items: center;
}
.landing-hosts {
    justify-content: flex-end;
    padding-top: 80px;
}
.landing-when-img {
    flex: 0 1 655px;
}
.landing-when-img img {
    display: block;
    border-radius: 48px;
    box-shadow: 0 12px 32px 0 #151133;
}
.landing-when-text h3,
.landing-hosts-text h3 {
    color: var(--Grigi-white, #FFF);
    font-family: Montserrat;
    font-size: var(--Page-Heading-fontsize, 40px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Page-Heading-lineheight, 52px); /* 130% */
    margin: 0 0 8px;
}
.landing-hosts-text h3 {
    text-align: right;
}
.landing-when-text p {
    color: var(--Blu-200, #B3D6FC);
    font-family: Montserrat;
    font-size: var(--Size-base, 16px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Body-lineheight, 24px); /* 150% */
    margin: 0;
}
.landing-hosts-img {
    display: flex;
    gap: 32px;
    flex: 0 1 528px;
}
.single-host {
    flex: 0 1 248px;
    display: flex;
    flex-direction: column;
}
.single-host img {
    margin-bottom: 24px;
    border-radius: 48px;
    box-shadow: 0 12px 32px 0 #151133;
}
.single-host h4 {
    color: var(--Blu-200, #B3D6FC);
    text-align: center;

    /* Montserrat/heading S */
    font-family: Montserrat;
    font-size: var(--Heading-S-fontsize, 20px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Lineheight-lg, 28px); /* 140% */
    margin: 0;
}
.single-host p {
    color: #A2D5A7;
    text-align: center;
    font-family: Montserrat;
    font-size: var(--Size-base, 16px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Body-lineheight, 24px); /* 150% */
    margin: 0;
}
/* Sezione Form */
.landing-form {
    padding: 10px 0 92px;
    text-align: left;
}

.landing-form h2 {
    color: var(--Blu-600-Main, #2563EB);
    font-family: Montserrat;
    font-size: var(--Heading-L-fontsize, 32px);
    font-style: normal;
    font-weight: 900;
    line-height: var(--Heading-L-lineheight, 44px); /* 137.5% */
    margin-bottom: 8px;
}
.landing-form p {
    color: var(--Grigi-Secondary-text, #475569);

    /* Montserrat/body */
    font-family: Montserrat;
    font-size: var(--Size-base, 16px);
    font-style: normal;
    font-weight: 500;
    line-height: var(--Body-lineheight, 24px); /* 150% */
}
.landing-form .form-container {
    border-radius: var(--Corner-radius-lg, 24px);
    border: 1px dashed var(--Blu-600-Main, #2563EB);
    background: var(--Blu-100, #DBEAFE);
    padding: 80px 80px 56px;
}

.gravity-form-wrapper {
    margin: 0 auto;
    text-align: left; /* Allinea etichette e campi a sinistra dentro il box */
}

/* Stili base per Gravity Forms (da personalizzare ulteriormente) */
.gform_wrapper ul {
    list-style-type: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.gform_wrapper li {
    margin-bottom: 18px !important;
}

.gform_wrapper .gfield_label,
.gform_wrapper.gravity-theme .ginput_complex label {
    color: var(--Blu-600-Main, #2563EB);
    font-family: Montserrat;
    font-size: var(--Caption-L-fontsize, 14px) !important;
    font-style: normal;
    font-weight: 500 !important;
    line-height: var(--Caption-L-lineheight, 20px); /* 142.857% */
    margin-bottom: 4px !important;
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper textarea {
    width: 100% !important;
    padding: 16px !important;
    border-radius: var(--Corner-radius-md, 16px);
    border: 1px solid var(--Blu-200, #B3D6FC);
    background: var(--Grigi-white, #FFF);
    box-sizing: border-box !important;
    color: var(--Grigi-Secondary-text, #475569);

    /* Montserrat/body */
    font-family: Montserrat;
    font-size: var(--Size-base, 16px) !important;
    font-style: normal;
    font-weight: 500;
    line-height: var(--Body-lineheight, 24px); /* 150% */
    outline: none;
}
.gform_wrapper textarea {
    min-height: 100px !important;
}
.gform_wrapper select {
    appearance: none;
    background-image: url(../img/arrow-down.svg) !important;
    background-repeat: no-repeat !important;
    background-size: 24px !important;
    background-position: right 16px center !important;
    width: 100% !important;
    padding: 16px !important;
    border-radius: var(--Corner-radius-md, 16px);
    border: 2px solid var(--Blu-600-Main, #2563EB);
    background: var(--Grigi-white, #FFF);
    box-sizing: border-box !important;
    color: var(--Grigi-Secondary-text, #475569);

    /* Montserrat/body */
    font-family: Montserrat;
    font-size: var(--Size-base, 16px) !important;
    font-style: normal;
    font-weight: 500;
    line-height: var(--Body-lineheight, 24px); /* 150% */
    outline: none;
}
.gform_wrapper select.is-placeholder {
    border: 1px solid var(--Blu-200, #B3D6FC);
}
.gravity-form-wrapper .gform_wrapper.gravity-theme .gfield_required {
    display: none;
}
/*@supports (appearance: base-select) {
    .gform_wrapper select, ::picker(select) {
        appearance: base-select;
    }
    .gform_wrapper select::picker-icon {
        background-image: url(../img/arrow-down.svg);
        background-repeat: no-repeat;
        background-size: 24px;
        background-position: right 16px center;
    }
    select {
        border: none;
        border-radius: 5px;
        padding: 0.5rem 0.75rem;
        transition-duration: 0.25s;
        align-items: center;
    }
    option {
        font-size: 1rem;
        display: grid;
        grid-template-columns: 2rem auto;
        gap: 0.5rem;
        padding: 0.5rem 1rem;
        transition-duration: 0.25s;
        place-items: initial;
        align-items: center;
    }

        option:hover,
        option:focus-visible {
        background: #eaeaea;
    }
}*/
.gfield_description {
    font-family: Montserrat !important;
    font-size: var(--Size-base, 13px) !important;
    padding-top: 4px !important;
    line-height: 20px !important;
}
.gform_wrapper input[type="text"]:focus-visible,
.gform_wrapper input[type="email"]:focus-visible,
.gform_wrapper input[type="tel"]:focus-visible,
.gform_wrapper textarea:focus-visible,
.gform_wrapper select:focus-visible {
    border: 1px solid var(--Blu-600-Main, #2563EB);
}
.gform_wrapper input[type="text"]:not(:placeholder-shown),
.gform_wrapper input[type="email"]:not(:placeholder-shown),
.gform_wrapper input[type="tel"]:not(:placeholder-shown),
.gform_wrapper textarea:not(:placeholder-shown) {
    border: 2px solid var(--Blu-600-Main, #2563EB);
}
.gform_wrapper .gform_footer {
    text-align: center; /* Centra il bottone di invio */
    margin-top: 25px !important;
    padding-top: 10px !important;
}

.gform_wrapper .gform_button {
    display: inline-block;
    border-radius: var(--Corner-radius-md, 16px);
    background-color: #2563EB;
    min-width: 120px;
    height: 56px;
    padding: var(--Spacing-md, 16px) !important;
    gap: var(--Spacing-xs, 8px);
    color: var(--Grigi-white, #FFF);
    text-align: center;    font-family: Montserrat;
    font-size: var(--Size-base, 16px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Body-lineheight, 24px); /* 150% */
}
.gform_wrapper .gform_button:hover {
    background-color: #003db8 !important; /* Blu più scuro al hover */
}

/* Footer Specifico Landing */
.site-footer-landing {
    background-color: #0D101C; /* Grigio scuro/nero per il footer */
    color: #ccc;
    padding: 30px 0;
    text-align: center;
    font-size: 0.9em;
}

.site-footer-landing p {
    margin: 0;
}
body #gform_confirmation_wrapper_12 #gform_confirmation_message_12 {
    background-color: #fff !important; /* Rimuovi !important per ora, testiamo la specificità */
    padding: 32px;
    border-radius: 16px;
    color: var(--Grigi-Main, #1E293B);
    font-family: Montserrat;
    font-size: var(--Caption-M-fontsize, 12px); /* Puoi voler aumentare questo font-size per il testo del messaggio */
    font-style: normal;
    font-weight: 500;
    line-height: var(--Caption-M-lineheight, 16px); /* Adegua il line-height se cambi font-size */
    margin: 0; 
}

/* Stili per l'intestazione H3 all'interno del messaggio */
body #gform_confirmation_message_12 h3 {
    margin: 0;
    color: var(--Grigi-Main, #1E293B);
    font-family: Montserrat;
    font-size: var(--Heading-S-fontsize, 20px);
    font-style: normal;
    font-weight: 700;
    line-height: var(--Lineheight-lg, 28px);
}

/* Stili per l'intestazione H4 all'interno del messaggio */
#gform_confirmation_wrapper_12 .confirmation-message h4 {
    color: var(--Grigi-Main, #1E293B);
    font-family: Montserrat;
    font-size: var(--Size-base, 16px); 
    font-style: normal;
    font-weight: 500;
    line-height: var(--Body-lineheight, 24px);
    margin: 0 0 12px;
}

/* Media Queries per Responsive Design */


@media (max-width: 780px) {
    .hero-image-content {
        display: none;
    }
    .site-header-landing {
        background-image: url(../img/blackfriday2025/blackfriday-hero@2x.png);
        background-repeat: no-repeat;
        background-position: top 30px right 15px;
        background-size: 412px;
        height: 339px;
    }
    .landing-hero {
        padding-top: 0;
    }
    .landing-when-text h3, .landing-hosts-text h3 {
        color: var(--Grigi-white, #FFF);

        /* Montserrat/Page heading */
        font-family: Montserrat;
        font-size: var(--Page-Heading-fontsize, 28px);
        font-style: normal;
        font-weight: 900;
        line-height: var(--Page-Heading-lineheight, 40px); /* 142.857% */
    }
    .landing-when {
        flex-direction: column-reverse;
        gap: 24px;
        align-items: flex-start;
    }
    .landing-when-img {
        flex: 0 0 auto;
        max-width: 560px;
    }
    .landing-hosts {
        flex-direction: column;
        justify-content: flex-start;
        gap: 16px;
        align-items: flex-start;
    }
    .landing-hosts-img {
        flex-direction: column;
        gap: 16px;
    }
    .single-host {
        flex: 0 0 auto;
        flex-direction: row;
        gap: 16px;
        align-items: center;
    }
    .single-host h4,
    .single-host p {
        text-align: left;
    }
    .single-host img {
        width: 50%;
    }
    .single-host-second {
        flex-direction: row-reverse;
    }
    .single-host.single-host-second  h4,
    .single-host.single-host-second  p {
        text-align: right;
    }
    .container-details {
        padding-bottom: 62px;
    }
    .landing-when-img img,
    .single-host img{
        border-radius: 32px;
    }

}

@media (max-width: 480px) {
    .site-header-landing {
        background-image: url(../img/blackfriday2025/blackfriday-hero@2x.png);
        background-repeat: no-repeat;
        background-position: top -30px left 15px;
        background-size: 512px;
        height: 339px;
    }
    a.btn.btn-primary-landing {
        display: inline-flex;
        padding: var(--Spacing-xl, 24px) var(--Spacing-2xl, 32px);
        justify-content: center;
        align-items: center;
        gap: var(--Spacing-xs, 8px);
        border-radius: 80px;
        border: 4px solid #24213E;
        background: #A2D5A7;
        color: #24213E;
        text-align: right;

        /* Montserrat/heading M */
        font-family: Montserrat;
        font-size: var(--Heading-M-fontsize, 22px);
        font-style: normal;
        font-weight: 900;
        line-height: var(--Heading-M-lineheight, 28px); /* 133.333% */
        text-decoration: none;
        z-index: 3;
        position: relative;
    }
    .single-host h4 {
        color: var(--Blu-200, #B3D6FC);

        /* Montserrat/heading S */
        font-family: Montserrat;
        font-size: var(--Heading-S-fontsize, 18px);
        font-style: normal;
        font-weight: 700;
        line-height: var(--Lineheight-lg, 26px); /* 144.444% */
    }
    .single-host p {
        color: #A2D5A7;
        text-align: right;

        /* Montserrat/caption M #bold */
        font-family: Montserrat;
        font-size: var(--Caption-M-fontsize, 12px);
        font-style: normal;
        font-weight: 700;
        line-height: var(--Caption-M-lineheight, 16px); /* 133.333% */
    }
    .container-details {
        padding-bottom: 32px;
    }
    .landing-when-img img,
    .single-host img{
        border-radius: 24px;
    }
}


