/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
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: 2.0.0
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
*/

/* 
Note to developers: 
Safer to add a CSS class to elementor widgets and add its custom CSS here rather in Elementor. Except for the page itself which may be put in Elementor itself to avoid mentioning the "page-id-123xxx" class here.
Set global colors in elementor and use here. e.g. Elementor var name "--e-global-color-abc123". It's fine to declare CSS var separately in CSS file. But do not directly use color codes.
*/

body {
  --z-color-red-cardinal: #D4212B;
  --z-color-red-crimson: #E32525;
}

/* Reusable utility classes */

.social-icons-hover-color-1 .elementor-social-icon:hover i {
  opacity: 1;
  color: var(--z-color-red-cardinal);
}

/* Page customisations */

/* Hide desktop section by default */
.holding-page-section-mobile {
  display: none !important;
}

/* On tablets and below, show mobile section and hide desktop section */
@media (max-width: 1000px) {
  .holding-page-section {
    display: none !important;
  }

  .holding-page-section-mobile {
    display: block !important;
  }
}

.holding-page-section .social-icons .elementor-social-icons-wrapper .elementor-grid-item:first-child .elementor-icon,
.holding-page-section-mobile .social-icons .elementor-social-icons-wrapper .elementor-grid-item:first-child .elementor-icon {
  margin-left: calc(var(--icon-padding) * -1);
}

.holding-page-section .play-button .elementor-button-content-wrapper,
.holding-page-section-mobile .play-button .elementor-button-content-wrapper {
  align-items: center;
}

.holding-page-section .play-button .elementor-button-icon,
.holding-page-section-mobile .play-button .elementor-button-icon {
  display: inline-flex;
}

.holding-page-section .play-button .elementor-button-text,
.holding-page-section-mobile .play-button .elementor-button-text {
  line-height: normal;
}

/* on holding page, hide 3 links to privacy, cookie and terms on both desktop and mobile section */
.holding-page-section .elementor-element-e2b9629,
.holding-page-section .elementor-element-ab4c7db,
.holding-page-section .elementor-element-1f9951d,
.holding-page-section-mobile .elementor-element-46dc04b,
.holding-page-section-mobile .elementor-element-00efc58,
.holding-page-section-mobile .elementor-element-b6121de {
  display: none;
}

/* on holding page, hide 3 links to privacy, cookie and terms on both desktop and mobile section. also adjust spacing */
.holding-page-section-mobile .social-icons,
.holding-page-section .social-icons {
  margin-bottom: -2rem !important;
  z-index: 1;
}

/* Large Laptops */
@media (max-width: 1600px) {
  .holding-page-section {
    padding-left: 3em !important;
    padding-right: 3em !important;
  }

  .holding-page-section .content-column-left>div {
    padding: 4em 2em 4em 0em !important;
  }
}

/* Laptops and Landscape Tablets */
@media (max-width: 1400px) {
  .holding-page-section {
    padding-left: 3em !important;
    padding-right: 3em !important;
  }

  .holding-page-section .content-column-left>div {
    padding: 4em 2em 4em 0em !important;
  }

  .holding-page-section .content-column-left .site-logo img {
    height: 7.125rem !important;
  }

  .holding-page-section .content-column-left .contact-address {
    max-width: 80% !important;
  }

  .holding-page-section .content-column-left .contact-phone .elementor-heading-title,
  .holding-page-section .content-column-left .contact-email .elementor-heading-title {
    font-size: 4.375em !important;
  }

  .holding-page-section .content-column-right .title-text .elementor-heading-title {
    font-size: 10em !important;
  }

  .holding-page-section .content-column-right .subtitle-text .elementor-heading-title {
    font-size: 3.375em !important;
  }
}

/* Potrait Tablets and Large Mobiles */
@media (max-width: 1000px) {}

/* Mobiles */
@media (max-width: 800px) {}

body {
  --z-color-red-cardinal: #D4212B;
  --z-header--style-1--min-height: 115px;
}

/* Reusable utility classes */
/* all these must have !important flag */

/* e0--widget-name--element-name[--additional-attribute eg :focus]--css-change */

.e0--social-icons--first-item--ml-0 .elementor-social-icons-wrapper .elementor-grid-item:first-child .elementor-icon {
  margin-left: calc(var(--icon-padding) * -1);
}

