
:root {
	--bg: #f6f1e7;
	--surface: #fffdf8;
	--text: #1f2a22;
	--muted: #6f756e;
	--green: #425b45;
	--green-dark: #26382b;
	--terracotta: #a94832;
	--line: rgba(31, 42, 34, 0.12);
	--shadow: 0 10px 30px rgba(38, 56, 43, 0.08);
	--radius-lg: 24px;
	--radius-md: 18px;
	--content: 1120px;
	--bottom-nav-height: 72px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--bg);
	color: var(--text);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

a {
	color: inherit;
}

button,
input {
	font: inherit;
}

button {
	color: inherit;
}

.skip-link {
	position: fixed;
	top: 8px;
	left: 8px;
	z-index: 9999;
	transform: translateY(-160%);
	background: #fff;
	padding: 10px 14px;
	border-radius: 10px;
}

.skip-link:focus {
	transform: translateY(0);
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 40;
	background: color-mix(in srgb, var(--bg) 92%, transparent);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--line);
}

.site-header__inner {
	max-width: var(--content);
	margin: 0 auto;
	padding: 14px 18px;
}

.brand {
	display: inline-flex;
	flex-direction: column;
	gap: 1px;
	text-decoration: none;
}

.brand__name {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.05rem;
	letter-spacing: 0.08em;
}

.brand__descriptor {
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--muted);
}

.app-main {
	max-width: var(--content);
	margin: 0 auto;
	padding: 28px 18px calc(var(--bottom-nav-height) + 42px);
}

.hero {
	padding: 18px 0 24px;
}

.hero__eyebrow {
	margin: 0 0 8px;
	color: var(--muted);
	font-size: 0.78rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.hero h1,
.standard-page h1 {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 500;
	line-height: 1.02;
	letter-spacing: -0.035em;
}

.hero h1 {
	font-size: clamp(2.8rem, 12vw, 5.8rem);
	max-width: 9ch;
}

.hero__subtitle {
	margin: 14px 0 24px;
	max-width: 34rem;
	color: var(--muted);
	font-size: clamp(1.05rem, 3.8vw, 1.35rem);
}

.search-box {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	border: 1px solid var(--line);
	border-radius: 999px;
	background: var(--surface);
	box-shadow: var(--shadow);
}

.search-box--hero {
	padding: 15px 18px;
	cursor: pointer;
	text-align: left;
}

.quick-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 34px;
}

.quick-link {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-height: 116px;
	padding: 16px;
	border: 1px solid var(--line);
	border-radius: var(--radius-md);
	background: var(--surface);
	text-decoration: none;
	box-shadow: var(--shadow);
}

.quick-link__primary {
	display: flex;
	align-items: center;
	gap: 10px;
}

.quick-link__icon {
	display: inline-grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(66, 91, 69, 0.1);
	color: var(--green);
	font-weight: 700;
}

.quick-link__icon--sos {
	background: rgba(169, 72, 50, 0.12);
	color: var(--terracotta);
	font-size: 0.72rem;
}

.quick-link__micro {
	display: flex;
	gap: 12px;
	margin-left: 2px;
	opacity: 0.38;
	font-size: 0.9rem;
}

.content-section {
	margin: 0 0 34px;
}

.section-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 12px;
}

.section-heading h2 {
	margin: 0;
	font-size: 0.92rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.section-heading a {
	color: var(--muted);
	font-size: 0.88rem;
	text-decoration: none;
	white-space: nowrap;
}

.card-rail {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(144px, 42%);
	gap: 12px;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scroll-snap-type: inline mandatory;
	scrollbar-width: none;
	padding: 2px 2px 8px;
}

.card-rail::-webkit-scrollbar {
	display: none;
}

.feature-card {
	scroll-snap-align: start;
	display: block;
	min-height: 178px;
	padding: 10px;
	border: 1px solid var(--line);
	border-radius: var(--radius-md);
	background: var(--surface);
	text-decoration: none;
	box-shadow: var(--shadow);
}

.feature-card__visual {
	display: grid;
	place-items: center;
	aspect-ratio: 4 / 3;
	margin-bottom: 10px;
	border-radius: 14px;
	background:
		linear-gradient(135deg, rgba(66,91,69,.06), rgba(169,72,50,.05)),
		#ebe4d7;
	color: var(--green-dark);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 2rem;
	opacity: 0.7;
}

.feature-card strong {
	display: block;
	padding: 2px 3px 5px;
	font-size: 0.95rem;
}

.placeholder-note {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-top: 42px;
	padding: 16px;
	border: 1px dashed rgba(31,42,34,.24);
	border-radius: 16px;
	color: var(--muted);
	font-size: 0.88rem;
}

.bottom-nav {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 50;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	min-height: var(--bottom-nav-height);
	padding-bottom: env(safe-area-inset-bottom);
	border-top: 1px solid var(--line);
	background: rgba(255,253,248,.96);
	backdrop-filter: blur(14px);
}

.bottom-nav__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3px;
	border: 0;
	background: transparent;
	text-decoration: none;
	font-size: 0.72rem;
	cursor: pointer;
}

.bottom-nav__item.is-active {
	color: var(--green-dark);
	font-weight: 700;
}

.bottom-nav__icon {
	font-size: 1.25rem;
	line-height: 1;
}

.search-sheet[hidden] {
	display: none;
}

.search-sheet {
	position: fixed;
	inset: 0;
	z-index: 80;
}

.search-sheet__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 24, 17, 0.42);
}

.search-sheet__panel {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 20px 18px calc(24px + env(safe-area-inset-bottom));
	border-radius: 26px 26px 0 0;
	background: var(--surface);
	box-shadow: 0 -20px 70px rgba(0,0,0,.18);
}

.search-sheet__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}

.search-sheet__header h2 {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.8rem;
	font-weight: 500;
}

.icon-button {
	border: 0;
	background: transparent;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
}

.search-box--sheet {
	padding: 0 16px;
}

.search-box--sheet input {
	width: 100%;
	padding: 15px 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: var(--text);
}

.search-sheet__hint {
	margin: 14px 4px 0;
	color: var(--muted);
	font-size: 0.86rem;
}

.app-main--standard {
	padding-top: 42px;
}

.standard-page {
	max-width: 760px;
}

.standard-page h1 {
	font-size: clamp(2.3rem, 8vw, 4.8rem);
	margin-bottom: 22px;
}

.standard-page__content > *:first-child {
	margin-top: 0;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width: 720px) {
	.site-header__inner,
	.app-main {
		padding-left: 28px;
		padding-right: 28px;
	}

	.hero {
		padding-top: 34px;
	}

	.quick-links {
		max-width: 620px;
	}

	.card-rail {
		grid-auto-columns: 220px;
	}
}

@media (min-width: 1024px) {
	:root {
		--bottom-nav-height: 76px;
	}

	.app-main {
		padding-top: 46px;
	}

	.hero h1 {
		max-width: 12ch;
	}

	.card-rail {
		grid-auto-columns: 240px;
	}
}


/* v0.3 — reusable detail pages */
.app-main--detail {
	padding-top: 18px;
}

.detail-page {
	max-width: 780px;
	margin: 0 auto;
}

.detail-page__topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 30px;
}

.detail-back {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 44px;
	padding: 0 4px;
	color: var(--green-dark);
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none;
}

.detail-back span:first-child {
	font-size: 1.2rem;
}

.detail-section {
	color: var(--muted);
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-align: right;
}

.detail-hero {
	margin-bottom: 26px;
}

.detail-hero__eyebrow {
	margin: 0 0 8px;
	color: var(--muted);
	font-size: 0.76rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.detail-hero h1 {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2.8rem, 11vw, 5.4rem);
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.04em;
}

.detail-hero__title-row {
	display: flex;
	align-items: center;
	gap: 14px;
}

.detail-hero__icon {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 52px;
	height: 52px;
	border: 1px solid var(--line);
	border-radius: 50%;
	background: var(--surface);
	color: var(--green);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.7rem;
	box-shadow: var(--shadow);
}

.detail-hero__lead {
	max-width: 42rem;
	margin: 16px 0 0;
	color: var(--muted);
	font-size: clamp(1rem, 3.5vw, 1.16rem);
}

.detail-content {
	padding: 22px;
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	background: var(--surface);
	box-shadow: var(--shadow);
}

.detail-content > *:first-child {
	margin-top: 0;
}

.detail-content > *:last-child {
	margin-bottom: 0;
}

.detail-content h2,
.detail-content h3 {
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 500;
	line-height: 1.15;
}

.detail-content a {
	color: var(--green-dark);
	text-underline-offset: 3px;
}

.detail-stack {
	display: grid;
	gap: 14px;
}

.info-card {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 14px;
	padding: 20px;
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	background: var(--surface);
	box-shadow: var(--shadow);
}

.info-card__icon {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(66, 91, 69, 0.1);
	color: var(--green);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.15rem;
	font-weight: 700;
}

.info-card--important {
	border-color: rgba(169, 72, 50, 0.23);
}

.info-card--important .info-card__icon {
	background: rgba(169, 72, 50, 0.11);
	color: var(--terracotta);
}

