﻿/* ================================================================
   KRYPTON â€” style.css
   Page-component & utility CSS (complements krypton.css)
   ================================================================ */

/* â”€â”€ PRODUCT LISTING CARDS (products.blade.php) â”€â”€ */
.prod-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  transition: box-shadow .25s, transform .25s;
  overflow: hidden;
}
.prod-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }

.prod-card-head {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 22px 22px 18px;
  border-bottom: 1px solid rgba(42,157,63,.15);
}
.prod-card-icon {
  width: 46px; height: 46px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; flex-shrink: 0;
  background: var(--accent-green3); border: 1px solid rgba(42,157,63,.2); color: var(--accent-green);
}
.prod-card-name    { font-size: .98rem; font-weight: 700; color: var(--text-primary); line-height: 1.2; margin-bottom: 3px; }
.prod-card-tagline { font-size: .76rem; color: var(--text-muted); line-height: 1.5; }

.prod-card-feats {
  list-style: none; padding: 16px 22px; margin: 0;
  display: flex; flex-direction: column; gap: 8px; flex: 1;
}
.prod-card-feats li { display: flex; align-items: flex-start; gap: 8px; font-size: .82rem; color: var(--text-secondary); line-height: 1.5; }

.prod-card-ideal { font-size: .74rem; color: var(--text-muted); font-style: italic; padding: 0 22px 14px; line-height: 1.5; }

.prod-card-price {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 22px;
  border-top: 1px solid; border-bottom: 1px solid var(--border);
  background: var(--bg-base);
}
.prod-price-val  { font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 800; color: var(--accent-green); }
.prod-price-note { font-size: .7rem; color: var(--text-muted); display: block; margin-top: 1px; }

.prod-card-actions { display: flex; flex-direction: column; gap: 8px; padding: 16px 22px; }
.prod-card-detail-link { transition: color .15s; }
a.prod-card-detail-link:hover { color: var(--accent-green); }

/* â”€â”€ CCAVENUE PAYMENT IFRAME (payment.blade.php) â”€â”€ */
.ccav-iframe-wrap {
  position: relative;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  min-height: 520px;
}
.ccav-iframe-wrap iframe { width: 100%; min-height: 520px; border: none; display: block; }
.ccav-loading {
  position: absolute; inset: 0; background: #fff;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 12px; font-size: .85rem; color: var(--text-muted);
}
.ccav-spinner {
  width: 36px; height: 36px;
  border: 3px solid var(--border);
  border-top-color: var(--accent-green);
  border-radius: 50%;
  animation: ccav-spin .7s linear infinite;
}
@keyframes ccav-spin { to { transform: rotate(360deg); } }

/* â”€â”€ YOUTUBE EMBED â”€â”€ */
.yt-embed-wrap {
  position: relative; width: 100%; padding-top: 56.25%;
  border-radius: var(--radius-lg); overflow: hidden;
  box-shadow: var(--shadow-lg); background: #000;
}
.yt-embed-wrap iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: none; }


/* â”€â”€ UTILITY: FLEX / LAYOUT â”€â”€ */
.d-flex-center     { display: flex; align-items: center; }
.d-flex-between    { display: flex; align-items: center; justify-content: space-between; }
.d-flex-col        { display: flex; flex-direction: column; }
.gap-6             { gap: 6px; }
.gap-8             { gap: 8px; }
.gap-10            { gap: 10px; }
.gap-12            { gap: 12px; }
.flex-1            { flex: 1; }
.flex-shrink-0     { flex-shrink: 0; }
.mt-auto           { margin-top: auto; }

/* â”€â”€ UTILITY: TYPOGRAPHY â”€â”€ */
.text-green    { color: var(--accent-green); }
.text-blue     { color: var(--accent-blue); }
.text-red      { color: var(--accent-red); }
.text-cyan     { color: var(--accent-cyan); }
.text-purple   { color: var(--accent-purple); }
.text-orange   { color: var(--accent-orange); }
.text-primary  { color: var(--text-primary); }
.text-secondary{ color: var(--text-secondary); }
.text-muted    { color: var(--text-muted); }
.fw-800        { font-weight: 800; }
.fw-700        { font-weight: 700; }
.fw-600        { font-weight: 600; }
.fs-xs         { font-size: .72rem; }
.fs-sm         { font-size: .82rem; }
.fs-md         { font-size: .9rem; }
.fs-lg         { font-size: 1.1rem; }
.mono          { font-family: 'JetBrains Mono', monospace; }

/* â”€â”€ UTILITY: BACKGROUND â”€â”€ */
.bg-green-soft  { background: var(--accent-green3); }
.bg-light       { background: var(--bg-base); }
.bg-white       { background: #fff; }
.bg-surface     { background: var(--bg-surface); }

/* â”€â”€ UTILITY: BORDER â”€â”€ */
.border-green   { border: 1px solid rgba(0,209,102,.2); }
.border-blue    { border: 1px solid rgba(59,130,246,.2); }
.border-top-1   { border-top: 1px solid var(--border); }
.border-bottom-1{ border-bottom: 1px solid var(--border); }
.rounded-full   { border-radius: 100px; }

/* â”€â”€ UTILITY: ICON BOX â”€â”€ */
.icon-box {
  display: flex; align-items: center; justify-content: center;
  border-radius: 10px; flex-shrink: 0;
}
.icon-box-sm  { width: 36px; height: 36px; font-size: 15px; }
.icon-box-md  { width: 44px; height: 44px; font-size: 18px; }
.icon-box-lg  { width: 54px; height: 54px; font-size: 22px; border-radius: 14px; }

/* â”€â”€ UTILITY: INLINE SEPARATOR â”€â”€ */
.inline-sep { width: 3px; height: 3px; border-radius: 50%; background: var(--text-muted); display: inline-block; vertical-align: middle; margin: 0 4px; }

/* â”€â”€ PRICING PAGE â”€â”€ */
.pricing-notice {
  display: flex; align-items: flex-start; gap: 10px;
  background: #fff8e1; border: 1px solid rgba(245,158,11,.27);
  border-radius: var(--radius); padding: 12px 16px;
  font-size: .84rem; color: var(--text-secondary); max-width: 640px;
}
.pricing-notice i   { color: var(--accent-orange); flex-shrink: 0; margin-top: 2px; }
.pricing-gst-note   { display: flex; align-items: flex-start; gap: 8px; font-size: .8rem; color: var(--text-muted); border-top: 1px solid var(--border); padding-top: 1rem; }
.pricing-gst-note i { flex-shrink: 0; margin-top: 2px; }
.pricing-gst-note a { color: var(--accent-green); margin-left: 4px; }

/* â”€â”€ MODULE PRICING CARDS (pricing.blade.php) â”€â”€ */
.module-price-card {
  background: #fff; border: 1px solid var(--border);
  border-radius: var(--radius-lg); box-shadow: var(--shadow-sm);
  display: flex; flex-direction: column;
  transition: box-shadow .25s, transform .25s;
  overflow: hidden;
}
.module-price-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.mpc-header   { padding: 22px 24px; border-bottom: 1px solid; display: flex; align-items: flex-start; gap: 14px; border-color: var(--border); }
.mpc-icon     { width: 44px; height: 44px; border-radius: 11px; display: flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; background: var(--accent-green3); border: 1px solid rgba(42,157,63,.2); color: var(--accent-green); }
.mpc-name     { font-size: .95rem; font-weight: 700; color: var(--text-primary); margin-bottom: 4px; }
.mpc-desc     { font-size: .76rem; color: var(--text-muted); line-height: 1.6; }
.mpc-tiers    { display: flex; align-items: stretch; border-bottom: 1px solid var(--border); }
.mpc-tier     { flex: 1; padding: 16px 20px; }
.mpc-tier-divider { width: 1px; background: var(--border); flex-shrink: 0; }
.mpc-tier-label   { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--text-muted); margin-bottom: 6px; }
.mpc-tier-price   { font-family: 'Sora', sans-serif; font-size: 1.5rem; font-weight: 800; color: var(--accent-green); line-height: 1; }
.mpc-tier-price span { font-size: .78rem; font-weight: 500; color: var(--text-muted); }
.mpc-tier-note    { font-size: .7rem; color: var(--text-muted); margin-top: 4px; }
.mpc-tier-pro     { background: var(--bg-base); }
.mpc-features     { list-style: none; padding: 16px 24px; margin: 0; flex: 1; }
.mpc-features li  { display: flex; align-items: flex-start; gap: 8px; font-size: .8rem; color: var(--text-secondary); line-height: 1.5; padding: 5px 0; }
.mpc-features li i { margin-top: 3px; flex-shrink: 0; }
.mpc-footer       { padding: 16px 24px; border-top: 1px solid var(--border); }

/* Most Popular module (product_variants.is_popular = 1) */
.module-price-card.is-popular { border-color: var(--accent-green); box-shadow: var(--shadow-green); }
.mpc-popular-tag {
  display: flex; align-items: center; justify-content: center; gap: 6px;
  background: var(--accent-green); color: #fff;
  font-size: .66rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em;
  padding: 6px 0;
}
.mpc-popular-tag i { font-size: .7rem; }

/* â”€â”€ MFA VIDEO SECTION â”€â”€ */
.mfa-yt-links { display: flex; flex-direction: column; gap: 4px; }
.mfa-yt-link  { display: flex; align-items: center; gap: 9px; padding: 8px 12px; border-radius: 8px; font-size: .84rem; color: var(--text-secondary); text-decoration: none; transition: background .15s, color .15s; }
.mfa-yt-link:hover { background: var(--bg-base); color: var(--text-primary); }
.mfa-yt-link i    { font-size: 1rem; flex-shrink: 0; }

