@font-face {
	font-display: swap;
	font-family: "AAWS Inter";
	font-style: normal;
	font-weight: 100 900;
	src: url("../fonts/inter-variable.ttf") format("truetype");
}

@font-face {
	font-display: swap;
	font-family: "AAWS Playfair";
	font-style: normal;
	font-weight: 400 900;
	src: url("../fonts/playfair-display-variable.ttf") format("truetype");
}

.aaws-obituary-home,
.aaws-obituary-site {
	--aaws-black: #24323a;
	--aaws-white: #ffffff;
	--aaws-paper: #f7f4ef;
	--aaws-panel: #e7f2f0;
	--aaws-panel-neutral: #f1eee8;
	--aaws-line: #cdd6d3;
	--aaws-muted: #5d6966;
	--aaws-teal: #0b9388;
	--aaws-teal-dark: #087269;
	--aaws-teal-hover: #065f58;
	--aaws-teal-pressed: #044a45;
	--aaws-teal-soft: #d8ece8;
	--aaws-serif: "AAWS Playfair", Georgia, "Times New Roman", serif;
	--aaws-sans: "AAWS Inter", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--aaws-border: 1px solid var(--aaws-line);
	--aaws-control-border: 1px solid #9daaa6;
	background: var(--aaws-paper);
	color: var(--aaws-black);
	font-family: var(--aaws-sans);
	font-size: 16px;
	line-height: 1.45;
	margin: 0;
	min-width: 320px;
	overflow-x: hidden;
}

.aaws-obituary-home *,
.aaws-obituary-home *::before,
.aaws-obituary-home *::after,
.aaws-obituary-site *,
.aaws-obituary-site *::before,
.aaws-obituary-site *::after {
	box-sizing: border-box;
}

.aaws-obituary-home button,
.aaws-obituary-home input,
.aaws-obituary-site button,
.aaws-obituary-site input,
.aaws-obituary-site select {
	border-radius: 0;
	font: inherit;
}

.aaws-obituary-home button,
.aaws-obituary-home a,
.aaws-obituary-site button,
.aaws-obituary-site a {
	-webkit-tap-highlight-color: transparent;
}

.aaws-obituary-home button,
.aaws-obituary-site button {
	color: inherit;
}

.aaws-obituary-home button:not(:disabled),
.aaws-obituary-home a,
.aaws-obituary-site button:not(:disabled),
.aaws-obituary-site a {
	cursor: pointer;
}

.aaws-obituary-home button:disabled,
.aaws-obituary-site button:disabled {
	cursor: not-allowed;
	opacity: 1;
}

.aaws-obituary-home img,
.aaws-obituary-home svg,
.aaws-obituary-site img,
.aaws-obituary-site svg {
	display: block;
}

.aaws-obituary-home a,
.aaws-obituary-site a {
	color: inherit;
}

.aaws-obituary-home [hidden],
.aaws-obituary-site [hidden] {
	display: none !important;
}

.aaws-obituary-home .screen-reader-text,
.aaws-obituary-site .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.aaws-obituary-home :focus-visible,
.aaws-obituary-site :focus-visible {
	outline: 3px solid var(--aaws-teal);
	outline-offset: 3px;
}

.aaws-skip-link {
	background: var(--aaws-teal-dark);
	color: var(--aaws-white) !important;
	font-weight: 700;
	left: 16px;
	padding: 12px 16px;
	position: fixed;
	top: -100px;
	z-index: 100001;
}

.aaws-skip-link:focus {
	top: 12px;
}

.aaws-home-header {
	background: rgb(247 244 239 / 96%);
	border-bottom: var(--aaws-border);
	box-shadow: 0 8px 24px rgb(36 50 58 / 5%);
	position: sticky;
	top: 0;
	z-index: 1000;
}

.admin-bar .aaws-home-header {
	top: 32px;
}

.aaws-home-header__bar {
	align-items: center;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(230px, 0.85fr) auto minmax(250px, 0.85fr) auto;
	margin: 0 auto;
	max-width: 1600px;
	min-height: 82px;
	padding: 10px 32px;
}

