/* Gaya city-hub pilot — scoped, enquiry-only and intentionally non-floating. */

.pps-gaya-hub {
	--gaya-ink: #211a14;
	--gaya-ink-soft: #5b5045;
	--gaya-ivory: #f7f1e5;
	--gaya-paper: #fffdf8;
	--gaya-sand: #eee2cf;
	--gaya-gold: #a87525;
	--gaya-gold-light: #d8b66b;
	--gaya-rust: #8f3f21;
	--gaya-line: rgba(74, 53, 31, .18);
	background: var(--gaya-paper);
	color: var(--gaya-ink);
	overflow: clip;
}

.pps-gaya-hub [id] {
	scroll-margin-top: 6rem;
}

.pps-gaya-hub a:focus-visible,
.pps-gaya-hub summary:focus-visible {
	outline: 3px solid #c77e15;
	outline-offset: 4px;
}

.pps-gaya-hub .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .55rem;
	min-height: 52px;
	padding: .85rem 1.35rem;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none;
}

.pps-gaya-kicker {
	margin: 0 0 .9rem;
	color: var(--gaya-gold);
	font-size: .73rem;
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.45;
	text-transform: uppercase;
}

.pps-gaya-hero {
	position: relative;
	padding: clamp(1.5rem, 3vw, 2.75rem) 0 clamp(4rem, 8vw, 7rem);
	background:
		radial-gradient(circle at 6% 5%, rgba(216, 182, 107, .22), transparent 28rem),
		linear-gradient(145deg, #f8f1e4 0%, #fffdf8 65%);
}

.pps-gaya-hero::after {
	position: absolute;
	right: -8rem;
	bottom: -9rem;
	width: 24rem;
	height: 24rem;
	border: 1px solid rgba(168, 117, 37, .16);
	border-radius: 50%;
	box-shadow: 0 0 0 3rem rgba(168, 117, 37, .035), 0 0 0 6rem rgba(168, 117, 37, .025);
	content: "";
	pointer-events: none;
}

.pps-gaya-breadcrumb {
	margin-bottom: clamp(2.4rem, 5vw, 5rem);
}

.pps-gaya-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .35rem .65rem;
	margin: 0;
	padding: 0;
	list-style: none;
	color: var(--gaya-ink-soft);
	font-size: .78rem;
	letter-spacing: .05em;
}

.pps-gaya-breadcrumb li {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

.pps-gaya-breadcrumb li + li::before {
	margin-right: .65rem;
	color: var(--gaya-gold);
	content: "/";
}

.pps-gaya-breadcrumb a {
	display: inline-flex;
	align-items: center;
	color: inherit;
	text-decoration: none;
}

.pps-gaya-breadcrumb a:hover {
	color: var(--gaya-rust);
}

.pps-gaya-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(30rem, 1.08fr);
	gap: clamp(2.5rem, 6vw, 7rem);
	align-items: center;
}

.pps-gaya-hero h1 {
	max-width: 11ch;
	margin: 0;
	font-family: var(--font-display, Georgia, serif);
	font-size: clamp(3.25rem, 6.7vw, 7.25rem);
	font-weight: 400;
	letter-spacing: -.055em;
	line-height: .92;
}

.pps-gaya-hero__lede {
	max-width: 39rem;
	margin: 1.7rem 0 0;
	color: var(--gaya-ink-soft);
	font-size: clamp(1.05rem, 1.6vw, 1.28rem);
	line-height: 1.72;
}

.pps-gaya-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .85rem 1.4rem;
	margin-top: 2rem;
}

.pps-gaya-text-link {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	color: var(--gaya-ink);
	font-weight: 700;
	text-decoration-color: rgba(168, 117, 37, .5);
	text-decoration-thickness: 1px;
	text-underline-offset: .32rem;
}

.pps-gaya-reassurance {
	margin: 1.15rem 0 0;
	color: var(--gaya-ink-soft);
	font-size: .78rem;
	line-height: 1.55;
}

.pps-gaya-hero__figure {
	position: relative;
	margin: 0;
}

