/**
 * Theme Name: Aimflex - Child Aitec Theme
 * Template: aitec
 * Theme URI: http://aitec.it
 * Author: The Aitec Team
 * Author URI: http://aitec.it
 * Description: A special theme created (with love!) for Aimflex
 * Version: 1.0
 * License: GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain: aimflex
 */

 :root {
    --text-base-size: 16px;
    --text-base-font: 'Inter', Arial, sans-serif;
    --text-alt-font: 'Poppins', Arial, sans-serif;
    --primary-color: #004b87;
    --primary-color-alpha: #004b8744;
    --primary-color-text: #ffffff;
    --primary-color-text-alpha: #ffffffc2;
    --primary-color-variant: #053053;
    --primary-color-variant-text: #ffffff;
    --secondary-color: #2e8b58;
    --secondary-color-text: #ffffff;
    --secondary-color-variant: #7FCC9E;
    --secondary-color-variant-darker: #4CAF7C;
    --secondary-color-variant-text: #ffffff;
    --background-color: #f9fafb;
    --background-color-text: #101828;
    --background-color-alpha: #f9fafb18;
    --surface-color: #ffffff;
    --surface-color-text: #000000;
    --error-color: #b00022;
    --error-color-text: #ffffff;
    --header-height: 80px;
    --header-height-inner: 80px;
    --aimflex-border-radius: 20px;
    --aimflex-border-radius-less: 10px;
    --aimflex-linear-gradient: linear-gradient(150deg,rgba(0, 76, 135, 1) 0%, rgba(0, 76, 135, 1) 11%, rgba(46, 139, 88, 1) 100%); 
}

/*REMOVE!*/
#main-menu-wrapper { display: none; }
#mobile-menu-toggle { display: none !important; }
/*REMOVE!*/

.logged-in #main-header { top: 32px; }

h1,h2,h3,h4,h5,h6 { font-family: var(--text-alt-font); font-weight: 700; }
a:visited, a:active { color: var(--primary-color); }
.btn { padding: 0.5em 1.5em; font-size: 1.1em; text-transform: none; font-weight: 600; }

#content { padding-top: 4em; }
.inner #content { padding-top: 4em; }

#bcrumbs-wrapper { margin-bottom: 4em; background-color: var(--primary-color); }

/*Header*/
#main-header { position: fixed; background-color: var(--background-color); border-bottom: 1px solid #cfcfcf; -webkit-box-shadow: 0px 2px 10px 2px rgba(70, 70, 70, 0.05); box-shadow: 0px 2px 10px 2px rgba(70, 70, 70, 0.05); }
#main-header #header-content { display: block; position: relative; height: var(--header-height); }
#main-header #header-content #logo-wrapper { display: block; padding: 1em 0; }

/*Main menu*/
#main-menu-wrapper { position: absolute; top: 50%; right: 0; vertical-align: center; text-align: end; transform: translateY(-50%); }
#main-menu { list-style: none; margin-bottom: 0; height: 100%; align-content: center; }
#main-menu li { display: inline-block; padding: 0 1em; }
#main-menu li a { color: var(--background-color-text);}

/*Offcanvas*/
.offcanvas-menu-container { position: absolute; left: 50%; right: 0; top: 50%; transform: translate(-50%, -50%); }

/*Mobile menu*/
#mobile-menu-toggle { display: none; position: absolute; height: calc(var(--header-height)); cursor: pointer; z-index: 3; width: var(--header-height); padding: 1em; right: 0; top:0.3em; }
#mobile-menu-toggle span { height: 2px; background-color: var(--background-color-text); width: calc((var(--header-height) - 1em) / 2); display: block; margin: 0.625em auto; }
#mobile-menu-toggle span:first-child { margin: 0.355em auto 0.625em auto;}

#mobile-menu .sub-menu li a { font-size: 1em; }
#mobile-menu { position: relative; list-style-type: none; padding: 0; }
#mobile-menu li { padding: 0.4em 0; }
#mobile-menu li a { padding: 0.8em 0; font-size: 1.3em; color: var(--background-color-text); }
#mobile-menu .sub-menu { margin-top: 0.5rem; padding-left: 1rem; border-left: 2px solid var(--background-color-text); }

