/* ============================================================ */
/* GENERA GRID - CSS STRUTTURALE E UTILITY DINAMICHE            */
/* ============================================================ */

/* ------------------------------------------------------------
   CONFIGURAZIONE: Griglia Header
   ------------------------------------------------------------ */
.is-style-genera-grid-is-1 {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 2rem;
    row-gap: 2rem;
    padding: 0 2rem;
    max-width: 100%;
    box-sizing: content-box;
    margin: 0 auto !important;
}
.is-style-genera-grid-is-1 > .item-d-start-1 { grid-column-start: 1; }
.is-style-genera-grid-is-1 > .item-d-start-2 { grid-column-start: 2; }
.is-style-genera-grid-is-1 > .item-d-start-3 { grid-column-start: 3; }
.is-style-genera-grid-is-1 > .item-d-start-4 { grid-column-start: 4; }
.is-style-genera-grid-is-1 > .item-d-start-5 { grid-column-start: 5; }
.is-style-genera-grid-is-1 > .item-d-start-6 { grid-column-start: 6; }
.is-style-genera-grid-is-1 > .item-d-start-7 { grid-column-start: 7; }
.is-style-genera-grid-is-1 > .item-d-start-8 { grid-column-start: 8; }
.is-style-genera-grid-is-1 > .item-d-start-9 { grid-column-start: 9; }
.is-style-genera-grid-is-1 > .item-d-start-10 { grid-column-start: 10; }
.is-style-genera-grid-is-1 > .item-d-start-11 { grid-column-start: 11; }
.is-style-genera-grid-is-1 > .item-d-start-12 { grid-column-start: 12; }
.is-style-genera-grid-is-1 > .item-d-end-2 { grid-column-end: 2; }
.is-style-genera-grid-is-1 > .item-d-end-3 { grid-column-end: 3; }
.is-style-genera-grid-is-1 > .item-d-end-4 { grid-column-end: 4; }
.is-style-genera-grid-is-1 > .item-d-end-5 { grid-column-end: 5; }
.is-style-genera-grid-is-1 > .item-d-end-6 { grid-column-end: 6; }
.is-style-genera-grid-is-1 > .item-d-end-7 { grid-column-end: 7; }
.is-style-genera-grid-is-1 > .item-d-end-8 { grid-column-end: 8; }
.is-style-genera-grid-is-1 > .item-d-end-9 { grid-column-end: 9; }
.is-style-genera-grid-is-1 > .item-d-end-10 { grid-column-end: 10; }
.is-style-genera-grid-is-1 > .item-d-end-11 { grid-column-end: 11; }
.is-style-genera-grid-is-1 > .item-d-end-12 { grid-column-end: 12; }
.is-style-genera-grid-is-1 > .item-d-end-13 { grid-column-end: 13; }
.is-style-genera-grid-is-1 > .item-d-align-start   { align-self: start; }
.is-style-genera-grid-is-1 > .item-d-align-center  { align-self: center; }
.is-style-genera-grid-is-1 > .item-d-align-end     { align-self: end; }
.is-style-genera-grid-is-1 > .item-d-align-stretch { align-self: stretch; }
.is-style-genera-grid-is-1 > .item-d-justify-start   { justify-self: start; }
.is-style-genera-grid-is-1 > .item-d-justify-center  { justify-self: center; }
.is-style-genera-grid-is-1 > .item-d-justify-end     { justify-self: end; }
.is-style-genera-grid-is-1 > .item-d-justify-stretch { justify-self: stretch; }
@media (max-width: 100%) {
    .is-style-genera-grid-is-1 {
        grid-template-columns: repeat(8, minmax(0, 1fr));
        column-gap: 1.5rem;
        row-gap: 1.5rem;
        padding: 0 2rem;
    }
    .is-style-genera-grid-is-1 > .item-t-start-1 { grid-column-start: 1; }
    .is-style-genera-grid-is-1 > .item-t-start-2 { grid-column-start: 2; }
    .is-style-genera-grid-is-1 > .item-t-start-3 { grid-column-start: 3; }
    .is-style-genera-grid-is-1 > .item-t-start-4 { grid-column-start: 4; }
    .is-style-genera-grid-is-1 > .item-t-start-5 { grid-column-start: 5; }
    .is-style-genera-grid-is-1 > .item-t-start-6 { grid-column-start: 6; }
    .is-style-genera-grid-is-1 > .item-t-start-7 { grid-column-start: 7; }
    .is-style-genera-grid-is-1 > .item-t-start-8 { grid-column-start: 8; }
    .is-style-genera-grid-is-1 > .item-t-end-2 { grid-column-end: 2; }
    .is-style-genera-grid-is-1 > .item-t-end-3 { grid-column-end: 3; }
    .is-style-genera-grid-is-1 > .item-t-end-4 { grid-column-end: 4; }
    .is-style-genera-grid-is-1 > .item-t-end-5 { grid-column-end: 5; }
    .is-style-genera-grid-is-1 > .item-t-end-6 { grid-column-end: 6; }
    .is-style-genera-grid-is-1 > .item-t-end-7 { grid-column-end: 7; }
    .is-style-genera-grid-is-1 > .item-t-end-8 { grid-column-end: 8; }
    .is-style-genera-grid-is-1 > .item-t-end-9 { grid-column-end: 9; }
    .is-style-genera-grid-is-1 > .item-t-align-start   { align-self: start; }
    .is-style-genera-grid-is-1 > .item-t-align-center  { align-self: center; }
    .is-style-genera-grid-is-1 > .item-t-align-end     { align-self: end; }
    .is-style-genera-grid-is-1 > .item-t-align-stretch { align-self: stretch; }
    .is-style-genera-grid-is-1 > .item-t-justify-start   { justify-self: start; }
    .is-style-genera-grid-is-1 > .item-t-justify-center  { justify-self: center; }
    .is-style-genera-grid-is-1 > .item-t-justify-end     { justify-self: end; }
    .is-style-genera-grid-is-1 > .item-t-justify-stretch { justify-self: stretch; }
}
@media (max-width: 100%) {
    .is-style-genera-grid-is-1 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: 1rem;
        row-gap: 1rem;
        padding: 0 1rem;
    }
    .is-style-genera-grid-is-1 > .item-m-start-1 { grid-column-start: 1; }
    .is-style-genera-grid-is-1 > .item-m-start-2 { grid-column-start: 2; }
    .is-style-genera-grid-is-1 > .item-m-start-3 { grid-column-start: 3; }
    .is-style-genera-grid-is-1 > .item-m-start-4 { grid-column-start: 4; }
    .is-style-genera-grid-is-1 > .item-m-end-2 { grid-column-end: 2; }
    .is-style-genera-grid-is-1 > .item-m-end-3 { grid-column-end: 3; }
    .is-style-genera-grid-is-1 > .item-m-end-4 { grid-column-end: 4; }
    .is-style-genera-grid-is-1 > .item-m-end-5 { grid-column-end: 5; }
    .is-style-genera-grid-is-1 > .item-m-align-start   { align-self: start; }
    .is-style-genera-grid-is-1 > .item-m-align-center  { align-self: center; }
    .is-style-genera-grid-is-1 > .item-m-align-end     { align-self: end; }
    .is-style-genera-grid-is-1 > .item-m-align-stretch { align-self: stretch; }
    .is-style-genera-grid-is-1 > .item-m-justify-start   { justify-self: start; }
    .is-style-genera-grid-is-1 > .item-m-justify-center  { justify-self: center; }
    .is-style-genera-grid-is-1 > .item-m-justify-end     { justify-self: end; }
    .is-style-genera-grid-is-1 > .item-m-justify-stretch { justify-self: stretch; }
}

