
/* Coast Driving Service Area Page - Elementor Custom CSS */
.elementor-widget-text-editor p { margin: 0; }

/* Hero */
.cd-section { font-family: Inter, system-ui, sans-serif; }
.cd-hero { border-bottom: 1px solid #d0e8f4; }
.cd-header { border-bottom: 1px solid #d0e8f4; }
.cd-header-btn .elementor-button { border-radius: 999px !important; }
.cd-hero-title .elementor-heading-title { font-size: clamp(38px, 5.5vw, 60px) !important; }
.cd-hero-grid { padding-top: 72px !important; }
.cd-small-badge { display: inline-flex !important; }
.cd-trust-item .elementor-icon { margin-bottom: 0 !important; }
.cd-hero-badge { box-shadow: 0 4px 20px rgba(0,0,0,.08); }

/* Cards */
.cd-card { transition: transform .25s ease, box-shadow .25s ease; }
.cd-card:hover { transform: translateY(-3px); box-shadow: 0 16px 40px rgba(0,0,0,.07) !important; }
.cd-cards-grid { margin-top: 0 !important; }

/* Journey card numbers */
.cd-journey-num .elementor-heading-title { color: #ddeef7 !important; font-size: 42px !important; }

/* FAQ accordion */
.cd-faq-accordion .elementor-accordion-item { border: 1.5px solid #d0e8f4 !important; border-bottom: 0 !important; background: #f8fdff; }
.cd-faq-accordion .elementor-accordion-item:first-child { border-radius: 12px 12px 0 0; overflow: hidden; }
.cd-faq-accordion .elementor-accordion-item:last-child { border-bottom: 1.5px solid #d0e8f4 !important; border-radius: 0 0 12px 12px; overflow: hidden; }
.cd-faq-accordion .elementor-tab-title { padding: 20px 24px !important; }
.cd-faq-accordion .elementor-tab-content { padding: 0 24px 18px !important; }

/* Final CTA */
.cd-cta { position: relative; overflow: hidden; }
.cd-cta:before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 0%, rgba(255,255,255,.2), transparent 55%); pointer-events: none; }
.cd-cta-inner { position: relative; z-index: 2; gap: 14px !important; }
.cd-cta-btn-outline .elementor-button { border: 1.5px solid rgba(255,255,255,.5) !important; background: transparent !important; }
.cd-cta-btn-white .elementor-button { background: #fff !important; color: #1a9edb !important; }

/* Eyebrow */
.cd-eyebrow .elementor-heading-title { text-transform: uppercase !important; letter-spacing: .08em !important; }

/* Footer */
.cd-footer { border-top: 1px solid #d0e8f4; }

/* Section title */
.cd-title-block .elementor-heading-title { text-align: center !important; }
.cd-section-subtitle .elementor-widget-text-editor { text-align: center; }

/* Responsive */
@media (max-width: 1024px) {
  .cd-hero-copy, .cd-hero-visual, .cd-about-visual, .cd-about-copy { width: 100% !important; }
  .cd-card, .cd-who-card, .cd-journey-card { width: 48% !important; }
}
@media (max-width: 767px) {
  .cd-nav { display: none !important; }
  .cd-hero-grid { padding-top: 48px !important; }
  .cd-hero-title .elementor-heading-title { font-size: 40px !important; }
  .cd-card, .cd-who-card, .cd-journey-card { width: 100% !important; }
  .cd-hero-badge { display: none !important; }
  .cd-cta { padding: 48px 24px !important; }
  .cd-cta-title .elementor-heading-title { font-size: 26px !important; }
}


/* Importer hardening */
.coast-driving-page .elementor-widget-heading .elementor-heading-title { margin: 0; }
.coast-driving-page .elementor-widget-text-editor p { margin: 0; }
