@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --red:#B00020;
  --red-dark:#8A0018;
  --red-light:#FBEAEE;
  --ink:#1A1A1F;
  --slate:#5B5B66;
  --line:#E7E6EC;
  --line-2:#D7D6E0;
  --wash:#F7F6FA;
  --white:#FFFFFF;
  --success:#1E7A46;
  --font:'Inter',system-ui,-apple-system,sans-serif;
  /* Automation section ("Automate Agentic AI") accent — deliberately gold rather than the site's red,
     so every agent that actually acts on a customer's data (vs. only advising) reads as its own,
     consistently-branded family at a glance. */
  --gold:#B8860B;
  --gold-dark:#8C6608;
  --gold-2:#F0C868;
  --gold-light:#FBF1D9;
}

.grad-gold{background:linear-gradient(135deg, var(--gold-2), var(--gold));}
.btn-gold{background:linear-gradient(135deg, var(--gold-2), var(--gold)); color:#3A2C05; border-color:transparent;}
.btn-gold:hover{background:linear-gradient(135deg, var(--gold-2), var(--gold-dark));}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  font-family:var(--font);
  color:var(--ink);
  background:var(--white);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;}
img{max-width:100%;}

.container{max-width:1120px; margin:0 auto; padding:0 24px;}

/* ---------- Top nav ---------- */
.topnav{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 24px; border-bottom:1px solid var(--line); background:var(--white);
  position:sticky; top:0; z-index:20;
}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none;}
.brand-mark{
  width:36px; height:36px; border-radius:9px; background:var(--red);
  color:#fff; display:flex; align-items:center; justify-content:center;
  font-weight:800; font-size:19px; flex-shrink:0;
}
.brand-name{font-weight:700; font-size:16px; color:var(--ink); letter-spacing:-0.01em;}
.nav-links{display:flex; align-items:center; gap:10px;}
.nav-links a{text-decoration:none;}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  border-radius:8px; font-family:var(--font); font-weight:600; font-size:14px;
  padding:10px 18px; cursor:pointer; border:1px solid transparent; text-decoration:none;
  transition:background .15s,border-color .15s,transform .05s;
}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--red); color:#fff;}
.btn-primary:hover{background:var(--red-dark);}
.btn-ghost{background:transparent; color:var(--ink); border-color:var(--line-2);}
.btn-ghost:hover{background:var(--wash);}
.btn-outline{background:#fff; color:var(--red); border-color:var(--red);}
.btn-outline:hover{background:var(--red-light);}
.btn-block{width:100%;}
.btn-lg{padding:13px 26px; font-size:15px;}
.btn-sm{padding:6px 12px; font-size:12.5px;}
.btn:disabled{opacity:.5; cursor:not-allowed;}

/* ---------- Hero / marketing ---------- */
.hero{padding:76px 24px 56px; text-align:center; background:linear-gradient(180deg,var(--red-light) 0%, #fff 65%);}
.eyebrow{font-size:12.5px; font-weight:700; letter-spacing:.10em; text-transform:uppercase; color:var(--red); margin-bottom:14px;}
.hero h1{font-size:44px; line-height:1.15; letter-spacing:-0.02em; margin:0 0 18px; color:var(--ink);}
.hero p.lead{font-size:18px; color:var(--slate); max-width:640px; margin:0 auto 30px;}
.hero-ctas{display:flex; gap:12px; justify-content:center; flex-wrap:wrap;}
.hero-ctas.align-left{justify-content:flex-start; margin-top:24px;}
.eyebrow.center{text-align:center;}
.eyebrow-gold{color:var(--gold-dark);}

.section{padding:64px 24px;}
.section h2{font-size:29px; letter-spacing:-0.01em; margin:0 0 10px; text-align:center;}
.section p.section-lead{color:var(--slate); text-align:center; max-width:600px; margin:0 auto 40px; font-size:15.5px;}
.demo-video{max-width:420px; margin:0 auto;}
.demo-video video{width:100%; display:block; border-radius:14px; border:1px solid var(--line); box-shadow:0 16px 40px rgba(20,10,20,.10); background:#000;}

.agent-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
.agent-card{
  border:1px solid var(--line); border-radius:14px; padding:22px 20px; background:#fff;
  transition:box-shadow .15s, border-color .15s;
}
.agent-card:hover{box-shadow:0 8px 24px rgba(20,10,20,.08); border-color:var(--line-2);}
.agent-icon{
  width:44px; height:44px; border-radius:11px; background:var(--red-light); color:var(--red);
  display:flex; align-items:center; justify-content:center; font-weight:800; font-size:14px; margin-bottom:14px;
}
/* Automate Agentic AI section — gold rather than red, so every agent added here (AR Chaser and
   whatever follows it) reads as one consistently-branded "acts on your data" family. */
.agent-icon-gold{background:linear-gradient(135deg, var(--gold-2), var(--gold)); color:#3A2C05;}
.dash-agent-card.locked.gold-locked:hover{border-color:var(--gold); box-shadow:0 10px 28px rgba(184,134,11,.18);}
.price-badge.price-badge-gold{background:linear-gradient(135deg, var(--gold-2), var(--gold)); color:#3A2C05; box-shadow:0 4px 14px rgba(184,134,11,.35);}
.lock-badge.lock-badge-gold{background:var(--gold-light);}
.agent-card h3{font-size:16.5px; margin:0 0 6px;}
.agent-card p{font-size:13.5px; color:var(--slate); margin:0 0 14px; min-height:52px;}
.pill{display:inline-block; font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:3px 9px; border-radius:99px; margin:0 5px 5px 0;}
.pill-live{background:#E7F5EC; color:var(--success);}
.pill-soon{background:var(--wash); color:var(--slate);}
.pill-preview{background:#FFF4E5; color:#8A5A00;}
.pill-new{background:var(--red); color:#fff;}
.pill-lock{background:#fff; color:var(--slate); border:1px solid var(--line-2);}
.plan-badge-trial{display:inline-block; font-size:10.5px; font-weight:700; letter-spacing:.03em; text-transform:none;
  color:var(--slate); background:var(--wash); border:1px solid var(--line-2); padding:3px 9px; border-radius:99px;
  vertical-align:middle; margin-left:6px;}

.pricing-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch;}
.plan-card{border:1px solid var(--line); border-radius:16px; padding:28px 24px; display:flex; flex-direction:column; background:#fff;}
.plan-card.featured{border-color:var(--red); box-shadow:0 10px 30px rgba(176,0,32,.10);}
.plan-name{font-weight:700; font-size:18px; margin-bottom:6px;}
.plan-price{font-size:32px; font-weight:800; margin:6px 0 4px;}
.plan-price span{font-size:14px; font-weight:500; color:var(--slate);}
.plan-tagline{color:var(--slate); font-size:13.5px; margin-bottom:18px; min-height:38px;}
.plan-credits{font-size:13.5px; font-weight:600; margin-bottom:18px; color:var(--ink);}
.plan-card ul{list-style:none; padding:0; margin:0 0 22px; flex:1;}
.plan-card li{font-size:13.5px; color:var(--slate); padding:6px 0; padding-left:22px; position:relative;}
.plan-card li:before{content:"✓"; position:absolute; left:0; color:var(--success); font-weight:700;}

/* ---------- Landing: how it works / testimonials / trust / FAQ ---------- */
.steps-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:1120px; margin:0 auto;}
.step{border:1px solid var(--line); border-radius:14px; padding:24px 22px; background:#fff; position:relative;}
.step-n{width:32px; height:32px; border-radius:50%; background:var(--red); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; font-size:14px; margin-bottom:14px;}
.step h3{font-size:16px; margin:0 0 8px;}
.step p{font-size:13.5px; color:var(--slate); margin:0;}
.testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:1120px; margin:0 auto;}
.testi{margin:0; border:1px solid var(--line); border-radius:14px; padding:24px 22px; background:#fff; display:flex; flex-direction:column; gap:16px;}
.testi blockquote{margin:0; font-size:14.5px; line-height:1.6; color:var(--ink);}
.testi blockquote:before{content:"\201C"; color:var(--red); font-size:34px; line-height:0; vertical-align:-14px; margin-right:4px; font-family:Georgia,serif;}
.testi figcaption{display:flex; flex-direction:column; gap:2px; font-size:13px;}
.testi-name{font-weight:700;}
.testi-role{color:var(--slate);}
.testi.placeholder{border-style:dashed; background:repeating-linear-gradient(135deg,#fff 0 12px,#FBFAFC 12px 24px);}
.testi.placeholder blockquote{color:var(--slate); font-style:italic;}
.testi-note{text-align:center; font-size:13px; color:var(--slate); margin:22px auto 0; max-width:640px;}
.testi-note a{color:var(--red); font-weight:600;}
.trust-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1120px; margin:0 auto;}
.trust{border:1px solid var(--line); border-radius:14px; padding:22px 20px; background:#fff;}
.trust h3{font-size:15.5px; margin:0 0 8px;}
.trust p{font-size:13.5px; color:var(--slate); margin:0;}
.faq{max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:10px;}
.faq details{border:1px solid var(--line); border-radius:12px; background:#fff; padding:0 18px;}
.faq summary{cursor:pointer; padding:15px 0; font-weight:600; font-size:15px; list-style:none; display:flex; justify-content:space-between; align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary:after{content:"+"; color:var(--red); font-size:20px; font-weight:400; transition:transform .2s;}
.faq details[open] summary:after{transform:rotate(45deg);}
.faq p{margin:0 0 16px; color:var(--slate); font-size:14px; line-height:1.6;}
@media (max-width:900px){ .steps-grid,.testi-grid{grid-template-columns:1fr;} .trust-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .trust-grid{grid-template-columns:1fr;} }

.footer{border-top:1px solid var(--line); padding:36px 24px; margin-top:20px;}
.footer .disclaimer{max-width:760px; margin:0 auto 16px; font-size:12.5px; color:var(--slate); text-align:center; line-height:1.6;}
.footer .foot-links{display:flex; justify-content:center; gap:18px; font-size:13px; color:var(--slate); flex-wrap:wrap;}

/* ---------- Resources / articles ---------- */
.resources-grid{max-width:960px; margin:0 auto; display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:20px; padding:0 24px 64px;}
.resource-card{border:1px solid var(--line); border-radius:14px; padding:22px 20px; background:#fff; display:flex; flex-direction:column; text-decoration:none; color:inherit;}
.resource-card:hover{box-shadow:0 8px 24px rgba(20,10,20,.08); border-color:var(--line-2);}
.resource-card .resource-topic{font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--red); margin-bottom:10px;}
.resource-card h3{font-size:17px; margin:0 0 8px; color:var(--ink);}
.resource-card p{font-size:13.5px; color:var(--slate); margin:0; line-height:1.55;}
.article-wrap{max-width:720px; margin:0 auto; padding:56px 24px 64px;}
.article-wrap .eyebrow{text-align:left;}
.article-wrap h1{font-size:36px; line-height:1.2; letter-spacing:-0.01em; margin:0 0 16px; color:var(--ink);}
.article-meta{color:var(--slate); font-size:13px; margin:0 0 40px; padding-bottom:24px; border-bottom:1px solid var(--line);}
.article-body{font-size:16px; line-height:1.75; color:var(--ink);}
.article-body h2{font-size:22px; margin:40px 0 14px; letter-spacing:-0.01em;}
.article-body h3{font-size:17px; margin:28px 0 10px;}
.article-body p{margin:0 0 18px;}
.article-body ul, .article-body ol{margin:0 0 18px; padding-left:22px;}
.article-body li{margin-bottom:8px;}
.article-body strong{color:var(--ink);}
.article-body table{width:100%; border-collapse:collapse; font-size:14px; line-height:1.55; margin:0 0 24px; display:block; overflow-x:auto;}
.article-body th{text-align:left; font-size:11px; letter-spacing:.05em; text-transform:uppercase; color:var(--slate); background:var(--wash); padding:10px 12px; border-bottom:2px solid var(--line); white-space:nowrap;}
.article-body td{padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top;}
.article-body td a{color:var(--red); font-weight:600;}
.article-cta{background:var(--red-light); border:1px solid #F0D3DA; border-radius:14px; padding:22px 24px; margin:40px 0 8px; font-size:15px; line-height:1.6;}
.article-cta a{color:var(--red); font-weight:700;}
.article-back{display:inline-block; margin-bottom:24px; font-size:13.5px; color:var(--slate); text-decoration:none;}
.article-back:hover{color:var(--red);}
.article-image{display:block; width:100%; border-radius:14px; border:1px solid var(--line); margin:-16px 0 24px;}
.share-row{display:flex; align-items:center; gap:12px; margin:0 0 40px; padding-bottom:24px; border-bottom:1px solid var(--line); flex-wrap:wrap;}
.btn-linkedin-share{display:inline-flex; align-items:center; gap:8px; font-size:13.5px; font-weight:700; padding:9px 16px; border-radius:8px; border:1px solid var(--line-2); color:var(--ink); text-decoration:none; background:#fff;}
.btn-linkedin-share:hover{border-color:#0A66C2; color:#0A66C2;}
.btn-linkedin-share svg{color:#0A66C2;}
.share-hint{font-size:12.5px; color:var(--slate);}

/* ---------- Public capability story ---------- */
.capability-section{padding-top:72px;}
.capability-grid{max-width:1120px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
.capability-card{position:relative; min-height:330px; border:1px solid var(--line); border-radius:18px; padding:26px 24px;
  background:#fff; text-decoration:none; color:inherit; display:flex; flex-direction:column; gap:18px; overflow:hidden;
  transition:transform .18s,box-shadow .18s,border-color .18s;}
.capability-card:hover{transform:translateY(-3px); box-shadow:0 16px 38px rgba(20,10,20,.10); border-color:#C9C6D1;}
.capability-number{position:absolute; top:16px; right:20px; color:#D9D7DF; font-size:12px; font-weight:800; letter-spacing:.08em;}
.capability-icon{width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:var(--red-light); color:var(--red); font-size:17px; font-weight:800;}
.capability-card-gold .capability-icon{background:var(--gold-light); color:var(--gold-dark);}
.capability-card-dark{background:var(--ink); border-color:var(--ink); color:#fff;}
.capability-card-dark:hover{border-color:#3A3942; box-shadow:0 16px 38px rgba(20,10,20,.18);}
.capability-card-dark .capability-icon{background:#fff; color:var(--ink);}
.capability-card-dark .capability-number{color:#66646D;}
.capability-card h3{font-size:24px; letter-spacing:-.02em; margin:10px 0 8px;}
.capability-card p{font-size:14px; line-height:1.65; color:var(--slate); margin:0 0 18px;}
.capability-card-dark p{color:#D2D0D7;}
.text-link{font-size:13.5px; font-weight:700; color:var(--red);}
.capability-card-gold .text-link{color:var(--gold-dark);}
.capability-card-dark .text-link{color:#fff;}

.automation-section{background:linear-gradient(180deg,#FFFDF8 0%,var(--gold-light) 100%);}
.feature-grid{max-width:1040px; margin:0 auto; display:grid; grid-template-columns:repeat(2,1fr); gap:22px;}
.feature-panel{background:#fff; border:1px solid #E9DDBE; border-radius:18px; padding:30px 28px;}
.feature-kicker{font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; color:var(--gold-dark); margin-bottom:8px;}
.feature-panel h3{font-size:22px; margin:0 0 10px; letter-spacing:-.015em;}
.feature-panel>p{font-size:14px; color:var(--slate); line-height:1.65; margin:0 0 18px;}
.check-list{list-style:none; padding:0; margin:0 0 24px;}
.check-list li{position:relative; padding:6px 0 6px 23px; font-size:13.5px; color:var(--slate);}
.check-list li:before{content:"✓"; position:absolute; left:0; color:var(--gold-dark); font-weight:800;}

.copilot-section{background:#fff;}
.copilot-layout{max-width:1120px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:54px; align-items:center;}
.copilot-layout h2{text-align:left; font-size:34px; line-height:1.2; margin-bottom:16px;}
.copilot-lead{color:var(--slate); font-size:16px; max-width:680px;}
.mini-feature-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:26px;}
.mini-feature-grid>div{border-top:2px solid var(--red-light); padding:13px 4px 0 0;}
.mini-feature-grid strong{display:block; font-size:14px; margin-bottom:4px;}
.mini-feature-grid span{display:block; font-size:12.8px; line-height:1.55; color:var(--slate);}
.copilot-proof{border-radius:20px; background:var(--ink); color:#fff; padding:24px; box-shadow:0 20px 50px rgba(25,20,27,.18);}
.proof-top{display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:#D6D3DB; margin-bottom:18px;}
.proof-dot{width:8px; height:8px; border-radius:50%; background:#59D98E; box-shadow:0 0 0 4px rgba(89,217,142,.14);}
.copilot-proof ol{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px;}
.copilot-proof li{display:flex; gap:12px; align-items:flex-start; background:#27262D; border:1px solid #3B3942; border-radius:12px; padding:13px;}
.copilot-proof li>span{width:26px; height:26px; flex:0 0 26px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:#fff; color:var(--red); font-weight:800; font-size:12px;}
.copilot-proof strong{display:block; font-size:13px;}
.copilot-proof small{display:block; color:#BDBAC4; line-height:1.45; margin-top:2px;}

.insight-band{max-width:1120px; margin:18px auto 36px; padding:34px 36px; border:1px solid var(--line); border-radius:18px;
  background:linear-gradient(135deg,var(--red-light),#fff 62%); display:flex; align-items:center; justify-content:space-between; gap:32px;}
.insight-band .eyebrow{margin-bottom:8px;}
.insight-band h2{font-size:25px; margin:0 0 8px; letter-spacing:-.015em;}
.insight-band p{font-size:14px; color:var(--slate); max-width:760px; margin:0;}
.insight-band .btn{flex-shrink:0;}

@media (max-width:900px){
  .capability-grid{grid-template-columns:1fr;}
  .capability-card{min-height:0;}
  .feature-grid,.copilot-layout{grid-template-columns:1fr;}
  .copilot-layout{gap:32px;}
  .insight-band{margin-left:24px; margin-right:24px; align-items:flex-start; flex-direction:column;}
}
@media (max-width:560px){
  .nav-capabilities{display:none;}
  .mini-feature-grid{grid-template-columns:1fr;}
  .copilot-layout h2{font-size:27px;}
  .insight-band{padding:26px 22px; margin-left:14px; margin-right:14px;}
}

/* ---------- Search-focused solution pages ---------- */
.solution-hero{padding:68px 24px 62px;background:linear-gradient(145deg,var(--red-light),#fff 66%);border-bottom:1px solid var(--line);}
.solution-hero-inner{max-width:940px;margin:0 auto;}
.solution-hero .breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:38px;font-size:12.5px;color:var(--slate);}
.solution-hero .breadcrumb a{text-decoration:none;color:var(--slate);}
.solution-hero .breadcrumb a:hover{color:var(--red);}
.solution-hero h1{max-width:850px;margin:0 0 20px;font-size:48px;line-height:1.1;letter-spacing:-.035em;}
.solution-hero>div>p:not(.hero-proof){max-width:760px;margin:0;font-size:18px;line-height:1.7;color:var(--slate);}
.solution-hero .hero-proof{max-width:780px;margin:24px 0 0;padding:14px 16px;border-left:3px solid var(--red);background:rgba(255,255,255,.72);font-size:13px;line-height:1.6;color:var(--slate);}
.solution-hub-hero{background:linear-gradient(145deg,var(--ink),#34313a);color:#fff;}
.solution-hub-hero h1{color:#fff;}
.solution-hub-hero .eyebrow{color:#f5b8c4;}
.solution-hub-hero>div>p:not(.hero-proof){color:#d4d1da;}
.solution-hub-hero .btn-ghost{color:#fff;border-color:#6a6670;}
.solution-section{padding:72px 24px;}
.solution-soft{background:var(--wash);}
.solution-narrow{max-width:1080px;margin:0 auto;}
.solution-narrow>h2,.center-title{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:0 0 14px;}
.center-title{text-align:center;margin-bottom:32px;}
.solution-lead{max-width:720px;margin:0 0 34px;color:var(--slate);font-size:15.5px;line-height:1.7;}
.solution-lead.left{text-align:left;}
.solution-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.solution-card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.solution-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:24px 22px;}
.solution-card h3{margin:0 0 8px;font-size:16px;}
.solution-card p{margin:0;color:var(--slate);font-size:13.5px;line-height:1.65;}
.format-row{display:flex;gap:10px;flex-wrap:wrap;}
.format-row span{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:99px;background:#fff;padding:8px 13px;font-size:12.5px;font-weight:600;}
.solution-split{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:64px;align-items:start;}
.solution-split h2{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:0 0 15px;}
.workflow-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px;}
.workflow-list li{display:flex;gap:16px;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;}
.workflow-list li>span{flex:0 0 34px;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;font-weight:800;font-size:13px;}
.workflow-list strong{display:block;margin:1px 0 5px;font-size:15px;}
.workflow-list p{margin:0;color:var(--slate);font-size:13.5px;line-height:1.6;}
.control-section{background:var(--ink);color:#fff;}
.control-section h2{color:#fff;}
.control-section .eyebrow{color:#f4aab8;}
.control-section .solution-lead{color:#d2d0d7;}
.control-list{list-style:none;padding:0;margin:0;display:grid;gap:12px;}
.control-list li{position:relative;padding:15px 18px 15px 46px;border:1px solid #45424b;border-radius:12px;background:#26242b;color:#e2dfe6;font-size:13.5px;line-height:1.55;}
.control-list li:before{content:"✓";position:absolute;left:18px;color:#67d99a;font-weight:800;}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.related-link{display:flex;flex-direction:column;gap:6px;text-decoration:none;border:1px solid var(--line);border-radius:14px;padding:20px;background:#fff;}
.related-link:hover{border-color:var(--red);box-shadow:0 8px 24px rgba(20,10,20,.06);}
.related-link strong{font-size:15px;}
.related-link span{font-size:13px;color:var(--slate);line-height:1.55;}
.solution-cta{max-width:1080px;margin:22px auto 58px;padding:38px 40px;border-radius:20px;background:linear-gradient(135deg,var(--red-light),#fff);border:1px solid #f0d3da;display:flex;align-items:center;justify-content:space-between;gap:34px;}
.solution-cta h2{font-size:28px;line-height:1.2;margin:0 0 9px;}
.solution-cta p{max-width:690px;margin:0;color:var(--slate);font-size:14px;line-height:1.65;}
.solution-cta .btn{flex-shrink:0;}
.solution-hub-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.solution-hub-card{display:block;min-height:255px;padding:30px 28px;border:1px solid var(--line);border-radius:18px;text-decoration:none;background:#fff;transition:transform .18s,box-shadow .18s,border-color .18s;}
.solution-hub-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(20,10,20,.09);border-color:#c9c6d1;}
.solution-hub-card h2{font-size:25px;margin:0 0 12px;letter-spacing:-.02em;}
.solution-hub-card p{margin:0 0 26px;color:var(--slate);font-size:14px;line-height:1.7;}

@media (max-width:900px){
  .solution-card-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .solution-split{grid-template-columns:1fr;gap:30px;}
  .related-grid{grid-template-columns:1fr;}
  .solution-cta{margin-left:24px;margin-right:24px;align-items:flex-start;flex-direction:column;}
}
@media (max-width:620px){
  .solution-hero{padding:42px 18px 46px;}
  .solution-hero .breadcrumb{margin-bottom:28px;}
  .solution-hero h1{font-size:34px;}
  .solution-hero>div>p:not(.hero-proof){font-size:16px;}
  .solution-section{padding:52px 18px;}
  .solution-card-grid,.solution-card-grid-3,.solution-hub-grid{grid-template-columns:1fr;}
  .solution-narrow>h2,.center-title,.solution-split h2{font-size:27px;}
  .solution-cta{padding:28px 22px;margin-left:14px;margin-right:14px;}
}

/* ---------- Auth pages ---------- */
.auth-wrap{min-height:calc(100vh - 65px); display:flex; align-items:center; justify-content:center; padding:40px 20px; background:var(--wash);}
.auth-card{background:#fff; border:1px solid var(--line); border-radius:16px; padding:34px 32px; width:100%; max-width:400px; box-shadow:0 8px 30px rgba(20,10,20,.06);}
.auth-card h1{font-size:22px; margin:0 0 6px;}
.auth-card p.sub{color:var(--slate); font-size:13.5px; margin:0 0 24px;}
.field{margin-bottom:16px;}
.field label{display:block; font-size:13px; font-weight:600; margin-bottom:6px;}
.field input, .field select{
  width:100%; padding:10px 12px; border:1px solid var(--line-2); border-radius:8px;
  font-family:var(--font); font-size:14px; outline:none; transition:border-color .15s; background:#fff; color:var(--ink);
}
.field input:focus, .field select:focus{border-color:var(--red);}
.field .hint-sm{font-size:12px; color:var(--slate); margin-top:5px;}
.form-error{background:#FBEAEA; border:1px solid #E6B4B4; color:#9A2A2A; font-size:13px; border-radius:8px; padding:9px 12px; margin-bottom:16px;}
.form-note{background:#EAF3FC; border:1px solid #B8D9F3; color:#1F5C8A; font-size:12.5px; border-radius:8px; padding:9px 12px; margin-bottom:16px; word-break:break-all;}
.divider{display:flex; align-items:center; gap:10px; margin:18px 0; color:var(--slate); font-size:12px;}
.divider:before,.divider:after{content:""; flex:1; height:1px; background:var(--line-2);}
.switch-line{text-align:center; font-size:13.5px; color:var(--slate); margin-top:18px;}
.switch-line a{color:var(--red); font-weight:600; text-decoration:none;}
.google-btn{
  display:flex; align-items:center; justify-content:center; gap:10px; width:100%;
  border:1px solid var(--line-2); background:#fff; border-radius:8px; padding:10px 14px;
  font-family:var(--font); font-weight:600; font-size:14px; cursor:pointer; color:var(--ink);
}
.google-btn:hover{background:var(--wash);}
.google-btn:disabled{opacity:.5; cursor:not-allowed;}

/* ---------- App shell (dashboard/billing) ---------- */
.app-header{display:flex; align-items:center; justify-content:space-between; padding:14px 24px; border-bottom:1px solid var(--line);}
.app-header .right{display:flex; align-items:center; gap:16px;}
.credit-chip{font-size:12.5px; background:var(--wash); border:1px solid var(--line); border-radius:99px; padding:6px 14px; font-weight:600;}
.credit-chip b{color:var(--red);}
.app-main{max-width:1120px; margin:0 auto; padding:36px 24px 60px;}
.app-title{font-size:26px; margin:0 0 6px; letter-spacing:-0.01em;}
.app-sub{color:var(--slate); margin:0 0 30px; font-size:14.5px;}

.dash-agent-card{
  display:flex; flex-direction:column; border:1px solid var(--line); border-radius:14px; padding:22px;
  background:#fff; text-decoration:none; color:inherit; transition:box-shadow .15s,border-color .15s;
}
.dash-agent-card:hover{box-shadow:0 8px 24px rgba(20,10,20,.08); border-color:var(--line-2);}
.dash-agent-card .top-row{display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:14px;}

.dash-agent-card.locked{border-color:var(--line);}
.dash-agent-card.locked:hover{border-color:var(--red); box-shadow:0 10px 28px rgba(176,0,32,.12);}
.dash-agent-card.locked h3{color:var(--slate);}
.dash-agent-card.locked p{color:#9B99A6;}
.lock-badge{display:flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:var(--red-light); font-size:13px;}
.price-badge{
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  background:linear-gradient(135deg, var(--red), var(--red-dark)); color:#fff;
  font-weight:700; font-size:13px; letter-spacing:.01em; border-radius:99px;
  padding:9px 14px; box-shadow:0 4px 14px rgba(176,0,32,.35);
  transition:transform .15s, box-shadow .15s;
}
.dash-agent-card.locked:hover .price-badge{transform:translateY(-1px); box-shadow:0 6px 18px rgba(176,0,32,.45);}

.card{background:#fff; border:1px solid var(--line); border-radius:14px; padding:24px;}
.stat-row{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px;}
.stat-label{font-size:13px; color:var(--slate);}
.stat-value{font-weight:700;}
.meter{height:8px; border-radius:99px; background:var(--wash); overflow:hidden; margin:10px 0 4px;}
.meter-fill{height:100%; background:var(--red); border-radius:99px;}
.meter-note{font-size:12px; color:var(--slate);}

.toast{
  position:fixed; bottom:24px; left:50%; transform:translateX(-50%); background:var(--ink); color:#fff;
  padding:11px 18px; border-radius:8px; font-size:13.5px; z-index:100; box-shadow:0 8px 24px rgba(0,0,0,.2);
  max-width:90vw;
}

@media (max-width:900px){
  .agent-grid{grid-template-columns:repeat(2,1fr);}
  .pricing-grid{grid-template-columns:1fr;}
  .hero h1{font-size:32px;}
}
@media (max-width:560px){
  .agent-grid{grid-template-columns:1fr;}
  .app-header{flex-wrap:wrap; gap:10px;}
  .topnav{padding:12px 14px; gap:8px;}
  .topnav .brand-name{display:none;}
  .topnav .nav-links{gap:4px;}
  .topnav .nav-links .btn{padding:8px 10px; font-size:12px;}
  .auth-card{padding:28px 22px;}
}
