/**
 * Atria Travel Theme — assets/css/single-package.css
 *
 * Styles for single-atria_package.php (Journey detail page).
 * Follows Atria-Journey.dc.html as the visual reference.
 *
 * Sections in order:
 *   pkg-hero        — 76vh full-bleed hero
 *   pkg-bar         — sticky enquiry bar
 *   pkg-overview    — two-column overview + at-a-glance sidebar
 *   pkg-glance      — sidebar card (At a Glance)
 *   pkg-estimator   — price estimator widget inside sidebar
 *   pkg-itinerary   — day-by-day accordion (sand background)
 *   pkg-gallery     — image grid
 *   pkg-incl        — inclusions / exclusions (dark background)
 *   pkg-related     — related journey cards
 *   pkg-cta         — dark enquiry CTA with form
 *
 * Token layers:
 *   Layer 1 — --atria-* canonical tokens (defined in style.css)
 *   All values reference Layer 1 tokens.
 *
 * @package atria-travel
 */

/* ─────────────────────────────────────────────────────────────────────────
   HERO
   ───────────────────────────────────────────────────────────────────────── */

.pkg-hero {
	position: relative;
	min-height: clamp( 520px, 76vh, 800px );
	display: flex;
	align-items: flex-end;
	overflow: hidden;
}

.pkg-hero__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pkg-hero__bg--placeholder {
	background: var( --atria-ink, #1A1715 );
}

.pkg-hero__gradient {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		0deg,
		rgba( 15, 12, 10, .85 ) 0%,
		rgba( 15, 12, 10, .20 ) 55%,
		rgba( 15, 12, 10, .35 ) 100%
	);
}

.pkg-hero__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	padding-block-end: clamp( 48px, 7vh, 84px );
}

.pkg-hero__crumb {
	margin-block-end: 18px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .28em;
	text-transform: uppercase;
	color: rgba( 247, 241, 231, .72 );
}

.pkg-hero__crumb a {
	color: inherit;
	text-decoration: none;
}
.pkg-hero__crumb a:hover {
	color: #D8B97E;
}

.pkg-hero__crumb-active {
	color: #D8B97E;
}

.pkg-hero__title {
	margin: 0;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 42px, 6.2vw, 86px );
	font-weight: 500;
	line-height: 1.02;
	max-width: 16ch;
	color: #F7F1E7;
	text-shadow: 0 2px 30px rgba( 0, 0, 0, .4 );
}

.pkg-hero__specs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 26px;
	margin-block-start: 24px;
}

.pkg-hero__spec {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: rgba( 247, 241, 231, .90 );
	font-size: 14px;
	letter-spacing: .04em;
}

/* ─────────────────────────────────────────────────────────────────────────
   STICKY BAR
   ───────────────────────────────────────────────────────────────────────── */

.pkg-bar {
	position: sticky;
	top: 72px; /* sits below the 72px main header */
	z-index: 40;
	background: rgba( 245, 239, 230, .96 );
	backdrop-filter: blur( 10px );
	border-bottom: 1px solid rgba( 26, 23, 21, .10 );
}

.pkg-bar__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-block: 14px;
}

.pkg-bar__price {
	display: flex;
	align-items: baseline;
	gap: 10px;
	flex-wrap: wrap;
}

