/*
Theme Name: KNS Money
Theme URI: https://knsmoney.com
Author: Z3Infotech
Author URI: https://z3infotech.com
Description: Custom theme for KNS Money — an AMFI-registered mutual fund, insurance and wealth advisory distributor. Built as a bespoke design (deep-blue / charcoal-grey brand system) rather than a page-builder theme, so it is a self-contained parent theme, not a child theme.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: kns-money
*/

/* =======================================================
   1. DESIGN TOKENS (CSS variables) — the whole theming system
   ======================================================= */
:root{
  --navy-950:#0a1e3d;--navy-900:#0d2748;--navy-800:#123561;--navy-700:#1a4a86;
  --blue-600:#2563c9;--blue-500:#3b7ddb;--gold-500:#c9a24b;--gold-400:#d9b968;
  --charcoal-900:#3a3d42;--charcoal-800:#4a4e55;--charcoal-700:#5b5f67;
  --header-bg:#ffffff;--header-border:#e4e6ea;--header-text:var(--charcoal-900);--header-text-muted:#6b6f76;
  --gray-50:#f6f8fb;--gray-100:#eef1f6;--gray-200:#dde3ec;--gray-300:#c3ccd9;--gray-500:#7c8aa0;--gray-700:#4b566b;
  --bg:#ffffff;--bg-subtle:var(--gray-50);--bg-inverse:var(--navy-950);
  --surface:#ffffff;--surface-inverse:var(--navy-900);
  --border:var(--gray-200);--border-inverse:rgba(255,255,255,.14);
  --text:var(--navy-950);--text-muted:var(--gray-700);
  --text-inverse:#f3f6fb;--text-inverse-muted:#a9b8d1;
  --accent:var(--blue-600);--accent-strong:var(--navy-800);--gold:var(--gold-500);
  --focus:var(--blue-500);
  --shadow-sm:0 1px 2px rgba(10,30,61,.06);--shadow-md:0 8px 24px rgba(10,30,61,.10);--shadow-lg:0 20px 48px rgba(10,30,61,.16);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0b1526;--bg-subtle:#0f1c33;--bg-inverse:#f6f8fb;--surface:#101f38;--surface-inverse:#f3f6fb;
    --border:rgba(255,255,255,.10);--border-inverse:rgba(10,30,61,.10);
    --text:#eef2f8;--text-muted:#a9b8d1;--text-inverse:var(--navy-950);--text-inverse-muted:var(--gray-700);
    --shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 8px 24px rgba(0,0,0,.4);--shadow-lg:0 20px 48px rgba(0,0,0,.5);
  }
}
:root[data-theme="dark"]{
  --bg:#0b1526;--bg-subtle:#0f1c33;--bg-inverse:#f6f8fb;--surface:#101f38;--surface-inverse:#f3f6fb;
  --border:rgba(255,255,255,.10);--border-inverse:rgba(10,30,61,.10);
  --text:#eef2f8;--text-muted:#a9b8d1;--text-inverse:var(--navy-950);--text-inverse-muted:var(--gray-700);
  --shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 8px 24px rgba(0,0,0,.4);--shadow-lg:0 20px 48px rgba(0,0,0,.5);
}

/* =======================================================
   2. BASE / RESET
   ======================================================= */
*{box-sizing:border-box;}
body{background:var(--bg);color:var(--text);font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.55;margin:0;padding-inline:0;}
h1,h2,h3,.display{font-family:'Fraunces',Georgia,'Times New Roman',serif;font-weight:600;letter-spacing:-0.01em;text-wrap:balance;color:var(--text);margin:0;}
a{color:inherit;text-decoration:none;}
main a:not(.btn):not(.go):not(.value):not(.tbc-inline){text-decoration:none;}
.prose a,.article-shell a,.disclosure-shell a{color:var(--accent);text-decoration:underline;}
ul{list-style:none;margin:0;padding:0;}
img{max-width:100%;display:block;height:auto;}
button,input,textarea,select{font-family:inherit;}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px;}
.screen-reader-text{position:absolute;left:-9999px;}

/* =======================================================
   3. LAYOUT PRIMITIVES
   ======================================================= */
.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);}
.eyebrow.on-dark{color:var(--gold-400);}
.wrap{max-width:1200px;margin-inline:auto;padding-inline:24px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:8px;font-weight:600;font-size:.95rem;border:1px solid transparent;cursor:pointer;transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease;white-space:nowrap;text-decoration:none;}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--gold-500);color:var(--navy-950);}
.btn-primary:hover{background:var(--gold-400);box-shadow:var(--shadow-md);}
.btn-ghost{background:transparent;color:var(--text-inverse);border-color:var(--border-inverse);}
.btn-ghost:hover{background:rgba(255,255,255,.06);}
.btn-outline{background:transparent;color:var(--accent-strong);border-color:var(--border);}
.btn-outline:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);}
.btn-sm{padding:8px 14px;font-size:.82rem;border-radius:7px;}
section{padding-block:76px;}
.section-head{max-width:640px;margin-bottom:44px;}
.section-head h2{font-size:clamp(1.6rem,2.6vw,2.15rem);margin-block:10px 12px;}
.section-head p{color:var(--text-muted);font-size:1.02rem;}
.section-alt{background:var(--bg-subtle);}
::selection{background:var(--gold-500);color:var(--navy-950);}

