.pricing-page { background: #f4f6f3; }
.pricing-header { position: absolute; color: #edf8f3; background: rgba(7,16,18,.72); backdrop-filter: blur(12px); }
.pricing-header .main-nav .is-current { color: var(--teal); }
.pricing-hero { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: end; min-height: 535px; overflow: hidden; padding: 150px 8.4vw 92px; color: #edf8f3; background: #071416; }
.pricing-hero:before { position: absolute; inset: 0; opacity: .45; background-image: linear-gradient(rgba(112,220,199,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(112,220,199,.1) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg,#000,transparent 82%); content: ""; }
.pricing-hero:after { position: absolute; right: 8vw; bottom: -150px; width: 390px; height: 390px; border: 1px solid rgba(84,226,196,.28); content: ""; transform: rotate(45deg); }
.pricing-hero > * { position: relative; z-index: 1; }
.pricing-hero-copy { max-width: 850px; }
.pricing-hero h1 { margin: 0; font-size: 58px; line-height: 1.16; }
.pricing-hero h1 em { color: var(--teal); font-style: normal; }
.pricing-hero-copy > p:last-child { max-width: 650px; margin: 27px 0 0; color: #a9c0b8; font-size: 16px; line-height: 1.85; }
.pricing-hero-meta { display: flex; gap: 42px; margin: 0 0 5px; }
.pricing-hero-meta div { min-width: 118px; padding-left: 15px; border-left: 1px solid rgba(84,226,196,.5); }
.pricing-hero-meta dt { color: var(--teal); font-size: 30px; font-weight: 800; }
.pricing-hero-meta dd { margin: 4px 0 0; color: #a9c0b8; font-size: 12px; }
.pricing-plans,.pricing-compare { padding: 112px 8.4vw 120px; }
.pricing-plans { background: #f4f6f3; }
.pricing-compare { background: #e8ede9; }
.pricing-section-heading { display: grid; grid-template-columns: 1fr minmax(300px,430px); gap: 8vw; align-items: end; max-width: 1500px; margin: 0 auto; }
.pricing-section-heading h2 { margin: 0; font-size: 43px; }
.pricing-section-heading > p { margin: 0 0 6px; color: #596963; font-size: 15px; line-height: 1.8; }
.pricing-plan-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(245px,1fr)); max-width: 1500px; margin: 69px auto 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.pricing-plan { position: relative; display: flex; flex-direction: column; min-height: 515px; padding: 28px 27px 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #f8faf7; }
.pricing-plan.is-primary { color: #eef8f4; background: #102023; }
.pricing-plan-top { display: flex; justify-content: space-between; gap: 15px; color: var(--teal-deep); font-size: 11px; font-weight: 800; }
.pricing-plan-top small { color: #758781; font-size: 9px; }
.pricing-plan.is-primary .pricing-plan-top,.pricing-plan.is-primary .pricing-plan-top small { color: var(--teal); }
.pricing-plan h3 { margin: 48px 0 13px; font-size: 30px; }
.pricing-plan > p { min-height: 66px; margin: 0; color: #596963; font-size: 13px; line-height: 1.7; }
.pricing-plan.is-primary > p,.pricing-plan.is-primary dl { color: #abc0b9; }
.pricing-plan-price { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin: 29px 0 26px; padding-bottom: 23px; border-bottom: 1px solid var(--line); }
.pricing-plan.is-primary .pricing-plan-price { border-color: rgba(229,246,239,.17); }
.pricing-plan-price strong { font-size: 27px; }
.pricing-plan-price span { color: #758781; font-size: 11px; }
.pricing-plan dl { display: grid; gap: 10px; margin: 0 0 28px; color: #596963; font-size: 12px; }
.pricing-plan dl div { display: flex; justify-content: space-between; gap: 16px; }
.pricing-plan dl dt { color: #82918c; }
.pricing-plan dl dd { margin: 0; color: inherit; font-weight: 700; }
.pricing-plan > a { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 17px; border-top: 1px solid var(--line); color: var(--teal-deep); font-size: 13px; font-weight: 800; }
.pricing-plan.is-primary > a { border-color: rgba(229,246,239,.17); color: var(--teal); }
.pricing-plan > a span { font-size: 20px; }
.pricing-empty { max-width: 1500px; margin: 60px auto 0; padding: 35px; border: 1px solid var(--line); color: #64736e; }
.pricing-table-shell { max-width: 1500px; margin: 64px auto 0; overflow: auto; border: 1px solid rgba(7,16,18,.16); background: #f8faf7; scrollbar-color: #82918c #e5ebe6; }
.pricing-table { width: 100%; min-width: 980px; border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.pricing-table th,.pricing-table td { height: 72px; padding: 16px 18px; border-right: 1px solid rgba(7,16,18,.11); border-bottom: 1px solid rgba(7,16,18,.11); text-align: center; font-size: 13px; }
.pricing-table tr > *:last-child { border-right: 0; }
.pricing-table tbody tr:last-child > * { border-bottom: 0; }
.pricing-table thead th { position: sticky; z-index: 3; top: 0; height: 166px; background: #102023; color: #eef8f4; }
.pricing-table thead th:first-child { z-index: 5; left: 0; width: 230px; text-align: left; vertical-align: bottom; }
.pricing-table thead span,.pricing-table thead strong,.pricing-table thead small { display: block; }
.pricing-table thead span { color: var(--teal); font-size: 10px; }
.pricing-table thead strong { margin-top: 10px; font-size: 20px; }
.pricing-table thead small { margin-top: 8px; color: #aac0b9; font-size: 12px; }
.pricing-table thead a { display: inline-block; margin-top: 15px; padding-bottom: 3px; border-bottom: 1px solid var(--teal); color: var(--teal); font-size: 11px; }
.pricing-table tbody th { position: sticky; z-index: 2; left: 0; background: #f8faf7; text-align: left; font-weight: 700; }
.pricing-table tbody td { color: #41514c; }
.pricing-table .pricing-group-row th { position: sticky; z-index: 2; left: 0; height: 50px; padding: 13px 18px; color: var(--teal-deep); background: #dce5de; font-size: 11px; letter-spacing: 1px; text-transform: uppercase; }
.pricing-check { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; font-size: 14px; font-weight: 800; }
.pricing-check.is-yes { color: #071012; background: var(--teal); }
.pricing-check.is-no { color: #9aa7a2; background: transparent; }
.pricing-cta { display: grid; grid-template-columns: 1fr minmax(300px,430px) auto; gap: 6vw; align-items: end; padding: 110px 8.4vw; color: #eef8f4; background: #102023; }
.pricing-cta h2 { max-width: 680px; margin: 0; font-size: 39px; }
.pricing-cta > p { margin: 0 0 4px; color: #a9c0b8; font-size: 14px; line-height: 1.8; }
.pricing-cta .primary-button { white-space: nowrap; }
@media (max-width: 1100px) { .pricing-hero,.pricing-plans,.pricing-compare,.pricing-cta{padding-left:6vw;padding-right:6vw}.pricing-hero{grid-template-columns:1fr}.pricing-hero-meta{margin-top:48px}.pricing-cta{grid-template-columns:1fr 1fr}.pricing-cta .primary-button{justify-self:start}.pricing-plan{min-height:490px} }
@media (max-width: 760px) { .pricing-header .main-nav{display:none}.pricing-hero{min-height:600px;padding:126px 24px 69px}.pricing-hero h1{font-size:39px}.pricing-hero-copy>p:last-child{font-size:14px}.pricing-hero-meta{gap:22px}.pricing-hero-meta div{min-width:0}.pricing-plans,.pricing-compare{padding:75px 24px 82px}.pricing-section-heading{grid-template-columns:1fr;gap:18px}.pricing-section-heading h2{font-size:32px}.pricing-section-heading>p{font-size:14px}.pricing-plan-grid{grid-template-columns:1fr;margin-top:42px}.pricing-plan{min-height:455px}.pricing-plan>p{min-height:0}.pricing-table-shell{margin-top:41px}.pricing-table{min-width:840px}.pricing-table th,.pricing-table td{padding:14px 13px}.pricing-table thead th:first-child{width:170px}.pricing-table thead strong{font-size:17px}.pricing-cta{grid-template-columns:1fr;gap:24px;padding:78px 24px}.pricing-cta h2{font-size:31px} }