/* site-logo - eg in header-section */
.site-logo svg {
  width: 7.5rem;
  height: auto;
}

.site-logo svg .cls-1 {
  fill: #fff;
}

.site-logo svg:hover .cls-1 {
  fill: var(--z-color-red-cardinal);
}

.site-logo svg .cls-2 {
  fill: var(--z-color-red-cardinal);
}

/* part_of_ts_group-logo - eg in footer-section */
.part_of_ts_group-logo svg {
  width: auto;
  height: 2.5rem
}

.part_of_ts_group-logo svg .cls-1 {
  fill: #fff;
}

.part_of_ts_group-logo svg:hover .cls-1 {
  fill: var(--z-color-red-cardinal);
}

svg.twitter-x-logo:hover path {
  fill: var(--z-color-red-cardinal);
}

/* utility reusbale non-specific claseses for elementor */

.e0--text-editor--last-p--mb-0 p:last-of-type {
  margin-bottom: 0 !important;
}

.e0--form--field--pl-0 .elementor-field-textual,
.e0--form--field--pl-0 input[type=date],
.e0--form--field--pl-0 input[type=email],
.e0--form--field--pl-0 input[type=number],
.e0--form--field--pl-0 input[type=password],
.e0--form--field--pl-0 input[type=search],
.e0--form--field--pl-0 input[type=tel],
.e0--form--field--pl-0 input[type=text],
.e0--form--field--pl-0 input[type=url],
.e0--form--field--pl-0 select,
.e0--form--field--pl-0 textarea {
  padding-left: 0 !important;
}

.e0--form--field--focus--box-shadow-none .elementor-field-textual:focus {
  box-shadow: none !important;
}

.e0--form--button--inline button[type="submit"] {
  max-width: fit-content !important;
}

.e0--btn-txt--lh-normal .elementor-button-text {
  line-height: normal !important;
}

.e0--btn-content-wrapper--d-inline-flex .elementor-button-content-wrapper {
  display: inline-flex !important;
}

.e0--btn-content-wrapper--align-items-center .elementor-button-content-wrapper {
  align-items: center !important;
}

/* min view height without header */
.e0--section--min-vh-wo-header>.elementor-container {
  min-height: calc(100vh - var(--z-header--style-1--min-height));
}

.e0--0--min-vh-50 {
  min-height: 50vh;
}

.e0--column--padding--sides-global>.elementor-widget-wrap {
  padding-left: 17vw !important;
  padding-right: 17vw !important;
}

@media (max-width: 1600px) and (min-width: 1025px) {
  .e0--column--padding--sides-global>.elementor-widget-wrap {
    padding-left: 9vw !important;
    padding-right: 9vw !important;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {

  .e0--column--padding--sides-global>.elementor-widget-wrap,
  .e0--column--padding--sides-tablet-global>.elementor-widget-wrap {
    padding-left: 19vw !important;
    padding-right: 19vw !important;
  }
}

@media (max-width: 767px) {

  .e0--column--padding--sides-global>.elementor-widget-wrap,
  .e0--column--padding--sides-mobile-global>.elementor-widget-wrap {
    padding-left: 10vw !important;
    padding-right: 10vw !important;
  }
}

/* 
types of bordered sections

one side - line only, no curve
  bordered-section.bordered-line-left
  bordered-section.bordered-line-right
both sides - line only but no curve
  bordered-section.bordered-line-left-right

one side - top/bottom curve
  bordered-section.bordered-curve-top-left
  bordered-section.bordered-curve-top-right
  bordered-section.bordered-curve-bottom-left
  bordered-section.bordered-curve-bottom-right
both sides - top curve
  bordered-section.bordered-curve-top-left-right
both sides - bottom curve
  bordered-section.bordered-curve-bottom-left-right
*/

/*  new type - bordered-section.bordered-curve-top-left-right */
/* new type - bordered-section.bordered-curve-bottom-left-right */

.bordered-section.bordered-line-left-right,
.bordered-section.bordered-curve-top-left-right,
.bordered-section.bordered-curve-bottom-left-right {
  padding-left: 11vw !important;
  padding-right: 11vw !important;
}

.bordered-section.bordered-line-left-right .content-column-wrapper-column,
.bordered-section.bordered-curve-top-left-right .content-column-wrapper-column,
.bordered-section.bordered-curve-bottom-left-right .content-column-wrapper-column {
  /* width: 84% !important; */
  flex: 1;
}

.bordered-section.bordered-line-left-right .border-column-left,
.bordered-section.bordered-line-left-right .border-column-right,
.bordered-section.bordered-curve-top-left-right .border-column-top-left,
.bordered-section.bordered-curve-top-left-right .border-column-top-right,
.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left,
.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right {
  /* width: 8% !important; */
  width: 6vw !important;
}

.bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer>div.elementor-widget-wrap,
.bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
.bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
.bordered-section.bordered-line-left-right .border-column-left>div.elementor-widget-wrap,
.bordered-section.bordered-line-left-right .border-column-right>div.elementor-widget-wrap,
.bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap,
.bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap,
.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap,
.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
  /* padding: 0 !important; */
  border-style: solid;
}

.bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
.bordered-section.bordered-line-left-right .border-column-left>div.elementor-widget-wrap {
  border-width: 0 0 0 1px !important;
  margin: 0 1rem 0 0 !important;
}

.bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer>div.elementor-widget-wrap,
.bordered-section.bordered-line-left-right .border-column-right>div.elementor-widget-wrap {
  border-width: 0 1px 0 0 !important;
  margin: 0 0 0 1rem !important;
}

.bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap,
.bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
  align-content: flex-start !important;
  align-items: flex-start !important;
}

.bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
.bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap {
  border-width: 1px 0 0 1px !important;
  margin: 1.5rem 1rem 0 0 !important;
}

.bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
  border-width: 1px 1px 0 0 !important;
  margin: 1.5rem 0 0 1rem !important;
}

.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap,
.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
  align-content: flex-end;
  align-items: flex-end;
}

.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
  border-width: 0 0 1px 1px;
  margin: 0 3.5rem 1.5rem 0 !important;
}

.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
  border-width: 0 1px 1px 0 !important;
  margin: 0 0 1.5rem 3.5rem !important;
}

/* one side specific */

/* 
structure:

.bordered-section.bordered-only-curve-top-left
  border-parent-column-left
    border-left-inner_section
      border-left-inner_section-column-spacer
      border-left-inner_section-column-content
  border-parent-column-right
  */

.bordered-section.bordered-only-line-right .border-parent-column-right,
.bordered-section.bordered-only-line-left .border-parent-column-left,
.bordered-section.bordered-only-line-right .border-parent-column-right,
.bordered-section.bordered-only-line-left .border-parent-column-right,
.bordered-section.bordered-only-curve-top-left .border-parent-column-left,
.bordered-section.bordered-only-curve-top-left .border-parent-column-right {
  width: 50vw !important;
}

.bordered-section.bordered-only-line-right .border-parent-column-right>.elementor-widget-wrap,
.bordered-section.bordered-only-line-left .border-parent-column-left>.elementor-widget-wrap,
.bordered-section.bordered-only-curve-top-left .border-parent-column-left>.elementor-widget-wrap {
  flex-direction: column;
}

.bordered-section.bordered-only-line-left .border-left-inner_section,
.bordered-section.bordered-only-curve-top-left .border-left-inner_section {
  flex: 1;
  padding-left: 11vw;
}

.bordered-section.bordered-only-line-right .border-right-inner_section {
  flex: 1;
  padding-right: 11vw;
}

.bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer,
.bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer,
.bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer {
  width: 6vw !important;
}

.bordered-section.bordered-only-line-right.bordered-line-2x .border-right-inner_section-column-spacer,
.bordered-section.bordered-only-line-left.bordered-line-2x .border-left-inner_section-column-spacer {
  width: 10vw !important;
}

.bordered-section.bordered-only-line-right .border-right-inner_section-column-content,
.bordered-section.bordered-only-line-left .border-left-inner_section-column-content,
.bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-content {
  flex: 1;
}

/* bordered-other-style-1 is used with bordered-only-curve-top-left */

.bordered-section.bordered-other-style-1 .border-left-inner_section-column-spacer>div.elementor-widget-wrap {
  border-width: 0 0 0 1px !important;
  margin: 1.5rem 0 1.5rem 0 !important;
}

