:root {
	--alr-max: 1200px;
	--alr-gutter: 24px;
	--alr-lake: var(--global-palette1, #1d5870);
	--alr-ember: var(--global-palette2, #c4472b);
	--alr-ink: var(--global-palette3, #14242c);
	--alr-body: var(--global-palette4, #2a3a42);
	--alr-muted: var(--global-palette5, #55666e);
	--alr-subtle: var(--global-palette6, #7d8b91);
	--alr-shallows: var(--global-palette7, #d5e6ec);
	--alr-mist: var(--global-palette8, #eef5f7);
	--alr-white: var(--global-palette9, #ffffff);
	--alr-contour: var(--global-palette10, #a0643a);
	--alr-head: var(--global-heading-font-family, 'Overpass', sans-serif);
	--alr-serif: var(--global-body-font-family, 'Source Serif 4', serif);
	--alr-pad: clamp(56px, 7vw, 104px);
	--alr-gap: clamp(32px, 5vw, 80px);
	--alr-rule: color-mix(in srgb, var(--alr-contour) 55%, transparent);
	--alr-onlake: color-mix(in srgb, var(--alr-white) 86%, transparent);
}

.site :focus-visible {
	outline: 3px solid var(--alr-ember);
	outline-offset: 2px;
}

.site-header-wrap {
	border-bottom: 1px solid var(--alr-shallows);
}

.site-branding .brand {
	gap: 14px;
}

.site-branding .site-title {
	letter-spacing: -0.01em;
}

.site-branding .site-description {
	margin-top: 2px;
}

.main-navigation .primary-menu-container > ul > li.menu-item > a {
	text-decoration: underline 2px transparent;
	text-underline-offset: 8px;
}

.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.menu-item:focus-within > a {
	text-decoration-color: var(--alr-ember);
}

.main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a,
.main-navigation .primary-menu-container > ul > li.current_page_parent > a {
	text-decoration-color: var(--alr-lake);
}

.main-navigation .primary-menu-container > ul ul.sub-menu {
	border: 1px solid var(--alr-shallows);
	border-top: 2px solid var(--alr-ember);
	box-shadow: 0 18px 32px -24px color-mix(in srgb, var(--alr-ink) 60%, transparent);
}

.header-button-wrap .header-button,
.mobile-header-button-wrap .mobile-header-button {
	font-family: var(--alr-head);
	font-weight: 700;
}

.entry-content > .alr-band {
	margin-top: 0;
	margin-bottom: 0;
}

.entry-content .alr-band.alignfull {
	position: relative;
	padding-block: var(--alr-pad);
	padding-inline: max(var(--alr-gutter), calc((100% - var(--alr-max)) / 2));
}

.alr-band > .wp-block-group__inner-container > *:first-child {
	margin-top: 0;
}

.alr-band > .wp-block-group__inner-container > *:last-child {
	margin-bottom: 0;
}

.entry-content .alr-band.alignfull:not(.alr-band-lake):not(.alr-band-mist):not(.alr-hero) + .alr-band.alignfull:not(.alr-band-lake):not(.alr-band-mist):not(.alr-hero) {
	padding-top: 0;
}

.alr-band-mist {
	background: var(--alr-mist);
}

.alr-band-lake,
.alr-hero {
	background-color: var(--alr-lake);
	color: var(--alr-onlake);
}

.alr-hero {
	background-image: url(../img/contours-light.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right center;
}

.entry-content .alr-band.alr-hero {
	padding-block: clamp(44px, 6vw, 88px);
}

.entry-content .alr-band.alr-hero-home {
	padding-block: clamp(56px, 8vw, 112px) clamp(36px, 4vw, 56px);
}

.alr-band-lake :is(h1, h2, h3, h4),
.alr-hero :is(h1, h2, h3, h4) {
	color: var(--alr-white);
}

.alr-band-lake a:not(.wp-block-button__link),
.alr-hero a:not(.wp-block-button__link) {
	color: var(--alr-white);
}

.alr-band h1 {
	margin: 0 0 0.35em;
	letter-spacing: -0.015em;
	text-wrap: balance;
}

.alr-band h2 {
	margin: 0 0 0.55em;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

.alr-band h3 {
	margin: 1.4em 0 0.5em;
}

.alr-band :is(h2, h3) + * {
	margin-top: 0;
}

.alr-band p {
	margin: 0 0 1em;
}

.alr-band .alr-lead {
	font-size: clamp(1.2rem, 1.1rem + 0.5vw, 1.4rem);
	line-height: 1.5;
	color: var(--alr-ink);
}

.alr-band-lake .alr-lead,
.alr-hero .alr-lead {
	color: var(--alr-white);
}

.alr-band .wp-block-buttons {
	margin-top: 28px;
	gap: 12px 14px;
}

.alr-band-lake .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color),
.alr-hero .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color) {
	color: var(--alr-white);
	border-color: color-mix(in srgb, var(--alr-white) 70%, transparent);
	background: transparent;
}

.alr-band-lake .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover,
.alr-hero .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover {
	color: var(--alr-lake);
	background: var(--alr-white);
	border-color: var(--alr-white);
}

.alr-band-lake .wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover,
.alr-hero .wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover {
	background: var(--alr-white);
	color: var(--alr-ink);
}

.alr-band .wp-block-columns {
	margin: 0;
	gap: var(--alr-gap);
}

.alr-band .wp-block-columns > .wp-block-column {
	min-width: 0;
	align-self: center;
}

.alr-band .wp-block-columns.alr-read > .wp-block-column,
.alr-band .wp-block-columns.alr-pair > .wp-block-column {
	align-self: flex-start;
}

.alr-band .wp-block-column > *:first-child {
	margin-top: 0;
}

.alr-band .wp-block-column > *:last-child {
	margin-bottom: 0;
}

.alr-band .wp-block-columns > .wp-block-column.alr-hero-text {
	flex: 1 1 56%;
}

.alr-band .wp-block-columns > .wp-block-column.alr-hero-media {
	flex: 1 1 44%;
}

.alr-hero-wide .wp-block-columns > .wp-block-column.alr-hero-text {
	flex-basis: 46%;
}

.alr-hero-wide .wp-block-columns > .wp-block-column.alr-hero-media {
	flex-basis: 54%;
}

.alr-hero-cabin .wp-block-columns > .wp-block-column.alr-hero-media {
	flex: 0 0 auto;
}

.alr-hero-plain .alr-lead,
.alr-hero-article h1 {
	max-width: none;
}

.alr-hero-article h1 {
	font-size: clamp(2.1rem, 1.4rem + 2.6vw, 3.4rem);
}

.alr-band .wp-block-columns > .wp-block-column.alr-split-text {
	flex: 1 1 54%;
}

.alr-band .wp-block-columns > .wp-block-column.alr-split-media {
	flex: 1 1 46%;
}

.alr-band .wp-block-columns > .wp-block-column.alr-article {
	flex: 1 1 66%;
}

.alr-band .wp-block-columns > .wp-block-column.alr-aside {
	flex: 1 1 34%;
	position: sticky;
	top: 32px;
}

.alr-read > .alr-aside > * + * {
	margin-top: 32px;
}

.alr-band figure {
	margin: 0;
}

.alr-band figure img {
	display: block;
	width: 100%;
	height: auto;
}

.alr-print {
	background: var(--alr-white);
	padding: 8px;
	box-shadow: 0 1px 0 color-mix(in srgb, var(--alr-ink) 14%, transparent), 0 22px 40px -28px color-mix(in srgb, var(--alr-ink) 70%, transparent);
}

.alr-band-lake .alr-print,
.alr-hero .alr-print {
	box-shadow: 0 26px 48px -26px rgba(0, 0, 0, 0.55);
}

.alr-band .alr-print .wp-element-caption {
	margin: 10px 4px 2px;
	font-style: italic;
	font-size: 0.95rem;
	line-height: 1.4;
	color: var(--alr-muted);
	text-align: left;
}

.alr-cover img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: 3px;
}

.alr-hero .alr-cover .wp-element-caption {
	margin-top: 10px;
	font-style: italic;
	font-size: 0.95rem;
	color: var(--alr-onlake);
	text-align: left;
}

.alr-band ul.alr-facts {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 36px;
	margin: clamp(40px, 5vw, 64px) 0 0;
	padding: 22px 0 0;
	border-top: 1px solid color-mix(in srgb, var(--alr-white) 24%, transparent);
	font-family: var(--alr-head);
	font-weight: 600;
	font-size: 1rem;
	color: var(--alr-white);
}

.alr-hero-text ul.alr-facts {
	margin-top: 28px;
}

.alr-facts li,
.alr-ruled li,
.alr-checklist li {
	position: relative;
	padding-left: 24px;
}

.alr-facts li::before,
.alr-ruled li::before,
.alr-checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.34em;
	width: 11px;
	height: 11px;
	border: 2px solid var(--alr-contour);
	box-sizing: border-box;
}

.alr-facts li::before {
	border-color: var(--alr-ember);
	background: var(--alr-ember);
}

.alr-band ul.alr-ruled {
	list-style: none;
	margin: 36px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: var(--alr-gap);
	font-family: var(--alr-head);
	font-weight: 700;
	font-size: 1.15rem;
	color: var(--alr-ink);
}

.alr-ruled li {
	padding-top: 14px;
	padding-bottom: 14px;
	border-top: 1px solid var(--alr-shallows);
}

.alr-ruled li::before {
	top: calc(14px + 0.3em);
}

.alr-band figure.alr-rateboard,
.alr-band figure.alr-seasons,
.alr-band figure.alr-budget {
	margin: 0 0 18px;
	overflow-x: auto;
}

.alr-band .alr-rateboard table,
.alr-band .alr-seasons table,
.alr-band .alr-budget table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
	margin: 0;
	table-layout: auto;
}

.alr-band :is(.alr-rateboard, .alr-seasons, .alr-budget) :is(th, td) {
	border: 0;
	border-bottom: 1px dotted var(--alr-rule);
	padding: 14px 16px 14px 0;
	text-align: left;
	vertical-align: baseline;
	background: none;
}

.alr-band :is(.alr-rateboard, .alr-seasons, .alr-budget) :is(th, td):last-child {
	padding-right: 0;
}

.alr-band :is(.alr-rateboard, .alr-seasons, .alr-budget) th {
	font-family: var(--alr-head);
	font-weight: 600;
	font-size: 0.9rem;
	color: var(--alr-muted);
	border-bottom: 2px solid var(--alr-ink);
	padding-top: 0;
}

.alr-band .alr-rateboard td:first-child,
.alr-band .alr-seasons td:first-child,
.alr-band .alr-budget td:first-child {
	font-family: var(--alr-head);
	font-weight: 700;
	color: var(--alr-ink);
}

.alr-band .alr-rateboard td:last-child,
.alr-band .alr-rateboard th:last-child {
	text-align: right;
	white-space: nowrap;
}

.alr-band .alr-rateboard td:last-child {
	font-family: var(--alr-head);
	font-weight: 800;
	font-size: 1.1rem;
	color: var(--alr-ink);
	font-variant-numeric: tabular-nums;
}

.alr-band .alr-rateboard td:not(:first-child):not(:last-child) {
	color: var(--alr-muted);
	white-space: nowrap;
}

.alr-band .alr-rateboard td a {
	color: var(--alr-lake);
}

.alr-stay-rates .alr-rateboard td:first-child {
	font-size: 1.25rem;
}

.alr-stay-rates .alr-rateboard td:last-child {
	font-size: 1.5rem;
}

.alr-band .alr-note {
	font-style: italic;
	font-size: 0.97rem;
	color: var(--alr-muted);
}

.alr-band .wp-block-columns.alr-pair:not(:first-child) {
	margin-top: clamp(40px, 5vw, 64px);
}

.alr-rates h2 {
	font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem);
}

.alr-band ul.alr-cabins {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 28px var(--alr-gap);
}

.alr-cabins li {
	position: relative;
	min-height: 92px;
	padding-left: 104px;
	color: var(--alr-body);
	font-size: 1rem;
	line-height: 1.5;
}

.alr-cabins li > a {
	display: block;
	margin: 6px 0 4px;
	font-family: var(--alr-head);
	font-weight: 800;
	font-size: 1.25rem;
	color: var(--alr-ink);
	text-decoration: none;
}

.alr-cabins li > a strong,
.alr-band p.alr-plaque {
	display: grid;
	place-items: center;
	background: var(--alr-ink);
	color: var(--alr-white);
	font-family: var(--alr-head);
	font-weight: 800;
	border-radius: 10px;
	box-shadow: inset 0 0 0 3px var(--alr-ink), inset 0 0 0 5px color-mix(in srgb, var(--alr-white) 55%, transparent);
	line-height: 1;
}

.alr-cabins li > a strong {
	position: absolute;
	left: 0;
	top: 0;
	width: 84px;
	height: 92px;
	font-size: 3rem;
	padding-top: 6px;
}

.alr-cabins li > a:hover {
	color: var(--alr-lake);
	text-decoration: underline;
	text-underline-offset: 4px;
}

.alr-cabins li > a:hover strong {
	background: var(--alr-lake);
	box-shadow: inset 0 0 0 3px var(--alr-lake), inset 0 0 0 5px color-mix(in srgb, var(--alr-white) 55%, transparent);
}

.alr-stay-cabins h3,
.alr-cabin-split .alr-aside h3 {
	margin-top: 0;
	margin-bottom: 24px;
}

.alr-stay-cabins ul.alr-cabins,
.alr-cabin-split .alr-aside ul.alr-cabins {
	grid-template-columns: 1fr;
}

.alr-cabin-split .alr-aside .alr-print + h3 {
	margin-top: 40px;
}

.alr-band p.alr-plaque {
	width: clamp(150px, 16vw, 210px);
	aspect-ratio: 11 / 12;
	margin: 0 0 0 auto;
	font-size: clamp(6rem, 11vw, 9.5rem);
	padding-top: 0.08em;
	background: var(--alr-white);
	color: var(--alr-ink);
	box-shadow: inset 0 0 0 5px var(--alr-white), inset 0 0 0 8px var(--alr-ink), 0 26px 48px -26px rgba(0, 0, 0, 0.55);
}

.alr-band ul.alr-specs,
.alr-band ul.alr-terms,
.alr-band ul.alr-contacts,
.alr-band ul.alr-directory,
.alr-band ul.alr-checklist,
.alr-band ul.alr-wordlist {
	list-style: none;
	margin: 0;
	padding: 0;
}

.alr-specs li {
	display: grid;
	grid-template-columns: minmax(120px, 34%) 1fr;
	gap: 16px;
	padding: 14px 0;
	border-bottom: 1px dotted var(--alr-rule);
}

.alr-specs li strong {
	font-family: var(--alr-head);
	font-weight: 600;
	font-size: 0.95rem;
	color: var(--alr-muted);
	padding-top: 2px;
}

.alr-band ul.alr-specs {
	margin-bottom: 18px;
}

.alr-band ul.alr-terms {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 var(--alr-gap);
}

.alr-terms li {
	padding: 20px 0;
	border-top: 1px solid var(--alr-shallows);
}

.alr-terms li strong {
	display: block;
	font-family: var(--alr-head);
	font-weight: 800;
	font-size: 1.15rem;
	color: var(--alr-ink);
	margin-bottom: 4px;
}

.alr-contacts li {
	padding: 10px 0;
	border-bottom: 1px dotted var(--alr-rule);
	font-family: var(--alr-head);
	font-weight: 600;
	font-size: 1.1rem;
	color: var(--alr-ink);
}

.alr-contacts li:first-child {
	border-top: 1px dotted var(--alr-rule);
}

.alr-contacts a {
	color: var(--alr-lake);
}

.alr-band ul.alr-wordlist {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 0;
	margin: 12px 0 0;
	font-family: var(--alr-head);
	font-weight: 800;
	font-size: clamp(1.8rem, 1.2rem + 2.1vw, 3rem);
	line-height: 1.15;
	color: var(--alr-ink);
	letter-spacing: -0.015em;
}

.alr-wordlist li:not(:last-child)::after {
	content: "";
	display: inline-block;
	width: 0.2em;
	height: 0.2em;
	margin: 0 0.5em 0 0.45em;
	vertical-align: 0.24em;
	background: var(--alr-ember);
}

.alr-wordlist li:nth-child(even) {
	color: var(--alr-lake);
}

.alr-mapfig {
	border: 1px solid var(--alr-shallows);
	background: var(--alr-white);
	padding: 12px;
}

.alr-getting-here .alr-mapfig,
.alr-contact-band .alr-mapfig {
	max-width: 520px;
}

.alr-band .alr-map-split > .wp-block-column.alr-split-media {
	flex-basis: 52%;
}

.alr-stack {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.alr-stack > .wp-block-group__inner-container {
	display: contents;
}

.alr-stack figure:first-child {
	grid-column: 1 / -1;
}

.alr-band :is(.alr-stack, .alr-strip, .alr-gallery) figure.wp-block-image {
	margin: 0;
	align-self: start;
}

.alr-stack figure img,
.alr-strip figure img,
.alr-gallery figure img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

.alr-strip,
.alr-gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(16px, 2.2vw, 28px);
	margin-bottom: 8px;
}

.alr-strip > .wp-block-group__inner-container,
.alr-gallery > .wp-block-group__inner-container {
	display: contents;
}

.alr-gallery figure img {
	cursor: zoom-in;
}

.alr-gallery figure:last-child:nth-child(3n + 2) {
	grid-column: span 2;
}

.alr-gallery figure:last-child:nth-child(3n + 2) img {
	aspect-ratio: 3.18 / 1;
}

.alr-clipping .alr-article > h2 {
	font-family: var(--alr-serif);
	font-weight: 600;
	font-size: clamp(1.8rem, 1.3rem + 1.6vw, 2.6rem);
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.alr-band p.alr-byline {
	font-style: italic;
	color: var(--alr-muted);
	padding: 10px 0;
	margin-bottom: 1.6em;
	border-top: 1px solid var(--alr-ink);
	border-bottom: 1px solid var(--alr-shallows);
}

.alr-article h3 {
	margin-top: 1.6em;
}

.alr-article-band .alr-article h2 {
	font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem);
	margin-top: 1.7em;
}

.alr-band .alr-pull {
	margin: 0;
	padding: 18px 0 0;
	border: 0;
	border-top: 3px solid var(--alr-ink);
}

.alr-band .alr-pull p {
	font-family: var(--alr-serif);
	font-style: italic;
	font-size: clamp(1.45rem, 1.2rem + 0.9vw, 1.9rem);
	line-height: 1.3;
	color: var(--alr-ink);
	margin: 0 0 14px;
}

.alr-band .alr-pull cite {
	font-family: var(--alr-head);
	font-style: normal;
	font-weight: 600;
	font-size: 0.95rem;
	color: var(--alr-muted);
}

.alr-band p.alr-readnext {
	font-family: var(--alr-head);
	font-weight: 700;
	font-size: clamp(1.15rem, 1rem + 0.5vw, 1.4rem);
	color: var(--alr-ink);
	margin: 0;
}

.entry-content .alr-band.alr-next {
	padding-block: clamp(36px, 4vw, 56px);
}

.alr-contact-split .alr-readnext {
	margin-top: 14px;
	font-size: 1.05rem;
}

.alr-band ul.alr-checklist {
	columns: 4 200px;
	column-gap: var(--alr-gap);
	font-size: 1.05rem;
	color: var(--alr-ink);
}

.alr-checklist li {
	break-inside: avoid;
	padding-top: 9px;
	padding-bottom: 9px;
	padding-left: 30px;
	border-bottom: 1px dotted var(--alr-rule);
}

.alr-checklist li::before {
	top: calc(9px + 0.28em);
	width: 15px;
	height: 15px;
	border-color: var(--alr-ink);
	border-width: 1.5px;
}

.alr-dir-grid > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px var(--alr-gap);
	align-items: start;
}

.alr-dir-col h2 {
	font-size: clamp(1.4rem, 1.2rem + 0.6vw, 1.7rem);
	padding-bottom: 12px;
	border-bottom: 2px solid var(--alr-ink);
	margin-bottom: 0;
}

.alr-directory li {
	padding: 13px 0;
	border-bottom: 1px dotted var(--alr-rule);
	font-size: 1.05rem;
	line-height: 1.4;
	color: var(--alr-ink);
}

.alr-directory a {
	font-weight: 600;
	color: var(--alr-lake);
}

.alr-season-chart {
	margin: 8px 0 36px;
	font-family: var(--alr-head);
}

.alr-sc-row {
	display: grid;
	grid-template-columns: minmax(150px, 26%) 1fr;
	gap: 20px;
	align-items: center;
	padding: 7px 0;
}

.alr-sc-label {
	font-weight: 700;
	font-size: 0.95rem;
	line-height: 1.25;
	color: var(--alr-ink);
}

.alr-sc-track {
	position: relative;
	height: 22px;
	background: repeating-linear-gradient(90deg, var(--alr-mist) 0, var(--alr-mist) calc(100% / 7 - 1px), var(--alr-shallows) calc(100% / 7 - 1px), var(--alr-shallows) calc(100% / 7));
	border-radius: 2px;
}

.alr-sc-bar {
	position: absolute;
	top: 3px;
	bottom: 3px;
	background: var(--alr-ember);
	border-radius: 2px;
	min-width: 5px;
}

.alr-sc-axis .alr-sc-track {
	background: none;
	height: 20px;
}

.alr-sc-month {
	position: absolute;
	top: 0;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--alr-muted);
	padding-left: 6px;
	border-left: 1px solid var(--alr-subtle);
	line-height: 20px;
}

.alr-seasons td:last-child {
	font-variant-numeric: tabular-nums;
}

.alr-band .alr-budget th {
	color: var(--alr-ink);
}

.alr-band .alr-budget td:not(:first-child) {
	font-family: var(--alr-head);
	font-weight: 600;
	color: var(--alr-body);
}

.alr-band .alr-budget :is(th, td) {
	font-size: 0.95rem;
	line-height: 1.35;
	padding-right: 12px;
}

.alr-band .alr-budget td:first-child {
	width: 34%;
}

.alr-sheets .alr-sheet .wp-block-buttons {
	margin-top: 20px;
}

.alr-band .alr-article ul,
.alr-band .alr-article ol {
	padding-left: 1.3em;
	margin: 0 0 1em;
}

.alr-band .alr-article li {
	margin-bottom: 0.4em;
}

.alr-band .alr-article li::marker {
	color: var(--alr-ember);
}

.alr-band a:not(.wp-block-button__link) {
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.alr-band a:not(.wp-block-button__link):hover {
	text-decoration-thickness: 2px;
}

.alr-directory a,
.alr-contacts a,
.alr-rateboard a {
	text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
}

.site-footer .site-middle-footer-wrap {
	background-image: url(../img/contours-light.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right bottom;
}

.site-footer .site-middle-footer-inner-wrap {
	padding-top: clamp(48px, 6vw, 80px);
	padding-bottom: clamp(40px, 5vw, 64px);
	color: var(--alr-onlake);
	font-size: 1rem;
}

.site-footer .footer-widget-area p {
	margin: 0 0 0.8em;
}

.site-footer .alr-footer-mark {
	margin: 0 0 14px;
}

.site-footer .alr-footer-mark img {
	width: 92px;
	height: auto;
	display: block;
}

.site-footer .alr-footer-name {
	font-family: var(--alr-head);
	font-weight: 800;
	font-size: 1.4rem;
	line-height: 1.2;
	color: var(--alr-white);
}

.site-footer .alr-footer-title {
	font-family: var(--alr-head);
	font-size: 1.1rem;
	font-weight: 800;
	color: var(--alr-white);
	margin: 0 0 12px;
}

.site-footer ul.alr-footer-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-footer .alr-footer-list li {
	padding: 7px 0;
	border-bottom: 1px solid color-mix(in srgb, var(--alr-white) 14%, transparent);
	line-height: 1.4;
}

.site-footer .alr-footer-list a,
.site-footer .footer-widget-area a {
	color: var(--alr-white);
	text-decoration: underline;
	text-decoration-color: color-mix(in srgb, var(--alr-white) 45%, transparent);
	text-underline-offset: 3px;
}

.site-footer .alr-footer-list a:hover {
	text-decoration-color: var(--alr-white);
}

.site-footer .site-bottom-footer-inner-wrap {
	border-top: 1px solid color-mix(in srgb, var(--alr-white) 18%, transparent);
}

.site-footer .site-bottom-footer-wrap {
	color: color-mix(in srgb, var(--alr-white) 75%, transparent);
	font-family: var(--alr-head);
	font-size: 0.95rem;
}

@media (max-width: 1199px) {
	.alr-band ul.alr-ruled {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.alr-dir-grid > .wp-block-group__inner-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.alr-band .wp-block-columns {
		gap: 40px;
	}

	.alr-band .wp-block-columns > .wp-block-column.alr-aside {
		position: static;
	}

	.alr-band .alr-split-flip > .wp-block-column.alr-split-media {
		order: 2;
	}

	.alr-hero-cabin .wp-block-columns > .wp-block-column.alr-hero-media {
		order: -1;
	}

	.alr-band p.alr-plaque {
		margin: 0;
		width: 128px;
		font-size: 5.5rem;
	}

	.alr-band ul.alr-terms {
		grid-template-columns: 1fr;
	}

	.alr-strip,
	.alr-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.alr-gallery figure:last-child:nth-child(3n + 2) {
		grid-column: auto;
	}

	.alr-gallery figure:last-child:nth-child(3n + 2) img {
		aspect-ratio: 3 / 2;
	}

	.alr-gallery figure:last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}

	.alr-gallery figure:last-child:nth-child(odd) img {
		aspect-ratio: 3 / 1;
	}
}

@media (max-width: 599px) {
	.alr-band ul.alr-ruled,
	.alr-dir-grid > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.alr-strip,
	.alr-gallery {
		grid-template-columns: 1fr;
	}

	.alr-gallery figure:last-child:nth-child(odd) img {
		aspect-ratio: 3 / 2;
	}

	.alr-stack {
		grid-template-columns: 1fr;
	}

	.alr-sc-row {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.alr-sc-axis .alr-sc-label {
		display: none;
	}

	.alr-specs li {
		grid-template-columns: 1fr;
		gap: 2px;
	}

	.alr-band :is(.alr-rateboard, .alr-budget) thead {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	.alr-band :is(.alr-rateboard, .alr-budget) tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: baseline;
		gap: 4px 16px;
		padding: 12px 0;
		border-bottom: 1px dotted var(--alr-rule);
	}

	.alr-band :is(.alr-rateboard, .alr-budget) tbody tr:first-child {
		border-top: 2px solid var(--alr-ink);
	}

	.alr-band :is(.alr-rateboard, .alr-budget) tr > td {
		display: block;
		padding: 0;
		border: 0;
		width: auto;
	}

	.alr-band .alr-rateboard tr:has(> td:nth-child(3)) > td:first-child,
	.alr-band .alr-budget tr > td:first-child {
		flex-basis: 100%;
		margin-bottom: 2px;
	}

	.alr-band .alr-rateboard td:last-child {
		white-space: normal;
		margin-left: auto;
		text-align: right;
	}

	.alr-band .alr-rateboard td:not(:first-child):not(:last-child) {
		white-space: normal;
	}

	.alr-band .alr-rateboard td:nth-child(2):not(:last-child):not(:empty)::before,
	.alr-band .alr-budget td:not(:first-child)::before {
		content: attr(data-label) " ";
		font-family: var(--alr-head);
		font-size: 0.85rem;
		font-weight: 600;
		color: var(--alr-muted);
	}

	.alr-band .alr-budget tr > td:not(:first-child) {
		flex-basis: 100%;
		display: flex;
		justify-content: space-between;
		gap: 12px;
	}

}

@media (prefers-reduced-motion: no-preference) {
	.alr-band .wp-block-button__link {
		transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
	}

	.alr-cabins li > a strong {
		transition: background-color 0.18s ease;
	}
}
