/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


:root {
  --cfg-avorio: #F3EEE6;
  --cfg-carta: #FAF7F2;
  --cfg-inchiostro: #1F1A17;
  --cfg-bordeaux: #6B2430;
  --cfg-sabbia: #C8B59A;
  --cfg-pietra: #80766D;
  --cfg-scuro: #171311;
  --cfg-segnaposto: #DDDDDD;
}

body #main {
  background: #faf7f2 !important;
}

#main div#content {
  padding-top: 0px;
}

header#header {
  position: absolute;
}

.header-bg-container.fill {
  background: none;
}

header#header .header-bg-color {
  background-color: transparent!important;
}

body.home #logo img{
  display: none!important;
}

.header-nav li a {
  color: #f3eee6;
}

ul.header-nav.header-nav-main .header-button a.button.primary {
  background: none;
  border-radius: 0px !important;
  border-color: #f3eee6 !important;
  padding: 5px 20px;
}

.current-menu-item a {
  color: #f3eee6 !important;
  border-bottom: 1px solid;
}

.menu-item a:hover{
  color: #f3eee6!important;
}


.cfgText h3 {
  text-align: center;
  color: #f3eee6;
  font-size: 40px;
  font-weight: 100 !important;
  width: 750px;
  margin: 0 auto;
  line-height: 1.2em;
}

.whyWrap {
  color: #f3eee6;
  padding: 150px 0px;
}

.whyWrap h3{
  color: #f3eee6;
}

.numerTag {
  color: var(--cfg-bordeaux);
  font-weight: 400;
  font-size: 20px;
  margin-bottom: 0px;
}

.cfgWrap h3 {
  font-size: 50px !important;
  line-height: 1.3em;
  color: var(--cfg-inchiostro);
}

.mainWrap.cfgWrap h3{
  color: var( --cfg-carta);
}

.standardText {
  color: var(--cfg-pietra);
}

#main div#content {
  padding-bottom: 0px;
}

#main div#content > .row-main > .large-12 {
  padding-bottom: 0px;
}

.productsWrapHead .standardText {
  width: 70%;
  margin: 0 auto;
  text-align: justify;
}
.smallProdTit {
  margin-bottom: 0px;
}

.smallProdTit h3 {
  font-size: 38px !important;
}

.productsWrapBody .standardText {
  font-size: 14px;
  margin: 10px 0px 20px;
  min-height: 46px;
}

.standardCTA a {
  color: var(--cfg-inchiostro);
  padding-bottom: 5px;
  border-bottom: 1px solid;
}

.vc_empty_space.standardHomeSpace {
  height: 60px !important;
}

.wrap2Inside > .vc_column-inner{
  padding: 5vw!important;
}

span.cfg-stat__value, span.cfg-stat__suffix {
  font-size: 60px;
  font-family: 'Baskervville';
  color: var(--cfg-bordeaux);
}

.cfg-stat__label{
  font-size: 12px;
}

ul.cfg-stats {
  border-top: 1px solid;
  padding-top: 20px;
  border-color: var(--cfg-sabbia);
}

.whyWrap .numerTag {
  color: var(--cfg-sabbia) !important;
}


.whyWrap.cfgWrap h3 {
  color: var(--cfg-carta);
}

.cfg-stats .cfg-stat {
  margin-left: 0px !important;
}

.whyWrap .standardCTA a {
  color: var(--cfg-sabbia);
  border: 1px solid;
  padding: 10px 60px 12px;
}

.companyWrap .standardText {
  max-width: 750px;
  font-size: 18px;
}

.companyWrap .wpb_raw_code {
  max-width: 750px;
}

.companyWrap .vc_column-inner {
    background-position: 20% !important;
}




.bigNumber {
  color: var(--cfg-sabbia);
  font-size: 30px;
}

.vc_empty_space.whyWrapSpace {
  height: 50px !important;
}

