@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Montserrat:wght@400;500;600;700&display=swap");

* {
	box-sizing:border-box;
}

html {
	scroll-behavior:smooth;
	overflow-x:hidden;
}

body {
	margin:0;
	background:#ffffff;
	overflow-x:hidden;
}

img {
	max-width:100%;
}

button,
a {
	-webkit-tap-highlight-color:transparent;
}

button:focus-visible,
a:focus-visible {
	outline:3px dotted #a307fc;
	outline-offset:4px;
}

.bm-skip-link {
	position:fixed;
	top:12px;
	left:12px;
	z-index:5000;
	padding:12px 16px;
	border:2px solid #ffffff;
	background:#000000;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:15px;
	font-weight:700;
	line-height:20px;
	text-decoration:none;
	transform:translateY(-180%);
	transition:transform .15s ease-in-out;
}

.bm-skip-link:focus,
.bm-skip-link:focus-visible {
	transform:translateY(0);
	outline:3px solid #ffffff;
	outline-offset:3px;
}

#bm-main:focus {
	outline:none;
}

.bm-site-header {
	position:fixed;
	top:0;
	left:0;
	z-index:1000;
	width:100%;
	background:#000000e8;
	border-bottom:1px solid #ffffff26;
	backdrop-filter:blur(14px);
	-webkit-backdrop-filter:blur(14px);
}

.bm-header-inner {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:22px;
	width:min(1320px,90%);
	min-height:82px;
	margin:0 auto;
}

.bm-header-brand {
	display:flex;
	flex-direction:column;
	flex:0 0 auto;
	color:#ffffff;
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:27px;
	font-weight:600;
	line-height:24px;
	letter-spacing:.01em;
	text-decoration:none;
}

.bm-header-brand span {
	margin-top:5px;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:10px;
	font-weight:600;
	line-height:12px;
	letter-spacing:.19em;
	text-transform:uppercase;
}

.bm-primary-nav {
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:6px;
}

.bm-nav-link,
.bm-nav-reserve {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:10px 13px;
	border-radius:999px;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:12px;
	font-weight:600;
	line-height:18px;
	letter-spacing:.03em;
	text-decoration:none;
	white-space:nowrap;
}

.bm-nav-link {
	border:1px solid transparent;
	background:transparent;
	color:#ffffff;
}

.bm-nav-link:hover {
	border-color:#ffffff66;
	background:#ffffff0f;
	color:#ffffff;
}

.bm-nav-reserve {
	border:1px solid #ffffff;
	background:#ffffff;
	color:#000000;
}

.bm-nav-reserve:hover {
	border-color:#ffffff;
	background:#000000;
	color:#ffffff;
}

.bm-menu-toggle {
	display:none;
	min-width:82px;
	min-height:44px;
	padding:10px 16px;
	border:1px solid #ffffff;
	border-radius:999px;
	background:#000000;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:13px;
	font-weight:700;
	line-height:18px;
	cursor:pointer;
}

/* ARTICLE BANNER: SHARED ARTICLE STYLE, MAXIMUM 5 CSS INCHES */
.bm-article-hero-section {
	position:relative;
	display:flex;
	align-items:flex-end;
	justify-content:center;
	height:clamp(300px,32vw,5in);
	max-height:5in;
	margin-top: 82px;
	overflow:hidden;
	background:#000000;
}

.bm-article-hero-image {
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center center;
}

