/* Taxi Conectado public design system v2 */
:root{
  --tc2-ink:#111827;
  --tc2-ink-2:#273244;
  --tc2-muted:#637083;
  --tc2-line:#DCE3EA;
  --tc2-line-strong:#C8D2DD;
  --tc2-surface:#FFFFFF;
  --tc2-soft:#F6F8FB;
  --tc2-soft-blue:#EEF6FF;
  --tc2-yellow:#FFC400;
  --tc2-yellow-hover:#E6B000;
  --tc2-blue:#1677E8;
  --tc2-blue-hover:#0B63C7;
  --tc2-green:#18864B;
  --tc2-green-soft:#EAF7EF;
  --tc2-red:#B42318;
  --tc2-shadow:0 14px 36px rgba(17,24,39,.08);
  --tc2-shadow-soft:0 6px 18px rgba(17,24,39,.06);
  --tc2-radius:8px;
  --tc2-container:1280px;
}

/* Pricing v2: two subscriptions, one AI choice and a secondary prepaid path. */
.tc-pricing-v2{
  --tcp-ink:#0b1f33;
  --tcp-text:#172033;
  --tcp-muted:#5c6677;
  --tcp-line:#d9e0e8;
  --tcp-soft:#f4f7fa;
  --tcp-yellow:#ffc400;
  --tcp-yellow-hover:#e5b000;
  --tcp-blue:#1769e0;
  --tcp-green:#16734a;
  color:var(--tcp-text);
  background:#fff;
}

.tc-pricing-v2 :is(h1,h2,h3,p,span,strong,small,a,button,label,dt,dd){
  letter-spacing:0;
}

.tc-pricing-hero{
  padding:84px 0 76px;
  border-bottom:1px solid var(--tcp-line);
  background:var(--tcp-soft);
}

.tc-pricing-hero__layout{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
  gap:72px;
  align-items:center;
}

.tc-pricing-hero__copy h1{
  max-width:760px;
  margin:12px 0 22px;
  color:var(--tcp-ink);
  font-size:52px;
  line-height:1.08;
  font-weight:750;
}

.tc-pricing-hero__copy > p:not(.saas-eyebrow){
  max-width:680px;
  margin:0;
  color:var(--tcp-muted);
  font-size:19px;
  line-height:1.62;
}

.tc-pricing-hero__copy .saas-actions{
  margin-top:30px;
}

.tc-pricing-trust{
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
  margin:28px 0 0;
  padding:22px 0 0;
  border-top:1px solid var(--tcp-line);
  list-style:none;
}

.tc-pricing-trust li{
  display:flex;
  align-items:center;
  gap:8px;
  color:#3d4859;
  font-size:14px;
  line-height:1.4;
}

.tc-pricing-trust img{
  width:18px;
  height:18px;
}

.tc-pricing-proof{
  position:relative;
  padding:30px;
  border:1px solid #233b54;
  border-radius:8px;
  color:#fff;
  background:var(--tcp-ink);
  box-shadow:0 18px 42px rgba(11,31,51,.14);
}

.tc-pricing-proof::before{
  content:"";
  position:absolute;
  top:0;
  right:30px;
  left:30px;
  height:4px;
  background:var(--tcp-yellow);
}

.tc-pricing-proof__label{
  display:block;
  margin:4px 0 8px;
  color:#a8c7e8;
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
}

body.saas-page .tc-pricing-proof h2{
  margin:0 0 24px;
  color:#fff;
  font-size:26px;
  line-height:1.25;
}

.tc-pricing-proof dl{
  margin:0;
}

.tc-pricing-proof dl div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:13px 0;
  border-top:1px solid rgba(255,255,255,.14);
}

.tc-pricing-proof dt{
  color:#d8e4ef;
}

.tc-pricing-proof dd{
  margin:0;
  color:#fff;
  font-weight:700;
  white-space:nowrap;
}

.tc-pricing-proof .tc-pricing-proof__total{
  margin-top:4px;
  padding-top:18px;
  border-color:#4e657c;
  font-size:19px;
}

.tc-pricing-proof__total dd{
  color:var(--tcp-yellow);
  font-size:24px;
}

.tc-pricing-proof p{
  margin:22px 0 8px;
  color:#e7eef5;
  line-height:1.55;
}

.tc-pricing-proof small{
  display:block;
  color:#aab9c8;
  line-height:1.5;
}

.tc-pricing-plans,
.tc-pricing-units,
.tc-pricing-compare,
.tc-pricing-faq{
  padding:104px 0;
}

.tc-pricing-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:56px;
  margin-bottom:42px;
}

.tc-pricing-heading > div:first-child{
  max-width:690px;
}

.tc-pricing-heading h2{
  margin:10px 0 12px;
  color:var(--tcp-ink);
  font-size:40px;
  line-height:1.18;
}

.tc-pricing-heading p:not(.saas-eyebrow){
  max-width:600px;
  margin:0;
  color:var(--tcp-muted);
  font-size:16px;
  line-height:1.6;
}

.tc-pricing-heading--compact{
  align-items:end;
  margin-bottom:38px;
}

.tc-pricing-mode{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-width:430px;
  padding:4px;
  border:1px solid var(--tcp-line);
  border-radius:8px;
  background:#fff;
}

.tc-pricing-mode button{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:58px;
  padding:8px 14px;
  border:0;
  border-radius:6px;
  color:#4c5665;
  text-align:left;
  background:transparent;
  cursor:pointer;
}

.tc-pricing-mode button.is-active{
  color:var(--tcp-ink);
  background:#eaf1f8;
  box-shadow:inset 0 0 0 1px #c8d8e8;
}

.tc-pricing-mode button:focus-visible{
  outline:3px solid rgba(23,105,224,.28);
  outline-offset:2px;
}

.tc-pricing-mode img{
  width:22px;
  height:22px;
}

.tc-pricing-mode span,
.tc-pricing-mode small{
  display:block;
}

.tc-pricing-mode span{
  font-size:14px;
  font-weight:750;
  line-height:1.25;
}

.tc-pricing-mode small{
  margin-top:3px;
  color:#6f7a89;
  font-size:12px;
  font-weight:500;
}

.tc-pricing-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  max-width:1040px;
  margin:0 auto;
  align-items:stretch;
}

.tc-pricing-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:34px;
  border:1px solid var(--tcp-line);
  border-radius:8px;
  background:#fff;
}

.tc-pricing-card--recommended{
  border-color:#36546f;
  box-shadow:0 18px 44px rgba(11,31,51,.11);
}

.tc-pricing-card--recommended::before{
  content:"";
  position:absolute;
  top:-1px;
  right:-1px;
  left:-1px;
  height:5px;
  border-radius:8px 8px 0 0;
  background:var(--tcp-yellow);
}

.tc-pricing-card__badge{
  align-self:flex-start;
  margin:-17px 0 20px;
  padding:5px 9px;
  border-radius:4px;
  color:var(--tcp-ink);
  background:#fff3bc;
  font-size:12px;
  font-weight:750;
}

.tc-pricing-card header{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:start;
}

.tc-pricing-card header span{
  color:var(--tcp-muted);
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
}

.tc-pricing-card header h3{
  margin:7px 0 0;
  color:var(--tcp-ink);
  font-size:29px;
  line-height:1.2;
}

.tc-pricing-card header img{
  width:28px;
  height:28px;
}

.tc-pricing-card__intro{
  min-height:52px;
  margin:18px 0 24px;
  color:var(--tcp-muted);
  line-height:1.55;
}

.tc-pricing-card__price{
  display:flex;
  gap:13px;
  align-items:end;
  margin:0;
}

.tc-pricing-card__price > strong{
  color:var(--tcp-ink);
  font-size:54px;
  line-height:.95;
  font-weight:780;
}

.tc-pricing-card__price > span{
  display:block;
  padding-bottom:3px;
  color:#344052;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
}

.tc-pricing-card__price small{
  display:block;
  margin-top:4px;
  color:#7b8491;
  font-size:11px;
  font-weight:500;
}

.tc-pricing-card__mode{
  min-height:46px;
  margin:16px 0 0;
  padding:12px 14px;
  border-left:3px solid var(--tcp-blue);
  color:#2d3a4c;
  background:#f1f6fd;
  font-size:14px;
  line-height:1.5;
}

.tc-pricing-card > ul{
  display:grid;
  gap:12px;
  margin:26px 0;
  padding:0;
  list-style:none;
}

.tc-pricing-card > ul li{
  position:relative;
  padding-left:27px;
  color:#344052;
  line-height:1.45;
}

.tc-pricing-card > ul li::before{
  content:"✓";
  position:absolute;
  top:0;
  left:0;
  color:var(--tcp-green);
  font-weight:800;
}

.tc-pricing-card__overage{
  margin:auto 0 24px;
  padding-top:20px;
  border-top:1px solid var(--tcp-line);
}

.tc-pricing-card__overage > span{
  color:#717b89;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}

.tc-pricing-card__overage p{
  margin:8px 0 0;
  color:#465264;
  font-size:13px;
  line-height:1.55;
}

.tc-pricing-card__annual{
  display:block;
  min-height:42px;
  margin-top:13px;
  color:#788290;
  text-align:center;
  line-height:1.45;
}

.tc-pricing-flex{
  display:grid;
  grid-template-columns:48px minmax(0,1.3fr) minmax(310px,.8fr) auto;
  gap:24px;
  align-items:center;
  max-width:1040px;
  margin:24px auto 0;
  padding:26px 28px;
  border:1px solid var(--tcp-line);
  border-radius:8px;
  background:#f9fbfd;
}

.tc-pricing-flex__icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:6px;
  background:#fff0aa;
}

.tc-pricing-flex__icon img{
  width:24px;
  height:24px;
}

.tc-pricing-flex span{
  color:#667180;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}

.tc-pricing-flex h3{
  margin:5px 0 6px;
  color:var(--tcp-ink);
  font-size:23px;
}

.tc-pricing-flex p{
  margin:0;
  color:var(--tcp-muted);
  font-size:14px;
  line-height:1.5;
}

.tc-pricing-flex dl{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0;
}

.tc-pricing-flex dl div{
  min-width:0;
}

.tc-pricing-flex dt{
  color:#737d8b;
  font-size:11px;
}

.tc-pricing-flex dd{
  margin:3px 0 0;
  color:var(--tcp-ink);
  font-size:14px;
  font-weight:750;
  white-space:nowrap;
}

.tc-pricing-units{
  border-top:1px solid var(--tcp-line);
  border-bottom:1px solid var(--tcp-line);
  background:var(--tcp-soft);
}

.tc-pricing-unit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--tcp-line);
  border-bottom:1px solid var(--tcp-line);
}

.tc-pricing-unit-grid article{
  position:relative;
  min-width:0;
  padding:32px 34px 36px;
  border-left:1px solid var(--tcp-line);
}

.tc-pricing-unit-grid article:first-child{
  border-left:0;
}

.tc-pricing-unit-grid article > span{
  position:absolute;
  top:28px;
  right:30px;
  color:#a5afbb;
  font-size:13px;
  font-weight:700;
}

.tc-pricing-unit-grid img{
  width:26px;
  height:26px;
}

.tc-pricing-unit-grid h3{
  margin:20px 0 10px;
  color:var(--tcp-ink);
  font-size:21px;
}

.tc-pricing-unit-grid p{
  margin:0;
  color:var(--tcp-muted);
  line-height:1.6;
}

.tc-pricing-scenario{
  padding:104px 0;
  color:#fff;
  background:var(--tcp-ink);
}

.tc-pricing-scenario__layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.8fr);
  gap:80px;
  align-items:center;
}

.tc-pricing-scenario .saas-eyebrow{
  color:#8ec6ff;
}

body.saas-page .tc-pricing-scenario h2{
  max-width:680px;
  margin:10px 0 18px;
  color:#fff;
  font-size:40px;
  line-height:1.18;
}

.tc-pricing-scenario__layout > div > p:not(.saas-eyebrow){
  max-width:640px;
  margin:0;
  color:#c7d5e2;
  font-size:17px;
  line-height:1.65;
}

.tc-pricing-scenario ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:30px 0 0;
  padding:0;
  list-style:none;
}

.tc-pricing-scenario li{
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:6px;
  color:#dce7f0;
  font-size:14px;
}

.tc-pricing-scenario li span{
  display:block;
  margin-bottom:3px;
  color:var(--tcp-yellow);
  font-size:18px;
  font-weight:750;
}

.tc-pricing-scenario__invoice{
  padding:30px;
  border-radius:8px;
  color:var(--tcp-text);
  background:#fff;
}

.tc-pricing-scenario__invoice header{
  padding-bottom:20px;
  border-bottom:1px solid var(--tcp-line);
}

.tc-pricing-scenario__invoice header span,
.tc-pricing-scenario__invoice header strong{
  display:block;
}

.tc-pricing-scenario__invoice header span{
  color:#6c7684;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}

.tc-pricing-scenario__invoice header strong{
  margin-top:6px;
  color:var(--tcp-ink);
  font-size:22px;
}

.tc-pricing-scenario__invoice dl{
  margin:0;
}

.tc-pricing-scenario__invoice dl div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:14px 0;
  border-bottom:1px solid #e8edf2;
}

.tc-pricing-scenario__invoice dd{
  margin:0;
  font-weight:700;
  white-space:nowrap;
}

.tc-pricing-scenario__invoice .tc-pricing-scenario__sum{
  padding:20px 0;
  color:var(--tcp-ink);
  font-size:19px;
}

.tc-pricing-scenario__sum dd{
  font-size:24px;
}

.tc-pricing-scenario__invoice > p{
  margin:18px 0 0;
  padding:12px 14px;
  border-left:3px solid var(--tcp-green);
  color:#365344;
  background:#edf8f2;
  font-size:13px;
  line-height:1.5;
}

.tc-pricing-table{
  overflow:hidden;
  border:1px solid var(--tcp-line);
  border-radius:8px;
}

.tc-pricing-table [role="row"]{
  display:grid;
  grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(150px,1fr));
  min-height:58px;
  border-top:1px solid var(--tcp-line);
}

.tc-pricing-table [role="row"]:first-child{
  border-top:0;
  color:#fff;
  background:var(--tcp-ink);
}

.tc-pricing-table [role="row"] > *{
  display:flex;
  align-items:center;
  min-width:0;
  padding:14px 18px;
  border-left:1px solid var(--tcp-line);
}

.tc-pricing-table [role="row"] > *:first-child{
  border-left:0;
}

.tc-pricing-table [role="row"]:nth-child(n+2) > span:not(:first-child){
  color:#39465a;
  font-weight:650;
}

.tc-pricing-table [role="row"]:nth-child(even){
  background:#f8fafc;
}

.tc-pricing-compare .tc-plan-mobile-compare{
  display:none;
}

.tc-pricing-checkout{
  padding:104px 0;
  border-top:1px solid var(--tcp-line);
  border-bottom:1px solid var(--tcp-line);
  background:#f2f6f9;
}

.tc-pricing-checkout__layout{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(520px,1fr);
  gap:80px;
  align-items:start;
}

.tc-pricing-checkout__context{
  position:sticky;
  top:110px;
}

.tc-pricing-checkout__context h2{
  margin:10px 0 18px;
  color:var(--tcp-ink);
  font-size:38px;
  line-height:1.2;
}

