@media (max-width: 1100px) {
	.town-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.near-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.service-groups {
		grid-template-columns: repeat(2, 1fr);
	}

	.hero-title {
		font-size: 2.2rem;
	}

	.town-hero-title,
	.branch-heading {
		font-size: 2rem;
	}
}

@media (max-width: 782px) {
	.bar-inner {
		flex-wrap: wrap;
		gap: var(--po-2);
	}

	.burger {
		display: block;
	}

	.main-nav {
		display: none;
		flex: 1 0 100%;
		margin-left: 0;
	}

	.main-nav.is-shown {
		display: block;
	}

	.nav-items {
		flex-direction: column;
		gap: var(--po-2);
		padding-top: var(--po-2);
	}

	.content-area {
		padding-top: var(--po-3);
		padding-bottom: var(--po-4);
	}

	.hero,
	.hero.has-media,
	.town-hero,
	.town-hero.has-media,
	.branch-hero,
	.branch-hero.has-media,
	.info-grid,
	.town-grid,
	.near-grid,
	.service-groups,
	.service-groups-single,
	.footer-inner {
		grid-template-columns: 1fr;
	}

	.service-groups-single .service-items {
		columns: 1;
	}

	.hero,
	.town-hero,
	.branch-hero {
		padding: var(--po-4) var(--po-3);
	}

	.hero.has-media {
		padding: 0;
	}

	.hero.has-media .hero-text {
		padding: var(--po-4) var(--po-3);
	}

	.hero-title {
		font-size: 1.9rem;
	}

	.town-hero-title,
	.branch-heading {
		font-size: 1.8rem;
	}

	.section-heading {
		font-size: 1.4rem;
	}

	.section-head {
		flex-direction: column;
		gap: var(--po-1);
	}

	.info-card {
		padding: var(--po-3);
	}

	.branch-photos,
	.service-photos {
		grid-template-columns: repeat(3, 1fr);
	}

	.quick-jump {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

	.quick-jump-link {
		text-align: center;
	}

	.map-box {
		height: 250px;
	}

	.logo-image {
		height: 34px;
		max-width: 180px;
	}

	.footer-logo-image {
		height: 32px;
		max-width: 180px;
	}

	.page-hero-image {
		height: 210px;
	}

	.page-hero-text {
		position: static;
		padding: var(--po-3) 0 0;
		background-color: transparent;
	}

	.photo-modal {
		padding: 56px 12px;
	}

	.top-button {
		right: 14px;
		bottom: 14px;
	}
}