.aaws-home-brand {
	align-items: center;
	display: inline-flex;
	gap: 11px;
	max-width: 255px;
	text-decoration: none;
}

.aaws-home-brand img {
	height: 54px;
	object-fit: contain;
	width: 54px;
}

.aaws-home-brand__copy {
	display: flex;
	flex-direction: column;
	line-height: 1;
}

.aaws-home-brand__name {
	font-family: var(--aaws-serif);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: -0.025em;
	white-space: nowrap;
}

.aaws-home-brand__since {
	color: var(--aaws-muted);
	font-size: 9px;
	font-weight: 500;
	letter-spacing: 0.24em;
	margin-top: 6px;
	text-transform: uppercase;
}

.aaws-home-nav {
	align-items: center;
	display: flex;
	justify-content: center;
	white-space: nowrap;
}

.aaws-home-menu,
.aaws-home-menu .sub-menu,
.aaws-footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.aaws-home-menu {
	align-items: center;
	display: flex;
	gap: clamp(16px, 2.2vw, 38px);
}

.aaws-home-menu li {
	margin: 0;
	position: relative;
}

.aaws-home-menu a {
	border-bottom: 2px solid transparent;
	display: block;
	font-size: 15px;
	font-weight: 550;
	padding: 8px 0;
	text-decoration: none;
}

.aaws-home-menu > li.current-menu-item > a,
.aaws-home-menu > li.current-menu-ancestor > a,
.aaws-home-menu > li:first-child > a {
	border-bottom: 2px solid var(--aaws-teal-dark);
}

.aaws-home-menu a:hover,
.aaws-home-menu a:focus-visible {
	color: var(--aaws-teal-dark);
}

.aaws-home-menu .sub-menu {
	background: var(--aaws-white);
	border: var(--aaws-border);
	box-shadow: 0 14px 32px rgb(36 50 58 / 10%);
	display: none;
	left: -14px;
	min-width: 210px;
	position: absolute;
	top: 100%;
	z-index: 30;
}

.aaws-home-menu .sub-menu a {
	border: 0;
	border-bottom: 1px solid var(--aaws-line);
	font-size: 13px;
	padding: 11px 14px;
}

.aaws-home-menu .sub-menu li:last-child a {
	border-bottom: 0;
}

.aaws-home-menu li:hover > .sub-menu,
.aaws-home-menu li:focus-within > .sub-menu {
	display: block;
}

.aaws-home-search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 50px;
	min-width: 0;
}

.aaws-home-search input {
	background: var(--aaws-white);
	border: var(--aaws-control-border);
	border-right: 0;
	color: var(--aaws-black);
	font-size: 14px;
	height: 46px;
	min-width: 0;
	padding: 0 14px;
	width: 100%;
}

.aaws-home-search input::placeholder {
	color: #5b5b58;
	opacity: 1;
}

