/* Shared catalogue: paper packages, charcoal extras, native links without JavaScript. */
.pricing-catalogue .pricing-section { border-bottom:0; }
.pricing-tabs { display:flex; gap:8px; border-bottom:1px solid #20212240; margin:32px 0 24px; padding-bottom:12px; }
.pricing-tabs a { display:flex; align-items:center; justify-content:center; min-height:48px; padding:12px 24px; border:1px solid #20212255; font-size:14px; color:var(--ink); cursor:pointer; }
.pricing-tabs a:hover { background:#2021220b; border-color:var(--ink); }
.pricing-tabs a[aria-selected=true] { background:var(--ink); border-color:var(--ink); color:var(--paper); }
.pricing-tabs a:active { border-color:var(--blue); }
.pricing-panel[hidden] { display:none; }
.pricing-panel { scroll-margin-top:28px; }
.pricing-panel + .pricing-panel:not([hidden]) { margin-top:55px; }
.pricing-tabs[role=tablist] ~ .pricing-panels .pricing-panel { margin-top:0; }
.pricing-category-intro { display:flex; align-items:baseline; flex-wrap:wrap; gap:12px 24px; margin-bottom:28px; }
.pricing-category-intro h3 { font-size:22px; font-weight:400; letter-spacing:-.03em; margin:0; }
.pricing-category-intro p { flex:1; min-width:220px; margin:0; font-size:14px; color:#51575b; }
.pricing-provisional { display:inline-block; font:10px/1.5 Consolas,monospace; padding:6px 9px; border:1px solid currentColor; color:#51575b; }
.pricing-catalogue .package-price { display:flex; flex-direction:column; align-items:flex-start; gap:9px; letter-spacing:-.05em; }
.pricing-catalogue .package-price>small { margin:0; }
.pricing-catalogue .package-price .price-current { font-size:clamp(36px,3.2vw,52px); line-height:1.1; color:var(--ink); letter-spacing:-.055em; margin:0; }
.pricing-catalogue .package-price .price-billing { color:#51575b; font-size:12px; letter-spacing:0; margin:0; }
.price-before { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; letter-spacing:0; }
.price-before s { font-size:16px; color:#51575b; text-decoration-thickness:1px; }
.sale-badge { display:inline-block; padding:7px 12px; border:1px solid #20212255; border-left:3px solid var(--blue); font:400 20px/1.15 Arial,Helvetica,sans-serif; letter-spacing:-.035em; color:var(--ink); }
.pricing-catalogue .price-on-sale .price-current { color:var(--ink); }
.pricing-catalogue .package-price .price-savings { margin:0; color:#51575b; font:13px/1.5 Consolas,'Courier New',monospace; letter-spacing:0; }
.pricing-catalogue .pricing-package .button { min-height:48px; gap:12px; }
.pricing-catalogue .pricing-extras-surface .pricing-provisional { color:var(--muted); margin:0 0 22px; }
.pricing-catalogue .pricing-extras-surface .extras-intro .text-link { display:flex; width:fit-content; gap:12px; }
.pricing-catalogue .pricing-extras-surface .extras-list>div { align-items:flex-start; gap:16px; }
.pricing-catalogue .extra-price { display:flex; flex-direction:column; align-items:flex-end; gap:9px; }
.pricing-catalogue .extra-price .price-before { justify-content:flex-end; }
.pricing-catalogue .extra-price .price-current { color:var(--paper); font-size:27px; line-height:1.1; }
.pricing-catalogue .extra-price .price-before s { color:var(--muted); font-size:14px; }
.pricing-catalogue .extra-price .sale-badge { color:var(--paper); }
.pricing-catalogue .extra-price .price-billing { color:var(--muted); font-size:11px; line-height:1.5; letter-spacing:0; white-space:normal; }
.pricing-catalogue .extras-list dt { padding-top:2px; }
.pricing-catalogue .pricing-extras-surface .extras-list small { color:var(--muted); }
@media(max-width:1000px) {
  .pricing-catalogue .extra-price { align-items:flex-start; }
  .pricing-catalogue .extra-price .price-before { justify-content:flex-start; }
}
@media(max-width:700px) {
  .pricing-tabs { gap:6px; }
  .pricing-tabs a { flex:1; padding:12px 8px; font-size:12px; }
  .pricing-category-intro { align-items:flex-start; flex-direction:column; gap:10px; }
  .pricing-category-intro p { min-width:0; }
  .pricing-catalogue .extras-list>div { flex-direction:column; }
  .pricing-catalogue .extras-list dt small { max-width:none; }
  .pricing-catalogue .extras-list dd { text-align:left; }
  .pricing-catalogue .pricing-extras-surface { padding-block:50px; }
}