/* â”€â”€ KSI PRODUCT PAGE â”€â”€ */
.ksi-hero { background: linear-gradient(160deg, #f4fbf5 0%, #fff 45%, #f0f7ff 100%); padding: 80px 0 90px; position: relative; overflow: hidden; z-index: 1; }
.ksi-hero::before { content: ''; position: absolute; top: -100px; right: -100px; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(0,209,102,0.06) 0%, transparent 70%); pointer-events: none; }
.ksi-product-badge { display: inline-flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 10px 16px; margin-bottom: 1.5rem; box-shadow: var(--shadow-sm); }
.ksi-badge-icon  { width: 40px; height: 40px; border-radius: 10px; background: rgba(0,209,102,.1); border: 1px solid rgba(0,209,102,.18); display: flex; align-items: center; justify-content: center; font-size: 18px; color: var(--accent-green); flex-shrink: 0; }
.ksi-badge-code  { font-family: 'JetBrains Mono', monospace; font-size: .62rem; font-weight: 700; color: var(--accent-green); letter-spacing: .1em; }
.ksi-badge-label { font-size: .84rem; font-weight: 700; color: var(--text-primary); }
.ksi-hero-title  { font-size: clamp(2.2rem, 5vw, 3.8rem); font-weight: 800; letter-spacing: -.04em; line-height: 1.06; margin-bottom: 1.25rem; }
.ksi-hero-sub    { font-size: 1.05rem; color: var(--text-secondary); max-width: 500px; line-height: 1.82; margin-bottom: 2rem; }
.ksi-hero-stats  { display: flex; align-items: center; background: #fff; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); width: fit-content; }
.ksi-stat        { padding: 14px 22px; }
.ksi-stat-val    { font-family: 'Sora', sans-serif; font-size: 1.5rem; font-weight: 800; color: var(--text-primary); letter-spacing: -.04em; line-height: 1; }
.ksi-stat-lbl    { font-size: .65rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: .07em; margin-top: 3px; }
.ksi-stat-sep    { width: 1px; height: 40px; background: var(--border); flex-shrink: 0; }
.ksi-trust-row   { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 1.5rem; }
.ksi-trust-badge { display: inline-flex; align-items: center; gap: 5px; font-size: .7rem; font-weight: 600; color: var(--text-muted); background: #fff; border: 1px solid var(--border); padding: 4px 10px; border-radius: 100px; }
.ksi-trust-badge i { color: var(--accent-green); font-size: .7rem; }
.ksi-dash-wrap   { position: relative; }
.ksi-pillar      { padding: 32px 24px; }
.ksi-pillar-icon { width: 56px; height: 56px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 22px; margin: 0 auto 1.25rem; }
.ksi-pillar-title{ font-size: 1.1rem; font-weight: 700; color: var(--text-primary); margin-bottom: .6rem; }
.ksi-pillar-desc { font-size: .875rem; color: var(--text-secondary); line-height: 1.8; }
.ksi-feature-card{ background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px; height: 100%; box-shadow: var(--shadow-sm); transition: box-shadow .25s, transform .25s; }
.ksi-feature-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.ksi-feat-icon   { width: 42px; height: 42px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 17px; margin-bottom: 1rem; }
.ksi-feat-title  { font-size: .92rem; font-weight: 700; color: var(--text-primary); margin-bottom: .4rem; line-height: 1.3; }
.ksi-feat-desc   { font-size: .8rem; color: var(--text-secondary); line-height: 1.72; }
.ksi-step        { text-align: center; padding: 8px; }
.ksi-step-num    { width: 56px; height: 56px; border-radius: 14px; border: 2px solid; display: flex; align-items: center; justify-content: center; font-size: 20px; margin: 0 auto 1rem; }
.ksi-step-badge  { font-family: 'JetBrains Mono', monospace; font-size: .62rem; font-weight: 700; color: var(--accent-green); text-transform: uppercase; letter-spacing: .08em; margin-bottom: .5rem; }
.ksi-step-title  { font-size: .98rem; font-weight: 700; color: var(--text-primary); margin-bottom: .5rem; }
.ksi-step-desc   { font-size: .8rem; color: var(--text-secondary); line-height: 1.72; }
.ksi-resource-card { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; display: flex; flex-direction: column; gap: 8px; box-shadow: var(--shadow-sm); transition: box-shadow .2s, border-color .2s; height: 100%; }
.ksi-resource-card:hover { box-shadow: var(--shadow-md); border-color: var(--border-hover); }
.ksi-res-icon    { width: 38px; height: 38px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; }
.ksi-res-name    { font-size: .88rem; font-weight: 700; color: var(--text-primary); line-height: 1.3; }
.ksi-res-meta    { font-size: .68rem; color: var(--text-muted); font-family: 'JetBrains Mono', monospace; }
.ksi-res-desc    { font-size: .76rem; color: var(--text-secondary); line-height: 1.6; flex: 1; }
.ksi-res-btn     { font-size: .78rem; font-weight: 700; display: inline-flex; align-items: center; gap: 5px; transition: gap .2s; }
.ksi-res-btn:hover { gap: 8px; }
.ksi-gated-form      { background: var(--bg-base); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px 20px; }
.ksi-gated-inner     { display: flex; flex-direction: column; gap: 12px; }
.ksi-gated-text      { display: flex; align-items: flex-start; gap: 10px; font-size: .84rem; }
.ksi-gated-form-row  { display: flex; gap: 10px; }
.ksi-platform-card   { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); padding: 18px 12px; text-align: center; box-shadow: var(--shadow-sm); transition: box-shadow .2s, transform .2s; }
.ksi-platform-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.ksi-platform-name   { font-size: .72rem; font-weight: 600; color: var(--text-secondary); line-height: 1.3; }
.ksi-testi           { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 40px; box-shadow: var(--shadow-md); border-left: 4px solid var(--accent-green); }
.ksi-testi-quote     { font-size: 1rem; color: var(--text-secondary); line-height: 1.9; font-style: italic; margin-bottom: 1.5rem; border: none; padding: 0; }
.ksi-testi-author    { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ksi-testi-logo      { margin-left: auto; display: flex; align-items: center; gap: 6px; }

/* â”€â”€ SECTION HEADINGS / LABELS â”€â”€ */
.section-label      { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--text-muted); margin-bottom: .5rem; }
.section-mini-title { font-size: .9rem;  font-weight: 700; color: var(--text-primary); margin-bottom: .4rem; }
.card-title         { font-size: .98rem; font-weight: 700; color: var(--text-primary); margin-bottom: 2px; }
.card-title-lg      { font-size: 1.05rem; font-weight: 700; color: var(--text-primary); margin-bottom: .4rem; }
.card-title-xl      { font-size: 1.02rem; font-weight: 700; color: var(--text-primary); margin-bottom: 1.25rem; display: flex; align-items: center; gap: 8px; }
.card-sub           { font-size: .80rem; color: var(--text-muted); margin-bottom: .6rem; line-height: 1.6; }
.card-desc          { font-size: .9rem;  color: var(--text-secondary); line-height: 1.78; }
.card-desc-sm       { font-size: .84rem; color: var(--text-secondary); line-height: 1.76; }
.body-sm            { font-size: .9375rem; color: var(--text-secondary); line-height: 1.82; }
.body-xs            { font-size: .84rem; color: var(--text-secondary); line-height: 1.78; }
.label-mono         { font-family: 'JetBrains Mono', monospace; font-size: .74rem; font-weight: 600; }
.note-sm            { font-size: .78rem; color: var(--text-muted); }
.note-xs            { font-size: .72rem; color: var(--text-muted); }

/* â”€â”€ FLEX UTILITIES â”€â”€ */
.flex-ac  { display: flex; align-items: center; }
.flex-ac-wrap { display: flex; align-items: center; flex-wrap: wrap; }
.flex-as  { display: flex; align-items: flex-start; }
.flex-sb  { display: flex; align-items: center; justify-content: space-between; }
.flex-sb-wrap { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.flex-col { display: flex; flex-direction: column; }
.flex-center { display: flex; align-items: center; justify-content: center; }
.gap-4  { gap: 4px; }
.gap-5  { gap: 5px; }
.gap-7  { gap: 7px; }
.gap-14 { gap: 14px; }
.gap-16 { gap: 16px; }

/* â”€â”€ SPACERS â”€â”€ */
.mb-2px  { margin-bottom: 2px; }
.mb-4px  { margin-bottom: 4px; }
.mb-6    { margin-bottom: 6px; }
.p-20    { padding: 20px; }
.p-24    { padding: 24px; }
.p-28    { padding: 28px; }
.p-32    { padding: 32px; }
.p-36    { padding: 36px; }
.p-40    { padding: 40px; }
.px-20   { padding-left: 20px; padding-right: 20px; }
.py-12   { padding-top: 12px; padding-bottom: 12px; }
.pt-14   { padding-top: 14px; }

/* â”€â”€ DIVIDERS â”€â”€ */
.divider     { height: 1px; background: var(--border); }
.divider-t   { border-top: 1px solid var(--border); }
.divider-b   { border-bottom: 1px solid var(--border); }
.divider-mt  { border-top: 1px solid var(--border); margin-top: 1.25rem; padding-top: 1.25rem; }

/* â”€â”€ ICON BOXES â”€â”€ */
.icon-wrap-sm  { width: 32px; height: 32px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 14px; flex-shrink: 0; }
.icon-wrap-md  { width: 42px; height: 42px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; }
.icon-wrap-lg  { width: 54px; height: 54px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 22px; flex-shrink: 0; }
.icon-green    { background: var(--accent-green3); color: var(--accent-green); border: 1px solid rgba(42,157,63,.18); }
.icon-blue     { background: rgba(59,130,246,.08); color: var(--accent-blue);   border: 1px solid rgba(59,130,246,.18); }
.icon-red      { background: rgba(239,68,68,.08);  color: var(--accent-red);    border: 1px solid rgba(239,68,68,.18);  }
.icon-cyan     { background: rgba(0,200,255,.08);  color: var(--accent-cyan);   border: 1px solid rgba(0,200,255,.18);  }
.icon-purple   { background: rgba(139,92,246,.08); color: var(--accent-purple); border: 1px solid rgba(139,92,246,.18); }
.icon-orange   { background: rgba(245,158,11,.08); color: var(--accent-orange); border: 1px solid rgba(245,158,11,.18); }
.icon-wa       { background: rgba(37,211,102,.1);  color: #25d366;              border: 1px solid rgba(37,211,102,.22); }

/* â”€â”€ WHITE CARD / PANEL â”€â”€ */
.white-card    { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.white-card-p  { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); padding: 28px; }
.home-sol-card { transition: border-color .25s, box-shadow .25s, transform .25s; }
.home-sol-card:hover { border-color: var(--accent-green); box-shadow: 0 16px 44px rgba(15,31,46,.13), 0 4px 16px rgba(42,157,63,.12); transform: translateY(-6px); }
.panel-row     { display: flex; justify-content: space-between; align-items: flex-start; padding: 12px 20px; border-bottom: 1px solid var(--border); }
.panel-row:last-child { border-bottom: none; }
.panel-key     { font-size: .8rem; color: var(--text-muted); flex-shrink: 0; min-width: 140px; }
.panel-val     { font-size: .82rem; font-weight: 600; color: var(--text-primary); font-family: 'JetBrains Mono', monospace; text-align: right; line-height: 1.5; }

/* â”€â”€ INFO / NOTICE BOXES â”€â”€ */
.info-box      { display: flex; align-items: flex-start; gap: 10px; border-radius: var(--radius); padding: 12px 16px; font-size: .84rem; }
.info-box-green { background: rgba(42,157,63,.06); border: 1px solid rgba(42,157,63,.2); color: var(--text-secondary); }
.info-box-yellow{ background: #fff8e1; border: 1px solid rgba(245,158,11,.3); color: var(--text-secondary); }
.info-box-blue  { background: rgba(59,130,246,.06); border: 1px solid rgba(59,130,246,.2); color: var(--text-secondary); }
.info-box-red   { background: rgba(239,68,68,.06); border: 1px solid rgba(239,68,68,.2); color: var(--text-secondary); }

/* â”€â”€ AJAX FORM GLOBAL ERROR (kr-forms.js) â”€â”€ */
.kr-form-error  { display: none; }

/* â”€â”€ CHECK LIST â”€â”€ */
.check-row  { display: flex; align-items: center; gap: 8px; font-size: .84rem; color: var(--text-secondary); margin-bottom: .5rem; }
.check-row i{ font-size: .72rem; flex-shrink: 0; }
.check-row-sm { display: flex; align-items: center; gap: 7px; font-size: .78rem; color: var(--text-secondary); margin-bottom: .4rem; }

/* â”€â”€ INLINE BADGE â”€â”€ */
.badge-pill   { display: inline-flex; align-items: center; gap: 5px; font-size: .62rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; padding: 1px 7px; border-radius: 4px; }
.badge-green  { background: var(--accent-green3); color: var(--accent-green2); border: 1px solid rgba(42,157,63,.22); }
.badge-blue   { background: rgba(59,130,246,.1); color: var(--accent-blue); border: 1px solid rgba(59,130,246,.22); }
.badge-red    { background: rgba(239,68,68,.1); color: var(--accent-red); border: 1px solid rgba(239,68,68,.22); }
.badge-orange  { background: rgba(245,158,11,.1); color: var(--accent-orange); border: 1px solid rgba(245,158,11,.22); }
.badge-purple  { background: rgba(109,40,217,.1); color: var(--accent-purple); border: 1px solid rgba(109,40,217,.22); }

/* ── Datasheet catalog cards ── */
.datasheet-card { transition: box-shadow .2s, transform .2s; }
.datasheet-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }
.datasheet-card-title { min-height: 50px; }
.badge-new-hire { background: rgba(42,157,63,.1); color: var(--accent-green2); border: 1px solid rgba(42,157,63,.22); font-size: .58rem; font-weight: 700; padding: 1px 6px; border-radius: 4px; }

/* â”€â”€ CONTACT ROWS â”€â”€ */
.contact-row   { display: flex; align-items: center; gap: 10px; font-size: .84rem; color: var(--text-secondary); text-decoration: none; margin-bottom: .5rem; transition: color .15s; }
.contact-row:hover { color: var(--accent-green); }
.contact-row.contact-row-wa:hover   { color: #25d366; }
.contact-row.contact-row-blue:hover { color: var(--accent-blue); }
.text-wa { color: #25d366; }
.contact-row i { color: var(--accent-green); flex-shrink: 0; font-size: .85rem; }
.office-hours  { font-size: .72rem; color: var(--text-muted); margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--border); line-height: 1.7; }

/* â”€â”€ CART & CHECKOUT â”€â”€ */
.order-title    { font-size: .9rem; font-weight: 700; color: var(--text-primary); margin-bottom: 1rem; }
.order-meta     { font-size: .72rem; color: var(--text-muted); text-align: right; margin-bottom: 1.5rem; }
.payment-secure { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 1rem; font-size: .72rem; color: var(--text-muted); }
.payment-methods-label { font-size: .72rem; color: var(--text-muted); margin-bottom: .5rem; }
.payment-method-tag { font-size: .64rem; color: var(--text-muted); background: var(--bg-base); border: 1px solid var(--border); padding: 2px 8px; border-radius: 4px; display: inline-block; }
.discount-row   { display: flex; justify-content: space-between; padding: 8px 0; font-size: .82rem; color: var(--accent-green); }
.subtotal-row   { display: flex; justify-content: space-between; padding: 8px 0; font-size: .82rem; color: var(--text-secondary); }
.total-row      { display: flex; justify-content: space-between; align-items: center; padding: 14px 0 0; }
.total-label    { font-weight: 700; color: var(--text-primary); }

/* â”€â”€ FORM LABEL / HINT â”€â”€ */
.form-title   { font-size: 1rem; font-weight: 700; color: var(--text-primary); margin-bottom: 1.25rem; }
.form-note    { font-size: .74rem; color: var(--text-muted); text-align: center; margin-top: .6rem; }

/* â”€â”€ PAGE HERO EYEBROW â”€â”€ */
.page-tag  { display: inline-flex; align-items: center; gap: 6px; font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 4px 14px; border-radius: 100px; margin-bottom: 1.5rem; }
.page-tag-cyan { color: var(--accent-cyan); background: rgba(0,200,255,.07); border: 1px solid rgba(0,200,255,.14); }
.page-tag-green{ color: var(--accent-green2); background: var(--accent-green3); border: 1px solid rgba(42,157,63,.22); }
.page-tag-blue { color: var(--accent-blue); background: rgba(59,130,246,.07); border: 1px solid rgba(59,130,246,.14); }

/* â”€â”€ SUCCESS SCREEN â”€â”€ */
.success-title    { font-size: clamp(1.8rem,3.5vw,2.8rem); margin-bottom: 1rem; }
.success-sub      { font-size: 1rem; color: var(--text-secondary); line-height: 1.82; max-width: 480px; margin: 0 auto 2.5rem; }
.next-step-wrap   { display: flex; gap: 14px; margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--border); }
.next-step-wrap:last-child { border-bottom: none; }
.next-step-icon   { width: 36px; height: 36px; border-radius: 9px; background: var(--accent-green3); border: 1px solid rgba(42,157,63,.12); display: flex; align-items: center; justify-content: center; font-size: 15px; color: var(--accent-green); flex-shrink: 0; }
.next-step-name   { font-weight: 700; color: var(--text-primary); font-size: .9rem; margin-bottom: 2px; }
.next-step-desc   { font-size: .8rem; color: var(--text-secondary); line-height: 1.6; }
.next-step-time   { font-size: .7rem; color: var(--text-muted); font-family: 'JetBrains Mono', monospace; white-space: nowrap; align-self: flex-start; margin-top: 2px; }

/* â”€â”€ DOWNLOAD ITEMS â”€â”€ */
.dl-section-heading { font-size: 1rem; font-weight: 700; color: var(--text-primary); margin-bottom: 2px; }
.dl-section-sub     { font-size: .76rem; color: var(--text-muted); }

/* â”€â”€ BLOG CARDS â”€â”€ */
.blog-card    { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); overflow: hidden; display: flex; flex-direction: column; box-shadow: var(--shadow-sm); transition: box-shadow .25s, transform .25s; }
.blog-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.blog-card-head { padding: 28px; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--border); }
.blog-card-body { padding: 24px; flex: 1; display: flex; flex-direction: column; }
.blog-card-title{ font-size: .95rem; font-weight: 700; color: var(--text-primary); line-height: 1.4; margin-bottom: .6rem; flex: 1; }
.blog-card-desc { font-size: .8rem; color: var(--text-secondary); line-height: 1.7; margin-bottom: 1.25rem; }
.blog-card-meta { display: flex; justify-content: space-between; align-items: center; }
.blog-card-author { font-size: .7rem; color: var(--text-muted); }
.blog-read-link   { font-size: .78rem; font-weight: 600; display: flex; align-items: center; gap: 4px; transition: gap .2s; }

/* â”€â”€ ABOUT / COMPANY â”€â”€ */
.company-stat-card { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px; box-shadow: var(--shadow-sm); text-align: center; }
.company-stat-icon { font-size: 1.6rem; display: block; margin-bottom: .6rem; }
.company-stat-val  { font-family: 'Sora', sans-serif; font-size: 1.8rem; font-weight: 800; color: var(--text-primary); letter-spacing: -.04em; line-height: 1; }
.company-stat-lbl  { font-size: .76rem; color: var(--text-muted); margin-top: 4px; line-height: 1.4; }
.cert-card         { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 22px 16px; text-align: center; box-shadow: var(--shadow-sm); height: 100%; }
.cert-icon         { font-size: 1.8rem; display: block; margin-bottom: .6rem; }
.cert-name         { font-size: .85rem; font-weight: 700; color: var(--text-primary); margin-bottom: .35rem; }
.cert-desc         { font-size: .72rem; color: var(--text-muted); line-height: 1.55; }
.address-block     { font-size: .875rem; color: var(--text-secondary); line-height: 1.9; }
.address-name      { font-size: 1.05rem; font-weight: 700; color: var(--text-primary); margin-bottom: .4rem; }

/* â”€â”€ SUPPORT PAGE â”€â”€ */
.support-quick-link { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--border); border-radius: var(--radius); padding: 16px 18px; text-decoration: none; transition: all .2s; box-shadow: var(--shadow-sm); }
.support-quick-link:hover { border-color: var(--accent-green); transform: translateY(-2px); }
.support-quick-link i { font-size: 1.2rem; color: var(--accent-green); flex-shrink: 0; }
.branch-card   { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 20px 22px; height: 100%; box-shadow: var(--shadow-sm); }
.branch-name   { font-size: .88rem; font-weight: 700; color: var(--text-primary); }
.branch-addr   { font-size: .78rem; color: var(--text-secondary); line-height: 1.7; margin-bottom: .6rem; }
.branch-phone  { font-size: .78rem; color: var(--accent-green); font-family: 'JetBrains Mono', monospace; text-decoration: none; display: flex; align-items: center; gap: 5px; }

/* â”€â”€ PRIVACY / TERMS â”€â”€ */
.legal-section       { background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 32px; margin-bottom: 12px; box-shadow: var(--shadow-sm); }
.legal-section-title { font-size: 1rem; font-weight: 700; color: var(--text-primary); margin-bottom: .75rem; }
.legal-body          { font-size: .875rem; color: var(--text-secondary); line-height: 1.9; margin: 0; white-space: pre-line; }

/* â”€â”€ ACCORDION DARK (FAQ) â”€â”€ */
.faq-eyebrow { font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--accent-green); margin-bottom: .75rem; }

