:root {
	--mattina-navy: #07131f;
	--mattina-navy-soft: #0d1d2b;
	--mattina-ink: #151d26;
	--mattina-gold: #d7a33d;
	--mattina-gold-dark: #b78023;
	--mattina-cream: #f7f5f0;
	--mattina-line: #ded8cd;
	--mattina-muted: #65707a;
	--mattina-white: #fff;
	--mattina-serif: Georgia, "Times New Roman", serif;
	--mattina-sans: "Open Sans", Arial, sans-serif;
	--mattina-shadow: 0 18px 45px rgba(5, 16, 26, .11);
}

html { scroll-behavior: smooth; }
body {
	background: var(--mattina-cream);
	color: var(--mattina-ink);
	font-family: var(--mattina-sans);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.7;
}
body, button, input, select, optgroup, textarea { font-family: var(--mattina-sans); }
h1, h2, h3, h4, h5, h6 {
	color: var(--mattina-ink);
	font-family: var(--mattina-serif);
	font-weight: 700;
	letter-spacing: -.025em;
}
a { color: var(--mattina-gold-dark); }
a:hover, a:focus { color: var(--mattina-gold); }
.container { width: min(1180px, calc(100% - 40px)); max-width: none; }
#content.site-content { background: var(--mattina-cream); }