.tc-pricing-checkout__context > p:not(.saas-eyebrow){
  margin:0;
  color:var(--tcp-muted);
  font-size:16px;
  line-height:1.65;
}

.tc-pricing-checkout__context ol{
  display:grid;
  gap:0;
  margin:32px 0 0;
  padding:0;
  list-style:none;
}

.tc-pricing-checkout__context li{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:14px;
  padding:17px 0;
  border-top:1px solid var(--tcp-line);
}

.tc-pricing-checkout__context li > span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  color:var(--tcp-ink);
  background:var(--tcp-yellow);
  font-size:13px;
  font-weight:800;
}

.tc-pricing-checkout__context li strong,
.tc-pricing-checkout__context li p{
  display:block;
}

.tc-pricing-checkout__context li p{
  margin:3px 0 0;
  color:#697483;
  font-size:13px;
}

.tc-pricing-checkout__card{
  padding:34px;
  border:1px solid var(--tcp-line);
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 36px rgba(11,31,51,.08);
}

.tc-pricing-checkout__card > h3{
  margin:0 0 8px;
  color:var(--tcp-ink);
  font-size:25px;
}

.tc-pricing-checkout__card > p{
  margin:0 0 24px;
  color:var(--tcp-muted);
  line-height:1.55;
}

.tc-pricing-checkout__row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.tc-pricing-checkout__card .saas-checkout{
  display:grid;
  gap:15px;
}

.tc-pricing-checkout__card .saas-checkout > label:not(.saas-checkbox),
.tc-pricing-checkout__row label{
  display:grid;
  gap:7px;
  color:#374457;
  font-size:13px;
  font-weight:700;
}

.tc-pricing-checkout__card :is(input,select){
  width:100%;
  min-height:48px;
  border:1px solid #cbd4de;
  border-radius:6px;
  color:var(--tcp-text);
  background:#fff;
}

.tc-pricing-checkout__card :is(input,select):focus{
  border-color:var(--tcp-blue);
  outline:3px solid rgba(23,105,224,.15);
}

.tc-pricing-checkout__total{
  display:grid;
  gap:4px;
  padding:18px 20px;
  border:1px solid #bfd1e3;
  border-radius:6px;
  background:#edf4fb;
}

.tc-pricing-checkout__total span{
  color:#667180;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}

.tc-pricing-checkout__total strong{
  color:var(--tcp-ink);
  font-size:24px;
}

.tc-pricing-checkout__total small{
  color:#556274;
}

.tc-pricing-checkout__card .saas-checkout > small{
  color:#788290;
  line-height:1.5;
}

.tc-pricing-faq__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 24px;
}

.tc-pricing-faq details{
  border-top:1px solid var(--tcp-line);
  border-bottom:1px solid var(--tcp-line);
}

.tc-pricing-faq summary{
  padding:20px 4px;
  color:var(--tcp-ink);
  font-weight:700;
  cursor:pointer;
}

.tc-pricing-faq details p{
  margin:0;
  padding:0 4px 20px;
  color:var(--tcp-muted);
  line-height:1.6;
}

@media (max-width:1050px){
  .tc-pricing-hero__layout,
  .tc-pricing-scenario__layout,
  .tc-pricing-checkout__layout{
    gap:44px;
  }

  .tc-pricing-hero__copy h1{
    font-size:46px;
  }

  .tc-pricing-heading{
    align-items:start;
    flex-direction:column;
    gap:24px;
  }

  .tc-pricing-mode{
    width:100%;
    min-width:0;
  }

  .tc-pricing-flex{
    grid-template-columns:48px minmax(0,1fr) auto;
  }

  .tc-pricing-flex dl{
    grid-column:2 / -1;
    grid-row:2;
  }
}

@media (max-width:820px){
  .tc-pricing-hero,
  .tc-pricing-plans,
  .tc-pricing-units,
  .tc-pricing-scenario,
  .tc-pricing-compare,
  .tc-pricing-checkout,
  .tc-pricing-faq{
    padding:72px 0;
  }

  .tc-pricing-hero__layout,
  .tc-pricing-grid,
  .tc-pricing-scenario__layout,
  .tc-pricing-checkout__layout{
    grid-template-columns:1fr;
  }

  .tc-pricing-hero__copy h1{
    font-size:42px;
  }

  .tc-pricing-proof{
    max-width:620px;
  }

  .tc-pricing-card__intro,
  .tc-pricing-card__annual{
    min-height:0;
  }

  .tc-pricing-flex{
    grid-template-columns:48px minmax(0,1fr);
  }

  .tc-pricing-flex dl,
  .tc-pricing-flex .btn{
    grid-column:1 / -1;
  }

  .tc-pricing-unit-grid{
    grid-template-columns:1fr;
  }

  .tc-pricing-unit-grid article,
  .tc-pricing-unit-grid article:first-child{
    border-top:1px solid var(--tcp-line);
    border-left:0;
  }

  .tc-pricing-unit-grid article:first-child{
    border-top:0;
  }

  .tc-pricing-checkout__layout{
    gap:42px;
  }

  .tc-pricing-checkout__context{
    position:static;
  }

  .tc-pricing-table{
    display:none;
  }

  .tc-pricing-compare .tc-plan-mobile-compare{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
  }
}

@media (max-width:620px){
  .tc-pricing-hero,
  .tc-pricing-plans,
  .tc-pricing-units,
  .tc-pricing-scenario,
  .tc-pricing-compare,
  .tc-pricing-checkout,
  .tc-pricing-faq{
    padding:60px 0;
  }

  .tc-pricing-hero__copy h1{
    font-size:36px;
    line-height:1.16;
  }

  .tc-pricing-hero__copy > p:not(.saas-eyebrow){
    font-size:17px;
  }

  .tc-pricing-heading h2,
  .tc-pricing-scenario h2,
  .tc-pricing-checkout__context h2{
    font-size:30px;
    line-height:1.22;
  }

  .tc-pricing-mode{
    grid-template-columns:1fr;
  }

  .tc-pricing-card,
  .tc-pricing-proof,
  .tc-pricing-scenario__invoice,
  .tc-pricing-checkout__card{
    padding:24px 20px;
  }

  .tc-pricing-card__price > strong{
    font-size:48px;
  }

  .tc-pricing-flex{
    padding:22px 18px;
  }

  .tc-pricing-flex dl{
    grid-template-columns:1fr;
    gap:9px;
  }

  .tc-pricing-flex dl div{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding-top:8px;
    border-top:1px solid var(--tcp-line);
  }

  .tc-pricing-scenario ul,
  .tc-pricing-checkout__row,
  .tc-pricing-faq__grid,
  .tc-pricing-compare .tc-plan-mobile-compare{
    grid-template-columns:1fr;
  }

  .tc-pricing-scenario__layout{
    gap:38px;
  }

  .tc-pricing-scenario__invoice dl div{
    align-items:start;
  }

  .tc-pricing-scenario__invoice dt{
    max-width:62%;
  }
}

html{
  scroll-padding-top:92px;
}

body.saas-page,
body.saas-page--home,
body.saas-page--market,
body.demo-shell{
  margin:0;
  overflow-x:clip;
  background:var(--tc2-surface);
  color:var(--tc2-ink);
  font-family:Inter,"Segoe UI Variable","Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
  letter-spacing:0;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

body.saas-page *,
body.saas-page--home *,
body.saas-page--market *,
body.demo-shell *{
  box-sizing:border-box;
}

body.saas-page img,
body.saas-page--home img,
body.saas-page--market img,
body.demo-shell img{
  max-width:100%;
}

body.saas-page .container,
body.saas-page--home .container,
body.saas-page--market .container,
body.demo-shell .container{
  width:min(calc(100% - 64px),var(--tc2-container)) !important;
  max-width:none !important;
  margin-inline:auto;
  padding-inline:0;
}

body.saas-page h1,
body.saas-page h2,
body.saas-page h3,
body.saas-page--home h1,
body.saas-page--home h2,
body.saas-page--home h3,
body.demo-shell h1,
body.demo-shell h2,
body.demo-shell h3{
  margin-top:0;
  color:var(--tc2-ink);
  font-family:inherit;
  font-weight:760;
  letter-spacing:0;
  text-wrap:balance;
}

body.saas-page h1,
body.saas-page--home h1,
body.demo-shell h1{
  font-size:clamp(2.55rem,4.7vw,4.75rem);
  line-height:1.02;
}

body.saas-page h2,
body.saas-page--home h2,
body.demo-shell h2{
  font-size:clamp(2rem,3.2vw,3.2rem);
  line-height:1.1;
}

body.saas-page h3,
body.saas-page--home h3,
body.demo-shell h3{
  font-size:clamp(1.2rem,1.8vw,1.55rem);
  line-height:1.25;
}

body.saas-page p,
body.saas-page li,
body.saas-page--home p,
body.saas-page--home li,
body.demo-shell p,
body.demo-shell li{
  letter-spacing:0;
}

body.saas-page a,
body.saas-page button,
body.saas-page input,
body.saas-page select,
body.saas-page textarea{
  font:inherit;
  letter-spacing:0;
}

body.saas-page a:focus-visible,
body.saas-page button:focus-visible,
body.saas-page input:focus-visible,
body.saas-page select:focus-visible,
body.saas-page textarea:focus-visible,
body.demo-shell a:focus-visible,
body.demo-shell button:focus-visible,
body.demo-shell input:focus-visible,
body.demo-shell select:focus-visible,
body.demo-shell textarea:focus-visible{
  outline:3px solid rgba(22,119,232,.28);
  outline-offset:3px;
}

/* Header */
body.saas-page .saas-header,
body.saas-page--home .saas-header,
body.saas-page--market .saas-header,
body.demo-shell .saas-header{
  position:sticky !important;
  inset:0 0 auto !important;
  z-index:1200 !important;
  width:100%;
  min-height:76px;
  background:#fff !important;
  border:0 !important;
  border-bottom:1px solid var(--tc2-line) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}

body.saas-page .saas-header__inner,
body.saas-page--home .saas-header__inner,
body.saas-page--market .saas-header__inner,
body.demo-shell .saas-header__inner{
  min-height:76px !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:28px !important;
  overflow:visible !important;
}

body.saas-page .saas-logo--brand,
body.saas-page--home .saas-logo--brand,
body.demo-shell .saas-logo--brand{
  width:170px;
  min-width:170px;
  height:56px;
  min-height:0;
  display:flex;
  align-items:center;
  overflow:visible;
}

body.saas-page .saas-logo--brand img,
body.saas-page--home .saas-logo--brand img,
body.demo-shell .saas-logo--brand img{
  display:block;
  width:164px !important;
  height:auto !important;
  max-width:none !important;
  object-fit:contain;
}

body.saas-page .saas-nav,
body.saas-page--home .saas-nav,
body.saas-page--market .saas-nav,
body.demo-shell .saas-nav{
  min-width:0;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:4px !important;
  overflow:visible !important;
}

body.saas-page .saas-nav a,
body.saas-page--home .saas-nav a,
body.demo-shell .saas-nav a{
  min-height:42px !important;
  display:inline-flex;
  align-items:center;
  padding:9px 11px !important;
  border-radius:7px !important;
  color:#4B5565 !important;
  font-size:.92rem;
  font-weight:680 !important;
  text-decoration:none;
  white-space:nowrap;
}

body.saas-page .saas-nav a:hover,
body.saas-page .saas-nav a[aria-current="page"],
body.saas-page--home .saas-nav a:hover,
body.saas-page--home .saas-nav a[aria-current="page"],
body.demo-shell .saas-nav a:hover,
body.demo-shell .saas-nav a[aria-current="page"]{
  color:var(--tc2-ink) !important;
  background:#F0F3F6 !important;
}

body.saas-page .saas-header__actions,
body.saas-page--home .saas-header__actions,
body.demo-shell .saas-header__actions{
  min-width:max-content;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
  overflow:visible;
}

body.saas-page .saas-header__login,
body.saas-page--home .saas-header__login,
body.demo-shell .saas-header__login{
  min-height:42px;
  padding:9px 4px;
  color:var(--tc2-ink) !important;
  font-size:.92rem;
  font-weight:740;
  text-decoration:none;
}

.tc2-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  padding:10px;
  border:1px solid var(--tc2-line);
  border-radius:7px;
  background:#fff;
  color:var(--tc2-ink);
  cursor:pointer;
}

.tc2-menu-toggle img{
  display:block;
  width:22px;
  height:22px;
}

/* Buttons and text links */
body.saas-page .btn,
body.saas-page--home .btn,
body.demo-shell .btn{
  min-height:48px !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:12px 20px !important;
  border:1px solid transparent !important;
  border-radius:8px !important;
  box-shadow:none !important;
  font-weight:740 !important;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}

body.saas-page .btn:hover,
body.saas-page--home .btn:hover,
body.demo-shell .btn:hover{
  transform:translateY(-1px);
}

body.saas-page .btn--primary,
body.saas-page--home .btn--primary,
body.demo-shell .btn--primary{
  background:var(--tc2-yellow) !important;
  border-color:var(--tc2-yellow) !important;
  color:var(--tc2-ink) !important;
  text-shadow:none !important;
}

body.saas-page .btn--primary:hover,
body.saas-page--home .btn--primary:hover,
body.demo-shell .btn--primary:hover{
  background:var(--tc2-yellow-hover) !important;
  border-color:var(--tc2-yellow-hover) !important;
}

body.saas-page .btn--secondary,
body.saas-page .btn-secondary,
body.saas-page .btn--outline,
body.saas-page .btn--ghost,
body.saas-page--home .btn--secondary,
body.saas-page--home .btn-secondary,
body.saas-page--home .btn--outline,
body.saas-page--home .btn--ghost,
body.demo-shell .btn--secondary,
body.demo-shell .btn-secondary,
body.demo-shell .btn--outline,
body.demo-shell .btn--ghost{
  background:#fff !important;
  border-color:var(--tc2-line-strong) !important;
  color:var(--tc2-ink) !important;
}

body.saas-page .btn--secondary:hover,
body.saas-page .btn-secondary:hover,
body.saas-page .btn--outline:hover,
body.saas-page .btn--ghost:hover,
body.saas-page--home .btn--secondary:hover,
body.saas-page--home .btn-secondary:hover,
body.saas-page--home .btn--outline:hover,
body.saas-page--home .btn--ghost:hover,
body.demo-shell .btn--secondary:hover,
body.demo-shell .btn-secondary:hover,
body.demo-shell .btn--outline:hover,
body.demo-shell .btn--ghost:hover{
  border-color:#9EABB9 !important;
  background:#F8FAFC !important;
}

body.saas-page .btn--compact,
body.saas-page--home .btn--compact,
body.demo-shell .btn--compact{
  min-height:44px !important;
  padding:10px 17px !important;
  font-size:.9rem;
}

body.saas-page .saas-actions,
body.saas-page--home .saas-actions,
body.demo-shell .saas-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

/* Global page rhythm */
body.saas-page .section,
body.saas-page--home .section,
body.demo-shell .section{
  padding:80px 0;
  background:var(--tc2-surface);
}

body.saas-page .section--soft,
body.saas-page--home .section--soft,
body.demo-shell .section--soft{
  background:var(--tc2-soft) !important;
}

body.saas-page .section--tight,
body.saas-page--home .section--tight{
  padding:52px 0;
}

body.saas-page .section-heading,
body.saas-page--home .section-heading{
  max-width:760px;
  margin:0 0 32px;
}