.pps-gaya-hero__image-wrap {
	position: relative;
	min-height: 36rem;
	overflow: hidden;
	border-radius: 50% 50% 1.5rem 1.5rem / 25% 25% 1.5rem 1.5rem;
	background: #d9cfbf;
	box-shadow: 0 2.4rem 5rem rgba(43, 29, 16, .18);
}

.pps-gaya-hero__image-wrap::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 55%, rgba(21, 16, 11, .28));
	content: "";
	pointer-events: none;
}

.pps-gaya-hero__figure img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 36rem;
	object-fit: cover;
}

.pps-gaya-hero__index {
	position: absolute;
	right: 1.2rem;
	bottom: 1rem;
	z-index: 1;
	color: #fff;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .16em;
}

.pps-gaya-hero__figure figcaption {
	max-width: 34rem;
	margin: .9rem 0 0 auto;
	color: var(--gaya-ink-soft);
	font-size: .76rem;
	line-height: 1.55;
	text-align: right;
}

.pps-gaya-facts {
	position: relative;
	z-index: 1;
	background: var(--gaya-ink);
	color: var(--gaya-ivory);
}

.pps-gaya-facts__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pps-gaya-fact {
	padding: 1.55rem clamp(1rem, 2.2vw, 2rem);
	border-left: 1px solid rgba(255, 255, 255, .14);
}

.pps-gaya-fact:first-child {
	border-left: 0;
}

.pps-gaya-fact span,
.pps-gaya-fact strong {
	display: block;
}

