/*
Theme Name: WPWeb
Description: 可复用的 WordPress 企业网站基础子主题，基于 Twenty Twenty-Four。
Author: 网站管理员
Version: 1.0.8
Requires at least: 6.4
Requires PHP: 7.0
Template: twentytwentyfour
Text Domain: wpweb
*/

:root {
	--wpweb-ink: #173a3a;
	--wpweb-muted: #5e7070;
	--wpweb-teal: #246c67;
	--wpweb-teal-dark: #194f4b;
	--wpweb-sage: #eaf1ec;
	--wpweb-cream: #f7f6f1;
	--wpweb-gold: #c59c5b;
	--wpweb-line: #dce5df;
	--wpweb-radius: 1.25rem;
}

html {
	scroll-behavior: smooth;
}

body {
	color: var(--wpweb-ink);
	background: #fff;
	font-family: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;
}

a {
	text-underline-offset: 0.2em;
}

a:hover {
	color: var(--wpweb-teal-dark);
}

.wp-site-blocks > header {
	position: relative;
	z-index: 5;
	border-bottom: 1px solid var(--wpweb-line);
	background: rgba(255, 255, 255, 0.96);
}

.wp-block-site-title a {
	color: var(--wpweb-ink);
	font-weight: 700;
	letter-spacing: -0.035em;
	text-decoration: none;
}

.wp-block-navigation a {
	font-weight: 600;
	text-decoration: none;
}

.wp-block-button__link {
	border: 1px solid var(--wpweb-teal);
	border-radius: 999px;
	background: var(--wpweb-teal);
	color: #fff;
	font-weight: 650;
	padding: 0.9rem 1.45rem;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.wp-block-button__link:hover {
	transform: translateY(-2px);
	border-color: var(--wpweb-teal-dark);
	background: var(--wpweb-teal-dark);
	color: #fff;
}

.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--wpweb-teal-dark);
}

.is-style-outline > .wp-block-button__link:hover {
	background: var(--wpweb-sage);
}

.wpweb-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(ellipse at 86% 22%, rgba(197, 156, 91, 0.18), transparent 28%),
		linear-gradient(125deg, #f3f6f1 0%, #e8f0eb 58%, #f7f6f1 100%);
}

.wpweb-hero h1 {
	max-width: 13ch;
	color: var(--wpweb-ink);
	font-size: clamp(2.8rem, 6vw, 5.5rem);
	letter-spacing: -0.055em;
	line-height: 1.03;
}

