.contact-page {
  overflow-x: hidden;
}

.contact-reference-hero {
  --contact-hero-gold: #faba3e;
  --contact-hero-teal: #5aafaa;
  --contact-hero-teal-soft: #77b8b0;
  --contact-hero-line: rgba(23, 139, 142, 0.56);
  min-height: clamp(640px, calc(100svh - 84px), 900px);
  width: 100%;
  max-width: 100vw;
  overflow: hidden;
  padding-block: 0 !important;
  background:
    linear-gradient(110deg, var(--contact-hero-teal-soft) 0%, #69b5af 38%, var(--contact-hero-teal) 72%, #54aaa7 100%) !important;
}

.contact-reference-hero::before {
  opacity: 0.72;
  mix-blend-mode: normal;
  background-image:
    radial-gradient(circle 330px at 88% 68%, transparent 99%, var(--contact-hero-line) 99.3%, transparent 100%),
    radial-gradient(circle 270px at 47% 28%, transparent 99%, var(--contact-hero-line) 99.3%, transparent 100%),
    radial-gradient(circle 420px at 54% 112%, transparent 99%, var(--contact-hero-line) 99.3%, transparent 100%),
    repeating-linear-gradient(0deg, transparent 0 224px, var(--contact-hero-line) 225px 227px),
    repeating-linear-gradient(90deg, transparent 0 320px, var(--contact-hero-line) 321px 323px);
  background-size: auto;
}

.contact-reference-hero::after {
  display: none;
}

.contact-reference-hero__grid {
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr) !important;
  align-items: stretch !important;
  gap: clamp(28px, 4vw, 64px) !important;
  min-height: inherit;
}

.contact-reference-hero .page-hero-copy {
  z-index: 3;
  grid-column: 1;
  align-self: start;
  width: min(100%, 680px);
  margin: 0;
  padding-top: clamp(92px, 10.5vw, 150px);
  justify-self: start;
  align-content: start;
  text-align: right !important;
}

.contact-reference-hero .page-hero-copy::after {
  display: none;
}

.contact-reference-hero .eyebrow {
  order: 1;
  padding: 0.55rem 1rem;
  border: 0 !important;
  background: var(--contact-hero-gold) !important;
  color: #ffffff !important;
  font-size: clamp(0.95rem, 1.35vw, 1.2rem);
  font-weight: 600;
  backdrop-filter: none;
}

.contact-reference-hero .page-hero-copy h1 {
  order: 2;
  margin-block: 0.9rem 0.65rem;
  color: var(--contact-hero-gold) !important;
  font-size: clamp(3.2rem, 6.1vw, 6.8rem) !important;
  font-weight: 800;
  line-height: 1 !important;
  text-shadow: none;
}

.contact-reference-hero .page-hero-copy p {
  max-width: 660px;
  color: #ffffff !important;
  font-size: clamp(1.02rem, 1.55vw, 1.35rem);
  font-weight: 500;
  line-height: 2;
  text-shadow: 0 3px 18px rgba(20, 88, 87, 0.14);
}

.contact-reference-hero .page-hero-copy p:first-of-type {
  order: 3;
}

.contact-reference-hero .page-hero-copy p:last-of-type {
  order: 5;
  margin-top: clamp(3.5rem, 9vh, 6.5rem) !important;
  color: var(--contact-hero-gold) !important;
  font-size: clamp(1rem, 1.35vw, 1.25rem);
  font-weight: 700 !important;
}

.contact-reference-hero .hero-related-actions {
  order: 4;
  justify-content: flex-start;
  margin-top: 1.5rem;
}

.contact-reference-hero .hero-related-link {
  min-width: 148px;
  border-color: var(--contact-hero-gold) !important;
  background: var(--contact-hero-gold) !important;
  color: #176b68 !important;
  box-shadow: 0 14px 28px rgba(67, 116, 107, 0.14);
}

.contact-reference-hero .hero-related-link:hover {
  border-color: #ffd16c !important;
  background: #ffd16c !important;
  color: #0f5d5a !important;
}

.contact-reference-hero__mark.page-hero-media {
  position: absolute;
  inset: 6% auto auto calc((100vw - 100%) / -2 + 120px);
  display: block;
  width: 47vw;
  height: 88%;
  min-height: 0 !important;
  overflow: hidden;
  direction: ltr;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none !important;
}