body.saas-page .section-heading h2,
body.saas-page--home .section-heading h2{
  margin:8px 0 14px;
}

body.saas-page .section-lead,
body.saas-page--home .section-lead{
  max-width:680px;
  color:var(--tc2-muted);
  font-size:1.08rem;
  line-height:1.75;
}

body.saas-page .saas-eyebrow,
body.saas-page .eyebrow,
body.saas-page--home .saas-eyebrow,
body.saas-page--home .eyebrow,
body.demo-shell .saas-eyebrow,
body.demo-shell .eyebrow{
  margin:0;
  color:var(--tc2-blue) !important;
  font-size:.76rem !important;
  font-weight:780 !important;
  line-height:1.35;
  letter-spacing:.08em !important;
  text-transform:uppercase;
}

/* Public subpage hero */
body.saas-page .saas-page-hero,
body.saas-page--market .saas-page-hero{
  position:relative;
  overflow:hidden;
  padding:46px 0 42px !important;
  background:#fff !important;
  background-image:none !important;
  border-bottom:1px solid var(--tc2-line);
  color:var(--tc2-ink) !important;
}

body.saas-page .saas-page-hero::after,
body.saas-page--market .saas-page-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:3px;
  background:var(--tc2-yellow);
}

body.saas-page .saas-page-hero .container,
body.saas-page--market .saas-page-hero .container{
  position:relative;
  z-index:1;
}

body.saas-page .saas-page-hero h1,
body.saas-page--market .saas-page-hero h1{
  max-width:900px !important;
  margin:12px 0 20px !important;
  color:var(--tc2-ink) !important;
  font-size:clamp(2.45rem,3.8vw,3.6rem) !important;
  line-height:1.03 !important;
}

body.saas-page .saas-page-hero p:not(.saas-eyebrow),
body.saas-page--market .saas-page-hero p:not(.saas-eyebrow){
  max-width:760px !important;
  margin:0;
  color:var(--tc2-muted) !important;
  font-size:1.08rem;
  line-height:1.65;
}

body.saas-page .saas-page-hero .saas-actions,
body.saas-page--market .saas-page-hero .saas-actions{
  margin-top:28px;
}

/* Shared commercial surfaces */
body.saas-page .saas-card,
body.saas-page .saas-price-box,
body.saas-page .tc-price-card,
body.saas-page .tc-use-case-card,
body.saas-page .tc-trust-center article,
body.saas-page .tc-security-grid article,
body.saas-page .saas-feature-list article,
body.saas-page .saas-security-list article,
body.saas-page .tc-security-contact article,
body.saas-page .tc-costs-panel,
body.saas-page .tc-plan-recommender,
body.saas-page .saas-form,
body.saas-page .tc-faq-grid details,
body.saas-page .saas-cta{
  border:1px solid var(--tc2-line) !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:none !important;
}

body.saas-page .saas-card:hover,
body.saas-page .tc-price-card:hover,
body.saas-page .tc-use-case-card:hover,
body.saas-page .tc-trust-center article:hover{
  border-color:#B7C4D1 !important;
  box-shadow:var(--tc2-shadow-soft) !important;
  transform:translateY(-2px);
}

body.saas-page .tc-pricing-grid,
body.saas-page .tc-use-case-grid{
  gap:16px !important;
}

body.saas-page .tc-price-card,
body.saas-page .tc-use-case-card{
  padding:28px !important;
}

body.saas-page .tc-price-card--featured,
body.saas-page .tc-use-case-card--featured{
  border:2px solid var(--tc2-blue) !important;
  background:#FBFDFF !important;
}

body.saas-page .tc-price-card ul,
body.saas-page .tc-use-case-card ul,
body.saas-page .saas-form ul{
  padding-left:1.25rem;
}

body.saas-page .tc-price-card li::marker,
body.saas-page .tc-use-case-card li::marker{
  color:var(--tc2-green);
}

body.saas-page .tc-plan-recommender{
  padding:28px !important;
  box-shadow:var(--tc2-shadow-soft) !important;
}

body.saas-page .tc-plan-recommender__result{
  border-radius:8px !important;
  background:var(--tc2-ink) !important;
  background-image:none !important;
  color:#fff;
}

body.saas-page .tc-plan-recommender__result h3,
body.saas-page .tc-plan-recommender__result p{
  color:#fff !important;
}

body.saas-page .tc-costs-panel,
body.saas-page .tc-comparison,
body.saas-page .tc-architecture-map{
  border:1px solid var(--tc2-line) !important;
  border-radius:8px !important;
  background:var(--tc2-soft) !important;
  background-image:none !important;
  box-shadow:none !important;
}

body.saas-page .tc-trust-center,
body.saas-page .tc-security-grid,
body.saas-page .tc-security-contact{
  gap:16px !important;
}

body.saas-page .tc-trust-center article,
body.saas-page .tc-security-grid article,
body.saas-page .tc-security-contact article,
body.saas-page .saas-feature-list article,
body.saas-page .saas-security-list article{
  padding:24px !important;
}

body.saas-page .tc-faq-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

body.saas-page .tc-faq-grid details{
  padding:0 20px !important;
}

body.saas-page .tc-faq-grid summary{
  min-height:58px;
  display:flex;
  align-items:center;
  cursor:pointer;
  color:var(--tc2-ink);
  font-weight:720;
}

body.saas-page .tc-faq-grid details p{
  margin:0 0 20px;
  color:var(--tc2-muted);
}

/* Forms */
body.saas-page .saas-form{
  padding:28px !important;
}

body.saas-page label{
  color:var(--tc2-ink-2);
  font-weight:700;
}

body.saas-page label small{
  display:block;
  margin:5px 0 8px;
  color:var(--tc2-muted);
  font-size:.86rem;
  font-weight:500;
  line-height:1.5;
}

body.saas-page input:not([type="checkbox"]):not([type="radio"]),
body.saas-page select,
body.saas-page textarea,
body.demo-shell input:not([type="checkbox"]):not([type="radio"]),
body.demo-shell select,
body.demo-shell textarea{
  min-height:48px;
  width:100%;
  padding:11px 13px !important;
  border:1px solid var(--tc2-line-strong) !important;
  border-radius:7px !important;
  background:#fff !important;
  color:var(--tc2-ink) !important;
  box-shadow:none !important;
}

body.saas-page textarea,
body.demo-shell textarea{
  min-height:112px;
  resize:vertical;
}

body.saas-page input:hover,
body.saas-page select:hover,
body.saas-page textarea:hover{
  border-color:#99A8B7 !important;
}

body.saas-page input:focus,
body.saas-page select:focus,
body.saas-page textarea:focus{
  border-color:var(--tc2-blue) !important;
  box-shadow:0 0 0 3px rgba(22,119,232,.12) !important;
}

body.saas-page .check-row{
  align-items:flex-start;
}

body.saas-page input[type="checkbox"],
body.saas-page input[type="radio"]{
  width:20px;
  height:20px;
  accent-color:var(--tc2-blue);
}

/* Homepage v2 */
.tc2-hero{
  padding:48px 0 0;
  background:#fff;
  border-bottom:1px solid var(--tc2-line);
}

.tc2-hero__grid{
  display:grid;
  grid-template-columns:minmax(380px,.8fr) minmax(600px,1.2fr);
  gap:42px;
  align-items:center;
}

.tc2-hero__copy{
  align-self:center;
  padding:12px 0 30px;
}

body.saas-page--home .tc2-hero__copy h1{
  max-width:610px;
  margin:14px 0 22px;
  font-size:clamp(3rem,3.55vw,3.35rem);
  line-height:.98;
}

.tc2-hero__lead{
  max-width:590px;
  margin:0;
  color:var(--tc2-muted);
  font-size:1.16rem;
  line-height:1.72;
}

.tc2-hero__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:22px;
  margin-top:30px;
}

.tc2-text-link{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--tc2-blue);
  font-weight:740;
  text-decoration:none;
}

.tc2-text-link img{
  width:18px;
  height:18px;
}

.tc2-hero__trust{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin:25px 0 0;
  padding:0;
  list-style:none;
}

.tc2-hero__trust li{
  display:flex;
  align-items:center;
  gap:7px;
  color:#4B5869;
  font-size:.88rem;
  font-weight:640;
}

.tc2-hero__trust img{
  width:17px;
  height:17px;
}

.tc2-product{
  position:relative;
  min-width:0;
  padding-bottom:50px;
}

.tc2-product__shell{
  position:relative;
  min-height:454px;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:10px;
  background:#fff;
  box-shadow:var(--tc2-shadow);
}

.tc2-product__toolbar{
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 18px;
  border-bottom:1px solid var(--tc2-line);
}

.tc2-product__toolbar strong{
  font-size:1.22rem;
}

.tc2-product__tools{
  display:flex;
  align-items:center;
  gap:9px;
}

.tc2-product__search{
  width:230px;
  min-height:38px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 11px;
  border:1px solid var(--tc2-line);
  border-radius:7px;
  color:#7A8796;
  font-size:.78rem;
}

.tc2-product__search img,
.tc2-product__filter img{
  width:16px;
  height:16px;
}

.tc2-product__filter{
  min-height:38px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border:1px solid var(--tc2-line);
  border-radius:7px;
  background:#fff;
  color:#526072;
  font-size:.78rem;
  font-weight:680;
}

.tc2-product__body{
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  min-height:390px;
}

.tc2-product__nav{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:14px 10px;
  border-right:1px solid var(--tc2-line);
  background:#FBFCFD;
}

.tc2-product__nav a{
  min-height:38px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 9px;
  border-radius:6px;
  color:#596678;
  font-size:.73rem;
  font-weight:650;
  text-decoration:none;
}

.tc2-product__nav a.is-active{
  background:#EAF3FF;
  color:var(--tc2-blue);
}

.tc2-product__nav img{
  width:16px;
  height:16px;
}

.tc2-product__workspace{
  min-width:0;
  padding:16px 18px 104px;
}

.tc2-product__tabs{
  display:flex;
  gap:6px;
  margin-bottom:14px;
}

.tc2-product__tabs span{
  min-height:32px;
  display:inline-flex;
  align-items:center;
  padding:6px 9px;
  border-radius:6px;
  color:#667386;
  font-size:.72rem;
  font-weight:680;
}

.tc2-product__tabs .is-active{
  background:#EAF3FF;
  color:var(--tc2-blue);
}

.tc2-bookings{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  font-size:.72rem;
}

.tc2-bookings th{
  padding:10px 8px;
  border-bottom:1px solid var(--tc2-line);
  color:#6E7A8A;
  font-size:.68rem;
  font-weight:700;
  text-align:left;
}

.tc2-bookings td{
  padding:12px 8px;
  border-bottom:1px solid #E9EDF2;
  color:#344154;
  line-height:1.35;
  vertical-align:middle;
}

.tc2-bookings tbody tr:first-child{
  background:#F3FAF6;
}

.tc2-channel{
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}

.tc2-channel img{
  width:15px;
  height:15px;
}

.tc2-status{
  min-height:25px;
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:6px;
  background:#EDF2F7;
  color:#536073;
  font-size:.67rem;
  font-weight:720;
  white-space:nowrap;
}

.tc2-status--green{
  background:var(--tc2-green-soft);
  color:var(--tc2-green);
}

.tc2-status--blue{
  background:#EAF3FF;
  color:var(--tc2-blue);
}

.tc2-driver-card{
  position:absolute;
  right:-28px;
  bottom:16px;
  width:202px;
  overflow:hidden;
  border:7px solid var(--tc2-ink);
  border-radius:26px;
  background:#fff;
  box-shadow:0 18px 38px rgba(17,24,39,.22);
}

.tc2-driver-card__top{
  padding:14px 14px 11px;
  background:var(--tc2-ink);
  color:#fff;
}

.tc2-driver-card__top span{
  display:block;
  color:#AAB5C3;
  font-size:.67rem;
}

.tc2-driver-card__top strong{
  display:block;
  margin-top:2px;
  color:#fff;
  font-size:.92rem;
}

.tc2-driver-card__content{
  display:grid;
  gap:10px;
  padding:13px;
}

.tc2-driver-card__content small{
  display:block;
  color:#7A8796;
  font-size:.65rem;
}

.tc2-driver-card__content strong{
  display:block;
  color:var(--tc2-ink);
  font-size:.78rem;
  line-height:1.35;
}

.tc2-driver-card__route{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid var(--tc2-line);
  border-radius:7px;
  background:var(--tc2-soft);
}

.tc2-driver-card__button{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:7px;
  background:var(--tc2-green);
  color:#fff;
  font-size:.75rem;
  font-weight:760;
}

.tc2-flow-strip{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:-32px auto 0;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--tc2-shadow-soft);
}

.tc2-flow-strip article{
  min-height:88px;
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:11px;
  align-content:center;
  padding:18px;
  border-right:1px solid var(--tc2-line);
}

.tc2-flow-strip article:last-child{
  border-right:0;
}

.tc2-flow-strip img{
  width:34px;
  height:34px;
  padding:7px;
  border-radius:50%;
  background:var(--tc2-soft-blue);
}

.tc2-flow-strip strong{
  display:block;
  margin-bottom:2px;
  font-size:.9rem;
}

.tc2-flow-strip p{
  margin:0;
  color:var(--tc2-muted);
  font-size:.75rem;
  line-height:1.45;
}

.tc2-proof-bar{
  border-bottom:1px solid var(--tc2-line);
  background:var(--tc2-soft);
}

.tc2-proof-bar__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.tc2-proof-bar article{
  min-height:112px;
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:12px;
  align-content:center;
  padding:22px 24px;
  border-right:1px solid var(--tc2-line);
}

.tc2-proof-bar article:last-child{
  border-right:0;
}

.tc2-proof-bar img{
  width:27px;
  height:27px;
}

.tc2-proof-bar strong{
  display:block;
  margin-bottom:2px;
  font-size:.9rem;
}

.tc2-proof-bar p{
  margin:0;
  color:var(--tc2-muted);
  font-size:.78rem;
  line-height:1.4;
}

.tc2-section{
  padding:104px 0;
  background:#fff;
}

.tc2-section--soft{
  background:var(--tc2-soft);
}

.tc2-section__heading{
  max-width:780px;
  margin-bottom:48px;
}

.tc2-section__heading h2{
  margin:9px 0 16px;
}

.tc2-section__heading p:last-child{
  max-width:690px;
  margin:0;
  color:var(--tc2-muted);
  font-size:1.08rem;
  line-height:1.72;
}

.tc2-process{
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--tc2-line);
}

.tc2-process li{
  display:grid;
  grid-template-columns:66px minmax(180px,.52fr) minmax(0,1.48fr);
  gap:28px;
  align-items:center;
  padding:28px 0;
  border-bottom:1px solid var(--tc2-line);
}

.tc2-process__number{
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--tc2-ink);
  color:#fff;
  font-weight:760;
}

.tc2-process h3{
  margin:0;
  font-size:1.35rem;
}

.tc2-process p{
  margin:0;
  color:var(--tc2-muted);
}

