/* =========================================================
   PREMIER CONSULTANCY — CONVERSION LANDING PAGES
   Uses global.css for fonts, tokens, buttons and container.
   ========================================================= */

.pc-landing-page {
	min-height: 100%;
	background: var(--pc-parchment);
	color: var(--pc-green-900);
}

.pc-landing-header {
	position: relative;
	z-index: 2;
	background: var(--pc-parchment);
}

.pc-landing-header__inner {
	display: flex;
	align-items: center;
	min-height: 74px;
}

.pc-landing-header__logo {
	display: inline-flex;
	align-items: center;
	max-width: 190px;
}

.pc-landing-header__logo-image {
	display: block;
	width: 100%;
/* 	max-width: 50px; */
}

.pc-landing-header__text-logo {
	font-size: 24px;
	font-weight: 700;
	color: var(--pc-green-900);
}

.pc-landing-main {
	background: var(--pc-parchment);
}

.pc-landing-hero {
	display: flex;
	align-items: center;
	min-height: clamp(520px, 68svh, 690px);
	padding: clamp(48px, 7svh, 82px) 20px clamp(60px, 8svh, 96px);
	border-bottom: 1px solid var(--pc-border-alt);
}

.pc-landing-hero__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.pc-landing-hero__eyebrow {
	margin-bottom: clamp(18px, 2.4vw, 28px);
}

.pc-landing-hero__title {
	width: min(100%, 760px);
	margin: 0;
	color: var(--pc-green-950);
/* 	font-family: "Playfair Display", Georgia, serif; */
	font-size: clamp(46px, 5vw, 72px);
	font-weight: 700;
	line-height: 0.98;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.pc-landing-hero__title span {
	display: block;
}

.pc-landing-hero__title-accent {
	color: var(--pc-gold-500);
}

.pc-landing-hero__title-accent {
    margin-top: 20px;
}

.pc-landing-hero__tagline {
	margin: clamp(20px, 2.2vw, 28px) 0 0;
	color: var(--pc-green-900);
	font-size: clamp(20px, 2vw, 27px);
	font-style: italic;
	font-weight: 600;
	line-height: 1.25;
}

.pc-landing-hero__description {
	width: min(100%, 640px);
	margin: 18px auto 0;
	color: var(--pc-body);
	font-size: clamp(15px, 1.3vw, 18px);
	line-height: 1.65;
}

.pc-landing-trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-top: clamp(24px, 2.8vw, 34px);
}

.pc-landing-trust__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 8px 15px;
	border: 1px solid var(--pc-border-alt);
	border-radius: 999px;
	background: var(--pc-white);
	color: var(--pc-green-900);
	font-size: 13px;
	font-weight: 600;
}

.pc-landing-trust__dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--pc-gold-500);
}

.pc-landing-hero__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: clamp(26px, 3vw, 36px);
}

.pc-landing-hero__cta,
.pc-landing-hero__whatsapp {
	gap: 12px;
	min-height: 54px;
	padding: 17px 28px;
	border-radius: var(--pc-radius-lg);
	white-space: nowrap;
}

.pc-landing-hero__cta {
	box-shadow: 0 18px 34px -18px rgba(16, 59, 47, 0.55);
}

.pc-landing-hero__whatsapp {
	gap: 9px;
	filter: drop-shadow(0 8px 24px rgba(37, 211, 102, 0.35));
}

.pc-landing-hero__whatsapp-icon {
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	fill: currentColor;
}

.pc-landing-hero__microcopy {
	margin: 10px 0 0;
	color: var(--pc-body);
	font-size: 12px;
}

.pc-landing-form {
	scroll-margin-top: 20px;
	padding: clamp(58px, 7vw, 88px) 20px;
	background: var(--pc-white);
}

/*
 * Form is collapsed by default, but :target provides a no-JS fallback.
 * This keeps the hero CTA functional even when a cache/optimization plugin
 * delays the landing interaction script for logged-out visitors.
 */
.pc-landing-form--collapsed:not(:target) {
	display: none;
}