.contact-reference-hero__mark.page-hero-media::after {
  display: none;
}

.contact-reference-hero__mark.page-hero-media img {
  position: absolute;
  inset: 0 auto 0 0;
  display: block;
  width: 185.9%;
  max-width: none;
  height: 100%;
  min-height: 0;
  object-fit: fill;
  border-radius: 0 !important;
  filter: none !important;
}

[data-theme="dark"] .contact-reference-hero {
  background:
    linear-gradient(110deg, var(--contact-hero-teal-soft) 0%, #69b5af 38%, var(--contact-hero-teal) 72%, #54aaa7 100%) !important;
}

@media (max-width: 899px) {
  .contact-reference-hero {
    min-height: auto;
    padding-block: 0 !important;
  }

  .contact-reference-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 36px !important;
  }

  .contact-reference-hero .page-hero-copy {
    width: min(100%, 680px);
    padding-top: 72px;
    justify-self: center;
  }

  .contact-reference-hero .page-hero-copy p:last-of-type {
    margin-top: 2rem !important;
  }

  .contact-reference-hero__mark.page-hero-media {
    position: relative;
    inset: auto;
    grid-column: 1;
    left: 0;
    width: 100%;
    height: clamp(330px, 78vw, 520px);
    min-height: clamp(330px, 78vw, 520px) !important;
    margin: 0;
  }
}

