/* Calendly Theme Overrides */
/* These styles override Calendly's internal CSS to match our site theme */

/* Hide or neutralize the ugly wrapper div around the Calendly embed */
.lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  outline: none !important;
}

/* Override Calendly's CSS Custom Properties for Light Theme */
body:not(.dark) iframe[src*="calendly.com"] {
  --colorBackgroundStandard: transparent !important;
  --colorBackgroundSecondary: transparent !important;
  --colorBackgroundTertiary: transparent !important;
  --container-background-color: transparent !important;
  --color-bg-white-l-1: transparent !important;
  --coreColorNeutral100: transparent !important;
  --coreColorNeutral200: transparent !important;
  --coreColorNeutral300: transparent !important;
  background-color: transparent !important;
}

/* Override Calendly's CSS Custom Properties for Dark Theme */
body.dark iframe[src*="calendly.com"] {
  --colorBackgroundStandard: #18191a !important;
  --colorBackgroundSecondary: #18191a !important;
  --colorBackgroundTertiary: #18191a !important;
  --container-background-color: #18191a !important;
  --color-bg-white-l-1: #18191a !important;
  --coreColorNeutral100: #18191a !important;
  --coreColorNeutral200: #18191a !important;
  --coreColorNeutral300: #18191a !important;
  background-color: #18191a !important;
}

/* Override Calendly's internal styling for light theme - High Specificity */
body:not(.dark) .lmtWIHO_gkbTeeyuvoJC.mOUYF5ZmuNL6I7t0mSFg,
body:not(.dark) iframe[src*="calendly.com"] .lmtWIHO_gkbTeeyuvoJC.mOUYF5ZmuNL6I7t0mSFg {
  background-color: transparent !important;
  background: transparent !important;
}

/* Override Calendly's internal styling for dark theme - High Specificity */
body.dark .lmtWIHO_gkbTeeyuvoJC.mOUYF5ZmuNL6I7t0mSFg,
body.dark iframe[src*="calendly.com"] .lmtWIHO_gkbTeeyuvoJC.mOUYF5ZmuNL6I7t0mSFg {
  background-color: #18191a !important;
  background: #18191a !important;
}

/* Additional wrapper div neutralization */
body:not(.dark) .lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background-color: transparent !important;
  background: transparent !important;
}

body.dark .lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background-color: #18191a !important;
  background: #18191a !important;
}

