/*
Theme Name: Loan Ki Dukaan
Theme URI: https://dealsofarya.com/
Author: Advertorial Media LLP
Author URI: https://advertorial.in/
Description: Website and ad landing pages for Loan Ki Dukaan by Deals of Arya. Creates all pages on activation, collects leads into wp-admin → Leads, emails the team, posts to a CRM webhook and fires Meta Pixel events. Includes EMI calculator, bank logo strip, customer reviews and blog.
Version: 6.0.0
Requires at least: 6.2
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: lkd
*/

/* ---------- Tokens ---------- */
:root {
	--royal: #062e86;
	--royal-deep: #041f5e;
	--blue: #0b6bd9;
	--blue-soft: #e7efff;
	--gold: #f6c33d;
	--gold-deep: #c99316;
	--dark: #1d2840;
	--ink: #1b2337;
	--muted: #5a6478;
	--line: #e1e7f3;
	--tint: #f2f5ff;
	--white: #ffffff;
	--wa: #1c8a4b;
	--error: #c0262d;

	--font: "Urbanist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

	--wrap: 1200px;
	--gutter: clamp(16px, 4vw, 32px);
	--radius: 12px;
	--shadow: 0 20px 44px -24px rgba(4, 31, 94, .45);
	--header-h: 132px;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 12px); }
body { margin: 0; font-family: var(--font); font-size: 1.0625rem; line-height: 1.6; color: var(--ink); background: var(--white); }
img, svg, iframe { max-width: 100%; }
img { height: auto; }
a { color: var(--blue); }
h1, h2, h3 { line-height: 1.15; margin: 0 0 .5em; color: var(--royal); font-weight: 700; }
h3 { font-size: 1.2rem; }
p { margin: 0 0 1em; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation: none !important; transition: none !important; }
}

[hidden] { display: none !important; }
.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); }
.wrap.narrow { max-width: 860px; }
.center { text-align: center; }
.center .section__lead { margin-left: auto; margin-right: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.skip-link { position: absolute; left: -999px; top: 8px; background: var(--gold); color: var(--royal); padding: 8px 14px; z-index: 100; }
.skip-link:focus { left: 8px; }
.icon { width: 1.2em; height: 1.2em; fill: currentColor; flex: none; }
.fine { font-size: .9rem; color: var(--muted); margin-top: 1rem; }
.text-link { font-weight: 700; text-decoration: none; border-bottom: 2px solid currentColor; padding-bottom: 2px; }

/* ---------- Buttons ---------- */
.btn {
	display: inline-flex; align-items: center; justify-content: center; gap: .5em;
	min-height: 50px; padding: .75em 1.6em;
	font: 700 1.02rem/1.2 var(--font);
	border-radius: 10px; border: 2px solid transparent;
	text-decoration: none; cursor: pointer; transition: background-color .15s, color .15s;
}
.btn--gold { background: var(--gold); color: var(--royal-deep); }
.btn--gold:hover { background: #ffd35c; }
.btn--blue { background: var(--blue); color: var(--white); }
.btn--blue:hover { background: #095bb9; }
.btn--outline { border-color: var(--royal); color: var(--royal); background: var(--white); }
.btn--outline:hover { background: var(--tint); }
.btn--ghost { border-color: rgba(255, 255, 255, .6); color: var(--white); background: transparent; }
.btn--ghost:hover { background: rgba(255, 255, 255, .1); }
.btn--line { border-color: var(--royal); color: var(--royal); background: var(--white); }
.btn--wa { background: var(--wa); color: var(--white); }
.btn--block { width: 100%; }
.btn[disabled] { opacity: .7; cursor: wait; }
.contact-btns { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.25rem 0; }

/* ---------- Header ---------- */
.site-header { position: sticky; top: 0; z-index: 50; box-shadow: 0 2px 12px -6px rgba(4, 31, 94, .3); }
.admin-bar .site-header { top: 32px; }
.topbar { background: var(--royal); color: var(--white); }
.topbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 78px; }
.topbar__right { display: flex; align-items: center; gap: 1.5rem; }
.topbar__callback { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.25; padding-right: 1.5rem; border-right: 1px solid rgba(255, 255, 255, .35); }
.topbar__callback a { color: var(--gold); font-weight: 700; text-decoration: none; font-size: 1.05rem; }
.topbar__callback span { font-size: .82rem; font-weight: 600; color: #dfe6fb; }
.topbar__phone { display: inline-flex; align-items: center; gap: .55rem; color: var(--white); font-weight: 800; font-size: 1.6rem; text-decoration: none; letter-spacing: .01em; }
.topbar__phone .icon { width: 1.4rem; height: 1.4rem; }

/* Wordmark with a gold coin monogram */
.wordmark { display: inline-flex; align-items: center; gap: .65rem; text-decoration: none; }
.wordmark::before {
	content: "LKD"; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; flex: none;
	font: 800 .92rem/1 var(--font); color: var(--royal-deep); letter-spacing: -.02em;
	background: radial-gradient(circle at 35% 30%, #ffe590, var(--gold) 55%, var(--gold-deep));
	box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .45), 0 2px 6px rgba(0, 0, 0, .25);
}
.wordmark__text { display: flex; flex-direction: column; line-height: 1; }
.wordmark__name { font: 800 1.45rem/1 var(--font); color: var(--gold); letter-spacing: .01em; }
.wordmark__by { font: 600 .78rem/1.3 var(--font); color: #dfe6fb; margin-top: .2rem; }
.site-footer .wordmark__by { color: #b9c3e6; }
.custom-logo { max-height: 58px; width: auto; display: block; }

.navbar { background: var(--white); border-bottom: 1px solid var(--line); }
.navbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; min-height: 54px; }
.site-nav .menu { display: flex; gap: clamp(1rem, 2.6vw, 2.4rem); list-style: none; margin: 0; padding: 0; }
.site-nav .menu > li { position: relative; }
.site-nav .menu a { display: flex; align-items: center; gap: .3rem; padding: .9rem 0; white-space: nowrap; color: #3b4254; text-decoration: none; font-weight: 500; font-size: 1.05rem; }
.site-nav .menu > .menu-item-has-children > a::after { content: ""; width: 7px; height: 7px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg) translateY(-3px); margin-left: .35rem; }
.site-nav .menu a:hover, .site-nav .current-menu-item > a { color: var(--blue); }
.site-nav .sub-menu {
	position: absolute; top: 100%; left: -1rem; min-width: 260px;
	list-style: none; margin: 0; padding: .5rem 0;
	background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow);
	visibility: hidden; opacity: 0; transform: translateY(6px); transition: opacity .15s, transform .15s, visibility .15s;
}
.site-nav .menu > li:hover > .sub-menu, .site-nav .menu > li:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: none; }
.site-nav .sub-menu a { padding: .5rem 1.1rem; font-size: 1rem; }
.navbar__tools { display: flex; align-items: center; gap: 1rem; white-space: nowrap; }
.navbar__tools a { display: inline-flex; align-items: center; gap: .4rem; color: var(--blue); font-weight: 700; text-decoration: none; }
.navbar__tools .icon { width: 1.3rem; height: 1.3rem; }
.navbar__sep { width: 2px; height: 20px; background: var(--blue); opacity: .6; }
.nav-toggle { display: none; }

@media (max-width: 1080px) {
	.topbar__callback { display: none; }
	.topbar__phone { font-size: 1.25rem; }
	.navbar__tools a:last-child, .navbar__sep { display: none; }
}
@media (max-width: 900px) {
	:root { --header-h: 68px; }
	.topbar__inner { min-height: 66px; }
	.topbar__phone span { display: none; }
	.topbar__phone, .nav-toggle {
		display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px;
		border: 1.5px solid rgba(255, 255, 255, .45); border-radius: 10px; background: transparent; color: var(--white); cursor: pointer;
	}
	.topbar__right { gap: .6rem; }
	.navbar { display: none; max-height: calc(100vh - 66px); overflow-y: auto; }
	.navbar.is-open { display: block; }
	.navbar__inner { flex-direction: column; align-items: stretch; gap: 0; padding-bottom: 1.25rem; }
	.site-nav .menu { flex-direction: column; gap: 0; }
	.site-nav .menu a { padding: .8rem 0; border-bottom: 1px solid var(--tint); }
	.site-nav .menu > .menu-item-has-children > a::after { display: none; }
	.site-nav .sub-menu { position: static; visibility: visible; opacity: 1; transform: none; box-shadow: none; border: 0; padding: 0 0 0 1rem; min-width: 0; }
	.navbar__tools { flex-direction: column; align-items: flex-start; gap: .8rem; padding-top: 1rem; }
	.navbar__tools a:last-child { display: inline-flex; }
	.wordmark::before { width: 40px; height: 40px; font-size: .8rem; }
	.wordmark__name { font-size: 1.2rem; }
}
@media (max-width: 782px) { .admin-bar .site-header { top: 0; } }

/* ---------- Hero ---------- */
.hero {
	position: relative; overflow: hidden; color: var(--white);
	background:
		radial-gradient(circle at 8% 110%, transparent 0 150px, rgba(255, 255, 255, .05) 151px 152px, transparent 153px 230px, rgba(255, 255, 255, .05) 231px 232px, transparent 233px),
		radial-gradient(1200px 500px at 80% -10%, #1453c7 0%, transparent 60%),
		linear-gradient(135deg, var(--royal) 0%, var(--royal-deep) 100%);
	padding: clamp(2rem, 5vw, 4rem) 0;
}
.hero__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: center; }
.hero__kicker { font-weight: 700; color: var(--gold); margin-bottom: .6rem; font-size: 1.05rem; }
.hero__title { color: var(--white); font-size: clamp(2.5rem, 6vw, 4.2rem); font-weight: 800; line-height: 1.02; letter-spacing: -.015em; margin-bottom: .4em; text-wrap: balance; }
.hero__title--lp { font-size: clamp(2.1rem, 4.6vw, 3.3rem); line-height: 1.08; }
.hero__sub { font-size: 1.2rem; color: #dfe6fb; max-width: 34em; }
.hero__steps { font-weight: 800; font-size: 1.25rem; color: var(--gold); letter-spacing: .02em; }
.hero__steps span { color: rgba(255, 255, 255, .5); margin: 0 .3rem; }
.hero__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.hero__notice { display: flex; gap: .6rem; align-items: flex-start; margin: 1.5rem 0 0; padding: .85rem 1rem; background: rgba(255, 255, 255, .09); border-radius: 10px; font-size: .95rem; }
.hero__notice .icon { color: var(--gold); margin-top: .15rem; }

.badges { list-style: none; margin: 1.6rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .75rem; }
.badges li { display: flex; align-items: center; gap: .55rem; padding: .55rem .9rem .55rem .6rem; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .18); border-radius: 999px; font-weight: 600; }
.badges .icon { width: 1.7rem; height: 1.7rem; padding: .3rem; border-radius: 50%; background: var(--gold); color: var(--royal-deep); }

/* Rating badges */
.ratings { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 1.25rem; }
.rating { display: inline-flex; align-items: center; gap: .45rem; padding: .35rem .8rem; border-radius: 8px; text-decoration: none; font-size: .9rem; font-weight: 600; }
.rating strong { font-size: 1.05rem; }
.rating .stars { color: var(--gold); letter-spacing: .05em; }
.ratings--hero .rating, .ratings--footer .rating { background: rgba(255, 255, 255, .1); color: var(--white); border: 1px solid rgba(255, 255, 255, .2); }
.ratings--footer { margin-top: 1rem; }
.ratings--boxed { flex-direction: column; gap: 1rem; margin-top: 1.5rem; }
.ratings--boxed .rating { flex-direction: column; align-items: flex-start; gap: .2rem; padding: 1.4rem 1.6rem; background: var(--royal); color: var(--white); border-radius: var(--radius); font-size: 1rem; }
.ratings--boxed .rating strong { font-size: 2.6rem; line-height: 1; }
.ratings--boxed .stars { font-size: 1.5rem; }

/* ---------- USP strip ---------- */
.usps { background: var(--dark); color: var(--white); }
.usps__list { list-style: none; margin: 0 auto; padding: 1rem var(--gutter); display: flex; justify-content: space-between; gap: 1rem; }
.usps__list li { display: flex; align-items: center; gap: .6rem; font-weight: 600; font-size: .98rem; }
.usps__list li + li { padding-left: 1rem; border-left: 1px solid rgba(246, 195, 61, .5); }
.usps__list .icon { width: 1.8rem; height: 1.8rem; color: var(--gold); }

/* ---------- Lead form ---------- */
.lead-form { background: var(--white); color: var(--ink); border-radius: 16px; padding: clamp(1.25rem, 3vw, 1.85rem); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .55); }
.hero .lead-form { border-top: 5px solid var(--gold); }
.lead-form__head { margin-bottom: 1rem; }
.lead-form__title { font-size: 1.5rem; margin-bottom: .15rem; }
.lead-form__note { color: var(--muted); font-size: .95rem; margin: 0; }
.lead-form__alert { background: #fdecea; color: var(--error); border-radius: 8px; padding: .7rem .9rem; font-weight: 600; }
.lead-form__safe { font-size: .85rem; color: var(--muted); margin: .9rem 0 0; text-align: center; }

.field { display: block; margin: 0 0 .9rem; border: 0; padding: 0; min-width: 0; }
.field label, .field legend { display: block; font-weight: 600; font-size: .95rem; margin-bottom: .3rem; color: var(--ink); }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 .75rem; }
.field input[type="text"], .field input[type="tel"], .field select, .field textarea {
	width: 100%; min-height: 48px; padding: .6rem .85rem;
	font: 500 1rem var(--font); color: var(--ink);
	background: var(--white); border: 1.5px solid #d3dbec; border-radius: 9px;
}
.field textarea { min-height: 96px; resize: vertical; }
.field select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--royal) 50%), linear-gradient(135deg, var(--royal) 50%, transparent 50%); background-position: calc(100% - 18px) 21px, calc(100% - 13px) 21px; background-size: 5px 5px; background-repeat: no-repeat; padding-right: 2rem; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--blue); outline: 3px solid rgba(11, 107, 217, .2); outline-offset: 0; }
.field__phone { display: flex; }
.field__phone span { display: inline-flex; align-items: center; padding: 0 .8rem; background: var(--tint); border: 1.5px solid #d3dbec; border-right: 0; border-radius: 9px 0 0 9px; font-weight: 700; color: var(--muted); }
.field__phone input { border-radius: 0 9px 9px 0 !important; }
.field__error { display: none; color: var(--error); font-size: .88rem; margin-top: .25rem; font-weight: 600; }
.field.is-invalid .field__error { display: block; }
.field.is-invalid input, .field.is-invalid select { border-color: var(--error); }
.field--choice .choice { display: flex; align-items: center; gap: .55rem; padding: .65rem .8rem; border: 1.5px solid #d3dbec; border-radius: 9px; margin-bottom: .5rem; font-weight: 500; cursor: pointer; }
.field--choice .choice:has(input:checked) { border-color: var(--blue); background: var(--blue-soft); }
.field--choice input { width: 18px; height: 18px; accent-color: var(--blue); }
.consent { display: grid; grid-template-columns: auto 1fr; gap: .55rem; align-items: start; font-size: .85rem; color: var(--muted); cursor: pointer; line-height: 1.45; }
.consent input { width: 18px; height: 18px; margin-top: .1rem; accent-color: var(--blue); }
.consent .field__error { grid-column: 2; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.embed-form { max-width: 560px; margin: 2rem 0; }
.embed-form .lead-form { border: 1px solid var(--line); box-shadow: var(--shadow); }

/* ---------- Sections ---------- */
.section { padding: clamp(3rem, 7vw, 5.25rem) 0; }
.section--tint { background: var(--tint); }
.section--slim { padding: 2.25rem 0; }
.section:not(.section--tint):not(.band) + .section:not(.section--tint):not(.band),
.section--tint + .section--tint { padding-top: 0; }
.section__title { font-size: clamp(1.85rem, 3.8vw, 2.6rem); font-weight: 700; }
.section__title--sm { font-size: 1.45rem; margin-bottom: 1rem; }
.section__lead { font-size: 1.12rem; color: var(--muted); max-width: 44em; }
.section__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
.pill { display: inline-block; margin-bottom: 1rem; padding: .35rem 1rem; background: var(--blue-soft); color: var(--royal); border-radius: 999px; font-weight: 700; font-size: .9rem; }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.split--top { align-items: start; }
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.25rem, 3vw, 2rem); }
.center-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; margin-top: 2.5rem; }

