/* ==================================================
   HOMEPAGE + FOOTER REDESIGN
   Scoped to the new child-theme templates
   ================================================== */

.tne-homepage-body {
	--tne-surface: #171217;
	--tne-surface-soft: #1d171c;
	--tne-border: rgba(255, 255, 255, 0.09);
	--tne-gold: #d6b36a;
	--tne-wine: #a7183d;
	--tne-text: #f7f2f5;
	--tne-muted: #b9afb7;
}

.tne-home-intro,
.tne-home-value,
.tne-home-locations,
.tne-home-safety,
.tne-home-listing-section,
.tne-home-reviews {
	margin-bottom: 22px !important;
	border: 1px solid var(--tne-border) !important;
	border-radius: 20px !important;
	background:
		radial-gradient(circle at top right, rgba(91, 23, 52, 0.16), transparent 34%),
		var(--tne-surface) !important;
	box-sizing: border-box !important;
}

.tne-home-intro {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 30px;
	padding: 36px;
}

.tne-home-intro-copy {
	max-width: 760px;
}

.tne-home-eyebrow,
.tne-home-section-kicker {
	display: block;
	margin-bottom: 8px;
	color: var(--tne-gold) !important;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.tne-home-intro h1,
.tne-home-content-heading h2,
.tne-home-section-heading h2 {
	margin: 0;
	color: var(--tne-text) !important;
	line-height: 1.08;
}

.tne-home-intro h1 {
	font-size: clamp(34px, 4vw, 56px);
	letter-spacing: -0.035em;
}

.tne-home-intro p,
.tne-home-content-heading p,
.tne-home-safety p {
	margin: 15px 0 0;
	color: var(--tne-muted) !important;
	font-size: 16px;
	line-height: 1.7;
}

.tne-home-intro-actions,
.tne-home-safety-actions {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	gap: 10px;
	min-width: 210px;
}

.tne-home-primary-action,
.tne-home-secondary-action,
.tne-home-safety-actions a,
.tne-home-section-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none !important;
	box-sizing: border-box;
}

.tne-home-primary-action,
.tne-home-safety-actions a:first-child {
	border: 1px solid rgba(214, 179, 106, 0.25);
	background: linear-gradient(180deg, #bd1f49, #81112f);
	color: #fff !important;
}

.tne-home-secondary-action,
.tne-home-safety-actions a:last-child {
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.035);
	color: var(--tne-text) !important;
}

.tne-home-listing-section,
.tne-home-reviews {
	padding: 24px !important;
}

.tne-home-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(214, 179, 106, 0.14);
}

.tne-home-section-heading h2,
.tne-home-content-heading h2 {
	font-size: clamp(25px, 2.5vw, 36px);
}

.tne-home-section-link {
	min-height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.035);
	color: #fff !important;
	white-space: nowrap;
}

.tne-home-value,
.tne-home-locations,
.tne-home-safety {
	padding: 32px;
}

.tne-home-content-heading {
	max-width: 800px;
	margin-bottom: 24px;
}

.tne-home-value-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.tne-home-value-grid article {
	padding: 22px;
	border: 1px solid var(--tne-border);
	border-radius: 15px;
	background: rgba(255, 255, 255, 0.025);
}

.tne-home-value-number {
	display: block;
	margin-bottom: 18px;
	color: var(--tne-gold);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
}

.tne-home-value-grid h3 {
	margin: 0 0 9px;
	color: var(--tne-text) !important;
	font-size: 18px;
}

.tne-home-value-grid p {
	margin: 0;
	color: var(--tne-muted) !important;
	font-size: 14px;
	line-height: 1.55;
}

.tne-home-location-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.tne-home-location-grid a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-height: 58px;
	padding: 12px 15px;
	border: 1px solid var(--tne-border);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.025);
	color: var(--tne-text) !important;
	text-decoration: none !important;
}

.tne-home-location-grid a:hover {
	border-color: rgba(214, 179, 106, 0.34);
	background: rgba(91, 23, 52, 0.13);
}

.tne-home-location-grid span {
	font-weight: 700;
}

