/* KeenGig 2026 visual refresh */
:root{
  --kg-navy:#062f49;--kg-navy-2:#0a4564;--kg-ink:#0b2940;--kg-blue:#0875b8;
  --kg-green:#28d99a;--kg-green-deep:#11b77f;--kg-mint:#e2fbf2;
  --kg-bg:#f5f8f9;--kg-card:#fff;--kg-line:#dce6e9;--kg-muted:#587080;
  --kg-shadow:0 18px 48px rgba(4,39,59,.10);--kg-radius:14px;
}
body{background:var(--kg-bg);color:var(--kg-ink)}
.site-header{background:rgba(5,42,64,.97);border:0;color:#fff;padding:0 max(24px,calc((100vw - 1180px)/2));min-height:72px;box-shadow:0 1px 0 rgba(255,255,255,.09);position:relative;z-index:20}
.site-header .brand{color:#fff;font-family:Manrope,sans-serif;font-weight:800}
.site-header .brand span{font-size:1.35rem}
.site-header .primary-nav>a,.site-header summary{color:#dcecf4}
.site-header .primary-nav>a:hover,.site-header summary:hover,.site-header [aria-current="page"]{color:#fff}
.site-header .nav-join{background:var(--kg-green);border-radius:9px;color:#062f49!important;padding:.65rem 1rem!important;font-weight:800}
.site-header .account-menu-panel,.site-header .app-menu-panel{background:#fff;border:1px solid var(--kg-line);box-shadow:var(--kg-shadow)}
.site-header .account-menu-panel a,.site-header .app-menu-panel a{color:var(--kg-ink)}
main{min-height:55vh}
.shell{width:min(1180px,calc(100% - 40px))}
.button{border-radius:9px;font-weight:800;box-shadow:none;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.button:hover{transform:translateY(-1px)}
.button.primary{background:linear-gradient(135deg,var(--kg-green),#42e3a7);border-color:transparent;color:#052e45;box-shadow:0 10px 24px rgba(26,198,139,.22)}
.button.secondary{background:#fff;border-color:#b9cbd2;color:var(--kg-ink)}
.section-kicker{color:var(--kg-blue);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.finance-hero,.page-intro{padding-top:58px;padding-bottom:28px}
.finance-hero h1,.page-intro h1{font-family:Manrope,sans-serif;letter-spacing:-.035em;color:var(--kg-ink)}
.finance-hero>div:first-child p:last-child,.page-intro>p{color:var(--kg-muted);max-width:720px}
.finance-panel,.finance-kpis article,.income-kpi-primary article,.income-kpi-secondary article,.table-wrap,.shift-card{
  background:var(--kg-card);border:1px solid var(--kg-line);border-radius:var(--kg-radius);
  box-shadow:0 8px 24px rgba(4,39,59,.055)
}
.finance-panel h2,.finance-panel-heading h2{color:var(--kg-ink)}
.finance-kpis .kpi-primary,.income-kpi-primary article:first-child{background:linear-gradient(135deg,var(--kg-navy),var(--kg-navy-2));color:#fff;border:0}
.finance-kpis .kpi-primary span,.income-kpi-primary article:first-child span{color:#cbe0e9}
.finance-kpis strong,.income-kpi-primary strong,.income-kpi-secondary strong{font-family:Manrope,sans-serif}
.finance-table thead th,.table-wrap thead th{background:#edf4f6;color:#365467;text-transform:uppercase;font-size:.72rem;letter-spacing:.055em}
.finance-table tbody tr:hover,.table-wrap tbody tr:hover{background:#f7fbfb}
.finance-form input,.finance-form select,.finance-form textarea,.table-wrap select{border:1px solid #bdd0d7;border-radius:8px;background:#fff}
.finance-form input:focus,.finance-form select:focus,.finance-form textarea:focus,.table-wrap select:focus{border-color:var(--kg-blue);box-shadow:0 0 0 3px rgba(8,117,184,.12);outline:0}
.settings-group{border:1px solid var(--kg-line);border-radius:10px;overflow:hidden}
.settings-group>summary{background:#f4f8f9}
.status-pill{border-radius:999px}
footer{background:linear-gradient(145deg,#052d45,#031f32);color:#cfe0e7;margin-top:72px;padding:48px max(24px,calc((100vw - 1180px)/2)) 30px;text-align:left}
footer .footer-brand{color:#fff}
footer a{color:#e7f5f9}
footer>p{max-width:1180px;margin-left:auto;margin-right:auto}
.kg-footer-grid{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px}
.kg-footer-grid h2,.kg-footer-grid h3{color:#fff;margin:0 0 14px}
.kg-footer-grid h3{font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}
.kg-footer-grid p{color:#afc7d1;max-width:280px}
.kg-footer-grid nav{display:grid;gap:9px}
.kg-footer-bottom{width:min(1180px,100%);margin:34px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:20px;color:#92aeba;font-size:.82rem}
.kg-home{background:#fff}
.kg-hero{background:linear-gradient(118deg,#062f49 0%,#073952 62%,#07506b 100%);color:#fff;overflow:hidden;position:relative}
.kg-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 16%,rgba(40,217,154,.14),transparent 30%),linear-gradient(135deg,transparent 62%,rgba(255,255,255,.035) 62%);pointer-events:none}
.kg-hero-inner{position:relative;z-index:1;min-height:520px;display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center;padding:64px 0 72px}
.kg-eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#cce0e9;font-weight:800}
.kg-hero h1{font-family:Manrope,sans-serif;font-size:clamp(2.65rem,5vw,4.75rem);line-height:1.02;letter-spacing:-.055em;margin:14px 0 20px;color:#fff}
.kg-hero h1 em{font-style:normal;color:var(--kg-green)}
.kg-hero-copy{font-size:1.12rem;line-height:1.6;max-width:610px;color:#e1edf2}
.kg-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.kg-hero .button.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.kg-subnote{font-size:.82rem;color:#b7ced8;margin-top:14px}
.kg-proof{display:flex;gap:28px;margin-top:40px;color:#d9e9ef;font-size:.82rem;font-weight:700}
.kg-proof span{display:flex;align-items:center;gap:8px}
.kg-proof i{width:27px;height:27px;border:1px solid rgba(40,217,154,.5);border-radius:50%;display:grid;place-items:center;color:var(--kg-green);font-style:normal}
.kg-calc{background:#fff;color:var(--kg-ink);border-radius:16px;box-shadow:0 30px 70px rgba(0,17,29,.32);padding:20px;transform:perspective(1000px) rotateY(-1deg)}
.kg-calc-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--kg-line);padding-bottom:14px;margin-bottom:16px}
.kg-calc-top strong{font-family:Manrope,sans-serif;font-size:1.15rem}.kg-calc-top span{color:var(--kg-blue);font-size:.8rem}
.kg-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.kg-inputs label{font-size:.72rem;color:var(--kg-muted);font-weight:700}.kg-inputs b{display:block;margin-top:6px;padding:11px;border:1px solid var(--kg-line);border-radius:7px;font-size:1rem}
.kg-results{margin-top:14px;background:linear-gradient(120deg,#dffaf0,#d7f8f1);border-radius:10px;padding:20px;display:grid;grid-template-columns:1fr 1fr}
.kg-result+ .kg-result{border-left:1px solid #9fdcca;padding-left:22px}.kg-result span{font-size:.75rem;font-weight:800}.kg-result strong{display:block;font-family:Manrope,sans-serif;font-size:2.05rem;color:#076046;margin:6px 0 2px}.kg-result small{color:#276858}
.kg-costs{margin-top:14px;border:1px solid var(--kg-line);border-radius:9px;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:7px 22px;font-size:.76rem;color:var(--kg-muted)}.kg-costs div{display:flex;justify-content:space-between}.kg-costs b{color:var(--kg-ink)}
.kg-section{padding:74px 0}.kg-section-heading{text-align:center;max-width:760px;margin:0 auto 34px}.kg-section-heading h2{font-family:Manrope,sans-serif;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em;margin:7px 0 6px}.kg-section-heading p{color:var(--kg-muted);font-size:1.05rem}
.kg-problem-grid,.kg-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.kg-info-card,.kg-tool-card{border:1px solid var(--kg-line);border-radius:12px;padding:24px;background:#fff;box-shadow:0 7px 22px rgba(4,39,59,.05)}.kg-info-card b,.kg-tool-icon{width:42px;height:42px;border-radius:10px;background:#e6f6fb;color:var(--kg-blue);display:grid;place-items:center;font-size:1.35rem}.kg-info-card h3,.kg-tool-card h3{margin:16px 0 7px}.kg-info-card p,.kg-tool-card p{color:var(--kg-muted);margin:0}
.kg-compare{background:#f5f9fa}.kg-comparison{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:22px;background:#fff;border:1px solid var(--kg-line);border-radius:14px;padding:30px}.kg-offer{border:1px solid var(--kg-line);border-radius:10px;padding:20px}.kg-offer-head{display:flex;justify-content:space-between;gap:20px}.kg-offer-head span{color:var(--kg-muted)}.kg-offer-value{background:var(--kg-mint);border-radius:8px;padding:17px;margin-top:18px}.kg-offer-value span{font-size:.75rem;font-weight:800}.kg-offer-value strong{display:block;color:#076046;font-size:2rem;font-family:Manrope,sans-serif}.kg-vs{display:grid;place-items:center;text-align:center;color:#128c6b;font-size:.78rem;font-weight:800}
.kg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.kg-step{padding:10px 34px;border-right:1px solid var(--kg-line);position:relative}.kg-step:last-child{border:0}.kg-step b{position:absolute;left:0;top:8px;background:var(--kg-blue);color:#fff;border-radius:50%;width:26px;height:26px;display:grid;place-items:center}.kg-step h3{margin-top:0}
.kg-tool-grid{grid-template-columns:repeat(4,1fr)}.kg-tool-card{padding:20px}.kg-tool-icon{background:#ebf9f5;color:#0d9a70}
.kg-privacy{background:#f0f7f9}.kg-privacy-inner{display:grid;grid-template-columns:auto 1fr 1fr;gap:22px;align-items:center}.kg-shield{width:70px;height:70px;border:3px solid var(--kg-blue);border-radius:24px 24px 30px 30px;display:grid;place-items:center;font-size:1.75rem;color:var(--kg-blue)}.kg-privacy h2{margin:0}.kg-privacy p{color:var(--kg-muted)}
.kg-pricing{max-width:650px!important}.kg-price-card{border:1px solid var(--kg-line);border-radius:12px;overflow:hidden;box-shadow:var(--kg-shadow);background:#fff}.kg-price-head{background:linear-gradient(110deg,var(--kg-navy),var(--kg-navy-2));color:#fff;text-align:center;padding:13px}.kg-price-head strong{font-family:Manrope,sans-serif}.kg-price-body{padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.kg-price-body>div{padding:10px}.kg-price-body strong{font-family:Manrope,sans-serif;font-size:1.75rem}.kg-founder{background:var(--kg-mint);border-radius:9px}.kg-price-card .button{margin:0 25px 25px;width:calc(100% - 50px);text-align:center}
.kg-faq details{border:1px solid var(--kg-line);border-radius:9px;background:#fff;padding:14px 18px}.kg-faq{display:grid;grid-template-columns:1fr 1fr;gap:10px}.kg-faq summary{font-weight:800;cursor:pointer}.kg-faq p{color:var(--kg-muted)}
.kg-final{background:linear-gradient(125deg,#073650,#07516c);color:#fff;text-align:center;padding:62px 0}.kg-final h2{font-family:Manrope,sans-serif;font-size:2.2rem;margin:0 0 8px}.kg-final p{color:#cce0e8}.kg-final .kg-actions{justify-content:center}
@media(max-width:900px){.kg-hero-inner{grid-template-columns:1fr;padding-top:48px}.kg-calc{transform:none}.kg-tool-grid{grid-template-columns:1fr 1fr}.kg-privacy-inner{grid-template-columns:auto 1fr}.kg-privacy-inner>p{grid-column:1/-1}.kg-footer-grid{grid-template-columns:1fr 1fr}.kg-comparison{grid-template-columns:1fr}.kg-vs{padding:2px}.kg-problem-grid{grid-template-columns:1fr}}
@media(max-width:650px){.site-header{padding:12px 20px}.kg-hero-inner{min-height:auto}.kg-proof{display:grid;gap:12px}.kg-inputs,.kg-results,.kg-price-body,.kg-faq,.kg-tool-grid{grid-template-columns:1fr}.kg-result+ .kg-result{border-left:0;border-top:1px solid #9fdcca;padding:16px 0 0;margin-top:16px}.kg-steps{grid-template-columns:1fr}.kg-step{border-right:0;border-bottom:1px solid var(--kg-line);padding:12px 10px 24px 42px}.kg-footer-grid{grid-template-columns:1fr}.kg-footer-bottom{display:block}.kg-privacy-inner{grid-template-columns:1fr}.kg-section{padding:54px 0}}


/* Full-width, entitlement-aware navigation */
.site-header{
  box-sizing:border-box;
  width:100%;
  max-width:none;
  margin:0;
  height:72px;
  min-height:72px;
  padding:0 max(20px,calc((100vw - 1180px)/2));
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:nowrap;
}
.site-header .nav-home{
  flex:0 0 auto;
  margin:0;
  line-height:0;
}
.site-header .nav-home .brand-logo{
  width:52px;
  height:auto;
}
.site-header .primary-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:nowrap;
  gap:24px;
  margin-left:auto;
  min-width:0;
  white-space:nowrap;
}
.site-header .primary-nav>a,
.site-header .primary-nav summary{
  font-size:.9rem;
  line-height:1;
}
.site-header .account-menu,
.site-header .app-menu{position:relative;flex:0 0 auto}
.site-header .account-menu-panel,
.site-header .app-menu-panel{right:0;left:auto}
@media(max-width:700px){
  .site-header{
    height:60px;
    min-height:60px;
    padding:0 10px;
  }
  .site-header .nav-home .brand-logo{width:44px}
  .site-header .primary-nav{gap:10px}
  .site-header .primary-nav>a,
  .site-header .primary-nav summary{
    padding:8px 2px;
    font-size:.75rem;
  }
  .site-header .primary-nav .nav-join{
    display:inline-flex;
    padding:8px 9px!important;
  }
  .site-header .account-menu,
  .site-header .app-menu{position:static}
  .site-header .account-menu-panel,
  .site-header .app-menu-panel{
    position:fixed;
    top:64px;
    right:8px;
    left:auto;
    width:min(360px,calc(100vw - 16px));
    max-height:calc(100dvh - 72px);
    overflow-y:auto;
  }
}
@media(max-width:370px){
  .site-header{padding:0 7px}
  .site-header .nav-home .brand-logo{width:39px}
  .site-header .primary-nav{gap:6px}
  .site-header .primary-nav>a,
  .site-header .primary-nav summary{font-size:.7rem}
  .site-header .primary-nav .nav-join{padding:7px!important}
}


/* Collapsible expense ledger */
.expense-ledger-details{padding:0;overflow:hidden}
.expense-ledger-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px 24px;
  cursor:pointer;
  list-style:none;
}
.expense-ledger-summary::-webkit-details-marker{display:none}
.expense-ledger-summary .section-kicker{margin:0 0 3px}
.expense-ledger-summary h2{margin:0}
.expense-ledger-toggle{color:var(--kg-blue);font-weight:800}
.expense-ledger-toggle .when-open{display:none}
.expense-ledger-details[open] .when-closed{display:none}
.expense-ledger-details[open] .when-open{display:inline}
.expense-ledger-details[open] .expense-ledger-summary{border-bottom:1px solid var(--kg-line)}
.expense-ledger-scroll{
  overflow-y:auto;
  overscroll-behavior:contain;
  max-height:608px;
}
.expense-ledger-scroll .finance-table thead{position:sticky;top:0;z-index:2}
@media(max-width:600px){
  .expense-ledger-summary{padding:18px}
  .expense-ledger-toggle{font-size:.82rem}
}


/* Compact desktop tool menu */
.site-header .app-menu-panel{box-sizing:border-box;width:min(430px,calc(100vw - 24px))}
.site-header .tool-menu-item{box-sizing:border-box;grid-template-columns:minmax(0,1fr);width:100%}
.site-header .tool-menu-item strong,
.site-header .tool-menu-item small{min-width:0;overflow-wrap:anywhere}
.site-header .tool-menu-item small{grid-column:1}


/* Allow dropdown content to wrap independently of the one-line navbar */
.site-header .account-menu-panel,
.site-header .app-menu-panel,
.site-header .tool-menu-list,
.site-header .tool-menu-item{
  white-space:normal;
  min-width:0;
  max-width:100%;
}
.site-header .tool-menu-item strong,
.site-header .tool-menu-item small{
  display:block;
  width:100%;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
}


/* Correct dropdown panel sizing after inherited text-wrap constraints */
.site-header .account-menu-panel{
  width:min(280px,calc(100vw - 24px));
  max-width:calc(100vw - 24px);
}
.site-header .app-menu-panel{
  width:min(430px,calc(100vw - 24px));
  max-width:calc(100vw - 24px);
}
@media(max-width:700px){
  .site-header .account-menu-panel{
    width:min(280px,calc(100vw - 16px));
    max-width:calc(100vw - 16px);
  }
  .site-header .app-menu-panel{
    width:min(360px,calc(100vw - 16px));
    max-width:calc(100vw - 16px);
  }
}


/* Launch-ready single membership offer */
.membership-release-hero{max-width:850px;text-align:center}
.membership-release-hero>p:last-child{max-width:760px;margin-left:auto;margin-right:auto}
.membership-release .single-plan{grid-template-columns:minmax(0,720px);justify-content:center}
.membership-release .featured-price{width:100%;box-sizing:border-box}


/* Light navigation state for the main insight workspaces. */
.site-header.site-header-light{
  background:var(--white,#fffdf8);
  color:var(--ink,#17211d);
  border-bottom:3px solid var(--green,#184d3a);
  box-shadow:0 1px 0 rgba(23,33,29,.12);
}
.site-header.site-header-light .brand,
.site-header.site-header-light .primary-nav>a,
.site-header.site-header-light .primary-nav summary{
  color:var(--ink,#17211d);
}
.site-header.site-header-light .primary-nav>a:hover,
.site-header.site-header-light .primary-nav summary:hover,
.site-header.site-header-light [aria-current="page"]{
  color:var(--green,#184d3a);
}