.bordered-section.bordered-other-style-1 .border-left-inner_section-column-content {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.bordered-section.bordered-other-style-1 .border-left-inner_section-column-spacer .middle-box {
  margin-right: 3.5rem;
}

/* Large Laptops */
@media (max-width: 1600px) and (min-width: 1025px) {

  .bordered-section.bordered-line-left-right,
  .bordered-section.bordered-curve-top-left-right,
  .bordered-section.bordered-curve-bottom-left-right {
    padding-left: 3vw !important;
    padding-right: 3vw !important;
  }

  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-left>div.elementor-widget-wrap {
    margin: 0 1rem 0 0 !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-right>div.elementor-widget-wrap {
    margin: 0 0 0 1rem !important;
  }

  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap {
    margin: 1.5rem 1rem 0 0 !important;
  }

  .bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
    margin: 1.5rem 0 0 1rem !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
    margin: 0 3rem 1.5rem 0 !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
    margin: 0 0 1.5rem 3rem !important;
  }

  /* one side specific */

  .bordered-section.bordered-only-line-left .border-left-inner_section,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section {
    padding-left: 3vw;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section {
    padding-right: 3vw;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer,
  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer {
    width: 6vw !important;
  }

  .bordered-section.bordered-other-style-1 .border-left-inner_section-column-spacer .middle-box {
    margin-right: 3rem;
  }
}

/* Laptops and Landscape Tablets */
@media (max-width: 1200px) and (min-width: 1025px) {

  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-left>div.elementor-widget-wrap {
    margin: 0 1rem 0 0 !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-right>div.elementor-widget-wrap {
    margin: 0 0 0 1rem !important;
  }

  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap {
    margin: 1.5rem 1rem 0 0 !important;
  }

  .bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
    margin: 1.5rem 0 0 1rem !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
    margin: 0 0 1.5rem 0 !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
    margin: 0 0 1.5rem 0 !important;
  }
}

/* Potrait Tablets and Large Mobiles */
@media (max-width: 1024px) and (min-width: 768px) {

  .bordered-section.bordered-line-left-right .content-column-wrapper-column,
  .bordered-section.bordered-curve-top-left-right .content-column-wrapper-column,
  .bordered-section.bordered-curve-bottom-left-right .content-column-wrapper-column {
    /* width: 64% !important; */
    flex: 1;
  }

  .bordered-section.bordered-line-left-right .border-column-left,
  .bordered-section.bordered-line-left-right .border-column-right,
  .bordered-section.bordered-curve-top-left-right .border-column-top-left,
  .bordered-section.bordered-curve-top-left-right .border-column-top-right,
  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left,
  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right {
    /* width: 18% !important; */
    width: 16vw !important;
  }

  .bordered-section.bordered-section--reduced-side-space.bordered-line-left .content-column-wrapper-column,
  .bordered-section.bordered-section--reduced-side-space.bordered-line-right .content-column-wrapper-column {
    /* width: 90% !important; */
    flex: 1;
  }

  .bordered-section.bordered-section--reduced-side-space.bordered-line-left-right .content-column-wrapper-column,
  .bordered-section.bordered-section--reduced-side-space.bordered-curve-top-left-right .content-column-wrapper-column,
  .bordered-section.bordered-section--reduced-side-space.bordered-curve-bottom-left-right .content-column-wrapper-column {
    /* width: 80% !important; */
    flex: 1;
  }

  .bordered-section.bordered-section--reduced-side-space.bordered-line-left .border-column-left,
  .bordered-section.bordered-section--reduced-side-space.bordered-line-right .border-column-right,
  .bordered-section.bordered-section--reduced-side-space.bordered-line-left-right .border-column-left,
  .bordered-section.bordered-section--reduced-side-space.bordered-line-left-right .border-column-right,
  .bordered-section.bordered-section--reduced-side-space.bordered-curve-top-left-right .border-column-top-left,
  .bordered-section.bordered-section--reduced-side-space.bordered-curve-top-left-right .border-column-top-right,
  .bordered-section.bordered-section--reduced-side-space.bordered-curve-bottom-left-right .border-column-bottom-left,
  .bordered-section.bordered-section--reduced-side-space.bordered-curve-bottom-left-right .border-column-bottom-right {
    /* width: 10% !important; */
    width: 9vw !important;
  }

  .bordered-section.bordered-line-left-right,
  .bordered-section.bordered-curve-top-left-right,
  .bordered-section.bordered-curve-bottom-left-right {
    padding-left: 3vw !important;
    padding-right: 3vw !important;
  }

  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-left>div.elementor-widget-wrap {
    margin: 0 1rem 0 0 !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-right>div.elementor-widget-wrap {
    margin: 0 0 0 1rem !important;
  }

  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap {
    margin: 1.5rem 1rem 0 0 !important;
  }

  .bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
    margin: 1.5rem 0 0 1rem !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
    margin: 0 2rem 1.5rem 0 !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
    margin: 0 0 1.5rem 2rem !important;
  }

  /* one side specific */

  .bordered-section.bordered-only-line-right .border-parent-column-right,
  .bordered-section.bordered-only-line-left .border-parent-column-left,
  .bordered-section.bordered-only-line-right .border-parent-column-right,
  .bordered-section.bordered-only-line-left .border-parent-column-right,
  .bordered-section.bordered-only-curve-top-left .border-parent-column-left,
  .bordered-section.bordered-only-curve-top-left .border-parent-column-right {
    width: 100vw !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section,
  .bordered-section.bordered-only-line-left .border-left-inner_section,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section {
    padding-left: 3vw;
    padding-right: 3vw;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer,
  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer {
    width: 16vw !important;
  }

  .bordered-section.bordered-only-line-left .border-left-inner_section-column-content,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-content {
    padding-right: 16vw !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-content {
    padding-left: 16vw !important;
  }

  .bordered-section.bordered-other-style-1 .border-left-inner_section-column-spacer>div.elementor-widget-wrap {
    margin: 1.5rem 0 1.5rem 0 !important;
  }
}

/* Mobiles */
@media (max-width: 767px) {

  .bordered-section.bordered-line-left-right .content-column-wrapper-column,
  .bordered-section.bordered-curve-top-left-right .content-column-wrapper-column,
  .bordered-section.bordered-curve-bottom-left-right .content-column-wrapper-column {
    /* width: 80% !important; */
    flex: 1;
  }

  .bordered-section.bordered-line-left-right .border-column-left,
  .bordered-section.bordered-line-left-right .border-column-right,
  .bordered-section.bordered-curve-top-left-right .border-column-top-left,
  .bordered-section.bordered-curve-top-left-right .border-column-top-right,
  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left,
  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right {
    width: 10vw !important;
  }

  .bordered-section.bordered-line-left-right,
  .bordered-section.bordered-curve-top-left-right,
  .bordered-section.bordered-curve-bottom-left-right {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-left>div.elementor-widget-wrap {
    margin: 0 1rem 0 1rem !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-line-left-right .border-column-right>div.elementor-widget-wrap {
    margin: 0 1rem 0 1rem !important;
  }

  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer>div.elementor-widget-wrap,
  .bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap {
    margin: 1.5rem 0 0 1rem !important;
  }

  .bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
    margin: 1.5rem 1rem 0 0 !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
    margin: 0 0 1.5rem 1rem !important;
  }

  .bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
    margin: 0 1rem 1.5rem 0 !important;
  }

  /* one side specific */

  .bordered-section.bordered-only-line-left .border-left-inner_section,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section {
    padding-left: 0;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section {
    padding-right: 0;
  }

  .bordered-section.bordered-only-line-right .border-parent-column-right,
  .bordered-section.bordered-only-line-left .border-parent-column-left,
  .bordered-section.bordered-only-curve-top-left .border-parent-column-left,
  .bordered-section.bordered-only-line-right .border-parent-column-right,
  .bordered-section.bordered-only-line-left .border-parent-column-right,
  .bordered-section.bordered-only-curve-top-left .border-parent-column-right {
    width: 100vw !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-spacer,
  .bordered-section.bordered-only-line-left .border-left-inner_section-column-spacer,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-spacer {
    width: 10vw !important;
  }

  .bordered-section.bordered-only-line-left .border-left-inner_section-column-content,
  .bordered-section.bordered-only-curve-top-left .border-left-inner_section-column-content {
    padding-right: 10vw !important;
  }

  .bordered-section.bordered-only-line-right .border-right-inner_section-column-content {
    padding-left: 10vw !important;
  }

  .bordered-section.bordered-other-style-1 .border-left-inner_section-column-spacer>div.elementor-widget-wrap {
    margin: 1.5rem 0 1.5rem 1rem !important;
  }

  .bordered-section.bordered-other-style-1 .middle-box>div.elementor-widget-container {
    border-width: 0 !important;
  }
}


/* Page Layout - Header and Footer */

.header-section {
  min-height: var(--z-header--style-1--min-height);
}

@media (max-width: 1200px) and (min-width: 1025px) {
  .header-section .header-menu {
    --e-nav-menu-horizontal-menu-item-margin: calc(1.5em / 2) !important;
  }

  .footer-section .content-column-left .contact-phone .elementor-heading-title,
  .footer-section .content-column-left .contact-email .elementor-heading-title {
    font-size: 1.875rem !important;
  }
}

.elementor-widget-spacer.border-curves-inner-div {
  /* 	 temp hide */
  display: none;
}

/* make it specific to header */
.bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap {
  /* margin: 57.5px 1rem 0 0 !important; */
}

/* make it specific to header */
.bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
  /* margin: 57.5px 0 0 1rem !important; */
}

.header-section.bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap,
.header-section.bordered-section.bordered-curve-top-left-right .border-column-top-right>div.elementor-widget-wrap {
  margin-top: 57.5px !important;
}

/* todo: "bordered-curve-bottom-left-right" used only for footer i think */

.footer-section.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
  margin: 0 !important;
}

.footer-section.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
  margin: 0 !important;
}

@media (max-width: 767px) {
  .footer-section.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-left>div.elementor-widget-wrap {
    margin: 0 0 0 1rem !important;
  }

  .footer-section.bordered-section.bordered-curve-bottom-left-right .border-column-bottom-right>div.elementor-widget-wrap {
    margin: 0 1rem 0 0 !important;
  }
}

/* Page Layout - Header and Footer */

.header-section .header-divider {
  flex: 1;
}

/* social wall 1 */

/* social wall - main */

.social-wall-1 .sbsw-d-none {
  display: none !important;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-inner {
  height: 400px;
}

/* social wall - media */

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-media {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  overflow-y: hidden;
  display: flex;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-media img {
  height: 100%;
  object-fit: cover;
  flex: 1;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-icon {
  top: 20px;
  right: 20px;
  bottom: 0;
  width: 30px;
  height: 30px;
  padding: 0;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-icon a {
  color: rgb(212, 33, 43) !important;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-icon svg {
  height: 30px;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-lightbox-hover {
  background: rgb(2 2 2 / 0%);
}

/* social wall - header */

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-header {
  color: #000;
  background-color: #000000a1;
  height: 100%;
  position: absolute !important;
  top: 0;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-identity .sbsw-date,
.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-header a {
  color: #000;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-header {
  background: #fff;
  padding: 56px 36px;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-media+.sbsw-item-header {
  color: #fff;
  background: rgb(0 0 0 / 60%);
  display: none;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-media+.sbsw-item-header .sbsw-identity .sbsw-date,
.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-item-media+.sbsw-item-header a {
  color: #fff;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item.sbsw-item:hover .sbsw-item-media+.sbsw-item-header {
  display: block;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-retweeted-text {
  padding-left: 0;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-identity .sbsw-author {
  min-height: 0;
  padding-left: 0;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-author-name {
  font-size: 16px;
  padding: 0;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-identity .sbsw-author-name p {
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5em;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item.sbsw-item p.sbsw-content-text {
  padding: 20px 0 0 0;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  font-size: 1.5rem;
  line-height: 1.33em;
  max-height: 9em;
  overflow: hidden;
  background: -moz-linear-gradient(0deg, #00000050 0%, #ffffff00 25%);
  background: -webkit-linear-gradient(0deg, #00000050 0%, #ffffff00 25%);
  background: linear-gradient(0deg, #00000050 0%, #ffffff00 25%);
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item hr {
  color: #0E1923;
  width: 20%;
  margin: 20px 0;
}

.social-wall-1 [id^=sb-wall].sb-wall .z-custom-sbsw-item .sbsw-date p {
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5em;
}

/* social wall - other */

.social-wall-1 [id^=sb-wall].sb-wall .sb-wall-footer {
  display: flex;
  justify-content: center;
}

.social-wall-1 [id^=sb-wall].sb-wall .sb-wall-load-btn {
  width: fit-content;
  padding: 10px 20px;
  border-radius: 0;
  margin-top: 2rem;
}

.social-wall-1 [id^=sb-wall].sb-wall .sb-wall-load-btn .sb-wall-btn-text {
  color: #ffffff;
}

/* new */


/* 

used border classes

.bordered-section.bordered-curve-top-left-right .border-column-top-left>div.elementor-widget-wrap
nah, compare with tss

bordered-section.bordered-vertical_center-left_right-fill

bordered-section.bordered-vertical_center-left_only-fill
bordered-section.bordered-vertical_center-right_only-fill

.bordered-line-2x

*/

/* for hero on other pages except homepage */
.bordered-section.bordered-vertical_center-left_right-fill .border-column-left,
.bordered-section.bordered-vertical_center-left_right-fill .border-column-right {

  /* width: fit-content !important; */
  flex: 1 0 !important;
  width: min-content !important;
}

.bordered-section.bordered-vertical_center-left_right-fill .content-column-wrapper-column {

  flex: auto !important;
  width: min-content !important;
  /* flex-basis: content; */
}

.bordered-section.bordered-line-2x .border-column-left,
.bordered-section.bordered-line-2x .border-column-right {
  width: 10vw !important;
}

.bordered-section.bordered-line-3x .border-column-left,
.bordered-section.bordered-line-3x .border-column-right {
  width: 18vw !important;
}

@media (max-width: 1024px) and (min-width: 768px) {

  .bordered-section.bordered-line-2x .border-column-left,
  .bordered-section.bordered-line-2x .border-column-right {
    width: 6vw !important;
  }

  .bordered-section.bordered-line-3x .border-column-left,
  .bordered-section.bordered-line-3x .border-column-right {
    width: 6vw !important;
  }
}

@media (max-width: 767px) {

  .bordered-section.bordered-line-2x .border-column-left,
  .bordered-section.bordered-line-2x .border-column-right {
    width: 10vw !important;
  }

  .bordered-section.bordered-line-3x .border-column-left,
  .bordered-section.bordered-line-3x .border-column-right {
    width: 10vw !important;
  }

  .bordered-section .elementor-widget-divider {
    display: none;
  }
}


/* Homepage - Case Grid Section */

.case-studies-grid {
  position: relative;
  overflow: hidden;
  /* Ensures the content doesn't overflow */
}

.case-studies-grid .elementor-posts .elementor-post__title {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  transition: transform 1s ease;
  width: 100%;
  text-align: center;
  /*background-color: rgba(255, 255, 255, 0.5);*/
  padding: 15px;
  border-radius: 5px;
  opacity: 0;
  font-size: 1rem;
  /* reset elementor default */
}

.case-studies-grid .elementor-post__title a {
  color: #fff;
  font-family: "Dharma Gothic E", Sans-serif !important;
  font-size: 5em;
  font-weight: 900;
  line-height: 1.2;
}

.case-studies-grid:hover .elementor-post__title {
  opacity: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.case-studies-grid:hover .elementor-post__thumbnail {
  background-image: linear-gradient(0deg, #f75c64 10%, #a70009 90%);
  background-size: 1px 3px;
}

.case-studies-grid:hover .elementor-post__thumbnail img {
  mix-blend-mode: multiply;
}

/* .case-studies-grid a:active, */
.case-studies-grid a {
  /* disable link click until page live */
  cursor: default !important;
  pointer-events: none;
}

@media (max-width: 1600px) and (min-width: 1025px) {

  .case-studies-grid .elementor-posts .elementor-post__title,
  .case-studies-grid-section .quote-heading,
  .case-studies-grid-section .quote-author,
  .case-studies-grid-section .quote-author-subline {
    font-size: 0.75em;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {

  .case-studies-grid .elementor-posts .elementor-post__title,
  .case-studies-grid-section .quote-heading,
  .case-studies-grid-section .quote-author,
  .case-studies-grid-section .quote-author-subline {
    font-size: 0.75em;
  }
}

@media (max-width: 767px) {

  .case-studies-grid .elementor-posts .elementor-post__title,
  .case-studies-grid-section .quote-heading,
  .case-studies-grid-section .quote-author,
  .case-studies-grid-section .quote-author-subline {
    font-size: 0.5em;
  }
}

/* Homepage - Brands slider */

/* .brands-dot-icons-class .elementor-icon-list-icon i.far.fa-circle:active,
.brands-dot-icons-class .elementor-icon-list-icon i.far.fa-circle:focus {
  font-weight: 900;
  color: #000;
}

.brands-dot-icons-class .elementor-icon-list-icon i.far.fa-circle:hover {
  font-weight: 900;
  color: #e32525;
} */

/* .brands-section-1 #brands-slider .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
  display: none;
}

.brands-section-1 #brands-slider .elementor img {
  height: auto;
  width: 7.5rem;
  border: none;
  border-radius: 0;
  box-shadow: none;
  max-height: 7.5rem;
  max-width: 100%;
  margin: 1rem;
} */

.brands-slider-widget .swiper-slide-inner {
  align-items: center !important;
}

.brands-slider-widget .swiper-slide-contents {
  max-width: 100% !important;
}

.brands-slider-widget .swiper-slide-bg {
  background-color: #00000000 !important;
}

.brands-slider-widget .brands-loop-item-section {
  min-height: 7rem !important;
}

.brands-slider-widget .brands-loop-item-section img {
  max-height: 7rem !important;
}

.brands-slider-widget {
  --swiper-pagination-bullet-size: 10px;
  --swiper-pagination-bullet-horizontal-gap: 10px;
}

.brands-slider-widget .swiper-pagination {
  bottom: -2rem !important;
}

@media (max-width: 767px) {
  .brands-section.bordered-section.bordered-line-left-right .content-column-wrapper-column {
    /* temporary fix since `flex: 1;` isn't working as expected */
    width: 80vw !important;
  }

  .brands-slider-widget .swiper-slide {
    /* height: 275px !important; */
    height: 300px !important;
  }

  .brands-slider-widget .brands-loop-grid-widget {
    --grid-column-gap: 1.5rem !important;
    --grid-row-gap: 1rem !important;
  }

  .brands-slider-widget .brands-loop-item-section {
    min-height: 5rem !important;
  }

  .brands-slider-widget .brands-loop-item-section img {
    max-height: 5rem !important;
  }
}

/* other */

.z--h-100 {
  height: 100%;
}

.z--h-100--child>div {
  height: 100%;
}

/* 	instead, maybe just put on section with common css class like overflow-x-hidden */
/* .elementor-location-header.elementor-1969 {
  overflow-x: hidden;
} */


@media (max-width: 1600px) {

  /* .hero-h1, */
  .title-text .elementor-heading-title {
    font-size: 10em !important;
  }
}

@media (max-width: 1200px) {

  /* .hero-h1, */
  .title-text .elementor-heading-title {
    font-size: 8em !important;
  }
}
@media (max-width: 1024px) {
#brands-loop-grid .e-loop-item.brand.type-brand .elementor-widget-image img {
    max-height: 7rem !important;
    max-width: 7rem;
}
#brands-loop-grid .e-loop-item.brand.type-brand {
    max-height: 125px;
}
.brands-carousel-section .e-loop-item.brand.type-brand .elementor-widget-image img {
    max-width: 7rem;
}
.brands-carousel-section .swiper-slide .e-loop-item.brand.type-brand .brands-loop-item-section .elementor-element-populated {
    padding: 0px !important;
}	
}

#brands .elementor-pagination .page-numbers {
    position: relative;
    text-indent: -9999px; /* Hide the original number text */
    width: 10px; /* Set size of the dot */
    height: 10px; /* Set size of the dot */
    display: inline-block;
    line-height: 1;
}

#brands .elementor-pagination .page-numbers::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 8px; /* Size of the dot */
    height: 8px; /* Size of the dot */
    background-color: #aaa; /* Color of the dot */
    border-radius: 50%; /* Make it circular */
}

#brands .elementor-pagination .page-numbers.current::before {
    background-color: #000; /* Different color for current page */
    width: 10px; /* Slightly larger dot for current page */
    height: 10px;
}

/* Ensure screen reader text remains accessible */
#brands .elementor-screen-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.brands-carousel-section .swiper-slide .e-loop-item.brand.type-brand .brands-loop-item-section .elementor-element-populated {
    padding: 15px;
}