.tne-home-location-grid small {
	color: var(--tne-muted);
	font-size: 11px;
	white-space: nowrap;
}

.tne-home-safety {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

.tne-home-safety-copy {
	max-width: 780px;
}

.tne-home-review-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.tne-home-review-card {
	display: flex;
	flex-direction: column;
	min-height: 190px;
	padding: 20px;
	border: 1px solid var(--tne-border);
	border-radius: 15px;
	background: rgba(255, 255, 255, 0.025);
}

.tne-home-review-stars {
	margin-bottom: 14px;
	color: #e7c45f;
	font-size: 20px;
	letter-spacing: 0.06em;
}

.tne-home-review-card p {
	margin: 0;
	color: var(--tne-muted) !important;
	font-size: 14px;
	line-height: 1.6;
}

.tne-home-review-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: auto;
	padding-top: 18px;
}

.tne-home-review-footer span {
	color: #8f858d;
	font-size: 12px;
}

.tne-home-review-footer a {
	color: var(--tne-gold) !important;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none !important;
}

.tne-home-empty {
	grid-column: 1 / -1;
	padding: 20px;
	color: var(--tne-muted);
}

/* Footer */
.tne-site-footer {
	position: relative;
	margin-top: 28px;
	border-top: 1px solid rgba(214, 179, 106, 0.22);
	background:
		radial-gradient(circle at top left, rgba(91, 23, 52, 0.18), transparent 30%),
		#0b090b;
	color: #b9afb7;
}

.tne-site-footer-inner {
	display: grid;
	grid-template-columns: minmax(280px, 1.5fr) repeat(3, minmax(150px, 1fr));
	gap: 42px;
	max-width: 1500px;
	margin: 0 auto;
	padding: 54px 34px 42px;
	box-sizing: border-box;
}

.tne-footer-logo {
	display: inline-block;
	margin-bottom: 18px;
	color: #fff !important;
	font-size: 24px;
	font-weight: 800;
	text-decoration: none !important;
}

.tne-footer-logo img {
	display: block;
	width: auto;
	max-width: 240px;
	height: auto;
	max-height: 62px;
}

.tne-footer-brand p {
	max-width: 460px;
	margin: 0;
	color: #a99fa6;
	font-size: 14px;
	line-height: 1.7;
}

.tne-footer-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 20px;
}

.tne-footer-badges span {
	padding: 7px 10px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.025);
	color: #cfc5cc;
	font-size: 11px;
	font-weight: 700;
}

.tne-footer-column {
	display: flex;
	flex-direction: column;
	gap: 11px;
}

.tne-footer-column h2 {
	margin: 0 0 7px;
	color: var(--tne-gold, #d6b36a) !important;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.tne-footer-column a {
	color: #b9afb7 !important;
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none !important;
}

.tne-footer-column a:hover {
	color: #fff !important;
}

.tne-footer-legal-note {
	margin-top: 8px;
	color: #837980;
	font-size: 11px;
	line-height: 1.5;
}

.tne-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	max-width: 1500px;
	margin: 0 auto;
	padding: 18px 34px;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
	color: #827980;
	font-size: 11px;
	box-sizing: border-box;
}

.tne-footer-widget-area {
	background: #0f0c0f !important;
}

@media screen and (max-width: 1100px) {
	.tne-home-intro,
	.tne-home-safety {
		align-items: flex-start;
		flex-direction: column;
	}

	.tne-home-intro-actions,
	.tne-home-safety-actions {
		flex-direction: row;
		min-width: 0;
	}

	.tne-home-location-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.tne-site-footer-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 767px) {
	.tne-home-intro,
	.tne-home-value,
	.tne-home-locations,
	.tne-home-safety,
	.tne-home-listing-section,
	.tne-home-reviews {
		margin-bottom: 14px !important;
		border-radius: 15px !important;
	}

	.tne-home-intro,
	.tne-home-value,
	.tne-home-locations,
	.tne-home-safety,
	.tne-home-listing-section,
	.tne-home-reviews {
		padding: 20px 16px !important;
	}

	.tne-home-intro h1 {
		font-size: 34px;
	}

	.tne-home-intro p,
	.tne-home-content-heading p,
	.tne-home-safety p {
		font-size: 14px;
	}

	.tne-home-intro-actions,
	.tne-home-safety-actions {
		width: 100%;
		flex-direction: column;
	}

	.tne-home-intro-actions a,
	.tne-home-safety-actions a {
		width: 100%;
	}

	.tne-home-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}

	.tne-home-section-link {
		min-height: 36px;
	}

	.tne-home-value-grid,
	.tne-home-review-grid {
		grid-template-columns: 1fr;
	}

	.tne-home-location-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tne-home-location-grid a {
		align-items: flex-start;
		flex-direction: column;
	}

	.tne-home-review-card {
		min-height: 0;
	}

	.tne-site-footer-inner {
		grid-template-columns: 1fr;
		gap: 30px;
		padding: 38px 20px 30px;
	}

	.tne-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: 7px;
		padding: 16px 20px;
	}
}