/* â”€â”€ BRAND LOGOS â”€â”€ */
.nav-logo    { height: 40px; width: auto; display: block; flex-shrink: 0; }
.footer-logo { height: 36px; width: auto; display: block; flex-shrink: 0; }


/* ── HERO SOLUTION GRID (home page right column) ── */
.hero-sol-eyebrow { font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: var(--text-muted); margin-bottom: 14px; }
.hero-sol-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.hero-sol-tile {
  display: flex; flex-direction: column; align-items: flex-start;
  background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg);
  padding: 18px 16px; text-decoration: none;
  box-shadow: var(--shadow-sm); transition: box-shadow .2s, border-color .2s, transform .2s;
}
.hero-sol-tile:hover { box-shadow: var(--shadow-md); border-color: var(--border-hover); transform: translateY(-2px); }
.hero-sol-icon { width: 38px; height: 38px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; margin-bottom: 10px; }
.hero-sol-name { font-size: .82rem; font-weight: 700; color: var(--text-primary); line-height: 1.3; margin-bottom: 4px; }
.hero-sol-codes { font-family: 'JetBrains Mono', monospace; font-size: .58rem; font-weight: 600; color: var(--text-muted); letter-spacing: .04em; }

/* ── HERO NETWORK ANIMATION (home page right column) ── */
.kr-hero-network-wrap { width: 100%; max-width: 480px; margin: 0 auto; }
.kr-hero-network { width: 100%; height: auto; display: block; }
.kr-conn-1 { animation: kr-dash-flow 3.0s linear infinite; }
.kr-conn-2 { animation: kr-dash-flow 3.4s linear infinite 0.6s; }
.kr-conn-3 { animation: kr-dash-flow 3.2s linear infinite 1.0s; }
.kr-conn-4 { animation: kr-dash-flow 3.6s linear infinite 0.3s; }
.kr-conn-5 { animation: kr-dash-flow 3.1s linear infinite 1.4s; }
.kr-conn-6 { animation: kr-dash-flow 3.5s linear infinite 0.8s; }
@keyframes kr-dash-flow { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -20; } }
.kr-hub-pulse { transform-box: fill-box; transform-origin: center; animation: kr-hub-breathe 4s ease-in-out infinite; }
.kr-hub-ring  { transform-box: fill-box; transform-origin: center; animation: kr-hub-spin 22s linear infinite; }
@keyframes kr-hub-breathe { 0%,100% { opacity: .5; transform: scale(1); } 50% { opacity: 1; transform: scale(1.07); } }
@keyframes kr-hub-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.kr-node-halo { transform-box: fill-box; transform-origin: center; animation: kr-node-glow 5s ease-in-out infinite; }
.kr-node-halo-1 { animation-delay: 0s; }
.kr-node-halo-2 { animation-delay: .8s; }
.kr-node-halo-3 { animation-delay: 1.6s; }
.kr-node-halo-4 { animation-delay: 2.4s; }
.kr-node-halo-5 { animation-delay: 3.2s; }
.kr-node-halo-6 { animation-delay: 4.0s; }
@keyframes kr-node-glow { 0%,100% { opacity: .25; } 50% { opacity: .55; } }
@media (prefers-reduced-motion: reduce) {
  [class^="kr-conn-"], .kr-hub-pulse, .kr-hub-ring, .kr-node-halo { animation: none; }
  .kr-anim-packets { display: none; }
}