/* =======================================================
   4. HEADER + PARENT/CHILD DROPDOWN NAV (wp_nav_menu walker output)
   ======================================================= */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:var(--header-bg);border-bottom:1px solid var(--header-border);box-shadow:var(--shadow-sm);}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding-block:10px;}
.logo,.logo-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-family:'Fraunces',serif;font-weight:600;font-size:1.25rem;color:var(--header-text);text-decoration:none;text-align:center;}
.logo-mark{display:flex;align-items:center;justify-content:center;}
.logo .mark{width:34px;height:34px;border-radius:8px;background:linear-gradient(155deg,var(--charcoal-900),var(--charcoal-700));display:flex;align-items:center;justify-content:center;color:#ffffff;font-weight:800;font-size:.95rem;flex:none;}
.logo img{max-height:34px;width:auto;display:block;margin:0 auto;}
.logo-text{display:block;font-size:.85rem;font-weight:700;letter-spacing:.02em;line-height:1;text-align:center;color:var(--header-text);text-decoration:none;}
nav.primary{display:flex;align-items:center;gap:32px;}
nav.primary > ul{display:flex;align-items:center;gap:32px;}
nav.primary a{font-size:.92rem;font-weight:500;color:var(--header-text-muted);transition:color .15s ease;text-decoration:none;}
nav.primary > ul > li > a:hover,nav.primary > ul > li > a[aria-current="page"]{color:var(--header-text);}
.has-children{position:relative;}
.nav-link{display:flex;align-items:center;gap:5px;padding-block:26px;cursor:pointer;}
.nav-link .chev{transition:transform .15s ease;flex:none;}
.has-children:hover .nav-link .chev,.has-children:focus-within .nav-link .chev{transform:rotate(180deg);}
.dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%,6px);min-width:248px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:8px;opacity:0;visibility:hidden;transition:opacity .15s ease, transform .15s ease, visibility .15s ease;z-index:50;}
.has-children:hover .dropdown,.has-children:focus-within .dropdown{opacity:1;visibility:visible;transform:translate(-50%,10px);}
.dropdown a{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:8px;color:var(--text);font-weight:500;font-size:.9rem;text-decoration:none;}
.dropdown a:hover,.dropdown a[aria-current="page"]{background:var(--bg-subtle);color:var(--accent-strong);}
.dropdown a span{font-weight:400;font-size:.78rem;color:var(--text-muted);}
.dropdown a:hover span{color:var(--text-muted);}
.nav-actions{display:flex;align-items:center;gap:14px;}
.nav-phone{font-size:.88rem;color:var(--header-text-muted);display:flex;align-items:center;gap:6px;}
.menu-toggle{display:none;background:none;border:0;color:var(--header-text);padding:6px;cursor:pointer;}
@media (max-width:920px){
  nav.primary,.nav-phone{display:none;}
  .menu-toggle{display:block;}
  nav.primary.mobile-open{
    display:flex;position:absolute;top:76px;left:0;right:0;background:var(--surface);
    border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);flex-direction:column;padding:8px 0;
  }
  nav.primary.mobile-open > ul{flex-direction:column;align-items:stretch;gap:0;width:100%;}
  nav.primary.mobile-open .nav-link{padding:16px 24px;}
  nav.primary.mobile-open .dropdown{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:none;border-radius:0;background:var(--bg-subtle);display:none;}
  nav.primary.mobile-open .has-children.open .dropdown{display:flex;flex-direction:column;}
}

/* =======================================================
   5. HOMEPAGE HERO + SIP CALCULATOR
   ======================================================= */
