/*
Theme Name: Miramar Corporate
Theme URI: https://miramar.co.jp/
Author: Miramar Japan
Description: A refined full-site editing theme for a premium Japan chauffeur and golf travel company.
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: miramar-corporate
Tags: block-patterns, full-site-editing, wide-blocks, translation-ready
*/

:root {
	--miramar-shadow: 0 18px 60px rgba(10, 28, 24, 0.12);
}

/* Travel Collection case-study status shared across the three languages. */
.mir-journey-a .mir-case-study-eyebrow,
.mir-cross-japan .mir-case-study-eyebrow,
.mir-osaka-tokyo .mir-case-study-eyebrow,
.mir-osaka-tokyo .mir-case-study-category {
	margin: 0 0 18px;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	line-height: 1.5;
	text-transform: uppercase;
}

.mir-osaka-tokyo .mir-case-study-category {
	margin-top: -10px;
	opacity: .78;
}

.mir-journey-a .mir-case-study-status,
.mir-cross-japan .mir-case-study-status,
.mir-osaka-tokyo .mir-case-study-status {
	max-width: 48rem;
	margin-top: 22px;
	padding: 15px 18px;
	border-left: 3px solid #b79755;
	background: rgba(247, 244, 237, .94);
	color: #15334a;
}

.mir-journey-a .mir-case-study-status p,
.mir-cross-japan .mir-case-study-status p,
.mir-osaka-tokyo .mir-case-study-status p {
	max-width: none;
	margin: 0;
	color: inherit;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.65;
}

.mir-travel-collection .journey-status {
	display: block;
	margin-bottom: 8px;
	color: #7b6844;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .13em;
	line-height: 1.45;
}

.mir-case-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.mir-case-cta-actions .button-secondary,
.mir-case-cta-actions .mir-ot-button-secondary {
	background: transparent;
	box-shadow: inset 0 0 0 1px currentColor;
}

.mir-case-current-note,
.family-current-options {
	margin-top: 16px;
	font-size: 14px;
	line-height: 1.6;
}

@media (max-width: 640px) {
	.mir-case-cta-actions {
		display: grid;
	}
	.mir-case-cta-actions a {
		width: 100%;
		justify-content: center;
		text-align: center;
	}
	.mir-journey-a .mir-case-study-status,
	.mir-cross-japan .mir-case-study-status,
	.mir-osaka-tokyo .mir-case-study-status {
		padding: 13px 15px;
	}
}

/* Phase 1 corporate accessibility refinements. */
.miramar-corporate-audience .miramar-eyebrow {
	color: #80601f;
}

@media (max-width: 740px) {
	footer .wp-block-list a {
		display: inline-flex;
		align-items: center;
		min-height: 24px;
	}
}

/* Phase 1 corporate positioning: restrained audience and service hierarchy. */
.miramar-corporate-audience {
	border-top: 1px solid #d9dde3;
	border-bottom: 1px solid #d9dde3;
}

.miramar-corporate-audience > .wp-block-group {
	padding-block: clamp(3.5rem, 7vw, 6.5rem);
}

.miramar-corporate-audience h2 {
	max-width: 19em;
}

.miramar-corporate-service-grid {
	gap: 0;
	margin-top: clamp(2rem, 4vw, 3.5rem);
	border-top: 1px solid #bfc6cf;
	border-bottom: 1px solid #bfc6cf;
}

.miramar-corporate-service-grid > .wp-block-column {
	padding: clamp(1.5rem, 3vw, 2.5rem);
	border-right: 1px solid #bfc6cf;
}

.miramar-corporate-service-grid > .wp-block-column:last-child {
	border-right: 0;
}

.miramar-corporate-service-grid a {
	color: #002fa7;
	font-weight: 700;
	text-underline-offset: .25em;
}

.miramar-phase1-context {
	max-width: 1120px;
	margin-block: clamp(2rem, 5vw, 4rem);
	padding: clamp(2rem, 4vw, 3.5rem);
	border-top: 1px solid #bfc6cf;
	border-bottom: 1px solid #bfc6cf;
}

.miramar-phase1-context h2 {
	max-width: 22em;
}

.miramar-phase1-context a {
	color: #002fa7;
	font-weight: 700;
	text-underline-offset: .25em;
}

.miramar-legal-name,
.site-footer strong {
	letter-spacing: 0 !important;
}

@media (max-width: 781px) {
	.miramar-corporate-service-grid > .wp-block-column {
		border-right: 0;
		border-bottom: 1px solid #bfc6cf;
	}

	.miramar-corporate-service-grid > .wp-block-column:last-child {
		border-bottom: 0;
	}
}