.pc-landing-form:target {
	display: block;
}

.pc-landing-form__card {
	width: min(100%, 760px);
	margin-inline: auto;
	padding: clamp(28px, 4vw, 48px);
	border: 1px solid var(--pc-border-alt);
	border-radius: var(--pc-radius-3xl);
	background: var(--pc-surface-warm);
	box-shadow: 0 24px 70px -48px rgba(16, 59, 47, 0.45);
}

.pc-landing-form__card .pc-eyebrow--centered{
	width: 100%;
}

.pc-landing-form__title {
	margin: 12px 0 0;
	text-align: center;
	color: var(--pc-green-900);
}

.pc-landing-form__intro {
	width: min(100%, 560px);
	margin: 12px auto 28px;
	text-align: center;
	color: var(--pc-body);
}

/*
 * The form itself intentionally comes from the existing [pc_main_form]
 * shortcode used on the Contact page. Do not restyle fields here: they live
 * inside Zoho's cross-origin iframe and retain the Contact-page/Zoho styling.
 */
.pc-landing-form__embed {
	width: 100%;
	max-width: 760px;
	margin-inline: auto;
}

.pc-landing-form__embed iframe {
	display: block;
	width: 100% !important;
	max-width: 100%;
	border: 0 !important;
	min-height: 650px;
}

.pc-landing-form__missing {
	margin: 0;
	padding: 18px 20px;
	border: 1px solid var(--pc-border-alt);
	border-radius: var(--pc-radius-base);
	background: var(--pc-surface-warm);
	color: var(--pc-green-900);
}

.pc-landing-form__success-whatsapp {
	gap: 9px;
	min-height: 54px;
	margin-top: 24px;
	padding: 17px 28px;
	border-radius: var(--pc-radius-lg);
	filter: drop-shadow(0 8px 24px rgba(37, 211, 102, 0.35));
}

.pc-landing-form__success-whatsapp-icon {
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	fill: currentColor;
}

.pc-landing-footer {
	padding: clamp(28px, 4vw, 44px) 0;
	background: var(--pc-green-950);
	color: rgba(255, 255, 255, 0.68);
}

.pc-landing-footer__inner {
	width: min(calc(100% - (var(--pc-gutter) * 2)), 820px);
	font-size: 12px;
	line-height: 1.65;
}

.pc-landing-footer p {
	margin: 0;
}

.pc-landing-footer p + p {
	margin-top: 14px;
}

.pc-landing-footer strong,
.pc-landing-footer a {
	color: var(--pc-white);
}

.pc-landing-footer a {
	text-decoration: underline;
	text-underline-offset: 2px;
}

.pc-landing-footer__meta {
	opacity: 0.72;
}

.page-template-pcd-citizenship-direct .pc-floating-contacts {
    display: none;
}

/* =========================================================
   RESPONSIVE LANDING PAGE SYSTEM
   Reference behaviour: centered, fluid composition with no fixed
   hero height on constrained screens and progressive compression.
   ========================================================= */

/* Narrow / short desktop: preserve desktop composition, compress vertically. */
@media (min-width: 1025px) and (max-width: 1279px) {
	.pc-landing-header__inner {
		min-height: 68px;
	}

	.pc-landing-hero {
		min-height: clamp(500px, 64svh, 620px);
		padding-top: clamp(44px, 6svh, 64px);
		padding-bottom: clamp(54px, 7svh, 76px);
	}

	.pc-landing-hero__title {
		width: min(100%, 700px);
		font-size: clamp(48px, 4.8vw, 62px);
	}

	.pc-landing-hero__description {
		width: min(100%, 600px);
	}
}

@media (min-width: 1025px) and (max-height: 820px) {
	.pc-landing-header__inner {
		min-height: 64px;
	}

	.pc-landing-hero {
		min-height: auto;
		padding-top: clamp(34px, 4.8svh, 48px);
		padding-bottom: clamp(46px, 6svh, 62px);
	}

	.pc-landing-hero__eyebrow {
		margin-bottom: 16px;
	}

	.pc-landing-hero__title {
		font-size: clamp(44px, 4.2vw, 60px);
	}

	.pc-landing-hero__tagline {
		margin-top: 16px;
	}

	.pc-landing-hero__description {
		margin-top: 14px;
	}

	.pc-landing-trust {
		margin-top: 20px;
	}

	.pc-landing-hero__actions {
		margin-top: 22px;
	}
}

