/*!
Theme Name: DC Theme
Description: Theme for DC Sites
Author: DOJO Creative
Author URI: https://letsgodojo.com/
Template: hello-elementor
Version: 1.0.0
Text Domain: dctheme
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/
/* Add your custom styles here */
:root {
  --e-global-color-primary: #010A17;
  --e-global-color-secondary: #015699;
  --e-global-color-text: #FFFFFF;
  --e-global-color-accent: #D3B34E;
  --e-global-color-d08605a: #AB8E32;
  --e-global-color-17264f4: #003E6E;
}

table {
  font-size: 1em;
}

@media (max-width: 1024px) {
  .p-con-image-bg,
  .triangle-bottom {
    clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%) !important;
  }
}
@media (max-width: 767px) {
  .p-con-image-bg,
  .triangle-bottom {
    clip-path: polygon(0 0, 100% 0, 100% 92%, 50% 96%, 0 92%) !important;
  }
}
main#content {
  --padding-top: 4rem;
  --padding-bottom: 4rem;
  padding-top: var(--padding-top);
  padding-bottom: var(--padding-bottom);
}
@media (max-width: 1024px) {
  main#content {
    --padding-top: 3rem;
    --padding-bottom: 3rem;
  }
}
@media (max-width: 767px) {
  main#content {
    --padding-top: 2.5rem;
    --padding-bottom: 2.5rem;
  }
}

.elementor-page main#content {
  padding-top: 0;
  padding-bottom: 0;
}

