/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* ==========================================================================
   Gemeral Styles
   ========================================================================== */
html {
  scroll-padding-top: 80px;
}
body {
  color: #494741;
  overflow-x: hidden !important;
}
a {
  cursor: pointer; 
  transition: .5s all ease-in-out;
}
p, ul, ol {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 18px;
  font-weight: 400;
  margin: 10px 0 15px 0;
  line-height: 150%;
}
p a {
  text-decoration: none;
  border-bottom: 1px solid #494741;
}
p a:hover {
  text-decoration: none;
  border-bottom: 1px solid #6D90A7;
}
strong, .strong {
  font-weight: 600 !important;
}
.small, .small p, small, figcaption {
  font-size: 16px !important;
  line-height: 150%;
}
.smaller, .smaller p {
   font-size: 14px !important;
  line-height: 130%;
}
.elementor-widget ul, .elementor-widget ol {
  margin-bottom: 10px !important;
}
.elementor-widget ul li, .elementor-widget ol li {
  font-size: 18px !important;
  margin: 5px 0 !important;
  line-height: 130% !important;
}
.page-text.elementor-widget ul, .page-text.elementor-widget ol {
  margin-bottom: 15px !important;
}
.page-text.elementor-widget ul li, .page-text.elementor-widget ol li {
  margin: 10px 0 !important;
}
.elementor-widget ul li::marker {
  font-size: 16px !important;
}
.elementor-text-editor ul, .single .elementor-widget-container ul {
  margin-bottom: 15px;
}
.elementor-element a, .elementor-element a:hover, .elementor-widget-text-editor a, .elementor-widget-text-editor a:hover, .elementor-text-editor a, .elementor-text-editor a:visited, .elementor-tab-content a, .elementor-tab-content a:visited, , .post a, .post a:visited {
  /* links are styled in Elementor settings
  text-decoration: underline !important;
   color: #307DB7 !important;*/
}
.center {
  text-align: center;
}
.grecaptcha-badge, .gm-style .navigate, .gm-style .place-card {
    display: none !important;
}
h1, h2, h3, h4, h5, h6 {
  color: #494741;
  font-family: "freight-sans-pro", sans-serif;
  font-weight: 300 !important;
  line-height: 130% !important; 
  margin: 10px 0 5px 0;
  margin: 0 auto;
}
.single-post h2, .single-post h3, .single-post h4, .single-post h5, .single-post h6 {
  margin-top: 20px !important;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited {
  color: #494741 !important;
  transition: color 0.5s ease;
}
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, h1 a:active, h2 a:active, h3 a:active, h4 a:active, h5 a:active, h6 a:active {
   color: #6D90A7 !important;
   text-decoration: none !important;
}
.white p, .white .elementor-text-editor ul li, .white .elementor-text-editor ol li, .white .single .elementor-widget-container ul li, .white .single .elementor-widget-container ol li, .white p, .white ul li, .white h1, .white h2, .white h3, .white h4, .white h5, .white h6 {
  color: #FFF;
}
.white a, .white .elementor-heading-title a, .white .elementor-text-editor a, .white .elementor-text-editor a:visited, .white .elementor-slide-heading, .white p a, .white ul li a, .white h1 a, .white h2 a, .white h3 a, .white h4 a, .white h5 a, .white h6 a {
  color: #FFF !important;
  transition: color 0.5s ease;
}
.white a:hover, .white .elementor-heading-title a:hover, .white .elementor-text-editor a:hover, .white .elementor-text-editor a:active, .white p a:hover, .white ul li a:hover, .white h1 a:hover, .white h2 a:hover, .white h3 a:hover, .white h4 a:hover, .white h5 a:hover, .white h6 a:hover {
  color: #E4EDF0 !important;
}
.white p a {
  text-decoration: none;
  border-bottom: 1px solid #FFF;
}
.white p a:hover {
  text-decoration: none;
  border-bottom: 1px solid #E4EDF0;
}
.serif, .serif p, p.serif {
  font-family: "freight-sans-pro", sans-serif !important;
}
h1, .h1 h2, h2.h1 {  
  font-size: 35px !important;
  line-height: 100% !important;
}
h1.serif, h1 .serif, .serif h1, .serif h2.h1, .h1.serif h2 {
  font-family: "freight-display-pro", serif !important;
}
h1 .small, h1 small {
  font-size: 25px !important;
}
h2, .h2 h1, .h2 h3, .h2 p {
  font-size: 30px !important;
  line-height: 130% !important;
}
h2.serif, h2 .serif, .serif h2, .serif h2.h3, .serif .h3 h2 {
  font-family: "freight-display-pro", serif !important;
}
h3, h2.h3, .h3 h2, .h3 h1, .h3 p {
  font-size: 27px !important;
  line-height: 120% !important;
}
h3.serif, h3 .serif, .serif h3 {
  font-family: "freight-display-pro", serif !important;
}
h4, .h4 h3, h3.h4, .h4 h2, h2.h4, .h4 h3 {
  font-size: 25px !important;
}
h5, .h5 h6, h6.h5, .h5 h3, h3.h5, .h5 h4, h4.h5 {
  font-size: 23px !important;
}
h6, .h6 h1, .h6 h2, h3.h6, .h6 h3, .h6 h2 {
  font-size: 20px !important;
  font-weight: 600 !important;
}
span.all-break {
  display: block !important;
}
span.break-mobile {
  display: block !important;
}
span.nobreak {
  display: inline-block;
}
@media only screen and (min-width: 767px) {
  span.break {
    display: block !important;
  }
  span.break-mobile {
    display: inline-block !important;
  }
  p, ul, ol {
    font-size: 20px;
  }
  .small, .small p, small, figcaption {
    font-size: 18px !important;
  }
  .elementor-widget ul li, .elementor-widget ol li {
    font-size: 20px !important;
  }
}
@media only screen and (min-width: 1025px) {  
  .big p, p.big, .bigger p, p.bigger {
    font-size: 22px;
    line-height: 150% !important;
  }
  h1, .h1 h2, h2.h1 {  
    font-size: 50px !important;
    line-height: 120% !important;
  }
  h1 .small, h1 small {
    font-size: 30px !important;
  }
  h2, .h2 h1, .h2 h3, .h2 p {
    font-size: 35px !important;
    line-height: 130% !important;
  }
  h3, h2.h3, .h3 h2, .h3 h1, .h3 p {
    font-size: 28px !important;
  }
  h4, .h4 h3, h3.h4, .h4 h2, h2.h4, .h4 h3 {
    font-size: 26px !important;
  }
  h5, .h5 h6, h6.h5, .h5 h3, h3.h5, .h5 h4, h4.h5 {
    font-size: 24px !important;
  }
  h6, .h6 h1, .h6 h2, h3.h6, .h6 h3, .h6 h2 {
    font-size: 22px !important;
  }
  .single-post h2, .single-post h3, .single-post h4, .single-post h5, .single-post h6 {
    margin-top: 30px !important;
  }
}
@media only screen and (min-width: 1300px) {
  .bigger p, p.bigger {
    font-size: 25px;
    line-height: 150% !important;
  }  
  h1, .h1 h2, h2.h1 {  
    font-size: 55px !important;
    line-height: 120% !important;
  }
  .big h1, .big.serif.h1 h2 {
    font-size: 60px !important;
  }
  h1 .small, .big h1 .small, .big h1 small {
    font-size: 35px !important;
  }
  h2, .h2 h1, .h2 h3, .h2 p {
    font-size: 40px !important;
    line-height: 130% !important;
  }
  h3, h2.h3, .h3 h2, .h3 h1, .h3 p {
    font-size: 30px !important;
  }
}
/* ==========================================================================
   Header
   ========================================================================== */
.elementor-nav-menu .sub-arrow {
  font-size: 10px !important;
  padding-left: 5px !important;
}
.elementor-nav-menu a:hover {
  text-decoration: none !important;
}
.header .elementor-menu-toggle svg {
  fill: #FFF !important;
}
.header.onlight .elementor-menu-toggle svg {
  fill: #494741 !important;
}
.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active+.elementor-nav-menu__container {
  animation: hide-scroll .7s backwards !important;
}
.sticky-logo img, .header {
  transition: .5s all ease-in-out;
}
.header ul.elementor-nav-menu li {
  margin: 0 auto !important;
}
.elementor-sticky--effects.header .elementor-nav-menu--dropdown {
  margin-top: -10px !important;
}
.elementor-sticky--effects .sticky-logo img {
  max-width: 280px !important;
}
.elementor-sticky--effects.header {
  min-height: 80px !important;
  height: 80px !important;
  grid-template-rows: 80px !important;
  background-color: #FAF8F2;
}
.header .elementor-nav-menu .elementor-nav-menu--dropdown .sub-item a {
  text-transform: none !important;
  letter-spacing: normal !important;
  padding-left: 20px !important;
  font-size: 16px !important;
  transition: all .7s ease-in-out;
}
.elementor-nav-menu--dropdown {
  padding: 10px 0;
}
.sub-menu, .sub-menu li {
  min-width: 160px !important;
}
.sub-menu, .sub-menu li a {
  border-left: 0 !important;
}
.sub-menu li.explore a {
  font-weight: 700 !important;
}
.header .elementor-menu-toggle {
  padding: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .header .elementor-nav-menu--dropdown:not(.sub-menu) {
    min-height: 100vh !important;
  }
}
@media only screen and (min-width: 1024px) {
  .sub-menu {
    border-radius: 10px !important;
    padding: 10px 0 !important;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  }
  .sub-menu li.explore a {
    border-bottom: 1px solid #E2DEDC !important;
  }
}
/* ==========================================================================
   Underline Effect
   ========================================================================== */
.header a:hover {
  text-decoration: none !important;
}
@media only screen and (min-width: 1025px) {
  .header nav > ul {
      justify-content: space-between;
  }
  .header nav > ul.elementor-nav-menu.elementor-nav-menu.elementor-nav-menu > li:not(.button) {
      position: relative;
      z-index: 1;
      flex-grow:0;
      margin: 0 10px !important;
  }
  .header nav > ul > li:not(.button)::before {
    content:'';
    position:absolute;
    width: 100%;
    height:1px; /* How thick the line is */
    background-color: #6D90A7 !important; /* Color of the line */
    transition: transform 1s cubic-bezier(1, 0, 0, 1); /* Adjust the transition duration and timing function here , use website cubic-bezier.com for a fancy timing function */
    bottom:5px; /* Vertical positioning of the line*/
    opacity: 1 !important; /* !important is only needed for nav menu element , you can delete it for the others */
    left:0;
    z-index: -3;
    transform: scaleX(0);
    transform-origin:right;
  }
  .header nav > ul > li:not(.button):hover::before, .header nav > ul > li.current_page_item:not(.button)::before, .header nav > ul > li.current-page-ancestor:not(.button)::before, .single-post .header nav > ul > li.insights::before, .header nav > ul > li.current-page-ancestor::before, 
  .page-id-1291 .header nav > ul > li.desk-item::before, .page-id-1293 .header nav > ul > li.desk-item::before, .page-id-1295 .header nav > ul > li.desk-item::before, .page-id-1297 .header nav > ul > li.desk-item::before, .page-id-1299 .header nav > ul > li.desk-item::before, .page-id-1301 .header nav > ul > li.desk-item::before, .page-id-1303 .header nav > ul > li.desk-item::before, .page-id-1305 .header nav > ul > li.desk-item::before {
    transform:scaleX(1);
    transform-origin:left;
  }
  .header nav > ul.elementor-nav-menu.elementor-nav-menu.elementor-nav-menu > li:not(.button) > a {
    margin-inline-end:0px;
    margin-inline-start:0px;
  }
  .header .elementor-nav-menu:after {
      content: none;
  }
}
@media only screen and (min-width: 1200px) {
  .header nav > ul.elementor-nav-menu.elementor-nav-menu.elementor-nav-menu > li:not(.button) {
      margin: 0 15px !important;
  }
}
@media only screen and (min-width: 1300px) {
  .header nav > ul.elementor-nav-menu.elementor-nav-menu.elementor-nav-menu > li:not(.button) {
      margin: 0 20px !important;
  }
}

/* ==========================================================================
   Buttons
   ========================================================================== */
/* Form + Button Custom Styles */
.elementor a.elementor-button {
  font-family: "freight-sans-pro", sans-serif !important;
  font-weight: 500 !important;
  line-height: normal !important;
  font-size: 16px;
  background: #E1E1D4;
  text-decoration: none !important;
  color: #494741;
  padding: 15px 25px!important;
  transition: all .7s ease-in-out; 
  border: none;
  border-radius: 50px;
}
.elementor a.elementor-button:hover {
  color: #494741;
  background: #C7C7B0;  
}
.elementor .round {
  position: absolute;
  bottom: 30px;
  right: 30px;
}
.elementor .round a.elementor-button {
  padding: 0px !important;
  width: 40px !important;
  height: 40px !important;
}
.elementor .round a.elementor-button .elementor-button-content-wrapper {
  margin-top: 10px !important;
}
input.elementor-field-textual, textarea.elementor-field-textual, .elementor-field-type-select select {
  padding: 10px 15px !important;
}
input.elementor-field-textual::placeholder, textarea.elementor-field-textual::placeholder { 
  opacity: .8 !important;
}

/* ==========================================================================
   Overview
   ========================================================================== */
.columns p {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
@media only screen and (min-width: 768px) {
  .twocols {
      -webkit-column-count: 2;
      -moz-column-count: 2;
      column-count: 2;
      column-gap: 40px;
  }
  .twocols p:first-of-type {
    margin-top: 0px !important;
  }
}

/* ==========================================================================
   Home Page - Event block
   ========================================================================== */

.event-carousel .swiper-pagination, .media-carousel .swiper-pagination {
  width: 100% !important;
  text-align: right !important;
  border-top: 1px solid #E2DEDC !important;
  padding-top: 15px !important;
}
.event-block.elementor-widget-call-to-action {
  height: 100% !important;
}
.event-block .elementor-cta {
  height: 100% !important;
}
.event-block .elementor-cta__content {
  border-radius: 10px;
  position: relative;
  background-color: #E4EDF0;
  background-image: linear-gradient(135deg, #E4EDF0 0%, #B0C4D3 100%) !important;
  transition: all .7s ease-in-out;
}
.event-block .elementor-cta__description {
  position: absolute;
  bottom: 25px;
  left: 25px;
  margin-bottom: 0 !important;
  line-height: 100% !important;
  width: calc(100% - 40px);
}
.elementor .event-block a.elementor-cta__button.elementor-button, .elementor .event-block span.elementor-cta__button.elementor-button {
  background-image: url('images/lnr-arrow-out.png') !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 16px 16px !important;
  padding: 0 !important;
  width: 40px !important;
  height: 40px !important;
  background: #E5EEF1;
  border-radius: 50px !important;
  border: none !important;
}
.event-block .elementor-cta__button-wrapper {
  width: 40px !important;
  position: absolute;
  bottom: 25px;
  right: 25px;
}
.elementor .event-block a.elementor-cta__button.elementor-button:hover {
  background: #FFF;
}
@media only screen and (max-width: 1300px) {  
  .event-block h3 {
    font-size: 22px !important;
 }
}
@media only screen and (max-width: 767px) {  
  .event-block h3 {
    font-size: 25px !important;
 }
}
@media only screen and (min-width: 1300px) {
  .event-block .elementor-cta__description {
    font-size: 20px !important;
  }
}

/* ==========================================================================
   Home Page - Media block
   ========================================================================== */
.media-block, .pod-block {
  background: #FFF;
  padding: 25px !important;
  border-radius: 10px;
}
.pod-block {
  transition: .5s all ease-in-out;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
}
.pod-block:hover {
   box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); 
}
.media-block img, .pod-block img {
  width: 100% !important;
  height: auto !important;
}
/*.media-block.elementor-widget-call-to-action {
  height: 100% !important;
}*/
/*.media-block .elementor-cta {
  height: 100% !important;
}*/
.media-block .elementor-cta__image {
  margin-bottom: 50px !important;
}
.media-block.elementor-cta--skin-classic .elementor-cta__content, .pod-block.elementor-cta--skin-classic .elementor-cta__content {
  position: relative;
  padding: 0;
  background: transparent !important;
}
.pod-block.elementor-cta--skin-classic .elementor-cta__content {
  padding-bottom: 40px;
}
.media-block .elementor-cta__description {
  position: absolute;
  bottom: 0px;
  left: 0px;
  margin: 10px 0 !important;
  line-height: 100% !important;
  width: calc(100% - 40px);
}
.pod-block .elementor-cta__description {
  font-size: 18px;
}
.elementor .media-block a.elementor-cta__button.elementor-button, .elementor .media-block span.elementor-cta__button.elementor-button,
.elementor .pod-block a.elementor-cta__button.elementor-button, .elementor .pod-block span.elementor-cta__button.elementor-button {
  background-image: url('images/lnr-arrow-out.png') !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 16px 16px !important;
  padding: 0 !important;
  width: 40px !important;
  height: 40px !important;
  background: #E1E1D4;
  border-radius: 50px !important;
  border: none !important;
}
.elementor .pod-block.cat-block a.elementor-cta__button.elementor-button, .elementor .pod-block.cat-block span.elementor-cta__button.elementor-button {
  background-image: url('images/lnr-arrow-right.png') !important;
  }
.media-block .elementor-cta__button-wrapper, .pod-block .elementor-cta__button-wrapper {
  width: 40px !important;
  position: absolute;
  bottom: 0px;
  right: 0px;
}
.elementor .media-block a.elementor-cta__button.elementor-button:hover, .elementor .pod-block a.elementor-cta__button.elementor-button:hover {
  background: #C7C7B0;
}
@media only screen and (min-width: 1300px) {
  .media-block .elementor-cta__description {
    font-size: 20px !important;
  }
}

/* ==========================================================================
   Books
   ========================================================================== */
.e-n-menu-toggle, .e-n-menu-item {
  transition: all .5s ease-in-out;
}
.buy-menu {
  min-width: 200px !important;
  margin-top: -15px !important;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  padding-top: 5px !important;
}
/* ==========================================================================
   Form
   ========================================================================== */
.underline-field .elementor-field-textual {
  padding-left: 5px !important;
  padding-right: 5px !important;
}
select#slct {
  font-family: "freight-sans-pro", sans-serif;
  font-weight: 300;
  font-size: 20px;
  padding: 10px 15px !important;
  border: 0;
  background: #FFF;
  border-radius: 5px;
  border: none;
  min-width: 250px;
}
.select-container {
  background: #FFF;
  border-radius: 5px;
  border: 1px solid #000;
  padding-right: 10px; 
}
select:focus {
  outline: none !important;
}

/* ==========================================================================
   News
   ========================================================================== */
.desk-cat-block {
  background: #FFF; /*#E4EDF0;*/
  border-radius: 100px;
  transition: 1s all ease-in-out;
  border: 1px solid #E2DEDC !important;
}
.desk-cat-block:hover, .current.desk-cat-block {
  background: #FFF;
  border: 1px solid #96938F !important;
}
.desk-cat-block.elementor-cta--skin-classic .elementor-cta__content {
  position: relative;
  padding: 0;
  background: transparent !important;
}
.desk-cat-block .elementor-cta__description {
  position: absolute;
  bottom: 0px;
  left: 0px;
  margin: 0 !important;
  line-height: 100% !important;
  width: calc(100% - 40px);
}
.elementor .desk-cat-block a.elementor-cta__button.elementor-button, .elementor .desk-cat-block span.elementor-cta__button.elementor-button {
  background-image: url('images/lnr-arrow-right.png') !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 16px 16px !important;
  padding: 0 !important;
  width: 40px !important;
  height: 40px !important;
  background: #FFF; /*#B0C4D3;*/
  border-radius: 100px !important;
  border: none !important;
  /*border: 1px solid #E2DEDC !important;*/
}
.elementor .current.desk-cat-block a.elementor-cta__button.elementor-button, .elementor .current.desk-cat-block span.elementor-cta__button.elementor-button {
  background-image: url('images/lnr-arrow-down.png') !important;
  }
.desk-cat-block .elementor-cta__button-wrapper {
  width: 40px !important;
  position: absolute;
  line-height: 100% !important;
  top: 50%;
  margin-top: -20px;
  right: 15px;
}
.desk-cat-block .elementor-cta__title {
  font-size: 22px !important;
  margin: 0 !important;
  line-height: 130%;
  width: calc(100% - 50px);
  color: #494741;
  font-family: "freight-sans-pro", sans-serif;
  font-weight: 300 !important;
}
.elementor .desk-cat-block a.elementor-cta__button.elementor-button:hover {
  background: #96938F /*#8FAABE;*/
  /*border: 1px solid #96938F !important;*/
}

/* ==========================================================================
   Posts
   ========================================================================== */

.elementor-toc__body {
  padding-top: 0;
}
.elementor-widget ul li.elementor-toc__list-item {
  margin-bottom: 18px !important;
  font-size: 18px !important;
}
.elementor-widget ul li.elementor-toc__list-item a {
  padding-left: 25px !important;
}
li.elementor-toc__list-item a:hover {
}
li.elementor-toc__list-item a.elementor-item-active {
  background-image: url('images/lnr-arrow-right.png') !important;
  background-repeat: no-repeat !important;
  background-position: 0 3px !important;
  background-size: 16px 16px !important;
}
.elementor-widget-post-info {
  padding: 20px 10px 10px 10px;
  border-top: 1px solid #E2DEDC;
  border-bottom: 1px solid #E2DEDC;
}
.elementor-inline-items .elementor-icon-list-item {
  font-size: 17px !important;
}
.single-post .elementor-icon-list-item:first-child .elementor-icon-list-text {
  padding-right: 7px !important;
}
.single-post .elementor-icon-list-item:nth-child(2) .elementor-icon-list-text {
  padding-left: 7px !important;
}
a.elementor-post__read-more {
  padding: 15px 25px;
  background: #E1E1D4;
  text-decoration: none !important;
  color: #494741;
  padding: 10px 25px!important;
  transition: all .7s ease-in-out; 
  border: none;
  border-radius: 50px;
}
a.elementor-post__read-more:hover {
  color: #494741;
  background: #C7C7B0;  
}
/* ==========================================================================
   Footer
   ========================================================================== */

.footer p a {
  text-decoration: none;
  border-bottom: none;
}
.footer p a:hover {
  color: #4B6474;
}