/*
CTC Separate Stylesheet
Updated: 2026-08-12 05:11:16
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.9.1786511476
*/

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

.e-con > .e-con-inner {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

@media (min-width: 640px) {
  .e-con > .e-con-inner {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

@media (min-width: 1024px) {
  .e-con > .e-con-inner {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
.mre_scroll{
	scroll-margin-top: 70px;
}
header .elementor-sticky.elementor-sticky--active.elementor-sticky--effects {
    background: rgba(20, 20, 20, 0.97);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid rgb(46, 46, 46);
}

header .elementor-sticky.elementor-sticky--active {
    transition-duration: .4s;
    transition-property: all;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}
.elementor-icon-wrapper {
  display: flex;
}
/* Contact Form */

.mre_contact-form {
  font-family: "Outfit", sans-serif;
}

.mre_contact-form p {
  margin: 0;
}
.wpcf7-form-control-wrap {
  display: block;
}

/* Vertical spacing between rows (1.25rem = the original space-y-5) */
.mre_contact-form > :not(:last-child) {
  margin-bottom: 1.25rem;
}

/* Labels */
.mre-label {
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #525252;
  margin-bottom: 0.375rem;
  font-size: 0.75rem;
  font-weight: 600;
  display: block;
}

/* Inputs, select and textarea */
.mre-input {
  color: #141414;
  background: #fff;
  border: 1px solid #e2e0d8 !important;
  outline: none;
  padding: 0.875rem 1rem !important;
  font-family: "Outfit", sans-serif;
  font-size: 0.9375rem;
  transition:
    border-color 0.2s,
    box-shadow 0.2s !important;
}
.mre-input:focus {
  border-color: #4dd115 !important;
  box-shadow: 0 0 0 3px #4dd1151f;
}
.mre-input::placeholder {
  color: #a3a3a3;
}
.mre_contact-form select.mre-input {
  appearance: none;
  cursor: pointer;
}
.mre_contact-form textarea.mre-input {
  resize: vertical;
}

/* Two-column row (First + Last Name). Stacks on mobile. */
.mre-form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 40rem) {
  .mre-form-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* Submit button — exact .btn-primary + w-full + justify-center */
.mre-submit {
  color: #fafaf8;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  cursor: pointer;
  background: #141414;
  border: 1px solid #2e2e2e;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 1.5rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  transition:
    border-color 0.25s,
    background 0.25s,
    transform 0.15s;
  display: inline-flex;
  position: relative;
  overflow: hidden;
  /* w-full justify-center utilities from the original markup */
  width: 100%;
  justify-content: center;
}
.mre-submit::after {
  content: "";
  opacity: 0;
  background: #4dd1150f;
  transition: opacity 0.25s;
  position: absolute;
  inset: 0;
}
.mre-submit:hover {
  background: #1c1c1c;
  border-color: #4dd115;
}
.mre-submit:hover::after {
  opacity: 1;
}
.mre-submit:active {
  transform: scale(0.97);
}
/* Arrow icon inside the button (lucide ArrowRight, 16px, green) */
.mre-submit svg {
  color: #4dd115;
  width: 1rem;
  height: 1rem;
}
.mre-submit-wrap button {
  color: #fafaf8;
  letter-spacing: 0.12em;
  line-height: 1.5;
  text-transform: uppercase;
  cursor: pointer;
  background: #141414;
  border: 1px solid #2e2e2e;
  border-radius: 0;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 1.5rem;
  font-family: Outfit, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  transition:
    border-color 0.25s,
    background 0.25s,
    transform 0.15s;
  display: inline-flex;
  position: relative;
  overflow: hidden;
  width: 100%;
  justify-content: center;
}
.mre-submit-wrap button:hover {
  background: #1c1c1c;
  border-color: #4dd115;
}

.mre-submit-wrap button svg {
  color: #4dd115;
  width: 1rem;
  height: 1rem;
}
.mre_mobile-menu .elementor-nav-menu {
  border-top: 1px solid rgb(46, 46, 46);
  padding-block: 1rem;
}
@media (max-width: 1023px) {
  .mre_mobile-menu .elementor-nav-menu {
    padding-inline: 2rem;
  }
}
@media (max-width: 767px) {
  .mre_mobile-menu .elementor-nav-menu {
    padding-inline: 1.25rem;
  }
}
.mre_mobile-menu
  .elementor-nav-menu
  > li:not(:nth-last-child(-n + 2))
  > .elementor-item {
  margin-bottom: 0.25rem;
}
.mre_mobile-menu
  .elementor-nav-menu
  > li:not(:nth-last-child(-n + 2))
  > .elementor-item {
  margin-bottom: 0.25rem;
}

.mre_mobile-menu .mre_mobile-number a {
  padding: 0.5rem 0 0.5rem 25px !important;
  color: rgb(250, 250, 248) !important;
  font-weight: 400 !important;
  margin-top: 0.75rem;
  margin-bottom: 0.5rem;
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

.mre_mobile-menu .mre_mobile-number {
  border: 0 !important;
}
.mre_mobile-number > a::before {
  content: "";
  width: 1rem;
  height: 1rem;
  display: block;
  background: url("https://mediumblue-deer-261696.hostingersite.com/wp-content/uploads/2026/08/phone.svg")
    no-repeat center;
  background-size: contain;
  opacity: 1 !important;
  left: 0;
}

.mre_mobile-menu .mre_mobile-book-button a {
  color: #fafaf8 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  cursor: pointer;
  background: #141414;
  border: 1px solid #2e2e2e;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 1.5rem !important;
  font-family: Outfit, sans-serif;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  position: relative;
  overflow: hidden;
  width: 100% !important;
  justify-content: center;
}