/* W3.CSS 4.15 December 2020 by Jan Egil and Borge Refsnes */
html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}
/* Extract from normalize.css by Nicolas Gallagher and Jonathan Neal git.io/normalize */
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}

@font-face {
    font-family: DESIGNER;
    font-weight: bold;
    src: url("/public/assets/fonts/DESIGNER.otf") format("opentype");
}

.w3-ff-official {
    font-family: DESIGNER;
    color: var(--terziary-root-color);
}



/*************************************************************************************************************/
.home-flex-effect-primary {
    display: flex!important;
    position: relative;
    height: var(--frontend-div-height-fullscreen);
}

.home-flex-effect-primary .fx-bar:nth-child(1) {
    background: var(--penta-root-color);
    background-image: url('/public/assets/images/site/bg-left-cubetti.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 75%;
    border-right: 2px solid #ffffff;
}
.home-flex-effect-primary .fx-bar:nth-child(3) {
    background: var(--terziary-root-color);
    background-image: url('/public/assets/images/site/bg-right-cubetti.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 55%;
    border-left: 2px solid #ffffff;
}

.home-flex-effect-primary .w3-central-globe {
    position: absolute;
    width: 60vh;
    height: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    border: 4px solid #ffffff;
    border-radius: 50%;
    cursor: pointer;
    transition: transform .68s ease-in;
}

/* .home-flex-effect-primary:hover .w3-central-globe,
.home-flex-effect-primary .w3-central-globe:hover {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
} */

.w3-hide-div {
    height: 500px;
}


.home-div-secondary {
    position: sticky;
    top: 36px;
    z-index: 1;
    height: calc(100vh - 36px);
}

.home-div-terziary {
    position: sticky;
    top: 36px;
    z-index: 2;
    height: calc(100vh - 36px);
}

.home-div-quad {
    position: sticky;
    top: 36px;
    z-index: 3;
    height: calc(100vh - 36px);
}

.primary-sub-section {
    position: relative;
    z-index: 1;
}

/** .w3-position-absolute.uno **/
.w3-position-absolute.bg-overlay {
    position: absolute;
    bottom: 0;
    height: 100%;
}

.w3-position-absolute.bg-overlay.uno {
    background: url('/public/assets/images/site/home/4_elements_images.png');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: 0px 98%;
    width: -webkit-fill-available;
    left: 0;
}

/*** green-nutritionist-nobg.png ***/
.w3-position-absolute.bg-overlay.due {
    background: url('/public/assets/images/site/home/cubetti-removebg.png');
    background-size: auto 100vh;
    background-repeat: no-repeat;
    background-position: -150px 0;
    width: -webkit-fill-available;
    left: 0;
}

.w3-position-absolute.bg-overlay.tre {
    background: url('/public/assets/images/site/home/colata_cemento.png'); /*** man-workout-nobg.png  ||  fitness-solitaire.png ***/
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom;
    width: 40%;
    right: 0;
}







.fa-anchor, .fa-coffee { font-size:200px!important; }

main.w3-main-page { position: relative; opacity: 0; transition: .65s linear; }

button:hover { cursor: pointer; opacity: .9; }

.arrow-down-icon {
    width: 11px;
    fill: #ffffff;
    vertical-align: middle;
    margin-left: 4px;
}
.user-welcome-msg:hover {
    cursor: pointer;
}

.user-welcome-msg:hover > .w3-small-menu-hover {
    display: block;
}

.w3-small-menu-hover {
    display: none;
    position: absolute;
    z-index: 99;
    visibility: visible;
    opacity: 1;
    background: #ffffff;
    width: 212px;
    border: 1px solid #dedede;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
}

.w3-small-menu-hover > p.w3-list-item:nth-last-child(1) {
    border: 0;
}

.w3-mb-1 {
    margin-bottom: 5px;
}
.w3-mb-2 {
    margin-bottom: 10px;
}
.w3-mb-3 {
    margin-bottom: 15px;
}
.w3-mb-4 {
    margin-bottom: 20px;
}
.w3-mb-5 {
    margin-bottom: 25px;
}

.w3-mt-1 { margin-top: 5px; }
.w3-mt-2 { margin-top: 10px; }
.w3-mt-3 { margin-top: 15px; }
.w3-mt-4 { margin-top: 20px; }
.w3-mt-5 { margin-top: 25px; }

.w3-big-text {
    font-size: 58px;
}

.w3-txt-primary {
    color: var(--primary-root-color);
}

.w3-col-50 {
    width: 50%;
    min-height: 65vh;
    padding: 20px;
}

.w3-padding-x-0 { padding-top: 0!important; padding-bottom: 0!important; }
.w3-padding-x-1 { padding-top: 5px!important; padding-bottom: 5px!important; }
.w3-padding-x-2 { padding-top: 10px!important; padding-bottom: 10px!important; }
.w3-padding-x-3 { padding-top: 15px!important; padding-bottom: 15px!important; }
.w3-padding-x-4 { padding-top: 20px!important; padding-bottom: 20px!important; }
.w3-padding-x-5 { padding-top: 25px!important; padding-bottom: 25px!important; }

p.w3-list-item > a {
    text-decoration: none;
    display: block;
    width: 100%;
}

p.w3-list-item {
    font-size: 14px;
    padding: 6px 16px;
    margin: 0;
    color: #606060;
    border-bottom: 1px solid #dedede;
    text-decoration: none;
}
p.w3-list-item:hover {
    background: #f1f1f1;
    color: #000000;
}
p.w3-list-item a > svg {
    fill: #606060;
    width: 13px;
    margin-right: 5px;
    text-decoration: none;
}

/*******************************************************************/
div.global.popup-float-message {
    position: fixed;
    top: 50px;
    right: 0;
    background: #ffff;
    border: 1px solid #dedede;
    border-right: 0;
    border-radius: 4px 0 0 4px;
    padding: 8px 16px;
    box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
    z-index: 999;
}

div.global.popup-float-message .popup-header { font-weight: 600; }

.ppbg-success { background: rgb(137, 252, 166)!important; border-left: 4px solid rgb(0, 128, 38)!important; }
.ppbg-error { background: rgb(255, 194, 194)!important; border-left: 4px solid rgb(230, 15, 15)!important; }
.ppbg-info { background: rgb(255, 255, 255)!important; border-left: 4px solid rgb(66, 66, 66)!important; }

.popup-btn-close { position: absolute; top: 3px; right: 6px; background: none; border: 0; cursor: pointer; }
/*******************************************************************/
.w3-shadow{box-shadow:rgb(0 0 0 / 11%) 0px 3px 8px;}
.w3-shadow-medium{ box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; }
.w3-shadow-top{ box-shadow: 0px 16px 19px -23px rgba(0,0,0,0.45) inset,
    0px -15px 25px -24px rgba(0,0,0,0.45); }

.w3-opacity-small{opacity: .92;}

article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}summary{display:list-item}
audio,canvas,progress,video{display:inline-block}progress{vertical-align:baseline}
audio:not([controls]){display:none;height:0}[hidden],template{display:none}
a{background-color:transparent}a:active,a:hover{outline-width:0}
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
b,strong{font-weight:bolder}dfn{font-style:italic}mark{background:#ff0;color:#000}
small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-0.25em}sup{top:-0.5em}figure{margin:1em 40px}img{border-style:none}
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}
button,input,select,textarea,optgroup{font:inherit;margin:0}optgroup{font-weight:bold}
button,input{overflow:visible}button,select{text-transform:none}
button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button; border-radius: 3px!important;}
button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}
button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}
legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}
[type=checkbox],[type=radio]{padding:0}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}
[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
[type=search]::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
/* End extract */
html,body{font-family:Verdana,sans-serif;font-size:15px;line-height:1.5}html{overflow-x:hidden}
/* body{padding-top: 38px;} */
h1{font-size:28px}h2{font-size:25px}h3{font-size:22px}h4{font-size:19px}h5{font-size:16px}h6{font-size:13px}
.w3-serif{font-family:serif}.w3-sans-serif{font-family:sans-serif}.w3-cursive{font-family:cursive}.w3-monospace{font-family:monospace}
h1,h2,h3,h4,h5,h6{font-family:"Segoe UI",Arial,sans-serif;font-weight:400;margin:10px 0}.w3-wide{letter-spacing:4px}
hr{border:0;border-top:1px solid #444444;margin:20px 0}
.w3-image{max-width:100%;height:auto}img{vertical-align:middle}a{color:inherit}
.w3-table,.w3-table-all{border-collapse:collapse;border-spacing:0;width:100%;display:table}.w3-table-all{border:1px solid #ccc}
.w3-bordered tr,.w3-table-all tr{border-bottom:1px solid #ddd}.w3-striped tbody tr:nth-child(even){background-color:#f1f1f1}
.w3-table-all tr:nth-child(odd){background-color:#fff}.w3-table-all tr:nth-child(even){background-color:#f1f1f1}
.w3-hoverable tbody tr:hover,.w3-ul.w3-hoverable li:hover{background-color:#ccc}.w3-centered tr th,.w3-centered tr td{text-align:center}
.w3-table td,.w3-table th,.w3-table-all td,.w3-table-all th{padding:8px 8px;display:table-cell;text-align:left;vertical-align:top}
.w3-table th:first-child,.w3-table td:first-child,.w3-table-all th:first-child,.w3-table-all td:first-child{padding-left:16px}
.w3-btn,.w3-button{border:none;line-height:1;display:inline-block;padding:12px 16px;vertical-align:middle;overflow:hidden;text-decoration:none;color:inherit;background-color:inherit;text-align:center;cursor:pointer;white-space:nowrap}
.w3-btn:hover{box-shadow:0 8px 16px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}
.w3-btn,.w3-button{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}   
.w3-disabled,.w3-btn:disabled,.w3-button:disabled{cursor:not-allowed;opacity:0.3}.w3-disabled *,:disabled *{pointer-events:none}
.w3-btn.w3-disabled:hover,.w3-btn:disabled:hover{box-shadow:none}
.w3-badge,.w3-tag{background-color:#000;color:#fff;display:inline-block;padding-left:8px;padding-right:8px;text-align:center}.w3-badge{border-radius:50%}
.w3-ul{list-style-type:none;padding:0;margin:0}.w3-ul li{padding:8px 16px;border-bottom:1px solid #ddd}.w3-ul li:last-child{border-bottom:none}
.w3-tooltip,.w3-display-container{position:relative}.w3-tooltip .w3-text{display:none}.w3-tooltip:hover .w3-text{display:inline-block}
.w3-ripple:active{opacity:0.5}.w3-ripple{transition:opacity 0s}
.w3-input{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:100%}
.w3-select{padding:9px 0;width:100%;border:none;border-bottom:1px solid #ccc}
.w3-dropdown-click,.w3-dropdown-hover{position:relative;display:inline-block;cursor:pointer}
.w3-dropdown-hover:hover .w3-dropdown-content{display:block}
.w3-dropdown-hover:first-child,.w3-dropdown-click:hover{background-color:#ccc;color:#000}
.w3-dropdown-hover:hover > .w3-button:first-child,.w3-dropdown-click:hover > .w3-button:first-child{background-color:#ccc;color:#000}
.w3-dropdown-content{cursor:auto;color:#000;background-color:#fff;display:none;position:absolute;min-width:160px;margin:0;padding:0;z-index:1}
.w3-check,.w3-radio{width:24px;height:24px;position:relative;top:6px}
.w3-sidebar{height:100%;width:200px;background-color:#fff;position:fixed!important;z-index:1;overflow:auto}
.w3-bar-block .w3-dropdown-hover,.w3-bar-block .w3-dropdown-click{width:100%}
.w3-bar-block .w3-dropdown-hover .w3-dropdown-content,.w3-bar-block .w3-dropdown-click .w3-dropdown-content{min-width:100%}
.w3-bar-block .w3-dropdown-hover .w3-button,.w3-bar-block .w3-dropdown-click .w3-button{width:100%;text-align:left;padding:8px 16px}
.w3-main,#main{transition:margin-left .4s}
.w3-modal{z-index:3;display:none;padding-top:100px;position:fixed;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4)}
.w3-modal-content{margin:auto;background-color:#fff;position:relative;padding:0;outline:0;width:600px}
.w3-bar{width:100%;overflow:hidden}.w3-center .w3-bar{display:inline-block;width:auto}
.w3-bar .w3-bar-item{padding:8px 16px;float:left;width:auto;border:none;display:block;outline:0}
.w3-bar .w3-dropdown-hover,.w3-bar .w3-dropdown-click{position:static;float:left}
.w3-bar .w3-button{white-space:normal}
.w3-bar-block .w3-bar-item{width:100%;display:block;padding:8px 16px;text-align:left;border:none;white-space:normal;float:none;outline:0}
.w3-bar-block.w3-center .w3-bar-item{text-align:center}.w3-block{display:block;width:100%}
.w3-responsive{display:block;overflow-x:auto}

main.w3-main-page .pages-editor button.delete-column, main.w3-main-page .pages-editor button.delete-module {
    display: none!important;
}

.w3-row {
    display: flex;
    width: 100%;
    margin: auto;
}
.w3-row > .col { width: 50%; }
.w3-container:after,.w3-container:before,.w3-panel:after,.w3-panel:before,.w3-row:after,.w3-row:before,.w3-row-padding:after,.w3-row-padding:before,
.w3-cell-row:before,.w3-cell-row:after,.w3-clear:after,.w3-clear:before,.w3-bar:before,.w3-bar:after{content:"";display:table;clear:both}
.w3-col,.w3-half,.w3-third,.w3-twothird,.w3-threequarter,.w3-quarter{float:left;width:100%}
.w3-col.s1{width:8.33333%}.w3-col.s2{width:16.66666%}.w3-col.s3{width:24.99999%}.w3-col.s4{width:33.33333%}
.w3-col.s5{width:41.66666%}.w3-col.s6{width:49.99999%}.w3-col.s7{width:58.33333%}.w3-col.s8{width:66.66666%}
.w3-col.s9{width:74.99999%}.w3-col.s10{width:83.33333%}.w3-col.s11{width:91.66666%}.w3-col.s12{width:99.99999%}
@media (min-width:601px){.w3-col.m1{width:8.33333%}.w3-col.m2{width:16.66666%}.w3-col.m3,.w3-quarter{width:24.99999%}.w3-col.m4,.w3-third{width:33.33333%}
.w3-col.m5{width:41.66666%}.w3-col.m6,.w3-half{width:49.99999%}.w3-col.m7{width:58.33333%}.w3-col.m8,.w3-twothird{width:66.66666%}
.w3-col.m9,.w3-threequarter{width:74.99999%}.w3-col.m10{width:83.33333%}.w3-col.m11{width:91.66666%}.w3-col.m12{width:99.99999%}}
@media (min-width:993px){.w3-col.l1{width:8.33333%}.w3-col.l2{width:16.66666%}.w3-col.l3{width:24.99999%}.w3-col.l4{width:33.33333%}
.w3-col.l5{width:41.66666%}.w3-col.l6{width:49.99999%}.w3-col.l7{width:58.33333%}.w3-col.l8{width:66.66666%}
.w3-col.l9{width:74.99999%}.w3-col.l10{width:83.33333%}.w3-col.l11{width:91.66666%}.w3-col.l12{width:99.99999%}}
.w3-rest{overflow:hidden}.w3-stretch{margin-left:-16px;margin-right:-16px}
.w3-content,.w3-auto{margin-left:auto;margin-right:auto}.w3-content{max-width:980px}.w3-auto{max-width:1140px}
.w3-cell-row{display:table;width:100%}.w3-cell{display:table-cell}
.w3-cell-top{vertical-align:top}.w3-cell-middle{vertical-align:middle}.w3-cell-bottom{vertical-align:bottom}
.w3-hide{display:none!important}.w3-show-block,.w3-show{display:block!important}.w3-show-inline-block{display:inline-block!important}
@media (max-width:1205px){.w3-auto{max-width:95%}}
@media (max-width:600px){.w3-modal-content{margin:0 10px;width:auto!important}.w3-modal{padding-top:30px}
.w3-dropdown-hover.w3-mobile .w3-dropdown-content,.w3-dropdown-click.w3-mobile .w3-dropdown-content{position:relative}	
.w3-hide-small{display:none!important}.w3-mobile{display:block;width:100%!important}.w3-bar-item.w3-mobile,.w3-dropdown-hover.w3-mobile,.w3-dropdown-click.w3-mobile{text-align:center}
.w3-dropdown-hover.w3-mobile,.w3-dropdown-hover.w3-mobile .w3-btn,.w3-dropdown-hover.w3-mobile .w3-button,.w3-dropdown-click.w3-mobile,.w3-dropdown-click.w3-mobile .w3-btn,.w3-dropdown-click.w3-mobile .w3-button{width:100%}}
@media (max-width:768px){.w3-modal-content{width:500px}.w3-modal{padding-top:50px}}
@media (min-width:993px){.w3-modal-content{width:900px}.w3-hide-large{display:none!important}.w3-sidebar.w3-collapse{display:block!important}}
@media (max-width:992px) and (min-width:601px){.w3-hide-medium{display:none!important}}
@media (max-width:992px){.w3-sidebar.w3-collapse{display:none}.w3-main{margin-left:0!important;margin-right:0!important}.w3-auto{max-width:100%}}
.w3-25{width:25%;}
.w3-30{width:30%;}
.w3-50{width:50%;}
.w3-75{width:75%;}
.w3-90{width:90%;}
.w3-100{width:100%;}
.w3-text-center{text-align: center;}

.w3-gap-1{gap:3px;}
.w3-gap-2{gap:6px;}
.w3-gap-3{gap:9px;}
.w3-gap-4{gap:12px;}
.w3-gap-5{gap:15px;}
.w3-gap-6{gap:18px;}
.w3-gap-7{gap:21px;}

.w3-bg-deep{background: var(--secondary-root-color); color: #ffffff;}
.w3-bg-dark{background: #1b1818; color: #ffffff;}

.w3-bg-whatsapp{background-color: #25d366 !important;; color:#ffffff;}
.w3-bg-whatsapp:hover{background-color:#128c7e!important;}

.w3-z-9{z-index:9!important;}.w3-z-99{z-index:99!important;}.w3-z-999{z-index:999!important;}

.w3-m-auto{margin:auto; place-content: center;}

.w3-position-relative{position: relative!important;}
.w3-position-sticky{position: sticky!important;}

.w3-h100{width:100%;}
.w3-d-block{display: block!important;}
.w3-d-none{display: none!important;}
.w3-d-flex{display: flex!important;}

.w3-d-flex.w3-head-f{display:flex!important;}

.w3-top,.w3-bottom{position:fixed;width:100%;z-index:1}.w3-top{top:0}.w3-bottom{bottom:0}
.w3-top-1{top: -1px;}
.w3-overlay{position:fixed;display:none;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);z-index:2}
.w3-display-topleft{position:absolute;left:0;top:0}.w3-display-topright{position:absolute;right:0;top:0}
.w3-display-bottomleft{position:absolute;left:0;bottom:0}.w3-display-bottomright{position:absolute;right:0;bottom:0}
.w3-display-middle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}
.w3-display-left{position:absolute;top:50%;left:0%;transform:translate(0%,-50%);-ms-transform:translate(-0%,-50%)}
.w3-display-right{position:absolute;top:50%;right:0%;transform:translate(0%,-50%);-ms-transform:translate(0%,-50%)}
.w3-display-topmiddle{position:absolute;left:50%;top:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
.w3-display-bottommiddle{position:absolute;left:50%;bottom:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
.w3-display-container:hover .w3-display-hover{display:block}.w3-display-container:hover span.w3-display-hover{display:inline-block}.w3-display-hover{display:none}
.w3-display-position{position:absolute}
.w3-circle{border-radius:50%!important;}
.w3-round-small{border-radius:2px}.w3-round,.w3-round-medium{border-radius:4px}.w3-round-large{border-radius:8px}.w3-round-xlarge{border-radius:16px}.w3-round-xxlarge{border-radius:32px}
.w3-row-padding,.w3-row-padding>.w3-half,.w3-row-padding>.w3-third,.w3-row-padding>.w3-twothird,.w3-row-padding>.w3-threequarter,.w3-row-padding>.w3-quarter,.w3-row-padding>.w3-col{padding:0 8px}
.w3-container,.w3-panel{padding:0.01em 16px}.w3-panel{margin-top:16px;margin-bottom:16px}
.w3-code,.w3-codespan{font-family:Consolas,"courier new";font-size:16px}
.w3-code{width:auto;background-color:#fff;padding:8px 12px;border-left:4px solid #4CAF50;word-wrap:break-word}
.w3-codespan{color:crimson;background-color:#f1f1f1;padding-left:4px;padding-right:4px;font-size:110%}
.w3-card,.w3-card-2{box-shadow:0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12)}
.w3-card-4,.w3-hover-shadow:hover{box-shadow:0 4px 10px 0 rgba(0,0,0,0.2),0 4px 20px 0 rgba(0,0,0,0.19)}
.w3-spin{animation:w3-spin 2s infinite linear}@keyframes w3-spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}
.w3-animate-fading{animation:fading 10s infinite}@keyframes fading{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
.w3-animate-opacity{animation:opac 0.8s}@keyframes opac{from{opacity:0} to{opacity:1}}
.w3-animate-top{position:relative;animation:animatetop 0.4s}@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
.w3-animate-left{position:relative;animation:animateleft 0.4s}@keyframes animateleft{from{left:-300px;opacity:0} to{left:0;opacity:1}}
.w3-animate-right{position:relative;animation:animateright 0.4s}@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
.w3-animate-bottom{position:relative;animation:animatebottom 0.4s}@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}
.w3-animate-zoom {animation:animatezoom 0.6s}@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
.w3-animate-input{transition:width 0.4s ease-in-out}.w3-animate-input:focus{width:100%!important}
.w3-opacity,.w3-hover-opacity:hover{opacity:0.60}.w3-opacity-off,.w3-hover-opacity-off:hover{opacity:1}
.w3-opacity-0{opacity: 0;}
.w3-opacity-1{opacity: 1;}
.w3-opacity-max{opacity:0.25}.w3-opacity-min{opacity:0.75}
.w3-link-nostyle{text-decoration: none; text-transform: none;}
.w3-greyscale-max,.w3-grayscale-max,.w3-hover-greyscale:hover,.w3-hover-grayscale:hover{filter:grayscale(100%)}
.w3-greyscale,.w3-grayscale{filter:grayscale(75%)}.w3-greyscale-min,.w3-grayscale-min{filter:grayscale(50%)}
.w3-sepia{filter:sepia(75%)}.w3-sepia-max,.w3-hover-sepia:hover{filter:sepia(100%)}.w3-sepia-min{filter:sepia(50%)}
.w3-tiny{font-size:10px!important}.w3-small{font-size:12px!important}.w3-medium{font-size:15px!important}.w3-large{font-size:18px!important}
.w3-xlarge{font-size:20px!important}.w3-xxlarge{font-size:30px!important}.w3-xxxlarge{font-size:48px!important}

h1.w3-jumbo{font-size:44px!important;}h2.w3-jumbo{font-size:35px!important;}h3.w3-jumbo{font-size:25px!important;}

.w3-txt-fitness {color: var(--terziary-root-color);}
.w3-txt-nutritionist {color: var(--penta-root-color)}

.w3-left-align{text-align:left!important}.w3-right-align{text-align:right!important}.w3-justify{text-align:justify!important}.w3-center{text-align:center!important}
.w3-border-0{border:0!important}.w3-border{border:1px solid #ccc!important}
.w3-border-top{border-top:1px solid #ccc!important}.w3-border-bottom{border-bottom:1px solid #ccc!important}
.w3-border-left{border-left:1px solid #ccc!important}.w3-border-right{border-right:1px solid #ccc!important}
.w3-topbar{border-top:6px solid #ccc!important}.w3-bottombar{border-bottom:6px solid #ccc!important}
.w3-leftbar{border-left:6px solid #ccc!important}.w3-rightbar{border-right:6px solid #ccc!important}
.w3-section,.w3-code{margin-top:16px!important;margin-bottom:16px!important}
.w3-margin-0{margin:0!important;}
.w3-margin{margin:16px!important}.w3-margin-top{margin-top:16px!important}.w3-margin-bottom{margin-bottom:16px!important}
.w3-margin-left{margin-left:16px!important}.w3-margin-right{margin-right:16px!important}
.w3-padding-0{padding: 0!important;}
.w3-padding-small{padding:4px 8px!important}.w3-padding{padding:8px 16px!important}.w3-padding-large{padding:12px 24px!important}
.w3-padding-16{padding-top:16px!important;padding-bottom:16px!important}.w3-padding-24{padding-top:24px!important;padding-bottom:24px!important}
.w3-padding-32{padding-top:32px!important;padding-bottom:32px!important}.w3-padding-48{padding-top:48px!important;padding-bottom:48px!important}
.w3-padding-64{padding-top:64px!important;padding-bottom:64px!important}
.w3-padding-top-64{padding-top:64px!important}.w3-padding-top-48{padding-top:48px!important}
.w3-padding-top-32{padding-top:32px!important}.w3-padding-top-24{padding-top:24px!important}
.w3-left{float:left!important}.w3-right{float:right!important}
.w3-button:hover{color:#000;background-color:#ccc;}
.w3-transparent,.w3-hover-none:hover{background-color:transparent!important}
.w3-hover-none:hover{box-shadow:none!important}

.w3-cp-hover:hover{cursor: pointer;}
.w3-zoom-hover{transition: transform .5s ease-in-out;}
.w3-zoom-hover:hover{transform: scale(.9); }
/* Colors */
.w3-amber,.w3-hover-amber:hover{color:#000!important;background-color:#ffc107!important}
.w3-aqua,.w3-hover-aqua:hover{color:#000!important;background-color:#00ffff!important}
.w3-blue,.w3-hover-blue:hover{color:#fff!important;background-color:var(--primary-root-color)!important}
.w3-light-blue,.w3-hover-light-blue:hover{color:#000!important;background-color:#87CEEB!important}
.w3-brown,.w3-hover-brown:hover{color:#fff!important;background-color:#795548!important}
.w3-cyan,.w3-hover-cyan:hover{color:#000!important;background-color:#00bcd4!important}

/* .w3-blue-grey,.w3-hover-blue-grey:hover,.w3-blue-gray,.w3-hover-blue-gray:hover{color:#fff!important;background-color:#8b9dc3!important} */
.w3-blue-grey,.w3-hover-blue-grey:hover,.w3-blue-gray,.w3-hover-blue-gray:hover{color:#fff!important;background-color:var(--primary-root-color)!important}

/* .w3-indigo,.w3-hover-indigo:hover{color:#fff!important;background-color:#3f51b5!important} */
.w3-indigo,.w3-hover-indigo:hover{color:#fff!important;background-color:var(--terziary-root-color)!important}

.w3-green,.w3-hover-green:hover{color:#fff!important;background-color:#4CAF50!important}
.w3-light-green,.w3-hover-light-green:hover{color:#000!important;background-color:#8bc34a!important}
.w3-khaki,.w3-hover-khaki:hover{color:#000!important;background-color:#f0e68c!important}
.w3-lime,.w3-hover-lime:hover{color:#000!important;background-color:#cddc39!important}
.w3-orange,.w3-hover-orange:hover{color:#000!important;background-color:#ff9800!important}
.w3-deep-orange,.w3-hover-deep-orange:hover{color:#fff!important;background-color:#ff5722!important}
.w3-pink,.w3-hover-pink:hover{color:#fff!important;background-color:#e91e63!important}
.w3-purple,.w3-hover-purple:hover{color:#fff!important;background-color:#9c27b0!important}
.w3-deep-purple,.w3-hover-deep-purple:hover{color:#fff!important;background-color:#673ab7!important}
.w3-red,.w3-hover-red:hover{color:#fff!important;background-color:#f44336!important}
.w3-sand,.w3-hover-sand:hover{color:#000!important;background-color:#fdf5e6!important}
.w3-teal,.w3-hover-teal:hover{color:#fff!important;background-color:#009688!important}
.w3-yellow,.w3-hover-yellow:hover{color:#000!important;background-color:#ffeb3b!important}

.w3-white,.w3-hover-white:hover{color:#fff!important;background-color:var(--terziary-root-color)!important; opacity: 1;}

.w3-black,.w3-hover-black:hover{color:#000000!important;background-color:#ebdfdf!important; box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;}
.w3-grey,.w3-hover-grey:hover,.w3-gray,.w3-hover-gray:hover{color:#000!important;background-color:#9e9e9e!important}
.w3-light-grey,.w3-hover-light-grey:hover,.w3-light-gray,.w3-hover-light-gray:hover{color:#000!important;background-color:#f1f1f1!important}
.w3-dark-grey,.w3-hover-dark-grey:hover,.w3-dark-gray,.w3-hover-dark-gray:hover{color:#fff!important;background-color:#616161!important}
.w3-pale-red,.w3-hover-pale-red:hover{color:#000!important;background-color:#ffdddd!important}
.w3-pale-green,.w3-hover-pale-green:hover{color:#000!important;background-color:#ddffdd!important}
.w3-pale-yellow,.w3-hover-pale-yellow:hover{color:#000!important;background-color:#ffffcc!important}
.w3-pale-blue,.w3-hover-pale-blue:hover{color:#000!important;background-color:#ddffff!important}
.w3-text-amber,.w3-hover-text-amber:hover{color:#ffc107!important}
.w3-text-aqua,.w3-hover-text-aqua:hover{color:#00ffff!important}
.w3-text-blue,.w3-hover-text-blue:hover{color:var(--primary-root-color)!important}
.w3-text-light-blue,.w3-hover-text-light-blue:hover{color:#87CEEB!important}
.w3-text-brown,.w3-hover-text-brown:hover{color:#795548!important}
.w3-text-cyan,.w3-hover-text-cyan:hover{color:#00bcd4!important}
.w3-text-blue-grey,.w3-hover-text-blue-grey:hover,.w3-text-blue-gray,.w3-hover-text-blue-gray:hover{color:#607d8b!important}
.w3-text-green,.w3-hover-text-green:hover{color:#4CAF50!important}
.w3-text-light-green,.w3-hover-text-light-green:hover{color:#8bc34a!important}
.w3-text-indigo,.w3-hover-text-indigo:hover{color:#3f51b5!important}
.w3-text-khaki,.w3-hover-text-khaki:hover{color:#b4aa50!important}
.w3-text-lime,.w3-hover-text-lime:hover{color:#cddc39!important}
.w3-text-orange,.w3-hover-text-orange:hover{color:#ff9800!important}
.w3-text-deep-orange,.w3-hover-text-deep-orange:hover{color:#ff5722!important}
.w3-text-pink,.w3-hover-text-pink:hover{color:#e91e63!important}
.w3-text-purple,.w3-hover-text-purple:hover{color:#9c27b0!important}
.w3-text-deep-purple,.w3-hover-text-deep-purple:hover{color:#673ab7!important}
.w3-text-red,.w3-hover-text-red:hover{color:#f44336!important}
.w3-text-sand,.w3-hover-text-sand:hover{color:#fdf5e6!important}
.w3-text-teal,.w3-hover-text-teal:hover{color:#009688!important}
.w3-text-yellow,.w3-hover-text-yellow:hover{color:#d2be0e!important}
.w3-text-white,.w3-hover-text-white:hover{color:#fff!important}
.w3-text-black,.w3-hover-text-black:hover{color:#000!important}
.w3-text-grey,.w3-hover-text-grey:hover,.w3-text-gray,.w3-hover-text-gray:hover{color:#757575!important}
.w3-text-light-grey,.w3-hover-text-light-grey:hover,.w3-text-light-gray,.w3-hover-text-light-gray:hover{color:#f1f1f1!important}
.w3-text-dark-grey,.w3-hover-text-dark-grey:hover,.w3-text-dark-gray,.w3-hover-text-dark-gray:hover{color:#3a3a3a!important}
.w3-border-amber,.w3-hover-border-amber:hover{border-color:#ffc107!important}
.w3-border-aqua,.w3-hover-border-aqua:hover{border-color:#00ffff!important}
.w3-border-blue,.w3-hover-border-blue:hover{border-color:#2196F3!important}
.w3-border-light-blue,.w3-hover-border-light-blue:hover{border-color:#87CEEB!important}
.w3-border-brown,.w3-hover-border-brown:hover{border-color:#795548!important}
.w3-border-cyan,.w3-hover-border-cyan:hover{border-color:#00bcd4!important}
.w3-border-blue-grey,.w3-hover-border-blue-grey:hover,.w3-border-blue-gray,.w3-hover-border-blue-gray:hover{border-color:#607d8b!important}
.w3-border-green,.w3-hover-border-green:hover{border-color:#4CAF50!important}
.w3-border-light-green,.w3-hover-border-light-green:hover{border-color:#8bc34a!important}
.w3-border-indigo,.w3-hover-border-indigo:hover{border-color:#3f51b5!important}
.w3-border-khaki,.w3-hover-border-khaki:hover{border-color:#f0e68c!important}
.w3-border-lime,.w3-hover-border-lime:hover{border-color:#cddc39!important}
.w3-border-orange,.w3-hover-border-orange:hover{border-color:#ff9800!important}
.w3-border-deep-orange,.w3-hover-border-deep-orange:hover{border-color:#ff5722!important}
.w3-border-pink,.w3-hover-border-pink:hover{border-color:#e91e63!important}
.w3-border-purple,.w3-hover-border-purple:hover{border-color:#9c27b0!important}
.w3-border-deep-purple,.w3-hover-border-deep-purple:hover{border-color:#673ab7!important}
.w3-border-red,.w3-hover-border-red:hover{border-color:#f44336!important}
.w3-border-sand,.w3-hover-border-sand:hover{border-color:#fdf5e6!important}
.w3-border-teal,.w3-hover-border-teal:hover{border-color:#009688!important}
.w3-border-yellow,.w3-hover-border-yellow:hover{border-color:#ffeb3b!important}
.w3-border-white,.w3-hover-border-white:hover{border-color:#fff!important}
.w3-border-black,.w3-hover-border-black:hover{border-color:#000!important}
.w3-border-grey,.w3-hover-border-grey:hover,.w3-border-gray,.w3-hover-border-gray:hover{border-color:#9e9e9e!important}
.w3-border-light-grey,.w3-hover-border-light-grey:hover,.w3-border-light-gray,.w3-hover-border-light-gray:hover{border-color:#f1f1f1!important}
.w3-border-dark-grey,.w3-hover-border-dark-grey:hover,.w3-border-dark-gray,.w3-hover-border-dark-gray:hover{border-color:#616161!important}
.w3-border-pale-red,.w3-hover-border-pale-red:hover{border-color:#ffe7e7!important}.w3-border-pale-green,.w3-hover-border-pale-green:hover{border-color:#e7ffe7!important}
.w3-border-pale-yellow,.w3-hover-border-pale-yellow:hover{border-color:#ffffcc!important}.w3-border-pale-blue,.w3-hover-border-pale-blue:hover{border-color:#e7ffff!important}
.w3-al-cont-center { align-content: center !important; }
.user-welcome-msg { display: block; float: inline-end; }

span.welcome.message.w3-al-cont-center.fs-small {
    color: #fff;
}

.w3-bar.w3-top-header a.w3-bar-item.w3-button.w3-padding-large.w3-active {
    background-color: var(--terziary-root-color)!important;
    border-color: var(--terziary-root-color)!important;
    color: #000000!important;
    text-shadow: 1px 0px 0px #000000;
}

.w3-btn-green {
    background: var(--penta-root-color);
}

.w3-btn-large {
    display: block;
    padding: 10px 25px;
    border: 1px solid #85a729;
    font-family: DESIGNER;
    font-size: 24px;
}

.w3-m-auto {
    margin: auto;
}

.w3-icons-line > i.fa { padding: 0; background: #dedede; color: #000; width: 35px; height: 35px; }

p.w3-title-p { font-size: 15px; text-align: left; font-weight: 600; }

.w3-input-field::placeholder { font-size: 13px; }
.w3-input-field {
    width: 100%;
    border: 2px solid #b8b8b8;
    border-radius: 8px;
    height: 38px;
    font-size: 15px;
    padding: 6px 12px;
}

.w3-form-group { display: flex; }
.w3-form-group > *:nth-child(1) { border-radius: 8px 0 0 8px!important; }
.w3-form-group > *:nth-child(2) { 
    border-radius: 0 8px 8px 0!important; 
    border: 2px solid #b8b8b8; 
    border-left: 0; 
    font-size: 16px; 
    background: var(--primary-root-color); 
    color: #fff;
}

.w3-ps-relative { position: relative; }
.w3-ps-absolute { position: absolute; }
.w3-ps-fixed { position: fixed; }

.w3-bar.w3-blue > a, .fs-small {
    font-size: 14px!important;
    border-radius: 3px;
    margin: 4px 2px;
}

.slider-dots {
    position: absolute;
    bottom: 12px;
    left: 0;
    right: 0;
    margin: auto;
    width: 87px;
    text-align-last: center;
}

.w3-slider-title {
    margin: 0;
}
.w3-slider-paragraph {
    margin-top: 0px;
}
.w3-slider-button {
    min-width: 200px;
    margin-bottom: 38px;
}

.w3-title-page {
    font-size: 32px;
    font-weight: 600;
    color: #000000;
}

.w3-title-page > box-icon {
    margin-right: 8px;
    width: 26px;
    height: 26px;
}

.w3-grid-item {
    background-color: #ffffff;
    /* box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; */
    box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
    border-radius: 2px;
    text-align: center;
    overflow: hidden;
    transition: all .2s ease;
}
.w3-grid-item:hover {
    cursor: pointer;
}

.w3-grid-item > .w3-image-bg.w3-ps-relative.w3-100 {
    transition: all .2s;
}
.w3-grid-item:hover > .w3-image-bg.w3-ps-relative.w3-100 {
    transform: scale(1.18);
}

.w3-product-image {
    display: block;
    width: 100%;
}

p.w3-bold-paragraph {
    font-family:"Segoe UI",Arial,sans-serif;
    font-size: 15px;
    font-weight: 600;
}

/* Imposta il box-sizing per il contenitore e i figli */
.w3-grid-container,
.w3-grid-container * {
    box-sizing: border-box;
}

/* Stile principale per il contenitore della griglia */
.w3-grid-container {
    display: grid;
    gap: 30px; /* Spazio tra gli elementi */
    margin: 20px auto;
    padding: 2px 20px; /* Ridotto per evitare overflow */
    width: 100%;
    max-width: 100%; /* Previene overflow orizzontale */
    overflow: hidden; /* Nasconde eventuali contenuti che escono */
}

.w3-white:hover > svg {fill: #ffffff!important;}

a.w3-btn-login.w3-bar-item.w3-button.w3-padding-large.w3-white svg,
a.w3-btn-login.w3-bar-item.w3-button.w3-padding-large.w3-hide-small.w3-hover-white:hover > svg {
    fill: #000000!important;
}

/* Breakpoint: Schermi fino a 580px */
@media screen and (max-width: 580px) {
    .w3-grid-container {
        grid-template-columns: 1fr; /* Una colonna */
        padding: 2px 10px; /* Ridotto per piccoli schermi */
    }

    .home-flex-effect-primary .w3-central-globe {
        width: 85%!important;
    }

    h1.w3-jumbo span {
        font-size: 34px !important;
    }

    h2.w3-margin.w3-jumbo {
        font-size: 22px !important;
    }

    p.w3-xlarge.w3-70.w3-m-auto {
        font-size: 17px !important;
    }

    header.w3-container.w3-center.home-div-secondary {
        padding: 26px 14px!important;
    }
}

/* Breakpoint: Schermi tra 581px e 767px */
@media screen and (min-width: 581px) and (max-width: 767px) {
    .w3-grid-container {
        grid-template-columns: repeat(2, 1fr); /* Due colonne */
        padding: 2px 15px; /* Adattato per lo spazio */
    }
}

/* Breakpoint: Schermi tra 768px e 901px */
@media screen and (min-width: 768px) and (max-width: 901px) {
    .w3-grid-container {
        grid-template-columns: repeat(3, 1fr); /* Tre colonne */
        padding: 2px 20px;
    }
}

/* Breakpoint: Schermi tra 902px e 1280px */
@media screen and (min-width: 902px) and (max-width: 1280px) {
    .w3-grid-container {
        grid-template-columns: repeat(4, 1fr); /* Quattro colonne */
        padding: 2px 30px;
    }
}

/* Breakpoint: Schermi tra 1281px e 1366px */
@media screen and (min-width: 1281px) and (max-width: 1366px) {
    .w3-grid-container {
        grid-template-columns: repeat(5, 1fr); /* Cinque colonne */
        padding: 2px 40px;
    }
}

/* Breakpoint: Schermi tra 1367px e 1520px */
@media screen and (min-width: 1367px) and (max-width: 1520px) {
    .w3-grid-container {
        grid-template-columns: repeat(6, 1fr); /* Sei colonne */
        padding: 2px 40px;
    }
}

/* Breakpoint: Schermi oltre 1521px */
@media screen and (min-width: 1521px) {
    .w3-grid-container {
        grid-template-columns: repeat(7, 1fr); /* Sette colonne */
        max-width: 1720px; /* Larghezza massima per contenitore */
        margin: 0 auto; /* Centra il contenitore */
        padding: 2px 40px;
    }
}

@media screen and (max-width: 768px) {
    .w3-slider-caption {
        width: 98%!important;
    }

    .w3-d-flex {
        display: grid!important;
    }

    .w3-d-flex.action-button > button {
        width: 100%;
    }

    .w3-d-flex.input-type-password {
        display: flex!important;
    }

    .w3-d-flex > .w3-col-1, .w3-d-flex > .w3-col-2, .w3-d-flex > .w3-col-3,
    .w3-d-flex > .w3-col-4, .w3-d-flex > .w3-col-5, .w3-d-flex > .w3-col-6,
    .w3-d-flex > .w3-col-7, .w3-d-flex > .w3-col-8, .w3-d-flex > .w3-col-9,
    .w3-d-flex > .w3-col-10 {
        width: 100%!important;
    }

    .w3-d-flex.w3-head-f > [class^="w3-col-"] {
        /* Codice CSS */
        /* padding: 10px 0; */
        padding: 2px 0;
    }
    
    .w3-primary-logo {
        max-width: 190px!important;
    }

}


/* Stile generico per gli elementi della griglia */
.w3-grid-container > * {
    max-width: 100%; /* Impedisce che i figli escano dal contenitore */
    overflow: hidden; /* Nasconde eventuali contenuti in eccesso */
}

.w3-col-1{width: 10%; padding: 10px 25px;}
.w3-col-2{width: 20%; padding: 10px 25px;}
.w3-col-3{width: 30%; padding: 10px 25px;}
.w3-col-4{width: 40%; padding: 10px 25px;}
.w3-col-5{width: 50%; padding: 10px 25px;}
.w3-col-6{width: 60%; padding: 10px 25px;}
.w3-col-7{width: 70%; padding: 10px 25px;}
.w3-col-8{width: 80%; padding: 10px 25px;}
.w3-col-9{width: 90%; padding: 10px 25px;}
.w3-col-10{width: 100%; padding: 10px 25px;}

/* .w3-primary-logo{max-width: 200px;} */
.w3-primary-logo{max-width: 240px;}
.w3-secondary-logo{width: auto; max-width: 94%;}

.w3-align-cc{align-content: center;}

div#w3_Nav_Primary {
    position: absolute;
    width: -webkit-fill-available;
    width: 100%;
}

ul.w3-ul-list {
    font-size: 14px;
    list-style-type: none;
    padding: 0;
    margin: 0;
}
ul.w3-ul-list li > svg {
    fill: #ffffff;
    width: 16px;
    margin-right: 8px;
}
ul.w3-ul-list.contact-info > li {
    line-height: 2.5;
}
li.w3-li-nodot {
    display: flex;
    text-align: left;
}
li.w3-li-nodot > a {
    text-decoration: none;
}

li.w3-li-nodot > a:hover {
    text-decoration: underline;
}

footer.w3-footer {
    border-top: 6px solid var(--secondary-root-color);
}

img.w3-header-logo-showed {
    /* width: 108px; */
    /* height: auto; */
    height: 38px;
    float: left;
    margin-top: 3.5px;
    margin-bottom: 3.5px;
    background: #f1f1f1;
    margin-left: 6px;
    padding: 0 3px;
    margin-right: 32px;
    border-radius: 3px;
    opacity: 1;
    transform: scale(1);
    transition: width 0.25s linear, opacity 0.3s ease, transform 0.3s ease, margin-right 0.3s ease;
}

.w3-square {
    width: 65px;
    height: 65px;
}

img.w3-header-logo-showed.w3-noview {
    width: 0;
    opacity: 0;
    transform: scale(0.8) translateY(-10px); /* Si sposta leggermente verso l'alto */
    margin-right: 0;
}

a.w3-bar-item.w3-button.w3-hide-medium.w3-hide-large.w3-right.w3-padding-large.w3-hover-white.w3-large.w3-blue {
    height: 38px;
    width: 38px;
    padding: 0!important;
    align-content: center;
}

a.w3-bar-item.w3-button.w3-hide-medium.w3-hide-large.w3-right.w3-padding-large.w3-hover-white.w3-large.w3-blue > i.fa.fa-bars {
    font-size: 25px;
    padding: 0;
    margin: 0;
}

/******************************** PAGES CONTAINER COL LAYOUT ******************************/
.w3-init {
    background: #dfe3ee;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
}
.w3-top-page {
    position: relative;
    padding: 15px 25px;
    margin: 0;
}
.w3-container.pages-editor {
    position: relative;
    display: grid;
    grid-gap: 10px;
    min-height: 30vh;
}

@media screen and (min-width: 767px) {
    .w3-container.pages-editor {
        padding: 35px 5%;
    }
} 

@media screen and (min-width: 1521px) {
    .w3-row.row.pages-editor {
        max-width: 1520px!important;
    }
}

@media screen and (max-width: 960px) {
    .w3-row.row.pages-editor {
        display: grid!important;
    }

    .col.pages-editor {
        width: 100%!important;
    }

    .w3-row > .col { width: 100%; }
}

.w3-button.w3-btn-secondary.display-password {
    width: 48px;
    border: 1px solid #c1c1c1;
    border-left: 0;
    border-radius: 0 !important;
    padding: 0;
}
.w3-button.w3-btn-secondary.display-password i {
    font-size: 16px;
    color: #545454;
}
.w3-button.w3-btn-secondary.display-password:hover, .w3-button.w3-btn-secondary.display-password:hover i {
    color: #ffffff !important;
    background-color: var(--primary-root-color) !important;
}

.w3-top-global-message {
    max-width: 620px;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
}

.w3-fs-32 {
    font-weight: 700!important;
    font-size: 30px!important;
}

.w3-mx-1 { margin-right: 3px; margin-left: 3px; }

.w3-top-global-message.login-error-credentials {
    max-width: -webkit-fill-available;
    margin: 10px auto 10px auto !important;
    position: relative;
    left: 0;
    right: 0;
}

box-icon[type='solid'][name='map'] {
    fill: #c9233b;
}

.a-alert-heading {
    color: #0b7b3c;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
}

.a-alert-heading i {
    font-size: 28px;
}

/* ========================================================================
   LAB Theme - Labor S.r.l. | Bootstrap 5.3 skin + CMS compatibility layer
   Palette: grigio calcestruzzo, ruggine sfaccettato, nero tecnico.
   ======================================================================== */
:root{
    --labor-black:#12100f;
    --labor-black-2:#1d1a18;
    --labor-ink:#292521;
    --labor-rust:#9c4d2f;
    --labor-rust-dark:#5e2b1d;
    --labor-rust-soft:#c48055;
    --labor-concrete:#c9c7c2;
    --labor-concrete-2:#ebe8e2;
    --labor-steel:#77736d;
    --labor-white:#f8f6f1;
    --labor-muted:#aaa49b;
    --labor-border:rgba(18,16,15,.10);
    --labor-shadow:0 26px 90px rgba(18,16,15,.18);
    --labor-shadow-soft:0 18px 55px rgba(18,16,15,.10);
    --labor-radius:28px;
    --primary-root-color:var(--labor-rust);
    --secondary-root-color:var(--labor-black-2);
    --terziary-root-color:var(--labor-rust-soft);
    --quad-root-color:var(--labor-concrete);
    --penta-root-color:var(--labor-rust-dark);
}

html{scroll-behavior:smooth;scroll-padding-top:110px;}
body{
    min-height:100vh;
    font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif!important;
    background:
        radial-gradient(circle at 12% 8%, rgba(156,77,47,.12), transparent 26%),
        radial-gradient(circle at 88% 3%, rgba(94,43,29,.12), transparent 24%),
        linear-gradient(180deg,var(--labor-white),#e4ded4 68%,var(--labor-white));
    color:var(--labor-black-2);
    overflow-x:hidden;
}
body:before{
    content:"";
    position:fixed;
    inset:0;
    z-index:9999;
    pointer-events:none;
    opacity:.04;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
a{text-decoration:none;transition:.25s ease;}
img{max-width:100%;height:auto;}
::selection{background:var(--labor-rust);color:#fff;}

/* Bootstrap refinement */
.container,.container-fluid{position:relative;}
.btn,
button.btn{
    border-radius:999px!important;
    font-weight:800;
    letter-spacing:.01em;
    padding:.82rem 1.25rem;
    border-width:1px;
    transition:.28s ease;
}
.btn-sm{padding:.58rem .95rem!important;font-size:.88rem!important;}
.btn-lg{padding:1rem 1.55rem!important;font-size:1rem!important;}
.btn-primary,.btn-labor,.w3-btn-primary,.w3-btn-green{
    background:linear-gradient(135deg,var(--labor-rust),var(--labor-rust-dark))!important;
    border-color:rgba(255,255,255,.08)!important;
    color:#fff!important;
    box-shadow:0 14px 34px rgba(94,43,29,.22)!important;
}
.btn-primary:hover,.btn-labor:hover,.w3-btn-primary:hover,.w3-btn-green:hover{
    transform:translateY(-1px);
    filter:saturate(1.08);
    color:#fff!important;
    box-shadow:0 20px 44px rgba(94,43,29,.30)!important;
}
.btn-outline-primary,.btn-labor-ghost{
    color:var(--labor-rust-dark)!important;
    background:rgba(255,255,255,.66)!important;
    border-color:rgba(94,43,29,.22)!important;
    backdrop-filter:blur(12px);
}
.btn-outline-primary:hover,.btn-labor-ghost:hover{
    background:var(--labor-black-2)!important;
    border-color:var(--labor-black-2)!important;
    color:#fff!important;
}
.card,.modal-content,.dropdown-menu,.list-group-item{
    border-color:var(--labor-border)!important;
}
.card{
    border-radius:var(--labor-radius)!important;
    box-shadow:var(--labor-shadow-soft);
    background:rgba(255,255,255,.82);
    backdrop-filter:blur(18px);
    overflow:hidden;
}
.card-header,.modal-header{
    background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(235,232,226,.92));
    border-color:rgba(18,16,15,.08)!important;
}
.form-control,.form-select,.input-group-text,textarea.form-control{
    border:1px solid rgba(18,16,15,.12)!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.80)!important;
    min-height:48px;
    box-shadow:none!important;
}
.input-group .form-control,.input-group .form-select{border-radius:18px!important;}
.input-group-text{
    color:var(--labor-rust-dark)!important;
    font-weight:800;
    background:rgba(235,232,226,.88)!important;
}
.form-control:focus,.form-select:focus,.w3-input-field:focus,.choices.is-focused .choices__inner{
    border-color:var(--labor-rust)!important;
    box-shadow:0 0 0 .22rem rgba(156,77,47,.12)!important;
    outline:0!important;
}
.table{
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(156,77,47,.045);
    --bs-table-hover-bg: rgba(156,77,47,.075);
    border-color:rgba(18,16,15,.08)!important;
}
.table thead th{
    background:linear-gradient(135deg,var(--labor-black-2),#2c251f)!important;
    color:#fff!important;
    font-size:.78rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    border-color:rgba(255,255,255,.08)!important;
}
.badge{border-radius:999px;padding:.55em .75em;font-weight:850;}
.alert{border-radius:22px;border-color:rgba(18,16,15,.10);}

/* LAB Theme header */
.lab-theme-shell{background:var(--labor-black);position:relative;z-index:1000;}
.lab-top-strip{
    background:linear-gradient(90deg,#151210,#2b221e,#151210);
    color:#d9d2ca;
    font-size:.78rem;
    letter-spacing:.07em;
    text-transform:uppercase;
    border-bottom:1px solid rgba(255,255,255,.08);
}
.lab-top-strip a{color:#f2ede6;font-weight:800;}
.lab-top-strip a:hover{color:var(--labor-rust-soft);}
.lab-header{
    position:sticky;
    top:0;
    z-index:999;
    background:rgba(18,16,15,.88);
    border-bottom:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(20px);
    box-shadow:0 18px 55px rgba(0,0,0,.18);
}
.lab-navbar{min-height:82px;}
.lab-brand{display:flex;align-items:center;gap:14px;min-width:0;}
.lab-brand-logo{width:min(215px,48vw);max-height:64px;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(0,0,0,.36));transition:.28s ease;}
.lab-brand:hover .lab-brand-logo{transform:translateY(-1px);filter:drop-shadow(0 18px 32px rgba(0,0,0,.42));}
.lab-brand-mark{
    display:none;
    width:42px;height:42px;
    border-radius:16px;
    background:linear-gradient(135deg,var(--labor-rust),var(--labor-rust-dark));
}
.lab-nav .nav-link,
.lab-nav a.w3-bar-item,
.lab-nav .w3-button{
    color:rgba(255,255,255,.78)!important;
    font-weight:800!important;
    font-size:.93rem!important;
    padding:.74rem .88rem!important;
    border-radius:999px!important;
    margin:0 .12rem!important;
    background:transparent!important;
    border:0!important;
    line-height:1.2!important;
}
.lab-nav .nav-link:hover,
.lab-nav a.w3-bar-item:hover,
.lab-nav .w3-button:hover{
    color:#fff!important;
    background:rgba(255,255,255,.08)!important;
}
.lab-nav .w3-active,
.lab-nav .active,
.lab-nav .nav-link.active{
    color:#fff!important;
    background:linear-gradient(135deg,rgba(156,77,47,.92),rgba(94,43,29,.92))!important;
    box-shadow:0 12px 26px rgba(94,43,29,.28)!important;
}

#labThemeNavbar .navbar-nav a.w3-active {
    color: #fff !important;
    background:linear-gradient(135deg,rgba(156,77,47,.92),rgba(94,43,29,.92))!important;
    box-shadow:0 12px 26px rgba(94,43,29,.28)!important;
}

.lab-toggler{
    border:1px solid rgba(255,255,255,.18)!important;
    padding:9px 10px!important;
    border-radius:16px!important;
    box-shadow:none!important;
    background:rgba(255,255,255,.06)!important;
}
.lab-toggler span{display:block;width:24px;height:2px;margin:5px 0;background:#fff;border-radius:10px;}
.lab-navbar-actions{display:flex;align-items:center;gap:10px;}
.lab-whatsapp-btn{
    width:46px;height:46px;
    display:inline-flex;align-items:center;justify-content:center;
    border-radius:17px!important;
    background:#25d366!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 14px 28px rgba(37,211,102,.18)!important;
}
.lab-whatsapp-btn svg{width:24px;fill:#fff;}
.lab-mobile-menu{
    background:rgba(18,16,15,.96)!important;
    border-top:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(18px);
    padding:12px;
}
.lab-mobile-menu a,.lab-mobile-menu .w3-button{
    display:block!important;
    color:#eee8df!important;
    padding:14px 16px!important;
    border-radius:18px!important;
    font-weight:800!important;
    background:transparent!important;
}
.lab-mobile-menu a:hover,.lab-mobile-menu .w3-button:hover{background:rgba(255,255,255,.08)!important;color:#fff!important;}


/* Main CMS surface */
main.w3-main-page,
main.lab-main-page{
    min-height:65vh;
    opacity:1!important;
    /* padding-top:34px; */
    background:
        linear-gradient(90deg,rgba(18,16,15,.035) 1px,transparent 1px),
        linear-gradient(0deg,rgba(18,16,15,.025) 1px,transparent 1px);
    background-size:58px 58px;
}
main.w3-main-page > .container,
main.w3-main-page > .container-fluid{
    padding-top:18px;
    padding-bottom:56px;
}
.w3-title-page,h1.page-title,.page-title{
    font-size:clamp(2rem,3.6vw,4.2rem)!important;
    line-height:.95!important;
    letter-spacing:-.06em!important;
    font-weight:900!important;
    color:var(--labor-black-2)!important;
}
.w3-title-page:after,.page-title:after{
    content:"";
    display:block;
    width:72px;
    height:4px;
    border-radius:999px;
    margin-top:16px;
    background:linear-gradient(90deg,var(--labor-rust),var(--labor-concrete));
}
.w3-grid-item,.lab-card,.content-card,.dashboard-card{
    background:#fff!important;
    border:1px solid rgba(18,16,15,.08)!important;
    border-radius:var(--labor-radius)!important;
    box-shadow:var(--labor-shadow-soft)!important;
    transition:.35s ease!important;
}
.w3-grid-item:hover,.lab-card:hover,.content-card:hover,.dashboard-card:hover{
    transform:translateY(-6px);
    box-shadow:0 26px 70px rgba(18,16,15,.14)!important;
}

/* W3 compatibility restyle */
.w3-bg-deep,.w3-bg-dark,.w3-black,.w3-blue{
    background:linear-gradient(135deg,var(--labor-black),#28211d)!important;
    color:#fff!important;
}
.w3-white{background:#fff!important;color:var(--labor-black-2)!important;}
.w3-light-grey,.w3-light-gray{background:var(--labor-concrete-2)!important;color:var(--labor-black-2)!important;}
.w3-text-blue,.w3-txt-primary{color:var(--labor-rust)!important;}
.w3-shadow,.w3-shadow-medium{box-shadow:var(--labor-shadow-soft)!important;}
.w3-round,.w3-round-small,.w3-round-medium,.w3-round-large{border-radius:18px!important;}
.w3-input-field{
    width:100%;
    border:1px solid rgba(18,16,15,.12)!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.82)!important;
    min-height:48px;
    font-size:15px;
    padding:9px 14px!important;
    box-shadow:none!important;
}
.w3-form-group{display:flex;gap:0;align-items:stretch;}
.w3-form-group > *:first-child{border-radius:18px 0 0 18px!important;}
.w3-form-group > *:last-child{border-radius:0 18px 18px 0!important;}
.w3-small-menu-hover{
    border:1px solid rgba(18,16,15,.10)!important;
    border-radius:18px!important;
    overflow:hidden;
    box-shadow:var(--labor-shadow-soft)!important;
}
p.w3-list-item{padding:10px 16px!important;border-color:rgba(18,16,15,.08)!important;}
p.w3-list-item:hover{background:rgba(156,77,47,.07)!important;color:var(--labor-black)!important;}
.global.popup-float-message{
    border-radius:20px 0 0 20px!important;
    border-color:rgba(18,16,15,.10)!important;
    box-shadow:var(--labor-shadow-soft)!important;
    background:rgba(255,255,255,.92)!important;
    backdrop-filter:blur(18px);
}
.ppbg-success{background:#e9fff0!important;border-left:5px solid #16a34a!important;}
.ppbg-error{background:#fff0f0!important;border-left:5px solid #dc2626!important;}
.ppbg-info{background:#f8f6f1!important;border-left:5px solid var(--labor-rust)!important;}

/* Choices.js LAB skin */
.choices{margin-bottom:0!important;}
.choices__inner{
    background:rgba(255,255,255,.82)!important;
    border:1px solid rgba(18,16,15,.12)!important;
    border-radius:18px!important;
    min-height:48px!important;
    padding:8px 12px 4px!important;
}
.choices__list--multiple .choices__item{
    background:linear-gradient(135deg,var(--labor-rust),var(--labor-rust-dark))!important;
    border-color:rgba(255,255,255,.10)!important;
    border-radius:999px!important;
    font-weight:800!important;
}
.choices__list--dropdown,.choices__list[aria-expanded]{
    border-color:rgba(18,16,15,.12)!important;
    border-radius:18px!important;
    box-shadow:var(--labor-shadow-soft)!important;
    overflow:hidden!important;
}
.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted{background:rgba(156,77,47,.08)!important;}

/* Footer */
.lab-footer{
    position:relative;
    overflow:hidden;
    background:#12100f;
    color:#d8d0c4;
    padding:70px 0 25px;
    box-shadow:0 -20px 60px rgba(18,16,15,.20);
}
.lab-footer:before{
    content:"";
    position:absolute;
    right:7%;top:-90px;
    width:260px;height:260px;
    border-radius:50%;
    border:38px solid rgba(156,77,47,.11);
}
.lab-footer .container{position:relative;z-index:2;}
.lab-footer-logo{width:min(250px,70vw);margin-bottom:20px;filter:drop-shadow(0 12px 28px rgba(0,0,0,.38));}
.lab-footer p,.lab-footer li{color:#aaa297;line-height:1.7;}
.lab-footer h3{
    font-size:.9rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:#fff;
    font-weight:900;
    margin-bottom:16px;
}
.lab-footer a{color:#e0d8cd;}
.lab-footer a:hover{color:var(--labor-rust-soft);}
.lab-footer-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.lab-footer-contact li{display:flex;gap:10px;align-items:flex-start;}
.lab-footer-contact svg{width:16px;min-width:16px;margin-top:5px;fill:var(--labor-rust-soft);}
.lab-footer-bottom{
    border-top:1px solid rgba(255,255,255,.10);
    margin-top:42px;
    padding-top:22px;
    display:flex;
    justify-content:space-between;
    gap:15px;
    color:#8c8378;
    font-weight:750;
    font-size:.9rem;
}

/* Backward footer classes mapped to LAB visual style */
footer.w3-footer{background:#12100f!important;color:#d8d0c4!important;}
.w3-secondary-logo{width:min(250px,70vw)!important;filter:drop-shadow(0 12px 28px rgba(0,0,0,.38));}
p.w3-title-p{font-size:.9rem!important;text-transform:uppercase;letter-spacing:.14em;color:#fff!important;font-weight:900!important;text-align:left!important;}
.w3-ul-list{padding:0!important;margin:0!important;list-style:none!important;}
.w3-li-nodot{list-style:none!important;margin-bottom:10px!important;color:#aaa297!important;font-size:.98rem!important;}
.w3-li-nodot svg{width:16px;fill:var(--labor-rust-soft);margin-right:8px;}
.w3-icons-line > i.fa{background:rgba(255,255,255,.08)!important;color:#fff!important;border-radius:15px!important;transition:.25s ease;}
.w3-icons-line > i.fa:hover{background:var(--labor-rust)!important;transform:translateY(-2px);}

@media (max-width:991.98px){
    .lab-top-strip{display:none;}
    .lab-navbar{min-height:72px;}
    .lab-navbar .navbar-collapse{padding:16px 0;border-top:1px solid rgba(255,255,255,.08);margin-top:10px;}
    .lab-nav .nav-link,.lab-nav a.w3-bar-item,.lab-nav .w3-button{display:block!important;margin:4px 0!important;}
    main.w3-main-page,main.lab-main-page{padding-top:22px;}
    .lab-footer-bottom{flex-direction:column;}
}
@media (max-width:575.98px){
    .lab-brand-logo{width:205px;}
    .lab-navbar-actions{gap:6px;}
    .lab-whatsapp-btn{width:42px;height:42px;border-radius:15px!important;}
    .w3-form-group{flex-direction:column;gap:8px;}
    .w3-form-group > *{border-radius:18px!important;}
}