/* ── HERO CONTACT LINK (tertiary CTA) ── */
.hero-contact-link { display: flex; align-items: center; flex-wrap: wrap; margin-top: 10px; }

/* â”€â”€ ENVIRONMENT CARDS (product-detail coverage section) â”€â”€ */
.env-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 20px 14px;
  text-align: center;
  box-shadow: var(--shadow-sm);
  transition: transform .2s, box-shadow .2s;
  height: 100%;
}
.env-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.env-card-icon  { font-size: 1.6rem; color: var(--accent-green); display: block; margin-bottom: 10px; }
.env-card-label { font-size: .78rem; font-weight: 600; color: var(--text-secondary); line-height: 1.35; }

/* â”€â”€ RESPONSIVE â”€â”€ */
@media (max-width: 480px) {
  .ksi-gated-form-row { flex-direction: column; }
}

/* ================================================================
   PRODUCT DETAIL PAGE  (.pd-*)
   ================================================================ */

/* Breadcrumb bar */
.pd-breadcrumb-bar {
  border-bottom: 1px solid var(--border);
  background: var(--bg-surface);
  padding: 12px 0;
}

/* Hero */
.pd-hero {
  padding: 40px 0 48px;
  background: var(--bg-surface);
  border-bottom: 1px solid var(--border);
}
.pd-name-row {
  display: flex; align-items: center; gap: 14px;
  margin-bottom: 20px;
}
.pd-icon {
  width: 54px; height: 54px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 24px; flex-shrink: 0;
}
.pd-title-group { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 4px; }
.pd-name {
  font-size: 1.65rem; font-weight: 800;
  color: var(--text-primary); font-family: 'Sora', sans-serif;
  letter-spacing: -.04em; margin: 0; line-height: 1.1;
}
.pd-code {
  font-family: 'JetBrains Mono', monospace;
  font-size: .68rem; font-weight: 700;           /* was .6rem â€” too small */
  padding: 3px 8px; border-radius: 4px; letter-spacing: .06em;
}
.pd-tagline { font-size: .96rem; font-weight: 600; margin: 0; line-height: 1.5; }

.pd-desc { font-size: 1rem; color: var(--text-secondary); line-height: 1.85; margin-bottom: 22px; }

.pd-points { display: flex; flex-direction: column; gap: 12px; margin-bottom: 28px; }
.pd-point { display: flex; align-items: center; gap: 10px; font-size: .92rem; color: var(--text-secondary); }
.pd-point-icon { font-size: .82rem; flex-shrink: 0; }

.pd-cta-group { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }

.pd-trust { display: flex; flex-wrap: wrap; gap: 18px; }
.pd-trust-item { display: flex; align-items: center; gap: 5px; font-size: .80rem; color: var(--text-muted); }