/* Header and navigation */
.mattina-site-header,
.mattina-site-header .nav-classic {
	position: relative;
	z-index: 100;
	border: 0;
	background: var(--mattina-navy) !important;
}
.mattina-site-header .nav-classic { border-bottom: 1px solid rgba(215, 163, 61, .22); }
.mattina-header-inner {
	display: flex;
	min-height: 108px;
	align-items: center;
	justify-content: space-between;
	gap: 34px;
}
.mattina-site-header .site-branding { flex: 0 1 520px; margin: 0; }
.mattina-brand {
	display: inline-flex;
	align-items: center;
	gap: 17px;
	color: var(--mattina-white) !important;
	text-decoration: none;
}
.mattina-brand-mark {
	display: block;
	width: 72px;
	height: 56px;
	flex: 0 0 72px;
}
.mattina-brand-mark svg,
.mattina-footer-cta__brand svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: none;
	stroke: var(--mattina-gold);
	stroke-linecap: square;
	stroke-linejoin: miter;
	stroke-width: 2;
}
.mattina-brand-copy { display: grid; gap: 4px; }
.mattina-brand .site-title {
	color: var(--mattina-white);
	font-family: var(--mattina-sans);
	font-size: 24px;
	font-weight: 800;
	letter-spacing: .1em;
	line-height: 1.05;
	text-transform: uppercase;
}
.mattina-brand .site-description {
	margin: 0;
	color: var(--mattina-gold);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.2;
	text-transform: uppercase;
}
.mattina-site-header .nav-menu { margin-left: auto; }
.mattina-header-phone {
	display: grid;
	min-width: 145px;
	padding: 10px 13px;
	border: 1px solid rgba(215, 163, 61, .52);
	border-radius: 2px;
	color: var(--mattina-white);
	line-height: 1.15;
	text-decoration: none;
}
.mattina-header-phone span { color: var(--mattina-gold); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.mattina-header-phone strong { margin-top: 4px; color: var(--mattina-white); font-size: 14px; white-space: nowrap; }
.mattina-header-phone:hover,
.mattina-header-phone:focus { border-color: var(--mattina-gold); background: rgba(215, 163, 61, .1); color: var(--mattina-white); }
.mattina-site-header .box-header-nav .main-menu { display: flex; align-items: center; gap: 8px; margin: 0; }
.mattina-site-header .box-header-nav .main-menu > .menu-item > a {
	position: relative;
	margin: 0;
	padding: 41px 13px 38px;
	color: rgba(255, 255, 255, .9);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .025em;
	text-transform: none;
}
.mattina-site-header .box-header-nav .main-menu > .menu-item > a:after {
	position: absolute;
	bottom: 27px;
	left: 13px;
	width: 0;
	height: 2px;
	background: var(--mattina-gold);
	content: "";
	transition: width .2s ease;
}
.mattina-site-header .box-header-nav .main-menu > .menu-item:hover > a:after,
.mattina-site-header .box-header-nav .main-menu > .current-menu-item > a:after,
.mattina-site-header .box-header-nav .main-menu > .current-menu-ancestor > a:after { width: calc(100% - 26px); }
.mattina-site-header .box-header-nav .main-menu > .menu-item:hover > a,
.mattina-site-header .box-header-nav .main-menu > .current-menu-item > a,
.mattina-site-header .box-header-nav .main-menu > .current-menu-ancestor > a { color: var(--mattina-gold); opacity: 1; }
.mattina-site-header .box-header-nav .main-menu .sub-menu {
	min-width: 230px;
	border: 1px solid rgba(215, 163, 61, .28);
	border-top: 3px solid var(--mattina-gold);
	background: var(--mattina-navy-soft);
	box-shadow: 0 18px 35px rgba(0, 0, 0, .28);
}
.mattina-site-header .box-header-nav .main-menu .sub-menu a {
	padding: 13px 18px;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
	color: rgba(255, 255, 255, .88);
	font-size: 13px;
}
.mattina-site-header .box-header-nav .main-menu .sub-menu a:hover { color: var(--mattina-gold); }

/* Home hero */
.mattina-home .sp-banner-wrapper { background: var(--mattina-navy); }
.mattina-home .banner-slider .slider-item { min-height: 650px; background-position: center; }
.mattina-home .banner-slider .slider-item:before {
	background: linear-gradient(90deg, rgba(3, 13, 23, .94) 0%, rgba(3, 13, 23, .76) 42%, rgba(3, 13, 23, .22) 76%, rgba(3, 13, 23, .08) 100%);
	opacity: 1;
}
.mattina-home .banner-slider .banner-table { min-height: 650px; }
.mattina-home .banner-slider .banner-table-cell { text-align: left; }
.mattina-home .banner-slider .cl-center-content { max-width: 760px; margin-left: 0 !important; }
.mattina-home .banner-slider .slider-content { max-width: 720px; padding: 80px 0; text-align: left; }
.mattina-home .banner-slider .slider-content .slider-title {
	position: relative;
	margin: 0 0 28px;
	padding-bottom: 27px;
	color: var(--mattina-white);
	font-family: var(--mattina-serif);
	font-size: clamp(44px, 6vw, 76px);
	font-weight: 700;
	letter-spacing: -.035em;
	line-height: 1.02;
	text-shadow: 0 4px 24px rgba(0, 0, 0, .35);
}
.mattina-home .banner-slider .slider-content .slider-title:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 68px;
	height: 3px;
	background: var(--mattina-gold);
	content: "";
}
.mattina-home .banner-slider .slider-content p {
	max-width: 650px;
	margin: 0 0 30px;
	color: rgba(255, 255, 255, .88);
	font-size: clamp(17px, 2vw, 21px);
	line-height: 1.55;
}
.mattina-home .banner-slider .slider-content .btn-area .btn,
.mattina-home .banner-slider .slider-content .btn-area .btn-border {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	gap: 18px;
	padding: 14px 24px;
	border: 1px solid var(--mattina-gold);
	border-radius: 2px;
	background: var(--mattina-gold);
	color: var(--mattina-navy);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.mattina-home .banner-slider .slider-content .btn-area .btn:hover { background: #e4b458; }
.mattina-home .banner-slider .owl-nav button.owl-prev,
.mattina-home .banner-slider .owl-nav button.owl-next { border-color: rgba(215, 163, 61, .7); background: rgba(7, 19, 31, .72); color: var(--mattina-gold); }

/* Shared home sections */
.mattina-home-main { background: var(--mattina-cream); }
.mattina-home-services { padding: 84px 0 92px; }
.mattina-section-heading { margin-bottom: 36px; }
.mattina-section-heading--center { text-align: center; }
.mattina-section-heading > p,
.mattina-section-heading > div > p {
	margin: 0 0 8px;
	color: var(--mattina-gold-dark);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.mattina-section-heading h1,
.mattina-section-heading h2 { margin: 0; font-size: clamp(34px, 4vw, 48px); line-height: 1.12; }
.mattina-service-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.mattina-service-card {
	position: relative;
	min-height: 275px;
	padding: 34px 26px 30px;
	border: 1px solid var(--mattina-line);
	border-radius: 3px;
	background: rgba(255, 255, 255, .72);
	text-align: center;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.mattina-service-card:hover { transform: translateY(-5px); border-color: var(--mattina-gold); box-shadow: var(--mattina-shadow); }
.mattina-service-card__icon {
	display: grid;
	width: 62px;
	height: 62px;
	margin: 0 auto 25px;
	place-items: center;
	border: 1px solid var(--mattina-gold);
	color: var(--mattina-gold-dark);
	font-family: var(--mattina-serif);
	font-size: 22px;
	font-weight: 700;
}
.mattina-service-card h2 { min-height: 2.45em; margin: 0 0 27px; font-size: 24px; line-height: 1.2; }
.mattina-service-card a {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	color: var(--mattina-gold-dark);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .1em;
	text-decoration: none;
	text-transform: uppercase;
}
.mattina-service-card a span { font-size: 19px; font-weight: 400; }
.mattina-home-properties { padding: 75px 0 84px; background: var(--mattina-navy); }
.mattina-section-heading--light { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.mattina-section-heading--light h2 { color: var(--mattina-white); }
.mattina-section-heading--light > a {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 11px 18px;
	border: 1px solid var(--mattina-gold);
	color: var(--mattina-white);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	text-decoration: none;
	text-transform: uppercase;
}
.mattina-section-heading--light > a:hover { background: var(--mattina-gold); color: var(--mattina-navy); }
.mattina-home-property-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; }
.mattina-home-property-card { overflow: hidden; margin: 0; border: 1px solid rgba(215, 163, 61, .45); border-radius: 3px; background: var(--mattina-navy-soft); }
.mattina-home-property-card__media { display: block; height: 240px; overflow: hidden; background: #162331; }
.mattina-home-property-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.mattina-home-property-card.post-442 .mattina-home-property-card__media img { object-fit: contain; background: #1c2935; }
.mattina-home-property-card:hover img { transform: scale(1.035); }
.mattina-home-property-card__body { padding: 22px 22px 25px; }
.mattina-home-property-card__body p { margin: 0 0 6px; color: var(--mattina-gold); font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.mattina-home-property-card__body h3 { margin: 0; font-size: 25px; line-height: 1.2; }
.mattina-home-property-card__body h3 a { color: var(--mattina-white); text-decoration: none; }
.mattina-home-original { padding: 84px 0; background: var(--mattina-cream); }
.mattina-home-original .wp-block-cover { min-height: 460px; border: 1px solid var(--mattina-line); box-shadow: var(--mattina-shadow); }
.mattina-home-original .wp-block-cover h2,
.mattina-home-original .wp-block-cover h3 { font-family: var(--mattina-serif); }

/* Interior page headers and content */
.breadcrumb {
	min-height: 250px;
	margin: 0;
	padding: 70px 0;
	background-color: var(--mattina-navy) !important;
	background-position: center !important;
	background-size: cover !important;
	color: var(--mattina-white);
}
.breadcrumb:before { background: linear-gradient(90deg, rgba(4, 15, 25, .96), rgba(4, 15, 25, .78)); opacity: 1; }
.breadcrumb .breadcrumb_wrapper { position: relative; min-height: 110px; }
.breadcrumb .entry-title,
.breadcrumb h2 { position: relative; margin: 0 0 12px; padding-bottom: 18px; color: var(--mattina-white); font-size: clamp(38px, 5vw, 58px); line-height: 1.08; }
.breadcrumb .entry-title:after,
.breadcrumb h2:after { position: absolute; bottom: 0; left: 0; width: 54px; height: 2px; background: var(--mattina-gold); content: ""; }
.breadcrumb ul { margin-top: 15px; }
.breadcrumb ul li,
.breadcrumb ul li a { color: rgba(255, 255, 255, .78); font-family: var(--mattina-sans); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.mattina-standard-page #content > .container { padding-top: 72px; padding-bottom: 84px; }
.mattina-standard-page .articlesListing > .article { margin: 0; padding: clamp(28px, 4vw, 54px); border: 1px solid var(--mattina-line); border-top: 4px solid var(--mattina-gold); border-radius: 3px; background: var(--mattina-white); box-shadow: var(--mattina-shadow); }
.mattina-standard-page .article .entry-content { color: #313a42; }
.mattina-standard-page .article .entry-content > *:first-child { margin-top: 0; }
.mattina-standard-page .article .entry-content h1,
.mattina-standard-page .article .entry-content h2 { font-size: clamp(34px, 4vw, 48px); line-height: 1.14; }
.mattina-standard-page .article .entry-content h3 { font-size: 28px; }
.mattina-standard-page .article .entry-content p { font-size: 16px; line-height: 1.8; }
.mattina-standard-page .wp-block-image img,
.mattina-standard-page .sow-image-container img { border-radius: 2px; box-shadow: 0 12px 32px rgba(7, 19, 31, .12); }
.mattina-standard-page .panel-grid-cell { min-width: 0; }
.page-id-21 .articlesListing > .article { padding: 0; border: 0; background: transparent; box-shadow: none; }
.page-id-21 .entry-content > .wp-block-columns { margin-bottom: 24px; }
.page-id-21 .entry-content > .wp-block-columns > .wp-block-column > .wp-block-columns { align-items: stretch; gap: 22px; }
.page-id-21 .entry-content > .wp-block-columns > .wp-block-column > .wp-block-columns > .wp-block-column {
	padding: 34px 25px 30px;
	border: 1px solid var(--mattina-line);
	border-top: 3px solid var(--mattina-gold);
	border-radius: 3px;
	background: var(--mattina-white);
	box-shadow: 0 12px 30px rgba(7, 19, 31, .08);
}
.page-id-21 .entry-content .wp-block-image img { height: 116px; width: auto; object-fit: contain; box-shadow: none; }
.page-id-21 .entry-content .wp-block-spacer { height: 18px !important; }
.page-id-21 .entry-content h2 { font-size: 25px; line-height: 1.2; }
.page-id-21 .entry-content h2 a { color: var(--mattina-navy); text-decoration: none; }

/* Forms */
.nf-form-cont,
.wpforms-container,
.mattina-interest-form { color: var(--mattina-ink); font-family: var(--mattina-sans); }
.nf-form-title h3,
.wpforms-title { color: var(--mattina-ink); font-family: var(--mattina-serif); font-size: 32px; }
.nf-form-content label,
.wpforms-field-label { color: var(--mattina-ink) !important; font-size: 13px !important; font-weight: 700 !important; }
.nf-form-content input:not([type="button"]):not([type="submit"]),
.nf-form-content select,
.nf-form-content textarea,
.wpforms-container input:not([type="submit"]),
.wpforms-container select,
.wpforms-container textarea {
	min-height: 48px;
	border: 1px solid #cfc9be !important;
	border-radius: 2px !important;
	background: #fff !important;
	color: var(--mattina-ink) !important;
}
.nf-form-content textarea,
.wpforms-container textarea { min-height: 150px; }
.nf-form-content input:focus,
.nf-form-content select:focus,
.nf-form-content textarea:focus,
.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus { border-color: var(--mattina-gold) !important; box-shadow: 0 0 0 3px rgba(215, 163, 61, .16); outline: 0; }
.nf-form-content input[type="button"],
.nf-form-content input[type="submit"],
.wpforms-container button[type="submit"] {
	min-height: 50px;
	padding: 13px 24px !important;
	border: 1px solid var(--mattina-gold) !important;
	border-radius: 2px !important;
	background: var(--mattina-gold) !important;
	color: var(--mattina-navy) !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* Property application pages */
.mattina-application-page .breadcrumb { display: none; }
.mattina-application-page #content { background: var(--mattina-cream); }
.mattina-application-shell { min-height: 70vh; color: var(--mattina-ink); }
.mattina-application-hero {
	padding: 46px 0 50px;
	border-bottom: 1px solid rgba(215, 163, 61, .32);
	background:
		linear-gradient(115deg, rgba(4, 15, 25, .98), rgba(12, 30, 45, .95)),
		var(--mattina-navy);
}
.mattina-application-back {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 26px;
	color: rgba(255, 255, 255, .74);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .09em;
	text-decoration: none;
	text-transform: uppercase;
}
.mattina-application-back span { color: var(--mattina-gold); font-size: 17px; }
.mattina-application-back:hover,
.mattina-application-back:focus { color: var(--mattina-white); }
.mattina-application-kicker {
	margin: 0 0 9px;
	color: var(--mattina-gold);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.mattina-application-hero h1 {
	max-width: 850px;
	margin: 0;
	color: var(--mattina-white);
	font-family: var(--mattina-serif);
	font-size: clamp(40px, 5vw, 64px);
	letter-spacing: -.035em;
	line-height: 1.04;
}
.mattina-application-body { padding: clamp(44px, 7vw, 82px) 0 clamp(64px, 9vw, 104px); }
.mattina-application-card {
	max-width: 1040px;
	margin: 0 auto;
	padding: clamp(28px, 5vw, 58px);
	border: 1px solid var(--mattina-line);
	border-top: 4px solid var(--mattina-gold);
	border-radius: 3px;
	background: var(--mattina-white);
	box-shadow: var(--mattina-shadow);
}
.mattina-application-card > .entry-content > p:first-child {
	max-width: 780px;
	margin: 0 0 34px;
	padding-bottom: 28px;
	border-bottom: 1px solid var(--mattina-line);
	color: #46515b;
	font-size: 17px;
	line-height: 1.7;
}
.mattina-application-card .nf-form-title { display: none; }
.mattina-application-card .nf-before-form-content { margin-bottom: 25px; }
.mattina-application-card .nf-form-content { max-width: none; padding: 0; }
.mattina-application-support {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	max-width: 1040px;
	margin: 22px auto 0;
	padding: 22px 25px;
	border: 1px solid var(--mattina-line);
	background: #eee9df;
}
.mattina-application-support p { margin: 0; color: #46515b; font-size: 14px; }
.mattina-application-support strong { color: var(--mattina-navy); }
.mattina-application-support a {
	flex: 0 0 auto;
	padding: 11px 18px;
	border: 1px solid var(--mattina-navy);
	color: var(--mattina-navy);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .07em;
	text-decoration: none;
	text-transform: uppercase;
}
.mattina-application-support a:hover,
.mattina-application-support a:focus { background: var(--mattina-navy); color: var(--mattina-white); }

/* Featured properties directory */
.mattina-property-directory-page .breadcrumb { display: none; }
.mattina-property-directory { background: var(--mattina-cream); color: var(--mattina-ink); }
.mattina-directory-intro { padding: 88px 0 80px; background-color: var(--mattina-navy); }
.mattina-directory-intro h1 { color: var(--mattina-white); font-family: var(--mattina-serif); letter-spacing: -.035em; }
.mattina-directory-eyebrow { color: var(--mattina-gold); font-family: var(--mattina-sans); }
.mattina-directory-results { padding-top: 82px; padding-bottom: 90px; }
.mattina-directory-heading h2 { font-family: var(--mattina-serif); }
.mattina-property-grid { gap: 28px; }
.mattina-property-card { border: 1px solid var(--mattina-line); border-radius: 3px; box-shadow: var(--mattina-shadow); }
.mattina-property-card__status { border-radius: 0; background: var(--mattina-gold); color: var(--mattina-navy); }
.mattina-property-card__type { color: var(--mattina-gold-dark); }
.mattina-property-card h3 { font-family: var(--mattina-serif); }
.mattina-property-card__facts strong { color: var(--mattina-navy); }
.mattina-card-button { border-radius: 2px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.mattina-card-button--primary { border-color: var(--mattina-gold); background: var(--mattina-gold); color: var(--mattina-navy); }
.mattina-card-button--secondary { border-color: var(--mattina-navy); color: var(--mattina-navy); }
.mattina-card-button--secondary:hover { background: var(--mattina-navy); }
.mattina-directory-cta { background: var(--mattina-navy-soft); }
.mattina-directory-cta h2 { font-family: var(--mattina-serif); }

/* Single property pages */
.mattina-property-single .breadcrumb { display: none; }
.mattina-property-page { background: var(--mattina-cream); }
.mattina-property-hero { padding: 34px 0 72px; background: var(--mattina-navy); }
.mattina-property-back { margin-bottom: 30px; color: rgba(255, 255, 255, .8); font-family: var(--mattina-sans); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.mattina-property-back span { color: var(--mattina-gold); }
.mattina-property-hero__inner { gap: clamp(34px, 5vw, 70px); }
.mattina-property-hero__media { min-height: 500px; border: 1px solid rgba(215, 163, 61, .3); border-radius: 2px; box-shadow: 0 25px 55px rgba(0, 0, 0, .34); }
.mattina-property-hero__image { min-height: 500px; }
.mattina-property-kicker { color: var(--mattina-gold); font-family: var(--mattina-sans); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.mattina-property-hero h1 { color: var(--mattina-white); font-family: var(--mattina-serif); letter-spacing: -.04em; }
.mattina-property-lead { color: rgba(255, 255, 255, .78); font-family: var(--mattina-sans); }
.mattina-property-hero__action { border-top: 3px solid var(--mattina-gold); border-radius: 2px; box-shadow: 0 18px 42px rgba(0, 0, 0, .28); }
.mattina-property-price { color: var(--mattina-navy); font-family: var(--mattina-serif); }
.mattina-property-button { border-color: var(--mattina-gold); border-radius: 2px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.mattina-property-button--primary,
.mattina-property-button--primary:hover,
.mattina-property-button--primary:focus { background: var(--mattina-gold); color: var(--mattina-navy); }
.mattina-property-button--secondary { border-color: var(--mattina-navy); color: var(--mattina-navy); }
.mattina-property-phone {
	display: grid;
	margin-top: 4px;
	color: var(--mattina-navy);
	font-size: 19px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}
.mattina-property-phone span { margin-bottom: 3px; color: var(--mattina-muted); font-size: 10px; letter-spacing: .11em; text-transform: uppercase; }
.mattina-property-phone:hover,
.mattina-property-phone:focus { color: var(--mattina-gold-dark); }
.mattina-property-content { padding-top: 78px; padding-bottom: 82px; }
.mattina-property-content > h2,
.mattina-property-content > h3 { font-family: var(--mattina-serif); }
.mattina-property-content > .wp-block-list { border-color: var(--mattina-line); }
.mattina-property-content > .wp-block-list li { border-color: var(--mattina-line); background: #fff; }
.mattina-property-content > .wp-block-list li:before { color: var(--mattina-gold-dark); }
.mattina-property-cta { background: #eee9df; border-color: var(--mattina-line); }
.mattina-property-cta h2 { font-family: var(--mattina-serif); }
.mattina-property-navigation a { color: var(--mattina-navy); font-family: var(--mattina-serif); }
.mattina-property-navigation a span { color: var(--mattina-gold-dark); font-family: var(--mattina-sans); }

/* Footer */
.mattina-footer-cta { position: relative; overflow: hidden; padding: 42px 0; border-top: 1px solid rgba(215, 163, 61, .28); background: var(--mattina-navy-soft); color: var(--mattina-white); }
.mattina-footer-cta:after { position: absolute; right: -5%; bottom: -80%; width: 45%; height: 210%; border: 1px solid rgba(215, 163, 61, .09); content: ""; transform: rotate(-18deg); }
.mattina-footer-cta__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 80px 1fr auto; align-items: center; gap: 30px; }
.mattina-footer-cta__brand { width: 72px; height: 56px; }
.mattina-footer-kicker { margin: 0 0 3px; color: var(--mattina-gold); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.mattina-footer-cta h2 { margin: 0; color: var(--mattina-white); font-size: clamp(27px, 3vw, 38px); line-height: 1.15; }
.mattina-footer-button { display: inline-flex; min-width: 190px; min-height: 52px; align-items: center; justify-content: center; gap: 22px; padding: 13px 23px; border: 1px solid var(--mattina-gold); border-radius: 2px; background: var(--mattina-gold); color: var(--mattina-navy); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.mattina-footer-button:hover { background: #e3b254; color: var(--mattina-navy); }
.mattina-site-footer { padding: 62px 0 0; background: var(--mattina-navy); color: rgba(255, 255, 255, .72); }
.mattina-footer-grid { display: grid; grid-template-columns: 1.25fr .9fr .95fr 1.05fr; gap: 48px; padding-bottom: 52px; }
.mattina-footer-wordmark { display: grid; text-decoration: none; }
.mattina-footer-wordmark strong { color: var(--mattina-white); font-size: 24px; font-weight: 800; letter-spacing: .1em; line-height: 1.1; text-transform: uppercase; }
.mattina-footer-wordmark span { margin-top: 10px; color: var(--mattina-gold); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.mattina-footer-column h2 { margin: 0 0 18px; color: var(--mattina-gold); font-family: var(--mattina-sans); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.mattina-footer-menu { margin: 0; padding: 0; list-style: none; }
.mattina-footer-menu li { margin: 0 0 6px; }
.mattina-footer-menu a { color: rgba(255, 255, 255, .76); font-size: 14px; text-decoration: none; }
.mattina-footer-menu a:hover { color: var(--mattina-gold); }
.mattina-footer-contact p { margin: 0 0 12px; font-size: 13px; line-height: 1.55; }
.mattina-footer-contact > a { display: grid; color: var(--mattina-white); text-decoration: none; }
.mattina-footer-contact > a span { color: var(--mattina-gold); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.mattina-footer-contact > a strong { margin-top: 3px; color: var(--mattina-white); font-size: 21px; white-space: nowrap; }
.mattina-footer-contact > a:hover strong,
.mattina-footer-contact > a:focus strong { color: var(--mattina-gold); }
.mattina-footer-bottom { padding: 18px 0; border-top: 1px solid rgba(255, 255, 255, .1); }
.mattina-footer-bottom p { margin: 0; color: rgba(255, 255, 255, .55); font-size: 12px; }
#back-to-top { border-color: var(--mattina-gold); background: var(--mattina-navy-soft); }
#back-to-top svg.progress-circle path { stroke: var(--mattina-gold); }

/* Parent theme mobile drawer, recolored to match the new header. */
.menu-modal.header-mobile-menu { background: var(--mattina-navy); }
.menu-modal.header-mobile-menu .menu-search-form { display: none; }
.menu-modal.header-mobile-menu button.close-nav-toggle,
.menu-modal.header-mobile-menu .sparkle-tabs button,
.menu-modal.header-mobile-menu .sparkle-tabs button.active { background: var(--mattina-navy-soft); color: var(--mattina-gold); }
.menu-modal.header-mobile-menu .modal-menu li a { border-color: rgba(255, 255, 255, .1); color: rgba(255, 255, 255, .9); }
.menu-modal.header-mobile-menu .modal-menu li.current-menu-item > a { color: var(--mattina-gold); }
.menu-modal.header-mobile-menu .modal-menu .sub-menu-toggle { border-color: rgba(255, 255, 255, .1); color: var(--mattina-gold); }

@media (max-width: 1050px) {
	.mattina-header-inner { min-height: 92px; }
	.mattina-brand-mark { width: 60px; height: 48px; flex-basis: 60px; }
	.mattina-brand .site-title { font-size: 20px; }
	.mattina-site-header .box-header-nav .main-menu > .menu-item > a { padding-right: 9px; padding-left: 9px; }
	.mattina-header-inner { gap: 18px; }
	.mattina-header-phone { min-width: 132px; padding-right: 10px; padding-left: 10px; }
	.mattina-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 992px) {
	.mattina-header-inner { min-height: 82px; }
	.mattina-site-header .site-branding { display: flex; max-width: none; flex: 1; align-items: center; justify-content: space-between; }
	.mattina-site-header button.mobile-nav-toggle { position: static; display: inline-flex; width: 46px; height: 46px; align-items: center; justify-content: center; border: 1px solid rgba(215, 163, 61, .45); border-radius: 2px; color: var(--mattina-gold); }
	.mattina-site-header .nav-menu { display: none; }
	.mattina-header-phone { display: none; }
	.showing-menu-modal .mattina-site-header .nav-menu,
	.mattina-site-header .nav-menu.toggled-on { display: block; }
	.mattina-home .banner-slider .slider-item,
	.mattina-home .banner-slider .banner-table { min-height: 570px; }
	.mattina-home-property-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mattina-home-property-card:last-child { grid-column: 1 / -1; }
	.mattina-footer-grid { grid-template-columns: 1.25fr 1fr 1fr; gap: 38px; }
	.mattina-footer-contact { grid-column: 2 / -1; }
}

@media (max-width: 782px) {
	.container { width: min(100% - 30px, 1180px); }
	.mattina-application-hero { padding: 34px 0 38px; }
	.mattina-application-back { margin-bottom: 20px; }
	.mattina-application-card { padding: 26px 20px; }
	.mattina-application-support { align-items: flex-start; flex-direction: column; }
	.mattina-brand { gap: 12px; }
	.mattina-brand-mark { width: 52px; height: 42px; flex-basis: 52px; }
	.mattina-brand .site-title { font-size: 17px; }
	.mattina-brand .site-description { font-size: 10px; }
	.mattina-home .banner-slider .slider-item,
	.mattina-home .banner-slider .banner-table { min-height: 520px; }
	.mattina-home .banner-slider .slider-content { padding: 65px 0; }
	.mattina-home .banner-slider .slider-content .slider-title { font-size: clamp(39px, 11vw, 58px); }
	.mattina-home-services,
	.mattina-home-original { padding: 62px 0; }
	.mattina-section-heading--light { align-items: flex-start; flex-direction: column; }
	.mattina-home-properties { padding: 62px 0 68px; }
	.mattina-home-property-grid { grid-template-columns: 1fr; }
	.mattina-home-property-card:last-child { grid-column: auto; }
	.breadcrumb { min-height: 210px; padding: 55px 0; }
	.mattina-standard-page #content > .container { padding-top: 48px; padding-bottom: 58px; }
	.mattina-footer-cta__inner { grid-template-columns: 62px 1fr; }
	.mattina-footer-button { grid-column: 1 / -1; width: 100%; }
	.mattina-footer-grid { grid-template-columns: 1fr 1fr; }
	.mattina-footer-about { grid-column: 1 / -1; }
	.mattina-footer-contact { grid-column: auto; }
}

@media (max-width: 560px) {
	.container { width: min(100% - 24px, 1180px); }
	.mattina-brand-mark { width: 46px; height: 38px; flex-basis: 46px; }
	.mattina-brand .site-title { font-size: 14px; letter-spacing: .07em; }
	.mattina-brand .site-description { letter-spacing: .08em; }
	.mattina-home .banner-slider .slider-item { background-position: 62% center; }
	.mattina-home .banner-slider .slider-item:before { background: rgba(3, 13, 23, .72); }
	.mattina-service-grid { grid-template-columns: 1fr; }
	.mattina-service-card { min-height: 240px; }
	.mattina-property-hero__media,
	.mattina-property-hero__image { min-height: 330px; }
	.mattina-footer-cta__brand { display: none; }
	.mattina-footer-cta__inner { grid-template-columns: 1fr; }
	.mattina-footer-button { grid-column: auto; }
	.mattina-footer-grid { grid-template-columns: 1fr; gap: 32px; }
	.mattina-footer-about { grid-column: auto; }
}

/* Contact page phone option */
.mattina-contact-phone {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 22px;
	margin: 0 0 34px;
	padding: 24px 26px;
	border-top: 3px solid var(--mattina-gold);
	background: var(--mattina-navy);
	box-shadow: var(--mattina-shadow);
}
.mattina-contact-phone__eyebrow { color: var(--mattina-gold); font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.mattina-contact-phone strong { color: var(--mattina-white); font-family: var(--mattina-serif); font-size: 23px; }
.mattina-contact-phone p { margin: 2px 0 0; color: rgba(255, 255, 255, .68); font-size: 13px; }
.mattina-contact-phone > a { padding: 12px 16px; border: 1px solid var(--mattina-gold); color: var(--mattina-white); font-size: 19px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.mattina-contact-phone > a:hover,
.mattina-contact-phone > a:focus { background: var(--mattina-gold); color: var(--mattina-navy); }

@media (max-width: 782px) {
	.mattina-contact-phone { grid-template-columns: 1fr; gap: 12px; }
	.mattina-contact-phone > a { text-align: center; }
}
