@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap');

:root {
    --nav-padding: 12px;
    --red: #cb0303;
    --bg-gray: #d1cdcc;
    --green: #96bd0c;
}

*:focus-visible {
    outline: 0 !important;
}

body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

footer {
    margin-top:auto;
}

/*THE WALL*/

body.soci .gallery-simple div.col-10 {
    flex-basis: 9% !important;
max-width: 9% !important;
}

/* Viewport */
#viewport{
    width:100%;
    height:450px;
    position:relative;
    overflow:hidden;
    margin:0 auto;
    background:#212121;
}
/* Wall */
#wall{
    z-index:1;
}

/* Tile Wall create */
#wall .tile{
    color:#FFFFFF;
    text-align:center;
    line-height:180px;
    display: flex;
}

@keyframes opacity {
  from {
    opacity:0;
  }

  to {
    opacity:1;
  }
}

.visible {
    display:block !important;
}

html, body, a, button, h1, h2, h3, h4, h5, h6, p {
    font-family: 'Oswald', sans-serif;
    
}

body {
    color: #807979;
}

p {
    color: #807979;
    font-size: 1rem;
    font-weight: 300;
}

strong {
     font-weight: 400;
}

li {
    font-size: 1rem;
    font-weight: 300;
}

.pod.pod--compact .pod__text h5, .pod.pod--compact .pod__text .h5 {
    font-weight: 300;
}

a {
    -webkit-transition: background 0.3s ease, color 0.3s ease;
    -o-transition: background 0.3s ease, color 0.3s ease;
    transition: background 0.3s ease, color 0.3s ease;
    text-decoration: none;
    cursor: pointer;
}


h1, h2 {
    font-weight:200;
    color: var(--red);
}

body:not(.home) main#content {
    padding-top:100px;
}

main#content > div:first-of-type {
    padding-top: 0;
} 

body:not(.home, .area-soci, .progetti-di-filiera, .brand) main#content > div.block.white-bg:first-of-type:not(.grid) {
    height: 60vh;
    margin-bottom: 50px;
}

body.soci main#content > div.block.white-bg:first-of-type {
    padding-bottom: 0px;
    margin-bottom:50px;
}

body:not(.home, .area-soci, .progetti-di-filiera, .brand) main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure {
    height: 60vh;
}


body:not(.home, .area-soci, .modello-organizzativo) main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: 86% 80%;
}

body.gdo main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure img {
    object-position: 86% 11%;
}

body.storia main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure img {
    object-position: 86% 41%;
}

body.soci main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure img {
    object-position: 50% 18%;
}

body.bilancio-sostenibilita main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure img {
    object-position: 56% 30%;
}

body.rete-commerciale main#content > div.block.white-bg:first-of-type:not(.grid) > div:not(.container--small) figure img {
    object-position: 53% 50%;
}

body:not(.home) main#content > div.block.white-bg:not(.grid) > div:not(.container--small) figure img + figcaption {
    color: white;
    font-style: normal;
    text-align:right;
    font-size: 4rem;
    position: absolute;
    bottom: -23px;
    text-transform: uppercase;
    right: 36px;
    text-shadow: -1px 1px 8px rgba(64,64,64,0.6);
}

.container-fluid {
    padding-left: 0;
    padding-right:0;
}

.pagination {
    display:flex;
    justify-content: center;
}

.pagination .main-nav__li {
    padding: 0 10px;
}

.pagination .main-nav__li a {
    color: black;
}

.pagination .main-nav__li.selected a {
    font-weight: 400;
    color: var(--red);
}

/* HEADER */

.top--light .logo--on-light {
    width: 165px;
}

header img {
    object-fit:contain;
}

header > div:not(.top-inner) {
    background: var(--red); !important;
    background-color: var(--red); !important;
    width: 100%;
}

header > div:not(.top-inner) > ul {
    margin-bottom: 0;
    text-transform:uppercase;
    max-width: var(--grid-width);
    padding: 0 var(--grid-gutter);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-end;
}

header > div:not(.top-inner) > ul li {
   min-width:auto !important;
   padding: 0 var(--nav-padding);
}

.main-nav__ul--first > .main-nav__li > .main-nav__a {
   padding: 0 var(--nav-padding);
}

 header a.main-nav__a {
   font-size: 0.9rem;
}

header > div:not(.top-inner) ul li a {
    font-size: 0.75rem;
}

header div.top-inner a.main-nav__a {
    color: #807979 !important;
    font-weight: 400;
    letter-spacing: 0.5px;
}

.main-nav__li.selected > .main-nav__a {
    color: var(--red) !important;
}

header .top-inner .top__middle .main-nav__ul--second .main-nav__a {
    font-size:0.75rem;
    padding: 0.5em 1.25em;
}


/* BODY */


/*-------Home------*/

main#content > section.slider {
    height: 70vh;
}

main#content > section.slider img {
    height: 70vh;
    width: 100%;
    object-fit: cover;
}

.top + #content {
    margin: 0;
}

