/* Compass Pricing 2026: a continuation of the navy + light editorial
 * marketing design. All purchase anchors and behavior are in the HTML.
 * Keep selectors scoped to /pricing/; no account/dashboard changes. */
body.pricing-page {
  background:#f4f7fc;
  color:#17283f;
  font-family:Inter,system-ui,sans-serif;
  overflow-x:clip;
}
body.pricing-page #site-header .site-header {
  background:rgba(7,20,38,.96);
  border-bottom:1px solid rgba(165,192,234,.18);
  backdrop-filter:blur(20px);
}
body.pricing-page #site-header .brand-name {color:#f7faff;font-size:clamp(24px,2.5vw,29px);font-weight:750;}
body.pricing-page #site-header .brand-subtitle {color:#b8c9e3;}
body.pricing-page #site-header .nav-links a {color:#d0dff3;font-weight:650;}
body.pricing-page #site-header .nav-links a:hover {color:#fff;}
body.pricing-page #site-header .nav-links a.nav-signin {
  color:#eef4ff;
  background:rgba(56,77,111,.52);
  border:1px solid rgba(162,188,231,.27);
}
body.pricing-page #site-header .nav-links a.nav-cta {
  color:#fff;
  background:linear-gradient(135deg,#2682ed,#4257f2);
  border-radius:12px;
  box-shadow:0 10px 22px rgba(27,88,215,.23);
}
body.pricing-page #site-header .nav-toggle {
  color:#f4f8ff;
  background:#1c365b;
  border-color:#466284;
}
body.pricing-page .pricing-hero {
  padding:0 0 0;
  overflow:visible;
  background:linear-gradient(180deg,#f0f5fb 0%,#fff 76%);
}
body.pricing-page .pricing-intro {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(64px,7vw,110px) 0 clamp(94px,12vw,160px);
  background:radial-gradient(ellipse at 77% 15%,rgba(52,109,235,.34),transparent 47%),
             radial-gradient(ellipse at 18% 90%,rgba(12,128,213,.21),transparent 50%),
             linear-gradient(125deg,#071426 0%,#0e305b 57%,#124984 100%);
  color:#f7fbff;
}
body.pricing-page .pricing-intro::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:radial-gradient(circle,rgba(144,208,255,.48) .7px,transparent 1px);
  background-size:26px 26px;
  mask-image:linear-gradient(90deg,transparent 25%,#000 88%);
  opacity:.23;
}
body.pricing-page .pricing-intro-inner {position:relative;text-align:center;}
body.pricing-page .pricing-intro .pricing-pill {
  display:inline-flex;
  font-size:11px;
  color:#a6deff;
  background:rgba(82,146,225,.18);
  border:1px solid rgba(156,199,255,.3);
  letter-spacing:.12em;
}
body.pricing-page .pricing-intro h1 {
  max-width:940px;
  margin:24px auto 0;
  font-family:Manrope,Inter,system-ui,sans-serif;
  color:#f9fcff !important;
  font-size:clamp(43px,5.8vw,76px);
  font-weight:800;
  line-height:1.06;
  letter-spacing:-.052em;
}
body.pricing-page .pricing-intro h1 span {color:#8fd9fb;}
body.pricing-page .pricing-intro .pricing-lede {
  max-width:680px;
  margin:24px auto 0;
  color:#cedef2;
  font-size:clamp(17px,1.6vw,20px);
  line-height:1.65;
}
body.pricing-page .pricing-intro-steps {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:32px;
}
body.pricing-page .pricing-intro-steps span {
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:10px 17px;
  color:#e4f2ff;
  font-size:13px;
  font-weight:650;
  border:1px solid rgba(168,209,251,.27);
  background:rgba(9,29,56,.45);
  border-radius:999px;
}
body.pricing-page .pricing-intro-steps b {
  color:#90dffc;
  font-size:11px;
  letter-spacing:.05em;
}
body.pricing-page .pricing-hero-shell {
  position:relative;
  margin-top:-57px;
  padding-bottom:72px;
}
body.pricing-page .pricing-plan-intro {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:35px;
  padding:30px clamp(22px,4vw,44px) 0;
  border:1px solid #d6e4f6;
  border-bottom:0;
  border-radius:27px 27px 0 0;
  background:#eef5fd;
}
body.pricing-page .pricing-plan-intro .pricing-section-kicker {
  margin:0 0 9px;
  color:#2469b5;
  font-weight:850;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body.pricing-page .pricing-plan-intro h2 {
  margin:0;
  color:#17324f;
  font-family:Manrope,Inter,sans-serif;
  font-size:clamp(26px,3.2vw,39px);
  font-weight:800;
  line-height:1.14;
  letter-spacing:-.045em;
}
body.pricing-page .pricing-plan-intro > p {
  max-width:415px;
  margin:0 0 3px;
  color:#445e7c;
  font-size:15px;
  line-height:1.6;
}
body.pricing-page .pricing-products {
  margin:0 auto;
  padding:24px clamp(16px,2.6vw,30px) clamp(20px,2.5vw,28px);
  max-width:100%;
  gap:20px;
  background:#eef5fd;
  border:1px solid #d6e4f6;
  border-top:0;
  border-radius:0 0 27px 27px;
}
body.pricing-page .pricing-product-card {
  min-width:0;
  min-height:650px;
  padding:clamp(26px,3.2vw,41px);
  border:1px solid #d8e4f3;
  border-radius:25px;
  background:linear-gradient(155deg,#fff,#f9fcff);
  box-shadow:0 10px 32px rgba(20,44,73,.065);
}
body.pricing-page .pricing-product-card.counselor {
  border-color:#31588b;
  background:radial-gradient(ellipse at 90% 0%,rgba(53,100,197,.30),transparent 48%),linear-gradient(135deg,#10284b,#0b1f3c);
  box-shadow:0 14px 30px rgba(4,23,52,.16);
}
body.pricing-page .pricing-product-head > span {
  color:#245caa;
  font-size:12px;
  letter-spacing:.11em;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-head > span {color:#b3e5fb;}
body.pricing-page .pricing-product-head h2 {
  max-width:100%;
  margin-top:13px;
  color:#183650;
  font-family:Manrope,Inter,sans-serif;
  font-weight:800;
  font-size:clamp(30px,3.2vw,43px);
  line-height:1.14;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-head h2 {color:#fff;}
body.pricing-page .pricing-product-head p {
  margin-top:14px;
  color:#485f7b;
  font-size:15px;
  line-height:1.63;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-head p {color:#d0deef;}
body.pricing-page .pricing-product-price {margin-top:26px;}
body.pricing-page .pricing-product-price strong {
  color:#102c51;
  font-size:clamp(48px,5vw,64px);
  font-weight:820;
}
body.pricing-page .pricing-product-price > span {color:#466180;font-size:15px;}
body.pricing-page .pricing-product-price small {
  color:#425978;
  font-size:14px;
  font-weight:650;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-price strong {color:#fff;}
body.pricing-page .pricing-product-card.counselor .pricing-product-price > span,
body.pricing-page .pricing-product-card.counselor .pricing-product-price small {color:#d6e6fc;}
body.pricing-page .pricing-product-card ul {gap:13px;margin-top:28px;}
body.pricing-page .pricing-product-card li {
  color:#324b68;
  font-size:15px;
  line-height:1.53;
  padding-left:29px;
}
body.pricing-page .pricing-product-card.counselor li {color:#e3ebf8;}
body.pricing-page .pricing-product-card li::before {
  top:2px;
  width:20px;
  height:20px;
  color:#1e5eb3;
  background:#dfedff;
  font-size:12px;
}
body.pricing-page .pricing-product-card.counselor li::before {background:#bcecff;color:#133966;}
body.pricing-page .pricing-product-actions {gap:12px;padding-top:32px;}
body.pricing-page .pricing-product-primary,
body.pricing-page .pricing-product-secondary {
  min-height:54px;
  padding:10px 15px;
  text-align:center;
  font-size:14px;
  line-height:1.3;
  border-radius:13px;
  font-weight:750;
}
body.pricing-page .pricing-product-primary {
  color:#fff;
  background:linear-gradient(120deg,#156cda,#3659dc);
}
body.pricing-page .pricing-product-secondary {
  color:#174b94;
  background:#eaf2ff;
  border:1px solid #bbd1f0;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-primary {
  color:#0e365b;
  background:#ecf8ff;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-secondary {
  color:#e9f4ff;
  background:#1c426d;
  border:1px solid #4876ac;
}
body.pricing-page .pricing-product-primary:hover,
body.pricing-page .pricing-product-secondary:hover {filter:brightness(1.06);}
body.pricing-page .pricing-product-primary:focus-visible,
body.pricing-page .pricing-product-secondary:focus-visible,
body.pricing-page .pricing-student-path a:focus-visible {
  outline:3px solid #68b9ff;
  outline-offset:3px;
}
body.pricing-page .pricing-product-note {
  margin-top:16px;
  color:#536980;
  font-size:13px;
  line-height:1.57;
}
body.pricing-page .pricing-product-card.counselor .pricing-product-note {color:#c8d7ea;}
body.pricing-page .pricing-student-path {
  max-width:100%;
  margin-top:30px;
  padding:clamp(22px,3vw,36px);
  border:1px solid #cee1f4;
  border-radius:25px;
  background:linear-gradient(115deg,#e8f3ff,#f7fbff);
}
body.pricing-page .pricing-student-path span {
  color:#225ea1;
  font-size:11px;
}
body.pricing-page .pricing-student-path h2 {
  max-width:760px;
  color:#173750;
  font-size:clamp(23px,2.4vw,29px);
  line-height:1.23;
}
body.pricing-page .pricing-student-path p {
  color:#465f78;
  font-size:15px;
}
body.pricing-page .pricing-student-path > a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:9px 18px;
  color:#fff;
  font-size:14px;
  border-radius:12px;
  background:#175fb2;
  text-decoration:none;
}
body.pricing-page .pricing-shared-system {
  max-width:100%;
  margin:76px auto 0;
  padding:0;
}
body.pricing-page .pricing-shared-system .pricing-pill {
  background:#eaf2ff;
  border-color:#cbdcf7;
  color:#225da4;
  font-size:11px;
}
body.pricing-page .pricing-shared-system h2 {
  max-width:100%;
  color:#153451;
  font-size:clamp(32px,4vw,47px);
}
body.pricing-page .pricing-shared-grid {gap:15px;margin-top:26px;}
body.pricing-page .pricing-shared-grid article {
  min-width:0;
  min-height:190px;
  position:relative;
  padding:32px 24px 26px;
  border:1px solid #dbe6f2;
  border-radius:20px;
  background:#fff;
  box-shadow:0 5px 22px rgba(17,43,72,.035);
}
body.pricing-page .pricing-shared-grid article::before {
  content:"";
  position:absolute;
  top:0;
  left:23px;
  width:48px;
  height:3px;
  background:linear-gradient(90deg,#247adc,#85d7fb);
  border-radius:0 0 5px 5px;
}
body.pricing-page .pricing-shared-grid strong {color:#204c7e;font-size:17px;}
body.pricing-page .pricing-shared-grid p {
  color:#465d77;
  font-size:14px;
  line-height:1.64;
}
body.pricing-page .pricing-existing {
  margin:38px auto 0;
  color:#4d6680;
  font-size:14px;
}
body.pricing-page .pricing-existing a {color:#155cb7;}
body.pricing-page #site-footer .site-footer {
  background:#061426;
  border-top:1px solid #28456b;
}
body.pricing-page #site-footer .footer-main-row {border-bottom-color:#29405e;}
body.pricing-page #site-footer .footer-brand-block h3 {color:#f7fbff;}
body.pricing-page #site-footer :is(.footer-brand-block p,.footer-small,.footer-copy) {color:#bfcee1 !important;}
body.pricing-page #site-footer .footer-links a {color:#d2e1f4;}
body.pricing-page #site-footer .footer-links a:hover {color:#fff;}
@media(max-width:960px) {
  body.pricing-page .pricing-plan-intro {align-items:flex-start;flex-direction:column;gap:14px;}
  body.pricing-page .pricing-product-actions {grid-template-columns:1fr;}
  body.pricing-page .pricing-product-card {min-height:0;}
}
@media(max-width:860px) {
  body.pricing-page .pricing-product-card {min-height:0;}
  body.pricing-page .pricing-hero-shell {margin-top:-38px;}
  body.pricing-page .pricing-intro {padding-bottom:98px;}
  body.pricing-page .pricing-products {grid-template-columns:1fr;}
}
@media(max-width:760px) {
  body.pricing-page #site-header .nav-links.is-open {
    background:#102743;
    border:1px solid #35587e;
    box-shadow:0 20px 55px rgba(0,8,25,.4);
  }
  body.pricing-page #site-header .nav-links.is-open a {color:#eef6ff;}
  body.pricing-page #site-header .nav-links.is-open a.nav-cta {color:#fff;}
  body.pricing-page .pricing-intro {padding:57px 0 82px;}
  body.pricing-page .pricing-intro h1 {font-size:clamp(37px,10vw,57px);}
  body.pricing-page .pricing-intro .pricing-lede {font-size:16px;}
  body.pricing-page .pricing-intro-steps {gap:8px;}
  body.pricing-page .pricing-intro-steps span {font-size:12px;padding:9px 12px;}
  body.pricing-page .pricing-hero-shell {margin-top:-26px;padding-bottom:54px;}
  body.pricing-page .pricing-plan-intro {padding:25px 20px 0;}
  body.pricing-page .pricing-products {padding:20px 14px;}
  body.pricing-page .pricing-product-card {padding:25px 23px;border-radius:20px;}
  body.pricing-page .pricing-product-head h2 {font-size:34px;}
  body.pricing-page .pricing-student-path {flex-direction:column;align-items:flex-start;}
  body.pricing-page .pricing-shared-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.pricing-page .pricing-shared-grid article {min-height:0;padding:25px 19px;}
}
@media(max-width:540px) {
  body.pricing-page .pricing-intro-steps {display:grid;justify-content:stretch;}
  body.pricing-page .pricing-intro-steps span {justify-content:center;}
  body.pricing-page .pricing-shared-grid {grid-template-columns:1fr;}
  body.pricing-page .pricing-product-actions {grid-template-columns:1fr;}
  body.pricing-page .pricing-plan-intro {gap:10px;}
}
@media(prefers-reduced-motion:reduce) {
  body.pricing-page .pricing-product-primary,
  body.pricing-page .pricing-product-secondary {transition:none;}
}
