.tdmh-header {
  --tdmh-accent: #29ABE2;
  --tdmh-dark: #16171d;
  --tdmh-hover: #f5245f;
  --tdmh-font: 'Montserrat', sans-serif;
}
.nomarginbottom p:last-child{margin-bottom: 0px !important;}
/* ---------- Header bar ---------- */
.tdmh-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 9990;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 20px 10px !important;
  background: transparent;
  box-sizing: border-box;
  transition: background-color .3s ease, box-shadow .3s ease, padding .3s ease;
}
body.admin-bar .tdmh-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .tdmh-header { top: 46px; } }

.tdmh-header .elementor-widget {
  margin: 0 !important;
  width: auto !important;
  flex: 0 0 auto;
}
.tdmh-header .tdmh-right {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  width: auto !important;
  padding: 0 !important;
  flex: 0 0 auto;
}

/* ---------- Logo (white on top, coloured once scrolled) ---------- */
.tdmh-header .tdmh-logo img {
  display: block;
  width: 130px;
  max-width: none;
  height: auto;
}
.tdmh-header .tdmh-logo--dark { display: none !important; }
.tdmh-header.tdmh-scrolled .tdmh-logo--light { display: none !important; }
.tdmh-header.tdmh-scrolled .tdmh-logo--dark { display: block !important; }
@media (max-width: 479px) {
  .tdmh-header .tdmh-logo img { width: 102px; }
}

/* ---------- Phone + hamburger icons ---------- */
.tdmh-header .tdmh-phone .elementor-icon,
.tdmh-header .tdmh-burger .elementor-icon {
  color: #fff;
  fill: #fff;
  line-height: 1;
  transition: color .3s ease;
}
.tdmh-header .tdmh-phone .elementor-icon { font-size: 22px; }
.tdmh-header .tdmh-burger .elementor-icon { font-size: 30px; cursor: pointer; }
.tdmh-header .tdmh-burger .elementor-icon i,
.tdmh-header .tdmh-phone .elementor-icon i { color: inherit; }
.tdmh-header .tdmh-burger .elementor-icon svg,
.tdmh-header .tdmh-phone .elementor-icon svg { fill: currentColor; width: 1em; height: 1em; }
.tdmh-header.tdmh-scrolled .tdmh-phone .elementor-icon,
.tdmh-header.tdmh-scrolled .tdmh-burger .elementor-icon { color: var(--tdmh-dark); fill: var(--tdmh-dark); }
.tdmh-header .tdmh-burger { cursor: pointer; }
@media (max-width: 600px) {
  .tdmh-header .tdmh-phone { display: none !important; } /* same as original (phone icon hidden <=600px) */
}