body.home main#content > div:first-of-type {
    padding: 50px 0 54px 0;
} 

.grid-item {
    margin-bottom: 0 !important;
    display: flex;
}

.block.grid {
    padding-bottom: 54px;
}

.block.grid article.box {
  box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);
  border: 0;
  max-width: 70vw;
  margin: 0 auto;
}

.block.grid article.box .box__text {
    padding: 25px 20px !important;
}

.block.grid .container-fluid .row {
    display: flex;
    align-items: stretch;
}

.block.grid .container-fluid .row .grid-item {
    justify-content: center;
}

.block.grid .container-fluid .row .grid-item, 
.block.grid .container-fluid .row .grid-item .block__body, 
.block.grid .container-fluid .row .grid-item .block__body .container {
    display: flex;
    align-items: stretch;
}

.block.grid .container-fluid .row .grid-item .block__body article {
    display: flex;
    flex-direction: column;
}


.block.grid .container-fluid .row .grid-item .block__body article div:last-of-type {
    margin-top: auto;
}


.box .box__text p {
    font-size: 1rem;
    line-height: 1.5;
    font-weight:300;
}

main#content article .box__text p {
    font-weight:300;
}


body.home .block.grid article.box .box__image h3 {
    position: absolute;
    /*top: -58px;*/
    /*right: 9px;*/
    font-size: 3rem;
    text-transform: uppercase;
    font-weight: 400;
    line-height: 0.9;
    bottom:0;
    right:5px;
    margin:0;
}

body.home .block.grid article.box .box__image {
    position:relative;
}

.block.grid article.box .box__image h3 a {
    color: #fff;
    text-shadow: -1px 1px 8px rgba(64,64,64,0.6);
}

.block.grid article.box .box__image > a {
    height: 240px;
    display: block;
    width: 100%;
}

.block.grid article.box .box__image > a img {
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

#content .block.grid .block__body .container {
    padding-right: 10px;
    padding-left: 10px;
}

.button, input[type="submit"], input[type="button"] {
    background: var(--bg-gray);
    color: #ffffff !important;
    border-color: var(--bg-gray);
    font-size: 1.5rem;
    font-weight: 300;
    border-radius: 0;
    letter-spacing: 0px;
    line-height: 1;
    padding: 0 0.9em;
}

.button:hover, input[type="submit"]:hover, input[type="button"]:hover {
    background: var(--red);
    border-color: var(--red);
    color: #ffffff;
}

.button-wrap {
    display:flex;
    -webkit-box-pack: end !important;
    justify-content: flex-end !important;
}

.button-wrap .button { 
    margin: 1px !important;
}



section.block {
    padding: 30px 0;    
    margin: 0;
    background: #ffffff;
}

.block__header {
    max-width:100%;
    background: var(--bg-gray);
    text-transform: uppercase;
}

.block__header h2 {
    color: #ffffff;
    font-weight:300;
}

.brand_homepage .row > div[class*="col-"] {
    flex-basis: 33%;
    max-width: 33%;
}

.brand_homepage .block__body > .container {
    max-width: 100%;
}

.brand_homepage .block__body > .container > .row > div article > div:last-of-type:not(.box__text) {
    margin-top: auto;
    padding-right:0 !important;
}

.brand_homepage .block__body article > div:last-of-type:not(.box__text) a {
    color: #ffffff;
    font-weight: 300;
    font-size: 1.3rem;
    display: inline-block;
    text-align: center;
    width: 50%;
    text-transform:uppercase;
}

.brand_homepage .block__body article {
    display:flex;
    flex-direction:column;
    max-width:70vw;
    margin: 0 auto;
    border: 1px solid #ffffff;
}