/* Pricing panel */
.pd-pricing-panel { padding: 24px; }
.pd-pricing-label {
  font-size: .72rem; font-weight: 700;           /* was .65rem */
  text-transform: uppercase; letter-spacing: .1em;
  color: var(--text-muted); margin-bottom: 14px;
}
.pd-plan-row {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px; border-radius: 10px; margin-bottom: 8px;
  background: var(--bg-base); border: 1px solid var(--border);
}
.pd-plan-name-wrap { display: flex; align-items: center; gap: 6px; margin-bottom: 3px; }
.pd-plan-name { font-size: .92rem; font-weight: 700; color: var(--text-primary); }
.pd-plan-popular {
  font-size: .62rem; font-weight: 700;           /* was .55rem â€” barely visible */
  padding: 2px 7px; border-radius: 8px;
  text-transform: uppercase; letter-spacing: .05em;
}
.pd-plan-limit { font-size: .78rem; color: var(--text-muted); }
.pd-plan-price-col { text-align: right; }
.pd-plan-price {
  font-size: 1.25rem; font-weight: 800;
  font-family: 'Sora', sans-serif; letter-spacing: -.03em;
  color: var(--accent-green);
}
.pd-plan-period  { font-size: .74rem; color: var(--text-muted); }   /* was .68rem */
.pd-plan-custom  { font-size: .92rem; font-weight: 700; color: var(--text-secondary); }
.pd-plan-contact { font-size: .74rem; color: var(--text-muted); }   /* was .68rem */
.pd-pricing-note {
  font-size: .75rem; color: var(--text-muted);   /* was .68rem */
  text-align: center; margin-top: 14px; line-height: 1.7;
}

/* Features â”€â”€ the most important section for readability */
.pd-features-eyebrow {
  font-size: .75rem; font-weight: 700;           /* was .65rem â€” 10.4px, very small */
  text-transform: uppercase; letter-spacing: .1em; margin-bottom: 8px;
}
.pd-features-title {
  font-size: 1.45rem; font-weight: 700;
  color: var(--text-primary); font-family: 'Sora', sans-serif;
  letter-spacing: -.03em; margin: 0;
}
.pd-feature-card {
  padding: 24px 22px;                            /* was 20px â€” more breathing room */
  transition: border-color .25s, box-shadow .25s, transform .25s;
}
.pd-feature-card:hover {
  border-color: var(--accent-green);
  box-shadow: var(--shadow-md);
  transform: translateY(-5px);
}
.pd-feature-card .icon-wrap-md { transition: transform .25s; }
.pd-feature-card:hover .icon-wrap-md { transform: scale(1.08); }
.pd-feature-name {
  font-size: 1rem; font-weight: 700;             /* was .88rem â€” key label */
  color: var(--text-primary);
  margin-bottom: 10px;                           /* was 5px â€” more space before desc */
  line-height: 1.3;
}
.pd-feature-desc {
  font-size: .9rem;                              /* was .78rem â€” hard to read in narrow cards */
  color: var(--text-secondary);
  line-height: 1.78;                             /* was 1.65 â€” better readability */
}

