/*
Theme Name: Red Dog Roofing
Description: Austin-focused roofing theme with popup lead form & local SEO.
Version: 1.3.0
License: GPL-2.0-or-later
Text Domain: red-dog-roofing
*/
:root{--primary:#C1121F;--dark:#111827;--gray:#6B7280;--light:#F9FAFB}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;color:var(--dark)}
a{color:var(--primary);text-decoration:none}
img{max-width:100%;display:block;height:auto}
.container{max-width:1120px;margin:0 auto;padding:0 20px}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid #eee}
.site-header .nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;gap:10px;align-items:center;font-weight:700;color:var(--dark)}
.brand img{width:36px;height:36px}
#nav{display:flex;gap:20px;align-items:center}
#nav a{color:var(--dark);opacity:.9}
.btn{display:inline-block;padding:12px 18px;border-radius:999px;border:1px solid var(--dark)}
.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}
.btn.small{padding:8px 12px}
.hamburger{display:none;background:none;border:0;font-size:24px}

.hero{background:linear-gradient(90deg,rgba(193,18,31,0.10),rgba(17,24,39,0.04)), url('<?php echo esc_url( get_template_directory_uri() ); ?>/assets/austin-skyline.jpg') center/cover no-repeat; padding:80px 0}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:stretch}
.hero-text h1{font-size:48px;line-height:1.1;margin:0 0 8px}
.hero-text p{font-size:20px;color:var(--gray);margin:0 0 16px}
.checklist{list-style:none;padding:0;margin:0 0 16px}
.checklist li{margin:6px 0;padding-left:28px;position:relative}
.checklist li:before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:800}

.hero-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 10px 20px rgba(17,24,39,0.12)}
.quick-form label{display:block;margin:10px 0}
.quick-form input{width:100%;padding:10px;border:1px solid #e5e7eb;border-radius:10px}

.section{padding:72px 0}
.section.alt{background:var(--light)}
.grid{display:grid;gap:20px}
.cards{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid #eee;border-radius:16px;padding:20px;box-shadow:0 10px 20px rgba(17,24,39,0.12)}

.features{grid-template-columns:repeat(4,1fr);text-align:center}
.feature .stat{font-size:40px;font-weight:800;color:var(--primary)}

.gallery{grid-template-columns:repeat(3,1fr)}
.gallery img{border-radius:12px;border:1px solid #eee;box-shadow:0 10px 20px rgba(17,24,39,0.12)}

.testimonials{grid-template-columns:repeat(3,1fr)}
blockquote{background:#fff;border-left:6px solid var(--primary);padding:16px;border-radius:12px;box-shadow:0 10px 20px rgba(17,24,39,0.12);margin:0}
cite{display:block;margin-top:10px;color:var(--gray)}

.areas{display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none}
.areas li{background:#fff;border:1px solid #eee;border-radius:999px;padding:8px 14px;box-shadow:0 10px 20px rgba(17,24,39,0.12)}

.cta{background:linear-gradient(90deg, rgba(193,18,31,0.06), rgba(17,24,39,0.03))}
.cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.contact-list{list-style:none;padding:0;margin:0}
.contact-form label{display:block;margin:10px 0}
.contact-form input,.contact-form textarea{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:10px}

.site-footer{background:#0B1020;color:#E5E7EB;padding:24px 0}
.footer-inner{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;align-items:center}
.footer-brand img{width:32px;height:32px}
.footer-nav a{color:#E5E7EB;opacity:.9;margin-right:12px}

.legal{background:#060912;color:#cbd5e1;padding:32px 0}
.legal a{color:#fff;text-decoration:underline}

.sticky-estimate{position:fixed;right:20px;bottom:20px;z-index:1000;background:var(--primary);color:#fff;padding:14px 18px;border-radius:999px;box-shadow:0 10px 20px rgba(17,24,39,.2);font-weight:700}
.sticky-estimate:hover{opacity:.95}

/* Modal (Free Estimate) */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;z-index:1001;padding:20px}
.modal{background:#fff;border-radius:16px;width:min(640px,95vw);padding:20px;box-shadow:0 20px 40px rgba(0,0,0,.3)}
.modal header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.modal h3{margin:0}
.modal .close{background:none;border:0;font-size:24px;cursor:pointer}
.modal .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.modal .grid-2 label{display:block}
.modal input,.modal textarea{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:10px}
.modal .actions{margin-top:12px;display:flex;gap:10px;justify-content:flex-end}

@media (max-width: 960px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .features{grid-template-columns:repeat(2,1fr)}
  .testimonials{grid-template-columns:1fr}
  .cta-inner{grid-template-columns:1fr}
  .hero-inner{grid-template-columns:1fr}
  #nav{display:none}
  .hamburger{display:block}
}