.brand_homepage .block__body article:hover {
    border: 1px solid var(--bg-gray);
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(1) article > div:last-of-type:not(.box__text) a {
    background: var(--bg-gray);
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(1) article > div:last-of-type:not(.box__text) a:hover, 
.brand_homepage .block__body > .container > .row > div:nth-of-type(1) article:hover > div:last-of-type:not(.box__text) a {
    background: var(--red);
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(1) article .box__text strong {
    color: var(--red);
    font-weight: 350;
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(2) article > div:last-of-type:not(.box__text) a {
    background: var(--bg-gray);
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(2) article > div:last-of-type:not(.box__text) a:hover,
.brand_homepage .block__body > .container > .row > div:nth-of-type(2) article:hover > div:last-of-type:not(.box__text) a {
    background: var(--green);
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(2) article .box__text strong {
    color: var(--green);
    font-weight: 350;
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(3) article > div:last-of-type:not(.box__text) a {
    background: var(--bg-gray);
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(3) article > div:last-of-type:not(.box__text) a:hover,
.brand_homepage .block__body > .container > .row > div:nth-of-type(3) article:hover > div:last-of-type:not(.box__text) a {
    background: #e10071;
}

.brand_homepage .block__body > .container > .row > div:nth-of-type(3) article .box__text strong {
    color: #e10071;
    font-weight: 350;
}

.brand_homepage img {
    object-fit: contain;
}

.brand_homepage .row > div[class*="col-"]:nth-of-type(1) img, .brand_homepage .row > div[class*="col-"]:nth-of-type(2) img, .brand_homepage .row > div[class*="col-"]:nth-of-type(3) img {
    max-width: 280px;
}

.brand_homepage .row > div[class*="col-"]:nth-of-type(3) img {
    max-width: 250px;
}

.brand_homepage article > div:first-child:not(.box__text), .brand_homepage article > div:last-child:not(.box__text) h6 {
    position: relative;
    height: 50px;
}

.brand_homepage article > div:first-child:not(.box__text) img {
    padding-left: 0 !important;
    position:absolute;
    left: 50%;
    top: -20%;
    transform: translate(-50%, -50%);
}

.brand_homepage article > div:last-child:not(.box__text) h6 a {
    position:absolute;
    left: 50%;
    top: 115%;
    transform: translate(-50%, -50%);
}


.brand_homepage .row {
    padding-top: 60px;
}


.white-bg .box {
    border: 0;
}

.servizi_homepage .container {
    max-width:100%;
}

.servizi_homepage .block__body {
    margin-top: 30px;
}

.servizi_homepage div[class*="col-"]  {
    margin-bottom: 0;
    height: calc(100vw/4 - 60px);
}

.servizi_homepage article.box {
    position:relative;
    max-width: 70vw;
    margin: 0 auto;
}

.servizi_homepage .box__image {
    height: 100%;
    display: flex;
}

.servizi_homepage .box__image a {
   width: 100%;
}

.servizi_homepage .box__image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}


.servizi_homepage .box__image + .box__text {
    position: absolute;
    width: 100%;
    height:100%;
    padding: 0;
    bottom: 0px;
    text-align:right;
    background: rgba(0, 0, 0, 0.56);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background ease .5s;
}

.servizi_homepage article:hover .box__image + .box__text {
    background: rgba(0, 0, 0, 0.2);
}


.servizi_homepage .box__image + .box__text a {
    color: #ffffff;
    font-weight: 300;
    display: block;
    padding: 0 10px;
    font-size: 1.8vw;
    text-transform: uppercase;
}

.servizi_homepage .box__image + .box__text > * {
    margin: 0;
}


.notizie_homepage .box {
    -webkit-box-shadow: none;
    box-shadow: none;
    max-width:70vw;
    margin: 0 auto;
}

.box h1, .box h2, .box h3, .box h4, .box h5, .box h6 {
    color: #807979 !important;
}

.notizie_homepage .row {
    justify-content: space-between;
}

.notizie_homepage .row > div {
    padding: 0;
    max-width: 27%;
}


.notizie_homepage article {
    /*background: #f1f1f1;*/
    display: flex;
    flex-direction: column;
}

.notizie_homepage article:hover {
    box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);
}


.notizie_homepage .box__image a {
    height: 200px;
    display: block;
    width: 100%;
    padding: 10px;
}

.notizie_homepage .box__image a img {
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

.notizie_homepage .box__text {
    padding: 15px !important;
    display: flex;
    flex-direction: column;
    height:100%;
}

.notizie_homepage .box__text a {
    padding: 20px 10px;
}


.notizie_homepage .box__text a {
    background: var(--bg-gray);
    /*float: left;*/
    color: #ffffff;
    font-weight: 300;
    font-size: 1.3rem;
    display: block;
    text-align: center;
    width: 100%;
    text-transform: uppercase;
    padding: 0;
}

.notizie_homepage .box__text .h5 {
    font-family: Oswald !important;
    font-size: 1.5rem !important;
    font-weight: 300;
    color: var(--red) !important;
}

.notizie_homepage .box__text p:last-of-type {
    padding-top:30px;
    margin-top: auto;
}


.notizie_homepage .box__text a:hover, .notizie_homepage article:hover .box__text a  {
    background: var(--red);
    border-color: var(--red);
    color: #ffffff;
}

.box, .box:hover {
    box-shadow: none;
    background: none;
}

.aziende_homepage .row {
    align-items: center;
}

.aziende_homepage .row > [class*="col-"] {
    justify-content: center;
    display: flex;
    max-width:170px;
    
}

.aziende_homepage article {
    max-width: 170px;
    height: auto;
    width: 100%;
}

.aziende_homepage article .box__image a {
    display: flex;
    height: 47px;
}

.aziende_homepage .row > [class*="col-"]:nth-of-type(2) article .box__image a {
    width: 163px;
}

.aziende_homepage .row > [class*="col-"] article .box__image a img {
    object-fit: contain;
    width:100%;
    height:100%;
}

.aziende_homepage .row > [class*="col-"]:nth-of-type(2) article .box__image a img {
    object-position: 50% 62%;
}

.aziende_homepage .row > [class*="col-"]:nth-of-type(2) {
    max-width: 194px;
}

body.home main > div.block.grid:last-of-type {
    padding-top: 0;
}

/*-----------------------------------------------------------------------------Pagina Prodotti----------------------------------------------------*/


body[class*="prodotti_"] div.description > section.block.feed article.box {
    box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);
}

body[class*="prodotti_"] div.description > section.block.feed article.box a .box__text {
    padding: 0;
    margin-top: auto;
    text-align: center;
    background: var(--bg-gray);
    transition: all 0.3s ease;
}


body[class*="prodotti_"] div.description > section.block.feed article.box a.active .box__text,
body[class*="prodotti_"] div.description > section.block.feed article.box:hover a .box__text {
    background: var(--red);
}

body[class*="prodotti_"] div.description > section.block.feed article.box .box__text p {
    color: #ffffff;
}

body[class*="prodotti_"] div.description > section.block.feed article.box a {
    display: flex;
    flex-direction: column;
    height: 100%;
}


body[class*="prodotti_"] div.description + div.details > div {
    display: flex;
    flex-direction: column;
}

body[class*="prodotti_"] div.description + div.details > div > div:first-of-type {
    display: flex;
    flex-direction: row;
}

body[class*="prodotti_"] div.description + div.details > div > div:first-of-type > div:last-of-type {
    display: block;
align-self: center;
}

body[class*="prodotti_"] div.description + div > div img{
    object-fit: contain;
    width: 350px;
    height: 250px;
}

body[class*="prodotti_"] div.description + div > div img.calendar{
    object-fit: contain;
    width: 100%;
    height: 170px;
}



body[class*="prodotti_"] div.description + div > div> div:first-of-type {
    /*box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);*/
    margin-bottom: 30px;
}


body[class*="prodotti_"] main#content {
    padding-top: 100px;
}

body[class*="prodotti_"] .description article.box {
    border: 2px solid white;
}


body[class*="prodotti_"] .description {
    flex: 2.5;
}

body[class*="prodotti_"] .description > .container {
    padding-left:0;
}

body[class*="prodotti_"] .description > .container > div {
    font-size: 0.8rem;
    font-weight:300;
}

body[class*="prodotti_"] .description section .container  div[class*="col-"] {
    padding-left: 0;
    margin-bottom:15px;
}

body[class*="prodotti_"] .description section .container {
    max-width: 480px;
    margin-right: 0;
    padding: 0;
}

body[class*="prodotti_"] .description {
    padding-bottom:50px;
          animation-duration: 2s;
  animation-name: opacity;
}


body[class*="prodotti_"] .details {
    flex: 3.5;
      animation-duration: 2s;
  animation-name: opacity;
}

body[class*="prodotti_"] .details > div {
    max-width: 90%;
}


body[class*="prodotti_"] .container_fluid > div:not(.block__header):nth-of-type(2) {
    /*max-width: 1500px;*/
    margin: 0 auto;
    padding-top: 50px;
}

body[class*="prodotti_"] .container_fluid > div:not(.block__header):nth-of-type(3) {

    padding-bottom: 50px;
}

body[class*="prodotti_"] .description article img {
    width: 200px;
    height: 110px;
    object-fit: contain;
    object-position: center center;
}

body[class*="prodotti_"] .description article .box__image {
display: flex;
justify-content: center;
}

span.detail_red {
    color: var(--red);
}

/* Certificazioni */

body.certificazioni .block.grid.white-bg .container .row {
    align-items: stretch;
}

body.certificazioni .block.grid.white-bg .container .row div[class*="col-"] {
    padding-bottom: 30px;
} 

body.certificazioni .block.grid.white-bg .container .row div[class*="col-"] .grid-item {
    height: 100%;
    align-items: center;
}

body.certificazioni .block.grid.white-bg .container .row div[class*="col-"] .grid-item .pod__image {
    top: calc(45% - 10px) !important;
}



/* Area Soci */

body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type {
    padding:60px;
    display: flex;
    justify-content: end;
}

body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type .grid-item {
    padding:60px 30px;
    max-width: 560px;
}

body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:last-of-type {
    display: flex;
    align-items: flex-end;
    justify-content: end;
    margin-left: auto;
}

body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:last-of-type .grid-item ,
body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:last-of-type .grid-item figure {
    height: 100%;
    width: 100%;
    display: flex;
}

body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:last-of-type .grid-item img {
    object-fit: contain;
    display: block;
    object-position: bottom;
}

body.area-soci h1 {
    margin-top:20px;
}

/*.grid-item--boxed {*/
/*    border: 0;*/
/*}*/


body.modello-organizzativo main#content div.block.white-bg > div:not(.container--small) figure img {
    object-fit: cover;
width: 100%;
height: 100%;
object-position: 89% 0%;
}


/*------------------ Brand ---------------------*/


/* Fresco Senso */

body.fresco-senso section:first-of-type div.row {
    padding: 40px 0 20px 0;
}

body.fresco-senso div.block figure img {
    width: 500px;
    margin: 0 auto;
}

body.fresco-senso section div.col-100 p:not(:last-of-type ) {
    padding: 0 60px;
}



/* Questo l'ho fatto io */


body.questo-l-ho-fatto-io section:first-of-type div.row {
    padding: 40px 0 20px 0;
}


body.questo-l-ho-fatto-io section div.col-100 p:last-of-type {
    position: relative;
    height: 47px;
}


body.questo-l-ho-fatto-io section div.col-100 p:not(:last-of-type ) {
    padding: 0 60px;
}


/* Le Officine Della Terra */

body.le-officine-della-terra section.block.text:first-of-type {
    padding-bottom:50px;
    padding-top:0;
}

body.le-officine-della-terra main > div > div.block {
    padding-bottom:50px;
}

body.le-officine-della-terra main > div > div.block:first-of-type figure img {
    width:280px;
    margin: 0 auto;
}

body.le-officine-della-terra .repeaterOfficine {
    padding: 10px 0 60px 0;
}


body.le-officine-della-terra .repeaterOfficine .container {
    width: 740px;
}

body.le-officine-della-terra .repeaterOfficine article.box {
    position: relative;
    box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);
}



body.le-officine-della-terra .repeaterOfficine article.box a .box__text {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 2px;
    text-align: center;
    background: var(--bg-gray);
    border: 1px solid #fff;
}

body.le-officine-della-terra .repeaterOfficine article.box a .box__text p {
    color: #fff;
}


body.le-officine-della-terra .repeaterOfficine article.box a.active .box__text, body.le-officine-della-terra .repeaterOfficine article.box:hover a .box__text {
    background: var(--red);
}

body.le-officine-della-terra .repeaterOfficine article.box a .box__image img {
    padding-top:0 !important;
}

/* Footer */



footer {
    padding:0 !important;
    background: rgb(203,3,3);
    background: linear-gradient(180deg, rgba(203,3,3,1) 0%, rgba(120,0,0,1) 100%);
}

footer p {
    font-size: 1.2rem !important;
    font-weight: 200 !important;
    color: white;
}

footer p:not(.subtitle) {
    font-size: 0.85rem !important;
    line-height:1;
    margin-bottom: 5px;
}

footer nav ul {
    flex-wrap: wrap;
}

footer nav ul li {
    text-transform: uppercase;
}

footer nav ul > li {
    padding-left: 0 !important;
    padding-right: 15px;
}

footer nav ul li a {
    font-weight: 200 !important;
}

footer nav {
    display:none;
}

.to-top--theme, .to-top--theme:hover {
    background: rgb(203,3,3);
    color: #ffffff;
}

.social-nav li a:hover {
    color: #ffffff !important;
    background-color: var(--red) !important;
}

footer a, footer a:hover {
    color: #fff;
}

footer .footer-item h2 {
    font-weight:300;
}

footer .footer-item ul {
    padding-top: 40px;
}



div.details.mobile {
    position: fixed;
    width: 100%;
    height: 100vh;
    background: #fff;
    top: 100px;
    left: 0;
    display:none;
}

div.details.mobile > div > div:first-of-type  {
    height: 210px;
}

div.details.mobile > div > div:last-of-type  {
    position: relative;
    overflow-y: scroll;
    height: calc(100vh - 400px);
    width: 92vw;
}



body.strumenti main .section {
    min-height: 41vh;
}


/*body main > div:last-of-type.block.grid:not(:first-of-type) .container-fluid .row img,*/
/*body.brand main > div:last-of-type.block.grid .container-fluid .row img,*/
/*body.news main > div:last-of-type.block.grid .container-fluid .row img {*/
/*    width: 170px;*/
/*} */

/*body main > div:last-of-type.block.grid:not(:first-of-type) .container-fluid .row div[class*="col-"]:nth-of-type(2) img,*/
/*body main > div:last-of-type.block.grid:not(:first-of-type) .container-fluid .row div[class*="col-"]:nth-of-type(2),*/
/*body.brand main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]:nth-of-type(2) img,*/
/*body.brand main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]:nth-of-type(2), */
/*body.news main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]:nth-of-type(2) img,*/
/*body.news main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]:nth-of-type(2),*/
/*body.contatti main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]:nth-of-type(2) img,*/
/*body.contatti main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]:nth-of-type(2) {*/
/*    width: 140px;*/
/*} */




/*
body main > div:last-of-type.block.grid:not(:first-of-type) .container-fluid .row div[class*="col-"],
body.brand main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"],
body.news main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"],
body.contatti main > div:last-of-type.block.grid .container-fluid .row div[class*="col-"],
body[class*=le-officine] main > div > div:last-of-type.block.grid .container-fluid .row div[class*="col-"]{
        justify-content: center;
        
}
*/


body.news article {
    display: flex;
    flex-direction: column;
}

body.news article:hover {
    box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);
}


body.news .box__image a {
    height: 260px;
    display: block;
    width: 100%;
    padding: 10px;
}

body.news .box__image a img {
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

body.news .box__text {
    padding: 15px !important;
    display: flex;
    flex-direction: column;
    height:100%;
}

body.news .box__text a {
    padding: 20px 10px;
}


body.news .box__text a {
    background: var(--bg-gray);
    /*float: left;*/
    color: #ffffff;
    font-weight: 300;
    font-size: 1.3rem;
    display: block;
    text-align: center;
    width: 100%;
    text-transform: uppercase;
    padding: 0;
}

body.news .box__text .h5 {
    font-family: Oswald !important;
    font-size: 1.5rem !important;
    font-weight: 300;
    color: var(--red) !important;
}

body.news .box__text p:last-of-type {
    padding-top:30px;
    margin-top: auto;
}


body.news .box__text a:hover, .notizie_homepage article:hover .box__text a  {
    background: var(--red);
    border-color: var(--red);
    color: #ffffff;
}

.page_news_detail {
   max-width: 884px;
}

.text-center {
    text-align: center !important;
}

.justify-content-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
}

.mx-auto {
    margin-left: auto !important;
    margin-right:auto !important;
}


.page_news_detail img {
    width: 825px;
    height: 518px;
    object-fit: cover;
}

body.news .page_news_detail article:hover {
    box-shadow: none;
}


body.contatti main > div:last-of-type.block.grid {
    margin-top:60px;
}


/* Breakpoints */




@media all and (max-width:1240px) {
    
    header a.main-nav__a {
       font-size: 0.8rem !important;
    }
    
     section.brand_homepage .row > [class*="col-"] {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }
    
     section.brand_homepage .row > div[class*="col-"]:not(:last-child) {
        margin-bottom: 130px;
    }
    
     section.brand_homepage .row > div[class*="col-"]:last-child {
        margin-bottom: 50px;
    }
    
    body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type {
        padding:0;
    }
    

  

}


@media all and (min-width:1025px) and (max-width:1240px) {
    
     header a.main-nav__a {
       font-size: 0.8rem !important;
    }
    
    .block.grid article.box .box__text h3 {
        top: -44px;
        font-size: 2.2rem;
    }
    
    .block.grid article.box .box__image a {
        height: 190px;
    }
    
    body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type {
        padding:0;
    }

}

 
@media all and (min-width:769px) and (max-width:1024px) {
   
    header a.main-nav__a {
       font-size: 0.8rem !important;
    }
     
    .block.grid article.box .box__text h3 {
        top: -31px;
        font-size: 1.7rem;
    }
    
    .block.grid article.box .box__image a {
        height: 150px;
    }
    
    body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type {
        padding:0;
    }

}


@media all and (max-width:992px) {

    body.home main#content > div:first-of-type  {
        padding: 50px 0 50px 0;
    } 
    
   /* body:not(.progetti-di-filiera, .area-soci) main#content > div:first-of-type div[class*="col-"] {
        height: 70vh;
    }*/
    
     main#content > div:first-of-type div[class*="col-"] figure {
        height: 100%;
    }
    
     body:not(.progetti-di-filiera, .le-officine-della-terra, .brand) main#content > div:first-of-type div[class*="col-"] figure img {
        object-fit: cover;
        height: 100%;
        width: 100%;
    }
    
    nav.main-nav {
        top: 0;
        height: 100%;
        background: rgba(0, 0, 0, 0.27) !important
    }
    
    nav.main-nav > ul {
        width: 50%;
        margin-left: auto;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background-color: #ffffff;
        position: fixed;
        right: 0;
    }
    
    nav.mobile-actions li {
        padding: 0 15px;
    }
    
     nav.mobile-actions a i {
        font-size: 1.8rem;
        line-height: 1.1;
    }
    
    .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
        height: 3px;
    }
    
    .button-wrap .button {
        width: 50%;
        line-height: 1.3;
    }
    
        body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type {
        padding:0;
        justify-content: center;
    }
    
    body.le-officine-della-terra main > div > div.block:first-of-type figure img {
        width:280px;
        margin: 0 auto;
    }
    
    .pagination .main-nav__li {
        width: auto !important;
    }
    
}