.info-card__kicker {
	margin: 0 0 4px;
	color: var(--muted);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.info-card h2 {
	margin: 0 0 10px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(1.35rem, 5vw, 1.8rem);
	font-weight: 500;
	line-height: 1.12;
}

.info-card p {
	margin: 0 0 10px;
}

.info-card p:last-child {
	margin-bottom: 0;
}

.edit-note {
	padding: 15px 17px;
	border: 1px dashed rgba(31, 42, 34, 0.24);
	border-radius: 16px;
	color: var(--muted);
	font-size: 0.82rem;
}

.edit-note strong {
	color: var(--text);
}

.edit-note p {
	margin: 4px 0 0;
}

@media (max-width: 420px) {
	.detail-hero__title-row {
		align-items: flex-start;
	}

	.detail-hero__icon {
		width: 46px;
		height: 46px;
	}

	.info-card {
		grid-template-columns: 36px minmax(0, 1fr);
		padding: 17px;
	}

	.info-card__icon {
		width: 36px;
		height: 36px;
	}
}

@media (min-width: 720px) {
	.app-main--detail {
		padding-top: 28px;
	}

	.detail-page__topbar {
		margin-bottom: 44px;
	}

	.info-card {
		padding: 24px;
	}
}


/* v0.5 — structured collection components */
.collection-hero { max-width: 46rem; }
.collection-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}
.recommendation-card,
.service-card {
	overflow: hidden;
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	background: var(--surface);
	box-shadow: var(--shadow);
}
.recommendation-card__image,
.service-card__image {
	display: grid;
	place-items: center;
	aspect-ratio: 16 / 9;
	background: #e8e3d8;
	color: var(--muted);
	font-size: .72rem;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.recommendation-card__body,
.service-card__body { padding: 19px; }
.recommendation-card__meta {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	color: var(--muted);
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.recommendation-card h2,
.service-card h2 {
	margin: 8px 0 8px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(1.55rem, 5vw, 2rem);
	font-weight: 500;
	line-height: 1.05;
}
.recommendation-card p,
.service-card p { margin: 0 0 12px; }
.recommendation-card__address {
	color: var(--muted);
	font-size: .88rem;
}
.action-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	margin: 16px 0 8px;
}
.action-button {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 10px 14px;
	border-radius: 999px;
	background: var(--green-dark);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}
.action-button--secondary {
	border: 1px solid var(--line);
	background: transparent;
	color: var(--green-dark);
}
.recommendation-card small { color: var(--muted); }
.service-card {
	display: block;
	color: inherit;
	text-decoration: none;
}
.service-card__tag {
	color: var(--muted);
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.service-card__body > strong {
	display: block;
	margin-bottom: 7px;
	font-size: .86rem;
}
.service-card__cta {
	font-size: .86rem;
	font-weight: 700;
}
.verification-note {
	margin: 22px 0 0;
	padding: 14px 16px;
	border: 1px dashed rgba(31,42,34,.24);
	border-radius: 16px;
	color: var(--muted);
	font-size: .8rem;
}
@media (min-width: 700px) {
	.collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* v0.6 — Explore visual system */
.explore-grid,.explore-hub { display:grid; grid-template-columns:1fr; gap:18px; }
.explore-card,.explore-hub__card {
	overflow:hidden; border:1px solid var(--line); border-radius:var(--radius-lg);
	background:var(--surface); box-shadow:var(--shadow);
}
.explore-card__image,.explore-hub__image {
	display:grid; place-items:center; aspect-ratio:16/10; background:#e8e3d8;
	color:var(--muted); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase;
}
.explore-card__body,.explore-hub__body { padding:19px; }
.explore-card h2,.explore-hub h2 {
	margin:8px 0; font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(1.55rem,5vw,2rem); font-weight:500; line-height:1.05;
}
.explore-card p,.explore-hub p { margin:0 0 12px; }
.action-row--single { grid-template-columns:1fr; }
.explore-hub__card { display:block; color:inherit; text-decoration:none; }
.explore-hub__body > span {
	color:var(--muted); font-size:.7rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
}
.explore-hub__body strong { font-size:.86rem; }
@media(min-width:700px){
	.explore-grid,.explore-hub { grid-template-columns:repeat(2,minmax(0,1fr)); }
}


/* v0.7 — service detail system */
.service-detail__hero-image {
	display:grid;
	place-items:center;
	aspect-ratio:16/8.5;
	margin-bottom:24px;
	border-radius:var(--radius-lg);
	background:#e8e3d8;
	color:var(--muted);
	font-size:.72rem;
	letter-spacing:.14em;
	text-transform:uppercase;
	overflow:hidden;
}
.service-detail__hero { margin-bottom:22px; }
.service-detail__tagline {
	max-width:38rem;
	margin:10px 0 0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(1.25rem,4vw,1.65rem);
	line-height:1.2;
}
.service-provider-card {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	padding:16px 18px;
	margin:0 0 16px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
	box-shadow:var(--shadow);
}
.service-provider-card__label {
	display:block;
	margin-bottom:2px;
	color:var(--muted);
	font-size:.68rem;
	font-weight:700;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.service-provider-card strong {
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.15rem;
	font-weight:500;
}
.service-provider-card__status {
	flex:0 0 auto;
	padding:7px 10px;
	border-radius:999px;
	background:rgba(66,91,69,.09);
	color:var(--green-dark);
	font-size:.7rem;
	font-weight:700;
}
.service-section { margin:18px 0; }
.service-section__eyebrow {
	margin:0 0 10px;
	color:var(--muted);
	font-size:.7rem;
	font-weight:700;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.chip-row { display:flex; flex-wrap:wrap; gap:8px; }
.info-chip {
	padding:8px 11px;
	border:1px solid var(--line);
	border-radius:999px;
	background:var(--surface);
	font-size:.78rem;
	font-weight:700;
}
.service-list {
	margin:4px 0 0;
	padding-left:18px;
}
.service-list li { margin:0 0 8px; }
.service-list li:last-child { margin-bottom:0; }
.direct-book-card {
	padding:20px;
	margin:18px 0;
	border:1px solid var(--line);
	border-radius:var(--radius-lg);
	background:var(--surface);
	box-shadow:var(--shadow);
}
.direct-book-card h2 {
	margin:0 0 8px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(1.45rem,5vw,1.9rem);
	font-weight:500;
}
.direct-book-card > p { margin:0 0 14px; }
.direct-book-card__actions {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:8px;
	margin-bottom:8px;
}
.action-button--disabled {
	background:#e7e5df;
	color:#8a8b85;
	cursor:not-allowed;
	pointer-events:none;
}
.direct-book-card small { color:var(--muted); }
.self-service-note {
	padding:16px 18px;
	border-radius:18px;
	background:rgba(66,91,69,.07);
}
.self-service-note strong {
	display:block;
	margin-bottom:4px;
}
.self-service-note p {
	margin:0;
	color:var(--muted);
	font-size:.88rem;
}
@media(max-width:520px){
	.direct-book-card__actions { grid-template-columns:1fr; }
}


/* v0.8 — Help, Emergency, Directions, My Stay */
.urgent-banner{
	display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px;
	padding:15px 17px; margin:0 0 18px; border:1px solid rgba(169,72,50,.2);
	border-radius:18px; background:rgba(169,72,50,.07); color:inherit; text-decoration:none;
}
.urgent-banner__icon{
	display:grid; place-items:center; width:42px; height:42px; border-radius:50%;
	background:rgba(169,72,50,.12); color:var(--terracotta); font-size:.74rem; font-weight:800;
}
.urgent-banner strong,.urgent-banner small{display:block}.urgent-banner small{margin-top:2px;color:var(--muted)}
.help-grid,.health-grid,.stay-grid{display:grid;grid-template-columns:1fr;gap:12px}
.help-card,.support-row,.stay-card{
	display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px;
	padding:17px; border:1px solid var(--line); border-radius:18px; background:var(--surface);
	box-shadow:var(--shadow); color:inherit; text-decoration:none;
}
.help-card__icon,.stay-card__icon{
	display:grid;place-items:center;width:40px;height:40px;border-radius:50%;
	background:rgba(66,91,69,.09);color:var(--green-dark);font-weight:700
}
.help-card__meta{color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.help-card h2,.stay-card h2,.contact-fallback h2,.health-card h2{
	margin:3px 0 4px;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;font-weight:500
}
.help-card p,.stay-card p,.support-row p{margin:0;color:var(--muted);font-size:.88rem}
.help-card__arrow{font-size:1.1rem}
.emergency-primary{
	display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;
	padding:20px;margin-bottom:16px;border-radius:var(--radius-lg);
	background:rgba(169,72,50,.09);border:1px solid rgba(169,72,50,.22)
}
.emergency-primary__number{
	display:grid;place-items:center;width:74px;height:74px;border-radius:50%;
	background:var(--terracotta);color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:2rem
}
.emergency-primary strong{display:block;font-size:1.05rem}.emergency-primary p{margin:4px 0 0;color:var(--muted)}
.emergency-call{background:var(--terracotta)}
.emergency-choice-grid{display:grid;grid-template-columns:1fr;gap:12px}
.emergency-choice{
	display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:17px;
	border:1px solid var(--line);border-radius:18px;background:var(--surface);color:inherit;text-decoration:none
}
.emergency-choice__icon{
	display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(66,91,69,.09);font-weight:700
}
.emergency-choice p{margin:3px 0 0;color:var(--muted);font-size:.86rem}
.destination-list{display:grid;gap:10px}
.destination-row{
	display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px 16px;
	border:1px solid var(--line);border-radius:18px;background:var(--surface);color:inherit;text-decoration:none
}
.destination-row__icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(66,91,69,.09)}
.destination-row strong,.destination-row small{display:block}.destination-row small{margin-top:2px;color:var(--muted)}
.destination-row__cta{font-size:.78rem;font-weight:700}
.directions-info{margin-top:18px}
.support-list{display:grid;gap:10px}
.support-row{grid-template-columns:1fr auto}
.contact-fallback{
	margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)
}
.contact-fallback p{margin:0 0 14px;color:var(--muted)}
.health-card{
	padding:19px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)
}
.health-card__icon{
	display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(66,91,69,.09);font-weight:700
}
.health-card p{color:var(--muted)}
.health-card__placeholder{
	display:inline-block;padding:7px 10px;border-radius:999px;background:#eeeae1;color:var(--muted);font-size:.72rem;font-weight:700
}
.transport-grid{display:grid;gap:12px}
.contact-scope{display:grid;gap:10px}
.contact-scope__yes,.contact-scope__no{
	display:grid;grid-template-columns:auto 1fr;gap:12px;padding:17px;border-radius:18px
}
.contact-scope__yes{background:rgba(66,91,69,.08)}
.contact-scope__no{background:#eeeae1}
.contact-scope p{margin:3px 0 0;color:var(--muted);font-size:.88rem}
.stay-card__status{font-size:.76rem;font-weight:700;color:var(--muted)}
.stay-card--pending{opacity:.62}
@media(min-width:700px){
	.help-grid,.health-grid,.stay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.emergency-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
	.emergency-primary{grid-template-columns:auto 1fr}
	.emergency-call{grid-column:1/-1}
	.destination-row{grid-template-columns:auto 1fr}
	.destination-row__cta{grid-column:2}
}


/* v0.9 — My Stay + Search */
.timeline-stack,.checklist,.document-grid{display:grid;gap:12px}
.timeline-card{
	display:grid;grid-template-columns:auto 1fr;gap:14px;padding:18px;border:1px solid var(--line);
	border-radius:18px;background:var(--surface);box-shadow:var(--shadow)
}
.timeline-card__number{
	display:grid;place-items:center;width:36px;height:36px;border-radius:50%;
	background:rgba(66,91,69,.09);color:var(--green-dark);font-weight:800
}
.timeline-card h2,.document-card h2{
	margin:0 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;font-weight:500
}
.timeline-card p{margin:0 0 7px;color:var(--muted)}
.pending-pill{
	display:inline-block;padding:6px 9px;border-radius:999px;background:#eeeae1;
	color:var(--muted);font-size:.68rem;font-weight:700
}
.checklist__item{
	display:grid;grid-template-columns:auto 1fr;gap:13px;padding:16px 17px;border:1px solid var(--line);
	border-radius:18px;background:var(--surface)
}
.checklist__item>span{
	display:grid;place-items:center;width:32px;height:32px;border-radius:50%;
	background:rgba(66,91,69,.09);font-weight:800
}
.checklist__item p{margin:3px 0 7px;color:var(--muted)}
.document-grid{grid-template-columns:1fr}
.document-card{
	padding:19px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)
}
.document-card__icon{
	display:grid;place-items:center;width:40px;height:40px;margin-bottom:12px;border-radius:50%;
	background:rgba(66,91,69,.09)
}
.document-card p{color:var(--muted)}
.search-field{
	display:flex;align-items:center;gap:10px;min-height:58px;padding:0 18px;margin-bottom:12px;
	border:1px solid var(--line);border-radius:999px;background:var(--surface);box-shadow:var(--shadow)
}
.search-field input{
	flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);
	font:inherit;font-size:1rem
}
.search-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.search-suggestions button{
	padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);
	color:var(--green-dark);font:inherit;font-size:.76rem;font-weight:700
}
.search-results{display:grid;gap:9px}
.search-result{
	display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;
	border:1px solid var(--line);border-radius:16px;background:var(--surface);color:inherit;text-decoration:none
}
.search-result small,.search-result strong{display:block}
.search-result small{
	margin-bottom:2px;color:var(--muted);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase
}
.search-result strong{font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;font-weight:500}
.search-empty{padding:18px;text-align:center;color:var(--muted)}
.search-box--hero{text-decoration:none;color:inherit}
@media(min-width:700px){.document-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.search-result[hidden]{display:none !important;}

.search-help{
	margin:-10px 0 16px;
	color:var(--muted);
	font-size:.78rem;
}


/* v0.10 — Your Villa operational system */
.villa-hub-grid{display:grid;grid-template-columns:1fr;gap:11px}
.villa-hub-card{
	display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;
	padding:17px;border:1px solid var(--line);border-radius:18px;background:var(--surface);
	box-shadow:var(--shadow);color:inherit;text-decoration:none
}
.villa-hub-card__icon{
	display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
	background:rgba(66,91,69,.08);color:var(--green-dark);font-size:1.05rem
}
.villa-hub-card h2{
	margin:0 0 3px;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;font-weight:500
}
.villa-hub-card p{margin:0;color:var(--muted);font-size:.86rem}
.villa-hub-card__arrow{font-weight:700}
.villa-detail__stack{display:grid;gap:12px}
.villa-info-card{margin:0}
.villa-warning{
	display:grid;grid-template-columns:auto 1fr;align-items:start;gap:12px;
	padding:16px 18px;margin-top:14px;border:1px solid rgba(169,72,50,.22);
	border-radius:18px;background:rgba(169,72,50,.07)
}
.villa-warning__icon{
	display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
	background:rgba(169,72,50,.12);color:var(--terracotta);font-weight:800
}
.villa-warning p{margin:5px 0 0}
.villa-help-footer{
	display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;
	padding:17px 18px;margin-top:16px;border-top:1px solid var(--line)
}
.villa-help-footer p{margin:3px 0 0;color:var(--muted);font-size:.84rem}
.waste-types{
	display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:18px
}
.waste-type{
	display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;
	padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--surface)
}
.waste-type>span{
	display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(66,91,69,.08)
}
.waste-type strong,.waste-type small{display:block}
.waste-type small{grid-column:2;color:var(--muted);font-size:.7rem}
.waste-calendar{
	padding:18px;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius-lg);
	background:var(--surface);box-shadow:var(--shadow)
}
.waste-calendar__row{
	display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:10px;
	padding:11px 0;border-bottom:1px solid var(--line)
}
.waste-calendar__row:last-child{border-bottom:0}
.waste-calendar__icon{
	display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(66,91,69,.08)
}
.waste-calendar__row>span:last-child{color:var(--muted);font-size:.82rem}
@media(min-width:700px){
	.villa-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.waste-types{grid-template-columns:repeat(5,minmax(0,1fr))}
	.waste-type{grid-template-columns:1fr;text-align:center;justify-items:center}
	.waste-type small{grid-column:auto}
}
@media(max-width:520px){
	.villa-help-footer{grid-template-columns:1fr}
	.waste-calendar__row{grid-template-columns:auto 1fr}
	.waste-calendar__row>span:last-child{grid-column:2}
}

/* v0.11 - completion / review */
.status-stack{display:grid;gap:12px}
.status-card{padding:18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}
.status-card h2{margin:0 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;font-weight:500}
.status-card ul{margin:0;padding-left:20px}
.status-card li{margin:0 0 7px}
.status-card li:last-child{margin-bottom:0}


