/* Kothamasu Properties and Loans - visual refresh (Nov 2026)
   Loaded after styles.css. Remove the <link> to revert. */
:root {
  --navy-950: #04182f;
  --navy-900: #0a2f5c;
  --navy-800: #0f4c8a;
  --blue-600: #1265b8;
  --blue-100: #e6f1fc;
  --teal-700: #0e7268;
  --teal-100: #daf3ee;
  --gold-600: #b07a1f;
  --gold-400: #e8b85c;
  --gold-100: #fbeed6;
  --green-700: #157a35;
  --green-600: #1f9a48;
  --wa-600: #1fae5b;
  --wa-700: #128c4a;
  --brand-gradient: linear-gradient(90deg, #0a2f5c 0%, #0e7268 55%, #e8b85c 100%);
}
html { scroll-padding-top: 124px; }

/* License bar + header */
.license-bar { background: linear-gradient(90deg, #04182f 0%, #0a2f5c 55%, #0c5560 100%); color: #f3f8fc; font-weight: 600; }
.site-header { background: rgba(255,255,255,.97); }
.site-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--brand-gradient); }
.header-inner { min-height: 94px; }
.brand img {
  width: 204px; height: 82px; object-fit: contain;
  filter: contrast(1.22) saturate(1.4);
  mix-blend-mode: multiply;
}
.primary-nav { gap: 20px; }
.primary-nav a { color: #1d3550; font-weight: 700; white-space: nowrap; font-size: .92rem; }
.header-cta { white-space: nowrap; }
@media (min-width: 981px) and (max-width: 1260px) {
  .header-inner { gap: 16px; }
  .brand img { width: 172px; height: 70px; }
  .primary-nav { gap: 13px; }
  .primary-nav a { font-size: .84rem; }
  .header-cta { font-size: .8rem; padding: 8px 12px; }
}
.primary-nav a:hover { color: var(--teal-700); }

/* WhatsApp buttons */
.button--wa, .header-cta--wa {
  color: #fff; background: linear-gradient(135deg, var(--wa-600), var(--wa-700));
  box-shadow: 0 10px 24px rgba(18,140,74,.28); border-color: transparent;
}
.button--wa:hover, .header-cta--wa:hover { box-shadow: 0 14px 30px rgba(18,140,74,.38); }
.button--gold { color: var(--navy-950); background: linear-gradient(135deg, #f2cd7f, var(--gold-400)); box-shadow: 0 12px 28px rgba(176,122,31,.28); }

/* Hero */
.hero-shade {
  background:
    radial-gradient(circle at 92% 12%, rgba(232,184,92,.22), transparent 34%),
    linear-gradient(90deg, rgba(4,24,47,.95) 0%, rgba(6,34,66,.86) 44%, rgba(8,48,80,.42) 78%, rgba(8,48,80,.22) 100%);
}
.hero h1 { text-shadow: 0 2px 24px rgba(0,0,0,.25); }
.hero .eyebrow { color: var(--gold-400); }
.hero-wa { margin: 16px 0 0; }
.hero-wa a { display: inline-flex; align-items: center; gap: 8px; color: #d9f7e5; font-weight: 750; text-decoration: none; border-bottom: 1px dashed rgba(217,247,229,.6); }
.hero-wa a:hover { color: #fff; }
.quick-card { border-top: 4px solid var(--gold-400); }
.quick-card__contact { flex-wrap: wrap; align-items: center; }
.quick-card__contact a { font-size: .95rem; white-space: nowrap; color: var(--wa-700); }

/* Trust strip + ribbon */
.trust-strip { border-top: 0; }
.trust-grid strong { color: var(--navy-900); }
.trust-grid > div { position: relative; }
.trust-grid > div::before { content: ""; position: absolute; left: 24px; top: 18px; width: 28px; height: 3px; border-radius: 3px; background: var(--brand-gradient); }
.market-ribbon { background: linear-gradient(90deg, #0a2f5c 0%, #0e7268 60%, #8a5f17 100%); }

/* Section headings */
.section-heading h2, .calculator-intro h2, .about-copy h2, .contact-copy h2, .news-heading h2, .secure-apply h2 { letter-spacing: -.03em; }
.eyebrow--blue { color: var(--teal-700); }
.process { background: linear-gradient(180deg, #f2f7fb 0%, #eef6f4 100%); }
.faq { background: linear-gradient(180deg, #f5f8fb 0%, #fbf6ec 100%); }
.calculator-section { background: radial-gradient(circle at 10% 10%, rgba(14,114,104,.45), transparent 35%), linear-gradient(135deg, #04182f, #0a2f5c 70%, #0f4c8a); }
.calc-result { background: linear-gradient(135deg, #e6f1fc, #e9f7f2); }
.calc-disclaimer { margin: 10px 0 18px; padding: 12px 14px; border-left: 3px solid var(--gold-400); border-radius: 8px; background: #fbf6ea; color: #4c5a66; font-size: .74rem; line-height: 1.55; }

/* Video section */
.video-section { color: #fff; background: radial-gradient(circle at 85% 15%, rgba(232,184,92,.25), transparent 32%), radial-gradient(circle at 10% 90%, rgba(14,114,104,.45), transparent 35%), linear-gradient(135deg, #04182f, #0a2f5c 65%, #0c4d63); }
.video-layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 64px; align-items: center; }
.video-copy h2 { margin: 0; color: #fff; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.25rem,4.3vw,4rem); font-weight: 500; line-height: 1.04; letter-spacing: -.03em; }
.video-copy > p:not(.eyebrow) { color: #d3e2ec; font-size: 1.04rem; }
.video-copy .check-list li::before { color: var(--gold-400); }
.video-copy .check-list { color: #eef5f9; }
.video-frame { margin: 0; }
.video-frame video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 22px; background: #000; box-shadow: 0 30px 80px rgba(0,0,0,.4), 0 0 0 2px rgba(232,184,92,.55); }
.video-frame figcaption { margin-top: 12px; color: #a9c0cf; font-size: .76rem; }

/* Track record + reviews */
.record-section { background: #fff; }
.record-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; }
.record-card { padding: 28px 24px; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(180deg, #fff, #f6fafc); box-shadow: 0 12px 34px rgba(6,28,50,.06); text-align: center; }
.record-card strong { display: block; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.2rem, 4vw, 3.2rem); font-weight: 600; line-height: 1.05; background: linear-gradient(135deg, #0a2f5c, #0e7268 60%, #b07a1f); -webkit-background-clip: text; background-clip: text; color: transparent; }
.record-card span { display: block; margin-top: 8px; color: var(--navy-950); font-weight: 800; }
.record-card small { display: block; margin-top: 4px; color: var(--muted); font-size: .8rem; }
.review-cta { display: flex; justify-content: space-between; align-items: center; gap: 28px; margin-top: 26px; padding: 30px 32px; border-radius: 22px; color: #fff; background: linear-gradient(135deg, #0a2f5c, #0e7268); }
.review-cta h3 { margin: 0 0 6px; font-size: 1.45rem; }
.review-cta p { margin: 0; color: #d6e6ee; }
.review-cta .button--outline { color: var(--navy-900); }
.record-section .fine-print { margin-top: 14px; text-align: center; }

/* Footer */
.site-footer { background: linear-gradient(180deg, #041524 0%, #031120 100%); }
.footer-brand img { width: 210px; height: 112px; padding: 8px; filter: contrast(1.25) saturate(1.3); }
.eho-badge { display: inline-flex; align-items: center; gap: 10px; color: #dfe9f0; font-size: .82rem; font-weight: 750; }
.eho-badge svg { width: 34px; height: 34px; flex: none; }

/* Floating WhatsApp (desktop) */
.wa-float { position: fixed; right: 22px; bottom: 22px; z-index: 90; display: inline-flex; align-items: center; gap: 10px; padding: 12px 18px 12px 14px; border-radius: 999px; color: #fff; background: linear-gradient(135deg, var(--wa-600), var(--wa-700)); box-shadow: 0 14px 34px rgba(18,140,74,.4); font-weight: 800; text-decoration: none; transition: transform .18s ease; }
.wa-float:hover { transform: translateY(-3px); }
.wa-float svg { width: 26px; height: 26px; }

@media (max-width: 980px) {
  .video-layout { grid-template-columns: 1fr; gap: 36px; }
  .record-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .review-cta { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 740px) {
  .header-inner { min-height: 74px; }
  .brand img { width: 158px; height: 64px; }
  .record-grid { grid-template-columns: 1fr 1fr; }
  .review-cta { padding: 24px; }
  .wa-float { display: none; }
  .mobile-dock { grid-template-columns: repeat(4, 1fr); }
  .mobile-dock .dock-wa { color: var(--wa-700); }
}

/* ---- Colorful pill navigation (v2) ---- */
.primary-nav { gap: 6px; }
.primary-nav a {
  --c: #0a2f5c; --t: rgba(10,47,92,.08);
  position: relative; display: inline-flex; align-items: center; gap: 7px;
  padding: 8px 13px; border-radius: 999px; color: var(--c); background: var(--t);
  border: 1px solid transparent; font-size: .86rem; font-weight: 750;
  transition: background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.primary-nav a::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--c); opacity: .85; }
.primary-nav a:hover, .primary-nav a:focus-visible { color: #fff; background: var(--c); transform: translateY(-2px); box-shadow: 0 8px 18px -6px var(--c); }
.primary-nav a:hover::before { background: #fff; }
.primary-nav a:nth-child(1) { --c: #1265b8; --t: #e6f1fc; }   /* Services */
.primary-nav a:nth-child(2) { --c: #c2410c; --t: #fff0e6; }   /* Video */
.primary-nav a:nth-child(3) { --c: #0e7268; --t: #dcf4ef; }   /* How it works */
.primary-nav a:nth-child(4) { --c: #a16207; --t: #fdf3d8; }   /* Calculator */
.primary-nav a:nth-child(5) { --c: #7c3aed; --t: #f1eafe; }   /* Reviews */
.primary-nav a:nth-child(6) { --c: #0a2f5c; --t: #e8eef6; }   /* About */
.primary-nav a:nth-child(7) { --c: #15803d; --t: #e5f6ea; }   /* Borrower sign in */
.primary-nav a:nth-child(8) { --c: #fff; --t: linear-gradient(135deg, #b07a1f, #e8b85c); color: #fff; background: linear-gradient(135deg, #b07a1f, #e8b85c); box-shadow: 0 8px 18px -8px rgba(176,122,31,.8); } /* Apply */
.primary-nav a:nth-child(8)::before { background: #fff; }
.primary-nav a:nth-child(8):hover { background: linear-gradient(135deg, #8f6215, #d9a443); }
@media (min-width: 981px) and (max-width: 1260px) {
  .primary-nav { gap: 4px; }
  .primary-nav a { padding: 7px 9px; font-size: .78rem; gap: 5px; }
  .primary-nav a::before { width: 5px; height: 5px; }
}
@media (max-width: 980px) {
  .primary-nav.is-open { gap: 8px; }
  .primary-nav a { justify-content: flex-start; padding: 12px 16px; font-size: .95rem; }
}

/* ---- Client reviews (v2) ---- */
.review-summary { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px 18px; margin: -18px 0 34px; color: var(--navy-950); font-weight: 800; }
.review-summary .stars { color: #f5a524; font-size: 1.35rem; letter-spacing: 2px; }
.review-summary small { color: var(--muted); font-weight: 600; }
.review-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; margin-top: 26px; }
.review-card { position: relative; display: flex; flex-direction: column; padding: 28px 26px 24px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 14px 38px rgba(6,28,50,.07); overflow: hidden; }
.review-card::before { content: "\201C"; position: absolute; right: 18px; top: -8px; font-family: Georgia, serif; font-size: 7rem; line-height: 1; color: rgba(14,114,104,.1); }
.review-card:nth-child(3n+1) { border-top: 4px solid #1265b8; }
.review-card:nth-child(3n+2) { border-top: 4px solid #0e7268; }
.review-card:nth-child(3n+3) { border-top: 4px solid #e8b85c; }
.review-card .stars { color: #f5a524; font-size: 1.1rem; letter-spacing: 2px; }
.review-card h3 { margin: 10px 0 10px; color: var(--navy-950); font-size: 1.08rem; line-height: 1.3; }
.review-card blockquote { margin: 0 0 18px; color: #3f5263; font-size: .95rem; line-height: 1.65; }
.review-card footer { margin-top: auto; display: flex; align-items: center; gap: 12px; padding-top: 14px; border-top: 1px solid var(--line); }
.review-avatar { width: 40px; height: 40px; flex: none; display: grid; place-items: center; border-radius: 50%; color: #fff; font-weight: 900; background: linear-gradient(135deg, #0a2f5c, #0e7268); }
.review-card footer strong { display: block; color: var(--navy-950); font-size: .92rem; }
.review-card footer span { color: var(--muted); font-size: .78rem; }
.review-card--wide { grid-column: span 2; }
@media (max-width: 980px) {
  .review-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .review-card--wide { grid-column: span 2; }
}
@media (max-width: 740px) {
  .review-grid { grid-template-columns: 1fr; }
  .review-card--wide { grid-column: auto; }
}

/* Header fit with pill nav */
.brand { display: block; flex: none; }
.brand img { max-width: none; }
@media (min-width: 981px) and (max-width: 1400px) {
  .header-inner { gap: 14px; }
  .brand img { width: 160px; height: 66px; }
  .primary-nav { gap: 4px; }
  .primary-nav a { padding: 7px 10px; font-size: .8rem; gap: 5px; }
  .primary-nav a::before { width: 5px; height: 5px; }
  .header-cta { font-size: .78rem; padding: 8px 12px; }
}
.hero-wa svg { width: 20px; height: 20px; flex: none; }
@media (max-width: 980px) { .primary-nav.is-open { justify-content: stretch; align-items: stretch; } .primary-nav a { width: 100%; } }

/* Uniform gold menu (v3) - no dots */
.primary-nav a::before { display: none !important; }
.primary-nav a, .primary-nav a:nth-child(n) {
  color: #fff; background: linear-gradient(135deg, #8f6215, #c18a2c);
  box-shadow: 0 6px 14px -8px rgba(143,98,21,.9); border: 1px solid rgba(255,255,255,.18);
}
.primary-nav a:hover, .primary-nav a:focus-visible, .primary-nav a:nth-child(n):hover {
  color: #fff; background: linear-gradient(135deg, #6f4b0f, #a87420);
  transform: translateY(-2px); box-shadow: 0 10px 20px -8px rgba(111,75,15,.9);
}