.pps-gaya-fact span {
	margin-bottom: .45rem;
	color: rgba(247, 241, 229, .62);
	font-size: .68rem;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.pps-gaya-fact strong {
	font-family: var(--font-display, Georgia, serif);
	font-size: clamp(1.1rem, 2vw, 1.45rem);
	font-weight: 400;
}

.pps-gaya-hub-nav {
	position: relative;
	z-index: 2;
	border-bottom: 1px solid var(--gaya-line);
	background: rgba(255, 253, 248, .98);
}

.pps-gaya-hub-nav .wrap {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	min-height: 76px;
}

.pps-gaya-hub-nav__label {
	flex: 0 0 auto;
	color: var(--gaya-gold);
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pps-gaya-hub-nav__links {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	gap: .35rem;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scrollbar-width: thin;
}

.pps-gaya-hub-nav a {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	min-height: 44px;
	padding: .4rem .8rem;
	border-radius: 999px;
	color: var(--gaya-ink-soft);
	font-size: .88rem;
	font-weight: 600;
	text-decoration: none;
}

.pps-gaya-hub-nav a:hover {
	background: var(--gaya-ivory);
	color: var(--gaya-ink);
}

.pps-gaya-section {
	padding: clamp(4.5rem, 8vw, 8rem) 0;
}

.pps-gaya-section--sand {
	background: var(--gaya-ivory);
}

.pps-gaya-section-heading {
	max-width: 43rem;
}

.pps-gaya-section-heading--wide {
	max-width: 54rem;
	margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.pps-gaya-section-heading h2,
.pps-gaya-journey h2,
.pps-gaya-contact-band h2,
.pps-gaya-sources h2,
.pps-gaya-closing h2 {
	margin: 0;
	font-family: var(--font-display, Georgia, serif);
	font-size: clamp(2.45rem, 4.7vw, 5rem);
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: 1;
}

.pps-gaya-section-heading > p:last-child {
	max-width: 42rem;
	margin: 1.25rem 0 0;
	color: var(--gaya-ink-soft);
	font-size: 1.05rem;
	line-height: 1.72;
}

.pps-gaya-intro__grid {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(24rem, .75fr);
	gap: clamp(3rem, 8vw, 9rem);
	align-items: start;
}

.pps-gaya-intro__body {
	padding-top: .35rem;
}

.pps-gaya-intro__body > p {
	margin: 0;
	color: var(--gaya-ink-soft);
	font-size: clamp(1.05rem, 1.55vw, 1.25rem);
	line-height: 1.8;
}

.pps-gaya-intro__body > p + p {
	margin-top: 1.25rem;
}

.pps-gaya-orientation-note {
	margin-top: 2rem;
	padding: 1.35rem 1.5rem;
	border-left: 3px solid var(--gaya-gold);
	background: var(--gaya-ivory);
}

.pps-gaya-orientation-note span {
	display: block;
	margin-bottom: .45rem;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.pps-gaya-orientation-note p {
	margin: 0;
	color: var(--gaya-ink-soft);
	font-size: .92rem;
	line-height: 1.65;
}

.pps-gaya-places {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(1rem, 2.2vw, 2rem);
}

.pps-gaya-place {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	overflow: hidden;
	border: 1px solid var(--gaya-line);
	border-radius: 1.15rem;
	background: var(--gaya-paper);
}

.pps-gaya-place--1,
.pps-gaya-place--4 {
	grid-column: span 7;
}

.pps-gaya-place--2,
.pps-gaya-place--3 {
	grid-column: span 5;
}

.pps-gaya-place figure {
	position: relative;
	margin: 0;
	overflow: hidden;
	background: #d9cfbf;
}

.pps-gaya-place img {
	display: block;
	width: 100%;
	height: clamp(18rem, 29vw, 28rem);
	object-fit: cover;
	transition: transform .55s cubic-bezier(.2, .7, .2, 1);
}

.pps-gaya-place:hover img {
	transform: scale(1.018);
}

.pps-gaya-place figure figcaption {
	position: absolute;
	right: .8rem;
	bottom: .8rem;
	max-width: calc(100% - 1.6rem);
	padding: .55rem .7rem;
	border-radius: .35rem;
	background: rgba(23, 17, 12, .8);
	color: #fff;
	font-size: .68rem;
	line-height: 1.4;
	backdrop-filter: blur(8px);
}

.pps-gaya-place__copy {
	padding: clamp(1.35rem, 3vw, 2.15rem);
}

.pps-gaya-place__kind,
.pps-gaya-rite__label {
	margin: 0 0 .55rem;
	color: var(--gaya-gold);
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.pps-gaya-place h3,
.pps-gaya-rite h3,
.pps-gaya-timeline h3,
.pps-gaya-planning-list h3,
.pps-gaya-checklist h3 {
	margin: 0;
	font-family: var(--font-display, Georgia, serif);
	font-size: clamp(1.65rem, 2.7vw, 2.45rem);
	font-weight: 400;
	letter-spacing: -.025em;
	line-height: 1.1;
}

.pps-gaya-place__copy > p:not(.pps-gaya-place__kind) {
	margin: 1rem 0 0;
	color: var(--gaya-ink-soft);
	line-height: 1.7;
}

.pps-gaya-source-link {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-top: 1rem;
	color: var(--gaya-rust);
	font-size: .76rem;
	font-weight: 700;
	line-height: 1.45;
	text-decoration: none;
}

.pps-gaya-source-link:hover {
	text-decoration: underline;
	text-underline-offset: .2rem;
}

.pps-gaya-rites {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--gaya-line);
	border-bottom: 1px solid var(--gaya-line);
}

.pps-gaya-rite {
	position: relative;
	padding: clamp(2rem, 3.7vw, 3.5rem);
	border-left: 1px solid var(--gaya-line);
}

.pps-gaya-rite:first-child {
	border-left: 0;
}

.pps-gaya-rite__number {
	display: block;
	margin-bottom: 2.5rem;
	color: rgba(143, 63, 33, .25);
	font-family: var(--font-display, Georgia, serif);
	font-size: 3.5rem;
	line-height: 1;
}

.pps-gaya-rite > p:not(.pps-gaya-rite__label) {
	min-height: 9rem;
	margin: 1rem 0 1.4rem;
	color: var(--gaya-ink-soft);
	line-height: 1.7;
}

.pps-gaya-rite > a {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	color: var(--gaya-ink);
	font-weight: 700;
	text-decoration-color: var(--gaya-gold-light);
	text-underline-offset: .3rem;
}

.pps-gaya-journey {
	background: var(--gaya-ink);
	color: var(--gaya-ivory);
}

.pps-gaya-journey__grid {
	display: grid;
	grid-template-columns: minmax(22rem, .85fr) minmax(0, 1.15fr);
	gap: clamp(3rem, 7vw, 8rem);
	align-items: center;
}

.pps-gaya-journey__visual {
	position: relative;
	min-height: 45rem;
}

.pps-gaya-journey__visual > img {
	display: block;
	width: calc(100% - 2.5rem);
	height: 45rem;
	object-fit: cover;
	filter: saturate(.82) contrast(1.03);
}

.pps-gaya-journey__caption {
	position: absolute;
	right: 0;
	bottom: 2rem;
	width: min(22rem, 88%);
	padding: 1.3rem 1.4rem;
	background: var(--gaya-ivory);
	color: var(--gaya-ink);
}

.pps-gaya-journey__caption span {
	display: block;
	margin-bottom: .45rem;
	color: var(--gaya-rust);
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.pps-gaya-journey__caption p {
	margin: 0;
	font-size: .86rem;
	line-height: 1.55;
}

.pps-gaya-journey h2 {
	max-width: 11ch;
}

.pps-gaya-timeline {
	margin: 3rem 0 0;
	padding: 0;
	list-style: none;
}

.pps-gaya-timeline li {
	display: grid;
	grid-template-columns: 3rem minmax(0, 1fr);
	gap: 1.25rem;
	padding: 1.4rem 0;
	border-top: 1px solid rgba(247, 241, 229, .16);
}

.pps-gaya-timeline li:last-child {
	border-bottom: 1px solid rgba(247, 241, 229, .16);
}

.pps-gaya-timeline li > span {
	padding-top: .18rem;
	color: var(--gaya-gold-light);
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .08em;
}

.pps-gaya-timeline h3 {
	color: inherit;
	font-size: clamp(1.35rem, 2vw, 1.8rem);
}

.pps-gaya-timeline p {
	margin: .55rem 0 0;
	color: rgba(247, 241, 229, .68);
	line-height: 1.65;
}

.pps-gaya-planning-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(23rem, .82fr);
	gap: clamp(2rem, 5vw, 5rem);
	align-items: start;
}

.pps-gaya-planning-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-top: 1px solid var(--gaya-line);
}

.pps-gaya-planning-list article {
	padding: 1.6rem 1.5rem 1.8rem 0;
	border-bottom: 1px solid var(--gaya-line);
}

.pps-gaya-planning-list article:nth-child(even) {
	padding-right: 0;
	padding-left: 1.5rem;
	border-left: 1px solid var(--gaya-line);
}

.pps-gaya-planning-list h3 {
	font-size: 1.55rem;
}

.pps-gaya-planning-list p {
	margin: .8rem 0 0;
	color: var(--gaya-ink-soft);
	line-height: 1.68;
}

.pps-gaya-checklist {
	overflow: hidden;
	border-radius: 1.1rem;
	background: var(--gaya-paper);
	box-shadow: 0 1.5rem 4rem rgba(43, 29, 16, .1);
}

.pps-gaya-checklist > img {
	display: block;
	width: 100%;
	height: 19rem;
	object-fit: cover;
}

.pps-gaya-checklist__body {
	padding: clamp(1.6rem, 3vw, 2.5rem);
}

.pps-gaya-checklist h3 {
	font-size: 2rem;
}

.pps-gaya-checklist ul {
	margin: 1.4rem 0 1.8rem;
	padding: 0;
	list-style: none;
}

.pps-gaya-checklist li {
	position: relative;
	padding: .65rem 0 .65rem 1.8rem;
	border-bottom: 1px solid var(--gaya-line);
	color: var(--gaya-ink-soft);
	line-height: 1.5;
}

.pps-gaya-checklist li::before {
	position: absolute;
	top: 1.05rem;
	left: .15rem;
	width: .55rem;
	height: .55rem;
	border: 1px solid var(--gaya-gold);
	border-radius: 50%;
	content: "";
}

.pps-gaya-contact-band {
	padding: clamp(3.5rem, 6vw, 6rem) 0;
	background: #9f6c25;
	color: #fffaf1;
}

.pps-gaya-contact-band__grid {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(24rem, 1.1fr);
	gap: clamp(2.5rem, 6vw, 7rem);
	align-items: center;
}

.pps-gaya-contact-band .pps-gaya-kicker {
	color: #f4dbab;
}

.pps-gaya-contact-band h2 {
	font-size: clamp(2.4rem, 4.2vw, 4.4rem);
}

.pps-gaya-contact-band__grid > div:first-child > p:last-child {
	max-width: 38rem;
	margin: 1.25rem 0 0;
	color: rgba(255, 250, 241, .78);
	line-height: 1.7;
}

.pps-gaya-contact-band__links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .8rem;
}

.pps-gaya-contact-card {
	padding: 1.2rem;
	border: 1px solid rgba(255, 255, 255, .28);
	background: rgba(34, 24, 15, .12);
}

.pps-gaya-contact-card strong {
	display: block;
	font-family: var(--font-display, Georgia, serif);
	font-size: 1.25rem;
	font-weight: 400;
}

.pps-gaya-contact-card > span {
	display: flex;
	gap: .6rem;
	margin-top: .6rem;
}

.pps-gaya-contact-card a,
.pps-gaya-email {
	display: inline-flex;
	align-items: center;
	color: inherit;
	font-size: .78rem;
	font-weight: 700;
	text-underline-offset: .25rem;
}

.pps-gaya-email {
	grid-column: 1 / -1;
	justify-content: center;
	padding: .35rem .8rem;
	border: 1px solid rgba(255, 255, 255, .28);
}

.pps-gaya-faq-layout {
	display: grid;
	grid-template-columns: minmax(17rem, .65fr) minmax(0, 1.35fr);
	gap: clamp(3rem, 7vw, 8rem);
	align-items: start;
}

.pps-gaya-faqs {
	border-top: 1px solid var(--gaya-line);
}

.pps-gaya-faqs details {
	border-bottom: 1px solid var(--gaya-line);
}

.pps-gaya-faqs summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 2rem;
	gap: 1rem;
	align-items: center;
	min-height: 76px;
	padding: 1rem .2rem;
	cursor: pointer;
	font-family: var(--font-display, Georgia, serif);
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	line-height: 1.25;
	list-style: none;
}

.pps-gaya-faqs summary::-webkit-details-marker {
	display: none;
}

.pps-gaya-faq-icon {
	position: relative;
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	border: 1px solid var(--gaya-line);
	border-radius: 50%;
}

.pps-gaya-faq-icon::before,
.pps-gaya-faq-icon::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: .65rem;
	height: 1px;
	background: var(--gaya-rust);
	content: "";
	transform: translate(-50%, -50%);
	transition: transform .2s ease;
}

