.pricing-page { background: radial-gradient(ellipse at 82% 9%, rgba(92,230,165,.075), transparent 34rem), var(--night); }
.pricing-page .site-header { background: rgba(8,12,14,.96); border-color: var(--line); }
.pricing-page .site-nav [aria-current="page"] { color: var(--mint); }
.pricing-page a:focus-visible, .pricing-page summary:focus-visible, .price-table-scroll:focus-visible { outline: 2px solid var(--mint); outline-offset: 5px; }
.pricing-page main h1, .pricing-page main h2, .pricing-page main h3, .pricing-page main p { margin-top: 0; }
.pricing-page main h2 { font-size: clamp(1.7rem,3.2vw,2.65rem); line-height: 1.14; letter-spacing: -.055em; }
.pricing-page main h3 { line-height: 1.3; letter-spacing: -.025em; }
.pricing-page .kicker { color: var(--mint); }
.price-hero { padding-top: 120px; padding-bottom: 60px; }
.price-breadcrumb { display: flex; gap: 12px; margin-bottom: 28px; color: var(--muted); font-size: .76rem; }
.price-breadcrumb a:hover { color: var(--mint); }
.price-hero-grid { display: grid; grid-template-columns: 1.3fr 1fr; align-items: center; gap: 65px; }
.price-hero-copy h1 { margin-bottom: 24px; font-size: clamp(3.2rem,5.6vw,5.1rem); line-height: 1.02; letter-spacing: -.065em; }
.price-hero-copy h1 em { color: var(--mint); font-style: normal; }
.price-lead { max-width: 550px; color: var(--muted); font-size: 1.08rem; }
.price-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 23px; margin-top: 30px; }
.price-text-link { color: var(--ink); font-size: .87rem; font-weight: 600; }
.price-text-link span { color: var(--mint); margin-left: 7px; }
.price-platform { margin-top: 26px !important; margin-bottom: 0; color: var(--muted); font-size: .76rem; }
.price-ways { position: relative; isolation: isolate; overflow: hidden; padding: 35px; border: 1px solid var(--line-strong); border-radius: 20px; background: #101c1b; }
.price-map-art { position: absolute; inset: 0; z-index: -1; opacity: .15; background: linear-gradient(0deg,#0c1916,transparent), url('/assets/gateway-map-960.webp') center/cover; }
.price-ways > .kicker { font-size: .64rem; margin-bottom: 26px; }
.price-way { display: grid; grid-template-columns: 64px minmax(0,1fr); align-items: center; gap: 20px; padding: 20px 0; }
.price-way + .price-way { border-top: 1px solid var(--line); }
.price-way h2 { font-size: 1.45rem !important; margin-bottom: 9px; letter-spacing: -.035em !important; }
.price-way p { margin-bottom: 0; color: #bdcac3; font-size: .87rem; }
.price-ways-note { display: block; margin-top: 18px; color: #bdcac3; font-size: .73rem; }
.price-plans-section, .price-included-section, .price-access-section, .price-comparison-section, .price-checkout-section { padding-block: 54px; }
.price-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 36px; margin-bottom: 32px; }
.price-section-heading h2 { margin-bottom: 0; max-width: 670px; }
.price-section-heading > p { flex: 0 1 330px; margin-bottom: 0; color: var(--muted); font-size: .9rem; }
.price-plan-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.price-plan { position: relative; min-width: 0; display: flex; flex-direction: column; padding: 25px 20px; border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(160deg,#151f22,#0e1518); scroll-margin-top: 104px; }
.price-plan-featured { border-color: var(--mint); background: linear-gradient(160deg,#182e24,#0e1815); box-shadow: 0 0 0 1px rgba(92,230,165,.15); }
.price-featured-badge { position: absolute; top: 0; left: 50%; transform: translate(-50%,-50%); z-index: 1; max-width: calc(100% - 40px); padding: 7px 14px; border-radius: 999px; background: var(--mint); color: #07110c; font-size: .64rem; font-weight: 750; line-height: 1.2; letter-spacing: .1em; white-space: nowrap; }
.price-plan-solo { background: linear-gradient(160deg,#1a2024,#10151a); }
.price-card-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 24px; }
.price-card-top img { width: 48px; height: 48px; }
.price-card-tag { padding: 5px 9px; border-radius: 7px; background: rgba(92,230,165,.08); border: 1px solid rgba(92,230,165,.18); color: var(--mint); font-size: .61rem; font-weight: 700; white-space: nowrap; }
.price-license-badge { font-size: .66rem; line-height: 1.3; }
.price-plan-solo .price-card-tag { color: #c7d2da; background: rgba(199,210,218,.06); border-color: rgba(199,210,218,.2); }
.price-term { margin-bottom: 8px; color: var(--muted); font-size: .69rem; }
.price-plan h3 { margin-bottom: 14px; font-size: 1.15rem; }
.price-amount { display: block; margin-bottom: 17px; color: var(--ink); font-size: clamp(1.4rem,2.05vw,1.85rem); letter-spacing: -.045em; line-height: 1.25; overflow-wrap: anywhere; }
.pricing-page .price-amount-term { font-size: .8em; }
.price-plan-description { flex: 1; margin-bottom: 17px; color: var(--muted); font-size: .8rem; }
.price-cancel-anytime { color: var(--mint-bright); font-weight: 700; }
.price-renewal { margin-bottom: 14px; color: #bac7bf; font-size: .7rem; }
.price-card-actions { display: grid; gap: 8px; margin-bottom: 23px; }
.price-buy { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 11px 9px; border: 1px solid rgba(92,230,165,.35); border-radius: 8px; background: rgba(92,230,165,.065); color: var(--mint-bright); font-size: .73rem; font-weight: 700; text-align: center; }
.price-buy img { flex-shrink: 0; }
.price-buy > span { margin-left: auto; }
.price-buy:hover { background: rgba(92,230,165,.15); border-color: var(--mint); }
.price-plan-featured .price-buy { background: var(--mint); color: #07110c; }
.price-plan-featured .price-buy:hover { background: var(--mint-bright); }
.price-card-feature-label { border-top: 1px solid var(--line); padding-top: 18px; margin-bottom: 12px; color: var(--ink); font-size: .77rem; font-weight: 700; }
.price-card-features { display: grid; gap: 12px; padding: 0; margin: 0; list-style: none; }
.price-card-features li { display: grid; grid-template-columns: 14px minmax(0,1fr); gap: 8px; color: #bbc8c1; font-size: .74rem; line-height: 1.45; }
.price-card-features .price-included > span:first-child { color: var(--mint); font-weight: 700; }
.price-card-features .price-excluded { color: #c5bdba; }
.price-excluded small { display: block; color: #d7a797; font-size: .65rem; margin-top: 2px; }
.price-plan-footnote { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 15px; padding-top: 22px; color: var(--muted); font-size: .8rem; }
.price-plan-footnote a, .price-context-note a, .price-checkout-notes a, .price-faq-heading a, .price-unavailable a { color: var(--mint); text-decoration: underline; text-underline-offset: 4px; }
.price-unavailable { padding: 32px; border: 1px solid var(--line); border-radius: 16px; background: var(--panel); }
.price-unavailable p { color: var(--muted); margin-bottom: 0; }
.price-toolkit-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.price-toolkit-card { min-width: 0; padding: 29px; background: var(--night-2); border: 1px solid var(--line); border-radius: 14px; }
.price-toolkit-card > img { width: 64px; height: 64px; margin-bottom: 25px; object-fit: contain; }
.price-toolkit-card > .price-app-thumbnail { object-fit: cover; object-position: 50% 5%; border-radius: 11px; border: 1px solid var(--line-strong); }
.price-toolkit-card h3 { margin-bottom: 12px; font-size: 1.15rem; }
.price-toolkit-card p { color: var(--muted); font-size: .86rem; }
.price-toolkit-card ul { padding-left: 18px; margin-bottom: 0; color: #b8c7be; font-size: .8rem; }
.price-toolkit-card li { padding-left: 3px; margin-top: 9px; }
.price-toolkit-card li::marker { color: var(--mint); }
.price-context-note { padding: 21px 24px; margin-top: 22px !important; margin-bottom: 0; border-left: 2px solid var(--mint); background: rgba(92,230,165,.035); color: var(--muted); font-size: .85rem; }
.price-access-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.price-access-card { padding: 40px; border: 1px solid var(--line-strong); border-radius: 18px; background: linear-gradient(140deg,#182127,#0d1418); }
.price-access-squad { background: linear-gradient(140deg,#193329,#0d1914); border-color: rgba(92,230,165,.3); }
.price-access-label { margin-bottom: 24px; color: #c0cbd3; font-size: .74rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.price-access-squad .price-access-label { color: var(--mint); }
.price-access-card h3 { font-size: clamp(1.75rem,3vw,2.55rem); line-height: 1.14; letter-spacing: -.045em; margin-bottom: 22px; }
.price-access-card > p:not(.price-access-label) { color: var(--muted); font-size: .9rem; }
.price-access-card ul { padding-left: 18px; color: #c3cfc7; font-size: .85rem; }
.price-access-card li { margin-top: 12px; padding-left: 3px; }
.price-access-note { display: grid; gap: 6px; border-top: 1px solid var(--line-strong); margin-top: 28px; padding-top: 20px; font-size: .8rem; }
.price-access-note span { color: var(--muted); }
.price-table-scroll { position: relative; max-width: 100%; overflow-x: auto; border: 1px solid var(--line-strong); border-radius: 14px; }
.price-comparison-table { border-collapse: collapse; width: 100%; min-width: 850px; table-layout: fixed; font-size: .82rem; }
.price-comparison-table th, .price-comparison-table td { padding: 16px 15px; border-bottom: 1px solid var(--line); text-align: center; vertical-align: middle; }
.price-comparison-table th:first-child { text-align: left; width: 32%; padding-left: 24px; }
.price-comparison-table thead { background: #17241e; }
.price-comparison-table thead th { padding-block: 24px; color: var(--ink); font-size: .84rem; }
.price-comparison-table thead span { display: block; margin-top: 6px; color: var(--muted); font-size: .7rem; font-weight: 400; }
.price-comparison-table thead a:hover { color: var(--mint); }
.price-comparison-table tbody th:not([scope="rowgroup"]) { color: #c0cbc5; font-weight: 400; }
.price-comparison-table tbody td { color: var(--muted); }
.price-table-group { background: #101b1b; }
.price-table-group th { color: var(--mint); text-transform: uppercase; letter-spacing: .09em; font-size: .68rem; }
.price-table-yes { color: var(--mint); font-size: 1rem; font-weight: 700; }
.price-table-no { color: #b8a79e; font-size: 1rem; }
.price-comparison-table tbody tr:not(.price-table-group):hover { background: rgba(92,230,165,.025); }
.price-comparison-table tbody tr:last-child th, .price-comparison-table tbody tr:last-child td { border-bottom: 0; }
.price-checkout-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; padding: 0; margin: 0 0 34px; list-style: none; }
.price-checkout-steps li { min-width: 0; padding: 26px 0; border-top: 1px solid var(--line-strong); }
.price-checkout-steps span { display: block; color: var(--mint); font-size: .8rem; margin-bottom: 21px; }
.price-checkout-steps h3 { font-size: 1.15rem; margin-bottom: 12px; }
.price-checkout-steps p { color: var(--muted); font-size: .88rem; margin-bottom: 0; }
.price-checkout-notes { display: grid; grid-template-columns: .85fr 1.15fr; gap: 40px; padding: 32px; border: 1px solid var(--line); border-radius: 14px; background: var(--night-2); }
.price-checkout-notes h3 { margin-bottom: 15px; font-size: 1rem; }
.price-checkout-notes p { font-size: .8rem; color: var(--muted); }
.price-checkout-notes p:last-child { margin-bottom: 0; }
.price-faq-section { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; padding-block: 70px; }
.price-faq-heading p:not(.kicker) { color: var(--muted); font-size: .85rem; }
.price-faq-list details { border-top: 1px solid var(--line); }
.price-faq-list details:last-child { border-bottom: 1px solid var(--line); }
.price-faq-list summary { position: relative; list-style: none; padding: 22px 36px 22px 0; cursor: pointer; font-size: .94rem; font-weight: 600; }
.price-faq-list summary::-webkit-details-marker { display: none; }
.price-faq-list summary::after { content: '+'; position: absolute; right: 5px; top: 18px; color: var(--mint); font-size: 1.2rem; font-weight: 400; }
.price-faq-list details[open] summary::after { content: '−'; }
.price-faq-list details p { padding-right: 20px; padding-bottom: 6px; color: var(--muted); font-size: .86rem; }
.price-final { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 45px; margin-top: 24px; margin-bottom: 88px; border-radius: 18px; border: 1px solid rgba(92,230,165,.25); background: linear-gradient(110deg,#173426,#0e1914); }
.price-final h2 { margin-bottom: 0; }
@supports (grid-template-rows: subgrid) {
    .price-plan { display: grid; grid-template-rows: subgrid; grid-row: span 9; row-gap: 0; }
    .price-plan-description { align-self: start; }
}
@media (max-width: 1100px) {
    .pricing-page .header-inner { min-height: 70px; }
    .pricing-page .menu-toggle { position: relative; z-index: 2; width: 44px; height: 44px; display: grid; place-content: center; gap: 7px; padding: 0; color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 8px; }
    .pricing-page .menu-toggle span:not(.sr-only) { width: 19px; height: 1px; display: block; background: currentColor; }
    .pricing-page .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
    .pricing-page .menu-toggle[aria-expanded="true"] span:nth-child(2) { transform: translateY(-4px) rotate(-45deg); }
    .pricing-page .site-nav { position: fixed; inset: 70px 0 auto; display: grid; gap: 0; padding: 15px 17px 22px; background: rgba(8,12,14,.98); border-bottom: 1px solid var(--line); transform: translateY(-130%); visibility: hidden; }
    .pricing-page .site-nav.is-open { transform: translateY(0); visibility: visible; }
    .pricing-page .site-nav a { padding: 14px 8px; border-bottom: 1px solid var(--line); }
    .pricing-page .site-nav .nav-cta { margin-top: 12px; padding: 13px; text-align: center; border: 0; }
    .price-plan-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
    .price-plan { padding: 28px; }
    .price-amount { font-size: 1.85rem; }
    .price-plan-description { min-height: 70px; }
    .price-hero-grid { gap: 35px; }
    .price-ways { padding: 27px; }
    .price-card-features { grid-template-columns: 1fr 1fr; gap: 14px; }
    .price-toolkit-card { padding: 23px; }
    .price-faq-section { gap: 40px; }
}
@media (max-width: 800px) {
    .price-hero-grid, .price-faq-section { grid-template-columns: 1fr; }
    .price-hero-copy h1 { font-size: clamp(3.3rem,8.5vw,4.5rem); }
    .price-ways { max-width: none; }
    .price-section-heading { align-items: start; flex-direction: column; gap: 18px; }
    .price-section-heading > p { flex-basis: auto; max-width: 600px; }
    .price-toolkit-grid { grid-template-columns: 1fr 1fr; }
    .price-access-card { padding: 28px; }
    .price-card-features { grid-template-columns: 1fr; }
    .price-checkout-notes { grid-template-columns: 1fr; gap: 28px; }
    .price-final { padding: 32px; }
}
@media (max-width: 540px) {
    .pricing-page .shell { width: calc(100% - 32px); }
    .price-hero { padding-top: 108px; padding-bottom: 28px; }
    .price-hero-copy h1 { font-size: clamp(2.65rem,11.2vw,3.8rem); }
    .price-lead { font-size: .99rem; }
    .price-hero-actions { align-items: start; flex-direction: column; gap: 19px; }
    .price-way { grid-template-columns: 52px minmax(0,1fr); gap: 15px; }
    .price-way img { width: 52px; height: 52px; }
    .price-ways { padding: 25px; }
    .price-plan-grid, .price-toolkit-grid, .price-access-grid, .price-checkout-steps { grid-template-columns: 1fr; }
    .price-plan-description { min-height: 0; }
    .price-card-features { grid-template-columns: 1fr 1fr; }
    .price-plans-section, .price-included-section, .price-access-section, .price-comparison-section, .price-checkout-section { padding-block: 36px; }
    .price-checkout-steps { gap: 0; }
    .price-checkout-notes { padding: 24px; }
    .price-faq-section { padding-block: 40px; gap: 24px; }
    .price-final { flex-direction: column; align-items: start; padding: 29px; margin-bottom: 48px; }
}
@media (max-width: 360px) {
    .price-card-features { grid-template-columns: 1fr; }
    .price-plan { padding: 23px; }
    .price-card-tag { white-space: normal; text-align: right; }
}
