/* ============================================================
   Concreting Services — native Elementor pages (approximation).
   Demo pages are imported as real Elementor sections/widgets
   (heading, text-editor, image, button, accordion, icon-list).
   These classes keep the orange/concrete brand feel.
   ============================================================ */

.cs-section { position: relative; padding-block: clamp(56px, 8vw, 96px); }
.cs-paper { background: var(--paper); }
.cs-white { background: #fff; }
.cs-dark { background: var(--charcoal); color: var(--text-on-dark); }
.cs-dark .elementor-heading-title { color: #fff; }
.cs-dark .elementor-text-editor, .cs-dark .elementor-widget-text-editor { color: #C6C0B5; }

.cs-hero { background: var(--charcoal); padding-block: clamp(48px, 7vw, 90px); }
.cs-hero .elementor-heading-title { color: #fff; }
.cs-hero .elementor-text-editor, .cs-hero .elementor-widget-text-editor { color: #CFC9BF; }
.cs-hero .elementor-widget-image img { border-radius: var(--radius); box-shadow: var(--shadow-lg); }
.cs-hero .elementor-button { background: var(--accent); }
.cs-hero .elementor-button:hover { background: var(--accent-dark); }

.cs-trust { background: var(--charcoal-2); border-bottom: 3px solid var(--accent); }
.cs-trust .elementor-heading-title { color: #fff; font-size: 1.15rem; }
.cs-trust .elementor-text-editor { color: #B9B3A9; }

.cs-quote { background: linear-gradient(120deg, #171A1D, var(--charcoal) 55%, #2B3238); }
.cs-quote .elementor-heading-title { color: #fff; }
.cs-quote .elementor-text-editor { color: #C9C3B8; }
.cs-quote .elementor-button { background: var(--accent); }

/* Brand accent for icon-lists (checklists) */
.elementor-widget-icon-list .elementor-icon-list-icon { color: var(--accent); }

/* Headings keep the condensed brand face unless Elementor overrides them */
.elementor-widget-heading .elementor-heading-title { font-family: var(--font-display); }

/* Keep Elementor's boxed content aligned with the theme width */
.elementor-section.elementor-section-boxed > .elementor-container { max-width: 1200px; }