.bm-article-hero-shade {
	position:absolute;
	inset:0;
	z-index:1;
	background:linear-gradient(to bottom,#00000014,#00000099);
}

.bm-article-hero-content {
    position: absolute;
    padding: 0;
    text-align: center;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%; 
    width: min(1100px, 90%);
    z-index: 2;
}

.bm-article-hero-eyebrow {
	margin:0 0 10px;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:11px;
	font-weight:700;
	line-height:17px;
	letter-spacing:.20em;
	text-transform:uppercase;
}

.bm-article-hero-title {
	margin:0;
	color:#ffffff;
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:clamp(48px,5.3vw,76px);
	font-weight:600;
	line-height:.94;
	letter-spacing:-.025em;
}

.bm-article-hero-city {
	display:block;
	margin-top:12px;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:15px;
	font-weight:700;
	line-height:20px;
	letter-spacing:.20em;
	text-transform:uppercase;
}

.bm-article-hero-lead {
	max-width:820px;
	margin:16px auto 0;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:17px;
	font-weight:500;
	line-height:28px;
}

.bm-article-content-section {
	padding:94px 0 108px;
	background:#ffffff;
}

.bm-article-shell {
	width:min(1180px,90%);
	margin:0 auto;
}

.bm-article-heading {
	max-width:900px;
	margin:0 auto 56px;
	text-align:center;
}

.bm-article-eyebrow {
	margin:0 0 12px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:11px;
	font-weight:700;
	line-height:17px;
	letter-spacing:.20em;
	text-transform:uppercase;
}

.bm-article-title {
	margin:0;
	color:#000000;
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:clamp(46px,5vw,70px);
	font-weight:600;
	line-height:.98;
	letter-spacing:-.025em;
}

.bm-article-intro {
	max-width:820px;
	margin:22px auto 0;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:18px;
	font-weight:500;
	line-height:31px;
}

.bm-article-grid {
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	gap:72px;
	align-items:start;
}

.bm-article-column {
	min-width:0;
}

.bm-article-subtitle {
	margin:0 0 16px;
	color:#000000;
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:34px;
	font-weight:600;
	line-height:38px;
}

.bm-article-text {
	margin:0 0 22px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:30px;
}

.bm-article-list {
	margin:4px 0 0;
	padding-left:22px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:16px;
	font-weight:600;
	line-height:30px;
}

.bm-article-local-section {
	max-width:940px;
	margin:72px auto 0;
	padding:48px 54px;
	background:#f4efe7;
	text-align:center;
}

.bm-article-local-eyebrow {
	margin:0 0 12px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:11px;
	font-weight:700;
	line-height:17px;
	letter-spacing:.20em;
	text-transform:uppercase;
}

.bm-article-local-title {
	margin:0;
	color:#000000;
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:clamp(40px,4.3vw,60px);
	font-weight:600;
	line-height:1;
	letter-spacing:-.025em;
}

.bm-article-local-text {
	max-width:790px;
	margin:20px auto 0;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:16px;
	font-weight:400;
	line-height:29px;
}

.bm-article-actions {
	display:flex;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
	gap:22px;
	margin-top:58px;
	padding-top:36px;
	border-top:1px solid #0000001f;
}
.bm-article-button {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:48px;
	padding:12px 22px;
	border:1px solid #000000;
	border-radius:999px;
	background:#000000;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:12px;
	font-weight:700;
	line-height:18px;
	text-decoration:none;
}

.bm-article-button:hover {
	background:#ffffff;
	color:#000000;
}

.bm-article-link {
	display:inline-block;
	padding-bottom:4px;
	border-bottom:1px solid #000000;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:13px;
	font-weight:700;
	line-height:20px;
	text-decoration:none;
}

.bm-article-link:hover {
	border-bottom-color:transparent;
	color:#000000;
}

.bm-footer-section {
	padding:76px 0 42px;
	background:#f4efe7;
}

.bm-footer-shell {
	width:min(1320px,90%);
	margin:0 auto;
}

.bm-footer-top {
	display:grid;
	grid-template-columns:1.15fr 1fr .8fr;
	gap:60px;
	padding-bottom:42px;
	border-bottom:1px solid #0000002b;
}

.bm-footer-brand {
	display:block;
	margin:0;
	color:#000000;
	font-family:"Cormorant Garamond",Georgia,serif;
	font-size:38px;
	font-weight:600;
	line-height:42px;
}

.bm-footer-tagline {
	max-width:390px;
	margin:10px 0 0;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:14px;
	font-weight:400;
	line-height:25px;
}

.bm-footer-contact-title {
	margin:0 0 10px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:14px;
	font-weight:700;
	line-height:22px;
	text-transform:uppercase;
}

.bm-footer-address {
	margin:0 0 8px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:14px;
	font-weight:400;
	line-height:24px;
}

.bm-footer-phone,
.bm-footer-email,
.bm-footer-link {
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:13px;
	font-weight:600;
	line-height:22px;
	text-decoration:none;
}

.bm-footer-phone,
.bm-footer-email {
	display:block;
	margin-top:6px;
}

.bm-footer-links {
	display:grid;
	align-content:start;
	gap:8px;
}

.bm-footer-phone:hover,
.bm-footer-email:hover,
.bm-footer-link:hover {
	color:#000000;
	text-decoration:underline;
	text-underline-offset:4px;
}

.bm-footer-accessibility {
	padding:38px 0 30px;
	border-bottom:1px solid #0000002b;
}

.bm-accessibility-title {
	margin:0 0 10px;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:15px;
	font-weight:700;
	line-height:23px;
}

.bm-accessibility-text {
	margin:0;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size: 1em;
	font-weight:400;
	line-height:24px;
}

.bm-accessibility-link {
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:13px;
	font-weight:700;
	line-height:24px;
	text-decoration:underline;
	text-underline-offset:4px;
}

.bm-footer-bottom {
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:100%;
	margin:0 auto;
	padding:1em 0;
	text-align:center;
}

.bm-footer-copyright {
	display:block;
	margin:1em 0;
	color:#000000;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:22px;
	font-weight:700;
	line-height:28px;
	text-align:center;
}

.bm-footer-top-link {
	display:block;
	width:104px;
	height:44px;
	margin:1em 0;
	border:1px solid #000000;
	border-radius:999px;
	background:#000000;
	color:#ffffff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:11px;
	font-weight:700;
	line-height:42px;
	text-align:center;
	text-decoration:none;
}

.bm-footer-top-link:hover {
	background:#ffffff;
	color:#000000;
}

.bm-footer-credit {
	display:block;
	margin:1em 0;
}

.bm-footer-credit-image {
	display:block;
	width:145px;
	height:auto;
	margin:0 auto;
}

@media screen and (max-width:1180px) {
	.bm-header-inner {
		min-height:74px;
	}

	.bm-menu-toggle {
		display:inline-flex;
		align-items:center;
		justify-content:center;
	}

	.bm-primary-nav {
		position:absolute;
		top:74px;
		right:5%;
		display:none;
		width:min(370px,90vw);
		padding:16px;
		background:#000000;
		border:1px solid #ffffff33;
	}

	.bm-primary-nav.is-open {
		display:grid;
		gap:4px;
	}

	.bm-nav-link,
	.bm-nav-reserve {
		justify-content:flex-start;
		width:100%;
		border-radius:3px;
	}

	.bm-article-hero-section {
		margin-top:74px;
	}
}

@media screen and (max-width:860px) {
	.bm-article-hero-section {
		height:360px;
	}

	.bm-article-grid {
		grid-template-columns:1fr;
		gap:28px;
	}

	.bm-footer-top {
		grid-template-columns:1fr;
		gap:34px;
	}
}

@media screen and (max-width:580px) {
	.bm-header-inner {
		width:90%;
		min-height:68px;
	}

	.bm-header-brand {
		font-size:23px;
		line-height:22px;
	}

	.bm-header-brand span {
		font-size:9px;
		line-height:11px;
	}

	.bm-primary-nav {
		top:68px;
		right:5%;
	}

	.bm-article-hero-section {
		height:310px;
		margin-top:68px;
	}

	.bm-article-hero-content {
		width:92%;
		padding:28px 8px 50px;
	}

	.bm-article-hero-title {
		font-size:48px;
	}

	.bm-article-hero-lead {
		font-size:14px;
		line-height:24px;
	}

	.bm-article-shell,
	.bm-footer-shell {
		width:90%;
	}

	.bm-article-content-section {
		padding:72px 0 82px;
	}

	.bm-article-title {
		font-size:44px;
	}

	.bm-article-intro,
	.bm-article-text,
	.bm-article-list {
		font-size:15px;
		line-height:27px;
	}

	.bm-article-actions {
		align-items:flex-start;
		justify-content:flex-start;
		flex-direction:column;
		gap:18px;
	}

	.bm-article-local-section {
		padding:38px 24px;
	}

	.bm-article-local-title {
		font-size:40px;
	}

	.bm-article-local-text {
		font-size:15px;
		line-height:27px;
	}

	.bm-footer-brand {
		font-size:34px;
		line-height:38px;
	}

	.bm-footer-copyright {
		font-size:20px;
		line-height:26px;
	}
}