@media all and (max-width:900px) {
    .row {
        flex-wrap: wrap !important;
        flex-flow: wrap !important;
    }
    
    body.home section:not(.aziende_homepage, .servizi_homepage) .row > [class*="col-"] {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }
    
    body:not(.area-soci) div.block.grid .row > [class*="col-"], section:not(.servizi_homepage) .row > [class*="col-"] {
        padding: 10px 10px 40px 10px
    }
    
    .aziende_homepage .row > [class*="col-"] {
        flex-basis: 50% !important;
    }
    
    .aziende_homepage .row {
        justify-content: center;
    }
    
    .servizi_homepage h3 {
        font-size: 1.5rem;
    }
    
    .servizi_homepage {
        padding-bottom: 0 !important;
    }
    
    .servizi_homepage .row > [class*="col-"] {
        flex-basis: 50%;
        max-width: 50%;
        padding: 0 15px 30px 15px;
        height: calc(100vw/2 - 60px);
    }
    
    .servizi_homepage .box__image + .box__text a {
        font-size: 3.6vw;
    }
    
    .brand_homepage .row > div[class*="col-"]:not(:last-of-type) {
        margin-bottom: 80px;
    }

  
    p {
        font-size: 1.4rem !important;
    }
    
         body.fresco-senso div.col-100 p:not(:last-of-type), 
    body.questo-l-ho-fatto-io div.col-100 p:not(:last-of-type) {
        padding: 0 15px;
    }
    
    
    body.fresco-senso div.col-100 p:last-of-type, 
    body.questo-l-ho-fatto-io div.col-100 p:last-of-type {
        margin: 0;
        height: 0;
    }

    
    body.area-soci main#content > div:first-of-type .row > div[class*="col-"]:first-of-type {
        padding:0;
        justify-content: center;
    }
    
    body[class*="prodotti_"] .description .container {
        max-width: 100% !important;
    }
    
    body[class*="prodotti_"] .description .container div[class*="col-"] {
        flex-basis:50% !important;
        max-width:50% !important;
    }
    
    body.le-officine-della-terra main > div > div.block:first-of-type figure img {
        width: 320px;
        margin: 0 auto;
    }
    
    body:not(.area-soci) div.block.grid .row > [class*="col-"], section:not(.servizi_homepage) .row > [class*="col-"] {
        padding: 10px;
    }
    
    body.news [class*="col-"] {
        width:100%;
        margin-bottom: 50px;
    }
    
    
    body[class*="prodotti_"] .description article img {
        width:100%;
        height:100%;
    }
    
    
    body[class*="prodotti_"] .description section .container div[class*="col-"] .box__image {
        height: calc(50vw - 150px);
        width:100%;
    }
}

