/* Custom CSS Overrides for Villa Rosa (Vacation Theme) */

:root {
  /* Customize Iframemanager variables to match light vacation theme */
  --im-font-family: 'Plus Jakarta Sans', -apple-system, sans-serif;
  --im-bg: #EBF4F6;
  /* vacation sky */
  --im-color: #1c1917;
  /* zinc-900 */
  --im-link-color: #2C7DA0;
  /* vacation ocean */
  --im-link-hover-color: #1a5c7a;
  --im-btn-bg: #F08080;
  /* vacation coral */
  --im-btn-hover-bg: #D66B6B;
  --im-btn-color: #ffffff;
  --im-btn-s-bg: rgba(44, 125, 160, 0.1);
  --im-btn-s-hover-bg: rgba(44, 125, 160, 0.2);
  --im-btn-s-color: #2C7DA0;
  --im-overlay-bg: linear-gradient(135deg, rgba(235, 244, 246, 0.98) 0%, rgba(250, 246, 240, 0.98) 100%);

  /* Customize Cookie Consent v3 variables to match vacation theme */
  --cc-bg: #FAF6F0;
  /* Warm Sand Cream */
  --cc-text-color: #27272a;
  /* zinc-800 */
  --cc-title-color: #0c4a6e;
  /* sky-900 */
  --cc-modal-border-radius: 1.25rem;

  --cc-btn-primary-bg: #F08080;
  /* coral */
  --cc-btn-primary-hover-bg: #D66B6B;
  --cc-btn-primary-color: #ffffff;
  --cc-btn-primary-border-color: transparent;

  --cc-btn-secondary-bg: #EBF4F6;
  /* sky */
  --cc-btn-secondary-hover-bg: rgba(169, 196, 198, 0.4);
  --cc-btn-secondary-hover-color: #1a5c7a;
  --cc-btn-secondary-color: #2C7DA0;
  /* ocean */
  --cc-btn-secondary-border-color: transparent;

  --cc-btn-border-radius: 9999px;
  /* rounded pills */

  --cc-toggle-on-bg: #2C7DA0;
  /* ocean */
  --cc-toggle-off-bg: #e4e4e7;
  /* zinc-200 */
  --cc-toggle-on-knob-bg: #ffffff;
  --cc-toggle-off-knob-bg: #ffffff;

  --cc-cookie-category-block-bg: #ffffff;
  --cc-cookie-category-block-border: 1px solid rgba(169, 196, 198, 0.2);
  --cc-cookie-category-block-hover-bg: #ffffff;
  --cc-cookie-category-block-hover-border: 1px solid rgba(44, 125, 160, 0.3);
}

/* Header Scroll Transition State */
header.scrolled {
  background-color: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(12px);
  box-shadow: 0 4px 30px rgba(44, 125, 160, 0.04);
  border-color: rgba(169, 196, 198, 0.3);
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

/* Lightbox active body state */
body.lightbox-open {
  overflow: hidden !important;
  padding-right: 15px;
  /* Prevent scrollbar shift */
}

/* Iframemanager styling touch-ups */
div[data-service] {
  border-radius: 1rem;
  box-shadow: 0 10px 15px -3px rgba(44, 125, 160, 0.05), 0 4px 6px -2px rgba(44, 125, 160, 0.02);
  border: 1px solid rgba(169, 196, 198, 0.3);
}

div[data-service] .cll {
  padding: 2.5rem !important;
  text-align: center;
}

div[data-service] .cll p {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #52525b !important;
  /* zinc-600 */
  margin-bottom: 1.5rem !important;
}

div[data-service] .cll button {
  font-weight: 700 !important;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 0.75rem !important;
  padding: 0.75rem 1.75rem !important;
  border-radius: 9999px !important;
  transition: all 0.2s ease-in-out !important;
}