/* ==========================================================================
   Biofarmex Light – stili principali
   Colori e misure presi dal sito precedente (tema Optico personalizzato).
   ========================================================================== */
:root{
	--bfx-skin:#005ca1;
	--bfx-skin-dark:#004a82;
	--bfx-title:#1f5ca1;
	--bfx-green:#7ec53e;
	--bfx-text:#42464e;
	--bfx-dark:#313131;
	--bfx-muted:#919191;
	--bfx-grey:#f7f8fa;
	--bfx-border:#e8e8e8;
	--bfx-head:"Montserrat",Arial,Helvetica,sans-serif;
	--bfx-body:"Poppins",Tahoma,Geneva,sans-serif;
	--bfx-container:1170px;
	--bfx-gutter:15px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--bfx-text);font-family:var(--bfx-body);font-size:14px;line-height:24px;font-weight:400;-webkit-font-smoothing:antialiased}
img,svg,video,iframe{max-width:100%}
img{height:auto;vertical-align:middle}
a{color:var(--bfx-skin);text-decoration:none;transition:color .2s}
a:hover{color:var(--bfx-dark)}
p{margin:0 0 15px}
h1,h2,h3,h4,h5,h6{font-family:var(--bfx-head);font-weight:700;color:var(--bfx-text);margin:0 0 15px}
h1{font-size:40px;line-height:45px;color:#212121}
h2{font-size:36px;line-height:40px}
h3{font-size:30px;line-height:35px}
h4{font-size:24px;line-height:30px}
h5{font-size:22px;line-height:25px}
h6{font-size:18px;line-height:20px}
ul,ol{margin:0 0 15px;padding-left:20px}
blockquote{margin:0 0 20px;padding:20px 30px;border-left:4px solid var(--bfx-skin);background:#fff;font-style:italic}
blockquote p:last-child{margin:0}
pre{white-space:pre-wrap;font-family:var(--bfx-body);font-size:13px;line-height:22px;background:var(--bfx-grey);padding:15px 20px;border:0;color:var(--bfx-muted)}
hr,.wp-block-separator{border:0;border-top:1px solid var(--bfx-border);margin:30px auto}
table{border-collapse:collapse;width:100%;margin-bottom:20px}
th,td{border:1px solid var(--bfx-border);padding:8px 12px;text-align:left}
input,select,textarea,button{font:inherit;color:inherit}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;left:10px;top:10px;z-index:100000;background:#fff;padding:10px 15px;color:var(--bfx-skin)}
.container{width:100%;max-width:calc(var(--bfx-container) + 2*var(--bfx-gutter));margin:0 auto;padding:0 var(--bfx-gutter)}
.bfx-svg{display:inline-block;vertical-align:middle;flex:none}

/* ---------- Pulsanti ---------- */
.bfx-btn,.wp-block-button__link,.wpcf7-submit,button.pc_auth_btn,.bfx-content .button{display:inline-block;font-family:var(--bfx-head);font-size:14px;font-weight:700;line-height:18px;letter-spacing:1px;text-transform:uppercase;padding:12px 40px;border-radius:5px;border:2px solid var(--bfx-skin);background:var(--bfx-skin);color:#fff;cursor:pointer;transition:all .25s;text-align:center}
.bfx-btn:hover,.wp-block-button__link:hover,.wpcf7-submit:hover{background:var(--bfx-dark);border-color:var(--bfx-dark);color:#fff}
.bfx-btn-outline{background:transparent;color:var(--bfx-skin);border-width:1px;padding:9px 10px;border-radius:5px}
.bfx-btn-outline:hover{background:var(--bfx-skin);border-color:var(--bfx-skin);color:#fff}
.bfx-btn-white{background:#fff;border-color:#fff;color:#000}
.bfx-btn-white:hover{background:var(--bfx-dark);border-color:var(--bfx-dark);color:#fff}
.is-style-outline .wp-block-button__link{background:transparent;color:var(--bfx-skin)}

/* ---------- Topbar ---------- */
.bfx-topbar{background:var(--bfx-skin);color:#fff;font-size:14px}
.bfx-topbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:58px}
.bfx-social{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.bfx-social a{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;color:inherit;font-size:13px}
.bfx-topbar .bfx-social a{color:#fff}
.bfx-topbar .bfx-social a:hover{color:rgba(255,255,255,.7)}
.bfx-langs{display:flex;gap:12px;list-style:none;margin:0;padding:0}
.bfx-langs a{display:inline-flex;padding:4px 0;opacity:.9}
.bfx-langs a:hover,.bfx-langs .current a{opacity:1}
.bfx-langs img{width:16px;height:11px;display:block}

/* ---------- Intestazione ---------- */
.bfx-header-h{min-height:101px}
.bfx-header{background:#fff;position:relative;z-index:50;transition:box-shadow .3s}
.bfx-header-inner{display:flex;align-items:center;min-height:101px;gap:10px}
.site-branding{flex:none;margin-right:auto}
.site-title{margin:0;font-size:24px;line-height:1}
.site-title a{display:block}
.bfx-logo{max-height:64px;width:auto;transition:max-height .3s}
.main-navigation .nav-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center}
.main-navigation .nav-menu>li{position:relative}
.main-navigation .nav-menu>li>a{display:block;position:relative;margin:0 15px;font-family:var(--bfx-head);font-weight:700;font-size:14px;line-height:101px;letter-spacing:1px;text-transform:uppercase;color:var(--bfx-dark);transition:line-height .3s,color .2s}
.main-navigation .nav-menu>li>a::before{content:"";position:absolute;left:50%;bottom:35px;width:0;height:2px;background:var(--bfx-skin);opacity:0;transition:all .3s}
.main-navigation .nav-menu>li:hover>a::before,.main-navigation .nav-menu>li.current-menu-item>a::before,.main-navigation .nav-menu>li.current-menu-ancestor>a::before{width:100%;left:0;opacity:1}
.main-navigation .nav-menu>li:hover>a,.main-navigation .nav-menu>li.current-menu-item>a,.main-navigation .nav-menu>li.current-menu-ancestor>a,.main-navigation .nav-menu>li.current_page_item>a{color:var(--bfx-skin)}
.main-navigation .sub-menu{list-style:none;margin:0;padding:10px 0;position:absolute;top:100%;left:0;min-width:240px;background:#015ca1;box-shadow:0 5px 20px rgba(0,0,0,.15);opacity:0;visibility:hidden;transform:translateY(10px);transition:all .25s;z-index:60}
.main-navigation li:hover>.sub-menu,.main-navigation li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.main-navigation .sub-menu li{position:relative}
.main-navigation .sub-menu a{display:block;padding:9px 25px;color:#fff;font-family:var(--bfx-body);font-size:13px;line-height:20px;border-bottom:1px solid rgba(255,255,255,.08)}
.main-navigation .sub-menu li:last-child>a{border-bottom:0}
.main-navigation .sub-menu a:hover,.main-navigation .sub-menu .current-menu-item>a{color:rgba(255,255,255,.7)}
.main-navigation .sub-menu .sub-menu{top:-10px;left:100%}
.bfx-header-tools{display:flex;align-items:center;gap:14px;flex:none}
.bfx-search-open,.menu-toggle,.bfx-search-close{background:none;border:0;padding:6px;cursor:pointer;color:var(--bfx-dark);font-size:18px;line-height:1}
.bfx-search-open:hover{color:var(--bfx-skin)}
.bfx-header-btn{font-size:13px;line-height:16px;padding:9px 10px}
.menu-toggle{display:none;font-size:26px}
.menu-toggle .i-close{display:none}

/* Intestazione fissa allo scorrimento */
.bfx-header.is-stuck{position:fixed;top:0;left:0;right:0;box-shadow:0 13px 25px -12px rgba(0,0,0,.25);animation:bfx-drop .35s ease}
.bfx-header.is-stuck .bfx-header-inner{min-height:70px}
.bfx-header.is-stuck .main-navigation .nav-menu>li>a{line-height:70px}
.bfx-header.is-stuck .main-navigation .nav-menu>li>a::before{bottom:20px}
.bfx-header.is-stuck .bfx-logo{max-height:46px}
body.admin-bar .bfx-header.is-stuck{top:32px}
@keyframes bfx-drop{from{transform:translateY(-100%)}to{transform:none}}

/* Ricerca a tutto schermo */
.bfx-search-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,92,161,.96);display:flex;align-items:center;justify-content:center;padding:20px}
.bfx-search-overlay[hidden]{display:none}
.bfx-search-close{position:absolute;top:25px;right:30px;color:#fff;font-size:30px}
.bfx-search-form{display:flex;width:100%;max-width:700px;border-bottom:2px solid rgba(255,255,255,.6)}
.bfx-search-form input{flex:1;background:transparent;border:0;color:#fff;font-size:30px;line-height:1.3;padding:12px 0;outline:0;font-family:var(--bfx-head);font-weight:300}
.bfx-search-form input::placeholder{color:rgba(255,255,255,.7)}
.bfx-search-form button{background:none;border:0;color:#fff;font-size:28px;cursor:pointer}

/* ---------- Barra titolo ---------- */
.bfx-titlebar{position:relative;background:var(--bfx-grey) right center/cover no-repeat;min-height:180px;display:flex;align-items:center;padding:35px 0}
.bfx-titlebar.no-title{min-height:120px}
.bfx-titlebar .container{position:relative;z-index:1}
.bfx-titlebar-title{margin:0 0 8px;font-family:var(--bfx-head);font-size:40px;line-height:50px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--bfx-title)}
.bfx-breadcrumb{font-family:var(--bfx-head);font-size:14px;line-height:22px;color:rgba(0,0,0,.8)}
.bfx-breadcrumb a{color:rgba(0,0,0,.6)}
.bfx-breadcrumb a:hover{color:var(--bfx-skin)}
.bfx-breadcrumb .home .bfx-svg{font-size:15px;margin-top:-3px}

/* ---------- Contenuto pagine (blocchi) ---------- */
.site-content{min-height:30vh}
.bfx-content>:where(:not(.alignfull):not(.alignwide):not(.bfx-slider)){max-width:calc(var(--bfx-container) + 2*var(--bfx-gutter));margin-left:auto;margin-right:auto;padding-left:var(--bfx-gutter);padding-right:var(--bfx-gutter)}
.bfx-content>.alignwide{max-width:1400px;margin-left:auto;margin-right:auto}
.bfx-page .bfx-content>:where(:not(.alignfull):not(.bfx-slider)):first-child{margin-top:60px}
.bfx-page .bfx-content>:where(:not(.alignfull):not(.bfx-slider)):last-child{margin-bottom:60px}
.bfx-content .wp-block-image{margin:0 0 20px}
.bfx-content .wp-block-image img{display:block}
.bfx-content .wp-block-embed{margin:0 0 20px}

/* Sezioni (ex vc_row) */
.bfx-row{position:relative;padding:70px 0;background-position:center;background-size:cover;background-repeat:no-repeat}
.bfx-row>.bfx-container,.bfx-row>.wp-block-group__inner-container>.bfx-container{position:relative;z-index:1}
.bfx-container{max-width:calc(var(--bfx-container) + 2*var(--bfx-gutter));margin-left:auto;margin-right:auto;padding-left:var(--bfx-gutter);padding-right:var(--bfx-gutter)}
.bfx-row.bfx-stretch-content .bfx-container{max-width:none;padding:0}
.bfx-bg-grey{background-color:var(--bfx-grey)}
.bfx-bg-white{background-color:#fff}
.bfx-bg-skincolor{background-color:var(--bfx-skin);color:rgba(255,255,255,.85)}
.bfx-bg-darkgrey{background-color:#1b1b1b;color:rgba(255,255,255,.8)}
.bfx-bg-darkgrey::before{content:"";position:absolute;inset:0;background:rgba(27,27,27,.72);z-index:0}
.bfx-bg-darkgrey :is(h1,h2,h3,h5,h6),.bfx-bg-skincolor :is(h1,h2,h3,h5,h6){color:#fff}
.bfx-content .wp-block-columns{margin-bottom:0;gap:30px}
.bfx-content .wp-block-column>:last-child{margin-bottom:0}
.bfx-cols-equal{align-items:stretch!important}
.bfx-inner{position:relative;margin-bottom:30px}
.bfx-inner:last-child{margin-bottom:0}
.bfx-inner.bfx-bg-white{background:#fff}
.box-shadow-1{box-shadow:0 0 30px rgba(0,0,0,.08)}
.box-shadow-2{box-shadow:0 10px 40px rgba(0,0,0,.08)}
.ts-no-gutter>.wp-block-columns,.ts-no-gutter .wp-block-columns{gap:0}
.ts-box-seprator .wp-block-column+.wp-block-column{border-left:1px solid #ebebeb}
.ts-overlap-row{position:relative;z-index:2}
.ts-mb-20{margin-bottom:20px}
.bfx-col-bg{background-position:center;background-size:cover;background-repeat:no-repeat;min-height:250px}

/* Titoli di sezione (ex ts-heading) */
.bfx-heading{margin-bottom:35px}
.bfx-heading.has-text-align-center,.bfx-heading.is-center{text-align:center}
.bfx-heading .bfx-subheading{font-family:var(--bfx-head);font-size:14px;line-height:24px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--bfx-green);margin:0 0 5px}
.bfx-heading .bfx-heading-title{font-family:var(--bfx-head);font-size:36px;line-height:42px;font-weight:300;color:var(--bfx-text);margin:0}
.bfx-heading .bfx-heading-title strong{font-weight:700}
.bfx-heading .bfx-heading-desc{margin-top:15px}
.bfx-bg-darkgrey .bfx-heading .bfx-heading-title,.bfx-bg-skincolor .bfx-heading .bfx-heading-title{color:#fff}

/* Box servizi (ex ts-servicebox) */
.bfx-sbox{height:100%}
.bfx-sbox-style-1{padding:35px 25px 30px;background:#fff;transition:all .3s}
.bfx-sbox-style-1 .bfx-sbox-icon{font-size:52px;line-height:1;color:var(--bfx-skin);margin-bottom:22px;height:52px}
.bfx-sbox-style-1 .bfx-sbox-title{font-size:18px;line-height:26px;font-weight:700;color:var(--bfx-dark);margin:0 0 12px}
.bfx-sbox-style-1 p{font-size:14px;line-height:22px;color:var(--bfx-text)}
.bfx-sbox-style-1:hover{box-shadow:0 10px 40px rgba(0,0,0,.12);transform:translateY(-3px)}
.bfx-sbox-link{margin:15px 0 0!important}
.bfx-sbox-link a{font-family:var(--bfx-head);font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--bfx-skin)}
.bfx-sbox-link a:hover{color:var(--bfx-dark)}
.bfx-sbox-style-4{display:grid;grid-template-columns:auto 1fr;column-gap:20px;align-items:start;padding:10px 0}
.bfx-sbox-style-4 .bfx-sbox-icon{grid-row:span 3;width:60px;height:60px;border-radius:50%;background:var(--bfx-skin);color:#fff;font-size:24px;display:flex;align-items:center;justify-content:center}
.bfx-sbox-style-4 .bfx-sbox-title{font-size:18px;line-height:26px;margin:0 0 5px;color:var(--bfx-dark)}
.bfx-sbox-style-4 p{margin:0}
.bfx-sbox-icon i{display:inline-block;line-height:1}

/* Immagini con cornice (ex vc_box_outline) */
.bfx-img-outline img{border:1px solid #ebebeb;padding:6px;background:#fff}
.bfx-img-outline a:hover img{border-color:var(--bfx-skin)}
.bfx-content .aligncenter,.bfx-content .wp-block-image.aligncenter{text-align:center;margin-left:auto;margin-right:auto}

/* Testo grigio (ex ts-custom-heading come paragrafo) */
.bfx-custom-text{color:var(--bfx-muted)}

/* Video responsive */
.bfx-video{position:relative;padding-top:56.25%;margin-bottom:20px}
.bfx-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Schede (ex vc_tta_tabs) */
.bfx-content .wp-block-details{border:1px solid var(--bfx-border);margin:0 0 10px;padding:0}
.bfx-content .wp-block-details summary{cursor:pointer;padding:14px 20px;font-family:var(--bfx-head);font-weight:600;font-size:16px;color:var(--bfx-dark);background:var(--bfx-grey)}
.bfx-content .wp-block-details[open] summary{color:var(--bfx-skin)}
.bfx-content .wp-block-details>:not(summary){padding:0 20px}
.bfx-content .wp-block-details>summary+*{margin-top:15px}

/* ---------- Slider home ---------- */
.bfx-slider{position:relative;overflow:hidden;background:#fff;aspect-ratio:1900/500}
.bfx-slides,.bfx-slide{position:absolute;inset:0}
.bfx-slide{opacity:0;transition:opacity 1s ease;z-index:0}
.bfx-slide.is-active{opacity:1;z-index:1}
.bfx-slide img{width:100%;height:100%;object-fit:cover;display:block}
.bfx-slide a{display:block;height:100%}
.bfx-slider-progress{position:absolute;left:0;right:0;bottom:0;height:7px;background:rgba(255,255,255,.25);z-index:2}
.bfx-slider-progress span{display:block;height:100%;width:0;background:rgba(0,0,0,.15)}
.bfx-slider.is-running .bfx-slider-progress span{width:100%;transition:width linear var(--bfx-speed,5s)}

/* ---------- Articoli (blog) ---------- */
.bfx-blogbox{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.bfx-card{background:#fff;box-shadow:0 0 30px rgba(0,0,0,.06);display:flex;flex-direction:column;transition:box-shadow .3s}
.bfx-card:hover{box-shadow:0 10px 40px rgba(0,0,0,.12)}
.bfx-card-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--bfx-grey)}
.bfx-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.bfx-card:hover .bfx-card-img img{transform:scale(1.05)}
.bfx-card-noimg{display:block;height:100%;background:var(--bfx-grey)}
.bfx-card-body{padding:25px 30px 30px}
.bfx-card-meta{font-size:12px;line-height:18px;color:var(--bfx-muted);margin-bottom:10px;display:flex;gap:12px;flex-wrap:wrap}
.bfx-card-cat{color:var(--bfx-green);font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.bfx-card-title{font-size:18px;line-height:26px;margin:0 0 12px}
.bfx-card-title a{color:var(--bfx-dark)}
.bfx-card-title a:hover{color:var(--bfx-skin)}
.bfx-card-excerpt{margin:0;font-size:14px;line-height:22px}
.bfx-archive{padding:70px 0}
.bfx-single{padding:60px 0 70px}
.bfx-narrow{max-width:900px}
.bfx-post-meta{display:flex;gap:15px;font-size:13px;color:var(--bfx-muted);margin-bottom:20px}
.bfx-post-thumb{margin:0 0 30px}
.bfx-post-thumb img{width:100%}
.bfx-single .bfx-content img{max-width:100%}
.bfx-post-nav{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--bfx-border);margin-top:40px;padding-top:20px;font-family:var(--bfx-head);font-weight:600}
.nav-links{display:flex;gap:6px;justify-content:center;margin-top:40px}
.nav-links .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;border:1px solid var(--bfx-border);color:var(--bfx-dark)}
.nav-links .page-numbers.current,.nav-links a.page-numbers:hover{background:var(--bfx-skin);border-color:var(--bfx-skin);color:#fff}
.bfx-404{padding:80px 0}
.bfx-404-code{font-family:var(--bfx-head);font-size:120px;line-height:1;font-weight:700;color:var(--bfx-skin);margin-bottom:20px}
.bfx-inline-search{display:flex;max-width:500px;margin:20px auto;border:1px solid var(--bfx-border)}
.bfx-inline-search input{flex:1;border:0;padding:10px 15px;outline:0}
.bfx-inline-search button{border:0;background:var(--bfx-skin);color:#fff;padding:0 16px;cursor:pointer}

/* ---------- Moduli (Contact Form 7, PrivateContent) ---------- */
.wpcf7 .row{display:flex;flex-wrap:wrap;margin:0 -15px}
.wpcf7 [class*="col-sm-"]{padding:0 15px;width:100%}
.wpcf7 .col-sm-6{width:50%}
.wpcf7 .col-sm-4{width:33.333%}
.wpcf7 .input-group{margin-bottom:20px}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 input[type=number],.wpcf7 select,.wpcf7 textarea{width:100%;border:0;border-bottom:1px solid #dcdcdc;background:transparent;padding:10px 0;font-size:14px;line-height:22px;outline:0;border-radius:0;transition:border-color .2s}
.wpcf7 textarea{height:130px;resize:vertical}
.wpcf7 input:focus,.wpcf7 textarea:focus,.wpcf7 select:focus{border-bottom-color:var(--bfx-skin)}
.wpcf7 ::placeholder{color:#8a8a8a;font-weight:600;font-size:13px}
.wpcf7-acceptance input{margin-right:6px}
.wpcf7-not-valid-tip{font-size:12px}
.wpcf7 form .wpcf7-response-output{margin:15px 0 0;padding:10px 15px}
.pc_login_form input[type=text],.pc_login_form input[type=password],.pc_registration_form input,.pc_registration_form select{border:1px solid #dcdcdc;padding:9px 12px;background:#fff;width:100%}

/* ---------- Footer ---------- */
.site-footer{background:var(--bfx-grey);color:rgba(0,0,0,.6)}
.bfx-footer-cta{background:var(--bfx-skin);padding:40px 0}
.bfx-footer-cta-inner{display:flex;align-items:center;gap:30px}
.bfx-cta-icon{flex:none;width:81px;height:81px;border-radius:50%;background:#fff;color:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;font-size:34px}
.bfx-cta-text{flex:1;margin:0;font-family:var(--bfx-head);font-size:20px;line-height:36px;font-weight:600;color:#fff}
.bfx-footer-widgets{padding:70px 0 40px}
.bfx-footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.site-footer .widget-title{font-family:var(--bfx-head);font-size:22px;line-height:32px;font-weight:700;color:var(--bfx-dark);margin:0 0 26px;text-transform:capitalize}
.bfx-footer-about p{margin-bottom:30px}
.site-footer .bfx-social a{width:36px;height:36px;border:1px solid rgba(0,0,0,.1);border-radius:50%;color:var(--bfx-dark);font-size:14px;margin-right:4px}
.site-footer .bfx-social a:hover{background:var(--bfx-skin);border-color:var(--bfx-skin);color:#fff}
.bfx-footer-menu{list-style:none;margin:0;padding:0}
.bfx-footer-menu li{padding:0 0 15px;position:relative}
.bfx-footer-menu a{color:var(--bfx-text);padding-left:15px;position:relative}
.bfx-footer-menu a::before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;margin-top:-3px;border-top:1.5px solid var(--bfx-skin);border-right:1.5px solid var(--bfx-skin);transform:rotate(45deg)}
.bfx-footer-menu a:hover{color:var(--bfx-skin)}
.bfx-footer-login{margin-top:10px}
.bfx-contacts{list-style:none;margin:0;padding:0}
.bfx-contacts li{display:flex;gap:12px;padding:0 0 18px;align-items:flex-start;color:var(--bfx-text)}
.bfx-contacts .bfx-svg{font-size:20px;color:var(--bfx-skin);margin-top:2px}
.bfx-contacts a{color:var(--bfx-text)}
.bfx-contacts a:hover{color:var(--bfx-skin)}
.bfx-footer-bottom{border-top:1px solid rgba(0,0,0,.08);padding:25px 0;font-size:13px}
.bfx-footer-bottom-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.bfx-footer-nav{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0}
.bfx-footer-nav li+li::before{content:"|";margin:0 10px;color:rgba(0,0,0,.25)}
.bfx-footer-nav a{color:rgba(0,0,0,.6)}
.bfx-footer-nav a:hover{color:var(--bfx-skin)}
#totop{position:fixed;right:30px;bottom:30px;width:40px;height:40px;border-radius:50%;background:var(--bfx-skin);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;opacity:0;visibility:hidden;transition:all .3s;z-index:90}
#totop.is-visible{opacity:1;visibility:visible}
#totop:hover{background:var(--bfx-dark)}

/* ---------- Responsive ---------- */
@media (max-width:1199px){
	.main-navigation .nav-menu>li>a{margin:0 9px;font-size:13px}
}
@media (max-width:1024px){
	.bfx-header-h,.bfx-header-inner{min-height:80px}
	.menu-toggle{display:block}
	.main-navigation{position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 15px 25px -10px rgba(0,0,0,.2);max-height:0;overflow:hidden;transition:max-height .35s ease;order:5}
	.main-navigation.is-open{max-height:85vh;overflow-y:auto}
	.main-navigation .nav-menu{display:block;padding:10px 0}
	.main-navigation .nav-menu>li>a{line-height:22px;padding:12px 20px;margin:0;border-bottom:1px solid #f0f0f0}
	.main-navigation .nav-menu>li>a::before{display:none}
	.main-navigation .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;background:#f7f8fa;padding:0;display:none}
	.main-navigation li.is-open>.sub-menu{display:block}
	.main-navigation .sub-menu a{color:var(--bfx-text);padding-left:35px;border-bottom:1px solid #eceef1}
	.main-navigation .menu-item-has-children>a{padding-right:50px}
	.bfx-sub-toggle{position:absolute;right:8px;top:6px;width:36px;height:36px;border:0;background:none;color:var(--bfx-dark);font-size:16px;cursor:pointer;transition:transform .2s}
	.main-navigation li.is-open>.bfx-sub-toggle{transform:rotate(90deg)}
	.menu-toggle[aria-expanded=true] .i-open{display:none}
	.menu-toggle[aria-expanded=true] .i-close{display:inline-block}
	.bfx-header.is-stuck .bfx-header-inner{min-height:64px}
	.bfx-footer-cols{grid-template-columns:repeat(2,1fr)}
	.bfx-blogbox{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1025px){.bfx-sub-toggle{display:none}}
@media (max-width:781px){
	h1,.bfx-titlebar-title{font-size:28px;line-height:36px}
	h2,.bfx-heading .bfx-heading-title{font-size:26px;line-height:32px}
	.bfx-row{padding:50px 0}
	.bfx-header-btn{display:none}
	.ts-box-seprator .wp-block-column+.wp-block-column{border-left:0;border-top:1px solid #ebebeb}
	.bfx-footer-cta-inner{flex-direction:column;text-align:center;gap:18px}
	.bfx-cta-text{font-size:18px;line-height:28px}
	.wpcf7 .col-sm-6,.wpcf7 .col-sm-4{width:100%}
	.bfx-row [class*="vc_custom_"]{margin-top:0!important}
	.bfx-col-bg{min-height:220px}
	.bfx-content .wp-block-column[class*="vc_custom_"]{padding:30px!important}
	.bfx-titlebar{min-height:130px;padding:25px 0}
}
@media (max-width:600px){
	.bfx-footer-cols,.bfx-blogbox{grid-template-columns:1fr}
	.bfx-topbar-inner{min-height:40px}
	.bfx-logo{max-height:48px}
	.bfx-slider{aspect-ratio:16/7}
	#totop{right:15px;bottom:15px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}



/* ---------- Ritocchi dopo confronto con il sito attuale (26/10) ---------- */
.main-navigation .nav-menu>li>a{font-size:12px;margin:0 12px;white-space:nowrap}
.bfx-logo{max-height:80px}
.bfx-header.is-stuck .bfx-logo{max-height:54px}
.bfx-sbox-icon [class^="flaticon-"]:before,.bfx-sbox-icon [class*=" flaticon-"]:before{font-size:inherit;margin-left:0;line-height:1}
@media (max-width:1199px){.main-navigation .nav-menu>li>a{margin:0 7px;font-size:11px;letter-spacing:.5px}}