@media screen and (max-width: 767px) {
	.tne-home-hero {
		padding: 28px 16px !important;
	}

	.tne-home-hero h1 {
		font-size: clamp(34px, 10vw, 46px) !important;
		line-height: 1.05 !important;
		margin-bottom: 16px !important;
	}

	.tne-home-hero p {
		font-size: 16px !important;
		line-height: 1.55 !important;
		margin-bottom: 22px !important;
	}

	.tne-home-hero-actions {
		gap: 10px !important;
	}

	.tne-home-hero-actions a {
		min-height: 50px !important;
		padding: 0 18px !important;
	}
}




@media screen and (max-width: 767px) {
	.tne-site-footer-inner {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 30px 18px !important;
		padding: 34px 18px 26px !important;
	}

	.tne-footer-brand {
		grid-column: 1 / -1 !important;
	}

	.tne-footer-column {
		min-width: 0 !important;
	}

	.tne-footer-column h3 {
		font-size: 15px !important;
		margin-bottom: 14px !important;
	}

	.tne-footer-column a {
		font-size: 14px !important;
		line-height: 1.4 !important;
	}

	.tne-footer-bottom {
		display: flex !important;
		flex-direction: column !important;
		gap: 6px !important;
		padding: 18px !important;
		text-align: center !important;
	}
}






@media screen and (max-width: 767px) {
	.tne-floating-admin-contact {
		right: 10px !important;
		bottom: 14px !important;
		gap: 8px !important;
	}

	.tne-floating-contact-button {
		width: 50px !important;
		height: 50px !important;
		min-width: 50px !important;
		padding: 0 !important;
		border-radius: 50% !important;
	}

	.tne-floating-contact-copy {
		display: none !important;
	}

	.tne-floating-contact-icon {
		margin: 0 !important;
	}
}






/* ==================================================
   HOMEPAGE — ACTUAL MOBILE COMPACT OVERRIDES
   ================================================== */