.e-con.p-con-dark {
  --padding-top: 4rem;
  --padding-bottom: 4rem;
  --e-global-color-text: #fff;
  --e-global-color-primary: #fff;
  background-color: #F16122;
  color: var(--e-global-color-text, inherit);
  /* Increase specificity for dark container headings */
}
@media (max-width: 1024px) {
  .e-con.p-con-dark {
    --padding-top: 3rem;
    --padding-bottom: 3rem;
  }
}
@media (max-width: 767px) {
  .e-con.p-con-dark {
    --padding-top: 2.5rem;
    --padding-bottom: 2.5rem;
  }
}
.e-con.p-con-dark + .e-con.p-con-dark {
  --padding-top:0;
}
.e-con.p-con-dark h1, .e-con.p-con-dark h2, .e-con.p-con-dark h3, .e-con.p-con-dark h4, .e-con.p-con-dark h5, .e-con.p-con-dark h6,
.e-con.p-con-dark .elementor-widget-heading h1,
.e-con.p-con-dark .elementor-widget-heading h2,
.e-con.p-con-dark .elementor-widget-heading h3,
.e-con.p-con-dark .elementor-widget-heading h4,
.e-con.p-con-dark .elementor-widget-heading h5,
.e-con.p-con-dark .elementor-widget-heading h6,
.e-con.p-con-dark .elementor-heading-title {
  color: var(--White, #FFF) !important;
}
.e-con.p-con-dark > .elementor-button-wrapper .elementor-button,
.e-con.p-con-dark > .elementor-widget-button .elementor-button,
.e-con.p-con-dark > .wp-block-button .wp-block-button__link {
  background-color: #294178 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.e-con.p-con-dark > .elementor-button-wrapper .elementor-button:hover, .e-con.p-con-dark > .elementor-button-wrapper .elementor-button:focus, .e-con.p-con-dark > .elementor-button-wrapper .elementor-button:active,
.e-con.p-con-dark > .elementor-widget-button .elementor-button:hover,
.e-con.p-con-dark > .elementor-widget-button .elementor-button:focus,
.e-con.p-con-dark > .elementor-widget-button .elementor-button:active,
.e-con.p-con-dark > .wp-block-button .wp-block-button__link:hover,
.e-con.p-con-dark > .wp-block-button .wp-block-button__link:focus,
.e-con.p-con-dark > .wp-block-button .wp-block-button__link:active {
  background-color: #D64100 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.e-con.p-con-image-bg {
  --padding-top: 4rem;
  --padding-bottom: 4rem;
  clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
  margin-top: -270px !important;
  position: relative !important;
  z-index: 1 !important;
  --e-global-color-text: #fff !important;
  --e-global-color-primary: #fff !important;
  background-color: #0F182D !important;
  color: var(--e-global-color-text, #fff) !important;
  /* Increase specificity for image background container headings */
}
@media (max-width: 1024px) {
  .e-con.p-con-image-bg {
    --padding-top: 3rem;
    --padding-bottom: 3rem;
  }
}
@media (max-width: 767px) {
  .e-con.p-con-image-bg {
    --padding-top: 2.5rem;
    --padding-bottom: 2.5rem;
  }
}
.e-con.p-con-image-bg + .e-con.p-con-image-bg {
  --padding-top:0 !important;
}
.elementor-edit-mode .e-con.p-con-image-bg {
  margin-top: 0 !important;
}
.e-con.p-con-image-bg h1, .e-con.p-con-image-bg h2, .e-con.p-con-image-bg h3, .e-con.p-con-image-bg h4, .e-con.p-con-image-bg h5, .e-con.p-con-image-bg h6,
.e-con.p-con-image-bg .elementor-widget-heading h1,
.e-con.p-con-image-bg .elementor-widget-heading h2,
.e-con.p-con-image-bg .elementor-widget-heading h3,
.e-con.p-con-image-bg .elementor-widget-heading h4,
.e-con.p-con-image-bg .elementor-widget-heading h5,
.e-con.p-con-image-bg .elementor-widget-heading h6,
.e-con.p-con-image-bg .elementor-heading-title {
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.7) !important;
}
.e-con.p-con-image-bg p {
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.7) !important;
  font-family: Roboto !important;
  font-size: 20px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 30px !important; /* 150% */
}
.e-con.p-con-image-bg > .elementor-button-wrapper .elementor-button,
.e-con.p-con-image-bg > .elementor-widget-button .elementor-button,
.e-con.p-con-image-bg > .wp-block-button .wp-block-button__link {
  background-color: #F16122 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.e-con.p-con-image-bg > .elementor-button-wrapper .elementor-button:hover, .e-con.p-con-image-bg > .elementor-button-wrapper .elementor-button:focus, .e-con.p-con-image-bg > .elementor-button-wrapper .elementor-button:active,
.e-con.p-con-image-bg > .elementor-widget-button .elementor-button:hover,
.e-con.p-con-image-bg > .elementor-widget-button .elementor-button:focus,
.e-con.p-con-image-bg > .elementor-widget-button .elementor-button:active,
.e-con.p-con-image-bg > .wp-block-button .wp-block-button__link:hover,
.e-con.p-con-image-bg > .wp-block-button .wp-block-button__link:focus,
.e-con.p-con-image-bg > .wp-block-button .wp-block-button__link:active {
  background-color: #294178 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.e-con.p-con-def {
  --padding-top: 4rem;
  --padding-bottom: 4rem;
}
@media (max-width: 1024px) {
  .e-con.p-con-def {
    --padding-top: 3rem;
    --padding-bottom: 3rem;
  }
}
@media (max-width: 767px) {
  .e-con.p-con-def {
    --padding-top: 2.5rem;
    --padding-bottom: 2.5rem;
  }
}
.e-con.p-con-def + .e-con.p-con-def {
  --padding-top:0;
}
.e-con.p-con-def h1, .e-con.p-con-def h2, .e-con.p-con-def h3, .e-con.p-con-def h4, .e-con.p-con-def h5, .e-con.p-con-def h6 {
  color: #0F182D !important;
}
.e-con.p-con-def > .elementor-button-wrapper .elementor-button,
.e-con.p-con-def > .elementor-widget-button .elementor-button,
.e-con.p-con-def > .wp-block-button .wp-block-button__link {
  background-color: #F16122 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.e-con.p-con-def > .elementor-button-wrapper .elementor-button:hover, .e-con.p-con-def > .elementor-button-wrapper .elementor-button:focus, .e-con.p-con-def > .elementor-button-wrapper .elementor-button:active,
.e-con.p-con-def > .elementor-widget-button .elementor-button:hover,
.e-con.p-con-def > .elementor-widget-button .elementor-button:focus,
.e-con.p-con-def > .elementor-widget-button .elementor-button:active,
.e-con.p-con-def > .wp-block-button .wp-block-button__link:hover,
.e-con.p-con-def > .wp-block-button .wp-block-button__link:focus,
.e-con.p-con-def > .wp-block-button .wp-block-button__link:active {
  background-color: #294178 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.e-con.cut-corner {
  clip-path: polygon(0 0, 100% 0, 100% 92%, 92% 100%, 0 100%);
}
.e-con.triangle-bottom {
  clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
}
.e-con.sloped-right {
  clip-path: polygon(0 0, 75% 0, 100% 100%, 0 100%);
}
.e-con.sloped-left {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 25% 100%);
}
.e-con.grow-border-hover {
  position: relative;
  transition: transform 0.3s ease;
  overflow: visible;
}
.e-con.grow-border-hover::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: #F16122;
  transition: height 0.3s ease;
  z-index: 0;
}
.e-con.grow-border-hover:hover {
  transform: translateY(-5px);
}
.e-con.grow-border-hover:hover::after {
  height: 7px;
}
.e-con.grow-border-hover > * {
  position: relative;
  z-index: 1;
}
.e-con.grow-hover {
  position: relative;
  transition: transform 0.3s ease;
  overflow: visible;
}
.e-con.grow-hover:hover {
  transform: translateY(-5px);
}
.e-con.grow-hover > * {
  position: relative;
  z-index: 1;
}

/* Common Button Styling for all button types */
.elementor-button-wrapper .elementor-button,
.elementor-widget-button .elementor-button,
.wp-block-button .wp-block-button__link {
  position: relative;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
  overflow: visible; /* Ensure pseudo-elements are visible */
}
.elementor-button-wrapper .elementor-button:hover, .elementor-button-wrapper .elementor-button:focus, .elementor-button-wrapper .elementor-button:active,
.elementor-widget-button .elementor-button:hover,
.elementor-widget-button .elementor-button:focus,
.elementor-widget-button .elementor-button:active,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus,
.wp-block-button .wp-block-button__link:active {
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}

/* Top corner dots for all buttons */
.elementor-button-wrapper .elementor-button::before,
.elementor-button-wrapper .elementor-button::after,
.elementor-widget-button .elementor-button::before,
.elementor-widget-button .elementor-button::after,
.wp-block-button .wp-block-button__link::before,
.wp-block-button .wp-block-button__link::after {
  content: "";
  position: absolute;
  width: 1.8%;
  aspect-ratio: 1;
  background-color: white;
  border-radius: 50%;
  z-index: 1;
}

/* Top corners positioning for all buttons */
.elementor-button-wrapper .elementor-button::before,
.elementor-widget-button .elementor-button::before,
.wp-block-button .wp-block-button__link::before {
  top: 15%;
  left: 7%;
}

.elementor-button-wrapper .elementor-button::after,
.elementor-widget-button .elementor-button::after,
.wp-block-button .wp-block-button__link::after {
  top: 15%;
  right: 7%;
}

/* Bottom corners for all buttons */
.elementor-button-wrapper .elementor-button .elementor-button-text::before,
.elementor-button-wrapper .elementor-button .elementor-button-text::after,
.elementor-widget-button .elementor-button .elementor-button-text::before,
.elementor-widget-button .elementor-button .elementor-button-text::after,
.wp-block-button .wp-block-button__link::before,
.wp-block-button .wp-block-button__link::after {
  content: "";
  position: absolute;
  width: 1.8%;
  aspect-ratio: 1;
  background-color: white;
  border-radius: 50%;
  z-index: 1;
}

/* Bottom corners positioning for all buttons */
.elementor-button-wrapper .elementor-button .elementor-button-text::before,
.elementor-widget-button .elementor-button .elementor-button-text::before,
.wp-block-button .wp-block-button__link::before {
  bottom: 15%;
  left: 7%;
}

.elementor-button-wrapper .elementor-button .elementor-button-text::after,
.elementor-widget-button .elementor-button .elementor-button-text::after,
.wp-block-button .wp-block-button__link::after {
  bottom: 15%;
  right: 7%;
}

/* Responsive adjustments for button decorative elements */
@media (max-width: 767px) {
  /* Adjust dot size for smaller screens */
  .elementor-button-wrapper .elementor-button::before,
  .elementor-button-wrapper .elementor-button::after,
  .elementor-widget-button .elementor-button::before,
  .elementor-widget-button .elementor-button::after,
  .wp-block-button .wp-block-button__link::before,
  .wp-block-button .wp-block-button__link::after,
  .elementor-button-wrapper .elementor-button .elementor-button-text::before,
  .elementor-button-wrapper .elementor-button .elementor-button-text::after,
  .elementor-widget-button .elementor-button .elementor-button-text::before,
  .elementor-widget-button .elementor-button .elementor-button-text::after {
    width: 2.5%;
  }
}
#legal {
  font-size: 15px;
  color: rgba(255, 255, 255, 0.3);
}
#legal a {
  color: rgba(255, 255, 255, 0.3);
}
#legal svg .d-d {
  fill: rgba(255, 255, 255, 0.3);
}
#legal svg .d-j {
  fill: rgba(255, 255, 255, 0.3);
}