.offcanvas-body .btn-close { position: absolute; right: 1em; top: 1em; left: auto; }

#content { padding-top: var(--header-height); }

#slider { aspect-ratio: 16/7; margin-bottom: 0px; }
#slider .carousel-inner { height: 100%; background: var(--aimflex-linear-gradient) }
#slider .carousel-item { height: 100%; }
#slider .carousel-item h2 { text-align: left; font-size: 3em; }
#slider .carousel-item p { text-align: left; font-size: 1.2em; margin-bottom: 1em; }
#slider .carousel-item figure { aspect-ratio: 1; border-radius: var(--aimflex-border-radius); }
#slider .carousel-item .carousel-caption { top: 50%; padding: 1em 0; left: 0; right: 0; bottom: auto; transform: translateY(-50%); text-align: initial; }

/*Deco title*/
.deco-title { color: var(--background-color-text); font-weight: 700; }
.deco-title.secondary { color: var(--secondary-color); }

/*Pill*/
.pill { margin-bottom: 1em; font-size: 0.9em; }
.pill span { padding: 0.5em 1em; text-transform: uppercase; border-radius: var(--aimflex-border-radius); }

/*Special columns*/
.cit-column::before { content: ""; position: absolute; left: 0.5em; top: -0.5em; font-size: 3.5em; font-family: 'Font Awesome 7 Free'; line-height: normal; font-weight: bold; color: var(--secondary-color); }
.cit-column::after { content: ""; position: absolute; right: 0.5em; bottom: 0em; font-size: 3.5em; font-family: 'Font Awesome 7 Free'; line-height: normal; font-weight: bold; color: var(--primary-color); }
.cit-column { padding: 2em; background-color: var(--background-color); border-radius: var(--aimflex-border-radius); -webkit-box-shadow: 0px 2px 10px 2px rgba(70, 70, 70, 0.15); box-shadow: 0px 2px 10px 2px rgba(70, 70, 70, 0.15); }

.transparent-column { padding: 2em; background-color: var(--background-color-alpha); border-radius: var(--aimflex-border-radius); }

/*Lucide block*/
.lucide-icon-wrapper { display: inline-block; text-align: center; padding: 0.4em; }
.lucide-icon-wrapper > svg { width: 3em; height: 3em; color: var(--secondary-color); }

.lucide-text-icon-wrapper .lucide-icon-wrapper { margin-bottom: 1em; }
.lucide-text-icon-wrapper h3 { font-size: 1.1em; }
.lucide-text-icon-wrapper .text-icon-num { margin-bottom: 0.1em; }
.lucide-text-icon-wrapper .text-icon-text {  font-size: 0.9em; }

/*Lucide icon row*/
.lucide-icon-row-wrapper { display: block; margin-bottom: 2em; }
.lucide-icon-row-wrapper .lucide-icon-wrapper { display: inline-block; vertical-align: top; padding: 0.8em; margin-right: 1em; border-radius: var(--aimflex-border-radius-less); }
.lucide-icon-row-wrapper .lucide-icon-wrapper svg { width: 1.8em; height: 1.8em; color: var(--primary-color-text); }
.lucide-icon-row-wrapper .lucide-icon-row-body { display: inline-block; }
.lucide-icon-row-wrapper .lucide-icon-row-body h3 { margin-bottom: 0.5em; }

/*Snap slider*/
.snap-slider-wrapper .title { margin-bottom: 0.5em; }
.snap-slider-wrapper .subtitle { font-size: 1.4em; }
.snap-slider-wrapper .snap-slider {  margin-top: 3em; }
.snap-slider-element .snap-slider-element-block-content .snap-slider-element-block { height: 26em; background-color:  var(--background-color); padding: 2em; border-radius: var(--aimflex-border-radius-less); -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }

.snap-slider-element-block-content { cursor: initial; }
.clicked .snap-slider-element-block-content { transform: none; z-index: inherit; position: relative; box-shadow: none; }
.clicked .snap-slider-element-block-content .snap-slider-element-block-front { opacity: inherit; z-index: inherit; }
.snap-slider-element .snap-slider-element-block-content h2, .snap-slider-element-block-content h3, .snap-slider-element .snap-slider-element-block-content h4, .snap-slider-element-block-content h5  { font-weight: 600; font-family: var(--text-base-font); font-size: 1.3em; }
.snap-slider-element .snap-slider-element-block-content .lucide-icon-wrapper { padding: 1em; margin-bottom: 2em; border-radius: var(--aimflex-border-radius-less); }