.hero{
  background:radial-gradient(ellipse 900px 500px at 85% -10%, rgba(201,162,75,.16), transparent 60%),linear-gradient(165deg, var(--navy-950), var(--navy-900) 55%, var(--navy-800));
  color:var(--text-inverse);padding-block:72px 88px;position:relative;overflow:hidden;
}
.hero::after{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,.5) 40%, transparent 85%);
          mask-image:linear-gradient(180deg, transparent, rgba(0,0,0,.5) 40%, transparent 85%);
  pointer-events:none;
}
.hero-inner{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;}
@media (max-width:920px){ .hero-inner{grid-template-columns:1fr;} }
.hero h1{font-size:clamp(2.1rem,4.2vw,3.2rem);line-height:1.12;margin-block:16px 20px;color: #fff;}
.hero h1 em{font-style:normal;color:var(--gold-400);}
.hero p.lede{font-size:1.08rem;color:var(--text-inverse-muted);max-width:46ch;margin-bottom:30px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px;}
.hero-meta{display:flex;gap:28px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--border-inverse);}
.hero-meta .num{font-family:'Fraunces',serif;font-size:1.7rem;font-weight:600;color:var(--text-inverse);font-variant-numeric:tabular-nums;}
.hero-meta .lbl{font-size:.8rem;color:var(--text-inverse-muted);margin-top:2px;}
.hero-panel{background:rgba(255,255,255,.04);border:1px solid var(--border-inverse);border-radius:16px;padding:26px;backdrop-filter:blur(6px);box-shadow:var(--shadow-lg);}
.hero-panel h3{color:var(--text-inverse);font-size:1.05rem;margin-bottom:4px;}
.hero-panel .sub{color:var(--text-inverse-muted);font-size:.85rem;margin-bottom:20px;}
.field{margin-bottom:16px;}
.field label{display:flex;justify-content:space-between;font-size:.82rem;color:var(--text-inverse-muted);margin-bottom:8px;}
.field label b{color:var(--gold-400);font-variant-numeric:tabular-nums;font-weight:600;}
input[type="range"]{width:100%;accent-color:var(--gold-500);height:4px;background:rgba(255,255,255,.15);border-radius:2px;}
.panel-result{margin-top:20px;padding-top:18px;border-top:1px solid var(--border-inverse);display:flex;justify-content:space-between;align-items:baseline;}
.panel-result .lbl{font-size:.82rem;color:var(--text-inverse-muted);}
.panel-result .val{font-family:'Fraunces',serif;font-size:1.6rem;color:var(--text-inverse);font-variant-numeric:tabular-nums;}
.panel-note{font-size:.72rem;color:var(--text-inverse-muted);margin-top:10px;}

/* Trust strip */
.trust-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:28px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.trust-item{display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--text-muted);}
.trust-item svg{color:var(--accent);flex:none;}

/* Products grid (home + products-services overview) */
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:980px){.products-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.products-grid{grid-template-columns:1fr;}}
.product-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:28px 24px;display:flex;flex-direction:column;gap:14px;transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;}
.product-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-3px);}
.product-icon{width:46px;height:46px;border-radius:10px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent-strong);flex:none;}
.product-card h3{font-size:1.12rem;}
.product-card p{color:var(--text-muted);font-size:.92rem;flex:1;}
.product-card .go{font-size:.85rem;font-weight:600;color:var(--accent);display:flex;align-items:center;gap:6px;}

/* Process steps */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:step;}
@media (max-width:860px){.process{grid-template-columns:1fr 1fr;gap:32px;}}
@media (max-width:520px){.process{grid-template-columns:1fr;}}
.step{position:relative;padding-right:28px;}
.step:not(:last-child)::after{content:"";position:absolute;top:22px;right:0;width:20px;height:1px;background:var(--border);}
@media (max-width:860px){.step:not(:last-child)::after{display:none;}}
.step .stepnum{counter-increment:step;font-family:'Fraunces',serif;font-size:1.3rem;color:var(--accent);display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--accent);margin-bottom:16px;}
.step .stepnum::before{content:counter(step, decimal-leading-zero);}
.step h4{font-size:1rem;font-weight:600;margin-bottom:6px;}
.step p{font-size:.88rem;color:var(--text-muted);}

/* Knowledge centre teaser (home) */
.kc-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px;}
@media (max-width:860px){.kc-grid{grid-template-columns:1fr;}}
.kc-feature,.kc-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:10px;}
.kc-feature{background:linear-gradient(160deg,var(--navy-900),var(--navy-800));color:var(--text-inverse);justify-content:flex-end;min-height:220px;}
.kc-feature .eyebrow{color:var(--gold-400);}
.kc-feature h3{color:var(--text-inverse);font-size:1.25rem;}
.kc-feature p{color:var(--text-inverse-muted);font-size:.9rem;}
.kc-card .tag{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);}
.kc-card h4{font-size:1rem;font-weight:600;}
.kc-card p{font-size:.88rem;color:var(--text-muted);}
.kc-card .meta{font-size:.78rem;color:var(--gray-500);margin-top:auto;padding-top:10px;}

/* Testimonial / stats (home) */
.testimonial{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;}
@media (max-width:860px){.testimonial{grid-template-columns:1fr;}}
.testimonial blockquote{font-family:'Fraunces',serif;font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.4;color:var(--text);margin:0 0 20px;}
.testimonial cite{font-style:normal;font-size:.9rem;color:var(--text-muted);}
.testimonial cite b{color:var(--text);display:block;font-size:.95rem;margin-bottom:2px;}
.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.stat-card .stat .num{font-family:'Fraunces',serif;font-size:2rem;color:var(--accent-strong);font-variant-numeric:tabular-nums;}
.stat-card .stat .lbl{font-size:.82rem;color:var(--text-muted);margin-top:4px;}