.bigNumber {
  padding-top: 20px;
  color: var(--cfg-sabbia);
  font-size: 42px;
  border-top: 1px solid;
  font-family: 'Baskervville';
  line-height: 1em;
  margin-bottom: 20px;
}

.whyWrap .wpb_text_column {
  margin-bottom: 20px;
}

.whyWrap h4 {
  color: var(--cfg-carta);
  font-size: 22px;
  font-family: 'Mulish';
}

.contactWrap, .contactWrap h3, .contactWrap a, .contactWrap h4, .contactWrap p {
  color: var(--cfg-carta);
}

.contactWrap .numerTag, .contactWrap h3{
  text-align: center;
}

.contactCTA {
  text-align: center;
}

.contactCTA a {
  border: 1px solid;
  min-width: 250px !important;
  display: inline-block;
  padding: 10px;
  text-align: center;
}

.contactCTA.ctaEmail a {
  color: var(--cfg-bordeaux);
  background: var(--cfg-carta);
}

.contactWrapTit {
  padding: 40px 0px;
  margin-bottom: 20px;
}

.contactWrapText .contactWrapTit{
  padding: 20px 0px;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.contactWrapText .standardText {
    text-align: center;
    font-size: 18px;
}

.contactWrap .numerTag {
    letter-spacing: 2px;
}

.contactWrap.cfgWrap {
  padding: 60px 0px;
}

ul.header-nav.header-nav-main li {
  margin-right: 25px;
}

.pageMainWrap, .pageMainWrap h3, .pageMainWrap h2 {
  color: var(--cfg-avorio);
  text-align: left;
}

.cfgBreadCrumb {
  letter-spacing: 4px;
}

.pageMainWrap h3 {
  width: 100%!important;
}

.companyWrap .standardCTA a {
  display: inline-block;
  border: 1px solid;
  padding: 10px 40px;
  background: var(--cfg-inchiostro);
  color: var(--cfg-carta);
  font-size: 15px;
}

.cfgPageName h2 {
  font-size: 120px !important;
}

.pageMainWrap .cfgText h3 {
  font-size: 30px !important;
}

.infoPageWrap {
  width: 90vw;
  margin: 0 auto !important;
}

.chiSiamoWrap ul.cfg-stats {
  padding-top: 35px !important;
  margin-bottom: 100px;
  text-align: center;
}

.timelineEvent {
  margin-top: 60px;
}

span.cfg-tl__testo {
  font-size: 16px;
}

span.cfg-tl__titolo {
  font-size: 18px;
}

.citaWrap, .citaWrap h3 {
  text-align: center;
  color: var(--cfg-carta);
}

.simboloCit {
  font-size: 150px;
  line-height: 1em;
  margin-bottom: -60px;
  font-family: 'Baskervville';
  color: var(--cfg-sabbia) !important;
}

.autoreName {
  color: var(--cfg-sabbia);
}

.citaWrap {
  padding: 120px;
}

.timelineWrap {
  padding-top: 120px;
  padding-bottom: 120px;
}

.boxHowWork > .vc_column-inner {
  background: var(--cfg-avorio);
  width: 90%;
  text-align: left;
  margin: 0 auto;
  padding: 30px;
}

.howWorkWrap .standardText{
  color: var(--cfg-pietra);
}

.howWorkWrap .smallTit {
  font-size: 20px;
  color: var(--cfg-inchiostro);
  margin-bottom: 10px;
  padding-top: 20px;
  border-top: 1px solid;
  border-color: var(--cfg-sabbia);
}

.superBigNumber {
  margin-bottom: 45px;
  font-size: 75px;
  font-family: 'Baskervville';
  line-height: 1em;
  color: var(--cfg-bordeaux);
}

.boxHowWork .standardText {
  min-height: 80px;
  margin-bottom: 0px;
}

.howWorkWrap {
  padding: 120px;
}

.producerWrap{
  padding: 0px;  
}

.producerWrap h4 {
    font-size: 20px;
    color: var(--cfg-inchiostro);
    font-family: 'Mulish';
}

.producerWrap .standardText {
    border-top: 1px solid;
    padding-top: 25px;
    border-color: var(--cfg-sabbia);
    position: relative;
    margin-bottom: 25px;
}

.producerWrap .standardText::before {
    content: "⏺";
    color: var(--cfg-bordeaux);
    position: absolute;
    top: 50%;
    left: -30px;
}

.singleFamilyWrap .numerTag {
    font-size: 28px;
}

.singleFamilyWrap.cfgWrap h3 {
    font-size: 60px !important;
}

.buttonCTA a {
    color: var(--cfg-avorio);
    background: var(--cfg-inchiostro);
    border: 1px solid;
    min-width: 250px !important;
    display: inline-block;
    padding: 10px;
    text-align: center;
}

.standardText li{
  color: var(--cfg-inchiostro)!important;
}

.standardText li::marker {
    color: var(--cfg-bordeaux);
    font-size: 20px;
}

.singleFamilyWrap .standardTextList {
    border-top: 1px solid;
    border-color: var(--cfg-sabbia);
    padding-top: 25px;
}

.singleFamilyWrap .standardCTA {
    margin-bottom: 0px;
}

.contactFormWrap .vc_column-inner {
    padding: 60px;
    background: var(--cfg-avorio);
    width: 90%;
    margin:0 auto;
}

.bigContactInfo {
    font-size: 28px;
    font-family: 'Baskervville';
    margin-bottom: 0px;
}

.infoWrap {
    padding: 25px 0px;
    border-top: 1px solid;
    width: 95%;
    border-color: var(--cfg-sabbia);
}

.infoWrap .numerTag {
    font-size: 16px;
    padding-top: 10px;
}

.howToContactWrap {
    padding: 0px 50px;
}

.infoWrapLast {
    border-bottom: 1px solid;
    border-color: var(--cfg-sabbia);
}

.sediWrap .numerTag {
  font-size: 15px;
  color: var(--cfg-pietra);
}

.sediWrap  .standardText{
  color: var(--cfg-inchiostro);  
}

.infoOverMap {
    position: absolute;
    z-index: 9999;
    transform: translateY(-50%);
    top: 50%;
    background: var(--cfg-avorio);
    padding: 20px;
    left: 70px;
    border: 3px solid var(--cfg-bordeaux);
    min-width: 310px;
}

.infoOverMap .numerTag {
    font-size: 13px !important;
}

.sedeOperativaLabel {
    margin-bottom: 0px;
    font-size: 21px !important;
}

.standardText.sedeOperativaText, .standardText.sedeLegaleText {
  font-size: 14px;
  color: var(--cfg-inchiostro);
}

.sedeLegaleLabel {
  margin-bottom: 0px;
  border-top: 1px solid var(--cfg-sabbia);
  padding-top: 15px;
  font-size: 21px !important;
}

.infoOverMap .contactCTA {
  border: 0px !important;
  width: 80% !important;
  margin-bottom: 0px;
}

.infoOverMap .contactCTA a {
  border: 0px !important;
  border-bottom: 1px solid !important;
  color: var(--cfg-inchiostro);
  border-color: var(--cfg-inchiostro);
  font-size: 13px;
  width: auto !important;
  min-width: auto !important;
}

.otherFamigliaTit {
  margin-bottom: 0px;
}

.otherFamigliaTit h3 {
  font-size: 38px !important;
  padding-bottom: 10px;
}

.othersWrap .standardCTA a{
  font-size: 14px; 
}

.insideFamilyWrap {
    padding-top: 120px;
    padding-bottom: 120px;
}

.whyWrapPag .numerTag {
    margin-bottom: 30px;
    font-size: 18px;
}

.whyWrapPag .bigNumber{
  font-size: 23px;
  color: var(--cfg-bordeaux);
}

.h4TitParole {
    margin-bottom: 20px;
}

.whyWrapPag h4 {
    font-size: 30px;
}

span.numberVoice {
    font-size: 55px;
    font-family: "monsterrat";
}


.familyInfoWrap{
  padding-top: 100px;
  padding-bottom: 100px;
  background: var(--cfg-avorio);
}

.familyInfoWrap .numerTag {
    font-size: 16px !important;
}

.familyInfoWrap .cfgText h3 {
    text-align: left !important;
    width: auto;
    font-size: 32px !important;
}

.familyInfoWrap .vc_column-inner {
    border-left: 3px solid var(--cfg-sabbia) !important;
    padding-left: 30px;
}

/* ===== CFG – Galleria ===== */
.cfg-gallery{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.cfg-gallery > *{
  position:relative;
  margin:0;
  aspect-ratio:3 / 2;      /* proporzione delle foto piccole */
  overflow:hidden;
}
.cfg-gallery > *:first-child{
  grid-column:span 2;
  grid-row:span 2;
  aspect-ratio:auto;        /* la grande prende l'altezza di 2 righe */
}
.cfg-gallery img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Tablet e mobile: grande a tutta larghezza, poi 2 per riga */
@media (max-width:849px){
  .cfg-gallery{grid-template-columns:repeat(2,1fr);gap:10px}
  .cfg-gallery > *:first-child{grid-column:1 / -1;grid-row:auto;aspect-ratio:16 / 9}
  .cfg-gallery > *:last-child:nth-child(even){grid-column:1 / -1;aspect-ratio:16 / 9}
}


/* FINE GALLERY */



.logoFooter img {
    width: 100%;
    max-width: 170px;
}

.footerWrap .numerTag {
    color: var(--cfg-sabbia);
    font-size: 14px;
    letter-spacing: 3px;
    margin-bottom: 10px;
}

.footerWrap .standardText {
    color: var(--cfg-carta);
    font-size: 15px;
}

.footerWrap .standardText a {
    color: var(--cfg-carta);
}

.footerWrap .standardText p {
    margin-bottom: 0px;
}

.footerWrap {
    border-bottom: 1px solid #49423b;
}

div#block_widget-2 {
    margin-bottom: 5px;
}

.cfgMap {
    margin-bottom: 0px;
}

.absolute-footer .footer-primary {
    float: none;
}

.allBottomFooter {
    display: flex;
    justify-content: space-between;
}

.cfgWrap.pageMainWrap.aziendaMainWrap{
    background-position: top left !important;
}

.cfgWrap.pageMainWrap.sceglierciWrap {
    background-position: center left !important;
}

.cfgWrap.pageMainWrap.pageContattiBanner{
  background-position: 50% 90% !important;  
}

.producerWrap.cfgWrap .interlocutoreBanner .vc_column-inner{
  background-position: center left !important;
}

.insiden1Wrap .vc_column-inner {
    background-position: top left !important;
}

.insiden2Wrap .vc_column-inner {
    background-position: center !important;
}

.insiden3Wrap .vc_column-inner {
    background-position: top center !important;
}

.insiden4Wrap .vc_column-inner {
    background-position: top left !important;
}

.insiden5Wrap .vc_column-inner {
    background-position: top center !important;
}

.ourFamilyWrap .standardText{
  margin-bottom: 0px;
}

.familyInfoWrap > .wpb_column:first-child .vc_column-inner{
  border-left: 0px!important;
}

.familyInfoWrap, .familyInfoWrap .cfgText h3 {
    text-align: center !important;
}

.howToContactWrap .infoWrap a{
  color: var(--cfg-inchiostro);
}

.howToContactWrap .infoWrap a:hover{
  color: var(--cfg-bordeaux);
}



@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

  .cfg-logo-wrap {
    width: 240px;
  }
  
  .cfgText h3{
    width: 100%;
    font-size: 30px !important;
  }
  
  .cfgWrap h3{
    font-size: 30px !important;
  }
  
  .productsWrapHead .standardText{
    width: 100%!important;
  }
  
  .productsWrapHead .wpb_text_column {
    margin-bottom: 10px;
  }
  
  .productsWrapBody .standardText{
    min-height: auto!important;
  }
  
  .mobile-nav .icon-menu {
    color: var(--cfg-carta);
  }
  
  div#masthead {
    padding-top: 10px;
  }
  
  .vc_empty_space.standardHomeSpace {
      height: 10px !important;
  }
  
  .imageWrapCfg {
    min-height: 35vh;
  }
  
  .cfgTitSezione {
    margin-bottom: 10px;
  }
  
  .companyWrap .standardText {
    max-width: 100%;
    font-size: 14px;
  }
  
  ul.cfg-stats {
    text-align: center;
  }
  
  .standardCTA a{
    font-size: 11px!important;
  }
    
  span.cfg-stat__value, span.cfg-stat__suffix {
    font-size: 40px;
  }

