/**
 * GandM design tokens
 *
 * All brand colors, fonts, spacing, and sizes live here as custom properties.
 * Other stylesheets must reference var(--token-name) only — no hardcoded values.
 */

:root {
	/* -------------------------------------------------------------------------
	   Brand colors (instructions.md)
	   ------------------------------------------------------------------------- */
	--color-primary: #1b3a6b;
	--color-secondary: #e63329;
	--color-background: #f5f5f5;
	--color-text: #222222;
	--color-white: #ffffff;
	--color-border-light: #eeeeee;
	--color-text-muted: #666666;
	--color-text-subtle: #999999;
	--color-gold: #ffb800;

	/* Semantic color aliases */
	--color-surface: var(--color-white);
	--color-surface-alt: var(--color-background);
	--color-on-primary: var(--color-white);
	--color-on-secondary: var(--color-white);
	--color-link: var(--color-primary);
	--color-link-hover: var(--color-secondary);
	--color-header-background: var(--color-primary);
	--color-footer-background: var(--color-primary);

	/* Opacity helpers */
	--opacity-subtext: 0.9;
	--opacity-cities: 0.85;
	--opacity-footer-bar: 0.7;
	--opacity-on-dark-divider: 0.2;
	--opacity-coupon: 0.9;

	/* -------------------------------------------------------------------------
	   Theme Customizer (overridden via wp_head inline :root rules)
	   ------------------------------------------------------------------------- */
	--site-logo-url: none;
	--footer-text: "";

	/* -------------------------------------------------------------------------
	   Typography
	   ------------------------------------------------------------------------- */
	--font-family-heading: "Montserrat", sans-serif;
	--font-family-body: "Open Sans", sans-serif;
	--font-weight-heading: 700;
	--font-weight-body: 400;
	--font-weight-black: 900;

	--font-size-base: 1rem;
	--font-size-sm: 0.875rem;
	--font-size-lg: 1.125rem;
	--font-size-xl: 1.25rem;
	--font-size-2xl: 1.5rem;
	--font-size-3xl: 2rem;
	--font-size-4xl: 2.5rem;
	--font-size-5xl: 3rem;
	--font-size-header-top: 0.8125rem;
	--font-size-header-phone: 1.375rem;
	--font-size-section-title: 2.25rem;
	--font-size-final-cta-title: 2.5rem;
	--font-size-hero-heading-desktop: 3.25rem;
	--font-size-hero-heading-tablet: 2.25rem;
	--font-size-hero-heading-mobile: 1.75rem;
	--font-size-hero-subheading: 1.25rem;
	--font-size-hero-cta: 1.125rem;
	--font-size-hero-checkmarks: 0.9375rem;
	--font-size-trust-bar: 0.875rem;
	--font-size-trust-card-heading: 1.125rem;
	--font-size-trust-card-description: 0.875rem;
	--font-size-trust-card-icon: 2.25rem;
	--font-size-review-star: 1.25rem;
	--font-size-review-text: 0.9375rem;
	--font-size-review-author: 0.9375rem;
	--font-size-review-location: 0.8125rem;
	--font-size-reviews-subheading: 1.125rem;
	--font-size-county-name: 1.375rem;
	--font-size-final-cta-subheading: 1.125rem;
	--font-size-final-cta-trust: 0.875rem;
	--font-size-footer-bar: 0.8125rem;
	--font-size-offer-coupon: 7.5rem;
	--font-size-offer-coupon-mobile: 4.5rem;
	--font-size-meta: 0.875rem;

	--line-height-tight: 1.2;
	--line-height-base: 1.6;
	--line-height-relaxed: 1.75;
	--line-height-trust-description: 1.7;
	--line-height-review: 1.7;
	--line-height-cities: 2;

	--font-heading: var(--font-family-heading);
	--font-body: var(--font-family-body);
	--line-height-heading: var(--line-height-tight);
	--letter-spacing-trust-bar: 0.05em;

	/* -------------------------------------------------------------------------
	   Spacing scale
	   ------------------------------------------------------------------------- */
	--spacing-0: 0;
	--spacing-1: 0.25rem;
	--spacing-2: 0.5rem;
	--spacing-3: 0.75rem;
	--spacing-4: 1rem;
	--spacing-5: 1.5rem;
	--spacing-6: 2rem;
	--spacing-8: 3rem;
	--spacing-10: 5rem;

	/* -------------------------------------------------------------------------
	   Layout
	   ------------------------------------------------------------------------- */
	--container-max-width: 75rem;
	--container-padding-inline: var(--spacing-4);
	--padding-section-y: 5rem;
	--padding-section-x: 2.5rem;
	--padding-section-mobile-y: 2.5rem;
	--padding-section-mobile-x: 1.25rem;
	--margin-section-title-bottom: 3rem;
	--grid-gap-columns: 1.875rem;
	--section-padding-y: var(--padding-section-y);
	--section-padding-y-tablet: var(--padding-section-mobile-y);
	--section-padding-y-mobile: var(--padding-section-mobile-y);

	/* -------------------------------------------------------------------------
	   Borders, radii & shadows
	   ------------------------------------------------------------------------- */
	--border-width-none: 0;
	--border-style-none: none;
	--border-width-thin: 1px;
	--border-width-medium: 2px;
	--border-width-review-accent: 4px;
	--border-width-trust-card-top: 3px;
	--border-radius: 0.375rem;
	--border-radius-button: 0.25rem;
	--border-radius-card: 0.5rem;
	--border-radius-none: 0;
	--border-radius-hero-badge: 999rem;

	--shadow-header-main: 0 2px 8px rgb(0 0 0 / 0.1);
	--shadow-card: 0 2px 16px rgb(0 0 0 / 0.08);
	--shadow-card-hover: 0 8px 24px rgb(0 0 0 / 0.1);
	--shadow-hero-cta: 0 2px 8px rgb(0 0 0 / 0.15);
	--transition-duration: 0.2s;
	--transition-easing: ease;

	/* -------------------------------------------------------------------------
	   Buttons
	   ------------------------------------------------------------------------- */
	--button-padding-block: var(--spacing-3);
	--button-padding-inline: var(--spacing-5);
	--color-button-primary-background: var(--color-secondary);
	--color-button-primary-text: var(--color-white);
	--color-button-primary-background-hover: color-mix(in srgb, var(--color-secondary) 90%, var(--color-text));
	--color-button-outline-border: var(--color-primary);
	--color-button-outline-text: var(--color-primary);
	--color-button-outline-background-hover: color-mix(in srgb, var(--color-primary) 8%, transparent);
	--color-button-on-dark-border: var(--color-white);
	--color-button-on-dark-text: var(--color-white);
	--color-button-on-dark-background-hover: color-mix(in srgb, var(--color-white) 15%, transparent);
	--color-offer-button-background: var(--color-white);
	--color-offer-button-text: var(--color-secondary);
	--padding-offer-button-block: var(--spacing-4);
	--padding-offer-button-inline: 2.5rem;
	--padding-header-book-block: 0.625rem;
	--padding-header-book-inline: 1.5rem;

	/* -------------------------------------------------------------------------
	   Header & navigation
	   ------------------------------------------------------------------------- */
	--z-index-sticky-header: 999;
	--color-header-top-background: var(--color-primary);
	--color-header-top-text: var(--color-white);
	--size-header-top-height: 2.5rem;
	--padding-header-top-inline: 1.25rem;
	--gap-header-top: var(--spacing-4);
	--color-header-main-background: var(--color-white);
	--size-header-main-height: 5rem;
	--padding-header-main-inline: 2.5rem;
	--gap-header-main: var(--spacing-4);
	--gap-header-main-actions: var(--spacing-4);
	--header-nav-gap: var(--spacing-6);
	--size-logo-max-height: 3.5rem;
	--color-header-phone: var(--color-secondary);
	--color-header-mobile-call-background: var(--color-secondary);
	--color-header-mobile-call-text: var(--color-white);
	--padding-header-mobile-call-block: var(--spacing-4);
	--font-size-header-mobile-call: var(--font-size-lg);
	--size-menu-toggle: 2.75rem;
	--size-menu-toggle-bar-height: 3px;
	--size-menu-toggle-bar-gap: 5px;
	--color-menu-toggle: var(--color-primary);
	--color-mobile-nav-background: var(--color-primary);
	--padding-mobile-nav-block: var(--spacing-4);
	--gap-mobile-nav-book: var(--spacing-4);
	--color-header-border: color-mix(in srgb, var(--color-white) 20%, transparent);

	/* -------------------------------------------------------------------------
	   Hero
	   ------------------------------------------------------------------------- */
	--size-hero-viewport-height: 100vh;
	--color-hero-overlay: rgb(0 0 0 / 0.55);
	--padding-hero-content-y: 7.5rem;
	--padding-hero-content-x: 1.25rem;
	--size-hero-heading-max: 50rem;
	--size-hero-subheading-max: 37.5rem;
	--margin-hero-heading-bottom: var(--spacing-4);
	--margin-hero-subheading-top: 1.25rem;
	--margin-hero-subheading-bottom: var(--spacing-0);
	--margin-hero-cta-top: 2rem;
	--margin-hero-trust-top: 1.5rem;
	--gap-hero-trust: 2rem;
	--gap-hero-trust-item: var(--spacing-2);
	--padding-hero-cta-block: 1.125rem;
	--padding-hero-cta-inline: 3rem;
	--padding-hero-badge-block: var(--spacing-2);
	--padding-hero-badge-inline: var(--spacing-4);
	--spacing-hero-badge-bottom: var(--spacing-4);
	--font-size-hero-badge: var(--font-size-sm);

	/* -------------------------------------------------------------------------
	   Trust bar
	   ------------------------------------------------------------------------- */
	--color-trust-bar-background: var(--color-primary);
	--color-trust-bar-text: var(--color-white);
	--padding-trust-bar-y: var(--spacing-4);
	--padding-trust-bar-x: 2.5rem;
	--gap-trust-bar-item: var(--spacing-2);
	--font-size-trust-bar-icon: 1.25rem;

	/* -------------------------------------------------------------------------
	   Homepage sections
	   ------------------------------------------------------------------------- */
	--color-service-card-border: var(--color-border-light);
	--color-service-card-icon: var(--color-primary);
	--padding-service-card-y: 2rem;
	--padding-service-card-x: 1.5rem;
	--color-offer-background: var(--color-secondary);
	--color-offer-text: var(--color-white);
	--padding-offer-y: 3.75rem;
	--padding-offer-x: 2.5rem;
	--offer-banner-gap: 2.5rem;
	--spacing-offer-list-margin: 1.5rem;
	--spacing-offer-item-padding: var(--spacing-2);
	--color-offer-list-divider: rgb(255 255 255 / var(--opacity-on-dark-divider));
	--color-trust-card-background: var(--color-white);
	--color-trust-card-border-top: var(--color-secondary);
	--color-trust-card-icon: var(--color-primary);
	--padding-trust-card-y: 2rem;
	--padding-trust-card-x: 1.5rem;
	--spacing-trust-card-icon-bottom: var(--spacing-4);
	--spacing-trust-card-heading-bottom: 0.75rem;
	--color-review-card-background: var(--color-white);
	--color-review-star-filled: var(--color-gold);
	--color-review-star-empty: color-mix(in srgb, var(--color-text) 20%, transparent);
	--color-review-card-accent: var(--color-gold);
	--color-review-location-muted: var(--color-text-subtle);
	--spacing-reviews-summary-bottom: var(--margin-section-title-bottom);
	--color-service-areas-section-background: var(--color-primary);
	--color-service-areas-section-text: var(--color-white);
	--color-service-area-card-border: rgb(255 255 255 / var(--opacity-on-dark-divider));
	--color-service-area-card-background: transparent;
	--padding-service-area-card: 2rem;
	--spacing-service-area-cities-bottom: var(--spacing-0);
	--color-final-cta-background: var(--color-secondary);
	--color-final-cta-text: var(--color-white);
	--margin-final-cta-heading-bottom: var(--spacing-4);
	--margin-final-cta-subheading-bottom: 2.5rem;
	--gap-final-cta-actions: 1.25rem;
	--margin-final-cta-trust-top: 2.5rem;
	--gap-final-cta-trust: 2.5rem;
	--color-final-cta-primary-bg: var(--color-white);
	--color-final-cta-primary-text: var(--color-secondary);

	/* -------------------------------------------------------------------------
	   Footer
	   ------------------------------------------------------------------------- */
	--padding-footer-y: 3.75rem;
	--padding-footer-x: 2.5rem;
	--padding-footer-bottom: 1.25rem;
	--footer-column-gap: var(--grid-gap-columns);
	--margin-footer-bar-top: 2.5rem;
	--padding-footer-bar-top: 1.25rem;
	--color-footer-bar-border: rgb(255 255 255 / var(--opacity-on-dark-divider));

	/* -------------------------------------------------------------------------
	   Pages, blog & archives
	   ------------------------------------------------------------------------- */
	--color-page-banner-background: var(--color-primary);
	--font-size-page-banner: var(--font-size-3xl);
	--grid-gap-posts: var(--grid-gap-columns);
	--size-post-card-image-height: 12rem;
	--sidebar-padding: var(--spacing-4);

	/* -------------------------------------------------------------------------
	   Sizing
	   ------------------------------------------------------------------------- */
	--size-percent-full: 100%;
	--size-height-auto: auto;
	--size-width-full: 100%;
	--size-prose-max-width: 70ch;

	/* Breakpoint labels (use px in @media queries only) */
	--breakpoint-tablet: 48rem;
	--breakpoint-mobile: 30rem;
	--breakpoint-desktop: 75rem;
}