/* CTA strip */
.pd-cta-strip {
  padding: 32px 0;
  background: var(--bg-surface);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.pd-cta-title {
  font-size: 1.1rem; font-weight: 700;
  color: var(--text-primary); font-family: 'Sora', sans-serif; margin-bottom: 6px;
}
.pd-cta-sub { font-size: .9rem; color: var(--text-secondary); line-height: 1.7; }

/* â”€â”€ Product detail: utility actions row (Datasheet / WhatsApp / Talk to Sales) â”€â”€ */
.pd-action-utils {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 16px; margin-top: 1rem; margin-bottom: 1.25rem;
}
.pd-util-link {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: .82rem; font-weight: 600;
  color: var(--text-muted); text-decoration: none;
  transition: color .15s;
}
.pd-util-link:hover   { color: var(--text-secondary); }
.pd-util-link i       { font-size: .86rem; }
.pd-util-wa:hover     { color: #25d366; }
.pd-util-sep          { width: 1px; height: 14px; background: var(--border-hover); flex-shrink: 0; }

/* â”€â”€ Enterprise trust signals (replaces consumer-style "No credit card" pills) â”€â”€ */
.pd-ent-trust {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 14px; margin-top: .5rem;
}
.pd-ent-badge {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: .72rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .06em; color: var(--text-muted);
}
.pd-ent-badge i,
.pd-ent-badge span { font-size: .8rem; }

/* â”€â”€ Pricing panel in-panel CTA buttons â”€â”€ */
.pd-panel-cta-row { padding: 0 0 4px; margin-top: 14px; }

/* â”€â”€ Featured plan row: use CSS instead of inline style â”€â”€ */
.pd-plan-row.pd-plan-featured {
  background: var(--accent-green3);
  border: 1.5px solid rgba(42,157,63,.25);
}

/* ================================================================
   EXTRACTED FROM BLADE â€” replaces inline style="" attributes
   ================================================================ */

/* â”€â”€ PAGE SUB-HEADER (compact breadcrumb bar at top of pages) â”€â”€ */
.page-sub-header {
  border-bottom: 1px solid var(--border);
  background: var(--bg-surface);
  padding: 20px 0 22px;
}
.page-sub-header .kr-breadcrumb { margin-bottom: 6px; }
.page-sub-header-h1 {
  font-size: 1.35rem; font-weight: 700;
  color: var(--text-primary); font-family: 'Sora', sans-serif;
  letter-spacing: -.03em; margin-bottom: 4px;
}
.page-sub-header-p { font-size: .88rem; color: var(--text-secondary); margin: 0; }

/* Compact variant for cart / checkout / payment / order-success */
.page-sub-header-sm {
  border-bottom: 1px solid var(--border);
  background: var(--bg-surface);
  padding: 14px 0;
}
.page-sub-header-sm .kr-breadcrumb { margin-bottom: 2px; }
.page-sub-title {
  font-size: 1.05rem; font-weight: 700;
  color: var(--text-primary); font-family: 'Sora', sans-serif;
  letter-spacing: -.02em;
}

/* â”€â”€ SECTION MODIFIERS â”€â”€ */
.section-eyebrow-center  { justify-content: center; }
.section-title-sm        { font-size: clamp(1.5rem, 2.8vw, 2.2rem); }
.section-title-xs        { font-size: clamp(1.4rem, 2.5vw, 2rem); }
.kr-steps-flush          { margin: 0; }
.section-eyebrow-xs      { font-size: .62rem; margin-bottom: .75rem; }

/* â”€â”€ NAV DROPDOWN TEXT â”€â”€ */
.dd-item-name { font-size: .81rem; font-weight: 600; color: var(--text-primary); }
.kr-nav .dropdown-divider { border-color: var(--border); margin: 5px 4px; }

/* â”€â”€ MOBILE DRAWER â”€â”€ */
.drawer-item-name    { font-size: .84rem; font-weight: 600; color: var(--text-primary); }
.drawer-item-sub     { font-size: .7rem; color: var(--text-muted); }
.kr-drawer-link-indent { padding-left: 24px; font-size: .84rem; }
.drawer-chevron      { font-size: .65rem; opacity: .4; }
.nav-logo-sm         { height: 26px; }
.kr-nav-toggler      { color: var(--text-secondary); }

/* â”€â”€ FOOTER â”€â”€ */
.footer-link-ext-note   { font-size: .58rem; opacity: .55; }
.footer-contact-static  { cursor: default; }
.footer-reg-info        { color: rgba(255,255,255,0.7); line-height: 1.8; }

/* â”€â”€ PRICING PAGE â”€â”€ */
.glass-panel-bundle {
  padding: 36px;
  border-color: rgba(0,209,102,.25);
  background: linear-gradient(160deg, #f4fbf5, #fff);
}
.pricing-notice-compact { margin: 0; padding: 9px 14px; }
.bundle-price-amount    { font-family: 'Sora', sans-serif; font-size: 2rem; font-weight: 800; color: var(--accent-green); }
.enterprise-form-title  { font-size: .88rem; font-weight: 700; color: var(--text-primary); margin-bottom: 1.25rem; }
.segment-item           { display: flex; align-items: center; gap: 8px; font-size: .84rem; color: var(--text-secondary); }
.segment-icon           { color: var(--accent-green); font-size: .9rem; flex-shrink: 0; }
.pricing-faq-pt         { padding-top: 80px; }
.pricing-notice-bar     { padding: 12px 0; background: var(--bg-surface); border-bottom: 1px solid var(--border); }
.badge-pill-lg          { font-size: .7rem; padding: 5px 12px; }
.opacity-60             { opacity: .6; }
.rounded-12             { border-radius: 12px; }
.mt-2px                 { margin-top: 2px; }
.btn-guide              { font-size: .75rem; padding: .32rem .85rem; }

/* â”€â”€ FEATURE CHECK ICON (products + pricing) â”€â”€ */
.feat-check-icon { font-size: .72rem; flex-shrink: 0; margin-top: 2px; }

/* â”€â”€ BUTTON SIZE VARIANTS â”€â”€ */
.btn-sm-text { font-size: .84rem; }
.btn-xs-text { font-size: .85rem; }

/* â”€â”€ PRODUCTS PAGE â”€â”€ */
.products-footer-note { font-size: .875rem; color: var(--text-muted); }

/* Product catalog table */
.kr-prod-table { width: 100%; border-collapse: collapse; }
.kr-prod-table thead th { background: var(--bg-base); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--text-muted); padding: 10px 16px; border-bottom: 2px solid var(--border); white-space: nowrap; }
.kr-prod-table tbody tr { border-bottom: 1px solid var(--border); transition: background .15s; }
.kr-prod-table tbody tr:last-child { border-bottom: none; }
.kr-prod-table tbody tr:hover { background: var(--bg-base); }
.kr-prod-table td { padding: 14px 16px; vertical-align: middle; }
.kr-prod-row-name { font-size: .95rem; font-weight: 700; color: var(--text-primary); text-decoration: none; line-height: 1.3; }
.kr-prod-row-name:hover { color: var(--accent-green); }
.kr-prod-row-feat { font-size: .76rem; color: var(--text-secondary); display: flex; align-items: center; gap: 5px; line-height: 1.5; }
.kr-prod-row-feat::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: var(--accent-green); flex-shrink: 0; }

/* Product category tabs — overrides Bootstrap nav-pills */
.kr-prod-tabs { border-bottom: 2px solid var(--border); gap: 0; flex-wrap: wrap; }
.kr-prod-tabs .nav-link { background: none; border: none; border-bottom: 2px solid transparent; border-radius: 0; margin-bottom: -2px; padding: .7rem 1.1rem; font-size: .85rem; font-weight: 600; color: var(--text-secondary); display: inline-flex; align-items: center; gap: 7px; transition: color .15s, border-color .15s; white-space: nowrap; }
.kr-prod-tabs .nav-link i { opacity: .65; transition: opacity .15s; }
.kr-prod-tabs .nav-link:hover { color: var(--text-primary); border-bottom-color: var(--border-hover); background: none; }
.kr-prod-tabs .nav-link:hover i { opacity: 1; }
.kr-prod-tabs .nav-link.active { color: var(--accent-green); border-bottom-color: var(--accent-green); background: none; }
.kr-prod-tabs .nav-link.active i { opacity: 1; }

/* â”€â”€ DOWNLOADS PAGE â”€â”€ */
.dl-outer-section   { padding: 32px 0 56px; }
.dl-section-label   { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--text-muted); margin-bottom: 16px; }
.dl-guide-heading   { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--accent-green); margin-bottom: 14px; }
.dl-step-wrap       { display: flex; align-items: flex-start; gap: 12px; }
.dl-step-num        {
  width: 28px; height: 28px; border-radius: 50%;
  background: rgba(0,209,102,.12); border: 1px solid rgba(0,209,102,.2);
  color: var(--accent-green); display: flex; align-items: center; justify-content: center;
  font-size: .7rem; font-weight: 800; flex-shrink: 0;
  font-family: 'JetBrains Mono', monospace;
}
.dl-step-title      { font-size: .84rem; font-weight: 700; color: var(--text-primary); margin-bottom: 2px; }
.dl-step-desc       { font-size: .78rem; color: var(--text-secondary); line-height: 1.6; }
.dl-installer-row   { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.dl-installer-name  { font-size: 1rem; font-weight: 700; color: var(--text-primary); }
.dl-installer-desc  { font-size: .78rem; color: var(--text-secondary); }
.dl-installer-meta  { display: flex; align-items: center; gap: 6px; font-size: .74rem; color: var(--text-muted); }
.dl-installer-footer{ font-size: .7rem; color: var(--text-muted); margin-top: 6px; text-align: center; }
.dl-product-name    { font-size: .92rem; font-weight: 700; color: var(--text-primary); margin-bottom: 3px; }
.dl-product-desc    { font-size: .78rem; color: var(--text-secondary); line-height: 1.65; margin-bottom: 12px; }
.dl-product-meta-row{ display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.dl-product-platform{ display: flex; align-items: center; gap: 5px; font-size: .72rem; color: var(--text-muted); }
.dl-coming-soon     { font-size: .72rem; color: var(--text-muted); font-style: italic; }
.info-box-sm        { font-size: .82rem; }
.dl-help-title      { font-weight: 700; color: var(--text-primary); margin-bottom: 3px; }

/* â”€â”€ SUPPORT PAGE â”€â”€ */
.support-search-wrap  { flex-shrink: 0; min-width: 260px; max-width: 340px; width: 100%; }
.support-search-box   {
  background: var(--bg-base); border: 1.5px solid var(--border);
  border-radius: 10px; padding: 7px 14px;
  display: flex; align-items: center; gap: 10px;
}
.support-search-input {
  background: none; border: none; outline: none;
  color: var(--text-primary); font-family: 'Outfit', sans-serif;
  font-size: .87rem; width: 100%;
}
.glass-panel-status-ok  { border-color: rgba(0,209,102,.2); }
.status-header-row      { display: flex; align-items: center; gap: 8px; margin-bottom: 1rem; }
.status-system-dot      { width: 10px; height: 10px; border-radius: 50%; background: var(--accent-green); box-shadow: 0 0 8px var(--accent-green); flex-shrink: 0; }
.status-service-item    { padding: 6px 0; border-bottom: 1px solid var(--border); font-size: .8rem; display: flex; justify-content: space-between; align-items: center; }
.status-operational     { font-size: .7rem; font-weight: 600; }
.support-desc-grow      { flex: 1; margin-bottom: 1.25rem; }
.support-channel-cta    { font-size: .8rem; font-weight: 600; display: flex; align-items: center; gap: 5px; margin-top: auto; }

/* â”€â”€ DEMO PAGE â”€â”€ */
.demo-side-title        { font-size: 1.3rem; margin-bottom: 1.5rem; }

/* â”€â”€ CART / CHECKOUT / PAYMENT â”€â”€ */
.cart-section           { padding: 32px 0 48px; }
.form-section-label     { font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--text-muted); margin-bottom: 16px; }
.form-divider           { height: 1px; background: var(--border); margin: 4px 0 20px; }
.label-optional         { color: var(--text-muted); font-weight: 400; }
.btn-checkout-submit    { padding: .85rem 1.5rem; font-size: .95rem; }
.form-ssl-note          { text-align: center; font-size: .72rem; color: var(--text-muted); margin-top: 10px; }
.payment-method-item    { display: flex; align-items: center; gap: 7px; font-size: .75rem; color: var(--text-secondary); }
.payment-method-icon    { font-size: .78rem; color: var(--accent-green); flex-shrink: 0; }
.checkout-side-section  { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--border); }
.accepted-via-label     { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; color: var(--text-muted); margin-bottom: 10px; }
.payment-summary-meta   { flex: 1; font-size: .8rem; color: var(--text-secondary); }
.payment-summary-amount { font-weight: 700; font-size: .86rem; color: var(--accent-green); }
.payment-error-box      {
  background: #fef2f2; border: 1px solid rgba(239,68,68,.2);
  border-radius: var(--radius); padding: 12px 16px; margin-bottom: 20px;
  display: flex; gap: 10px; align-items: center;
  font-size: .875rem; color: #c62828;
}
.payment-ccav-note      { text-align: center; font-size: .71rem; color: var(--text-muted); margin-top: 10px; }
.ccav-iframe-init       { opacity: 0; transition: opacity .3s; }

/* â”€â”€ ORDER SUCCESS â”€â”€ */
.order-success-section  { padding: 40px 0 56px; }
.success-icon-sm        { width: 56px; height: 56px; font-size: 1.4rem; margin: 0 auto 16px; }
.order-success-title    { font-size: 1.5rem; font-weight: 700; color: var(--text-primary); margin-bottom: 8px; font-family: 'Sora', sans-serif; letter-spacing: -.03em; }
.order-success-sub      { font-size: .88rem; color: var(--text-secondary); max-width: 440px; margin: 0 auto; }
.order-section-label    { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--text-muted); margin-bottom: 16px; }
.order-detail-name      { font-size: .82rem; font-weight: 600; color: var(--text-primary); }
.order-detail-sub       { font-size: .72rem; color: var(--text-muted); }
.order-total-row        { display: flex; justify-content: space-between; align-items: center; padding-top: 12px; border-top: 1px solid var(--border); margin-top: 4px; }
.order-total-label      { font-size: .88rem; font-weight: 700; color: var(--text-primary); }
.order-grand-total      { font-size: 1rem; font-weight: 800; color: var(--accent-green); }

/* ── ORDER FAILED ── */
.failure-icon-sm        { width: 56px; height: 56px; font-size: 1.4rem; margin: 0 auto 16px; border-radius: 50%; background: rgba(198,40,40,.08); border: 2px solid rgba(198,40,40,.25); display: flex; align-items: center; justify-content: center; color: var(--accent-red); }
.kr-step.failed         { color: var(--accent-red); }
.kr-step.failed .kr-step-num { border-color: var(--accent-red); background: rgba(198,40,40,.08); color: var(--accent-red); }
.next-step-icon-red     { background: rgba(198,40,40,.08); border-color: rgba(198,40,40,.12); color: var(--accent-red); }

/* â”€â”€ ERROR PAGES â”€â”€ */
.error-page-section     { min-height: 70vh; display: flex; align-items: center; padding: 80px 0; }
.error-code-display     { font-family: 'JetBrains Mono', monospace; font-size: clamp(5rem, 12vw, 8rem); font-weight: 800; line-height: 1; letter-spacing: -.04em; color: var(--border); margin-bottom: 1rem; display: inline-block; }
.error-h1               { font-size: clamp(1.5rem, 3vw, 2.2rem); margin-bottom: 1rem; }
.error-sub              { color: var(--text-secondary); max-width: 420px; margin: 0 auto 2.5rem; line-height: 1.82; font-size: 1rem; }
.error-500-badge        { justify-content: center; background: rgba(239,68,68,.08); border-color: rgba(239,68,68,.18); color: var(--accent-red); }
.error-quick-links-label{ font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--text-muted); margin-bottom: 1rem; }
.error-quick-link       { display: flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 8px; font-size: .84rem; color: var(--text-secondary); transition: all .15s; text-decoration: none; }
.error-404-link:hover   { background: var(--bg-base); color: var(--accent-green); }
.error-500-link:hover   { background: var(--bg-base); color: var(--accent-red); }
.error-404-icon         { font-size: .85rem; color: var(--accent-green); flex-shrink: 0; }
.error-500-icon         { font-size: .85rem; color: var(--accent-red); flex-shrink: 0; }