/* =======================================================
   6. INTERIOR PAGE HERO
   ======================================================= */
.page-hero{background:radial-gradient(ellipse 800px 420px at 90% -10%, rgba(201,162,75,.14), transparent 60%),linear-gradient(165deg, var(--navy-950), var(--navy-900) 60%, var(--navy-800));color:var(--text-inverse);padding-block:40px 56px;}
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text-inverse-muted);margin-bottom:18px;flex-wrap:wrap;}
.breadcrumb a{color:inherit;text-decoration:none;}
.breadcrumb a:hover{color:var(--text-inverse);}
.breadcrumb .sep{opacity:.5;}
.page-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;}
@media (max-width:900px){.page-hero-grid{grid-template-columns:1fr;}}
.page-hero h1{font-size:clamp(1.9rem,3.6vw,2.7rem);margin-block:14px 14px;max-width:26ch; color: #fff;}
.page-hero p.lede{font-size:1.05rem;color:var(--text-inverse-muted);max-width:56ch;margin-bottom:24px;}
.page-hero p.meta{font-size:.85rem;color:var(--text-inverse-muted);}
.page-hero-cta{display:flex;gap:14px;flex-wrap:wrap;}
.hero-stat-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:rgba(255,255,255,.04);border:1px solid var(--border-inverse);border-radius:14px;padding:22px;}
.hero-stat-strip .stat .num{font-family:'Fraunces',serif;font-size:1.5rem;color:var(--gold-400);font-variant-numeric:tabular-nums;}
.hero-stat-strip .stat .lbl{font-size:.78rem;color:var(--text-inverse-muted);margin-top:2px;}
.updated-pill{display:inline-block;font-size:.76rem;font-weight:600;color:var(--text-inverse-muted);background:rgba(255,255,255,.08);border:1px solid var(--border-inverse);padding:5px 12px;border-radius:20px;margin-top:14px;}

/* =======================================================
   7. SHARED CONTENT COMPONENTS (used across product/knowledge pages)
   ======================================================= */
/* Comparison table */
.compare-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:14px;}
table.compare{width:100%;border-collapse:collapse;min-width:600px;}
table.compare th,table.compare td{text-align:left;padding:16px 20px;font-size:.9rem;border-bottom:1px solid var(--border);}
table.compare thead th{background:var(--bg-subtle);font-family:'Fraunces',serif;font-weight:600;color:var(--text);font-size:.95rem;}
table.compare tbody tr:last-child td{border-bottom:none;}
table.compare td.label{font-weight:600;color:var(--text);white-space:nowrap;}
table.compare td.muted{color:var(--text-muted);}

/* Benefits */
.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:860px){.benefits-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.benefits-grid{grid-template-columns:1fr;}}
.benefit-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:12px;}
.benefit-icon{width:42px;height:42px;border-radius:10px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent-strong);flex:none;}
.benefit-card h4{font-size:1rem;font-weight:600;}
.benefit-card p{font-size:.88rem;color:var(--text-muted);}