/* Private Traditional Chinese blog design pilot. */
.miramar-blog-pilot {
	--blog-ink: #153f38;
	--blog-cream: #f6f0e5;
	--blog-gold: #b58a45;
	--blog-line: rgba(21, 63, 56, 0.16);
}
.miramar-blog-pilot :where(*, *::before, *::after) { box-sizing: border-box; }
.miramar-blog-pilot :where(.miramar-blog-shell) { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.miramar-blog-pilot :where(.miramar-article-shell) { width: min(780px, calc(100% - 48px)); margin-inline: auto; }
.miramar-blog-hero { padding: clamp(5.625rem, 7.5vw, 7.5rem) 0 clamp(5rem, 6.5vw, 6.5rem); background: var(--blog-cream); }
.miramar-blog-hero h1, .miramar-article-header h1 { color: var(--blog-ink); letter-spacing: -.035em; word-break: normal; line-break: strict; }
.miramar-blog-hero h1 { max-width: 780px; margin: .4rem 0 1.1rem; font-size: clamp(3rem, 5.2vw, 4.8rem); line-height: 1.08; }
.miramar-blog-hero > div > p:last-child { max-width: 730px; margin-bottom: 0; font-size: clamp(1.05rem, 1.35vw, 1.22rem); line-height: 1.75; }
.miramar-blog-kicker, .miramar-blog-section-label, .miramar-blog-category { color: var(--blog-gold); font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.miramar-blog-section { padding-block: clamp(4rem, 7vw, 7rem); }
.miramar-blog-overview .miramar-blog-section { padding-block: clamp(5rem, 6.5vw, 6.875rem); }
.miramar-blog-section-label { margin-bottom: 1.4rem; }
.miramar-blog-entrances { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--blog-line); }
.miramar-blog-entrance { min-width: 0; padding: 2.25rem 2rem 2.5rem 0; border-right: 1px solid var(--blog-line); }
.miramar-blog-entrance + .miramar-blog-entrance { padding-left: 2rem; }
.miramar-blog-entrance:last-child { padding-right: 0; border-right: 0; }
.miramar-blog-entrance > p { margin: 0 0 1.6rem; color: var(--blog-gold); font-size: .72rem; letter-spacing: .12em; }
.miramar-blog-entrance h2 { margin: 0 0 .75rem; color: var(--blog-ink); font-size: clamp(1.25rem, 1.7vw, 1.55rem); line-height: 1.35; }
.miramar-blog-entrance span { display: block; max-width: 20rem; color: #526862; font-size: .95rem; line-height: 1.65; }
.miramar-blog-feature { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(320px, .8fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.miramar-blog-image-placeholder { position: relative; aspect-ratio: 16/9; overflow: hidden; margin: 0; background: radial-gradient(circle at 74% 36%, #f4d69a 0 3%, transparent 3.3%), linear-gradient(152deg, #8db29c 0 46%, #436f60 46% 54%, #163f38 54% 100%); }
.miramar-blog-image-line { position: absolute; left: 9%; right: 9%; bottom: 23%; height: 2px; background: rgba(255,255,255,.6); transform: rotate(-7deg); }
.miramar-blog-image-ball { position: absolute; width: 8%; aspect-ratio: 1; border-radius: 50%; right: 23%; top: 33%; background: #fffaf0; box-shadow: 0 12px 28px rgba(0,0,0,.25); }
.miramar-blog-image-placeholder figcaption { position: absolute; left: 1.25rem; bottom: 1rem; color: #fff; font-size: .65rem; letter-spacing: .1em; }
.miramar-blog-feature-copy, .miramar-blog-latest > div { min-width: 0; }
.miramar-blog-feature-copy h2, .miramar-blog-latest h2 { color: var(--blog-ink); font-size: clamp(1.75rem, 2.65vw, 2.7rem); line-height: 1.28; word-break: normal; line-break: strict; }
.miramar-blog-feature-copy > p:not(.miramar-blog-category,.miramar-blog-date) { line-height: 1.8; }
.miramar-blog-date { color: #63756f; font-size: .84rem; }
.miramar-blog-button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; margin-top: .8rem; padding: .65rem 1.2rem; border: 1px solid var(--blog-gold); background: var(--blog-gold); color: #fff; text-decoration: none; }
.miramar-blog-button.is-disabled { opacity: .78; cursor: default; }
.miramar-blog-categories { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.miramar-blog-category-card { min-height: 210px; padding: 1.5rem; border: 1px solid var(--blog-line); background: #fff; }
.miramar-blog-category-card h3 { color: var(--blog-ink); font-size: 1.25rem; word-break: keep-all; }
.miramar-blog-category-card p { min-height: 3.4em; line-height: 1.7; }
.miramar-blog-category-card span { color: #788680; font-size: .75rem; }
.miramar-blog-latest { display: grid; grid-template-columns: minmax(260px, .7fr) minmax(0, 1fr); gap: 2rem; align-items: center; padding-bottom: 2rem; border-bottom: 1px solid var(--blog-line); }
.miramar-blog-course-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.miramar-blog-course-grid article { padding: 1.5rem; border: 1px solid var(--blog-line); }
.miramar-blog-course-grid article > p { color: #788680; font-size: .7rem; letter-spacing: .08em; }
.miramar-blog-course-grid h3 { color: var(--blog-ink); font-size: 1.25rem; line-height: 1.45; }
.miramar-blog-course-grid a, .miramar-blog-directory-link a, .miramar-blog-related-empty a { color: var(--blog-ink); text-underline-offset: .2em; }
.miramar-blog-overview .miramar-blog-course-grid { gap: 1.25rem; }
.miramar-blog-overview .miramar-blog-course-card { display: flex; min-width: 0; flex-direction: column; padding: 0; background: #fff; }
.miramar-blog-course-card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.miramar-blog-course-card > div { display: flex; flex: 1; flex-direction: column; padding: 1.4rem 1.5rem 1.5rem; }
.miramar-blog-course-card .miramar-blog-course-region { margin: 0 0 .75rem; color: var(--blog-gold); font-size: .72rem; font-weight: 700; letter-spacing: .1em; }
.miramar-blog-course-card h3 { margin: 0 0 .25rem; font-size: 1.2rem; }
.miramar-blog-course-card .miramar-blog-course-ja { margin: 0 0 1rem; color: #526862; font-size: .9rem; }
.miramar-blog-course-card .miramar-blog-course-characteristic { margin: 0 0 1.25rem; color: #334c45; font-size: .93rem; line-height: 1.65; }
.miramar-blog-course-card a { margin-top: auto; align-self: flex-start; font-size: .9rem; }
.miramar-blog-directory-link { margin: 1.6rem 0 0; }
.miramar-blog-directory-link a { font-weight: 600; }
.miramar-blog-cta { padding-block: clamp(4rem, 7vw, 6rem); background: var(--blog-ink); color: #fff; }
.miramar-blog-cta h2 { max-width: 760px; color: #fff; font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1.2; }
.miramar-blog-cta p:not(.miramar-blog-section-label) { max-width: 700px; font-size: 1.08rem; line-height: 1.8; }
.miramar-blog-overview .miramar-blog-cta { padding-block: clamp(3.5rem, 5vw, 4.75rem); }
.miramar-blog-overview .miramar-blog-cta h2 { margin-block: .5rem 1rem; font-size: clamp(2rem, 3.2vw, 3rem); }
.miramar-blog-overview .miramar-blog-cta p:not(.miramar-blog-section-label) { margin-bottom: .6rem; font-size: 1rem; }
.miramar-article-header { padding: clamp(5rem, 8vw, 8rem) 0 3rem; background: var(--blog-cream); }
.miramar-article-header h1 { margin: .6rem 0 1.5rem; font-size: clamp(2.65rem, 5vw, 5rem); line-height: 1.12; }
.miramar-article-standfirst { font-size: clamp(1.18rem, 1.8vw, 1.5rem); line-height: 1.7; }
.miramar-article-byline { color: #5f706a; font-size: .9rem; }
.miramar-article-byline span { margin-left: 1rem; }
.miramar-blog-article > .miramar-article-shell > .miramar-blog-image-placeholder { margin-top: 3rem; }
.miramar-article-layout { display: grid; grid-template-columns: 210px minmax(0, 780px); gap: clamp(2rem, 5vw, 5rem); justify-content: center; padding-block: clamp(4rem, 7vw, 7rem); }
.miramar-article-toc { position: sticky; top: 110px; align-self: start; padding-left: 1rem; border-left: 2px solid var(--blog-gold); }
.miramar-article-toc p { color: var(--blog-ink); font-weight: 700; }
.miramar-article-toc ol { padding-left: 1.1rem; font-size: .85rem; line-height: 1.65; }
.miramar-article-toc a { color: #47635a; }
.miramar-article-content { min-width: 0; font-size: clamp(1.0625rem, 1.25vw, 1.1875rem); line-height: 1.85; }
.miramar-article-content h2, .miramar-article-sources h2 { margin-top: 3.4rem; color: var(--blog-ink); font-size: clamp(1.65rem, 2.5vw, 2.4rem); line-height: 1.35; word-break: normal; line-break: strict; }
.miramar-article-content p { margin-block: 0 1.35em; }
.miramar-article-content ul { padding-left: 1.25rem; }
.miramar-blog-related-empty { padding: 1.5rem; background: var(--blog-cream); }
.miramar-article-sources { padding-block: 4rem 7rem; }
.miramar-article-sources ol { padding-left: 1.2rem; line-height: 1.8; }
.miramar-article-sources a { overflow-wrap: anywhere; color: var(--blog-ink); }
@media (max-width: 1023px) {
	.miramar-blog-categories { grid-template-columns: repeat(2, 1fr); }
	.miramar-blog-feature { grid-template-columns: 1fr; }
	.miramar-article-layout { grid-template-columns: 1fr; }
	.miramar-article-toc { position: static; max-width: 780px; }
}
@media (max-width: 767px) {
	.miramar-blog-pilot :where(.miramar-blog-shell,.miramar-article-shell) { width: min(100% - 32px, 780px); }
	.miramar-blog-hero h1, .miramar-article-header h1 { font-size: clamp(2.35rem, 10vw, 3.5rem); }
	.miramar-article-header h1 { font-size: clamp(1.95rem, 8.4vw, 2.6rem); }
	.miramar-blog-categories, .miramar-blog-course-grid, .miramar-blog-latest, .miramar-blog-entrances { grid-template-columns: 1fr; }
	.miramar-blog-hero { padding-block: 4.25rem; }
	.miramar-blog-overview .miramar-blog-section { padding-block: clamp(3.5rem, 16vw, 4.5rem); }
	.miramar-blog-entrance, .miramar-blog-entrance + .miramar-blog-entrance { padding: 1.5rem 0; border-right: 0; border-bottom: 1px solid var(--blog-line); }
	.miramar-blog-entrance:last-child { border-bottom: 0; }
	.miramar-blog-entrance > p { margin-bottom: .65rem; }
	.miramar-blog-category-card { min-height: 0; }
	.miramar-blog-category-card p { min-height: 0; }
	.miramar-blog-latest { gap: 1.25rem; }
	.miramar-article-layout { padding-inline: 0; }
	.miramar-article-byline span { display: block; margin: .35rem 0 0; }
}

html {
	scroll-behavior: smooth;
}

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

a {
	text-underline-offset: 0.18em;
}

:where(.wp-site-blocks) > * {
	margin-block-start: 0;
}

:where(.wp-site-blocks) {
	padding-top: 0;
}

:where(.wp-site-blocks) > header {
	margin: 0;
}

:where(.wp-site-blocks) > header.wp-block-template-part {
	background: var(--wp--preset--color--pine);
	height: 72px;
	left: 0;
	position: relative;
	right: 0;
	top: 0;
	z-index: 20;
}

.site-header {
	background: var(--wp--preset--color--pine) !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--white);
	left: 0;
	position: relative;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 20;
}

.site-header > .wp-block-group,
.site-header {
	align-items: center;
	box-sizing: border-box;
	height: 72px;
	min-height: 72px;
	padding-bottom: 0;
	padding-top: 0;
}

.site-header::before {
	background: none;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: -1;
}

body.home :where(.wp-site-blocks) > header.wp-block-template-part {
	background: transparent;
	height: 72px;
	margin: 0;
	position: absolute;
	width: 100%;
}

body.home .site-header {
	background: transparent !important;
	position: relative;
}

body.home .site-header::before {
	background: linear-gradient(180deg, rgba(7, 20, 17, 0.48), rgba(7, 20, 17, 0));
}

body.admin-bar.home :where(.wp-site-blocks) > header.wp-block-template-part {
	top: 32px;
}

body.miramar-zh-home :where(.wp-site-blocks) > header.wp-block-template-part,
body.miramar-ja-home :where(.wp-site-blocks) > header.wp-block-template-part {
	background: transparent;
	height: 72px;
	margin: 0;
	position: absolute;
	width: 100%;
}

body.miramar-zh-home .site-header,
body.miramar-ja-home .site-header {
	background: transparent !important;
	position: relative;
}

body.miramar-zh-home .site-header::before,
body.miramar-ja-home .site-header::before {
	background: linear-gradient(180deg, rgba(7, 20, 17, 0.48), rgba(7, 20, 17, 0));
}

body.admin-bar.miramar-zh-home :where(.wp-site-blocks) > header.wp-block-template-part,
body.admin-bar.miramar-ja-home :where(.wp-site-blocks) > header.wp-block-template-part {
	top: 32px;
}

.site-header .wp-block-navigation {
	align-self: center;
	margin-left: auto;
	width: 100%;
}

.site-header .wp-block-navigation-item__content,
.site-header .wp-block-navigation-item__content:visited {
	border: 0;
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.2;
	text-transform: none;
	text-decoration: none;
	text-shadow: 0 1px 2px rgba(7, 20, 17, 0.42);
	white-space: nowrap;
}

.site-header .wp-block-navigation-item__content:focus-visible,
.site-header .wp-block-navigation__responsive-container-open:focus-visible,
.site-header .wp-block-navigation__responsive-container-close:focus-visible {
	outline: 2px solid var(--wp--preset--color--gold);
	outline-offset: 4px;
}

.site-header .wp-block-navigation__container {
	column-gap: clamp(1.375rem, 1.8vw, 1.75rem);
	flex-wrap: nowrap;
}

.site-header .miramar-language-link .wp-block-navigation-item__content {
	font-size: 0.75rem;
	font-weight: 500;
}

.site-header .wp-block-navigation__responsive-container-open {
	color: var(--wp--preset--color--white);
}

.site-header .wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--pine) !important;
	color: var(--wp--preset--color--white);
	padding: var(--wp--preset--spacing--50);
}

.site-header .wp-block-navigation__responsive-container.is-menu-open,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:visited,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	color: var(--wp--preset--color--cream) !important;
}

.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
	fill: currentColor;
}

.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--gold) !important;
}

html[lang="zh-Hant"] body,
html[lang="zh-Hant"] .wp-block-navigation,
html[lang="zh-Hant"] .forminator-ui,
html[lang="zh-Hant"] .miramar-footer {
	font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", sans-serif;
}

html[lang="zh-Hant"] h1,
html[lang="zh-Hant"] h2,
html[lang="zh-Hant"] h3,
html[lang="zh-Hant"] h4,
html[lang="zh-Hant"] h5,
html[lang="zh-Hant"] h6 {
	font-family: "Songti TC", "Noto Serif TC", "PMingLiU", serif;
}

html[lang="zh-Hant"] .forminator-ui input,
html[lang="zh-Hant"] .forminator-ui select,
html[lang="zh-Hant"] .forminator-ui textarea,
html[lang="zh-Hant"] .forminator-ui button {
	font-family: inherit;
}

.miramar-home-hero-zh h1 {
	font-size: clamp(3.25rem, 4.8vw, 4.8rem) !important;
	line-height: 1.08;
}

.miramar-home-hero-zh .miramar-zh-heading-lock {
	white-space: nowrap;
}

.miramar-home-hero-ja h1 {
	font-size: clamp(3.6rem, 4.75vw, 4.25rem) !important;
	line-break: strict;
	overflow-wrap: normal;
	word-break: keep-all;
}

.miramar-home-hero-ja .miramar-ja-hero-line {
	white-space: nowrap;
}

.miramar-zh-services .wp-block-column,
.miramar-zh-why .wp-block-column {
	display: flex;
	flex-direction: column;
}

.miramar-zh-service-list .wp-block-columns {
	flex-wrap: wrap !important;
}

.miramar-zh-service-list .wp-block-column {
	flex-basis: calc(33.333% - 1.5rem) !important;
	flex-grow: 1;
	min-width: 16rem;
}

.miramar-zh-services .wp-block-column > p:last-child {
	margin-top: auto;
}

.miramar-section,
.miramar-footer {
	padding-bottom: var(--wp--preset--spacing--60);
	padding-top: var(--wp--preset--spacing--60);
}

.miramar-home-hero {
	min-height: max(680px, 82vh);
	padding-bottom: var(--wp--preset--spacing--50);
	padding-top: clamp(7.5rem, 12vh, 9.375rem);
}

.miramar-home-hero .wp-block-cover__image-background {
	object-fit: cover;
	object-position: center center;
}

.miramar-home-hero .wp-block-cover__background {
	background: linear-gradient(90deg, rgba(8, 25, 21, 0.88) 0%, rgba(8, 25, 21, 0.72) 42%, rgba(8, 25, 21, 0.42) 62%, rgba(8, 25, 21, 0) 78%, rgba(8, 25, 21, 0) 100%) !important;
	opacity: 1;
}

.miramar-hero-content {
	margin-left: max(var(--wp--preset--spacing--30), calc((100vw - var(--wp--style--global--wide-size)) / 2));
	margin-right: auto;
	max-width: 900px;
	padding-top: 0;
	width: min(900px, calc(100% - 2rem));
}

.miramar-hero-content > * {
	max-width: 700px !important;
}

.miramar-home-hero h1 {
	font-size: clamp(4.75rem, 6.2vw, 5.25rem) !important;
	font-weight: 400;
	letter-spacing: -0.035em;
	line-height: 0.95;
	margin-bottom: 2rem;
	max-width: 900px !important;
}

.miramar-home-hero .has-large-font-size {
	font-size: clamp(1.55rem, 2vw, 2.05rem) !important;
	font-weight: 400;
	line-height: 1.45;
	margin-bottom: 1.5rem;
	max-width: 690px;
}

.miramar-home-hero .miramar-hero-content > p:not(.miramar-eyebrow):not(.has-large-font-size) {
	font-size: clamp(1.05rem, 1.2vw, 1.2rem);
	line-height: 1.6;
	margin-bottom: 1.75rem;
	max-width: 620px;
}

.miramar-hero-content > * {
	margin-block-start: 0;
}

.miramar-hero-content > .wp-block-buttons {
	margin-block-end: 0;
	margin-block-start: 0;
}

.miramar-home-hero .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: var(--wp--preset--color--cream);
	color: var(--wp--preset--color--cream);
}

.miramar-home-hero .wp-block-button__link {
	align-items: center;
	display: inline-flex;
	min-height: 3.25rem;
	padding-inline: clamp(1.5rem, 2.5vw, 2.15rem);
	white-space: nowrap;
}

.miramar-editorial-section {
	padding-block: clamp(4.5rem, 7vw, 6.75rem);
}

.miramar-editorial-section > .alignwide {
	max-width: min(1180px, calc(100% - 3rem));
}

.miramar-editorial-section h2 {
	font-size: clamp(3rem, 4.4vw, 4rem) !important;
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 1.04;
}

.miramar-editorial-section h3 {
	font-size: clamp(1.45rem, 1.8vw, 1.9rem);
	line-height: 1.3;
}

.miramar-editorial-section p,
.miramar-editorial-section li {
	font-size: clamp(1rem, 1.1vw, 1.15rem);
	line-height: 1.7;
}

.miramar-editorial-section .has-large-font-size {
	font-size: clamp(1.65rem, 2.1vw, 2rem) !important;
	font-weight: 400;
	line-height: 1.5;
}

.miramar-editorial-section .has-small-font-size {
	font-size: clamp(0.875rem, 0.95vw, 1rem) !important;
	line-height: 1.6;
}

.miramar-editorial-section h2 {
	max-width: 18ch;
}

.miramar-editorial-section .miramar-eyebrow {
	font-size: 0.78rem !important;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.6;
	margin-bottom: 1.25rem;
}

.miramar-editorial-section .wp-block-columns {
	gap: clamp(2.5rem, 6vw, 6rem);
}

.miramar-editorial-image {
	margin: 0;
}

.miramar-editorial-image img {
	aspect-ratio: 4 / 5;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.miramar-key-points {
	border-top: 1px solid rgba(24, 54, 46, 0.42);
	margin-top: clamp(1.75rem, 3vw, 2.75rem);
	padding-top: 1rem;
}

.miramar-key-points > .wp-block-column {
	border-bottom: 1px solid rgba(24, 54, 46, 0.42);
	padding-block: 1rem;
}

.miramar-key-points h3,
.miramar-service-ledger h3,
.miramar-numbered-list h3 {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.02em;
}

.miramar-agency {
	background-image: linear-gradient(130deg, rgba(255, 255, 255, 0.025), transparent 56%);
	padding-block: clamp(4.25rem, 6vw, 5.75rem);
}

.miramar-agency h2,
.miramar-contact-final h2 {
	max-width: 16ch;
}

.miramar-numbered-list > * {
	border-top: 1px solid rgba(245, 241, 231, 0.42);
	margin: 0;
	padding-block: 0.65rem;
}

.miramar-numbered-list h3 {
	word-spacing: 0.35rem;
}

.miramar-numbered-list p {
	color: var(--wp--preset--color--mist);
	padding-bottom: 1rem;
}

.miramar-service-ledger {
	border-top: 1px solid rgba(24, 54, 46, 0.42);
	margin-top: clamp(2rem, 4vw, 3rem);
}

.miramar-service-ledger > .wp-block-column {
	border-right: 1px solid rgba(24, 54, 46, 0.4);
}

.miramar-service-ledger > .wp-block-column:last-child {
	border-right: 0;
}

.miramar-service-ledger > .wp-block-column > * {
	border-bottom: 1px solid rgba(24, 54, 46, 0.4);
	margin: 0;
	padding: 1rem clamp(0.5rem, 2vw, 2rem);
}

.miramar-service-ledger > .wp-block-column > p {
	min-height: 4.75rem;
	padding-top: 0;
}

.miramar-service-ledger h3::first-letter {
	color: var(--wp--preset--color--gold);
}

.miramar-detail-list {
	columns: 2;
	gap: 2.5rem;
	list-style: none;
	margin-top: 2rem;
	padding: 0;
}

.miramar-detail-list li {
	border-top: 1px solid rgba(24, 54, 46, 0.42);
	break-inside: avoid;
	padding-block: 0.8rem;
}

.miramar-planning > .wp-block-columns,
.miramar-detail > .wp-block-columns {
	align-items: flex-start;
}

.miramar-planning .miramar-editorial-image img {
	aspect-ratio: 4 / 3;
}

.miramar-detail > .wp-block-columns > .wp-block-column:first-child {
	flex-basis: 45%;
}

.miramar-detail > .wp-block-columns > .wp-block-column:last-child {
	flex-basis: 55%;
}

.miramar-detail .miramar-editorial-image img {
	aspect-ratio: 16 / 11;
}

.miramar-golf .miramar-editorial-image img {
	aspect-ratio: 16 / 11;
}

.miramar-golf {
	padding-block: clamp(4.5rem, 6vw, 6rem);
}

.miramar-golf .wp-block-columns {
	align-items: flex-start;
}

.miramar-golf .has-small-font-size {
	font-size: clamp(0.9rem, 1vw, 0.96rem) !important;
}

.miramar-golf a:not(.wp-block-button__link),
.miramar-contact-final a:not(.wp-block-button__link) {
	color: var(--wp--preset--color--cream);
}

.miramar-case-row {
	margin-top: clamp(2.25rem, 4vw, 3.5rem);
}

.miramar-case-row > .wp-block-column {
	border-top: 1px solid rgba(24, 54, 46, 0.42);
	display: flex;
	flex-direction: column;
	padding-top: 1.25rem;
}

.miramar-case-image img {
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
	width: 100%;
}

.miramar-case-number {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-bottom: 0.5rem;
	margin-top: 1.25rem;
}

/* Maintain the approved gold accent while meeting text contrast on pale surfaces. */
.miramar-editorial-section:not(.has-pine-background-color) .has-gold-color {
	color: #76551c !important;
}

.wp-block-cover .has-gold-color,
.has-pine-background-color .has-gold-color {
	color: #fff7e8 !important;
}

.miramar-contact-final a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

.site-footer a[href^="tel:"],
.site-footer a[href^="mailto:"] {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

.miramar-company-data {
	border-top: 1px solid rgba(24, 54, 46, 0.42);
}

.miramar-company-data p {
	border-bottom: 1px solid rgba(24, 54, 46, 0.4);
	display: grid;
	gap: 0.5rem;
	grid-template-columns: minmax(9rem, 34%) 66%;
	margin: 0;
	padding-block: 0.8rem;
}

.miramar-company-data strong {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.8rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.miramar-company .wp-block-column:first-child .has-large-font-size {
	max-width: 35rem;
}

.miramar-company .wp-block-column:first-child > p:not(.miramar-eyebrow) {
	max-width: 34rem;
}

.miramar-contact-final {
	background: #123f35 !important;
	padding-block: clamp(5.75rem, 7vw, 6.875rem);
}

.miramar-contact-intro {
	align-items: flex-start;
	gap: clamp(4rem, 6vw, 6rem) !important;
}

.miramar-contact-intro h2 {
	max-width: 11ch;
}

.miramar-contact-intro .has-large-font-size {
	margin-top: 2rem;
	max-width: 45rem;
}

.miramar-contact-paths {
	border-top: 1px solid rgba(245, 241, 231, 0.42);
	margin-top: clamp(2rem, 4vw, 3rem);
	padding-top: 2rem;
}

.miramar-contact-paths > .wp-block-column {
	border-right: 1px solid rgba(245, 241, 231, 0.34);
	display: flex;
	flex-direction: column;
	padding-right: clamp(1rem, 3vw, 2.5rem);
}

.miramar-contact-paths > .wp-block-column:last-child {
	border-right: 0;
}

.miramar-footer {
	background: #082b25 !important;
	border-top: 0;
	padding-block: clamp(3.5rem, 5vw, 4.5rem);
}

.miramar-footer-nav {
	display: grid;
	gap: 0.6rem;
}

.miramar-footer-nav a {
	display: block;
	text-decoration: none;
}

.miramar-footer h2 {
	font-size: clamp(2rem, 3vw, 2.75rem);
	margin-bottom: 1rem;
}

.miramar-footer h3 {
	font-size: 1.1rem;
}

.miramar-footer p {
	font-size: clamp(0.875rem, 0.95vw, 1rem);
	line-height: 1.6;
	margin-block: 0.6rem;
}

.miramar-footer > p:last-child {
	font-size: clamp(0.875rem, 0.95vw, 1rem) !important;
	margin-top: 2.25rem;
}

.miramar-footer a,
.miramar-contact-final a:not(.wp-block-button__link) {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

.miramar-travel-planning {
	background: #f5f0e6;
}

.miramar-tp-hero {
	min-height: min(820px, 88vh);
}

.miramar-tp-hero .wp-block-cover__image-background {
	object-position: center 58%;
}

.miramar-tp-hero .wp-block-cover__background {
	background: linear-gradient(90deg, rgba(8, 35, 29, 0.9) 0%, rgba(8, 35, 29, 0.7) 42%, rgba(8, 35, 29, 0.18) 72%, transparent 100%) !important;
	opacity: 1;
}

.miramar-tp-hero-inner {
	box-sizing: border-box;
	margin-left: max(1.5rem, calc((100vw - var(--wp--style--global--wide-size)) / 2));
	max-width: 760px;
	padding-block: 9rem 7rem;
}

.miramar-tp-hero h1 {
	font-size: clamp(4rem, 6vw, 5.5rem);
	font-weight: 400;
	letter-spacing: -0.035em;
	line-height: 0.97;
	max-width: 760px;
}

.miramar-tp-hero .has-large-font-size {
	font-size: clamp(1.45rem, 2vw, 1.9rem) !important;
	line-height: 1.45;
	max-width: 700px;
}

.miramar-tp-hero-inner > p:not(.miramar-eyebrow):not(.has-large-font-size) {
	font-size: clamp(1rem, 1.15vw, 1.15rem);
	line-height: 1.7;
	max-width: 650px;
}

.miramar-tp-hero .wp-block-button__link {
	align-items: center;
	display: inline-flex;
	min-height: 3.25rem;
	padding-inline: 1.75rem;
}

.miramar-tp-section {
	padding-block: clamp(4.75rem, 7vw, 7rem);
}

.miramar-tp-section > .alignwide {
	max-width: min(1180px, calc(100% - 3rem));
}

.miramar-tp-section h2 {
	font-size: clamp(3rem, 4.4vw, 4rem);
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 1.04;
	max-width: 18ch;
}

.miramar-tp-section h3 {
	font-size: clamp(1.35rem, 1.8vw, 1.8rem);
	line-height: 1.3;
}

.miramar-tp-section p,
.miramar-tp-section li {
	font-size: clamp(1rem, 1.1vw, 1.15rem);
	line-height: 1.7;
}

.miramar-tp-section .has-large-font-size {
	font-size: clamp(1.55rem, 2vw, 1.9rem) !important;
	font-weight: 400;
	line-height: 1.5;
}

.miramar-tp-section .miramar-eyebrow,
.miramar-tp-hero .miramar-eyebrow {
	font-size: 0.78rem !important;
	font-weight: 600;
	letter-spacing: 0.16em;
	line-height: 1.6;
	text-transform: uppercase;
}

.miramar-tp-split {
	align-items: flex-start;
	gap: clamp(3rem, 6vw, 6rem);
}

.miramar-tp-image {
	margin: 0;
}

.miramar-tp-image img {
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
	width: 100%;
}

.miramar-tp-editorial-grid,
.miramar-tp-services {
	border-top: 1px solid rgba(24, 54, 46, 0.44);
	gap: 0;
	margin-top: clamp(2.5rem, 5vw, 4rem);
}

.miramar-tp-editorial-grid > .wp-block-column,
.miramar-tp-services > .wp-block-column {
	border-right: 1px solid rgba(24, 54, 46, 0.4);
}

.miramar-tp-editorial-grid > .wp-block-column:last-child,
.miramar-tp-services > .wp-block-column:last-child {
	border-right: 0;
}

.miramar-tp-editorial-item {
	border-bottom: 1px solid rgba(24, 54, 46, 0.4);
	padding: 1.5rem clamp(1rem, 2.5vw, 2rem);
}

.miramar-tp-number {
	color: var(--wp--preset--color--gold);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.78rem !important;
	font-weight: 700;
	letter-spacing: 0.12em;
}

.miramar-tp-practical-list {
	columns: 2;
	gap: 2.5rem;
	list-style: none;
	margin-top: 2rem;
	padding: 0;
}

.miramar-tp-practical-list li {
	border-top: 1px solid rgba(24, 54, 46, 0.42);
	break-inside: avoid;
	padding-block: 0.75rem;
}

.miramar-tp-process {
	border-top: 1px solid rgba(245, 240, 230, 0.4);
	margin-top: 3rem;
}

.miramar-tp-process-step {
	border-bottom: 1px solid rgba(245, 240, 230, 0.38);
	display: grid;
	gap: 1.5rem;
	grid-template-columns: minmax(3rem, 0.15fr) 0.85fr;
	padding-block: 1.5rem;
}

.miramar-tp-process-step > * {
	margin-block: 0;
}

.miramar-tp-golf .miramar-tp-image img {
	aspect-ratio: 16 / 11;
}

.miramar-tp-final {
	background: #123f35 !important;
}

.miramar-tp-enquiry-list {
	columns: 2;
	gap: 2.5rem;
	margin-block: 2rem;
}

.miramar-tp-contact-links a {
	color: var(--wp--preset--color--cream);
	text-decoration-thickness: 1px;
}

.miramar-service-card {
	border-radius: 1rem;
	box-sizing: border-box;
	height: 100%;
	padding: var(--wp--preset--spacing--40);
}

.miramar-form {
	border-radius: 1rem;
	padding: var(--wp--preset--spacing--40);
}

.miramar-form-field {
	background: var(--wp--preset--color--white);
	border: 1px solid #b4beb9;
	border-radius: 0.35rem;
	color: #53605c;
	margin-block: 0 1rem;
	padding: 0.8rem 1rem;
}

.miramar-footer a,
.miramar-footer a:visited {
	color: var(--wp--preset--color--cream);
	font-weight: 600;
}

.miramar-footer a:hover,
.miramar-footer a:focus {
	color: var(--wp--preset--color--gold);
}

.site-footer a,
.site-footer a:visited,
.site-footer li::marker {
	color: var(--wp--preset--color--cream);
}

.site-footer a:hover {
	color: var(--wp--preset--color--gold);
}

.site-footer a:focus-visible {
	color: var(--wp--preset--color--cream);
	outline: 3px solid var(--wp--preset--color--gold);
	outline-offset: 3px;
}

html[lang="ja"] .site-footer .miramar-footer-links a {
	font-size: 0.925rem;
	line-height: 1.55;
	word-break: keep-all;
}

html[lang="ja"] .site-footer h4 {
	font-size: 1rem;
	line-height: 1.5;
}

@media (min-width: 1024px) {
	html[lang="ja"] .site-footer > .wp-block-columns {
		display: grid;
		grid-template-columns: minmax(0, 2fr) minmax(0, 1.25fr) minmax(0, 1.35fr) minmax(0, 1fr);
	}

	html[lang="ja"] .site-footer > .wp-block-columns > .wp-block-column {
		width: auto;
	}

	html[lang="ja"] .site-footer .miramar-footer-links a {
		overflow-wrap: normal;
		white-space: nowrap;
	}
}

@media (max-width: 1023px) {
	html[lang="ja"] .site-footer .miramar-footer-links a {
		overflow-wrap: anywhere;
		white-space: normal;
	}
}

.miramar-company-data,
.miramar-company-table,
.miramar-company-record {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Noto Sans", sans-serif;
	font-kerning: normal;
	letter-spacing: normal;
	line-height: 1.6;
}

.miramar-company-data-ja,
[data-company-language="ja"] {
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", Meiryo, "Noto Sans JP", sans-serif;
}

.miramar-company-data-zh,
[data-company-language="zh-Hant"] {
	font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", sans-serif;
}

.miramar-company-data strong,
.miramar-company-data span,
.miramar-company-table th,
.miramar-company-table td,
.miramar-company-record strong,
.miramar-company-record p,
.site-footer,
a[href^="mailto:"],
a[href^="tel:"] {
	letter-spacing: normal;
}

.miramar-company-table {
	max-width: 100%;
	overflow-x: auto;
}

.miramar-company-table table {
	table-layout: fixed;
	width: 100%;
}

.miramar-company-table th {
	font-weight: 650;
	width: 32%;
}

.miramar-company-table th,
.miramar-company-table td {
	overflow-wrap: anywhere;
	word-break: normal;
}

.miramar-company-table td {
	font-weight: 400;
}

.miramar-hero {
	min-height: min(88vh, 860px);
}

.miramar-hero .wp-block-cover__inner-container {
	display: flex;
	align-items: flex-end;
	min-height: min(88vh, 860px);
}

.miramar-eyebrow {
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.miramar-card {
	height: 100%;
	overflow: hidden;
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.miramar-card:hover {
	box-shadow: var(--miramar-shadow);
	transform: translateY(-4px);
}

.miramar-card img {
	transition: transform 500ms ease;
}

.miramar-card:hover img {
	transform: scale(1.025);
}

.miramar-stat {
	border-left: 1px solid var(--wp--preset--color--gold);
}

.miramar-icon {
	align-items: center;
	background: var(--wp--preset--color--mist);
	border-radius: 999px;
	display: inline-flex;
	height: 3rem;
	justify-content: center;
	width: 3rem;
}

.miramar-quote {
	position: relative;
}

.miramar-quote::before {
	color: var(--wp--preset--color--gold);
	content: "“";
	font-family: Georgia, serif;
	font-size: 6rem;
	left: -0.15em;
	line-height: 1;
	opacity: 0.7;
	position: absolute;
	top: -0.4em;
}

.miramar-rounded,
.miramar-rounded img {
	border-radius: 1.25rem;
}

.miramar-image-tall img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.miramar-image-landscape img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--forest);
	border-color: var(--wp--preset--color--forest);
	color: var(--wp--preset--color--cream);
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background: var(--wp--preset--color--pine);
}

.wp-block-post-template.is-layout-grid .wp-block-post {
	display: flex;
	flex-direction: column;
}

.wp-block-post-template.is-layout-grid .wp-block-post-featured-image img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

/* Travel Agency Services */
.miramar-agency-hero {
	padding-block: clamp(7.5rem, 13vw, 10rem) clamp(4.5rem, 8vw, 7rem);
}

.miramar-agency-hero .wp-block-columns,
.miramar-agency-section > .alignwide {
	max-width: min(1180px, calc(100% - 3rem));
}

.miramar-agency-hero h1 {
	font-size: clamp(3.25rem, 5.5vw, 5.6rem);
	letter-spacing: -0.025em;
	line-height: 0.98;
	margin-bottom: 1.5rem;
}

.miramar-agency-hero-image img {
	aspect-ratio: 4 / 5;
	height: min(620px, 62vh);
	object-fit: cover;
	width: 100%;
}

.miramar-agency-section {
	padding-block: clamp(4rem, 7vw, 6.5rem);
}

.miramar-agency-section h2 {
	font-size: clamp(2.4rem, 4vw, 4rem);
	line-height: 1.05;
	margin-bottom: 1.5rem;
}

.miramar-agency-operation-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}

.miramar-agency-services {
	gap: clamp(2rem, 5vw, 5rem);
	margin-top: 2.5rem;
}

.miramar-agency-service {
	border-top: 1px solid rgba(19, 55, 47, 0.24);
	padding-block: 1.4rem 1.25rem;
}

.miramar-agency-service h3 {
	font-size: clamp(1.3rem, 2vw, 1.7rem);
	margin: 0.25rem 0 0.55rem;
}

.miramar-agency-service p:last-child {
	margin-bottom: 0;
}

.miramar-agency-number {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin: 0;
}

.miramar-agency-points {
	columns: 2;
	column-gap: 2.5rem;
	margin-top: 0;
}

.miramar-agency-points li {
	break-inside: avoid;
	margin-bottom: 0.85rem;
	padding-left: 0.25rem;
}

.miramar-agency-enquiry > .alignwide {
	max-width: min(980px, calc(100% - 3rem));
}

.miramar-agency-enquiry .forminator-ui {
	margin-top: 2.5rem;
}

.miramar-agency-enquiry .forminator-ui .forminator-label {
	color: var(--wp--preset--color--pine);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.025em;
}

.miramar-agency-enquiry .forminator-ui input,
.miramar-agency-enquiry .forminator-ui select,
.miramar-agency-enquiry .forminator-ui textarea {
	border-color: rgba(19, 55, 47, 0.3) !important;
	border-radius: 0 !important;
}

.miramar-agency-enquiry .forminator-ui .forminator-button-submit {
	background: var(--wp--preset--color--gold) !important;
	border-radius: 0 !important;
	color: var(--wp--preset--color--pine) !important;
	font-weight: 700 !important;
	padding: 0.9rem 1.5rem !important;
}

/* Golf Travel */
.miramar-golf-hero {
	min-height: 760px;
}

.miramar-golf-hero .wp-block-cover__image-background {
	object-position: center center;
}

.miramar-golf-hero-inner {
	box-sizing: border-box;
	max-width: min(1180px, calc(100% - 3rem));
	padding-block: clamp(8.5rem, 14vw, 11rem) clamp(5rem, 9vw, 7rem);
	width: 100%;
}

.miramar-golf-hero-copy {
	max-width: 720px;
}

.miramar-golf-hero h1 {
	font-size: clamp(3.3rem, 6vw, 6rem);
	letter-spacing: -0.03em;
	line-height: 0.98;
	margin-bottom: 1.5rem;
}

.miramar-golf-hero .wp-block-buttons {
	margin-top: 2rem;
}

.miramar-golf-section {
	padding-block: clamp(4.5rem, 8vw, 7rem);
}

.miramar-golf-section > .alignwide {
	max-width: min(1180px, calc(100% - 3rem));
}

.miramar-golf-section h2 {
	font-size: clamp(2.5rem, 4.3vw, 4.3rem);
	line-height: 1.04;
	margin-bottom: 1.5rem;
}

.miramar-golf-editorial-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}

.miramar-golf-ledger {
	margin-top: 2.5rem;
}

.miramar-golf-ledger-item {
	border-top: 1px solid rgba(19, 55, 47, 0.25);
	padding-block: 1.35rem 1.2rem;
}

.miramar-golf-ledger-item h3 {
	font-size: clamp(1.25rem, 2vw, 1.65rem);
	margin: 0.25rem 0 0.55rem;
}

.miramar-golf-ledger-item p:last-child {
	margin-bottom: 0;
}

.miramar-golf-number {
	color: var(--wp--preset--color--gold);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	margin: 0;
}

.miramar-golf-regions > .wp-block-column {
	border-top: 1px solid rgba(19, 55, 47, 0.25);
	padding-top: 1.25rem;
}

.miramar-golf-regions h3 {
	font-size: clamp(1.3rem, 2vw, 1.7rem);
}

.miramar-golf-proof-list {
	columns: 2;
	column-gap: 3rem;
	margin-bottom: 0;
}

.miramar-golf-proof-list li {
	break-inside: avoid;
	margin-bottom: 0.85rem;
}

.miramar-golf-itineraries {
	border-block: 1px solid rgba(174, 137, 78, 0.38);
}

.miramar-golf-enquiry > .alignwide {
	max-width: min(980px, calc(100% - 3rem));
}

.miramar-golf-enquiry .forminator-ui {
	margin-top: 2.5rem;
}

.miramar-golf-enquiry .forminator-ui .forminator-label {
	color: var(--wp--preset--color--pine);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.025em;
}

.miramar-golf-enquiry .forminator-ui input,
.miramar-golf-enquiry .forminator-ui select,
.miramar-golf-enquiry .forminator-ui textarea {
	border-color: rgba(19, 55, 47, 0.3) !important;
	border-radius: 0 !important;
}

.miramar-golf-enquiry .forminator-ui .forminator-button-submit {
	background: var(--wp--preset--color--gold) !important;
	border-radius: 0 !important;
	color: var(--wp--preset--color--pine) !important;
	font-weight: 700 !important;
	padding: 0.9rem 1.5rem !important;
}

/* About */
.miramar-about-hero {
	min-height: 720px;
}

.miramar-about-hero .wp-block-cover__image-background {
	object-position: center center;
}

.miramar-about-hero-inner {
	box-sizing: border-box;
	max-width: min(1180px, calc(100% - 3rem));
	padding-block: clamp(8.5rem, 14vw, 11rem) clamp(5rem, 8vw, 7rem);
	width: 100%;
}

.miramar-about-hero-copy {
	max-width: 780px;
}

.miramar-about-hero h1 {
	font-size: clamp(3.2rem, 5.7vw, 5.8rem);
	letter-spacing: -0.03em;
	line-height: 0.98;
	margin-bottom: 1.5rem;
}

.miramar-about-section {
	padding-block: clamp(4.5rem, 8vw, 7rem);
}

.miramar-about-section > .alignwide {
	max-width: min(1180px, calc(100% - 3rem));
}

.miramar-about-section h2 {
	font-size: clamp(2.5rem, 4.3vw, 4.2rem);
	line-height: 1.04;
	margin-bottom: 1.5rem;
}

.miramar-about-ledger {
	margin-top: 2.5rem;
}

.miramar-about-ledger-item {
	border-top: 1px solid rgba(19, 55, 47, 0.25);
	padding-block: 1.35rem 1.2rem;
}

.miramar-about-ledger-item h3 {
	font-size: clamp(1.3rem, 2vw, 1.7rem);
	margin: 0.25rem 0 0.55rem;
}

.miramar-about-ledger-item p:last-child {
	margin-bottom: 0;
}

.miramar-about-step {
	border-top: 1px solid rgba(19, 55, 47, 0.25);
	display: grid;
	gap: 1.5rem;
	grid-template-columns: minmax(80px, 0.35fr) minmax(0, 1.65fr);
	padding-block: 1.5rem;
}

.miramar-about-step h3,
.miramar-about-step p {
	margin-block: 0;
}

.miramar-about-number {
	color: var(--wp--preset--color--gold);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.14em;
}

.miramar-about-company-table {
	margin-top: 2rem;
	overflow-wrap: anywhere;
}

.miramar-about-company-table table {
	border-collapse: collapse;
	width: 100%;
}

.miramar-about-company-table th,
.miramar-about-company-table td {
	border-color: rgba(19, 55, 47, 0.22);
	padding: 1rem 0.8rem;
	text-align: left;
	vertical-align: top;
}

.miramar-about-company-table th {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.78rem;
	letter-spacing: 0.045em;
	text-transform: uppercase;
	width: 30%;
}

.miramar-about-company-table a {
	overflow-wrap: anywhere;
}

.miramar-about-final {
	border-top: 1px solid rgba(174, 137, 78, 0.4);
}

/* Contact */
.miramar-contact-hero {
	padding-block: clamp(8.5rem, 14vw, 11rem) clamp(4.5rem, 7vw, 6rem);
}

.miramar-contact-hero > .alignwide,
.miramar-contact-section > .alignwide {
	max-width: min(1180px, calc(100% - 3rem));
}

.miramar-contact-hero-copy {
	max-width: 820px;
}

.miramar-contact-hero h1 {
	font-size: clamp(3.25rem, 5.8vw, 5.8rem);
	letter-spacing: -0.03em;
	line-height: 0.98;
	margin-bottom: 1.5rem;
}

.miramar-contact-section {
	padding-block: clamp(4.25rem, 7.5vw, 6.5rem);
}

.miramar-contact-section h2 {
	font-size: clamp(2.4rem, 4vw, 4rem);
	line-height: 1.05;
	margin-bottom: 1.5rem;
}

.miramar-contact-routes {
	margin-top: 2.5rem;
}

.miramar-contact-route {
	border-top: 1px solid rgba(19, 55, 47, 0.25);
	padding-block: 1.35rem 1.2rem;
}

.miramar-contact-route h3 {
	font-size: clamp(1.3rem, 2vw, 1.7rem);
	margin: 0.25rem 0 0.55rem;
}

.miramar-contact-route p:last-child {
	margin-bottom: 0;
}

.miramar-contact-direct {
	overflow-wrap: anywhere;
}

.miramar-contact-direct-row {
	border-top: 1px solid rgba(245, 241, 231, 0.24);
	display: grid;
	gap: 1.5rem;
	grid-template-columns: minmax(130px, 0.45fr) minmax(0, 1.55fr);
	padding-block: 1rem;
}

.miramar-contact-direct-row strong {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.78rem;
	letter-spacing: 0.045em;
	text-transform: uppercase;
}

.miramar-contact-enquiry > .alignwide {
	max-width: min(980px, calc(100% - 3rem));
}

.miramar-contact-enquiry .forminator-ui {
	margin-top: 2.5rem;
}

.miramar-contact-enquiry .forminator-ui .forminator-label {
	color: var(--wp--preset--color--pine);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.025em;
}

.miramar-contact-enquiry .forminator-ui input,
.miramar-contact-enquiry .forminator-ui select,
.miramar-contact-enquiry .forminator-ui textarea {
	border-color: rgba(19, 55, 47, 0.3) !important;
	border-radius: 0 !important;
}

.miramar-contact-enquiry .forminator-ui .forminator-button-submit {
	background: var(--wp--preset--color--gold) !important;
	border-radius: 0 !important;
	color: var(--wp--preset--color--pine) !important;
	font-weight: 700 !important;
	padding: 0.9rem 1.5rem !important;
}

.miramar-contact-note {
	border-top: 1px solid rgba(19, 55, 47, 0.22);
	padding-top: 1.5rem;
}

/* Privacy Policy */
.miramar-legal-hero {
	padding-block: clamp(8.5rem, 14vw, 10.5rem) clamp(4rem, 7vw, 5.5rem);
}

.miramar-legal-hero > .alignwide {
	max-width: min(960px, calc(100% - 3rem));
}

.miramar-legal-hero h1 {
	font-size: clamp(3.3rem, 6vw, 5.8rem);
	letter-spacing: -0.03em;
	line-height: 0.98;
	margin-bottom: 1.25rem;
}

.miramar-legal-document {
	padding-block: clamp(4rem, 7vw, 6rem);
}

.miramar-legal-document > .alignwide {
	max-width: min(900px, calc(100% - 3rem));
}

.miramar-legal-document h2 {
	border-top: 1px solid rgba(19, 55, 47, 0.24);
	font-size: clamp(1.7rem, 3vw, 2.45rem);
	line-height: 1.15;
	margin-top: clamp(3rem, 6vw, 4.5rem);
	padding-top: 1.35rem;
}

.miramar-legal-document h2:first-of-type {
	margin-top: 2rem;
}

.miramar-legal-document p,
.miramar-legal-document li {
	line-height: 1.75;
}

.miramar-legal-toc {
	border-block: 1px solid rgba(174, 137, 78, 0.42);
	margin-block: 2.5rem 3.5rem;
	padding-block: 1.5rem;
}

.miramar-legal-toc ul {
	columns: 2;
	column-gap: 2.5rem;
	margin-bottom: 0;
}

.miramar-legal-toc li {
	break-inside: avoid;
	margin-bottom: 0.35rem;
}

.miramar-legal-contact {
	background: var(--wp--preset--color--mist);
	border-left: 3px solid var(--wp--preset--color--gold);
	margin-top: 1.5rem;
	overflow-wrap: anywhere;
	padding: 1.5rem;
}

/* Service-page practical FAQs */
.miramar-service-faq {
	padding-block: clamp(3.5rem, 6vw, 5rem);
}

.miramar-service-faq > .alignwide {
	max-width: min(900px, calc(100% - 3rem));
}

.miramar-service-faq .wp-block-details {
	border-top: 1px solid rgba(19, 55, 47, 0.24);
	margin: 0;
	padding: 1.15rem 0;
}

.miramar-service-faq .wp-block-details:last-child {
	border-bottom: 1px solid rgba(19, 55, 47, 0.24);
}

.miramar-service-faq summary {
	color: var(--wp--preset--color--pine);
	cursor: pointer;
	font-size: clamp(1.1rem, 2vw, 1.3rem);
	font-weight: 650;
	line-height: 1.35;
}

.miramar-service-faq .wp-block-details p {
	line-height: 1.65;
	margin: 0.9rem 0 0;
	max-width: 760px;
}

@media (max-width: 781px) {
	.miramar-hero,
	.miramar-hero .wp-block-cover__inner-container {
		min-height: 76vh;
	}

	.miramar-stat {
		border-left: 0;
		border-top: 1px solid var(--wp--preset--color--gold);
		padding-top: var(--wp--preset--spacing--30);
	}

	.miramar-home-hero {
		min-height: 900px;
	}

	@media (max-width: 480px) {
		.miramar-home-hero-zh {
			min-height: 54.75rem !important;
		}

		.miramar-home-hero-zh .miramar-hero-content {
			transform: translateY(-6.125rem);
		}
	}

	.miramar-home-hero h1 {
		font-size: clamp(2.85rem, 12.5vw, 3.6rem) !important;
		line-height: 0.98;
	}

	.miramar-home-hero .wp-block-cover__image-background {
		object-position: 78% center;
	}

	.miramar-hero-content {
		margin-left: 0;
		max-width: 38rem;
	}

	.site-header > .wp-block-group {
		flex-wrap: wrap;
	}

	.site-header > .wp-block-group {
		justify-content: flex-end;
	}

	.miramar-editorial-section {
		padding-block: 4.5rem;
	}

	.miramar-editorial-section > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-editorial-section h2 {
		font-size: clamp(2.45rem, 11vw, 3.25rem) !important;
	}

	.miramar-editorial-image img {
		aspect-ratio: 4 / 3;
	}

	.miramar-detail-list {
		columns: 1;
	}

	.miramar-service-ledger > .wp-block-column {
		border-right: 0;
	}

	.miramar-service-ledger > .wp-block-column > * {
		padding-inline: 0;
	}

	.miramar-service-ledger > .wp-block-column > p {
		min-height: 0;
	}

	.miramar-company-data p {
		display: block;
	}

	.miramar-company-data strong {
		display: block;
		margin-bottom: 0.35rem;
	}

	.miramar-contact-final {
		padding-block: 4.75rem;
	}

	.miramar-contact-intro {
		gap: 1rem !important;
	}

	.miramar-contact-intro .has-large-font-size {
		margin-top: 0;
	}

	.miramar-contact-paths > .wp-block-column {
		border-bottom: 1px solid rgba(245, 241, 231, 0.22);
		border-right: 0;
		padding-block: 1.5rem;
		padding-right: 0;
	}

	.miramar-footer {
		padding-block: 3.5rem;
	}

	.miramar-tp-hero {
		min-height: 860px;
	}

	.miramar-tp-hero .wp-block-cover__image-background {
		object-position: 62% center;
	}

	.miramar-tp-hero-inner {
		margin-inline: 1rem;
		padding-block: 8rem 5rem;
		width: auto;
	}

	.miramar-tp-hero h1 {
		font-size: clamp(3rem, 13vw, 4rem);
	}

	.miramar-tp-hero .wp-block-buttons {
		align-items: stretch;
		flex-direction: column;
	}

	.miramar-tp-hero .wp-block-button,
	.miramar-tp-hero .wp-block-button__link {
		width: 100%;
	}

	.miramar-tp-section {
		padding-block: 4.5rem;
	}

	.miramar-tp-section > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-tp-section h2 {
		font-size: clamp(2.4rem, 11vw, 3.25rem);
	}

	.miramar-tp-editorial-grid > .wp-block-column,
	.miramar-tp-services > .wp-block-column {
		border-right: 0;
	}

	.miramar-tp-editorial-item {
		padding-inline: 0;
	}

	.miramar-tp-practical-list,
	.miramar-tp-enquiry-list {
		columns: 1;
	}

	.miramar-tp-process-step {
		grid-template-columns: 1fr;
		gap: 0.5rem;
	}

	.miramar-agency-hero .wp-block-columns,
	.miramar-agency-section > .alignwide,
	.miramar-agency-enquiry > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-agency-hero h1 {
		font-size: clamp(2.8rem, 13vw, 3.8rem);
	}

	.miramar-agency-hero-image img {
		height: 520px;
	}

	.miramar-agency-points {
		columns: 1;
	}

	.miramar-golf-hero {
		min-height: 820px;
	}

	.miramar-golf-hero .wp-block-cover__image-background {
		object-position: 58% center;
	}

	.miramar-golf-hero-inner,
	.miramar-golf-section > .alignwide,
	.miramar-golf-enquiry > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-golf-hero h1 {
		font-size: clamp(3rem, 13vw, 4.1rem);
	}

	.miramar-golf-hero .wp-block-buttons {
		align-items: stretch;
		flex-direction: column;
	}

	.miramar-golf-hero .wp-block-button,
	.miramar-golf-hero .wp-block-button__link {
		width: 100%;
	}

	.miramar-golf-section h2 {
		font-size: clamp(2.4rem, 11vw, 3.3rem);
	}

	.miramar-golf-proof-list {
		columns: 1;
	}

	.miramar-about-hero {
		min-height: 820px;
	}

	.miramar-about-hero .wp-block-cover__image-background {
		object-position: 62% center;
	}

	.miramar-about-hero-inner,
	.miramar-about-section > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-about-hero h1 {
		font-size: clamp(2.9rem, 12.5vw, 4rem);
	}

	.miramar-about-section h2 {
		font-size: clamp(2.4rem, 11vw, 3.25rem);
	}

	.miramar-about-step {
		gap: 0.55rem;
		grid-template-columns: 1fr;
	}

	.miramar-about-company-table table,
	.miramar-about-company-table tbody,
	.miramar-about-company-table tr,
	.miramar-about-company-table th,
	.miramar-about-company-table td {
		display: block;
		width: 100%;
	}

	.miramar-about-company-table tr {
		border-top: 1px solid rgba(19, 55, 47, 0.22);
		padding-block: 1rem;
	}

	.miramar-about-company-table th,
	.miramar-about-company-table td {
		border: 0;
		padding: 0.2rem 0;
	}

	.miramar-about-final .wp-block-buttons {
		align-items: stretch;
		flex-direction: column;
	}

	.miramar-about-final .wp-block-button,
	.miramar-about-final .wp-block-button__link {
		width: 100%;
	}

	.miramar-contact-hero > .alignwide,
	.miramar-contact-section > .alignwide,
	.miramar-contact-enquiry > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-contact-hero h1 {
		font-size: clamp(2.9rem, 12.5vw, 4rem);
	}

	.miramar-contact-section h2 {
		font-size: clamp(2.35rem, 11vw, 3.2rem);
	}

	.miramar-contact-direct-row {
		gap: 0.3rem;
		grid-template-columns: 1fr;
	}

	.miramar-contact-hero .wp-block-button,
	.miramar-contact-hero .wp-block-button__link {
		width: 100%;
	}

	.miramar-legal-hero > .alignwide,
	.miramar-legal-document > .alignwide,
	.miramar-service-faq > .alignwide {
		max-width: calc(100% - 2rem);
	}

	.miramar-legal-hero h1 {
		font-size: clamp(3rem, 14vw, 4rem);
	}

	.miramar-legal-toc ul {
		columns: 1;
	}
}

@media (max-width: 1024px) {
	.site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.site-header .wp-block-navigation__responsive-container-open {
		display: flex !important;
	}

}

@media (max-width: 782px) {
	body.admin-bar.home :where(.wp-site-blocks) > header.wp-block-template-part,
	body.admin-bar.miramar-zh-home :where(.wp-site-blocks) > header.wp-block-template-part,
	body.admin-bar.miramar-ja-home :where(.wp-site-blocks) > header.wp-block-template-part {
		top: 46px;
	}
}

@media (min-width: 782px) and (max-width: 1024px) {
	.miramar-home-hero h1 {
		font-size: clamp(3.75rem, 8vw, 4.75rem) !important;
	}

	.miramar-home-hero-zh h1 {
		font-size: clamp(3.15rem, 6.4vw, 4rem) !important;
	}

	.miramar-home-hero-ja h1 {
		font-size: clamp(3rem, 5.2vw, 3.3rem) !important;
	}
}

@media (min-width: 1025px) {
	.miramar-home-hero {
		height: 92vh;
		max-height: 980px;
		min-height: 860px;
	}

	.miramar-home-hero .wp-block-cover__inner-container {
		align-items: center;
		box-sizing: border-box;
		display: flex;
		height: 100%;
		padding-bottom: 110px;
		padding-top: 150px;
	}

	.miramar-hero-content {
		transform: translateY(-20px);
		width: 100%;
	}

	.site-header .wp-block-navigation-item__content,
	.site-header .wp-block-navigation-item__content:visited,
	.site-header .wp-block-navigation__responsive-container-content {
		font-size: 14px;
		font-weight: 500;
		line-height: 1.2;
	}

	.site-header .miramar-language-link .wp-block-navigation-item__content {
		font-size: 13px;
	}
}

body.miramar-ja {
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN",
		"Hiragino Sans", "Yu Gothic", Meiryo, "Noto Sans JP", sans-serif;
}

body.miramar-ja h1,
body.miramar-ja h2,
body.miramar-ja h3,
body.miramar-ja h4,
body.miramar-ja h5,
body.miramar-ja h6 {
	font-family: "Hiragino Mincho ProN", "Yu Mincho", YuMincho,
		"Noto Serif JP", serif;
	font-weight: 600;
	letter-spacing: 0;
}

body.miramar-ja .wp-block-navigation,
body.miramar-ja .wp-block-button,
body.miramar-ja .miramar-eyebrow,
body.miramar-ja .forminator-ui {
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN",
		"Hiragino Sans", "Yu Gothic", Meiryo, "Noto Sans JP", sans-serif;
}

body.miramar-ja .site-header .wp-block-navigation-item__content {
	white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	* {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/*
 * Phase 2 visual-parity correction — 2026-07-27
 *
 * Editorial image geometry is controlled by the module rather than by
 * WordPress intrinsic image dimensions. Content and document order are
 * intentionally unchanged.
 */

/* Homepage hero: approved split-frame crop. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
	min-height: 790px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
	width: 58%;
	height: 100%;
	max-height: 790px;
	object-fit: cover;
	object-position: 57% center;
}

/* Planning / agency spread: 16:10 desktop and tablet. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning .miramar-editorial-image {
	aspect-ratio: 16 / 10;
	max-height: 720px;
	overflow: hidden;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning .miramar-editorial-image img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center;
}

/* Operational transport feature: 5:4 desktop and tablet. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail .miramar-editorial-image {
	aspect-ratio: 5 / 4;
	max-height: 720px;
	overflow: hidden;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail .miramar-editorial-image img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center;
}

/* Fuji chapter: full-width photographic pause with fixed section height. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf {
	position: relative;
	display: flex;
	min-height: 760px;
	align-items: center;
	overflow: hidden;
	padding-block: 0;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns {
	display: block;
	width: min(1280px, calc(100% - 2 * var(--mj-editorial-gutter)));
	margin-inline: auto;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns > .wp-block-column:first-child,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf .wp-block-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf .wp-block-image img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center 56%;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: rgba(8, 43, 35, .7);
	content: "";
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns > .wp-block-column:last-child {
	position: relative;
	z-index: 2;
	width: min(620px, 44vw);
	padding-block: 80px;
}

/* Travel stories: restore the four approved editorial proportions. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-image {
	overflow: hidden;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) .wp-block-column:first-child .miramar-case-image {
	aspect-ratio: 16 / 10;
	max-height: 620px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) .wp-block-column:nth-child(2) .miramar-case-image {
	aspect-ratio: 3 / 4;
	max-height: 780px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(odd) .wp-block-column:first-child .miramar-case-image {
	aspect-ratio: 1 / 1;
	max-height: 620px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(odd) .wp-block-column:nth-child(2) .miramar-case-image {
	aspect-ratio: 16 / 10;
	max-height: 620px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-image img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center;
}

/* Representative is a normal ruled label/value row in every language. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data .miramar-company-person {
	display: grid;
	grid-template-columns: minmax(9rem, 35%) 1fr;
	font-family: var(--mj-editorial-sans);
	font-size: .875rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data .miramar-company-person span {
	font-weight: 700;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-company-table .miramar-company-person td {
	font-weight: 700;
}

/* About principal image: fixed split-frame crop, independent of intrinsic size. */
body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
	min-height: 790px !important;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
	width: 44%;
	height: 100%;
	max-height: none;
	object-fit: cover;
	object-position: center;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__inner-container > .wp-block-group {
	padding: 0 !important;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-image {
	max-height: none !important;
}

/* Guide feature: 4:5 desktop; course references remain 16:9. */
.miramar-blog-pilot .miramar-blog-image-placeholder {
	aspect-ratio: 4 / 5;
	max-height: 760px;
	overflow: hidden;
}

.miramar-blog-pilot .miramar-blog-image-placeholder img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center;
}

.miramar-blog-pilot .miramar-blog-course-card img {
	width: 100% !important;
	height: auto !important;
	max-height: 150px;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}

@media (min-width: 701px) and (max-width: 900px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		min-height: 670px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		width: 50%;
		max-height: 670px;
		object-position: 57% center;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
		min-height: 640px !important;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
		width: 50%;
		max-height: none;
	}

	.miramar-blog-pilot .miramar-blog-image-placeholder {
		aspect-ratio: 16 / 10;
		max-height: 640px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf .has-large-font-size {
		font-size: 1.125rem !important;
	}
}

@media (max-width: 700px) {
	/* Mobile hero modules are approximately square in the approved captures. */
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		width: 100%;
		height: auto;
		min-height: 330px;
		max-height: 390px;
		aspect-ratio: 1 / 1;
		object-position: 58% center;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning .miramar-editorial-image,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail .miramar-editorial-image,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(odd) .wp-block-column:first-child .miramar-case-image,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(odd) .wp-block-column:nth-child(2) .miramar-case-image,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) .wp-block-column:first-child .miramar-case-image,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) .wp-block-column:nth-child(2) .miramar-case-image {
		aspect-ratio: 4 / 3;
		max-height: 430px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) :where(.miramar-planning, .miramar-detail) > .wp-block-columns > .wp-block-column {
		width: 100%;
		flex-basis: auto !important;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf {
		min-height: 690px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns {
		width: 100%;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf .wp-block-image img {
		object-position: 62% center;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns > .wp-block-column:last-child {
		width: auto;
		padding: 150px 24px 66px;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
		min-height: 0;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
		width: 100%;
		height: auto;
		min-height: 260px;
		max-height: 430px;
		aspect-ratio: 4 / 3;
		object-position: center;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-step > p:first-child {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-step h3,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-step > p:last-child {
		grid-column: 2;
	}

	.miramar-blog-pilot .miramar-blog-image-placeholder {
		aspect-ratio: 4 / 3;
		max-height: 430px;
	}

	.miramar-blog-pilot .miramar-blog-course-card img {
		max-height: 96px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data .miramar-company-person {
		grid-template-columns: 36% 1fr;
		font-size: .75rem;
	}
}

.miramar-course-hero {
	background: #12392f;
	color: #fffaf0;
	display: grid;
	min-height: 620px;
	overflow: hidden;
	position: relative;
}

.miramar-course-breadcrumb {
	align-items: center;
	background: #fff;
	color: #596d65;
	display: flex;
	flex-wrap: wrap;
	font-size: .84rem;
	gap: .5rem;
	margin-inline: auto;
	max-width: 1200px;
	padding: 1rem 24px;
}

.miramar-course-breadcrumb a {
	color: #12392f;
	text-underline-offset: .22em;
}

.miramar-course-hero.has-image {
	grid-template-areas: "hero";
}

.miramar-course-hero-image {
	grid-area: hero;
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

.miramar-course-hero-overlay {
	align-self: end;
	background: linear-gradient(90deg, rgba(8, 35, 29, 0.94) 0%, rgba(8, 35, 29, 0.72) 52%, rgba(8, 35, 29, 0.08) 100%);
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	grid-area: hero;
	justify-content: end;
	min-height: 620px;
	padding: clamp(7rem, 14vh, 10rem) max(6vw, calc((100vw - 1200px) / 2)) clamp(4rem, 8vh, 6rem);
	position: relative;
	z-index: 1;
}

.miramar-course-hero h1 {
	color: inherit;
	font-size: clamp(2.8rem, 5vw, 5.4rem);
	line-height: 1;
	margin: 0;
	max-width: 850px;
}

.miramar-course-name-ja {
	font-size: clamp(1.25rem, 2vw, 1.75rem);
	margin: 1rem 0 0;
}

.miramar-course-positioning {
	font-size: clamp(1.05rem, 1.45vw, 1.3rem);
	line-height: 1.6;
	margin: 1.5rem 0 0;
	max-width: 720px;
}

.miramar-course-preview-languages {
	background: #dfd2b6;
	display: flex;
	gap: 1.5rem;
	justify-content: center;
	padding: 0.8rem 1rem;
}

.miramar-course-preview-languages a {
	color: #12392f;
	font-weight: 600;
}

.miramar-course-content {
	margin-inline: auto;
	max-width: 1120px;
	padding: clamp(3.5rem, 7vw, 7rem) 24px;
}

.miramar-course-content section {
	border-top: 1px solid rgba(18, 57, 47, 0.2);
	margin-top: 3rem;
	padding-top: 2.5rem;
}

.miramar-course-content section:first-child {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}

.miramar-course-content h2 {
	color: #12392f;
	font-size: clamp(1.8rem, 3vw, 2.8rem);
	margin-top: 0;
}

.miramar-course-content p {
	font-size: 1.08rem;
	line-height: 1.75;
	max-width: 820px;
}

.miramar-course-facts {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	max-width: 900px;
}

.miramar-course-fact {
	border-bottom: 1px solid rgba(18, 57, 47, 0.16);
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(130px, 0.8fr) 1.4fr;
	padding: 1rem 0;
}

.miramar-course-fact:nth-child(odd) {
	margin-right: 2rem;
}

.miramar-course-fact dt {
	color: #596d65;
	font-size: 0.86rem;
	font-weight: 700;
	text-transform: uppercase;
}

.miramar-course-fact dd {
	margin: 0;
}

.miramar-course-booking {
	background: #e8dfcd;
	border: 0 !important;
	padding: 2rem !important;
}

.miramar-course-difficulty {
	margin-top: 1.25rem;
	padding: 1rem 1.15rem;
	border-left: 3px solid #b89458;
	background: rgba(184, 148, 88, 0.08);
}

.miramar-course-related-drafts ul {
	display: grid;
	gap: 0.65rem;
	margin: 0 0 1.5rem;
	padding-left: 1.25rem;
}

.miramar-course-related-drafts a {
	color: #173f35;
	font-weight: 600;
}

.miramar-course-source {
	color: #596d65;
	font-size: 0.92rem !important;
	overflow-wrap: anywhere;
}

.miramar-course-gallery {
	border: 0 !important;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.miramar-course-gallery img {
	aspect-ratio: 4 / 3;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.miramar-course-reasons {
	display: grid;
	gap: 1rem;
	list-style: none;
	margin: 0;
	max-width: 960px;
	padding: 0;
}

.miramar-course-reasons li {
	background: #fffaf0;
	border-left: 4px solid #b48a4a;
	font-size: 1.08rem;
	line-height: 1.65;
	padding: 1.25rem 1.4rem;
}

.miramar-course-cta {
	background: #12392f;
	color: #fffaf0;
	padding: clamp(2rem, 5vw, 3.5rem) !important;
}

.miramar-course-cta h2 {
	color: inherit;
}

.miramar-course-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.miramar-course-button {
	border: 1px solid #fffaf0;
	display: inline-flex;
	font-weight: 700;
	justify-content: center;
	padding: 0.9rem 1.3rem;
	text-decoration: none;
}

.miramar-course-button.is-primary {
	background: #b48a4a;
	border-color: #b48a4a;
	color: #102f28;
}

.miramar-course-button.is-secondary {
	color: #fffaf0;
}

.miramar-course-button:focus-visible {
	outline: 3px solid #d5b46f;
	outline-offset: 3px;
}

.miramar-course-grid {
	display: grid;
	gap: 2rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.miramar-course-card {
	background: #fff;
	box-shadow: 0 12px 35px rgba(18, 57, 47, 0.1);
}

.miramar-course-card img {
	aspect-ratio: 16 / 10;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.miramar-course-card-body {
	padding: 1.5rem;
}

.miramar-course-card h2 {
	font-size: 1.5rem;
	margin: 0.5rem 0;
}

/* Public Golf Course Directory overview. */
.miramar-directory-overview {
	background: var(--wp--preset--color--cream, #f5f0e6);
	color: #12392f;
}

.miramar-directory-hero {
	background:
		linear-gradient(120deg, rgba(8, 35, 29, 0.96), rgba(18, 57, 47, 0.8)),
		url("assets/images/fuji-golf.jpg") center 45% / cover;
	color: #fffaf0;
	min-height: 500px;
	padding: clamp(8rem, 14vw, 12rem) max(24px, calc((100vw - 1200px) / 2)) clamp(4rem, 8vw, 6rem);
}

.miramar-directory-hero h1 {
	color: inherit;
	font-size: clamp(3rem, 6vw, 6rem);
	line-height: 1;
	margin: 0;
	max-width: 850px;
}

.miramar-directory-hero > p:last-child {
	font-size: clamp(1.05rem, 1.6vw, 1.3rem);
	line-height: 1.65;
	margin: 1.5rem 0 0;
	max-width: 720px;
}

.miramar-directory-content {
	margin-inline: auto;
	max-width: 1200px;
	padding: clamp(3rem, 6vw, 6rem) 24px;
}

.miramar-directory-content > section {
	border-top: 1px solid rgba(18, 57, 47, 0.18);
	margin-top: clamp(4rem, 8vw, 7rem);
	padding-top: clamp(3rem, 6vw, 5rem);
	scroll-margin-top: 110px;
}

.miramar-directory-content > section:first-child {
	border: 0;
	margin-top: 0;
	padding-top: 0;
}

.miramar-directory-content h2 {
	font-size: clamp(2rem, 4vw, 3.5rem);
	line-height: 1.1;
	margin: 0 0 2rem;
}

.miramar-directory-region-grid,
.miramar-directory-course-grid,
.miramar-directory-trip-grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.miramar-directory-region-card {
	background: #fffaf0;
	box-shadow: 0 12px 32px rgba(18, 57, 47, 0.08);
	color: #12392f;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	padding: 0 1.5rem 1.75rem;
	text-decoration: none;
}

.miramar-directory-region-visual {
	background: linear-gradient(135deg, #12392f, #587267 68%, #b48a4a);
	height: 9rem;
	margin: 0 -1.5rem 1.5rem;
}

.miramar-directory-region-card:nth-child(2) .miramar-directory-region-visual {
	background: linear-gradient(135deg, #173c45, #497684 62%, #c9a76a);
}

.miramar-directory-region-card:nth-child(3) .miramar-directory-region-visual {
	background: linear-gradient(135deg, #203d34, #6b7964 62%, #c6aa73);
}

.miramar-directory-region-card strong {
	font-family: var(--wp--preset--font-family--heading, Georgia, serif);
	font-size: 1.65rem;
	line-height: 1.15;
}

.miramar-directory-region-card > span:not(.miramar-directory-region-visual) {
	color: #8b6936;
	font-size: 0.85rem;
	font-weight: 700;
	margin-top: 0.6rem;
	text-transform: uppercase;
}

.miramar-directory-region-card small {
	font-size: 1rem;
	line-height: 1.6;
	margin-top: 1.1rem;
}

.miramar-directory-region-card em {
	font-style: normal;
	font-weight: 700;
	margin-top: auto;
	padding-top: 1.4rem;
}

.miramar-directory-region-card:focus-visible,
.miramar-directory-trip-grid a:focus-visible,
.miramar-directory-course-card a:focus-visible {
	outline: 3px solid #b48a4a;
	outline-offset: 4px;
}

.miramar-directory-course-card {
	background: #fff;
	box-shadow: 0 15px 38px rgba(18, 57, 47, 0.1);
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.miramar-directory-course-image {
	aspect-ratio: 16 / 10;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.miramar-directory-course-card-body {
	align-items: flex-start;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.6rem;
}

.miramar-directory-course-card h3 {
	font-size: clamp(1.65rem, 2.4vw, 2.15rem);
	line-height: 1.08;
	margin: 0.5rem 0 0;
	overflow-wrap: normal;
	word-break: normal;
}

.miramar-directory-course-name-ja {
	font-size: 1rem;
	line-break: strict;
	line-height: 1.5;
	margin: 0.8rem 0 0;
	overflow-wrap: normal;
	word-break: keep-all;
}

.miramar-directory-course-card-body > p:not(.miramar-eyebrow, .miramar-directory-course-name-ja) {
	line-height: 1.65;
}

.miramar-directory-course-card-body > .miramar-course-button {
	margin-top: auto;
}

.miramar-directory-tags,
.miramar-directory-feature-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	list-style: none;
	margin: 1.2rem 0;
	padding: 0;
}

.miramar-directory-tags li,
.miramar-directory-feature-cloud li {
	background: #e8dfcd;
	border-radius: 999px;
	color: #12392f;
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.35;
	padding: 0.45rem 0.75rem;
}

.miramar-directory-feature-cloud {
	gap: 0.8rem;
	max-width: 900px;
}

.miramar-directory-feature-cloud li {
	font-size: 0.95rem;
	padding: 0.65rem 1rem;
}

.miramar-directory-course-grid.is-single {
	grid-template-columns: minmax(0, 1fr);
	max-width: 760px;
}

.miramar-directory-trip-grid a {
	background: #12392f;
	color: #fffaf0;
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
	min-width: 0;
	padding: 1.75rem;
	text-decoration: none;
}

.miramar-directory-trip-grid strong {
	color: #d5b46f;
	font-size: 1.4rem;
}

.miramar-directory-trip-grid span {
	line-height: 1.6;
}

.miramar-directory-custom-cta {
	background: #12392f;
	color: #fffaf0;
	padding: clamp(2rem, 5vw, 4rem) !important;
}

.miramar-directory-custom-cta h2 {
	color: inherit;
}

@media (min-width: 901px) and (max-width: 1100px) {
	.miramar-directory-region-grid,
	.miramar-directory-course-grid,
	.miramar-directory-trip-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.miramar-course-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.miramar-course-facts {
		grid-template-columns: 1fr;
	}

	.miramar-course-gallery {
		grid-template-columns: 1fr;
	}

	.miramar-course-fact:nth-child(odd) {
		margin-right: 0;
	}

	.miramar-directory-region-grid,
	.miramar-directory-course-grid,
	.miramar-directory-trip-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 430px) {
	.miramar-directory-custom-cta h2 {
		font-size: 1.7rem;
	}
}

@media (min-width: 701px) and (max-width: 1100px) {
	.miramar-directory-region-grid,
	.miramar-directory-course-grid,
	.miramar-directory-trip-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.miramar-directory-hero {
		min-height: 430px;
		padding-inline: 20px;
	}

	.miramar-directory-content {
		padding-inline: 18px;
	}

	.miramar-directory-course-card-body,
	.miramar-directory-trip-grid a {
		padding: 1.25rem;
	}

	.miramar-directory-course-card h3 {
		font-size: 1.6rem;
	}

	.miramar-directory-course-name-ja {
		word-break: normal;
	}
}

@media (max-width: 600px) {
	.miramar-home-hero-ja h1 {
		font-size: clamp(2.15rem, 9.5vw, 2.45rem) !important;
	}

	.miramar-home-hero-ja .miramar-ja-hero-line:first-child {
		white-space: normal;
	}

	.miramar-course-hero,
	.miramar-course-hero-overlay {
		min-height: 560px;
	}

	.miramar-course-hero-overlay {
		padding: 7rem 20px 3.5rem;
	}

	.miramar-course-hero h1 {
		font-size: clamp(2.5rem, 12vw, 3.8rem);
		overflow-wrap: anywhere;
	}

	.miramar-course-grid {
		grid-template-columns: 1fr;
	}

	.miramar-course-fact {
		gap: 0.35rem;
		grid-template-columns: 1fr;
	}

	.miramar-course-preview-languages {
		flex-wrap: wrap;
	}
}

/* Keep the Japanese homepage hero balanced after the shared hero breakpoint rules. */
@media (min-width: 1025px) {
	.miramar-home-hero-ja h1 {
		font-size: clamp(3.6rem, 4.75vw, 4.25rem) !important;
	}
}

@media (min-width: 601px) and (max-width: 781px) {
	.miramar-home-hero-ja h1 {
		font-size: clamp(2.8rem, 6.5vw, 3.15rem) !important;
	}
}

/* Japanese native-copy hierarchy: preserve phrase units without oversized H2s. */
html[lang="ja"] body.miramar-ja :where(.wp-site-blocks) :is(h1, h2, h3) {
	line-break: strict;
	overflow-wrap: normal;
	word-break: keep-all;
}

@supports (word-break: auto-phrase) {
	html[lang="ja"] body.miramar-ja :where(.wp-site-blocks) :is(h1, h2, h3) {
		word-break: auto-phrase;
	}
}

html[lang="ja"] body.miramar-ja :where(.wp-site-blocks) h1 {
	font-size: clamp(3.4rem, 5.2vw, 5.4rem) !important;
	line-height: 1.08;
}

html[lang="ja"] body.miramar-ja:not(.page-id-77):not(.page-id-89):not(.page-id-90) :where(.wp-site-blocks) h2 {
	font-size: clamp(1.85rem, 2.4vw, 2.5rem) !important;
	line-height: 1.25;
	max-width: 100%;
}

html[lang="ja"] body.page-id-77 :where(.wp-site-blocks) h2 {
	font-size: clamp(2rem, 2.7vw, 2.8rem) !important;
	line-height: 1.24;
	max-width: 100%;
}

html[lang="ja"] body:is(.page-id-89, .page-id-90) :where(.wp-site-blocks) h2 {
	font-size: clamp(1.45rem, 1.8vw, 1.9rem) !important;
	line-height: 1.35;
	max-width: 100%;
}

html[lang="ja"] body.miramar-ja :where(.wp-site-blocks) .wp-block-column > h3 {
	font-size: clamp(1.2rem, 1.35vw, 1.45rem) !important;
	line-height: 1.5;
}

html[lang="ja"] body.page-id-87 :where(.wp-site-blocks) .forminator-ui h2,
html[lang="ja"] body.page-id-87 :where(.wp-site-blocks) .forminator-ui h3 {
	font-size: clamp(1.2rem, 1.35vw, 1.45rem) !important;
	line-height: 1.5;
}

@media (max-width: 1023px) {
	html[lang="ja"] body.page-id-77 :where(.wp-site-blocks) h2 {
		font-size: clamp(1.9rem, 4.5vw, 2.4rem) !important;
	}
}

@media (max-width: 600px) {
	html[lang="ja"] body.miramar-ja :where(.wp-site-blocks) h1 {
		font-size: clamp(2.35rem, 10vw, 3.2rem) !important;
		line-height: 1.15;
	}

	html[lang="ja"] body.page-id-77 :where(.wp-site-blocks) h2 {
		font-size: clamp(1.65rem, 6.8vw, 2rem) !important;
		line-height: 1.28;
	}

	html[lang="ja"] body.miramar-ja:not(.page-id-77):not(.page-id-89):not(.page-id-90) :where(.wp-site-blocks) h2 {
		font-size: clamp(1.55rem, 6.2vw, 1.9rem) !important;
		line-height: 1.28;
	}

	html[lang="ja"] body:is(.page-id-89, .page-id-90) :where(.wp-site-blocks) h2 {
		font-size: clamp(1.35rem, 5.4vw, 1.65rem) !important;
		line-height: 1.4;
	}

html[lang="ja"] body.miramar-ja :where(.wp-site-blocks) .wp-block-column > h3,
	html[lang="ja"] body.page-id-87 :where(.wp-site-blocks) .forminator-ui :is(h2, h3) {
		font-size: clamp(1.15rem, 5vw, 1.35rem) !important;
		line-height: 1.5;
	}
}

/* ========================================================================
   Miramar Editorial Design System — representative pages, 2026-07-27
   Scoped to Home, About and the private Japan Golf Guide only.
   ======================================================================== */

:root {
	--mj-editorial-pine-900: #0a3028;
	--mj-editorial-pine-800: #123f35;
	--mj-editorial-pine-700: #1a4a3d;
	--mj-editorial-ivory: #f7f2e8;
	--mj-editorial-paper: #e9e1d2;
	--mj-editorial-mist: #e5ebe6;
	--mj-editorial-gold-light: #d8bc7e;
	--mj-editorial-gold-dark: #886521;
	--mj-editorial-ink: #18372f;
	--mj-editorial-ink-muted: #526b63;
	--mj-editorial-rule: rgba(24, 55, 47, .24);
	--mj-editorial-serif: "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif TC", "Noto Serif JP", "PMingLiU", Georgia, serif;
	--mj-editorial-sans: "Noto Sans TC", "Noto Sans JP", "PingFang TC", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;
	--mj-editorial-page: 82rem;
	--mj-editorial-gutter: clamp(1.5rem, 4.5vw, 4.5rem);
	--mj-editorial-gap: clamp(1.25rem, 2.2vw, 2.25rem);
	--mj-editorial-focus: #1167d8;
	--mj-editorial-focus-dark: #80b6ff;
	--mj-editorial-fast: 160ms cubic-bezier(.2, .65, .3, 1);
	--mj-editorial-motion: 220ms cubic-bezier(.2, .65, .3, 1);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) {
	background: var(--mj-editorial-ivory);
	color: var(--mj-editorial-ink);
	font-family: var(--mj-editorial-sans);
	font-size: 1.125rem;
	line-height: 1.72;
	-webkit-font-smoothing: antialiased;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) :where(h1, h2, h3) {
	text-wrap: balance;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) :where(p, li, td, figcaption) {
	text-wrap: pretty;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) :where(a, button):focus-visible {
	outline: 3px solid var(--mj-editorial-focus);
	outline-offset: 3px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) :where(.has-pine-background-color, .has-forest-background-color, footer, .miramar-blog-cta) :where(a, button):focus-visible {
	outline-color: var(--mj-editorial-focus-dark);
}

/* Quiet actions: current labels and destinations remain unchanged. */
body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82) .wp-block-button__link,
.miramar-blog-pilot .miramar-blog-button {
	min-height: 44px;
	padding: .65rem 0;
	border: 0;
	border-bottom: 1px solid currentColor;
	border-radius: 0;
	background: transparent !important;
	color: inherit !important;
	font-size: .875rem;
	font-weight: 750;
	text-decoration: none;
	transition: color var(--mj-editorial-fast), border-color var(--mj-editorial-fast);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82) .has-pine-background-color .wp-block-button__link,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button__link,
.miramar-blog-pilot .miramar-blog-cta .miramar-blog-button {
	color: var(--mj-editorial-gold-light) !important;
}

/* Homepage: one narrative system, language-specific wrapping retained. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
	display: grid;
	grid-template-columns: 42% 58%;
	min-height: 760px;
	padding: 0;
	background: var(--mj-editorial-pine-800);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
	inset: 0 0 0 42%;
	width: 58%;
	height: 100%;
	object-position: 58% center;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__background {
	background: rgba(10, 48, 40, .16) !important;
	opacity: 1;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
	display: flex;
	align-items: center;
	width: 42%;
	margin: 0;
	padding: clamp(5rem, 7vw, 7rem) var(--mj-editorial-gutter);
	background: var(--mj-editorial-pine-800);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .miramar-hero-content {
	width: 100%;
	max-width: 34rem;
	margin: 0;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1 {
	max-width: 9em;
	margin: .5rem 0 1.8rem;
	font-family: var(--mj-editorial-serif);
	font-size: clamp(3.5rem, 4.5vw, 4.5rem) !important;
	font-weight: 500;
	line-height: 1.08;
	letter-spacing: -.04em;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .has-large-font-size {
	max-width: 31rem;
	font-size: 1rem !important;
	line-height: 1.75;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-editorial-section {
	padding-inline: max(var(--mj-editorial-gutter), calc((100vw - 1312px) / 2));
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning {
	padding-block: clamp(8rem, 11vw, 11rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning > .wp-block-columns {
	gap: clamp(3rem, 7vw, 7rem);
	align-items: start;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning > .wp-block-columns:first-child > .wp-block-column:first-child {
	flex-basis: 42% !important;
	padding-top: 5rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning > .wp-block-columns:first-child > .wp-block-column:last-child {
	flex-basis: 58% !important;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning .miramar-editorial-image img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning h2 {
	font-family: var(--mj-editorial-serif);
	font-size: clamp(3rem, 3.7vw, 3.5rem) !important;
	font-weight: 500;
	line-height: 1.18;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-key-points {
	margin-top: 5rem;
	border-top: 1px solid var(--mj-editorial-rule);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-key-points > .wp-block-column {
	padding: 1.35rem 1.5rem 0 0;
	border-right: 0;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-key-points h3 {
	font-family: var(--mj-editorial-sans);
	font-size: .95rem;
	font-weight: 750;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-key-points p {
	font-size: .875rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-agency {
	margin: 0 var(--mj-editorial-gutter);
	padding-block: clamp(4rem, 6vw, 6rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-agency > .wp-block-columns {
	grid-template-columns: 5fr 7fr;
	gap: 8vw;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-agency h2,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-arrangements h2,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail h2,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-cases h2,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company h2,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-contact-final h2 {
	font-family: var(--mj-editorial-sans);
	font-size: clamp(2.125rem, 2.6vw, 2.5rem) !important;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.02em;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-arrangements {
	padding-block: clamp(3.75rem, 5vw, 5rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-service-ledger {
	margin-top: 3rem;
	border-top: 1px solid var(--mj-editorial-rule);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-service-ledger h3 {
	margin: 0;
	padding-top: 1.25rem;
	border-top: 0;
	font-family: var(--mj-editorial-sans);
	font-size: .95rem;
	font-weight: 750;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-service-ledger p {
	padding-bottom: 1.25rem;
	border-bottom: 1px solid var(--mj-editorial-rule);
	font-size: .875rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail {
	padding-block: clamp(6.5rem, 8.5vw, 8.5rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail > .wp-block-columns {
	gap: 8vw;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-detail .miramar-editorial-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf {
	padding-block: clamp(8rem, 11vw, 11rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns {
	gap: 7vw;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf .wp-block-image img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf h2 {
	font-family: var(--mj-editorial-serif);
	font-size: clamp(3rem, 3.7vw, 3.5rem) !important;
	font-weight: 500;
	line-height: 1.18;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-cases {
	padding-block: clamp(6.5rem, 9vw, 9rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row {
	gap: 6vw;
	margin-top: 5rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) {
	margin-left: 9vw;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(odd) {
	margin-right: 7vw;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row .wp-block-column:nth-child(2) {
	padding-top: 6rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) .wp-block-column:first-child {
	padding-top: 4rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row h3 {
	font-family: var(--mj-editorial-serif);
	font-size: clamp(1.5rem, 1.8vw, 1.75rem);
	font-weight: 500;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company {
	padding-block: clamp(3.75rem, 5.5vw, 5rem);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company > .wp-block-columns {
	grid-template-columns: 4fr 7fr;
	gap: 7vw;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data {
	border-top: 1px solid var(--mj-editorial-rule);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data p {
	grid-template-columns: minmax(9rem, 35%) 1fr;
	padding: .8rem 0;
	border-bottom: 1px solid var(--mj-editorial-rule);
	background: transparent;
	font-size: .875rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data .miramar-company-person {
	display: block;
	font-family: var(--mj-editorial-serif);
	font-size: 1.35rem;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-contact-final {
	padding-block: clamp(3.5rem, 5vw, 4.75rem);
}

/* About: factual, restrained and corporate. */
body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
	display: grid;
	grid-template-columns: 56% 44%;
	min-height: 520px;
	padding: 0;
	background: var(--mj-editorial-ivory);
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
	inset: 0 0 0 56%;
	width: 44%;
	height: 100%;
	object-position: center;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__background {
	background: rgba(10, 48, 40, .08) !important;
	opacity: 1;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__inner-container {
	display: flex;
	align-items: center;
	width: 56%;
	margin: 0;
	padding: clamp(4.5rem, 7vw, 7rem) var(--mj-editorial-gutter);
	background: var(--mj-editorial-ivory);
	color: var(--mj-editorial-ink);
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero :where(h1, p) {
	color: var(--mj-editorial-ink) !important;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero h1 {
	max-width: 10em;
	font-family: var(--mj-editorial-serif);
	font-size: clamp(3.5rem, 4.6vw, 4.5rem) !important;
	font-weight: 500;
	line-height: 1.08;
	letter-spacing: -.035em;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-section {
	padding-block: clamp(5.25rem, 7vw, 7rem);
	padding-inline: max(var(--mj-editorial-gutter), calc((100vw - 1312px) / 2));
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-section:nth-of-type(even) {
	padding-block: clamp(3.75rem, 5.5vw, 5rem);
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-section h2 {
	font-family: var(--mj-editorial-sans);
	font-size: clamp(2.125rem, 2.6vw, 2.5rem) !important;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.02em;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-ledger {
	border-top: 1px solid var(--mj-editorial-rule);
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-ledger-item {
	padding: 1.4rem 1.5rem 0 0;
	border: 0;
	border-bottom: 1px solid var(--mj-editorial-rule);
	background: transparent;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-ledger-item h3 {
	font-family: var(--mj-editorial-sans);
	font-size: .95rem;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-step {
	grid-template-columns: 2.5rem 2fr 4fr;
	padding: 1.25rem 0;
	border-top: 1px solid var(--mj-editorial-rule);
	background: transparent;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-company-table {
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-company-table table {
	border-top: 1px solid var(--mj-editorial-rule);
	font-size: .875rem;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-company-table th,
body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-company-table td {
	padding: .85rem 0;
	border-bottom: 1px solid var(--mj-editorial-rule);
	background: transparent;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-company-table th {
	width: 35%;
	padding-right: 1.5rem;
	font-weight: 750;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-final {
	padding-block: clamp(3.5rem, 5vw, 4.75rem);
}

/* Japan Golf Guide: editorial navigation and one dominant story. */
.miramar-blog-pilot {
	--blog-cream: var(--mj-editorial-ivory);
	--blog-ink: var(--mj-editorial-ink);
	--blog-gold: var(--mj-editorial-gold-dark);
	--blog-line: var(--mj-editorial-rule);
}

.miramar-blog-pilot .miramar-blog-shell {
	width: min(var(--mj-editorial-page), calc(100% - 2 * var(--mj-editorial-gutter)));
}

.miramar-blog-pilot .miramar-blog-hero {
	padding-block: clamp(5rem, 8vw, 8rem);
	background: var(--mj-editorial-ivory);
}

.miramar-blog-pilot .miramar-blog-hero .miramar-blog-shell {
	display: grid;
	grid-template-columns: 7fr 5fr;
	gap: var(--mj-editorial-gap);
	align-items: end;
}

.miramar-blog-pilot .miramar-blog-kicker {
	grid-column: 1 / -1;
}

.miramar-blog-pilot .miramar-blog-hero h1 {
	grid-column: 1;
	max-width: 7em;
	margin: 0;
	font-family: var(--mj-editorial-serif);
	font-size: clamp(3.5rem, 4.6vw, 4.5rem);
	font-weight: 500;
}

.miramar-blog-pilot .miramar-blog-hero .miramar-blog-shell > p:last-child {
	grid-column: 2;
	margin: 0;
	font-size: 1.0625rem;
}

.miramar-blog-pilot .miramar-blog-entrances {
	display: block;
	padding-block: clamp(3.75rem, 5.5vw, 5rem);
	border-bottom: 0;
}

.miramar-blog-pilot .miramar-blog-entrance {
	display: grid;
	grid-template-columns: 3rem 1.4fr 2fr;
	gap: var(--mj-editorial-gap);
	align-items: center;
	padding: 1.3rem 0;
	border: 0;
	border-top: 1px solid var(--mj-editorial-rule);
}

.miramar-blog-pilot .miramar-blog-entrance:last-child {
	border-bottom: 1px solid var(--mj-editorial-rule);
}

.miramar-blog-pilot .miramar-blog-entrance > p,
.miramar-blog-pilot .miramar-blog-entrance h2,
.miramar-blog-pilot .miramar-blog-entrance span {
	margin: 0;
}

.miramar-blog-pilot .miramar-blog-entrance h2 {
	font-family: var(--mj-editorial-sans);
	font-size: 1rem;
	font-weight: 750;
}

.miramar-blog-pilot .miramar-blog-overview .miramar-blog-section {
	padding-block: clamp(8rem, 11vw, 11rem);
}

.miramar-blog-pilot .miramar-blog-feature {
	grid-template-columns: 5fr 6fr;
	gap: 8vw;
	align-items: center;
}

.miramar-blog-pilot .miramar-blog-feature > div:first-child {
	order: 2;
}

.miramar-blog-pilot .miramar-blog-image-placeholder {
	aspect-ratio: 4 / 5;
	background: transparent;
}

.miramar-blog-pilot .miramar-blog-image-placeholder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.miramar-blog-pilot .miramar-blog-image-placeholder figcaption {
	position: static;
	margin-top: .65rem;
	color: var(--mj-editorial-ink-muted);
	font-size: .8125rem;
	letter-spacing: 0;
}

.miramar-blog-pilot .miramar-blog-feature-copy h2 {
	font-family: var(--mj-editorial-serif);
	font-size: clamp(2.4rem, 3.7vw, 3.5rem);
	font-weight: 500;
	line-height: 1.18;
	letter-spacing: -.035em;
}

.miramar-blog-pilot .miramar-blog-overview .miramar-blog-section:has(.miramar-blog-course-grid) {
	padding-block: clamp(5.25rem, 7vw, 7rem);
	background: var(--mj-editorial-paper);
}

.miramar-blog-pilot .miramar-blog-overview .miramar-blog-course-grid {
	display: block;
	border-top: 1px solid var(--mj-editorial-rule);
}

.miramar-blog-pilot .miramar-blog-overview .miramar-blog-course-card {
	display: grid;
	grid-template-columns: clamp(8rem, 16vw, 13rem) 1fr;
	gap: clamp(1.5rem, 4vw, 4rem);
	align-items: center;
	padding: 1.4rem 0;
	border: 0;
	border-bottom: 1px solid var(--mj-editorial-rule);
	background: transparent;
}

.miramar-blog-pilot .miramar-blog-course-card img {
	aspect-ratio: 16 / 9;
}

.miramar-blog-pilot .miramar-blog-course-card > div {
	display: block;
	padding: 0;
}

.miramar-blog-pilot .miramar-blog-course-card h3 {
	font-family: var(--mj-editorial-sans);
	font-size: clamp(1.15rem, 2vw, 1.8rem);
	font-weight: 700;
}

.miramar-blog-pilot .miramar-blog-course-card .miramar-blog-course-characteristic {
	margin-bottom: .5rem;
}

.miramar-blog-pilot .miramar-blog-cta {
	padding-block: clamp(3.5rem, 5vw, 4.75rem);
	background: var(--mj-editorial-pine-800);
}

.miramar-blog-pilot .miramar-blog-cta .miramar-blog-shell {
	display: grid;
	grid-template-columns: 6fr 5fr;
	gap: 8vw;
	align-items: center;
}

.miramar-blog-pilot .miramar-blog-cta h2 {
	font-family: var(--mj-editorial-sans);
	font-size: clamp(2.125rem, 2.6vw, 2.5rem);
	font-weight: 700;
}

@media (max-width: 900px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
		grid-template-columns: 1fr 1fr;
		min-height: 660px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
		inset-inline-start: 50%;
		width: 50%;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__inner-container {
		width: 50%;
		padding-inline: 2.5rem;
	}

	.miramar-blog-pilot .miramar-blog-feature {
		display: flex;
		flex-direction: column;
	}

	.miramar-blog-pilot .miramar-blog-feature > div:first-child {
		order: -1;
	}

	.miramar-blog-pilot .miramar-blog-image-placeholder {
		aspect-ratio: 16 / 10;
	}
}

@media (max-width: 700px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) {
		font-size: 1rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
		display: flex;
		min-height: 0;
		flex-direction: column;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
		position: relative;
		inset: auto;
		order: -1;
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 10;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__background,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__background {
		display: none;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__inner-container {
		position: relative;
		width: 100%;
		padding: 4.5rem 24px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero h1 {
		font-size: clamp(2.6rem, 12vw, 3.25rem) !important;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-editorial-section,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-section {
		padding-inline: 24px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) :where(.miramar-planning, .miramar-golf, .miramar-cases) {
		padding-block: 5.5rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) :where(.miramar-agency, .miramar-arrangements, .miramar-company, .miramar-contact-final) {
		margin-inline: 0;
		padding-block: 3.75rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) :where(.miramar-planning, .miramar-agency, .miramar-detail, .miramar-golf, .miramar-company, .miramar-contact-final) > .wp-block-columns,
	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-section > .wp-block-columns {
		display: flex;
		flex-direction: column;
		gap: 2.5rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning > .wp-block-columns:first-child > .wp-block-column:first-child {
		padding-top: 0;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-planning .miramar-editorial-image img {
		aspect-ratio: 4 / 3;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-key-points,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-service-ledger {
		display: block;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-key-points > .wp-block-column {
		padding-block: 1.1rem;
		border-bottom: 1px solid var(--mj-editorial-rule);
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even),
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(odd) {
		display: block;
		margin: 3.5rem 0 0;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row .wp-block-column,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row .wp-block-column:nth-child(2),
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-case-row:nth-of-type(even) .wp-block-column:first-child {
		padding-top: 0;
		margin-bottom: 3.5rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-company-data p {
		grid-template-columns: 36% 1fr;
		font-size: .75rem;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-section {
		padding-block: 4.5rem;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-step {
		grid-template-columns: 2.5rem 1fr;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-step p {
		grid-column: 2;
	}

	.miramar-blog-pilot .miramar-blog-hero {
		padding-block: 4.5rem;
	}

	.miramar-blog-pilot .miramar-blog-hero .miramar-blog-shell,
	.miramar-blog-pilot .miramar-blog-cta .miramar-blog-shell {
		display: block;
	}

	.miramar-blog-pilot .miramar-blog-hero h1 {
		margin-block: 1.5rem;
		font-size: clamp(2.6rem, 12vw, 3.25rem);
	}

	.miramar-blog-pilot .miramar-blog-entrance {
		grid-template-columns: 2rem 1fr;
	}

	.miramar-blog-pilot .miramar-blog-entrance span {
		grid-column: 2;
	}

	.miramar-blog-pilot .miramar-blog-overview .miramar-blog-section {
		padding-block: 5.5rem;
	}

	.miramar-blog-pilot .miramar-blog-feature-copy h2 {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.miramar-blog-pilot .miramar-blog-overview .miramar-blog-course-card {
		grid-template-columns: 7rem 1fr;
		gap: 1rem;
		margin-left: 0;
	}

	.miramar-blog-pilot .miramar-blog-course-card .miramar-blog-course-characteristic {
		display: none;
	}

	.miramar-blog-pilot .miramar-blog-cta h2 {
		font-size: 2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) *,
	body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) *::before,
	body:is(.home, .miramar-zh-home, .miramar-ja-home, .page-id-15, .page-id-60, .page-id-82, .miramar-blog-pilot) *::after {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/*
 * Visual-parity cascade guard.
 * This is intentionally last so legacy page rules cannot restore intrinsic
 * image sizing after the controlled editorial modules above.
 */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
	min-height: 790px;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
	width: 58%;
	height: 100%;
	max-height: 790px;
	object-fit: cover;
	object-position: 57% center;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf {
	min-height: 760px;
	padding-block: 0;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
	min-height: clamp(620px, 55vw, 790px);
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
	width: 44%;
	height: 100%;
	max-height: none;
	object-fit: cover;
	object-position: center;
}

body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__inner-container > .wp-block-group {
	padding: 0 !important;
}

@media (min-width: 701px) and (max-width: 900px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		min-height: 670px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		width: 50%;
		height: 100%;
		max-height: 670px;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
		min-height: 640px;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
		width: 50%;
		height: 100%;
		max-height: none;
	}

	.miramar-blog-pilot .miramar-blog-image-placeholder {
		aspect-ratio: 16 / 10;
		max-height: 640px;
	}
}

@media (max-width: 700px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		min-height: 0;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		width: 100%;
		height: clamp(330px, 100vw, 390px);
		min-height: 330px;
		max-height: 390px;
		aspect-ratio: auto;
		object-position: 58% center;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf {
		min-height: 690px;
		padding-block: 0;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf h2 {
		max-width: 8em;
		font-size: 39px !important;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf .has-large-font-size {
		font-size: 1rem !important;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-golf > .wp-block-columns > .wp-block-column:last-child {
		padding: 110px 24px 60px;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero {
		min-height: 0 !important;
	}

	body:is(.page-id-15, .page-id-60, .page-id-82) .miramar-about-hero .wp-block-cover__image-background {
		width: 100%;
		height: auto;
		min-height: 0;
		max-height: 430px;
		aspect-ratio: 4 / 3;
		object-position: center;
	}

	.miramar-blog-pilot .miramar-blog-image-placeholder {
		aspect-ratio: 4 / 3;
		max-height: 430px;
	}
}

/*
 * Multilingual homepage hero system.
 * One centred split composition, with language-specific type measures.
 */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 48%) minmax(0, 52%);
	width: min(calc(100% - 48px), 1360px);
	min-height: 640px;
	margin-inline: auto;
	padding: 0;
	overflow: hidden;
	border-radius: 24px;
	background: var(--mj-editorial-pine-800);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__background {
	display: none;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
	position: relative;
	inset: auto;
	grid-column: 2;
	grid-row: 1;
	order: initial;
	width: 100%;
	height: 100%;
	min-height: 640px;
	max-height: none;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: 60% center;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
	position: relative;
	z-index: 1;
	display: flex;
	grid-column: 1;
	grid-row: 1;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: clamp(3rem, 4vw, 4rem) clamp(2rem, 3vw, 3.25rem);
	background: var(--mj-editorial-pine-800);
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .miramar-hero-content {
	width: 100%;
	max-width: 36rem;
	margin: 0;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1 {
	max-width: 10.5em;
	margin: .65rem 0 1.4rem;
	font-size: clamp(3rem, 3.8vw, 3.65rem) !important;
	line-height: 1.06;
}

body.miramar-zh-home .miramar-home-hero h1 {
	max-width: 9em;
	font-size: clamp(2.8rem, 3.6vw, 3.5rem) !important;
	line-height: 1.18;
}

body.miramar-ja-home .miramar-home-hero h1 {
	max-width: 11em;
	font-size: clamp(2.65rem, 3.4vw, 3.35rem) !important;
	line-height: 1.22;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .has-large-font-size {
	max-width: 34rem;
	font-size: clamp(1rem, 1.3vw, 1.1rem) !important;
	line-height: 1.7;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-buttons {
	gap: .7rem;
	margin-top: 1.75rem;
}

@media (max-width: 1120px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		grid-template-columns: minmax(0, 50%) minmax(0, 50%);
		min-height: 590px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		min-height: 590px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
		padding: 3rem clamp(2rem, 3vw, 2.75rem);
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1 {
		font-size: clamp(2.6rem, 4.1vw, 3.15rem) !important;
	}

	body.miramar-ja-home .miramar-home-hero h1 {
		font-size: clamp(2.35rem, 3.7vw, 2.85rem) !important;
	}
}

@media (max-width: 900px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		display: flex;
		flex-direction: column;
		width: min(calc(100% - 40px), 760px);
		min-height: 0 !important;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		position: relative;
		order: -1;
		width: 100%;
		height: auto;
		min-height: 0;
		aspect-ratio: 16 / 9;
		object-position: 58% center;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
		width: 100%;
		padding: clamp(2.5rem, 6vw, 3.25rem);
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1,
	body.miramar-zh-home .miramar-home-hero h1,
	body.miramar-ja-home .miramar-home-hero h1 {
		max-width: 13em;
		font-size: clamp(2.4rem, 6.3vw, 2.95rem) !important;
	}
}

@media (max-width: 520px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		width: calc(100% - 40px);
		border-radius: 20px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		aspect-ratio: 16 / 9;
		object-position: 61% center;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
		padding: 2.15rem 22px 2.5rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1,
	body.miramar-zh-home .miramar-home-hero h1,
	body.miramar-ja-home .miramar-home-hero h1 {
		max-width: 100%;
		font-size: clamp(2.1rem, 9.8vw, 2.55rem) !important;
		line-height: 1.12;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .has-large-font-size {
		font-size: .96rem !important;
		line-height: 1.55;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-buttons {
		display: grid;
		width: 100%;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button__link {
		width: 100%;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button__link {
		justify-content: center;
		white-space: normal;
	}
}

body.wp-theme-miramar-corporate .miramar-corporate-audience .miramar-eyebrow {
	color: #80601f !important;
}

/* Final contrast guard after all editorial variants. */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .miramar-eyebrow,
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-contact-final .miramar-eyebrow {
	color: #fff7e8 !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.72);
}

/*
 * Focused branded-ball homepage hero: one photographic composition with a
 * contained translucent information panel. Shared by all three languages.
 */
body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
	display: block;
	width: min(calc(100% - 48px), 1360px);
	min-height: 660px;
	background: #12392f;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
	object-position: 50% 58%;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__background {
	display: none;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	min-height: 660px;
	padding: clamp(2rem, 3.5vw, 3.5rem);
	background: transparent;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .miramar-hero-content {
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	width: min(47%, 38rem);
	max-width: none;
	min-height: 548px;
	margin: 0;
	padding: clamp(2rem, 3vw, 3rem);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 18px;
	background: rgba(8, 47, 37, .8);
	-webkit-backdrop-filter: blur(1.5px);
	backdrop-filter: blur(1.5px);
	box-shadow: 0 16px 40px rgba(3, 23, 18, .12);
	transform: none;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1 {
	max-width: 11.5em;
	font-size: clamp(2.65rem, 3.45vw, 3.35rem) !important;
	line-height: 1.08;
}

body.miramar-zh-home .miramar-home-hero h1 {
	max-width: 10em;
	font-size: clamp(2.5rem, 3.25vw, 3.15rem) !important;
	line-height: 1.17;
}

body.miramar-ja-home .miramar-home-hero h1 {
	width: 100%;
	max-width: 100% !important;
	min-width: 0;
	font-size: clamp(2.2rem, 2.5vw, 2.65rem) !important;
	line-height: 1.2;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

.miramar-home-hero-ja .miramar-ja-hero-line {
	white-space: normal !important;
}

body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-buttons {
	margin-top: auto;
	padding-top: 1.75rem;
}

.miramar-directory-region-visual {
	position: relative;
	overflow: hidden;
	background: #dfe8e2;
}

.miramar-directory-region-visual img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 320ms ease;
}

.miramar-directory-region-card:hover .miramar-directory-region-visual img,
.miramar-directory-region-card:focus-visible .miramar-directory-region-visual img {
	transform: scale(1.025);
}

body.wp-theme-miramar-corporate .miramar-directory-course-card-body > .miramar-eyebrow {
	color: #76551c !important;
}

@media (max-width: 1100px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		display: block;
		min-height: 620px !important;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
		min-height: 620px;
		padding: 2rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .miramar-hero-content {
		width: min(55%, 35rem);
		min-height: 532px;
		padding: 2.2rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1,
	body.miramar-zh-home .miramar-home-hero h1 {
		font-size: clamp(2.2rem, 4.25vw, 2.75rem) !important;
	}

	body.miramar-ja-home .miramar-home-hero h1 {
		font-size: clamp(2rem, 3.6vw, 2.4rem) !important;
	}
}

@media (max-width: 740px) {
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero {
		width: calc(100% - 32px);
		min-height: min(760px, calc(100svh - 72px)) !important;
		border-radius: 20px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__image-background {
		height: 100%;
		aspect-ratio: auto;
		object-position: 63% 55%;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-cover__inner-container {
		align-items: stretch;
		min-height: min(760px, calc(100svh - 72px));
		padding: 18px;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .miramar-hero-content {
		width: min(92%, 25rem);
		min-height: 100%;
		padding: clamp(1.65rem, 6vw, 2.25rem);
		border-radius: 15px;
		background: rgba(8, 47, 37, .82);
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero h1,
	body.miramar-zh-home .miramar-home-hero h1,
	body.miramar-ja-home .miramar-home-hero h1 {
		max-width: 100%;
		font-size: clamp(2rem, 8.4vw, 2.45rem) !important;
		line-height: 1.14;
	}

	body.miramar-ja-home .miramar-home-hero h1 {
		overflow-wrap: anywhere;
		word-break: normal;
		font-size: clamp(1.9rem, 8vw, 2.25rem) !important;
	}

	body.miramar-ja-home .miramar-home-hero .miramar-ja-hero-line {
		white-space: normal;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .has-large-font-size {
		font-size: .96rem !important;
		line-height: 1.55;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-buttons {
		display: grid;
		width: 100%;
		gap: .65rem;
		padding-top: 1.25rem;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button,
	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button__link {
		width: 100%;
	}

	body:is(.home, .miramar-zh-home, .miramar-ja-home) .miramar-home-hero .wp-block-button__link {
		justify-content: center;
		white-space: normal;
	}
}