@media all and (max-width:884px) {
    .page_news_detail img {
            width: 100%;
    height: 60vw;
    }

}


@media all and (max-width:768px) {
    
    body.le-officine-della-terra .repeaterOfficine .container {
        width: auto;
    }
    
    body.le-officine-della-terra .repeaterOfficine .row div[class*="col-"] {
        max-width: none !important;
        flex-basis:50%;
    } 
    
    body.news .box__image a {
        height: 260px;
    }
  
}


@media all and (max-width:720px) {
    

    
    body:not(.home) main#content .block.white-bg figure img + figcaption {
        font-size: 3.5rem;
        bottom: -17px;
        right: 12px;
    }
    
    body[class*="prodotti_"] div.description + div > div:first-of-type img:not(.calendar) {
        object-fit: contain;
        width: 40vw;
        height: 100%;
    }
    
    body[class*="prodotti_"] div.description + div > div:first-of-type img:not(.calendar) {
        object-fit: contain;
        width: 40vw;
        height: 100%;
    }
    
}


@media all and (max-width:480px) {

    .block.grid article.box, .brand_homepage .block__body article, .servizi_homepage article.box, .notizie_homepage .box  {
      max-width: 90vw;
    }
    
     .servizi_homepage .row > [class*="col-"] {
        flex-basis: 100% !important;
        max-width: 100% !important;
        height: calc(100vw - 60px);
    }
    
    .servizi_homepage .box__image + .box__text a {
        font-size: 7vw;
    }
    
     body:not(.home) main#content .block.white-bg figure img + figcaption {
        font-size: 2.5rem;
        bottom: -13px;
        right: 12px;
    }
    
    body[class*="prodotti_"] div.description + div > div:first-of-type img:not(.calendar) {
        object-fit: contain;
        width: 54vw;
        height: 100%;
    }
    
    
   
    

    
}



