/* Professional contractor finish: clean structure, restrained color, clear calls to action */
:root { --ink: #102a43; --navy: #12395c; --navy-soft: #1f4e79; --gold: #d99b21; --gold-bright: #f2c35c; --cream: #f5f7f9; --white: #ffffff; --shadow: 0 14px 34px rgba(16, 42, 67, .12); }
body { color: var(--ink); background: var(--cream); font-family: Inter, "Segoe UI", Arial, sans-serif; }
.site-header { min-height: 78px; color: var(--ink); background: rgba(255,255,255,.97); border-bottom: 1px solid #dce4ea; box-shadow: 0 3px 16px rgba(16,42,67,.06); }
.brand { width: clamp(164px, 18vw, 225px); padding: 0; background: transparent; border: 0; box-shadow: none; }
.brand img { max-height: 60px; }
.nav-links { color: var(--ink); letter-spacing: .02em; font-size: .78rem; }
.nav-links a:hover, .header-contact a:hover { color: #b67a0c; }
.header-email { padding: .45rem 0; color: var(--navy); background: transparent; border: 0; border-radius: 0; box-shadow: none; font-size: .8rem; }
.header-call { padding: .7rem .95rem; color: #fff; background: var(--navy); border: 0; border-radius: 4px; box-shadow: none; }
.hero { min-height: 720px; background: linear-gradient(125deg, #102a43 0%, #12395c 58%, #1e527c 100%); }
.hero-art { background: radial-gradient(circle at 85% 22%, rgba(242,195,92,.16), transparent 20rem), linear-gradient(135deg, transparent 0 62%, rgba(255,255,255,.05) 62% 63%, transparent 63%); transform: none; }
.hero-content { min-height: 720px; max-width: 1240px; margin: auto; padding-right: clamp(1rem, 5vw, 4.5rem); padding-left: clamp(1rem, 5vw, 4.5rem); }
.hero-copy h1 { max-width: 690px; letter-spacing: -.045em; text-shadow: none; }
.hero-copy p:not(.eyebrow) { max-width: 580px; color: #e5edf3; }
.eyebrow { color: var(--gold-bright); letter-spacing: .1em; font-size: .72rem; }
.button { border-radius: 4px; text-transform: none; }
.button-primary { color: #102a43; background: var(--gold-bright); }
.button-secondary { border-color: rgba(255,255,255,.45); background: transparent; }
.trust-row span { padding: .7rem .8rem; background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.16); border-radius: 4px; font-size: .78rem; }
.hero-brand-card { max-width: 375px; padding: 1.75rem; background: rgba(255,255,255,.98); color: var(--ink); border: 0; border-radius: 8px; box-shadow: 0 22px 46px rgba(2,17,31,.25); }
.hero-brand-card img { filter: none; }
.hero-brand-card p { color: #506b85; }
.hero-brand-card a { min-height: 48px; color: #fff; background: var(--navy); border-radius: 4px; }
.hero-card-line { height: 2px; background: var(--gold); }
.service-strip { gap: 0; margin-top: -1.8rem; overflow: hidden; border: 1px solid #dae3e9; border-radius: 8px; box-shadow: var(--shadow); }
.service-pill { grid-template-columns: 1fr; min-height: 82px; gap: 0; padding: 1rem .7rem; color: var(--ink); background: #fff; border: 0; border-right: 1px solid #e3e8ed; border-radius: 0; box-shadow: none; font-size: .77rem; text-align: center; }
.service-pill:last-child { border-right: 0; }
.service-pill:hover { color: #a66d0d; background: #fbfcfd; }
.service-icon { display: none; }
.intro-band { padding: 4.75rem clamp(1rem,4vw,3.5rem); color: var(--ink); background: #fff; border: 1px solid #e2e8ee; border-radius: 8px; box-shadow: var(--shadow); }
.intro-band p { color: #526b82; }
.intro-band .eyebrow, .gallery-heading .eyebrow { color: #ad7312; }
.proof-strip div { color: var(--ink); background: #fff; border: 1px solid #e2e8ee; border-radius: 7px; box-shadow: none; }
.proof-strip strong { color: var(--navy); }
.proof-strip span { color: #61768a; }
.details-grid { gap: 1rem; }
.detail-card { color: var(--ink); background: #fff; border: 1px solid #dfe7ed; border-radius: 7px; box-shadow: 0 9px 22px rgba(16,42,67,.08); }
.detail-card img { display: none; }
.detail-card h3 { margin-top: 1.2rem; font-size: 1.28rem; }
.detail-card p { min-height: 90px; color: #61768a; }
.detail-card a { color: var(--navy); background: transparent; border: 1px solid #c9d7e2; border-radius: 4px; }
.detail-card a:hover { color: #fff; background: var(--navy); border-color: var(--navy); }
.paint-mark { height: 5px; margin-top: 1.35rem; margin-bottom: .85rem; border-radius: 0; }
.process-band { color: var(--ink); background: #fff; border: 1px solid #dfe7ed; border-radius: 8px; box-shadow: var(--shadow); }
.process-band .eyebrow { color: #ad7312; }
.process-list li { background: #f7f9fb; border-color: #e3e9ee; border-radius: 6px; }
.process-list li::before { color: #fff; background: var(--navy); border-radius: 4px; }
.process-list strong { color: var(--navy); }
.process-list span { color: #61768a; }
.gallery-heading { color: var(--ink); border-color: #dbe4eb; }
.gallery-grid figure { min-height: 220px; aspect-ratio: auto; background: linear-gradient(145deg, #12395c, #1e527c); border: 0; border-radius: 7px; box-shadow: var(--shadow); }
.gallery-grid figure:nth-child(2) { background: linear-gradient(145deg, #173a50, #47697e); }
.gallery-grid figure:nth-child(3) { background: linear-gradient(145deg, #485f67, #233e52); }
.gallery-grid figure:nth-child(4) { background: linear-gradient(145deg, #345c6b, #173a50); }
.gallery-grid img { display: none; }
.gallery-grid figcaption { right: 1.15rem; bottom: 1.15rem; left: 1.15rem; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.gallery-grid figcaption strong, .gallery-grid figcaption span { display: block; }
.gallery-grid figcaption strong { margin-bottom: .22rem; font-size: 1.28rem; }
.gallery-grid figcaption span { color: #d5e3ec; font-size: .9rem; font-weight: 500; }
.showcase { color: #fff; background: linear-gradient(135deg, #102a43, #1d5078); }
.showcase img { max-width: 300px; filter: drop-shadow(0 18px 20px rgba(0,0,0,.22)); }
.showcase li { color: #e6eff5; }
.estimate { color: var(--ink); }
.estimate-copy .eyebrow { color: #ad7312; }
.estimate-copy p { color: #61768a; }
.phone-link { color: var(--navy); }
.email-link { color: #4b6980; }
.estimate-form { border: 1px solid #dce5ec; border-radius: 7px; box-shadow: var(--shadow); }
.estimate-form button { color: #fff; background: var(--navy); border-radius: 4px; }
.site-footer { color: #c9d8e4; background: #102a43; border: 0; }
.site-footer a { color: #fff; }
.service-page-layout, .contact-page { color: var(--ink); }
.service-panel, .contact-panel { color: var(--ink); background: #fff; border-color: #dfe7ed; box-shadow: var(--shadow); }
.service-panel p, .contact-panel p { color: #61768a; }
.contact-list a { color: #fff; background: var(--navy); border-radius: 4px; }
.service-nav-list a { color: var(--navy); background: #fff; border-color: #dce6ed; }
.service-nav-list a:hover { background: #edf3f7; }
@media (max-width:980px) { .nav-links { background: #fff; } .nav-links a { color: var(--navy); background: #f4f7f9; border-color: #dce6ed; } .menu-toggle { color: var(--navy); background: #fff; border-color: #cbd9e4; } }
@media (max-width:640px) { .hero { min-height: auto; } .hero-content { min-height: auto; } .hero-brand-card { display: none; } .service-strip { border-radius: 6px; } .service-pill { min-height: 64px; } .mobile-call { color: #fff; background: var(--navy); border: 1px solid #fff; } }