/* Fund type rows (mutual funds) */
.fundtype-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.fundtype-row{display:grid;grid-template-columns:180px 1fr 140px;gap:20px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border);}
.fundtype-row:last-child{border-bottom:none;}
@media (max-width:700px){.fundtype-row{grid-template-columns:1fr;gap:6px;}}
.fundtype-row .name{font-family:'Fraunces',serif;font-weight:600;font-size:1.02rem;}
.fundtype-row .desc{font-size:.88rem;color:var(--text-muted);}
.fundtype-row .risk{justify-self:end;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:6px 12px;border-radius:20px;white-space:nowrap;}
@media (max-width:700px){.fundtype-row .risk{justify-self:start;}}
.risk.low{background:#e3f3ea;color:#1a7a4c;}
.risk.moderate{background:#fdf1dc;color:#a2711b;}
.risk.high{background:#fbe6e6;color:#b3392f;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .risk.low{background:rgba(26,122,76,.18);color:#5fd39a;}
  :root:not([data-theme="light"]) .risk.moderate{background:rgba(162,113,27,.2);color:#e6bd6a;}
  :root:not([data-theme="light"]) .risk.high{background:rgba(179,57,47,.2);color:#f19086;}
}
:root[data-theme="dark"] .risk.low{background:rgba(26,122,76,.18);color:#5fd39a;}
:root[data-theme="dark"] .risk.moderate{background:rgba(162,113,27,.2);color:#e6bd6a;}
:root[data-theme="dark"] .risk.high{background:rgba(179,57,47,.2);color:#f19086;}

/* FAQ accordion */
.faq-list{display:flex;flex-direction:column;gap:12px;max-width:760px;}
details.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:6px 20px;}
details.faq-item summary{padding:16px 0;font-weight:600;font-size:.98rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none;}
details.faq-item summary::-webkit-details-marker{display:none;}
details.faq-item summary::after{content:"+";font-size:1.3rem;color:var(--accent);flex:none;font-weight:400;transition:transform .15s ease;}
details.faq-item[open] summary::after{transform:rotate(45deg);}
details.faq-item p{padding-bottom:18px;color:var(--text-muted);font-size:.92rem;max-width:64ch;margin:0;}

/* Split grid (insurance) */
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:780px){.split-grid{grid-template-columns:1fr;}}
.split-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:16px;}
.split-card .icon{width:48px;height:48px;border-radius:12px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent-strong);}
.split-card h3{font-size:1.3rem;}
.split-card p{color:var(--text-muted);font-size:.94rem;}
.split-card .types{display:flex;flex-direction:column;gap:8px;margin-top:6px;}
.split-card .types li{display:flex;align-items:baseline;gap:8px;font-size:.9rem;color:var(--text);}
.split-card .types li::before{content:"—";color:var(--accent);flex:none;}

/* Goals grid (wealth management) */
.goals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:980px){.goals-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.goals-grid{grid-template-columns:1fr;}}
.goal-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px 22px;display:flex;flex-direction:column;gap:12px;text-align:center;align-items:center;}
.goal-icon{width:48px;height:48px;border-radius:50%;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent-strong);}
.goal-card h4{font-size:.98rem;font-weight:600;}
.goal-card p{font-size:.86rem;color:var(--text-muted);}

/* Notice band (PMS / fact sheets / NAV / NFO) */
.notice-band{display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--gold-500);border-radius:12px;padding:22px 24px;margin-bottom:44px;}
.notice-band svg{color:var(--gold-500);flex:none;margin-top:2px;}
.notice-band p{font-size:.92rem;color:var(--text-muted);margin:0;}
.notice-band strong{color:var(--text);}
.section-alt .notice-band,.article-shell .notice-band{background:var(--bg-subtle);border-left-color:var(--accent);margin-top:32px;margin-bottom:0;}
.section-alt .notice-band svg,.article-shell .notice-band svg{color:var(--accent);}

/* Hub grid + article list (knowledge centre) */
.hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:980px){.hub-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.hub-grid{grid-template-columns:1fr;}}
.hub-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:28px 24px;display:flex;flex-direction:column;gap:14px;transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;}
.hub-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-3px);}
.hub-icon{width:46px;height:46px;border-radius:10px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent-strong);flex:none;}
.hub-card h3{font-size:1.08rem;}
.hub-card p{color:var(--text-muted);font-size:.9rem;flex:1;}
.hub-card .go{font-size:.85rem;font-weight:600;color:var(--accent);display:flex;align-items:center;gap:6px;}
.article-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.article-row{display:grid;grid-template-columns:120px 1fr auto;gap:20px;align-items:center;padding:22px 24px;border-bottom:1px solid var(--border);}
.article-row:last-child{border-bottom:none;}
@media (max-width:700px){.article-row{grid-template-columns:1fr;gap:6px;}}
.article-row .tag{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);}
.article-row .title{font-family:'Fraunces',serif;font-weight:600;font-size:1.02rem;margin-top:4px;}
.article-row .desc{font-size:.88rem;color:var(--text-muted);margin-top:2px;}
.article-row .meta{font-size:.8rem;color:var(--gray-500);white-space:nowrap;justify-self:end;}
@media (max-width:700px){.article-row .meta{justify-self:start;}}