.to-top.tornaSu {
    position:initial;
    display:inline-block;
    width:170px;
    text-transform: uppercase;
    color:white;
    background-color: var(--red);
    border-radius:0;
}


.area-soci .button-wrap {
    -webkit-box-pack: center !important;
justify-content: center !important;
margin-right: 15px;
}
.lavora-con-noi .button-wrap {
    -webkit-box-pack: center !important;
justify-content: center !important;
}



/*--------------------form------------------*/

footer .footer_title {
    font-weight: 200;
    font-size: 1.3rem;
}

footer .footer_title + .container{
    padding: 0;
}

footer form .container {
    padding-left: 0;
}

footer form .container > .row > [class*="col-"] {
    max-width: 400px;
}


footer form .container > .row:first-of-type {
    padding-bottom: 34px;
}

footer form input {
    padding: 7px 20px !important;
    background-color: transparent !important;
    color: white !important;
    border: 2px solid !important;
    margin:0 !important;
}

footer form .button {
    color:var(--red) !important;
    text-transform: uppercase;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
}


form .button:hover {
    background: #fff;
    border-color: #fff;
    color: var(--red);
}

footer > .container > .row > [class*="col-"]:first-of-type {
    margin-bottom:20px;
}

.field-validation-error {
    color: #c9c9c9;
    font-weight: 300;
    font-size: 1rem;
    letter-spacing: 1px;
    margin: 0;
    position: absolute;
    line-height: 2;
}