/* ------------------------------------------------------------
   CONFIGURAZIONE: Griglia Pagina
   ------------------------------------------------------------ */
.is-style-genera-grid-is-2 {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 2rem;
    row-gap: 2rem;
    padding: 0 4rem;
    max-width: 88rem;
    box-sizing: content-box;
    margin: 0 auto !important;
}
.is-style-genera-grid-is-2 > .item-d-start-1 { grid-column-start: 1; }
.is-style-genera-grid-is-2 > .item-d-start-2 { grid-column-start: 2; }
.is-style-genera-grid-is-2 > .item-d-start-3 { grid-column-start: 3; }
.is-style-genera-grid-is-2 > .item-d-start-4 { grid-column-start: 4; }
.is-style-genera-grid-is-2 > .item-d-start-5 { grid-column-start: 5; }
.is-style-genera-grid-is-2 > .item-d-start-6 { grid-column-start: 6; }
.is-style-genera-grid-is-2 > .item-d-start-7 { grid-column-start: 7; }
.is-style-genera-grid-is-2 > .item-d-start-8 { grid-column-start: 8; }
.is-style-genera-grid-is-2 > .item-d-start-9 { grid-column-start: 9; }
.is-style-genera-grid-is-2 > .item-d-start-10 { grid-column-start: 10; }
.is-style-genera-grid-is-2 > .item-d-start-11 { grid-column-start: 11; }
.is-style-genera-grid-is-2 > .item-d-start-12 { grid-column-start: 12; }
.is-style-genera-grid-is-2 > .item-d-end-2 { grid-column-end: 2; }
.is-style-genera-grid-is-2 > .item-d-end-3 { grid-column-end: 3; }
.is-style-genera-grid-is-2 > .item-d-end-4 { grid-column-end: 4; }
.is-style-genera-grid-is-2 > .item-d-end-5 { grid-column-end: 5; }
.is-style-genera-grid-is-2 > .item-d-end-6 { grid-column-end: 6; }
.is-style-genera-grid-is-2 > .item-d-end-7 { grid-column-end: 7; }
.is-style-genera-grid-is-2 > .item-d-end-8 { grid-column-end: 8; }
.is-style-genera-grid-is-2 > .item-d-end-9 { grid-column-end: 9; }
.is-style-genera-grid-is-2 > .item-d-end-10 { grid-column-end: 10; }
.is-style-genera-grid-is-2 > .item-d-end-11 { grid-column-end: 11; }
.is-style-genera-grid-is-2 > .item-d-end-12 { grid-column-end: 12; }
.is-style-genera-grid-is-2 > .item-d-end-13 { grid-column-end: 13; }
.is-style-genera-grid-is-2 > .item-d-align-start   { align-self: start; }
.is-style-genera-grid-is-2 > .item-d-align-center  { align-self: center; }
.is-style-genera-grid-is-2 > .item-d-align-end     { align-self: end; }
.is-style-genera-grid-is-2 > .item-d-align-stretch { align-self: stretch; }
.is-style-genera-grid-is-2 > .item-d-justify-start   { justify-self: start; }
.is-style-genera-grid-is-2 > .item-d-justify-center  { justify-self: center; }
.is-style-genera-grid-is-2 > .item-d-justify-end     { justify-self: end; }
.is-style-genera-grid-is-2 > .item-d-justify-stretch { justify-self: stretch; }
@media (max-width: 80rem) {
    .is-style-genera-grid-is-2 {
        grid-template-columns: repeat(8, minmax(0, 1fr));
        column-gap: 1.5rem;
        row-gap: 1.5rem;
        padding: 0 4rem;
    }
    .is-style-genera-grid-is-2 > .item-t-start-1 { grid-column-start: 1; }
    .is-style-genera-grid-is-2 > .item-t-start-2 { grid-column-start: 2; }
    .is-style-genera-grid-is-2 > .item-t-start-3 { grid-column-start: 3; }
    .is-style-genera-grid-is-2 > .item-t-start-4 { grid-column-start: 4; }
    .is-style-genera-grid-is-2 > .item-t-start-5 { grid-column-start: 5; }
    .is-style-genera-grid-is-2 > .item-t-start-6 { grid-column-start: 6; }
    .is-style-genera-grid-is-2 > .item-t-start-7 { grid-column-start: 7; }
    .is-style-genera-grid-is-2 > .item-t-start-8 { grid-column-start: 8; }
    .is-style-genera-grid-is-2 > .item-t-end-2 { grid-column-end: 2; }
    .is-style-genera-grid-is-2 > .item-t-end-3 { grid-column-end: 3; }
    .is-style-genera-grid-is-2 > .item-t-end-4 { grid-column-end: 4; }
    .is-style-genera-grid-is-2 > .item-t-end-5 { grid-column-end: 5; }
    .is-style-genera-grid-is-2 > .item-t-end-6 { grid-column-end: 6; }
    .is-style-genera-grid-is-2 > .item-t-end-7 { grid-column-end: 7; }
    .is-style-genera-grid-is-2 > .item-t-end-8 { grid-column-end: 8; }
    .is-style-genera-grid-is-2 > .item-t-end-9 { grid-column-end: 9; }
    .is-style-genera-grid-is-2 > .item-t-align-start   { align-self: start; }
    .is-style-genera-grid-is-2 > .item-t-align-center  { align-self: center; }
    .is-style-genera-grid-is-2 > .item-t-align-end     { align-self: end; }
    .is-style-genera-grid-is-2 > .item-t-align-stretch { align-self: stretch; }
    .is-style-genera-grid-is-2 > .item-t-justify-start   { justify-self: start; }
    .is-style-genera-grid-is-2 > .item-t-justify-center  { justify-self: center; }
    .is-style-genera-grid-is-2 > .item-t-justify-end     { justify-self: end; }
    .is-style-genera-grid-is-2 > .item-t-justify-stretch { justify-self: stretch; }
}
@media (max-width: 40rem) {
    .is-style-genera-grid-is-2 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: 1.5rem;
        row-gap: 1.5rem;
        padding: 0 4rem;
    }
    .is-style-genera-grid-is-2 > .item-m-start-1 { grid-column-start: 1; }
    .is-style-genera-grid-is-2 > .item-m-start-2 { grid-column-start: 2; }
    .is-style-genera-grid-is-2 > .item-m-start-3 { grid-column-start: 3; }
    .is-style-genera-grid-is-2 > .item-m-start-4 { grid-column-start: 4; }
    .is-style-genera-grid-is-2 > .item-m-end-2 { grid-column-end: 2; }
    .is-style-genera-grid-is-2 > .item-m-end-3 { grid-column-end: 3; }
    .is-style-genera-grid-is-2 > .item-m-end-4 { grid-column-end: 4; }
    .is-style-genera-grid-is-2 > .item-m-end-5 { grid-column-end: 5; }
    .is-style-genera-grid-is-2 > .item-m-align-start   { align-self: start; }
    .is-style-genera-grid-is-2 > .item-m-align-center  { align-self: center; }
    .is-style-genera-grid-is-2 > .item-m-align-end     { align-self: end; }
    .is-style-genera-grid-is-2 > .item-m-align-stretch { align-self: stretch; }
    .is-style-genera-grid-is-2 > .item-m-justify-start   { justify-self: start; }
    .is-style-genera-grid-is-2 > .item-m-justify-center  { justify-self: center; }
    .is-style-genera-grid-is-2 > .item-m-justify-end     { justify-self: end; }
    .is-style-genera-grid-is-2 > .item-m-justify-stretch { justify-self: stretch; }
}