.tc2-process__channels{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.tc2-process__channels span{
  min-height:30px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border:1px solid var(--tc2-line);
  border-radius:6px;
  background:#fff;
  color:#526072;
  font-size:.74rem;
  font-weight:650;
}

.tc2-process__channels img{
  width:15px;
  height:15px;
}

.tc2-role-tour{
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  gap:24px;
  align-items:start;
}

.tc2-role-tour__tabs{
  display:grid;
  gap:6px;
  padding:8px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tc2-role-tour__tabs button{
  min-height:54px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:12px 14px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#566375;
  font-weight:700;
  text-align:left;
  cursor:pointer;
}

.tc2-role-tour__tabs button.is-active{
  background:var(--tc2-soft-blue);
  color:var(--tc2-blue);
}

.tc2-role-tour__tabs img{
  width:21px;
  height:21px;
}

.tc2-role-panel{
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);
  gap:0;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tc2-role-panel[hidden]{
  display:none;
}

.tc2-role-panel__visual{
  min-width:0;
  padding:26px;
  border-right:1px solid var(--tc2-line);
  background:#FBFCFD;
}

.tc2-role-panel__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px;
}

.tc2-role-panel__copy h3{
  margin:0 0 12px;
}

.tc2-role-panel__copy p{
  margin:0 0 20px;
  color:var(--tc2-muted);
}

.tc2-mini-booking,
.tc2-mini-driver,
.tc2-mini-manager{
  height:100%;
  min-height:330px;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tc2-mini-booking{
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:16px;
  padding:22px;
}

.tc2-mini-booking__route{
  display:grid;
  gap:10px;
}

.tc2-mini-booking__route span{
  min-height:50px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border:1px solid var(--tc2-line);
  border-radius:7px;
  color:#536073;
}

.tc2-mini-booking__route img{
  width:19px;
  height:19px;
}

.tc2-mini-driver{
  max-width:270px;
  margin:auto;
  border:7px solid var(--tc2-ink);
  border-radius:26px;
}

.tc2-mini-driver header{
  padding:17px;
  background:var(--tc2-ink);
  color:#fff;
}

.tc2-mini-driver div{
  display:grid;
  gap:12px;
  padding:18px;
}

.tc2-mini-driver span{
  padding:12px;
  border:1px solid var(--tc2-line);
  border-radius:7px;
}

.tc2-mini-manager{
  padding:20px;
}

.tc2-mini-manager__row{
  display:grid;
  grid-template-columns:80px 1fr 90px;
  gap:10px;
  padding:13px 8px;
  border-bottom:1px solid var(--tc2-line);
  font-size:.78rem;
}

.tc2-use-cases{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:24px;
}

.tc2-use-cases__options{
  display:grid;
  gap:8px;
}

.tc2-use-cases__options button{
  min-height:68px;
  padding:15px 18px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
  color:#536073;
  font-weight:710;
  text-align:left;
  cursor:pointer;
}

.tc2-use-cases__options button.is-active{
  border-color:var(--tc2-blue);
  background:var(--tc2-soft-blue);
  color:var(--tc2-blue);
}

.tc2-use-cases__result{
  min-height:340px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:42px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tc2-use-cases__result > span{
  color:var(--tc2-blue);
  font-size:.75rem;
  font-weight:760;
  text-transform:uppercase;
}

.tc2-use-cases__result h3{
  margin:8px 0 12px;
  font-size:2rem;
}

.tc2-use-cases__result p,
.tc2-use-cases__result li{
  color:var(--tc2-muted);
}

.tc2-use-cases__result .btn{
  align-self:flex-start;
  margin-top:12px;
}

.tc2-integrations{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:54px;
  align-items:center;
}

.tc2-integrations h2{
  margin:9px 0 16px;
}

.tc2-integrations p{
  color:var(--tc2-muted);
}

.tc2-integrations__channels{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--tc2-line);
}

.tc2-integrations__channels article{
  min-height:94px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:12px;
  align-content:center;
  padding:18px;
  border-right:1px solid var(--tc2-line);
  border-bottom:1px solid var(--tc2-line);
}

.tc2-integrations__channels article:nth-child(2n){
  border-right:0;
}

.tc2-integrations__channels img{
  width:25px;
  height:25px;
}

.tc2-integrations__channels strong{
  display:block;
  margin-bottom:2px;
}

.tc2-integrations__channels span{
  color:var(--tc2-muted);
  font-size:.8rem;
}

.tc2-pricing{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.tc2-pricing--two{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:920px;
  margin-inline:auto;
}

.tc2-plan{
  display:flex;
  flex-direction:column;
  padding:28px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tc2-plan--featured{
  border:2px solid var(--tc2-blue);
  background:#FBFDFF;
}

.tc2-plan__for{
  color:var(--tc2-blue);
  font-size:.75rem;
  font-weight:760;
  text-transform:uppercase;
}

.tc2-plan h3{
  margin:8px 0 3px;
}

.tc2-plan__price{
  margin:0 0 18px;
  color:var(--tc2-ink);
  font-size:2rem;
  font-weight:780;
}

.tc2-plan__price span{
  color:var(--tc2-muted);
  font-size:.9rem;
  font-weight:600;
}

.tc2-plan > p:not(.tc2-plan__price){
  min-height:78px;
  color:var(--tc2-muted);
}

.tc2-plan ul{
  flex:1;
  display:grid;
  gap:9px;
  margin:0 0 24px;
  padding-left:1.15rem;
  color:#536073;
}

.tc2-plan li::marker{
  color:var(--tc2-green);
}

.tc2-fleet-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:16px;
  padding:20px 24px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tc2-fleet-note p{
  margin:2px 0 0;
  color:var(--tc2-muted);
}

.tc2-trust{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:64px;
  align-items:start;
}

.tc2-trust h2{
  margin:9px 0 16px;
}

.tc2-trust > div > p{
  color:var(--tc2-muted);
}

.tc2-trust__links{
  display:grid;
  margin-top:28px;
  border-top:1px solid var(--tc2-line);
}

.tc2-trust__links a{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-bottom:1px solid var(--tc2-line);
  color:var(--tc2-ink);
  font-weight:690;
  text-decoration:none;
}

.tc2-trust__links img{
  width:17px;
  height:17px;
}

.tc2-faq{
  display:grid;
  gap:10px;
}

.tc2-faq details{
  border-bottom:1px solid var(--tc2-line);
}

.tc2-faq summary{
  min-height:62px;
  display:flex;
  align-items:center;
  cursor:pointer;
  font-weight:720;
}

.tc2-faq p{
  margin:0 0 20px;
  color:var(--tc2-muted);
}

.tc2-final{
  padding:72px 0;
  background:var(--tc2-ink);
  color:#fff;
}

.tc2-final__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:42px;
}

.tc2-final h2{
  max-width:720px;
  margin:0 0 10px;
  color:#fff !important;
}

.tc2-final p{
  max-width:680px;
  margin:0;
  color:#C8D1DD;
}

.tc2-final .btn--ghost{
  border-color:#5B6675 !important;
  background:transparent !important;
  color:#fff !important;
}

/* Demo refinement */
body.demo-shell .demo-hero{
  padding:46px 0 28px !important;
  background:#fff !important;
  background-image:none !important;
  border-bottom:1px solid var(--tc2-line);
  color:var(--tc2-ink) !important;
}

body.demo-shell .demo-hero h1{
  max-width:1040px !important;
  margin:12px 0 18px !important;
  color:var(--tc2-ink) !important;
  font-size:clamp(2.55rem,3.9vw,3.65rem) !important;
  line-height:1.02 !important;
}

body.demo-shell .demo-hero p:not(.saas-eyebrow){
  max-width:760px !important;
  color:var(--tc2-muted) !important;
}

body.demo-shell .demo-proof-strip{
  gap:0 !important;
  margin-top:28px !important;
  border:1px solid var(--tc2-line) !important;
  border-radius:8px !important;
  background:#fff !important;
}

body.demo-shell .demo-proof-strip span{
  background:#fff !important;
  border-right:1px solid var(--tc2-line);
  color:var(--tc2-muted) !important;
}

body.demo-shell .demo-proof-strip span:last-child{
  border-right:0;
}

body.demo-shell .demo-proof-strip strong{
  color:var(--tc2-ink) !important;
}

body.demo-shell .demo-workspace{
  padding:54px 0 84px !important;
  background:var(--tc2-soft) !important;
}

body.demo-shell .saas-header{
  position:relative !important;
}

body.demo-shell .demo-guided,
body.demo-shell .demo-controls,
body.demo-shell .demo-card,
body.demo-shell .demo-embed-card,
body.demo-shell .demo-brand-switcher,
body.demo-shell .demo-embed-preview{
  border-color:var(--tc2-line) !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:none !important;
}

/* Footer */
body.saas-page .saas-footer,
body.saas-page--home .saas-footer,
body.demo-shell .saas-footer{
  padding:64px 0 24px !important;
  background:var(--tc2-ink) !important;
  background-image:none !important;
  color:#D2DAE4 !important;
}

body.saas-page .saas-footer__layout,
body.saas-page--home .saas-footer__layout,
body.demo-shell .saas-footer__layout{
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);
  gap:72px;
}

body.saas-page .saas-footer__brand,
body.saas-page--home .saas-footer__brand,
body.demo-shell .saas-footer__brand{
  max-width:460px;
}

body.saas-page .saas-footer__logo,
body.saas-page--home .saas-footer__logo,
body.demo-shell .saas-footer__logo{
  display:inline-flex;
  padding:10px 12px;
  border-radius:7px;
  background:#fff;
}

body.saas-page .saas-footer__logo img,
body.saas-page--home .saas-footer__logo img,
body.demo-shell .saas-footer__logo img{
  width:210px;
  height:auto;
}

body.saas-page .saas-footer__brand p,
body.saas-page--home .saas-footer__brand p,
body.demo-shell .saas-footer__brand p{
  color:#B9C4D1 !important;
}

body.saas-page .saas-footer__badges,
body.saas-page--home .saas-footer__badges,
body.demo-shell .saas-footer__badges{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

body.saas-page .saas-footer__badges span,
body.saas-page--home .saas-footer__badges span,
body.demo-shell .saas-footer__badges span{
  padding:5px 8px;
  border:1px solid #465264;
  border-radius:6px;
  color:#D9E1EA;
  font-size:.72rem;
}

body.saas-page .saas-footer__actions,
body.saas-page--home .saas-footer__actions,
body.demo-shell .saas-footer__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}

body.saas-page .saas-footer__actions a,
body.saas-page--home .saas-footer__actions a,
body.demo-shell .saas-footer__actions a{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  padding:9px 13px;
  border:1px solid #465264;
  border-radius:7px;
  color:#fff;
  font-weight:700;
  text-decoration:none;
}

body.saas-page .saas-footer__actions a:first-child,
body.saas-page--home .saas-footer__actions a:first-child,
body.demo-shell .saas-footer__actions a:first-child{
  border-color:var(--tc2-yellow);
  background:var(--tc2-yellow);
  color:var(--tc2-ink);
}

body.saas-page .saas-footer__nav,
body.saas-page--home .saas-footer__nav,
body.demo-shell .saas-footer__nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
}

body.saas-page .saas-footer__group,
body.saas-page--home .saas-footer__group,
body.demo-shell .saas-footer__group{
  min-width:0;
}

body.saas-page .saas-footer__group h2,
body.saas-page--home .saas-footer__group h2,
body.demo-shell .saas-footer__group h2{
  margin:0 0 13px;
  color:#fff !important;
  font-size:.78rem !important;
  letter-spacing:.06em;
  text-transform:uppercase;
}

body.saas-page .saas-footer__group a,
body.saas-page--home .saas-footer__group a,
body.demo-shell .saas-footer__group a{
  display:block;
  padding:5px 0;
  color:#B9C4D1 !important;
  font-size:.86rem;
  text-decoration:none;
}

body.saas-page .saas-footer__group a:hover,
body.saas-page--home .saas-footer__group a:hover,
body.demo-shell .saas-footer__group a:hover{
  color:#fff !important;
}

body.saas-page .saas-footer__bottom,
body.saas-page--home .saas-footer__bottom,
body.demo-shell .saas-footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:48px;
  padding-top:20px;
  border-top:1px solid #344154;
  color:#96A4B5;
  font-size:.78rem;
}

body.saas-page .saas-footer__bottom p,
body.saas-page--home .saas-footer__bottom p,
body.demo-shell .saas-footer__bottom p{
  margin:0;
  color:#96A4B5 !important;
}

body.saas-page .saas-footer__meta,
body.saas-page--home .saas-footer__meta,
body.demo-shell .saas-footer__meta{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:16px;
}

body.saas-page .saas-footer__meta a,
body.saas-page--home .saas-footer__meta a,
body.demo-shell .saas-footer__meta a{
  color:#D9E1EA !important;
}

/* Responsive */
@media (max-width:1120px){
  body.saas-page .saas-header__inner,
  body.saas-page--home .saas-header__inner,
  body.demo-shell .saas-header__inner{
    gap:16px !important;
  }

  body.saas-page .saas-logo--brand,
  body.saas-page--home .saas-logo--brand,
  body.demo-shell .saas-logo--brand{
    width:148px;
    min-width:148px;
  }

  body.saas-page .saas-logo--brand img,
  body.saas-page--home .saas-logo--brand img,
  body.demo-shell .saas-logo--brand img{
    width:144px !important;
  }

  body.saas-page .saas-nav a,
  body.saas-page--home .saas-nav a,
  body.demo-shell .saas-nav a{
    padding-inline:8px !important;
    font-size:.84rem;
  }

  .tc2-hero__grid{
    grid-template-columns:minmax(300px,.68fr) minmax(520px,1.32fr);
    gap:26px;
  }

  body.saas-page--home .tc2-hero__copy h1{
    font-size:clamp(2.8rem,4.6vw,3.25rem);
  }

  .tc2-driver-card{
    right:12px;
    width:196px;
  }
}