::placeholder {
    color: white !important;
    opacity: 1;
}



/*marchi del gruppo*/

.marchi-del-gruppo-footer {
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}

.marchi-del-gruppo-footer .row > div:first-child .block__header {
    width:100%;
} 

.marchi-del-gruppo-footer .row > div:not(:first-child) {
    width:150px;
    max-width: 161px !important;
    height: 89px !important;
    align-items: center;
    display: flex;
    flex-basis:20%;
    padding-bottom: 10px !important;
}

.marchi-del-gruppo-footer .row > div:not(:first-child) img {
    object-fit: contain !important;
   width: 100%;
    height: 100%;
    max-height: 45px;
}

.form_newsletter_2022 label{
        display:inline-block;
        margin-top:10px;
        font-family: 'Oswald', sans-serif;
        font-size:16px;
        font-weight:bold;
}
.form_newsletter_2022 a{
    display:inline-block;
    font-family: 'Oswald', sans-serif;
    font-weight:bold;
    text-decoration:underline;
    font-size:16px;
}
.form_newsletter_2022 button{
    background:#FFF;
    color:rgb(203, 3, 3);
    padding:6px 16px;
    text-transform:uppercase;
    transition:0.5s;
}
.form_newsletter_2022 input[type="checkbox"]{
    margin-right:5px;
}
.form_newsletter_2022 label span{
    display:inline-block;
    margin-left:5px;
}
.form_newsletter_2022 button:hover{
    opacity:0.8;
}

