/* Pricing uses the shared site shell; all treatments below stay scoped here. */
.price-page { --price-line:#d8d9d0; }
.price-hero { display:grid; grid-template-columns:1.45fr 1fr; gap:90px; align-items:center; padding-block:70px 80px; }
.price-hero h1 { font-size:clamp(44px,5.2vw,72px); line-height:1.04; font-weight:500; letter-spacing:-.055em; margin-bottom:25px; }
.price-hero h1 span { color:var(--bitcoin-orange); }
.price-lead { color:#b6b8ae; font-size:18px; line-height:1.75; max-width:580px; margin-bottom:28px; }
.price-lead strong { color:var(--text); font-weight:500; }
.price-promise { padding:28px 30px; border:1px solid #494532; border-radius:10px; background:radial-gradient(ellipse at top right,var(--gold-glow),transparent 75%); }
.price-promise .rail-eyebrow { margin:0; }
.price-zero { font-size:100px; letter-spacing:-.065em; line-height:1.15; color:var(--bitcoin-orange); }
.price-zero span { font-size:52px; }
.price-promise>p:not(.rail-eyebrow):not(.price-help) { font-size:16px; color:#c5c7bb; }
.price-promise-bottom { display:flex; gap:15px; align-items:center; border-top:1px solid #39392e; padding-top:18px; font-size:15px; line-height:1.7; }
.price-promise-bottom i { font-size:25px; color:var(--bitcoin-orange); }
.price-promise .price-help { color:#a8aa9f; margin-top:15px; margin-bottom:0; }
.price-calculator { background:#efefe9; color:#20221b; padding-block:64px; scroll-margin-top:80px; }
.price-section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:35px; }
.price-page h2 { font-size:clamp(32px,3.5vw,46px); line-height:1.12; letter-spacing:-.045em; }
.price-section-heading h2 { margin:0; }
.price-section-heading .rail-eyebrow { color:#6a654e; margin-bottom:16px; }
.price-section-heading>p { font-size:15px; color:#66695c; line-height:1.7; margin-bottom:0; }
.price-workspace { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:28px; align-items:start; }
.price-form { background:#fff; border:1px solid var(--price-line); border-radius:10px; padding:30px; }
.price-form fieldset { min-width:0; margin-bottom:26px; padding-bottom:10px; border-bottom:1px solid var(--price-line); }
.price-form legend { float:none; font-size:20px; letter-spacing:-.025em; font-weight:600; margin-bottom:20px; }
.price-form legend>span { font:11px var(--font-mono); color:#767966; margin-right:14px; }
.price-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.price-field { margin-bottom:19px; min-width:0; }
.price-field label { display:block; font-size:14px; font-weight:500; margin-bottom:8px; }
.price-input { display:flex; align-items:center; border:1px solid #c7cabd; border-radius:5px; background:#fff; }
.price-input:focus-within { outline:2px solid #847031; outline-offset:2px; }
.price-input span { padding:0 13px; color:#717564; font-size:16px; }
.price-input input { width:100%; min-width:0; border:0; background:transparent; padding:11px 12px; font-size:18px; color:#20221b; border-radius:5px; }
.price-input input:focus { outline:none; }
.price-input span+input { padding-left:0; }
.price-field .form-control,.price-field .form-select { min-height:48px; font-size:16px; border-color:#c7cabd; color:#20221b; }
.price-help { font-size:13px; line-height:1.65; color:#626657; margin:8px 0 0; }
.price-page .price-help a { text-decoration:underline; }
.price-explainer { font-size:14px; line-height:1.6; margin-bottom:17px; }
.price-explainer summary { font-weight:500; cursor:pointer; padding-block:10px; }
.price-explainer p { margin:10px 0; }
.price-explainer h4 { font-size:15px; font-weight:600; margin-top:20px; }
.price-results-wrap { min-width:0; }
#results_section { scroll-margin-top:90px; }
.price-savings { background:#191c15; color:#e9ece0; padding:30px; border-radius:10px 10px 0 0; }
.price-savings .rail-eyebrow { margin-bottom:12px; }
#savings_display { color:var(--bitcoin-orange); font-size:clamp(48px,5vw,72px); line-height:1.15; letter-spacing:-.045em; font-weight:500; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
#savings_percentage_display { font-size:14px; color:#b9bdad; margin:12px 0 24px; }
.price-annual { display:flex; justify-content:space-between; align-items:center; gap:12px; border-top:1px solid #404437; padding-top:20px; color:#bdc1b1; font-size:14px; }
.price-annual strong { color:#f0f1e9; font-size:23px; font-weight:500; margin-right:6px; }
.price-annual i { color:var(--bitcoin-orange); font-size:23px; }
.price-scenario { background:#e3e4d9; border:1px solid #d0d3c2; padding:13px 22px; font-size:13px; line-height:1.6; margin:0; }
.price-totals { display:grid; grid-template-columns:1fr 1fr; gap:18px; background:#fff; border-inline:1px solid var(--price-line); padding:26px 24px; }
.price-totals>div+div { padding-left:18px; border-left:1px solid var(--price-line); }
.price-totals span,.price-totals small { display:block; font-size:13px; color:#686c5e; }
.price-totals strong { display:block; font-size:clamp(21px,2.5vw,32px); line-height:1.6; font-weight:500; letter-spacing:-.04em; overflow-wrap:anywhere; }
.price-breakdown { background:white; border:1px solid var(--price-line); padding:25px; border-radius:0 0 10px 10px; }
.price-breakdown h3 { font-size:18px; letter-spacing:-.02em; margin-bottom:17px; }
.price-line { display:flex; justify-content:space-between; gap:22px; padding:8px 0; font-size:14px; }
.price-line dt { font-weight:400; color:#616657; }
.price-line dd { margin:0; text-align:right; font-variant-numeric:tabular-nums; }
.price-total { border-top:1px solid var(--price-line); margin-top:8px; padding-top:16px; font-weight:600; }
.price-total dt { color:#20221b; font-weight:600; }
.price-breakdown .price-explainer { border-top:1px solid var(--price-line); padding-top:5px; margin-bottom:0; }
.price-assumptions { margin:16px 8px; }
.price-start { width:100%; }
.price-included { padding-block:72px; }
.price-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:40px; }
.price-benefits article>i { font-size:26px; color:var(--bitcoin-orange); }
.price-benefits h3 { font-size:21px; letter-spacing:-.03em; margin:18px 0 12px; }
.price-benefits p { color:#a7ab9d; font-size:15px; line-height:1.8; }
.price-faq { display:grid; grid-template-columns:1fr 1.5fr; gap:70px; padding-block:80px; border-top:1px solid #303229; }
.price-faq h2 { margin-bottom:0; }
.price-faq .rail-faq code { font:13px var(--font-mono); color:#f0c14d; }
@media(min-width:1100px) { .price-results-wrap { position:sticky; top:95px; } }
@media(max-width:1000px) { .price-hero { gap:35px; } .price-form,.price-savings { padding:24px; } }
@media(max-width:760px) { .price-page .rail-container { width:calc(100% - 36px); } .price-hero { grid-template-columns:1fr; padding-block:40px; gap:32px; } .price-promise { display:none; } .price-results-wrap { order:-1; } .price-section-heading { display:block; } .price-section-heading>p { margin-top:16px; } .price-workspace { grid-template-columns:1fr; } .price-calculator { padding-block:40px; } .price-form { padding:22px; } .price-benefits { grid-template-columns:1fr; gap:20px; } .price-included { padding-block:50px; } .price-faq { grid-template-columns:1fr; gap:24px; padding-block:50px; } }
@media(prefers-reduced-motion:reduce) { .price-page .rail-button { transition:none; transform:none; } }

.price-hero-fine { display:flex; flex-wrap:wrap; gap:6px 18px; margin:22px 0 0; font-size:13px; color:#a8aa9f; }
.price-hero-fine span { white-space:nowrap; }
.price-hero-fine i { color:var(--bitcoin-orange); margin-right:2px; }
.price-link-button { background:none; border:0; padding:0; color:inherit; font:inherit; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.price-link-button:hover { color:var(--bitcoin-orange); }
.price-final { padding-block:80px; text-align:center; border-top:1px solid #303229; background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(232,181,60,.1),transparent 70%); }
.price-final .rail-eyebrow, .price-final .rail-actions { justify-content:center; }
.price-final h2 span { color:var(--bitcoin-orange); }
.price-final p:not(.rail-eyebrow) { color:#b6b8ae; margin:0 auto 30px; max-width:560px; line-height:1.75; }
.price-final .price-link-button { text-decoration:none; }
@media(max-width:760px) { .price-final { padding-block:56px; } }
.price-basis { color:#8f9185; font-size:12px; font-weight:400; }
.price-compare { margin:34px 0 0; color:#a7ab9d; font-size:15px; }
.price-compare a { text-decoration:underline; }
.price-trust { list-style:none; display:flex; flex-wrap:wrap; justify-content:center; gap:10px 28px; max-width:900px; padding:26px 0 0; margin:34px auto 0; border-top:1px solid #303229; font-size:13px; color:#a8aa9f; }
.price-trust i { color:var(--bitcoin-orange); margin-right:6px; }
.price-trust a { text-decoration:underline; text-underline-offset:4px; }

/* Plans (#plans): a card each for Free, Starter and Pro, Enterprise as a line under them.
   The figures are the build's {{plan_*}} spans, refreshed by public/pricing.js. */
.price-plans { padding-block:20px 80px; scroll-margin-top:80px; }
.price-plans-intro { max-width:760px; margin-bottom:34px; }
.price-plans-intro>p:not(.rail-eyebrow) { color:#b6b8ae; font-size:16px; line-height:1.8; }
.price-plans h2 span { color:var(--bitcoin-orange); }
.price-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.price-card { display:flex; flex-direction:column; padding:28px 26px 26px; border:1px solid #494532; border-radius:10px; background:var(--surface); }
.price-card.is-featured { border-color:var(--bitcoin-orange); box-shadow:0 0 0 1px var(--bitcoin-orange); background:radial-gradient(ellipse at top right,var(--gold-glow),transparent 70%),var(--surface); }
.price-card-name { margin:0 0 14px; font:500 12px/1.6 var(--font-mono); letter-spacing:.12em; text-transform:uppercase; color:#a8aa9f; }
.price-card-amount { display:flex; align-items:baseline; gap:6px; margin:0 0 8px; font-variant-numeric:tabular-nums; }
.price-card-amount strong { font-size:44px; line-height:1.1; font-weight:500; letter-spacing:-.045em; color:var(--text); }
.price-card.is-featured .price-card-amount strong { color:var(--bitcoin-orange); }
.price-card-amount>span { color:#a8aa9f; font-size:15px; }
.price-card-summary { color:#c5c7bb; font-size:15px; margin:0 0 18px; }
.price-card-features { list-style:none; padding:0; margin:0 0 26px; display:grid; gap:10px; color:#d7d9cf; font-size:15px; line-height:1.5; }
.price-card-features li { display:flex; gap:10px; }
.price-card-features i { color:var(--bitcoin-orange); }
.price-card-cta { margin-top:auto; justify-content:center; width:100%; }
/* Pro while it is held (plan_pro_on_sale): "Coming soon" where its button goes, the button's size, not a link. */
.price-card-cta-slot { margin-top:auto; display:flex; }
.price-card-soon { display:flex; align-items:center; justify-content:center; width:100%; min-height:52px; margin:0; padding:14px 24px; border:1px dashed var(--bitcoin-orange); border-radius:6px; color:var(--bitcoin-orange); font:500 13px/1.4 var(--font-mono); letter-spacing:.12em; text-transform:uppercase; }
/* One gold button per row (Pro's); the others are outlined. .rail-button sets its ink with !important. */
.price-card-cta.is-quiet { background:transparent; color:var(--text)!important; border:1px solid #5b5847; box-shadow:none; }
.price-card-cta.is-quiet::before { display:none; }
.price-card-cta.is-quiet:hover { background:transparent; border-color:var(--bitcoin-orange); color:var(--bitcoin-orange)!important; box-shadow:none; }
.price-enterprise { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 24px; margin-top:20px; padding:18px 26px; border:1px dashed #494532; border-radius:10px; color:#b6b8ae; font-size:15px; line-height:1.65; }
.price-enterprise p { margin:0; max-width:760px; }
.price-enterprise strong { color:var(--text); font-weight:500; }
.price-plan-facts { list-style:none; padding:0; margin:30px 0 0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 40px; }
.price-plan-facts li { display:flex; gap:12px; color:#b6b8ae; font-size:14px; line-height:1.65; }
.price-plan-facts li>span { min-width:0; }
.price-plan-facts i { color:var(--bitcoin-orange); font-size:17px; }
.price-plan-facts a { text-decoration:underline; }
[data-plan] { font-variant-numeric:tabular-nums; }
@media(max-width:1000px) { .price-cards { grid-template-columns:1fr; max-width:520px; } .price-plan-facts { grid-template-columns:1fr; } }
@media(max-width:760px) { .price-plans { padding-bottom:50px; } .price-card { padding:24px 22px 22px; } .price-card-amount strong { font-size:38px; } .price-enterprise { padding:16px 18px; } }
