/*
Theme Name: Auto Glass USA
Theme URI: https://autoglassusa.com
Author: Digital Pixel Web
Description: Clean-room block theme for Auto Glass USA (Denver, CO). Built from scratch; no code reused from the previous site.
Version: 0.1.0
Requires at least: 6.5
Requires PHP: 8.1
License: Proprietary
Text Domain: autoglassusa
*/

/* Small extras that theme.json can't express */
.agu-topbar a { text-decoration: none; }
.agu-topbar a:hover { text-decoration: underline; }
.agu-header .wp-block-navigation a { text-decoration: none; }

.agu-hero { background-image: linear-gradient(rgba(16,17,100,.58), rgba(16,17,100,.58)), url(assets/images/hero-home.jpg), linear-gradient(135deg, #1d2a6b, #0a1442); background-size: cover; background-position: center; }
.agu-card { height: 100%; }
.wp-block-button__link { transition: filter .15s; }
.wp-block-button__link:hover { filter: brightness(1.12); }
@media (max-width: 781px) {
	.agu-topbar .wp-block-group { flex-direction: column; gap: .25rem; text-align: center; }
}

/* Gutters for full-width bands (saved block markup has no side padding) */
.agu-topbar, .agu-header, .agu-hero,
.wp-block-group.alignfull { padding-left: 1.5rem; padding-right: 1.5rem; }
.agu-header .wp-block-navigation-item__content,
.agu-header .wp-block-navigation a { color: var(--wp--preset--color--white); }
.agu-hero h1, .agu-hero p { color: var(--wp--preset--color--white); }

/* No gap between header / main / footer bands */
.wp-site-blocks > * + * { margin-block-start: 0; }

/* Page content bands sit flush; cards equal height with modest headings */
.wp-block-post-content > * { margin-block-start: 0; }
.wp-block-post-content .wp-block-columns { align-items: stretch; }
.agu-card h3 { font-size: 1.5rem !important; font-weight: 600; line-height: 1.25; margin: 0 0 .6rem; overflow-wrap: normal; hyphens: manual; }
.agu-card p { font-size: 1rem; line-height: 1.6; }
.agu-section-title { margin-bottom: 1.25rem; }
.agu-eyebrow { color: var(--wp--preset--color--accent); text-transform: uppercase; letter-spacing: .1em; font-weight: 600; margin-bottom: .25rem; }
.agu-card { box-shadow: 0 1px 3px rgba(2, 37, 106, .12); }

.agu-hero h1 { font-size: var(--wp--preset--font-size--xx-large) !important; }
.agu-logo { margin: 0; }
.agu-logo img { height: auto; display: block; }

/* Fluent Forms: match the brand */
.fluentform .ff-el-form-control { border: 1px solid #c9cfdd; border-radius: 4px; padding: .7rem .85rem; font-family: inherit; }
.fluentform .ff-el-form-control:focus { border-color: var(--wp--preset--color--navy); box-shadow: 0 0 0 2px rgba(2,37,106,.15); }
.fluentform .ff-el-input--label label { color: var(--wp--preset--color--ink); font-weight: 500; }
.fluentform .ff-btn-submit { background: var(--wp--preset--color--accent) !important; color: #fff !important; border-radius: 4px; padding: .75rem 2rem; font-weight: 500; font-family: inherit; }
.fluentform .ff-btn-submit:hover { filter: brightness(1.12); }

/* ---- Header navigation: obvious current page, accessible tap targets ---- */
.agu-header .wp-block-navigation-item__content { padding: .5rem .25rem; border-bottom: 3px solid transparent; font-weight: 500; }
.agu-header .wp-block-navigation a:hover { border-bottom-color: rgba(255,255,255,.55); }
.agu-header .wp-block-navigation .is-current > .wp-block-navigation-item__content,
.agu-header .wp-block-navigation a[aria-current="page"] { font-weight: 700; border-bottom-color: #e03232; }   /* red bar; text stays white for contrast on navy */
.agu-header .wp-block-navigation a:focus-visible,
.agu-header .wp-block-navigation__responsive-container-open:focus-visible,
.agu-header .wp-block-navigation__responsive-container-close:focus-visible { outline: 3px solid #fff; outline-offset: 2px; border-radius: 2px; }

/* Hamburger and close button: identical 44x44 targets with the same 28px icon */
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { width: 44px; height: 44px; padding: 0; display: flex; align-items: center; justify-content: center; }
.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg { width: 28px; height: 28px; }

/* Mobile overlay: left aligned list, generous spacing, 48px rows */
.wp-block-navigation__responsive-container.is-menu-open { padding: 1rem 1.5rem 2rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { position: absolute; top: 1rem; right: 1.5rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding: 4.5rem 1.5rem 0; align-items: flex-start; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { width: 100%; align-items: flex-start; gap: 0; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid rgba(255,255,255,.18); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: flex; align-items: center; width: 100%; box-sizing: border-box; min-height: 56px; padding: .75rem .25rem; font-size: 1.125rem; border-bottom: 0;
}
.wp-block-navigation__responsive-container.is-menu-open .is-current > .wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open a[aria-current="page"] { box-shadow: inset 4px 0 0 #e03232; padding-left: 1rem; font-weight: 700; }

/* Staggered photo pair beside the intro text (Services) */
.agu-photo-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; align-items: start; }
.agu-photo-pair .wp-block-image { margin: 0; }
.agu-photo-pair .wp-block-image img { width: 100%; height: auto; border-radius: 4px; display: block; }
.agu-photo-pair .wp-block-image:nth-child(2) { margin-top: -2.5rem; }
.wp-block-column .wp-block-image img { border-radius: 4px; }
@media (max-width: 781px) { .agu-photo-pair .wp-block-image:nth-child(2) { margin-top: 0; } }

/* Footer: same side gutters as the page bands, readable links on navy */
.wp-site-blocks > footer > .wp-block-group { padding-left: 1.5rem; padding-right: 1.5rem; }
.wp-site-blocks > footer a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.wp-site-blocks > footer a:hover { text-decoration-thickness: 2px; }

/* ---- Social icons: ONE standard for every social-links block on the site ----
   logos only, 28px glyph, 44px+ tap target, left aligned, no underline.
   Colour follows the section: navy on light backgrounds, white on navy/dark ones. Any service (Facebook, Instagram, YouTube...) inherits this. */
.wp-block-social-links { padding: 0; margin: 0; gap: 0 .25rem; justify-content: flex-start; }
.wp-block-social-links .wp-social-link { background: none !important; margin: 0; }
.wp-block-social-links .wp-social-link a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: .5rem; text-decoration: none; color: var(--wp--preset--color--navy) !important; }
.wp-block-social-links .wp-social-link svg { width: 28px !important; height: 28px !important; fill: currentColor !important; }
.wp-block-social-links .wp-social-link a:hover, .wp-block-social-links .wp-social-link a:focus-visible { opacity: .75; }
.wp-block-social-links .wp-social-link:first-child a { padding-left: 0; justify-content: flex-start; }   /* first icon lines up with the text edge */
.has-navy-background-color .wp-block-social-links .wp-social-link a,
.agu-hero .wp-block-social-links .wp-social-link a,
.wp-site-blocks > footer .wp-block-social-links .wp-social-link a { color: #fff !important; }


/* Header call link + Get Quote button (client request 2026-10-17) */
.agu-header-cta { gap: 1.25rem; }
.agu-header-cta p { margin: 0; }
.agu-header-phone a { color: var(--wp--preset--color--white); font-weight: 600; text-decoration: none; white-space: nowrap; }
.agu-header-phone a:hover { text-decoration: underline; }
.agu-header-quote .wp-block-button__link { padding: .6rem 1.4rem; white-space: nowrap; }
@media (max-width: 781px) { .agu-header-cta { width: 100%; justify-content: space-between; } }
/* Very large, centred hero CTA */
.agu-btn-xl .wp-block-button__link { font-size: 1.75rem; padding: 1.1rem 3rem; font-weight: 700; }
@media (max-width: 600px) { .agu-btn-xl .wp-block-button__link { font-size: 1.35rem; padding: 1rem 2rem; } }
/* Embedded vendor widgets */
.agu-embed-quote iframe { display: block; width: 100%; min-height: 900px; border: 0; }
.agu-embed-reviews h2 { text-align: center; }
@media (min-width: 782px) {
	.agu-header .wp-block-navigation .wp-block-navigation__container { gap: .9rem; }
	.agu-header .wp-block-navigation { font-size: .95rem; }
	.agu-header-cta { gap: 1rem; }
	.agu-header-quote .wp-block-button__link { padding: .55rem 1.1rem; }
}
/* Keep the header on one row: below ~1240px drop the extra header phone (both numbers stay in the top bar) and compact the menu */
@media (min-width: 782px) and (max-width: 1240px) {
	.agu-header-phone { display: none; }
	.agu-header .wp-block-navigation .wp-block-navigation__container { gap: .7rem; }
}
@media (min-width: 782px) and (max-width: 960px) {
	.agu-header .wp-block-navigation { font-size: .85rem; }
	.agu-logo, .agu-logo img { max-width: 150px; }
}
/* Tablet widths: the header button replaces the (duplicate) Get Quote menu link so everything stays on one row */
@media (min-width: 782px) and (max-width: 1000px) {
	.agu-header .wp-block-navigation-item:has(> a[href="/quote/"]) { display: none; }
}
/* Card headings that follow a card image need breathing room (was 0px) */
.agu-card .wp-block-image + .wp-block-heading { margin-top: 1.25rem; }
/* Equal-height cards in a row (height:100% above stopped the flex row from stretching the shorter card) */
.wp-block-columns > .agu-card { height: auto; align-self: stretch; }