.footer .footer-item ul.social-nav{
    padding-top:0;
}

.footer-item--social-links{
    margin-top:20px;
}
.progetti-home {
    padding: 0px 0 50px 0;
}
.progetti-home .block__header {
width:100%;
}

.progetti-home .container-fluid > div {
gap:30px;
}
.progetti-home .sub-grid {
    box-shadow: 0px 3px 6px -1px rgba(161,161,161,0.7);
}
.progetti-home .sub-grid .grid-item--header p {
    font-size: 1.5rem;
    font-weight: 300;
    color: var(--red);
}
.progetti-home .sub-grid .grid-item--text p {
    font-size: 17.4px;
}
.progetti-home .sub-grid .col-100 {
    padding: 5px 20px;
}

.progetti-home .sub-grid .grid-item--image figure {
    width: 100%;
}
.progetti-home .sub-grid .grid-item--image a {
   display: block;
    width: 100%;
    height: 230px;
    overflow: hidden;
}
.progetti-home .sub-grid .grid-item--image a img {
    object-fit: cover;
    object-position: center;
    height: 100% !important;
}
.progetti-home .sub-grid .col-100:first-of-type {
    padding: 0;
}
.progetti-home .sub-grid .col-100:last-of-type .grid-item--button {
    padding: 15px 0;
}
.progetti-home .button-wrap .button {
    width:100%;
}
@media (max-width:900px) {
    .progetti-home .col-33.col-s-100 {
        max-width: 70vw;
        width: 100%;
        flex-basis: 100%;
    }
    .progetti-home .sub-grid .col-100 {
       padding: 0 !important;
    }
    .progetti-home .sub-grid .grid-item--image a {
    height: 190px;
    }
    .progetti-home .sub-grid .grid-item--header  {
        padding: 15px 10px;
    }
    .progetti-home .sub-grid .grid-item--text  {
        padding: 5px 30px;
    }
}
body.agribologna-con-il-progetto-ortoambiente .intro .date {
    display:none;
}



.umbraco-forms-page.form-horizontal{
    width:100%;
    max-width:400px;
}

.umbraco-forms-form{
    padding:0px;
}
.umbraco-forms-container{
    padding:0px;
}
.umbraco-forms-form form{
    background:transparent;
    margin:0px;
    padding:0px;
    box-shadow:none;
}

.umbraco-forms-form .umbraco-forms-field-wrapper, .umbraco-forms-form [class*='col-']{
    padding:0;
}
.umbraco-forms-form .umbraco-forms-label{
    font-size:18px;
}
.umbraco-forms-form .consensoprivacy{
    padding:15px 0;
}
.umbraco-forms-form .consensoprivacy .umbraco-forms-field-wrapper{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
}
.footer_title_newsletter{
    font-weight:bold !important;
}
.umbraco-forms-form .consensoprivacy label{
    margin-bottom:0;
    margin-left:10px;
    width:calc(100% - 30px);
}
.umbraco-forms-form .field-validation-error{
    position:relative;
    background:#FFF;
    color:rgb(203, 3, 3) !important;
    border-radius:0px;
    width:calc(100%);
    padding:0px 5px;
    margin-top:3px;
    margin-bottom:3px;
}
.umbraco-forms-form input[type="email"]{
    border:1px #FFF solid !important;
    border-radius:0px;
}
.umbraco-forms-form label{
    font-weight:normal;
    width:100%;
}
.umbraco-forms-form input[type="submit"]{
    background:#FFF !important;
    color:rgb(203, 3, 3) !important;
    font-weight:normal;
    font-size:20px;
    border:1px #FFF solid !important;
    transition:0.3s;
}
.umbraco-forms-form input[type="submit"]:hover{
    background:transparent !important;
    color: #FFF !important;
}

.umbraco-forms-form .captcha{
    margin-bottom:5px;
}
.umbraco-forms-form .captcha label{
    display:none;
}