/* Tablet: same centered reference layout, with proportional reduction. */
@media (min-width: 768px) and (max-width: 1024px) {
	.pc-landing-header__inner {
		min-height: 68px;
	}

	.pc-landing-header__logo-image {
		width: auto;
		height: 42px;
		max-width: 170px;
	}

	.pc-landing-hero {
		min-height: auto;
		padding: clamp(54px, 7svh, 72px) 20px clamp(64px, 8svh, 82px);
	}

	.pc-landing-hero__inner {
		width: min(100%, 760px);
	}

	.pc-landing-hero__eyebrow {
		margin-bottom: 20px;
	}

	.pc-landing-hero__title {
		width: min(100%, 680px);
		font-size: clamp(48px, 6vw, 58px);
		line-height: 1;
	}

	.pc-landing-hero__tagline {
		font-size: clamp(21px, 2.8vw, 25px);
	}

	.pc-landing-hero__description {
		width: min(100%, 600px);
		font-size: 16px;
		line-height: 1.6;
	}

	.pc-landing-trust {
		/* width: min(100%, 650px); */
	}

	.pc-landing-hero__actions {
		flex-wrap: wrap;
	}

	.pc-landing-form {
		padding: 64px 20px;
	}

	.pc-landing-form__card {
		width: min(100%, 700px);
		padding: 36px;
	}
}

/* @991 */
@media screen and (max-width: 991px) {
/* Comparison Section Styles */
  .pc-landing-form__embed iframe {
    height: 579px !important;
  }
}

/* Phone layout. */
@media (max-width: 767px) {
	.pc-landing-page {
		--pc-gutter: clamp(18px, 5.5vw, 24px);
	}

	.pc-landing-header__inner {
		justify-content: center;
		min-height: 64px;
	}

	.pc-landing-header__logo {
		max-width: 160px;
	}

	.pc-landing-header__logo-image {
		width: auto;
		height: 36px;
		max-width: 150px;
	}

	.pc-landing-header__text-logo {
		font-size: 21px;
	}

	.pc-landing-hero {
		min-height: auto;
		padding: clamp(38px, 8svh, 52px) 20px clamp(52px, 10svh, 68px);
	}

	.pc-landing-hero__eyebrow {
		margin-bottom: 16px;
	}

	.pc-landing-hero__title {
		width: min(100%, 560px);
		font-size: clamp(38px, 11.5vw, 50px);
		line-height: 1.02;
		letter-spacing: -0.03em;
	}

	.pc-landing-hero__tagline {
		margin-top: 18px;
		font-size: clamp(19px, 5.4vw, 22px);
		line-height: 1.3;
	}

	.pc-landing-hero__description {
		width: min(100%, 520px);
		margin-top: 14px;
		font-size: 15px;
		line-height: 1.58;
	}

	.pc-landing-trust {
		/* width: min(100%, 520px); */
		gap: 8px;
		margin-top: 22px;
		width: auto;
	}

	.pc-landing-trust__item {
		min-height: 34px;
		padding: 7px 11px;
		font-size: 11.5px;
	}

	.pc-landing-hero__actions {
		width: min(100%, 420px);
		flex-direction: column;
		gap: 10px;
		margin-top: 24px;
	}

	.pc-landing-hero__cta,
	.pc-landing-hero__whatsapp {
		width: 100%;
		min-width: 0;
		min-height: 52px;
		padding: 15px 20px;
		white-space: normal;
		text-align: center;
	}

	.pc-landing-hero__microcopy {
		width: min(100%, 360px);
		margin-top: 9px;
		line-height: 1.45;
	}

	.pc-landing-form {
		scroll-margin-top: 0;
		padding: 48px 20px;
	}

	.pc-landing-form__card {
		padding: 28px 22px;
		border-radius: var(--pc-radius-2xl);
	}

	.pc-landing-form__intro {
		margin-bottom: 24px;
	}

	.pc-landing-form__success-whatsapp {
		width: 100%;
		min-height: 52px;
		padding: 15px 20px;
		white-space: normal;
		text-align: center;
	}

	.pc-landing-footer {
		padding: 28px 0;
	}

	.pc-landing-footer__inner {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 820px);
		font-size: 11.5px;
		line-height: 1.6;
	}
}