@media (max-width:920px){
  body.saas-page .container,
  body.saas-page--home .container,
  body.saas-page--market .container,
  body.demo-shell .container{
    width:min(calc(100% - 40px),var(--tc2-container)) !important;
  }

  body.saas-page .saas-header,
  body.saas-page--home .saas-header,
  body.demo-shell .saas-header{
    min-height:66px;
  }

  body.saas-page .saas-header__inner,
  body.saas-page--home .saas-header__inner,
  body.demo-shell .saas-header__inner{
    min-height:66px !important;
    grid-template-columns:auto 1fr auto;
    gap:10px !important;
  }

  body.saas-page .saas-logo--brand,
  body.saas-page--home .saas-logo--brand,
  body.demo-shell .saas-logo--brand{
    width:142px;
    min-width:142px;
    height:50px;
  }

  body.saas-page .saas-logo--brand img,
  body.saas-page--home .saas-logo--brand img,
  body.demo-shell .saas-logo--brand img{
    width:138px !important;
  }

  .tc2-menu-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  body.saas-page .saas-nav,
  body.saas-page--home .saas-nav,
  body.saas-page--market .saas-nav,
  body.demo-shell .saas-nav{
    position:absolute;
    top:calc(100% + 1px);
    left:20px;
    right:20px;
    display:none !important;
    grid-template-columns:1fr;
    gap:2px !important;
    padding:8px;
    border:1px solid var(--tc2-line);
    border-radius:8px;
    background:#fff;
    box-shadow:var(--tc2-shadow);
  }

  body.tc2-menu-open .saas-nav{
    display:grid !important;
  }

  body.saas-page .saas-header .saas-nav a:nth-child(n),
  body.saas-page--home .saas-header .saas-nav a:nth-child(n),
  body.demo-shell .saas-header .saas-nav a:nth-child(n){
    display:flex !important;
    width:100%;
    justify-content:flex-start;
    padding:11px 12px !important;
    font-size:.92rem;
  }

  body.saas-page .saas-header__actions,
  body.saas-page--home .saas-header__actions,
  body.demo-shell .saas-header__actions{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    gap:10px;
  }

  .tc2-menu-toggle{
    grid-column:3;
    grid-row:1;
  }

  .tc2-hero{
    padding-top:56px;
  }

  .tc2-hero__grid{
    grid-template-columns:1fr;
    gap:26px;
  }

  .tc2-hero__copy{
    max-width:760px;
  }

  .tc2-product{
    padding-bottom:56px;
  }

  .tc2-product__shell{
    min-height:500px;
  }

  .tc2-flow-strip,
  .tc2-proof-bar__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tc2-flow-strip article:nth-child(2),
  .tc2-proof-bar article:nth-child(2){
    border-right:0;
  }

  .tc2-flow-strip article:nth-child(-n+2),
  .tc2-proof-bar article:nth-child(-n+2){
    border-bottom:1px solid var(--tc2-line);
  }

  .tc2-role-tour,
  .tc2-use-cases,
  .tc2-integrations,
  .tc2-trust{
    grid-template-columns:1fr;
  }

  .tc2-role-tour__tabs{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .tc2-role-tour__tabs button{
    justify-content:center;
    text-align:center;
  }

  .tc2-pricing{
    grid-template-columns:1fr;
  }

  .tc2-plan > p:not(.tc2-plan__price){
    min-height:0;
  }

  body.saas-page .saas-footer__layout,
  body.saas-page--home .saas-footer__layout,
  body.demo-shell .saas-footer__layout{
    grid-template-columns:1fr;
    gap:48px;
  }
}

@media (max-width:640px){
  body.saas-page .container,
  body.saas-page--home .container,
  body.saas-page--market .container,
  body.demo-shell .container{
    width:min(calc(100% - 32px),var(--tc2-container)) !important;
  }

  body.saas-page .saas-header__inner,
  body.saas-page--home .saas-header__inner,
  body.demo-shell .saas-header__inner{
    grid-template-columns:auto minmax(0,1fr) auto;
  }

  body.saas-page .saas-logo--brand,
  body.saas-page--home .saas-logo--brand,
  body.demo-shell .saas-logo--brand{
    width:124px;
    min-width:124px;
  }

  body.saas-page .saas-logo--brand img,
  body.saas-page--home .saas-logo--brand img,
  body.demo-shell .saas-logo--brand img{
    width:120px !important;
  }

  body.saas-page .saas-header__login,
  body.saas-page--home .saas-header__login,
  body.demo-shell .saas-header__login{
    display:none;
  }

  body.saas-page .saas-header__actions .btn,
  body.saas-page--home .saas-header__actions .btn,
  body.demo-shell .saas-header__actions .btn{
    min-height:42px !important;
    padding:9px 12px !important;
    font-size:.78rem;
  }

  body.saas-page .saas-nav,
  body.saas-page--home .saas-nav,
  body.demo-shell .saas-nav{
    left:16px;
    right:16px;
  }

  body.saas-page h1,
  body.saas-page--home h1,
  body.demo-shell h1{
    font-size:2.55rem;
    line-height:1.04;
  }

  body.saas-page h2,
  body.saas-page--home h2,
  body.demo-shell h2{
    font-size:2.05rem;
  }

  body.saas-page .section,
  body.saas-page--home .section,
  body.demo-shell .section,
  .tc2-section{
    padding:56px 0;
  }

  body.saas-page .saas-page-hero,
  body.saas-page--market .saas-page-hero,
  body.demo-shell .demo-hero{
    padding:38px 0 34px !important;
  }

  body.saas-page .saas-page-hero h1,
  body.saas-page--market .saas-page-hero h1,
  body.demo-shell .demo-hero h1{
    font-size:2.25rem !important;
  }

  body.saas-page .tc-faq-grid{
    grid-template-columns:1fr;
  }

  .tc2-hero{
    padding-top:44px;
  }

  .tc2-hero__copy{
    padding-bottom:12px;
  }

  body.saas-page--home .tc2-hero__copy h1{
    font-size:2.85rem;
    line-height:1.01;
  }

  .tc2-hero__lead{
    font-size:1.02rem;
  }

  .tc2-hero__actions{
    align-items:stretch;
    gap:10px;
  }

  .tc2-hero__actions .btn{
    width:100%;
  }

  .tc2-text-link{
    justify-content:center;
  }

  .tc2-hero__trust{
    display:grid;
    gap:8px;
  }

  .tc2-product__shell{
    min-height:470px;
  }

  .tc2-product__toolbar{
    min-height:58px;
    padding:10px 12px;
  }

  .tc2-product__search{
    width:38px;
    justify-content:center;
    padding:8px;
    font-size:0;
  }

  .tc2-product__filter{
    font-size:0;
  }

  .tc2-product__body{
    grid-template-columns:1fr;
  }

  .tc2-product__nav{
    display:none;
  }

  .tc2-product__workspace{
    padding:12px 12px 170px;
  }

  .tc2-product__tabs{
    overflow:hidden;
  }

  .tc2-product__tabs span:nth-child(n+4){
    display:none;
  }

  .tc2-bookings th:nth-child(3),
  .tc2-bookings td:nth-child(3),
  .tc2-bookings th:nth-child(5),
  .tc2-bookings td:nth-child(5){
    display:none;
  }

  .tc2-bookings th,
  .tc2-bookings td{
    padding:9px 5px;
    font-size:.65rem;
  }

  .tc2-driver-card{
    right:14px;
    bottom:12px;
    width:172px;
    border-width:5px;
    border-radius:20px;
  }

  .tc2-driver-card__top{
    padding:10px;
  }

  .tc2-driver-card__content{
    gap:7px;
    padding:9px;
  }

  .tc2-flow-strip{
    margin-top:-20px;
    grid-template-columns:1fr;
  }

  .tc2-flow-strip article,
  .tc2-flow-strip article:nth-child(2){
    min-height:82px;
    border-right:0;
    border-bottom:1px solid var(--tc2-line);
  }

  .tc2-flow-strip article:last-child{
    border-bottom:0;
  }

  .tc2-proof-bar__grid{
    grid-template-columns:1fr;
  }

  .tc2-proof-bar article,
  .tc2-proof-bar article:nth-child(2){
    min-height:90px;
    border-right:0;
    border-bottom:1px solid var(--tc2-line);
  }

  .tc2-proof-bar article:last-child{
    border-bottom:0;
  }

  .tc2-process li{
    grid-template-columns:48px 1fr;
    gap:16px;
  }

  .tc2-process li > div:last-child{
    grid-column:2;
  }

  .tc2-role-tour__tabs{
    grid-template-columns:1fr;
  }

  .tc2-role-tour__tabs button{
    min-height:48px;
    justify-content:flex-start;
  }

  .tc2-role-panel{
    grid-template-columns:1fr;
  }

  .tc2-role-panel__visual{
    min-height:330px;
    border-right:0;
    border-bottom:1px solid var(--tc2-line);
  }

  .tc2-role-panel__copy{
    padding:26px;
  }

  .tc2-use-cases__result{
    min-height:0;
    padding:28px;
  }

  .tc2-integrations__channels{
    grid-template-columns:1fr;
  }

  .tc2-integrations__channels article,
  .tc2-integrations__channels article:nth-child(2n){
    border-right:0;
  }

  .tc2-fleet-note,
  .tc2-final__inner{
    align-items:flex-start;
    flex-direction:column;
  }

  .tc2-fleet-note .btn,
  .tc2-final .saas-actions,
  .tc2-final .btn{
    width:100%;
  }

  body.demo-shell .demo-proof-strip{
    grid-template-columns:1fr 1fr !important;
  }

  body.demo-shell .demo-proof-strip span,
  body.demo-shell .demo-proof-strip span:last-child{
    min-height:74px;
    border-right:1px solid var(--tc2-line);
    border-bottom:1px solid var(--tc2-line);
  }

  body.demo-shell .demo-proof-strip span:nth-child(2n){
    border-right:0;
  }

  body.demo-shell .demo-proof-strip span:last-child{
    grid-column:1 / -1;
    border-right:0;
    border-bottom:0;
  }

  body.saas-page .saas-footer__nav,
  body.saas-page--home .saas-footer__nav,
  body.demo-shell .saas-footer__nav{
    grid-template-columns:1fr 1fr;
  }

  body.saas-page .saas-footer__group:last-child,
  body.saas-page--home .saas-footer__group:last-child,
  body.demo-shell .saas-footer__group:last-child{
    grid-column:1 / -1;
  }

  body.saas-page .saas-footer__bottom,
  body.saas-page--home .saas-footer__bottom,
  body.demo-shell .saas-footer__bottom{
    align-items:flex-start;
    flex-direction:column;
  }

  body.saas-page .saas-footer__meta,
  body.saas-page--home .saas-footer__meta,
  body.demo-shell .saas-footer__meta{
    justify-content:flex-start;
  }
}

.tc2-anchor-picker,
.tc2-mobile-collapse__toggle,
.tc2-plan-tabs{
  display:none;
}

.tc2-not-found{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
  align-items:center;
  gap:80px;
}

.tc2-not-found__copy{
  max-width:760px;
}

.tc2-not-found__visual{
  display:grid;
  place-items:center;
}

.tc2-not-found__visual img{
  display:block;
  width:min(100%,240px);
  height:auto;
  border-radius:24px;
  box-shadow:0 28px 60px rgba(15,23,42,.18);
}

body.saas-page--status .saas-header__inner,
body.saas-page--confirmation .saas-header__inner,
body.page--thanks .saas-header__inner{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  min-height:76px !important;
  flex-wrap:nowrap !important;
  gap:20px !important;
}

.tc2-transaction-context{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  color:var(--tc2-ink);
  font-size:.9rem;
  font-weight:760;
}

.tc2-transaction-context img{
  width:20px;
  height:20px;
}

body.page--thanks .tracker-status-card h1{
  color:#fff !important;
}

body.page--thanks .tracker-status-card p,
body.page--thanks .tracker-status-card [data-live-updated]{
  color:#D9E2EC !important;
}

.saas-footer--compact{
  padding:30px 0 !important;
  border-top:3px solid var(--tc2-yellow) !important;
  background:var(--tc2-ink) !important;
  color:#fff !important;
}

.tc2-transaction-footer{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:28px;
}

.tc2-transaction-footer img{
  display:block;
  width:168px;
  height:auto;
}

.tc2-footer-logo{
  display:inline-flex;
  width:max-content;
  padding:7px 9px;
  border-radius:6px;
  background:#fff;
}

.tc2-footer-logo:focus-visible{
  outline:3px solid var(--tc2-yellow);
  outline-offset:3px;
}

.tc2-transaction-footer p{
  margin:0;
  color:#C9D3DF !important;
  font-size:.9rem;
}

.tc2-transaction-footer nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px 18px;
}

.tc2-transaction-footer a{
  color:#fff !important;
  font-size:.86rem;
  font-weight:720;
  text-decoration:none;
}

.tc2-mobile-collapse__body[hidden],
.tc-plan-mobile-compare > article[hidden]{
  display:none !important;
}

@media (max-width:720px){
  .tc2-transaction-footer{
    grid-template-columns:1fr;
    align-items:start;
    gap:16px;
  }

  .tc2-transaction-footer img{
    width:148px;
  }

  .tc2-transaction-footer nav{
    justify-content:flex-start;
  }

  body.saas-page--status .saas-header__inner,
  body.saas-page--confirmation .saas-header__inner,
  body.page--thanks .saas-header__inner{
    min-height:64px !important;
    padding-block:4px !important;
  }

  body.saas-page--status .saas-logo--brand,
  body.saas-page--confirmation .saas-logo--brand,
  body.page--thanks .saas-logo--brand{
    width:132px !important;
    min-width:132px !important;
  }

  body.saas-page--status .saas-logo--brand img,
  body.saas-page--confirmation .saas-logo--brand img,
  body.page--thanks .saas-logo--brand img{
    width:128px !important;
  }

  .tc2-transaction-context{
    gap:6px;
    font-size:.76rem;
  }

  .tc2-transaction-context img{
    width:18px;
    height:18px;
  }

  .tc2-not-found{
    grid-template-columns:1fr;
    gap:34px;
  }

  .tc2-not-found__visual{
    order:-1;
    justify-content:start;
  }

  .tc2-not-found__visual img{
    width:104px;
    border-radius:16px;
  }

  body.saas-page--login .saas-login-layout{
    display:flex !important;
    flex-direction:column;
  }

  body.saas-page--login section.saas-login-panel:not(.saas-login-panel--secondary){
    order:-2 !important;
  }

  body.saas-page--login .saas-login-panel--secondary{
    order:3 !important;
  }

  body.saas-page--login .tc-login-mode-cards{
    margin-top:10px;
  }

  body.tc2-anchor-ready .dpa-anchor-nav{
    display:none !important;
  }

  .tc2-anchor-picker{
    display:grid;
    gap:8px;
    margin:-18px 0 26px;
    color:var(--tc2-ink);
    font-size:.88rem;
    font-weight:760;
  }

  .tc2-anchor-picker select{
    width:100%;
    min-height:48px;
    padding:0 42px 0 14px;
    border:1px solid var(--tc2-line);
    border-radius:8px;
    background:#fff;
    color:var(--tc2-ink);
    font:inherit;
  }

  [data-mobile-collapsible] .section-heading,
  [data-mobile-collapsible] > .container > :first-child,
  .tc-costs-panel[data-mobile-collapsible] > :first-child{
    margin-bottom:0 !important;
  }

  .tc2-mobile-collapse__toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    min-height:46px;
    margin-top:20px;
    padding:10px 14px;
    border:1px solid var(--tc2-line);
    border-radius:8px;
    background:#fff;
    color:var(--tc2-ink);
    font:inherit;
    font-size:.9rem;
    font-weight:760;
  }

  .tc2-mobile-collapse__toggle img{
    width:18px;
    height:18px;
    transition:transform .18s ease;
  }

  .is-mobile-expanded .tc2-mobile-collapse__toggle img{
    transform:rotate(180deg);
  }

  .tc2-mobile-collapse__body{
    margin-top:24px;
  }

  .tc-costs-panel[data-mobile-collapsible]{
    padding:22px !important;
  }

  .tc2-plan-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin:0 0 14px;
  }

  .tc2-plan-tabs button{
    min-height:44px;
    padding:9px 10px;
    border:1px solid var(--tc2-line);
    border-radius:7px;
    background:#fff;
    color:var(--tc2-muted);
    font:inherit;
    font-size:.84rem;
    font-weight:720;
  }

  .tc2-plan-tabs button[aria-selected="true"]{
    border-color:var(--tc2-blue);
    background:var(--tc2-blue-soft);
    color:var(--tc2-ink);
  }

  body.saas-page .section-heading,
  body.saas-page--home .section-heading{
    margin-bottom:28px;
  }

  body.saas-page h2,
  body.saas-page--home h2,
  body.demo-shell h2{
    font-size:1.9rem;
  }
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
  }
}

/* Public product-led pages v3 */
.tcv3-hero{
  padding:84px 0 72px;
  background:#fff;
}

.tcv3-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(420px,.84fr);
  align-items:center;
  gap:clamp(52px,7vw,104px);
}

.tcv3-hero__copy{
  max-width:690px;
}