.afterNumberCTA p {
      text-align: center !important;
  }
  
  .whyWrap {
      color: #f3eee6;
      padding: 50px 0px;
  }
  
  .whyWrap .standardCTA p {
      text-align: center !important;
  }
  
  .whyWrap .numerTag {
      text-align: center;
  }
  
  .whyWrap .cfgTitSezione {
      display: none!important;
  }
  
  .whyWrap .bigNumber {
      font-size: 30px;
      text-align: center;
  }
  .whyWrap h4 {
      text-align: center;
  }
  
  .whyWrap .standardText{
    text-align: center!important;
    font-size: 14px!important;
  }
  
  .contactCTA.ctaEmail p, .ctaWhatsapp p {
      text-align: center !important;
  }
  .contactWrap.cfgWrap {
      padding: 10px 0px;
  }
  
  .contactWrap.cfgWrap {
      padding: 10px 0px;
  }
  
  .howWorkWrap {
      padding: 10px;
  }
  
  
  .contactCTA.ctaEmail {
      margin-bottom: 10px;
  }
  
  .logoFooter {
      text-align: center !important;
  }
  
  .footer-widgets .numerTag, .footer-widgets .standardText {
      text-align: center;
  }
  .allBottomFooter {
      flex-direction: column-reverse;
      gap: 10px;
  }
  
  
  .superBigNumber {
    margin-bottom: 12px;
    font-size: 50px;
  }
  
  
  .boxHowWork > .vc_column-inner {
      padding: 20px;
      padding-bottom: 0px;
  }
  
