/* FOGLIO DI STLE COMUNE A TUTTO IL SITO */

/*-----------*/
/*** SPECIALI FORZATE ***/
.clear {clear: both !important;}
.w-100 {width: 100% !important;}
.h-100 {height: 100% !important;}
.position-absolute {position: absolute !important;}
.position-relative {position: relative !important;}
.text-left {text-align: left;}
.text-center {text-align: center;}
.text-right {text-align:right;}
.text-uppercase {text-transform: uppercase !important;}
.text-lowercase {text-transform: lowercase !important;}
.overflow-hidden {overflow: hidden !important;}
.overflow-visible {overflow: visible !important;}
.bg_att-fixed {background-attachment: fixed;}
/* raccordi */
.radius-100 {border-radius: 100%;};
/* z-index */
.z-index-01 {z-index: 1;}
.z-index-02 {z-index: 2;}
.z-index-03 {z-index: 3;}
.z-index-04 {z-index: 4;}
.z-index-05 {z-index: 5;}
/* ombre */
.shadow-01 {
    -webkit-box-shadow: inset 0px 10px 50px -20px rgba(19,12,0,1); 
    box-shadow: inset 0px 10px 50px -20px rgba(19,12,0,1);
}
/* sfuocatura */
.blur {backdrop-filter: blur(5px);}
/*opacità*/
.opacity-0 {opacity: 0;}
.opacity-25 {opacity: .25;}
.opacity-50 {opacity: .50;}
.opacity-100 {opacity: 1;}
/* tagli clip path */
.clip-path-destra {
    clip-path: polygon(0 0, 200% 0, 200% 100%, 0% 100%);
    overflow: visible;
}
.clip-path-sinistra {
    clip-path: polygon(-100% 0, 100% 0, 100% 100%, -100% 100%);
    overflow: visible;
}
/* target */
.target {
    position: absolute;
    top: -76px;
}
/* disattiva selezione */
body, html, .swiper, .swiper-slide {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; 
}
body { 
    background-color: #fff;
    color:#1E2E3E;
}
body.home { 
    background-color: #1E2E3E;
    color:#fff;
}
/* scroller */
.wrap-scroller {
    height: 100%;
    width: 100%;
    overflow: hidden;
}

.wrap-scroller .scroller {
	width: calc(100% + 0px);
	height: 100%;
	overflow-y: auto;
    overflow-x: hidden;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

.wrap-scroller .scroller::-webkit-scrollbar {display: none;}

.wrap-scroller .scroller .inside-scroller {
	height: 100%;
	width: calc(100% - 0px);
}

/*-----------*/
/*** SEZIONI PRINCIPALI ***/
header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 9;
    color: #fff;
    font-size: 11px;
    text-transform: uppercase;
    transition: all 200ms ease;
}
header.mobile-nav-is-open {background-color: transparent;}

header .show-if-mobile-nav-is-open {display: none;}
header.mobile-nav-is-open .show-if-mobile-nav-is-open {display: flex;}
header.sticky {
    background-color: #1E2E3E;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5); 
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
}
header.sticky.mobile-nav-is-open {
    background-color: transparent;
    -webkit-box-shadow:none;
    box-shadow:none;
}
section {position: relative; z-index: 3;}
section .editor, section .titolo {position: relative; }

footer {
    position: relative;
    z-index: 2;
    background-color: #1E2E3E;
    color:#fff;
}
footer .info-secondarie {
    font-size: 14px;
    padding: 60px 0 0 0;
    margin: 60px 0 0 0;
    border-top: 1px solid rgba(112, 112, 112, .3);
}

footer .colonna {text-align: center;}
footer .info-sede .editor.s {font-size: 16px !important;}
footer .info-sede {text-align: center;}

footer .editor h1,
footer .editor h2,
footer .editor h3,
footer .editor h4,
footer .editor h5,
footer .editor h6 {font-weight: 600;}

footer .editor p {
    font-size: 20px;
    line-height: 34px;
}

/*-----------*/
/*** LOGO ***/
.logo {
    display: block;
    width: 100px;
    height: 42px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    background-image: url("../img/logo_campa_gold.svg");
}
footer .logo {display: inline-block;}