@media screen and (max-width: 767px) {

	/* Main introduction card */
	.tne-homepage-body .tne-home-intro {
		display: block !important;
		margin-bottom: 12px !important;
		padding: 20px 14px !important;
		border-radius: 14px !important;
	}

	.tne-homepage-body .tne-home-eyebrow {
		margin-bottom: 8px !important;
		font-size: 10px !important;
		letter-spacing: 0.12em !important;
	}

	.tne-homepage-body .tne-home-intro h1 {
		margin: 0 0 10px !important;
		font-size: 28px !important;
		line-height: 1.05 !important;
		letter-spacing: -0.025em !important;
	}

	.tne-homepage-body .tne-home-intro p {
		margin: 0 0 16px !important;
		font-size: 14px !important;
		line-height: 1.48 !important;
	}

	/* Put the two hero buttons on one row */
	.tne-homepage-body .tne-home-intro-actions {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 7px !important;
		width: 100% !important;
	}

	.tne-homepage-body .tne-home-intro-actions a {
		width: 100% !important;
		min-height: 42px !important;
		padding: 7px 8px !important;
		border-radius: 11px !important;
		font-size: 11px !important;
		line-height: 1.2 !important;
		text-align: center !important;
	}

	/* Listing sections */
	.tne-homepage-body .tne-home-listing-section {
		padding: 18px 12px !important;
		border-radius: 14px !important;
	}

	.tne-homepage-body .tne-home-section-heading {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: end !important;
		gap: 10px !important;
		margin-bottom: 14px !important;
		padding-bottom: 12px !important;
	}

	.tne-homepage-body .tne-home-section-heading > div {
		min-width: 0 !important;
	}

	.tne-homepage-body .tne-home-section-heading h2 {
		font-size: 25px !important;
		line-height: 1.08 !important;
	}

	.tne-homepage-body .tne-home-section-kicker {
		margin-bottom: 5px !important;
		font-size: 9px !important;
	}

	.tne-homepage-body .tne-home-section-link {
		min-height: 36px !important;
		padding: 0 11px !important;
		font-size: 10px !important;
		white-space: nowrap !important;
	}

	/* Two-column footer links */
	.tne-site-footer .tne-site-footer-inner {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 24px 16px !important;
		padding: 30px 16px 24px !important;
	}

	.tne-site-footer .tne-footer-brand {
		grid-column: 1 / -1 !important;
	}

	.tne-site-footer .tne-footer-column {
		gap: 9px !important;
	}

	.tne-site-footer .tne-footer-column h2 {
		margin-bottom: 5px !important;
		font-size: 12px !important;
	}

	.tne-site-footer .tne-footer-column a {
		font-size: 12px !important;
	}

	.tne-site-footer .tne-footer-bottom {
		align-items: center !important;
		padding: 14px 16px !important;
		text-align: center !important;
	}
}

/* Stronger override for inline floating-button styles */
@media screen and (max-width: 767px) {

	body .tne-floating-admin-contact {
		right: 8px !important;
		bottom: 72px !important;
		gap: 6px !important;
	}

	body .tne-floating-admin-contact
	.tne-floating-contact-button {
		width: 42px !important;
		min-width: 42px !important;
		height: 42px !important;
		min-height: 42px !important;
		padding: 0 !important;
		border-radius: 50% !important;
	}

	body .tne-floating-admin-contact
	.tne-floating-contact-copy {
		display: none !important;
	}

	body .tne-floating-admin-contact
	.tne-floating-contact-icon {
		width: 21px !important;
		height: 21px !important;
		margin: 0 !important;
	}
}


/* Homepage H1 — smaller on desktop, unchanged semantically */
@media screen and (min-width: 1024px) {
	.tne-homepage-body .tne-home-intro h1 {
		font-size: clamp(28px, 2.1vw, 38px) !important;
		line-height: 1.05 !important;
		letter-spacing: -0.025em !important;
	}
}



/* ==================================================
   HOMEPAGE FAQ
   ================================================== */

.tne-home-faq {
	margin-bottom: 22px;
	padding: 24px;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 20px;
	background:
		radial-gradient(
			circle at top right,
			rgba(91, 23, 52, 0.16),
			transparent 34%
		),
		#171217;
	box-sizing: border-box;
}

.tne-faq-list {
	display: grid;
	gap: 10px;
}

.tne-faq-item {
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 13px;
	background: rgba(255, 255, 255, 0.025);
}

.tne-faq-item[open] {
	border-color: rgba(214, 179, 106, 0.24);
	background: rgba(91, 23, 52, 0.09);
}

.tne-faq-item summary {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 56px;
	padding: 13px 48px 13px 17px;
	color: #f7f2f5;
	font-size: 15px;
	font-weight: 750;
	line-height: 1.4;
	cursor: pointer;
	list-style: none;
	box-sizing: border-box;
}

.tne-faq-item summary::-webkit-details-marker {
	display: none;
}

.tne-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 25px;
	height: 25px;
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 50%;
	color: #d6b36a;
	font-size: 18px;
	line-height: 1;
	content: "+";
	transform: translateY(-50%);
}

.tne-faq-item[open] summary::after {
	content: "−";
}

.tne-faq-answer {
	padding: 0 17px 17px;
}

.tne-faq-answer p {
	margin: 0;
	color: #b9afb7;
	font-size: 14px;
	line-height: 1.65;
}