/* v0.12 — Home & My Stay rebalance */
.home-featured-stay{
	margin:4px 0 26px;
}
.home-featured-stay__card{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:18px;
	padding:24px;
	border:1px solid var(--line);
	border-radius:var(--radius-lg);
	background:var(--green-dark);
	color:#fff;
	text-decoration:none;
	box-shadow:var(--shadow);
}
.home-featured-stay__eyebrow{
	margin:0 0 6px;
	font-size:.7rem;
	font-weight:800;
	letter-spacing:.14em;
	text-transform:uppercase;
	opacity:.72;
}
.home-featured-stay h2{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(1.8rem,6vw,2.7rem);
	font-weight:500;
	line-height:1.04;
}
.home-featured-stay__meta{
	margin:10px 0 0;
	font-size:.88rem;
	opacity:.8;
}
.home-featured-stay__arrow{
	font-size:1.5rem;
}
.my-stay-hero{
	max-width:46rem;
}
.my-stay-feature-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:16px;
	margin-bottom:16px;
}
.my-stay-feature{
	overflow:hidden;
	border:1px solid var(--line);
	border-radius:var(--radius-lg);
	background:var(--surface);
	color:inherit;
	text-decoration:none;
	box-shadow:var(--shadow);
}
.my-stay-feature__image{
	display:grid;
	place-items:center;
	aspect-ratio:16/9;
	background:#e8e3d8;
	color:var(--muted);
	font-size:.7rem;
	letter-spacing:.14em;
	text-transform:uppercase;
}
.my-stay-feature__body{
	padding:20px;
}
.my-stay-feature__body>span{
	color:var(--muted);
	font-size:.68rem;
	font-weight:800;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.my-stay-feature h2{
	margin:7px 0 8px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(1.55rem,5vw,2rem);
	font-weight:500;
	line-height:1.08;
}
.my-stay-feature p{
	margin:0 0 12px;
	color:var(--muted);
}
.my-stay-chef-feature{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:19px 20px;
	margin-bottom:24px;
	border:1px solid var(--line);
	border-radius:18px;
	background:rgba(66,91,69,.07);
	color:inherit;
	text-decoration:none;
}
.my-stay-chef-feature__eyebrow{
	display:block;
	margin-bottom:4px;
	color:var(--muted);
	font-size:.66rem;
	font-weight:800;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.my-stay-chef-feature h2{
	margin:0 0 4px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.55rem;
	font-weight:500;
}
.my-stay-chef-feature p{
	margin:0;
	color:var(--muted);
	font-size:.88rem;
}
.my-stay-chef-feature__cta{
	flex:0 0 auto;
	font-size:.8rem;
	font-weight:800;
}
.my-stay-practical{
	margin-top:4px;
}
.my-stay-help-strip{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	margin-top:18px;
	padding:15px 17px;
	border:1px solid var(--line);
	border-radius:16px;
	background:var(--surface);
	color:inherit;
	text-decoration:none;
}
.my-stay-help-strip strong,
.my-stay-help-strip small{
	display:block;
}
.my-stay-help-strip small{
	margin-top:2px;
	color:var(--muted);
}
.utility-mini-bar{
	position:fixed;
	left:50%;
	bottom:64px;
	z-index:40;
	display:flex;
	gap:8px;
	transform:translateX(-50%);
	padding:6px;
	border:1px solid var(--line);
	border-radius:999px;
	background:rgba(248,245,238,.94);
	box-shadow:var(--shadow);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
}
.utility-mini-bar a{
	display:flex;
	align-items:center;
	gap:6px;
	min-height:36px;
	padding:0 11px;
	border-radius:999px;
	color:var(--green-dark);
	font-size:.72rem;
	font-weight:800;
	text-decoration:none;
}
.utility-mini-bar a:last-child{
	color:var(--terracotta);
}
.utility-mini-bar a span:first-child{
	font-size:.68rem;
}
@media(min-width:700px){
	.my-stay-feature-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}
@media(max-width:420px){
	.home-featured-stay__card{
		padding:20px;
	}
	.my-stay-chef-feature{
		align-items:flex-start;
		flex-direction:column;
	}
	.utility-mini-bar{
		bottom:62px;
	}
}


/* v0.12.1 — quieter Home utilities */
.utility-mini-bar{
	left:auto;
	right:14px;
	bottom:78px;
	transform:none;
	display:flex;
	gap:8px;
	padding:0;
	border:0;
	background:transparent;
	box-shadow:none;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
}
.utility-mini-bar__item{
	display:grid !important;
	place-items:center;
	width:42px;
	height:42px;
	min-height:42px !important;
	padding:0 !important;
	border:1px solid var(--line);
	border-radius:50% !important;
	background:rgba(248,245,238,.96);
	box-shadow:var(--shadow);
}
.utility-mini-bar__icon{
	font-size:1rem !important;
	line-height:1;
}
.utility-mini-bar__icon--sos{
	font-size:.6rem !important;
	font-weight:800;
	letter-spacing:.02em;
}
.utility-mini-bar__label{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0;
}
.utility-mini-bar__item--emergency{
	color:var(--terracotta) !important;
}
@media(min-width:900px){
	.utility-mini-bar{
		right:22px;
		bottom:82px;
	}
	.utility-mini-bar__item{
		width:auto;
		height:38px;
		min-height:38px !important;
		padding:0 12px !important;
		grid-auto-flow:column;
		gap:6px;
		border-radius:999px !important;
	}
	.utility-mini-bar__label{
		position:static;
		width:auto;
		height:auto;
		margin:0;
		overflow:visible;
		clip:auto;
		white-space:normal;
		font-size:.72rem;
		font-weight:800;
	}
}


/* v0.13 — launch audit */
.audit-summary{
	display:grid;
	grid-template-columns:1fr;
	gap:10px;
	margin-bottom:18px;
}
.audit-summary>div{
	padding:15px 17px;
	border:1px solid var(--line);
	border-radius:16px;
	background:rgba(66,91,69,.06);
}
.audit-summary strong,
.audit-summary span{
	display:block;
}
.audit-summary span{
	margin-top:3px;
	color:var(--muted);
	font-size:.82rem;
}
.audit-list{
	display:grid;
	gap:8px;
}
.audit-row{
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:start;
	gap:10px;
	padding:9px 0;
	border-bottom:1px solid rgba(31,42,34,.08);
}
.audit-row:last-child{
	border-bottom:0;
}
.audit-row__status{
	display:grid;
	place-items:center;
	width:24px;
	height:24px;
	border-radius:50%;
	font-size:.72rem;
	font-weight:800;
}
.audit-row--done .audit-row__status{
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
}
.audit-row--review .audit-row__status{
	background:#eeeae1;
	color:var(--muted);
}
@media(min-width:700px){
	.audit-summary{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}


/* v0.14 — verified direct booking */
.direct-book-card__actions--active{
	grid-template-columns:repeat(2,minmax(0,1fr));
}
.direct-book-card__actions--active .action-button{
	min-width:0;
	text-align:center;
}
@media(max-width:520px){
	.direct-book-card__actions--active{
		grid-template-columns:1fr;
	}
}


/* v0.15 — verified health */
.health-card--ready{
	border-color:rgba(66,91,69,.18);
}
.health-card__actions{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:8px;
	margin:14px 0 8px;
}
.health-card small{
	color:var(--muted);
}
.health-note{
	margin-top:14px;
	padding:16px 18px;
	border-radius:18px;
	background:rgba(66,91,69,.07);
}
.health-note p{
	margin:4px 0 0;
	color:var(--muted);
}
@media(max-width:520px){
	.health-card__actions{
		grid-template-columns:1fr;
	}
}


/* v0.16 — photo-ready + stale-content safety */
.content-visual{
	position:relative;
	overflow:hidden;
}
.content-visual.has-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.launch-check{
	color:var(--muted);
	font-style:italic;
}


/* v0.17 — visual polish + accessibility */
:root{
	--focus-ring: 0 0 0 3px rgba(66,91,69,.22);
}

/* Header: cleaner first viewport, compact after scroll */
.site-header{
	transition:padding .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.site-header.is-compact{
	box-shadow:0 6px 22px rgba(31,42,34,.06);
}
.site-header.is-compact .brand-subtitle{
	opacity:.7;
}

/* Home rhythm */
.hero{
	padding-bottom:18px;
}
.hero h1{
	max-width:10ch;
}
.hero__subtitle{
	max-width:31rem;
}
.home-featured-stay{
	margin-top:2px;
	margin-bottom:30px;
}
.home-featured-stay__card{
	position:relative;
	overflow:hidden;
}
.home-featured-stay__card::after{
	content:"";
	position:absolute;
	inset:auto -48px -62px auto;
	width:150px;
	height:150px;
	border:1px solid rgba(255,255,255,.14);
	border-radius:50%;
}
.home-featured-stay__content{
	position:relative;
	z-index:1;
}
.home-featured-stay__arrow{
	position:relative;
	z-index:1;
}

/* Section headings: less "catalogue", more editorial */
.section-heading{
	align-items:flex-end;
	gap:16px;
}
.section-heading>div{
	min-width:0;
}
.section-heading h2{
	margin-bottom:3px;
}
.section-heading p{
	margin:0;
	color:var(--muted);
	font-size:.8rem;
	line-height:1.3;
}
.section-heading>a{
	flex:0 0 auto;
	padding-bottom:2px;
	font-size:.78rem;
	font-weight:800;
}

/* Home cards */
.feature-card{
	border-radius:18px;
}
.feature-card__visual{
	border-radius:16px;
}
.feature-card__visual span{
	opacity:.78;
}
.feature-card strong{
	line-height:1.15;
}

/* Utility controls: present but quiet */
.utility-mini-bar{
	opacity:.92;
}
.utility-mini-bar__item{
	transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}
@media(hover:hover){
	.utility-mini-bar__item:hover{
		transform:translateY(-1px);
	}
}

/* Better visual language for real photos */
.content-visual.has-image{
	background:#ddd6c8;
}
.content-visual.has-image::after{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	box-shadow:inset 0 0 0 1px rgba(31,42,34,.04);
}
.content-visual.has-image img{
	transition:transform .24s ease;
}
@media(hover:hover){
	a:hover .content-visual.has-image img{
		transform:scale(1.015);
	}
}

/* Text density on content cards */
.recommendation-card__body,
.service-card__body,
.explore-card__body,
.explore-hub__body{
	padding:20px;
}
.recommendation-card p,
.service-card p,
.explore-card p,
.explore-hub p{
	line-height:1.48;
}

/* Touch + keyboard */
a,
button,
input{
	-webkit-tap-highlight-color:transparent;
}
a:focus-visible,
button:focus-visible,
input:focus-visible{
	outline:none;
	box-shadow:var(--focus-ring);
}
.feature-card,
.service-card,
.explore-card,
.explore-hub__card,
.stay-card,
.help-card,
.villa-hub-card,
.search-result,
.destination-row{
	scroll-margin-top:90px;
}

/* Keep bottom UI from crowding content */
.app-main{
	padding-bottom:138px;
}

/* Tablet/desktop refinement */
@media(min-width:700px){
	.section-heading p{
		font-size:.84rem;
	}
	.home-featured-stay__card{
		padding:28px 30px;
	}
	.feature-card{
		min-width:210px;
	}
}

/* Large text / zoom resilience */
@media(max-width:420px){
	.section-heading{
		align-items:flex-start;
	}
	.section-heading>a{
		margin-top:3px;
	}
	.home-featured-stay__meta{
		line-height:1.45;
	}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
	*,
	*::before,
	*::after{
		scroll-behavior:auto !important;
		animation-duration:.01ms !important;
		animation-iteration-count:1 !important;
		transition-duration:.01ms !important;
	}
}


/* v0.18 — diagnostics + recovery */
.diagnostic-summary{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:9px;
	margin-bottom:16px;
}
.diagnostic-summary>div{
	padding:14px;
	border:1px solid var(--line);
	border-radius:16px;
	background:var(--surface);
}
.diagnostic-summary strong,
.diagnostic-summary span{
	display:block;
}
.diagnostic-summary span{
	margin-top:3px;
	color:var(--muted);
	font-size:.78rem;
}
.diagnostic-list{
	display:grid;
	gap:8px;
}
.diagnostic-row{
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:center;
	gap:11px;
	padding:13px 15px;
	border:1px solid var(--line);
	border-radius:15px;
	background:var(--surface);
}
.diagnostic-row__icon{
	display:grid;
	place-items:center;
	width:30px;
	height:30px;
	border-radius:50%;
	font-weight:800;
}
.diagnostic-row--pass .diagnostic-row__icon{
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
}
.diagnostic-row--review .diagnostic-row__icon{
	background:#eeeae1;
	color:var(--muted);
}
.diagnostic-row--fail{
	border-color:rgba(169,72,50,.22);
}
.diagnostic-row--fail .diagnostic-row__icon{
	background:rgba(169,72,50,.10);
	color:var(--terracotta);
}
.diagnostic-row strong,
.diagnostic-row small{
	display:block;
}
.diagnostic-row small{
	margin-top:2px;
	color:var(--muted);
}
.diagnostic-next{
	margin-top:18px;
	padding:18px;
	border-radius:18px;
	background:rgba(66,91,69,.07);
}
.diagnostic-next p{
	margin:5px 0 14px;
	color:var(--muted);
}
.recovery-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:10px;
}
.recovery-card{
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:13px;
	padding:17px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
	color:inherit;
	text-decoration:none;
	box-shadow:var(--shadow);
}
.recovery-card>span{
	display:grid;
	place-items:center;
	width:38px;
	height:38px;
	border-radius:50%;
	background:rgba(66,91,69,.08);
}
.recovery-card strong,
.recovery-card small{
	display:block;
}
.recovery-card small{
	margin-top:2px;
	color:var(--muted);
}
@media(max-width:520px){
	.diagnostic-summary{
		grid-template-columns:1fr;
	}
}


/* v0.19 — privacy / performance */
.admin-launch-note{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	padding:7px 12px;
	background:#272b27;
	color:#fff;
	font-size:.68rem;
	line-height:1.25;
}
.admin-launch-note a{
	color:#fff;
	text-underline-offset:2px;
}
.content-section,
.detail-page--collection{
	content-visibility:auto;
	contain-intrinsic-size:1px 600px;
}
@media(max-width:520px){
	.admin-launch-note{
		flex-wrap:wrap;
	}
}


/* v0.20 — cross-device QA + safe areas */
html{
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}
body{
	overflow-wrap:anywhere;
}
.skip-link{
	position:fixed;
	top:10px;
	left:10px;
	z-index:9999;
	padding:10px 14px;
	border-radius:999px;
	background:#fff;
	color:var(--green-dark);
	font-size:.82rem;
	font-weight:800;
	text-decoration:none;
	transform:translateY(-160%);
	box-shadow:var(--shadow);
}
.skip-link:focus{
	transform:translateY(0);
}
button,
a,
input{
	touch-action:manipulation;
}
.bottom-nav{
	padding-bottom:max(6px, env(safe-area-inset-bottom));
}
.utility-mini-bar{
	bottom:calc(78px + env(safe-area-inset-bottom));
}
.app-main{
	padding-bottom:calc(138px + env(safe-area-inset-bottom));
}
@supports(height:100dvh){
	body{
		min-height:100dvh;
	}
}
@media(orientation:landscape) and (max-height:520px){
	.utility-mini-bar{
		bottom:calc(68px + env(safe-area-inset-bottom));
	}
	.app-main{
		padding-bottom:calc(118px + env(safe-area-inset-bottom));
	}
}
@media(pointer:coarse){
	.action-button,
	.bottom-nav__item,
	.destination-row,
	.search-result,
	.stay-card,
	.help-card,
	.villa-hub-card{
		min-height:44px;
	}
}
@media(forced-colors:active){
	.action-button,
	.info-chip,
	.pending-pill,
	.utility-mini-bar__item{
		border:1px solid CanvasText;
	}
}


.qa-device-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}
.qa-card{
	padding:18px;
	border:1px solid var(--line);
	border-radius:var(--radius-lg);
	background:var(--surface);
	box-shadow:var(--shadow);
}
.qa-card h2{
	margin:0 0 10px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.35rem;
	font-weight:500;
}
.qa-card ul{
	display:grid;
	gap:8px;
	margin:0;
	padding:0;
	list-style:none;
}
.qa-card li{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:9px;
	align-items:start;
}
.qa-card li>span{
	color:var(--muted);
}
.qa-card--wide{
	margin-top:12px;
}
.qa-links{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:9px;
	margin-top:16px;
}
@media(min-width:700px){
	.qa-device-grid{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
}
@media(max-width:520px){
	.qa-links{
		grid-template-columns:1fr;
	}
}


/* v0.21 — guest-ready editorial cleanup */
.internal-preview-only{
	display:none !important;
}
.lngc-admin-preview .internal-preview-only{
	display:block !important;
}
.lngc-admin-preview span.internal-preview-only,
.lngc-admin-preview small.internal-preview-only{
	display:inline-flex !important;
}
.lngc-admin-preview .verification-note.internal-preview-only{
	display:block !important;
}
.home-sections{
	margin-top:0;
}


/* v0.22 — release candidate prep */
.rc-gate{
	margin-bottom:18px;
	padding:20px;
	border:1px solid rgba(66,91,69,.18);
	border-radius:20px;
	background:rgba(66,91,69,.07);
}
.rc-gate h2{
	margin:3px 0 7px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.55rem;
	font-weight:500;
}
.rc-gate p:last-child{
	margin-bottom:0;
	color:var(--muted);
	line-height:1.5;
}


/* v0.23 — operational data readiness */
.info-kicker{
	margin:0 0 8px;
	color:var(--green-dark);
	font-size:.78rem;
	font-weight:800;
	letter-spacing:.02em;
}
.operational-groups{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}
.operational-card{
	padding:18px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
}
.operational-card h2{
	margin:0 0 10px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.4rem;
	font-weight:500;
}
.operational-list{
	display:grid;
	gap:8px;
}
.operational-row{
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:start;
	gap:10px;
	padding:9px 0;
	border-bottom:1px solid rgba(31,42,34,.08);
}
.operational-row:last-child{
	border-bottom:0;
}
.operational-row__icon{
	display:grid;
	place-items:center;
	width:24px;
	height:24px;
	border-radius:50%;
	font-size:.72rem;
	font-weight:800;
}
.operational-row.is-ready .operational-row__icon{
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
}
.operational-row.is-missing .operational-row__icon{
	background:#eeeae1;
	color:var(--muted);
}
.operational-row strong,
.operational-row small{
	display:block;
}
.operational-row small{
	margin-top:2px;
	color:var(--muted);
	overflow-wrap:anywhere;
}
@media(min-width:760px){
	.operational-groups{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}


/* v0.24 — editable operational setup */
.operational-fields{
	display:grid;
	gap:12px;
}
.operational-field{
	display:grid;
	gap:6px;
}
.operational-field__label{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	font-size:.76rem;
	font-weight:800;
	color:var(--muted);
}
.operational-field__label b{
	display:grid;
	place-items:center;
	width:20px;
	height:20px;
	border-radius:50%;
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
	font-size:.68rem;
}
.operational-field input,
.operational-field textarea{
	width:100%;
	min-height:44px;
	padding:11px 12px;
	border:1px solid var(--line);
	border-radius:12px;
	background:#fff;
	color:var(--text);
	font:inherit;
}
.operational-field textarea{
	resize:vertical;
	line-height:1.4;
}
.operational-field input:focus-visible,
.operational-field textarea:focus-visible{
	outline:none;
	box-shadow:var(--focus-ring);
	border-color:rgba(66,91,69,.35);
}
.setup-saved{
	margin-bottom:16px;
	padding:12px 14px;
	border-radius:14px;
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
	font-size:.82rem;
	font-weight:800;
}
.operational-savebar{
	position:sticky;
	bottom:calc(78px + env(safe-area-inset-bottom));
	z-index:30;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	margin:16px 0;
	padding:12px 14px;
	border:1px solid var(--line);
	border-radius:18px;
	background:rgba(248,245,238,.96);
	box-shadow:var(--shadow);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
}
.operational-savebar strong,
.operational-savebar small{
	display:block;
}
.operational-savebar small{
	margin-top:2px;
	color:var(--muted);
}
@media(max-width:580px){
	.operational-savebar{
		align-items:stretch;
		flex-direction:column;
	}
	.operational-savebar .action-button{
		width:100%;
	}
}


/* v0.25 — editable photo library */
.photo-slot-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}
.photo-slot{
	overflow:hidden;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
	box-shadow:var(--shadow);
}
.photo-slot__preview{
	display:grid;
	place-items:center;
	aspect-ratio:16/10;
	background:linear-gradient(135deg,rgba(66,91,69,.08),rgba(156,120,81,.10));
	color:var(--muted);
	font-size:.72rem;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.06em;
}
.photo-slot__preview.has-image{
	background:#ddd6c8;
}
.photo-slot__preview img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.photo-slot__body{
	padding:14px;
}
.photo-slot__body strong,
.photo-slot__body small{
	display:block;
}
.photo-slot__body small{
	margin-top:3px;
	color:var(--muted);
	font-size:.68rem;
}
.photo-slot__actions{
	display:flex;
	align-items:center;
	gap:10px;
	margin-top:12px;
}
.photo-remove{
	padding:8px 0;
	border:0;
	background:transparent;
	color:var(--muted);
	font:inherit;
	font-size:.75rem;
	text-decoration:underline;
	text-underline-offset:2px;
	cursor:pointer;
}
.photo-remove.is-hidden{
	display:none;
}
@media(min-width:620px){
	.photo-slot-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}
@media(min-width:980px){
	.photo-slot-grid{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
}


/* v0.26 — RC1 dashboard */
.rc-metrics{
	display:grid;
	grid-template-columns:1fr;
	gap:10px;
	margin-bottom:16px;
}
.rc-metric{
	padding:18px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
	box-shadow:var(--shadow);
}
.rc-metric strong,
.rc-metric span,
.rc-metric small{
	display:block;
}
.rc-metric strong{
	font-family:Georgia,"Times New Roman",serif;
	font-size:2rem;
	font-weight:500;
}
.rc-metric span{
	margin-top:2px;
	font-weight:800;
}
.rc-metric small{
	margin-top:4px;
	color:var(--muted);
}
.rc-block{
	margin-top:12px;
	padding:18px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
}
.rc-block__heading{
	display:flex;
	align-items:start;
	justify-content:space-between;
	gap:14px;
}
.rc-block h2{
	margin:3px 0 0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.5rem;
	font-weight:500;
}
.rc-ready-pill{
	padding:6px 9px;
	border-radius:999px;
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
	font-size:.68rem;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.04em;
}
.rc-checks{
	display:grid;
	gap:9px;
	margin:14px 0 0;
	padding:0;
	list-style:none;
}
.rc-checks li{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:9px;
	align-items:start;
}
.rc-checks li span{
	color:var(--green-dark);
	font-weight:800;
}
.rc-checks--manual li span{
	color:var(--muted);
}
.rc-actions{
	display:grid;
	grid-template-columns:1fr;
	gap:9px;
	margin-top:16px;
}
@media(min-width:700px){
	.rc-metrics{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
	.rc-actions{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}


/* v0.27 — RC2 / guest preview */
.lngc-guest-preview .admin-launch-note{
	display:none !important;
}
.rc-ready-pill--pending{
	background:#eeeae1;
	color:var(--muted);
}
.rc-clear-copy{
	margin:14px 0 0;
	color:var(--muted);
	line-height:1.5;
}
.rc-block--gate{
	border-color:rgba(66,91,69,.18);
	background:rgba(66,91,69,.045);
}


/* v0.28 — editable restaurant audit */
.restaurant-audit-list{
	display:grid;
	gap:14px;
}
.restaurant-audit-card{
	padding:18px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
	box-shadow:var(--shadow);
}
.restaurant-audit-card.is-disabled{
	opacity:.62;
}
.restaurant-audit-card__head{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:14px;
	margin-bottom:14px;
}
.restaurant-audit-card__head strong,
.restaurant-audit-card__head small{
	display:block;
}
.restaurant-audit-card__head small{
	margin-top:2px;
	color:var(--muted);
	font-size:.68rem;
}
.restaurant-audit-card__toggles{
	display:grid;
	gap:6px;
}
.restaurant-audit-card__toggles label{
	display:flex;
	align-items:center;
	gap:7px;
	font-size:.72rem;
	font-weight:800;
	white-space:nowrap;
}
.restaurant-audit-fields{
	display:grid;
	grid-template-columns:1fr;
	gap:10px;
}
.restaurant-audit-fields label{
	display:grid;
	gap:5px;
}
.restaurant-audit-fields label>span{
	color:var(--muted);
	font-size:.7rem;
	font-weight:800;
}
.restaurant-audit-fields input,
.restaurant-audit-fields textarea{
	width:100%;
	min-height:42px;
	padding:10px 11px;
	border:1px solid var(--line);
	border-radius:11px;
	background:#fff;
	color:var(--text);
	font:inherit;
}
.restaurant-audit-fields textarea{
	resize:vertical;
	line-height:1.4;
}
@media(min-width:700px){
	.restaurant-audit-fields{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.restaurant-audit-fields__wide{
		grid-column:1/-1;
	}
}
@media(max-width:560px){
	.restaurant-audit-card__head{
		flex-direction:column;
	}
}


/* v0.29 — persistent QA gate */
.qa-progress{
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:center;
	gap:16px;
	margin-bottom:16px;
	padding:16px 18px;
	border:1px solid var(--line);
	border-radius:18px;
	background:var(--surface);
}
.qa-progress>strong{
	font-family:Georgia,"Times New Roman",serif;
	font-size:2rem;
	font-weight:500;
}
.qa-progress span{
	display:block;
	margin-bottom:7px;
	font-size:.78rem;
	font-weight:800;
}
.qa-progress__bar{
	height:7px;
	overflow:hidden;
	border-radius:999px;
	background:rgba(31,42,34,.08);
}
.qa-progress__bar i{
	display:block;
	height:100%;
	border-radius:999px;
	background:var(--green-dark);
}
.qa-device-grid--editable{
	grid-template-columns:1fr;
}
.qa-edit-list li{
	padding:8px 0;
	border-bottom:1px solid rgba(31,42,34,.08);
}
.qa-edit-list li:last-child{
	border-bottom:0;
}
.qa-edit-list label{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:10px;
	align-items:start;
	cursor:pointer;
}
.qa-edit-list input{
	width:18px;
	height:18px;
	margin-top:1px;
}
.qa-edit-list li.is-complete span{
	color:var(--muted);
	text-decoration:line-through;
	text-decoration-thickness:1px;
}
@media(min-width:760px){
	.rc-metrics{
		grid-template-columns:repeat(4,minmax(0,1fr));
	}
	.qa-device-grid--editable{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
}


/* v0.30 — photo-independent launch */
.internal-photo-placeholder{
	display:none;
}
.lngc-admin-preview .internal-photo-placeholder{
	display:grid;
}

/* When no visual is rendered, cards become intentionally editorial. */
.service-card:not(:has(.content-visual)),
.recommendation-card:not(:has(.content-visual)),
.explore-card:not(:has(.content-visual)),
.explore-hub__card:not(:has(.content-visual)){
	padding-top:0;
}

/* Browser fallback: the normal card body still carries the layout cleanly. */
.rc-block--enhancement{
	background:rgba(156,120,81,.045);
}


/* v0.31 — launch sprint */
.launch-sprint-progress{
	display:flex;
	align-items:baseline;
	gap:8px;
	margin-bottom:16px;
	padding:16px 18px;
	border-radius:18px;
	background:rgba(66,91,69,.07);
}
.launch-sprint-progress strong{
	font-family:Georgia,"Times New Roman",serif;
	font-size:2rem;
	font-weight:500;
}
.launch-sprint-progress span{
	color:var(--muted);
	font-size:.8rem;
	font-weight:800;
}
.launch-sprint-list{
	display:grid;
	gap:10px;
}
.launch-sprint-row{
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:12px;
	padding:16px;
	border:1px solid var(--line);
	border-radius:17px;
	background:var(--surface);
	color:inherit;
	text-decoration:none;
	box-shadow:var(--shadow);
}
.launch-sprint-row__icon{
	display:grid;
	place-items:center;
	width:30px;
	height:30px;
	border-radius:50%;
	background:#eeeae1;
	color:var(--muted);
	font-weight:800;
}
.launch-sprint-row.is-ready .launch-sprint-row__icon{
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
}
.launch-sprint-row strong,
.launch-sprint-row small{
	display:block;
}
.launch-sprint-row small{
	margin-top:3px;
	color:var(--muted);
}
.launch-sprint-later,
.launch-sprint-ready{
	margin-top:16px;
	padding:18px;
	border-radius:18px;
}
.launch-sprint-later{
	border:1px solid var(--line);
	background:var(--surface);
}
.launch-sprint-ready{
	background:rgba(66,91,69,.09);
}
.launch-sprint-later h2,
.launch-sprint-ready strong{
	margin:3px 0 6px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.45rem;
	font-weight:500;
}
.launch-sprint-later p,
.launch-sprint-ready p{
	color:var(--muted);
	line-height:1.5;
}
.qa-core-tag{
	display:inline-block;
	margin-left:5px;
	padding:2px 5px;
	border-radius:999px;
	background:rgba(66,91,69,.10);
	color:var(--green-dark);
	font-size:.56rem;
	line-height:1.2;
	text-decoration:none;
	text-transform:uppercase;
	letter-spacing:.03em;
}


/* v1.0 — production baseline */
.production-baseline{
	margin-bottom:18px;
	padding:20px;
	border-radius:20px;
	background:rgba(66,91,69,.10);
}
.production-baseline h2{
	margin:3px 0 7px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.55rem;
	font-weight:500;
}
.production-baseline p:last-child{
	margin-bottom:0;
	color:var(--muted);
	line-height:1.5;
}


/* v1.1 — legacy visual population */
.brand--with-mark{
	display:grid;
	grid-template-columns:48px 1fr;
	align-items:center;
	gap:9px;
}
.brand__legacy-mark{
	position:relative;
	display:block;
	width:48px;
	height:42px;
	overflow:hidden;
	border-radius:8px;
}
.brand__legacy-mark img{
	position:absolute;
	top:-13px;
	left:-11px;
	width:72px;
	height:auto;
	max-width:none;
}
.brand__words{
	display:grid;
	min-width:0;
}
.is-legacy-visual img{
	filter:saturate(.92) contrast(.98);
}

/* Legacy thumbnails are temporary and small: keep their display size sensible. */
.service-card__image.is-legacy-visual,
.service-detail__hero-image.is-legacy-visual,
.recommendation-card__image.is-legacy-visual{
	background:#ddd6c8;
}
@media(max-width:420px){
	.brand--with-mark{
		grid-template-columns:42px 1fr;
		gap:8px;
	}
	.brand__legacy-mark{
		width:42px;
		height:38px;
	}
	.brand__legacy-mark img{
		top:-12px;
		left:-10px;
		width:64px;
	}
}


/* v1.2 — visual population without redesign */
.brand__legacy-mark img{
	filter:grayscale(1) sepia(1) saturate(5) hue-rotate(32deg) brightness(.48) contrast(1.25);
}
.brand__name{
	color:var(--green-dark);
}

/* Home service cards now use the existing photo system. */
.feature-card__visual.content-visual{
	display:block;
	overflow:hidden;
}
.feature-card__visual.content-visual.has-image img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}


/* v1.4 — Explore + My Stay visual population, no redesign */
.my-stay-feature__image.content-visual{
	display:block;
	overflow:hidden;
}
.my-stay-feature__image.content-visual.has-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.feature-card__visual.content-visual.has-image{
	background:#ddd6c8;
}


/* v1.5 — Explore internal + Restaurants; Your Villa remains intentionally icon-led */
.villa-hub-card__icon{
	background:rgba(66,91,69,.08);
	color:var(--green-dark);
	border:1px solid rgba(66,91,69,.08);
}
.villa-hub-card{
	background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,245,238,.92));
}
.recommendation-card__image.has-image,
.explore-card__image.has-image{
	background:#ddd6c8;
}
.recommendation-card__image.has-image img,
.explore-card__image.has-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}


/* v1.6 — visual finishing pass */

/* Shared photographic language */
.content-visual.has-image,
.feature-card__visual.has-image,
.service-card__image.has-image,
.service-detail__hero-image.has-image,
.explore-card__image.has-image,
.explore-hub__image.has-image,
.recommendation-card__image.has-image,
.my-stay-feature__image.has-image{
	position:relative;
	overflow:hidden;
	background:#ddd6c8;
}

.content-visual.has-image::after,
.feature-card__visual.has-image::after,
.service-card__image.has-image::after,
.service-detail__hero-image.has-image::after,
.explore-card__image.has-image::after,
.explore-hub__image.has-image::after,
.recommendation-card__image.has-image::after,
.my-stay-feature__image.has-image::after{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:linear-gradient(180deg,rgba(255,255,255,0) 66%,rgba(31,42,34,.045));
}

.content-visual.has-image img,
.feature-card__visual.has-image img,
.service-card__image.has-image img,
.service-detail__hero-image.has-image img,
.explore-card__image.has-image img,
.explore-hub__image.has-image img,
.recommendation-card__image.has-image img,
.my-stay-feature__image.has-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

/* Avoid oversized low-res legacy imagery on large screens. */
.is-legacy-visual img{
	image-rendering:auto;
}
@media(min-width:900px){
	.service-detail__hero-image.is-legacy-visual{
		max-height:440px;
	}
}

/* Service details: make the image feel like part of the same system as Home. */
.service-detail__hero-image{
	border-radius:20px;
	margin:12px 0 20px;
	aspect-ratio:16/10;
}
.service-detail__hero-image.has-image img{
	border-radius:20px;
}

/* Explore collection image rhythm */
.explore-card__image,
.recommendation-card__image{
	aspect-ratio:16/10;
}
.explore-hub__image{
	aspect-ratio:16/9;
}

/* My Stay images: elegant and compact rather than dominant. */
.my-stay-feature__image{
	aspect-ratio:16/7;
	min-height:120px;
}
.my-stay-feature__image.has-image img{
	object-position:center;
}

/* Cards: unify border/shadow density after image population */
.feature-card,
.service-card,
.explore-card,
.explore-hub__card,
.recommendation-card,
.my-stay-feature,
.villa-hub-card,
.help-card,
.stay-card{
	border-color:rgba(31,42,34,.10);
	box-shadow:0 8px 24px rgba(31,42,34,.055);
}

/* Keep practical sections calmer than experiences */
.villa-hub-card,
.help-card{
	box-shadow:0 5px 16px rgba(31,42,34,.04);
}

/* Make the Home carousels read cleanly now that images exist */
.horizontal-scroll{
	scroll-padding-inline:18px;
}
.feature-card{
	scroll-snap-align:start;
}

/* Slightly warmer image-less surfaces */
.feature-card__visual:not(.has-image),
.service-card__image:not(.has-image),
.explore-card__image:not(.has-image),
.recommendation-card__image:not(.has-image){
	background:
		linear-gradient(135deg,rgba(66,91,69,.055),rgba(156,120,81,.075)),
		#eee9df;
}

/* Better typography balance with photo cards */
.feature-card strong,
.service-card h2,
.explore-card h2,
.recommendation-card h2{
	letter-spacing:-.01em;
}
.recommendation-card__body p,
.service-card__body p,
.explore-card__body p{
	max-width:38rem;
}

/* Mobile: prevent photos from pushing useful text too far down */
@media(max-width:520px){
	.service-detail__hero-image{
		aspect-ratio:16/9;
		margin-bottom:16px;
	}
	.my-stay-feature__image{
		aspect-ratio:16/8;
	}
}

/* Large screen: don't let the guest companion turn into a stretched brochure */
@media(min-width:1100px){
	.app-main,
	.site-header__inner{
		max-width:1080px;
		margin-left:auto;
		margin-right:auto;
	}
}


.search-result__meta{
	display:block;
	margin-top:2px;
	color:var(--muted);
	font-size:.66rem;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.04em;
}


/* v1.7 — My Stay Hub redesign */
.my-stay-hub .detail-page{
	max-width:980px;
}
.my-stay-hero{
	margin-bottom:20px;
}
.my-stay-hero .detail-hero__lead{
	max-width:34rem;
}

.my-stay-primary{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}
.my-stay-primary-card{
	position:relative;
	min-height:260px;
	overflow:hidden;
	border-radius:22px;
	background:var(--green-dark);
	color:#fff;
	text-decoration:none;
	box-shadow:0 12px 30px rgba(31,42,34,.10);
}
.my-stay-primary-card__visual{
	position:absolute;
	inset:0;
}
.my-stay-primary-card__visual.has-image::after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,rgba(31,42,34,.10),rgba(31,42,34,.72));
}
.my-stay-primary-card__visual img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.my-stay-primary-card__overlay{
	position:relative;
	z-index:2;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	min-height:260px;
	padding:22px;
}
.my-stay-primary-card .service-section__eyebrow{
	color:rgba(255,255,255,.76);
}
.my-stay-primary-card h2{
	margin:4px 0 6px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:2rem;
	font-weight:500;
	line-height:1.02;
}
.my-stay-primary-card p{
	max-width:28rem;
	margin:0;
	color:rgba(255,255,255,.86);
	line-height:1.45;
}
.my-stay-primary-card__action{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-top:18px;
	padding-top:14px;
	border-top:1px solid rgba(255,255,255,.20);
	font-size:.78rem;
	font-weight:800;
}
.my-stay-primary-card__action b{
	font-size:1.15rem;
}

.my-stay-featured,
.my-stay-practical{
	margin-top:30px;
}
.section-kicker{
	margin:0 0 3px;
	color:var(--muted);
	font-size:.66rem;
	font-weight:800;
	letter-spacing:.12em;
	text-transform:uppercase;
}

.my-stay-featured-card{
	display:grid;
	grid-template-columns:1fr;
	overflow:hidden;
	border:1px solid rgba(31,42,34,.10);
	border-radius:20px;
	background:var(--surface);
	color:inherit;
	text-decoration:none;
	box-shadow:0 8px 24px rgba(31,42,34,.055);
}
.my-stay-featured-card__visual{
	aspect-ratio:16/8;
	overflow:hidden;
	background:#ddd6c8;
}
.my-stay-featured-card__visual img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.my-stay-featured-card__body{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:14px;
	padding:18px;
}
.my-stay-featured-card__body strong{
	display:block;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.35rem;
	font-weight:500;
}
.my-stay-featured-card__body p{
	margin:5px 0 0;
	color:var(--muted);
	line-height:1.45;
}
.my-stay-featured-card__arrow{
	display:grid;
	place-items:center;
	width:42px;
	height:42px;
	border-radius:50%;
	background:rgba(66,91,69,.08);
	color:var(--green-dark);
	font-size:1.1rem;
}

.my-stay-practical-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:9px;
}
.my-stay-practical-card{
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:12px;
	min-height:76px;
	padding:14px 15px;
	border:1px solid rgba(31,42,34,.10);
	border-radius:16px;
	background:var(--surface);
	color:inherit;
	text-decoration:none;
}
.my-stay-practical-card__icon{
	display:grid;
	place-items:center;
	width:38px;
	height:38px;
	border-radius:50%;
	background:rgba(66,91,69,.08);
	color:var(--green-dark);
	font-size:1rem;
}
.my-stay-practical-card strong,
.my-stay-practical-card small{
	display:block;
}
.my-stay-practical-card strong{
	font-size:.9rem;
}
.my-stay-practical-card small{
	margin-top:2px;
	color:var(--muted);
	font-size:.72rem;
}
.my-stay-practical-card>b{
	color:var(--muted);
	font-size:1rem;
}
.my-stay-practical-card--arrival{
	border-color:rgba(66,91,69,.18);
	background:rgba(66,91,69,.055);
}

.my-stay-help-strip{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:14px;
	margin-top:22px;
	padding:16px 18px;
	border-radius:16px;
	background:#2b332d;
	color:#fff;
	text-decoration:none;
}
.my-stay-help-strip span,
.my-stay-help-strip small{
	display:block;
}
.my-stay-help-strip span{
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.18rem;
}
.my-stay-help-strip small{
	margin-top:2px;
	color:rgba(255,255,255,.72);
}
.my-stay-help-strip b{
	font-size:1.1rem;
}

@media(min-width:720px){
	.my-stay-primary{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.my-stay-primary-card,
	.my-stay-primary-card__overlay{
		min-height:310px;
	}
	.my-stay-featured-card{
		grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
	}
	.my-stay-featured-card__visual{
		aspect-ratio:auto;
		min-height:230px;
	}
	.my-stay-practical-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}
@media(min-width:980px){
	.my-stay-practical-grid{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
}


/* v1.8 — My Stay unified dashboard */
.my-stay-hub--dashboard .detail-page{
	max-width:1080px;
}
.my-stay-hero--compact{
	margin-bottom:18px;
}
.my-stay-hero--compact h1{
	max-width:12ch;
}
.my-stay-hero--compact .detail-hero__lead{
	max-width:34rem;
}

.stay-dashboard{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}
.stay-dashboard-card{
	display:flex;
	flex-direction:column;
	min-width:0;
	padding:20px;
	border:1px solid rgba(31,42,34,.10);
	border-radius:20px;
	background:var(--surface);
	box-shadow:0 8px 24px rgba(31,42,34,.055);
}
.stay-dashboard-card--plan{
	background:
		linear-gradient(180deg,rgba(66,91,69,.055),rgba(255,255,255,.92)),
		var(--surface);
}
.stay-dashboard-card--explore{
	background:
		linear-gradient(180deg,rgba(156,120,81,.060),rgba(255,255,255,.92)),
		var(--surface);
}
.stay-dashboard-card--practical{
	background:
		linear-gradient(180deg,rgba(31,42,34,.025),rgba(255,255,255,.96)),
		var(--surface);
}
.stay-dashboard-card__head{
	display:grid;
	gap:14px;
}
.stay-dashboard-card__kicker{
	margin:0;
	color:var(--green-dark);
	font-size:.64rem;
	font-weight:900;
	letter-spacing:.11em;
	text-transform:uppercase;
}
.stay-dashboard-card h2{
	margin:4px 0 6px;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.65rem;
	font-weight:500;
	line-height:1.04;
}
.stay-dashboard-card__head p:last-child{
	margin:0;
	color:var(--muted);
	line-height:1.44;
}
.stay-dashboard-card__main-link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:10px 12px;
	border:1px solid rgba(66,91,69,.11);
	border-radius:12px;
	background:rgba(255,255,255,.72);
	color:var(--green-dark);
	font-size:.74rem;
	font-weight:800;
	text-decoration:none;
}
.stay-dashboard-tools{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:7px;
	margin-top:16px;
}
.stay-dashboard-tools a{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:7px;
	min-height:48px;
	padding:10px 11px;
	border:1px solid rgba(31,42,34,.08);
	border-radius:12px;
	background:rgba(255,255,255,.82);
	color:inherit;
	text-decoration:none;
}
.stay-dashboard-tools span{
	min-width:0;
	font-size:.78rem;
	font-weight:800;
	line-height:1.18;
}
.stay-dashboard-tools b{
	color:var(--muted);
	font-size:.84rem;
}
.stay-dashboard-card--practical .stay-dashboard-tools a{
	background:rgba(248,245,238,.78);
}

.stay-dashboard-footer{
	margin-top:12px;
}
.stay-dashboard-footer__help{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:12px;
	padding:14px 16px;
	border:1px solid rgba(31,42,34,.10);
	border-radius:16px;
	background:rgba(31,42,34,.035);
	color:inherit;
	text-decoration:none;
}
.stay-dashboard-footer__help strong,
.stay-dashboard-footer__help small{
	display:block;
}
.stay-dashboard-footer__help strong{
	font-size:.84rem;
}
.stay-dashboard-footer__help small{
	margin-top:2px;
	color:var(--muted);
	font-size:.7rem;
}
.stay-dashboard-footer__help b{
	color:var(--muted);
}

@media(min-width:760px){
	.stay-dashboard{
		grid-template-columns:repeat(3,minmax(0,1fr));
		align-items:stretch;
	}
	.stay-dashboard-card{
		padding:22px;
	}
	.stay-dashboard-tools{
		grid-template-columns:1fr;
		margin-top:18px;
	}
	.stay-dashboard-card__head{
		min-height:168px;
	}
}
@media(min-width:980px){
	.stay-dashboard-card h2{
		font-size:1.8rem;
	}
}
@media(max-width:380px){
	.stay-dashboard-tools{
		grid-template-columns:1fr;
	}
}


/* v1.9 — My Stay cockpit */
.my-stay-cockpit .detail-page{
	max-width:1040px;
}
.my-stay-cockpit__hero{
	margin-bottom:16px;
}
.my-stay-cockpit__hero h1{
	margin-bottom:8px;
}
.my-stay-cockpit__hero .detail-hero__lead{
	max-width:32rem;
}

.stay-cockpit-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
}
.stay-cockpit-card{
	position:relative;
	display:flex;
	flex-direction:column;
	min-width:0;
	min-height:245px;
	padding:16px;
	overflow:hidden;
	border:1px solid rgba(31,42,34,.10);
	border-radius:18px;
	background:var(--surface);
	box-shadow:0 7px 20px rgba(31,42,34,.05);
}
.stay-cockpit-card::before{
	content:"";
	position:absolute;
	right:-28px;
	top:-30px;
	width:120px;
	height:120px;
	border:1px solid rgba(66,91,69,.08);
	border-radius:50%;
	pointer-events:none;
}
.stay-cockpit-card::after{
	content:"";
	position:absolute;
	right:18px;
	top:18px;
	width:54px;
	height:54px;
	border-radius:50%;
	background:rgba(66,91,69,.035);
	pointer-events:none;
}
.stay-cockpit-card--plan{
	background:linear-gradient(160deg,rgba(66,91,69,.075),rgba(255,255,255,.96) 58%);
}
.stay-cockpit-card--explore{
	background:linear-gradient(160deg,rgba(156,120,81,.075),rgba(255,255,255,.96) 58%);
}
.stay-cockpit-card--practical{
	background:linear-gradient(160deg,rgba(31,42,34,.045),rgba(255,255,255,.98) 58%);
}
.stay-cockpit-card--help{
	background:linear-gradient(160deg,rgba(66,91,69,.055),rgba(248,245,238,.98) 58%);
}

.stay-cockpit-card__top{
	position:relative;
	z-index:1;
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:start;
	gap:10px;
}
.stay-cockpit-card__icon{
	display:grid;
	place-items:center;
	width:34px;
	height:34px;
	border:1px solid rgba(66,91,69,.11);
	border-radius:50%;
	background:rgba(255,255,255,.64);
	color:var(--green-dark);
	font-family:Georgia,"Times New Roman",serif;
	font-size:.98rem;
}
.stay-cockpit-card__kicker{
	margin:2px 0 3px;
	color:var(--green-dark);
	font-size:.58rem;
	font-weight:900;
	letter-spacing:.10em;
	text-transform:uppercase;
}
.stay-cockpit-card h2{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.23rem;
	font-weight:500;
	line-height:1.06;
	letter-spacing:-.02em;
}
.stay-cockpit-card__copy{
	position:relative;
	z-index:1;
	margin:12px 0 13px;
	color:var(--muted);
	font-size:.75rem;
	line-height:1.4;
}
.stay-cockpit-card__quick{
	position:relative;
	z-index:1;
	display:flex;
	flex-wrap:wrap;
	gap:6px;
	margin-top:auto;
}
.stay-cockpit-card__quick a{
	display:inline-flex;
	align-items:center;
	min-height:32px;
	padding:6px 9px;
	border:1px solid rgba(31,42,34,.085);
	border-radius:999px;
	background:rgba(255,255,255,.78);
	color:inherit;
	font-size:.68rem;
	font-weight:800;
	line-height:1;
	text-decoration:none;
}
.stay-cockpit-card__all{
	position:relative;
	z-index:1;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:8px;
	margin-top:9px;
	padding-top:9px;
	border-top:1px solid rgba(31,42,34,.09);
	color:var(--green-dark);
	font-size:.7rem;
	font-weight:900;
	text-decoration:none;
}
.stay-cockpit-card__all b{
	font-size:.9rem;
}

/* Premium concierge is intentionally not a fifth dashboard category. */
.concierge-upgrade{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:12px;
	margin-top:12px;
	padding:16px;
	border-radius:18px;
	background:var(--green-dark);
	color:#fff;
	box-shadow:0 10px 26px rgba(31,42,34,.11);
}
.concierge-upgrade__mark{
	display:grid;
	place-items:center;
	width:38px;
	height:38px;
	border:1px solid rgba(255,255,255,.25);
	border-radius:50%;
	color:rgba(255,255,255,.9);
	font-family:Georgia,"Times New Roman",serif;
}
.concierge-upgrade__kicker{
	margin:1px 0 4px;
	color:rgba(255,255,255,.68);
	font-size:.58rem;
	font-weight:900;
	letter-spacing:.11em;
	text-transform:uppercase;
}
.concierge-upgrade h2{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.22rem;
	font-weight:500;
	line-height:1.08;
}
.concierge-upgrade__copy>p:last-child{
	margin:6px 0 0;
	color:rgba(255,255,255,.76);
	font-size:.73rem;
	line-height:1.4;
}
.concierge-upgrade__cta{
	grid-column:1/-1;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding-top:11px;
	border-top:1px solid rgba(255,255,255,.17);
	color:#fff;
	font-size:.72rem;
	font-weight:900;
	text-decoration:none;
}

@media(min-width:720px){
	.stay-cockpit-grid{
		gap:12px;
	}
	.stay-cockpit-card{
		min-height:230px;
		padding:18px;
	}
	.stay-cockpit-card h2{
		font-size:1.42rem;
	}
	.concierge-upgrade{
		grid-template-columns:auto 1fr auto;
		align-items:center;
		padding:18px 20px;
	}
	.concierge-upgrade__cta{
		grid-column:auto;
		min-width:185px;
		padding:10px 12px;
		border:1px solid rgba(255,255,255,.18);
		border-radius:12px;
	}
}
@media(min-width:980px){
	.stay-cockpit-grid{
		grid-template-columns:repeat(4,minmax(0,1fr));
	}
	.stay-cockpit-card{
		min-height:285px;
	}
}
@media(max-width:390px){
	.stay-cockpit-card{
		min-height:220px;
		padding:14px;
	}
	.stay-cockpit-card h2{
		font-size:1.08rem;
	}
	.stay-cockpit-card__copy{
		font-size:.69rem;
	}
	.stay-cockpit-card__quick a{
		font-size:.63rem;
		padding-inline:8px;
	}
}


/* v1.10 — Home: My Stay reads as a tool/cockpit entry point */
.home-stay-tool{
	display:block;
	padding:18px;
	border-radius:22px;
	background:
		linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,0)),
		var(--green-dark);
	color:#fff;
	text-decoration:none;
	box-shadow:0 12px 30px rgba(31,42,34,.11);
}
.home-stay-tool__head{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:start;
	gap:14px;
}
.home-stay-tool__eyebrow{
	margin:0 0 5px;
	color:rgba(255,255,255,.66);
	font-size:.62rem;
	font-weight:900;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.home-stay-tool h2{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.72rem;
	font-weight:500;
	line-height:1.04;
	letter-spacing:-.02em;
}
.home-stay-tool__copy{
	margin:7px 0 0;
	max-width:28rem;
	color:rgba(255,255,255,.76);
	font-size:.78rem;
	line-height:1.42;
}
.home-stay-tool__launch{
	display:grid;
	place-items:center;
	width:44px;
	height:44px;
	border:1px solid rgba(255,255,255,.18);
	border-radius:50%;
	background:rgba(255,255,255,.04);
	font-size:1.25rem;
}

.home-stay-tool__areas{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:6px;
	margin-top:16px;
}
.home-stay-tool__areas span{
	display:grid;
	place-items:center;
	min-height:38px;
	padding:7px 6px;
	border:1px solid rgba(255,255,255,.12);
	border-radius:10px;
	background:rgba(255,255,255,.055);
	color:rgba(255,255,255,.9);
	font-size:.64rem;
	font-weight:800;
	line-height:1.05;
	text-align:center;
}

.home-stay-tool__footer{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-top:12px;
	padding-top:11px;
	border-top:1px solid rgba(255,255,255,.15);
}
.home-stay-tool__footer span{
	font-size:.75rem;
	font-weight:900;
}
.home-stay-tool__footer strong{
	color:rgba(255,255,255,.58);
	font-size:.62rem;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.05em;
}

@media(max-width:390px){
	.home-stay-tool{
		padding:16px;
	}
	.home-stay-tool h2{
		font-size:1.48rem;
	}
	.home-stay-tool__areas span{
		min-height:34px;
		font-size:.58rem;
	}
}


/* v1.11 — Home My Stay as a real console */
.home-stay-console{
	overflow:hidden;
	border:1px solid rgba(255,255,255,.10);
	border-radius:22px;
	background:#25322a;
	color:#fff;
	box-shadow:0 14px 34px rgba(31,42,34,.14);
}
.home-stay-console__header{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:start;
	gap:14px;
	padding:17px 17px 14px;
	color:#fff;
	text-decoration:none;
}
.home-stay-console__eyebrow{
	margin:0 0 4px;
	color:rgba(255,255,255,.56);
	font-size:.59rem;
	font-weight:900;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.home-stay-console__header h2{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.52rem;
	font-weight:500;
	line-height:1.04;
}
.home-stay-console__header p{
	margin:6px 0 0;
	color:rgba(255,255,255,.70);
	font-size:.73rem;
	line-height:1.35;
}
.home-stay-console__open{
	display:flex;
	align-items:center;
	gap:7px;
	padding:8px 9px;
	border:1px solid rgba(255,255,255,.15);
	border-radius:999px;
	background:rgba(255,255,255,.05);
	font-size:.65rem;
	font-weight:900;
	white-space:nowrap;
}
.home-stay-console__grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:1px;
	background:rgba(255,255,255,.10);
	border-top:1px solid rgba(255,255,255,.10);
	border-bottom:1px solid rgba(255,255,255,.10);
}
.home-stay-console__tool{
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:8px;
	min-width:0;
	min-height:72px;
	padding:11px 12px;
	background:#2d3a31;
	color:#fff;
	text-decoration:none;
}
.home-stay-console__tool:nth-child(2),
.home-stay-console__tool:nth-child(3){
	background:#303c33;
}
.home-stay-console__tool-icon{
	display:grid;
	place-items:center;
	width:30px;
	height:30px;
	border:1px solid rgba(255,255,255,.13);
	border-radius:9px;
	background:rgba(255,255,255,.045);
	color:#e7eadf;
	font-family:Georgia,"Times New Roman",serif;
}
.home-stay-console__tool-copy{
	min-width:0;
}
.home-stay-console__tool-copy strong,
.home-stay-console__tool-copy small{
	display:block;
}
.home-stay-console__tool-copy strong{
	font-size:.72rem;
	line-height:1.15;
}
.home-stay-console__tool-copy small{
	margin-top:3px;
	overflow:hidden;
	color:rgba(255,255,255,.52);
	font-size:.57rem;
	line-height:1.2;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.home-stay-console__tool>b{
	color:rgba(255,255,255,.50);
	font-size:.78rem;
}
.home-stay-console__footer{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:11px 14px;
	color:#fff;
	text-decoration:none;
}
.home-stay-console__footer span{
	font-size:.66rem;
	font-weight:800;
}
.home-stay-console__footer b{
	color:rgba(255,255,255,.48);
	font-size:.57rem;
	font-weight:800;
	letter-spacing:.02em;
}

/* My Stay cockpit: reinforce the semantic difference between in-stay experiences and territorial exploration */
.stay-cockpit-card--plan .stay-cockpit-card__icon{
	background:rgba(66,91,69,.09);
}
.stay-cockpit-card--explore .stay-cockpit-card__icon{
	background:rgba(156,120,81,.10);
}
.stay-cockpit-card--plan{
	border-top:3px solid rgba(66,91,69,.32);
}
.stay-cockpit-card--explore{
	border-top:3px solid rgba(156,120,81,.34);
}

@media(min-width:720px){
	.home-stay-console__grid{
		grid-template-columns:repeat(4,minmax(0,1fr));
	}
	.home-stay-console__tool{
		min-height:78px;
	}
}
@media(max-width:390px){
	.home-stay-console__header h2{
		font-size:1.34rem;
	}
	.home-stay-console__tool{
		min-height:68px;
		padding:9px 10px;
	}
	.home-stay-console__tool-copy strong{
		font-size:.67rem;
	}
}


/* v1.11.1 — tighter Home first viewport */
body.home .app-main{
	padding-top:12px;
}
body.home .hero{
	padding-top:6px;
	padding-bottom:14px;
}
body.home .hero h1{
	font-size:clamp(2.5rem,10.4vw,5.2rem);
	line-height:.98;
	max-width:9ch;
}
body.home .hero__subtitle{
	margin:10px 0 16px;
	font-size:clamp(1rem,3.45vw,1.25rem);
	line-height:1.35;
}
body.home .search-box--hero{
	padding:13px 16px;
}
body.home .home-featured-stay{
	margin-top:0;
	margin-bottom:24px;
}
body.home .home-stay-console__header{
	padding-top:15px;
	padding-bottom:12px;
}
body.home .home-stay-console__header h2{
	font-size:1.45rem;
}
body.home .home-stay-console__header p{
	margin-top:5px;
}

@media(max-width:430px){
	body.home .app-main{
		padding-top:9px;
	}
	body.home .hero{
		padding-top:3px;
		padding-bottom:12px;
	}
	body.home .hero h1{
		font-size:clamp(2.35rem,10.7vw,3.35rem);
		line-height:.97;
	}
	body.home .hero__subtitle{
		margin:9px 0 14px;
		font-size:1rem;
	}
	body.home .search-box--hero{
		padding:12px 15px;
	}
}

@media(min-width:720px) and (max-width:1023px){
	body.home .hero{
		padding-top:18px;
		padding-bottom:16px;
	}
	body.home .hero h1{
		font-size:clamp(3.5rem,7.2vw,4.7rem);
	}
}


/* v1.11.2 — Home ergonomics: compact search + slimmer bottom nav
   Visual density is reduced, but touch targets remain generous. */

/* Search: visually lighter and shorter, still easy to tap */
body.home .search-box--hero{
	min-height:52px;
	padding:9px 14px;
	border-radius:18px;
}
body.home .search-box--hero input,
body.home .search-box--hero button{
	min-height:44px;
}
body.home .search-box--hero input{
	font-size:1rem;
}
body.home .search-box--hero .search-icon,
body.home .search-box--hero button{
	font-size:.92rem;
}
body.home .hero__subtitle{
	margin-bottom:12px;
}
body.home .hero{
	padding-bottom:10px;
}

/* Bottom navigation: reduce visual footprint only.
   Links retain minimum 48px interaction height. */
.bottom-nav{
	padding-top:4px;
	padding-bottom:max(4px, env(safe-area-inset-bottom));
}
.bottom-nav a{
	min-height:48px;
	padding-top:4px;
	padding-bottom:4px;
}
.bottom-nav .nav-icon,
.bottom-nav__icon{
	transform:scale(.90);
	transform-origin:center;
}
.bottom-nav .nav-label,
.bottom-nav__label{
	font-size:.68rem;
	line-height:1.05;
}

/* On phones, use every available pixel for the actual cockpit */
@media(max-width:430px){
	body.home .search-box--hero{
		min-height:50px;
		padding:7px 12px;
		border-radius:17px;
	}
	body.home .search-box--hero input,
	body.home .search-box--hero button{
		min-height:42px;
	}
	body.home .hero__subtitle{
		margin-bottom:10px;
	}
	.bottom-nav a{
		min-height:46px;
	}
}

/* Keep tablet navigation comfortable while still slightly tighter */
@media(min-width:720px){
	.bottom-nav a{
		min-height:50px;
	}
}


/* v1.11.3 — Home top redesign
   Goal: less column-like hero, subtler movement, slimmer search launcher,
   more of My Stay visible in the first viewport. */

body.home .app-main{
	padding-top:8px;
}

/* Home hero shell */
body.home .hero--home{
	padding:2px 0 10px;
}
.hero-home-surface{
	position:relative;
	overflow:hidden;
	padding:16px 0 8px;
}
.hero-home-surface::before{
	content:"";
	position:absolute;
	inset:0 0 auto 0;
	height:148px;
	border-radius:22px;
	background:
		radial-gradient(circle at 84% 18%, rgba(66,91,69,.075), transparent 32%),
		radial-gradient(circle at 18% 72%, rgba(156,120,81,.09), transparent 34%),
		linear-gradient(135deg, rgba(255,255,255,.52), rgba(248,245,238,.78));
	pointer-events:none;
}
.hero-home-surface::after{
	content:"";
	position:absolute;
	right:12px;
	top:18px;
	width:86px;
	height:86px;
	border-radius:50%;
	border:1px solid rgba(66,91,69,.08);
	box-shadow:0 0 0 16px rgba(66,91,69,.025), 0 0 0 34px rgba(66,91,69,.015);
	pointer-events:none;
}
.hero-home-surface__eyebrow{
	position:relative;
	z-index:1;
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin:0 0 12px;
	padding:6px 10px;
	border:1px solid rgba(66,91,69,.10);
	border-radius:999px;
	background:rgba(255,255,255,.55);
	color:var(--green-dark);
	font-size:.60rem;
	font-weight:900;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.hero-home-surface__copy{
	position:relative;
	z-index:1;
}
.hero-home-surface__title{
	margin:0;
	max-width:10ch;
}
.hero-home-surface__title span{
	display:block;
}
.hero-home-surface__title span:last-child{
	margin-left:.7em;
}
body.home .hero-home-surface__title{
	font-size:clamp(2.45rem,10.4vw,5.1rem);
	line-height:.95;
	letter-spacing:-.04em;
}
.hero-home-surface__subtitle{
	position:relative;
	margin:10px 0 0 .95rem;
	max-width:25rem;
	padding-left:12px;
	color:var(--text);
	font-size:clamp(1rem,3.35vw,1.18rem);
	line-height:1.34;
}
.hero-home-surface__subtitle::before{
	content:"";
	position:absolute;
	left:0;
	top:.18em;
	bottom:.18em;
	width:2px;
	border-radius:999px;
	background:rgba(66,91,69,.22);
}

/* Search becomes a compact launcher, not a full traditional bar */
.search-launcher{
	position:relative;
	z-index:1;
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:10px;
	width:100%;
	max-width:420px;
	margin-top:14px;
	padding:10px 12px;
	border:1px solid rgba(31,42,34,.09);
	border-radius:18px;
	background:rgba(255,255,255,.82);
	box-shadow:0 8px 20px rgba(31,42,34,.055);
	color:inherit;
	text-decoration:none;
}
.search-launcher__icon{
	display:grid;
	place-items:center;
	width:32px;
	height:32px;
	border-radius:10px;
	background:rgba(66,91,69,.08);
	color:var(--green-dark);
	font-size:.95rem;
}
.search-launcher__copy strong,
.search-launcher__copy small{
	display:block;
}
.search-launcher__copy strong{
	font-size:.77rem;
	line-height:1.08;
}
.search-launcher__copy small{
	margin-top:3px;
	color:var(--muted);
	font-size:.66rem;
	line-height:1.2;
}
.search-launcher__hint{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:28px;
	padding:0 10px;
	border:1px solid rgba(66,91,69,.10);
	border-radius:999px;
	background:rgba(66,91,69,.05);
	color:var(--green-dark);
	font-size:.60rem;
	font-weight:800;
	letter-spacing:.03em;
	white-space:nowrap;
}

/* Bring My Stay closer */
body.home .home-featured-stay{
	margin-top:2px;
	margin-bottom:22px;
}

/* Keep bottom nav comfortably tappable but not tall */
.bottom-nav{
	padding-top:3px;
	padding-bottom:max(3px, env(safe-area-inset-bottom));
}
.bottom-nav a{
	min-height:46px;
}

/* Mobile tuning */
@media(max-width:430px){
	body.home .app-main{
		padding-top:6px;
	}
	.hero-home-surface{
		padding-top:12px;
	}
	.hero-home-surface::before{
		height:134px;
		border-radius:20px;
	}
	body.home .hero-home-surface__title{
		font-size:clamp(2.28rem,10.2vw,3.2rem);
	}
	.hero-home-surface__title span:last-child{
		margin-left:.55em;
	}
	.hero-home-surface__subtitle{
		margin-top:8px;
		margin-left:.68rem;
		padding-left:10px;
		font-size:.97rem;
	}
	.search-launcher{
		margin-top:12px;
		padding:9px 11px;
		border-radius:16px;
	}
	.search-launcher__copy strong{
		font-size:.74rem;
	}
	.search-launcher__copy small{
		font-size:.63rem;
	}
	.search-launcher__hint{
		padding:0 8px;
	}
}
@media(min-width:720px){
	body.home .hero--home{
		padding-top:8px;
	}
	.hero-home-surface{
		padding-top:20px;
		padding-bottom:10px;
	}
	.hero-home-surface::before{
		height:170px;
	}
	.hero-home-surface__subtitle{
		margin-left:1.15rem;
	}
	.search-launcher{
		max-width:470px;
	}
}


/* v1.11.4 — Home top clean-up + real search overlay
   Removes redundant LN Guest Companion eyebrow and replaces the large
   search launcher with a compact, truly functional search trigger. */

body.home .app-main{
	padding-top:6px;
}

body.home .hero--home{
	padding:0 0 8px;
}
.hero-home-surface{
	position:relative;
	overflow:hidden;
	padding:10px 0 6px;
}
.hero-home-surface::before{
	content:"";
	position:absolute;
	inset:0 0 auto 0;
	height:132px;
	border-radius:20px;
	background:
		radial-gradient(circle at 84% 18%, rgba(66,91,69,.075), transparent 32%),
		radial-gradient(circle at 18% 72%, rgba(156,120,81,.09), transparent 34%),
		linear-gradient(135deg, rgba(255,255,255,.52), rgba(248,245,238,.78));
	pointer-events:none;
}
.hero-home-surface::after{
	content:"";
	position:absolute;
	right:10px;
	top:14px;
	width:76px;
	height:76px;
	border-radius:50%;
	border:1px solid rgba(66,91,69,.08);
	box-shadow:0 0 0 14px rgba(66,91,69,.024), 0 0 0 28px rgba(66,91,69,.015);
	pointer-events:none;
}

body.home .hero-home-surface__title{
	font-size:clamp(2.35rem,10vw,5rem);
	line-height:.94;
	letter-spacing:-.04em;
}
.hero-home-surface__title{
	position:relative;
	z-index:1;
	margin:0;
	max-width:10ch;
}
.hero-home-surface__title span{
	display:block;
}
.hero-home-surface__title span:last-child{
	margin-left:.56em;
}
.hero-home-surface__subtitle{
	position:relative;
	z-index:1;
	margin:9px 0 0 .72rem;
	max-width:24rem;
	padding-left:10px;
	color:var(--text);
	font-size:clamp(.98rem,3.2vw,1.14rem);
	line-height:1.32;
}
.hero-home-surface__subtitle::before{
	content:"";
	position:absolute;
	left:0;
	top:.18em;
	bottom:.18em;
	width:2px;
	border-radius:999px;
	background:rgba(66,91,69,.22);
}

/* Compact search trigger */
.hero-search-trigger{
	position:relative;
	z-index:1;
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin-top:12px;
	padding:9px 12px;
	border:1px solid rgba(66,91,69,.12);
	border-radius:999px;
	background:rgba(255,255,255,.80);
	box-shadow:0 8px 18px rgba(31,42,34,.055);
	cursor:pointer;
}
.hero-search-trigger__icon{
	display:grid;
	place-items:center;
	width:28px;
	height:28px;
	border-radius:50%;
	background:rgba(66,91,69,.08);
	color:var(--green-dark);
	font-size:.88rem;
}
.hero-search-trigger__label{
	color:var(--green-dark);
	font-size:.73rem;
	font-weight:800;
	letter-spacing:.02em;
}

/* Bring My Stay higher */
body.home .home-featured-stay{
	margin-top:0;
	margin-bottom:20px;
}

/* Search overlay */
.search-sheet--home{
	position:fixed;
	inset:0;
	z-index:80;
}
.search-sheet__backdrop{
	position:absolute;
	inset:0;
	border:0;
	background:rgba(27,34,29,.42);
	backdrop-filter:blur(10px);
	cursor:pointer;
}
.search-sheet__panel{
	position:relative;
	z-index:1;
	width:min(100% - 24px, 680px);
	max-height:min(82vh, 760px);
	margin:72px auto 0;
	overflow:auto;
	padding:18px;
	border:1px solid rgba(31,42,34,.10);
	border-radius:24px;
	background:rgba(255,253,248,.97);
	box-shadow:0 24px 50px rgba(18,23,20,.18);
}
.search-sheet__topbar{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-bottom:6px;
}
.search-sheet__eyebrow{
	margin:0;
	color:var(--muted);
	font-size:.68rem;
	font-weight:800;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.search-sheet__close{
	display:grid;
	place-items:center;
	width:34px;
	height:34px;
	border:1px solid rgba(31,42,34,.10);
	border-radius:50%;
	background:#fff;
	cursor:pointer;
	font-size:1.1rem;
	line-height:1;
}
.search-sheet__panel h2{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.8rem;
	font-weight:500;
	line-height:1.04;
}
.search-sheet__lead{
	margin:8px 0 14px;
	color:var(--muted);
	font-size:.92rem;
	line-height:1.4;
}
.search-sheet__help{
	margin:10px 0 12px;
	color:var(--muted);
	font-size:.74rem;
}

.search-form--sheet{
	margin-bottom:10px;
}
.search-form--sheet .search-field{
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:center;
	gap:10px;
	padding:12px 14px;
	border:1px solid var(--line);
	border-radius:18px;
	background:#fff;
	box-shadow:var(--shadow);
}
.search-form--sheet .search-field input{
	border:0;
	outline:0;
	background:transparent;
	min-height:28px;
	width:100%;
}
.search-results--sheet{
	max-height:38vh;
	overflow:auto;
	padding-right:2px;
}

@media(max-width:430px){
	body.home .app-main{
		padding-top:4px;
	}
	.hero-home-surface{
		padding-top:8px;
	}
	.hero-home-surface::before{
		height:122px;
	}
	body.home .hero-home-surface__title{
		font-size:clamp(2.2rem,10vw,3.1rem);
	}
	.hero-home-surface__subtitle{
		margin-left:.58rem;
		font-size:.95rem;
	}
	.hero-search-trigger{
		margin-top:10px;
		padding:8px 11px;
	}
	.search-sheet__panel{
		width:min(100% - 16px, 680px);
		margin-top:58px;
		padding:16px;
		border-radius:20px;
	}
	.search-sheet__panel h2{
		font-size:1.55rem;
	}
}
@media(min-width:720px){
	.hero-home-surface{
		padding-top:14px;
	}
	.hero-home-surface::before{
		height:154px;
	}
	.search-sheet__panel{
		margin-top:88px;
		padding:20px;
	}
}

/* Keep bottom nav visually slim without hurting tap comfort */
.bottom-nav{
	padding-top:3px;
	padding-bottom:max(3px, env(safe-area-inset-bottom));
}
.bottom-nav a{
	min-height:46px;
}


/* v1.11.5 — Search only in bottom navigation */
body.home .hero--home{
	padding-bottom:4px;
}
body.home .home-featured-stay{
	margin-top:0;
}

/* Give Search a little more visual presence without making the nav taller. */
.bottom-nav__item--search,
.bottom-nav a[href*="lngc_search=1"]{
	position:relative;
}
.bottom-nav__item--search .bottom-nav__icon,
.bottom-nav a[href*="lngc_search=1"] .bottom-nav__icon,
.bottom-nav__item--search .nav-icon,
.bottom-nav a[href*="lngc_search=1"] .nav-icon{
	transform:scale(1.08);
	color:var(--green-dark);
}
.bottom-nav__item--search .bottom-nav__label,
.bottom-nav a[href*="lngc_search=1"] .bottom-nav__label,
.bottom-nav__item--search .nav-label,
.bottom-nav a[href*="lngc_search=1"] .nav-label{
	font-weight:800;
	color:var(--green-dark);
}
.bottom-nav__item--search::before,
.bottom-nav a[href*="lngc_search=1"]::before{
	content:"";
	position:absolute;
	left:50%;
	top:4px;
	width:34px;
	height:34px;
	transform:translateX(-50%);
	border-radius:50%;
	background:rgba(66,91,69,.07);
	pointer-events:none;
}

/* Remove any leftover visual effect from the now-deleted Home search trigger. */
.hero-search-trigger,
.search-sheet--home{
	display:none !important;
}


/* v1.11.6 — Hero + My Stay become one command center */
body.home .app-main{
	padding-top:6px;
}

.home-command-center{
	position:relative;
	overflow:hidden;
	margin-bottom:24px;
	padding:12px 0 0;
	border-radius:24px;
	background:
		radial-gradient(circle at 86% 10%, rgba(66,91,69,.075), transparent 30%),
		radial-gradient(circle at 12% 40%, rgba(156,120,81,.085), transparent 32%),
		linear-gradient(145deg, rgba(255,255,255,.46), rgba(248,245,238,.72));
}
.home-command-center::after{
	content:"";
	position:absolute;
	right:12px;
	top:14px;
	width:78px;
	height:78px;
	border-radius:50%;
	border:1px solid rgba(66,91,69,.075);
	box-shadow:0 0 0 14px rgba(66,91,69,.022), 0 0 0 28px rgba(66,91,69,.012);
	pointer-events:none;
}

.home-command-center__intro{
	position:relative;
	z-index:1;
	padding:2px 2px 14px;
}
.home-command-center__title{
	margin:0;
	max-width:10ch;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(2.35rem,10vw,5rem);
	font-weight:500;
	line-height:.94;
	letter-spacing:-.04em;
}
.home-command-center__title span{
	display:block;
}
.home-command-center__title span:last-child{
	margin-left:.56em;
}
.home-command-center__subtitle{
	position:relative;
	margin:9px 0 0 .72rem;
	max-width:24rem;
	padding-left:10px;
	color:var(--text);
	font-size:clamp(.98rem,3.2vw,1.14rem);
	line-height:1.32;
}
.home-command-center__subtitle::before{
	content:"";
	position:absolute;
	left:0;
	top:.18em;
	bottom:.18em;
	width:2px;
	border-radius:999px;
	background:rgba(66,91,69,.22);
}

/* Integrated console: no second headline, directly delivers the promise */
.home-stay-console--integrated{
	position:relative;
	z-index:2;
	margin:0;
	border-radius:20px 20px 0 0;
	box-shadow:0 12px 28px rgba(31,42,34,.12);
}
.home-stay-console__integrated-topline{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:10px 13px;
	border-bottom:1px solid rgba(255,255,255,.10);
	background:rgba(255,255,255,.025);
}
.home-stay-console__integrated-topline>span{
	color:rgba(255,255,255,.62);
	font-size:.60rem;
	font-weight:900;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.home-stay-console__integrated-topline a{
	display:flex;
	align-items:center;
	gap:6px;
	color:#fff;
	font-size:.65rem;
	font-weight:800;
	text-decoration:none;
}
.home-stay-console--integrated .home-stay-console__grid{
	border-top:0;
}
.home-stay-console--integrated .home-stay-console__footer,
.home-stay-console--integrated .home-stay-console__header{
	display:none;
}

/* Pull following content closer now that hero and cockpit are one unit */
body.home .content-section:first-of-type{
	margin-top:22px;
}

@media(max-width:430px){
	.home-command-center{
		margin-left:-2px;
		margin-right:-2px;
		padding-top:10px;
		border-radius:22px;
	}
	.home-command-center__intro{
		padding-bottom:12px;
	}
	.home-command-center__title{
		font-size:clamp(2.2rem,10vw,3.1rem);
	}
	.home-command-center__subtitle{
		margin-left:.58rem;
		font-size:.95rem;
	}
	.home-stay-console__integrated-topline{
		padding:9px 11px;
	}
}

@media(min-width:720px){
	.home-command-center{
		padding-top:16px;
	}
	.home-command-center__intro{
		padding-bottom:16px;
	}
}


/* v1.12 — UX strengthening: empowering DIY concierge */

/* Home command center: the cockpit should read as the product, not decoration. */
.home-stay-console__integrated-topline{
	padding:9px 12px;
}
.home-stay-console__integrated-topline>div{
	display:flex;
	flex-direction:column;
	gap:1px;
}
.home-stay-console__integrated-topline>div>span{
	color:rgba(255,255,255,.76);
	font-size:.61rem;
	font-weight:900;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.home-stay-console__integrated-topline>div>small{
	color:rgba(255,255,255,.38);
	font-size:.50rem;
	font-weight:800;
	letter-spacing:.07em;
}
.home-stay-console__integrated-topline>a{
	padding:5px 8px;
	border:1px solid rgba(255,255,255,.10);
	border-radius:999px;
	background:rgba(255,255,255,.035);
}

/* Quick tools: stronger interaction cue, slightly less visual noise. */
.home-stay-console--integrated .home-stay-console__tool{
	min-height:68px;
	transition:transform .15s ease, background .15s ease;
}
.home-stay-console--integrated .home-stay-console__tool-copy strong{
	font-size:.73rem;
}
.home-stay-console--integrated .home-stay-console__tool-copy small{
	color:rgba(255,255,255,.48);
}
.home-stay-console--integrated .home-stay-console__tool>b{
	display:grid;
	place-items:center;
	width:23px;
	height:23px;
	border-radius:50%;
	background:rgba(255,255,255,.055);
	color:rgba(255,255,255,.66);
}
@media(hover:hover){
	.home-stay-console--integrated .home-stay-console__tool:hover{
		transform:translateY(-1px);
		background:#344238;
	}
}

/* Concierge: present, but clearly an optional high-end alternative. */
.home-stay-console__concierge{
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:12px;
	padding:10px 13px;
	border-top:1px solid rgba(255,255,255,.10);
	background:#222d26;
	color:#fff;
	text-decoration:none;
}
.home-stay-console__concierge small,
.home-stay-console__concierge strong{
	display:block;
}
.home-stay-console__concierge small{
	color:rgba(255,255,255,.38);
	font-size:.48rem;
	font-weight:900;
	letter-spacing:.09em;
	text-transform:uppercase;
}
.home-stay-console__concierge strong{
	margin-top:2px;
	color:rgba(255,255,255,.78);
	font-family:Georgia,"Times New Roman",serif;
	font-size:.75rem;
	font-weight:500;
}
.home-stay-console__concierge>b{
	color:rgba(255,255,255,.46);
	font-size:.83rem;
}

/* Discovery content below the cockpit should feel inspirational, not like a duplicate menu. */
body.home .content-section{
	margin-bottom:30px;
}
body.home .section-heading h2{
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.22rem;
	font-weight:500;
	letter-spacing:-.015em;
	text-transform:none;
}
body.home .section-heading p{
	margin:3px 0 0;
	color:var(--muted);
	font-size:.72rem;
}
body.home .section-heading>a{
	font-size:.72rem;
	font-weight:800;
}

/* My Stay internal cockpit — first two categories should be unmistakably different. */
.stay-cockpit-card--plan .stay-cockpit-card__kicker{
	color:var(--green-dark);
}
.stay-cockpit-card--plan .stay-cockpit-card__copy::before{
	content:"AT & AROUND THE VILLA";
	display:block;
	margin-bottom:5px;
	color:rgba(66,91,69,.58);
	font-size:.52rem;
	font-weight:900;
	letter-spacing:.08em;
}
.stay-cockpit-card--explore .stay-cockpit-card__copy::before{
	content:"BEYOND THE VILLA";
	display:block;
	margin-bottom:5px;
	color:rgba(156,120,81,.72);
	font-size:.52rem;
	font-weight:900;
	letter-spacing:.08em;
}

/* Premium concierge on My Stay: less loud than DIY cockpit, more exclusive. */
.concierge-upgrade--private{
	margin-top:14px;
	grid-template-columns:auto 1fr;
	padding:14px 15px;
	border:1px solid rgba(31,42,34,.12);
	background:
		linear-gradient(135deg,rgba(156,120,81,.07),rgba(255,255,255,.72)),
		#f3ede2;
	color:var(--text);
	box-shadow:0 7px 18px rgba(31,42,34,.045);
}
.concierge-upgrade--private .concierge-upgrade__mark{
	width:34px;
	height:34px;
	border-color:rgba(31,42,34,.12);
	color:#765f46;
}
.concierge-upgrade--private .concierge-upgrade__kicker{
	color:#765f46;
	font-size:.50rem;
	letter-spacing:.10em;
}
.concierge-upgrade--private h2{
	color:var(--text);
	font-size:1.08rem;
}
.concierge-upgrade--private .concierge-upgrade__copy>p:last-child{
	color:var(--muted);
	font-size:.69rem;
}
.concierge-upgrade--private .concierge-upgrade__cta{
	color:#765f46;
	border-top-color:rgba(31,42,34,.10);
	font-size:.67rem;
}
@media(min-width:720px){
	.concierge-upgrade--private{
		grid-template-columns:auto 1fr auto;
		padding:15px 18px;
	}
	.concierge-upgrade--private .concierge-upgrade__cta{
		border:1px solid rgba(118,95,70,.18);
		background:rgba(255,255,255,.38);
	}
}


/* v1.12.1 — Hero inside cockpit + utility items in bottom nav */

/* Home command center now lives entirely inside the cockpit card. */
.home-command-center{
	margin-bottom:24px;
	padding-top:6px;
	background:none;
}
.home-command-center::after{
	display:none;
}
.home-command-center__intro{
	display:none;
}

.home-stay-console--hero{
	border-radius:24px;
	box-shadow:0 16px 38px rgba(31,42,34,.14);
}
.home-stay-console__hero{
	position:relative;
	overflow:hidden;
	display:grid;
	grid-template-columns:1fr auto;
	align-items:end;
	gap:16px;
	padding:18px 16px 16px;
	background:
		radial-gradient(circle at 86% 10%, rgba(255,255,255,.05), transparent 28%),
		radial-gradient(circle at 14% 28%, rgba(156,120,81,.14), transparent 30%),
		linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
}
.home-stay-console__hero::after{
	content:"";
	position:absolute;
	right:12px;
	top:14px;
	width:76px;
	height:76px;
	border-radius:50%;
	border:1px solid rgba(255,255,255,.07);
	box-shadow:0 0 0 14px rgba(255,255,255,.018), 0 0 0 28px rgba(255,255,255,.008);
	pointer-events:none;
}
.home-stay-console__hero-copy{
	position:relative;
	z-index:1;
}
.home-stay-console__hero-title{
	margin:0;
	max-width:10ch;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(2.28rem,10vw,4.9rem);
	font-weight:500;
	line-height:.94;
	letter-spacing:-.04em;
	color:#fff;
}
.home-stay-console__hero-title span{
	display:block;
}
.home-stay-console__hero-title span:last-child{
	margin-left:.56em;
}
.home-stay-console__hero-subtitle{
	position:relative;
	margin:10px 0 0 .74rem;
	max-width:23rem;
	padding-left:10px;
	color:rgba(255,255,255,.80);
	font-size:clamp(.97rem,3.1vw,1.12rem);
	line-height:1.32;
}
.home-stay-console__hero-subtitle::before{
	content:"";
	position:absolute;
	left:0;
	top:.18em;
	bottom:.18em;
	width:2px;
	border-radius:999px;
	background:rgba(255,255,255,.22);
}
.home-stay-console__hero-cta{
	position:relative;
	z-index:1;
	display:inline-flex;
	align-items:center;
	gap:7px;
	align-self:start;
	margin-top:2px;
	padding:9px 11px;
	border:1px solid rgba(255,255,255,.12);
	border-radius:999px;
	background:rgba(255,255,255,.05);
	color:#fff;
	font-size:.68rem;
	font-weight:800;
	text-decoration:none;
	white-space:nowrap;
}
.home-stay-console__hero-cta b{
	font-size:.85rem;
}

.home-stay-console--hero .home-stay-console__integrated-topline{
	display:none;
}
.home-stay-console--hero .home-stay-console__grid{
	border-top:1px solid rgba(255,255,255,.10);
}
.home-stay-console--hero .home-stay-console__concierge{
	border-top:1px solid rgba(255,255,255,.10);
}

/* Bottom navigation with utilities included */
.bottom-nav--five{
	grid-template-columns:repeat(5, 1fr);
}
.bottom-nav--five .bottom-nav__item{
	padding:4px 0;
	font-size:.66rem;
}
.bottom-nav--five .bottom-nav__icon{
	font-size:1.15rem;
}
.bottom-nav__item--stay .bottom-nav__icon{
	font-size:1.22rem;
}
.bottom-nav__item--stay.is-active,
.bottom-nav__item--stay{
	font-weight:700;
}
.bottom-nav__item--sos .bottom-nav__icon{
	display:grid;
	place-items:center;
	min-width:28px;
	height:20px;
	padding:0 5px;
	border-radius:999px;
	background:rgba(169,72,50,.12);
	color:var(--terracotta);
	font-size:.58rem;
	font-weight:900;
	letter-spacing:.03em;
}
.bottom-nav__item--sos.is-active .bottom-nav__icon{
	background:rgba(169,72,50,.18);
}
.bottom-nav__item--search .bottom-nav__icon{
	color:var(--green-dark);
}

/* On narrow phones, keep everything legible and give My Stay slight priority */
@media(max-width:430px){
	.home-command-center{
		padding-top:4px;
	}
	.home-stay-console__hero{
		grid-template-columns:1fr;
		gap:12px;
		padding:16px 14px 14px;
	}
	.home-stay-console__hero-title{
		font-size:clamp(2.12rem,9.9vw,3rem);
	}
	.home-stay-console__hero-subtitle{
		margin-left:.58rem;
		font-size:.94rem;
	}
	.home-stay-console__hero-cta{
		justify-self:start;
		padding:8px 10px;
		font-size:.65rem;
	}
	.bottom-nav--five .bottom-nav__item{
		font-size:.62rem;
	}
	.bottom-nav--five .bottom-nav__icon{
		font-size:1.08rem;
	}
	.bottom-nav__item--sos .bottom-nav__icon{
		min-width:26px;
		height:18px;
		font-size:.54rem;
	}
}
@media(min-width:720px){
	.home-stay-console__hero{
		padding:20px 18px 18px;
	}
	.bottom-nav--five .bottom-nav__item{
		font-size:.70rem;
	}
}


/* v1.13 — Home cockpit-first experiment */

body.home .app-main{
	padding-top:8px;
}

.home-command-center--app{
	margin:0 0 26px;
	padding:0;
	background:none;
	border-radius:0;
	overflow:visible;
}
.home-command-center--app::after{
	display:none;
}

.home-cockpit{
	position:relative;
	overflow:hidden;
	border:1px solid rgba(255,255,255,.08);
	border-radius:26px;
	background:
		linear-gradient(rgba(26,43,32,.88),rgba(24,42,31,.94)),
		url("../images/content/my-stay-what-to-do.webp") center/cover no-repeat;
	color:#fff;
	box-shadow:0 18px 42px rgba(31,42,34,.16);
}
.home-cockpit::after{
	content:"";
	position:absolute;
	right:-36px;
	top:74px;
	width:180px;
	height:180px;
	border-radius:50%;
	border:1px solid rgba(255,255,255,.06);
	box-shadow:0 0 0 28px rgba(255,255,255,.015),0 0 0 56px rgba(255,255,255,.008);
	pointer-events:none;
}

.home-cockpit__topline{
	position:relative;
	z-index:2;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:14px 14px 6px;
}
.home-cockpit__label{
	color:rgba(255,255,255,.58);
	font-size:.58rem;
	font-weight:900;
	letter-spacing:.15em;
	text-transform:uppercase;
}
.home-cockpit__concierge{
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:8px;
	max-width:210px;
	padding:8px 9px;
	border:1px solid rgba(255,255,255,.10);
	border-radius:14px;
	background:rgba(12,28,19,.36);
	color:#fff;
	text-decoration:none;
	backdrop-filter:blur(8px);
}
.home-cockpit__concierge-icon{
	display:grid;
	place-items:center;
	width:28px;
	height:28px;
	border:1px solid rgba(255,255,255,.14);
	border-radius:50%;
	color:#d8cab5;
	font-size:.78rem;
}
.home-cockpit__concierge strong,
.home-cockpit__concierge small{
	display:block;
	line-height:1.08;
}
.home-cockpit__concierge strong{
	font-size:.65rem;
	font-weight:800;
}
.home-cockpit__concierge small{
	margin-top:3px;
	color:rgba(255,255,255,.48);
	font-size:.52rem;
}
.home-cockpit__concierge>b{
	color:rgba(255,255,255,.50);
	font-size:.72rem;
}

.home-cockpit__hero{
	position:relative;
	z-index:1;
	padding:6px 18px 18px;
	text-align:center;
}
.home-cockpit__hero h1{
	margin:0 auto;
	max-width:9ch;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(2.45rem,10.4vw,5.15rem);
	font-weight:500;
	line-height:.94;
	letter-spacing:-.04em;
}
.home-cockpit__hero h1 span{
	display:block;
}
.home-cockpit__hero p{
	margin:12px auto 0;
	max-width:25rem;
	color:rgba(255,255,255,.78);
	font-size:clamp(.96rem,3.15vw,1.12rem);
	line-height:1.35;
}

.home-cockpit__grid{
	position:relative;
	z-index:2;
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:8px;
	padding:0 12px 12px;
}
.home-cockpit__tile{
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:9px;
	min-width:0;
	min-height:82px;
	padding:12px;
	border:1px solid rgba(213,223,206,.19);
	border-radius:16px;
	background:rgba(26,49,35,.52);
	color:#fff;
	text-decoration:none;
	backdrop-filter:blur(6px);
}
.home-cockpit__tile-icon{
	display:grid;
	place-items:center;
	width:38px;
	height:38px;
	border-radius:50%;
	background:rgba(173,191,152,.16);
	color:#efe8d8;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1rem;
}
.home-cockpit__tile-copy{
	min-width:0;
}
.home-cockpit__tile-copy strong,
.home-cockpit__tile-copy small{
	display:block;
}
.home-cockpit__tile-copy strong{
	font-family:Georgia,"Times New Roman",serif;
	font-size:.92rem;
	font-weight:500;
	line-height:1.08;
}
.home-cockpit__tile-copy small{
	margin-top:4px;
	overflow:hidden;
	color:rgba(255,255,255,.62);
	font-size:.61rem;
	line-height:1.2;
	text-overflow:ellipsis;
}
.home-cockpit__tile>b{
	display:grid;
	place-items:center;
	width:25px;
	height:25px;
	border-radius:50%;
	background:rgba(255,255,255,.07);
	color:rgba(255,255,255,.72);
	font-size:.75rem;
}
.home-cockpit__tile--help .home-cockpit__tile-icon{
	background:rgba(169,72,50,.12);
}

.home-cockpit__footer{
	position:relative;
	z-index:2;
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:12px;
	margin:0 12px 12px;
	padding:10px 12px;
	border:1px solid rgba(255,255,255,.11);
	border-radius:14px;
	background:rgba(10,27,18,.30);
	color:#fff;
	text-decoration:none;
	backdrop-filter:blur(6px);
}
.home-cockpit__footer small,
.home-cockpit__footer strong{
	display:block;
}
.home-cockpit__footer small{
	color:rgba(255,255,255,.42);
	font-size:.48rem;
	font-weight:900;
	letter-spacing:.10em;
}
.home-cockpit__footer strong{
	margin-top:2px;
	color:rgba(255,255,255,.82);
	font-size:.68rem;
}
.home-cockpit__footer>b{
	color:#e8e1d2;
	font-size:.64rem;
	white-space:nowrap;
}

/* Content below reads as richer discovery, not primary navigation. */
body.home .content-section{
	margin-bottom:28px;
}
body.home .section-heading{
	margin-bottom:10px;
}
body.home .section-heading h2{
	font-size:1.3rem;
}
body.home .card-rail{
	gap:10px;
}

/* Five-item bottom nav is intentionally retained. */
.bottom-nav--five{
	grid-template-columns:repeat(5,1fr);
}
.bottom-nav--five .bottom-nav__item{
	min-width:0;
}

/* Mobile tuning */
@media(max-width:430px){
	.home-cockpit{
		border-radius:22px;
	}
	.home-cockpit__topline{
		padding:12px 12px 4px;
	}
	.home-cockpit__concierge{
		max-width:184px;
		padding:7px 8px;
	}
	.home-cockpit__concierge strong{
		font-size:.61rem;
	}
	.home-cockpit__hero{
		padding:8px 14px 16px;
	}
	.home-cockpit__hero h1{
		font-size:clamp(2.15rem,9.9vw,3rem);
	}
	.home-cockpit__hero p{
		margin-top:9px;
		font-size:.92rem;
	}
	.home-cockpit__grid{
		padding:0 10px 10px;
		gap:7px;
	}
	.home-cockpit__tile{
		min-height:76px;
		padding:10px;
	}
	.home-cockpit__tile-icon{
		width:34px;
		height:34px;
	}
	.home-cockpit__tile-copy strong{
		font-size:.83rem;
	}
	.home-cockpit__tile-copy small{
		font-size:.57rem;
	}
	.home-cockpit__footer{
		margin:0 10px 10px;
		padding:9px 10px;
	}
	.home-cockpit__footer strong{
		font-size:.63rem;
	}
}
@media(min-width:720px){
	.home-cockpit__topline{
		padding:16px 18px 8px;
	}
	.home-cockpit__hero{
		padding-bottom:22px;
	}
	.home-cockpit__grid{
		gap:10px;
		padding:0 16px 16px;
	}
	.home-cockpit__tile{
		min-height:94px;
	}
	.home-cockpit__footer{
		margin:0 16px 16px;
	}
}


/* v1.13.1 — cleaner cockpit hierarchy */

/* Top line breathes: no premium CTA competing with the hero. */
.home-cockpit__topline{
	justify-content:flex-start;
	padding-bottom:2px;
}
.home-cockpit__label{
	padding:5px 8px;
	border:1px solid rgba(255,255,255,.08);
	border-radius:999px;
	background:rgba(255,255,255,.025);
}

/* Stronger, clearer line icons inspired by the cockpit mockup. */
.home-cockpit__tile-icon{
	width:42px;
	height:42px;
	border:1px solid rgba(226,235,216,.10);
	background:rgba(170,190,149,.18);
	color:#eee6d4;
}
.home-cockpit__tile-icon svg{
	width:24px;
	height:24px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.7;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.home-cockpit__tile--help .home-cockpit__tile-icon{
	background:rgba(173,191,152,.14);
	color:#eee6d4;
}

/* Slightly calmer chevrons — interaction remains obvious from the whole tile. */
.home-cockpit__tile>b{
	width:23px;
	height:23px;
	background:rgba(255,255,255,.05);
	color:rgba(255,255,255,.58);
}

/* Premium concierge now occupies the quiet bottom strip instead of the top. */
.home-cockpit__concierge-footer{
	position:relative;
	z-index:2;
	display:grid;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	gap:10px;
	margin:0 12px 12px;
	padding:10px 12px;
	border:1px solid rgba(211,193,164,.16);
	border-radius:14px;
	background:
		linear-gradient(90deg,rgba(154,125,87,.12),rgba(15,31,21,.34));
	color:#fff;
	text-decoration:none;
	backdrop-filter:blur(7px);
}
.home-cockpit__concierge-footer-mark{
	display:grid;
	place-items:center;
	width:30px;
	height:30px;
	border:1px solid rgba(226,208,178,.20);
	border-radius:50%;
	color:#d8c5a8;
	font-family:Georgia,"Times New Roman",serif;
}
.home-cockpit__concierge-footer small,
.home-cockpit__concierge-footer strong{
	display:block;
}
.home-cockpit__concierge-footer small{
	color:rgba(226,208,178,.60);
	font-size:.46rem;
	font-weight:900;
	letter-spacing:.09em;
	text-transform:uppercase;
}
.home-cockpit__concierge-footer strong{
	margin-top:2px;
	color:rgba(255,255,255,.76);
	font-family:Georgia,"Times New Roman",serif;
	font-size:.70rem;
	font-weight:500;
	line-height:1.14;
}
.home-cockpit__concierge-footer>b{
	color:rgba(226,208,178,.58);
	font-size:.78rem;
}

/* Hide obsolete cockpit footer/top concierge variants from earlier tests. */
.home-cockpit__concierge,
.home-cockpit__footer{
	display:none !important;
}

@media(max-width:430px){
	.home-cockpit__tile-icon{
		width:38px;
		height:38px;
	}
	.home-cockpit__tile-icon svg{
		width:22px;
		height:22px;
	}
	.home-cockpit__concierge-footer{
		margin:0 10px 10px;
		padding:9px 10px;
	}
	.home-cockpit__concierge-footer strong{
		font-size:.65rem;
	}
}


/* v1.13.2 — home split into an app shell + content rails */
body.home .site-header{
	display:none;
}
body.home .app-main{
	max-width:none;
	padding-top:0;
	padding-left:0;
	padding-right:0;
}
body.home .content-section{
	max-width:1080px;
	margin-left:auto;
	margin-right:auto;
	padding-left:18px;
	padding-right:18px;
}
body.home .content-section:first-of-type{
	margin-top:28px;
}

.home-app-shell{
	position:relative;
	overflow:hidden;
	margin:0 0 14px;
	background:
		radial-gradient(circle at 12% 12%, rgba(183,202,158,.12), transparent 24%),
		radial-gradient(circle at 84% 8%, rgba(184,142,98,.14), transparent 22%),
		linear-gradient(180deg, #192a20 0%, #1d3125 58%, #223428 100%);
	color:#fff;
}
.home-app-shell::before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:
		linear-gradient(135deg, rgba(255,255,255,.03), transparent 45%),
		repeating-linear-gradient(0deg, rgba(255,255,255,.015) 0 1px, transparent 1px 24px);
	opacity:.9;
}
.home-app-shell::after{
	content:"";
	position:absolute;
	right:-120px;
	top:-110px;
	width:340px;
	height:340px;
	border-radius:50%;
	border:1px solid rgba(255,255,255,.07);
	box-shadow:0 0 0 36px rgba(255,255,255,.018),0 0 0 72px rgba(255,255,255,.01);
	pointer-events:none;
}
.home-app-shell__inner{
	position:relative;
	z-index:1;
	max-width:1080px;
	margin:0 auto;
	padding:18px 18px 20px;
}
.home-app-shell__brand{
	display:inline-grid;
	grid-template-columns:48px 1fr;
	align-items:center;
	gap:10px;
	margin-bottom:16px;
	text-decoration:none;
}
.home-app-shell__brand .brand__name{
	color:#f5efe3;
}
.home-app-shell__brand .brand__descriptor{
	color:rgba(255,255,255,.68);
}
.home-app-shell__brand .brand__legacy-mark{
	background:rgba(255,255,255,.035);
	border:1px solid rgba(255,255,255,.08);
}
.home-app-shell__hero{
	max-width:760px;
	padding:4px 0 16px;
}
.home-app-shell__hero h1{
	margin:0;
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(2.75rem,11vw,5.3rem);
	font-weight:500;
	line-height:.93;
	letter-spacing:-.045em;
}
.home-app-shell__hero h1 span{
	display:block;
}
.home-app-shell__hero p{
	margin:12px 0 0;
	max-width:29rem;
	color:rgba(255,255,255,.74);
	font-size:clamp(1rem,3.4vw,1.18rem);
	line-height:1.35;
}
.home-cockpit--shell{
	background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.02));
	border:1px solid rgba(220,230,216,.12);
	border-radius:24px;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.03), 0 18px 42px rgba(10,18,13,.18);
	backdrop-filter:blur(10px);
}
.home-cockpit--shell::after{
	top:104px;
	right:-50px;
	width:210px;
	height:210px;
	border:1px solid rgba(255,255,255,.05);
	box-shadow:0 0 0 24px rgba(255,255,255,.012),0 0 0 48px rgba(255,255,255,.008);
}
.home-cockpit--shell .home-cockpit__topline{
	padding:14px 14px 8px;
}
.home-cockpit--shell .home-cockpit__label{
	display:inline-flex;
	align-items:center;
	gap:7px;
	padding:6px 10px;
	border:1px solid rgba(255,255,255,.09);
	border-radius:999px;
	background:rgba(255,255,255,.03);
	color:rgba(255,255,255,.72);
	font-size:.57rem;
	letter-spacing:.14em;
}
.home-cockpit--shell .home-cockpit__grid{
	padding-top:0;
}
.home-cockpit--shell .home-cockpit__tile{
	min-height:84px;
	background:rgba(11,25,17,.28);
	border-color:rgba(218,229,212,.16);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
.home-cockpit--shell .home-cockpit__tile-icon{
	background:rgba(171,189,148,.16);
}
.home-cockpit--shell .home-cockpit__tile-copy strong{
	font-size:.9rem;
}
.home-cockpit--shell .home-cockpit__tile-copy small{
	color:rgba(255,255,255,.58);
}
.home-cockpit--shell .home-cockpit__concierge-footer{
	margin-top:2px;
	background:linear-gradient(90deg, rgba(156,120,81,.14), rgba(19,31,23,.34));
}

@media (max-width: 720px){
	.home-app-shell__inner{
		padding:14px 14px 18px;
	}
	.home-app-shell__brand{
		grid-template-columns:44px 1fr;
		gap:9px;
		margin-bottom:14px;
	}
	.home-app-shell__hero{
		padding-bottom:14px;
	}
	.home-app-shell__hero h1{
		font-size:clamp(2.45rem, 12.5vw, 3.75rem);
	}
	.home-app-shell__hero p{
		max-width:22rem;
		font-size:.98rem;
	}
	body.home .content-section:first-of-type{
		margin-top:22px;
	}
}
@media (max-width: 430px){
	.home-app-shell{
		margin-bottom:12px;
	}
	.home-app-shell__inner{
		padding:12px 12px 16px;
	}
	.home-app-shell__brand{
		grid-template-columns:42px 1fr;
		margin-bottom:12px;
	}
	.home-app-shell__brand .brand__legacy-mark{
		width:42px;
		height:38px;
	}
	.home-app-shell__hero h1{
		font-size:clamp(2.28rem, 13vw, 3.25rem);
	}
	.home-app-shell__hero p{
		margin-top:10px;
		font-size:.94rem;
	}
	.home-cockpit--shell{
		border-radius:20px;
	}
	.home-cockpit--shell .home-cockpit__topline{
		padding:12px 12px 6px;
	}
	.home-cockpit--shell .home-cockpit__grid{
		gap:7px;
		padding:0 10px 10px;
	}
	.home-cockpit--shell .home-cockpit__tile{
		min-height:78px;
		padding:10px;
	}
	.home-cockpit--shell .home-cockpit__tile-copy strong{
		font-size:.84rem;
	}
	.home-cockpit--shell .home-cockpit__tile-copy small{
		font-size:.58rem;
	}
	.home-cockpit--shell .home-cockpit__concierge-footer{
		margin:0 10px 10px;
	}
}