/* Gravity Forms Styles */
/* Global form styles */
.gform_wrapper {
  color: var(--Text, #3F3B3B) !important;
  /* Form fields text styling */
  /* Labels */
  /* Field descriptions */
  /* Error messages */
  /* Submit button - match default white container button styles */
  /* Form sections */
  /* Checkbox and radio styling */
  /* Required field indicator */
  /* Form footer */
}
.gform_wrapper input:not([type=submit]),
.gform_wrapper textarea,
.gform_wrapper select {
  font-family: Roboto !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  color: var(--Text, #3F3B3B) !important;
  border: 1px solid #9D9898 !important;
  background: var(--White, #FFF) !important;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.08) inset !important;
  border-radius: 0 !important;
}
.gform_wrapper .gfield_label {
  font-family: Roboto !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  margin-bottom: 5px !important;
  color: var(--Text, #3F3B3B) !important;
}
.gform_wrapper .gfield_description {
  font-family: Roboto !important;
  font-size: 14px !important;
  font-style: italic !important;
  color: #666 !important;
  margin-top: 3px !important;
}
.gform_wrapper .validation_message {
  color: #d32f2f !important;
  font-size: 14px !important;
  margin-top: 5px !important;
}
.gform_wrapper .gform_button.button {
  /* Button styling is now handled in _buttons.scss */
  background-color: #F16122 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
  border: none !important;
  cursor: pointer !important;
  padding: 10px 20px !important;
}
.gform_wrapper .gform_button.button:hover, .gform_wrapper .gform_button.button:focus, .gform_wrapper .gform_button.button:active {
  background-color: #294178 !important;
  color: var(--White, #FFF) !important;
  text-align: center !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
  font-family: Gin !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: normal !important;
}
.gform_wrapper .gsection {
  border-bottom: 1px solid #ddd !important;
  margin: 60px 0 !important;
}
.gform_wrapper .gsection .gsection_title {
  font-family: Roboto !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  color: #0F182D !important;
}
.gform_wrapper .gfield_checkbox input[type=checkbox],
.gform_wrapper .gfield_checkbox input[type=radio],
.gform_wrapper .gfield_radio input[type=checkbox],
.gform_wrapper .gfield_radio input[type=radio] {
  margin-right: 8px !important;
}
.gform_wrapper .gfield_checkbox label,
.gform_wrapper .gfield_radio label {
  font-family: Roboto !important;
  font-size: 16px !important;
  font-weight: 400 !important;
}
.gform_wrapper .gfield_required {
  color: #d32f2f !important;
  margin-left: 4px !important;
}
.gform_wrapper .gform_footer {
  margin-top: 60px !important;
}

/* Responsive adjustments */
@media (max-width: 767px) {
  .gform_wrapper input:not([type=submit]),
  .gform_wrapper textarea,
  .gform_wrapper select {
    font-size: 14px !important;
  }
  .gform_wrapper .gform_button.button {
    color: var(--White, #FFF) !important;
    text-align: center !important;
    text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
    font-family: Gin !important;
    font-size: 24px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
    font-size: 20px !important;
  }
  .gform_wrapper .gform_button.button:hover, .gform_wrapper .gform_button.button:focus, .gform_wrapper .gform_button.button:active {
    color: var(--White, #FFF) !important;
    text-align: center !important;
    text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.25) !important;
    font-family: Gin !important;
    font-size: 24px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
    font-size: 20px !important;
  }
}