/* @544 */
@media screen and (max-width: 544px) {
  .pc-landing-form__embed iframe {
	height: 550px !important;
  }
}

/* Small phones: avoid oversized hero typography and crowded pills. */
@media (max-width: 479px) {
	.pc-landing-header__inner {
		min-height: 60px;
	}

	.pc-landing-header__logo-image {
		height: 32px;
	}

	.pc-landing-hero {
		padding-top: 34px;
		padding-bottom: 48px;
	}

	.pc-landing-hero__title {
		font-size: clamp(34px, 10.8vw, 42px);
	}

	.pc-landing-hero__tagline {
		font-size: 18px;
	}

	.pc-landing-trust__item {
		flex: 1 0 auto;
		justify-content: center;
		max-width: none;
		padding-inline: 9px;
		text-align: center;
	}

	.pc-landing-form__card {
		padding: 24px 18px;
	}
	.pc-landing-form__embed iframe {
        height: 569px !important;
	}
}

/* Very narrow phones: let trust chips become a single clean column. */
@media (max-width: 359px) {
	.pc-landing-page {
		--pc-gutter: 16px;
	}

	.pc-landing-hero__title {
		font-size: 33px;
	}

	.pc-landing-trust__item {
		flex-basis: 100%;
	}
}

/* Short landscape devices / tablets: reference page stays content-height driven. */
@media (max-height: 560px) and (min-width: 768px) {
	.pc-landing-header__inner {
		min-height: 56px;
	}

	.pc-landing-hero {
		min-height: auto;
		padding-top: 28px;
		padding-bottom: 38px;
	}

	.pc-landing-hero__eyebrow {
		margin-bottom: 12px;
	}

	.pc-landing-hero__title {
		font-size: clamp(38px, 5.2vw, 50px);
	}

	.pc-landing-hero__tagline {
		margin-top: 12px;
		font-size: 20px;
	}

	.pc-landing-hero__description {
		margin-top: 10px;
		line-height: 1.5;
	}

	.pc-landing-trust {
		margin-top: 16px;
	}

	.pc-landing-hero__actions {
		margin-top: 18px;
	}
}

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

/* =========================================================
   THAI SITE TYPOGRAPHY
   Reuse the fonts already registered by premierconsultancy.co.th.

   Poppins is intentionally first: it supplies Latin/English glyphs.
   Poppins does not contain Thai glyphs, so Thai text naturally falls
   through to the site's existing "Sukhumvit" font. No @font-face
   rules or font files are duplicated inside this plugin.
   ========================================================= */
.pc-landing-page {
	--pc-landing-font-family: "Poppins", "Sukhumvit", sans-serif;
}

.pc-landing-page .pc-landing-header,
.pc-landing-page .pc-landing-main,
.pc-landing-page .pc-landing-footer {
	font-family: var(--pc-landing-font-family);
}

/* Override the legacy Inter / Playfair declarations inherited from
   the original Premier landing-page design system, while keeping the
   rule isolated to this plugin's visible landing-page shell. */
.pc-landing-page .pc-landing-header :where(a, span, p, h1, h2, h3, h4, h5, h6, button),
.pc-landing-page .pc-landing-main :where(a, span, p, h1, h2, h3, h4, h5, h6, button, label, input, select, textarea),
.pc-landing-page .pc-landing-footer :where(a, span, p, h1, h2, h3, h4, h5, h6, button) {
	font-family: var(--pc-landing-font-family) !important;
}

