.elementor-kit-155{--e-global-color-primary:#8900F3;--e-global-color-secondary:#FFC835;--e-global-color-text:#0D1B2A;--e-global-color-accent:#F4EEFF;--e-global-color-e24e8d2:#0D1B2A;--e-global-color-8054e71:#FFFFFF;--e-global-color-ib_navy2:#16293D;--e-global-color-ib_muted:#D5DCE3;--e-global-color-ib_lilac:#C9A0FF;--e-global-color-8f31f01:#F1B8C7;--e-global-color-434812d:#FFFFFF;--e-global-color-6e52941:#F4EEFF;--e-global-color-fa70c43:#FFFFFF;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-size:44px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.05em;--e-global-typography-secondary-font-family:"Raleway";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-text-font-family:"Raleway";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Raleway";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1.2em;--e-global-typography-ib_h1-font-family:"Bricolage Grotesque";--e-global-typography-ib_h1-font-size:84px;--e-global-typography-ib_h1-font-weight:800;--e-global-typography-ib_h1-line-height:0.97em;--e-global-typography-ib_h1-letter-spacing:-2px;--e-global-typography-ib_h2-font-family:"Bricolage Grotesque";--e-global-typography-ib_h2-font-size:52px;--e-global-typography-ib_h2-font-weight:800;--e-global-typography-ib_h2-line-height:1.02em;--e-global-typography-ib_h2-letter-spacing:-1px;--e-global-typography-ib_h3-font-family:"Bricolage Grotesque";--e-global-typography-ib_h3-font-size:36px;--e-global-typography-ib_h3-font-weight:800;--e-global-typography-ib_h3-line-height:1.08em;--e-global-typography-ib_eyebrow-font-family:"Raleway";--e-global-typography-ib_eyebrow-font-size:14px;--e-global-typography-ib_eyebrow-font-weight:700;--e-global-typography-ib_eyebrow-text-transform:uppercase;--e-global-typography-ib_eyebrow-line-height:1.3em;--e-global-typography-ib_eyebrow-letter-spacing:1.6px;--e-global-typography-ib_lead-font-family:"Raleway";--e-global-typography-ib_lead-font-size:20px;--e-global-typography-ib_lead-font-weight:500;--e-global-typography-ib_lead-line-height:1.6em;--e-global-typography-ib_num-font-family:"Bricolage Grotesque";--e-global-typography-ib_num-font-size:96px;--e-global-typography-ib_num-font-weight:800;--e-global-typography-ib_num-line-height:0.8em;--e-global-typography-ib_chip-font-family:"Raleway";--e-global-typography-ib_chip-font-size:14px;--e-global-typography-ib_chip-font-weight:700;--e-global-typography-ib_chip-line-height:1.2em;background-color:var( --e-global-color-fa70c43 );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Helvetica, Arial,Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-155 button,.elementor-kit-155 input[type="button"],.elementor-kit-155 input[type="submit"],.elementor-kit-155 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Helvetica, Arial,Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );color:var( --e-global-color-8054e71 );border-radius:999px 999px 999px 999px;padding:16px 28px 16px 28px;}.elementor-kit-155 button:hover,.elementor-kit-155 button:focus,.elementor-kit-155 input[type="button"]:hover,.elementor-kit-155 input[type="button"]:focus,.elementor-kit-155 input[type="submit"]:hover,.elementor-kit-155 input[type="submit"]:focus,.elementor-kit-155 .elementor-button:hover,.elementor-kit-155 .elementor-button:focus{background-color:var( --e-global-color-text );color:var( --e-global-color-8054e71 );}.elementor-kit-155 e-page-transition{background-color:#FFBC7D;}.elementor-kit-155 p{margin-block-end:1.4em;}.elementor-kit-155 a{color:var( --e-global-color-primary );}.elementor-kit-155 a:hover{color:var( --e-global-color-text );}.elementor-kit-155 h1{color:var( --e-global-color-text );font-family:var( --e-global-typography-ib_h1-font-family ), Helvetica, Arial,Sans-serif;font-size:var( --e-global-typography-ib_h1-font-size );font-weight:var( --e-global-typography-ib_h1-font-weight );line-height:var( --e-global-typography-ib_h1-line-height );letter-spacing:var( --e-global-typography-ib_h1-letter-spacing );}.elementor-kit-155 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-ib_h2-font-family ), Helvetica, Arial,Sans-serif;font-size:var( --e-global-typography-ib_h2-font-size );font-weight:var( --e-global-typography-ib_h2-font-weight );line-height:var( --e-global-typography-ib_h2-line-height );letter-spacing:var( --e-global-typography-ib_h2-letter-spacing );}.elementor-kit-155 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-ib_h3-font-family ), Helvetica, Arial,Sans-serif;font-size:var( --e-global-typography-ib_h3-font-size );font-weight:var( --e-global-typography-ib_h3-font-weight );line-height:var( --e-global-typography-ib_h3-line-height );}.elementor-kit-155 h4{color:var( --e-global-color-e24e8d2 );}.elementor-kit-155 h5{color:var( --e-global-color-e24e8d2 );}.elementor-kit-155 h6{color:var( --e-global-color-e24e8d2 );}.elementor-kit-155 img{border-radius:0px 0px 0px 0px;}.elementor-kit-155 label{color:var( --e-global-color-e24e8d2 );font-family:"Poppins", Helvetica, Arial,Sans-serif;font-size:18px;font-weight:500;text-transform:capitalize;line-height:1.3em;letter-spacing:0px;}.elementor-kit-155 input:not([type="button"]):not([type="submit"]),.elementor-kit-155 textarea,.elementor-kit-155 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Helvetica, Arial,Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );background-color:#F7F7F7;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );border-radius:8px 8px 8px 8px;padding:18px 25px 18px 25px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-kit-155{--e-global-typography-primary-font-size:38px;--e-global-typography-secondary-font-size:19px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:16px;--e-global-typography-ib_h1-font-size:62px;--e-global-typography-ib_h2-font-size:42px;--e-global-typography-ib_h3-font-size:30px;--e-global-typography-ib_eyebrow-font-size:14px;--e-global-typography-ib_lead-font-size:19px;--e-global-typography-ib_num-font-size:80px;--e-global-typography-ib_chip-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-155 h1{font-size:var( --e-global-typography-ib_h1-font-size );line-height:var( --e-global-typography-ib_h1-line-height );letter-spacing:var( --e-global-typography-ib_h1-letter-spacing );}.elementor-kit-155 h2{font-size:var( --e-global-typography-ib_h2-font-size );line-height:var( --e-global-typography-ib_h2-line-height );letter-spacing:var( --e-global-typography-ib_h2-letter-spacing );}.elementor-kit-155 h3{font-size:var( --e-global-typography-ib_h3-font-size );line-height:var( --e-global-typography-ib_h3-line-height );}.elementor-kit-155 button,.elementor-kit-155 input[type="button"],.elementor-kit-155 input[type="submit"],.elementor-kit-155 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-155 input:not([type="button"]):not([type="submit"]),.elementor-kit-155 textarea,.elementor-kit-155 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-155{--e-global-typography-primary-font-size:32px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;--e-global-typography-ib_h1-font-size:46px;--e-global-typography-ib_h2-font-size:34px;--e-global-typography-ib_h3-font-size:26px;--e-global-typography-ib_eyebrow-font-size:13px;--e-global-typography-ib_lead-font-size:17px;--e-global-typography-ib_num-font-size:60px;--e-global-typography-ib_chip-font-size:13px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-155 h1{font-size:var( --e-global-typography-ib_h1-font-size );line-height:var( --e-global-typography-ib_h1-line-height );letter-spacing:var( --e-global-typography-ib_h1-letter-spacing );}.elementor-kit-155 h2{font-size:var( --e-global-typography-ib_h2-font-size );line-height:var( --e-global-typography-ib_h2-line-height );letter-spacing:var( --e-global-typography-ib_h2-letter-spacing );}.elementor-kit-155 h3{font-size:var( --e-global-typography-ib_h3-font-size );line-height:var( --e-global-typography-ib_h3-line-height );}.elementor-kit-155 button,.elementor-kit-155 input[type="button"],.elementor-kit-155 input[type="submit"],.elementor-kit-155 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-155 input:not([type="button"]):not([type="submit"]),.elementor-kit-155 textarea,.elementor-kit-155 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===== Il Branco ASD 2026 — stili di supporto (Sito > Impostazioni sito > CSS personalizzato) =====
   Le classi ib-* si assegnano dal pannello Avanzate > Classi CSS dei widget/contenitori. */

@keyframes ib-blob { 0%,100% { border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%; } 33% { border-radius: 44% 56% 40% 60% / 60% 42% 58% 40%; } 66% { border-radius: 55% 45% 62% 38% / 42% 60% 40% 58%; } }
@keyframes ib-spin { to { transform: rotate(360deg); } }
@keyframes ib-float { 0%,100% { transform: translateY(0) rotate(-6deg); } 50% { transform: translateY(-14px) rotate(-3deg); } }
@keyframes ib-marq { to { transform: translateX(-50%); } }

/* Base: niente scroll orizzontale da elementi decorativi; titoli-paragrafo senza margini del tema */
html, body { overflow-x: clip; }
.ib-marquee-wrap { overflow: hidden; }
.elementor-widget-heading p.elementor-heading-title { margin: 0; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Foto organica che si deforma */
.ib-blob img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%; animation: ib-blob 18s ease-in-out infinite reverse; }

/* Macchia colorata dietro le foto: contenitore con classe ib-backdrop + colore */
.ib-backdrop { position: relative; --ib-bd: var(--e-global-color-secondary); }
.ib-backdrop::before { content: ""; position: absolute; inset: 0 0 18px 18px !important; opacity: 1 !important; background: var(--ib-bd); border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%; transform: rotate(6deg); animation: ib-blob 14s ease-in-out infinite; z-index: 0; }
.ib-backdrop > .elementor-element { position: relative; z-index: 1; }
.ib-bd-yellow { --ib-bd: var(--e-global-color-secondary); }
.ib-bd-lilac  { --ib-bd: var(--e-global-color-accent); }
.ib-bd-purple { --ib-bd: var(--e-global-color-ib_lilac); }

/* Foto con angoli asimmetrici */
.ib-shape img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.ib-shape-a img { border-radius: 48px 160px 48px 160px; }
.ib-shape-b img { border-radius: 40px 40px 140px 40px; }
.ib-shape-c img { border-radius: 140px 40px 40px 40px; }
.ib-shape-d img { border-radius: 40px 140px 40px 40px; }
.ib-tilt img { transition: transform .5s cubic-bezier(.3,1.4,.5,1); }
.ib-tilt:hover img { transform: rotate(-1.5deg) scale(1.02); }
.ib-dot { position: relative; }
.ib-dot::before { content: ""; position: absolute; inset: auto !important; left: -28px !important; top: -28px !important; opacity: 1 !important; width: 160px; height: 160px; border-radius: 50%; background: var(--e-global-color-accent); z-index: 0; }
.ib-dot > .elementor-element { position: relative; z-index: 1; }

/* Hero: foto piccola fluttuante + bollino rotante */
.ib-hero-media { position: relative; }
.elementor-widget.ib-float { position: absolute !important; right: -6px; bottom: 6px; width: 38% !important; max-width: 38% !important; z-index: 2; animation: ib-float 6s ease-in-out infinite; }
.ib-float img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; border: 6px solid #fff; box-shadow: 0 18px 40px rgba(13,27,42,.18); }
.elementor-widget.ib-badge-pos { position: absolute !important; left: 0; top: 0; width: 150px !important; max-width: 150px !important; z-index: 3; }
.ib-spin-badge { position: relative; width: 150px; height: 150px; }
.ib-spin-badge svg { position: absolute; inset: 0; width: 100%; height: 100%; animation: ib-spin 22s linear infinite; }
.ib-spin-badge text { font-family: "Bricolage Grotesque", sans-serif; font-weight: 800; font-size: 17px; letter-spacing: 1px; }
.ib-spin-badge__logo { position: absolute; inset: 34px; border-radius: 50%; background: #fff; display: flex; align-items: center; justify-content: center; }
.ib-spin-badge__logo img { width: 60px; height: auto; }

/* Sottolineatura disegnata a mano (nel titolo: <span class="ib-underline">testo</span>) */
.ib-underline { position: relative; display: inline-block; color: var(--e-global-color-primary); }
.ib-underline::after { content: ""; position: absolute; left: 0; right: 0; bottom: -.16em; height: .24em; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 24' preserveAspectRatio='none'%3E%3Cpath d='M4 16 C 60 4, 120 22, 180 10 S 270 6, 296 14' fill='none' stroke='%23FFC835' stroke-width='8' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / 100% 100%; }

/* Etichette */
.ib-pill .elementor-heading-title { display: inline-flex; align-items: center; gap: 8px; background: #fff; border-radius: 999px; padding: 8px 16px; }
.ib-chip .elementor-heading-title { display: inline-block; background: var(--e-global-color-accent); border-radius: 999px; padding: 6px 14px; }
.ib-num .elementor-heading-title { color: var(--e-global-color-accent); -webkit-text-stroke: 2px var(--e-global-color-primary); }
.ib-maxw { max-width: 760px; }

/* Fascia scorrevole */
.ib-marquee { transform: rotate(-2deg); margin: 0 -40px; background: var(--e-global-color-primary); color: #fff; padding: 18px 0; overflow: hidden; }
.ib-marquee__track { display: flex; width: max-content; gap: 40px; align-items: center; white-space: nowrap; font-family: "Bricolage Grotesque", sans-serif; font-weight: 800; font-size: 30px; line-height: 1; animation: ib-marq 32s linear infinite; }
.ib-marquee__dup { display: contents; }
.ib-marquee i { font-style: normal; color: var(--e-global-color-secondary); }
@media (max-width: 767px) { .ib-marquee { transform: rotate(-3deg); padding: 12px 0; } .ib-marquee__track { font-size: 22px; gap: 22px; } }

/* Schede e pulsanti che reagiscono */
.ib-lift { transition: transform .4s cubic-bezier(.3,1.4,.5,1); }
.ib-lift:hover { transform: translateY(-6px) rotate(-.6deg); }
@media (min-width: 1025px) { .ib-offset { transform: translateY(28px); } .ib-offset:hover { transform: translateY(20px) rotate(-.6deg); } }
.ib-btn .elementor-button, .ib-textlink .elementor-button { transition: transform .25s cubic-bezier(.3,1.6,.5,1), background-color .2s, color .2s; }
.ib-btn .elementor-button:hover { transform: translateY(-3px) scale(1.03); }
.ib-textlink .elementor-button { background: transparent !important; padding-left: 0 !important; padding-right: 0 !important; font-weight: 700; }
.ib-textlink .elementor-button:hover { transform: translateX(4px); }

/* Riquadro contatti viola con forme */
.ib-cta { position: relative; overflow: hidden; }
.ib-cta::before, .ib-cta::after { content: ""; position: absolute; border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%; animation: ib-blob 14s ease-in-out infinite; z-index: 0; }
.ib-cta::before { inset: auto !important; right: -80px !important; top: -90px !important; opacity: 1 !important; width: 320px; height: 320px; background: var(--e-global-color-secondary); }
.ib-cta::after { inset: auto !important; left: -60px !important; bottom: -110px !important; width: 240px; height: 240px; background: #A63BFF; animation-direction: reverse; }
.ib-cta > .elementor-element { position: relative; z-index: 1; }

/* Header */
.ib-header-bar { box-shadow: 0 10px 30px rgba(137,0,243,.10); }
.ib-header .elementor-nav-menu--dropdown { box-shadow: 0 18px 40px rgba(13,27,42,.15); overflow: hidden; }
.ib-logo img { display: block; }
.ib-header-bar .elementor-heading-title { white-space: nowrap; margin: 0; line-height: 1; }
.ib-header-bar .elementor-button { white-space: nowrap; }
.ib-footer .elementor-widget-text-editor { min-width: 0; }

/* Footer */
.ib-footer a { color: #fff; }
.ib-footer a:hover { color: var(--e-global-color-secondary); }
.ib-footer-logo { flex: 0 0 auto !important; }
.ib-footer-about { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; }
.ib-footer-about .elementor-widget { min-width: 0; max-width: 100%; }
.ib-footer-logo img { display: block; width: 120px; max-width: none; }
@media (max-width: 767px) { .ib-footer-logo img { width: 96px; } }

/* Riquadro note */
.ib-note > .elementor-widget-icon { flex-shrink: 0; }

/* Login e mappa */
.ib-login-card .um { max-width: 100% !important; }
.ib-login-card .um .um-field-label label { text-transform: none !important; font-family: Raleway, sans-serif; font-weight: 700; color: var(--e-global-color-text); }
.ib-login-card .um input[type=text], .ib-login-card .um input[type=password] { border: 2px solid #E4D9FA !important; border-radius: 14px !important; min-height: 50px; padding: 0 14px !important; }
.ib-login-card .um input:focus { border-color: var(--e-global-color-primary) !important; outline: 3px solid var(--e-global-color-secondary); outline-offset: 2px; }
.ib-login-card .um .um-button, .ib-login-card .um input[type=submit].um-button { background: var(--e-global-color-primary) !important; border-radius: 999px !important; min-height: 54px; font-family: Raleway, sans-serif; font-weight: 700 !important; font-size: 17px !important; box-shadow: 0 14px 30px rgba(137,0,243,.3); }
.ib-login-card .um .um-button:hover { background: var(--e-global-color-text) !important; }
.ib-login-card .um .um-col-alt .um-half { width: 100% !important; float: none !important; padding: 0 !important; }
.ib-login-card .um .ib-codice-help { margin: 6px 0 0; font-size: 13px; color: #5B6470; }
.ib-login-card .um-field-ib_codice input { text-transform: uppercase; letter-spacing: 1px; }
.ib-login-card .ib-reg-link { margin-top: 8px; font-size: 15px; }
.ib-login-card .ib-reg-link a { font-weight: 700; }
.ib-login-card .um a.um-link-alt { color: var(--e-global-color-primary); font-weight: 600; }
.ib-login-card { box-shadow: 0 24px 60px rgba(137,0,243,.15); }
.ib-map iframe { border-radius: 40px; }

/* Area riservata: archivi e articoli dei corsi */
body.archive .elementor-posts-container article, body.archive .ekit-wid-con .elementskit-post-image-card { border-radius: 28px; overflow: hidden; }

@media (max-width: 1024px) {
	.ib-header-bar > .e-con { width: auto !important; flex-wrap: nowrap !important; }
	.ib-header-bar .elementor-button { white-space: nowrap; }
}
@media (max-width: 767px) {
	.ib-header-bar .elementor-button { font-size: 14px; }
	.ib-dot::before { left: -12px !important; top: -16px !important; }
	.elementor-widget.ib-badge-pos { width: 104px !important; max-width: 104px !important; }
	.ib-spin-badge { width: 104px; height: 104px; }
	.ib-spin-badge__logo { inset: 24px; }
	.ib-spin-badge__logo img { width: 40px; }
	.ib-shape-a img { border-radius: 28px 90px 28px 90px; }
	.ib-shape-b img { border-radius: 28px 28px 90px 28px; }
	.ib-shape-c img { border-radius: 90px 28px 28px 28px; }
	.ib-shape-d img { border-radius: 28px 90px 28px 28px; }
	.ib-dot::before { width: 110px; height: 110px; left: -12px; top: -16px; }
}

@media (prefers-reduced-motion: reduce) {
	.ib-blob img, .ib-backdrop::before, .ib-float, .ib-spin-badge svg, .ib-marquee__track, .ib-cta::before, .ib-cta::after { animation: none !important; }
}/* End custom CSS */