/* About: stats + highlights */
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin: 2.5rem 0 1.25rem; }
.stats div { text-align: center; padding: 1.5rem 1rem; border-radius: var(--radius); background: var(--royal); color: var(--white); }
.stats dt { font-size: 2.6rem; font-weight: 800; line-height: 1; color: var(--gold); }
.stats dd { margin: .4rem 0 0; font-weight: 600; color: #dfe6fb; }
.highlights { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.highlights li { padding: 1.25rem 1.3rem; background: var(--tint); border: 1px solid var(--line); border-radius: var(--radius); }
.highlights h3 { font-size: 1.1rem; margin-bottom: .35rem; }
.highlights p { margin: 0; color: var(--muted); font-size: .97rem; }

/* Bank logos marquee */
.logos { margin: 1rem 0 2.5rem; }
.logos__title { text-align: center; font-size: clamp(1.3rem, 2.6vw, 1.7rem); margin-bottom: 1.25rem; }
.logos__viewport { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.logos__track { list-style: none; margin: 0; padding: 0; display: flex; gap: 2.5rem; width: max-content; animation: marquee 40s linear infinite; }
.logos__track:hover { animation-play-state: paused; }
.logos__track li { flex: none; display: grid; place-items: center; height: 72px; padding: .6rem 1.2rem; background: var(--white); border-radius: 10px; box-shadow: 0 6px 18px -12px rgba(4, 31, 94, .35); }
.logos__track img { max-height: 52px; width: auto; max-width: 180px; object-fit: contain; }
@keyframes marquee { to { transform: translateX(calc(-50% - 1.25rem)); } }

/* Product tiles */
.tiles { list-style: none; margin: 1.5rem 0 2.5rem; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.tile {
	position: relative; display: flex; flex-direction: column; height: 100%; min-height: 250px; padding: 1.6rem 1.5rem 1.4rem;
	color: var(--white); text-decoration: none; overflow: hidden; background: var(--blue); border-radius: 4px;
}
.tiles li:nth-child(even) .tile { background: var(--royal); }
.tile::before { content: ""; position: absolute; top: -70px; left: -70px; width: 230px; height: 230px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .1); box-shadow: 0 0 0 40px rgba(255, 255, 255, .03), 0 0 0 80px rgba(255, 255, 255, .02); }
.tile__icon { position: relative; display: grid; place-items: center; width: 62px; height: 62px; border-radius: 50%; background: var(--white); margin-bottom: 1.25rem; }
.tile__icon .picon { width: 34px; height: 34px; fill: var(--royal); }
.tiles li:nth-child(3n+1) .picon { fill: var(--gold-deep); }
.tile__name { position: relative; font-size: 1.45rem; font-weight: 700; line-height: 1.2; margin-bottom: .5rem; }
.tile__desc { position: relative; color: #e3eafc; font-size: 1rem; flex: 1; }
.tile__go { position: relative; font-size: 1.6rem; line-height: 1; margin-top: 1rem; transition: transform .15s; }
.tile:hover .tile__go, .tile:focus-visible .tile__go { transform: translateX(6px); }
.tile:hover { filter: brightness(1.06); }

/* Reviews */
.reviews__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.6fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.reviews__rail { min-width: 0; }
.reviews__list { list-style: none; margin: 0; padding: 0 0 .5rem; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, calc(50% - 10px)); gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.reviews__list::-webkit-scrollbar { display: none; }
.review { scroll-snap-align: start; display: flex; flex-direction: column; padding: 1.75rem 1.75rem 1.5rem; background: var(--tint); border-radius: var(--radius); position: relative; }
.section--tint .review { background: var(--white); }
.review::after { content: "“"; position: absolute; top: 1.2rem; right: 1.4rem; width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; background: var(--blue); color: var(--white); font: 800 2.4rem/1 Georgia, serif; padding-top: .6rem; }
.review__stars { color: var(--gold-deep); font-size: 1.15rem; letter-spacing: .05em; margin-bottom: 1rem; }
.review__stars span { color: var(--muted); font-size: .9rem; margin-left: .5rem; letter-spacing: 0; }
.review__text { margin: 0 0 1.25rem; font-size: 1.04rem; line-height: 1.6; flex: 1; }
.review__who { margin: 0; display: flex; flex-direction: column; }
.review__who strong { color: var(--ink); font-size: 1.08rem; }
.review__who span { color: var(--muted); font-size: .92rem; }
.rail-nav { display: flex; gap: .6rem; justify-content: flex-end; margin-top: 1rem; }
.rail-nav__btn { width: 48px; height: 48px; border-radius: 50%; border: 0; background: var(--blue); color: var(--white); font-size: 1.8rem; line-height: 1; cursor: pointer; padding-bottom: 4px; }
.rail-nav__btn:hover { background: var(--royal); }

/* Credit banner */
.credit { background: linear-gradient(120deg, var(--royal) 0%, #0b46b8 100%); color: var(--white); overflow: hidden; }
.credit__inner { display: grid; grid-template-columns: 1.3fr .7fr; gap: 2rem; align-items: center; padding-top: clamp(2.5rem, 6vw, 4rem); padding-bottom: clamp(2.5rem, 6vw, 4rem); }
.credit__title { color: var(--white); font-size: clamp(1.9rem, 4vw, 2.8rem); font-weight: 700; }
.credit p { color: #dfe6fb; font-size: 1.1rem; max-width: 36em; }
.credit__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.gauge { position: relative; width: min(300px, 100%); aspect-ratio: 2 / 1.15; margin: 0 auto; background: var(--white); border-radius: 18px; padding: 1.4rem 1.4rem 1rem; box-shadow: 0 30px 50px -30px rgba(0, 0, 0, .6); }
.gauge__arc { width: 100%; aspect-ratio: 2 / 1; border-radius: 999px 999px 0 0; background: conic-gradient(from 270deg at 50% 100%, #e5484d 0 36deg, #f59e0b 36deg 72deg, #f6c33d 72deg 108deg, #84cc16 108deg 144deg, #16a34a 144deg 180deg, transparent 180deg); -webkit-mask: radial-gradient(circle at 50% 100%, transparent 58%, #000 59%); mask: radial-gradient(circle at 50% 100%, transparent 58%, #000 59%); }
.gauge__label { position: absolute; left: 0; right: 0; bottom: 1rem; text-align: center; color: var(--muted); font-size: .85rem; font-weight: 600; line-height: 1.3; }
.gauge__label strong { color: var(--blue); font-size: 1.45rem; }

/* EMI calculator */
.emi { margin-top: 1.5rem; }
.emi__tabs { display: flex; justify-content: center; flex-wrap: wrap; gap: .25rem 1.5rem; border-bottom: 1px solid var(--line); margin-bottom: 2rem; }
.emi__tab { background: none; border: 0; border-bottom: 3px solid transparent; padding: .75rem .25rem; font: 600 1.05rem var(--font); color: var(--muted); cursor: pointer; margin-bottom: -1px; }
.emi__tab[aria-selected="true"] { color: var(--blue); border-bottom-color: var(--blue); }
.emi__body { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.emi__row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: .6rem 1rem; margin-bottom: 1.6rem; }
.emi__row label { font-weight: 600; font-size: 1.05rem; }
.emi__box { display: flex; align-items: center; gap: .35rem; width: 210px; padding: .45rem .8rem; background: var(--blue-soft); border-radius: 8px; color: var(--royal); font-weight: 700; }
.emi__box input { width: 100%; min-width: 0; border: 0; background: transparent; font: 800 1.15rem var(--font); color: var(--blue); text-align: right; }
.emi__box input:focus { outline: none; }
.emi__box:focus-within { outline: 2px solid var(--blue); }
.emi__row input[type="range"] { grid-column: 1 / -1; width: 100%; appearance: none; -webkit-appearance: none; height: 8px; border-radius: 99px; background: linear-gradient(90deg, var(--blue) var(--fill, 50%), #d6def0 var(--fill, 50%)); cursor: pointer; }
.emi__row input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 24px; height: 24px; border-radius: 50%; background: var(--white); border: 6px solid var(--blue); box-shadow: 0 2px 6px rgba(0, 0, 0, .25); }
.emi__row input[type="range"]::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--white); border: 6px solid var(--blue); }
.emi__note { font-size: .88rem; color: var(--muted); margin: 0; }
.emi__result { background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: 1.75rem; box-shadow: var(--shadow); }
.emi__donut { --p: 180deg; width: 220px; height: 220px; margin: 0 auto 1.5rem; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--blue) 0 var(--p), var(--gold) var(--p) 360deg); }
.emi__donut > div { width: 150px; height: 150px; border-radius: 50%; background: var(--white); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.emi__donut span { font-size: .88rem; color: var(--muted); font-weight: 600; }
.emi__donut strong { font-size: 1.45rem; font-weight: 800; color: var(--royal); }
.emi__figures { margin: 0 0 1.25rem; }
.emi__figures div { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid var(--line); }
.emi__figures dt { display: flex; align-items: center; gap: .5rem; color: var(--muted); font-weight: 500; }
.emi__figures dd { margin: 0; font-weight: 700; }
.emi__total dt, .emi__total dd { color: var(--royal); font-weight: 800; }
.dot { width: 12px; height: 12px; border-radius: 3px; display: inline-block; }
.dot--p { background: var(--blue); }
.dot--i { background: var(--gold); }

/* Steps */
.steps { list-style: none; counter-reset: step; margin: 2rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(1rem, 3vw, 2rem); }
.steps li { counter-increment: step; position: relative; padding-top: 3.6rem; }
.steps li::before { content: counter(step); position: absolute; top: 0; left: 0; width: 2.8rem; height: 2.8rem; display: grid; place-items: center; font-size: 1.3rem; font-weight: 800; color: var(--royal-deep); background: var(--gold); border-radius: 50%; }
.steps li:not(:last-child)::after { content: ""; position: absolute; top: 1.4rem; left: 3.4rem; right: -.5rem; border-top: 2px dashed rgba(6, 46, 134, .25); }
.steps p { color: var(--muted); margin: 0; }

/* Bank tiers */
.tiers { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.tiers li { padding: 1rem 1.25rem; border-left: 5px solid var(--royal); background: var(--tint); border-radius: 0 var(--radius) var(--radius) 0; }
.tiers li:nth-child(2) { border-left-color: var(--blue); margin-left: 1.25rem; }
.tiers li:nth-child(3) { border-left-color: var(--gold-deep); margin-left: 2.5rem; }
.tiers p { margin: 0; color: var(--muted); }
.tiers h3 { margin-bottom: .2rem; }

/* Navy band */
.band { background: var(--royal-deep); color: #dfe6fb; }
.band .section__title { color: var(--white); }
.band .section__lead { color: #c4cdea; }
.band__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; }
.band__list li { padding: 1.25rem 1.4rem; background: rgba(255, 255, 255, .06); border-left: 4px solid var(--gold); border-radius: 0 10px 10px 0; }
.band__list h3 { color: var(--gold); margin-bottom: .25rem; }
.band__list p { margin: 0; }

/* Landing: types, why, panels */
.crumb { background: var(--tint); border-bottom: 1px solid var(--line); }
.crumb__title { margin: 0; padding: .7rem 0; color: var(--blue); font-weight: 700; font-size: 1.35rem; }
.types { list-style: none; margin: 2rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1.25rem; }
.types li { padding: 1.5rem; background: var(--white); border: 1px solid var(--line); border-top: 4px solid var(--blue); border-radius: 0 0 var(--radius) var(--radius); box-shadow: 0 12px 28px -24px rgba(4, 31, 94, .5); }
.types li:nth-child(even) { border-top-color: var(--gold); }
.types p { margin: 0; color: var(--muted); }
.why { list-style: none; margin: 2rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.why li { padding: 1.5rem; background: var(--white); border-radius: var(--radius); border: 1px solid var(--line); }
.section--tint .why li { border-color: transparent; }
.why__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--blue-soft); color: var(--blue); margin-bottom: 1rem; }
.why__icon .icon { width: 1.6rem; height: 1.6rem; }
.why h3 { font-size: 1.12rem; margin-bottom: .35rem; }
.why p { margin: 0; color: var(--muted); font-size: .98rem; }
.panel { padding: clamp(1.4rem, 3vw, 2rem); border-radius: var(--radius); background: var(--tint); }

/* Lists */
.ticks, .docs { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.ticks li, .docs li { display: flex; gap: .65rem; align-items: flex-start; }
.ticks .icon, .docs .icon { width: 1.45rem; height: 1.45rem; padding: .22rem; margin-top: .05rem; background: var(--blue); color: var(--white); border-radius: 50%; }
.docs .icon { background: var(--gold); color: var(--royal-deep); }

/* FAQ */
.faq { margin-top: 1.5rem; display: grid; gap: .75rem; }
.faq details { background: var(--white); border: 1px solid var(--line); border-radius: 10px; }
.faq summary { list-style: none; cursor: pointer; position: relative; padding: 1.05rem 3rem 1.05rem 1.25rem; font-weight: 700; font-size: 1.08rem; color: var(--royal); }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-size: 1.3rem; line-height: 1; }
.faq details[open] summary::after { content: "−"; }
.faq details p { margin: 0; padding: 0 1.25rem 1.15rem; color: var(--muted); }

/* Closing CTA */
.closing { background: var(--royal); color: var(--white); }
.closing__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; flex-wrap: wrap; padding-top: 2.75rem; padding-bottom: 2.75rem; }
.closing__title { color: var(--white); font-size: clamp(1.6rem, 3.4vw, 2.2rem); margin-bottom: .25rem; }
.closing p { margin: 0; color: #dfe6fb; font-size: 1.08rem; }
.closing__actions { display: flex; flex-wrap: wrap; gap: .75rem; }

/* Apply online band */
.apply { background: var(--tint); padding: clamp(3rem, 7vw, 5rem) 0; border-top: 1px solid var(--line); }
.apply__inner { display: grid; grid-template-columns: 1fr minmax(0, 460px); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.apply .lead-form { border: 1px solid var(--line); box-shadow: var(--shadow); }

/* Blog */
.posts { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.post-card { display: flex; flex-direction: column; height: 100%; background: var(--tint); border-radius: var(--radius); overflow: hidden; text-decoration: none; color: var(--ink); }
.post-card__img { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; background: linear-gradient(135deg, var(--royal), var(--blue)); overflow: hidden; }
.post-card__img img { width: 100%; height: 100%; object-fit: cover; }
.post-card__img .picon { width: 64px; height: 64px; fill: rgba(255, 255, 255, .5); }
.post-card__date { position: absolute; top: 0; left: 1.25rem; display: flex; flex-direction: column; align-items: center; padding: .45rem .7rem; background: var(--blue); color: var(--white); font-weight: 700; font-size: .9rem; line-height: 1.1; }
.post-card__date strong { font-size: 1.45rem; }
.post-card__body { display: flex; flex-direction: column; gap: .5rem; padding: 1.25rem 1.35rem 1.5rem; }
.post-card__title { font-size: 1.2rem; font-weight: 700; line-height: 1.3; color: var(--ink); }
.post-card:hover .post-card__title { color: var(--blue); }
.post-card__excerpt { color: var(--muted); font-size: .97rem; }
.post-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.post-aside { position: sticky; top: calc(var(--header-h) + 1rem); }
.post-aside .lead-form { border: 1px solid var(--line); }
.post-hero { border-radius: var(--radius); margin-bottom: 1.5rem; }
.pagination .nav-links { display: flex; gap: .5rem; margin-top: 2rem; }
.pagination .page-numbers { padding: .5rem .9rem; border-radius: 8px; background: var(--tint); text-decoration: none; font-weight: 700; }
.pagination .current { background: var(--blue); color: var(--white); }

/* Page head (inner pages) */
.page-head { background: linear-gradient(135deg, var(--royal), var(--royal-deep)); padding: clamp(2.25rem, 6vw, 4rem) 0; }
.page-head__title { color: var(--white); font-size: clamp(2.1rem, 5vw, 3.2rem); font-weight: 800; margin: 0 0 .3em; }
.page-head__sub { color: #dfe6fb; font-size: 1.15rem; max-width: 42em; margin: 0; }
.page-head__meta { color: var(--gold); font-weight: 700; margin-bottom: .5rem; }
.page-head .btn { margin-top: 1.5rem; }

.prose { font-size: 1.08rem; }
.prose h2 { font-size: 1.6rem; margin-top: 2rem; }
.prose p, .prose ul { max-width: 46em; }
.prose li { margin-bottom: .4rem; }
.formula { font-weight: 700; font-size: 1.2rem; color: var(--royal); background: var(--white); border-left: 4px solid var(--gold); padding: 1rem 1.25rem; border-radius: 0 8px 8px 0; }
.officer { margin: 1rem 0 1.5rem; padding: 1.25rem 1.5rem; background: var(--tint); border-radius: var(--radius); max-width: 560px; }
.officer div { display: grid; grid-template-columns: 90px 1fr; gap: 1rem; padding: .35rem 0; }
.officer dt { font-weight: 700; color: var(--muted); }
.officer dd { margin: 0; }

/* Branches */
.branches { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem 1rem; }
.branches li { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; padding: .9rem 1rem; background: var(--tint); border-radius: 10px; }
.branches .icon { color: var(--blue); }
.branches__city { font-weight: 700; }
.branches__tag { font-size: .8rem; font-weight: 700; color: var(--royal-deep); background: var(--gold); border-radius: 4px; padding: .05rem .45rem; }

/* Contact */
.contact-list { margin: 1rem 0; }
.contact-list div { display: grid; grid-template-columns: 120px 1fr; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--line); }
.contact-list dt { font-weight: 700; color: var(--muted); }
.contact-list dd { margin: 0; }
.map { width: 100%; height: 280px; border: 0; border-radius: var(--radius); margin-top: 1rem; }

/* Thank you */
.thanks { padding: clamp(2rem, 6vw, 4rem) 0 4rem; }
.thanks__board { background: linear-gradient(135deg, var(--royal), var(--royal-deep)); border-radius: 16px; padding: clamp(1.75rem, 5vw, 3rem); margin-bottom: 2.5rem; border-top: 5px solid var(--gold); }
.thanks__title { color: var(--white); font-size: clamp(2.2rem, 6vw, 3.4rem); font-weight: 800; }
.thanks__sub { color: #dfe6fb; font-size: 1.15rem; margin: 0; max-width: 36em; }
.thanks__warn { display: flex; gap: .6rem; margin: 1.75rem 0 0; padding: 1rem 1.1rem; background: var(--tint); border-radius: var(--radius); font-size: .97rem; }
.thanks__warn .icon { color: var(--blue); margin-top: .15rem; }

/* ---------- Footer ---------- */
.site-footer { background: var(--royal); color: #c9d2ef; padding: 3.75rem 0 2rem; font-size: .97rem; }
.site-footer a { color: var(--white); }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.3fr; gap: 2rem; padding-bottom: 2.5rem; margin-bottom: 1.75rem; border-bottom: 1px solid rgba(255, 255, 255, .15); }
.footer-grid ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.footer-grid a { text-decoration: none; }
.footer-grid a:hover { color: var(--gold); }
.footer-title { font-size: 1.2rem; color: var(--white); margin-bottom: 1rem; }
.footer-tagline { font-size: 1.25rem; font-weight: 700; color: var(--gold); margin: 1.1rem 0 .4rem; }
.footer-contact li { line-height: 1.5; }
.footer-social { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: 1rem; }
.footer-legal { font-size: .87rem; line-height: 1.55; color: #b9c3e6; }
.footer-legal p { max-width: 75em; }
.footer-links { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin-top: 1rem; }
.footer-links a { text-decoration: none; }
.footer-links a:hover { text-decoration: underline; }
.is-focus .site-footer { padding-top: 2rem; }

/* ---------- Mobile action bar ---------- */
.action-bar { display: none; }
@media (max-width: 860px) {
	body { padding-bottom: 70px; }
	.action-bar {
		display: flex; position: fixed; z-index: 60; left: 0; right: 0; bottom: 0;
		background: var(--white); border-top: 1px solid var(--line); box-shadow: 0 -8px 24px -16px rgba(4, 31, 94, .5);
		padding: 8px max(10px, env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom)); gap: 8px;
	}
	.action-bar a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-width: 64px; min-height: 50px; padding: 0 .5rem; border-radius: 10px; font-size: .78rem; font-weight: 700; color: var(--royal); text-decoration: none; }
	.action-bar a .icon { width: 1.35rem; height: 1.35rem; }
	.action-bar a[href^="https://wa.me"] { color: var(--wa); }
	.action-bar .action-bar__main { flex: 1; flex-direction: row; background: var(--gold); color: var(--royal-deep); font-size: 1.02rem; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1080px) {
	.tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.usps__list { flex-wrap: wrap; justify-content: center; gap: .75rem 1.5rem; }
	.usps__list li + li { border-left: 0; padding-left: 0; }
	.why { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.highlights { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 980px) {
	.hero__grid, .split, .two-col, .reviews__grid, .credit__inner, .emi__body, .apply__inner, .post-layout { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: 1fr 1fr; }
	.steps { grid-template-columns: 1fr 1fr; }
	.steps li::after { display: none; }
	.branches, .posts { grid-template-columns: 1fr 1fr; }
	.tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.stats { grid-template-columns: repeat(2, 1fr); }
	.post-aside { position: static; }
	.ratings--boxed { flex-direction: row; flex-wrap: wrap; }
	.gauge { display: none; }
}
@media (max-width: 640px) {
	body { font-size: 1rem; }
	.hero { padding-top: 1.5rem; }
	.hero__sub { font-size: 1.05rem; }
	.hero__steps { font-size: 1.05rem; }
	.badges { gap: .5rem; }
	.badges li { font-size: .92rem; }
	.usps__list { justify-content: flex-start; }
	.usps__list li { width: 100%; }
	.tiles, .branches, .posts, .why, .highlights { grid-template-columns: 1fr; }
	.tile { min-height: 0; }
	.steps { grid-template-columns: 1fr; gap: 1.5rem; }
	.steps li { padding: 0 0 0 3.8rem; min-height: 2.8rem; }
	.field-row { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: 1fr; }
	.tiers li:nth-child(2) { margin-left: .75rem; }
	.tiers li:nth-child(3) { margin-left: 1.5rem; }
	.stats dt { font-size: 2.1rem; }
	.reviews__list { grid-auto-columns: 86%; }
	.emi__row { grid-template-columns: 1fr; }
	.emi__box { width: 100%; }
	.emi__donut { width: 190px; height: 190px; }
	.emi__donut > div { width: 130px; height: 130px; }
	.contact-list div { grid-template-columns: 1fr; gap: .1rem; }
	.closing__actions, .closing__actions .btn { width: 100%; }
}

/* =====================================================================
 * v3: two-step form, welcome back, branch card, tools
 * ================================================================== */

/* Form layout without steps: consent and button always last */
.lead-form:not(.is-stepped) { display: flex; flex-direction: column; }
.lead-form:not(.is-stepped) .form-step { display: contents; }
.lead-form:not(.is-stepped) .consent { order: 1; }
.lead-form:not(.is-stepped) [type="submit"] { order: 2; }
.lead-form:not(.is-stepped) .lead-form__safe { order: 3; }
.lead-form:not(.is-stepped) .form-next, .lead-form:not(.is-stepped) .form-back, .lead-form:not(.is-stepped) .lead-form__progress, .lead-form:not(.is-stepped) .form-step__hello { display: none; }

/* Two steps */
.lead-form.is-stepped [data-step="2"] { display: none; }
.lead-form.is-stepped.on-step-2 [data-step="1"] { display: none; }
.lead-form.is-stepped.on-step-2 [data-step="2"] { display: block; animation: stepIn .25s ease-out; }
@keyframes stepIn { from { opacity: 0; transform: translateX(12px); } to { opacity: 1; transform: none; } }
.lead-form__progress { display: flex; align-items: center; gap: .6rem; margin: 0 0 .75rem; font-size: .82rem; font-weight: 700; color: var(--blue); }
.lead-form__bar { flex: 1; height: 6px; background: var(--blue-soft); border-radius: 99px; overflow: hidden; }
.lead-form__bar i { display: block; height: 100%; width: 50%; background: var(--blue); border-radius: 99px; transition: width .3s; }
.lead-form.on-step-2 .lead-form__bar i { width: 100%; }
.form-step__hello { margin: 0 0 1rem; padding: .7rem .9rem; background: var(--blue-soft); border-radius: 9px; color: var(--royal); font-weight: 600; font-size: .95rem; }
.form-back { display: block; margin: .75rem auto 0; background: none; border: 0; color: var(--muted); font: 600 .95rem var(--font); text-decoration: underline; cursor: pointer; padding: .3rem; }
.form-next { margin-top: .25rem; }

/* Welcome back */
.welcome { margin-bottom: 1.25rem; padding: 1rem 1.15rem; border-radius: 12px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(246, 195, 61, .55); color: var(--white); }
.welcome p { margin: 0 0 .6rem; }
.welcome__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 !important; }
.welcome__actions .btn { min-height: 42px; padding: .5em 1.1em; font-size: .95rem; }
.welcome__clear { margin-top: .6rem; background: none; border: 0; padding: 0; color: #c9d2ef; font: 500 .85rem var(--font); text-decoration: underline; cursor: pointer; }

/* Branch card */
.branch-card { margin-top: 1.5rem; padding: 1.1rem 1.25rem; border-radius: 12px; max-width: 34rem; }
.branch-card--dark { background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .2); color: #e6ebfb; }
.branch-card p { margin: 0; }
.branch-card__title { display: flex; gap: .5rem; align-items: center; font-weight: 700; color: var(--white); font-size: 1.05rem; }
.branch-card__title .icon { color: var(--gold); }
.branch-card__title em { font-style: normal; font-size: .75rem; background: var(--gold); color: var(--royal-deep); padding: .05rem .45rem; border-radius: 4px; margin-left: .3rem; }
.branch-card__addr, .branch-card__hours { margin-top: .35rem !important; font-size: .95rem; padding-left: 1.7rem; }
.branch-card__actions { display: flex; flex-wrap: wrap; gap: .5rem 1.1rem; margin-top: .75rem !important; padding-left: 1.7rem; }
.branch-card__actions a { display: inline-flex; align-items: center; gap: .3rem; color: var(--gold); font-weight: 700; text-decoration: none; }
.branch-card__actions a:hover { text-decoration: underline; }

/* Branch list */
.branches__link { display: flex; align-items: flex-start; gap: .55rem; width: 100%; color: inherit; text-decoration: none; }
.branches__link:hover .branches__city { color: var(--blue); }
.branches__body { display: flex; flex-direction: column; gap: .15rem; }
.branches__addr { font-size: .88rem; color: var(--muted); }
.crumb__title a { color: var(--muted); text-decoration: none; font-weight: 600; }
.map--wide { height: 380px; }

/* Nudge bar under landing hero */
.nudge { background: var(--gold); }
.nudge__inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding-top: .9rem; padding-bottom: .9rem; }
.nudge p { margin: 0; color: var(--royal-deep); font-size: 1.05rem; }
.nudge .btn { min-height: 44px; padding: .55em 1.3em; }

/* ---------- Eligibility checker ---------- */
.quiz { max-width: 860px; margin: 0 auto; }
.quiz__card, .result, .result__form .lead-form { background: var(--white); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.quiz__card { padding: clamp(1.4rem, 4vw, 2.4rem); }
.quiz__progress { display: flex; align-items: center; gap: .8rem; margin: 0 0 1.5rem; font-weight: 700; color: var(--blue); font-size: .92rem; }
.quiz__bar { flex: 1; height: 8px; background: var(--blue-soft); border-radius: 99px; overflow: hidden; }
.quiz__bar i { display: block; height: 100%; width: 20%; background: linear-gradient(90deg, var(--blue), var(--royal)); border-radius: 99px; transition: width .35s; }
.quiz__step { border: 0; margin: 0; padding: 0; min-width: 0; }
.quiz__step legend { font-size: clamp(1.35rem, 3vw, 1.75rem); font-weight: 700; color: var(--royal); margin-bottom: 1.25rem; padding: 0; line-height: 1.25; }
.quiz__options { display: grid; gap: .7rem; }
.quiz__options--tiles { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.opt { position: relative; cursor: pointer; }
.opt input { position: absolute; opacity: 0; }
.opt span { display: flex; align-items: center; gap: .7rem; min-height: 56px; padding: .8rem 1.1rem; border: 2px solid var(--line); border-radius: 12px; font-weight: 600; font-size: 1.05rem; transition: border-color .15s, background .15s; }
.quiz__options--tiles .opt span { flex-direction: column; justify-content: center; text-align: center; min-height: 120px; }
.opt .picon { width: 36px; height: 36px; fill: var(--blue); }
.opt:hover span { border-color: #a9c3f2; }
.opt input:checked + span { border-color: var(--blue); background: var(--blue-soft); color: var(--royal); }
.opt input:focus-visible + span { outline: 3px solid var(--gold); outline-offset: 2px; }
.quiz__money { display: flex; align-items: center; gap: .4rem; max-width: 360px; padding: .35rem 1rem; border: 2px solid var(--line); border-radius: 12px; font-size: 1.6rem; font-weight: 800; color: var(--royal); }
.quiz__money:focus-within { border-color: var(--blue); }
.quiz__money input { flex: 1; min-width: 0; border: 0; font: 800 1.6rem var(--font); color: var(--royal); padding: .4rem 0; background: transparent; }
.quiz__money input:focus { outline: none; }
.chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.chip { padding: .5rem 1rem; border: 1.5px solid var(--line); border-radius: 99px; background: var(--white); font: 600 .95rem var(--font); color: var(--ink); cursor: pointer; }
.chip:hover { border-color: var(--blue); color: var(--blue); }
.quiz__hint { margin: 1rem 0 0; color: var(--muted); font-size: .95rem; }
.quiz__error { margin: .8rem 0 0; color: var(--error); font-weight: 600; }
.quiz__nav { display: flex; justify-content: space-between; gap: 1rem; margin-top: 2rem; }
.quiz__nav [data-quiz-next] { margin-left: auto; min-width: 160px; }

.quiz__result { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 1.5rem; align-items: start; }
.quiz__result:focus { outline: none; }
.result { padding: clamp(1.4rem, 4vw, 2.2rem); border-top: 5px solid var(--gold); }
.result__label { margin: 0 0 .3rem; font-weight: 700; color: var(--muted); }
.result__amount { margin: 0 0 1.25rem; font-size: clamp(1.8rem, 4vw, 2.4rem); font-weight: 800; color: var(--royal); line-height: 1.1; }
.result__facts { margin: 0 0 1.25rem; }
.result__facts div { display: grid; grid-template-columns: 180px 1fr; gap: 1rem; padding: .6rem 0; border-bottom: 1px solid var(--line); }
.result__facts dt { color: var(--muted); font-weight: 500; }
.result__facts dd { margin: 0; font-weight: 700; }
.result__tips { margin: 0 0 1rem; padding: 0; list-style: none; display: grid; gap: .6rem; }
.result__tips li { padding: .75rem .9rem; background: var(--blue-soft); border-radius: 10px; color: var(--royal); font-weight: 500; }
.result__note { font-size: .85rem; color: var(--muted); margin: 0; }
.result__form .lead-form { box-shadow: var(--shadow); }

/* ---------- Document checklist ---------- */
.docs-tool { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.docs-tool__pick, .docs-tool__list { background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: 1.5rem; box-shadow: var(--shadow); }
.docs-tool__pick { position: sticky; top: calc(var(--header-h) + 1rem); }
.docs-tool__progress { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; margin: 0 0 1.25rem; color: var(--muted); }
.docs-tool__progress strong { color: var(--royal); font-size: 1.15rem; }
.docs-tool__bar { flex: 1 1 140px; height: 8px; background: var(--blue-soft); border-radius: 99px; overflow: hidden; }
.docs-tool__bar i { display: block; height: 100%; width: 0; background: var(--wa); border-radius: 99px; transition: width .3s; }
.docs-group { border: 0; margin: 0 0 1.25rem; padding: 0; }
.docs-group legend { font-weight: 800; color: var(--royal); font-size: 1.1rem; margin-bottom: .6rem; padding: 0; }
.doc { display: flex; gap: .7rem; align-items: flex-start; padding: .7rem .85rem; border: 1.5px solid var(--line); border-radius: 10px; margin-bottom: .5rem; cursor: pointer; }
.doc input { width: 20px; height: 20px; margin-top: .1rem; accent-color: var(--wa); flex: none; }
.doc:has(input:checked) { background: #ecf8f0; border-color: #a6dcb8; }
.doc:has(input:checked) span { text-decoration: line-through; text-decoration-color: rgba(28, 138, 75, .5); color: var(--muted); }
.docs-tool__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }

@media (max-width: 860px) {
	.quiz__result, .docs-tool { grid-template-columns: 1fr; }
	.docs-tool__pick { position: static; }
	.result__facts div { grid-template-columns: 1fr; gap: .1rem; }
}
@media (max-width: 640px) {
	.quiz__options--tiles { grid-template-columns: 1fr 1fr; }
	.quiz__options--tiles .opt span { min-height: 100px; font-size: .95rem; }
	.quiz__nav .btn { flex: 1; }
	.nudge .btn { width: 100%; }
}

/* Print: checklist only */
@media print {
	.site-header, .site-footer, .action-bar, .page-head, .apply, .docs-tool__pick, .docs-tool__actions, .skip-link { display: none !important; }
	.section { padding: 0 !important; }
	.docs-tool { display: block; }
	.docs-tool__list { box-shadow: none; border: 0; }
}

/* =====================================================================
 * v4: lighter look. White and soft-blue surfaces; royal blue only for
 * text, icons and accents; gold for the main action; footer stays dark.
 * ================================================================== */

/* Header */
.site-header { box-shadow: 0 1px 0 var(--line), 0 6px 18px -14px rgba(4, 31, 94, .25); }
.topbar { background: var(--white); color: var(--ink); border-bottom: 1px solid var(--line); }
.topbar__callback { border-right-color: var(--line); }
.topbar__callback a { color: var(--blue); }
.topbar__callback span { color: var(--muted); }
.topbar__phone { color: var(--royal); }
.wordmark__name { color: var(--royal); }
.wordmark__by { color: var(--muted); }
.site-footer .wordmark__name { color: var(--gold); }
.site-footer .wordmark__by { color: #b9c3e6; }
@media (max-width: 900px) {
	.topbar__phone, .nav-toggle { border-color: var(--line); color: var(--royal); }
}

/* Hero */
.hero {
	color: var(--ink);
	background:
		radial-gradient(900px 420px at 88% -12%, #dfe9ff 0%, transparent 62%),
		radial-gradient(600px 300px at -5% 110%, #fff3d6 0%, transparent 60%),
		linear-gradient(180deg, #f5f8ff 0%, #ffffff 100%);
}
.hero__kicker { color: var(--blue); }
.hero__title { color: var(--royal); }
.hero__sub { color: var(--muted); }
.hero__steps { color: var(--gold-deep); }
.hero__steps span { color: #c3cbe0; }
.hero .btn--ghost, .welcome .btn--ghost, .credit .btn--ghost, .closing .btn--ghost { border-color: var(--royal); color: var(--royal); background: var(--white); }
.hero .btn--ghost:hover, .welcome .btn--ghost:hover, .credit .btn--ghost:hover, .closing .btn--ghost:hover { background: var(--tint); }
.hero__notice { background: var(--white); border: 1px solid var(--line); color: var(--ink); }
.hero__notice .icon { color: var(--blue); }
.badges li { background: var(--white); border-color: var(--line); color: var(--ink); box-shadow: 0 6px 16px -14px rgba(4, 31, 94, .5); }
.ratings--hero .rating, .ratings--footer .rating { background: var(--white); color: var(--ink); border-color: var(--line); }
.ratings--footer .rating { background: rgba(255, 255, 255, .1); color: var(--white); border-color: rgba(255, 255, 255, .2); }
.hero .lead-form { border: 1px solid var(--line); border-top: 5px solid var(--gold); box-shadow: 0 26px 50px -30px rgba(4, 31, 94, .35); }

/* Welcome and branch card on light hero */
.welcome { background: var(--white); border: 1px solid #f1d27f; color: var(--ink); box-shadow: 0 10px 24px -20px rgba(4, 31, 94, .45); }
.welcome strong { color: var(--royal); }
.welcome__clear { color: var(--muted); }
.branch-card--dark { background: var(--white); border: 1px solid var(--line); color: var(--ink); box-shadow: 0 10px 24px -22px rgba(4, 31, 94, .45); }
.branch-card__title { color: var(--royal); }
.branch-card__title .icon { color: var(--blue); }
.branch-card__actions a { color: var(--blue); }

/* Benefits strip */
.usps { background: var(--white); color: var(--ink); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.usps__list .icon { color: var(--blue); }
.usps__list li + li { border-left-color: var(--line); }

/* Stats */
.stats div { background: var(--tint); color: var(--ink); border: 1px solid var(--line); }
.stats dt { color: var(--royal); }
.stats dd { color: var(--muted); }

/* Product tiles: white cards */
.tile, .tiles li:nth-child(even) .tile { background: var(--white); color: var(--ink); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 12px 30px -26px rgba(4, 31, 94, .5); transition: border-color .15s, transform .15s, box-shadow .15s; }
.tile::before { display: none; }
.tile__icon { background: var(--blue-soft); }
.tile__icon .picon, .tiles li:nth-child(3n+1) .picon { fill: var(--blue); }
.tile__name { color: var(--royal); }
.tile__desc { color: var(--muted); }
.tile__go { color: var(--blue); }
.tile:hover { filter: none; border-color: #9fbcf0; transform: translateY(-3px); box-shadow: 0 18px 36px -26px rgba(4, 31, 94, .55); }

/* Reviews rating boxes */
.ratings--boxed .rating { background: var(--white); color: var(--ink); border: 1px solid var(--line); }
.ratings--boxed .rating strong { color: var(--royal); }

/* Credit score banner */
.credit { background: linear-gradient(120deg, #eaf1ff 0%, #f7faff 100%); color: var(--ink); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.credit__title { color: var(--royal); }
.credit p { color: var(--muted); }
.gauge { box-shadow: 0 20px 40px -28px rgba(4, 31, 94, .45); border: 1px solid var(--line); }

/* Partner band: warm, light */
.band { background: #fff8e6; color: var(--ink); }
.band .section__title { color: var(--royal); }
.band .section__lead { color: var(--muted); }
.band__list li { background: var(--white); box-shadow: 0 8px 20px -18px rgba(4, 31, 94, .4); }
.band__list h3 { color: var(--royal); }
.band__list p { color: var(--muted); }

/* Closing CTA on landing pages */
.closing { background: var(--blue-soft); color: var(--ink); }
.closing__title { color: var(--royal); }
.closing p { color: var(--muted); }

/* Inner page heads */
.page-head { background: linear-gradient(180deg, #edf3ff 0%, #f8fbff 100%); border-bottom: 1px solid var(--line); }
.page-head__title { color: var(--royal); }
.page-head__sub { color: var(--muted); }
.page-head__meta { color: var(--gold-deep); }

/* Thank you */
.thanks__board { background: var(--blue-soft); border: 1px solid var(--line); border-top: 5px solid var(--gold); }
.thanks__title { color: var(--royal); }
.thanks__sub { color: var(--ink); }

/* Logos strip on white cards */
.logos__track li { border: 1px solid var(--line); box-shadow: none; }

/* Footer: one dark anchor at the bottom */
.site-footer { background: var(--royal-deep); }

/* =====================================================================
 * v4: lead-gen components
 * ================================================================== */

/* Pills (timeline, call time) */
.field--pills legend { margin-bottom: .45rem; }
.pills { display: flex; flex-wrap: wrap; gap: .45rem; }
.pill-opt { position: relative; cursor: pointer; }
.pill-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pill-opt span { display: inline-flex; align-items: center; min-height: 40px; padding: .4rem .9rem; border: 1.5px solid #d3dbec; border-radius: 99px; font-weight: 600; font-size: .92rem; color: var(--ink); background: var(--white); transition: border-color .12s, background .12s; }
.pill-opt:hover span { border-color: #9fbcf0; }
.pill-opt input:checked + span { border-color: var(--blue); background: var(--blue-soft); color: var(--royal); }
.pill-opt input:focus-visible + span { outline: 3px solid var(--gold); outline-offset: 2px; }
.field--pills.is-invalid .pill-opt span { border-color: var(--error); }

/* OTP step */
.lead-form.on-otp [data-step="1"] { display: none; }
.form-otp { animation: stepIn .25s ease-out; }
.form-otp__msg { margin: 0 0 1rem; padding: .7rem .9rem; background: var(--blue-soft); border-radius: 9px; color: var(--royal); font-weight: 600; font-size: .95rem; }
.form-otp input[data-otp-input] { font-size: 1.5rem !important; letter-spacing: .5em; text-align: center; font-weight: 800 !important; }
.form-otp__links { display: flex; flex-wrap: wrap; justify-content: center; gap: .3rem 1.1rem; margin: .8rem 0 0; }
.form-otp__links button { background: none; border: 0; padding: .3rem; font: 600 .92rem var(--font); color: var(--blue); text-decoration: underline; cursor: pointer; }
.form-otp__links button[disabled] { color: var(--muted); text-decoration: none; cursor: default; }

/* Form safety line + assurance list under the form */
.lead-form__safe { display: flex; gap: .4rem; align-items: center; justify-content: center; }
.lead-form__safe .icon { color: var(--wa); width: 1rem; height: 1rem; }
.assure { list-style: none; margin: .9rem 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem 1.1rem; font-size: .9rem; color: var(--muted); font-weight: 600; }
.assure li { display: flex; align-items: center; gap: .35rem; }
.assure .icon { color: var(--wa); width: 1.05rem; height: 1.05rem; }

/* Trust row under hero headline */
.trust-row { list-style: none; margin: 1.25rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; color: var(--ink); font-weight: 600; font-size: .95rem; }
.trust-row li { display: flex; align-items: center; gap: .4rem; }
.trust-row .icon { color: var(--blue); }

/* Who you are dealing with */
.company { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 1.25rem; margin-top: 2rem; }
.company__facts, .promise { background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: clamp(1.25rem, 3vw, 1.75rem); }
.company__facts dl { margin: 0; }
.company__facts dl div { display: grid; grid-template-columns: 150px 1fr; gap: 1rem; padding: .6rem 0; border-bottom: 1px solid var(--line); }
.company__facts dl div:last-child { border-bottom: 0; }
.company__facts dt { color: var(--muted); font-weight: 600; }
.company__facts dd { margin: 0; font-weight: 600; }
.founder { display: flex; gap: 1rem; align-items: flex-start; margin: 1.25rem 0 0; padding: 1.1rem; background: var(--tint); border-radius: 12px; }
.founder img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; flex: none; border: 3px solid var(--white); box-shadow: 0 4px 12px -6px rgba(4, 31, 94, .4); }
.founder blockquote { margin: 0 0 .5rem; font-size: 1.02rem; color: var(--ink); }
.founder blockquote::before { content: "“"; color: var(--gold-deep); font-weight: 800; }
.founder blockquote::after { content: "”"; color: var(--gold-deep); font-weight: 800; }
.founder strong { display: block; color: var(--royal); }
.founder span { color: var(--muted); font-size: .92rem; }
.promise { border-top: 5px solid var(--wa); }
.promise h3 { margin-bottom: .9rem; }
.promise ul { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; gap: .7rem; }
.promise li { display: flex; gap: .55rem; align-items: flex-start; }
.promise li .icon { color: var(--wa); margin-top: .15rem; }
.promise p { margin: 0; font-weight: 600; }

/* Desktop sticky CTA */
.sticky-cta { position: fixed; z-index: 55; left: 0; right: 0; bottom: 0; background: var(--white); border-top: 1px solid var(--line); box-shadow: 0 -10px 30px -18px rgba(4, 31, 94, .45); animation: stickyIn .25s ease-out; }
@keyframes stickyIn { from { transform: translateY(100%); } to { transform: none; } }
.sticky-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .7rem; padding-bottom: .7rem; }
.sticky-cta p { margin: 0; display: flex; flex-direction: column; line-height: 1.3; }
.sticky-cta p strong { color: var(--royal); }
.sticky-cta p span { color: var(--muted); font-size: .92rem; }
.sticky-cta__actions { display: flex; align-items: center; gap: 1.25rem; }
.sticky-cta__tel { display: inline-flex; align-items: center; gap: .35rem; font-weight: 800; color: var(--royal); text-decoration: none; }
@media (max-width: 860px) { .sticky-cta { display: none !important; } }

/* Exit reminder */
.exit { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 1rem; background: rgba(10, 20, 50, .45); animation: fadeIn .2s ease-out; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
.exit__box { position: relative; width: min(520px, 100%); background: var(--white); border-radius: 18px; padding: 2rem 2rem 1.75rem; border-top: 6px solid var(--gold); box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .4); }
.exit__box h2 { font-size: 1.6rem; margin-bottom: .5rem; padding-right: 1.5rem; }
.exit__box p { color: var(--muted); }
.exit__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }
.exit__close { position: absolute; top: .6rem; right: .8rem; width: 40px; height: 40px; border: 0; background: none; font-size: 1.8rem; line-height: 1; color: var(--muted); cursor: pointer; border-radius: 50%; }
.exit__close:hover { background: var(--tint); }
body.has-modal { overflow: hidden; }

@media (max-width: 860px) {
	.company { grid-template-columns: 1fr; }
	.company__facts dl div { grid-template-columns: 1fr; gap: .1rem; }
}
.section__lead.center { margin-left: auto; margin-right: auto; }
.lead-form__safe { align-items: flex-start; text-align: left; justify-content: flex-start; }
.lead-form__safe .icon { margin-top: .2rem; }
.company { align-items: start; }

/* =====================================================================
 * v5: "Dukaan" identity. Shop awning, illustrations, product colours,
 * a display typeface and motion, so pages read like a brand, not a form.
 * ================================================================== */
:root {
	--navy: #0B2A6F;
	--display: "Baloo 2", "Urbanist", system-ui, sans-serif;
	--c1: #0B6BD9; --c1t: #E3EDFF;
	--c2: #E8650F; --c2t: #FFE8D4;
	--c3: #0F9D8A; --c3t: #D9F4EE;
	--c4: #6D4AFF; --c4t: #ECE7FF;
	--awning: repeating-linear-gradient(90deg, var(--navy) 0 28px, var(--gold) 28px 56px);
}

/* Display type */
h1, h2, .section__title, .hero__title, .page-head__title, .closing__title, .tile__name, .stats dt, .exit__box h2 {
	font-family: var(--display); font-weight: 800; letter-spacing: -.01em;
}
.hero__title { line-height: 1.04; }
.section__title { line-height: 1.1; }
.section__title:not(.section__title--sm)::after {
	content: ""; display: block; width: 84px; height: 12px; margin-top: .5rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 12'%3E%3Cpath d='M2 8c10-7 16-7 26 0s16 7 26 0 16-7 28 0' fill='none' stroke='%23F6C33D' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;
}
.center .section__title::after, .section__title.center::after { margin-left: auto; margin-right: auto; }

/* Shop awning under the header, site-wide */
.site-header::after {
	content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 18px; pointer-events: none;
	background: var(--awning);
	-webkit-mask: radial-gradient(circle 14px at 14px 4px, #000 13.5px, transparent 14.5px) 0 0 / 28px 18px repeat-x, linear-gradient(#000, #000) 0 0 / 100% 4px no-repeat;
	        mask: radial-gradient(circle 14px at 14px 4px, #000 13.5px, transparent 14.5px) 0 0 / 28px 18px repeat-x, linear-gradient(#000, #000) 0 0 / 100% 4px no-repeat;
	filter: drop-shadow(0 3px 2px rgba(4, 31, 94, .18));
}
.site-header { box-shadow: none; }

/* ---------- Hero ---------- */
.hero { padding-top: calc(clamp(2rem, 5vw, 3.5rem) + 14px); overflow: hidden; }
.hero--home {
	background:
		radial-gradient(520px 360px at 92% 8%, #FFE9B8 0%, transparent 65%),
		radial-gradient(700px 420px at 30% 110%, #E3EDFF 0%, transparent 65%),
		#FFFDF7;
}
.hero--lp {
	background:
		radial-gradient(640px 420px at 70% 30%, var(--tint) 0%, transparent 70%),
		radial-gradient(420px 300px at 0% 100%, #FFF3D6 0%, transparent 70%),
		#FFFFFF;
}
.hero__grid {
	grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
	grid-template-areas: "copy form" "art form";
	align-items: start; row-gap: 1.25rem;
}
.hero__copy { grid-area: copy; }
.hero__art { grid-area: art; display: grid; gap: 1rem; }
.hero__form { grid-area: form; position: relative; }
.hero__form::before { /* small sign board on the form */
	content: "Free · 1 minute"; position: absolute; z-index: 2; top: -14px; right: 22px;
	padding: .25rem .8rem; border-radius: 8px; background: var(--navy); color: var(--gold);
	font: 800 .82rem/1.4 var(--display); letter-spacing: .03em; transform: rotate(2deg);
	box-shadow: 0 6px 14px -8px rgba(4, 31, 94, .6);
}

.hero__stamp {
	display: inline-block; margin: 0 0 1rem; padding: .3rem 1rem .15rem;
	font: 700 1.15rem/1.5 var(--display); color: var(--navy);
	background: var(--gold); border-radius: 10px; transform: rotate(-2deg);
	box-shadow: 3px 3px 0 var(--navy);
}
.hero__city { display: block; color: var(--blue); font-size: .62em; margin-top: .2em; }
.hero__product {
	display: inline-flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: 0 0 1rem;
	font: 800 .95rem/1 var(--display); text-transform: uppercase; letter-spacing: .06em;
}
.hero__product span { display: inline-flex; align-items: center; gap: .5rem; padding: .5rem .9rem .4rem; border-radius: 99px; background: var(--tint); color: var(--accent, var(--blue)); }
.hero__product span::before { content: ""; width: .55rem; height: .55rem; border-radius: 50%; background: var(--accent, var(--blue)); }
.hero__product em { font-style: normal; color: var(--muted); text-transform: none; letter-spacing: 0; font-weight: 700; }
.hero--lp .hero__title { color: var(--ink); }
.hero--lp .lead-form { border-top-color: var(--accent, var(--gold)); }

/* Illustration with floating proof chips */
.art {
	position: relative; margin: 0; padding: clamp(1rem, 3vw, 1.75rem);
	display: grid; place-items: center; min-height: 240px;
	background: var(--tint, #E3EDFF);
	border-radius: 44% 56% 40% 60% / 54% 42% 58% 46%;
}
.art--dukaan { background: none; padding: 0; border-radius: 0; }
.art__img { width: 100%; max-width: 380px; max-height: 300px; object-fit: contain; }
.art--dukaan .art__img { max-width: 500px; max-height: none; }
.art--photo { padding: 0; border-radius: 24px; overflow: visible; background: none; }
.art__photo { width: 100%; height: 300px; object-fit: cover; border-radius: 24px; }
.art__chip {
	position: absolute; display: inline-flex; align-items: center; gap: .4rem; max-width: 62%;
	padding: .5rem .85rem; border-radius: 12px; background: var(--white);
	font-weight: 700; font-size: .9rem; line-height: 1.25; color: var(--ink);
	box-shadow: 0 14px 28px -16px rgba(4, 31, 94, .5); border: 1px solid var(--line);
	animation: bob 5s ease-in-out infinite;
}
.art__chip .icon { flex: none; width: 1.3rem; height: 1.3rem; padding: .2rem; border-radius: 50%; background: var(--accent, var(--wa)); fill: var(--white); color: var(--white); }
.art__chip--1 { top: 6%; left: 0; }
.art__chip--2 { top: 40%; right: 0; animation-delay: -1.6s; }
.art__chip--3 { bottom: 6%; left: 8%; animation-delay: -3.2s; }
.art--dukaan .art__chip--1 { top: auto; bottom: 8%; left: -2%; }
.art--dukaan .art__chip--2 { top: 46%; right: -3%; animation-delay: -2.4s; }
@keyframes bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }

/* ---------- Benefits strip: coloured icon chips ---------- */
.usps { background: var(--white); }
.usps__list li .icon { width: 2.4rem; height: 2.4rem; padding: .5rem; border-radius: 12px; background: var(--c1t); color: var(--c1); fill: var(--c1); }
.usps__list li:nth-child(4n+2) .icon { background: var(--c2t); color: var(--c2); fill: var(--c2); }
.usps__list li:nth-child(4n+3) .icon { background: var(--c3t); color: var(--c3); fill: var(--c3); }
.usps__list li:nth-child(4n+4) .icon { background: var(--c4t); color: var(--c4); fill: var(--c4); }

/* ---------- Stats: big coloured numbers ---------- */
.stats div { position: relative; background: var(--white); border: 1px solid var(--line); border-radius: 18px; overflow: hidden; padding: 1.75rem 1rem 1.4rem; }
.stats div::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: var(--c1); }
.stats dt { font-size: clamp(2.6rem, 5vw, 3.4rem); color: var(--c1); }
.stats div:nth-child(2)::before { background: var(--c2); } .stats div:nth-child(2) dt { color: var(--c2); }
.stats div:nth-child(3)::before { background: var(--c3); } .stats div:nth-child(3) dt { color: var(--c3); }
.stats div:nth-child(4)::before { background: var(--c4); } .stats div:nth-child(4) dt { color: var(--c4); }

/* ---------- Product tiles with illustrations ---------- */
.tiles { gap: 1.25rem; }
.tile, .tiles li:nth-child(even) .tile {
	padding: 0; overflow: hidden; min-height: 0; height: 100%;
	display: flex; flex-direction: column; background: var(--white);
	border: 1px solid var(--line); border-radius: 20px;
}
.tile__art { display: block; height: 172px; padding: .85rem 1rem; background: var(--tint); overflow: hidden; }
.tile__art img { display: block; width: 100%; height: 100%; object-fit: contain; transition: transform .25s; }
.tile__body { display: flex; flex-direction: column; flex: 1; padding: 1.1rem 1.25rem 1.25rem; }
.tile__name { font-size: 1.35rem; color: var(--ink); margin-bottom: .3rem; }
.tile__desc { font-size: .97rem; }
.tile__go { display: inline-flex; align-items: center; gap: .35rem; margin-top: .9rem; font-size: .98rem; font-weight: 800; color: var(--accent, var(--blue)); }
.tile__go span { transition: transform .15s; }
.tile:hover, .tile:focus-visible { border-color: var(--accent, #9fbcf0); transform: translateY(-4px); box-shadow: 0 22px 40px -28px rgba(4, 31, 94, .6); }
.tile:hover .tile__art img { transform: scale(1.06) rotate(-1.5deg); }
.tile:hover .tile__go, .tile:focus-visible .tile__go { transform: none; }
.tile:hover .tile__go span { transform: translateX(5px); }

/* ---------- Steps with illustrations ---------- */
.steps--art li { padding: 0; text-align: center; }
.steps--art li::before { display: none; }
.steps--art li:not(:last-child)::after { top: 52px; left: calc(50% + 62px); right: calc(-50% + 62px); border-top: 3px dashed #C9D6F2; }
.steps__icon { display: block; width: 104px; height: 104px; margin: 0 auto 1rem; }
.steps__no { display: inline-block; margin-bottom: .35rem; padding: .15rem .7rem; border-radius: 99px; background: var(--gold); color: var(--navy); font: 800 .8rem/1.6 var(--display); letter-spacing: .05em; text-transform: uppercase; }
.steps--art h3 { font-family: var(--display); font-size: 1.25rem; }

/* ---------- Why cards: one colour each ---------- */
.why li { border-radius: 18px; transition: transform .15s, box-shadow .15s; }
.why li:hover { transform: translateY(-3px); box-shadow: 0 18px 34px -26px rgba(4, 31, 94, .55); }
.why__icon { border-radius: 14px; }
.why li:nth-child(4n+2) .why__icon { background: var(--c2t); color: var(--c2); }
.why li:nth-child(4n+3) .why__icon { background: var(--c3t); color: var(--c3); }
.why li:nth-child(4n+4) .why__icon { background: var(--c4t); color: var(--c4); }
.why li .why__icon .icon { fill: currentColor; }
.why h3, .types h3, .panel h2, .promise h3, .band__list h3 { font-family: var(--display); }
.types li { border-radius: 18px; border-top-width: 6px; }
.types li:nth-child(3n+3) { border-top-color: var(--c3); }

/* ---------- Page heads and closing band ---------- */
.page-head { position: relative; padding-top: calc(clamp(2.25rem, 6vw, 4rem) + 14px); background: radial-gradient(520px 300px at 92% 0%, #FFE9B8 0%, transparent 65%), #FFFDF7; }
.closing { position: relative; background: var(--navy); color: var(--white); overflow: hidden; }
.closing::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 18px; background: var(--awning);
	-webkit-mask: radial-gradient(circle 14px at 14px 4px, #000 13.5px, transparent 14.5px) 0 0 / 28px 18px repeat-x, linear-gradient(#000, #000) 0 0 / 100% 4px no-repeat;
	        mask: radial-gradient(circle 14px at 14px 4px, #000 13.5px, transparent 14.5px) 0 0 / 28px 18px repeat-x, linear-gradient(#000, #000) 0 0 / 100% 4px no-repeat; }
.closing__inner { padding-top: 3.5rem; }
.closing__title { color: var(--white); }
.closing p { color: #D5DEF5; }
.closing .btn--ghost { border-color: rgba(255, 255, 255, .6); color: var(--white); background: transparent; }
.closing .btn--ghost:hover { background: rgba(255, 255, 255, .1); }
.band { background: #FFF6DE; }

/* ---------- Responsive ---------- */
@media (max-width: 980px) {
	.hero__grid { grid-template-columns: 1fr; grid-template-areas: "copy" "form" "art"; }
	.hero__form { margin-top: .75rem; }
	.art__img { max-height: 240px; }
	.steps--art li::after { display: none; }
}
@media (max-width: 640px) {
	.hero__stamp { font-size: 1rem; }
	.art { display: flex; flex-direction: column; gap: .5rem; border-radius: 28px; min-height: 0; }
	.art--dukaan { gap: .5rem; }
	.art__chip { position: static; max-width: none; width: 100%; animation: none; }
	.tile__art { height: 140px; }
	.steps--art li { padding: 0; text-align: left; display: grid; grid-template-columns: 76px 1fr; column-gap: 1rem; align-items: start; min-height: 0; }
	.steps__icon { width: 76px; height: 76px; margin: 0; grid-row: span 3; }
	.steps--art .steps__no { justify-self: start; }
}

/* =====================================================================
 * v6: conversion layer. One clear path for the eye: headline → cue →
 * a form that starts with a single tap. Repeated, honest CTAs at the
 * points where people decide.
 * ================================================================== */

/* Primary CTA: arrow + a slow shine to draw the eye (motion-safe) */
.btn--cta { position: relative; overflow: hidden; font-size: 1.08rem; min-height: 54px; box-shadow: 0 10px 22px -12px rgba(201, 147, 22, .9); }
.btn--cta span[aria-hidden] { transition: transform .15s; }
.btn--cta:hover span[aria-hidden] { transform: translateX(4px); }
.btn--cta::after { content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .55), transparent); transform: skewX(-20deg); animation: shine 4.5s ease-in-out 1.5s infinite; }
@keyframes shine { 0%, 70% { left: -60%; } 100% { left: 130%; } }
.lead-form__micro { margin: .5rem 0 0; text-align: center; font-size: .85rem; color: var(--muted); font-weight: 600; }

/* Step 0: tap-first question */
.lead-form.is-stepped.on-step-0 [data-step="1"], .lead-form.is-stepped.on-step-0 [data-step="2"] { display: none; }
.lead-form.is-stepped:not(.on-step-0) [data-step="0"] { display: none; }
.lead-form:not(.is-stepped) .form-pick { display: none; }
.lead-form.on-step-0 [data-step="0"] { animation: stepIn .25s ease-out; }
.form-pick__q { margin: 0 0 .85rem; font: 800 1.35rem/1.2 var(--display); color: var(--ink); }
.form-pick__grid { display: grid; gap: .55rem; }
.form-pick__grid--tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.form-pick__grid--chips { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pick {
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .35rem;
	min-height: 56px; padding: .6rem .5rem; border: 1.5px solid #d3dbec; border-radius: 14px; background: var(--white);
	font: 700 .95rem/1.2 var(--font); color: var(--ink); cursor: pointer; text-align: center;
	transition: border-color .12s, transform .12s, box-shadow .12s, background .12s;
}
.pick:hover, .pick:focus-visible { border-color: var(--accent, var(--blue)); transform: translateY(-2px); box-shadow: 0 10px 20px -16px rgba(4, 31, 94, .6); }
.pick.is-picked { border-color: var(--blue); background: var(--blue-soft); }
.form-pick__grid--tiles .pick { padding: .55rem .35rem .65rem; font-size: .86rem; }
.pick__art { display: grid; place-items: center; width: 100%; height: 58px; border-radius: 10px; background: var(--tint); }
.pick__art img { height: 50px; width: auto; }
.form-pick__grid--chips .pick { min-height: 52px; font-size: 1rem; }
.form-pick__grid--chips .pick:last-child { grid-column: 1 / -1; min-height: 44px; border-style: dashed; color: var(--muted); }
.form-pick__foot { display: flex; align-items: center; justify-content: center; gap: .35rem; margin: .9rem 0 0; font-size: .86rem; font-weight: 600; color: var(--muted); text-align: center; }
.form-pick__foot .icon { color: var(--wa); width: 1rem; height: 1rem; }
.form-step__picked { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin: 0 0 1rem; padding: .55rem .8rem; border-radius: 10px; background: #e9f7ef; color: #14532d; font-weight: 700; font-size: .95rem; }
.form-step__picked button { border: 0; background: none; color: var(--blue); font: 700 .9rem var(--font); text-decoration: underline; cursor: pointer; padding: .2rem; }
.lead-form__bar i { width: 33%; }

/* Form spotlight: a warm glow behind the form card */
.hero__form { isolation: isolate; }
.hero__form::after { content: ""; position: absolute; z-index: -1; inset: 6% -6% 18% -6%; background: radial-gradient(closest-side, rgba(246, 195, 61, .45), transparent); filter: blur(10px); }
.lead-form.is-glow { animation: glow 1.6s ease-out; }
@keyframes glow { 0% { box-shadow: 0 0 0 0 rgba(246, 195, 61, .9); } 100% { box-shadow: 0 0 0 22px rgba(246, 195, 61, 0); } }

/* Directional cue from headline to form */
.hero__cue { display: flex; align-items: center; justify-content: flex-end; gap: .25rem; margin: 1.5rem 0 0; color: var(--gold-deep); font: 700 1.15rem/1.2 var(--display); }
.hero__cue span { transform: rotate(-3deg); }
.hero__cue-arrow { flex: none; color: var(--gold-deep); margin-top: -2.2rem; }
.hero__alt { margin: .85rem 0 0; text-align: center; font-size: .95rem; font-weight: 600; color: var(--muted); }
.hero__alt a { font-weight: 800; text-decoration: none; }

/* Lender logos under the form */
.form-banks { margin-top: 1rem; text-align: center; }
.form-banks p { margin: 0 0 .5rem; font-size: .8rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
.form-banks ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .5rem 1.1rem; }
.form-banks img { height: 26px; width: auto; max-width: 96px; object-fit: contain; filter: grayscale(1); opacity: .7; }

/* CTA strip between sections */
.cta-strip { position: relative; background: var(--navy); color: var(--white); overflow: hidden; }
.cta-strip::before { content: ""; position: absolute; inset: 0; background: radial-gradient(400px 160px at 90% 50%, rgba(246, 195, 61, .25), transparent 70%); }
.cta-strip__inner { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 1rem 2rem; flex-wrap: wrap; padding-top: 1.6rem; padding-bottom: 1.6rem; }
.cta-strip__title { margin: 0; font: 800 clamp(1.25rem, 2.6vw, 1.6rem)/1.25 var(--display); max-width: 34em; }
.cta-strip__actions { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem 1.25rem; }
.cta-strip__tel { display: inline-flex; align-items: center; gap: .4rem; color: #dbe5ff; font-weight: 700; text-decoration: none; }
.cta-strip__tel:hover { color: var(--white); }

/* On your own vs with LKD */
.vs { position: relative; display: grid; grid-template-columns: 1fr auto 1.1fr; align-items: center; gap: 1rem; margin-top: 2rem; }
.vs__col { border-radius: 20px; padding: clamp(1.25rem, 3vw, 2rem); }
.vs__col h3 { font-family: var(--display); font-size: 1.35rem; margin-bottom: 1rem; }
.vs__col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .85rem; }
.vs__col li { display: flex; gap: .6rem; align-items: flex-start; font-weight: 600; }
.vs__col--alone { background: #f4f5f8; color: #5b6475; border: 1px dashed #cfd5e2; }
.vs__col--alone h3 { color: #5b6475; }
.vs__x { flex: none; display: grid; place-items: center; width: 1.4rem; height: 1.4rem; border-radius: 50%; background: #fde8e8; color: #c0262d; font-size: .75rem; font-weight: 800; margin-top: .1rem; }
.vs__col--lkd { background: var(--white); border: 2px solid var(--gold); box-shadow: 0 26px 50px -30px rgba(4, 31, 94, .5); }
.vs__col--lkd .icon { flex: none; width: 1.4rem; height: 1.4rem; padding: .22rem; border-radius: 50%; background: var(--wa); fill: var(--white); color: var(--white); margin-top: .1rem; }
.vs__col--lkd .btn { margin-top: 1.4rem; }
.vs__badge { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--navy); color: var(--gold); font: 800 1.1rem var(--display); box-shadow: 0 8px 18px -8px rgba(4, 31, 94, .6); }

@media (max-width: 980px) {
	.hero__cue { justify-content: center; margin-top: 1.25rem; }
	.hero__cue-arrow { margin-top: 0; transform: rotate(68deg); width: 64px; height: 40px; }
	.vs { grid-template-columns: 1fr; }
	.vs__badge { margin: -1.6rem auto; position: relative; z-index: 1; }
	.cta-strip__inner { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 640px) {
	.form-pick__grid--tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .4rem; }
	.form-pick__grid--tiles .pick { font-size: .8rem; }
	.pick__art { height: 48px; }
	.pick__art img { height: 42px; }
	.cta-strip__actions, .cta-strip__actions .btn { width: 100%; }
	.cta-strip__tel { justify-content: center; width: 100%; }
}
.lead-form.on-step-0 .lead-form__note { display: none; }
@media (max-width: 640px) {
	/* Get the first question above the fold on phones. */
	.hero .trust-row { display: none; }
	.hero__cue { margin-top: .75rem; font-size: 1rem; }
	.hero__cue-arrow { width: 48px; height: 30px; }
	.hero .hero__sub { margin-bottom: .25rem; }
	.lead-form__title { font-size: 1.3rem; }
	.hero__product { margin-bottom: .6rem; }
}