body.saas-page .tcv3-hero h1{
  max-width:760px;
  margin:14px 0 24px;
  font-size:clamp(2.8rem,4.5vw,4.25rem);
  line-height:1.04;
}

.tcv3-hero__copy > p:not(.saas-eyebrow){
  max-width:640px;
  margin:0;
  color:var(--tc2-muted);
  font-size:1.12rem;
  line-height:1.7;
}

.tcv3-hero .saas-actions{
  align-items:center;
  margin-top:30px;
}

.tcv3-text-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  color:var(--tc2-blue) !important;
  font-weight:760;
  text-decoration:none;
}

.tcv3-text-link:hover{
  text-decoration:underline;
  text-underline-offset:4px;
}

.tcv3-trust-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
  margin-top:28px;
  color:var(--tc2-ink-2);
  font-size:.91rem;
  font-weight:690;
}

.tcv3-trust-row span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.tcv3-trust-row img{
  width:18px;
  height:18px;
}

.tcv3-hero__visual{
  width:100%;
  margin:0;
}

.tcv3-hero__visual img{
  display:block;
  width:100%;
  height:auto;
}

.tcv3-hero__visual--diagram{
  justify-self:end;
  max-width:560px;
}

.tcv3-section{
  padding:104px 0;
  background:#fff;
}

.tcv3-section--soft{
  background:var(--tc2-soft);
  border-block:1px solid #EEF1F5;
}

.tcv3-section--tight{
  padding:80px 0 104px;
}

.tcv3-section__heading{
  max-width:760px;
  margin-bottom:42px;
}

.tcv3-section__heading h2{
  margin:12px 0 16px;
}

.tcv3-section__heading > p:last-child{
  max-width:680px;
  margin:0;
  color:var(--tc2-muted);
  font-size:1.06rem;
}

.tcv3-case-picker{
  display:grid;
  gap:18px;
}

.tcv3-case-picker__options{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.tcv3-case-picker__options button{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:12px;
  min-height:102px;
  padding:18px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
  color:var(--tc2-ink);
  text-align:left;
  cursor:pointer;
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}

.tcv3-case-picker__options button:hover{
  border-color:var(--tc2-line-strong);
  box-shadow:var(--tc2-shadow-soft);
}

.tcv3-case-picker__options button.is-active{
  border-color:var(--tc2-blue);
  background:var(--tc2-soft-blue);
  box-shadow:inset 0 3px 0 var(--tc2-blue);
}

.tcv3-case-picker__options button > img{
  width:24px;
  height:24px;
  margin-top:2px;
}

.tcv3-case-picker__options button > span{
  display:grid;
  gap:5px;
  font-weight:760;
  line-height:1.25;
}

.tcv3-case-picker__options small{
  color:var(--tc2-muted);
  font-size:.8rem;
  font-weight:560;
  line-height:1.4;
}

.tcv3-case-result{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  min-height:480px;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:var(--tc2-ink);
}

.tcv3-case-result__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding:44px;
  color:#fff;
}

.tcv3-case-result .saas-eyebrow{
  color:var(--tc2-yellow);
}

body.saas-page .tcv3-case-result h3{
  margin:12px 0 14px;
  color:#fff;
  font-size:2rem;
}

.tcv3-case-result__copy p{
  margin:0 0 18px;
  color:#D7DFE8;
}

.tcv3-case-result__copy ul{
  display:grid;
  gap:8px;
  margin:0 0 24px;
  padding-left:20px;
  color:#fff;
}

.tcv3-case-result__price{
  margin-bottom:18px;
  color:var(--tc2-yellow);
  font-size:1.02rem;
}

.tcv3-case-result > figure{
  min-width:0;
  margin:0;
  padding:34px 0 34px 34px;
  align-self:center;
}

.tcv3-case-result > figure img{
  display:block;
  width:100%;
  border:1px solid rgba(255,255,255,.16);
  border-right:0;
  border-radius:8px 0 0 8px;
  box-shadow:0 24px 55px rgba(0,0,0,.28);
}

.tcv3-role-journey{
  display:grid;
  grid-template-columns:.82fr .82fr 1.36fr;
  gap:18px;
}

.tcv3-role-journey figure{
  display:grid;
  grid-template-rows:360px auto;
  min-width:0;
  margin:0;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-role-journey__media{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  overflow:hidden;
  padding:24px 0 0 24px;
  background:#EAF1F8;
}

.tcv3-role-journey__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:left top;
  border:1px solid rgba(17,24,39,.14);
  border-right:0;
  border-bottom:0;
  border-radius:8px 0 0 0;
  box-shadow:0 18px 38px rgba(17,24,39,.14);
}

.tcv3-role-journey__media--phone{
  padding:22px 22px 0;
  background:#F1F5F9;
}

.tcv3-role-journey__media--phone img{
  width:auto;
  max-width:100%;
  border-right:1px solid rgba(17,24,39,.14);
  border-radius:8px 8px 0 0;
  object-fit:contain;
  object-position:center top;
}

.tcv3-role-journey figcaption{
  display:grid;
  gap:5px;
  padding:20px 22px 22px;
}

.tcv3-role-journey figcaption strong{
  font-size:1.08rem;
}

.tcv3-role-journey figcaption span{
  color:var(--tc2-muted);
  font-size:.91rem;
}

.tcv3-plan-rail{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0;
  padding:0;
  list-style:none;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-plan-rail li{
  position:relative;
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:1px 12px;
  min-height:102px;
  padding:24px;
  border-right:1px solid var(--tc2-line);
}

.tcv3-plan-rail li:last-child{
  border-right:0;
}

.tcv3-plan-rail li.is-active{
  background:#FFF9DF;
}

.tcv3-plan-rail li.is-active::before{
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:var(--tc2-yellow);
  content:"";
}

.tcv3-plan-rail li > span{
  grid-row:1 / 3;
  display:grid;
  place-items:center;
  align-self:center;
  width:34px;
  height:34px;
  border:1px solid var(--tc2-line-strong);
  border-radius:50%;
  background:#fff;
  color:var(--tc2-ink);
  font-size:.86rem;
  font-weight:800;
}

.tcv3-plan-rail strong{
  align-self:end;
}

.tcv3-plan-rail small{
  color:var(--tc2-muted);
}

.tcv3-disclosures{
  display:grid;
  gap:10px;
  max-width:980px;
  margin:28px auto 0;
}

.tcv3-disclosures details{
  border-bottom:1px solid var(--tc2-line);
}

.tcv3-disclosures summary{
  position:relative;
  padding:20px 42px 20px 0;
  color:var(--tc2-ink);
  font-weight:760;
  cursor:pointer;
  list-style:none;
}

.tcv3-disclosures summary::-webkit-details-marker{
  display:none;
}

.tcv3-disclosures summary::after{
  position:absolute;
  top:18px;
  right:4px;
  color:var(--tc2-blue);
  font-size:1.4rem;
  line-height:1;
  content:"+";
}

.tcv3-disclosures details[open] summary::after{
  content:"−";
}

.tcv3-disclosure-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  padding:0 0 26px;
}

.tcv3-disclosure-grid p{
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-disclosure-grid strong{
  display:block;
  margin-bottom:4px;
  color:var(--tc2-ink);
}

.tcv3-final-route{
  display:grid;
  grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);
  align-items:center;
  gap:48px;
  overflow:hidden;
  padding:54px;
  border-radius:8px;
  background:var(--tc2-ink);
  color:#fff;
}

.tcv3-final-route .saas-eyebrow{
  color:var(--tc2-yellow);
}

body.saas-page .tcv3-final-route h2{
  margin:12px 0 16px;
  color:#fff;
  font-size:clamp(2rem,3vw,3rem);
}

.tcv3-final-route p:not(.saas-eyebrow){
  margin:0;
  color:#D7DFE8;
}

.tcv3-final-route figure{
  min-width:0;
  margin:0 -54px 0 0;
}

.tcv3-final-route figure img{
  display:block;
  width:100%;
  border:1px solid rgba(255,255,255,.16);
  border-right:0;
  border-radius:8px 0 0 8px;
  box-shadow:0 22px 50px rgba(0,0,0,.28);
}

