/*
Theme Name: Ward Plumbing
Theme URI: https://ward-plumbing.com
Author: Tom Ward Plumbing
Description: A modern, conversion-focused WordPress theme for Tom Ward Plumbing - serving Metro Atlanta since 1974.
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: ward-plumbing
*/

/* ===================================================
   DESIGN SYSTEM - CSS VARIABLES
=================================================== */
:root {
  --color-navy:       #0A1628;
  --color-navy-mid:   #122040;
  --color-blue:       #1A4B8C;
  --color-blue-light: #2563EB;
  --color-accent:     #F97316;
  --color-accent-hover: #EA6C0A;
  --color-white:      #FFFFFF;
  --color-off-white:  #F8FAFC;
  --color-gray-100:   #F1F5F9;
  --color-gray-200:   #E2E8F0;
  --color-gray-400:   #94A3B8;
  --color-gray-600:   #475569;
  --color-gray-800:   #1E293B;
  --color-text:       #1E293B;
  --font-heading: 'Oswald', sans-serif;
  --font-body:    'Source Sans 3', sans-serif;
  --section-pad: 80px;
  --container:   1200px;
  --radius:      8px;
  --radius-lg:   16px;
  --shadow-sm:  0 1px 3px rgba(0,0,0,.12);
  --shadow-md:  0 4px 16px rgba(0,0,0,.12);
  --shadow-lg:  0 10px 40px rgba(0,0,0,.16);
  --shadow-xl:  0 20px 60px rgba(0,0,0,.2);
  --ease: cubic-bezier(.4,0,.2,1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--font-body); color: var(--color-text); background: var(--color-white); line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }

h1,h2,h3,h4,h5,h6 { font-family: var(--font-heading); font-weight: 700; line-height: 1.15; letter-spacing: .02em; text-transform: uppercase; color: var(--color-navy); }
h1 { font-size: clamp(2.2rem,5vw,3.8rem); }
h2 { font-size: clamp(1.7rem,3.5vw,2.6rem); }
h3 { font-size: clamp(1.2rem,2.5vw,1.7rem); }
p { margin-bottom: 1em; } p:last-child { margin-bottom: 0; }

.container { width:100%; max-width:var(--container); margin:0 auto; padding:0 24px; }
.section-pad { padding: var(--section-pad) 0; }
.text-center { text-align: center; }
.text-white { color: var(--color-white) !important; }
.text-accent { color: var(--color-accent); }

/* Buttons */
.btn { display:inline-flex; align-items:center; gap:8px; padding:14px 28px; border-radius:var(--radius); font-family:var(--font-heading); font-size:1rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; border:2px solid transparent; transition:all .25s var(--ease); }
.btn-primary { background:var(--color-accent); color:var(--color-white); border-color:var(--color-accent); }
.btn-primary:hover { background:var(--color-accent-hover); border-color:var(--color-accent-hover); transform:translateY(-2px); box-shadow:0 8px 24px rgba(249,115,22,.35); }
.btn-outline { background:transparent; color:var(--color-white); border-color:var(--color-white); }
.btn-outline:hover { background:var(--color-white); color:var(--color-navy); transform:translateY(-2px); }
.btn-nav { background:var(--color-accent); color:var(--color-white); padding:10px 22px; font-size:.875rem; }
.btn-nav:hover { background:var(--color-accent-hover); }

/* Top Bar */
.top-bar { background:var(--color-navy); color:rgba(255,255,255,.55); font-size:.8rem; padding:8px 0; }
.top-bar .container { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; }
.top-bar a { color:rgba(255,255,255,.55); transition:color .2s; }
.top-bar a:hover { color:var(--color-accent); }
.top-bar-left,.top-bar-right { display:flex; align-items:center; gap:20px; }
.top-bar-item { display:flex; align-items:center; gap:6px; }
.top-bar-item svg { color:var(--color-accent); }