@media (max-width: 560px) {
  .contact-reference-hero {
    padding-block: 0 !important;
  }

  .contact-reference-hero .page-hero-copy {
    padding-top: 52px;
    text-align: right !important;
  }

  .contact-reference-hero .page-hero-copy h1 {
    font-size: clamp(3rem, 16vw, 4.8rem) !important;
  }

  .contact-reference-hero .page-hero-copy p {
    font-size: 1rem;
    line-height: 1.85;
  }

  .contact-reference-hero .hero-related-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .contact-reference-hero .hero-related-link {
    min-width: 0;
    width: 100%;
  }

  .contact-reference-hero__mark.page-hero-media {
    left: 0;
    width: 100%;
    height: min(94vw, 430px);
    min-height: min(94vw, 430px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-reference-hero .hero-related-link {
    transition: none;
  }
}

/* SLOGAN VISIBILITY OVERRIDE */
.site-header.premium-header .logo-slogan,
.premium-header .logo-slogan,
.logo-slogan {
    display: block !important;
    font-size: 11px !important;
    color: #7c9494 !important;
    font-weight: 500 !important;
    white-space: normal !important;
    margin-top: 2px !important;
}

.footer-slogan {
    display: block !important;
    font-weight: 700 !important;
    color: #faba3d !important;
    margin: 0.35rem 0 0.55rem !important;
}


/* ==========================================================================
   GLOBAL MOBILE HERO TEXT REDUCTION (ALL PAGES)
   ========================================================================== */
@media (max-width: 991px) {
  body .hero h1,
  body .hero-copy h1,
  body .page-hero-copy h1,
  body .hero-showcase .hero-copy h1,
  body .hero-homepage .hero-copy h1,
  body .course-header h1,
  body .post-header h1,
  body .page-header h1,
  body .hero-content h1,
  body .section-hero h1,
  body h1.hero-title,
  body h1.page-title {
    font-size: clamp(1.6rem, 7vw, 2.2rem) !important;
    line-height: 1.25 !important;
    margin-bottom: 0.75rem !important;
    max-width: 100% !important;
  }
  
  body .hero p,
  body .hero-copy p,
  body .page-hero-copy p,
  body .hero-showcase .hero-copy p,
  body .hero-homepage .hero-copy p,
  body .page-header p,
  body .hero-content p,
  body .section-hero p,
  body p.hero-subtitle {
    font-size: clamp(0.9rem, 4.5vw, 1.1rem) !important;
    line-height: 1.5 !important;
    margin-bottom: 1rem !important;
    max-width: 100% !important;
  }
}



/* ==========================================================================
   CENTERED MOBILE HEADER SLOGAN - V4 (ABSOLUTE CENTERING)
   ========================================================================== */
@media (max-width: 991px) {
  /* 1. Ensure header-shell is the relative parent */
  body .site-header .header-shell,
  body .site-header.premium-header .header-shell {
    position: relative !important;
  }
  
  /* 2. Remove any relative positioning from brand link and its wrappers */
  body .site-header .brand,
  body .site-header.premium-header .brand,
  html[dir="rtl"] body .site-header.premium-header .brand,
  body a.brand,
  body a.brand-saas {
    position: static !important;
  }

  /* 3. Absolute position the slogan in the exact center of header-shell */
  body .site-header .brand .logo-slogan,
  body .site-header.premium-header .brand .logo-slogan,
  body .site-header.premium-header .brand-saas .logo-slogan,
  body a.brand span.logo-slogan,
  html[dir="rtl"] body .site-header.premium-header a.brand span.logo-slogan,
  html[dir="rtl"] body .site-header a.brand span.logo-slogan {

    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    
    /* 4. Formatting */
    width: 125px !important;
    max-width: 130px !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.3 !important;
    font-size: 8.5px !important;
    font-weight: 600 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    color: var(--color-text-muted, rgba(255, 255, 255, 0.7)) !important;
    direction: rtl !important;
  }
}


/* ==========================================================================
   MOBILE MENU CONTAINER OVERFLOW FIX - V7 (ALLOW FULL TEXT)
   ========================================================================== */
@media (max-width: 991px) {
  /* Remove overflow-x: hidden from parent containers that clip the text */
  body .premium-header .site-nav.site-nav-saas .drawer-content,
  body .premium-header .site-nav.site-nav-saas .navigation-container,
  body .site-nav .drawer-content,
  body .site-nav .navigation-container {
    overflow-x: visible !important;
    overflow: visible !important;
  }

  /* nav-panel must allow overflow too */
  body .premium-header .site-nav.site-nav-saas .nav-panel {
    overflow-x: visible !important;
  }

  /* nav-list items should not clip */  
  body .premium-header .site-nav.site-nav-saas .nav-list,
  body .nav-list {
    overflow: visible !important;
  }

  /* nav-item-dropdown should not clip */
  body .nav-item-dropdown,
  body .premium-header .nav-item-dropdown {
    overflow: visible !important;
  }

  /* open dropdown menu must show all content */
  body .premium-header .site-nav.site-nav-saas .nav-item-dropdown.open .nav-dropdown-menu,
  body .nav-item-dropdown.open .nav-dropdown-menu {
    overflow: visible !important;
    max-height: 2500px !important;
  }

  /* Force dropdown links to wrap text */
  body .nav-dropdown-link,
  body .premium-header .nav-dropdown-link,
  body .site-nav .nav-dropdown-link {
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    text-overflow: unset !important;
    overflow: visible !important;
    display: block !important;
    height: auto !important;
    line-height: 1.5 !important;
  }
}



/* ==========================================================================
   MOBILE MENU DROPDOWN FIX - V8 (ACCORDION STYLE FOR MOBILE)
   ========================================================================== */
@media (max-width: 991px) {
  body .premium-header .nav-dropdown-menu,
  body .site-header .nav-dropdown-menu,
  body .site-nav-saas .nav-dropdown-menu,
  body .site-header.premium-header .nav-dropdown-menu {
    position: static !important;
    transform: none !important;
    inset-inline-start: 0 !important;
    left: 0 !important;
    right: auto !important;
    margin-top: 0.5rem !important;
    min-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* ==========================================================================
   CONTACT PAGE CARDS & HEADERS POLISH (V50)
   ========================================================================== */
body.contact-page .contact-grid,
.contact-page .contact-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)) !important;
  gap: clamp(2rem, 4vw, 3rem) !important;
  align-items: stretch !important;
}

:root body.contact-page main .contact-grid > article,
:root body.contact-page main .contact-info-card,
:root body.contact-page main .contact-booking-card,
body.contact-page .contact-grid > article {
  position: relative !important;
  padding: 0 !important;
  border: 2px solid rgba(8, 110, 102, 0.2) !important;
  border-radius: 28px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 45px rgba(14, 50, 48, 0.09) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

:root body.contact-page main .contact-card-head,
body.contact-page .contact-card-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1.75rem 1.5rem !important;
  min-height: 105px !important;
  background: linear-gradient(135deg, #094d49 0%, #126e68 55%, #18867f 100%) !important;
  text-align: center !important;
  border-radius: 26px 26px 0 0 !important;
  position: relative !important;
  box-sizing: border-box !important;
}

:root body.contact-page main .contact-card-head::after,
body.contact-page .contact-card-head::after {
  content: "" !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #faba3e, #ffd166, #faba3e) !important;
}

:root body.contact-page main .contact-card-head .eyebrow,
body.contact-page .contact-card-head .eyebrow {
  display: inline-block !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #ffd166 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin: 0 0 0.35rem 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 1.3 !important;
}

:root body.contact-page main .contact-card-head h2,
body.contact-page .contact-card-head h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-family: 'Cairo', 'IBM Plex Sans Arabic', sans-serif !important;
  font-size: clamp(1.45rem, 2.2vw, 1.85rem) !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-align: center !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.25) !important;
}