/* ---------- Scrolled (sticky) state ---------- */
.tdmh-header.tdmh-scrolled {
  background-color: #fff;
  box-shadow: 0 2px 14px rgba(0, 0, 0, .12);
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* ---------- Show only on tablet + mobile (<= 1000px) ---------- */
@media (min-width: 1001px) {
  .tdmh-header,
  .tdmh-panel { display: none !important; }
}

/* ---------- Slide-in panel ---------- */
body.tdmh-open { overflow: hidden; }

.tdmh-panel {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
  box-sizing: border-box;
  padding: 90px 13% 40px;
  background-color: rgba(22, 23, 29, .93);
  text-align: center;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transform: translateX(100%);
  visibility: hidden;
  transition: transform .3s ease-in-out, visibility 0s linear .3s;
  font-family: var(--tdmh-font, 'Montserrat', sans-serif);
}
.tdmh-panel.is-open {
  transform: translateX(0);
  visibility: visible;
  transition: transform .3s ease-in-out, visibility 0s;
}
body.admin-bar .tdmh-panel { top: 32px; height: calc(100% - 32px); }
@media (max-width: 782px) { body.admin-bar .tdmh-panel { top: 46px; height: calc(100% - 46px); } }

.tdmh-panel *, .tdmh-panel *::before, .tdmh-panel *::after { box-sizing: border-box; }
.tdmh-panel ul { list-style: none; margin: 0; padding: 0; }
.tdmh-panel li { margin: 0; padding: 0; }
.tdmh-panel a { text-decoration: none; transition: color .2s ease-out; }

.tdmh-close {
    position: absolute;
    top: 0px;
    right: -50px;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
    z-index: 2;
}
.tdmh-close::before, .tdmh-close::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 28px;
  height: 2px;
  background: currentColor;
}
.tdmh-close::before { transform: translate(-50%, -50%) rotate(45deg); }
.tdmh-close::after  { transform: translate(-50%, -50%) rotate(-45deg); }
.tdmh-close:hover, .tdmh-close:focus-visible { color: #ee0059; }

/* quote button + contact */
.tdmh-contact { margin: 0 0 30px; }
.tdmh-panel a.tdmh-quote {
    display: block;
    padding: 10px 20px;
    margin-bottom: 30px;
    border-radius: 30px;
    background-color: var(--tdmh-accent, #29ABE2);
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    max-width: 180px;
}
.tdmh-panel a.tdmh-quote:hover { color: #fff; opacity: .9; }
.tdmh-info {
  padding: 10px 25px;
  margin-top: 12px;
  border-top: 2px solid #ffffff75;
  border-bottom: 2px solid #ffffff75;
}
.tdmh-info p {
  display: flex;
  align-items: center;
  justify-content: left;
  gap: 10px;
  margin: 8px 0;
  line-height: 1.6;
}
.tdmh-info img { width: 15px; height: 15px; }
.tdmh-info a { color: #e3e3e3; font-size: 15px; }
.tdmh-info a:hover { color: var(--tdmh-hover, #f5245f); }

/* Panel is an Elementor container: force fixed slide-in layout */
.tdmh-header .tdmh-panel {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0px 13% 40px !important;
  margin: 0 !important;
}
body.admin-bar .tdmh-header .tdmh-panel { top: 32px !important; height: calc(100% - 32px) !important; }
@media (max-width: 782px) { body.admin-bar .tdmh-header .tdmh-panel { top: 46px !important; height: calc(100% - 46px) !important; } }
.tdmh-panel .elementor-widget { margin: 0 !important; width: 100% !important; }

/* ---------- Dynamic menu (Elementor Nav Menu widget -> "Primary Menu") ---------- */
.tdmh-panel .elementor-nav-menu--dropdown,
.tdmh-panel .elementor-menu-toggle { display: none !important; }
.tdmh-panel .elementor-nav-menu--main { display: block !important; }

.tdmh-panel .elementor-nav-menu,
.tdmh-panel .elementor-nav-menu ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}
.tdmh-panel .elementor-nav-menu > li {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
}
.tdmh-panel .elementor-nav-menu > li > a.elementor-item {
    flex: 0 0 auto;
    width: auto !important;
    padding: 4px 0 !important;
    font-family: var(--tdmh-font) !important;
    font-size: 20px;
    line-height: 34px;
    font-weight: 700 !important;
    letter-spacing: -.2px;
    color: #fff !important;
    background: transparent !important;
    justify-content: flex-start;
}
.tdmh-panel .elementor-nav-menu a:hover,
.tdmh-panel .elementor-nav-menu li.show > a.elementor-item { color: var(--tdmh-hover, #f5245f) !important; background: transparent !important; }
.tdmh-panel .elementor-nav-menu .elementor-item::before,
.tdmh-panel .elementor-nav-menu .elementor-item::after { display: none !important; }

/* arrow (Elementor's .sub-arrow) */
.tdmh-panel .elementor-nav-menu .sub-arrow {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0 0 0 4px !important;
  padding: 0 !important;
  color: #fff;
  cursor: pointer;
  transition: transform .2s ease;
}
.tdmh-panel .elementor-nav-menu > li > a.has-submenu { padding-right: 0 !important; }
.tdmh-panel .elementor-nav-menu li.show > a .sub-arrow { transform: rotate(180deg); }

/* sub menus: collapsed until li.show */
.tdmh-panel .elementor-nav-menu .sub-menu {
  display: none !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-height: none !important;
  padding: 4px 0 10px !important;
}
.tdmh-panel .elementor-nav-menu li.show > .sub-menu { display: block !important; }
.tdmh-panel .elementor-nav-menu .sub-menu li { display: block; width: 100%; margin: 0 !important; border: 0 !important; }
.tdmh-panel .elementor-nav-menu .sub-menu a.elementor-sub-item {
    display: inline-block !important;
    width: auto !important;
    padding: 4px 0 !important;
    font-family: var(--tdmh-font) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 26px !important;
    letter-spacing: -.2px;
    color: #ffffff !important;
    background: transparent !important;
    text-align: left;
    color: #fff !important;
    padding-left: 20px !important;
    line-height: 32px !important;
    display: block;
    width: 100%;
}
.tdmh-panel .elementor-nav-menu .sub-menu a.elementor-sub-item:hover { color: var(--tdmh-hover, #f5245f) !important; }

/* original hides the "Get A Free Quote" menu item (menu CSS class: cust-mobile-menu) */
.tdmh-panel .elementor-nav-menu > li.cust-mobile-menu, .tdmh-panel li.cust-mobile-menu { display: none !important; }

body .elementor .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu {
    min-width: 214px !important;
	max-width: 215px !important;
}
body .elementor .elementor-nav-menu--main .elementor-nav-menu ul.sub-menu li a {white-space: pre-wrap !important;}
/* ---------------------------------------------------------------------
   1. HERO  (video background is set in the Elementor container itself)
   --------------------------------------------------------------------- */
.think-hero > .e-con-inner { position: relative; z-index: 11; }

/* bottom gradient on top of the video, same as the HTML */
.think-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url(/wp-content/uploads/2026/10/bottom-gradient-1.svg) no-repeat bottom / cover;
  opacity: .8;
  z-index: 10;
  pointer-events: none;
}

.think-hero .elementor-background-video-hosted { width: 100%; height: 100%; object-fit: cover; }
.think-hero .tm-orange { color: #ed7819; }
.think-hero a { color: #fff; }


/* ---------------------------------------------------------------------
   2. EXPLORE OUR SERVICES – 4 coloured hover cards
   Each card has its own ring colour (set in Elementor) + gradient (below)
   --------------------------------------------------------------------- */
.think-svc                { --svc-grad: linear-gradient(180deg, #B5DCD6 0%, #53E5FC 100%); }   /* Web     */
.think-svc.svc-logo       { --svc-grad: linear-gradient(180deg, #DA86FE 0%, #8B71F8 100%); }   /* Logo    */
.think-svc.svc-seo        { --svc-grad: linear-gradient(180deg, #9A7BB6 0%, #F69461 100%); }   /* SEO     */
.think-svc.svc-graphic    { --svc-grad: linear-gradient(180deg, #6B4096 0%, #E175C0 100%); }   /* Graphic */

.think-svc .svc-top { position: relative; }
.think-svc .svc-top > * { position: relative; z-index: 22; }

/* gradient that fills the block from the top on hover */
.think-svc .svc-top::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  background: var(--svc-grad);
  border-radius: 0 0 100px 100px;
  transition: height .1s;
  z-index: 0;
}
.think-svc:hover .svc-top::before { height: 100%; bottom: 0; }

/* "Learn More" + sliding arrow */
.think-svc .svc-learn .elementor-heading-title a { display: block; color: #fff; }
.think-svc .svc-learn .elementor-heading-title a::after {
  content: "";
  display: block;
  width: 37px;
  height: 37px;
  margin: 10px auto 0;
  background: #fff;
  -webkit-mask: url(/wp-content/uploads/2026/10/right.png) no-repeat center / contain;
          mask: url(/wp-content/uploads/2026/10/right.png) no-repeat center / contain;
  transition: .3s;
  transition-delay: .1s;
  transform: translateX(-30px);
}
.think-svc:hover .svc-learn .elementor-heading-title a::after { transform: translateX(0); }

/* ring turns white + icon turns white on hover */
.think-svc:hover .svc-ring { border-color: #fff !important; }
.think-svc:hover .svc-ring img { filter: brightness(100); }

.think-svc .svc-title .elementor-heading-title a { color: inherit; }


/* ---------------------------------------------------------------------
   3. LOGO CAROUSEL (Elementor Image Carousel widget)
   --------------------------------------------------------------------- */
.logo-carousel img { filter: grayscale(1); transition: filter .3s; }
.logo-carousel img:hover { filter: grayscale(0); }

.logo-carousel .elementor-swiper-button {
  width: 100px;
  height: 50px;
  border-radius: 131px;
  background: #5BC7E1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  z-index: 99;
}
.logo-carousel .elementor-swiper-button svg,
.logo-carousel .elementor-swiper-button i { fill: #fff; color: #fff; }
.logo-carousel .elementor-swiper-button-prev { left: -75px; }
.logo-carousel .elementor-swiper-button-next { right: -75px; }
.logo-carousel .elementor-swiper-button:hover { background: #4D243E; }


/* ---------------------------------------------------------------------
   4. FEATURES + FORMIDABLE FORM (form id 31)
   --------------------------------------------------------------------- */
/* keep each half inside its half of the screen on small desktops */
.think-feat-half > .e-con { max-width: 100%; }

.think-consult .hl { color: #5BC7E1; }

.think-form form { width: 90%; }

/* labels */
.think-form .with_frm_style .frm_primary_label,
.think-form .frm_style_formidable-style.with_frm_style .frm_primary_label {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #fff;
}
.think-form .with_frm_style .frm_required { color: #fff !important; }

/* text / email / phone / url / select  ->  underline only */
.think-form .with_frm_style input[type="text"],
.think-form .with_frm_style input[type="email"],
.think-form .with_frm_style input[type="tel"],
.think-form .with_frm_style input[type="url"],
.think-form .with_frm_style input[type="number"],
.think-form .with_frm_style select,
.think-form .with_frm_style textarea {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #fff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: 53px;
  padding: 14px 0 !important;
  color: #fff !important;
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 18px;
  font-weight: 400;
}
.think-form .with_frm_style textarea { resize: none; overflow: hidden; }
.think-form .with_frm_style select option { color: #000; }

/* placeholders */
.think-form .with_frm_style input::placeholder,
.think-form .with_frm_style textarea::placeholder { color: #fff !important; opacity: 1; }
.think-form .with_frm_style input::-webkit-input-placeholder { color: #fff !important; }
.think-form .with_frm_style input::-moz-placeholder { color: #fff !important; opacity: 1; }

/* radio buttons side by side */
.think-form .vertical_radio { margin-top: 15px; }
.think-form .vertical_radio .frm_opt_container { display: flex; gap: 20px; margin-top: 15px; }
.think-form .with_frm_style .vertical_radio .frm_radio label {
  font-family: 'IBM Plex Sans', sans-serif;
  color: #fff;
  font-size: 18px;
  font-weight: 400;
}

/* Send Message button: white pill, plum fill slides in on hover */
.think-form .frm_button_submit {
  position: relative;
  display: inline-block !important;
  overflow: hidden;
  margin-top: 35px !important;
  padding: 20px 50px !important;
  font-family: 'Cairo', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #0D262D !important;
  background: #fff !important;
  border: 1px solid #fff !important;
  border-radius: 50px !important;
  box-shadow: none !important;
  z-index: 99;
  transition: color .3s;
}
.think-form .frm_button_submit > strong { position: relative; z-index: 99; }
.think-form .frm_button_submit::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff !important;
  border-radius: 50px !important;
  transform: scale(.5);
  transition: .3s;
  z-index: -1;
}
.think-form .frm_button_submit:hover { color: #fff !important; }
.think-form .frm_button_submit:hover::before { background: #4D243E !important; transform: scale(1); top: 0; }

/* success / error messages */
.think-form .with_frm_style .frm_message,
.think-form .with_frm_style .frm_message p { background: transparent !important; border: none !important; margin: 0 !important; color: #fff !important; }
.think-form .frm_error { color: #fff !important; }

/* honeypot */
#frm_field_413_container { visibility: hidden; overflow: hidden; width: 0; height: 0; position: absolute; }


/* ---------------------------------------------------------------------
   5. WORK – filter + slider
   --------------------------------------------------------------------- */
.work-filter { position: relative; cursor: pointer; }
.work-filter .elementor-heading-title { position: relative; z-index: 2; transition: color .2s; }
.work-filter:hover .elementor-heading-title { color: rgba(13, 38, 45, .6); }
.work-filter.active .elementor-heading-title { color: #0D262D !important; }
.work-filter.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 100%;
  height: 20px;
  border-radius: 28px;
  background: rgba(91, 199, 225, .5);
  z-index: 1;
}

/* items per screen: 3 desktop / 2 tablet / 1 mobile (JS reads --wk-per) */
.work-viewport { --wk-per: 3; --wk-gap: 20px; width: 100%; overflow: visible; /* use "hidden" to crop the peeking slides */ }
@media (max-width: 1000px) { .work-viewport { --wk-per: 2; } }
@media (max-width: 767px)  { .work-viewport { --wk-per: 1; --wk-gap: 0px; } }

.work-track,
.work-track > .e-con-inner { gap: var(--wk-gap) !important; flex-wrap: nowrap !important; will-change: transform; }
.work-track > .work-item,
.work-track > .e-con-inner > .work-item {
  flex: 0 0 calc((100% - (var(--wk-gap) * (var(--wk-per) - 1))) / var(--wk-per)) !important;
  width: calc((100% - (var(--wk-gap) * (var(--wk-per) - 1))) / var(--wk-per)) !important;
  max-width: none !important;
  box-sizing: border-box;
}
.work-item.is-filtered-out { display: none !important; }
.work-item .work-img img { width: 100%; display: block; }
.work-item .work-title .elementor-heading-title { margin: 0; }
.work-item .work-view p { margin: 0; }
.work-item .work-view a {
  color: #4D243E;
  font-weight: 700;
  text-decoration: underline;
  padding-left: 25px;
  background: url(/wp-content/uploads/2026/10/link.png) no-repeat left center;
}
.work-item .work-view { flex: 0 0 auto; white-space: nowrap; }

.work-empty { display: none; }
.work-empty.is-visible { display: block; }

.work-prev, .work-next { cursor: pointer; transition: opacity .2s; }
.work-prev:hover, .work-next:hover { opacity: .75; }
.work-nav.is-disabled { opacity: .35; pointer-events: none; }

.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a) {text-decoration: none !important;}
.hero-upcity-text p {
    margin-bottom: 0px;
}
.home-portfoliowrp {
    width: 100%;
    max-width: 100%;
}

.home-portfoliowrp > .e-con-inner {
    width: 100%;
    max-width: 100%;
}

.home-portfoliowrp .work-slider {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.home-portfoliowrp .work-viewport {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
}

.home-portfoliowrp .work-track {
    width: 100%;
    max-width: none;
}
	
.transparent-header {
    background-color: #02010100 !important;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
.transparent-header.sticky-white-bg {
    background-color: #ffffff !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
	    z-index: 111;
}
.sticky-white-bg .elementor-widget-nav-menu .elementor-nav-menu .elementor-item {
    color: #000000 !important;
}
	.sticky-white-bg .elementor-widget-nav-menu .elementor-nav-menu .elementor-item svg path {fill: #000000 !important;}
	
.logo-sticky {
    display: none !important;
}

.transparent-header.sticky-white-bg .logo-transparent {
    display: none !important;
}

.transparent-header.sticky-white-bg .logo-sticky {
    display: block !important;
}
.tdmh-panel .elementor-nav-menu > li.menu-item-has-children:after {
    position: absolute;
    top: 10px;
    content: "\f107";
    font: normal normal normal 14px / 1 FontAwesome;
    color: #fff !important;
    font-size: 17px;
    right: 0;
}
/* ---------------------------------------------------------------------
   6. MOBILE "Request a Quote / Call us" bar (shown only <768px via Elementor)
   --------------------------------------------------------------------- */
@media (max-width: 767px) {
  .think-mobile-bar { position: fixed !important; left: 0; right: 0; bottom: 0; width: 100%; z-index: 999999; }
  .think-mobile-bar a { color: inherit; }
  .svc-learn {
    display: none;
}
.logo-carousel .elementor-swiper-button {width: 30px;height: 30px;}
}
/* Paste in Elementor > Site Settings > Custom CSS (or the page's Advanced > Custom CSS) */

/* 1. Equal-height cards so every "Read More" bar lines up */
.elementor-loop-container .e-loop-item > .e-con { height: 100%; }

/* 2. Page numbers: 44px boxes, current page larger (24px) like the original */
.elementor-pagination .page-numbers {
  display: inline-block;
  width: 44px;
  min-width: 44px;
  height: 44px;
  line-height: 44px;
  padding: 0;
  text-align: center;
}
.elementor-pagination .page-numbers.current { font-size: 24px; }

/* 3. Prev / Next arrows = your PNG images (label text hidden) */
.elementor-pagination .page-numbers.prev,
.elementor-pagination .page-numbers.next {
  font-size: 0 !important;
  color: transparent !important;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto;
}
.elementor-pagination .page-numbers.prev {
  background-image: url("https://new26.thinkdesignsdev.com/wp-content/uploads/2026/10/leftarrow.png");
}
.elementor-pagination .page-numbers.next {
  background-image: url("https://new26.thinkdesignsdev.com/wp-content/uploads/2026/10/rightarrow.png");
}
/* Add below your existing pagination CSS – centres numbers and arrows on the same vertical line */
.elementor-pagination {
  display: flex !important;
  justify-content: center;
  align-items: center;
}
.elementor-pagination .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  vertical-align: middle;
}
.elementor-pagination .page-numbers.prev,
.elementor-pagination .page-numbers.next {
  line-height: 0;
  background-position: center center;
}




.single-post {
  --td-heading: #0d262d;   
  --td-text:    #222222;   
  --td-link:    #29abe2;   
  --td-accent:  #46a6c4;  
  --td-font-body:    "IBM Plex Sans", sans-serif;
  --td-font-heading: "Cairo", sans-serif;
}

.single-post .entry-header,
.single-post .ast-single-post-order .entry-header,
.single-post .entry-meta { display: none !important; }

/* 3. ontent column wrapper */
.single-post .entry-content,
.single-post .contacttopsocial {
  font-family: var(--td-font-body);
  color: var(--td-text);
}
.single-post .contacttopsocial,
.single-post .contacttopsocial .wpb_column,
.single-post .wpb_text_column {
  display: block;
  width: 100%;
  max-width: 100%;
  text-align: left;
}

.single-post .contacttopsocial .wpb_column > .vc_single_image-wrapper,
.single-post .contacttopsocial .vc_single_image-wrapper {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 0;
  border: 0;
  box-shadow: none;
}
.single-post .contacttopsocial .vc_single_image-img,
.single-post .contacttopsocial .vc_single_image-wrapper img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.single-post .contacttopsocial .vc_empty_space { display: block; clear: both; }

.single-post .wpb_text_column,
.single-post .wpb_text_column p,
.single-post .wpb_text_column li {
  font-family: var(--td-font-body);
  font-size: 20px;
  line-height: 28px;
  font-weight: 300;
  color: var(--td-text);
}
.single-post .wpb_text_column p {
  margin: 15px 0 0;
  padding: 0;
}
.single-post .wpb_text_column p:first-child { margin-top: 0; }
.single-post .wpb_text_column > p { margin-top: 15px; }
.single-post .wpb_text_column > p:first-child { margin-top: 0; }
.single-post .wpb_text_column p:empty { display: none; }   /* stray empty <p> from auto-paragraphing */

.single-post .wpb_text_column ul,
.single-post .wpb_text_column ol { margin: 0 0 20px 1.2em; padding: 0; }
.single-post .wpb_text_column li { margin: 0 0 4px; }

.single-post .wpb_text_column h2 {
  font-family: var(--td-font-body);
  font-size: 30px;
  line-height: 40px;
  font-weight: 700;
  letter-spacing: -1px;
  text-transform: uppercase;
  color: var(--td-heading);
  margin: 25px 0 10px;
  padding: 0;
}
.single-post .wpb_text_column h3 {
  font-family: var(--td-font-heading);
  font-size: 30px;
  line-height: 40px;
  font-weight: 700;
  letter-spacing: -1px;
  text-transform: capitalize;
  color: var(--td-heading);
  margin: 20px 0 10px;
  padding: 0;
}
.single-post .wpb_text_column h2:first-child,
.single-post .wpb_text_column h3:first-child { margin-top: 0; }

.single-post .wpb_text_column a {
  color: var(--td-link);
  text-decoration: none;
  font-weight: inherit;
  transition: color .15s ease-out;
}
.single-post .wpb_text_column a:hover { color: var(--td-heading); }
.single-post .wpb_text_column a strong { font-weight: 500; }

.single-post .faqsec {
  display: block;
  width: 100%;
  padding: 40px 0 !important;
  margin: 0;
}
.single-post .faqsec .no_accordion_holder,
.single-post .faqsec .no_accordion {
  display: block;
  margin: 0 0 30px;
  padding: 20px;
  background: #fff;
  border: 0;
  border-radius: 20px;
  box-shadow: 0 9px 38px rgba(0, 0, 0, .10);
}
.single-post .faqsec details.no_accordion_tab {
  display: block;
  margin: 0;
  padding: 0;
  background: transparent !important;  
  border: 0 !important;
  border-radius: 0;
}
.single-post .faqsec summary.no_accordion_title {
  position: relative;
  list-style: none;
  cursor: pointer;
  min-height: 42px;
  padding: 0 60px 0 0;
  display: flex;
  align-items: center;
  font-family: var(--td-font-heading);
  font-size: 20px;
  line-height: 30px;
  font-weight: 700;
  color: var(--td-heading) !important;  /* beats inline teal colour */
}
.single-post .faqsec summary.no_accordion_title::-webkit-details-marker { display: none; }
.single-post .faqsec summary.no_accordion_title::marker { content: ""; }
.single-post .faqsec summary .tab-title { display: block; color: inherit; font: inherit; }

.single-post .faqsec summary.no_accordion_title::after {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -21px;
  right: 0;
  width: 42px;
  height: 42px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%2339c6e8'/%3E%3Cstop offset='1' stop-color='%2399e0e8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M20 3h8l1.4 5.2 3.6 1.5 4.7-2.7 5.6 5.6-2.7 4.7 1.5 3.6L45 22v8l-5.2 1.4-1.5 3.6 2.7 4.7-5.6 5.6-4.7-2.7-3.6 1.5L28 45h-8l-1.4-5.2-3.6-1.5-4.7 2.7-5.6-5.6 2.7-4.7-1.5-3.6L3 28v-8l5.2-1.4 1.5-3.6-2.7-4.7 5.6-5.6 4.7 2.7 3.6-1.5z'/%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M16 21l8 8 8-8'/%3E%3C/svg%3E") center / 28px 28px no-repeat;
}
.single-post .faqsec details[open] > summary.no_accordion_title::after {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%2339c6e8'/%3E%3Cstop offset='1' stop-color='%2399e0e8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M20 3h8l1.4 5.2 3.6 1.5 4.7-2.7 5.6 5.6-2.7 4.7 1.5 3.6L45 22v8l-5.2 1.4-1.5 3.6 2.7 4.7-5.6 5.6-4.7-2.7-3.6 1.5L28 45h-8l-1.4-5.2-3.6-1.5-4.7 2.7-5.6-5.6 2.7-4.7-1.5-3.6L3 28v-8l5.2-1.4 1.5-3.6-2.7-4.7 5.6-5.6 4.7 2.7 3.6-1.5z'/%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M16 27l8-8 8 8'/%3E%3C/svg%3E") center / 28px 28px no-repeat;
}
.single-post .faqsec summary.no_accordion_title:hover { color: var(--td-accent) !important; }

.single-post .faqsec p:empty,
.single-post .faqsec br { display: none; }
.single-post .faqsec .no_accordion_content {
  display: block;
  padding: 15px 0 0;
}
.single-post .faqsec .no_accordion_content .wpb_text_column {
  display: block;
  font-size: 20px;
  line-height: 28px;
  font-weight: 300;
  color: var(--td-text);
}

.single-post .entry-content > .vc_row.wpb_row:empty,
.single-post .vc_row.wpb_row > .wpb_column:empty { display: none; }
.servicehead li.elementor-icon-list-item.elementor-inline-item svg path {
    fill: #000000 !important;
}
@media only screen and (max-width: 1024px) {
  .single-post .wpb_text_column h2,
  .single-post .wpb_text_column h3 { font-size: 26px; line-height: 34px; }
}
@media only screen and (max-width: 767px) {
  .single-post .wpb_text_column,
  .single-post .wpb_text_column p,
  .single-post .wpb_text_column li { font-size: 16px; line-height: 24px; }
  .single-post .wpb_text_column h2 { font-size: 20px; line-height: 30px; letter-spacing: -.5px; }
  .single-post .wpb_text_column h3 { font-size: 20px; line-height: 28px; letter-spacing: -.5px; }
  .single-post .faqsec { padding: 25px 0 !important; }
  .single-post .faqsec .no_accordion_holder,
  .single-post .faqsec .no_accordion { padding: 15px; margin-bottom: 20px; }
  .single-post .faqsec summary.no_accordion_title { font-size: 17px; line-height: 24px; padding-right: 50px; }
  .single-post .faqsec .no_accordion_content .wpb_text_column { font-size: 16px; line-height: 24px; }
}

body.home #frm_field_231_container select#field_8jhjm {
    color: #ffffff !important;
}