/* ------------------------------------------------------------
   CONFIGURAZIONE: Griglia Footer
   ------------------------------------------------------------ */
.is-style-genera-grid-is-5 {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: 2rem;
    row-gap: 2rem;
    padding: 0 2rem;
    max-width: 100%;
    box-sizing: content-box;
    margin: 0 auto !important;
}
.is-style-genera-grid-is-5 > .item-d-start-1 { grid-column-start: 1; }
.is-style-genera-grid-is-5 > .item-d-start-2 { grid-column-start: 2; }
.is-style-genera-grid-is-5 > .item-d-start-3 { grid-column-start: 3; }
.is-style-genera-grid-is-5 > .item-d-start-4 { grid-column-start: 4; }
.is-style-genera-grid-is-5 > .item-d-start-5 { grid-column-start: 5; }
.is-style-genera-grid-is-5 > .item-d-start-6 { grid-column-start: 6; }
.is-style-genera-grid-is-5 > .item-d-start-7 { grid-column-start: 7; }
.is-style-genera-grid-is-5 > .item-d-start-8 { grid-column-start: 8; }
.is-style-genera-grid-is-5 > .item-d-start-9 { grid-column-start: 9; }
.is-style-genera-grid-is-5 > .item-d-start-10 { grid-column-start: 10; }
.is-style-genera-grid-is-5 > .item-d-start-11 { grid-column-start: 11; }
.is-style-genera-grid-is-5 > .item-d-start-12 { grid-column-start: 12; }
.is-style-genera-grid-is-5 > .item-d-end-2 { grid-column-end: 2; }
.is-style-genera-grid-is-5 > .item-d-end-3 { grid-column-end: 3; }
.is-style-genera-grid-is-5 > .item-d-end-4 { grid-column-end: 4; }
.is-style-genera-grid-is-5 > .item-d-end-5 { grid-column-end: 5; }
.is-style-genera-grid-is-5 > .item-d-end-6 { grid-column-end: 6; }
.is-style-genera-grid-is-5 > .item-d-end-7 { grid-column-end: 7; }
.is-style-genera-grid-is-5 > .item-d-end-8 { grid-column-end: 8; }
.is-style-genera-grid-is-5 > .item-d-end-9 { grid-column-end: 9; }
.is-style-genera-grid-is-5 > .item-d-end-10 { grid-column-end: 10; }
.is-style-genera-grid-is-5 > .item-d-end-11 { grid-column-end: 11; }
.is-style-genera-grid-is-5 > .item-d-end-12 { grid-column-end: 12; }
.is-style-genera-grid-is-5 > .item-d-end-13 { grid-column-end: 13; }
.is-style-genera-grid-is-5 > .item-d-align-start   { align-self: start; }
.is-style-genera-grid-is-5 > .item-d-align-center  { align-self: center; }
.is-style-genera-grid-is-5 > .item-d-align-end     { align-self: end; }
.is-style-genera-grid-is-5 > .item-d-align-stretch { align-self: stretch; }
.is-style-genera-grid-is-5 > .item-d-justify-start   { justify-self: start; }
.is-style-genera-grid-is-5 > .item-d-justify-center  { justify-self: center; }
.is-style-genera-grid-is-5 > .item-d-justify-end     { justify-self: end; }
.is-style-genera-grid-is-5 > .item-d-justify-stretch { justify-self: stretch; }
@media (max-width: 100%) {
    .is-style-genera-grid-is-5 {
        grid-template-columns: repeat(8, minmax(0, 1fr));
        column-gap: 1.5rem;
        row-gap: 1.5rem;
        padding: 0 1.5rem;
    }
    .is-style-genera-grid-is-5 > .item-t-start-1 { grid-column-start: 1; }
    .is-style-genera-grid-is-5 > .item-t-start-2 { grid-column-start: 2; }
    .is-style-genera-grid-is-5 > .item-t-start-3 { grid-column-start: 3; }
    .is-style-genera-grid-is-5 > .item-t-start-4 { grid-column-start: 4; }
    .is-style-genera-grid-is-5 > .item-t-start-5 { grid-column-start: 5; }
    .is-style-genera-grid-is-5 > .item-t-start-6 { grid-column-start: 6; }
    .is-style-genera-grid-is-5 > .item-t-start-7 { grid-column-start: 7; }
    .is-style-genera-grid-is-5 > .item-t-start-8 { grid-column-start: 8; }
    .is-style-genera-grid-is-5 > .item-t-end-2 { grid-column-end: 2; }
    .is-style-genera-grid-is-5 > .item-t-end-3 { grid-column-end: 3; }
    .is-style-genera-grid-is-5 > .item-t-end-4 { grid-column-end: 4; }
    .is-style-genera-grid-is-5 > .item-t-end-5 { grid-column-end: 5; }
    .is-style-genera-grid-is-5 > .item-t-end-6 { grid-column-end: 6; }
    .is-style-genera-grid-is-5 > .item-t-end-7 { grid-column-end: 7; }
    .is-style-genera-grid-is-5 > .item-t-end-8 { grid-column-end: 8; }
    .is-style-genera-grid-is-5 > .item-t-end-9 { grid-column-end: 9; }
    .is-style-genera-grid-is-5 > .item-t-align-start   { align-self: start; }
    .is-style-genera-grid-is-5 > .item-t-align-center  { align-self: center; }
    .is-style-genera-grid-is-5 > .item-t-align-end     { align-self: end; }
    .is-style-genera-grid-is-5 > .item-t-align-stretch { align-self: stretch; }
    .is-style-genera-grid-is-5 > .item-t-justify-start   { justify-self: start; }
    .is-style-genera-grid-is-5 > .item-t-justify-center  { justify-self: center; }
    .is-style-genera-grid-is-5 > .item-t-justify-end     { justify-self: end; }
    .is-style-genera-grid-is-5 > .item-t-justify-stretch { justify-self: stretch; }
}
@media (max-width: 100%) {
    .is-style-genera-grid-is-5 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: 1rem;
        row-gap: 1rem;
        padding: 0 1rem;
    }
    .is-style-genera-grid-is-5 > .item-m-start-1 { grid-column-start: 1; }
    .is-style-genera-grid-is-5 > .item-m-start-2 { grid-column-start: 2; }
    .is-style-genera-grid-is-5 > .item-m-start-3 { grid-column-start: 3; }
    .is-style-genera-grid-is-5 > .item-m-start-4 { grid-column-start: 4; }
    .is-style-genera-grid-is-5 > .item-m-end-2 { grid-column-end: 2; }
    .is-style-genera-grid-is-5 > .item-m-end-3 { grid-column-end: 3; }
    .is-style-genera-grid-is-5 > .item-m-end-4 { grid-column-end: 4; }
    .is-style-genera-grid-is-5 > .item-m-end-5 { grid-column-end: 5; }
    .is-style-genera-grid-is-5 > .item-m-align-start   { align-self: start; }
    .is-style-genera-grid-is-5 > .item-m-align-center  { align-self: center; }
    .is-style-genera-grid-is-5 > .item-m-align-end     { align-self: end; }
    .is-style-genera-grid-is-5 > .item-m-align-stretch { align-self: stretch; }
    .is-style-genera-grid-is-5 > .item-m-justify-start   { justify-self: start; }
    .is-style-genera-grid-is-5 > .item-m-justify-center  { justify-self: center; }
    .is-style-genera-grid-is-5 > .item-m-justify-end     { justify-self: end; }
    .is-style-genera-grid-is-5 > .item-m-justify-stretch { justify-self: stretch; }
}