/* Remove grey border and background from the main Calendly container */
body:not(.dark) .calendly-container,
body:not(.dark) .calendly-container iframe {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

body.dark .calendly-container,
body.dark .calendly-container iframe {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
}

/* Remove any borders or shadows from Calendly iframe containers */
iframe[src*="calendly.com"] {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;
}

/* Target the main Calendly booking container */
[data-container="booking-container"] {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Ensure the side panel matches theme */
body:not(.dark) [data-container="side-panel"] {
  background-color: transparent !important;
  background: transparent !important;
}

body.dark [data-container="side-panel"] {
  background-color: #18191a !important;
  background: #18191a !important;
}

/* Override any specific Calendly wrapper classes that add unwanted styling */
.lmtWIHO_gkbTeeyuvoJC,
.sbRR6Vj9cBntcZ6P4tOo,
.mOUYF5ZmuNL6I7t0mSFg,
._JUGVkfTgXeaar9RpzRk {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Ensure consistent theming for all Calendly elements */
body:not(.dark) .lmtWIHO_gkbTeeyuvoJC,
body:not(.dark) .sbRR6Vj9cBntcZ6P4tOo,
body:not(.dark) .mOUYF5ZmuNL6I7t0mSFg,
body:not(.dark) ._JUGVkfTgXeaar9RpzRk {
  background-color: transparent !important;
  background: transparent !important;
  color: #000000 !important;
}

body.dark .lmtWIHO_gkbTeeyuvoJC,
body.dark .sbRR6Vj9cBntcZ6P4tOo,
body.dark .mOUYF5ZmuNL6I7t0mSFg,
body.dark ._JUGVkfTgXeaar9RpzRk {
  background-color: #18191a !important;
  background: #18191a !important;
  color: #ffffff !important;
}

/* Additional high-specificity overrides for stubborn Calendly styles */
body:not(.dark) iframe[src*="calendly.com"] {
  background-color: transparent !important;
  background: transparent !important;
}

body.dark iframe[src*="calendly.com"] {
  background-color: #18191a !important;
  background: #18191a !important;
}

/* Force transparent backgrounds on wrapper elements */
.calendly-inline-widget,
.calendly-popup-widget,
.calendly-badge-widget {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Ensure the main content area has proper theming */
body:not(.dark) .calendly-inline-widget,
body:not(.dark) .calendly-popup-widget {
  background-color: transparent !important;
  background: transparent !important;
}

body.dark .calendly-inline-widget,
body.dark .calendly-popup-widget {
  background-color: #18191a !important;
  background: #18191a !important;
}

/* Target Calendly's root element and override CSS variables */
body:not(.dark) [class*="lmtWIHO_gkbTeeyuvoJC"] {
  --colorBackgroundStandard: transparent !important;
  --colorBackgroundSecondary: transparent !important;
  --colorBackgroundTertiary: transparent !important;
  --container-background-color: transparent !important;
  --color-bg-white-l-1: transparent !important;
  --coreColorNeutral100: transparent !important;
  --coreColorNeutral200: transparent !important;
  --coreColorNeutral300: transparent !important;
  background-color: transparent !important;
  background: transparent !important;
}

body.dark [class*="lmtWIHO_gkbTeeyuvoJC"] {
  --colorBackgroundStandard: #18191a !important;
  --colorBackgroundSecondary: #18191a !important;
  --colorBackgroundTertiary: #18191a !important;
  --container-background-color: #18191a !important;
  --color-bg-white-l-1: #18191a !important;
  --coreColorNeutral100: #18191a !important;
  --coreColorNeutral200: #18191a !important;
  --coreColorNeutral300: #18191a !important;
  background-color: #18191a !important;
  background: #18191a !important;
}

/* CSS Custom Properties for Calendly theming */
:root {
  --calendly-light-bg: transparent;
  --calendly-dark-bg: #18191a;
}

body:not(.dark) {
  --calendly-current-bg: var(--calendly-light-bg);
}

body.dark {
  --calendly-current-bg: var(--calendly-dark-bg);
}

/* Apply custom properties to Calendly elements */
[class*="lmtWIHO_gkbTeeyuvoJC"],
[class*="mOUYF5ZmuNL6I7t0mSFg"],
iframe[src*="calendly.com"] {
  background-color: var(--calendly-current-bg) !important;
  background: var(--calendly-current-bg) !important;
}

/* Ultra-high specificity override for the main Calendly wrapper */
html body:not(.dark) .lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

html body.dark .lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
}

/* Target the main booking container that has the grey border */
[data-container="booking-container"],
._3efP_GeH5kyBAzqnLzL,
.adpQ3VUeQbmczOdx9ymw,
.w_Mtb2W9166EgOSv9i3M,
._kN_bCa3VNYpqFLH311L,
._3efP_GeH5kyBAzqnLzL.adpQ3VUeQbmczOdx9ymw.w_Mtb2W9166EgOSv9i3M._kN_bCa3VNYpqFLH311L {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Dark theme overrides for booking container */
body.dark [data-container="booking-container"],
body.dark ._3efP_GeH5kyBAzqnLzL,
body.dark .adpQ3VUeQbmczOdx9ymw,
body.dark .w_Mtb2W9166EgOSv9i3M,
body.dark ._kN_bCa3VNYpqFLH311L,
body.dark ._3efP_GeH5kyBAzqnLzL.adpQ3VUeQbmczOdx9ymw.w_Mtb2W9166EgOSv9i3M._kN_bCa3VNYpqFLH311L {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Target side panel container */
[data-container="side-panel"],
.WrdpezlzjKu1CoRihaXS,
.Rb2e9IwsOFiKlSQIX7YA,
.h8SdAyUIogxbb6E2K6rg {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

body.dark [data-container="side-panel"],
body.dark .WrdpezlzjKu1CoRihaXS,
body.dark .Rb2e9IwsOFiKlSQIX7YA,
body.dark .h8SdAyUIogxbb6E2K6rg {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
}

/* Original problematic classes */
.lmtWIHO_gkbTeeyuvoJC,
.mOUYF5ZmuNL6I7t0mSFg,
.sbRR6Vj9cBntcZ6P4tOo,
._JUGVkfTgXeaar9RpzRk,
.lmtWIHO_gkbTeeyuvoJC.mOUYF5ZmuNL6I7t0mSFg,
.lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Dark theme for original classes */
body.dark .lmtWIHO_gkbTeeyuvoJC,
body.dark .mOUYF5ZmuNL6I7t0mSFg,
body.dark .sbRR6Vj9cBntcZ6P4tOo,
body.dark ._JUGVkfTgXeaar9RpzRk,
body.dark .lmtWIHO_gkbTeeyuvoJC.mOUYF5ZmuNL6I7t0mSFg,
body.dark .lmtWIHO_gkbTeeyuvoJC.sbRR6Vj9cBntcZ6P4tOo.mOUYF5ZmuNL6I7t0mSFg._JUGVkfTgXeaar9RpzRk {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Target any element with these class patterns */
[class*="_3efP_GeH5kyBAzqnLzL"],
[class*="adpQ3VUeQbmczOdx9ymw"],
[class*="w_Mtb2W9166EgOSv9i3M"],
[class*="_kN_bCa3VNYpqFLH311L"],
[class*="WrdpezlzjKu1CoRihaXS"],
[class*="Rb2e9IwsOFiKlSQIX7YA"],
[class*="h8SdAyUIogxbb6E2K6rg"],
[class*="lmtWIHO_gkbTeeyuvoJC"],
[class*="mOUYF5ZmuNL6I7t0mSFg"] {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Dark theme for pattern matches */
body.dark [class*="_3efP_GeH5kyBAzqnLzL"],
body.dark [class*="adpQ3VUeQbmczOdx9ymw"],
body.dark [class*="w_Mtb2W9166EgOSv9i3M"],
body.dark [class*="_kN_bCa3VNYpqFLH311L"],
body.dark [class*="WrdpezlzjKu1CoRihaXS"],
body.dark [class*="Rb2e9IwsOFiKlSQIX7YA"],
body.dark [class*="h8SdAyUIogxbb6E2K6rg"],
body.dark [class*="lmtWIHO_gkbTeeyuvoJC"],
body.dark [class*="mOUYF5ZmuNL6I7t0mSFg"] {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Force override any Calendly iframe containers */
iframe[src*="calendly.com"] {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

body.dark iframe[src*="calendly.com"] {
  background-color: #18191a !important;
  background: #18191a !important;
  border: none !important;
  box-shadow: none !important;
}

/* Override CSS custom properties that Calendly might be using */
:root {
  --calendly-background-color: transparent !important;
  --calendly-border-color: transparent !important;
  --colorBackgroundStandard: transparent !important;
}

body.dark {
  --calendly-background-color: #18191a !important;
  --calendly-border-color: transparent !important;
  --colorBackgroundStandard: #18191a !important;
}

/* Nuclear option - target everything inside Calendly containers */
.calendly-container *,
.calendly-inline-widget *,
[data-container] *,
[data-container="booking-container"] *,
[data-container="side-panel"] * {
  border: none !important;
  box-shadow: none !important;
}

/* Ensure iframe backgrounds match theme */
.calendly-container {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

body.dark .calendly-container {
  background-color: #18191a !important;
  border: none !important;
  box-shadow: none !important;
} 