/*
Theme Name: Redwood Ridge Builders San Clemente
Description: Fast, local-SEO-focused contractor theme for Redwood Ridge Builders San Clemente.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: redwood-ridge
*/
:root{--navy:#071b3a;--blue:#087cff;--ink:#14213a;--light:#f3f7fc;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}a{color:var(--blue);text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 3px 18px #0003}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;color:#fff;font-weight:800;line-height:1.1}.brand img{width:64px;height:50px;object-fit:cover;object-position:center;margin-right:10px;border-radius:6px}.brand small{display:block;color:#85c5ff;font-weight:600}.menu{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}.menu a{color:#fff;font-weight:650}.btn,.menu .cta a{display:inline-block;background:var(--blue);color:#fff;padding:13px 20px;border-radius:6px;font-weight:800;border:0;cursor:pointer}.btn.alt{background:#fff;color:var(--navy)}.hero{min-height:680px;display:grid;align-items:center;color:#fff;background:linear-gradient(90deg,#071b3ae8 0%,#071b3abf 45%,#071b3a2b 75%),url('assets/images/hero.jpg') center/cover}.hero-copy{max-width:690px;padding:85px 0}.eyebrow{color:#63b4ff;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.82rem}.hero h1{font-size:clamp(2.6rem,6vw,5.3rem);line-height:1.02;margin:.2em 0}.hero p{font-size:1.2rem;max-width:620px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.trustbar{background:var(--blue);color:#fff}.trustgrid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;padding:20px 0;font-weight:800}.section{padding:78px 0}.section.alt{background:var(--light)}.heading{max-width:760px;margin:0 auto 36px;text-align:center}.heading h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.15;margin:.25em 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 28px #08214716;border:1px solid #dbe6f3}.card img{width:100%;height:245px;object-fit:cover}.card-body{padding:24px}.card h3{margin-top:0;color:var(--navy);font-size:1.35rem}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}.split img{border-radius:14px;box-shadow:20px 20px 0 #087cff}.checks{list-style:none;padding:0}.checks li{padding:8px 0}.checks li:before{content:'✓';color:var(--blue);font-weight:900;margin-right:10px}.band{background:var(--navy);color:#fff;padding:58px 0}.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.page-hero{padding:90px 0;background:linear-gradient(110deg,#071b3a,#0b4384);color:#fff}.page-hero h1{font-size:clamp(2.5rem,5vw,4.4rem);margin:0}.content{max-width:850px}.service-img{width:100%;max-height:510px;object-fit:cover;border-radius:14px;margin:28px 0}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:35px}.contact-card{background:var(--light);padding:30px;border-radius:12px}.field{margin-bottom:16px}.field label{display:block;font-weight:700;margin-bottom:5px}.field input,.field textarea{width:100%;padding:13px;border:1px solid #b9c9dc;border-radius:6px;font:inherit}.site-footer{background:#04132a;color:#dce9f7;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:38px}.site-footer h3{color:#fff}.site-footer a{color:#9dcfff}.copyright{border-top:1px solid #ffffff24;margin-top:35px;padding-top:18px;font-size:.9rem}.mobile-toggle{display:none}.notice{background:#eaf4ff;border-left:4px solid var(--blue);padding:16px}@media(max-width:860px){.mobile-toggle{display:block;background:transparent;border:1px solid #fff;color:#fff;padding:8px}.menu{display:none}.menu.open{display:flex;position:absolute;top:82px;left:0;right:0;background:var(--navy);padding:25px;flex-direction:column}.grid,.split,.contact-grid,.footer-grid{grid-template-columns:1fr}.trustgrid{grid-template-columns:1fr 1fr}.hero{min-height:600px;background-position:60% center}.band .wrap{display:block}.card img{height:220px}}