/*-----------*/
/*** COLORI ***/
/* background */
.bg_lime {background-color: lime;}
.bg_white {background-color: #fff;}
.bg_black {background-color: #222222;}
.bg_yellow {background-color: #E5B439;}
.bg_light {background-color: #F2EEE8;}
.bg_grey {background-color: #cccccc;}
.bg_dark-grey {background-color: #333333;}
.bg_light-grey {background-color: #707070;}
.bg_red {background-color: #9C0016;}
.bg_light {background-color: #F7F7F7;}
.bg_transparent {background-color: transparent;}
/* colori testo */
.c_red {color:#9C0016;}
.c_lime {color: lime;}
.c_white {color: #ffffff !important;}
.c_black {color: #333333;}
.c_grey {color: #cccccc;}
.c_medium-grey {color: #999999;}
.c_dark-grey {color: #333333;}
.c_light-grey {color: #707070;}
.c_yellow {color: #E5B439;}
.c_light {color: #F2EEE8;}
/*sfumature*/
.bg_black-transparent-gradient {
    background: rgb(0,0,0);
    background: linear-gradient(-90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}
.bg_black-transparente-gradient_vertical {
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}
.vignettatura {
    background: rgb(0,0,0);
    background: radial-gradient(circle, rgba(0,0,0,0) 36%, rgba(0,0,0,1) 100%);
}
.vignettatura-left {
    background: rgb(0,0,0);
    background: linear-gradient(-90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.75) 90%);
}

/*-----------*/
/*** MARGINI BLOCCO ***/
.blocco {
    padding-top: 100px;
    padding-bottom: 100px;
}
.blocco.dark + .blocco.dark {padding-top: 0;}
.blocco.light + .blocco.light {padding-top: 0;}
.blocco.blocco-Q.light + .blocco.blocco-P.light {padding-top: 100px;}
.blocco.blocco-Q.light + .blocco.blocco-o.light {padding-top: 100px;}
.blocco.dark {
    background-color:#1E2E3E;
    color: #fff;
}
.blocco.light {
    background-color:#fff;
    color: #1E2E3E;
}
/*section.blocco:first-of-type {margin-top: 0;}*/
/*section.blocco.dark:last-of-type {padding-bottom: 75px;}*/
/*section.blocco:last-of-type {padding-bottom: 0;}*/
/*footer.blocco {margin-bottom: 0;}*/

/*-----------*/
/*** BOX  ***/
.box-absolute-100x100 {position:absolute; top:0; left:0; width:100%; height:100%;}
.box-fixed-100x100 {position:fixed; top:0; left:0; width:100%; height:100%;}

/*** box proporzionali ***/
.box-p {
	position:relative;
	overflow:hidden;
	background-repeat:no-repeat;
}
.box-p-o10 > .altezza {padding-bottom:10%;}
.box-p-o15 > .altezza {padding-bottom:15%;}
.box-p-o20 > .altezza {padding-bottom:20%;}
.box-p-o23 > .altezza {padding-bottom:23%;}
.box-p-o24 > .altezza {padding-bottom:24%;}
.box-p-o25 > .altezza {padding-bottom:25%;}
.box-p-o30 > .altezza {padding-bottom:30%;}
.box-p-o40 > .altezza {padding-bottom:40%;}
.box-p-o41 > .altezza {padding-bottom:41%;}
.box-p-o45 > .altezza {padding-bottom:45%;}
.box-p-o50 > .altezza {padding-bottom:50%;}
.box-p-o54 > .altezza {padding-bottom:54%;}
.box-p-o55 > .altezza {padding-bottom:55%;}
.box-p-o56-5 > .altezza {padding-bottom:56.5%;}
.box-p-o60 > .altezza {padding-bottom:60%;}
.box-p-o63-3 > .altezza {padding-bottom:63.3%;}
.box-p-o66-7 > .altezza {padding-bottom:66.7%;}
.box-p-o66 > .altezza {padding-bottom:66%;}
.box-p-o70 > .altezza {padding-bottom:70%;}
.box-p-o79 > .altezza {padding-bottom:79%;}
.box-p-o80 > .altezza {padding-bottom:80%;}
.box-p-o90 > .altezza {padding-bottom:90%;}
.box-p-o95 > .altezza {padding-bottom:95%;}
.box-p-100 > .altezza {padding-bottom:100%;}
.box-p-v10 > .altezza {padding-bottom:110%;}
.box-p-v15 > .altezza {padding-bottom:115%;}
.box-p-v20 > .altezza {padding-bottom:120%;}
.box-p-v25 > .altezza {padding-bottom:125%;}
.box-p-v30 > .altezza {padding-bottom:130%;}
.box-p-v40 > .altezza {padding-bottom:140%;}
.box-p-v50 > .altezza {padding-bottom:150%;}
.box-p-v60 > .altezza {padding-bottom:160%;}
.box-p-v70 > .altezza {padding-bottom:170%;}
.box-p-v80 > .altezza {padding-bottom:180%;}
.box-p-v90 > .altezza {padding-bottom:190%;}

/*-----------*/
/*** IMMAGINI  ***/
.fit-img-cover,
.fit-img-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.fit-img-contain,
.fit-img-contain img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*-----------*/
/*** LINEE ***/
.line {border-bottom: 1px;}
.line.dashed {border-bottom-style:dashed;}
.wrap-line .container-fluid {margin-right: 0; padding-right: 0;}

.wrap-line .container-fluid {}

/*-----------*/
/*** ICONE / BOTTONI / FRECCE ***/
.ico {
    background-repeat: no-repeat;
    background-size: 65% auto;
    background-position: center center;
}
.ico.xs {
    width: 10px;
    height: 10px;
}
.ico.sm {
    width: 20px;
    height: 20px;
}
.ico.md {
    width: 40px;
    height: 40px;
}
.ico.lg {
    width: 60px;
    height: 60px;
}
.ico.xl {
    width: 80px;
    height: 80px;
}
/* immagini ico */
.ico.c_white.exit {background-image: url("../img/ico-exit_white.svg");}
.ico.c_red.exit {background-image: url("../img/ico-exit_red.svg");}
.ico.c_black.exit {background-image: url("../img/ico-exit_black.svg");}
.ico.c_white.download {background-image: url("../img/ico-download_white.svg");}
.ico.c_red.download {background-image: url("../img/ico-download_red.svg");}
.ico.c_black.download {background-image: url("../img/ico-download_black.svg");}

/* bottoni */
.button {
    position: relative;
    cursor: pointer;
    opacity: 1;
    text-transform: uppercase;
    padding:10px 35px 10px 35px;
    transition: all 250ms ease-in-out;
    background-color: #C28936;
    border-radius: 40px;
    color: #fff;
    display: inline-block;
}
.editor .button {text-transform: none;}

.button.big {
    font-size: 16px;
    padding:13px 35px 9px 35px;
}

.button:hover, .form .button:hover input[type=submit] {
    background-color: #062539;
    color: #fff;
}
.home header .button:hover,
.dark .button:hover,
footer .button:hover {
    background-color: #fff;
    color: #062539;
}

.dark .form .button:hover input[type=submit],
footer .form .button:hover input[type=submit] {
    background-color: transparent;
    color: #062539;
}

.link-linkedin {
    display: block;
    text-decoration: none !important;
    border-top: 1px solid rgba(112, 112, 112, .3);
    padding-top: 25px;
}

.link-linkedin:after {
    content: "";
    display: block;
    margin-top: 15px;
    position: relative;
    background-image: url("../img/social/ico_in_white.svg");
    width: 100px;
    height: 25px;
    background-position: left center;
    background-repeat: no-repeat;
}

/*.button::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 18px;
    background-position: right center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: all 250ms ease-in-out;
    right: 0;
    top: 0;
}

.button.arrow_red::after {background-image: url("../img/arrow-right-red.svg");}
.button.arrow_white::after {background-image: url("../img/arrow-right-white.svg");}
.button.download_white::after {background-image: url("../img/ico-download_white.svg");}

a:hover .button::after,
.button:hover::after {
    right: -3px;
}*/

/* arrow down */
.wrap-arrow-down {
    position: fixed;
    bottom: 5svh;
    width: 100%;
    z-index: 2;
}

.arrow-down {
    display: block;
    width:40px;
    height:40px;
    z-index: 10;
    cursor: pointer;
    opacity: 1;
    background-color: #ffffff;
    border-radius: 100%;

    background-image: url("../img/arrow-down-black.svg");
    background-repeat: no-repeat;
    background-size: 40% auto;
    background-position: center top 55%;

    transition: all 100ms ease-in-out;
}

.arrow-down:hover {opacity: 1;}

.button-arrow {
    display: inline-block;
    background-image: url("../img/arrow-next_white.svg");
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: right;
    cursor: pointer;
    transition: all 350ms ease-in-out;
    height: 30px;
    width: 40px;
}

.button-arrow.c_white {
    background-image: url("../img/arrow-next_white.svg");
}
.button-arrow.c_dark-grey {
    background-image: url("../img/arrow-next_black.svg");
}

    .button-arrow:hover, a:hover .button-arrow {width: 60px;}
    @media (hover: none) {.button-arrow {width:60px;}}

.button-plus {
    width: 40px;
    height: 40px;
    background-repeat: no-repeat;
    background-size: 45% auto;
    background-position: center center;
    cursor: pointer;
    border:1px solid;
    border-radius: 100%;
    position: relative;
}

.button-plus.c_black {background-image: url("../img/ico-plus_black.svg");}
.button-plus.c_white {background-image: url("../img/ico-plus_white.svg");}

.button-plus::before {
    content: "";
    position: absolute;
    transition: width 100ms ease-in, height 100ms ease-in ;
}

.button-plus.c_black::before {background-color: #333333;}
.button-plus.c_white::before {background-color: #ffffff;}

    .button-plus.left-line::before {
        top:50%;
        right: 100%;
        width: 200%;
        height: 1px;
    }
    .button-plus.right-line::before {
        top:50%;
        left: 100%;
        width: 200%;
        height: 1px;
    }
    .button-plus.top-line::before {
        bottom:100%;
        left: 50%;
        width: 1px;
        height: 200%;
    }
    .button-plus.bottom-line::before {
        top:100%;
        left: 50%;
        width: 1px;
        height: 200%;
    }

    .button-plus.c_black::before {background-color: #333333;}
    
    .button-plus.left-line:hover::before, a:hover .button-plus.left-line::before, .button-plus.right-line:hover::before, a:hover .button-plus.right-line::before {width: 250%;}
    .button-plus.top-line:hover::before, a:hover .button-plus.top-line::before, .button-plus.bottom-line:hover::before, a:hover .button-plus.bottom-line::before {height: 250%;}

/*--------------------------------------------------------------------------------*/
/*** Media Query comuni ***/
/* sopra 000px -> bootstrap ref. */
@media (min-width: 415px) {}
@media (min-width: 576px) /* SM */ {}
@media (min-width: 768px) /* MD */ {}
@media (min-width: 992px) /* LG */ {
    footer .info-secondarie {
        /*padding: 75px 0 0 0;
        margin: 75px 0 0 0;*/
    }
    footer .info-sede { text-align: left;}
    header.mobile-nav-is-open .hide-if-mobile-nav-is-open {display: none !important;}
    .blocco .titolo:before {margin-top: 25px;}
    .container-fluid.container-full-mobile {
        margin-left: 0;
        margin-right: 0;
        overflow: hidden;
    }
    header {background-color: transparent;}
    header.sticky .align-items-lg-start-on-sticky {align-items: center !important;}
    .logo {
        width: 180px;
        height: 74px;
    }
    header .logo {background-image: url("../img/logo_campa_gold.svg");}
    header.sticky .logo {
        background-image: url("../img/logo_campa_gold.svg");
        width: 100px;
        height: 42px;
    }
    footer .logo {width: 115px; height: 47px;}
    footer .colonna {text-align: left;}
    .button.big {
        font-size: 24px;
        padding: 20px 50px 17px 50px;
    }
}
@media (min-width: 1200px) /* XL */ {}
@media (min-width: 1367px) {}
@media (min-width: 1920px) {
    .blocco {
        padding-top: 10vh;
        padding-bottom: 10vh;
    }
}

/* sotto 000px -> bootstrap ref. */
@media (max-width: 1200px) /* XL */ {}
@media (max-width: 992px) /* LG */ {
    .blocco-breadcrumb + .blocco.light {padding-top: 0;}
}
@media (max-width: 768px) /* MD */ {}
@media (max-width: 576px) /* SM */ {}

/* orientamento finestra/dispositivo */
@media all and (orientation:portrait) {}
@media all and (orientation:landscape) {}

/* solo dispositivi touch */
@media (hover: none) {}

/*///////////////////////////////////////////////////*/
/*///////////////////////////////////////////////////*/
/*///////////////////////////////////////////////////*/

.rotate-icon {
    display: none;
	position:fixed;
	width:100%;
	height: 100%;
	z-index: 999;
    color: #fff;
    background-color: #000;
}
.rotate-icon .mobile-alert, .rotate-icon .desktop-alert {display: none;}

body.home .rotate-icon {
    background-color: #fff;
    color: #000;
}

body.category .rotate-icon,
body.single .rotate-icon,
body.page .rotate-icon {
    background-color: #000;
    color: #fff;
}

@media all and (hover: none) and (pointer: coarse) and (max-width: 768px) and (orientation:landscape) {
    body {overflow: hidden;}
    .rotate-icon, .rotate-icon .mobile-alert {display: block;} 
} 
/*@media all and (min-width: 768px) and (max-height: 690px) {
    body {overflow: hidden;}
    .rotate-icon, .rotate-icon .desktop-alert {display: block;} 
} */
	

  