/* â”€â”€ SECTION EYEBROW COLOR VARIANTS (product-detail MFA sections) â”€â”€ */
.section-eyebrow-red    { color: #ef4444; }
.section-eyebrow-blue   { color: var(--accent-blue); }
.section-eyebrow-purple { color: var(--accent-purple); }

/* â”€â”€ PRODUCT DETAIL: MFA SECTION LIST ROWS â”€â”€ */
.mfa-problem-item  { padding: 13px 20px; }
.mfa-rbi-item      { padding: 12px 18px; }
.cross-icon        { font-size: .9rem; flex-shrink: 0; }
.check-icon-sm     { flex-shrink: 0; font-size: .82rem; }

/* â”€â”€ NAV DROPDOWN ICON BOX â€” unified Krypton brand color â”€â”€ */
.nav-icon-ksi,
.nav-icon-mfa,
.nav-icon-keb,
.nav-icon-edr,
.nav-icon-ztna,
.nav-icon-fwlog,
.nav-icon-eps   { background: var(--accent-green3); border: 1px solid rgba(42,157,63,.2); color: var(--accent-green); }
.nav-icon-all   { background: rgba(255,255,255,.04); border: 1px solid var(--border); color: var(--text-muted); }
.dd-item-name-muted { font-size: .81rem; font-weight: 600; color: var(--text-secondary); }

/* â”€â”€ DOWNLOADS PAGE GLASS PANELS â”€â”€ */
.glass-panel-dl-guide     { padding: 20px 24px; margin-bottom: 32px; border-color: rgba(0,209,102,.2); background: linear-gradient(160deg,#f4fbf5,#fff); }
.glass-panel-dl-installer { padding: 22px 24px; margin-bottom: 28px; border-color: rgba(0,209,102,.25); }
.dl-product-card-wrap     { padding: 18px 20px; display: flex; gap: 14px; align-items: flex-start; }

/* â”€â”€ HOME PAGE â”€â”€ */
.glass-panel-step-featured { padding: 32px; border-color: rgba(0,209,102,.15); }
.glass-panel-step-plain    { padding: 32px; }

/* Defense-in-depth flow (unified platform story) */
.kr-flow          { display: flex; align-items: stretch; justify-content: center; }
.kr-flow-step     { flex: 1 1 0; min-width: 0; text-align: center; padding: 8px 10px; }
.kr-flow-step-num { font-family: 'JetBrains Mono', monospace; font-size: .62rem; font-weight: 700; letter-spacing: .1em; color: var(--text-muted); margin-bottom: 4px; }
.kr-flow-label    { font-family: 'Sora', sans-serif; font-size: .98rem; font-weight: 700; color: var(--text-primary); margin-bottom: 5px; }
.kr-flow-desc     { font-size: .78rem; color: var(--text-secondary); line-height: 1.55; margin: 0; }
.kr-flow-arrow    { display: flex; align-items: center; flex: 0 0 auto; color: var(--border-hover); font-size: 1.1rem; }
@media (max-width: 991px) {
  .kr-flow        { flex-wrap: wrap; }
  .kr-flow-step   { flex: 0 0 33.333%; }
  .kr-flow-arrow  { display: none; }
}
@media (max-width: 575px) {
  .kr-flow-step   { flex: 0 0 50%; }
}

/* Product comparison table ("X vs Y") */
.kr-cmp-table th:not(:first-child),
.kr-cmp-table td:not(:first-child) { text-align: center; }
.kr-cmp-table th:first-child,
.kr-cmp-table td:first-child       { width: 42%; }
.kr-cmp-table thead th:not(:first-child) { color: var(--text-primary); }
.kr-cmp-cap  { font-weight: 600; color: var(--text-primary); }
.kr-cmp-note { display: flex; align-items: center; gap: 8px; padding: 14px 16px; border-top: 1px solid var(--border); background: var(--bg-base); font-size: .82rem; color: var(--text-secondary); }

/* â”€â”€ DEMO PAGE TRUST PANEL â”€â”€ */
.glass-panel-trust-ok { border-color: rgba(0,209,102,.2); }

/* â”€â”€ ORDER SUCCESS â”€â”€ */
.glass-panel-order-details { padding: 20px 24px; margin-bottom: 20px; }

/* â”€â”€ ERROR PAGE BADGE VARIANTS â”€â”€ */
.error-403-badge { justify-content: center; background: rgba(245,158,11,.08); border-color: rgba(245,158,11,.18); color: var(--accent-orange); }
.error-419-badge { justify-content: center; background: rgba(0,200,255,.08); border-color: rgba(0,200,255,.18); color: var(--accent-cyan); }
.error-403-icon  { font-size: .85rem; color: var(--accent-orange); flex-shrink: 0; }
.error-419-icon  { font-size: .85rem; color: var(--accent-cyan); flex-shrink: 0; }
.error-403-link:hover { background: var(--bg-base); color: var(--accent-orange); }
.error-419-link:hover { background: var(--bg-base); color: var(--accent-cyan); }

/* ================================================================
   INDIA-SPECIFIC COMPONENTS
   ================================================================ */


/* â”€â”€ Compliance / trust strip â”€â”€ */
/* â”€â”€ Compliance Frameworks strip â”€â”€ */
.trust-strip {
  padding: 48px 0;
  background: var(--bg-base);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.trust-strip-label {
  font-size: .7rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .12em; color: var(--text-muted);
  text-align: center; margin-bottom: 1.75rem;
}
.trust-badges-row {
  display: flex; justify-content: center;
  flex-wrap: wrap; gap: 8px;
}
.trust-badge {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 10px 18px; border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--bg-surface);
  box-shadow: 0 1px 3px rgba(15,31,46,.05);
  transition: border-color .2s, box-shadow .2s, transform .15s;
  cursor: default;
}
.trust-badge:hover {
  border-color: rgba(42,157,63,.35);
  box-shadow: 0 3px 10px rgba(15,31,46,.08);
  transform: translateY(-1px);
}
.trust-badge i { font-size: .92rem; color: var(--accent-green); flex-shrink: 0; }
.trust-badge-text { display: flex; flex-direction: column; gap: 1px; }
.trust-badge-name { font-size: .8rem; font-weight: 700; color: var(--text-primary); line-height: 1.2; white-space: nowrap; }
.trust-badge-desc { font-size: .66rem; color: var(--text-muted); line-height: 1.2; white-space: nowrap; }

/* Dark trust band — pairs with the dark stats section to form one enterprise credibility zone */
.trust-strip-dark {
  background: linear-gradient(155deg, #0f172a 0%, #14213d 58%, #081120 100%);
  border-top: 1px solid #0b1424;
  border-bottom: 1px solid #0b1424;
}
.trust-strip-dark .trust-strip-label { color: rgba(255,255,255,.5); }
.trust-strip-dark .trust-badge { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.10); box-shadow: none; }
.trust-strip-dark .trust-badge:hover { border-color: rgba(76,222,118,.4); background: rgba(255,255,255,.07); box-shadow: 0 4px 14px rgba(0,0,0,.3); }
.trust-strip-dark .trust-badge i { color: #4cde76; }
.trust-strip-dark .trust-badge-name { color: #fff; }
.trust-strip-dark .trust-badge-desc { color: rgba(255,255,255,.5); }

/* â”€â”€ GST breakdown note â”€â”€ */
.gst-breakdown {
  font-size: .74rem; color: var(--text-muted);
  border-top: 1px solid var(--border);
  padding-top: 10px; margin-top: 10px; line-height: 1.6;
}
.gst-total { font-weight: 700; color: var(--accent-green); }

/* â”€â”€ Per-endpoint note â”€â”€ */
.per-unit-note {
  font-size: .70rem; color: var(--text-muted);
  margin-top: 3px; font-family: 'JetBrains Mono', monospace;
}


/* â”€â”€ Windows compatibility strip â”€â”€ */
.windows-compat {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 16px 20px;
  display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
}
.windows-compat-label {
  font-size: .74rem; font-weight: 700; color: var(--text-muted);
  text-transform: uppercase; letter-spacing: .07em;
  margin-right: 4px; flex-shrink: 0;
}
.windows-compat-badge {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: .74rem; font-weight: 600; color: var(--text-secondary);
  background: var(--bg-base); border: 1px solid var(--border);
  padding: 4px 10px; border-radius: 6px;
}
.windows-compat-badge i { color: #0078d4; font-size: .8rem; }

/* â”€â”€ UPI / payment icons strip â”€â”€ */
.payment-methods-strip {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 8px; margin-top: 12px;
}
.payment-methods-strip-label {
  font-size: .70rem; font-weight: 600; color: var(--text-muted);
  text-transform: uppercase; letter-spacing: .07em; flex-shrink: 0;
}
.pay-badge {
  font-size: .68rem; font-weight: 700; letter-spacing: .04em;
  padding: 3px 10px; border-radius: 5px;
  border: 1px solid var(--border); background: var(--bg-base);
  color: var(--text-secondary); white-space: nowrap;
}
.pay-badge-upi   { border-color: #5f259f33; color: #5f259f; background: #f5effe; }
.pay-badge-po    { border-color: rgba(42,157,63,.25); color: var(--accent-green2); background: var(--accent-green3); }


/* â”€â”€ TDS note (order success / checkout) â”€â”€ */
.tds-note {
  font-size: .78rem; color: var(--text-muted);
  background: var(--bg-base); border: 1px solid var(--border);
  border-radius: 8px; padding: 10px 14px; line-height: 1.7;
  margin-top: 14px;
}
.tds-note i { color: var(--accent-blue); flex-shrink: 0; margin-top: 2px; }

/* â”€â”€ Mobile: WhatsApp primary CTA â”€â”€ */
@media (max-width: 480px) {
  .float-wa {
    order: -1;                        /* show WhatsApp first in float hub */
    background: #25d366;
    box-shadow: 0 4px 18px rgba(37,211,102,.45);
  }
}

/* ================================================================
   ROUND 2 â€” UI IMPROVEMENTS
   ================================================================ */

/* Festival banner removed â€” website is enterprise-only, no seasonal promotions */

/* â”€â”€ Live Support Status Dot â”€â”€ */
.support-status-indicator {
  display: inline-block; width: 7px; height: 7px;
  border-radius: 50%; margin-left: 5px;
  vertical-align: middle; flex-shrink: 0;
  transition: background .3s;
}
.support-online  { background: var(--accent-green); box-shadow: 0 0 0 2px rgba(42,157,63,.25); animation: kpulse 2s infinite; }
.support-offline { background: var(--border-hover); }

/* Dark mode toggle removed — single consistent theme only */

/* â”€â”€ Company Timeline â”€â”€ */
.timeline { position: relative; padding: 10px 0; }
.timeline::before { content: ''; position: absolute; left: 18px; top: 0; bottom: 0; width: 2px; background: var(--border); }
.timeline-item { display: flex; gap: 18px; margin-bottom: 28px; position: relative; }
.timeline-item:last-child { margin-bottom: 0; }
.timeline-dot { width: 38px; height: 38px; border-radius: 50%; background: #fff; border: 2px solid var(--accent-green); display: flex; align-items: center; justify-content: center; font-size: .68rem; font-weight: 800; font-family: 'JetBrains Mono', monospace; color: var(--accent-green); flex-shrink: 0; z-index: 1; position: relative; }
.timeline-content { padding-top: 6px; }
.timeline-year { font-size: .7rem; font-weight: 700; color: var(--accent-green); font-family: 'JetBrains Mono', monospace; letter-spacing: .06em; margin-bottom: 2px; }
.timeline-title { font-size: .95rem; font-weight: 700; color: var(--text-primary); margin-bottom: 3px; }
.timeline-desc { font-size: .84rem; color: var(--text-secondary); line-height: 1.6; }

/* â”€â”€ Mobile Bottom Navigation â”€â”€ */
.bottom-nav {
  display: none;
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 1035;
  background: rgba(255,255,255,.95); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid var(--border);
  padding: 6px 0 calc(6px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -4px 20px rgba(15,31,46,.08);
}
.bottom-nav-list { display: flex; justify-content: space-around; list-style: none; margin: 0; padding: 0; }
.bottom-nav-item { flex: 1; }
.bottom-nav-link {
  display: flex; flex-direction: column; align-items: center; gap: 3px;
  padding: 5px 4px; font-size: .60rem; font-weight: 600; letter-spacing: .02em;
  color: var(--text-muted); text-decoration: none; transition: color .15s;
  text-transform: uppercase;
}
.bottom-nav-link:hover, .bottom-nav-link.active { color: var(--accent-green); }
.bottom-nav-link i { font-size: 1.1rem; }
@media (max-width: 991px) {
  .bottom-nav { display: block; }
  main { padding-bottom: 64px; }
  #float-hub { bottom: 76px; }
}

/* â”€â”€ Sticky Product CTA (mobile) â”€â”€ */
.sticky-product-cta {
  display: none;
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 1034;
  background: rgba(255,255,255,.97); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid var(--border);
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -4px 20px rgba(15,31,46,.1);
}
@media (max-width: 991px) {
  .sticky-product-cta { display: flex; align-items: center; gap: 10px; }
  .sticky-product-cta .btn-kr-primary,
  .sticky-product-cta .btn-kr-outline { flex: 1; justify-content: center; font-size: .86rem; padding: .7rem 1rem; }
  .sticky-product-cta-price { font-family: 'Sora', sans-serif; font-weight: 800; font-size: 1rem; color: var(--accent-green); white-space: nowrap; }
  .sticky-product-cta-label { font-size: .66rem; color: var(--text-muted); display: block; }
}

/* â”€â”€ Product FAQ â”€â”€ */
.product-faq-title { font-size: .9rem; font-weight: 700; color: var(--text-primary); margin-bottom: 1rem; display: flex; align-items: center; gap: 8px; }

/* â”€â”€ Savings Reference Section â”€â”€ */
.savings-table { width: 100%; border-collapse: collapse; }
.savings-table th { background: var(--bg-base); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; padding: 9px 14px; border-bottom: 2px solid var(--border); color: var(--text-muted); text-align: left; }
.savings-table td { padding: 11px 14px; border-bottom: 1px solid var(--border); font-size: .88rem; color: var(--text-secondary); }
.savings-table tr:last-child td { border-bottom: none; }
.savings-table .savings-amount { color: var(--accent-green); font-weight: 700; font-family: 'Sora', sans-serif; }
.savings-table .savings-plan { font-weight: 600; color: var(--text-primary); }

/* â”€â”€ Downloads version info â”€â”€ */
.dl-version-info { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
.dl-version-badge { font-family: 'JetBrains Mono', monospace; font-size: .68rem; font-weight: 700; color: var(--accent-green); background: var(--accent-green3); border: 1px solid rgba(42,157,63,.2); padding: 2px 8px; border-radius: 4px; }
.dl-file-meta { font-size: .70rem; color: var(--text-muted); }

/* â”€â”€ GST Invoice download button â”€â”€ */
.gst-invoice-btn {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: .84rem; font-weight: 600; color: var(--accent-green);
  background: var(--accent-green3); border: 1px solid rgba(42,157,63,.25);
  padding: 8px 18px; border-radius: 8px; cursor: pointer;
  text-decoration: none; transition: all .2s;
}
.gst-invoice-btn:hover { background: rgba(42,157,63,.15); color: var(--accent-green); }


/* ================================================================
   INDIA-SPECIFIC ROUND 3
   ================================================================ */

/* Language toggle removed â€” website operates in English only */

/* â”€â”€ Nav phone CTA (desktop â‰¥ xl only) â”€â”€ */
.nav-phone-cta {
  align-items: center; gap: 6px;
  font-size: .875rem; font-weight: 600;  /* matches btn-kr-primary in nav */
  color: var(--text-secondary);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: .48rem 1.2rem;               /* matches .kr-nav .btn-kr-primary */
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap;
}
.nav-phone-cta:hover { border-color: var(--accent-green); color: var(--accent-green); }
.nav-phone-cta i     { font-size: .8rem; color: var(--accent-green); }
.nav-phone-num       { font-size: .875rem; }

/* â”€â”€ SLA Table â”€â”€ */
.sla-table-wrap { overflow-x: auto; }
.sla-table { width: 100%; border-collapse: collapse; }
.sla-table th { background: var(--bg-base); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; padding: 10px 14px; border-bottom: 2px solid var(--accent-green); color: var(--text-muted); text-align: left; white-space: nowrap; }
.sla-table td { padding: 12px 14px; border-bottom: 1px solid var(--border); font-size: .88rem; color: var(--text-secondary); vertical-align: middle; }
.sla-table tr:last-child td { border-bottom: none; }
.sla-table tr:hover td { background: var(--bg-base); }
.sla-tier-name { font-weight: 700; color: var(--text-primary); }
.sla-highlight { color: var(--accent-green); font-weight: 700; }

/* â”€â”€ Escalation Matrix â”€â”€ */
.escalation-level { width: 36px; height: 36px; border-radius: 50%; background: var(--accent-green3); border: 2px solid rgba(42,157,63,.25); display: flex; align-items: center; justify-content: center; font-size: .72rem; font-weight: 800; color: var(--accent-green); flex-shrink: 0; font-family: 'JetBrains Mono', monospace; }

/* â”€â”€ Amount in Words â”€â”€ */
.amount-in-words { font-size: .76rem; color: var(--text-muted); font-style: italic; margin-top: 3px; line-height: 1.5; }

/* â”€â”€ Partner / Dealer Inquiry Section â”€â”€ */
.partner-benefit { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 1rem; }
.partner-benefit-icon { width: 36px; height: 36px; border-radius: 9px; background: var(--accent-green3); border: 1px solid rgba(42,157,63,.2); display: flex; align-items: center; justify-content: center; font-size: 15px; color: var(--accent-green); flex-shrink: 0; }
.partner-benefit-title { font-size: .92rem; font-weight: 700; color: var(--text-primary); margin-bottom: 2px; }
.partner-benefit-desc { font-size: .82rem; color: var(--text-secondary); line-height: 1.6; }
