/**
 * Theme Name: Sustenia - 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 [nome del cliente]
 * Version: 1.0
 * License: GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain: sustenia
 */

   :root {
    --text-base-size: 16px;
    --text-base-font: 'Work Sans', sans-serif;
    --text-alt-font: 'Work Sans', sans-serif;
    --primary-color: #2b3f33;
    --primary-color-alpha: #76b83ccc;
    --primary-color-variant: #e2eed3;
    --primary-color-variant-2: #76b83c;
    --primary-color-text: #fff;
    --secondary-color: #fff;
    --secondary-color-alpha: #ffffff34;
    --secondary-color-text: #101828;
    --secondary-color-variant: #b3b3b3;
    --secondary-color-variant-text: #ffffff;
    --tertiary-color: #5ac8f2;
    --tertiary-color-alpha: #5ac8f2cc;
    --tertiary-color-text: #ffffff;
    --tertiary-color-variant: #429abd;
    --tertiary-color-variant-text: #f5efe6;
    --background-color: #ffffff;
    --background-color-alpha: #ffffffb4;
    --background-color-text: #2b3f33;
    --background-color-text-variant: #557a64;
    --background-color-link: #446d1d;
    --background-color-link-variant: #62b618;
    --surface-color: #ffffff;
    --surface-color-text: #000000;
    --error-color: #b00022;
    --error-color-text: #ffffff;
    --header-height: 80px;
    --header-height-inner: 80px;
    --standard-margin: 4rem;
    --standard-border-radius: 12px;
}

a { color: var(--background-color-link); }
a:visited, a:active { color: var(--background-color-link); }