.pps-gaya-faq-icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.pps-gaya-faqs details[open] .pps-gaya-faq-icon::after {
	transform: translate(-50%, -50%) rotate(0deg);
}

.pps-gaya-faqs details > div {
	padding: 0 3.5rem 1.6rem 0;
}

.pps-gaya-faqs details p {
	max-width: 47rem;
	margin: 0;
	color: var(--gaya-ink-soft);
	line-height: 1.75;
}

.pps-gaya-related {
	padding-top: 0;
}

.pps-gaya-related__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.pps-gaya-related__grid > a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: .8rem 1.2rem;
	align-items: end;
	min-height: 12rem;
	padding: 1.5rem;
	border: 1px solid var(--gaya-line);
	border-radius: .8rem;
	color: inherit;
	text-decoration: none;
	transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.pps-gaya-related__grid > a:hover {
	border-color: rgba(168, 117, 37, .48);
	box-shadow: 0 1rem 2.5rem rgba(43, 29, 16, .08);
	transform: translateY(-2px);
}

.pps-gaya-related__grid span {
	grid-column: 1 / -1;
	align-self: start;
	color: var(--gaya-gold);
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.pps-gaya-related__grid strong {
	font-family: var(--font-display, Georgia, serif);
	font-size: 1.45rem;
	font-weight: 400;
	line-height: 1.2;
}

.pps-gaya-related__grid i {
	color: var(--gaya-rust);
	font-size: 1.5rem;
	font-style: normal;
}

.pps-gaya-sources {
	padding: clamp(3.5rem, 6vw, 5.5rem) 0;
	border-top: 1px solid var(--gaya-line);
	background: #f1eadf;
}

.pps-gaya-sources__grid {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(24rem, 1.2fr);
	gap: clamp(2.5rem, 6vw, 7rem);
}

.pps-gaya-sources h2 {
	font-size: clamp(2rem, 3.5vw, 3.6rem);
}

.pps-gaya-sources__grid > div > p:last-child {
	margin: 1rem 0 0;
	color: var(--gaya-ink-soft);
	font-size: .88rem;
	line-height: 1.65;
}

.pps-gaya-sources ol {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: sources;
}

.pps-gaya-sources li {
	position: relative;
	padding: 1rem 0 1rem 3rem;
	border-top: 1px solid var(--gaya-line);
	counter-increment: sources;
}

.pps-gaya-sources li:last-child {
	border-bottom: 1px solid var(--gaya-line);
}

.pps-gaya-sources li::before {
	position: absolute;
	top: 1.15rem;
	left: 0;
	color: var(--gaya-gold);
	font-size: .72rem;
	font-weight: 700;
	content: counter(sources, decimal-leading-zero);
}

.pps-gaya-sources li a,
.pps-gaya-sources li span {
	display: flex;
	align-items: center;
}

.pps-gaya-sources li a {
	color: var(--gaya-ink);
	font-weight: 700;
	line-height: 1.45;
	text-decoration-color: rgba(168, 117, 37, .5);
	text-underline-offset: .25rem;
}

.pps-gaya-sources li span {
	margin-top: .25rem;
	color: var(--gaya-ink-soft);
	font-size: .76rem;
	line-height: 1.5;
}

.pps-gaya-closing {
	padding: clamp(4rem, 8vw, 7rem) 0;
	background: var(--gaya-ink);
	color: var(--gaya-ivory);
}

.pps-gaya-closing__inner {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(20rem, .75fr);
	gap: clamp(3rem, 8vw, 9rem);
	align-items: end;
}

.pps-gaya-closing h2 {
	max-width: 15ch;
}

.pps-gaya-closing__inner > div:last-child p {
	margin: 0 0 1.5rem;
	color: rgba(247, 241, 229, .68);
	line-height: 1.7;
}

@media (max-width: 1040px) {
	.pps-gaya-hero__grid,
	.pps-gaya-intro__grid,
	.pps-gaya-journey__grid,
	.pps-gaya-planning-grid,
	.pps-gaya-contact-band__grid,
	.pps-gaya-faq-layout,
	.pps-gaya-sources__grid,
	.pps-gaya-closing__inner {
		grid-template-columns: 1fr;
	}

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

	.pps-gaya-hero__figure {
		max-width: 48rem;
	}

	.pps-gaya-intro__grid,
	.pps-gaya-faq-layout {
		gap: 2.25rem;
	}

	.pps-gaya-journey__visual {
		min-height: 36rem;
	}

	.pps-gaya-journey__visual > img {
		height: 36rem;
	}

	.pps-gaya-journey h2 {
		max-width: 15ch;
	}

	.pps-gaya-checklist {
		max-width: 44rem;
	}

	.pps-gaya-contact-band__links {
		max-width: 46rem;
	}
}

@media (max-width: 760px) {
	.pps-gaya-hub [id] {
		scroll-margin-top: 4.5rem;
	}

	.pps-gaya-hero {
		padding-top: 1rem;
	}

	.pps-gaya-breadcrumb {
		margin-bottom: 1.8rem;
	}

	.pps-gaya-hero__grid {
		gap: 2.5rem;
	}

	.pps-gaya-hero h1 {
		font-size: clamp(3rem, 15vw, 4.8rem);
	}

	.pps-gaya-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.pps-gaya-actions .btn,
	.pps-gaya-text-link {
		width: 100%;
		justify-content: center;
	}

	.pps-gaya-hero__image-wrap,
	.pps-gaya-hero__figure img {
		min-height: 25rem;
	}

	.pps-gaya-hero__image-wrap {
		border-radius: 44% 44% 1.1rem 1.1rem / 18% 18% 1.1rem 1.1rem;
	}

	.pps-gaya-hero__figure figcaption {
		text-align: left;
	}

	.pps-gaya-facts__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pps-gaya-fact {
		border-bottom: 1px solid rgba(255, 255, 255, .14);
	}

	.pps-gaya-fact:nth-child(odd) {
		border-left: 0;
	}

	.pps-gaya-hub-nav .wrap {
		display: block;
		padding-top: .7rem;
		padding-bottom: .55rem;
	}

	.pps-gaya-hub-nav__label {
		display: block;
		margin-bottom: .25rem;
	}

	.pps-gaya-hub-nav__links {
		margin-inline: -.5rem;
		padding-inline: .5rem;
	}

	.pps-gaya-section-heading h2,
	.pps-gaya-journey h2,
	.pps-gaya-contact-band h2,
	.pps-gaya-sources h2,
	.pps-gaya-closing h2 {
		font-size: clamp(2.35rem, 11vw, 3.7rem);
	}

	.pps-gaya-place--1,
	.pps-gaya-place--2,
	.pps-gaya-place--3,
	.pps-gaya-place--4 {
		grid-column: 1 / -1;
	}

	.pps-gaya-place img {
		height: 19rem;
	}

	.pps-gaya-rites,
	.pps-gaya-related__grid {
		grid-template-columns: 1fr;
	}

	.pps-gaya-rite {
		border-top: 1px solid var(--gaya-line);
		border-left: 0;
	}

	.pps-gaya-rite:first-child {
		border-top: 0;
	}

	.pps-gaya-rite__number {
		margin-bottom: 1.4rem;
	}

	.pps-gaya-rite > p:not(.pps-gaya-rite__label) {
		min-height: 0;
	}

	.pps-gaya-journey__visual,
	.pps-gaya-journey__visual > img {
		min-height: 28rem;
		height: 28rem;
	}

	.pps-gaya-planning-list,
	.pps-gaya-contact-band__links {
		grid-template-columns: 1fr;
	}

	.pps-gaya-planning-list article,
	.pps-gaya-planning-list article:nth-child(even) {
		padding: 1.4rem 0;
		border-left: 0;
	}

	.pps-gaya-email {
		grid-column: auto;
	}

	.pps-gaya-related__grid > a {
		min-height: 9.5rem;
	}
}

@media (max-width: 420px) {
	.pps-gaya-facts__grid {
		grid-template-columns: 1fr;
	}

	.pps-gaya-fact,
	.pps-gaya-fact:nth-child(odd) {
		border-left: 0;
	}

	.pps-gaya-hero__image-wrap,
	.pps-gaya-hero__figure img {
		min-height: 21rem;
	}

	.pps-gaya-place img {
		height: 16rem;
	}

	.pps-gaya-journey__visual,
	.pps-gaya-journey__visual > img {
		min-height: 24rem;
		height: 24rem;
	}

	.pps-gaya-journey__caption {
		position: relative;
		right: auto;
		bottom: auto;
		width: calc(100% - 1.25rem);
		margin: -3.5rem 0 0 auto;
	}

	.pps-gaya-faqs summary {
		font-size: 1.15rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pps-gaya-place img,
	.pps-gaya-related__grid > a,
	.pps-gaya-faq-icon::after {
		transition: none;
	}
}

@media print {
	.pps-gaya-hub-nav,
	.pps-gaya-actions,
	.pps-gaya-contact-band,
	.pps-gaya-closing {
		display: none;
	}

	.pps-gaya-hub {
		background: #fff;
		color: #000;
	}
}