/* Long-form article (taxation) */
.article-shell{padding-block:64px;}
.article-grid{display:grid;grid-template-columns:1fr 260px;gap:56px;align-items:start;}
@media (max-width:920px){.article-grid{grid-template-columns:1fr;}}
.prose{max-width:66ch;}
.prose h2{font-size:1.4rem;margin-block:40px 14px;scroll-margin-top:96px;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-size:1.02rem;margin-bottom:10px;}
.prose p{margin:0 0 16px;color:var(--text);}
.prose p.lead{font-size:1.08rem;color:var(--text-muted);}
.rate-table{width:100%;border-collapse:collapse;margin:20px 0 28px;}
.rate-table th,.rate-table td{text-align:left;padding:12px 16px;font-size:.88rem;border-bottom:1px solid var(--border);}
.rate-table thead th{background:var(--bg-subtle);font-weight:600;color:var(--text);}
.rate-table td.num{font-variant-numeric:tabular-nums;font-weight:600;color:var(--accent-strong);}
.callout{background:var(--bg-subtle);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:10px;padding:16px 18px;margin:16px 0;font-size:.9rem;color:var(--text-muted);}
.callout strong{color:var(--text);}
.example-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px 22px;margin:24px 0;}
.example-box .tag{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-500);}
.example-box p{font-size:.92rem;color:var(--text-muted);margin-top:8px;margin-bottom:0;}
.toc{position:sticky;top:110px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;}
.toc h5{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;}
.toc ul{display:flex;flex-direction:column;gap:9px;}
.toc a{font-size:.86rem;color:var(--text);text-decoration:none;}
.toc a:hover{color:var(--accent);}
.toc .group-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:14px 0 4px;}
.toc .group-label:first-child{margin-top:0;}
.toc-cta{margin-top:20px;padding-top:20px;border-top:1px solid var(--border);}
.toc-cta p{font-size:.84rem;color:var(--text-muted);margin-bottom:12px;}
.divider-heading{display:flex;align-items:center;gap:14px;margin:56px 0 28px;}
.divider-heading::after{content:"";flex:1;height:1px;background:var(--border);}
.divider-heading .eyebrow{white-space:nowrap;}
ul.plain{display:flex;flex-direction:column;gap:8px;margin:0 0 14px;}
ul.plain li{padding-left:18px;position:relative;color:var(--text);font-size:.96rem;}
ul.plain li::before{content:"—";position:absolute;left:0;color:var(--accent);}

