/* Peak Comfort HVAC — theme styles (desktop layout; the site has no viewport tag) */

body { min-width: 1180px; margin: 0; font-family: "Trebuchet MS", "Segoe UI", Arial, sans-serif; font-size: 17px; line-height: 1.6; color: #1c2533; background: #ffffff; }

a { color: #0b3d91; }

img { max-width: 100%; }

.inner { width: 1140px; margin: 0 auto; }

h1, h2, h3 { color: #0b2a5e; line-height: 1.2; }

.topbar { background: #0b2a5e; color: #cfdcf5; font-size: 14px; padding: 8px 0; }

.header { background: #ffffff; border-bottom: 4px solid #f97316; }

.header-row { display: flex; align-items: center; gap: 36px; padding: 14px 0; }

.logo { display: flex; align-items: center; gap: 12px; text-decoration: none; }

.logo h1, .logo-text { font-size: 26px; margin: 0; color: #0b2a5e; font-weight: 800; letter-spacing: -0.5px; }

.nav { display: flex; gap: 28px; margin-left: auto; }

.nav a { color: #1c2533; text-decoration: none; font-weight: 700; text-transform: uppercase; font-size: 14px; letter-spacing: 0.6px; }

.nav a:hover { color: #f97316; }

.call-now { display: block; }

.hero { background: linear-gradient(120deg, #eaf2ff 0%, #ffffff 60%, #fff4ea 100%); }

.hero-row { display: flex; align-items: center; gap: 48px; padding: 64px 0; }

.hero-copy { flex: 1; }

.hero-copy h1 { font-size: 52px; margin: 0 0 16px; }

.hero-lead { font-size: 20px; color: #4a5568; }

.hero-art { width: 520px; }

.hero-buttons { display: flex; gap: 14px; margin: 26px 0; }

.button { display: inline-block; background: #f97316; color: #ffffff; padding: 15px 28px; border-radius: 6px; font-weight: 800; text-decoration: none; border: 2px solid #f97316; font: inherit; font-weight: 800; cursor: pointer; }

.button:hover { background: #ea580c; border-color: #ea580c; color: #ffffff; }

.button-outline { background: transparent; color: #0b3d91; border-color: #0b3d91; }

.badges { list-style: none; padding: 0; margin: 0; display: flex; gap: 12px; }

.badges li { background: #ffffff; border: 1px solid #d6e2f5; border-radius: 999px; padding: 6px 14px; font-size: 14px; font-weight: 700; color: #0b2a5e; }

.section { padding: 64px 0; }

.section-alt { background: #f4f7fc; }

.section h2 { font-size: 34px; margin-top: 0; }

.svc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }

.svc { border: 1px solid #dde6f3; border-radius: 10px; padding: 24px; border-top: 5px solid #0b3d91; background: #ffffff; }

.svc h3, .svc h2 { margin-top: 0; font-size: 21px; }

.emergency { background: #0b3d91; color: #ffffff; }

.emergency h1 { color: #ffffff; font-size: 38px; margin: 0 0 8px; }

.emergency-row { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 48px 0; }

.emergency p { color: #d6e2f5; max-width: 640px; }

.why { display: flex; gap: 48px; align-items: flex-start; }

.why > div { flex: 1; }

.checks { padding-left: 20px; }

.checks li { margin: 10px 0; }

.review { background: #fff4ea; border-left: 5px solid #f97316; padding: 24px 28px; border-radius: 6px; font-size: 19px; }

.review-by { font-size: 15px; font-weight: 700; color: #7c4a1e; }

.page-top { background: #eaf2ff; padding: 48px 0 28px; }

.page-top h1 { font-size: 44px; margin: 0 0 8px; }

.towns { columns: 3; font-size: 20px; font-weight: 700; color: #0b2a5e; }

.contact-row { display: flex; gap: 48px; }

.request-form { flex: 1.2; display: grid; gap: 14px; }

.request-form label { display: grid; gap: 6px; font-weight: 700; }

.request-form input, .request-form select, .request-form textarea { font: inherit; padding: 11px; border: 1px solid #c8d5ea; border-radius: 6px; }

.contact-card { flex: 1; background: #f4f7fc; border-radius: 10px; padding: 28px; }

.footer { background: #0b2a5e; color: #cfdcf5; padding: 44px 0 20px; font-size: 15px; }

.footer a { color: #ffffff; }

.footer-row { display: flex; gap: 60px; }

.footer-row > div { flex: 1; }

.footer-logo { font-size: 22px; font-weight: 800; color: #ffffff; margin-top: 0; }

.footer-head { font-weight: 800; color: #ffffff; text-transform: uppercase; font-size: 13px; letter-spacing: 1px; }

.footer-legal { border-top: 1px solid rgba(255, 255, 255, 0.15); margin-top: 24px; padding-top: 14px; display: flex; justify-content: space-between; font-size: 13px; }

.footer-legal p { margin: 0; }

.prototype-notice { color: #9fb3d9; }