@media (max-width:980px){
  .tcv3-hero{
    padding:64px 0;
  }

  .tcv3-hero__grid{
    grid-template-columns:1fr;
    gap:42px;
  }

  .tcv3-hero__visual--diagram{
    justify-self:start;
    max-width:620px;
  }

  .tcv3-case-picker__options{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tcv3-case-result{
    grid-template-columns:1fr;
  }

  .tcv3-case-result > figure{
    padding:0 0 0 42px;
  }

  .tcv3-role-journey{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tcv3-role-journey figure:last-child{
    grid-column:1 / -1;
  }

  .tcv3-plan-rail{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tcv3-plan-rail li:nth-child(2){
    border-right:0;
  }

  .tcv3-plan-rail li:nth-child(-n+2){
    border-bottom:1px solid var(--tc2-line);
  }

  .tcv3-final-route{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .tcv3-hero{
    padding:46px 0 54px;
  }

  body.saas-page .tcv3-hero h1{
    margin-bottom:20px;
    font-size:2.45rem;
    line-height:1.08;
  }

  .tcv3-hero__copy > p:not(.saas-eyebrow){
    font-size:1rem;
  }

  .tcv3-hero .saas-actions{
    display:grid;
    justify-items:start;
    margin-top:24px;
  }

  .tcv3-trust-row{
    display:grid;
    margin-top:24px;
  }

  .tcv3-section{
    padding:72px 0;
  }

  .tcv3-section--tight{
    padding:56px 0 72px;
  }

  .tcv3-section__heading{
    margin-bottom:30px;
  }

  .tcv3-case-picker__options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    overflow:visible;
    padding:0;
  }

  .tcv3-case-picker__options button{
    grid-template-columns:20px minmax(0,1fr);
    min-height:112px;
    padding:15px 13px;
  }

  .tcv3-case-picker__options button > img{
    width:20px;
    height:20px;
  }

  .tcv3-case-result{
    min-height:0;
  }

  .tcv3-case-result__copy{
    padding:30px 24px;
  }

  body.saas-page .tcv3-case-result h3{
    font-size:1.7rem;
  }

  .tcv3-case-result > figure{
    padding:0 0 24px 24px;
  }

  .tcv3-role-journey{
    grid-template-columns:1fr;
  }

  .tcv3-role-journey figure,
  .tcv3-role-journey figure:last-child{
    grid-column:auto;
    grid-template-rows:310px auto;
  }

  .tcv3-plan-rail{
    grid-template-columns:1fr;
  }

  .tcv3-plan-rail li,
  .tcv3-plan-rail li:nth-child(2){
    min-height:84px;
    border-right:0;
    border-bottom:1px solid var(--tc2-line);
  }

  .tcv3-plan-rail li:last-child{
    border-bottom:0;
  }

  .tcv3-disclosure-grid{
    grid-template-columns:1fr;
  }

  .tcv3-final-route{
    gap:34px;
    padding:32px 24px;
  }

  .tcv3-final-route .saas-actions{
    display:grid;
    align-items:stretch;
  }

  .tcv3-final-route .saas-actions .btn{
    width:100%;
  }

  .tcv3-final-route figure{
    margin:0 -24px 0 0;
  }
}

.tcv3-product-frame{
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#EEF3F8;
  box-shadow:var(--tc2-shadow);
}

.tcv3-product-frame > img{
  aspect-ratio:790 / 545;
  object-fit:cover;
  object-position:left top;
}

.tcv3-product-frame figcaption{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  border-top:1px solid var(--tc2-line);
  background:#fff;
  font-size:.84rem;
}

.tcv3-product-frame figcaption span{
  color:var(--tc2-muted);
}

.tcv3-plan-recommender{
  display:grid;
  grid-template-columns:minmax(230px,.75fr) minmax(280px,1fr) minmax(260px,.78fr);
  align-items:stretch;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-plan-recommender__intro{
  padding:36px;
}

.tcv3-plan-recommender__intro h2{
  margin:12px 0 14px;
  font-size:2rem !important;
}

.tcv3-plan-recommender__intro > p:last-child{
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-plan-recommender__form{
  display:grid;
  align-content:center;
  gap:14px;
  padding:30px 36px;
  border-inline:1px solid var(--tc2-line);
  background:#FBFCFD;
}

.tcv3-plan-recommender__form label{
  display:grid;
  gap:7px;
  color:var(--tc2-ink-2);
  font-size:.86rem;
  font-weight:720;
}

.tcv3-plan-recommender__form select{
  width:100%;
  min-height:48px;
  padding:0 42px 0 13px;
  border:1px solid var(--tc2-line-strong);
  border-radius:7px;
  background:#fff;
  color:var(--tc2-ink);
}

.tcv3-plan-recommender__result{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding:36px;
  background:var(--tc2-ink);
  color:#fff;
}

.tcv3-plan-recommender__result > span{
  color:var(--tc2-yellow);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.saas-page .tcv3-plan-recommender__result h3{
  margin:10px 0 12px;
  color:#fff;
  font-size:1.65rem;
}

.tcv3-plan-recommender__result p{
  margin:0 0 20px;
  color:#D7DFE8;
}

.tcv3-pricing-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.tcv3-price-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:440px;
  padding:30px 26px 26px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-price-card--featured{
  border-color:var(--tc2-blue);
  box-shadow:0 14px 30px rgba(22,119,232,.1);
}

.tcv3-price-card__badge{
  position:absolute;
  inset:0 0 auto;
  padding:7px 12px;
  border-radius:7px 7px 0 0;
  background:var(--tc2-blue);
  color:#fff;
  font-size:.75rem;
  font-weight:780;
  text-align:center;
}

.tcv3-price-card--featured .saas-eyebrow{
  margin-top:22px;
}

body.saas-page .tcv3-price-card h3{
  margin:10px 0 14px;
  font-size:1.35rem;
}

.tcv3-price-card__price{
  display:flex;
  align-items:baseline;
  gap:5px;
  margin:0 0 18px;
}

.tcv3-price-card__price strong{
  color:var(--tc2-ink);
  font-size:2rem;
  line-height:1;
}

.tcv3-price-card__price span{
  color:var(--tc2-muted);
  font-size:.86rem;
}

.tcv3-price-card > p:not(.saas-eyebrow):not(.tcv3-price-card__price){
  margin:0 0 18px;
  color:var(--tc2-muted);
}

.tcv3-price-card ul{
  display:grid;
  gap:9px;
  margin:0 0 24px;
  padding-left:20px;
  color:var(--tc2-ink-2);
  font-size:.91rem;
}

.tcv3-price-card .btn{
  margin-top:auto;
}

.tcv3-costs-disclosure{
  max-width:980px;
  margin:28px auto 0;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-costs-disclosure summary{
  position:relative;
  padding:20px 54px 20px 22px;
  cursor:pointer;
  list-style:none;
}

.tcv3-costs-disclosure summary::-webkit-details-marker{
  display:none;
}

.tcv3-costs-disclosure summary::after{
  position:absolute;
  top:23px;
  right:22px;
  color:var(--tc2-blue);
  font-size:1.4rem;
  line-height:1;
  content:"+";
}

.tcv3-costs-disclosure[open] summary::after{
  content:"−";
}

.tcv3-costs-disclosure summary span{
  display:grid;
  gap:3px;
}

.tcv3-costs-disclosure summary small{
  color:var(--tc2-muted);
  font-weight:520;
}

.tcv3-costs-disclosure .tcv3-disclosure-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  padding:0 22px 24px;
}

.tcv3-plan-table{
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-checkout-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,.72fr);
  align-items:start;
  gap:clamp(48px,7vw,96px);
  max-width:1120px !important;
}

.tcv3-checkout-context > h2{
  margin:12px 0 18px;
}

.tcv3-checkout-context > p:not(.saas-eyebrow){
  max-width:620px;
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-checkout-context__product{
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  align-items:center;
  gap:22px;
  max-width:520px;
  margin:34px 0 24px;
  padding:20px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:var(--tc2-soft);
}

.tcv3-checkout-context__product img{
  display:block;
  width:118px;
  height:164px;
  object-fit:cover;
  object-position:top;
  border:1px solid var(--tc2-line-strong);
  border-radius:7px;
}

.tcv3-checkout-context__product figcaption{
  display:grid;
  gap:6px;
}

.tcv3-checkout-context__product figcaption span{
  color:var(--tc2-muted);
  font-size:.91rem;
}

.tcv3-check-list{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.tcv3-check-list li{
  position:relative;
  padding-left:26px;
  color:var(--tc2-ink-2);
  font-weight:650;
}

.tcv3-check-list li::before{
  position:absolute;
  top:7px;
  left:0;
  width:14px;
  height:14px;
  border:2px solid var(--tc2-green);
  border-radius:50%;
  content:"";
}

.tcv3-checkout-card{
  padding:34px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--tc2-shadow);
}

body.saas-page .tcv3-checkout-card > h3{
  margin:10px 0 12px;
  font-size:1.8rem;
}

.tcv3-checkout-card > p:not(.saas-eyebrow){
  margin:0 0 24px;
  color:var(--tc2-muted);
}

.tcv3-checkout-card .saas-checkout{
  display:grid;
  gap:16px;
}

.tcv3-checkout-card__links{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid var(--tc2-line);
}

.tcv3-checkout-card__links a{
  color:var(--tc2-blue);
  font-size:.86rem;
  font-weight:700;
  text-decoration:none;
}

.tcv3-faq-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.tcv3-faq-grid details{
  align-self:start;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-faq-grid summary{
  position:relative;
  min-height:64px;
  padding:19px 48px 18px 20px;
  font-weight:760;
  cursor:pointer;
  list-style:none;
}

.tcv3-faq-grid summary::-webkit-details-marker{
  display:none;
}

.tcv3-faq-grid summary::after{
  position:absolute;
  top:18px;
  right:20px;
  color:var(--tc2-blue);
  font-size:1.3rem;
  content:"+";
}

.tcv3-faq-grid details[open] summary::after{
  content:"−";
}

.tcv3-faq-grid details p{
  margin:0;
  padding:0 20px 20px;
  color:var(--tc2-muted);
}

@media (max-width:1100px){
  .tcv3-plan-recommender{
    grid-template-columns:1fr 1.15fr;
  }

  .tcv3-plan-recommender__result{
    grid-column:1 / -1;
  }

  .tcv3-plan-recommender__form{
    border-right:0;
  }

  .tcv3-pricing-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:820px){
  .tcv3-checkout-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .tcv3-product-frame figcaption{
    display:grid;
  }

  .tcv3-plan-recommender{
    grid-template-columns:1fr;
  }

  .tcv3-plan-recommender__intro,
  .tcv3-plan-recommender__form,
  .tcv3-plan-recommender__result{
    grid-column:auto;
    padding:26px 22px;
  }

  .tcv3-plan-recommender__form{
    border:0;
    border-block:1px solid var(--tc2-line);
  }

  .tcv3-pricing-grid,
  .tcv3-faq-grid{
    grid-template-columns:1fr;
  }

  .tcv3-price-card{
    min-height:0;
  }

  .tcv3-costs-disclosure .tcv3-disclosure-grid{
    grid-template-columns:1fr;
  }

  .tcv3-checkout-context__product{
    grid-template-columns:92px minmax(0,1fr);
  }

  .tcv3-checkout-context__product img{
    width:92px;
    height:128px;
  }

  .tcv3-checkout-card{
    padding:26px 20px;
  }
}

.tcv3-integration-levels{
  display:grid;
  gap:10px;
}

.tcv3-integration-levels article{
  display:grid;
  grid-template-columns:104px minmax(0,1fr) auto;
  align-items:center;
  gap:26px;
  min-height:116px;
  padding:22px 26px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-integration-levels article > span{
  display:grid;
  place-items:center;
  min-height:36px;
  border-radius:6px;
  background:var(--tc2-green-soft);
  color:var(--tc2-green);
  font-size:.82rem;
  font-weight:800;
}

.tcv3-integration-levels article:nth-child(2) > span{
  background:#FFF6D1;
  color:#8B6500;
}

.tcv3-integration-levels article:nth-child(3) > span{
  background:var(--tc2-soft-blue);
  color:var(--tc2-blue);
}

.tcv3-integration-levels article div{
  min-width:0;
}

body.saas-page .tcv3-integration-levels h3{
  margin:0 0 5px;
  font-size:1.18rem;
}

.tcv3-integration-levels p{
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-integration-levels article > strong{
  color:var(--tc2-ink-2);
  font-size:.85rem;
  white-space:nowrap;
}

.tcv3-product-story{
  display:grid;
  grid-template-columns:minmax(300px,.76fr) minmax(0,1.24fr);
  align-items:center;
  gap:clamp(52px,7vw,96px);
}

.tcv3-product-story h2{
  margin:12px 0 18px;
}

.tcv3-product-story > div > p:not(.saas-eyebrow){
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-product-story ol{
  display:grid;
  gap:0;
  margin:30px 0 0;
  padding:0;
  list-style:none;
  counter-reset:product-step;
}

.tcv3-product-story ol li{
  position:relative;
  display:grid;
  grid-template-columns:80px minmax(0,1fr);
  padding:14px 0 14px 36px;
  border-top:1px solid var(--tc2-line);
  counter-increment:product-step;
}

.tcv3-product-story ol li::before{
  position:absolute;
  top:19px;
  left:0;
  color:var(--tc2-blue);
  font-size:.78rem;
  font-weight:800;
  content:"0" counter(product-step);
}

.tcv3-product-story ol span{
  color:var(--tc2-muted);
  font-size:.9rem;
}

.tcv3-integration-matrix{
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-integration-matrix article{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  min-height:82px;
  padding:16px 20px;
  border-bottom:1px solid var(--tc2-line);
}

.tcv3-integration-matrix article:last-child{
  border-bottom:0;
}

.tcv3-integration-matrix img{
  width:22px;
  height:22px;
}

.tcv3-integration-matrix article > div{
  display:grid;
  gap:3px;
}

.tcv3-integration-matrix article > div span{
  color:var(--tc2-muted);
  font-size:.9rem;
}

.tcv3-integration-matrix small{
  min-width:82px;
  padding:6px 10px;
  border-radius:6px;
  font-weight:780;
  text-align:center;
}

.tcv3-integration-matrix .is-easy{
  background:var(--tc2-green-soft);
  color:var(--tc2-green);
}

.tcv3-integration-matrix .is-assisted{
  background:#FFF6D1;
  color:#8B6500;
}

.tcv3-integration-matrix .is-technical{
  background:var(--tc2-soft-blue);
  color:var(--tc2-blue);
}

.tcv3-web-start{
  display:grid;
  grid-template-columns:minmax(250px,.64fr) minmax(0,1.36fr);
  align-items:center;
  gap:clamp(54px,8vw,110px);
  max-width:1080px !important;
}

.tcv3-web-start > figure{
  display:flex;
  justify-content:center;
  height:560px;
  margin:0;
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#EEF3F8;
}

.tcv3-web-start > figure img{
  display:block;
  width:auto;
  max-width:100%;
  height:100%;
  object-fit:cover;
  object-position:top;
}

.tcv3-web-start h2{
  margin:12px 0 18px;
}

.tcv3-web-start > div > p:not(.saas-eyebrow){
  max-width:640px;
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-web-start__steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:30px 0;
}

.tcv3-web-start__steps article{
  padding:18px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-web-start__steps article > span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  margin-bottom:14px;
  border-radius:50%;
  background:var(--tc2-yellow);
  color:var(--tc2-ink);
  font-size:.78rem;
  font-weight:800;
}

.tcv3-web-start__steps strong{
  display:block;
  margin-bottom:4px;
}

.tcv3-web-start__steps p{
  margin:0;
  color:var(--tc2-muted);
  font-size:.85rem;
}

.tcv3-channel-disclosures{
  display:grid;
  gap:10px;
}

.tcv3-channel-disclosures details{
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcv3-channel-disclosures summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:72px;
  padding:16px 20px;
  cursor:pointer;
  list-style:none;
}

.tcv3-channel-disclosures summary::-webkit-details-marker{
  display:none;
}

.tcv3-channel-disclosures summary > span{
  display:flex;
  align-items:center;
  gap:13px;
}

.tcv3-channel-disclosures summary img{
  width:22px;
  height:22px;
}

.tcv3-channel-disclosures summary small{
  padding:6px 10px;
  border-radius:6px;
  background:var(--tc2-soft-blue);
  color:var(--tc2-blue);
  font-weight:760;
}

.tcv3-channel-disclosures details > div{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  padding:0 20px 24px 55px;
}

.tcv3-channel-disclosures details > div p{
  margin:0;
  color:var(--tc2-muted);
}

.tcv3-channel-disclosures details > div strong{
  color:var(--tc2-ink);
}

.tcv3-final-route--integrations figure{
  display:flex;
  justify-content:center;
  height:420px;
  margin:-54px -54px -54px 0;
  padding-top:34px;
  background:#172335;
}

.tcv3-final-route--integrations figure img{
  width:auto;
  max-width:100%;
  height:100%;
  object-fit:cover;
  object-position:top;
  border-right:1px solid rgba(255,255,255,.16);
  border-radius:8px 8px 0 0;
}

@media (max-width:900px){
  .tcv3-product-story,
  .tcv3-web-start{
    grid-template-columns:1fr;
  }

  .tcv3-web-start > figure{
    justify-self:center;
    width:min(100%,420px);
  }
}

@media (max-width:720px){
  .tcv3-integration-levels article{
    grid-template-columns:86px minmax(0,1fr);
    gap:16px;
    padding:18px;
  }

  .tcv3-integration-levels article > strong{
    grid-column:2;
    white-space:normal;
  }

  .tcv3-product-story ol li{
    grid-template-columns:72px minmax(0,1fr);
  }

  .tcv3-integration-matrix article{
    grid-template-columns:22px minmax(0,1fr);
  }

  .tcv3-integration-matrix small{
    grid-column:2;
    justify-self:start;
    min-width:78px;
  }

  .tcv3-web-start > figure{
    height:500px;
  }

  .tcv3-web-start__steps{
    grid-template-columns:1fr;
  }

  .tcv3-channel-disclosures summary{
    align-items:flex-start;
  }

  .tcv3-channel-disclosures details > div{
    grid-template-columns:1fr;
    padding:0 20px 22px;
  }

  .tcv3-final-route--integrations figure{
    height:350px;
    margin:0 -24px -32px 0;
  }
}

/* Pricing page v4: content-led, with no decorative product screenshots */
.tcprice-hero{
  padding:86px 0 78px;
  background:#fff;
}

.tcprice-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(440px,.82fr);
  align-items:center;
  gap:88px;
}

.tcprice-hero__copy{
  max-width:700px;
}

body.saas-page .tcprice-hero h1{
  max-width:720px;
  margin:14px 0 24px;
  font-size:4.1rem;
  line-height:1.04;
}

.tcprice-hero__copy > p:not(.saas-eyebrow){
  max-width:640px;
  margin:0;
  color:var(--tc2-muted);
  font-size:1.1rem;
  line-height:1.7;
}

.tcprice-hero .saas-actions{
  align-items:center;
  margin-top:30px;
}

.tcprice-trust{
  display:flex;
  flex-wrap:wrap;
  gap:12px 22px;
  margin-top:28px;
  color:var(--tc2-ink-2);
  font-size:.88rem;
  font-weight:700;
}

.tcprice-trust span{
  display:inline-flex;
  align-items:center;
  gap:7px;
}

.tcprice-trust img{
  width:17px;
  height:17px;
}

.tcprice-index{
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-top:4px solid var(--tc2-yellow);
  border-radius:8px;
  background:#fff;
}

.tcprice-index__heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  padding:22px 24px 18px;
}

.tcprice-index__heading > div{
  display:grid;
  gap:4px;
}

.tcprice-index__heading > div > span{
  color:var(--tc2-blue);
  font-size:.73rem;
  font-weight:800;
  text-transform:uppercase;
}

body.saas-page .tcprice-index__heading h2{
  margin:0;
  font-size:1.35rem;
  line-height:1.2;
}

.tcprice-index__heading > small{
  color:var(--tc2-muted);
  font-size:.75rem;
  white-space:nowrap;
}

.tcprice-index nav{
  border-top:1px solid var(--tc2-line);
}

.tcprice-index nav a{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  min-height:78px;
  padding:13px 24px;
  border-bottom:1px solid var(--tc2-line);
  color:var(--tc2-ink);
  text-decoration:none;
  transition:background-color .18s ease;
}

.tcprice-index nav a:last-child{
  border-bottom:0;
}

.tcprice-index nav a:hover{
  background:var(--tc2-soft);
}

.tcprice-index nav a.is-recommended{
  box-shadow:inset 3px 0 0 var(--tc2-blue);
  background:var(--tc2-soft-blue);
}

.tcprice-index nav img{
  width:23px;
  height:23px;
}

.tcprice-index nav a > span{
  display:grid;
  gap:2px;
  min-width:0;
}

.tcprice-index nav a > span strong{
  line-height:1.25;
}

.tcprice-index nav a > span small{
  color:var(--tc2-muted);
  font-size:.78rem;
}

.tcprice-index nav b{
  display:flex;
  align-items:baseline;
  gap:3px;
  font-size:1rem;
  white-space:nowrap;
}

.tcprice-index nav b small{
  color:var(--tc2-muted);
  font-size:.7rem;
  font-weight:600;
}

.tcprice-foundation{
  padding:36px 0;
  background:var(--tc2-ink);
  color:#fff;
}

.tcprice-foundation__layout{
  display:grid;
  grid-template-columns:minmax(210px,.62fr) minmax(0,1.38fr);
  align-items:center;
  gap:54px;
}

.tcprice-foundation .saas-eyebrow{
  margin-bottom:4px;
  color:var(--tc2-yellow);
}

body.saas-page .tcprice-foundation h2{
  margin:0;
  color:#fff;
  font-size:1.35rem;
}

.tcprice-foundation ul{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
}

.tcprice-foundation li{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:0 20px;
  border-left:1px solid rgba(255,255,255,.16);
}

.tcprice-foundation li img{
  width:22px;
  height:22px;
  filter:brightness(0) invert(1);
}

.tcprice-foundation li span{
  display:grid;
  gap:2px;
}

.tcprice-foundation li strong{
  font-size:.88rem;
}

.tcprice-foundation li small{
  color:#BFC9D7;
  font-size:.74rem;
}

.tcprice-section{
  padding:96px 0;
  background:#fff;
}

.tcprice-section--soft{
  background:var(--tc2-soft);
  border-block:1px solid #EEF1F5;
}

.tcprice-section-heading{
  max-width:540px;
}

.tcprice-section-heading--wide{
  max-width:760px;
  margin-bottom:38px;
}

.tcprice-section-heading h2{
  margin:12px 0 16px;
}

.tcprice-section-heading > p:last-child{
  margin:0;
  color:var(--tc2-muted);
  font-size:1.02rem;
}

.tcprice-recommender-layout{
  display:grid;
  grid-template-columns:minmax(280px,.62fr) minmax(0,1.38fr);
  align-items:start;
  gap:72px;
}

.tcprice-recommender{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(270px,.88fr);
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

body.saas-page .tcprice-recommender__form{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  padding:30px;
}

.tcprice-recommender__form label{
  display:grid;
  gap:7px;
  color:var(--tc2-ink-2);
  font-size:.84rem;
  font-weight:720;
}

.tcprice-recommender__form select{
  width:100%;
  min-height:48px;
  padding:0 42px 0 13px;
  border:1px solid var(--tc2-line-strong);
  border-radius:7px;
  background:#fff;
  color:var(--tc2-ink);
}

body.saas-page .tcprice-recommender__result{
  display:flex;
  grid-column:auto;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding:30px;
  border-left:1px solid var(--tc2-line);
  background:#FFF9DF;
  color:var(--tc2-ink);
}

.tcprice-recommender__result > span{
  color:#755A00;
  font-size:.73rem;
  font-weight:800;
  text-transform:uppercase;
}

body.saas-page .tcprice-recommender__result h3{
  margin:9px 0 12px;
  color:var(--tc2-ink);
  font-size:1.65rem;
}

body.saas-page .tcprice-recommender__result p{
  margin:0 0 20px;
  color:var(--tc2-ink-2);
}

.tcprice-explorer{
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcprice-explorer__tabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-bottom:1px solid var(--tc2-line);
}

.tcprice-explorer__tabs button{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  gap:11px;
  min-height:88px;
  padding:16px 20px;
  border:0;
  border-right:1px solid var(--tc2-line);
  border-radius:0;
  background:#fff;
  color:var(--tc2-ink);
  text-align:left;
  cursor:pointer;
}

.tcprice-explorer__tabs button:last-child{
  border-right:0;
}

.tcprice-explorer__tabs button:hover{
  background:var(--tc2-soft);
}

.tcprice-explorer__tabs button.is-active{
  box-shadow:inset 0 4px 0 var(--tc2-blue);
  background:var(--tc2-soft-blue);
}

.tcprice-explorer__tabs img{
  width:23px;
  height:23px;
}

.tcprice-explorer__tabs button > span{
  display:grid;
  gap:2px;
  font-weight:760;
  line-height:1.25;
}

.tcprice-explorer__tabs small{
  color:var(--tc2-muted);
  font-size:.74rem;
  font-weight:560;
}

.tcprice-explorer__panel{
  display:grid;
  grid-template-columns:minmax(300px,.76fr) minmax(0,1.24fr);
  min-height:390px;
}

.tcprice-explorer__summary{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding:44px;
  background:var(--tc2-ink);
  color:#fff;
}

.tcprice-explorer__summary .saas-eyebrow{
  color:var(--tc2-yellow);
}

body.saas-page .tcprice-explorer__summary h3{
  margin:10px 0 14px;
  color:#fff;
  font-size:2rem;
}

.tcprice-explorer__summary > p:not(.tcprice-explorer__price){
  margin:0;
  color:#D3DCE7;
}

.tcprice-explorer__price{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin:28px 0 20px;
}

.tcprice-explorer__price strong{
  color:#fff;
  font-size:2.25rem;
  line-height:1;
}

.tcprice-explorer__price span{
  color:#AEBBCA;
  font-size:.78rem;
}

.tcprice-explorer__features{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:44px;
}

.tcprice-explorer__features > strong{
  margin-bottom:18px;
  font-size:1.08rem;
}

.tcprice-explorer__features ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 28px;
  margin:0 0 24px;
  padding-left:20px;
  color:var(--tc2-ink-2);
}

.tcprice-explorer__features li::marker{
  color:var(--tc2-blue);
}

.tcprice-explorer__features small{
  padding-top:18px;
  border-top:1px solid var(--tc2-line);
  color:var(--tc2-muted);
}

.tcprice-costs,
.tcprice-comparison{
  margin-top:22px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcprice-costs summary,
.tcprice-comparison summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:78px;
  padding:16px 22px;
  cursor:pointer;
  list-style:none;
}

.tcprice-costs summary::-webkit-details-marker,
.tcprice-comparison summary::-webkit-details-marker{
  display:none;
}

.tcprice-costs summary > span,
.tcprice-comparison summary > span{
  display:grid;
  gap:3px;
}

.tcprice-costs summary small,
.tcprice-comparison summary small{
  color:var(--tc2-muted);
  font-weight:520;
}

.tcprice-costs summary img,
.tcprice-comparison summary img{
  width:21px;
  height:21px;
  transition:transform .18s ease;
}

.tcprice-costs[open] summary img,
.tcprice-comparison[open] summary img{
  transform:rotate(180deg);
}

.tcprice-costs__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  padding:0 22px 24px;
}

.tcprice-costs__grid p{
  margin:0;
  color:var(--tc2-muted);
}

.tcprice-costs__grid strong,
.tcprice-costs__grid span{
  display:block;
}

.tcprice-costs__grid strong{
  margin-bottom:4px;
  color:var(--tc2-ink);
}

.tcprice-usage-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.tcprice-usage-card{
  display:flex;
  flex-direction:column;
  min-height:360px;
  padding:28px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
}

.tcprice-usage-card--voice{
  border-top:4px solid var(--tc2-yellow);
}

.tcprice-usage-card header{
  display:flex;
  align-items:center;
  gap:13px;
  margin-bottom:20px;
}

.tcprice-usage-card header img{
  width:28px;
  height:28px;
}

.tcprice-usage-card header div{
  display:grid;
  gap:2px;
}

.tcprice-usage-card header span{
  color:var(--tc2-blue);
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
}

body.saas-page .tcprice-usage-card h3{
  margin:0;
  font-size:1.35rem;
}

.tcprice-usage-card > p{
  min-height:52px;
  margin:0 0 22px;
  color:var(--tc2-muted);
}

.tcprice-usage-options{
  margin-bottom:20px;
  border-top:1px solid var(--tc2-line);
}

.tcprice-usage-options p{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:0;
  padding:14px 0;
  border-bottom:1px solid var(--tc2-line);
}

.tcprice-usage-options span{
  color:var(--tc2-ink);
  font-weight:760;
  white-space:nowrap;
}

.tcprice-usage-card > small{
  margin-top:auto;
  color:var(--tc2-muted);
  line-height:1.55;
}

.tcprice-meter-policy{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin-top:20px;
  padding:22px 0;
  border-radius:8px;
  background:var(--tc2-ink);
  color:#fff;
}

.tcprice-meter-policy p{
  display:grid;
  gap:4px;
  margin:0;
  padding:0 24px;
  border-left:1px solid rgba(255,255,255,.16);
}

.tcprice-meter-policy p:first-child{
  border-left:0;
}

.tcprice-meter-policy strong{
  color:var(--tc2-yellow);
}

.tcprice-meter-policy span{
  color:#D3DCE7;
  font-size:.85rem;
}

.tcprice-comparison{
  margin-top:0;
}

.tcprice-comparison__body{
  padding:0 22px 24px;
}

.tcprice-plan-table{
  overflow:hidden;
  border:1px solid var(--tc2-line);
  border-radius:7px;
}

.tcprice-checkout-layout{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(430px,.74fr);
  align-items:start;
  gap:80px;
  max-width:1120px !important;
}

.tcprice-checkout-context h2{
  margin:12px 0 18px;
}

.tcprice-checkout-context > p:not(.saas-eyebrow):not(.tcprice-checkout-note){
  max-width:620px;
  margin:0;
  color:var(--tc2-muted);
}

.tcprice-onboarding-steps{
  display:grid;
  gap:0;
  margin:34px 0 26px;
  padding:0;
  list-style:none;
}

.tcprice-onboarding-steps li{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:15px;
  padding:18px 0;
  border-top:1px solid var(--tc2-line);
}

.tcprice-onboarding-steps li:last-child{
  border-bottom:1px solid var(--tc2-line);
}

.tcprice-onboarding-steps li > span{
  display:grid;
  place-items:center;
  align-self:start;
  width:34px;
  height:34px;
  border:1px solid var(--tc2-line-strong);
  border-radius:50%;
  color:var(--tc2-blue);
  font-size:.8rem;
  font-weight:800;
}

.tcprice-onboarding-steps li div{
  display:grid;
  gap:3px;
}

.tcprice-onboarding-steps li p{
  margin:0;
  color:var(--tc2-muted);
  font-size:.89rem;
}

.tcprice-checkout-note{
  margin:0;
  padding:16px 18px;
  border-left:4px solid var(--tc2-yellow);
  background:#FFF9DF;
  color:var(--tc2-ink-2);
}

.tcprice-checkout-note strong{
  display:block;
  color:var(--tc2-ink);
}

.tcprice-checkout-card{
  padding:34px;
  border:1px solid var(--tc2-line);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--tc2-shadow-soft);
}

body.saas-page .tcprice-checkout-card > h3{
  margin:10px 0 12px;
  font-size:1.8rem;
}

.tcprice-checkout-card > p:not(.saas-eyebrow){
  margin:0 0 24px;
  color:var(--tc2-muted);
}

.tcprice-checkout-card .saas-checkout{
  display:grid;
  gap:16px;
}

.tcprice-pack-selector{
  border:1px solid var(--tc2-line);
  border-radius:7px;
  background:var(--tc2-soft);
}

.tcprice-pack-selector summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:48px;
  padding:10px 13px;
  color:var(--tc2-ink);
  font-size:.86rem;
  font-weight:760;
  cursor:pointer;
}

.tcprice-pack-selector summary span{
  color:var(--tc2-muted);
  font-size:.72rem;
  font-weight:600;
}

.tcprice-pack-selector__grid{
  display:grid;
  gap:13px;
  padding:4px 13px 14px;
}

.tcprice-checkout-total{
  margin:0;
  padding:13px 14px;
  border-left:4px solid var(--tc2-yellow);
  background:#FFF9DF;
  color:var(--tc2-ink);
  font-size:.9rem;
  font-weight:760;
}

.tcprice-checkout-card__links{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid var(--tc2-line);
}

.tcprice-checkout-card__links a{
  color:var(--tc2-blue);
  font-size:.86rem;
  font-weight:700;
  text-decoration:none;
}

.tcprice-faq-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.tcprice-faq-grid details{
  align-self:start;
  border-bottom:1px solid var(--tc2-line);
}

.tcprice-faq-grid summary{
  position:relative;
  min-height:64px;
  padding:19px 44px 18px 0;
  font-weight:760;
  cursor:pointer;
  list-style:none;
}

.tcprice-faq-grid summary::-webkit-details-marker{
  display:none;
}

.tcprice-faq-grid summary::after{
  position:absolute;
  top:17px;
  right:8px;
  color:var(--tc2-blue);
  font-size:1.35rem;
  content:"+";
}

.tcprice-faq-grid details[open] summary::after{
  content:"−";
}

.tcprice-faq-grid details p{
  margin:0;
  padding:0 44px 20px 0;
  color:var(--tc2-muted);
}

@media (max-width:1100px){
  .tcprice-hero__grid{
    grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);
    gap:54px;
  }

  body.saas-page .tcprice-hero h1{
    font-size:3.4rem;
  }

  .tcprice-foundation__layout{
    grid-template-columns:1fr;
    gap:24px;
  }

  .tcprice-foundation ul{
    border-top:1px solid rgba(255,255,255,.16);
    padding-top:20px;
  }

  .tcprice-foundation li:first-child{
    border-left:0;
  }

  .tcprice-recommender-layout{
    grid-template-columns:1fr;
    gap:34px;
  }

  .tcprice-section-heading{
    max-width:720px;
  }
}

@media (max-width:860px){
  .tcprice-hero__grid,
  .tcprice-checkout-layout{
    grid-template-columns:1fr;
  }

  .tcprice-hero__copy{
    max-width:760px;
  }

  .tcprice-index{
    max-width:680px;
  }

  .tcprice-explorer__tabs{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tcprice-explorer__tabs button:nth-child(2){
    border-right:0;
  }

  .tcprice-explorer__tabs button:nth-child(-n+2){
    border-bottom:1px solid var(--tc2-line);
  }

  .tcprice-explorer__panel{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .tcprice-hero{
    padding:46px 0 54px;
  }

  body.saas-page .tcprice-hero h1{
    margin-bottom:20px;
    font-size:2.45rem;
    line-height:1.08;
  }

  .tcprice-hero__copy > p:not(.saas-eyebrow){
    font-size:1rem;
  }

  .tcprice-hero .saas-actions{
    display:grid;
    justify-items:start;
    margin-top:24px;
  }

  .tcprice-trust{
    display:grid;
    margin-top:24px;
  }

  .tcprice-index__heading,
  .tcprice-index nav a{
    padding-inline:18px;
  }

  .tcprice-index nav a{
    min-height:72px;
  }

  .tcprice-foundation{
    padding:30px 0;
  }

  .tcprice-foundation ul{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
  }

  .tcprice-foundation li{
    min-height:72px;
    padding:12px 10px;
    border-left:0;
    border-bottom:1px solid rgba(255,255,255,.12);
  }

  .tcprice-section{
    padding:72px 0;
  }

  .tcprice-section-heading--wide{
    margin-bottom:28px;
  }

  .tcprice-recommender{
    grid-template-columns:1fr;
  }

  .tcprice-recommender__form,
  .tcprice-recommender__result{
    padding:24px 20px;
  }

  .tcprice-recommender__result{
    border-top:1px solid var(--tc2-line);
    border-left:0;
  }

  .tcprice-explorer__tabs button{
    grid-template-columns:20px minmax(0,1fr);
    min-height:78px;
    padding:14px 12px;
  }

  .tcprice-explorer__tabs img{
    width:20px;
    height:20px;
  }

  .tcprice-explorer__summary,
  .tcprice-explorer__features{
    padding:28px 22px;
  }

  .tcprice-explorer__panel{
    min-height:0;
  }

  .tcprice-explorer__features ul{
    grid-template-columns:1fr;
  }

  .tcprice-costs summary,
  .tcprice-comparison summary{
    padding:15px 16px;
  }

  .tcprice-costs__grid{
    grid-template-columns:1fr;
    padding:0 16px 20px;
  }

  .tcprice-usage-grid,
  .tcprice-meter-policy{
    grid-template-columns:1fr;
  }

  .tcprice-usage-card{
    min-height:0;
    padding:24px 20px;
  }

  .tcprice-usage-card > p{
    min-height:0;
  }

  .tcprice-meter-policy p{
    padding:14px 20px;
    border-top:1px solid rgba(255,255,255,.16);
    border-left:0;
  }

  .tcprice-meter-policy p:first-child{
    border-top:0;
  }

  .tcprice-comparison__body{
    padding:0 16px 20px;
  }

  .tcprice-checkout-layout{
    gap:44px;
  }

  .tcprice-checkout-card{
    padding:26px 20px;
  }

  .tcprice-faq-grid{
    grid-template-columns:1fr;
  }
}
