:root {
    --tb_preset_orange:#f7be17;
    --tb_preset_yellow:#fff576;
}

html body { background-color:#fff; color: #333; }
h1, h2, h3, h4, h5, h6 { color:#000; }

h2 { font-size: 24px; line-height: 1.2; }
h3 { font-size: 24px; line-height: 1.2; }
a:hover { color: var(--tb_preset_orange); }

input[type="reset"], 
input[type="submit"], 
button, 
.search-course-button { box-shadow: none; }
input[type="reset"]:hover, 
input[type="submit"]:hover, 
button:hover, 
.search-course-button:hover { background: #ffb651; box-shadow: none; }

.point-list { padding: 0; margin: 0 0 20px; }
.point-list li { list-style: none; margin: 0 0 10px; background: url(../images/list-icon.png) 0 7px no-repeat; 
padding-left: 32px; }
.module.module-buttons a { transition: transform 250ms; }
.module-buttons-item .orange:hover { background: #fda11e; box-shadow: none; }
.ui.builder_button:hover { transform: none; }
#footerwrap { padding: 60px 0 0px; }
.footer-text { border-top: 1px solid rgba(247,185,0,0.5); }


.home-contact-form .nf-form-content .list-select-wrap .nf-field-element > div, 
.home-contact-form .nf-form-content input:not([type="button"]), 
.home-contact-form .nf-form-content textarea {
	max-width: 100%;
    height: 50px !important;
    background: #fff;
}

.home-contact-form .nf-form-content textarea {
    min-height: 120px;
}

.home-contact-form .nf-form-content button, 
.home-contact-form .nf-form-content input[type="button"], 
.home-contact-form .nf-form-content input[type="submit"] {
    background-color:#ffdf22;
    border: 0;
    color: #000;
    font-size: 15px;
    padding: 10px 30px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 2px;
    border-radius: 0px;
    min-width: 150px;
}

.home-contact-form .nf-form-content button:hover, 
.home-contact-form .nf-form-content input[type="button"]:hover, 
.home-contact-form .nf-form-content input[type="submit"]:hover {
    background-color: #000;
    border: 0;
    color: #fff;
}
.home-contact-form .nf-form-content label { font-size: 15px; line-height: 20px; font-weight: 600; color: #000; letter-spacing: 0.5px; }
.home-contact-form .nf-before-form-content { display: none; }
.home-contact-form .nf-form-title { display: none; }
.home-contact-form nf-fields-wrap { display: flex;  flex-wrap: wrap; justify-content: space-between; }
.home-contact-form nf-field { width: 100%; }
.home-contact-form nf-field:nth-child(1),
.home-contact-form nf-field:nth-child(2) { width: 49%; }
.home-contact-form .nf-form-content { /*max-width: 100%; padding: 0; */}

#site-logo { max-width: 140px; margin: 0; }
#header { align-items: center; display: flex; justify-content: space-between; padding: 20px 0; }
#header:after { display: none; }
.transparent-header #headerwrap { background: rgba(255,255,255,0.5); color: #4b567d; }
.transparent-header #headerwrap.fixed-header { background: rgba(255,255,255,0.9); }
#headerwrap.fixed-header { box-shadow: 0 0px 10px rgba(0,0,0,0.1); background: rgba(255,255,255,0.9); }

.home-banner { height: 100vh; }
.home-benefits-section .module-feature-chart-html5 img { border-radius: 0; }
.home-benefits-section { /*-webkit-clip-path: polygon(0 8%, 100% 0, 100% 92%, 0 100%);
  clip-path: polygon(0 8%, 100% 0, 100% 92%, 0 100%);*/ }

.themify_builder_slider_wrap .carousel-prev, 
.themify_builder_slider_wrap .carousel-next { line-height: 38px; }
body .tf_carousel_nav_wrap .carousel-prev:hover, 
body .tf_carousel_nav_wrap .carousel-next:hover { background: #fff; }

body .testimonial-section .tf_carousel_nav_wrap .carousel-prev:hover, 
body .testimonial-section .tf_carousel_nav_wrap .carousel-next:hover { background: #333; }

.testimonial-section .tf_carousel_nav_wrap :is(.carousel-prev,
.testimonial-section .carousel-next):before { margin-top: 3px; }

#footer-logo { max-width: 150px; }
.latest-insights-section .entry-content p { line-height: 1.3; }
.home-banner-text .fancy-heading { background: rgba(0,0,0,0.2); padding: 20px; border-radius: 10px; }
.testimonial-slider .slide-image img { border-radius: 10px; height: 450px; object-fit: cover; }

.key-points-text {
  background: rgba(0,0,0,0.2);
  padding: 25px 30px;
  border-radius: 10px;
  margin-bottom: 20px;
}
.key-points-text h2,
.key-points-text h3 { line-height: 1.1; margin-bottom: 5px !important; }
.key-points-text p { margin-bottom: 0 !important; }
.home-services .module.module-image { border: 1px solid #ddd; margin-bottom: 30px; }
.home-services .module.module-image .image-content { padding: 20px 15px; }
.services-row .sub_column .tb-column-inner { display: flex; min-height: 100%; }

#main-nav .sub-menu { min-width: 300px; }
#main-nav .sub-menu li a { font-weight: normal; font-size: 16px; }
.readmore-link a { background: var(--tb_preset_orange); color: #fff; padding: 8px 30px; border-radius: 40px; text-decoration: none;
display: inline-block; margin: 10px 0 0; }
.readmore-link a:hover { background: #ffb651; }
.home-services .image-content p { 
display: -webkit-box; 
-webkit-box-orient: vertical; 
-webkit-line-clamp: 4; 
overflow: hidden; 
text-overflow: ellipsis; 
margin-bottom: 0;
}
.services-view-banner { height: calc(100vh - 102px); display: flex;
  flex-direction: column;  justify-content: center; }
.services-view-content h2,
.services-view-content h3 { position: relative; }  
.services-view-content h2:after,
.services-view-content h3:after { content: ""; width: 100px; height: 3px; background: var(--tb_preset_orange); display: block; 
display: block; margin: 6px 0 0; }  
.other-services-section .image-wrap img { width: 100%; }
.types-skylights-bottom .module-image .image-content { padding-top: 20px; padding-bottom: 10px; }
.types-skylights-bottom .module_subrow .module_column { margin-bottom: 0 !important; }

#main-nav .sub-menu li a { padding-left: 32px; }
#main-nav .sub-menu .current_page_item > a:before, 
#main-nav .sub-menu .current-menu-item > a:before, 
#main-nav .sub-menu li a:hover:before { content: ""; background: url(../images/menu-icon.png) 0 0px no-repeat;
width: 16px; height: 16px; position: absolute; left: 12px; background-size: 14px auto; top: 13px; }

#main-nav .highlight-link > a { background: var(--theme_accent) !important; color: #fff !important; padding: 10px 25px; 
margin-left: 20px; }

.faq-section .module-accordion .ui.module-accordion > li { 
box-shadow: none !important; border-radius: 0 !important; background: transparent !important; border-bottom: 1px solid var(--tb_preset_orange); 
padding: 4px 0 !important; margin: 0 !important;}
.faq-section .ui.module-accordion.transparent .accordion-title a { font-weight: 600; font-size: 20px;
padding: 5px 0; gap: 7px; display: flex; justify-content: space-between; }
.faq-section .module-accordion .ui.module-accordion .accordion-content { padding: 0px 0 20px !important; }
.faq-section .module-accordion p { margin-bottom: 10px; }
.faq-section .accordion-content li { margin-bottom: 10px; color: #246e66; }
.faq-section .accordion-title i { order: 1; }
.faq-section .ui.module-accordion .accordion-title .accordion-icon,
.faq-section .ui.module-accordion .accordion-title .accordion-active-icon { background: var(--tb_preset_orange) !important;
padding: 0px !important; height: 34px; width: 34px; text-align: center; line-height: 34px; margin-right: 0; min-width: 34px; }

.loops-wrapper.grid3 .post-title { font-size: 22px;
  line-height: 1.2; height: 55px; display: -webkit-box; -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; overflow: hidden; text-overflow: ellipsis; margin-bottom: 5px; }
.loops-wrapper.grid3 .entry-content,
.loops-wrapper.grid3 .entry-content p { display: -webkit-box; -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; overflow: hidden; text-overflow: ellipsis; min-height: 80px; margin: 0; }
.loops-wrapper.grid3 .entry-content { margin-bottom: 15px; }

.loops-wrapper .post-image img { height: 250px; object-fit: cover; }
#sidebar .widget { margin: 0 0 20px; border: 1px solid #ddd; padding: 15px; border-radius: 5px; }
#sidebar .wp-block-search__inside-wrapper { display: block; }
#sidebar .wp-block-search__inside-wrapper .wp-block-search__button { padding: 10px 30px;
  line-height: 21px; font-size: 16px; transform: none; box-shadow: none; margin: 0; }
#sidebar .wp-block-search__inside-wrapper .wp-block-search__input { border: 1px solid #ddd; margin: 0 0 10px;
  height: 44px; }

.single-post .post-content h1.post-title { padding-top: 10px; }
.single-post .post-content h1.post-title a { pointer-events: none; }
.single-post .post-content ul { padding: 0; margin: 0 0 20px; }
.single-post .post-content ul li { list-style: none; margin: 0 0 10px; background: url(../images/list-icon.png) 0 7px no-repeat; 
padding-left: 32px; }
.single-post .post-content h2,
.single-post .post-content h3 { position: relative; }  
.single-post .post-content h2:after,
.single-post .post-content h3:after { content: ""; width: 100px; height: 3px; background: var(--tb_preset_orange); display: block; 
display: block; margin: 6px 0 0; }  

#commentform textarea { border: 1px solid #ddd; }
.post-nav .prev .arrow,
.post-nav .next .arrow { top: -2px; height: 40px;
width: 40px; background: var(--tb_preset_orange); border-radius: 100%; }
.post-nav .next { padding-right: 3.2em; }
.post-nav .prev { padding-left: 3.2em; }
.post-nav .prev .arrow::after, 
.post-nav .prev .arrow::before { border-left-color: #fff; }
.post-nav .next .arrow::after, 
.post-nav .prev .arrow::after, 
.post-nav .next .arrow::before, 
.post-nav .prev .arrow::before { border-top-color: #fff; top: 12px; }
.post-nav .next .arrow::after, 
.post-nav .next .arrow::before { border-right-color: #fff; }

.post-nav .next .arrow::after { right: 20px; }
.post-nav .next .arrow::before { right: 10px; }
.post-nav .prev .arrow::after { left:20px; }
.post-nav .prev .arrow::before { left: 10px; }

.contact-info-left .module-icon span { max-width: 90%; }

#site-logo img { vertical-align: middle; }
#main-nav .themify_toggle_dropdown .sub-menu { min-width: 180px; width: 162px; }

.home-post-slider .slide-image + .slide-content { background-color: rgba(0,0,0,.3);
  display: flex; flex-direction: column; justify-content: flex-end; position: absolute;
  top: 0; bottom: 0;left: 0; right: 0; padding: 8%; width: 100%; z-index: 1; 
box-sizing: border-box; border-radius: 10px; }
.home-post-slider .slide-image + .slide-content a { color: #fff; }
.home-post-slider .slide-image + .slide-content h3 { font-size: 18px; line-height: 1.3; }
.home-post-slider .slide-inner-wrap {
  display: inline-block;
  position: relative;
}
.home-post-slider .slide-image { margin: 0; border-radius: 10px; overflow: hidden; }
.home-post-slider .slide-image img { border-radius:10px; height: 280px; object-fit: cover; }

.home-services .module-slider .themify_builder_slider { border: 1px solid #ddd; }
.home-services .slide-content { padding: 20px 15px; }
.home-services .slide-image { margin-bottom: 0; }
.home-services .slide-content .slide-title a { text-decoration: none; color: inherit; }
.home-services .slide-content p { 
display: -webkit-box; 
-webkit-box-orient: vertical; 
-webkit-line-clamp: 5; 
overflow: hidden; 
text-overflow: ellipsis; 
margin-bottom: 0;
}
#main-nav a { font-size: 16px; padding: .6em 10px; }

.other-services-section .sub_column .module-text { margin: 0; padding: 10px 10px; 
border: 1px solid #ddd; border-top: 0; min-height: 60px; }
.other-services-section .sub_column .module-text h3 { margin: 0; text-transform: none !important;
line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 2;  -webkit-box-orient: vertical;
    overflow: hidden; }

.latest-insights-section .post-content-inner .entry-content p { display: -webkit-box; -webkit-line-clamp: 2;  -webkit-box-orient: vertical;
overflow: hidden; }    
.latest-insights-section .post-content-inner .post-title { display: -webkit-box; -webkit-line-clamp: 2;  -webkit-box-orient: vertical;
overflow: hidden; color: #fff; }

body #rum_sst_tab { transform: none; top: auto; bottom: 0; left: 0; right: auto; 
padding: 6px 13px 7px; font-size: 14px; }
.footer-text .footer-text-inner { text-align: center; }
.footer-widgets .textwidget i.ti-email { display:none; }
.services-block-row .module.module-text p { display: -webkit-box;
  -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.page-id-2269 .pagenav { padding: 10px 0; }  
 
.header-topbar { padding: 8px 0 0; font-size: 14px; text-align: center; }
.header-topbar p { margin: 0; display: inline-block; color: #000; line-height: 1.2;
  font-size: 16px; font-weight: 400; border: 1px solid #000;  padding: 8px 15px !important; }
.header-topbar a { color: #db0015;}
.fixed-header .header-topbar  { display: none; }

.faqs-section ul.ui.module-accordion .accordion-title a { padding: 12px 0; display: flex;
flex-direction: row-reverse; text-align: left; justify-content: space-between; gap:10px; }
.faqs-section ul.ui.separate > li { border: 1px solid #ccc; padding: 0 12px; margin-bottom: 8px; }
.faqs-section ul.ui.module-accordion .accordion-content { padding: 2px 0px !important; }
.faqs-section ul .accordion-title i { margin:0; background: var(--theme_accent) !important;
  color: #000 !important; min-width: 24px; text-align: center; height: 24px;
  line-height: 21px; font-size: 16px !important; }
.faqs-section .module-accordion { margin-bottom: 0; }  

/******************** responsive ************************/

@media (hover: none) {
#main-nav .menu-item-has-children > a { padding-right: 10px; }
.menu-item .child-arrow { margin-top: 0; }
}
@media(min-width: 1280px) and (max-width: 1440px) {}
@media(min-width: 901px)  {
  .menu-item .child-arrow { display: block; right: 0; top: 6px; width: 20px; }
}
@media(min-width: 1024px) and (max-width: 1279px) {
  #main-nav a { font-size: 14px; padding: .6em 10px; }
  .menu-item .child-arrow { top: 3px; }
  .other-services-section .col5-1 .module-text { margin-left: 0 !important; margin-right: 0 !important; }
  .other-services-section .col5-1 .module-text h3 { font-size: 15px !important; }
  .menu-item .child-arrow { top: 4px; }
  #main-nav .highlight-link > a { padding: 8px 15px; margin-left: 8px; }

  .other-services-section  { padding-bottom: 30px !important; padding-top: 55px !important; }
  .other-services-section .sub_column .module-text { min-height: 54px; }
  .other-services-section .sub_column .module-text h3 { font-size: 14px; }
  #site-logo { max-width: 120px; }
}

@media(max-width: 980px) {
  .footer-text .footer-text-inner { padding-bottom: 20px; line-height: 1.5; }
}
@media(max-width: 1023px) {}
@media(min-width: 768px) and (max-width: 1024px) {
.faq-section .ui.module-accordion.transparent .accordion-title a { font-size: 17px; }  
body { font-size: 15px; }
.module-fancy-heading .sub-head { font-size: 30px; }
.single-post .post-content h1.post-title { line-height:1.2; font-size: 28px;  }
.widget .feature-posts-list .feature-posts-title { font-size: 15px; }
.loops-wrapper.grid3 .post-title { height: 50px; font-size: 20px; }
.loops-wrapper .post-image img { height: 180px; }

.services-view-banner h1 { font-size: 36px !important; }
.loops-wrapper.grid3 .entry-content,
.loops-wrapper.grid3 .entry-content p { min-height: 74px; }

}

@media(min-width: 959px) and (max-width: 1023px) {
.other-services-section  { padding-bottom: 30px !important; padding-top: 55px !important; }
.other-services-section .sub_column .module-text { min-height: 54px; }
.other-services-section .sub_column .module-text h3 { font-size: 14px; }

}

@media(min-width: 901px) and (max-width: 1023px) {
  #main-nav > li > a { padding: 5px 16px 5px 0px; font-size: 13px; }
  #main-nav .highlight-link > a { padding: 9px 15px; margin-left: 0; }
  #site-logo  { max-width: 120px; }
  .menu-item .child-arrow { right: 6px; top: -2px; }
}
@media(min-width: 769px) and (max-width: 1023px) {
  .other-services-section .module_column.col5-1 { width: 31.1%; }
  .other-services-section .module_column.col5-1:nth-child(3n+1) { margin-left: 0; }
  
}
@media(min-width: 768px) and (max-width: 958px) {
  .types-skylights-bottom .module-image .image-content { padding-bottom: 25px; }
  .types-skylights-bottom { padding-top: 40px !important;   padding-bottom: 20px !important; }

.services-view-banner h1 { margin: 0; }
.services-view-banner { height: auto; padding: 100px 0 !important; min-height: 350px; }
.other-services-section { padding-bottom: 40px !important; padding-top: 50px !important; }

}
@media(min-width: 681px) and (max-width: 768px) {
  body.tb_responsive_mode .other-services-section .col-count-5 > .sub_column.module_column { width: 48% !important; }
  body.tb_responsive_mode .other-services-section .col-count-6 > .sub_column.module_column { width: 48% !important; }

  .other-services-section .sub_column .module-text { padding: 15px 10px; min-height: 30px; }
  .other-services-section .sub_column .module-text h3 { -webkit-line-clamp: 1; }
}
@media(min-width: 681px) and (max-width: 767px) {
  .module-fancy-heading .sub-head { font-size: 28px; }
  .single-post .post-content h1.post-title { line-height:1.2; font-size: 28px;  }
  .loops-wrapper .post-image img { height: 180px; }

  .other-services-section { padding-bottom: 40px !important; padding-top: 50px !important; }  
  .loops-wrapper.grid3 .entry-content,
  .loops-wrapper.grid3 .entry-content p { min-height: 70px; }
}
@media(max-width: 900px) {
  .header-icons { top: 50%; }
  #main-nav .highlight-link > a { padding: 9px 25px !important; display: inline-block !important;  }
  #main-nav .sub-menu li a { padding-left: 32px !important; }
  #main-nav li > .sub-menu { margin-left: 0; }
  #headerwrap #main-nav .sub-menu a { padding: 5px 0; font-size: 15px; }
  #main-nav li.toggle-on > .sub-menu { margin-bottom: 10px; }
  #main-nav .sub-menu .current_page_item > a::before, 
  #main-nav .sub-menu .current-menu-item > a::before, 
  #main-nav .sub-menu li a:hover::before { top: 9px; }

  #main-nav .child-arrow { margin-top: -18px !important; }

}
@media(max-width: 767px) {
.faq-section .ui.module-accordion.transparent .accordion-title a { font-size: 17px; }  
body { font-size: 14px; }
h2 { font-size: 21px; }
h3 { font-size: 21px; }
.services-view-banner h1 { font-size: 30px !important; margin: 0; }
.types-skylights-bottom .module-image .image-content { padding-bottom: 25px; }
.services-view-banner { height: auto; padding: 50px 0 !important; min-height: 250px; }
.header-topbar { padding: 10px 0; }

}
@media(max-width: 680px) {
  .loops-wrapper .post-image img { height: auto; }
  .loops-wrapper.grid3 .post-title { height: auto; }

  .home-services .slide-image img { height: 300px; object-fit: cover; width: 100%; }
  .home-services .slide-content p { -webkit-line-clamp: 3; }
  
  .other-services-section { padding-bottom: 20px !important; padding-top: 40px !important; }
  .other-services-section .sub_column { margin-bottom: 25px !important; }
  .other-services-section .sub_column .module-text { padding: 15px 10px; min-height: 10px; }
  .loops-wrapper.grid3 .entry-content,
  .loops-wrapper.grid3 .entry-content p { min-height: 10px; }
}
@media(max-width: 639px) {}
@media(max-width: 479px) {
  .faq-section .ui.module-accordion.transparent .accordion-title a { font-size: 16px; }  
  .themify_builder_slider_wrap .carousel-pager a { width: 14px; height: 14px; margin: 0 4px; }
  h2 { font-size: 20px; }
  h3 { font-size: 20px; }

  .home-post-slider .slide-image img { height: 250px; } 
  .home-services .slide-image img { height: 250px; }
  .home-services .slide-content p { -webkit-line-clamp: 4; }
}