/*
Theme Name:  Fusion Pilates 2.0
Author:  Jessica Penati
Author URI:  https://www.jessicapenati.it
Template:  twentysixteen
Version:  1.0
License:  GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html                 
*/

@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&family=Unbounded:wght@200..900&display=swap');

body {font-family: 'Raleway', sans-serif; color:#000; padding:0px; margin:0px; font-weight:400; letter-spacing:1px;}
body:not(.custom-background-image)::before, body:not(.custom-background-image)::after {display:none;}
html {scroll-behavior: smooth;}
.clear {clear: both;}
.site {margin:0px;}
.site-main {margin-bottom:0px;}
.site-content {padding:0px; margin:0px; word-wrap: normal!important;}
.site-inner {max-width:100%!important;}
.edit-link {display:none;}
.col-2 {width:50%; float:left;}
.col-3 {width:33.3%; float:left;}
.col-4 {width:25%; float:left;}
p {padding:0px; margin:0px;}
strong {font-weight:700;}
input {font-family: 'Roboto', sans-serif;}
a {color:currentColor; text-transform:none; cursor:pointer!important;}
a:hover {color:currentColor;}
/*a:visited {color:currentColor;}*/
a:active {text-decoration:none!important;}
a:focus {outline:solid; outline-style:solid; text-decoration:none; border-color:red; color:currentColor;}
a:focus-visible {outline: 2px solid red; outline-offset: 2px;}
.float-left {float:left;}
.float-right {float:right!important;}
.input-left {float:left; width:49%;}
.input-right {float:right; width:49%;}
p:empty {display: none;}
.relative {position:relative;}
.content-area {float: none; margin-right: 0%; width: 100%; padding:200px 5% 80px 5%;}
.mobile {display:none;}
.cmplz-document {max-width:100%!important; width:100%;}

/* WhatsApp Bubble */
.what-bubble {position:fixed; z-index: 3; right:20px; bottom:100px; border-radius: 50%; width:60px; height:60px; background-color:#25d366; padding:10px; box-shadow: 0 1px 6px 0 rgb(0 0 0 / 6%), 0 2px 32px 0 rgb(0 0 0 / 16%); display: inline-block;}
.what-bubble img {width:40px; height:40px;}


/* WIDTH */
.w10 {width:10%!important;}
.w20 {width:20%!important;}
.w30 {width:30%!important;}
.w33 {width:33%!important;}
.w40 {width:40%!important;}
.w45 {width:45%!important;}
.w50 {width:50%!important;}
.w60 {width:60%!important;}
.w70 {width:70%!important;}
.w80 {width:80%!important;}
.w90 {width:90%!important;}
.w100 {width:100%!important;}

/* TEXT-ALIGN */
.align-center {text-align:center;}
.align-left {text-align:left;}
.align-right {text-align:right;}
.align-justify {text-align:justify;}

/* stili testo */
.c-white {color:#ffffff!important;}
.c-fucsia {color:#e7216d!important;}
.c-azzurro {color:#62c5e2!important;}
.c-lime {color:#ccd611!important;}
.c-fucsia a {color:#e7216d!important;}
.c-azzurro a {color:#62c5e2!important;}
.c-lime a {color:#ccd611!important;}
.uppercase {text-transform:uppercase;}
.b-black {background-color:#000; padding:5px 10px;}
.b-lime {background-color:#ccd611; padding:5px 10px;}
.b-fucsia {background-color:#e7216d; padding:5px 10px;}
.b-azzurro {background-color:#62c5e2; padding:5px 10px;}

/* PADDING */
.p-l-2 {padding-left:2%;}
.p-r-2 {padding-right:2%;}
.p-t-2 {padding-top:2%;}
.p-b-2 {padding-bottom:2%;}
.p-l-5 {padding-left:5%;}
.p-r-5 {padding-right:5%;}
.p-t-5 {padding-top:5%;}
.p-b-5 {padding-bottom:5%;}
.p-l-10 {padding-left:10%;}
.p-r-10 {padding-right:10%;}
.p-t-10 {padding-top:10%;}
.p-b-10 {padding-bottom:10%;}

/* MARGIN */
.m-l-2 {margin-left:2%;}
.m-r-2 {margin-right:2%;}
.m-t-2 {margin-top:2%;}
.m-b-2 {margin-bottom:2%;}
.m-l-5 {margin-left:5%;}
.m-r-5 {margin-right:5%;}
.m-t-5 {margin-top:5%;}
.m-b-5 {margin-bottom:5%!important;}
.m-l-10 {margin-left:10%;}
.m-r-10 {margin-right:10%;}
.m-t-10 {margin-top:10%;}
.m-b-10 {margin-bottom:10%;}

/* FLEX BOX */
.row-reverse {flex-direction:row-reverse;}
.flex {display:flex;}
.align-items-center {align-items:center;}

/* Stili di testo */
h3 {font-size:50px; line-height:55px; font-weight:300; margin-bottom:30px;}
h4 {font-size:20px; line-height:25px; margin-bottom:30px; font-weight:400;}
.tit-big {font-size:90px; font-weight:200; line-height:95px;}
.tit-medium {font-size:50px; font-weight:200; line-height:55px;}
.reformer strong {background-color: #62c5e2; display: inline-block; padding: 0px 5px;}
.gradient-underline {display:inline; background-image:linear-gradient(90deg,rgba(231,33,109,1) 0%,rgba(98,197,226,1) 50%,rgba(205,214,13,1) 100%); background-repeat:no-repeat; background-size:100% 4px; background-position:0 100%; padding:0px 0px 10px 0px;} 


/* BTN */
.btn {text-decoration:none; padding:12px 20px; font-weight:500; font-size:14px; display:inline-flex; align-items:center; gap:10px; transition:0.3s;}
.btn:hover {transform:translateY(-3px);}
.btn-black {background:#000; color:#fff;}
.btn-black:hover {background-color:#212121; color:#fff;}
.btn-outline {border:1px solid #000; color:#000;}
.btn-outline:hover {background-color:#f7f7f7; color:#000;}
.btn-rainbow {background:#000; color:#fff; background-image:linear-gradient(90deg,rgba(231,33,109,1) 0%,rgba(98,197,226,1) 50%,rgba(205,214,13,1) 100%);}
.btn-rainbow-outline {border:2px solid transparent; border-image-slice:1; border-image-source:linear-gradient(90deg,rgba(231,33,109,1) 0%,rgba(98,197,226,1) 50%,rgba(205,214,13,1) 100%); color:#fff;}
.btn-outline-white {border:1px solid #fff; color:#fff;}

/* CATEGORIE AREE */
.cat-reformer span strong {background-color:#62c5e2; padding:0px;}
.cat-reformer .categorie-obiettivi {color:#62c5e2;}
.cat-reformer .circle-corso {width:50px; height:50px; border:1px solid #62c5e2; border-radius:50%; background: url("images/nuvola-azzurra.png") no-repeat center center / cover;}
.circle-corso-azzurra {display:block; position:absolute; bottom:14px; right:14px; z-index:99; width:50px; height:50px; background: url("images/freccia-dx-white-circle-azzurra.png") no-repeat center center / cover;}

.cat-matwork span strong {background-color:#e7216d; padding:0px;}
.cat-matwork .categorie-obiettivi {color:#e7216d;}
.cat-matwork .circle-corso {width:50px; height:50px; border:1px solid #e7216d; border-radius:50%; background: url("images/nuvola-fucsia.png") no-repeat center center / cover;}
.circle-corso-fucsia {display:block; position:absolute; bottom:14px; right:14px; z-index:99; width:50px; height:50px; background: url("images/freccia-dx-white-circle-fucsia.png") no-repeat center center / cover;}

.cat-circuit span strong {background-color:#cdd60d; padding:0px;}
.cat-circuit .categorie-obiettivi {color:#cdd60d;}
.cat-circuit .circle-corso {width:50px; height:50px; border:1px solid #cdd60d; border-radius:50%; background: url("images/nuvola-lime.png") no-repeat center center / cover;}
.circle-corso-lime {display:block; position:absolute; bottom:14px; right:14px; z-index:99; width:50px; height:50px; background: url("images/freccia-dx-white-circle-lime.png") no-repeat center center / cover;}

/* ------------------------------ HEADER ------------------------------ */
.site-header {width:100%; margin:0px; padding:30px 5%; background: linear-gradient(180deg, rgb(0 0 0 / 36%) 0%, rgb(0 0 0 / 17%) 40%, rgba(255, 255, 255, 0) 100%); display:flex; justify-content:space-between; position:absolute; top:0px; z-index:999; color:#fff;}
.site-branding {margin:0px; padding:0px;}
.site-branding img {width:100%; max-width:250px;}
.site-header-main {width:100%; justify-content: space-between; align-content:center;}
.site-header-menu {margin:0px;}


/* ------------------------------ HOMEPAGE ------------------------------ */
.hero-new-site {width:100%; height:100vh; display:flex; background: url("images/hero-new-site.jpg") no-repeat center center / cover; align-items: flex-end; justify-content: flex-end; padding:150px 5%; color:#fff;}
.text-hero-new {text-align:right; font-size:50px; line-height:55px; text-transform:uppercase; letter-spacing:1px;}
.text-hero-new span {font-size:30px; line-height:32px; font-style:italic; text-transform:none;}
.hero-section {padding:150px 5%;}
.hero-content {margin:0 auto;}
.hero-content h1 {font-size:24px; line-height:38px; text-transform:uppercase; letter-spacing:1px; margin-bottom:30px; font-weight:300;}
.subtitle strong {font-weight:600;}
.subtitle {font-size:90px; font-weight:300; line-height:95px; margin:0px 0px 30px 0px;}
.hero-buttons {display:flex; gap:20px; flex-wrap:wrap;}
.arrow img {width:20px; height:15px;}
.arrow-down img {width:15px; height:20px;}
.cta-hero {font-size: 14px; line-height:24px; margin-top:5%;}
/* categoria corso */
.categoria-corsi {width:100%; display:flex; justify-content:space-between; align-items:center;}
.cat-text {padding:0px 5% 0px 5%; flex:1;}
.img-cat {min-height:900px; background-size:cover; background-position:center; flex:1;}
/* quote */
.quote {width:100%; background-size:cover; background-position:center; background-attachment: fixed; padding:300px 5% 60px 5%; display:flex; align-items: flex-end; color:#fff;}
.text-quote {width:70%;}
/* obiettivi */
.intro-obiettivi {width:100%; padding:80px 5% 0px 5%; text-align:center; font-size:30px; line-height:35px;}
.intro-obiettivi p {font-size: 1rem; line-height: 1.75;}
.intro-obiettivi h4 {text-transform: uppercase; padding-top:50px;}
.values-section {max-width:1400px; margin:0 auto; padding:60px 20px; font-family:'Raleway',sans-serif; text-align:center; } 
.values-grid {display:grid; grid-template-columns:repeat(4,1fr); gap:40px; align-items:start; margin:0; padding:0; list-style:none; } 
.value-item {margin:0; } 
.value-head {position:relative; display:inline-block; padding-top:18px; margin-bottom:16px; } 
.cat-circle {position:absolute; left:-40px; top:-18px; width:60px; height:60px; border:1px solid #cccccc; border-radius:50%; z-index:0;} 
.cat-circle:hover {background: url("images/bkg-nuvole-colorate-cat.png") no-repeat center center / cover;} 
.value-title {font-size:30px; line-height:1; font-weight:400; margin:0; text-transform:uppercase; letter-spacing:1px; color:#000; position:relative; z-index:1;} 
.value-desc {line-height:1.4; color:#000; max-width:520px; margin:0 auto; } 
@media (max-width:1200px) {.values-grid {grid-template-columns:repeat(2,1fr); } .value-title {font-size:36px; } .value-desc {font-size:20px; }} 
@media (max-width:640px) {.values-grid {grid-template-columns:1fr; } .cat-circle {left:-25px; top:-6px; width:50px; height:50px; } .value-title {font-size:24px; } .value-desc {font-size:18px; }}
.btn-center {width:100%; text-align:center; padding:80px 5%;}

/* Sunday club */
.banner-sundayclub {width:100%; background-size:cover; background-position:center; background-attachment: fixed; padding:100px 5%; color:#fff; }
.text-sunday {text-align:center; background: url("images/bkg-nuvole-colorate.png") no-repeat center center / contain; padding:150px 0px; }
.text-sunday p {font-size:20px; line-height:34px;}
.cta-registra {width:100%; padding:30px 5%; display: flex; justify-content: center;}

.carousel-promo-home {position:relative; width:100%; margin:0 auto; } 
.promo-swiper {width:100%; height:800px; } 
.promo-slide {background-size:cover; background-position:center; display:flex; align-items:center; justify-content:flex-start; position:relative; align-content: center; } 
.promo-overlay { max-width:40%; padding:0px 5%; position:relative;} 
.promo-title {font-size:28px; font-weight:700; margin:0 0 10px; } 
.promo-text {font-size:24px; line-height:26px; margin:0; position:relative; z-index:1;} 

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {background-color:transparent; border:solid 1px #fff; width:20px; height:20px;}
.swiper-horizontal>.swiper-pagination-bullet-active .swiper-pagination-bullet-active, .swiper-pagination-horizontal.swiper-pagination-bullet-active .swiper-pagination-bullet-active {background-color:#fff;}

@media(max-width:768px){.promo-overlay{max-width:80%; margin-left:20px; padding:20px; } .promo-title{font-size:20px; } }


/* Studi */
.row-studi {width:100%; padding:7vw 0%;}
.intro-studi {text-align:center; font-size:30px; line-height:35px;}
.intro-studi h4 {text-transform: uppercase;}
.studio-carousel {margin:40px auto; position:relative;}
.studio-img-wrapper {overflow:hidden;}
.studio-img {width:100%; height:auto; display:block; filter:grayscale(100%); transition:filter 0.4s ease;}
.studio-img-wrapper:hover .studio-img {filter:grayscale(0%);}
.studio-info {margin-top:15px; display:flex; justify-content: space-between; column-gap:2%; flex-wrap:wrap;} 
.studio-info p {width:100%;}
.studio-title {font-weight:800; font-size:30px; line-height:35px; margin-bottom:5px; text-transform:uppercase;}
.studio-address {font-size:16px; line-height:1.4; margin:0;}
.swiper-slide a {text-decoration:none; color:inherit;} @media (prefers-reduced-motion: reduce) {.studio-img {transition:none;}}
.arrow-circle-corso {width:50px; height:50px; display:block; position:absolute; bottom:14px; right:14px; z-index:99;}
.arrow-circle-corso img {width:50px; height:50px;}
.arrow-circle {width:50px; height:50px; display:block;}
.arrow-circle img {width:50px; height:50px;}
.padding-carosel {padding:0px 10%; position:relative;}
.swiper-arr-prev-sedi {position:absolute; top:40%; left:5%; width:40px; height:30px; background: url("images/freccia-sn-black.png") no-repeat center center / cover; cursor:pointer;}
.swiper-arr-next-sedi {position:absolute; top:40%; right:5%; width:40px; height:30px; background: url("images/freccia-dx-black.png") no-repeat center center / cover; cursor:pointer;}


/* ------------------------------ STUDI ------------------------------ */
.gallery-swiper {width:100%; height:100vh; position:relative;}
.gallery-swiper .swiper-slide {background-size:cover;background-position:center;background-repeat:no-repeat;width:100%;height:100vh;}
.gallery-overlay {position:absolute; bottom:0px; left:0px; color:#fff; z-index:10; padding:5%; background: linear-gradient(180deg,rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.4) 46%, rgba(0, 0, 0, 0.8) 99%); width:100%;}
.overlay-top {font-weight:300;letter-spacing:3px;font-size:30px; margin:0px;}
.overlay-title {font-weight:800; font-size:40px; margin:0 0 10px; text-transform:uppercase; max-width:1000px;}
.overlay-info {font-size:20px; line-height:24px; margin:0;}
.frecce-swiper-gallery {position:absolute; z-index:99; bottom:90px; right:5%; display:flex; column-gap:30px;}
.swiper-button-next-gallery-sede {width:50px; height:50px; background: url("images/freccia-dx-white-circle.png") no-repeat center center / cover; cursor:pointer;}
.swiper-button-prev-gallery-sede {bottom:90px; right:10%; width:50px; height:50px; background: url("images/freccia-sn-white-circle.png") no-repeat center center / cover; cursor:pointer;}
.studio-info-interno {padding:7vw 5%; margin:0 auto;}
.studio-intro {display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px;margin-bottom:80px;}
.box {width:45%; min-width:280px;position:relative;padding-top:20px;}
.box-step {width:30%; position:relative;}
.circle-wrap {position:absolute; top:-15px; left:0; width:50px; height:50px; z-index:0;}
.circle {width:50px; height:50px; border:1px solid #cccccc; border-radius:50%;}
.circle-color {width:50px; height:50px; background: url("images/bkg-data-calendario.png") no-repeat center center / contain;}
.circle-color-promo {width:50px; height:50px; background: url("images/bkg-data-calendario-trasp.png") no-repeat center center / contain; position:absolute; left:8%; bottom:0px; z-index:0;}
.box-title {font-weight:700; font-size:20px; margin:0 0 10px;position:relative;z-index:2;}
.box-content {font-weight:400; font-size:16px; line-height:1.6; position:relative; z-index:1;}
.box-content h4 {text-transform: uppercase; font-weight:600; margin-bottom:10px;}
.studio-quote {font-size:90px; line-height:95px; font-weight:200; color:#000;}
.studio-quote strong {font-weight:700;}
/* Form contatto */
.row-form-contatto {background: url("images/background-form-contatto.jpg") no-repeat center right / cover; width:100%; background-size:cover; background-position:center; background-attachment:fixed; display:flex; justify-content: space-between; padding:100px 5%; color:#fff; align-items: center; flex-wrap:wrap;}
.text-form-contatto {width:50%;}
.cta-form {width:45%;}
.cta-title h2 {font-size:50px!important; line-height:60px!important; font-weight:300;}
.subtitle-form {margin-bottom:30px; font-size:50px; line-height:60px; font-weight:600;}
.subtitle-form-promo {margin-bottom:30px; font-size:30px; line-height:30px; font-weight:400;}
.contact {}
.form-riga {margin-bottom:10px;}
input {font-family: 'Raleway', sans-serif; margin-bottom:10px; background-color:#fff!important;}
select {font-family: 'Raleway', sans-serif; width:100%; padding:5px; border: 1px solid #d1d1d1;}
textarea {font-family: 'Raleway', sans-serif; height:150px;}
button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus {font-family: 'Raleway', sans-serif; background-color:#000!important;}
.note {font-size:14px; line-height:18px; padding:10px 0px;}
fieldset {margin-bottom:10px;}

/* ------------------------------ CORSI ------------------------------ */
.hero-corso {width:100%; display:flex; justify-content: space-between; column-gap:2%; align-items:center;}
.text-intro-corso {width:50%; padding:0px 5%;}
.text-intro-corso h1 {font-size:40px; line-height:45px; font-weight:600; text-transform:uppercase; margin-bottom:30px;}
.text-intro-corso h2 {font-size:20px; line-height:24px; font-weight:600;}
.obiettivi {margin:50px 0px 20px 0px; position:relative;}
.obiettivi h3 {font-size:20px; line-height:24px; font-weight:600; margin-bottom:0px;}
.categorie-obiettivi a {text-transform:uppercase;}
.video-corso {width:50%; min-height:1000px; height:100vh; position:relative; overflow:hidden;}
.video-corso .bg-video {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
/* ARCHIVIO POST TYPE */
.loop-CPT {width:100%; padding:10vw 5%; display:flex; gap:50px 5%; justify-content: space-between; flex-wrap: wrap;}
.box-loop-CPT {width:30%;}

/* CHI SIAMO */
.row-image-intro-page {width: 100%; height: 100vh; background-size:cover; background-position:center; position:relative; z-index:0;}
.insegnanti-carousel {width:100%; max-width:1400px; margin:0 auto; position:relative; } 
.insegnante-slide {text-align:center; } 
.insegnante-img-wrapper {overflow:hidden; } 
.insegnante-img {width:100%; height:auto; display:block; } 
.insegnante-info {margin-top:15px; } 
.insegnante-nome {font-family:'Raleway',sans-serif; font-size:20px; font-weight:600; margin:0 0 8px; } 
.insegnante-descr {font-family:'Raleway',sans-serif; font-size:16px; font-weight:400; margin:0; } 
.swiper-button-prev, .swiper-button-next {color:#004247; width:44px; height:44px; } 
.swiper-button-prev::after, .swiper-button-next::after {font-size:20px; }
.intro-trainer {padding:200px 5% 80px 5%;}
.valori {width:100%; padding:80px 5%;}
.ripetitore-valori {display:flex; justify-content:space-between; gap:50px; padding:50px 5%; flex-wrap:wrap;}
.box-valore {width:45%; position:relative;}
.box-valore h5 {font-size:24px; line-height:28px; text-transform:uppercase; font-weight:800; margin-bottom:10px;}
.img-classi {width:50%; height:100vh; background-size:cover; background-position:center;}
.row-video {width:100%; position:relative; z-index:0; overflow: hidden;}
.row-video video {min-width:100%; min-height:100%; width:auto; height:auto; z-index:0; margin-bottom:0px;}
audio, canvas, progress, video {max-width:auto!important;} 

/* ------------------------------ PAGINA CONTATTI ------------------------------ */
.hero-contatti {width:100%; display:flex; justify-content:space-between; align-items: center;}
.text-contatti {width:50%; padding:80px 5%;}
.text-contatti h1 {font-size: 50px; line-height: 55px; font-weight:600; margin-bottom: 30px;}
.text-contatti h2 {font-size: 20px; line-height: 25px; margin-bottom: 30px; font-weight: 400;}
.form-contatti {width:50%; background-size:cover; background-position:center; padding:150px 5%;}
.carosello-studi-contatti {width:50%;}
.row-studi-video {width:100%; padding:7vw 0%; display:flex; justify-content: space-between; column-gap: 2%; align-items: center;}

/* ------------------------------ PAGINA ARCHIVIO OBIETTIVI ------------------------------ */
.hero-obiettivi {width: 100%; display: flex; justify-content: space-between; align-items: stretch; margin-bottom:7vw;}
.text-obiettivi {width: 50%; padding: 0px 5%; background-color:#000; color:#fff; display:flex; flex-wrap: wrap; align-content:center;}
.text-obiettivi h1 {font-size: 50px; line-height: 55px; font-weight:600; margin-bottom: 30px;}
.text-obiettivi h2 {font-size: 20px; line-height: 25px; margin-bottom: 30px; font-weight: 400;}
.posts-grid {display:flex; justify-content: space-between; padding:0px 5% 7vw 5%; row-gap: 80px; flex-wrap: wrap;}
.mega-menu-description {display:none!important;}


/* ------------------------------ FOOTER ------------------------------ */

.fusion-footer {background-color: #f9f9f9; padding: 40px 5% 150px 5%; font-size: 14px; color: #000;}
.footer-content {display: flex; justify-content: space-between; flex-wrap: wrap; gap: 30px;}
.footer-logo-section {flex: 1; min-width: 200px;}
.footer-logo {height:175px;}
.footer-tags {display:flex; flex-direction:column;}
.tag {display:inline-block; padding:5px 10px; font-weight:700; letter-spacing:1px; font-size:18px; line-height:20px;}
.reformer {background-color:#00b5e2; color:#000;}
.matwork {background-color:#e7216d; color:#000;}
.circuit {background-color:#cdd60d; color:#000;}
.footer-links {display:flex; gap:40px; flex:1.5; min-width:250px; justify-content: space-around; flex-wrap: wrap;}
.footer-links .col {display:flex; flex-direction:column; gap:8px;}
.footer-links li {list-style: none;}
.footer-links a {text-decoration:none; color:#000; font-weight:400; transition:0.3s;}
.footer-links a:hover {opacity:0.7;}
.newsletter {min-width:260px;}
.newsletter-text {font-weight:700; font-size:16px; line-height:1.4; margin-bottom:10px;}
.newsletter-btn {display:inline-block; background:#000; color:#fff; text-decoration:none; padding:12px 20px; font-weight:500; transition:0.3s;}
.newsletter-btn .arrow {margin-left:10px;}
.newsletter-btn .arrow img {width:20px; height:15px;}
.newsletter-btn:hover {background-color:#0E0E0E; color:#fff;}
.footer-bottom {display:flex; justify-content:space-between; flex-wrap:wrap; margin-top:30px; font-size:12px; border-top:1px solid #ddd; padding-top:20px;}
.footer-bottom a {color:#000;}
.social-icons {display:flex; gap:15px; align-items:center;}
.social-icons img {height:20px;}

#banner-bottom {position:fixed; bottom:0; left:0; width:100%; background:#e7216d; color:#fff; z-index:9999;}
.banner-container {margin:0 auto; padding:5px 5%; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; position:relative;}
#banner-bottom p {margin:0; font-size:18px;}
.banner-btn {color:#fff; border:1px solid #fff; padding:4px 20px; font-weight:300; text-decoration:none; font-size:16px; display:inline-block; white-space:nowrap;}
.banner-btn .arrow {margin-left:10px;}
.banner-btn .arrow img {width:20px; height:15px;}
.banner-close {position:absolute; top:5px; right:10px; background:none; border:none; color:#fff; font-size:20px; cursor:pointer; line-height:1;}

.popup-overlay {position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.7); display:flex; align-items:center; justify-content:center; z-index:9999; } 
.popup-content {background:#fff; max-width:600px; width:90%; padding:30px; border-radius:8px; position:relative; } 
.popup-close {position:absolute; top:10px; right:15px; font-size:30px; background:none; border:none; cursor:pointer; padding:5px 10px; font-weight:300;} 
#popup-form[hidden] {display:none; }

/* ------------------------------ PROMO ------------------------------ */
.flex-news {display:flex; align-content: stretch; justify-content: space-between;}
.img-promo {width:45%; background-size:cover; background-position:center;}
.post-info {width:45%; padding:30px 0px;}
.post-info h3 {font-size:30px; line-height:35px;}
.promo-excerp {line-height:25px;}
.banner-nl {border-bottom:solid 5px #e7216d; background: url("images/novita-promozioni-pilates-bergamo.jpg") no-repeat center center / cover; background-attachment: fixed;}
.quote-promo {padding:100px 5% 0px 5%;}
/* calendario */
.loop-calendario {display:flex; justify-content:space-between; column-gap:2%; padding:50px 5% 50px 5%; flex-wrap: wrap;}
.blocco-mese {background-color:#f8f8f8; padding:30px; width:23%;}
.blocco-mese h4 {font-size:20px; text-transform:uppercase;}
.masterclass {display:flex; justify-content:flex-start; align-items: flex-start; transition:transform .2s ease; column-gap:5%; margin-bottom:30px;}
.masterclass:hover {transform:translateY(-3px);}
.data-masterclass {font-size:18px; line-height:65px; text-align:center; height:65px!important; width:65px!important; max-width:65px!important; min-width:65px!important; background: url("images/bkg-data-calendario.png") no-repeat center center / contain;}
.info-masterclass {}
.tit-masterclass {font-size:20px; line-height:22px; text-transform:uppercase; font-weight:600;}
.trainer-masterclass {font-weight: 200; font-style:italic;}
.descrizione-masterclass {}

/* ------------------------------ NEWS ------------------------------ */
.img-news {width:50%; height:100vh; position:relative; background-size:cover; background-position:center;}
.news-card {display:flex; justify-content: space-between;}
.news-thumb {width:50%;}
.more-link {display:none;}

/* ------------------------------ ORARIO CORSI PALINSESTO ------------------------------ */
.row-timetable {padding:0px 5%;}
.tw {margin:0 auto; padding:20px; } 
.tw-tabs {display:flex; gap:12px; margin-left:20px;} 
.tw-tab {appearance:none; background:#f5f5f5; color:#000; border:none; padding:10px 14px; font-weight:600; cursor:pointer; border-radius:4px 4px 0 0; font-size:20px; letter-spacing: 1px;} 
.tw-tab[aria-selected="true"] {background:#fff!important; color:#000; border-top:1px solid #eee; border-left:1px solid #eee; border-right:1px solid #eee; border-bottom:solid 1px #fff;} 
.tw-tab[aria-selected="false"] {background:#000!important; color:#fff; } 
.tw-panels {margin-top: -1px;} 
.tw-panel {border:1px solid #eee; padding:0; } 
.tw-panel + .tw-panel {} 
.tw-panel[hidden] {display:none; } 
.tw-panel-inner {padding:16px; } 
.tw-acc-trigger {display:none; width:100%; text-align:left; padding:14px 16px; background:#f5f5f5; border:none; border-bottom:1px solid #eee; font-weight:700; cursor:pointer; } 
.tw-acc-trigger[aria-expanded="true"] {background:#000; color:#fff; } 
.mptt-shortcode-wrapper .mptt-shortcode-table tbody .mptt-event-container .event-title {text-transform: uppercase!important; font-weight:600;}
.event-description {font-style: italic;}
.hero-palinsesto {width:100%; margin-bottom:7vw;}
.text-palinsesto {width:50%; padding:200px 5% 0px 5%; display:flex; flex-wrap: wrap; align-content:center;}
.text-palinsesto h1 {font-size: 50px; line-height: 55px; font-weight:600; margin-bottom: 30px;}
.text-palinsesto h2 {font-size: 20px; line-height: 25px; margin-bottom: 30px; font-weight: 400;}





@media (max-width: 909px) {
	body {text-align:center;}
    .col-2 {width:100%; float:none;}
    .col-3 {width:50%;}
	.col-4 {width:50%;}
	.col-5 {width:50%;}
	.content-area {padding:150px 5% 50px 5%;}
	.mobile {display:block!important;}
	.desktop {display:none!important;}
	/* WhatsApp Bubble */
	.what-bubble {bottom:50px; width:40px; height:40px; padding:5px;}
	.what-bubble img {width:30px; height:30px;}
	
	/* padding */
	.p-l-5 {padding-left:0%;}
	.p-r-5 {padding-right:0%;}
	.p-l-10 {padding-left:0%;}
	.p-r-10 {padding-right:0%;}
	
	/* margin */
	.m-l-5 {margin-left:0%;}
	.m-r-5 {margin-right:0%;}
	.m-l-10 {margin-left:0%;}
	.m-r-10 {margin-right:0%;}
	
	/* width */
	.w10 {width:50%!important;}
	.w20 {width:50%!important;}
	.w30 {width:50%!important;}
	.w33 {width:50%!important;}
	.w40 {width:100%!important;}
	.w45 {width:100%!important;}
	.w50 {width:100%!important;}
	.w60 {width:100%!important;}
	.w70 {width:100%!important;}
	.w80 {width:100%!important;}
	.w90 {width:100%!important;}
	.w100 {width:100%!important;}
	
	/* stili di testo */
	h3 {font-size:40px; line-height:45px;}
	.tit-big {font-size:60px; line-height:65px;}
	.tit-medium {font-size:40px; font-weight:200; line-height:45px;}
	
	/* ------------------------------ HOME ------------------------------ */
	.hero-new-site {justify-content:center; padding:80px 5%;}
	.text-hero-new {text-align:center; font-size:40px; line-height:45px;}
	.text-hero-new span {font-size:20px; line-height:22px;}
	.hero-content h1 {font-size:32px;} .hero-buttons {flex-direction:column; align-items:center; justify-content: center; text-align:center;}
	.hero-section {padding:80px 5%;}
	.hero-content h1 {font-size:20px; line-height:22px;}
	.subtitle {font-size:70px; line-height:75px;}
	
	.site-header-menu {display:block!important;}
	.promo-swiper {height:500px;}
	
	/* categoria corso */
	.categoria-corsi {display:block; padding:50px 5%;}
	.cat-text {flex:1; margin-bottom:50px; padding:0px;}
	.img-cat {min-height:700px;}
	/* quote */
	.quote {background-attachment:scroll; padding:200px 5% 50px 5%; display:block;}
	.text-quote {width:100%;}
	/* studi */
	.padding-carosel {padding:0px 15%;}
	/* obiettivi */
	.intro-obiettivi {font-size:20px; line-height:25px;}
	.intro-obiettivi h4 {padding-top:30px;}
	
	/* ------------------------------ FOOTER ------------------------------ */
	.fusion-footer {padding:40px 5% 100px 5%;}
	.footer-content {display:block;}
	.footer-logo {margin-bottom:50px;}
	.footer-tags {display:block; margin-bottom:30px;}
	.footer-links {display:block;}
	.footer-links .col {display:block;}
	.footer-bottom {display:block;}
	.newsletter {margin-top:50px;}
	.banner-container p {display:none;}
	#banner-bottom p {font-size:14px; line-height:18px;}
	.banner-btn {padding:4px 10px; font-size:14px;}
	.banner-btn .arrow {margin-left:5px;}
	.banner-btn .arrow img {width:15px; height:10px;}
	.social-icons {justify-content:center;}
	.tag {display:block;}
	
	/* ------------------------------ STUDI ------------------------------ */
	.gallery-swiper {height:500px;}
	.gallery-swiper .swiper-slide {height:500px;}
	.overlay-top {font-size:20px; margin:0px;}
	.overlay-title {font-size:30px;}
	.overlay-info {font-size:18px; line-height:22px;}
	.frecce-swiper-gallery {display:none;}
	.studio-quote {font-size:40px; line-height:50px;} .studio-intro {flex-direction:column;gap:30px;}
	.circle-wrap {display:none;}
	.intro-studi {font-size:20px; line-height:25px;}
	/* Form contatto */
	.row-form-contatto {background-attachment:scroll; display:block; padding:80px 5%;}
	.text-form-contatto {margin-bottom:50px; width:100%;}
	.cta-form {width:100%;}
	.cta-title h2 {font-size:40px!important; line-height:50px!important;}
	.subtitle-form {font-size:40px!important; line-height:50px!important;}
	.subtitle-form-promo {font-size:20px; line-height:20px;}
	
	/* ------------------------------ CORSI ------------------------------ */
	.hero-corso {display:block;}
	.text-intro-corso {width:100%; padding:150px 5% 50px 5%;}
	.text-intro-corso h1 {font-size:30px; line-height:35px;}
	.text-intro-corso h2 {font-size:18px; line-height:22px;}
	.obiettivi h3 {font-size:18px; line-height:22px;}
	.video-corso {width:100%; min-height:500px; height:70vh;}
	/* ARCHIVIO CORSI */
	.loop-corsi {padding:80px 5%;}
	.box-loop-CPT {width:45%;}
	.box-loop-corso {width:45%;}
	
	/* ------------------------------ CHI SIAMO ------------------------------ */
	.intro-trainer {padding:80px 5%;}
	.valori {padding:0px 5% 80px 5%;}
	.ripetitore-valori {display:block; padding:0px;}
	.box {width:100%;}
	.box-step {width:100%;}
	.box-valore {width:100%; margin-bottom:30px;}
	.box-valore h5 {font-size:20px; line-height:25px;}
	.img-classi {width:100%; height:900px;}
	
	
	/* ------------------------------ PAGINA CONTATTI ------------------------------ */
	.hero-contatti {display:block;}
	.text-contatti {width:100%; padding:150px 5% 50px 5%;}
	.text-contatti h1 {font-size: 40px; line-height: 45px;}
	.text-contatti h2 {font-size:18px; line-height:22px;}
	.form-contatti {width:100%; padding:100px 5%;}
	.carosello-studi-contatti {width:100%; margin-bottom:30px;}
	.row-studi-video {display:block;}
	
	/* ------------------------------ PAGINA ARCHIVIO OBIETTIVI ------------------------------ */
	.hero-obiettivi {display:block;}
	.text-obiettivi {padding:150px 5% 100px 5%; width:100%; text-align:center; justify-content:center;}
	.text-obiettivi h1 {font-size: 40px; line-height: 45px;}
	.text-obiettivi h2 {font-size:18px; line-height:22px;}
	
	/* ------------------------------ PROMO ------------------------------ */
	.flex-news {display:block;}
	.img-promo {width:100%; height:300px;}
	.post-info {width:100%;}
	.post-info h3 {font-size:24px; line-height:28px;}
	/* calendario */
	.loop-calendario {gap:2%;}
	.blocco-mese {padding:30px; width:48%;}
	.data-masterclass {font-size:16px; line-height:65px; text-align:center; height:65px!important; width:65px!important; max-width:65px!important; min-width:65px!important;}
	.info-masterclass {text-align:left!important;}
	.tit-masterclass {font-size:18px; line-height:20px;}
	.text-sunday p {font-size:18px; line-height:20px;}
	.banner-sundayclub {width:100%; background-attachment:scroll; padding:50px 5%;}
	
	/* ------------------------------ ORARIO CORSI PALINSESTO ------------------------------ */
	.tw-tabs {display:none; } .tw-acc-trigger {display:block; }
	.text-palinsesto {width:100%; padding:150px 5% 0px 5%; display:block;}
	.text-palinsesto h1 {font-size:40px; line-height:45px;}


}


@media (max-width: 767px) {
    .col-3 {width:100%; float:none;}
	.col-4 {width:100%; float:none;}
	.col-5 {width:100%; float:none;}
	
	/* stili di testo */
	h3 {font-size:30px; line-height:35px;}
	.tit-big {font-size:40px; line-height:45px;}
	.tit-medium {font-size:30px; font-weight:200; line-height:35px;}
	
	/* width */
	.w10 {width:100%!important;}
	.w20 {width:100%!important;}
	.w30 {width:100%!important;}
	.w33 {width:100%!important;}
	
	.banner-container {flex-direction:column; text-align:center;}
	
	/* ------------------------------ HOME ------------------------------ */
	.subtitle {font-size:40px; line-height:45px;}
	
	/* ------------------------------ STUDI ------------------------------ */
	.cta-title h2 {font-size:30px!important; line-height:40px!important;}
	.subtitle-form {font-size:30px!important; line-height:40px!important;}
	
	/* ------------------------------ CORSI ------------------------------ */
	/* ARCHIVIO CORSI */
	.box-loop-corso {width:100%;}
	.box-loop-CPT {width:100%;}
	.img-cat {min-height:500px;}
	
	/* ------------------------------ PAGINA CONTATTI ------------------------------ */
	.text-contatti {width:100%; padding:150px 5% 50px 5%;}
	.text-contatti h1 {font-size:30px; line-height:35px;}
	.text-contatti h2 {font-size:18px; line-height:22px;}
	.form-contatti {width:100%; padding:100px 5%;}
	
	/* ------------------------------ PAGINA ARCHIVIO OBIETTIVI ------------------------------ */
	.text-obiettivi h1 {font-size: 40px; line-height: 45px;}
	.text-obiettivi h2 {font-size:18px; line-height:22px;}
	
	/* calendario */
	.blocco-mese {width:100%;}
	
	/* palinsesto */
	.text-palinsesto h1 {font-size:30px; line-height:35px;}
	.mptt-shortcode-wrapper .mptt-shortcode-list .mptt-column .mptt-column-title {font-size:20px; line-height:25px; margin:30px 0px; background-color:#F1F1F1;}
	.mptt-shortcode-wrapper .mptt-shortcode-list .mptt-column .mptt-events-list {margin:0px;}
	.mptt-event-title {font-weight:600; text-transform:uppercase;}
	.mptt-shortcode-wrapper .mptt-shortcode-list .mptt-column .mptt-events-list .mptt-list-event .timeslot {margin:0px;}
	
}


@media (max-width: 480px) {

}





