/*
Theme Name: Red Recovery (Elementor Ready)
Theme URI: https://redrecovery.uk/
Author: Red Recovery
Description: Elementor-ready WordPress theme for vehicle recovery and roadside assistance.
Version: 2.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: red-recovery
*/
:root {
  --primary: #C8102E;
  --dark: #1E1E1E;
  --light: #FFFFFF;
  --muted: #f5f5f7;
  --text: #222;
}
* { box-sizing: border-box; }
html, body { margin:0; padding:0; }
body { font-family: 'Open Sans', Arial, sans-serif; color: var(--text); background: var(--light); line-height: 1.6; }
h1, h2, h3, h4, h5 { font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, sans-serif; margin: 0 0 0.6rem; }
a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { max-width: 1140px; margin: 0 auto; padding: 0 16px; }
.header { background: var(--light); border-bottom: 1px solid #eee; position: sticky; top:0; z-index: 999; }
.header-inner { display:flex; align-items:center; justify-content:space-between; padding: 14px 0; gap: 12px; }
.logo a { display:flex; align-items:center; gap:10px; font-weight: 800; font-size: 1.25rem; color: var(--dark); }
.logo .badge { width:34px; height:34px; border-radius:6px; background: var(--primary); display:inline-flex; align-items:center; justify-content:center; color:white; font-weight:900; }
.nav ul { list-style:none; margin:0; padding:0; display:flex; gap:18px; flex-wrap: wrap; }
.nav a { font-weight:600; }
.header-cta a { display:inline-block; padding:10px 14px; background: var(--primary); color: white; border-radius: 8px; font-weight: 700; }
.mobile-toggle { display:none; }
.section { padding: 48px 0; }
.footer { background: #0f0f11; color: #e9e9ee; padding: 32px 0; margin-top: 48px; }
.footer a { color: #e9e9ee; }
.footer .cols { display:grid; grid-template-columns: repeat(auto-fit, minmax(200px,1fr)); gap: 18px; }
.footer .brand { font-weight:900; font-size: 1.15rem; display:flex; gap:10px; align-items:center; }
.footer .brand .badge { width:26px; height:26px; border-radius:6px; background: var(--primary); display:inline-flex; align-items:center; justify-content:center; color:white; font-weight:900; }
.footer .legal { margin-top: 18px; font-size: 0.9rem; color: #b9b9c6; }
@media (max-width: 800px) { .nav { display:none; } .mobile-toggle { display:inline-block; } }
.elementor-template-notice { background: #fff7f7; border: 1px solid #ffd1d1; padding: 12px 14px; border-radius: 8px; margin: 18px 0; }
