/*
Theme Name: Swift Garage Landing
Theme URI: https://swiftgarageservices.com/
Author: Swift Garage Services
Description: Fast, call-focused garage door repair landing page with dynamic city and phone support.
Version: 1.0.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: swift-garage-landing
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');

:root{--navy:#102b43;--dark:#071a2a;--orange:#f47a2a;--orange2:#d85a09;--cream:#fffaf5;--soft:#fbf6f0;--ink:#213241;--muted:#686863;--line:#eadfd4;--white:#fff;--shadow:0 14px 38px rgba(20,39,55,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',system-ui,-apple-system,sans-serif;line-height:1.55}a{color:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:relative;z-index:5;background:#fff;border-bottom:1px solid var(--line)}.header-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;text-decoration:none;color:var(--navy)}.brand-mark{width:49px;height:49px;display:block}.brand-mark svg{width:100%;height:100%}.garage-roof,.garage-frame{stroke:var(--navy);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.garage-door{fill:var(--orange)}.garage-panels{stroke:#fff;stroke-width:1.8}.brand-copy{display:flex;flex-direction:column;margin-left:9px;line-height:.98}.brand-copy b{font-size:25px;letter-spacing:.5px}.brand-copy small{margin-top:6px;font-size:10px;font-weight:800;letter-spacing:1.7px}.header-phone{text-align:right;text-decoration:none}.header-phone>span{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.header-phone strong{font-size:22px;color:var(--navy)}.phone-symbol{color:var(--orange)}
.hero{background:linear-gradient(105deg,#fffaf5 0%,#f7eee4 100%);padding:54px 0 48px}.hero-row{display:grid;grid-template-columns:1.03fr .97fr;gap:50px;align-items:center}.location,.orange-label{display:inline-flex;align-items:center;gap:7px;color:var(--orange2);font-size:13px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.location>span:first-child{font-size:11px}.hero h1{max-width:670px;margin:13px 0 15px;color:var(--navy);font-size:clamp(42px,5.2vw,67px);line-height:1.02;letter-spacing:-2.5px}.hero-copy>p{max-width:650px;margin:0 0 25px;color:#555b5f;font-size:18px}.call-button{display:inline-flex;align-items:center;gap:13px;min-width:285px;padding:14px 22px;color:white;background:linear-gradient(135deg,var(--orange),var(--orange2));border-radius:14px;box-shadow:0 10px 22px rgba(216,90,9,.24);font-weight:800;font-size:20px;line-height:1.1;text-decoration:none;transition:.2s}.call-button:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(216,90,9,.3)}.call-button small{display:block;margin-bottom:3px;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.call-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:rgba(255,255,255,.18);font-size:22px}.open-line{margin-top:17px;color:#4e5b63;font-size:14px}.open-line span{color:var(--orange);margin-right:4px}.rating{display:flex;gap:9px;align-items:center;margin-top:18px;font-size:13px}.stars{color:#efa322;letter-spacing:1px}.hero-photo{position:relative;min-height:440px;border-radius:22px;background-size:cover;background-position:center;box-shadow:var(--shadow);overflow:hidden}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(7,26,42,.25))}.photo-tag{position:absolute;z-index:1;left:22px;bottom:22px;display:flex;align-items:center;gap:11px;padding:13px 17px;background:rgba(255,255,255,.95);border-radius:14px;box-shadow:0 9px 22px rgba(0,0,0,.14)}.photo-tag b,.photo-tag small{display:block}.photo-tag b{color:var(--navy)}.photo-tag small{font-size:11px;color:var(--muted)}.shield{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:var(--orange);border-radius:50%;font-weight:800}
.benefits{background:#fff;border-block:1px solid var(--line)}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr)}.benefit-grid>div{display:flex;align-items:center;gap:12px;padding:24px 18px;border-right:1px solid var(--line)}.benefit-grid>div:first-child{padding-left:0}.benefit-grid>div:last-child{border:0}.benefit-icon{display:grid;place-items:center;flex:0 0 39px;height:39px;color:var(--orange);background:#fff0e5;border-radius:12px;font-size:20px;font-weight:800}.benefit-grid b,.benefit-grid small{display:block}.benefit-grid b{color:var(--navy);font-size:15px}.benefit-grid small{color:var(--muted);font-size:13px}
.discount-banner{padding:17px 0;color:#fff;background:var(--navy)}.discount-row{display:flex;align-items:center;justify-content:center;gap:14px;text-align:center}.discount-badge{display:grid;place-items:center;flex:0 0 57px;height:57px;color:var(--navy);background:#fff;border:4px solid #ffd7bc;border-radius:50%;font-size:17px;font-weight:800;line-height:1}.discount-copy strong,.discount-copy span{display:block}.discount-copy strong{font-size:20px;line-height:1.2}.discount-copy span{margin-top:3px;color:#dbe6ee;font-size:13px}
.repair-section,.process-section{padding:74px 0;background:var(--cream)}.section-title{text-align:center;max-width:760px;margin:0 auto 38px}.section-title>span{color:var(--orange2);font-size:12px;font-weight:800;letter-spacing:1.4px}.section-title h2,.common-copy h2,.final-cta h2{margin:8px 0 10px;color:var(--navy);font-size:clamp(31px,3.6vw,44px);line-height:1.12;letter-spacing:-1.1px}.section-title p{margin:0;color:var(--muted)}.featured-repair-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.featured-repair{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 24px rgba(20,39,55,.07)}.featured-repair img{display:block;width:100%;height:205px;object-fit:cover}.featured-repair>div{padding:22px}.featured-repair h3,.repair-card h3,.process-grid h3{margin:0 0 7px;color:var(--navy);font-size:20px}.featured-repair p,.repair-card p,.process-grid p{margin:0 0 14px;color:var(--muted);font-size:14px}.featured-repair a,.repair-card a{color:var(--orange2);font-size:14px;font-weight:800;text-decoration:none}.repair-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px}.repair-card{display:flex;gap:16px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px}.repair-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;color:var(--orange);background:#fff0e5;border-radius:13px;font-size:22px}.repair-card h3{font-size:18px}.center-call{text-align:center;margin-top:38px}.center-call>p{font-weight:700}.call-button.compact{font-size:18px;padding:12px 19px}
.common-section{padding:76px 0;background:#fff}.common-row{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.common-copy>p{color:var(--muted)}.common-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:11px 25px;padding:0;margin:23px 0 0;list-style:none;font-weight:700;font-size:14px}.common-copy li::first-letter{color:var(--orange)}.call-panel{padding:37px;text-align:center;color:#fff;background:linear-gradient(145deg,var(--navy),var(--dark));border-radius:21px;box-shadow:var(--shadow)}.panel-phone{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 12px;background:var(--orange);border-radius:50%;font-size:25px}.call-panel>span:not(.panel-phone){font-size:11px;font-weight:800;letter-spacing:1.4px}.call-panel h2{margin:8px 0;font-size:33px}.call-panel p{margin:0 auto 22px;color:#dbe4eb}.call-panel a{display:block;color:#fff;font-size:27px;font-weight:800;text-decoration:none}.call-panel small{color:#b9c8d3}.process-section{background:var(--soft)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.process-grid article{padding:27px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:17px}.process-grid article>b{display:grid;place-items:center;width:40px;height:40px;margin:0 auto 13px;color:#fff;background:var(--orange);border-radius:12px}.process-grid p{margin-bottom:0}.final-cta{padding:72px 0;text-align:center;color:#fff;background:linear-gradient(135deg,var(--navy),var(--dark))}.final-cta>.wrap>span{font-size:12px;font-weight:800;letter-spacing:1.4px;color:#ffb17d}.final-cta h2{color:#fff}.final-cta p{color:#d8e2e9}.final-cta .call-button{margin-top:13px}footer{padding:31px 0 95px;background:#061520;color:#b9c7d0;text-align:center}.footer-brand{justify-content:center;color:#fff}.footer-brand .garage-roof,.footer-brand .garage-frame{stroke:#fff}footer p{font-size:13px}.mobile-call{display:none}
@media(max-width:900px){.hero-row,.common-row{grid-template-columns:1fr}.hero-photo{min-height:380px}.benefit-grid{grid-template-columns:1fr 1fr}.benefit-grid>div{border-bottom:1px solid var(--line)}.featured-repair-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr}.common-row{gap:38px}}
@media(max-width:640px){.wrap{width:min(100% - 28px,1160px)}.header-row{min-height:70px}.brand-mark{width:42px;height:42px}.brand-copy b{font-size:20px}.header-phone>span{display:none}.header-phone strong{font-size:15px}.phone-symbol{display:none}.hero{padding:35px 0}.hero-row{gap:28px}.hero h1{font-size:41px;letter-spacing:-1.5px}.hero-copy>p{font-size:16px}.hero-photo{min-height:300px}.call-button{width:100%;justify-content:center}.rating{align-items:flex-start;flex-direction:column;gap:2px}.benefit-grid{grid-template-columns:1fr}.benefit-grid>div,.benefit-grid>div:first-child{padding:17px 5px;border-right:0}.discount-row{gap:10px}.discount-badge{flex-basis:50px;height:50px;font-size:15px}.discount-copy strong{font-size:16px}.discount-copy span{font-size:11px}.featured-repair-grid,.repair-grid{grid-template-columns:1fr}.featured-repair img{height:210px}.repair-section,.common-section,.process-section{padding:55px 0}.common-copy ul{grid-template-columns:1fr}.call-panel{padding:30px 20px}.call-panel a{font-size:24px}.final-cta{padding:55px 0 90px}.mobile-call{position:fixed;z-index:50;left:12px;right:12px;bottom:10px;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;color:#fff;background:linear-gradient(135deg,var(--orange),var(--orange2));border:2px solid #fff;border-radius:15px;box-shadow:0 8px 28px rgba(0,0,0,.3);font-size:19px;font-weight:800;line-height:1;text-decoration:none}.mobile-call>span:first-child{font-size:24px}.mobile-call small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:3px}}