/* Fact sheets: filters + list */
.filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px;}
.filter-chip{padding:8px 16px;border-radius:20px;border:1px solid var(--border);font-size:.85rem;font-weight:500;color:var(--text-muted);background:var(--surface);cursor:pointer;}
.filter-chip.active{background:var(--accent-strong);color:#fff;border-color:var(--accent-strong);}
.sheet-list{border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.sheet-row{display:grid;grid-template-columns:1fr 140px 110px 110px auto;gap:16px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border);}
.sheet-row.head{background:var(--bg-subtle);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding-block:14px;}
.sheet-row:last-child{border-bottom:none;}
@media (max-width:820px){
  .sheet-row{grid-template-columns:1fr auto;}
  .sheet-row .cat,.sheet-row .ret,.sheet-row .date{display:none;}
  .sheet-row.head{display:none;}
}
.sheet-row .name{font-weight:600;font-size:.94rem;}
.sheet-row .cat{font-size:.82rem;color:var(--text-muted);}
.sheet-row .ret{font-size:.9rem;font-weight:600;font-variant-numeric:tabular-nums;}
.sheet-row .ret.up{color:#1a7a4c;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .sheet-row .ret.up{color:#5fd39a;}}
:root[data-theme="dark"] .sheet-row .ret.up{color:#5fd39a;}
.sheet-row .date{font-size:.82rem;color:var(--gray-500);}

/* NAV page: search + list */
.search-row{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap;}
.search-box{flex:1;min-width:220px;display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 16px;}
.search-box svg{color:var(--text-muted);flex:none;}
.search-box input{border:0;outline:0;background:none;color:var(--text);font-size:.92rem;width:100%;}
.as-of{font-size:.82rem;color:var(--text-muted);display:flex;align-items:center;gap:6px;white-space:nowrap;}
.as-of .dot{width:7px;height:7px;border-radius:50%;background:#1a7a4c;}
.nav-list{border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.nav-row-item{display:grid;grid-template-columns:1fr 100px 90px 90px;gap:16px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border);}
.nav-row-item.head{background:var(--bg-subtle);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding-block:14px;}
.nav-row-item:last-child{border-bottom:none;}
@media (max-width:700px){
  .nav-row-item{grid-template-columns:1fr auto;}
  .nav-row-item .cat,.nav-row-item .chg{display:none;}
  .nav-row-item.head{display:none;}
}
.nav-row-item .name{font-weight:600;font-size:.94rem;}
.nav-row-item .cat{font-size:.82rem;color:var(--text-muted);}
.nav-row-item .val{font-size:.94rem;font-weight:600;font-variant-numeric:tabular-nums;justify-self:end;}
.nav-row-item .chg{font-size:.86rem;font-weight:600;font-variant-numeric:tabular-nums;justify-self:end;}

/* Live AMFI NAV list (3 columns: scheme / NAV / date) on template-nav-data.php */
#kns-nav-list .nav-row-item{grid-template-columns:1fr 130px 130px;}
#kns-nav-list .nav-row-item .val{justify-self:end;}
#kns-nav-list .nav-row-item .date{font-size:.82rem;color:var(--gray-500);justify-self:end;}
@media (max-width:700px){
  #kns-nav-list .nav-row-item{grid-template-columns:1fr auto;}
  #kns-nav-list .nav-row-item .date{display:none;}
}
.chg.up{color:#1a7a4c;}
.chg.down{color:#b3392f;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .chg.up{color:#5fd39a;}
  :root:not([data-theme="light"]) .chg.down{color:#f19086;}
}
:root[data-theme="dark"] .chg.up{color:#5fd39a;}
:root[data-theme="dark"] .chg.down{color:#f19086;}

/* NFO cards */
.nfo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
@media (max-width:780px){.nfo-grid{grid-template-columns:1fr;}}
.nfo-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:14px;}
.nfo-card .top-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}
.nfo-card h3{font-size:1.1rem;max-width:26ch;}
.status-pill{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 12px;border-radius:20px;white-space:nowrap;flex:none;}
.status-pill.open{background:#e3f3ea;color:#1a7a4c;}
.status-pill.closing{background:#fdf1dc;color:#a2711b;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .status-pill.open{background:rgba(26,122,76,.18);color:#5fd39a;}
  :root:not([data-theme="light"]) .status-pill.closing{background:rgba(162,113,27,.2);color:#e6bd6a;}
}
:root[data-theme="dark"] .status-pill.open{background:rgba(26,122,76,.18);color:#5fd39a;}
:root[data-theme="dark"] .status-pill.closing{background:rgba(162,113,27,.2);color:#e6bd6a;}
.nfo-card p{font-size:.9rem;color:var(--text-muted);}
.nfo-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:14px;border-top:1px solid var(--border);}
.nfo-meta .item .lbl{font-size:.74rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;}
.nfo-meta .item .val{font-size:.9rem;font-weight:600;margin-top:2px;font-variant-numeric:tabular-nums;}
.guide-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:14px;overflow:hidden;max-width:800px;}
.guide-row{display:flex;gap:16px;padding:20px 24px;border-bottom:1px solid var(--border);}
.guide-row:last-child{border-bottom:none;}
.guide-row .num{font-family:'Fraunces',serif;font-weight:600;color:var(--accent);flex:none;width:28px;}
.guide-row h4{font-size:.96rem;font-weight:600;margin-bottom:4px;}
.guide-row p{font-size:.88rem;color:var(--text-muted);}

/* About: story / values / promoters / registrations */
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
@media (max-width:860px){.story-grid{grid-template-columns:1fr;}}
.story-grid .prose p{margin:0 0 16px;color:var(--text);max-width:56ch;}
.story-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.story-stats .stat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px;}
.story-stats .num{font-family:'Fraunces',serif;font-size:1.8rem;color:var(--accent-strong);font-variant-numeric:tabular-nums;}
.story-stats .lbl{font-size:.82rem;color:var(--text-muted);margin-top:4px;}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:860px){.values-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.values-grid{grid-template-columns:1fr;}}
.value-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:12px;}
.value-icon{width:42px;height:42px;border-radius:10px;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent-strong);flex:none;}
.value-card h4{font-size:1rem;font-weight:600;}
.value-card p{font-size:.88rem;color:var(--text-muted);}
.promoter-notice{display:flex;gap:16px;align-items:flex-start;background:var(--bg-subtle);border:1px solid var(--border);border-left:4px solid var(--gold-500);border-radius:12px;padding:20px 22px;margin-bottom:32px;}
.promoter-notice svg{color:var(--gold-500);flex:none;margin-top:2px;}
.promoter-notice p{font-size:.88rem;color:var(--text-muted);margin:0;}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:780px){.team-grid{grid-template-columns:1fr;}}
.team-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;display:flex;gap:20px;}
.team-avatar{width:64px;height:64px;border-radius:50%;flex:none;background:linear-gradient(155deg,var(--charcoal-900),var(--charcoal-700));display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Fraunces',serif;font-weight:600;font-size:1.4rem;overflow:hidden;}
.team-avatar img{width:100%;height:100%;object-fit:cover;}
.team-card h4{font-size:1.08rem;}
.team-card .role{font-size:.84rem;color:var(--accent);font-weight:600;margin-top:2px;}
.team-card .tenure{font-size:.78rem;color:var(--gray-500);margin-top:2px;}
.team-card p{font-size:.88rem;color:var(--text-muted);margin-top:10px;}
.tbc{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#a2711b;background:#fdf1dc;padding:3px 9px;border-radius:6px;margin-top:8px;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tbc{background:rgba(162,113,27,.2);color:#e6bd6a;}}
:root[data-theme="dark"] .tbc{background:rgba(162,113,27,.2);color:#e6bd6a;}
.reg-list{border:1px solid var(--border);border-radius:14px;overflow:hidden;max-width:800px;}
.reg-row{display:grid;grid-template-columns:220px 1fr;gap:16px;padding:16px 22px;border-bottom:1px solid var(--border);}
.reg-row:last-child{border-bottom:none;}
@media (max-width:600px){.reg-row{grid-template-columns:1fr;gap:4px;}}
.reg-row .k{font-size:.86rem;font-weight:600;color:var(--text-muted);}
.reg-row .v{font-size:.92rem;font-weight:600;color:var(--text);}
.tbc-inline{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#a2711b;background:#fdf1dc;padding:2px 8px;border-radius:5px;margin-left:8px;vertical-align:middle;text-decoration:none;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tbc-inline{background:rgba(162,113,27,.2);color:#e6bd6a;}}
:root[data-theme="dark"] .tbc-inline{background:rgba(162,113,27,.2);color:#e6bd6a;}

/* Disclosure page layout */
.disclosure-shell{padding-block:64px;}
.disclosure-grid{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start;}
@media (max-width:860px){.disclosure-grid{grid-template-columns:1fr;}}

/* Contact page */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;}}
.contact-cards{display:flex;flex-direction:column;gap:16px;}
.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px;display:flex;gap:16px;align-items:flex-start;}
.contact-icon{width:44px;height:44px;border-radius:10px;background:var(--bg-subtle);flex:none;display:flex;align-items:center;justify-content:center;color:var(--accent-strong);}
.contact-card h4{font-size:.98rem;margin-bottom:4px;}
.contact-card p{font-size:.88rem;color:var(--text-muted);}
.contact-card a.value{font-size:.94rem;font-weight:600;color:var(--accent);}
.map-embed{margin-top:16px;border-radius:14px;overflow:hidden;border:1px solid var(--border);aspect-ratio:16/10;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.85rem;flex-direction:column;gap:8px;}
.map-embed svg{color:var(--accent);}
.map-embed iframe{width:100%;height:100%;border:0;}
.form-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px;}
.form-card h3{font-size:1.2rem;margin-bottom:6px;}
.form-card .sub{font-size:.9rem;color:var(--text-muted);margin-bottom:24px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
@media (max-width:560px){.form-row{grid-template-columns:1fr;}}
.field-group{display:flex;flex-direction:column;gap:6px;}
.field-group.full{grid-column:1 / -1;}
.field-group label{font-size:.82rem;font-weight:600;color:var(--text-muted);}
.field-group input,.field-group select,.field-group textarea{padding:12px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.92rem;}
.field-group textarea{resize:vertical;min-height:100px;}
.form-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:8px;}
.form-note{font-size:.78rem;color:var(--gray-500);max-width:32ch;}
.form-note a{text-decoration:underline;}
.hours-list{display:flex;flex-direction:column;gap:8px;margin-top:16px;}
.hours-row{display:flex;justify-content:space-between;font-size:.88rem;}
.hours-row .day{color:var(--text-muted);}
.hours-row .time{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;}
/* WPForms visual alignment inside our .form-card */
.form-card .wpforms-container{margin:0;}

/* =======================================================
   8. CTA BAND (shared across all pages)
   ======================================================= */
.cta-band{background:linear-gradient(135deg,var(--navy-950),var(--navy-800));color:var(--text-inverse);border-radius:20px;padding:52px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.cta-band h2{color:var(--text-inverse);font-size:clamp(1.5rem,2.6vw,2rem);max-width:26ch;}
.cta-band p{color:var(--text-inverse-muted);margin-top:8px;max-width:42ch;}
.cta-actions{display:flex;gap:14px;flex-wrap:wrap;}

/* =======================================================
   9. FOOTER
   ======================================================= */
footer.site{background:var(--navy-950);color:var(--text-inverse-muted);padding-block:56px 28px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid var(--border-inverse);}
@media (max-width:780px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.footer-grid{grid-template-columns:1fr;}}
.footer-grid h5{color:var(--text-inverse);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px;font-weight:600;}
.footer-grid ul{display:flex;flex-direction:column;gap:10px;}
.footer-grid a{font-size:.9rem;transition:color .15s ease;color:inherit;text-decoration:none;}
.footer-grid a:hover{color:var(--text-inverse);}
.footer-brand p{font-size:.88rem;max-width:34ch;margin-block:14px 0;}
.footer-brand a img.custom-logo {width:150px;}
.footer-bottom{padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.78rem;}
.footer-bottom a{text-decoration:none;}
.footer-bottom a:hover{color:var(--text-inverse);}
.disclaimer{font-size:.76rem;line-height:1.6;color:var(--text-inverse-muted);padding-top:24px;max-width:none;border-top:1px solid var(--border-inverse);margin-top:24px;}
.disclaimer b{color:var(--text-inverse);}

/* =======================================================
   10. WORDPRESS CORE ALIGNMENT / ADMIN-BAR OFFSET
   ======================================================= */
.admin-bar header.site{top:calc(env(safe-area-inset-top,0px) + 32px);}
@media (max-width:782px){.admin-bar header.site{top:calc(env(safe-area-inset-top,0px) + 46px);}}
.alignwide{max-width:1200px;margin-inline:auto;}
.alignfull{max-width:none;}