/**
 * Theme Name: Lotti Sovieni - 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 Lotti Sovieni
 * Version: 1.0
 * License: GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain: lottisovieni
 */

   :root {
    --text-base-size: 16px;
    --text-base-font: 'Noto Sans', sans-serif;
    --text-alt-font: 'Noto Sans', sans-serif;
    --primary-color: #4a90bd;
    --primary-color-alpha: #4a90bdcc;
    --primary-color-text: #ffffff;
    --primary-color-variant: #4a90e2;
    --primary-color-variant-text: #f5efe6;
    --secondary-color: #fff;
    --secondary-color-alpha: #ffffff34;
    --secondary-color-text: #101828;
    --secondary-color-variant: #b3b3b3;
    --secondary-color-variant-text: #ffffff;
    --tertiary-color: #101828;
    --tertiary-color-alpha: #101828cc;
    --background-color: #ffffff;
    --background-color-alpha: #ffffffea;
    --background-color-text: #4a5565;
    --surface-color: #ffffff;
    --surface-color-text: #000000;
    --error-color: #b00022;
    --error-color-text: #ffffff;
    --header-height: 100px;
    --header-height-inner: 100px;
    --standard-margin: 4rem;
}

body { font-weight: 300; }
a:visited, a:active { color: inherit; }
h1,h2,h3,h4,h5,h6 { color: #000000; font-weight: 300; }
.deco-title { color: #000000; font-weight: 300; line-height: normal; letter-spacing: 0.05rem; }
.deco-title strong,.deco-title strong,.deco-title strong,.deco-title strong,.deco-title strong,.deco-title strong { font-weight: 500; }
.deco-title .eyelet { font-weight: 500; margin-bottom: 0.5rem; }

#main-header { background-color: var(--background-color-alpha); border-bottom: none; backdrop-filter: blur(5px); }
#main-header.sticky { background-color: var(--background-color-alpha); border-bottom: 1px solid #9c9c9c85; }
.inner #main-header { border-bottom: 1px solid #9c9c9c85; }

#main-menu-wrapper { width: 100%; display: inline-block; }
#main-menu { display: flex; height: var(--header-height); justify-content: end; list-style: none; padding: 0 var(--standard-margin); margin-bottom: 0; margin-top: 0; align-items: center; }
#main-menu > li > a { position: relative; font-size: 1rem; color: var(--tertiary-color); padding: 1rem; text-transform: uppercase; font-weight: 300; }
#main-menu > li:hover a, #main-menu li.current_page_item > a { text-decoration: none; }

#logo-wrapper { height: 100%; left: var(--standard-margin); top: 50%; padding: 0.8rem 0; transform: translateY(-50%); }
#logo-wrapper .logo { height: 100%; }

/*Mobile Menu*/
#mobile-menu-toggle { display: none; position: absolute; height: auto; cursor: pointer; z-index: 3; width: auto; padding: 1em 0; right: var(--standard-margin); top: 50%; transform: translateY(-50%); }
#mobile-menu-toggle span { height: 3px; background-color: var(--primary-color); width: calc((var(--header-height)) / 3); display: block; margin: 0.5em auto; }
#mobile-menu-toggle span:first-child { margin: 0.8em auto 0.25em auto;}
#main-menu-offcanvas .offcanvas-menu-container { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; padding: 1rem; }
#main-menu-offcanvas #mobile-menu { padding: 0; list-style: none; }
#main-menu-offcanvas #mobile-menu li  { padding: 0.5rem 0; font-size: 1.2rem; font-family: var(--text-alt-font); }
#main-menu-offcanvas #mobile-menu li a { font-size: 1.2rem; font-family: var(--text-alt-font); color: inherit; }
.offcanvas-body .btn-close { position: absolute; top: 2rem; right: 1rem; }

/*HERO*/
#hero-wrapper, #quote-hero-wrapper { position: relative; height: 100vh; margin-bottom: var(--standard-margin); }
#hero-wrapper figure, #quote-hero-wrapper figure { position: relative; height: 100%; background-position: center; background-size: cover; }
#hero-wrapper figure img, #quote-hero-wrapper figure img { position: absolute; top: 0; left: 0; visibility: hidden; opacity: 0; }
#hero-wrapper .hero-cover, #quote-hero-wrapper .hero-cover { position: absolute; left: 0; top: 0; right: 0; bottom: 0; background-color: #10182899; }

#hero-wrapper .hero-text-wrapper, #quote-hero-wrapper .quote-hero-text-wrapper { position: absolute; top: calc(50% + (var(--header-height)/2)); left: 30%; right: 30%; transform: translateY(-50%); color: var(--primary-color-text); }
#hero-wrapper .hero-text-wrapper h2 { display: block; font-size: 4rem; font-weight: 300; text-align: center; color: #fff; margin-bottom: 0.8rem; }
#hero-wrapper .hero-text-wrapper h2 span { font-weight: 600; color: #fff; }
#hero-wrapper .hero-text-wrapper p { text-align: center; font-size: 1.2rem; line-height: 2rem; color: var(--background-color-alpha); }

#quote-hero-wrapper { height: 60vh; margin-bottom: 0px; }
#quote-hero-wrapper .hero-cover { position: absolute; left: 0; top: 0; right: 0; bottom: 0; background-color: #101828c4; backdrop-filter: blur(8px); }
#quote-hero-wrapper .quote-hero-text-wrapper h1 { text-align: center; font-size: 2.5rem; color: var(--primary-color-text); font-weight: 500; text-transform: uppercase; }
#quote-hero-wrapper .quote-hero-text-wrapper .quote, #quote-hero-wrapper .quote-hero-text-wrapper .attribution { text-align: center; font-size: 1rem; }
#quote-hero-wrapper .quote-hero-text-wrapper .attribution { font-style: italic; font-size: 1.2rem; }

/*BREADCRUMBS*/
#bcrumbs-wrapper { margin-bottom: var(--standard-margin); border-bottom: 1px solid #e2e2e2c4; }
.breadcrumbs ol li > a { color: var(--background-color-text); }
.breadcrumbs ol li::after { background-color: var(--background-color-text); }

.lotti-text-block-wrapper span.title { font-size: 2.2rem; color: #000000; }
.lotti-text-block-wrapper span.subtitle { font-size: 0.8rem; text-transform: uppercase; }

/*STAFF BLOCK*/
.lotti-staff-block-wrapper { height: 16rem; margin-bottom: 2rem;  }
.lotti-staff-block-wrapper .lotti-staff-block:hover { -webkit-box-shadow: 0px 5px 6px 2px rgba(0,0,0,0.15); box-shadow: 0px 5px 6px 2px rgba(0,0,0,0.15); -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-staff-block-wrapper .lotti-staff-block { position: relative; height: 100%; background-color: var(--background-color); border: 1px solid #e5e7eb; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-staff-block-wrapper .lotti-staff-block-content { position: relative; padding: 1.5rem; }
.lotti-staff-block-wrapper .lotti-staff-block-content::after { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 0px; background-color: var(--primary-color-variant); -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-staff-block-wrapper .lotti-staff-block:hover .lotti-staff-block-content::after { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background-color: var(--primary-color-variant); -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-staff-block-wrapper h3 { font-size: 1.2rem; font-weight: 500; }
.lotti-staff-block-wrapper hr { height: 1px; width: 3rem; background-color: #9c9c9c; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-staff-block-wrapper .lotti-staff-block:hover hr { width: 5rem; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-staff-block-wrapper a.link { position: absolute; bottom: 1.5rem; left: 1.5rem; }

.lotti-staff-block-wrapper p.charge { color: var(--primary-color); font-size: 0.8rem; font-weight: 500; text-transform: uppercase; }

.lotti-icon-text-block-wrapper { position: relative; min-height: 16rem; margin-bottom: 2rem; padding: 4.5rem 1.5rem 1.5rem 1.5rem; border: 1px solid #e5e7eb; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in;  }
.lotti-icon-text-block-wrapper i { position: absolute; left: 1.5rem; top: 2rem; font-size: 1.5rem; color: var(--primary-color-variant); -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.lotti-icon-text-block-wrapper h3 { font-size: 1.2rem; font-weight: 500; }
.lotti-icon-text-block-wrapper:hover { border: 1px solid #babbbe; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in;  }
.lotti-icon-text-block-wrapper:hover i { top: 1.5rem; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in;  } 
.lotti-icon-text-block-wrapper.bigger { min-height: 22rem; }

/*STAFF CONTENT*/
.staff_post.hentry { margin-bottom: 1.5rem; }
.staff_post.hentry .staff-content { display: block; position: relative; }
.staff_post.hentry .link-wrapper { position: absolute; left: 0; right: 0; bottom: 0; color: var(--primary-color-text); padding: 1rem; margin-bottom: 0; }
.staff_post.hentry .link-wrapper h3 { display: block; position: relative; margin-bottom: 0; z-index: 1; color: var(--primary-color-text); }
.staff_post.hentry .link-wrapper a { display: block; position: relative; margin-bottom: 0; z-index: 1; color: var(--primary-color-text); }
.staff_post.hentry .link-wrapper::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 0px; background-color: var(--primary-color-variant); -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; z-index: 0; }
.staff_post.hentry:hover .link-wrapper::before { height: 100%; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }

/*FOOTER*/
#main-footer { background-color: #101828; color: #99a1af; padding: var(--standard-margin) 0; margin-top: var(--standard-margin); }
#main-footer h2 { color: #fff; font-size: 1.2rem; text-transform: uppercase; }
#main-footer ul { padding: 0; list-style: none; }
#main-footer ul li { padding: 0.2rem 0; }
#main-footer a { color: #99a1af; }
#main-footer hr { border-top: 1px solid }

/*MISC*/
#aitec-credits { text-align: left; color: var(--primary-color-text); }
#aitec-credits .aitec-svg-logo { width: 66px; height: auto; }
.carousel-control-next, .carousel-control-prev { opacity: 1; width: 8%; }

.right-bordered { border-right: 1px solid #ebebeb; }

.image-wrapper.greyhover figure { position: relative; }
.image-wrapper.greyhover figure::before { content: ""; position: absolute; inset: 0; background: inherit; filter: grayscale(1); transform: scale(1); scale: 100% 100%; filter: grayscale(1); -moz-transition: all .35s ease-in;-o-transition: all .35s ease-in; -webkit-transition: all .35s ease-in; transition: all .35s ease-in; }
.image-wrapper.greyhover:hover figure::before { filter: grayscale(0); transform: scale(1.05); }