@media (max-width: 768px) {
	:root {
		--section-padding-y: var(--section-padding-y-tablet);
	}
}

@media (max-width: 480px) {
	:root {
		--section-padding-y: var(--section-padding-y-mobile);
	}
}
*,*::before,*::after{box-sizing:border-box}body{margin:var(--spacing-0);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-body);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-background)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);color:var(--color-primary)}a{color:var(--color-link);text-decoration:none;transition:color var(--transition-duration)var(--transition-easing)}a:hover,a:focus{color:var(--color-link-hover)}img{max-width:var(--size-width-full);height:var(--size-height-auto)}.gandm-container{width:var(--size-width-full);max-width:var(--container-max-width);margin-inline:auto;padding-inline:var(--container-padding-inline)}.gandm-site-main{padding-block:var(--section-padding-y)}.gandm-site-main:has(.gandm-home){padding-block:var(--spacing-0)}.gandm-section--alt{background-color:var(--color-background)}.gandm-section--white{background-color:var(--color-white)}.screen-reader-text{position:absolute;width:var(--border-width-thin);height:var(--border-width-thin);padding:var(--spacing-0);margin:calc(var(--border-width-thin) * -1);overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:var(--spacing-0)}.entry-content{max-width:var(--size-prose-max-width)}.entry-content>*:first-child{margin-block-start:var(--spacing-0)}.gandm-button,.button,button[type=submit],input[type=submit]{display:inline-block;padding-block:var(--button-padding-block);padding-inline:var(--button-padding-inline);font-family:var(--font-heading);font-weight:var(--font-weight-heading);font-size:var(--font-size-base);line-height:var(--line-height-tight);text-align:center;text-decoration:none;border-width:var(--border-width-thin);border-style:solid;border-radius:var(--border-radius-button);cursor:pointer;transition:background-color var(--transition-duration)var(--transition-easing),color var(--transition-duration)var(--transition-easing),border-color var(--transition-duration)var(--transition-easing)}.gandm-button,.gandm-button--primary,.button,button[type=submit],input[type=submit]{color:var(--color-button-primary-text);background-color:var(--color-button-primary-background);border-color:var(--color-button-primary-background)}.gandm-button:hover,.gandm-button:focus,.gandm-button--primary:hover,.gandm-button--primary:focus,.button:hover,.button:focus,button[type=submit]:hover,button[type=submit]:focus,input[type=submit]:hover,input[type=submit]:focus{color:var(--color-button-primary-text);background-color:var(--color-button-primary-background-hover);border-color:var(--color-button-primary-background-hover)}.gandm-button--outline,.gandm-button--secondary{color:var(--color-button-outline-text);background-color:initial;border-color:var(--color-button-outline-border)}.gandm-button--outline:hover,.gandm-button--outline:focus,.gandm-button--secondary:hover,.gandm-button--secondary:focus{color:var(--color-button-outline-text);background-color:var(--color-button-outline-background-hover);border-color:var(--color-button-outline-border)}.gandm-button--on-dark{color:var(--color-button-on-dark-text);background-color:initial;border-color:var(--color-button-on-dark-border)}.gandm-button--on-dark:hover,.gandm-button--on-dark:focus{color:var(--color-button-on-dark-text);background-color:var(--color-button-on-dark-background-hover);border-color:var(--color-button-on-dark-border)}.gandm-site-header{width:var(--size-width-full)}.gandm-site-header--sticky{position:sticky;top:var(--spacing-0);z-index:var(--z-index-sticky-header)}.gandm-header-top{background-color:var(--color-header-top-background);color:var(--color-header-top-text)}.gandm-header-top .gandm-container{max-width:var(--size-width-full);padding-inline:var(--padding-header-top-inline)}.gandm-header-top__inner{display:flex;align-items:center;justify-content:space-between;min-height:var(--size-header-top-height);height:var(--size-header-top-height);margin:var(--spacing-0);font-size:var(--font-size-header-top);line-height:var(--line-height-tight)}.gandm-header-top__address,.gandm-header-top__trust{margin:var(--spacing-0)}.gandm-header-top__address{font-style:normal}.gandm-header-top__trust{font-weight:var(--font-weight-heading)}.gandm-header-main{background-color:var(--color-header-main-background);box-shadow:var(--shadow-header-main)}.gandm-header-main .gandm-container{max-width:var(--size-width-full);padding-inline:var(--padding-header-main-inline)}.gandm-header-main__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-header-main);min-height:var(--size-header-main-height);height:var(--size-header-main-height)}.gandm-header-main__brand{flex-shrink:0}.gandm-header-main__brand .custom-logo-link{display:block;line-height:var(--line-height-tight)}.gandm-header-main__brand img{max-height:var(--size-logo-max-height);width:auto}.gandm-site-title{margin:var(--spacing-0);font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-heading);line-height:var(--line-height-tight)}.gandm-site-title a{color:var(--color-primary)}.gandm-header-main__nav{display:none;flex:1;justify-content:center}.gandm-menu{list-style:none;margin:var(--spacing-0);padding:var(--spacing-0)}.gandm-menu--primary{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--header-nav-gap)}.gandm-header-main .gandm-menu--primary a{font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-heading);color:var(--color-primary)}.gandm-header-main .gandm-menu--primary a:hover,.gandm-header-main .gandm-menu--primary a:focus{color:var(--color-secondary)}.gandm-header-main__actions{display:none;align-items:center;gap:var(--gap-header-main-actions);flex-shrink:0}.gandm-header-main__phone{font-family:var(--font-heading);font-size:var(--font-size-header-phone);font-weight:var(--font-weight-heading);line-height:var(--line-height-tight);color:var(--color-header-phone);white-space:nowrap}.gandm-header-main__phone:hover,.gandm-header-main__phone:focus{color:var(--color-primary)}.gandm-header-main__book{padding-block:var(--padding-header-book-block);padding-inline:var(--padding-header-book-inline);white-space:nowrap}.gandm-menu-toggle{display:flex;align-items:center;justify-content:center;width:var(--size-menu-toggle);height:var(--size-menu-toggle);padding:var(--spacing-0);background-color:initial;border:var(--border-style-none);border-radius:var(--border-radius-button);cursor:pointer;color:var(--color-menu-toggle)}.gandm-menu-toggle__icon{display:flex;flex-direction:column;justify-content:center;gap:var(--size-menu-toggle-bar-gap);width:var(--spacing-6)}.gandm-menu-toggle__bar{display:block;width:var(--size-width-full);height:var(--size-menu-toggle-bar-height);background-color:currentColor;border-radius:var(--border-radius-button)}.gandm-menu-toggle[aria-expanded=true]{color:var(--color-white);background-color:var(--color-secondary)}.gandm-header-mobile-call{display:block;background-color:var(--color-header-mobile-call-background)}.gandm-header-mobile-call__link{display:block;padding-block:var(--padding-header-mobile-call-block);font-family:var(--font-heading);font-size:var(--font-size-header-mobile-call);font-weight:var(--font-weight-heading);line-height:var(--line-height-tight);color:var(--color-header-mobile-call-text);text-align:center}.gandm-header-mobile-call__link:hover,.gandm-header-mobile-call__link:focus{color:var(--color-header-mobile-call-text);background-color:var(--color-button-primary-background-hover)}.gandm-mobile-nav{background-color:var(--color-mobile-nav-background);border-block-end:var(--border-width-thin)solid var(--color-header-border)}.gandm-mobile-nav[hidden]{display:none}.gandm-mobile-nav .gandm-container{padding-block:var(--padding-mobile-nav-block)}.gandm-menu--mobile li+li{margin-block-start:var(--spacing-3)}.gandm-menu--mobile a{display:block;padding-block:var(--spacing-2);padding-inline:var(--spacing-4);font-size:var(--font-size-lg);color:var(--color-on-primary);border-radius:var(--border-radius-button)}.gandm-menu--mobile a:hover,.gandm-menu--mobile a:focus{background-color:color-mix(in srgb,var(--color-white) 10%,transparent);color:var(--color-secondary)}.gandm-mobile-nav__book{display:block;width:var(--size-width-full);margin-block-start:var(--gap-mobile-nav-book);text-align:center}body.gandm-nav-is-open{overflow:hidden}.gandm-home .gandm-section-heading,.gandm-home .gandm-home-trust__heading,.gandm-home .gandm-home-reviews__heading,.gandm-home .gandm-home-service-areas__heading{margin-block:var(--spacing-0)var(--margin-section-title-bottom);font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);text-align:center;text-wrap:balance}.gandm-hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:var(--size-hero-viewport-height);background-color:var(--color-primary);background-image:var(--hero-background-image,none);background-size:cover;background-position:50%;background-repeat:no-repeat}.gandm-hero__overlay{position:absolute;inset:var(--spacing-0);background-color:var(--color-hero-overlay)}.gandm-hero__content{position:relative;z-index:1;width:var(--size-width-full);padding-block:var(--padding-hero-content-y);padding-inline:var(--padding-hero-content-x);text-align:center;color:var(--color-white)}.gandm-hero__inner{display:flex;flex-direction:column;align-items:center;margin-inline:auto}.gandm-hero__badge{display:inline-block;margin-block:var(--spacing-0)var(--spacing-hero-badge-bottom);padding-block:var(--padding-hero-badge-block);padding-inline:var(--padding-hero-badge-inline);font-family:var(--font-heading);font-size:var(--font-size-hero-badge);font-weight:var(--font-weight-heading);color:var(--color-white);background-color:var(--color-secondary);border-radius:var(--border-radius-hero-badge)}.gandm-hero__heading{margin-block:var(--spacing-0)var(--margin-hero-heading-bottom);max-width:var(--size-hero-heading-max);font-size:var(--font-size-hero-heading-desktop);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);color:var(--color-white);text-wrap:balance}.gandm-hero__subheading{margin-block:var(--margin-hero-subheading-top)var(--margin-hero-subheading-bottom);max-width:var(--size-hero-subheading-max);font-size:var(--font-size-hero-subheading);line-height:var(--line-height-base);color:var(--color-white);opacity:var(--opacity-subtext)}.gandm-hero__button{margin-block-start:var(--margin-hero-cta-top);padding-block:var(--padding-hero-cta-block);padding-inline:var(--padding-hero-cta-inline);font-size:var(--font-size-hero-cta);color:var(--color-white);background-color:var(--color-secondary);border-color:var(--color-secondary);border-radius:var(--border-radius-button);box-shadow:var(--shadow-hero-cta)}.gandm-hero__button:hover,.gandm-hero__button:focus{color:var(--color-white);background-color:var(--color-button-primary-background-hover);border-color:var(--color-button-primary-background-hover)}.gandm-hero__trust-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--gap-hero-trust);margin-block:var(--margin-hero-trust-top)var(--spacing-0);font-size:var(--font-size-hero-checkmarks);color:var(--color-white);opacity:var(--opacity-subtext)}.gandm-hero__trust-item{display:inline-flex;align-items:center;gap:var(--gap-hero-trust-item)}.gandm-hero__trust-icon{font-weight:var(--font-weight-heading)}.gandm-trust-bar{background-color:var(--color-trust-bar-background);color:var(--color-trust-bar-text)}.gandm-trust-bar .gandm-container{max-width:var(--size-width-full);padding-inline:var(--padding-trust-bar-x)}.gandm-trust-bar__inner{padding-block:var(--padding-trust-bar-y)}.gandm-trust-bar__list{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-around;gap:var(--spacing-4);margin:var(--spacing-0);padding:var(--spacing-0);list-style:none}.gandm-trust-bar__item{display:flex;align-items:center;gap:var(--gap-trust-bar-item);font-family:var(--font-heading);font-size:var(--font-size-trust-bar);font-weight:var(--font-weight-heading);line-height:var(--line-height-tight);text-transform:uppercase;letter-spacing:var(--letter-spacing-trust-bar)}.gandm-trust-bar__icon{font-size:var(--font-size-trust-bar-icon);line-height:var(--line-height-tight)}.gandm-home-services{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);background-color:var(--color-white)}.gandm-home-services .gandm-container{padding-inline:var(--spacing-0)}.gandm-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap-columns)}.gandm-service-card{display:flex;flex-direction:column;align-items:center;height:var(--size-percent-full);margin:var(--spacing-0);padding-block:var(--padding-service-card-y);padding-inline:var(--padding-service-card-x);text-align:center;background-color:var(--color-white);border:var(--border-width-thin)solid var(--color-service-card-border);border-radius:var(--border-radius-card);transition:box-shadow var(--transition-duration)var(--transition-easing)}.gandm-service-card:hover,.gandm-service-card:focus-within{box-shadow:var(--shadow-card-hover)}.gandm-service-card__icon{display:block;margin-block-end:var(--spacing-4);font-size:var(--font-size-trust-card-icon);line-height:var(--line-height-tight);color:var(--color-service-card-icon)}.gandm-service-card__title{margin-block:var(--spacing-0)var(--spacing-3);font-size:var(--font-size-xl)}.gandm-service-card__title-link{color:var(--color-primary)}.gandm-service-card__title-link:hover,.gandm-service-card__title-link:focus{color:var(--color-secondary)}.gandm-service-card__excerpt{margin-block-end:var(--spacing-4);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);flex-grow:1}.gandm-service-card__excerpt p{margin:var(--spacing-0)}.gandm-service-card__more{display:inline-flex;align-items:center;gap:var(--spacing-2);margin-block-start:auto;font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:var(--font-weight-heading);color:var(--color-secondary)}.gandm-service-card__more:hover,.gandm-service-card__more:focus{color:var(--color-primary);text-decoration:underline}.gandm-home-offer{padding-block:var(--padding-offer-y);padding-inline:var(--padding-offer-x);background-color:var(--color-offer-background);color:var(--color-offer-text)}.gandm-home-offer .gandm-container{padding-inline:var(--spacing-0)}.gandm-home-offer__inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--offer-banner-gap)}.gandm-home-offer__heading{margin-block:var(--spacing-0)var(--spacing-4);font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);color:var(--color-offer-text);text-align:start}.gandm-home-offer__list{margin-block:var(--spacing-offer-list-margin);padding:var(--spacing-0);list-style:none}.gandm-home-offer__item{display:flex;align-items:flex-start;gap:var(--spacing-3);padding-block:var(--spacing-offer-item-padding);border-block-end:var(--border-width-thin)solid var(--color-offer-list-divider)}.gandm-home-offer__item:last-child{border-block-end:var(--border-style-none)}.gandm-home-offer__detail{font-size:var(--font-size-base);line-height:var(--line-height-base)}.gandm-home-offer__button{padding-block:var(--padding-offer-button-block);padding-inline:var(--padding-offer-button-inline);font-weight:var(--font-weight-heading);color:var(--color-offer-button-text);background-color:var(--color-offer-button-background);border-color:var(--color-offer-button-background)}.gandm-home-offer__button:hover,.gandm-home-offer__button:focus{color:var(--color-offer-button-text);background-color:color-mix(in srgb,var(--color-white) 92%,var(--color-text));border-color:color-mix(in srgb,var(--color-white) 92%,var(--color-text))}.gandm-home-offer__coupon-amount{margin:var(--spacing-0);font-family:var(--font-heading);font-size:var(--font-size-offer-coupon);font-weight:var(--font-weight-black);line-height:var(--line-height-tight);color:var(--color-offer-text);opacity:var(--opacity-coupon)}.gandm-home-offer__coupon-label,.gandm-home-offer__coupon-tagline{margin:var(--spacing-0);font-family:var(--font-heading);font-size:var(--font-size-sm);font-weight:var(--font-weight-heading);text-transform:uppercase;letter-spacing:var(--letter-spacing-trust-bar);color:var(--color-offer-text);opacity:var(--opacity-coupon)}.gandm-home-offer__coupon-tagline{margin-block-start:var(--spacing-2);text-transform:none;letter-spacing:normal}.gandm-home-trust{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);background-color:var(--color-background)}.gandm-home-trust .gandm-container{padding-inline:var(--spacing-0)}.gandm-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap-columns);align-items:stretch}.gandm-trust-card{display:flex;flex-direction:column;height:var(--size-percent-full);margin:var(--spacing-0);padding-block:var(--padding-trust-card-y);padding-inline:var(--padding-trust-card-x);background-color:var(--color-trust-card-background);border-block-start:var(--border-width-trust-card-top)solid var(--color-trust-card-border-top);border-radius:var(--border-radius-card)}.gandm-trust-card__icon{display:block;margin-block-end:var(--spacing-trust-card-icon-bottom);font-size:var(--font-size-trust-card-icon);line-height:var(--line-height-tight);color:var(--color-trust-card-icon)}.gandm-trust-card__heading{margin-block:var(--spacing-0)var(--spacing-trust-card-heading-bottom);font-size:var(--font-size-trust-card-heading);font-weight:var(--font-weight-heading);color:var(--color-primary)}.gandm-trust-card__description{margin:var(--spacing-0);font-size:var(--font-size-trust-card-description);line-height:var(--line-height-trust-description);color:var(--color-text-muted)}.gandm-home-reviews{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);background-color:var(--color-white)}.gandm-home-reviews .gandm-container{padding-inline:var(--spacing-0)}.gandm-home-reviews__subheading{margin-block:var(--spacing-0)var(--margin-section-title-bottom);font-size:var(--font-size-reviews-subheading);line-height:var(--line-height-base);color:var(--color-text-muted);text-align:center}.gandm-home-reviews__summary{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-3);margin-block-end:var(--spacing-reviews-summary-bottom);text-align:center}.gandm-home-reviews__summary-text{margin:var(--spacing-0);font-size:var(--font-size-reviews-subheading);font-weight:var(--font-weight-heading);color:var(--color-text)}.gandm-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap-columns)}.gandm-review-card{display:flex;flex-direction:column;height:var(--size-percent-full);margin:var(--spacing-0);padding:var(--padding-trust-card-y);background-color:var(--color-review-card-background);border-radius:var(--border-radius-card);border-inline-start:var(--border-width-review-accent)solid var(--color-review-card-accent);box-shadow:var(--shadow-card)}.gandm-review-card__stars{display:flex;gap:var(--spacing-1);margin-block-end:var(--spacing-3);font-size:var(--font-size-review-star);line-height:var(--line-height-tight)}.gandm-review-card__star{color:var(--color-review-star-empty)}.gandm-review-card__star--filled{color:var(--color-review-star-filled)}.gandm-review-card__text{margin-block:var(--spacing-0)var(--spacing-5);flex-grow:1;font-size:var(--font-size-review-text);line-height:var(--line-height-review);font-style:italic;color:var(--color-text)}.gandm-review-card__text p{margin:var(--spacing-0)}.gandm-review-card__text p::before,.gandm-review-card__text p::after{content:none}.gandm-review-card__author{font-family:var(--font-heading);font-size:var(--font-size-review-author);font-weight:var(--font-weight-heading);font-style:normal;color:var(--color-primary)}.gandm-review-card__location{font-size:var(--font-size-review-location);color:var(--color-review-location-muted)}.gandm-review-card__date{font-size:var(--font-size-review-location);color:var(--color-review-location-muted)}.gandm-home-service-areas--primary{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);background-color:var(--color-service-areas-section-background);color:var(--color-service-areas-section-text);text-align:center}.gandm-home-service-areas--primary .gandm-container{padding-inline:var(--spacing-0)}.gandm-home-service-areas--primary .gandm-section-heading,.gandm-home-service-areas--primary .gandm-home-service-areas__heading{color:var(--color-service-areas-section-text)}.gandm-service-areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap-columns);margin-block-end:var(--spacing-8)}.gandm-service-area-card{padding:var(--padding-service-area-card);border:var(--border-width-thin)solid var(--color-service-area-card-border);border-radius:var(--border-radius-card);background-color:var(--color-service-area-card-background)}.gandm-service-area-card__heading{margin-block:var(--spacing-0)var(--spacing-4);font-size:var(--font-size-county-name);font-weight:var(--font-weight-heading);color:var(--color-service-areas-section-text)}.gandm-service-area-card__cities{margin:var(--spacing-0);padding:var(--spacing-0);list-style:none;font-size:var(--font-size-base);line-height:var(--line-height-cities);opacity:var(--opacity-cities)}.gandm-service-area-card__button{display:inline-block;margin-block-start:var(--spacing-5);padding-block:var(--padding-header-book-block);padding-inline:var(--padding-header-book-inline);font-family:var(--font-heading);font-weight:var(--font-weight-heading);color:var(--color-primary);background-color:var(--color-white);border-radius:var(--border-radius-button)}.gandm-home-service-areas__phone{margin:var(--spacing-0);font-size:var(--font-size-2xl);font-weight:var(--font-weight-heading)}.gandm-home-service-areas__phone-link{color:var(--color-service-areas-section-text)}.gandm-home-service-areas__phone-link:hover,.gandm-home-service-areas__phone-link:focus{color:var(--color-white);text-decoration:underline}.gandm-home-final-cta{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);background-color:var(--color-final-cta-background);color:var(--color-final-cta-text);text-align:center}.gandm-home-final-cta__pattern{display:none}.gandm-home-final-cta .gandm-container{padding-inline:var(--spacing-0)}.gandm-home-final-cta__heading{margin-block:var(--spacing-0)var(--margin-final-cta-heading-bottom);font-size:var(--font-size-final-cta-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);color:var(--color-final-cta-text)}.gandm-home-final-cta__subheading{margin-block:var(--spacing-0)var(--margin-final-cta-subheading-bottom);max-width:var(--size-hero-subheading-max);margin-inline:auto;font-size:var(--font-size-final-cta-subheading);line-height:var(--line-height-base);color:var(--color-final-cta-text);opacity:var(--opacity-subtext)}.gandm-home-final-cta__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--gap-final-cta-actions)}.gandm-home-final-cta .gandm-button--primary{color:var(--color-final-cta-primary-text);background-color:var(--color-final-cta-primary-bg);border-color:var(--color-final-cta-primary-bg)}.gandm-home-final-cta .gandm-button--primary:hover,.gandm-home-final-cta .gandm-button--primary:focus{color:var(--color-final-cta-primary-text);background-color:color-mix(in srgb,var(--color-white) 92%,var(--color-text));border-color:color-mix(in srgb,var(--color-white) 92%,var(--color-text))}.gandm-home-final-cta__trust{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--gap-final-cta-trust);margin-block:var(--margin-final-cta-trust-top)var(--spacing-0);padding:var(--spacing-0);list-style:none;font-size:var(--font-size-final-cta-trust)}.gandm-home-final-cta__trust-item{display:inline-flex;align-items:center;gap:var(--spacing-2)}.gandm-site-footer{background-color:var(--color-footer-background);color:var(--color-on-primary)}.gandm-site-footer a{color:var(--color-on-primary)}.gandm-site-footer a:hover,.gandm-site-footer a:focus{color:var(--color-secondary)}.gandm-footer-main{padding-block:var(--padding-footer-y)var(--padding-footer-bottom);padding-inline:var(--padding-footer-x)}.gandm-footer-main .gandm-container{padding-inline:var(--spacing-0)}.gandm-footer-address{margin-block:var(--spacing-0)var(--spacing-8);font-style:normal;font-size:var(--font-size-base);text-align:center}.gandm-footer-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--footer-column-gap)}.gandm-footer-column .widget-title{margin-block:var(--spacing-0)var(--spacing-4);font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-heading);color:var(--color-on-primary)}.gandm-footer-column .widget p,.gandm-footer-column .widget li{font-size:var(--font-size-base);line-height:var(--line-height-base)}.gandm-footer-nav{margin-block-start:var(--spacing-8);padding-block-start:var(--spacing-6);border-block-start:var(--border-width-thin)solid var(--color-footer-bar-border)}.gandm-menu--footer{display:flex;flex-wrap:wrap;gap:var(--spacing-4)var(--header-nav-gap)}.gandm-footer-bar{border-block-start:var(--border-width-thin)solid var(--color-footer-bar-border)}.gandm-footer-bar .gandm-container{margin-block-start:var(--margin-footer-bar-top);padding-block:var(--padding-footer-bar-top)var(--padding-footer-bottom);padding-inline:var(--padding-footer-x)}.gandm-footer-bar__text{margin:var(--spacing-0);font-size:var(--font-size-footer-bar);line-height:var(--line-height-base);text-align:center;opacity:var(--opacity-footer-bar)}.gandm-page-banner,.gandm-archive-banner{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);background-color:var(--color-page-banner-background);color:var(--color-on-primary);text-align:center}.gandm-page-banner__title,.gandm-archive-banner__title{margin:var(--spacing-0);font-size:var(--font-size-page-banner);color:var(--color-on-primary)}.gandm-page-content,.gandm-archive-content,.gandm-single-content{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x)}.gandm-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap-posts)}.gandm-post-card{background-color:var(--color-white);border:var(--border-width-thin)solid var(--color-border-light);border-radius:var(--border-radius-card);overflow:hidden;transition:box-shadow var(--transition-duration)var(--transition-easing)}.gandm-post-card:hover,.gandm-post-card:focus-within{box-shadow:var(--shadow-card-hover)}.gandm-post-card__link{display:block;color:var(--color-text)}.gandm-post-card__media{height:var(--size-post-card-image-height);background-color:var(--color-background);overflow:hidden}.gandm-post-card__media img{width:var(--size-width-full);height:var(--size-percent-full);object-fit:cover}.gandm-post-card__body{padding:var(--spacing-5)}.gandm-post-card__title{margin-block:var(--spacing-0)var(--spacing-2);font-size:var(--font-size-xl);color:var(--color-primary)}.gandm-post-card__meta{margin-block:var(--spacing-0)var(--spacing-3);font-size:var(--font-size-meta);color:var(--color-text-muted)}.gandm-posts-pagination{margin-block-start:var(--spacing-8);text-align:center}.gandm-single-header__title{margin-block:var(--spacing-0)var(--spacing-4)}.gandm-single-header__date{margin-block:var(--spacing-0)var(--spacing-6);font-size:var(--font-size-meta);color:var(--color-text-muted)}.gandm-single-featured{margin-block-end:var(--spacing-6)}.gandm-single-footer{margin-block-start:var(--spacing-8)}.gandm-error-404{padding-block:var(--padding-section-y);padding-inline:var(--padding-section-x);text-align:center}.gandm-error-404__code{margin-block:var(--spacing-0)var(--spacing-4);font-family:var(--font-heading);font-size:var(--font-size-5xl);font-weight:var(--font-weight-heading);color:var(--color-secondary);line-height:var(--line-height-tight)}.gandm-sidebar{padding:var(--sidebar-padding);background-color:var(--color-surface)}@media(max-width:768px){.gandm-header-main__nav,.gandm-header-main__actions{display:none}.gandm-menu-toggle{display:flex}.gandm-header-main .gandm-container{padding-inline:var(--padding-section-mobile-x)}.gandm-hero__heading{font-size:var(--font-size-hero-heading-tablet)}.gandm-trust-bar__list{display:grid;grid-template-columns:repeat(2,1fr);justify-content:center}.gandm-services-grid,.gandm-trust-grid,.gandm-reviews-grid,.gandm-service-areas-grid,.gandm-posts-grid,.gandm-footer-columns{grid-template-columns:1fr}.gandm-home-offer__inner{grid-template-columns:1fr;text-align:center}.gandm-home-offer__heading{text-align:center}.gandm-home-offer__list{text-align:start}.gandm-home-offer__coupon{justify-self:center}}@media(min-width:769px){.gandm-header-main__nav,.gandm-header-main__actions{display:flex}.gandm-menu-toggle{display:none}.gandm-header-mobile-call{display:none}.gandm-mobile-nav{display:none}}@media(max-width:480px){.gandm-header-top .gandm-container,.gandm-header-main .gandm-container{padding-inline:var(--padding-section-mobile-x)}.gandm-header-top__inner{flex-direction:column;height:auto;min-height:var(--size-header-top-height);padding-block:var(--spacing-2);text-align:center}.gandm-header-mobile-call__link{padding-block:var(--spacing-4);font-size:var(--font-size-xl)}.gandm-hero__heading{font-size:var(--font-size-hero-heading-mobile)}.gandm-hero__content{padding-block:var(--padding-section-mobile-y);padding-inline:var(--padding-section-mobile-x)}.gandm-home-services,.gandm-home-trust,.gandm-home-reviews,.gandm-home-service-areas--primary,.gandm-home-final-cta,.gandm-page-content,.gandm-archive-content,.gandm-single-content,.gandm-footer-main{padding-block:var(--padding-section-mobile-y);padding-inline:var(--padding-section-mobile-x)}.gandm-home-offer{padding-block:var(--padding-section-mobile-y);padding-inline:var(--padding-section-mobile-x)}.gandm-trust-bar .gandm-container{padding-inline:var(--padding-section-mobile-x)}.gandm-home-offer__coupon-amount{font-size:var(--font-size-offer-coupon-mobile)}.gandm-home-final-cta__actions{flex-direction:column;width:var(--size-width-full)}.gandm-home-final-cta__actions .gandm-button{width:var(--size-width-full)}.gandm-home-final-cta__trust{flex-direction:column;gap:var(--spacing-4)}.gandm-hero__button,.gandm-home-offer__button{width:var(--size-width-full)}}