.plans-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 37px 0 26px;
  background: radial-gradient(ellipse at 49% 54%, #103444 0%, #0b2939 44%, #071f2e 100%);
  color: #f7fbff;
}
.plans-section::before { display: none; }
.plans-atmosphere { position: absolute; z-index: -1; inset: 0; pointer-events: none; background: linear-gradient(rgba(105,193,209,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(105,193,209,.045) 1px,transparent 1px); background-size: 110px 110px; mask-image: linear-gradient(90deg,#000,transparent 40%,transparent 68%,#000); }
.plans-atmosphere::before,.plans-atmosphere::after { content: ''; position: absolute; width: 480px; height: 480px; border: 1px solid rgba(39,149,176,.17); border-radius: 50%; box-shadow: 0 0 0 59px rgba(39,149,176,.045),0 0 0 118px rgba(39,149,176,.025); }
.plans-atmosphere::before { left: -360px; bottom: 84px; }
.plans-atmosphere::after { right: -340px; top: -254px; }
.plans-section .plans-inner { width: min(1208px,calc(100% - 64px)); }
.plans-heading { text-align: center; }
.plans-heading .eyebrow { justify-content: center; margin: 0 0 15px; color: #62e4d5; font-size: .83rem; letter-spacing: .23em; font-weight: 800; text-transform: uppercase; }
.plans-heading .eyebrow span { width: 39px; }
.plans-heading h2 { margin: 0; font-size: clamp(2.55rem,3.26vw,3.5rem); line-height: .99; letter-spacing: -.035em; }
.plans-heading h2 em { color: #62e4d5; font-style: normal; }
.plans-heading > p:last-child { margin: 13px auto 12px; color: #b9cbd8; font-size: 1rem; line-height: 1.48; letter-spacing: .01em; }
.plans-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; align-items: stretch; }
.plans-card { display: flex; min-width: 0; min-height: 588px; flex-direction: column; padding: 24px 25px 20px; border: 1px solid #326174; border-radius: 20px; background: linear-gradient(145deg,rgba(15,43,59,.91),rgba(8,31,44,.93)); box-shadow: 0 18px 45px rgba(0,13,27,.14); }
.plans-card.is-recommended { border-color: #35e2c6; background: linear-gradient(145deg,rgba(15,49,60,.98),rgba(7,42,48,.97)); box-shadow: 0 0 0 1px rgba(40,228,199,.22),0 18px 55px rgba(0,25,30,.22); }
.plans-card-heading { display: flex; min-height: 52px; align-items: center; gap: 20px; }
.plans-icon { display: grid; flex: none; width: 52px; height: 52px; place-items: center; border: 1px solid #466d7d; border-radius: 12px; background: rgba(91,166,181,.11); color: #3ce3d2; }
.plans-icon svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linejoin: round; stroke-linecap: round; }
.plans-card h3 { margin: 0; font-size: 1.53rem; letter-spacing: -.04em; }
.plans-badge { margin-left: auto; padding: 6px 12px; border: 1px solid #37dfc5; border-radius: 999px; color: #6df0d9; background: rgba(29,220,189,.09); font-size: .68rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.plans-price { display: flex; align-items: baseline; gap: 10px; margin: 7px 0 0; }
.plans-price strong { font-size: 3.06rem; line-height: 1; letter-spacing: -.045em; }
.plans-price span { color: #aec1cf; font-size: 1rem; }
.plans-description { min-height: 58px; margin: 6px 0 0; color: #c2d1dd; font-size: .98rem; line-height: 1.45; }
.plans-inclusions { padding-top: 12px; border-top: 1px solid #365c69; }
.plans-inclusions small { display: block; color: #aebfce; font-size: .86rem; }
.plans-inclusions b { display: block; margin: 3px 0 17px; font-size: .96rem; }
.plans-inclusions ul { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; }
.plans-inclusions li { display: flex; align-items: center; gap: 18px; color: #e5edf3; font-size: .96rem; line-height: 1.25; }
.plans-inclusions li span { display: grid; flex: none; width: 22px; height: 22px; place-items: center; border-radius: 50%; background: #205966; color: #51ead4; font-size: .9rem; font-weight: 800; }
.plans-outcome { display: grid; grid-template-columns: 23px 1fr; gap: 14px; min-height: 65px; align-items: start; margin: 15px 0 0; padding-top: 14px; border-top: 1px solid #345667; color: #c5d4de; font-size: .96rem; line-height: 1.48; }
.plans-outcome svg { width: 23px; height: 27px; fill: #45e7ca; }
.plans-cta { display: flex; min-height: 46px; align-items: center; justify-content: center; gap: 14px; margin-top: auto; border: 1px solid #45d7b8; border-radius: 12px; background: #35d6b1; color: #051b29; font-size: 1rem; font-weight: 800; text-decoration: none; transition: background .2s ease,transform .2s ease; }
.plans-cta:hover { transform: translateY(-2px); background: #66edcf; }
.plans-cta:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.plans-cta-outline { border-color: #547485; background: rgba(137,178,197,.09); color: #f7fbff; }
.plans-cta-outline:hover { background: rgba(137,178,197,.19); }
.plans-disclaimer { margin: 16px 0 24px; color: #a9bfce; font-size: .78rem; text-align: center; }
.plans-guidance { display: flex; align-items: center; gap: 16px; color: #d4e0e9; font-size: .88rem; }
.plans-guidance > span:first-child,.plans-guidance > span:last-child { flex: 1; min-width: 30px; height: 1px; background: #366779; }
.plans-guidance svg { flex: none; width: 23px; height: 23px; fill: none; stroke: #4ae7d2; stroke-width: 1.7; }
.plans-guidance strong { color: #fff; white-space: nowrap; }
.plans-guidance p { margin: 0; }
.plans-guidance .plans-arrow { color: #fff; font-size: 1.3rem; }
@media (max-width: 1100px) {
  .plans-section .plans-inner { width: min(100% - 48px,1000px); }
  .plans-grid { gap: 13px; }
  .plans-card { padding-inline: 18px; }
  .plans-card-heading { gap: 11px; }
  .plans-card h3 { font-size: 1.37rem; }
  .plans-badge { padding: 5px 7px; font-size: .58rem; }
  .plans-inclusions li { gap: 10px; font-size: .88rem; }
}
@media (max-width: 800px) {
  .plans-section { padding: 68px 0 58px; }
  .plans-heading h2 { font-size: clamp(2.2rem,5.4vw,3.2rem); line-height: 1.07; }
  .plans-heading > p:last-child br { display: none; }
  .plans-grid { grid-template-columns: minmax(0,1fr); max-width: 520px; margin: 0 auto; gap: 18px; }
  .plans-card { min-height: 0; padding: 24px; }
  .plans-description { min-height: 0; margin-bottom: 15px; }
  .plans-inclusions { padding-top: 15px; }
  .plans-outcome { min-height: 0; margin-bottom: 20px; }
  .plans-guidance { flex-wrap: wrap; justify-content: center; text-align: center; }
  .plans-guidance > span:first-child,.plans-guidance > span:last-child { display: none; }
}
@media (max-width: 520px) {
  .plans-section .plans-inner { width: min(100% - 36px,430px); }
  .plans-heading .eyebrow { font-size: .62rem; letter-spacing: .16em; }
  .plans-heading h2 { font-size: clamp(1.95rem,8.1vw,2.6rem); }
  .plans-heading > p:last-child { font-size: .91rem; }
  .plans-card { padding: 21px; }
  .plans-price strong { font-size: 2.75rem; }
  .plans-guidance { gap: 9px; }
  .plans-guidance p { flex: 0 0 100%; }
}
@media (prefers-reduced-motion: reduce) { .plans-cta { transition: none; } .plans-cta:hover { transform: none; } }
/* Adoption choices clarify the shared platform, above the unchanged plan cards. */
.plans-adoption{margin:24px 0 26px;padding:20px 0 0;border-top:1px solid #326174}
.plans-adoption-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:24px;align-items:center;margin-bottom:16px}
.plans-adoption-heading h3{margin:0;font-size:1.55rem;line-height:1.2;letter-spacing:-.035em}
.plans-adoption-heading p{margin:0;color:#b9cbd8;font-size:.86rem;line-height:1.5}
.plans-adoption-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.plans-adoption-option{min-width:0;padding:14px 18px;border-left:2px solid #62e4d5;background:rgba(91,166,181,.07)}
.plans-adoption-label{color:#62e4d5;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.plans-adoption-option h4{margin:7px 0 5px;font-size:1.05rem;line-height:1.35;letter-spacing:-.02em}
.plans-adoption-option p{margin:0;color:#c2d1dd;font-size:.86rem;line-height:1.5}
.plans-adoption-reassurance{margin:13px 0 0;color:#c2d1dd;font-size:.8rem;line-height:1.5;text-align:center}
@media(max-width:800px){.plans-adoption-heading{grid-template-columns:1fr;gap:9px}.plans-adoption-options{gap:16px}.plans-adoption-heading h3{font-size:1.4rem}}
@media(max-width:600px){.plans-adoption-options{grid-template-columns:1fr;gap:12px}.plans-adoption{margin-top:20px;margin-bottom:24px}.plans-adoption-option{padding:13px 15px}.plans-adoption-reassurance{text-align:left}}