.wpweb-hero-art {
	position: relative;
	min-height: 23rem;
	overflow: hidden;
	border: 1px solid rgba(36, 108, 103, 0.12);
	border-radius: 48% 48% var(--wpweb-radius) var(--wpweb-radius);
	background:
		radial-gradient(ellipse at 82% 18%, rgba(197, 156, 91, 0.72) 0 7%, transparent 7.5%),
		radial-gradient(ellipse at 79% 23%, rgba(255, 255, 255, 0.72) 0 19%, transparent 19.5%),
		linear-gradient(155deg, #dce9df 0%, #b9d1c7 54%, #8db4a8 100%);
	box-shadow: 0 24px 60px rgba(23, 58, 58, 0.12);
	padding: clamp(2rem, 4vw, 3.5rem);
}

.wpweb-hero-art::before,
.wpweb-hero-art::after {
	position: absolute;
	content: "";
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 50%;
	pointer-events: none;
}

.wpweb-hero-art::before {
	width: 18rem;
	height: 18rem;
	right: -6rem;
	bottom: -10rem;
}

.wpweb-hero-art::after {
	width: 13rem;
	height: 13rem;
	right: -3.5rem;
	bottom: -7.5rem;
}

.wpweb-hero-art > * {
	position: relative;
	z-index: 1;
}

.wpweb-hero-art h2 {
	max-width: 9ch;
	margin-top: 5rem;
	color: var(--wpweb-ink);
	font-size: clamp(2rem, 3.2vw, 3.1rem);
	letter-spacing: -0.045em;
	line-height: 1.05;
}

.wpweb-hero-art p {
	max-width: 25ch;
	color: var(--wpweb-ink);
}

.wpweb-hero-art .wpweb-hero-art-label {
	color: var(--wpweb-teal-dark);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.wpweb-hero-art .wp-block-separator {
	width: 3rem;
	margin-left: 0;
	border-color: var(--wpweb-teal);
}

.wpweb-eyebrow {
	color: var(--wpweb-teal);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.wpweb-section-heading {
	max-width: 16ch;
	letter-spacing: -0.04em;
}

.wpweb-card {
	border: 1px solid var(--wpweb-line);
	border-radius: var(--wpweb-radius);
	background: #fff;
	box-shadow: 0 12px 35px rgba(23, 58, 58, 0.055);
}

.wpweb-step-number {
	display: inline-grid;
	width: 2.7rem;
	height: 2.7rem;
	place-items: center;
	border-radius: 50%;
	background: var(--wpweb-sage);
	color: var(--wpweb-teal-dark);
	font-weight: 700;
}

.wpweb-note {
	border-left: 3px solid var(--wpweb-gold);
	background: var(--wpweb-cream);
}

.wpweb-articles .wp-block-post {
	overflow: hidden;
	border: 1px solid var(--wpweb-line);
	border-radius: var(--wpweb-radius);
	background: #fff;
}

.wpweb-articles .wp-block-post-featured-image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.wpweb-articles .wp-block-post-title,
.wpweb-articles .wp-block-post-excerpt,
.wpweb-articles .wp-block-post-date {
	margin-right: 1.25rem;
	margin-left: 1.25rem;
}

.wpweb-articles .wp-block-post-title a {
	color: var(--wpweb-ink);
	text-decoration: none;
}

.wpweb-contact {
	border-radius: calc(var(--wpweb-radius) * 1.3);
	background: var(--wpweb-ink);
	color: #fff;
}

.wpweb-contact h2,
.wpweb-contact p {
	color: #fff;
}

.wpweb-contact .wpweb-eyebrow {
	color: #e2c994;
}

.wpweb-contact .wp-block-button__link {
	border-color: #fff;
	background: #fff;
	color: var(--wpweb-ink);
}

.wpweb-contact .wp-block-button__link:hover {
	border-color: var(--wpweb-sage);
	background: var(--wpweb-sage);
}

.wp-block-post-content a,
.wp-block-comment-content a {
	color: var(--wpweb-teal-dark);
}

.wp-site-blocks > footer {
	border-top: 1px solid var(--wpweb-line);
}

.wpweb-trust {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin-top: -1.5rem;
	padding: 1.15rem 0;
	border: 1px solid var(--wpweb-line);
	border-radius: var(--wpweb-radius);
	background: #fff;
	box-shadow: 0 14px 36px rgba(23, 58, 58, 0.08);
}

.wpweb-trust > .wp-block-group {
	padding: 0.4rem 1.25rem;
	text-align: center;
}

.wpweb-trust > .wp-block-group + .wp-block-group {
	border-left: 1px solid var(--wpweb-line);
}

.wpweb-trust h3,
.wpweb-country-card h3 {
	margin: 0 0 0.3rem;
	color: var(--wpweb-ink);
	font-size: 1rem;
}

.wpweb-trust p,
.wpweb-country-card p {
	margin: 0;
	color: var(--wpweb-muted);
	font-size: 0.82rem;
}

.wpweb-about-art {
	display: flex;
	min-height: 22rem;
	flex-direction: column;
	justify-content: flex-end;
	padding: clamp(2rem, 5vw, 4rem);
	border-radius: 48% 48% 1rem 1rem;
	background: radial-gradient(circle at 72% 24%, #fff8e7 0 7%, transparent 7.5%), linear-gradient(145deg, #dce9df, #b9d1c7 58%, #8db4a8);
}

.wpweb-about-art h2 {
	max-width: 10ch;
	color: var(--wpweb-ink);
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.2;
}

.wpweb-about-art-label,
.wpweb-card-index,
.wpweb-audience-number {
	color: var(--wpweb-teal-dark);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.wpweb-check-list li::marker {
	color: var(--wpweb-teal);
}

.wpweb-services,
.wpweb-why {
	background: var(--wpweb-cream);
}

.wpweb-why {
	background: #211e1b;
	color: #fff;
}

.wpweb-why .wpweb-section-heading,
.wpweb-why .wpweb-section-heading + p {
	color: #fff;
}

.wpweb-why .wpweb-eyebrow {
	color: #d1b582;
}

.wpweb-section-intro {
	max-width: 42rem;
	margin-right: auto;
	margin-left: auto;
	color: var(--wpweb-muted);
}

.wpweb-service-grid,
.wpweb-country-grid,
.wpweb-why-grid,
.wpweb-audience-grid {
	display: grid;
	gap: 1rem;
}

.wpweb-service-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.wpweb-country-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.wpweb-why-grid,
.wpweb-audience-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wpweb-service-grid > .wp-block-column,
.wpweb-country-grid > .wp-block-column,
.wpweb-why-grid > .wp-block-column,
.wpweb-audience-grid > .wp-block-column {
	min-width: 0;
	margin: 0;
}

.wpweb-service-card,
.wpweb-why-card,
.wpweb-country-card,
.wpweb-audience-card {
	height: 100%;
	padding: 1.5rem;
}

.wpweb-service-card h3,
.wpweb-why-card h3,
.wpweb-audience-card h3 {
	margin-top: 0.4rem;
	color: var(--wpweb-ink);
}

.wpweb-service-card p,
.wpweb-why-card p,
.wpweb-audience-card p {
	color: var(--wpweb-muted);
}

.wpweb-card-index {
	margin-bottom: 0.75rem;
	color: var(--wpweb-gold);
}

.wpweb-card-link a {
	color: var(--wpweb-teal-dark);
	font-weight: 700;
	text-decoration: none;
}

.wpweb-country-card {
	border: 1px solid var(--wpweb-line);
	border-radius: var(--wpweb-radius);
	background: #fff;
	box-shadow: 0 8px 24px rgba(23, 58, 58, 0.04);
}

.wpweb-country-card h3 {
	font-size: 1.1rem;
}

.wpweb-why-card {
	border-top: 3px solid var(--wpweb-gold);
}

.wpweb-audience-card {
	border: 1px solid #f1dfe5;
	border-radius: var(--wpweb-radius);
	background: linear-gradient(145deg, #fff, #f8fbf8);
}

.wpweb-audience-number {
	margin: 0;
	color: var(--wpweb-gold);
	font-size: 2rem;
}

.wpweb-pricing {
	background: #f4f1e9;
}

.wpweb-price-card {
	padding: 1.75rem;
	border: 1px solid var(--wpweb-line);
	border-radius: var(--wpweb-radius);
	background: #fff;
	box-shadow: 0 12px 35px rgba(23, 58, 58, 0.07);
}

.wpweb-price-card h3 {
	margin-top: 0;
	color: var(--wpweb-ink);
}

.wpweb-price-card p {
	color: var(--wpweb-muted);
}

.wpweb-pricing-intro {
	max-width: 48rem;
	color: var(--wpweb-muted);
}

.wpweb-package-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 1.25rem;
}

.wpweb-package-grid > .wp-block-column {
	min-width: 0;
	margin: 0;
}

.wpweb-package-card {
	height: 100%;
	padding: clamp(1.25rem, 2.5vw, 2rem);
	border: 1px solid var(--wpweb-line);
	border-radius: var(--wpweb-radius);
	background: #fff;
	box-shadow: 0 12px 35px rgba(23, 58, 58, 0.06);
}

.wpweb-country-prices-heading {
	margin-top: 3rem;
	color: var(--wpweb-ink);
	font-size: 1.35rem;
}

.wpweb-country-prices {
	margin-top: 1.25rem;
}

.wpweb-country-price-card {
	min-height: 100%;
}

.wpweb-country-price-card .wpweb-package-price {
	font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.wpweb-country-price-card .wpweb-package-subtitle {
	min-height: 4.5em;
}

.wpweb-package-featured {
	border: 2px solid var(--wpweb-gold);
	box-shadow: 0 16px 42px rgba(23, 58, 58, 0.11);
}

.wpweb-package-label {
	margin-bottom: 0.5rem;
	color: var(--wpweb-teal);
	font-size: 0.8rem;
	font-weight: 700;
}

.wpweb-package-card h3 {
	margin: 0 0 0.25rem;
	color: var(--wpweb-ink);
	font-size: 1.2rem;
}

.wpweb-package-price {
	margin: 0.25rem 0;
	color: var(--wpweb-ink);
	font-family: Georgia, serif;
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	font-weight: 700;
}

.wpweb-package-price span {
	color: var(--wpweb-muted);
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 400;
}

.wpweb-package-subtitle {
	min-height: 2.8em;
	color: var(--wpweb-muted);
	font-size: 0.88rem;
}

.wpweb-package-card ul {
	min-height: 11rem;
	padding-left: 1.2rem;
	color: var(--wpweb-muted);
	font-size: 0.9rem;
}

.wpweb-package-card li {
	margin: 0.55rem 0;
}

.wpweb-package-card .wp-block-buttons,
.wpweb-package-card .wp-block-button,
.wpweb-package-card .wp-block-button__link {
	width: 100%;
}

.wpweb-journal .wp-block-query {
	margin-top: 2rem;
}

.wpweb-guide-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

.wpweb-guide-grid > .wp-block-column {
	min-width: 0;
	margin: 0;
}

.wpweb-guide {
	height: 100%;
	padding: 1.25rem 1rem 1rem 0;
	border-top: 1px solid var(--wpweb-line);
}

.wpweb-guide-category {
	color: var(--wpweb-gold);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.wpweb-guide h3 {
	font-size: 1.08rem;
}

.wpweb-guide p:last-child {
	color: var(--wpweb-muted);
	font-size: 0.85rem;
	line-height: 1.85;
}

@media (max-width: 1000px) {
	.wpweb-service-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wpweb-country-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.wpweb-trust {
		grid-template-columns: 1fr;
		margin: 1rem var(--wp--preset--spacing--40) 0;
	}

	.wpweb-trust > .wp-block-group + .wp-block-group {
		border-top: 1px solid var(--wpweb-line);
		border-left: 0;
	}

	.wpweb-about-art {
		min-height: 16rem;
		order: 2;
	}

	.wpweb-why-grid,
	.wpweb-audience-grid,
	.wpweb-package-grid,
	.wpweb-guide-grid {
		grid-template-columns: 1fr;
	}

	.wpweb-package-card ul {
		min-height: 0;
	}

	.wpweb-hero h1 {
		font-size: clamp(2.65rem, 10vw, 3.5rem);
	}

	.wpweb-hero-art {
		min-height: 19rem;
		border-radius: 42% 42% 1rem 1rem;
	}

	.wpweb-hero-art h2 {
		margin-top: 3.5rem;
	}

	.wpweb-contact {
		border-radius: 1rem;
	}
}

@media (max-width: 560px) {
	.wpweb-service-grid,
	.wpweb-country-grid {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		transition-duration: 0.01ms !important;
	}
}

/* Editorial visual system for the production homepage. */
:root {
	--wpweb-ink: #263832;
	--wpweb-muted: #69756e;
	--wpweb-teal: #46675a;
	--wpweb-teal-dark: #2e4b40;
	--wpweb-sage: #e8ece5;
	--wpweb-cream: #f5f2eb;
	--wpweb-gold: #aa8555;
	--wpweb-line: #dedfd7;
	--wpweb-radius: 0.55rem;
}

body {
	font-family: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;
	background: #fff;
}

.wp-site-blocks > header {
	position: sticky;
	top: 0;
	background: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(14px);
}

.wp-site-blocks > header > .wp-block-group {
	padding-top: 0.75rem !important;
	padding-bottom: 0.75rem !important;
}

.wp-block-site-title {
	font-size: 1.3rem !important;
}

.wp-block-button__link {
	border-radius: 0.25rem;
}

.wpweb-hero {
	background: #f5f2eb;
}

.wpweb-hero > .wp-block-columns {
	gap: clamp(2rem, 5vw, 5rem);
}

.wpweb-hero h1 {
	max-width: 12ch;
	font-size: clamp(2.7rem, 4.2vw, 3.5rem);
	font-weight: 500;
	letter-spacing: -0.07em;
	line-height: 1.18;
}

.wpweb-hero .wp-block-column:first-child > p:not(.wpweb-eyebrow) {
	max-width: 34rem;
	color: #59665f;
	font-size: 1.08rem;
	line-height: 1.95;
}

.wpweb-eyebrow {
	color: #8c704a;
	font-size: 0.73rem;
	letter-spacing: 0.16em;
}

.wpweb-hero-art {
	position: relative;
	min-height: 34rem;
	padding: 0;
	border: 0;
	border-radius: 0.4rem 8rem 0.4rem 0.4rem;
	background: #d3d9d2;
	box-shadow: 0 24px 60px rgba(38, 56, 50, 0.15);
}

.wpweb-hero-art::before,
.wpweb-hero-art::after {
	display: none;
}

.wpweb-hero-photo {
	position: absolute;
	inset: 0;
	margin: 0;
}

.wpweb-hero-photo img {
	width: 100%;
	height: 100%;
	border-radius: inherit;
	object-fit: cover;
	object-position: center 58%;
}

.wpweb-hero-art::after {
	display: block;
	position: absolute;
	inset: 45% 0 0;
	width: auto;
	height: auto;
	border: 0;
	border-radius: 0 0 0.4rem 0.4rem;
	background: linear-gradient(0deg, rgba(20, 33, 28, 0.78), transparent);
}

.wpweb-hero-caption {
	position: absolute;
	z-index: 2;
	bottom: 2rem;
	left: 2rem;
	display: grid;
	gap: 0.25rem;
	color: #fff;
}

.wpweb-hero-caption span {
	font-size: 0.78rem;
	letter-spacing: 0.1em;
}

.wpweb-hero-caption strong {
	font-family: Georgia, "Noto Serif SC", serif;
	font-size: clamp(1.6rem, 3vw, 2.4rem);
	font-weight: 500;
}

.wpweb-trust {
	margin-top: -1rem;
	border-radius: 0.25rem;
	box-shadow: 0 10px 32px rgba(38, 56, 50, 0.06);
}

.wpweb-about-art {
	position: relative;
	min-height: 31rem;
	padding: 0;
	overflow: hidden;
	border-radius: 0.25rem 7rem 0.25rem 0.25rem;
	background: #d3d9d2;
}

.wpweb-about-art img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wpweb-about-photo-caption {
	position: absolute;
	bottom: 1.25rem;
	left: 1.25rem;
	padding: 0.75rem 1rem;
	background: rgba(255, 255, 255, 0.92);
	color: var(--wpweb-ink);
	font-size: 0.8rem;
}

.wpweb-services,
.wpweb-why {
	background: #f5f2eb;
}

.wpweb-card {
	border: 0;
	border-top: 1px solid #c9c9bd;
	border-radius: 0;
	box-shadow: none;
}

.wpweb-service-card {
	padding: 1.5rem 1.15rem 1.75rem;
	background: transparent;
}

.wpweb-service-card h3 {
	font-size: 1.2rem;
	font-weight: 600;
}

.wpweb-service-card p:not(.wpweb-card-index, .wpweb-card-link) {
	min-height: 5.5em;
	color: var(--wpweb-muted);
	font-size: 0.91rem;
	line-height: 1.85;
}

.wpweb-card-index {
	color: #8c704a;
	font-size: 0.68rem;
	letter-spacing: 0.12em;
}

.wpweb-card-link a {
	font-size: 0.82rem;
}

.wpweb-country-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.8rem;
}

.wpweb-country-card {
	padding: 1.35rem 1.1rem;
	border: 1px solid #dedfd7;
	border-radius: 0.25rem;
	box-shadow: none;
}

.wpweb-country-card-featured {
	border-color: #aa8555;
	background: #f7f1e7;
}

.wpweb-country-cta-wrap {
	min-height: 100%;
}

.wpweb-country-cta {
	display: flex;
	min-height: 100%;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	padding: 1.4rem;
	border: 1px solid #bd7955;
	background: #fffdfa;
	color: #81533c;
	font-size: 0.95rem;
	font-weight: 650;
	text-align: center;
	transition: background-color 160ms ease, color 160ms ease;
}

.wpweb-country-cta:hover {
	background: #bd7955;
	color: #fff;
}

.wpweb-country-cta span {
	font-size: 1.2em;
}

.wpweb-article-archive {
	padding-bottom: clamp(4rem, 8vw, 7rem);
}

.wpweb-article-query .wp-block-post-template {
	gap: 1.5rem;
}

.wpweb-article-card {
	height: 100%;
	padding-bottom: 1.2rem;
	border: 1px solid var(--wpweb-line);
	background: #fffdfa;
}

.wpweb-article-card > *:not(.wp-block-post-featured-image) {
	margin-right: 1.2rem;
	margin-left: 1.2rem;
}

.wpweb-article-card .wp-block-post-featured-image {
	margin: 0 0 1rem;
}

.wpweb-article-card .wp-block-post-featured-image img {
	width: 100%;
	 aspect-ratio: 4 / 3;
	object-fit: cover;
}

.wpweb-article-card .wp-block-post-date {
	color: var(--wpweb-gold);
	font-size: 0.75rem;
}

.wpweb-article-card .wp-block-post-title {
	font-family: "Noto Serif SC", "Songti SC", Georgia, serif;
	font-size: 1.15rem;
}

.wpweb-article-card .wp-block-post-title a {
	color: var(--wpweb-ink);
	text-decoration: none;
}

.wpweb-article-query .wp-block-query-pagination {
	margin-top: 2rem;
	padding-top: 1.2rem;
	border-top: 1px solid var(--wpweb-line);
}

.wpweb-country-index {
	color: #8c704a !important;
	font-size: 0.61rem !important;
	letter-spacing: 0.1em;
}

.wpweb-country-card > p:not(.wpweb-country-index, .wpweb-country-detail) {
	margin-top: 0.75rem;
	color: var(--wpweb-ink);
	font-family: Georgia, serif;
	font-size: 1rem;
	font-weight: 700;
}

.wpweb-country-detail {
	font-size: 0.75rem !important;
	line-height: 1.7;
}

.wpweb-why-card {
	border-top-color: #aa8555;
	background: #fff;
}

.wpweb-pricing {
	background: #f5f2eb;
}

.wpweb-family-tablist {
	display: flex;
	gap: 0.75rem;
	margin: 1.75rem 0 2.5rem;
	border-bottom: 1px solid var(--wpweb-line);
}

.wpweb-family-tablist [role="tab"] {
	min-height: 3.25rem;
	padding: 0 1.15rem;
	border: 0;
	border-bottom: 2px solid transparent;
	background: transparent;
	color: var(--wpweb-muted);
	font: inherit;
	font-size: 0.88rem;
	cursor: pointer;
}

.wpweb-family-tablist [role="tab"].is-active,
.wpweb-family-tablist [role="tab"][aria-selected="true"] {
	border-bottom-color: #bd7955;
	color: #a45f3d;
}

.wpweb-family-tablist [role="tab"]:focus-visible {
	outline: 2px solid #bd7955;
	outline-offset: 3px;
}

.wpweb-family-panel[hidden] {
	display: none !important;
}

.wpweb-family-panel {
	display: grid;
	grid-template-columns: 1fr 0.95fr;
	align-items: center;
	gap: clamp(2rem, 6vw, 5rem);
}

.wpweb-family-copy {
	max-width: 39rem;
}

.wpweb-family-kicker {
	color: var(--wpweb-gold);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.12em;
}

.wpweb-family-copy h3 {
	margin: 0.65rem 0 1rem;
	font-family: "Noto Serif SC", "Songti SC", Georgia, serif;
	font-size: clamp(1.7rem, 3vw, 2.35rem);
	font-weight: 500;
	line-height: 1.5;
}

.wpweb-family-copy > p:not(.wpweb-family-kicker) {
	color: var(--wpweb-muted);
	font-size: 0.9rem;
	line-height: 1.95;
}

.wpweb-family-copy ul {
	display: grid;
	gap: 0.7rem;
	margin: 1.35rem 0 0;
	padding: 0;
	list-style: none;
	font-size: 0.85rem;
}

.wpweb-family-copy li::before {
	margin-right: 0.65rem;
	color: var(--wpweb-gold);
	content: "✓";
}

.wpweb-family-photo {
	position: relative;
	min-height: 26rem;
	margin: 0;
	overflow: hidden;
	border-radius: 0.3rem 6rem 0.3rem 0.3rem;
	background: #d3d9d2;
}

.wpweb-family-photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wpweb-family-photo figcaption {
	position: absolute;
	bottom: 1rem;
	left: 1rem;
	padding: 0.65rem 0.9rem;
	background: rgba(255, 255, 255, 0.93);
	color: var(--wpweb-ink);
	font-size: 0.76rem;
}

.wpweb-timeline {
	position: relative;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1.1rem;
}

.wpweb-timeline::before {
	position: absolute;
	top: 1.7rem;
	right: 0;
	left: 0;
	height: 1px;
	background: rgba(255, 255, 255, 0.28);
	content: "";
}

.wpweb-timeline > .wp-block-column {
	min-width: 0;
	margin: 0;
}

.wpweb-timeline-step {
	position: relative;
	z-index: 1;
	padding-top: 3.9rem;
}

.wpweb-timeline-no {
	position: absolute;
	top: 0;
	left: 0;
	display: grid;
	width: 3.4rem;
	height: 3.4rem;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 50%;
	background: #2e4b40;
	color: #e2c99e;
	font-family: Georgia, serif;
}

.wpweb-timeline-duration {
	margin-bottom: 0.3rem;
	color: #d1b582;
	font-size: 0.72rem;
}

.wpweb-timeline-step h3 {
	margin: 0 0 0.55rem;
	color: #fff;
	font-family: "Noto Serif SC", "Songti SC", Georgia, serif;
	font-size: 1.1rem;
	font-weight: 500;
}

.wpweb-timeline-step p:last-child {
	color: #d5ddd7;
	font-size: 0.77rem;
	line-height: 1.8;
}

.wpweb-package-card {
	border-radius: 0.25rem;
	box-shadow: 0 8px 26px rgba(38, 56, 50, 0.045);
}

.wpweb-package-featured {
	border-color: #aa8555;
}

.wpweb-package-price {
	font-size: clamp(1.35rem, 2vw, 1.8rem);
	letter-spacing: -0.04em;
}

.wpweb-package-price span {
	font-size: 0.72rem;
	letter-spacing: 0;
}

.wpweb-country-prices .wpweb-country-price-card {
	box-shadow: none;
}

.wpweb-country-prices .wpweb-package-subtitle {
	min-height: 5.5em;
	font-size: 0.8rem;
	line-height: 1.7;
}

.wpweb-faq .wp-block-details {
	padding: 1.1rem 0;
	border-bottom: 1px solid var(--wpweb-line);
}

.wpweb-faq summary {
	color: var(--wpweb-ink);
	font-size: 1rem;
	font-weight: 600;
}

.wpweb-faq .wp-block-details p {
	max-width: 54rem;
	margin: 0.9rem 0 0;
	color: var(--wpweb-muted);
	line-height: 1.9;
}

.wpweb-faq-layout {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	align-items: start;
	gap: clamp(2rem, 7vw, 5rem);
}

.wpweb-faq-contact {
	position: sticky;
	top: 7rem;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	border-top: 3px solid #bd7955;
	background: #eee8df;
	text-align: center;
}

.wpweb-faq-kicker {
	color: #a45f3d;
	font-size: 0.72rem;
	letter-spacing: 0.14em;
}

.wpweb-faq-contact h3 {
	max-width: 12ch;
	margin: 0 auto 0.8rem;
	font-family: "Noto Serif SC", "Songti SC", Georgia, serif;
	font-size: 1.7rem;
	font-weight: 500;
}

.wpweb-faq-contact > p:not(.wpweb-faq-kicker, .wpweb-faq-contact-note) {
	color: var(--wpweb-muted);
	font-size: 0.88rem;
}

.wpweb-faq-cta {
	display: flex;
	min-height: 3rem;
	align-items: center;
	justify-content: center;
	margin: 1rem 0;
	background: #211e1b;
	color: #fff;
	font-size: 0.86rem;
}

.wpweb-faq-cta:hover {
	background: #3a302a;
	color: #fff;
}

.wpweb-faq-contact-note {
	margin: 0;
	color: var(--wpweb-muted);
	font-size: 0.8rem;
}

.wpweb-contact {
	border-radius: 0;
}

@media (max-width: 1000px) {
	.wpweb-country-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.wpweb-timeline {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.wpweb-hero-art {
		min-height: 25rem;
		border-radius: 0.3rem 5rem 0.3rem 0.3rem;
	}

	.wpweb-about-art {
		min-height: 24rem;
		order: 0;
	}

	.wpweb-family-panel {
		grid-template-columns: 1fr;
	}

	.wpweb-faq-layout {
		grid-template-columns: 1fr;
	}

	.wpweb-faq-contact {
		position: static;
	}

	.wpweb-family-photo {
		min-height: 22rem;
	}

	.wpweb-country-grid,
	.wpweb-package-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wpweb-country-prices .wpweb-country-price-card .wpweb-package-subtitle {
		min-height: 0;
	}
}

@media (max-width: 560px) {
	.wpweb-hero h1 {
		font-size: clamp(2.7rem, 10vw, 3.5rem);
	}

	.wpweb-hero-art {
		min-height: 21rem;
	}

	.wpweb-service-grid,
	.wpweb-country-grid,
	.wpweb-package-grid {
		grid-template-columns: 1fr;
	}

	.wpweb-service-card p:not(.wpweb-card-index, .wpweb-card-link) {
		min-height: 0;
	}

	.wpweb-about-art {
		min-height: 20rem;
	}

	.wpweb-family-tablist {
		gap: 0.15rem;
		overflow-x: auto;
	}

	.wpweb-family-tablist [role="tab"] {
		flex: 0 0 auto;
		padding: 0 0.7rem;
		font-size: 0.77rem;
	}

	.wpweb-timeline {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.wpweb-timeline::before {
		top: 0;
		bottom: 0;
		left: 1.65rem;
		width: 1px;
		height: auto;
	}

	.wpweb-timeline-step {
		min-height: 8rem;
		padding: 0.2rem 0 1.3rem 4.4rem;
	}

	.wpweb-timeline-no {
		width: 3.3rem;
		height: 3.3rem;
	}
}

.wpweb-pricing {
	background: #f7f3ed;
}

.wpweb-pricing > .wp-block-group > .wpweb-eyebrow,
.wpweb-pricing > .wp-block-group > h2,
.wpweb-pricing > .wp-block-group > .wpweb-pricing-intro {
	max-width: 56rem;
}

.wpweb-pricing > .wp-block-group > h2 {
	font-family: "Noto Serif SC", "Songti SC", Georgia, serif;
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 500;
}

.wpweb-country-tabs {
	display: flex;
	gap: 0.8rem;
	overflow-x: auto;
	margin: 2rem 0 1.5rem;
	border-bottom: 1px solid #d8d1c6;
}

.wpweb-country-tabs [role="tab"] {
	flex: 0 0 auto;
	min-height: 3.25rem;
	padding: 0 1.1rem;
	border: 0;
	border-bottom: 2px solid transparent;
	background: transparent;
	color: #827d74;
	font: inherit;
	font-size: 0.88rem;
	cursor: pointer;
}

.wpweb-country-tabs [role="tab"].is-active,
.wpweb-country-tabs [role="tab"][aria-selected="true"] {
	border-bottom-color: #bd7955;
	color: #a45f3d;
}

.wpweb-country-tabs [role="tab"]:focus-visible,
.wpweb-plan-cta:focus-visible {
	outline: 2px solid #bd7955;
	outline-offset: 3px;
}

.wpweb-package-panel[hidden] {
	display: none !important;
}

.wpweb-plan-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 1.15rem;
}

.wpweb-plan-grid-single {
	grid-template-columns: minmax(0, 1fr);
	max-width: 48rem;
	margin: 0 auto;
}

.wpweb-plan-card {
	position: relative;
	display: flex;
	min-width: 0;
	flex-direction: column;
	padding: 0 1.45rem 1.25rem;
	border: 1px solid #ded5c9;
	border-radius: 0.3rem;
	background: #fffdfa;
	box-shadow: 0 8px 26px rgba(58, 45, 33, 0.04);
}

.wpweb-plan-card.is-featured {
	border: 2px solid #bd7955;
	box-shadow: 0 12px 30px rgba(102, 62, 39, 0.1);
}

.wpweb-plan-head {
	min-height: 9.5rem;
	margin: 0 -1.45rem 0.75rem;
	padding: 1.35rem 1.45rem 1.1rem;
	border-bottom: 1px solid #e8e0d7;
}

.wpweb-plan-tag {
	display: block;
	margin-bottom: 0.5rem;
	color: #bd7955;
	font-size: 0.72rem;
	font-weight: 700;
}

.wpweb-plan-head h3 {
	margin: 0 0 0.1rem;
	color: #38332e;
	font-size: 1rem;
}

.wpweb-plan-price {
	display: block;
	margin: 0.3rem 0 0.15rem;
	color: #342d27;
	font: 500 clamp(1.35rem, 2vw, 1.8rem)/1.35 Georgia, "Times New Roman", serif;
	letter-spacing: -0.035em;
	white-space: nowrap;
}

.wpweb-plan-price small {
	color: #80776e;
	font: 0.68rem Arial, sans-serif;
	letter-spacing: 0;
}

.wpweb-plan-head em {
	color: #93887d;
	font-size: 0.68rem;
}

.wpweb-plan-card ul {
	flex: 1;
	margin: 0;
	padding: 0;
	list-style: none;
}

.wpweb-plan-card li {
	position: relative;
	padding: 0.62rem 0 0.62rem 1rem;
	border-bottom: 1px solid #eee8e0;
	color: #554f49;
	font-size: 0.84rem;
	line-height: 1.65;
}

.wpweb-plan-card li::before {
	position: absolute;
	top: 1.08rem;
	left: 0;
	width: 0.34rem;
	height: 0.34rem;
	border-radius: 50%;
	background: #bd7955;
	content: "";
}

.wpweb-plan-card li:last-child {
	border-bottom: 0;
}

.wpweb-plan-cta {
	display: flex;
	min-height: 2.9rem;
	align-items: center;
	justify-content: center;
	margin-top: 1rem;
	padding: 0.65rem 0.8rem;
	border: 1px solid #bd7955;
	border-radius: 0.2rem;
	background: #bd7955;
	color: #fff;
	font-size: 0.85rem;
	font-weight: 650;
	text-align: center;
}

.wpweb-plan-cta:hover {
	background: #a86645;
	color: #fff;
}

.wpweb-plan-cta.is-outline {
	background: transparent;
	color: #3c332d;
}

.wpweb-plan-cta.is-outline:hover {
	background: #f7eee7;
}

.wpweb-plan-popular {
	position: absolute;
	top: 0;
	right: 0;
	padding: 0.35rem 0.75rem;
	border-radius: 0 0.2rem 0 0.4rem;
	background: #bd7955;
	color: #fff;
	font-size: 0.65rem;
	font-weight: 700;
}

@media (max-width: 900px) {
	.wpweb-plan-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.wpweb-plan-grid,
	.wpweb-plan-grid-single {
		grid-template-columns: 1fr;
	}

	.wpweb-plan-head {
		min-height: 0;
	}

	.wpweb-plan-price {
		font-size: 1.6rem;
	}

	.wpweb-country-tabs {
		gap: 0.25rem;
		margin-top: 1.25rem;
	}

	.wpweb-country-tabs [role="tab"] {
		padding: 0 0.75rem;
		font-size: 0.8rem;
	}

	.wpweb-plan-grid:not(.wpweb-plan-grid-single) {
		grid-auto-columns: minmax(17rem, 86%);
		grid-auto-flow: column;
		grid-template-columns: none;
		overflow-x: auto;
		padding: 0.15rem 0.15rem 1rem;
		scroll-snap-type: x mandatory;
	}

	.wpweb-plan-grid:not(.wpweb-plan-grid-single) > .wpweb-plan-card {
		scroll-snap-align: start;
	}
}

/* Why choose us */
.why-choose{padding:76px 24px;background:#fff;color:#263832}.why-wrap{max-width:1200px;margin:0 auto}.why-eyebrow{margin:0 0 16px;color:#aa8555;font-size:12px;letter-spacing:.12em}.why-choose h2{margin:0 0 18px;font:400 clamp(28px,3.2vw,40px)/1.4 "Noto Serif SC",Georgia,serif}.why-intro{margin:0 0 34px;color:#69756e;font-size:15px;line-height:1.9}.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.why-card{padding:28px 24px;background:#fbfaf7;border:1px solid #dedfd7}.why-number{display:block;margin-bottom:24px;color:#aa8555;font:400 28px/1 Georgia,serif}.why-card h3{margin:0 0 14px;font-size:18px;line-height:1.6;font-weight:500}.why-card p{margin:0;color:#69756e;font-size:14px;line-height:1.9}.why-link{display:inline-block;margin-top:28px;color:#46675a;font-size:14px;text-decoration:underline;text-underline-offset:5px}@media(max-width:1000px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.why-choose{padding:48px 24px}.why-grid{grid-template-columns:1fr}.why-card{padding:24px}.why-number{margin-bottom:16px}}
/* Case section */
.case-section{padding:76px 24px;background:#f5f2eb;color:#263832;scroll-margin-top:90px}.case-wrap{max-width:1200px;margin:auto}.case-eyebrow{margin:0 0 16px;color:#aa8555;font-size:12px;letter-spacing:.12em}.case-section h2{margin:0 0 18px;font:400 clamp(28px,3.2vw,40px)/1.4 "Noto Serif SC",Georgia,serif}.case-intro{margin:0 0 32px;color:#69756e;font-size:15px}.case-empty{padding:36px;background:#fff;border:1px solid #dedfd7;border-left:3px solid #aa8555}.case-label{color:#aa8555;font-size:12px}.case-empty h3{margin:16px 0 12px;font-size:22px;font-weight:400}.case-empty p{color:#69756e;font-size:14px}.case-empty a{display:inline-block;margin-top:12px;color:#46675a;font-size:14px;text-decoration:underline;text-underline-offset:5px}@media(max-width:600px){.case-section{padding:48px 24px}.case-empty{padding:26px}}
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.case-story{background:#fff;border:1px solid #dedfd7;overflow:hidden}.case-story img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.case-story-copy{padding:24px}.case-story h3{font-size:21px;line-height:1.6;margin:0 0 14px}.case-story-copy p{color:#69756e;font-size:14px;line-height:1.9}.case-story-copy>a{color:#46675a;font-size:14px}@media(max-width:900px){.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.case-grid{grid-template-columns:1fr}}
.case-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.case-placeholder{background:#fff;border:1px solid #dedfd7;padding:28px 22px;min-height:200px}.case-placeholder h3{font-size:20px;font-weight:400;margin:20px 0 12px}.case-placeholder p{font-size:14px;color:#69756e}.case-actions{text-align:center;margin-top:32px}.case-consult{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 32px;background:#46675a;color:#fff;text-decoration:none;font-size:14px}.case-consult:hover{background:#2e4b40}@media(max-width:1000px){.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.case-grid{grid-template-columns:1fr}}
/* Editorial service advantages */
.why-editorial{padding:88px 24px;background:#fbfaf7}.why-editorial .why-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,6vw,88px);align-items:stretch}.why-brand{position:relative;isolation:isolate;overflow:hidden;min-height:650px;background:#e8e9df}.why-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:42% center;z-index:-2}.why-brand:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(245,242,235,.96) 0%,rgba(245,242,235,.88) 37%,rgba(245,242,235,.46) 72%,rgba(245,242,235,.88) 100%);z-index:-1}.why-brand-content{padding:44px 38px;display:flex;flex-direction:column;min-height:650px;box-sizing:border-box}.why-editorial .why-eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:28px}.why-editorial h2{font-size:clamp(36px,4.2vw,54px);line-height:1.35;letter-spacing:.04em;margin-bottom:22px}.why-editorial .why-intro{font-size:14px;line-height:2;color:#46574d;margin:0}.why-stats{display:flex;gap:32px;margin:30px 0 28px}.why-stats strong{font:400 clamp(30px,3vw,42px)/1.2 Georgia,serif;color:#2e4b40;white-space:nowrap}.why-stats strong span{font:400 15px/1 sans-serif;margin-left:4px}.why-stats p{font-size:12px;color:#59665f;margin:8px 0 0}.why-editorial .why-link{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:auto;padding-top:20px;border-top:1px solid #8c998c;color:#263832;text-decoration:none;font-size:14px}.why-link span{font-size:24px}.why-editorial .why-grid{display:flex;flex-direction:column;gap:0}.why-editorial .why-card{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:18px;padding:25px 0;background:transparent;border:0;border-top:1px solid #d8dcd3}.why-editorial .why-card:last-child{border-bottom:1px solid #d8dcd3}.why-editorial .why-number{grid-column:1;grid-row:1 / 3;font:400 24px/1.5 Georgia,serif;margin:0;color:#aa8555}.why-editorial .why-card h3{grid-column:2;margin:0 0 10px;font-size:20px;font-weight:400;line-height:1.5}.why-editorial .why-card p{grid-column:2;font-size:14px;line-height:1.9;margin:0;color:#69756e}@media(max-width:800px){.why-editorial{padding:56px 24px}.why-editorial .why-wrap{grid-template-columns:1fr;gap:32px}.why-brand,.why-brand-content{min-height:460px}.why-brand-content{padding:32px}.why-background{object-position:center 55%}.why-editorial h2 br{display:none}.why-editorial h2{font-size:36px}.why-stats{margin:24px 0 32px}}@media(max-width:480px){.why-brand-content{padding:28px 24px}.why-editorial .why-card{grid-template-columns:32px minmax(0,1fr);column-gap:12px}.why-editorial .why-card h3{font-size:18px}.why-editorial .why-number{font-size:21px}}
.hero-countries{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;color:#aa8555;font-size:12px;line-height:1.8}.hero-countries a{display:inline-flex;align-items:center;gap:5px;color:inherit;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.hero-countries img{display:inline-block;width:16px;height:16px;object-fit:contain}.hero-countries a:hover{color:#46675a}.hero-countries .country-dot{color:#b5aa99}
.hero-consult{box-sizing:border-box;max-width:400px;margin-top:28px;padding:26px;background:#fff;border:1px solid #dedfd7;border-top:2px solid #b87c58;box-shadow:0 12px 32px #2638320a;color:#263832}.hero-consult h2{margin:0 0 6px;font-size:20px;font-weight:400;line-height:1.5}.consult-intro{font-size:13px;color:#69756e;line-height:1.7;margin:0 0 20px}.hero-consult>label:not(.consult-consent),.hero-consult legend{display:block;margin:12px 0 5px;font-size:12px;color:#69756e}.hero-consult>input{box-sizing:border-box;width:100%;height:40px;padding:8px 12px;border:1px solid #ded6ca;background:#fbfaf7;border-radius:2px;font:inherit;font-size:14px}.hero-consult fieldset{padding:0;border:0;margin:12px 0}.hero-consult legend{padding:0}.consult-options{display:flex;flex-wrap:wrap;gap:6px}.consult-options label{cursor:pointer;position:relative}.consult-options input{position:absolute;opacity:0;width:1px;height:1px}.consult-options span{display:block;padding:4px 10px;border-radius:20px;background:#f5f2eb;font-size:12px}.consult-options input:checked+span{background:#b87c58;color:#fff}.consult-options input:focus-visible+span{outline:2px solid #46675a;outline-offset:2px}.consult-consent{display:flex;gap:7px;align-items:flex-start;font-size:11px;line-height:1.7;margin:18px 0}.consult-consent input{margin-top:3px}.consult-consent a{text-decoration:underline}.hero-consult button{width:100%;padding:12px;background:#2e4b40;color:#fff;border:0;cursor:pointer;font:inherit;font-size:14px}.hero-consult button:hover{background:#46675a}.consult-note{font-size:11px;color:#69756e;margin:12px 0 0}.hero-grid{align-items:start}.hero-visual{position:sticky;top:110px}@media(max-width:700px){.hero-visual{position:relative;top:auto}.hero-consult{max-width:none}}
/* Align hero photograph with the consultation column. */
@media(min-width:761px){.hero-grid{align-items:stretch}.hero-visual{position:relative;top:auto;align-self:stretch;min-height:510px;height:auto}.wpweb-hero>.wp-block-columns{align-items:stretch!important}.wpweb-hero>.wp-block-columns>.wp-block-column{align-self:stretch!important}.wpweb-hero>.wp-block-columns>.wp-block-column:last-child{display:flex}.wpweb-hero .wpweb-hero-art{width:100%;height:auto;flex:1;margin:0;overflow:hidden}.wpweb-hero .wpweb-hero-photo{height:100%}}
@media(max-width:760px){.hero-visual{position:relative;top:auto;height:430px;min-height:0}}@media(max-width:600px){.hero-visual{height:360px}}
@media(min-width:1000px){.about-copy .about-title-inline,.wpweb-home .about-title-inline{font-size:clamp(24px,2.4vw,32px)!important;white-space:nowrap;letter-spacing:0;max-width:none}}@media(max-width:999px){.about-copy .about-title-inline,.wpweb-home .about-title-inline{font-size:clamp(24px,3.6vw,32px)!important;white-space:normal;letter-spacing:0}}
/* Editorial destinations */
.market-editorial{padding:88px 24px;background:#fff;color:#263832;scroll-margin-top:90px}.market-layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,6vw,90px)}.market-eyebrow{font-size:11px;letter-spacing:.13em;color:#aa8555;margin:0 0 28px}.market-intro h2{font:400 clamp(30px,3.2vw,44px)/1.5 "Noto Serif SC",Georgia,serif;margin:0 0 24px}.market-description{font-size:14px;color:#69756e;line-height:2;max-width:330px;margin:0}.market-summary{display:flex;align-items:center;gap:22px;margin:30px 0}.market-summary strong{font:400 76px/1 Georgia,serif;color:#46675a}.market-summary span{font-size:12px;color:#69756e;line-height:2}.market-cta{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-top:1px solid #a9b2a7;border-bottom:1px solid #a9b2a7;text-decoration:none;color:#46675a;font-size:14px}.market-cta span{font-size:25px}.market-cta:hover{color:#aa8555}.market-disclaimer{font-size:11px;line-height:1.9;color:#7b837d;margin:18px 0 0}.market-list{border-top:1px solid #cdd2c8}.market-row{display:grid;grid-template-columns:30px minmax(100px,.8fr) minmax(0,1.2fr);align-items:center;gap:18px;padding:28px 0;border-bottom:1px solid #dedfd7}.market-number{font:400 17px Georgia,serif;color:#aa8555;align-self:start;margin-top:3px}.market-region{margin:0 0 8px;font:10px/1.5 Arial,sans-serif;letter-spacing:.13em;color:#92998e}.market-country h3{font:400 24px/1.5 "Noto Serif SC",Georgia,serif;margin:0}.market-amount{font:400 clamp(17px,1.6vw,22px)/1.5 Georgia,serif;margin:0;color:#2e4b40;white-space:nowrap}.market-amount small{font:10px Arial,sans-serif;letter-spacing:.06em}.market-note{font-size:12px;color:#69756e;line-height:1.8;margin:8px 0 0}@media(max-width:900px){.market-layout{grid-template-columns:1fr;gap:36px}.market-intro h2 br{display:none}.market-description{max-width:600px}.market-summary{margin:22px 0}.market-summary strong{font-size:58px}.market-editorial{padding:56px 24px}}@media(max-width:480px){.market-row{grid-template-columns:24px minmax(0,1fr);gap:8px 12px;padding:22px 0}.market-cost{grid-column:2}.market-country h3{font-size:22px}.market-amount{font-size:20px}.market-region{margin-bottom:5px}}
.contact-qr{margin:0;text-align:center;justify-self:end;flex-shrink:0}.contact-qr img{display:block;width:150px;height:150px;padding:8px;box-sizing:border-box;background:#fff;object-fit:contain;image-rendering:pixelated}.contact-qr figcaption{font-size:12px;line-height:1.8;color:#e8e6da;margin-top:10px}@media(min-width:1000px){.contact-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr) 150px;gap:36px}}@media(max-width:999px){.contact-qr{justify-self:start}}
@media(min-width:1000px){.wpweb-contact{position:relative}.wpweb-contact>.contact-qr{position:absolute;right:max(24px,calc((100vw - 1200px)/2));top:50%;transform:translateY(-50%)}.wpweb-contact>.wp-block-group{max-width:760px;padding-right:170px}}
.service-grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}@media(max-width:700px){.service-grid-three{grid-template-columns:1fr}}.wpweb-services-inner{max-width:1200px;margin:0 auto;padding:70px 24px}.wpweb-services .service-card{padding:24px 0;border-top:1px solid #c9c9bd}.wpweb-services .service-index{font-size:12px;color:#69756e;letter-spacing:.08em}.wpweb-services .service-card h3{font-size:24px;font-weight:400;margin:18px 0 12px}.wpweb-services .service-card>p:not(.service-index){font-size:14px;line-height:1.9;color:#69756e}.wpweb-services .text-link{display:inline-block;margin-top:16px;color:#46675a;font-size:14px}
/* Service directory with line icons */
.service-grid-three{display:flex;flex-direction:column;gap:0}.service-grid-three .service-card{display:grid;grid-template-columns:74px minmax(140px,.7fr) minmax(0,1.5fr) 150px;gap:12px 28px;align-items:center;min-height:0;padding:30px 0;border:0;border-top:1px solid #d5d9cf;background:transparent}.service-grid-three .service-card:last-child{border-bottom:1px solid #d5d9cf}.service-grid-three .service-index{grid-column:2 / -1;grid-row:1;margin:0!important;font-size:10px!important;letter-spacing:.13em;color:#aa8555!important}.service-symbol{grid-column:1;grid-row:1 / 3;color:#46675a;display:flex;align-items:center;justify-content:center;width:72px;height:72px;background:#edf0e8;border-radius:50%}.service-symbol svg{width:42px;height:42px}.service-grid-three .service-card h3{grid-column:2;grid-row:2;font:400 clamp(24px,2.4vw,32px)/1.5 "Noto Serif SC",Georgia,serif!important;margin:0!important}.service-grid-three .service-card>p:not(.service-index){grid-column:3;grid-row:2;margin:0!important;font-size:14px!important;line-height:1.9;color:#69756e}.service-grid-three .text-link{grid-column:4;grid-row:2;margin:0!important;justify-self:end;font-size:13px;white-space:nowrap;text-decoration:none;color:#46675a}.service-grid-three .text-link:hover{color:#aa8555}@media(max-width:900px){.service-grid-three .service-card{grid-template-columns:64px minmax(0,1fr);gap:10px 22px}.service-grid-three .service-index{grid-column:2}.service-symbol{width:60px;height:60px;grid-row:1 / 3}.service-symbol svg{width:36px;height:36px}.service-grid-three .service-card>p:not(.service-index){grid-column:2;grid-row:3}.service-grid-three .text-link{grid-column:2;grid-row:4;justify-self:start;margin-top:6px!important}}@media(max-width:480px){.service-grid-three .service-card{gap:10px 16px;grid-template-columns:50px minmax(0,1fr);padding:26px 0}.service-symbol{width:48px;height:48px}.service-symbol svg{width:30px;height:30px}}
/* Primary surrogacy service, with IVF and egg freezing alongside. */
.service-asymmetric{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.service-asymmetric .service-card{grid-template-columns:64px minmax(0,1fr);gap:10px 20px;padding:26px 0}.service-asymmetric .service-card:first-child{grid-column:1;grid-row:1 / 3;padding:36px;background:#edf0e8;border:0;display:flex;flex-direction:column;align-items:flex-start;gap:0;position:relative;overflow:hidden}.service-asymmetric .service-card:first-child:after{content:"";position:absolute;width:240px;height:240px;border:1px solid #46675a18;border-radius:50%;right:-100px;bottom:-100px;pointer-events:none}.service-asymmetric .service-card:first-child .service-index{order:0;margin-bottom:26px!important}.service-asymmetric .service-card:first-child .service-symbol{order:1;background:#fff9;width:86px;height:86px;margin-bottom:20px}.service-asymmetric .service-card:first-child .service-symbol svg{width:48px;height:48px}.service-asymmetric .service-card:first-child h3{order:2;font-size:36px!important;margin-bottom:18px!important}.service-asymmetric .service-card:first-child>p:not(.service-index){order:3;max-width:390px;margin-bottom:30px!important}.service-asymmetric .service-card:first-child .text-link{order:4;margin-top:auto!important;align-self:flex-start}.service-asymmetric .service-card:nth-child(n+2){grid-column:2}.service-asymmetric .service-card:nth-child(n+2) .service-index{grid-column:2;grid-row:1}.service-asymmetric .service-card:nth-child(n+2) .service-symbol{grid-column:1;grid-row:1 / 3;width:60px;height:60px}.service-asymmetric .service-card:nth-child(n+2) h3{grid-column:2;grid-row:2;font-size:26px!important}.service-asymmetric .service-card:nth-child(n+2)>p:not(.service-index){grid-column:2;grid-row:3}.service-asymmetric .service-card:nth-child(n+2) .text-link{grid-column:2;grid-row:4;justify-self:start;margin-top:8px!important}@media(max-width:760px){.service-asymmetric{grid-template-columns:1fr;gap:24px}.service-asymmetric .service-card:first-child{grid-column:1;grid-row:auto;padding:28px}.service-asymmetric .service-card:nth-child(n+2){grid-column:1}.service-asymmetric .service-card:first-child h3{font-size:30px!important}}
/* Soft family photography behind the primary service. */
.service-asymmetric .service-card:first-child{isolation:isolate;min-height:440px;background-color:#f1f0e8;background-size:cover;background-position:center 48%}.service-asymmetric .service-card:first-child:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(248,247,240,.98) 0%,rgba(248,247,240,.94) 36%,rgba(248,247,240,.72) 68%,rgba(248,247,240,.48) 100%)}.service-asymmetric .service-card:first-child:after{display:none}.service-asymmetric .service-card:first-child>p:not(.service-index){max-width:330px;color:#46574d}.service-asymmetric .service-card:first-child .service-symbol{background:#ffffffb8}.service-asymmetric .service-card:first-child .text-link{color:#2e4b40;font-weight:500}@media(max-width:760px){.service-asymmetric .service-card:first-child{min-height:410px;background-position:58% center}}
.service-asymmetric .service-card:first-child{background-image:url("assets/images/service-maternity.png")}
.about-photo{aspect-ratio:4/5;min-height:0}.about-photo img{object-position:center}.wpweb-about-art{aspect-ratio:4/5;min-height:0!important}.wpweb-about-art img{object-position:center}
/* Real settlement records layered over the family photograph. */
.about-photo,.wpweb-about-art{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:4/5}.about-photo>img,.wpweb-about-art>img{object-fit:cover!important;object-position:center top!important}.about-records{position:absolute;z-index:3;bottom:0;left:0;right:0;box-sizing:border-box;padding:16px 20px 20px;background:#fcfbf8;border-top:2px solid #aa8555;box-shadow:0 -10px 35px #26383218}.about-records-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:#46675a;font-size:14px}.about-records-heading small{font-size:10px;font-weight:400;color:#69756e}.about-records-images{display:grid;grid-template-columns:1fr 1fr;gap:12px}.about-records-images a{display:block;background:#fff;border:1px solid #e5e4dc;overflow:hidden}.about-records-images img{position:static!important;display:block!important;width:100%!important;height:150px!important;inset:auto!important;object-fit:contain!important;border-radius:0!important;background:#fff;transition:transform .2s}.about-records-images a:hover img{transform:scale(1.035)}@media(max-width:600px){.about-records{padding:12px 14px 14px}.about-records-images img{height:120px!important}.about-records-heading{font-size:13px}}
.wpweb-shared-qr{display:inline-block;margin:22px 0 0;padding:10px;background:#fff;text-align:center;vertical-align:top}.wpweb-shared-qr img{display:block;width:140px;height:140px;object-fit:contain;image-rendering:pixelated}.wpweb-shared-qr figcaption{margin-top:6px;font-size:12px;color:#46675a}
.wpweb-form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.wpweb-form-success{background:#e8f1e6;border-left:3px solid #46675a;padding:12px;font-size:14px}.wpweb-wechat-dialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:90vh;overflow-y:auto;border:0;background:#fbf8f2;padding:32px;color:#185443;box-shadow:0 24px 100px #0004}.wpweb-wechat-dialog::backdrop{background:#14251ecc}.wpweb-dialog-close{position:absolute;right:18px;top:12px;background:none;border:0;color:#185443;cursor:pointer;font-size:14px}.wpweb-wechat-dialog h2{font-size:28px;font-weight:400;line-height:1.5;margin:4px 0 16px}.wpweb-wechat-dialog>p{font-size:15px;line-height:1.9}.wpweb-dialog-qr{display:block;width:190px;height:190px;padding:8px;box-sizing:border-box;object-fit:contain;background:#fff;margin:22px auto 10px;image-rendering:pixelated}.wpweb-wechat-dialog .wpweb-dialog-hint{text-align:center;color:#7b8b7d;font-size:12px;margin:10px 0 18px}.wpweb-dialog-copy{display:flex;gap:10px;align-items:center;background:#e9eee4;padding:12px}.wpweb-dialog-copy label{font-size:12px;white-space:nowrap}.wpweb-dialog-copy input{box-sizing:border-box;width:0;flex:1;min-width:0;border:1px solid #d6dfcf;background:#fffef9;padding:10px 8px;color:#185443;font-size:15px}.wpweb-dialog-copy button{border:0;background:#0d5946;color:#fff;padding:11px 12px;cursor:pointer;white-space:nowrap}.wpweb-dialog-phone{display:block;background:#0d5946;color:#fff!important;text-align:center;padding:12px;text-decoration:none;font-size:18px}.wpweb-wechat-dialog .wpweb-dialog-status{font-size:12px;margin:4px 0;min-height:20px}@media(max-width:400px){.wpweb-wechat-dialog{padding:30px 20px 22px}.wpweb-dialog-copy{gap:6px;padding:9px}.wpweb-dialog-copy button{padding:11px 8px;font-size:12px}}
.wpweb-header-logo{flex-shrink:0}.wpweb-header-logo a{display:block}.wpweb-header-logo img{display:block;width:auto;max-width:220px;height:auto;max-height:64px;object-fit:contain}.wpweb-brand-fallback{display:flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none;color:#263832;font:500 20px/1.3 Georgia,serif}.wpweb-brand-fallback small{display:block;margin-top:4px;font:9px/1.3 Arial,sans-serif;letter-spacing:.16em;color:#69756e}.wpweb-brand-mark{display:grid;place-items:center;width:35px;height:35px;border:1px solid #aa8555;border-radius:50%;font-size:20px;color:#46675a}@media(max-width:600px){.wpweb-header-logo img{max-width:170px;max-height:52px}}
/* Explicit heading colors on dark sections and persistent save confirmation. */
.process h2,.process h3,.contact h2,.contact h3,.wpweb-frontpage .process h2,.wpweb-frontpage .process h3,.wpweb-frontpage .contact h2,.wpweb-frontpage .contact h3{color:#fff!important}
.wpweb-success-dialog{box-sizing:border-box;width:min(420px,calc(100% - 36px));padding:34px 28px;border:0;background:#fbfaf7;text-align:center;color:#263832;box-shadow:0 24px 100px #0004}.wpweb-success-dialog::backdrop{background:#14251ecc}.wpweb-success-check{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#e8f0e5;color:#46675a;font-size:28px;margin:0 auto 18px}.wpweb-success-dialog h2{font-size:26px;font-weight:400;color:#263832;margin:0 0 14px}.wpweb-success-dialog p{font-size:15px;line-height:1.9;margin:0 0 24px}.wpweb-success-dialog button{border:0;background:#46675a;color:#fff;padding:12px 28px;font-size:15px;cursor:pointer}