a:hover { color: var(--background-color-link-variant); text-decoration: none; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { margin-bottom: 2rem; color: var(--background-color-text); font-weight: 300; }

blockquote { background-color: #e1e1e133; padding: 1rem; border-left: 2px solid var(--primary-color-variant-2); font-size: inherit; line-height: inherit; font-style: inherit; display: block; }

/*Header*/
#main-header { height: auto; position: relative; background-color: var(--background-color); border-bottom: none; }
#main-header.sticky { background-color: var(--background-color); border-bottom: 1px solid #9c9c9c85; }
.inner #main-header { border-bottom: 1px solid #9c9c9c85; }

.staff_post-template-default .inner #content { padding-bottom: var(--standard-margin); }

#top-menu-wrapper { display: block; position: relative; background-color: var(--primary-color-variant); padding: 0.5rem 1rem; }
#top-menu { position: absolute; right: 0; top: 50%; transform: translateY(-50%); display: block; margin: 0; padding: 0; list-style: none; text-align: end; }
#top-menu li { display: inline-block; padding: 0 0.5rem; }
#top-menu li:last-child { display: inline-block; padding: 0 0 0 0.5rem; }
#top-menu li a { color: var(--primary-color); }

p.top-menu-claim { display: inline-block; margin: 0; padding: 0; color: var(--primary-color); font-weight: 600; }

.header-widgets { display: block; position: absolute; text-align: end; right: 0; top: 50%; transform: translateY(-50%); }
.header-widgets h2 { display: inline-block; color: var(--primary-color); padding: 0; margin: 0 0.4rem 0 0; font-size: 1.4rem; font-weight: 500; }
.header-widgets .social-header { display: inline-block; padding-right: 2rem; }
.header-widgets .social-row { display: inline-block; list-style: none; padding: 0; margin: 0; }
.header-widgets .social-row li { display: inline-block; list-style: none; }
.header-widgets .social-row li a { display: inline-block; list-style: none; font-size: 1.6rem; color: var(--primary-color); }

#header-search-wrapper::before { content: ""; position: absolute; left: -1rem; top: 1rem; bottom: 1rem; background-color: var(--primary-color); width: 1px; }
#header-search-wrapper { position: relative; display: inline-block; width: calc(var(--header-height) / 2); height: var(--header-height); text-align: center; z-index: 20; line-height: var(--header-height); }
#header-search-wrapper #search-toggle { font-size: 1.5em; color: var(--primary-color); transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; cursor: pointer; border:none; background:none; }
#header-search-wrapper:hover #search-toggle, #header-search-wrapper.open #search-toggle { color: var(--secondary-color-text); }

#main-header-wrapper { height: auto; display: block; padding: 1rem; }
#main-menu-wrapper { background-color: var(--primary-color); } 
#main-menu { display: block; height: auto; justify-content: left; list-style: none; padding: 1rem; margin-bottom: 0; margin-top: 0; align-items: center; }
#main-menu > li { display: inline-block; }
#main-menu > li:first-child > a { padding:  1rem 1rem 1rem 0; }
#main-menu > li > a { position: relative; font-size: 1rem; color: var(--primary-color-text); padding: 1rem; font-weight: 400; }
#main-menu > li:hover a, #main-menu li.current_page_item > a { text-decoration: none; }

#main-menu > li.menu-item-has-children > a:after { content: "\ec3a"; display: inline-block; margin-left:0.6em; font-size:0.6em; font-family:'Linearicons'; }
#main-menu > li:hover > .sub-menu {  -webkit-animation-name: slideMenu; animation-name: slideMenu; -webkit-animation-duration: .50s; animation-duration: .50s; -webkit-animation-fill-mode: both; animation-fill-mode: both;}
#main-menu li .sub-menu { -webkit-animation-name: slideMenuRevert; animation-name: slideMenuRevert; -webkit-animation-duration: .15s; animation-duration: .15s; -webkit-animation-fill-mode: both; animation-fill-mode: both;}

#main-menu .sub-menu {  position: absolute; left: 6em; right: -6em; top: -0.2em; visibility:hidden; display:block; opacity:0; position: absolute; background-color: #fff; padding: 0 0.5em 0 0 ; box-shadow: 0 0.2em 0.1em rgba(0,0,0,0.1); border:1px solid #ddd; border-radius: 0 0 0.1em 0.1em; transition:all 0.25s ease-out;}
#main-menu > li > .sub-menu { visibility: hidden; display: block; opacity:0; position: absolute; right: -1em; left:-1em; top: var(--header-main-height); list-style: none; z-index: 10; background-color: #fff; padding: 0; box-shadow: 0 0.2em 0.1em rgba(0,0,0,0.1); border:1px solid #ddd; border-radius: 0 0 0.1em 0.1em; transition:all 0.25s ease-out;}
#main-menu > li > .sub-menu li a { display: block; font-weight: 400; padding: 1em; line-height: 1.2em; transition:all 0.2s ease-in; }
#main-menu > li > .sub-menu li a:hover { color:var(--primary-color); text-decoration:none; transition:all 0.2s ease-out;}

#main-menu .menu-item-has-children { position: relative; }
#main-menu > li > .sub-menu li.menu-item-has-children > a:after { position: relative; content:"\ec3c"; left: 0.6em; font-size: 0.6em; font-family: 'Linearicons'; font-weight: 600; }

#main-menu > li > .sub-menu > li:hover > .sub-menu { -webkit-animation-name: slideMenu; animation-name: slideMenu; -webkit-animation-duration: .50s; animation-duration: .50s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
#main-menu > li > .sub-menu > li > .sub-menu > li:hover > .sub-menu { -webkit-animation-name: slideMenu; animation-name: slideMenu; -webkit-animation-duration: .50s; animation-duration: .50s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

#logo-wrapper { position: relative; display: inline-block; padding: 0; }

#mobile-menu-toggle { display:none; position: absolute; height: auto; cursor: pointer; z-index: 3; width: var(--header-height); padding: 1em; right: 0; top: 50%; transform: translateY(-50%); }
#mobile-menu-toggle span { height: 3px; background-color: var(--primary-color); width: calc((var(--header-height)) / 2); 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: relative; padding: 1rem; }
#main-menu-offcanvas #mobile-menu { padding: 0; list-style: none; }
#main-menu-offcanvas #mobile-menu li  { padding: 0.3rem 0; font-size: 1rem; font-family: var(--text-alt-font); }
#main-menu-offcanvas #mobile-menu li a { font-size: 1rem; font-family: var(--text-alt-font); }
#main-menu-offcanvas #mobile-menu .sub-menu { padding: 0 0 0 1rem; margin: 0.5rem 0; list-style: none; border-left: 2px solid var(--primary-color-variant-2); }

#main-menu-offcanvas .social-header { display: inline-block; padding: 0 0 0 1rem; }
#main-menu-offcanvas .social-header h2 { display: inline-block; }
#main-menu-offcanvas .social-header .social-row { display: inline-block; list-style: none; padding: 0; margin: 0; }
#main-menu-offcanvas .social-header .social-row li { display: inline-block; list-style: none; }
#main-menu-offcanvas .social-header .social-row li a { display: inline-block; list-style: none; font-size: 1.6rem; color: var(--primary-color); }


/*Main slider*/
#slider-wrapper { position: relative; height: 500px; }

#slider, .widget-slider { position: relative; background-color: #efefef; height: 100%; }
#slider .carousel-inner, .widget-slider .carousel-inner { height: 100%; position: relative; width: 100%; }
#slider .carousel-inner > .carousel-item, .widget-slider .carousel-inner > .carousel-item { height: 100%; }
#slider .slide, .widget-slider .slide { background-attachment: scroll; background-color: transparent; background-position: center; background-repeat: no-repeat; background-size: cover; position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
#slider .slide img, .widget-slider .slide img { max-width: 100%; max-height: 100%; width: 100%; height: auto; opacity: 0; }
#slider .slide figcaption, .widget-slider .slide .slide figcaption { position: absolute; right: 0; bottom: 0; z-index: 10; font-size: 0.6em; padding: 0.2em; text-transform: uppercase; background-color: rgba(255, 255, 255, 0.5); line-height: 1em; }
#slider .carousel-item .slide-cover { background-color: rgba(54, 91, 10, 0.2); position: absolute; z-index: 1; top: 0; right: 0; left: 0; bottom: 0; }
#slider .carousel-item .carousel-caption { position: absolute; z-index: 2; top: 0; right: 0; left: 0; bottom: 0; padding: 0; }
#slider .carousel-item .carousel-caption > .container-fluid, #slider .carousel-item .carousel-caption > .container-fluid > .row { height: 100%; }
#slider .carousel-item .carousel-caption .carousel-caption-content-wrapper { position: relative; display: table; height: 100%; background-color: rgba(var(--secondary-color-dark-rgb), 0.5); text-align: left; }
#slider .carousel-item .carousel-caption .carousel-caption-content-wrapper > .align-middle { display: table-cell; }
.carousel-indicators { position: absolute; bottom: 5px; top: auto; margin: 0; z-index: 3; }
.carousel-indicators li { width: 1em; height: 1em; border: 1px solid #fff; margin: 2px; }

#slider .carousel-item .slider-text .carousel-caption-content-wrapper .eyelet { font-size: 1.5rem; font-weight: 600; text-transform: uppercase; margin-bottom: 1.2rem; color: var(--primary-color-text); }
#slider .carousel-item .slider-text .carousel-caption-content-wrapper .title { font-size: 2.8rem; font-weight: 600; margin-bottom: 1rem; color: var(--primary-color-text); }
#slider .carousel-item .slider-text .carousel-caption-content-wrapper { color: var(--secondary-color); z-index: 2; }
#slider .carousel-item .slider-text .carousel-caption-content-wrapper a { color: var(--primary-color-text); font-weight: 500; }
#slider .carousel-item .slider-text::before { position: absolute; left: 0; top: 0; bottom: 0; right: 50%; content: ""; background:url(img/slider-bg.png); background-repeat: no-repeat; background-size: cover; z-index: 1; }
.carousel-control-next, .carousel-control-prev { width: 8%; color: #000000; z-index: 100; filter: invert(1) grayscale(100); }

/*BR*/
.snap-slider-wrapper .snap-slider-control .snap-slider-control-left { left: 0; }
.snap-slider-wrapper .snap-slider-control .snap-slider-control-right { right: 0; }

/*BR Element*/
.br-element { height: 500px; background-color: var(--background-color); border-radius: var(--standard-border-radius); padding: 1rem; }
.br-element h3 { font-size: 1.4rem; font-weight: 500; }
.br-element figure { border-radius: var(--standard-border-radius); margin-bottom: 0.5rem; }
.br-element .date { display: block; color: var(--background-color-text); opacity: 0.8; margin-bottom: 0.5rem }
.br-element .br-body a.link { font-weight: 600; display: block; position: absolute; left: 0; right: 0; bottom: 0; padding: 1em; text-align: left; display: block; background: linear-gradient(to top, #ffffff 85%, transparent); border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius); line-height: 1em; }
.br-element .br-body a.link:hover { text-decoration: none !important; }

/*Deco title*/
.deco-title { font-weight: 300; color: var(--background-color-text); letter-spacing: normal; }
.deco-title .sub { font-weight: 600; }
.deco-title .eyelet { color: var(--background-color-text); font-weight: 400; }

/*Image Block*/
.image-block-wrapper { margin-bottom: var(--standard-margin); }
.image-block-wrapper figure.aspect-image { padding: 1rem; margin-bottom: 4rem; border-radius: 50%; padding-bottom: 2rem; }
.image-block-wrapper h3 { font-size: 1.4rem; font-weight: 500; }
.image-block-wrapper .icon { width: 100px; height: 100px; z-index: 1; aspect-ratio: 1; display: block; position: absolute; bottom: -3rem; right: 2rem; background-color: var(--primary-color-variant-2); border-radius: 50%; -moz-transition: all .25s ease-in;-o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.image-block-wrapper .icon img { opacity: 1; aspect-ratio: 1;  width: 100px; height: 100px; object-fit: contain; padding: 1rem; }
.image-block-wrapper a { color: var(--background-color-text); font-weight: 500; }
.image-block-wrapper a:hover { color: var(--background-color-text-variant); text-decoration: none; }
.image-block-wrapper:hover .icon { bottom: -2rem; -moz-transition: all .25s ease-in; -o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }

/*Link Block*/
.link-block-wrapper { position: relative; height: 200px; padding: 2rem; margin-bottom: 2rem; background-color: #3abff0; overflow: hidden; border-radius: var(--standard-border-radius); }
.link-block-wrapper::after { content: ""; position: absolute; right: -1rem; top: -2rem; width: 180px; height: 180px; background-position: center; background-size: contain; background-image: url('img/block-flower.png'); opacity: 0.1; pointer-events: none; }
.link-block-wrapper a { display: block; color: var(--primary-color-text); }
.link-block-wrapper a:hover { text-decoration: none; }

.link-block-wrapper h3 { font-size: 1.5rem; color: var(--primary-color-text); margin-bottom: 0; padding-bottom: 1rem; font-weight: 600; }
.link-block-wrapper p { margin-bottom: 0; padding-bottom: 1rem; }
.link-block-wrapper i { position: absolute; right: 1rem; bottom: 1rem; }

/*Links home*/
.links-home { position: absolute; left: 10rem; right: 10rem; transform: translateY(-50%); z-index: 5; background-color: var(--background-color); -webkit-box-shadow: 0px 4px 8px 2px rgba(0,0,0,0.4); box-shadow: 0px 4px 8px 2px rgba(0,0,0,0.4); border-radius: 2px; }
.links-home .link-home-item { display: flex; padding: 1rem; }
.links-home .link-home-item:hover { background-color: var(--primary-color-alpha); text-decoration: none; border-radius: 2px; }
.links-home .link-home-item .link-icon, .links-home .link-home-item .link-text, .links-home .link-home-item .link-arrow { display: inline-block; vertical-align: middle; }
.links-home .link-home-item .link-icon { width: 3.8rem; height: 3.8rem; padding: 0.8rem; margin-right: 1rem; aspect-ratio: 1; background-color: var(--primary-color-variant-2); color: var(--primary-color-text); border-radius: 50%; font-size: 1.8rem; line-height: 1.8rem; align-content: center; }
.links-home .link-home-item .link-text { flex: fit-content; margin-right: 1rem; }
.links-home .link-home-item .link-text h4 { margin-bottom: 0; color: var(--background-color-text); font-weight: 600; }
.links-home .link-home-item .link-text p { margin-bottom: 0; color: var(--background-color-text); }
.links-home .link-home-item .link-arrow { color: var(--background-color-text); align-content: center; }

/*Breadcrumbs*/
#bcrumbs-wrapper { border-bottom: 1px solid var(--background-color-text-variant); text-align: left; margin-bottom: 2rem; }
.breadcrumbs { padding: 1rem 0; }
.breadcrumbs ol { text-align: left; }
.breadcrumbs ol li > a, .breadcrumbs ol li > span { color: var(--background-color-text); }
.breadcrumbs ol li::after { color: var(--background-color-text); background-color: var(--background-color-text); }

/*Sidebar*/
.sidebar { padding-bottom: var(--standard-margin); }
.sidebar .sidebar-widget > ul { list-style: none inside; padding: 0; margin: 0; }
.sidebar .sidebar-widget > ul > li { display: block; margin: 0 -1rem; padding: 1rem; border-bottom: 1px solid #e5e5e5; }
.sidebar .attachments-wrapper, .sidebar .links-wrapper  { margin-bottom: 2rem; }

/*Single*/
.single figure.aspect-image { border-radius: var(--standard-border-radius); }

/*Single staff*/
ul.staff_items { padding: 0; list-style: none; }
ul.staff_items li a { display: block; padding: 0.5rem 0; }

/*Staff item wrapper*/
.staff-item-wrapper { display: block; }
.staff-item-wrapper figure { border-radius: var(--standard-border-radius); -moz-transition: all .25s ease-in; -o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in; }
.staff-item-wrapper h3 { font-size: 1.2rem;}
.staff-item-wrapper:hover { text-decoration: none; }
.staff-item-wrapper:hover figure { scale: 1.08; -moz-transition: all .25s ease-in; -o-transition: all .25s ease-in; -webkit-transition: all .25s ease-in; transition: all .25s ease-in;  }
.staff-item-wrapper:hover h3 { text-decoration: none; }

/*Soc Trasp*/
.post-soc-trasparente-tipologia-children { padding: 0 0 0 2.5rem; border-left: 2px solid var(--primary-color-variant-2); list-style: none; }
.post-soc-trasparente-tipologia-children li:before { content: ''; font-family: 'Font Awesome 7 Free'; margin-left: -1.7em; margin-right: 0.5em; color: #44a82c; font-weight: bold; }

.soc-trasparente-summary ul.soc-trasparente-summary-sublist li { padding: calc(0.5 * var(--bs-gutter-x)) calc(0.5 * var(--bs-gutter-x)) calc(0.5 * var(--bs-gutter-x)) calc(1 * var(--bs-gutter-x)); }
.soc-trasparente-summary ul.soc-trasparente-summary-sublist li a { font-size: 0.9rem; }

.post-soc-trasparente-tipologia-posts { border-left: 1px dashed #76b83c; padding: calc(var(--standard-margin)/3) 0 0 0.8rem; }
.post-soc-trasparente-tipologia-posts .post.type-post.hentry { padding-bottom: calc(var(--standard-margin)/2); }

.archive .post-soc-trasparente-tipologia-children .post-soc-trasparente-tipologia-child { font-size: 1rem; }

.entry-attachments li { padding: 0.5rem 0; }

.single-post-soc-trasparente .post-meta, .post-soc-trasparente-tipologia-posts .post-meta { list-style: none; }

/*Footer*/
#main-footer { background-color: var(--primary-color); padding: 4rem 0; }
#main-footer * { color: var(--primary-color-text); }
#main-footer h2 { font-size: 1.5rem; padding-bottom: 1rem; font-weight: 600; border-bottom: 1px solid var(--background-color-alpha); }
#main-footer ul { padding: 0; list-style: none; }
#main-footer .logo { height: 70px; }

#main-footer hr { border-top: 1px solid var(--background-color-alpha); margin: 1.5rem 0; opacity: .5; }

#bottom-menu { text-align: left; list-style: none; padding: 0; }
#bottom-menu li { display: inline-block; margin-right: 1.5rem; }
#bottom-menu li:last-child { margin-right: 0; }

/*Misc*/
#aitec-credits { text-align: left; color: var(--primary-color-text); }
#aitec-credits .aitec-svg-logo { width: 66px; height: auto; }

.post-meta { border-top: 1px dashed var(--background-color-text); padding: 1rem 0; opacity: 0.8; }

ul.check { list-style: none; padding-left: 1.5em; text-indent: 2px; list-style: none; list-style-position: outside; }
ul.check li:before { content: '✔'; margin-left: -1.5em; margin-right: 0.5em; color: #44a82c; }

ul.anchor { list-style: none; padding-left: 1.5em; text-indent: 2px; list-style: none; list-style-position: outside; }
ul.anchor li:before { content: ''; font-family: 'Font Awesome 7 Free'; margin-left: -1.7em; margin-right: 0.5em; color: #44a82c; font-weight: bold; }

#accessibility-switch { position: fixed; bottom: 1em; right: 1em; font-size: 3em; border: 0; background: blue; width: 1.4em; height: 1.4em; line-height: 1em; text-align: center; padding: 0; border-radius: 50%; color: #fff; }
#accessibility-switch:hover { background:green; }

.flower-deco { position: relative !important; }
.flower-deco::before { content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); height: 150%; width: 100%; background-position: right; background-size: contain; background-image: url('img/flower-deco.png'); background-repeat: no-repeat; } 