
:root{
  --bg:#f5f8fc;
  --panel:#ffffff;
  --panel-soft:#f8fbff;
  --text:#122033;
  --muted:#5f6d81;
  --line:rgba(18,32,51,.10);
  --blue:#2c60a2;
  --blue-2:#38a3ec;
  --green:#93ce49;
  --green-deep:#5f9d2f;
  --shadow:0 22px 58px rgba(15,23,42,.10);
  --shadow-soft:0 14px 28px rgba(15,23,42,.08);
  --radius:24px;
  --radius-sm:18px;
  --wrap:min(1180px, calc(100vw - 32px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:
radial-gradient(1200px 700px at 10% -10%, rgba(56,163,236,.16), transparent 55%),
radial-gradient(1000px 620px at 90% 0%, rgba(147,206,73,.15), transparent 58%),
linear-gradient(180deg, #f9fbfe 0%, #eef4fb 100%);}
a{color:inherit}
img{max-width:100%;display:block}
.page-shell{min-height:100dvh;display:flex;flex-direction:column}
.site-header{position:sticky;top:0;z-index:40;background:rgba(249,251,254,.86);backdrop-filter:blur(16px);border-bottom:1px solid rgba(18,32,51,.06)}
.site-header-inner,.section-inner,.site-footer-inner{width:var(--wrap);margin:0 auto}
.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.brand-lockup{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand-mark{width:48px;height:48px;border-radius:16px;padding:6px;background:#fff;border:1px solid rgba(18,32,51,.08);box-shadow:var(--shadow-soft)}
.brand-name{font-size:1.05rem;font-weight:900;letter-spacing:.01em}
.brand-tag{font-size:.82rem;color:var(--muted)}
.site-nav{display:flex;align-items:center;gap:10px}
.site-nav a{padding:10px 14px;border-radius:14px;text-decoration:none;color:var(--muted);font-weight:700}
.site-nav a:hover,.site-nav a.is-active{background:rgba(44,96,162,.08);color:var(--blue)}
.site-nav .portal-link{background:linear-gradient(180deg, #4fa6f2 0%, #2c7ed7 100%);color:#fff;box-shadow:0 14px 26px rgba(44,126,215,.22)}
.site-nav .portal-link:hover{color:#fff;filter:brightness(1.03)}
.mobile-nav-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 12px;font:inherit;font-weight:800;color:var(--text)}
.mobile-nav{display:none;width:var(--wrap);margin:0 auto 12px;padding:14px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-soft)}
.mobile-nav nav{display:grid;gap:10px}
.mobile-nav a{padding:12px 14px;border-radius:14px;text-decoration:none;color:var(--text);font-weight:800;background:var(--panel-soft);border:1px solid rgba(18,32,51,.06)}
.hero{padding:44px 0 28px}
.hero-grid{width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:28px;align-items:center}
.kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(56,163,236,.10);color:var(--blue);font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.headline{margin:16px 0 12px;font-size:clamp(2.5rem, 6vw, 4.7rem);line-height:.98;letter-spacing:-.05em;font-weight:900}
.subhead{margin:0 0 22px;font-size:1.08rem;line-height:1.75;color:var(--muted);max-width:62ch}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.btn-link{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:16px;text-decoration:none;font-weight:900;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-soft)}
.btn-link.primary{background:linear-gradient(180deg, #4fa6f2 0%, #2c7ed7 100%);color:#fff;border-color:#2b73c0}
.btn-link.secondary{background:rgba(255,255,255,.92);color:var(--text)}
.hero-card,.feature-card,.price-card,.contact-card,.page-card,.faq-card{background:rgba(255,255,255,.92);border:1px solid rgba(18,32,51,.08);border-radius:var(--radius);box-shadow:var(--shadow);}
.hero-card{padding:22px}
.hero-card-logo{width:min(320px, 100%);margin:0 auto 18px;filter:drop-shadow(0 18px 32px rgba(15,23,42,.16))}
.stat-list{display:grid;gap:12px}
.stat-item{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;padding:14px;border-radius:18px;background:var(--panel-soft);border:1px solid rgba(18,32,51,.06)}
.stat-dot{width:12px;height:12px;border-radius:999px;background:linear-gradient(135deg, var(--blue-2), var(--green));margin-top:4px;box-shadow:0 0 0 4px rgba(56,163,236,.12)}
.section{padding:28px 0}
.section-heading{width:var(--wrap);margin:0 auto 18px}
.section-title{margin:0 0 8px;font-size:clamp(1.8rem, 4vw, 2.6rem);line-height:1.05;letter-spacing:-.04em}
.section-copy{margin:0;color:var(--muted);line-height:1.7;max-width:70ch}
.card-grid{width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:18px}
.feature-card,.contact-card,.faq-card,.page-card{padding:22px}
.feature-card h3,.contact-card h3,.faq-card h3,.page-card h3,.price-card h3{margin:0 0 10px;font-size:1.12rem}
.feature-card p,.contact-card p,.faq-card p,.page-card p,.price-card p{margin:0;color:var(--muted);line-height:1.7}
.callout-band{width:var(--wrap);margin:0 auto;padding:20px 24px;border-radius:28px;background:linear-gradient(135deg, rgba(44,96,162,.94), rgba(56,163,236,.92));color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 22px 50px rgba(44,96,162,.22)}
.callout-band p{margin:0;color:rgba(255,255,255,.84);max-width:60ch;line-height:1.6}
.pricing-grid{width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.price-card{padding:24px;position:relative;overflow:hidden}
.price-card.is-featured{border-color:rgba(147,206,73,.48);box-shadow:0 24px 56px rgba(93,157,47,.16)}
.price-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(147,206,73,.14);color:var(--green-deep);font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.price-amount{display:flex;align-items:flex-end;gap:8px;margin:12px 0 10px}
.price-amount strong{font-size:3rem;line-height:.9}
.price-amount span{font-size:1rem;color:var(--muted);padding-bottom:6px}
.feature-list{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.feature-list li{padding-left:22px;position:relative;color:var(--text);line-height:1.6}
.feature-list li::before{content:"•";position:absolute;left:6px;top:0;color:var(--green-deep);font-size:1.1rem}
.contact-layout,.demo-layout{width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.85fr);gap:18px}
.contact-card .meta-list,.page-card .meta-list{display:grid;gap:12px;margin-top:18px}
.meta-item{padding:14px;border-radius:16px;background:var(--panel-soft);border:1px solid rgba(18,32,51,.06)}
.meta-item strong{display:block;margin-bottom:4px;font-size:.92rem}
.form-card{padding:22px}
.form-grid{display:grid;gap:12px}
.form-row{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}
label.form-field{display:grid;gap:8px;font-size:.92rem;font-weight:700;color:var(--text)}
.form-field input,.form-field textarea,.form-field select{width:100%;font:inherit;padding:14px 14px;border-radius:16px;border:1px solid rgba(18,32,51,.12);background:#fff;color:var(--text)}
.form-field textarea{min-height:150px;resize:vertical}
.form-note{margin-top:12px;font-size:.88rem;color:var(--muted);line-height:1.6}
.site-footer{padding:36px 0 28px;color:var(--muted)}
.site-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid rgba(18,32,51,.08);padding-top:22px}
.footer-links{display:flex;flex-wrap:wrap;gap:12px}
.footer-links a{text-decoration:none;color:var(--muted);font-weight:700}
.eyebrow{font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}

/* Lead form helpers */
.hp-field{position:absolute !important;left:-9999px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important;}

/* Toast */
.site-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(10px);opacity:0;z-index:1000;
  background:rgba(255,255,255,.96);border:1px solid rgba(18,32,51,.14);box-shadow:0 16px 34px rgba(15,23,42,.14);
  padding:12px 14px;border-radius:16px;font-weight:800;max-width:min(520px, calc(100vw - 24px));text-align:center;}
.site-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0);transition:opacity .18s ease, transform .18s ease;}
.site-toast.warn{border-color:rgba(180,83,9,.25)}
@media (max-width: 1024px){
  .hero-grid,.contact-layout,.demo-layout,.pricing-grid,.card-grid{grid-template-columns:1fr}
  .site-nav{display:none}
  .mobile-nav-toggle{display:inline-flex;align-items:center;gap:8px}
  .mobile-nav.is-open{display:block}
}
@media (max-width: 640px){
  :root{--wrap:min(100vw - 20px, 100%)}
  .site-header-inner{padding:12px 0}
  .headline{font-size:clamp(2.1rem, 10vw, 3rem)}
  .subhead{font-size:1rem}
  .hero{padding:26px 0 18px}
  .hero-card,.feature-card,.price-card,.contact-card,.faq-card,.page-card,.form-card{padding:18px}
  .form-row,.site-footer-inner{grid-template-columns:1fr;display:grid}
  .site-footer-inner{justify-content:stretch}
  .callout-band{padding:18px;align-items:flex-start;flex-direction:column}
  .cta-row{display:grid;grid-template-columns:1fr}
  .btn-link{width:100%}
}


/* --- v49: public site monochrome/Square-style theme --- */
:root{
  --bg:#f7f7f5;
  --panel:#ffffff;
  --panel-soft:#fafafa;
  --text:#111111;
  --muted:#666666;
  --line:rgba(0,0,0,.105);
  --blue:#111111;
  --blue-2:#111111;
  --green:#111111;
  --green-deep:#111111;
  --shadow:0 14px 36px rgba(0,0,0,.07);
  --shadow-soft:0 8px 18px rgba(0,0,0,.055);
}
body{
  color:var(--text) !important;
  background:linear-gradient(180deg, #ffffff 0%, #f7f7f5 100%) !important;
}
.site-header{
  background:rgba(255,255,255,.92) !important;
  border-bottom:1px solid var(--line) !important;
}
.brand-mark,
.hero-card,
.feature-card,
.price-card,
.contact-card,
.page-card,
.faq-card,
.form-card,
.mobile-nav,
.site-toast,
.meta-item,
.stat-item{
  background:#ffffff !important;
  border-color:var(--line) !important;
  box-shadow:var(--shadow-soft) !important;
}
.site-nav a:hover,
.site-nav a.is-active,
.kicker,
.price-badge{
  background:#f3f3f1 !important;
  color:#111111 !important;
}
.site-nav .portal-link,
.btn-link.primary,
.callout-band{
  background:#111111 !important;
  border-color:#111111 !important;
  color:#ffffff !important;
  box-shadow:none !important;
}
.btn-link.secondary,
.btn-link,
.mobile-nav-toggle,
.mobile-nav a,
.form-field input,
.form-field textarea,
.form-field select{
  background:#ffffff !important;
  border-color:var(--line) !important;
  color:#111111 !important;
  box-shadow:none !important;
}
.site-nav a,
.brand-tag,
.subhead,
.section-copy,
.feature-card p,
.contact-card p,
.faq-card p,
.page-card p,
.price-card p,
.price-amount span,
.form-note,
.site-footer,
.footer-links a{
  color:#666666 !important;
}
.stat-dot{
  background:#111111 !important;
  box-shadow:0 0 0 4px rgba(0,0,0,.08) !important;
}
.feature-list li::before{
  color:#111111 !important;
}
.site-footer-inner{
  border-top-color:var(--line) !important;
}


/* --- v9: clean public website polish --- */
:root{
  --wrap:min(1120px, calc(100vw - 40px));
  --radius:24px;
  --shadow:0 16px 48px rgba(0,0,0,.075);
  --shadow-soft:0 8px 24px rgba(0,0,0,.055);
}
body{background:#f8f8f6 !important;}
.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(18px);}
.site-header-inner{min-height:72px;}
.brand-mark{width:42px;height:42px;border-radius:14px;}
.brand-name{font-size:1rem;letter-spacing:-.02em;}
.brand-tag{font-size:.76rem;}
.site-nav{gap:4px;}
.site-nav a{padding:9px 12px;border-radius:999px;font-size:.92rem;}
.site-nav .portal-link{padding-inline:14px;}
.hero{padding:58px 0 36px;}
.clean-hero .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(340px,.78fr);gap:42px;}
.headline{font-size:clamp(2.65rem,5.7vw,5.15rem);line-height:.94;max-width:10.5ch;}
.subhead{font-size:1.05rem;max-width:60ch;color:#555 !important;}
.kicker,.eyebrow{color:#111 !important;background:transparent !important;padding:0 !important;letter-spacing:.12em;}
.cta-row{gap:10px;margin-top:20px;}
.btn-link{border-radius:999px;padding:13px 17px;box-shadow:none !important;transition:transform .16s ease, background .16s ease, border-color .16s ease;}
.btn-link:hover{transform:translateY(-1px);}
.btn-link.primary{background:#111 !important;border-color:#111 !important;}
.btn-link.secondary{background:#fff !important;border-color:rgba(0,0,0,.12) !important;color:#111 !important;}
.hero-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;color:#666;font-size:.86rem;font-weight:800;}
.hero-trust-row span{padding:7px 10px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:#fff;}
.product-preview-card{padding:20px;background:#fff !important;}
.preview-topline{display:flex;gap:6px;margin-bottom:16px;}
.preview-topline span{width:10px;height:10px;border-radius:999px;background:#d7d7d4;}
.preview-board{display:grid;gap:14px;}
.preview-dept{border:1px solid rgba(0,0,0,.08);border-radius:20px;padding:14px;background:#fafafa;}
.preview-dept-title{font-weight:900;margin-bottom:10px;letter-spacing:-.02em;}
.preview-role{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid rgba(0,0,0,.07);font-size:.92rem;}
.preview-role strong{color:#111;}.preview-role span{color:#666;font-weight:750;text-align:right;}.preview-role.muted span{color:#999;}
.center-heading{text-align:center;}.center-heading .section-copy{margin-left:auto;margin-right:auto;}
.section{padding:36px 0;}.section-heading{margin-bottom:22px;}.section-title{letter-spacing:-.045em;}
.card-grid,.pricing-grid{gap:16px;}
.feature-card,.price-card,.contact-card,.page-card,.faq-card,.form-card{border-radius:24px !important;box-shadow:var(--shadow-soft) !important;padding:24px;}
.feature-grid-clean .feature-card h3,.price-card h3,.contact-card h3,.page-card h3,.faq-card h3{letter-spacing:-.025em;}
.minimal-callout{background:#111 !important;border-radius:28px;box-shadow:none !important;}
.minimal-callout .eyebrow{color:#bbb !important;}.minimal-callout h3{margin:6px 0 8px;font-size:1.5rem;letter-spacing:-.03em;}.minimal-callout p{color:#d0d0d0;}
.price-card .btn-link{margin-top:18px;width:100%;}.price-card.is-featured{border-color:rgba(0,0,0,.18) !important;box-shadow:0 18px 48px rgba(0,0,0,.08) !important;}
.price-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#f0f0ee !important;color:#111 !important;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;}
.price-amount strong{font-size:3.15rem;letter-spacing:-.06em;}
.feature-list{gap:8px;}.feature-list li::before{content:"✓";left:0;font-size:.95rem;}
.form-field input,.form-field textarea,.form-field select{border-radius:14px !important;box-shadow:none !important;}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#111 !important;box-shadow:0 0 0 4px rgba(0,0,0,.06) !important;}
.compact-faq-section{padding-top:22px;}
.signup-section .section-title{max-width:11ch;}
.site-footer{padding-top:46px;}
@media (max-width:1024px){.clean-hero .hero-grid{grid-template-columns:1fr}.headline{max-width:12ch}.site-header-inner{min-height:66px}.mobile-nav-toggle{border-radius:999px;background:#fff !important;}}
@media (max-width:640px){:root{--wrap:min(100vw - 24px,100%)}.hero{padding:34px 0 22px}.headline{font-size:clamp(2.35rem,12vw,3.4rem);max-width:11ch}.section{padding:28px 0}.brand-tag{display:none}.hero-trust-row{display:grid}.product-preview-card{padding:16px}.preview-role{align-items:flex-start;flex-direction:column;gap:4px}.preview-role span{text-align:left}.site-nav .portal-link,.btn-link{width:100%}}


/* Live demo page */
.demo-live-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(320px,1.1fr);gap:22px;align-items:start;max-width:1080px;margin:0 auto}
.demo-login-card,.demo-safety-card{min-height:100%}.demo-credentials{display:grid;gap:10px;margin:18px 0}.demo-credentials div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fafafa}.demo-credentials span{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:#777}.demo-credentials strong{font-size:1rem;color:#111}.demo-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.btn-link.secondary{background:#fff;color:#111;border:1px solid rgba(0,0,0,.12)}
@media(max-width:860px){.demo-live-grid{grid-template-columns:1fr}.demo-credentials div{align-items:flex-start;flex-direction:column;gap:4px}}

/* --- V11 public website final polish --- */
:root { --site-ink:#111827; --site-muted:#64748b; --site-line:rgba(15,23,42,.10); --site-soft:#f8fafc; }
body { color: var(--site-ink); background: radial-gradient(circle at 20% 0%, rgba(148,163,184,.18), transparent 30%), #fbfbfa; }
.site-header { background: rgba(255,255,255,.86); backdrop-filter: blur(16px); border-bottom: 1px solid var(--site-line); }
.site-header-inner { max-width: 1160px; }
.brand-name { letter-spacing: -.03em; }
.brand-tag { color: var(--site-muted); font-weight: 700; }
.site-nav a { border-radius: 999px; padding: 8px 11px; font-weight: 800; }
.site-nav a:not(.portal-link):hover,
.site-nav a.is-active { background: #f1f5f9; color: #0f172a; }
.portal-link,
.btn-link.primary { background: #111827; color: #fff; box-shadow: 0 12px 26px rgba(15,23,42,.16); }
.btn-link,
.btn-link.secondary { border-radius: 14px; font-weight: 900; }
.section { max-width: 1160px; margin-left: auto; margin-right: auto; }
.section-title { letter-spacing: -.055em; line-height: .98; }
.section-copy { color: var(--site-muted); font-weight: 650; line-height: 1.55; }
.page-card,
.signup-card,
.pricing-card,
.demo-login-card,
.demo-safety-card {
  border: 1px solid var(--site-line) !important;
  box-shadow: 0 18px 48px rgba(15,23,42,.075) !important;
  border-radius: 26px !important;
  background: rgba(255,255,255,.92) !important;
}
.price-badge,
.eyebrow { letter-spacing: .12em; text-transform: uppercase; font-size: .72rem; font-weight: 950; }
.demo-credentials div { border-radius: 16px; background: #f8fafc; border: 1px solid rgba(15,23,42,.08); }
.demo-credentials span { color: var(--site-muted); font-size: .72rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.demo-credentials strong { font-size: .96rem; letter-spacing: -.01em; }
.signup-plan-card { border-radius: 18px !important; }
.signup-status.is-success { background: rgba(34,197,94,.08) !important; }
.site-footer { border-top: 1px solid var(--site-line); color: var(--site-muted); }
@media (max-width: 760px) {
  .section-title { letter-spacing: -.04em; }
  .site-nav { padding-top: 8px; }
  .site-nav a { padding: 9px 10px; }
}

/* --- v17: cleaner Google-style public website theme --- */
:root{
  --site-bg:#f8fafd;
  --site-surface:#ffffff;
  --site-surface-soft:#f8fafd;
  --site-ink:#202124;
  --site-muted:#5f6368;
  --site-line:#dadce0;
  --site-line-soft:rgba(218,220,224,.72);
  --site-blue:#1a73e8;
  --site-blue-dark:#1765cc;
  --site-radius:20px;
  --site-radius-sm:14px;
  --site-shadow:0 10px 30px rgba(60,64,67,.08);
  --site-shadow-soft:0 3px 14px rgba(60,64,67,.07);
  --wrap:min(1120px, calc(100vw - 40px));
}
html{background:var(--site-bg);}
body{
  color:var(--site-ink) !important;
  background:
    radial-gradient(900px 420px at 50% -180px, rgba(26,115,232,.08), transparent 70%),
    linear-gradient(180deg, #fff 0%, var(--site-bg) 72%) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.site-header{
  background:rgba(255,255,255,.88) !important;
  border-bottom:1px solid var(--site-line-soft) !important;
  box-shadow:none !important;
}
.site-header-inner,
.section-inner,
.site-footer-inner{
  width:var(--wrap) !important;
}
.site-header-inner{
  min-height:68px !important;
  padding:10px 0 !important;
}
.brand-lockup{gap:11px !important;}
.brand-mark{
  width:40px !important;
  height:40px !important;
  border-radius:12px !important;
  border:1px solid var(--site-line-soft) !important;
  box-shadow:none !important;
  background:#fff !important;
}
.brand-name{
  color:var(--site-ink) !important;
  font-size:.98rem !important;
  font-weight:750 !important;
  letter-spacing:-.025em !important;
}
.brand-tag{
  color:var(--site-muted) !important;
  font-size:.74rem !important;
  font-weight:600 !important;
}
.site-nav{gap:2px !important;}
.site-nav a{
  min-height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  color:var(--site-muted) !important;
  font-size:.9rem !important;
  font-weight:650 !important;
  text-decoration:none !important;
  transition:background .16s ease, color .16s ease, transform .16s ease !important;
}
.site-nav a:hover,
.site-nav a.is-active{
  background:#f1f3f4 !important;
  color:var(--site-ink) !important;
}
.site-nav .portal-link,
.btn-link.primary{
  background:var(--site-blue) !important;
  border-color:var(--site-blue) !important;
  color:#fff !important;
  box-shadow:none !important;
}
.site-nav .portal-link:hover,
.btn-link.primary:hover{
  background:var(--site-blue-dark) !important;
  border-color:var(--site-blue-dark) !important;
  color:#fff !important;
}
.mobile-nav-toggle{
  min-height:36px !important;
  border-radius:999px !important;
  border:1px solid var(--site-line-soft) !important;
  background:#fff !important;
  color:var(--site-ink) !important;
  box-shadow:none !important;
}
.mobile-nav{
  background:#fff !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:18px !important;
  box-shadow:var(--site-shadow-soft) !important;
}
.mobile-nav a{
  background:#fff !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:999px !important;
  color:var(--site-ink) !important;
  font-weight:700 !important;
}
.hero{padding:54px 0 30px !important;}
.hero-grid,
.clean-hero .hero-grid{
  width:var(--wrap) !important;
  grid-template-columns:minmax(0, 1.05fr) minmax(320px, .78fr) !important;
  gap:44px !important;
}
.kicker,
.eyebrow,
.price-badge{
  display:inline-flex !important;
  width:max-content !important;
  padding:4px 0 !important;
  background:transparent !important;
  color:var(--site-blue) !important;
  border-radius:0 !important;
  font-size:.72rem !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}
.headline{
  color:var(--site-ink) !important;
  font-size:clamp(2.6rem, 5.4vw, 4.9rem) !important;
  line-height:.96 !important;
  letter-spacing:-.06em !important;
  max-width:11.5ch !important;
  font-weight:780 !important;
}
.subhead,
.section-copy,
.feature-card p,
.contact-card p,
.faq-card p,
.page-card p,
.price-card p,
.form-note,
.site-footer,
.footer-links a,
.price-amount span{
  color:var(--site-muted) !important;
  font-weight:500 !important;
}
.subhead{
  font-size:1.02rem !important;
  line-height:1.62 !important;
  max-width:62ch !important;
}
.cta-row{gap:10px !important;}
.btn-link{
  min-height:40px !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--site-ink) !important;
  padding:11px 16px !important;
  font-size:.93rem !important;
  font-weight:720 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}
.btn-link:hover{
  background:#f8fafd !important;
  transform:translateY(-1px) !important;
}
.btn-link.secondary{
  background:#fff !important;
  color:var(--site-ink) !important;
  border-color:var(--site-line-soft) !important;
}
.hero-trust-row{
  color:var(--site-muted) !important;
  font-size:.82rem !important;
  font-weight:650 !important;
}
.hero-trust-row span{
  background:#fff !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:999px !important;
  box-shadow:none !important;
}
.hero-card,
.product-preview-card,
.feature-card,
.price-card,
.contact-card,
.page-card,
.faq-card,
.form-card,
.signup-card,
.pricing-card,
.demo-login-card,
.demo-safety-card,
.meta-item,
.stat-item{
  background:#fff !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:var(--site-radius) !important;
  box-shadow:var(--site-shadow-soft) !important;
}
.hero-card,
.product-preview-card{padding:20px !important;}
.hero-card-logo{filter:none !important;}
.preview-topline span{background:#dadce0 !important;}
.preview-dept{
  background:var(--site-surface-soft) !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:16px !important;
}
.preview-dept-title{
  color:var(--site-ink) !important;
  font-weight:760 !important;
}
.preview-role{
  border-top-color:var(--site-line-soft) !important;
}
.preview-role strong{color:var(--site-ink) !important;font-weight:700 !important;}
.preview-role span{color:var(--site-muted) !important;font-weight:650 !important;}
.section{padding:34px 0 !important;}
.section-heading{margin-bottom:18px !important;}
.section-title{
  color:var(--site-ink) !important;
  font-size:clamp(1.75rem, 3.7vw, 2.7rem) !important;
  line-height:1.05 !important;
  letter-spacing:-.05em !important;
  font-weight:760 !important;
}
.section-copy{
  line-height:1.6 !important;
  font-size:.98rem !important;
}
.card-grid,
.pricing-grid{
  gap:14px !important;
}
.feature-card,
.price-card,
.contact-card,
.page-card,
.faq-card,
.form-card{
  padding:20px !important;
}
.feature-card h3,
.price-card h3,
.contact-card h3,
.page-card h3,
.faq-card h3{
  color:var(--site-ink) !important;
  font-size:1.05rem !important;
  line-height:1.22 !important;
  letter-spacing:-.02em !important;
  font-weight:730 !important;
}
.price-card.is-featured{
  border-color:rgba(26,115,232,.28) !important;
  box-shadow:0 8px 24px rgba(26,115,232,.09) !important;
}
.price-amount strong{
  color:var(--site-ink) !important;
  font-size:2.7rem !important;
  letter-spacing:-.055em !important;
  font-weight:780 !important;
}
.feature-list{gap:8px !important;}
.feature-list li{
  color:var(--site-ink) !important;
  line-height:1.45 !important;
  font-size:.92rem !important;
}
.feature-list li::before{
  content:"✓" !important;
  color:var(--site-blue) !important;
  left:0 !important;
}
.callout-band,
.minimal-callout{
  background:#202124 !important;
  color:#fff !important;
  border-radius:22px !important;
  box-shadow:none !important;
}
.callout-band p,
.minimal-callout p{
  color:rgba(255,255,255,.78) !important;
}
.minimal-callout .eyebrow{color:#bdc1c6 !important;}
.form-field input,
.form-field textarea,
.form-field select{
  min-height:42px !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--site-ink) !important;
  padding:11px 12px !important;
  font-size:.95rem !important;
  box-shadow:none !important;
}
.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus{
  border-color:var(--site-blue) !important;
  box-shadow:0 0 0 3px rgba(26,115,232,.11) !important;
  outline:none !important;
}
label.form-field{
  color:var(--site-ink) !important;
  font-size:.86rem !important;
  font-weight:700 !important;
}
.demo-live-grid{
  max-width:1040px !important;
  gap:16px !important;
}
.demo-credentials{gap:8px !important;}
.demo-credentials div{
  background:var(--site-surface-soft) !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:14px !important;
  padding:11px 12px !important;
}
.demo-credentials span{
  color:var(--site-muted) !important;
  font-size:.7rem !important;
  font-weight:760 !important;
}
.demo-credentials strong{
  color:var(--site-ink) !important;
  font-size:.94rem !important;
  font-weight:720 !important;
}
.signup-plan-card,
.plan-card{
  border:1px solid var(--site-line-soft) !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:none !important;
}
.signup-status{
  border-radius:14px !important;
  border:1px solid var(--site-line-soft) !important;
  background:var(--site-surface-soft) !important;
}
.signup-status.is-success{
  border-color:rgba(26,115,232,.22) !important;
  background:rgba(26,115,232,.07) !important;
}
.site-footer{
  padding:34px 0 24px !important;
}
.site-footer-inner{
  border-top:1px solid var(--site-line-soft) !important;
  padding-top:20px !important;
}
.footer-links a:hover{color:var(--site-ink) !important;}
.site-toast{
  background:rgba(255,255,255,.96) !important;
  border:1px solid var(--site-line-soft) !important;
  border-radius:14px !important;
  box-shadow:var(--site-shadow-soft) !important;
  color:var(--site-ink) !important;
}
@media (max-width:1024px){
  .hero-grid,
  .clean-hero .hero-grid,
  .contact-layout,
  .demo-layout,
  .pricing-grid,
  .card-grid{
    grid-template-columns:1fr !important;
  }
  .headline{max-width:13ch !important;}
}
@media (max-width:640px){
  :root{--wrap:min(100vw - 24px, 100%);}
  .site-header-inner{min-height:60px !important;}
  .brand-tag{display:none !important;}
  .hero{padding:32px 0 20px !important;}
  .headline{
    font-size:clamp(2.25rem, 11vw, 3.35rem) !important;
    max-width:12ch !important;
  }
  .feature-card,
  .price-card,
  .contact-card,
  .page-card,
  .faq-card,
  .form-card,
  .hero-card,
  .product-preview-card{
    padding:17px !important;
    border-radius:18px !important;
  }
  .callout-band,
  .minimal-callout{
    border-radius:18px !important;
  }
}

/* === V18 public site: cleaner Google-inspired finish === */
:root{
  --site-google-blue:#1a73e8;
  --site-google-bg:#f8fafd;
  --site-google-line:#dadce0;
  --site-google-muted:#5f6368;
}
body{
  background:var(--site-google-bg) !important;
}
.site-header{
  background:rgba(255,255,255,.94) !important;
  border-bottom:1px solid var(--site-google-line) !important;
  box-shadow:none !important;
  backdrop-filter:saturate(1.2) blur(16px) !important;
}
.site-nav a,
.nav-link{
  border-radius:999px !important;
  color:#3c4043 !important;
  font-weight:500 !important;
}
.site-nav a:hover,
.nav-link:hover{
  background:#f1f3f4 !important;
  color:#202124 !important;
}
.hero,
.page-hero,
.clean-hero{
  background:var(--site-google-bg) !important;
}
.hero-card,
.product-preview-card,
.feature-card,
.price-card,
.plan-card,
.signup-plan-card,
.contact-card,
.page-card,
.faq-card,
.form-card,
.demo-card,
.demo-credentials div{
  border:1px solid var(--site-google-line) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 1px 2px rgba(60,64,67,.10), 0 1px 3px rgba(60,64,67,.08) !important;
}
.btn,
.button,
.site-btn,
a.button,
button.button{
  border-radius:999px !important;
  box-shadow:none !important;
  font-weight:600 !important;
}
.btn.primary,
.button.primary,
.site-btn.primary,
a.button.primary,
button.button.primary{
  background:var(--site-google-blue) !important;
  border-color:var(--site-google-blue) !important;
}
.form-field input,
.form-field textarea,
.form-field select{
  border-radius:6px !important;
  border-color:var(--site-google-line) !important;
  box-shadow:none !important;
}
.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus{
  border-color:var(--site-google-blue) !important;
  box-shadow:0 0 0 1px var(--site-google-blue) !important;
}

/* === Public site fluid board vibe + trial language polish === */
:root{
  --fluid-blue:#0073ea;
  --fluid-green:#00c875;
  --fluid-purple:#a25ddc;
  --fluid-orange:#ff642d;
  --fluid-yellow:#ffcb00;
}
body{
  background:radial-gradient(1100px 650px at 8% -12%, rgba(0,115,234,.13), transparent 52%), radial-gradient(900px 560px at 88% -10%, rgba(0,200,117,.13), transparent 50%), linear-gradient(180deg,#fbfcff 0%,#f5f7fb 100%) !important;
}
.clean-hero .kicker,
.eyebrow{
  color:#111 !important;
  background:linear-gradient(90deg, rgba(255,203,0,.22), rgba(0,200,117,.14), rgba(0,115,234,.14)) !important;
  border:1px solid rgba(15,23,42,.08) !important;
}
.btn-link.primary,
.site-nav .portal-link{
  background:#111 !important;
  border-color:#111 !important;
  color:#fff !important;
}
.product-preview-card{
  position:relative !important;
  overflow:hidden !important;
  border-radius:30px !important;
}
.product-preview-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 0 auto !important;
  height:7px !important;
  background:linear-gradient(90deg,var(--fluid-yellow),var(--fluid-orange),var(--fluid-purple),var(--fluid-blue),var(--fluid-green)) !important;
}
.preview-dept{
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 16px 34px rgba(15,23,42,.06) !important;
}
.preview-dept-title{
  color:#111 !important;
  font-weight:900 !important;
}
.preview-role{
  border-left:4px solid var(--fluid-blue) !important;
  border-radius:14px !important;
  background:#f8fafc !important;
}
.preview-dept:nth-child(2) .preview-role{border-left-color:var(--fluid-green) !important;}
.feature-card,
.price-card,
.callout-band,
.signup-card{
  border-radius:24px !important;
}
.feature-card:nth-child(3n+1){border-top:5px solid var(--fluid-blue) !important;}
.feature-card:nth-child(3n+2){border-top:5px solid var(--fluid-purple) !important;}
.feature-card:nth-child(3n+3){border-top:5px solid var(--fluid-green) !important;}
.price-card.is-featured{border-top:5px solid var(--fluid-green) !important;}
.price-card:not(.is-featured){border-top:5px solid var(--fluid-blue) !important;}
.callout-band{
  background:linear-gradient(135deg,#111 0%,#181b34 55%,#243b6b 100%) !important;
}

/* V25: keep public homepage accents solid blue instead of rainbow. */
.product-preview-card::before{
  background:var(--fluid-blue) !important;
}
.preview-dept:nth-child(2) .preview-role,
.preview-role{
  border-left-color:var(--fluid-blue) !important;
}
.feature-card:nth-child(3n+1),
.feature-card:nth-child(3n+2),
.feature-card:nth-child(3n+3),
.price-card.is-featured,
.price-card:not(.is-featured){
  border-top-color:var(--fluid-blue) !important;
}
.clean-hero .kicker,
.eyebrow{
  background:rgba(0,115,234,.10) !important;
}

/* Rosternaut contact/email polish */
.meta-email{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-top:8px;
  color:var(--site-blue, #1a73e8);
  font-weight:760;
  text-decoration:none;
  word-break:break-word;
}
.meta-email:hover{text-decoration:underline;}