@media screen and (max-width: 767px) {
	.tne-home-faq {
		margin-bottom: 14px;
		padding: 18px 14px;
		border-radius: 15px;
	}

	.tne-home-faq .tne-home-section-heading {
		display: block !important;
	}

	.tne-home-faq .tne-home-section-link {
		margin-top: 12px;
	}

	.tne-faq-item summary {
		min-height: 50px;
		padding: 11px 42px 11px 13px;
		font-size: 13px;
	}

	.tne-faq-item summary::after {
		right: 12px;
		width: 23px;
		height: 23px;
	}

	.tne-faq-answer {
		padding: 0 13px 14px;
	}

	.tne-faq-answer p {
		font-size: 13px;
	}
}



/* ==================================================
   HELP & FAQ PAGE — FULL UI REFINEMENT
   ================================================== */

.tne-faq-page-body {
	padding: 0 20px 30px;
	box-sizing: border-box;
}

.tne-faq-page {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}

/* Hero */
.tne-faq-page-hero {
	margin-bottom: 22px;
	padding: 34px 36px;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 22px;
	background:
		radial-gradient(
			circle at top right,
			rgba(105, 24, 57, 0.25),
			transparent 38%
		),
		linear-gradient(
			135deg,
			#191319 0%,
			#151115 100%
		);
	box-sizing: border-box;
}

.tne-faq-page-hero .tne-home-section-kicker {
	display: block;
	margin-bottom: 10px;
	color: #d6b36a;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.tne-faq-page-hero h1 {
	max-width: 900px;
	margin: 0 0 14px;
	color: #f8f4f7;
	font-size: clamp(30px, 3.2vw, 42px);
	font-weight: 800;
	line-height: 1.02;
	letter-spacing: -0.035em;
}

.tne-faq-page-hero p {
	max-width: 900px;
	margin: 0;
	color: #c2b8c0;
	font-size: 17px;
	line-height: 1.7;
}

.tne-faq-page-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.tne-faq-page-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 22px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 750;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

.tne-faq-page-actions .tne-home-primary-action {
	border: 1px solid #db3c62;
	background: linear-gradient(180deg, #c81f4d 0%, #a90f37 100%);
	color: #fff;
}

.tne-faq-page-actions .tne-home-secondary-action {
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.025);
	color: #f5eff3;
}

/* FAQ groups */
.tne-faq-group {
	margin-bottom: 20px;
	padding: 24px;
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 18px;
	background: #121012;
	box-sizing: border-box;
}

.tne-faq-group-heading {
	margin-bottom: 15px;
	padding-bottom: 13px;
	border-bottom: 1px solid rgba(214, 179, 106, 0.16);
}

.tne-faq-group-heading h2 {
	margin: 0;
	color: #f6f1f4;
	font-size: clamp(24px, 2.2vw, 32px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.tne-faq-page .tne-faq-list {
	display: grid;
	gap: 10px;
}

.tne-faq-page .tne-faq-item {
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.018);
	transition:
		border-color 0.2s ease,
		background-color 0.2s ease;
}

.tne-faq-page .tne-faq-item:hover {
	border-color: rgba(214, 179, 106, 0.24);
}

.tne-faq-page .tne-faq-item[open] {
	border-color: rgba(214, 179, 106, 0.34);
	background:
		linear-gradient(
			135deg,
			rgba(85, 24, 46, 0.18),
			rgba(255, 255, 255, 0.012)
		);
}

.tne-faq-page .tne-faq-item summary {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 58px;
	padding: 15px 58px 15px 18px;
	color: #f3edf1;
	font-size: 15px;
	font-weight: 760;
	line-height: 1.4;
	cursor: pointer;
	list-style: none;
	box-sizing: border-box;
}

.tne-faq-page .tne-faq-item summary::-webkit-details-marker {
	display: none;
}

.tne-faq-page .tne-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	color: #d6b36a;
	font-size: 19px;
	font-weight: 500;
	line-height: 1;
	content: "+";
	transform: translateY(-50%);
}

.tne-faq-page .tne-faq-item[open] summary::after {
	content: "−";
}

