/* =====================================================================
   Paarhk — Section landings + section footers
   One template, three "mini-sites". Accent set per section via --acc.
   ===================================================================== */

.section-re        { --acc: #02504c; }
.section-landscape { --acc: #1f6d55; }
.section-mortgage  { --acc: #12496b; }

/* Hide Proty page-title banner on section landings (hero replaces it) */
body.tmpl-section-landing .page-header { display: none !important; }
body.tmpl-section-landing #themesflat-content,
body.tmpl-section-landing .page-wrap,
body.tmpl-section-landing #main-content {
	padding: 0 !important;
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

.pk-wrap { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 clamp(20px, 5vw, 48px); }

/* ---------- Hero ---------- */
.pk-hero {
	position: relative;
	min-height: clamp(440px, 74vh, 760px);
	display: flex;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}
.pk-hero__media {
	position: absolute; inset: 0; z-index: 1;
	background: var(--hero) center/cover no-repeat;
	background-position: var(--hero-pos, center);
	transform: scale(1.04);
	animation: pk-kenburns 18s ease-out forwards;
}
@keyframes pk-kenburns { to { transform: scale(1.12); } }
.pk-hero__scrim {
	position: absolute; inset: 0; z-index: 2;
	background:
		linear-gradient(90deg, color-mix(in srgb, var(--acc) 86%, black) 0%, color-mix(in srgb, var(--acc) 55%, transparent) 46%, transparent 82%),
		linear-gradient(0deg, rgba(0,0,0,.35), rgba(0,0,0,0) 45%);
}
.pk-hero__inner {
	position: relative; z-index: 3;
	width: 100%; max-width: 1200px; margin: 0 auto;
	padding: 0 clamp(20px, 5vw, 48px);
	color: #fff;
}
.pk-hero__eyebrow {
	display: inline-block; font-size: 13px; font-weight: 600;
	letter-spacing: .22em; text-transform: uppercase;
	color: rgba(255,255,255,.85); margin-bottom: 16px;
	padding-left: 46px; position: relative;
}
.pk-hero__eyebrow::before {
	content: ""; position: absolute; left: 0; top: 50%;
	width: 34px; height: 2px; background: #fff; transform: translateY(-50%);
}
.pk-hero__title {
	font-size: clamp(36px, 6vw, 76px); font-weight: 700;
	line-height: 1.03; letter-spacing: -.02em; margin: 0 0 18px; color: #fff;
}
.pk-hero__desc {
	font-size: clamp(16px, 1.6vw, 20px); line-height: 1.55;
	color: rgba(255,255,255,.92); max-width: 48ch; margin: 0 0 32px;
}
.pk-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; }

/* ---------- Buttons ---------- */
.pk-btn {
	display: inline-flex; align-items: center; gap: 10px;
	padding: 15px 32px; border-radius: 999px; font-weight: 600;
	font-size: 15px; text-decoration: none; transition: all .3s ease;
	border: 1.5px solid transparent; white-space: nowrap;
}
.pk-btn--solid { background: var(--acc); color: #fff; border-color: var(--acc); }
.pk-btn--solid:hover { filter: brightness(1.12); transform: translateY(-2px); color:#fff; }
.pk-btn--ghost { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.6); }
.pk-btn--ghost:hover { background: #fff; color: var(--acc); }

/* ---------- Intro + cards ---------- */
.pk-intro { padding: clamp(56px, 9vh, 110px) 0 clamp(30px, 5vh, 60px); }
.pk-intro__content {
	max-width: 760px; margin: 0 auto clamp(40px, 6vh, 72px);
	text-align: center; font-size: 18px; line-height: 1.7; color: #4a4a4a;
}
.pk-cards {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(18px, 2vw, 28px);
}
.pk-card {
	position: relative; padding: clamp(28px, 3vw, 40px);
	border: 1px solid #e7e9e8; border-radius: 16px; background: #fff;
	transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
	overflow: hidden;
}
.pk-card::before {
	content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
	background: var(--acc); transform: scaleY(0); transform-origin: top;
	transition: transform .35s ease;
}
.pk-card:hover { transform: translateY(-6px); box-shadow: 0 20px 44px rgba(0,0,0,.10); border-color: transparent; }
.pk-card:hover::before { transform: scaleY(1); }
.pk-card__num { font-size: 14px; font-weight: 700; color: var(--acc); letter-spacing: .1em; }
.pk-card__title { font-size: 22px; font-weight: 700; margin: 10px 0 10px; color: #1a1a1a; }
.pk-card__text { font-size: 15px; line-height: 1.6; color: #5c5c5c; margin: 0; }

/* ---------- CTA band ---------- */
.pk-cta {
	margin-top: clamp(56px, 9vh, 110px);
	background: linear-gradient(120deg, var(--acc), color-mix(in srgb, var(--acc) 70%, black));
	padding: clamp(48px, 8vh, 96px) 0;
}
.pk-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 28px; flex-wrap: wrap; }
.pk-cta__inner h2 { color: #fff; font-size: clamp(24px, 3vw, 38px); font-weight: 700; margin: 0; max-width: 22ch; }
.pk-cta .pk-btn--solid { background: #fff; color: var(--acc); border-color: #fff; }
.pk-cta .pk-btn--solid:hover { filter: none; background: rgba(255,255,255,.9); }

/* =====================================================================
   Section footer (child footer.php)
   ===================================================================== */
.pk-foot {
	--acc: #02504c;
	background: #0f1512; color: rgba(255,255,255,.78);
	position: relative;
}
.pk-foot.section-re        { --acc: #16867e; background:#08211f; }
.pk-foot.section-landscape { --acc: #47b389; background:#0c231c; }
.pk-foot.section-mortgage  { --acc: #4a9fd6; background:#0b1c28; }
.pk-foot::before { content:""; display:block; height:4px; background: var(--acc); }

.pk-foot__main {
	max-width: 1200px; margin: 0 auto;
	padding: clamp(48px, 7vh, 84px) clamp(20px, 5vw, 48px) clamp(30px, 4vh, 48px);
	display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: clamp(28px, 4vw, 64px);
}
.pk-foot__brand img { height: 46px; width: auto; margin-bottom: 18px; }
.pk-foot__name { font-size: 18px; font-weight: 700; color: #fff; margin: 0 0 8px; }
.pk-foot__tagline { font-size: 15px; line-height: 1.6; margin: 0 0 18px; max-width: 40ch; }
.pk-foot__back { color: var(--acc); font-weight: 600; font-size: 14px; text-decoration: none; }
.pk-foot__back:hover { color:#fff; }
.pk-foot__col h4 { color: #fff; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; margin: 0 0 18px; }
.pk-foot__menu, .pk-foot__contact ul { list-style: none; margin: 0; padding: 0; }
.pk-foot__menu li, .pk-foot__contact li { margin-bottom: 11px; }
.pk-foot__menu a, .pk-foot__contact a { color: rgba(255,255,255,.78); text-decoration: none; font-size: 15px; transition: color .2s; }
.pk-foot__menu a:hover, .pk-foot__contact a:hover { color: var(--acc); }
.pk-foot__cta {
	display: inline-block; margin-top: 14px; padding: 11px 24px;
	background: var(--acc); color: #fff !important; border-radius: 999px;
	font-weight: 600; font-size: 14px; text-decoration: none; transition: filter .2s;
}
.pk-foot__cta:hover { filter: brightness(1.12); }
.pk-foot__bottom {
	border-top: 1px solid rgba(255,255,255,.1);
	max-width: 1200px; margin: 0 auto;
	padding: 20px clamp(20px, 5vw, 48px);
	display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	font-size: 13px; color: rgba(255,255,255,.55);
}
.pk-foot__bottom a { color: rgba(255,255,255,.7); text-decoration: none; }
.pk-foot__bottom a:hover { color: var(--acc); }

/* ---------- Responsive ---------- */
@media (max-width: 860px) {
	.pk-cards { grid-template-columns: 1fr; }
	.pk-foot__main { grid-template-columns: 1fr; gap: 32px; }
	.pk-cta__inner { flex-direction: column; align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
	.pk-hero__media { animation: none; transform: scale(1.04); }
}
