:root {
    --accent: #d9480f;
    --accent-dark: #b83c0c;
    --ink: #1f2937;
}

body {
    color: var(--ink);
}

.hero {
    background: linear-gradient(160deg, #1f2937 0%, #374151 100%);
    color: #fff;
}

.hero .lead {
    color: #d1d5db;
}

.hero-intro {
    max-width: 720px;
    color: #e5e7eb;
}

.hero-cta {
    color: #d1d5db;
}

.check-mark {
    color: var(--accent);
    font-weight: 700;
}

.btn-call {
    background-color: var(--accent);
    border-color: var(--accent);
    color: #fff;
    font-weight: 600;
}

.btn-call:hover,
.btn-call:focus {
    background-color: var(--accent-dark);
    border-color: var(--accent-dark);
    color: #fff;
}

h2 {
    font-weight: 700;
}

.service-card {
    border-top: 3px solid var(--accent);
}

.contact-list li {
    margin-bottom: .75rem;
}

.contact-card {
    border-top: 3px solid var(--accent);
}

.contact-phone {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--accent-dark);
    text-decoration: none;
}

.contact-phone:hover,
.contact-phone:focus {
    text-decoration: underline;
}

.hours-list li {
    max-width: 22rem;
    padding: .25rem 0;
    border-bottom: 1px dashed #d1d5db;
}

.quote-note {
    background: #fff7ed;
    border-left: 3px solid var(--accent);
    border-radius: .25rem;
    padding: .75rem 1rem;
}

.area-list li {
    margin-bottom: .25rem;
}

.map-embed {
    width: 100%;
    height: 320px;
    border: 0;
}

.map-embed-tall {
    height: 400px;
}

.site-footer {
    background: #1f2937;
    color: #d1d5db;
}