.interlocutoreBanner {
      min-height: 35vh;
  }
  
  .cfgPageName h2 {
      font-size: 80px !important;
      max-width: 100%;
      line-height: 1em;
  }
  
  .infoPageWrap .cfgText br{
    display: none;
  }
  
  .menu-item a:hover {
      color: var(--cfg-bordeaux) !important;
  }
  
  .nav-sidebar.nav-vertical>li.menu-item.active, .nav-sidebar.nav-vertical>li.menu-item:hover {
      background-color: none!important;
  }
  
  .current-menu-item a {
      color: var(--cfg-bordeaux) !important;
      border-bottom: 0px!important;
  }
  
  .fotoTessuto, .fotoWhy {
      min-height: 35vh;
  }
  
  .singleFamilyWrap .wrap2Inside {
      order: 2;
  }
  
  .singleFamilyWrap .numerTag {
      font-size: 24px;
  }
  
    .singleFamilyWrap .standardCTA {
     margin-top: 10px;
  }
  
  .singleReasonWrap .wrap2Inside {
      order: 2;
  }
  
  .singleReasonWrap {
      min-height: auto !important;
  }
  
  .contactFormWrap .vc_column-inner{
    padding: 30px!important;
  }
  
  .cfgPageName {
      margin-bottom: 10px;
  }
  
}