.aaws-home-search button {
	align-items: center;
	background: var(--aaws-white);
	border: var(--aaws-control-border);
	display: flex;
	height: 46px;
	justify-content: center;
	padding: 0;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.aaws-home-search button:hover,
.aaws-home-search button:focus-visible {
	background: var(--aaws-teal-hover);
	border-color: var(--aaws-teal-hover);
	color: var(--aaws-white);
}

.aaws-home-search button:active {
	background: var(--aaws-teal-pressed);
	border-color: var(--aaws-teal-pressed);
}

.aaws-home-search svg {
	fill: none;
	height: 23px;
	stroke: currentColor;
	stroke-linecap: square;
	stroke-width: 2.2;
	width: 23px;
}

.aaws-button,
.aaws-post-notice {
	align-items: center;
	border: 1px solid var(--aaws-teal-dark);
	display: inline-flex;
	font-size: 13px;
	font-weight: 650;
	justify-content: center;
	letter-spacing: 0.04em;
	line-height: 1.1;
	min-height: 46px;
	padding: 0 20px;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.aaws-button--dark {
	background: var(--aaws-teal-dark);
	color: var(--aaws-white) !important;
}

.aaws-button--dark:hover,
.aaws-button--dark:focus-visible {
	background: var(--aaws-teal-hover);
	border-color: var(--aaws-teal-hover);
}

.aaws-button--dark:active {
	background: var(--aaws-teal-pressed);
	border-color: var(--aaws-teal-pressed);
	transform: translateY(1px);
}

.aaws-button--light {
	background: var(--aaws-white);
	color: var(--aaws-teal-dark);
}

.aaws-button--light:hover,
.aaws-button--light:focus-visible {
	background: var(--aaws-teal-soft);
	border-color: var(--aaws-teal-dark);
	color: var(--aaws-teal-pressed);
}

.aaws-button--light:active {
	background: #c6e3de;
	transform: translateY(1px);
}

.aaws-home-header__cta {
	white-space: nowrap;
}

.aaws-home-header__cta:disabled,
.aaws-post-notice:disabled {
	background: var(--aaws-teal-dark);
	border-color: var(--aaws-teal-dark);
	color: var(--aaws-white) !important;
	cursor: default;
	opacity: 0.58;
}

.aaws-menu-toggle {
	align-items: center;
	background: var(--aaws-white);
	border: var(--aaws-control-border);
	display: none;
	height: 48px;
	justify-content: center;
	padding: 0;
	width: 48px;
}

.aaws-menu-toggle svg {
	fill: none;
	height: 26px;
	stroke: currentColor;
	stroke-width: 2;
	width: 26px;
}

.aaws-menu-toggle__close {
	display: none;
}

.aaws-menu-toggle[aria-expanded="true"] .aaws-menu-toggle__open {
	display: none;
}

.aaws-menu-toggle[aria-expanded="true"] .aaws-menu-toggle__close {
	display: block;
}

.aaws-home-layout {
	display: grid;
	gap: 20px;
	grid-template-areas: "regions records partners";
	grid-template-columns: minmax(230px, 0.76fr) minmax(500px, 1.55fr) minmax(250px, 0.8fr);
	margin: 0 auto;
	max-width: 1600px;
	padding: 30px 32px 56px;
}

.aaws-records-column {
	grid-area: records;
	min-width: 0;
}

.aaws-regions-column {
	grid-area: regions;
	min-width: 0;
}

.aaws-partners-column {
	grid-area: partners;
	min-width: 0;
}

.aaws-records-column,
.aaws-regions-column,
.aaws-partners-column {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.aaws-announcement {
	align-items: center;
	background: var(--aaws-panel-neutral);
	border: var(--aaws-border);
	box-shadow: inset 5px 0 0 var(--aaws-teal);
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1fr) 88px;
	min-height: 142px;
	padding: 22px 24px;
}

.aaws-eyebrow {
	color: var(--aaws-teal-dark);
	font-size: 11px !important;
	font-weight: 650;
	letter-spacing: 0.12em;
	margin: 0 0 6px !important;
	text-transform: uppercase;
}

.aaws-announcement h1 {
	color: var(--aaws-black);
	font-family: var(--aaws-serif);
	font-size: clamp(29px, 2.45vw, 43px);
	font-weight: 650;
	letter-spacing: -0.03em;
	line-height: 1.03;
	margin: 0 0 10px;
}

.aaws-announcement p:last-child {
	font-size: 15px;
	line-height: 1.45;
	margin: 0;
	max-width: 700px;
}

.aaws-announcement__maple {
	align-items: center;
	display: flex;
	justify-content: center;
}

.aaws-announcement__maple svg {
	fill: none;
	height: 76px;
	stroke: var(--aaws-teal-dark);
	stroke-linecap: square;
	stroke-linejoin: miter;
	stroke-width: 1.8;
	width: 76px;
}

.aaws-records,
.aaws-regions-panel,
.aaws-funeral-homes,
.aaws-promo {
	background: var(--aaws-white);
	border: var(--aaws-border);
}

.aaws-section-heading {
	align-items: center;
	background: var(--aaws-panel);
	border-bottom: var(--aaws-border);
	box-shadow: inset 5px 0 0 var(--aaws-teal);
	color: var(--aaws-black);
	display: flex;
	justify-content: space-between;
	min-height: 45px;
	padding: 10px 16px;
}

.aaws-section-heading h2 {
	color: inherit;
	font-family: var(--aaws-sans);
	font-size: 13px;
	font-weight: 650;
	letter-spacing: 0.06em;
	line-height: 1.2;
	margin: 0;
	text-transform: uppercase;
}

.aaws-section-heading--records h2 {
	font-family: var(--aaws-serif);
	font-size: 18px;
	letter-spacing: 0;
	text-transform: none;
}

.aaws-section-heading--records > span {
	font-size: 10px;
	font-weight: 550;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aaws-filter-status {
	align-items: center;
	background: var(--aaws-panel);
	border-bottom: var(--aaws-border);
	display: flex;
	font-size: 12px;
	justify-content: space-between;
	min-height: 44px;
	padding: 8px 16px;
}

.aaws-filter-status > div {
	align-items: baseline;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.aaws-filter-status__count {
	font-size: 17px;
	font-weight: 650;
}

.aaws-filter-status strong {
	border-left: 1px solid var(--aaws-line);
	color: var(--aaws-teal-dark);
	font-weight: 600;
	margin-left: 4px;
	padding-left: 9px;
}

.aaws-filter-status button {
	background: transparent;
	border: 0;
	color: var(--aaws-teal-dark);
	font-size: 11px;
	font-weight: 650;
	letter-spacing: 0.05em;
	padding: 5px;
	text-transform: uppercase;
}

.aaws-filter-status button:disabled {
	color: #74746f;
}

.aaws-records__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.aaws-record {
	align-items: center;
	border-bottom: 1px solid var(--aaws-line);
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: 69px;
	padding: 11px 22px;
}

.aaws-record:hover {
	background: #f4f8f7;
}

.aaws-record__identity {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.aaws-record__name {
	color: var(--aaws-black);
	font-family: var(--aaws-serif);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.05;
	text-decoration: none;
}

a.aaws-record__name:hover {
	color: var(--aaws-teal-dark);
	text-decoration: underline;
}

.aaws-record__location {
	color: var(--aaws-muted);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.07em;
	line-height: 1.25;
	margin-top: 3px;
	text-transform: uppercase;
}

.aaws-record time {
	font-size: 12px;
	font-weight: 500;
	text-align: right;
	white-space: nowrap;
}

.aaws-records__empty {
	padding: 52px 24px;
	text-align: center;
}

.aaws-records__empty h3 {
	font-family: var(--aaws-serif);
	font-size: 24px;
	margin: 0 0 8px;
}

.aaws-records__empty p {
	color: var(--aaws-muted);
	margin: 0 0 22px;
}

.aaws-records__all {
	align-items: center;
	background: var(--aaws-panel-neutral);
	border: 0;
	border-top: var(--aaws-border);
	display: flex;
	font-size: 12px;
	font-weight: 650;
	justify-content: center;
	letter-spacing: 0.11em;
	min-height: 72px;
	padding: 16px;
	text-decoration: none;
	text-transform: uppercase;
	width: 100%;
}

.aaws-region-all,
.aaws-region-filter,
.aaws-area-filter,
.aaws-region-group__children button,
.aaws-region-group__children a {
	background: var(--aaws-white);
	border: 0;
	color: var(--aaws-black);
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: 13px;
	font-weight: 500;
	text-align: left;
	text-decoration: none;
}

.aaws-region-all {
	border-bottom: 1px solid var(--aaws-line);
	min-height: 48px;
	padding: 10px 16px;
	width: 100%;
}

.aaws-region-all:hover,
.aaws-region-all.is-active,
.aaws-region-filter:hover,
.aaws-region-filter.is-active,
.aaws-area-filter:hover,
.aaws-area-filter.is-active,
.aaws-region-group__children button:hover,
.aaws-region-group__children button.is-active,
.aaws-region-group__children a:hover,
.aaws-region-group__children a:focus-visible,
.aaws-region-group__children a.is-active {
	background: var(--aaws-teal-soft);
	box-shadow: inset 5px 0 0 var(--aaws-teal);
}

.aaws-region-group {
	border-bottom: 1px solid var(--aaws-line);
}

.aaws-region-group:last-child {
	border-bottom: 0;
}

.aaws-region-group__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: 48px;
}

.aaws-region-filter {
	padding: 10px 16px;
	width: 100%;
}

.aaws-region-group--nested .aaws-region-filter {
	font-weight: 600;
}

.aaws-region-toggle {
	align-items: center;
	background: var(--aaws-white);
	border: 0;
	border-left: 1px solid var(--aaws-line);
	display: flex;
	justify-content: center;
	padding: 0;
	width: 46px;
}

.aaws-region-toggle span {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}

.aaws-region-toggle svg {
	fill: none;
	height: 20px;
	stroke: currentColor;
	stroke-width: 2;
	transition: transform 160ms ease;
	width: 20px;
}

.aaws-region-toggle[aria-expanded="true"] svg {
	transform: rotate(180deg);
}

.aaws-region-group__children {
	background: #f4f8f7;
	border-top: 1px solid var(--aaws-line);
	display: flex;
	flex-direction: column;
	padding: 6px 0;
}

.aaws-region-group__children button,
.aaws-region-group__children > a {
	background: transparent;
	font-size: 12px;
	min-height: 36px;
	padding: 7px 16px 7px 28px;
	width: 100%;
}

.aaws-region-level-label,
.aaws-area-group__regions > p {
	color: var(--aaws-muted);
	font-size: 9px !important;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin: 0 !important;
	text-transform: uppercase;
}

.aaws-region-level-label {
	padding: 8px 16px 5px;
}

.aaws-area-group {
	border-top: 1px solid var(--aaws-line);
}

.aaws-area-group:first-of-type {
	border-top: 0;
}

.aaws-area-filter {
	background: transparent;
	font-size: 12px;
	font-weight: 600;
	min-height: 38px;
	padding: 8px 16px 8px 22px;
	text-align: left;
	width: 100%;
}

.aaws-area-group__regions {
	background: var(--aaws-white);
	border-top: 1px dashed var(--aaws-line);
	padding: 5px 0 6px;
}

.aaws-area-group__regions > p {
	padding: 3px 16px 2px 32px;
}

.aaws-area-group__regions button,
.aaws-area-group__regions a {
	font-size: 12px;
	min-height: 36px;
	padding-block: 7px;
	padding-left: 40px;
}

.aaws-sidebar-toggle {
	align-items: center;
	background: transparent;
	border: 0;
	display: none;
	font-size: 11px;
	font-weight: 600;
	gap: 8px;
	letter-spacing: 0.04em;
	padding: 0;
	text-transform: uppercase;
}

.aaws-sidebar-toggle svg {
	fill: none;
	height: 18px;
	stroke: currentColor;
	stroke-width: 2;
	transition: transform 160ms ease;
	width: 18px;
}

.aaws-sidebar-toggle[aria-expanded="true"] svg {
	transform: rotate(180deg);
}

.aaws-promo {
	overflow: hidden;
}

.aaws-promo img {
	background: var(--aaws-panel);
	height: auto;
	object-fit: cover;
	width: 100%;
}

.aaws-promo--cemetery img {
	aspect-ratio: 3 / 2;
}

.aaws-promo__copy {
	padding: 18px;
}

.aaws-promo__copy h2 {
	color: var(--aaws-black);
	font-family: var(--aaws-serif);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.12;
	margin: 0 0 7px;
}

.aaws-promo__copy > p:not(.aaws-eyebrow) {
	color: var(--aaws-muted);
	font-size: 13px;
	line-height: 1.45;
	margin: 0 0 16px;
}

.aaws-promo--cemetery .aaws-promo__copy {
	border-top: var(--aaws-border);
}

.aaws-promo--cemetery .aaws-promo__copy > p {
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.aaws-promo--cemetery .aaws-button {
	width: 100%;
}

.aaws-post-notice {
	background: var(--aaws-teal-dark);
	color: var(--aaws-white) !important;
	gap: 14px;
	justify-content: space-between;
	min-height: 70px;
	padding: 0 24px;
	width: 100%;
}

.aaws-post-notice:not(:disabled):hover,
.aaws-post-notice:not(:disabled):focus-visible {
	background: var(--aaws-teal-hover);
	border-color: var(--aaws-teal-hover);
}

.aaws-post-notice:not(:disabled):active {
	background: var(--aaws-teal-pressed);
	border-color: var(--aaws-teal-pressed);
	transform: translateY(1px);
}

.aaws-post-notice svg,
.aaws-funeral-homes svg,
.aaws-promo--estate .aaws-button svg {
	fill: none;
	height: 22px;
	stroke: currentColor;
	stroke-linecap: square;
	stroke-width: 2;
	width: 22px;
}

.aaws-funeral-homes__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 16px;
}

.aaws-funeral-homes__list a,
.aaws-funeral-homes__list button {
	align-items: center;
	background: var(--aaws-white);
	border: 1px solid var(--aaws-line);
	display: flex;
	font-size: 11px;
	font-weight: 600;
	gap: 12px;
	justify-content: space-between;
	min-height: 58px;
	padding: 10px 14px;
	text-align: left;
	text-decoration: none;
	text-transform: uppercase;
	width: 100%;
}

.aaws-funeral-homes__list a:hover,
.aaws-funeral-homes__list a:focus-visible {
	background: var(--aaws-teal-hover);
	border-color: var(--aaws-teal-hover);
	color: var(--aaws-white);
}

.aaws-funeral-homes__list a:active {
	background: var(--aaws-teal-pressed);
}

.aaws-funeral-homes__list img {
	background: var(--aaws-white);
	border: 1px solid var(--aaws-line);
	height: 40px;
	object-fit: contain;
	padding: 3px;
	width: 72px;
}

.aaws-funeral-homes__list a > span,
.aaws-funeral-homes__list button > span {
	flex: 1;
}

.aaws-promo--estate {
	background: var(--aaws-panel-neutral);
}

.aaws-promo--estate img {
	aspect-ratio: 4 / 5;
	border-top: var(--aaws-border);
	max-height: 420px;
}

.aaws-promo--estate .aaws-button {
	gap: 12px;
}

.aaws-home-footer {
	background: var(--aaws-paper);
	border-top: 3px solid var(--aaws-teal);
	padding: 38px 32px;
}

.aaws-home-footer__grid {
	display: grid;
	gap: 36px;
	grid-template-columns: minmax(280px, 1.3fr) minmax(150px, 0.65fr) minmax(150px, 0.65fr) minmax(280px, 1.2fr);
	margin: 0 auto;
	max-width: 1536px;
}

.aaws-home-footer h2 {
	color: var(--aaws-black);
	font-family: var(--aaws-serif);
	font-size: clamp(27px, 2.2vw, 38px);
	font-weight: 650;
	letter-spacing: -0.04em;
	line-height: 1;
	margin: 0 0 16px;
	text-transform: uppercase;
}

.aaws-home-footer__brand p {
	color: var(--aaws-muted);
	font-size: 13px;
	margin: 0;
	max-width: 390px;
}

.aaws-home-footer nav {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.aaws-footer-menu {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.aaws-home-footer h3 {
	color: var(--aaws-black);
	font-family: var(--aaws-sans);
	font-size: 11px;
	font-weight: 650;
	letter-spacing: 0.08em;
	margin: 0 0 6px;
	text-transform: uppercase;
}

.aaws-home-footer nav a,
.aaws-home-footer nav button {
	background: transparent;
	border: 0;
	font-size: 12px;
	line-height: 1.3;
	margin: 0;
	padding: 0;
	text-align: left;
	text-decoration: none;
}

.aaws-home-footer nav a:hover {
	color: var(--aaws-teal-dark);
	text-decoration: underline;
}

.aaws-home-footer__utility {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.aaws-home-footer__utility-menus {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-bottom: 24px;
}

.aaws-home-footer__icons {
	display: flex;
	gap: 16px;
}

.aaws-home-footer__icons span {
	align-items: center;
	display: flex;
	height: 30px;
	justify-content: center;
	width: 30px;
}

.aaws-home-footer__icons svg {
	fill: none;
	height: 24px;
	stroke: currentColor;
	stroke-width: 1.9;
	width: 24px;
}

.aaws-home-footer__legal {
	display: flex;
	font-size: 13px;
	gap: 16px;
	margin-top: 34px;
}

.aaws-home-footer__utility > p {
	color: var(--aaws-muted);
	font-size: 9px;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin: 8px 0 0;
	text-transform: uppercase;
}

@media (max-width: 1220px) {
	.aaws-home-header__bar {
		gap: 15px;
		grid-template-columns: 220px minmax(0, 1fr) minmax(220px, 0.75fr) auto;
		padding-inline: 22px;
	}

	.aaws-home-nav {
		gap: 14px;
	}

	.aaws-home-menu {
		align-items: stretch;
		flex-direction: column;
		gap: 0;
		width: 100%;
	}

	.aaws-home-layout {
		grid-template-areas:
			"records partners"
			"regions partners";
		grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.68fr);
		padding-inline: 22px;
	}

	.aaws-regions-column {
		display: grid;
		gap: 20px;
		grid-template-columns: minmax(0, 1.45fr) minmax(240px, 0.75fr);
	}

	.aaws-home-footer__grid {
		grid-template-columns: minmax(260px, 1.2fr) 150px 150px minmax(240px, 1fr);
	}
}

@media (max-width: 960px) {
	.aaws-home-header__bar {
		grid-template-areas:
			"brand toggle"
			"search search"
			"nav nav";
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 10px 18px 14px;
	}

	.aaws-home-brand {
		grid-area: brand;
	}

	.aaws-menu-toggle {
		display: flex;
		grid-area: toggle;
	}

	.aaws-home-search {
		grid-area: search;
	}

	.aaws-home-nav {
		align-items: stretch;
		border: 1px solid var(--aaws-line);
		display: none;
		flex-direction: column;
		gap: 0;
		grid-area: nav;
	}

	.aaws-home-nav.is-open {
		display: flex;
	}

	.aaws-home-menu > li > a {
		border: 0;
		border-bottom: 1px solid var(--aaws-line);
		min-height: 46px;
		padding: 12px 14px;
		text-align: left;
	}

	.aaws-home-menu > li:last-child > a {
		border-bottom: 0;
	}

	.aaws-home-menu .sub-menu {
		border: 0;
		border-bottom: 1px solid var(--aaws-line);
		display: block;
		min-width: 0;
		position: static;
	}

	.aaws-home-menu .sub-menu a {
		background: var(--aaws-panel);
		padding-left: 28px;
	}

	.aaws-home-header__cta {
		display: none;
	}

	.aaws-home-footer__grid {
		grid-template-columns: 1.2fr 0.7fr 0.7fr;
	}

	.aaws-home-footer__utility {
		border-top: 1px solid var(--aaws-line);
		grid-column: 1 / -1;
		padding-top: 24px;
	}
}

@media (max-width: 760px) {
	.admin-bar .aaws-home-header {
		top: 46px;
	}

	.aaws-home-header__bar {
		gap: 10px;
		padding-inline: 12px;
	}

	.aaws-home-brand img {
		height: 48px;
		width: 48px;
	}

	.aaws-menu-toggle {
		height: 46px;
		width: 46px;
	}

	.aaws-home-layout {
		gap: 14px;
		grid-template-areas:
			"records"
			"regions"
			"partners";
		grid-template-columns: minmax(0, 1fr);
		padding: 14px 12px 34px;
	}

	.aaws-records-column,
	.aaws-regions-column,
	.aaws-partners-column {
		display: flex;
		gap: 14px;
	}

	.aaws-section-heading--sidebar {
		align-items: center;
		display: flex;
		justify-content: space-between;
	}

	.aaws-sidebar-toggle {
		display: inline-flex;
	}

	.aaws-announcement {
		gap: 14px;
		grid-template-columns: minmax(0, 1fr) 55px;
		min-height: 0;
		padding: 20px 18px;
	}

	.aaws-announcement h1 {
		font-size: clamp(27px, 8vw, 35px);
	}

	.aaws-announcement p:last-child {
		font-size: 14px;
	}

	.aaws-announcement__maple svg {
		height: 52px;
		width: 52px;
	}

	.aaws-section-heading--records {
		align-items: flex-start;
		gap: 7px;
	}

	.aaws-section-heading--records > span {
		max-width: 125px;
		text-align: right;
	}

	.aaws-filter-status {
		align-items: flex-start;
		gap: 8px;
	}

	.aaws-record {
		gap: 8px;
		min-height: 68px;
		padding: 11px 14px;
	}

	.aaws-record__name {
		font-size: 16px;
	}

	.aaws-record time {
		font-size: 10px;
	}

	.aaws-records__all {
		min-height: 62px;
	}

	.aaws-promo--cemetery {
		display: grid;
		grid-template-columns: minmax(130px, 0.85fr) minmax(0, 1.15fr);
	}

	.aaws-promo--cemetery img {
		aspect-ratio: auto;
		height: 100%;
	}

	.aaws-promo--cemetery .aaws-promo__copy {
		border-left: var(--aaws-border);
		border-top: 0;
	}

	.aaws-promo--estate {
		display: grid;
		grid-template-columns: minmax(0, 1.2fr) minmax(130px, 0.8fr);
	}

	.aaws-promo--estate img {
		border-left: var(--aaws-border);
		border-top: 0;
		height: 100%;
		max-height: none;
	}

	.aaws-home-footer {
		padding: 30px 18px;
	}

	.aaws-home-footer__grid {
		gap: 28px 22px;
		grid-template-columns: 1fr 1fr;
	}

	.aaws-home-footer__brand,
	.aaws-home-footer__utility {
		grid-column: 1 / -1;
	}

	.aaws-home-footer__legal {
		flex-wrap: wrap;
		margin-top: 22px;
	}
}

@media (max-width: 480px) {
	.aaws-home-brand img {
		height: 42px;
		width: 42px;
	}

	.aaws-home-brand__name {
		font-size: 17px;
	}

	.aaws-announcement {
		grid-template-columns: minmax(0, 1fr);
	}

	.aaws-announcement__maple {
		display: none;
	}

	.aaws-filter-status strong {
		border-left: 0;
		display: block;
		margin: 2px 0 0;
		padding-left: 0;
		width: 100%;
	}

	.aaws-record {
		align-items: end;
	}

	.aaws-promo--cemetery,
	.aaws-promo--estate {
		display: block;
	}

	.aaws-promo--cemetery img,
	.aaws-promo--estate img {
		aspect-ratio: 16 / 9;
		border: 0;
		border-bottom: var(--aaws-border);
		height: auto;
	}

	.aaws-promo--cemetery .aaws-promo__copy {
		border: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aaws-obituary-home *,
	.aaws-obituary-home *::before,
	.aaws-obituary-home *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

@media print {
	.aaws-home-header,
	.aaws-regions-column,
	.aaws-partners-column,
	.aaws-home-footer,
	.aaws-filter-status,
	.aaws-records__all {
		display: none !important;
	}

	.aaws-home-layout {
		display: block;
		padding: 0;
	}

	.aaws-records {
		border: 0;
	}
}