.pkg-bar__from {
	font-size: 12px;
	color: var( --atria-taupe-light, #9a8a72 );
	letter-spacing: .06em;
	text-transform: uppercase;
}

.pkg-bar__amount {
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 30px;
	font-weight: 600;
	color: var( --atria-gold-deep, #8a6a38 );
	line-height: 1;
}

.pkg-bar__unit {
	font-size: 12.5px;
	color: var( --atria-taupe, #7a6f62 );
}

.pkg-bar__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.pkg-bar__btn {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	text-decoration: none;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	padding: 13px 26px;
	transition: background .2s, border-color .2s, color .2s;
}

.pkg-bar__btn--primary {
	background: var( --atria-gold, #B8915A );
	color: var( --atria-ink, #1A1715 );
}
.pkg-bar__btn--primary:hover {
	background: var( --atria-gold-light, #C9A86A );
}

.pkg-bar__btn--outline {
	background: transparent;
	border: 1px solid rgba( 26, 23, 21, .30 );
	color: var( --atria-stone, #3A332D );
}
.pkg-bar__btn--outline:hover {
	border-color: var( --atria-gold, #B8915A );
	color: var( --atria-gold-deep, #8a6a38 );
}

/* ─────────────────────────────────────────────────────────────────────────
   OVERVIEW + AT A GLANCE  (two-column)
   ───────────────────────────────────────────────────────────────────────── */

.pkg-overview {
	padding-block-start: clamp( 56px, 7vw, 100px );
	padding-block-end:   0;
}

.pkg-overview__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp( 40px, 5vw, 80px );
	align-items: start;
}

@media ( min-width: 860px ) {
	.pkg-overview__grid {
		grid-template-columns: 1fr 340px;
	}
}

/* Main column */
.pkg-overview__label {
	margin: 0 0 14px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .26em;
	text-transform: uppercase;
	color: var( --atria-gold, #B8915A );
}

.pkg-overview__heading {
	margin: 0 0 24px;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 30px, 3.6vw, 46px );
	font-weight: 500;
	line-height: 1.1;
	color: var( --atria-ink, #1A1715 );
}

.pkg-overview__prose {
	font-size: 16.5px;
	line-height: 1.8;
	color: #4a423a;
	font-weight: 300;
}

.pkg-overview__prose p {
	margin: 0 0 18px;
}
.pkg-overview__prose p:last-child {
	margin-block-end: 0;
}

/* Journey Highlights */
.pkg-overview__hl-title {
	margin: 40px 0 20px;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 24px;
	font-weight: 600;
	color: var( --atria-ink, #1A1715 );
}

.pkg-overview__highlights {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 220px, 1fr ) );
	gap: 16px 28px;
}

.pkg-overview__hl-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.pkg-overview__hl-item > span:last-child {
	font-size: 15px;
	line-height: 1.5;
	color: var( --atria-stone, #3A332D );
}

/* ─────────────────────────────────────────────────────────────────────────
   AT A GLANCE SIDEBAR
   ───────────────────────────────────────────────────────────────────────── */

.pkg-glance {
	background: #fff;
	border: 1px solid rgba( 26, 23, 21, .10 );
	padding: clamp( 20px, 2.2vw, 28px );
}

@media ( min-width: 1024px ) {
	.pkg-glance {
		position: sticky;
		top: 150px; /* header 72px + sticky bar ~50px + breathing room */
	}
}

.pkg-glance__heading {
	margin: 0 0 22px;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 24px;
	font-weight: 600;
	color: var( --atria-ink, #1A1715 );
}

.pkg-glance__list {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0 0 20px;
	padding: 0;
}

.pkg-glance__row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
	padding: 10px 0;
	border-bottom: 1px solid rgba( 26, 23, 21, .10 );
}

.pkg-glance__row:last-child {
	border-bottom: none;
}

.pkg-glance__row dt {
	font-size: 13px;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var( --atria-taupe-light, #9a8a72 );
}

.pkg-glance__row dd {
	font-size: 15px;
	color: var( --atria-ink, #1A1715 );
	font-weight: 500;
	text-align: right;
	margin: 0;
}

.pkg-glance__row--price dd {
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 24px;
	font-weight: 600;
	color: var( --atria-gold-deep, #8a6a38 );
	line-height: 1;
}

.pkg-glance__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	background: var( --atria-gold, #B8915A );
	color: var( --atria-ink, #1A1715 );
	padding: 16px;
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	margin-block-end: 12px;
	transition: background .2s;
}
.pkg-glance__cta:hover {
	background: var( --atria-gold-light, #C9A86A );
}

.pkg-glance__wa {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-decoration: none;
	background: transparent;
	border: 1px solid rgba( 26, 23, 21, .25 );
	color: var( --atria-stone, #3A332D );
	padding: 15px;
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	transition: border-color .2s, color .2s;
}
.pkg-glance__wa:hover {
	border-color: #1f8a4c;
	color: #1f8a4c;
}

/* ─────────────────────────────────────────────────────────────────────────
   PRICE ESTIMATOR (inside sidebar)
   ───────────────────────────────────────────────────────────────────────── */

.pkg-estimator {
	margin-block: 14px;
	padding: 16px;
	background: var( --atria-sand-band, #EFE7D9 );
	border: 1px solid rgba( 26, 23, 21, .08 );
}

.pkg-estimator__label {
	margin: 0 0 14px;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var( --atria-taupe-light, #9a8a72 );
}

/* Re-use .atria-estimator__field & .atria-estimator__select from style.css */
.pkg-estimator .atria-estimator__select {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid rgba( 26, 23, 21, .20 );
	background: #fff;
	font-size: 14px;
	color: var( --atria-ink, #1A1715 );
	appearance: none;
	background-image: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239a8a72' stroke-width='1.5' fill='none'/%3E%3C/svg%3E" );
	background-repeat: no-repeat;
	background-position: right 12px center;
	padding-inline-end: 36px;
}

.pkg-estimator .atria-estimator__field-label {
	display: block;
	font-size: 12px;
	color: var( --atria-taupe-light, #9a8a72 );
	margin-block-end: 6px;
	letter-spacing: .04em;
}

.pkg-estimator .atria-estimator__field {
	margin-block-end: 12px;
}

/* Result output */
#atria-estimator-result .atria-estimator__result-total {
	margin: 12px 0 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

#atria-estimator-result .atria-estimator__result-label {
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var( --atria-taupe-light, #9a8a72 );
}

#atria-estimator-result .atria-estimator__result-price {
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 26px;
	font-weight: 600;
	color: var( --atria-gold-deep, #8a6a38 );
	line-height: 1;
}

#atria-estimator-result .atria-estimator__result-breakdown {
	font-size: 12px;
	color: var( --atria-taupe-light, #9a8a72 );
}

#atria-estimator-result .atria-estimator__quote {
	margin: 10px 0 0;
	font-size: 13px;
	color: var( --atria-stone, #3A332D );
	line-height: 1.6;
}

/* ─────────────────────────────────────────────────────────────────────────
   ITINERARY  (sand background)
   ───────────────────────────────────────────────────────────────────────── */

.pkg-itinerary {
	background: var( --atria-sand-band, #EFE7D9 );
	border-top: 1px solid rgba( 26, 23, 21, .08 );
	border-bottom: 1px solid rgba( 26, 23, 21, .08 );
	padding-block: clamp( 56px, 7vw, 100px );
}

.pkg-iti-inner {
	max-width: 980px;
	margin-inline: auto;
	padding-inline: var( --atria-gutter, clamp( 20px, 5vw, 72px ) );
}

.pkg-iti-header {
	margin-block-end: clamp( 32px, 4vw, 48px );
}

.pkg-iti-header__label {
	margin: 0 0 12px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .26em;
	text-transform: uppercase;
	color: var( --atria-gold, #B8915A );
}

.pkg-iti-header__title {
	margin: 0;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 30px, 4vw, 50px );
	font-weight: 500;
	line-height: 1.06;
	color: var( --atria-ink, #1A1715 );
}

.pkg-iti-header__sub {
	margin: 16px 0 0;
	font-size: 15px;
	color: #5A5048;
	font-weight: 300;
}

/* Day accordion items */
.pkg-iti-days {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.pkg-iti-item {
	background: #fff;
	border: 1px solid rgba( 26, 23, 21, .10 );
}

/* Trigger row */
.pkg-iti-trigger {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 22px clamp( 18px, 2.5vw, 30px );
	background: none;
	border: none;
	cursor: pointer;
	text-align: left;
}

.pkg-iti-trigger:hover .pkg-iti-trigger__title {
	color: var( --atria-gold-deep, #8a6a38 );
}

.pkg-iti-trigger__day {
	flex: none;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .16em;
	color: var( --atria-gold, #B8915A );
	width: 54px;
}

.pkg-iti-trigger__title {
	flex: 1;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 19px, 2.2vw, 24px );
	font-weight: 600;
	color: var( --atria-ink, #1A1715 );
	line-height: 1.2;
	transition: color .2s;
}

.pkg-iti-trigger__sign {
	flex: none;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 28px;
	color: var( --atria-gold, #B8915A );
	line-height: 1;
	font-weight: 400;
}

/* Hide svg from tour-accordion.js default; we use text +/- sign */
.pkg-iti-trigger .tour-accordion__icon svg {
	display: none;
}

/* Panel (hidden by tour-accordion.js until expanded) */
.pkg-iti-panel {
	padding: 0 clamp( 18px, 2.5vw, 30px ) 24px 86px;
}

.pkg-iti-panel__figure {
	margin: 0 0 16px;
}

.pkg-iti-panel__img {
	width: 100%;
	max-height: 280px;
	object-fit: cover;
	display: block;
}

.pkg-iti-panel__desc {
	font-size: 15.5px;
	line-height: 1.8;
	color: #4a423a;
	font-weight: 300;
}

.pkg-iti-panel__desc p {
	margin: 0 0 12px;
}
.pkg-iti-panel__desc p:last-child {
	margin-block-end: 0;
}

@media ( max-width: 540px ) {
	.pkg-iti-panel {
		padding-inline-start: clamp( 18px, 2.5vw, 30px );
	}
}

/* ─────────────────────────────────────────────────────────────────────────
   GALLERY
   ───────────────────────────────────────────────────────────────────────── */

.pkg-gallery {
	padding-block: clamp( 56px, 7vw, 100px );
}

.pkg-gallery__label {
	margin: 0 0 12px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .26em;
	text-transform: uppercase;
	color: var( --atria-gold, #B8915A );
}

.pkg-gallery__title {
	margin: 0 0 clamp( 28px, 3.5vw, 44px );
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 30px, 4vw, 50px );
	font-weight: 500;
	line-height: 1.06;
	color: var( --atria-ink, #1A1715 );
}

/* 5-cell masonry-ish grid: cell 1 spans two rows */
.pkg-gallery__grid {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 220px, 1fr ) );
	gap: clamp( 12px, 1.4vw, 18px );
}

.pkg-gallery__cell {
	overflow: hidden;
}

.pkg-gallery__cell--1 {
	grid-row: span 2;
}

.pkg-gallery__img {
	display: block;
	width: 100%;
	height: clamp( 220px, 22vw, 300px );
	object-fit: cover;
	transition: transform .4s;
}

.pkg-gallery__cell--1 .pkg-gallery__img {
	height: 100%;
}

.pkg-gallery__cell:hover .pkg-gallery__img {
	transform: scale( 1.03 );
}

/* ─────────────────────────────────────────────────────────────────────────
   INCLUSIONS / EXCLUSIONS  (dark background)
   ───────────────────────────────────────────────────────────────────────── */

.pkg-incl {
	background: var(--atria-ink-deep);
	color: var(--color-text-on-dark);
	padding-block: clamp( 56px, 7vw, 100px );
}

.pkg-incl__grid {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 280px, 1fr ) );
	gap: clamp( 36px, 5vw, 72px );
}

.pkg-incl__col-label {
	margin: 0 0 22px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .26em;
	text-transform: uppercase;
}

/* Fallback only applies while --color-include/--color-exclude are unset — a
   chosen color palette prints them at :root, overriding every fallback here. */
.pkg-incl__col-label--in {
	color: var( --color-include, var( --atria-gold-light ) );
}

.pkg-incl__col-label--ex {
	color: color-mix( in srgb, var( --color-exclude, var( --atria-ink-contrast ) ) 50%, transparent );
}

.pkg-incl__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.pkg-incl__item {
	display: flex;
	align-items: flex-start;
	gap: 13px;
}

.pkg-incl__icon--in {
	color: var( --color-include, var( --atria-gold-light ) );
	flex: none;
	margin-block-start: 2px;
}

.pkg-incl__icon--ex {
	color: color-mix( in srgb, var( --color-exclude, var( --atria-ink-contrast ) ) 40%, transparent );
	flex: none;
	margin-block-start: 2px;
}

.pkg-incl__item > span:last-child {
	font-size: 15.5px;
	line-height: 1.6;
	font-weight: 300;
}

.pkg-incl__item:not(.pkg-incl__item--ex) > span:last-child {
	color: rgba( 247, 241, 231, .86 );
}

.pkg-incl__item--ex > span:last-child {
	color: rgba( 247, 241, 231, .60 );
}

/* ─────────────────────────────────────────────────────────────────────────
   RELATED JOURNEYS
   ───────────────────────────────────────────────────────────────────────── */

.pkg-related {
	padding-block: clamp( 56px, 7vw, 100px );
}

.pkg-related__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
	margin-block-end: clamp( 28px, 3.5vw, 44px );
}

.pkg-related__title {
	margin: 0;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 28px, 3.6vw, 44px );
	font-weight: 500;
	line-height: 1.06;
	color: var( --atria-ink, #1A1715 );
}

.pkg-related__all {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var( --atria-gold-deep, #8a6a38 );
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .16em;
	transition: gap .25s;
}
.pkg-related__all:hover {
	gap: 16px;
}

.pkg-related__grid {
	display: grid;
	/* auto-fill (not auto-fit) + a fixed upper bound keeps cards from
	   stretching to fill the row when there are only 1-2 related items;
	   unused tracks just stay empty instead, and the row centers. */
	grid-template-columns: repeat( auto-fill, minmax( 280px, 340px ) );
	justify-content: center;
	gap: clamp( 20px, 2.4vw, 34px );
}

/* Card */
.pkg-related-card {
	display: block;
	text-decoration: none;
	background: #fff;
	border: 1px solid rgba( 26, 23, 21, .08 );
	color: inherit;
	transition: box-shadow .25s, transform .25s;
}
.pkg-related-card:hover {
	box-shadow: 0 16px 38px rgba( 26, 23, 21, .13 );
	transform: translateY( -4px );
}

.pkg-related-card__img {
	display: block;
	width: 100%;
	height: clamp( 220px, 20vw, 260px );
	object-fit: cover;
}

.pkg-related-card__body {
	padding: 22px 24px 26px;
}

.pkg-related-card__title {
	margin: 0 0 6px;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 23px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var( --atria-ink, #1A1715 );
}

.pkg-related-card__meta {
	margin: 0 0 16px;
	font-size: 13px;
	letter-spacing: .06em;
	color: var( --atria-taupe, #7a6f62 );
}

.pkg-related-card__price-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-top: 1px solid rgba( 26, 23, 21, .10 );
	padding-block-start: 14px;
}

.pkg-related-card__from {
	font-size: 12px;
	color: var( --atria-taupe-light, #9a8a72 );
}

.pkg-related-card__price {
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: 22px;
	font-weight: 600;
	color: var( --atria-gold-deep, #8a6a38 );
}

.pkg-related-card__price--por {
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	color: var( --atria-taupe-light, #9a8a72 );
}

/* ─────────────────────────────────────────────────────────────────────────
   ENQUIRY CTA  (dark with background image + form)
   ───────────────────────────────────────────────────────────────────────── */

.pkg-cta {
	position: relative;
	background: var( --atria-ink, #1A1715 );
	color: #F7F1E7;
	overflow: hidden;
}

.pkg-cta__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .28;
}

.pkg-cta__overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		rgba( 20, 16, 12, .92 ) 0%,
		rgba( 20, 16, 12, .62 ) 70%,
		rgba( 20, 16, 12, .40 ) 100%
	);
}

.pkg-cta__inner {
	position: relative;
	z-index: 2;
	padding-block: clamp( 60px, 8vw, 116px );
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp( 40px, 5vw, 72px );
	align-items: start;
}

@media ( min-width: 860px ) {
	.pkg-cta__inner {
		grid-template-columns: 1fr 1fr;
	}
}

.pkg-cta__eyebrow {
	margin: 0 0 16px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .30em;
	text-transform: uppercase;
	color: var( --atria-gold-light, #C9A86A );
}

.pkg-cta__title {
	margin: 0;
	font-family: var( --atria-font-display, 'Cormorant Garamond', serif );
	font-size: clamp( 32px, 4.8vw, 60px );
	font-weight: 500;
	line-height: 1.05;
	color: #F7F1E7;
	max-width: 16ch;
}

.pkg-cta__sub {
	margin: 22px 0 0;
	font-size: clamp( 15px, 1.4vw, 18px );
	line-height: 1.7;
	color: rgba( 247, 241, 231, .78 );
	max-width: 52ch;
	font-weight: 300;
}

.pkg-cta__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-block-start: 38px;
}

.pkg-cta__btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
	padding: 18px 38px;
	transition: background .2s, color .2s, border-color .2s;
}

.pkg-cta__btn--primary {
	background: var( --atria-gold, #B8915A );
	color: var( --atria-ink, #1A1715 );
}
.pkg-cta__btn--primary:hover {
	background: var( --atria-gold-light, #C9A86A );
}

.pkg-cta__btn--wa {
	background: transparent;
	border: 1px solid rgba( 247, 241, 231, .45 );
	color: #F7F1E7;
	padding-inline: 32px;
}
.pkg-cta__btn--wa:hover {
	background: rgba( 247, 241, 231, .10 );
}

/* Enquiry form inside CTA */
.pkg-cta__form {
	/* the form inherits inline form styles from Atria_Enquiry::render_form */
}

/* Adjust form label/input colours inside dark section */
.pkg-cta .atria-enquiry-form label,
.pkg-cta .atria-enquiry__label {
	color: rgba( 247, 241, 231, .80 );
}

.pkg-cta .atria-enquiry-form input,
.pkg-cta .atria-enquiry-form select,
.pkg-cta .atria-enquiry-form textarea {
	background: rgba( 255, 255, 255, .08 );
	border-color: rgba( 247, 241, 231, .25 );
	color: #F7F1E7;
}

.pkg-cta .atria-enquiry-form input::placeholder,
.pkg-cta .atria-enquiry-form textarea::placeholder {
	color: rgba( 247, 241, 231, .40 );
}
