/* Dedicated pricing page. Keep the shared pricing cards and plan builder intact. */
body.smt-pricing-detail-body .entry-content { overflow: visible; }
body.smt-pricing-detail-body .entry-content > * { margin-bottom: 0; }
body.smt-pricing-detail-body .smt-price-container { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
body.smt-pricing-detail-body .smt-price-eyebrow { margin: 0 0 16px; color: #a8f3e5; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
body.smt-pricing-detail-body .smt-price-hero { position: relative; overflow: hidden; padding: clamp(128px, 12vw, 166px) 0 85px; color: #fff; background: radial-gradient(circle at 80% 12%, rgba(83, 215, 219, .23), transparent 38%), radial-gradient(circle at 8% 85%, rgba(146, 104, 255, .25), transparent 42%), #171337; }
body.smt-pricing-detail-body .smt-price-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .13; background-image: radial-gradient(#fff 1px, transparent 1px); background-size: 32px 32px; mask-image: linear-gradient(90deg, transparent, #000); }
body.smt-pricing-detail-body .smt-price-hero .smt-price-container { position: relative; z-index: 1; max-width: 1060px; text-align: center; }
body.smt-pricing-detail-body .smt-price-hero h1 { max-width: 900px; margin: 0 auto 22px; color: #fff; font-size: clamp(42px, 5.2vw, 70px); font-weight: 850; line-height: 1.05; letter-spacing: -.045em; }
body.smt-pricing-detail-body .smt-price-lead { max-width: 790px; margin: 0 auto; color: #e4def7; font-size: clamp(17px, 1.8vw, 20px); line-height: 1.65; }
body.smt-pricing-detail-body .smt-price-hero-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; margin: 32px 0 24px; }
body.smt-pricing-detail-body .smt-price-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 12px 22px; border-radius: 999px; font-size: 14px; font-weight: 800; line-height: 1.25; text-decoration: none; transition: transform .2s, box-shadow .2s; }
body.smt-pricing-detail-body .smt-price-button:hover { transform: translateY(-2px); }
body.smt-pricing-detail-body .smt-price-button:focus-visible, body.smt-pricing-detail-body .smt-price-text-link:focus-visible, body.smt-pricing-detail-body summary:focus-visible { outline: 3px solid #28d9ce; outline-offset: 3px; }
body.smt-pricing-detail-body .smt-price-button-primary { color: #fff; background: linear-gradient(120deg, #8856ff, #5845d9); box-shadow: 0 14px 30px rgba(77, 43, 187, .26); }
body.smt-pricing-detail-body .smt-price-button-primary:hover { color: #fff; box-shadow: 0 18px 38px rgba(77, 43, 187, .34); }
body.smt-pricing-detail-body .smt-price-button-secondary { color: #fff; border: 1px solid rgba(255,255,255,.45); background: rgba(255,255,255,.08); }
body.smt-pricing-detail-body .smt-price-button-secondary:hover { color: #fff; background: rgba(255,255,255,.16); }
body.smt-pricing-detail-body .smt-price-hero-note { margin: 0; color: #d8d2ee; font-size: 13px; line-height: 1.6; }
body.smt-pricing-detail-body .smt-price-hero-note span { padding-inline: 7px; color: #78e9db; }

body.smt-pricing-detail-body .pricing { padding-top: 78px; padding-bottom: 92px; scroll-margin-top: 92px; }
body.smt-pricing-detail-body .pricing .section-head { max-width: 780px; margin-inline: auto; }
body.smt-pricing-detail-body .pricing .section-head h2 { font-size: clamp(32px, 3.5vw, 48px); }
body.smt-pricing-detail-body .pricing .section-head > p { max-width: 740px; }
body.smt-pricing-detail-body .smt-price-explainer,
body.smt-pricing-detail-body .smt-price-comparison,
body.smt-pricing-detail-body .smt-price-faq,
body.smt-pricing-detail-body .smt-price-search { padding: 84px 0; }
body.smt-pricing-detail-body .smt-price-explainer { scroll-margin-top: 92px; background: #f5f3fb; }
body.smt-pricing-detail-body .smt-price-explainer-grid { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); align-items: center; gap: clamp(30px, 7vw, 100px); }
body.smt-pricing-detail-body .smt-price-explainer .smt-price-eyebrow,
body.smt-pricing-detail-body .smt-price-comparison .smt-price-eyebrow,
body.smt-pricing-detail-body .smt-price-faq .smt-price-eyebrow { color: #7041cf; }
body.smt-pricing-detail-body .smt-price-explainer h2,
body.smt-pricing-detail-body .smt-price-comparison h2,
body.smt-pricing-detail-body .smt-price-faq h2,
body.smt-pricing-detail-body .smt-price-search h2,
body.smt-pricing-detail-body .smt-price-final h2 { margin: 0 0 20px; font-size: clamp(32px, 3.5vw, 46px); font-weight: 830; line-height: 1.12; letter-spacing: -.035em; }
body.smt-pricing-detail-body .smt-price-explainer p:not(.smt-price-eyebrow),
body.smt-pricing-detail-body .smt-price-search p,
body.smt-pricing-detail-body .smt-price-section-lead { max-width: 680px; color: #56556c; font-size: 16px; line-height: 1.72; }
body.smt-pricing-detail-body .smt-price-text-link { display: inline-block; margin-top: 10px; color: #5b36d9; font-weight: 800; text-underline-offset: 4px; }
body.smt-pricing-detail-body .smt-price-steps { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
body.smt-pricing-detail-body .smt-price-steps li { display: flex; gap: 17px; padding: 20px 22px; border: 1px solid #e5def5; border-radius: 20px; background: #fff; box-shadow: 0 12px 32px rgba(42, 27, 82, .04); }
body.smt-pricing-detail-body .smt-price-steps li > span { flex: 0 0 auto; color: #6c3edf; font-size: 15px; font-weight: 900; }
body.smt-pricing-detail-body .smt-price-steps h3 { margin: 0 0 5px; font-size: 17px; line-height: 1.3; }
body.smt-pricing-detail-body .smt-price-steps p { margin: 0; color: #66647c; font-size: 14px; line-height: 1.5; }

body.smt-pricing-detail-body .smt-price-comparison { background: #fff; }
body.smt-pricing-detail-body .smt-price-comparison .smt-price-section-lead { max-width: 800px; margin-bottom: 26px; }
body.smt-pricing-detail-body .smt-price-table-scroll { overflow-x: auto; border: 1px solid #e9e5f1; border-radius: 20px; background: #fff; box-shadow: 0 16px 45px rgba(47, 34, 76, .06); }
body.smt-pricing-detail-body .smt-price-table { width: 100%; min-width: 730px; border-collapse: collapse; color: #202039; font-size: 14px; }
body.smt-pricing-detail-body .smt-price-table th,
body.smt-pricing-detail-body .smt-price-table td { padding: 17px 18px; border-bottom: 1px solid #eeeaf5; text-align: left; vertical-align: top; }
body.smt-pricing-detail-body .smt-price-table thead th { color: #fff; background: #27204e; font-size: 14px; font-weight: 800; }
body.smt-pricing-detail-body .smt-price-table thead th:nth-child(3) { background: #5c3cc2; }
body.smt-pricing-detail-body .smt-price-table tbody th { width: 210px; font-weight: 750; }
body.smt-pricing-detail-body .smt-price-table tbody tr:nth-child(even) { background: #faf9fd; }
body.smt-pricing-detail-body .smt-price-table tbody tr:last-child th,
body.smt-pricing-detail-body .smt-price-table tbody tr:last-child td { border-bottom: 0; }
body.smt-pricing-detail-body .smt-price-table-note { max-width: 900px; margin: 15px 0 0; color: #66647c; font-size: 13px; line-height: 1.65; }

body.smt-pricing-detail-body .smt-price-faq { background: #f8f7fc; }
body.smt-pricing-detail-body .smt-price-faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 13px; margin-top: 28px; }
body.smt-pricing-detail-body .smt-price-faq details { border: 1px solid #e6e2f0; border-radius: 16px; background: #fff; }
body.smt-pricing-detail-body .smt-price-faq summary { position: relative; padding: 19px 48px 19px 20px; color: #24203e; font-size: 15px; font-weight: 750; line-height: 1.45; cursor: pointer; list-style: none; }
body.smt-pricing-detail-body .smt-price-faq summary::-webkit-details-marker { display: none; }
body.smt-pricing-detail-body .smt-price-faq summary::after { content: "+"; position: absolute; right: 18px; top: 13px; color: #6d42d0; font-size: 25px; font-weight: 400; }
body.smt-pricing-detail-body .smt-price-faq details[open] summary::after { content: "−"; }
body.smt-pricing-detail-body .smt-price-faq details p { margin: 0; padding: 0 20px 20px; color: #57566d; font-size: 14px; line-height: 1.7; }
body.smt-pricing-detail-body .smt-price-search { background: #fff; }
body.smt-pricing-detail-body .smt-price-search .smt-price-container { max-width: 920px; }
body.smt-pricing-detail-body .smt-price-search h2 { font-size: clamp(28px, 3vw, 38px); }
body.smt-pricing-detail-body .smt-price-final { padding: 70px 0; color: #fff; background: linear-gradient(115deg, #241b51, #47328f); }
body.smt-pricing-detail-body .smt-price-final-layout { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
body.smt-pricing-detail-body .smt-price-final h2 { margin-bottom: 11px; color: #fff; }
body.smt-pricing-detail-body .smt-price-final p:not(.smt-price-eyebrow) { margin: 0; color: #e6e1f5; line-height: 1.6; }
body.smt-pricing-detail-body .smt-price-final .smt-price-button { flex: 0 0 auto; }

@media (max-width: 800px) {
  body.smt-pricing-detail-body .smt-price-container { width: min(100% - 36px, 1200px); }
  body.smt-pricing-detail-body .smt-price-hero { padding: 125px 0 70px; }
  body.smt-pricing-detail-body .smt-price-explainer-grid,
  body.smt-pricing-detail-body .smt-price-faq-grid { grid-template-columns: 1fr; }
  body.smt-pricing-detail-body .smt-price-final-layout { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 520px) {
  body.smt-pricing-detail-body .smt-price-container { width: min(100% - 30px, 1200px); }
  body.smt-pricing-detail-body .smt-price-hero { padding: 112px 0 58px; }
  body.smt-pricing-detail-body .smt-price-hero-actions { align-items: stretch; flex-direction: column; }
  body.smt-pricing-detail-body .smt-price-hero-note span { padding-inline: 3px; }
  body.smt-pricing-detail-body .pricing { padding-top: 62px; padding-bottom: 68px; }
  body.smt-pricing-detail-body .smt-price-explainer,
  body.smt-pricing-detail-body .smt-price-comparison,
  body.smt-pricing-detail-body .smt-price-faq,
  body.smt-pricing-detail-body .smt-price-search { padding: 62px 0; }
  body.smt-pricing-detail-body .smt-price-table th,
  body.smt-pricing-detail-body .smt-price-table td { padding: 14px; }
}
