/* Shared navigation and small-screen repairs; retain the existing visual design. */
.site-nav { background: #1a3a52; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .15rem .75rem; padding: .65rem 1rem; position: sticky; top: 0; z-index: 1000; }
.site-nav a { color: white; display: inline-flex; align-items: center; min-height: 44px; padding: .5rem; font-size: .95rem; }
.site-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: .3em; }
.site-nav .nav-phone, .site-nav a[href="/contact.html"] { color: #FFD700; font-weight: 700; }
a:focus-visible { outline: 3px solid #b07800; outline-offset: 3px; }
.site-nav a:focus-visible { outline-color: #FFD700; }
a[href^="mailto:"] { overflow-wrap: anywhere; }
.contact-method a { color: #1a3a52; display: inline-block; min-height: 44px; }
.contact-guidance { padding: 1.5rem; background: #f4f6f8; border-radius: 8px; }
footer h4, footer p { color: white; }
.section-dark .service-card { color: #2c3e50; }
.section-dark .service-card h3 { color: #1a3a52; }
#home-support { scroll-margin-top: 9rem; }
@media (max-width: 768px) {
 .site-nav { position: static; gap: 0 .25rem; padding: .5rem; }
 .site-nav a { font-size: .9rem; }
 .service-cards, .value-grid, .why-grid, .contact-grid { grid-template-columns: minmax(0, 1fr); }
 .service-card, .value-card, .contact-card, .contact-method, .profile-card, .portfolio-card .content { min-width: 0; padding: 1.25rem; }
 .contact-container { padding: 1rem; }
 .social-links { flex-wrap: wrap; }
 footer > div { grid-template-columns: minmax(0, 1fr) !important; }
 #home-support { scroll-margin-top: 1rem; }
}

/* Focused customer paths and compact introductions. */
.business-name { font-weight: 750; color: #ffe46b; letter-spacing: .02em; }
.audience-section { padding: 2rem 0; }
.audience-section h2 { text-align: center; }
.audience-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.audience-grid .service-card { padding: 1.5rem; text-align: left; }
.audience-grid a, .early-result a, .owner-intro a { font-weight: 650; text-decoration: underline; text-underline-offset: .2em; }
.secondary-path { margin: 1rem 0 0; font-size: .95rem; }
.early-result { background: #f4f6f8; border-left: 4px solid #d4af37; padding: 1.25rem; margin-top: 1.5rem; }
.early-result p { margin-bottom: .5rem; }
.owner-intro { display: flex; align-items: center; gap: 1.5rem; margin-top: 2rem; }
.owner-intro img { object-fit: cover; border-radius: 50%; flex: 0 0 112px; }
.owner-intro h2 { text-align: left; border: 0; margin-bottom: .5rem; padding: 0; }
.problems summary { cursor: pointer; font-size: 1.35rem; font-weight: 700; min-height: 44px; }
.problems:not([open]) { padding: 1rem 2rem; }
#business-it, #home-support { scroll-margin-top: 9rem; }
.growth-update .hero .btn { margin-top: .75rem; }
.contact-container { margin-top: 1.5rem; }
@media (max-width: 768px) {
 .growth-update .hero { padding: 2rem 1.25rem; min-height: 0 !important; }
 .growth-update .hero h1 { font-size: 2rem; }
 .growth-update .hero picture { display: none !important; }
 .growth-update .hero p, .growth-update .hero .tagline { font-size: 1.1rem !important; }
 .growth-update .hero .business-name { margin-bottom: .75rem; }
 .audience-grid { grid-template-columns: minmax(0, 1fr); gap: .75rem; }
 .audience-section .container-wide { padding: 0 1rem; }
 .audience-section h2 { font-size: 1.5rem; margin-bottom: 1rem; }
 .audience-grid .service-card { padding: 1rem; }
 .audience-grid .service-card p { margin-bottom: .5rem; }
 .owner-intro { align-items: flex-start; gap: 1rem; }
 .owner-intro img { width: 72px; height: 72px; flex-basis: 72px; }
 .owner-intro p { font-size: 1rem; }
 .trust-strip { padding: 1rem; }
 .trust-items { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
 .trust-item-icon { font-size: 1.4rem; }
 .why-section, .process { padding: 2rem 1rem; }
 .why-grid, .process-steps { gap: .75rem; }
 .why-card, .process-step { padding: 1rem; }
 .why-card-icon { font-size: 1.5rem; }
 .contact-container { margin: 0 auto; padding: 1rem; }
 .contact-grid { margin: 1rem 0; gap: 1rem; }
 .contact-method { padding: 1rem; }
 #business-it, #home-support { scroll-margin-top: 1rem; }
}