:root body.contact-page main .contact-card-head p,
body.contact-page .contact-card-head p {
  margin: 0.45rem 0 0 0 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  text-align: center !important;
}

:root body.contact-page main .contact-card-body,
body.contact-page .contact-card-body {
  padding: clamp(1.5rem, 3vw, 2.25rem) !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  background: #ffffff !important;
}

/* Contact — form box and details box same size (change request #20) */
main .contact-grid{align-items:stretch !important}
main .contact-grid > *{min-width:0}
main .contact-grid > div{display:flex !important;flex-direction:column}
main .contact-grid > div > .contact-booking-card,main .contact-grid > .contact-info-card{flex:1 1 auto !important;width:100% !important;max-width:none !important;height:100%;box-sizing:border-box;margin:0 !important}

/* ===== 2026-10-20: moved from Appearance → Customize → Additional CSS (same rules, unchanged) ===== */

/* LeadMinds — Contact page redesign */
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1){background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 204 104'%3E%3Cpath d='M200,0V100H0A100,100 0 0 1 100,0Z' fill='none' stroke='%23FABA3D' stroke-opacity='.35' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") left -60px bottom 40px / 340px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 104 144'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='none' stroke='%23FABA3D' stroke-opacity='.35' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") right 46% top 50px / 110px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100'%3E%3Cpath d='M200,0V100H0A100,100 0 0 1 100,0Z' fill='%23FABA3D' fill-opacity='.08'/%3E%3C/svg%3E") right -80px bottom -30px / 420px auto no-repeat,linear-gradient(258deg,#0b3637 0%,#1d6c6c 55%,#41A5A5 100%) !important;}
html[dir="ltr"]:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1){background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 204 104'%3E%3Cpath d='M200,0V100H0A100,100 0 0 1 100,0Z' fill='none' stroke='%23FABA3D' stroke-opacity='.35' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") right -60px bottom 40px / 340px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 104 144'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='none' stroke='%23FABA3D' stroke-opacity='.35' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") left 46% top 50px / 110px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100'%3E%3Cpath d='M200,0V100H0A100,100 0 0 1 100,0Z' fill='%23FABA3D' fill-opacity='.08'/%3E%3C/svg%3E") left -80px bottom -30px / 420px auto no-repeat,linear-gradient(102deg,#0b3637 0%,#1d6c6c 55%,#41A5A5 100%) !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1)::before{opacity:.3 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1) > .brand-section-motif{display:none !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1) .page-hero-copy p{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1) .page-hero-copy .eyebrow{background:rgba(250,186,61,.16) !important;color:#FABA3D !important;-webkit-text-fill-color:#FABA3D !important;border:1px solid rgba(250,186,61,.5) !important;border-radius:999px !important;padding:6px 16px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1) .hero-related-link--primary{background:#FABA3D !important;color:#0b3637 !important;-webkit-text-fill-color:#0b3637 !important;border-color:#FABA3D !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1) .hero-related-link--secondary{background:rgba(255,255,255,.08) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;border:1.5px solid #FABA3D !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(1) .hero-scroll-cue{background:#FABA3D !important;color:#0b3637 !important;border-color:#0b3637 !important;}

/* Section background */
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main{background:linear-gradient(180deg,#dff0ee 0%,#dff0ee 30%,#f9fbf8 60%,#fdefcf 100%) !important;padding-bottom:0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(2){background:transparent !important;box-shadow:none !important;border:0 !important;position:relative !important;isolation:isolate;overflow:visible !important;overflow-x:clip !important;padding-bottom:110px !important;margin-bottom:0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(2) > .brand-section-motif{display:none !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(2)::after{content:none !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(2)::before{content:"" !important;position:absolute !important;inset:0 !important;z-index:-1 !important;pointer-events:none;opacity:1 !important;border:0 !important;border-radius:0 !important;width:auto !important;height:auto !important;transform:none !important;-webkit-mask-image:none !important;mask-image:none !important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100'%3E%3Cpath d='M200,0V100H0A100,100 0 0 1 100,0Z' fill='%23FABA3D' fill-opacity='.26'/%3E%3C/svg%3E") right -70px top 60px / 300px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 104 144'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='none' stroke='%2341A5A5' stroke-opacity='.45' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") left 5% top 60px / 90px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='%2341A5A5' fill-opacity='.13'/%3E%3C/svg%3E") left -40px top 45% / 180px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 204 104'%3E%3Cpath d='M200,0V100H0A100,100 0 0 1 100,0Z' fill='none' stroke='%23FABA3D' stroke-opacity='.75' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") right 4% bottom 120px / 170px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='%23FABA3D' fill-opacity='.24'/%3E%3C/svg%3E") left -30px bottom 60px / 160px auto no-repeat !important;}

/* Grid */
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-grid{display:grid !important;grid-template-columns:minmax(0,5fr) minmax(0,7fr) !important;gap:32px !important;align-items:stretch !important;max-width:1180px !important;margin:0 auto !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-grid > div{display:flex !important;min-width:0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-grid > div > .contact-booking-card{flex:1 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card::before,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card::after,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card::before,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card::after{content:none !important;display:none !important;}

/* Info card (dark) */
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 104 144'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='none' stroke='%23FABA3D' stroke-opacity='.35' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") left 26px bottom -50px / 120px auto no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140'%3E%3Cpath d='M0,0H100V140A100,100 0 0 1 0,40Z' fill='%23FABA3D' fill-opacity='.14'/%3E%3C/svg%3E") right -40px top -40px / 160px auto no-repeat,linear-gradient(200deg,#0b3637 0%,#1d6c6c 60%,#2f8f8c 100%) !important;border:0 !important;border-radius:32px 32px 32px 140px !important;box-shadow:0 30px 60px -36px rgba(11,54,55,.8) !important;padding:44px 38px 70px !important;overflow:hidden !important;color:#ffffff !important;}
html[dir="ltr"]:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card{border-radius:32px 32px 140px 32px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-head,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head{background:none !important;background-image:none !important;padding:0 !important;margin:0 0 26px !important;border:0 !important;box-shadow:none !important;text-align:start !important;min-height:0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-head::before,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-head::after,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head::before,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head::after{display:none !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-body{background:none !important;padding:0 !important;border:0 !important;box-shadow:none !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-head .eyebrow{display:inline-block !important;background:#FABA3D !important;color:#0b3637 !important;-webkit-text-fill-color:#0b3637 !important;font-size:15px !important;font-weight:800 !important;padding:6px 16px !important;border-radius:999px !important;margin:0 0 14px !important;letter-spacing:0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-head h2{color:#FABA3D !important;-webkit-text-fill-color:#FABA3D !important;font-size:32px !important;font-weight:600 !important;line-height:1.4 !important;margin:0 !important;text-align:start !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div{background:rgba(255,255,255,.07) !important;border:1px solid rgba(255,255,255,.12) !important;border-radius:18px 18px 18px 46px !important;padding:14px 16px !important;margin:0 0 12px !important;}
html[dir="ltr"]:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div{border-radius:18px 18px 46px 18px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div:last-child{background:none !important;border:0 !important;padding:12px 0 0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div > div:first-child{width:46px !important;height:46px !important;border-radius:0 0 0 46px !important;background:#FABA3D !important;color:#0b3637 !important;}
html[dir="ltr"]:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div > div:first-child{border-radius:0 0 46px 0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div > div:first-child svg{fill:#0b3637 !important;color:#0b3637 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body span{color:rgba(255,255,255,.75) !important;-webkit-text-fill-color:rgba(255,255,255,.75) !important;font-size:14px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body a,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body a span,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div > div:last-child > span:last-child{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;font-size:17px !important;font-weight:600 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-body > div:last-child > span{display:block !important;color:#FABA3D !important;-webkit-text-fill-color:#FABA3D !important;font-weight:700 !important;font-size:15px !important;margin:0 0 12px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .footer-social-link{background:rgba(255,255,255,.12) !important;color:#ffffff !important;border:1px solid rgba(255,255,255,.2) !important;box-shadow:none !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .footer-social-link svg{fill:#ffffff !important;color:#ffffff !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .footer-social-link:hover{background:#FABA3D !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .footer-social-link:hover svg{fill:#0b3637 !important;color:#0b3637 !important;}

/* Form card */
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card{background:#ffffff !important;background-image:none !important;border:1px solid #d6e9e7 !important;border-radius:32px 32px 140px 32px !important;box-shadow:0 30px 60px -40px rgba(11,54,55,.6) !important;padding:44px 44px 56px !important;overflow:hidden !important;position:relative !important;}
html[dir="ltr"]:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card{border-radius:32px 32px 32px 140px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head .eyebrow{display:inline-block !important;background:#e6f3f2 !important;color:#1d6c6c !important;-webkit-text-fill-color:#1d6c6c !important;font-size:15px !important;font-weight:800 !important;padding:6px 16px !important;border-radius:999px !important;margin:0 0 14px !important;letter-spacing:0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head h2{color:#153F3E !important;-webkit-text-fill-color:#153F3E !important;font-size:32px !important;font-weight:600 !important;line-height:1.4 !important;margin:0 0 6px !important;text-align:start !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head p{color:#4C6161 !important;-webkit-text-fill-color:#4C6161 !important;font-size:17px !important;margin:0 !important;text-align:start !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-fields{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px 18px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-field-wide{grid-column:1 / -1 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card label{color:#153F3E !important;font-size:15px !important;font-weight:600 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card label b{color:#F27357 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card :is(input[type=text],input[type=email],input[type=tel],input:not([type]),textarea,select){background:#f4f9f8 !important;border:1.5px solid #d6e9e7 !important;border-radius:14px !important;padding:13px 16px !important;font-size:16px !important;color:#153F3E !important;box-shadow:none !important;margin-top:6px !important;transition:border-color .2s,box-shadow .2s,background .2s;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card :is(input,textarea,select):focus{outline:none !important;background:#ffffff !important;border-color:#41A5A5 !important;box-shadow:0 0 0 4px rgba(65,165,165,.15) !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card textarea{min-height:130px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-consent{display:flex !important;align-items:flex-start !important;gap:10px !important;font-weight:500 !important;color:#4C6161 !important;margin:16px 0 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-consent input{accent-color:#1d6c6c;width:18px;height:18px;margin-top:4px !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-submit{width:100% !important;background:#FABA3D !important;color:#0b3637 !important;-webkit-text-fill-color:#0b3637 !important;border:0 !important;border-radius:999px !important;padding:15px 30px !important;font-size:17px !important;font-weight:700 !important;box-shadow:0 18px 32px -18px rgba(201,138,20,.9) !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-submit:hover{background:#f5ad22 !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-submit span{color:#0b3637 !important;-webkit-text-fill-color:#0b3637 !important;}
@media (max-width:900px){
  html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-grid{grid-template-columns:1fr !important;}
}
@media (max-width:767px){
  html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card{padding:30px 20px 48px !important;border-radius:26px 26px 26px 90px !important;}
  html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-info-card .contact-card-head h2,html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .contact-card-head h2{font-size:26px !important;}
  html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card .booking-fields{grid-template-columns:1fr !important;}
  html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main > section:nth-of-type(2)::before{background-size:110px auto !important;opacity:.6 !important;}
}

html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card label b{display:inline !important;margin-inline-start:4px;}

html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card :is(.booking-fields,form > div) > label{display:block !important;}
html:not(#lm):not(#lm):not(#lm):not(#lm):not(#lm) body.page-template-contact main .contact-booking-card :is(.booking-fields,form > div) > label :is(input,textarea,select){display:block !important;width:100% !important;box-sizing:border-box !important;margin-top:8px !important;}