.tne-faq-page .tne-faq-answer {
	padding: 0 18px 18px;
}

.tne-faq-page .tne-faq-answer p {
	max-width: 950px;
	margin: 0;
	color: #bdb3bb;
	font-size: 14px;
	line-height: 1.7;
}

/* Closing CTA */
.tne-faq-cta {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) auto;
	align-items: center;
	gap: 28px;
	margin-top: 24px;
	padding: 30px 32px;
	border: 1px solid rgba(214, 179, 106, 0.22);
	border-radius: 20px;
	background:
		radial-gradient(
			circle at right center,
			rgba(115, 27, 59, 0.24),
			transparent 42%
		),
		#171217;
	box-sizing: border-box;
}

.tne-faq-cta .tne-home-section-kicker {
	display: block;
	margin-bottom: 8px;
	color: #d6b36a;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.tne-faq-cta h2 {
	margin: 0 0 9px;
	color: #f7f2f5;
	font-size: clamp(25px, 2.5vw, 36px);
	line-height: 1.1;
}

.tne-faq-cta p {
	max-width: 720px;
	margin: 0;
	color: #bdb3bb;
	font-size: 14px;
	line-height: 1.65;
}

.tne-faq-cta .tne-faq-page-actions {
	justify-content: flex-end;
	margin-top: 0;
}

/* Tablet */
@media screen and (max-width: 1023px) {
	.tne-faq-page-body {
		padding: 0 14px 24px;
	}

	.tne-faq-page-hero {
		padding: 28px 24px;
	}

	.tne-faq-cta {
		grid-template-columns: 1fr;
	}

	.tne-faq-cta .tne-faq-page-actions {
		justify-content: flex-start;
	}
}

/* Mobile */
@media screen and (max-width: 767px) {
	.tne-faq-page-body {
		padding: 0 8px 18px !important;
	}

	.tne-faq-page {
		max-width: none;
	}

	.tne-faq-page-hero {
		margin-bottom: 14px;
		padding: 22px 14px;
		border-radius: 16px;
	}

	.tne-faq-page-hero .tne-home-section-kicker {
		margin-bottom: 9px;
		font-size: 9px;
		letter-spacing: 0.13em;
	}

	.tne-faq-page-hero h1 {
		margin-bottom: 12px;
		font-size: clamp(23px, 5vw, 33px);
		line-height: 1.03;
		letter-spacing: -0.035em;
	}

	.tne-faq-page-hero p {
		font-size: 14px;
		line-height: 1.55;
	}

	.tne-faq-page-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-top: 18px;
	}

	.tne-faq-page-actions a {
		width: 100%;
		min-height: 43px;
		padding: 8px 10px;
		font-size: 12px;
	}

	.tne-faq-group {
		margin-bottom: 14px;
		padding: 14px 12px;
		border-radius: 15px;
	}

	.tne-faq-group-heading {
		margin-bottom: 11px;
		padding-bottom: 10px;
	}

	.tne-faq-group-heading h2 {
		font-size: 23px;
		line-height: 1.1;
	}

	.tne-faq-page .tne-faq-list {
		gap: 8px;
	}

	.tne-faq-page .tne-faq-item {
		border-radius: 12px;
	}

	.tne-faq-page .tne-faq-item summary {
		min-height: 52px;
		padding: 12px 46px 12px 13px;
		font-size: 13px;
		line-height: 1.35;
	}

	.tne-faq-page .tne-faq-item summary::after {
		right: 11px;
		width: 26px;
		height: 26px;
		font-size: 17px;
	}

	.tne-faq-page .tne-faq-answer {
		padding: 0 13px 14px;
	}

	.tne-faq-page .tne-faq-answer p {
		font-size: 13px;
		line-height: 1.6;
	}

	.tne-faq-cta {
		display: block;
		margin-top: 16px;
		padding: 20px 14px;
		border-radius: 16px;
	}

	.tne-faq-cta h2 {
		font-size: 25px;
	}

	.tne-faq-cta p {
		font-size: 13px;
	}

	.tne-faq-cta .tne-faq-page-actions {
		margin-top: 16px;
	}
}