:root { --pricing-ink:#0b2a44; --pricing-muted:#61788c; --pricing-orange:#ff6a2b; --pricing-line:#dce8f0; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.pricing-page { margin:0; background:#f6f9fc; color:var(--pricing-ink); font-family:Satoshi,system-ui,sans-serif; }
.pricing-page h1,.pricing-page h2,.pricing-page h3,.pricing-page p { margin-top:0; }
.pricing-page h1,.pricing-page h2,.pricing-page h3 { letter-spacing:-.045em; }
.pricing-page p { line-height:1.62; }
.pricing-page main a { text-decoration:none; }
.pricing-page a:focus-visible,.pricing-page summary:focus-visible { outline:3px solid #ffaf86; outline-offset:4px; }
.pricing-shell { width:min(1160px,calc(100% - 48px)); margin-inline:auto; }
.pricing-eyebrow { display:block; color:#ffaf83; font-size:.71rem; font-weight:850; letter-spacing:.19em; text-transform:uppercase; }
.pricing-hero { position:relative; overflow:hidden; background:#071d38; color:#fff; padding:94px 0 184px; isolation:isolate; }
.pricing-hero::before { content:""; position:absolute; inset:0; z-index:-2; background:url('/marketing-home/nebula.png') center 43% / cover no-repeat; }
.pricing-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(100deg,rgba(6,27,51,.96),rgba(8,33,58,.74) 58%,rgba(6,27,51,.81)); }
.pricing-hero h1 { max-width:800px; margin:17px 0 20px; font-size:clamp(3.1rem,6.8vw,6.3rem); line-height:1.04; font-weight:850; text-wrap:balance; }
.pricing-hero h1 span { color:var(--pricing-orange); }
.pricing-hero p { max-width:650px; margin-bottom:26px; color:#d6e8f6; font-size:1.13rem; }
.pricing-preview-note { display:inline-flex; align-items:center; gap:10px; max-width:680px; padding:11px 15px; border:1px solid rgba(214,234,248,.24); border-radius:10px; background:rgba(255,255,255,.09); color:#e4f0f8; font-size:.82rem; line-height:1.45; }
.pricing-preview-note span { color:#ffaf83; font-size:1.1rem; }
.pricing-plans { position:relative; z-index:1; margin-top:-110px; padding-bottom:92px; }
.pricing-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:stretch; }
.plan-card { min-width:0; padding:38px 40px 41px; border:1px solid var(--pricing-line); border-radius:24px; background:#fff; box-shadow:0 20px 50px rgba(8,34,61,.09); }
.plan-card-featured { border:2px solid var(--pricing-orange); padding:37px 39px 40px; box-shadow:0 22px 58px rgba(12,39,64,.14); }
.plan-topline { display:flex; align-items:center; gap:10px; margin-bottom:23px; }
.plan-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; background:#e9f4fb; color:#1b779f; font-size:1.2rem; font-weight:800; }
.plan-card-featured .plan-icon { background:#fff0e7; color:#e95d23; }
.plan-audience { color:#6d879a; font-size:.77rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.plan-card h2 { margin-bottom:6px; font-size:2.15rem; line-height:1.15; }
.plan-description { min-height:48px; max-width:430px; margin-bottom:27px; color:var(--pricing-muted); font-size:.97rem; }
.plan-price { display:flex; align-items:baseline; gap:8px; margin-bottom:0; }
.plan-price strong { font-size:3.45rem; line-height:1; letter-spacing:-.08em; }
.plan-price span { color:#71899c; font-size:.94rem; font-weight:700; }
.plan-price-note { margin:8px 0 26px; color:#8095a4; font-size:.76rem; }
.plan-button { display:flex; align-items:center; justify-content:center; gap:10px; min-height:50px; border-radius:11px; font-size:.92rem; font-weight:850; transition:background .2s,transform .2s; }
.plan-button:hover { transform:translateY(-2px); }
.plan-button-outline { border:1px solid #bcd4e3; background:#fff; color:var(--pricing-ink); }
.plan-button-outline:hover { background:#f0f7fb; }
.plan-button-solid { background:var(--pricing-orange); color:#173048; }
.plan-button-solid:hover { background:#ff874f; }
.plan-rule { height:1px; margin:31px 0 24px; background:var(--pricing-line); }
.plan-card h3 { margin-bottom:16px; font-size:.84rem; letter-spacing:0; }
.plan-card ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; }
.plan-card li { position:relative; padding-left:24px; color:#405e73; font-size:.91rem; line-height:1.45; }
.plan-card li::before { content:"✓"; position:absolute; left:0; top:0; color:#22a881; font-weight:900; }
.pricing-caveat { margin-top:21px; margin-bottom:0; color:#758b9d; font-size:.77rem; text-align:center; }
.pricing-benefits { padding:84px 0 99px; background:#fff; }
.pricing-section-heading { max-width:700px; margin-bottom:39px; }
.pricing-benefits .pricing-eyebrow,.pricing-faq .pricing-eyebrow { color:#d95a24; }
.pricing-section-heading h2,.pricing-faq h2 { margin:15px 0 0; font-size:clamp(2.2rem,4.2vw,3.55rem); line-height:1.12; text-wrap:balance; }
.benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.benefit-grid article { padding:28px; border:1px solid #e0eaf1; border-radius:18px; background:#f7fafc; }
.benefit-icon { display:grid; place-items:center; width:44px; height:44px; margin-bottom:20px; border-radius:13px; background:#e8f4fa; color:#2a7ea5; font-size:1.35rem; }
.benefit-grid h3 { margin-bottom:9px; font-size:1.13rem; }
.benefit-grid p { margin:0; color:var(--pricing-muted); font-size:.91rem; }
.pricing-faq { padding:95px 0; background:#edf5fb; }
.faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:85px; }
.pricing-faq h2 { margin-bottom:15px; }
.pricing-faq .faq-grid>div>p { max-width:350px; color:var(--pricing-muted); }
.faq-items { border-top:1px solid #d2e1ec; }
.faq-items details { border-bottom:1px solid #d2e1ec; padding:20px 0; }
.faq-items summary { display:flex; justify-content:space-between; gap:20px; list-style:none; cursor:pointer; font-size:.94rem; font-weight:850; }
.faq-items summary::-webkit-details-marker { display:none; }
.faq-items summary::after { content:"+"; color:#e45b25; font-size:1.35rem; font-weight:500; line-height:1; }
.faq-items details[open] summary::after { content:"−"; }
.faq-items p { margin:12px 24px 0 0; color:var(--pricing-muted); font-size:.88rem; }
.pricing-last-cta { position:relative; overflow:hidden; padding:86px 0 92px; background:#0b2c49; color:#fff; text-align:center; isolation:isolate; }
.pricing-last-cta::before { content:""; position:absolute; inset:0; z-index:-1; background:url('/marketing-home/nebula.png') center 65% / cover no-repeat; opacity:.26; }
.pricing-last-cta h2 { max-width:700px; margin:13px auto 13px; font-size:clamp(2.2rem,4.1vw,3.6rem); line-height:1.12; text-wrap:balance; }
.pricing-last-cta p { margin-bottom:25px; color:#c8ddec; }
.pricing-last-cta a { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:49px; padding:0 25px; border-radius:999px; background:var(--pricing-orange); color:#18334a; font-weight:850; }
.pricing-last-cta a:hover { background:#ff874f; }
@media (max-width:850px) {
    .pricing-hero { padding:76px 0 160px; }
    .pricing-grid { gap:16px; }
    .plan-card { padding:29px; }
    .plan-card-featured { padding:28px; }
    .faq-grid { grid-template-columns:1fr; gap:26px; }
}
@media (max-width:650px) {
    .pricing-shell { width:min(100% - 32px,540px); }
    .pricing-hero { padding:64px 0 146px; }
    .pricing-hero h1 { font-size:clamp(2.65rem,11vw,4rem); }
    .pricing-hero p { font-size:1rem; }
    .pricing-preview-note { font-size:.77rem; }
    .pricing-plans { margin-top:-88px; padding-bottom:70px; }
    .pricing-grid,.benefit-grid { grid-template-columns:1fr; }
    .plan-card,.plan-card-featured { padding:28px 25px; }
    .plan-description { min-height:0; }
    .pricing-benefits,.pricing-faq { padding:70px 0; }
    .pricing-last-cta { padding:76px 0; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .pricing-page * { transition:none!important; } }