.snap-slider-element .snap-slider-element-block-content .lucide-icon-wrapper { padding: 1em; margin-bottom: 2em; border-radius: var(--aimflex-border-radius-less); background-color: var(--secondary-color-variant) }
.snap-slider-element .snap-slider-element-block-content .lucide-icon-wrapper svg { color: var(--primary-color); }
.snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block { background-color: var(--primary-color); -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block .lucide-icon-wrapper { background-color: var(--primary-color-text); }
.snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block .lucide-icon-wrapper svg { color: var(--secondary-color-variant); }
.snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block h2, .snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block h3, .snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block h4, .snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block h5, .snap-slider-element .snap-slider-element-block-content:hover .snap-slider-element-block p { color: var(--primary-color-text); }

.snap-slider-element:nth-child(even) .snap-slider-element-block-content .lucide-icon-wrapper { background-color: #cbced4; }
.snap-slider-element:nth-child(even) .snap-slider-element-block-content .lucide-icon-wrapper svg { color: var(--primary-color); }
.snap-slider-element:nth-child(even) .snap-slider-element-block-content:hover .snap-slider-element-block { background-color: var(--secondary-color-variant); -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.snap-slider-element:nth-child(even) .snap-slider-element-block-content:hover .snap-slider-element-block .lucide-icon-wrapper { background-color: var(--primary-color-text); -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.snap-slider-element:nth-child(even) .snap-slider-element-block-content:hover .snap-slider-element-block .lucide-icon-wrapper svg { color: var(--secondary-color-variant-darker); }

.snap-slider-wrapper .snap-slider-control button { z-index: 4; }
.snap-slider-wrapper:not(.full-width) .snap-slider-control .snap-slider-control-left { left: -4em; }
.snap-slider-wrapper:not(.full-width) .snap-slider-control .snap-slider-control-right { right: -4em; }

/*Lucide icon*/
.lucide-icon-wrapper.lucide-icon { padding: 1em; border-radius: var(--aimflex-border-radius-less); font-size: 0.6em; }
.lucide-icon-wrapper.lucide-icon svg { color: var(--primary-color-text); }

/*Text Block*/
.block-text-wrapper { padding: 2em 1em; border-radius: var(--aimflex-border-radius-less); background-color: #fff; -webkit-box-shadow: 0px 5px 5px 1px rgba(89,89,89,0.2); box-shadow: 0px 5px 5px 1px rgba(89,89,89,0.2); }
.block-text-wrapper.centro .block-text-content { text-align: center; }
.block-text-wrapper.fine .block-text-content { text-align: end; }
.block-text-wrapper h3 { color: var(--primary-color); font-family: var(--text-base-font); }
.block-text-wrapper p { margin-bottom: 0; }

/*Footer*/
#main-footer { padding: 4em 0; background-color: var(--primary-color); }
#main-footer p { color: var(--primary-color-text-alpha); margin-bottom: 0.5em; line-height: 1.7em; }
#main-footer a { color: var(--primary-color-text-alpha); }
#main-footer h2 { color: var(--primary-color-text); font-family: var(--text-alt-font); font-size: calc(var(--text-base-size) + 4px); font-weight: 700; margin-bottom: 0.5em; }
#main-footer .footer-info a { text-decoration: underline; }

/*Footer logo*/
#main-footer img.logo { display: block; width: 80%; margin-bottom: 1em; }
#main-footer hr.divider { margin: 3em 0; border-top: 1px solid #ffffff83; }

#bottom-menu { height: 100%; padding: 0; margin-bottom: 0; list-style: none; align-content: center; text-align: end; }
#bottom-menu li { position: relative; display: inline-block; }
#bottom-menu li a { padding: 0 0.7em; }

/*Misc*/
.aimflex-gradient { background: var(--aimflex-linear-gradient)  }
.grecaptcha-badge { visibility: hidden; }
.image-gallery figure.aspect-image { border: 1px solid #e5e5e5; border-radius: var(--aimflex-border-radius-less); }