/* Header */
.site-header { background:var(--color-white); position:sticky; top:0; z-index:1000; box-shadow:var(--shadow-sm); transition:box-shadow .3s; }
.site-header.scrolled { box-shadow:var(--shadow-md); }
.header-inner { display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:24px; }
.site-logo { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.logo-icon { width:48px; height:48px; background:var(--color-blue); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; }
.logo-icon svg { color:var(--color-white); }
.logo-text .name { font-family:var(--font-heading); font-size:1.2rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--color-navy); display:block; }
.logo-text .tagline { font-size:.68rem; color:var(--color-gray-400); letter-spacing:.06em; text-transform:uppercase; display:block; }
.primary-nav { display:flex; align-items:center; gap:2px; }
.primary-nav a { padding:8px 12px; font-family:var(--font-heading); font-size:.82rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--color-gray-800); border-radius:var(--radius); transition:color .2s,background .2s; white-space:nowrap; }
.primary-nav a:hover { color:var(--color-blue); background:var(--color-gray-100); }
.header-cta { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.header-phone { display:flex; align-items:center; gap:6px; font-family:var(--font-heading); font-size:1.05rem; font-weight:700; color:var(--color-navy); }
.header-phone svg { color:var(--color-accent); }
.header-phone:hover { color:var(--color-blue); }
.menu-toggle { display:none; flex-direction:column; justify-content:center; gap:5px; width:40px; height:40px; background:none; border:none; cursor:pointer; padding:8px; border-radius:var(--radius); }
.menu-toggle span { display:block; width:100%; height:2px; background:var(--color-navy); border-radius:2px; transition:all .3s var(--ease); }
.menu-toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.menu-toggle.active span:nth-child(2) { opacity:0; }
.menu-toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Hero */
.hero { position:relative; min-height:90vh; display:flex; align-items:center; overflow:hidden; background:var(--color-navy); }
.hero-bg { position:absolute; inset:0; background:linear-gradient(135deg,rgba(10,22,40,.97) 0%,rgba(26,75,140,.8) 60%,rgba(10,22,40,.95) 100%); }
.hero-pattern { position:absolute; inset:0; background-image:radial-gradient(circle at 2px 2px,rgba(255,255,255,.04) 1px,transparent 0); background-size:32px 32px; pointer-events:none; }
.hero-accent-bar { position:absolute; left:0; top:0; bottom:0; width:5px; background:var(--color-accent); }
.hero .container { position:relative; z-index:2; padding-top:60px; padding-bottom:80px; }
.hero-grid { display:grid; grid-template-columns:1fr 420px; gap:60px; align-items:center; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; background:rgba(249,115,22,.15); border:1px solid rgba(249,115,22,.35); color:var(--color-accent); padding:6px 14px; border-radius:50px; font-size:.78rem; font-family:var(--font-heading); font-weight:600; letter-spacing:.1em; text-transform:uppercase; margin-bottom:20px; }
.hero h1 { color:var(--color-white); margin-bottom:20px; }
.hero h1 span { color:var(--color-accent); }
.hero-sub { color:rgba(255,255,255,.7); font-size:1.1rem; max-width:540px; margin-bottom:36px; line-height:1.7; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }
.hero-stats { display:flex; gap:32px; margin-top:48px; padding-top:36px; border-top:1px solid rgba(255,255,255,.12); }
.stat-item { text-align:center; }
.stat-num { font-family:var(--font-heading); font-size:2.2rem; font-weight:700; color:var(--color-accent); line-height:1; display:block; }
.stat-label { font-size:.75rem; color:rgba(255,255,255,.5); text-transform:uppercase; letter-spacing:.08em; margin-top:4px; }

/* Hero Card */
.hero-card { background:var(--color-white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xl); }
.hero-card-header { background:var(--color-blue); padding:18px 24px; display:flex; align-items:center; gap:12px; }
.hero-card-header h3 { color:var(--color-white); font-size:.95rem; font-weight:600; text-transform:uppercase; letter-spacing:.06em; }
.hero-card-header .dot { width:10px; height:10px; background:#22C55E; border-radius:50%; animation:pulse 2s infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.6;transform:scale(1.3)} }
.hero-card-body { padding:24px; }
.contact-form-group { margin-bottom:14px; }
.contact-form-group label { display:block; font-size:.75rem; font-weight:600; text-transform:uppercase; letter-spacing:.08em; color:var(--color-gray-600); margin-bottom:5px; }
.contact-form-group input,.contact-form-group select,.contact-form-group textarea { width:100%; padding:9px 12px; border:1.5px solid var(--color-gray-200); border-radius:var(--radius); font-family:var(--font-body); font-size:.88rem; color:var(--color-text); background:var(--color-off-white); transition:border-color .2s; outline:none; }
.contact-form-group input:focus,.contact-form-group select:focus,.contact-form-group textarea:focus { border-color:var(--color-blue-light); background:var(--color-white); }
.contact-form-group textarea { resize:vertical; min-height:72px; }
.card-form-submit { width:100%; padding:13px; font-size:.95rem; margin-top:4px; }
.emergency-note { text-align:center; margin-top:12px; font-size:.78rem; color:var(--color-gray-400); }
.emergency-note a { color:var(--color-accent); font-weight:700; }

/* Trust Bar */
.trust-bar { background:var(--color-navy-mid); padding:18px 0; border-top:3px solid var(--color-accent); }
.trust-bar .container { display:flex; justify-content:space-around; align-items:center; flex-wrap:wrap; gap:20px; }
.trust-item { display:flex; align-items:center; gap:10px; color:rgba(255,255,255,.8); font-family:var(--font-heading); font-size:.82rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.trust-item svg { color:var(--color-accent); }

/* Section Headers */
.section-header { margin-bottom:48px; }
.section-label { display:inline-flex; align-items:center; gap:8px; color:var(--color-accent); font-family:var(--font-heading); font-size:.78rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; margin-bottom:10px; }
.section-label::before { content:''; display:inline-block; width:24px; height:2px; background:var(--color-accent); }
.section-header p { color:var(--color-gray-600); font-size:1.05rem; max-width:540px; margin-top:10px; }
.section-header.text-center p { margin:10px auto 0; }

/* Services */
.services-section { background:var(--color-off-white); }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.service-card { background:var(--color-white); border-radius:var(--radius-lg); padding:28px; border:1.5px solid var(--color-gray-200); transition:all .3s var(--ease); position:relative; overflow:hidden; }
.service-card::before { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:var(--color-accent); transform:scaleX(0); transition:transform .3s var(--ease); }
.service-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:transparent; }
.service-card:hover::before { transform:scaleX(1); }
.service-icon { width:52px; height:52px; background:rgba(26,75,140,.1); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; margin-bottom:18px; }
.service-icon svg { color:var(--color-blue); }
.service-card h3 { font-size:1.05rem; margin-bottom:8px; }
.service-card p { color:var(--color-gray-600); font-size:.88rem; line-height:1.65; }
.service-link { display:inline-flex; align-items:center; gap:6px; color:var(--color-blue-light); font-weight:600; font-size:.875rem; margin-top:14px; transition:gap .2s; }
.service-link:hover { gap:10px; }

/* Why Us */
.why-us-section { background:var(--color-white); }
.why-us-grid { display:grid; grid-template-columns:minmax(280px,1fr) 1fr; gap:40px; align-items:start; }
.why-us-image { position:relative; }
.why-us-image img { width:100%; height:auto; border-radius:var(--radius-lg); display:block; }



.why-us-content h2 { margin-bottom:14px; }
.why-us-content > p { color:var(--color-gray-600); margin-bottom:28px; font-size:1.02rem; }
.feature-list { display:flex; flex-direction:column; gap:18px; }
.feature-item { display:flex; gap:16px; align-items:flex-start; }
.feature-icon { width:44px; height:44px; background:rgba(249,115,22,.1); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.feature-icon svg { color:var(--color-accent); }
.feature-text h4 { color:var(--color-navy); font-size:.95rem; margin-bottom:3px; }
.feature-text p { color:var(--color-gray-600); font-size:.85rem; }

/* Emergency */
.emergency-section { background:linear-gradient(135deg,var(--color-accent) 0%,#C2440A 100%); padding:48px 0; }
.emergency-inner { display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.emergency-text h2 { color:var(--color-white); margin-bottom:8px; }
.emergency-text p { color:rgba(255,255,255,.85); font-size:1.02rem; }
.emergency-phone { display:flex; align-items:center; gap:16px; flex-shrink:0; }
.emergency-phone-icon { width:56px; height:56px; background:rgba(255,255,255,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; }
.emergency-phone-icon svg { color:var(--color-white); }
.emergency-phone-info .label { font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:rgba(255,255,255,.7); font-weight:600; }
.emergency-phone-info .number { font-family:var(--font-heading); font-size:1.9rem; font-weight:700; color:var(--color-white); line-height:1.1; }
.emergency-phone-info .number a { color:var(--color-white); }

/* Testimonials */
.testimonials-section { background:var(--color-navy); }
.testimonials-section .section-label,.testimonials-section h2 { color:var(--color-white); }
.reviews-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.review-card { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:var(--radius-lg); padding:24px; transition:background .3s; }
.review-card:hover { background:rgba(255,255,255,.1); }
.stars { display:flex; gap:3px; margin-bottom:14px; }
.stars svg { color:#FBBF24; width:17px; height:17px; }
.review-text { color:rgba(255,255,255,.72); font-size:.92rem; line-height:1.7; margin-bottom:18px; }
.reviewer { display:flex; align-items:center; gap:12px; }
.reviewer-avatar { width:42px; height:42px; background:var(--color-blue); border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--font-heading); font-size:.95rem; color:var(--color-white); font-weight:700; flex-shrink:0; }
.reviewer-info .name { color:var(--color-white); font-weight:700; font-size:.92rem; }
.reviewer-info .location { color:rgba(255,255,255,.4); font-size:.78rem; }

/* Areas */
.areas-section { background:var(--color-off-white); }
.areas-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:40px; }
.area-chip { background:var(--color-white); border:1.5px solid var(--color-gray-200); border-radius:var(--radius); padding:13px 14px; display:flex; align-items:center; gap:10px; font-weight:600; color:var(--color-navy); font-size:.88rem; transition:all .2s var(--ease); }
.area-chip svg { color:var(--color-accent); flex-shrink:0; }
.area-chip:hover { border-color:var(--color-blue-light); background:rgba(37,99,235,.05); transform:translateY(-2px); box-shadow:var(--shadow-sm); }

/* Contact */
.contact-section { background:var(--color-white); }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.contact-info h2 { margin-bottom:14px; }
.contact-info > p { color:var(--color-gray-600); margin-bottom:32px; font-size:1.02rem; }
.contact-cards { display:flex; flex-direction:column; gap:14px; }
.contact-card { display:flex; align-items:center; gap:16px; padding:16px 18px; background:var(--color-off-white); border-radius:var(--radius); border:1.5px solid var(--color-gray-200); transition:all .2s; }
.contact-card:hover { border-color:var(--color-blue-light); background:rgba(37,99,235,.04); }
.contact-card-icon { width:46px; height:46px; background:var(--color-blue); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.contact-card-icon svg { color:var(--color-white); }
.contact-card-text .label { font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:var(--color-gray-400); font-weight:600; }
.contact-card-text .value { font-family:var(--font-heading); font-size:1.05rem; font-weight:600; color:var(--color-navy); }
.contact-card-text .value a { color:var(--color-navy); }
.contact-card-text .value a:hover { color:var(--color-blue-light); }
.contact-form-wrapper { background:var(--color-off-white); border-radius:var(--radius-lg); padding:36px; border:1.5px solid var(--color-gray-200); }
.contact-form-wrapper h3 { margin-bottom:22px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.main-form .contact-form-group input,.main-form .contact-form-group select,.main-form .contact-form-group textarea { background:var(--color-white); }
.form-submit { width:100%; margin-top:8px; padding:15px; }

/* Footer */
.site-footer { background:var(--color-navy); color:rgba(255,255,255,.6); padding:60px 0 0; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:44px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.1); }
.footer-brand .logo-text .name { color:var(--color-white); }
.footer-brand .logo-text .tagline { color:rgba(255,255,255,.35); }
.footer-brand > p { font-size:.86rem; line-height:1.7; margin-top:14px; margin-bottom:22px; color:rgba(255,255,255,.5); }
.footer-social { display:flex; gap:10px; }
.social-btn { width:36px; height:36px; background:rgba(255,255,255,.08); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.5); transition:all .2s; }
.social-btn:hover { background:var(--color-accent); color:var(--color-white); }
.footer-col h4 { color:var(--color-white); font-size:.85rem; letter-spacing:.1em; margin-bottom:18px; }
.footer-col ul { display:flex; flex-direction:column; gap:8px; }
.footer-col ul li a { color:rgba(255,255,255,.5); font-size:.85rem; transition:color .2s; display:flex; align-items:center; gap:6px; }
.footer-col ul li a:hover { color:var(--color-accent); }
.footer-col ul li a::before { content:'›'; color:var(--color-accent); }
.footer-bottom { padding:18px 0; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; font-size:.78rem; color:rgba(255,255,255,.3); }
.footer-bottom a { color:rgba(255,255,255,.3); }
.footer-bottom a:hover { color:var(--color-accent); }

/* Floating Call Button */
.floating-call { display:none; position:fixed; bottom:20px; right:20px; z-index:999; background:var(--color-accent); color:var(--color-white); border-radius:50px; padding:13px 20px; font-family:var(--font-heading); font-size:.9rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; align-items:center; gap:8px; box-shadow:0 8px 24px rgba(249,115,22,.4); transition:all .2s; }
.floating-call:hover { background:var(--color-accent-hover); transform:translateY(-2px); }

/* Animations */
.fade-up { opacity:0; transform:translateY(24px); transition:opacity .6s var(--ease),transform .6s var(--ease); }
.fade-up.visible { opacity:1; transform:translateY(0); }
.fade-up-delay-1 { transition-delay:.1s; }
.fade-up-delay-2 { transition-delay:.2s; }
.fade-up-delay-3 { transition-delay:.3s; }

/* Responsive */
@media(max-width:1024px){
  .hero-grid { grid-template-columns:1fr; }
  .hero-card { max-width:520px; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .areas-grid { grid-template-columns:repeat(3,1fr); }
}
@media(max-width:768px){
  :root{--section-pad:52px}
  .top-bar .container { flex-direction:column; gap:4px; text-align:center; }
  .top-bar-left,.top-bar-right { flex-wrap:wrap; justify-content:center; }
  .primary-nav { display:none; flex-direction:column; position:absolute; top:100%; left:0; right:0; background:var(--color-white); padding:14px; box-shadow:var(--shadow-lg); border-top:1px solid var(--color-gray-200); z-index:999; }
  .primary-nav.open { display:flex; }
  .primary-nav a { padding:12px 14px; font-size:.95rem; }
  .header-phone { display:none; }
  .menu-toggle { display:flex; }
  .site-header { position:relative; }
  .hero { min-height:auto; }
  .hero .container { padding-top:36px; padding-bottom:44px; }
  .hero-stats { gap:20px; flex-wrap:wrap; justify-content:center; }
  .why-us-image img { height:auto; }
  .reviews-grid,.services-grid { grid-template-columns:1fr; }
  .areas-grid { grid-template-columns:repeat(2,1fr); }
  .contact-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .emergency-inner { flex-direction:column; text-align:center; }
  .floating-call { display:flex; }
}
@media(max-width:480px){
  .why-us-grid { grid-template-columns:1fr; }
  .hero-actions { flex-direction:column; }
  .hero-actions .btn { justify-content:center; }
}

/* WP defaults */
.alignnone{margin:5px 20px 20px 0}.aligncenter,div.aligncenter{display:block;margin:5px auto}.alignright{float:right;margin:5px 0 20px 20px}.alignleft{float:left;margin:5px 20px 20px 0}
.entry-content{padding:var(--section-pad) 0}.entry-content h2,.entry-content h3{margin-bottom:.75em;margin-top:1.5em}.entry-content p{color:var(--color-gray-600);line-height:1.75;margin-bottom:1.25em}.entry-content ul,.entry-content ol{padding-left:1.5em;margin-bottom:1.25em;color:var(--color-gray-600)}.entry-content li{margin-bottom:.5em}

/* ===================================================
   UPDATED STYLES — v2.0
=================================================== */

/* Logo image */
.site-logo-img { height: 56px; width: auto; max-width: 200px; object-fit: contain; }
.footer-logo-img { height: 48px; width: auto; max-width: 180px; object-fit: contain; filter: brightness(1.1); }

/* Hero button fix — solid white call button */
.btn-white { background: var(--color-white); color: var(--color-navy); border-color: var(--color-white); }
.btn-white:hover { background: var(--color-gray-100); border-color: var(--color-gray-100); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(255,255,255,.2); }

/* Hero text/financing extras */
.hero-contact-options { margin-top: 12px; }
.hero-text-link { display:inline-flex; align-items:center; gap:6px; color:rgba(255,255,255,.65); font-size:.88rem; transition:color .2s; }
.hero-text-link:hover { color:var(--color-accent); }
.hero-financing-badge { display:inline-flex; align-items:center; gap:7px; margin-top:14px; color:rgba(255,255,255,.7); font-size:.85rem; }
.hero-financing-badge a { color:var(--color-accent); font-weight:700; }
.hero-financing-badge svg { color:var(--color-accent); }

/* Header contact group */
.header-contact-group { display:flex; flex-direction:column; align-items:flex-end; gap:2px; }
.header-text { display:flex; align-items:center; gap:5px; font-size:.75rem; color:var(--color-gray-600); font-weight:600; }
.header-text svg { color:var(--color-blue); }
.header-text:hover { color:var(--color-blue); }

/* Service card financing note */
.service-financing-note { display:inline-flex; align-items:center; gap:5px; font-size:.78rem; color:var(--color-blue); font-weight:600; margin-top:8px; }
.service-financing-note svg { color:var(--color-accent); }

/* Btn secondary */
.btn-secondary { background:var(--color-gray-100); color:var(--color-navy); border-color:var(--color-gray-200); }
.btn-secondary:hover { background:var(--color-gray-200); transform:translateY(-2px); }

/* Financing section */
.financing-section { background:var(--color-white); border-top:1px solid var(--color-gray-200); border-bottom:1px solid var(--color-gray-200); }
.financing-inner { display:grid; grid-template-columns:1fr auto; gap:60px; align-items:center; }
.financing-text h2 { margin-bottom:12px; }
.financing-text p { color:var(--color-gray-600); font-size:1.02rem; margin-bottom:16px; }
.financing-bullets { display:flex; flex-direction:column; gap:10px; }
.financing-bullets li { display:flex; align-items:center; gap:10px; font-size:.95rem; color:var(--color-gray-600); }
.financing-bullets li svg { color:var(--color-accent); flex-shrink:0; }
.financing-banner img { border-radius:var(--radius-lg); box-shadow:var(--shadow-md); display:block; }

/* Emergency section — dual contact */
.emergency-contact { display:flex; align-items:center; gap:20px; flex-shrink:0; }
.emergency-divider { color:rgba(255,255,255,.5); font-size:.85rem; font-style:italic; }

/* Field note */
.field-note { display:flex; align-items:center; gap:5px; font-size:.78rem; color:var(--color-gray-400); margin-top:5px; }
.field-note svg { color:var(--color-accent); flex-shrink:0; }

/* Contact financing note */
.contact-financing { display:flex; align-items:center; gap:8px; margin-top:20px; font-size:.88rem; color:var(--color-gray-600); }
.contact-financing svg { color:var(--color-accent); }
.contact-financing a { color:var(--color-blue-light); font-weight:700; }

/* Form financing note */
.form-financing-note { display:flex; align-items:center; gap:6px; font-size:.8rem; color:var(--color-gray-400); margin-top:12px; flex-wrap:wrap; }
.form-financing-note svg { color:var(--color-accent); }
.form-financing-note a { color:var(--color-blue-light); }

/* reCAPTCHA */
.g-recaptcha-wrapper { margin-bottom:12px; }

/* Responsive updates */
@media(max-width:1024px){
  .financing-inner { grid-template-columns:1fr; }
  .financing-banner { display:flex; justify-content:center; }
  .emergency-contact { flex-wrap:wrap; justify-content:center; }
}
@media(max-width:768px){
  .header-contact-group { display:none; }
  .financing-inner { gap:32px; }
  .emergency-contact { flex-direction:column; gap:16px; }
  .emergency-divider { display:none; }
  .site-logo-img { height:44px; }
}

/* Footer logo white box */
.footer-logo-wrap {
  display: inline-block;
  background: #ffffff;
  border-radius: var(--radius);
  padding: 10px 16px;
  margin-bottom: 16px;
}
.footer-logo-img {
  height: 52px;
  width: auto;
  max-width: 200px;
  object-fit: contain;
  display: block;
}

/* ===================================================
   V3 TWEAKS
=================================================== */

/* Top bar emergency highlight */
.top-bar-emergency { color: #F97316 !important; font-weight: 700; }
.top-bar-emergency svg { color: #F97316; }

/* Header numbers — clean stacked layout */
.header-numbers {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 3px;
  border-right: 1px solid var(--color-gray-200);
  padding-right: 14px;
  margin-right: 4px;
}
.header-call {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-heading);
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--color-navy);
  letter-spacing: .02em;
  line-height: 1;
}
.header-call svg { color: var(--color-accent); flex-shrink: 0; }
.header-call:hover { color: var(--color-blue); }
.header-text-link {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: .75rem;
  font-weight: 600;
  color: var(--color-gray-600);
  line-height: 1;
}
.header-text-link svg { color: var(--color-blue); flex-shrink: 0; }
.header-text-link:hover { color: var(--color-blue); }

/* Hours in trust bar / footer */
.hours-line { display: flex; flex-direction: column; gap: 1px; }
.hours-office { font-size: .78rem; }
.hours-emergency { font-size: .78rem; color: #F97316; font-weight: 700; }

/* Footer logo white box */
.footer-logo-box {
  display: inline-block;
  background: #ffffff;
  border-radius: var(--radius);
  padding: 10px 16px;
  margin-bottom: 16px;
}

/* Cities customizer note */
.city-customizer-note { display: none; }

@media(max-width:768px){
  .header-numbers { display: none; }
  .top-bar-emergency { display: none; }
}
