.logo { display: flex; align-items: center; justify-content: center; } .logo img, .footer-logo { display: block; } .logo img { height: 30px; width: auto; } .nav-links a, .mobile-menu a { font-weight: 500; } .section-heading, .promise-text h2, .info-block h2, #instagram h2 { font-family: var(--font-head); font-weight: 700; line-height: 1.08; letter-spacing: -0.02em; text-wrap: balance; } .section-heading { font-size: 42px; color: #000; margin-bottom: 20px; } .hero-text h1 { font-family: var(--font-head); font-size: clamp(34px, 4vw, 56px); font-weight: 800; line-height: 1.05; letter-spacing: -0.04em; margin-bottom: 28px; color: #fff; } /* * Shared eyebrow utility for the small uppercase label that introduces a * heading. Use this instead of bespoke per-section kickers. */ .eyebrow { font-family: var(--font-head); font-size: 13px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gw-green); margin: 0 0 14px; } .hero-text h1 .hero-heading-mobile { display: none; } .hero-title-main, .hero-title-connector, .hero-title-highlight { color: #fff; } .promise-text h2 { font-size: 42px; margin-bottom: 20px; } .promise-text p, .info-block p, .faq details p, .testimonial-card blockquote { font-size: 15px; line-height: 1.7; } .service-card h3, .value-card h3 { font-family: var(--font-head); font-weight: 700; } .service-card h3 { font-size: 20px; margin-bottom: 12px; } .value-card h3 { font-size: 18px; margin-bottom: 10px; } .info-block h2 { font-size: 30px; margin-bottom: 16px; } .info-block h3 { font-size: 16px; font-weight: 700; margin: 20px 0 8px; } #instagram h2 { font-size: 36px; margin-bottom: 20px; } footer h4 { font-family: var(--font-head); font-size: 14px; font-weight: 700; margin-bottom: 16px; letter-spacing: 0.5px; opacity: 0.6; text-transform: uppercase; }