/* OrderWorth commerce presentation. Prices, availability and payments retain their existing controllers. */
.ow-site.page-pricing .pricing-intro,
.ow-site.page-checkout .checkout-intro { padding-block: 24px 28px; }
.ow-site.page-pricing .pricing-intro h1,
.ow-site.page-checkout .checkout-intro h1 { font-size: clamp(2.5rem, 4.5vw, 4rem); margin-bottom: 16px; }
.ow-site.page-pricing .pricing-intro > p:not(.eyebrow) { max-width: 650px; margin-block: 0 20px; line-height: 1.65; }
.ow-site.page-pricing .pricing-intro > .eyebrow,
.ow-site.page-checkout .checkout-intro > .eyebrow { margin-bottom: 14px; }
.commerce-jump-links { display: flex; flex-wrap: wrap; gap: 12px 24px; font-size: .875rem; }
.commerce-jump-links a { color: var(--ow-accent); text-underline-offset: 4px; min-height: 30px; display: inline-flex; align-items: center; gap: 8px; }
.ow-site.page-pricing .edition-pricing { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); align-items: start; }
.ow-site.page-pricing .edition-card { padding: 28px 30px; }
.ow-site.page-pricing .edition-card h2 { font-size: 1.8rem; line-height: 1.2; letter-spacing: -.04em; margin: 0 0 14px; }
.ow-site.page-pricing .edition-card > .eyebrow { margin-bottom: 14px; }
.ow-site.page-pricing .edition-card > p { margin-top: 0; }
.ow-site.page-pricing .plan-options { margin-block: 20px 16px; }
.ow-site.page-pricing .plan-options > a { min-height: 80px; padding: 14px 18px; grid-template-columns: minmax(0, 1fr) auto 18px; gap: 14px; }
.ow-site.page-pricing .plan-options > a:hover { border-color: var(--ow-accent); background: #deeee3; }
.ow-site.page-pricing .edition-card .plan-renewal,
.ow-site.page-pricing .edition-assurance { font-size: .8125rem; line-height: 1.65; color: var(--ow-muted); }
.ow-site.page-pricing .edition-card .plan-availability { margin-block: 14px; padding: 10px 12px; font-size: .8125rem; }
.ow-site.page-pricing .edition-assurance { margin: 16px 0 0; }
.ow-site .edition-details,
.ow-site .commerce-disclosure { border-top: 1px solid var(--ow-line); padding-block: 14px; margin-top: 12px; }
.ow-site .edition-details summary,
.ow-site .commerce-disclosure summary { cursor: pointer; font-size: .9375rem; font-weight: 600; line-height: 1.55; color: var(--ow-ink); padding-block: 4px; }
.ow-site .edition-details summary:hover,
.ow-site .commerce-disclosure summary:hover { color: var(--ow-accent); }
.ow-site .edition-details ul { list-style: none; padding: 0; margin: 18px 0 0; }
.ow-site .edition-details li { position: relative; padding: 0 0 0 24px; margin: 10px 0; font-size: .9375rem; line-height: 1.6; }
.ow-site .edition-details li::before { content: "✓"; position: absolute; left: 0; color: var(--ow-accent); }
.ow-site .commerce-disclosure p { font-size: .875rem; line-height: 1.75; color: var(--ow-muted); }
.ow-site.page-pricing .upgrade-reasons { display: block; padding-block: 48px; }
.ow-site.page-pricing .upgrade-reasons h2 { font-size: 2.25rem; margin-bottom: 28px; }
.ow-site.page-pricing .upgrade-reasons ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding: 0; list-style: none; }
.ow-site.page-pricing .upgrade-reasons li { border-top: 2px solid var(--ow-accent-line); padding: 24px 0 0; margin: 0; }
.ow-site.page-pricing .upgrade-reasons details { font-size: .875rem; margin-top: 14px; }
.ow-site.page-pricing .upgrade-reasons summary { cursor: pointer; line-height: 1.5; color: var(--ow-accent); }
.ow-site.page-pricing .upgrade-reasons details p { margin-top: 12px; font-size: .875rem; }
.ow-site.page-pricing #compare { padding-top: 40px; }
.ow-site.page-pricing #compare .comparison { width: 100%; min-width: 0; table-layout: fixed; }
.ow-site.page-pricing #compare .comparison th:first-child { width: 40%; }
.ow-site.page-pricing #compare .comparison td { width: 30%; }
.ow-site.page-pricing #compare .comparison th,
.ow-site.page-pricing #compare .comparison td { overflow-wrap: anywhere; }
.ow-site.page-pricing .comparison-hint { display: none; }
.ow-site.page-checkout .checkout-layout { gap: 20px 28px; }
.ow-site.page-checkout .currency-toolbar { margin-bottom: 0; }
.ow-site.page-checkout .order-plan,
.ow-site.page-checkout .payment-state { padding: 28px; }
.ow-site.page-checkout .order-plan { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; }
.ow-site.page-checkout .order-plan > * { grid-column: 1 / -1; }
.ow-site.page-checkout .order-plan .paid-label { justify-self: start; }
.ow-site.page-checkout .order-plan h2 { grid-column: 1; grid-row: 2; margin-block: 16px 6px; }
.ow-site.page-checkout #plan-sites { grid-column: 1 / -1; grid-row: 3; }
.ow-site.page-checkout .order-plan .checkout-price { grid-column: 2; grid-row: 2; display: flex; flex-direction: column; align-items: flex-end; justify-content: center; margin-block: 10px; }
.ow-site.page-checkout .order-plan #plan-price { font-size: 2.25rem; }
.ow-site.page-checkout .order-plan .checkout-price > span { font-size: .75rem; }
.ow-site.page-checkout #plan-sites { margin-block: 0 12px; }
.ow-site.page-checkout .checkout-price { margin-block: 12px 6px; gap: 6px 12px; }
.ow-site.page-checkout .checkout-billing { font-size: .875rem; line-height: 1.65; margin-block: 10px 16px; }
.ow-site.page-checkout .total-row { margin-top: 16px; padding-block: 14px; align-items: baseline; }
.ow-site.page-checkout .total-row small { display: block; font-size: .75rem; font-weight: 400; color: var(--ow-muted); }
.ow-site.page-checkout .commerce-disclosure { padding-block: 8px; margin-top: 8px; border-top: 0; }
.ow-site.page-checkout .change-plan { margin-top: 10px; padding-top: 0; border-top: 0; }
.ow-site.page-checkout .change-plan a { flex: 1 1 100%; gap: 4px; }
.ow-site.page-checkout .checkout-features ul { padding-left: 20px; }
.ow-site.page-checkout .checkout-features li { padding: 0; margin-block: 10px; font-size: .875rem; line-height: 1.6; }
.ow-site.page-checkout .payment-state > .eyebrow { margin-top: 0; }
.ow-site.page-checkout .payment-state #checkout-message { font-size: .875rem; line-height: 1.7; }
.ow-site.page-checkout .payment-state .check-label { font-size: .875rem; line-height: 1.65; }
.ow-site.page-checkout .payment-state .payment-button { width: 100%; }
.ow-site.page-purchase .purchase-access-shell #key-form { grid-column: 2; grid-row: 1; }
.ow-site.page-purchase .purchase-welcome { grid-column: 1; grid-row: 1; }
.ow-site.page-purchase #key-form h1 { font-family: "Space Grotesk", Inter, sans-serif; font-weight: 500; font-size: clamp(2rem, 3vw, 2.7rem); letter-spacing: -.05em; line-height: 1.15; color: #162b32; margin: 0 0 .65rem; }
.ow-site.page-purchase .purchase-welcome h2 { font-family: "Space Grotesk", Inter, sans-serif; font-size: clamp(2.3rem, 3.3vw, 3.1rem); font-weight: 500; line-height: 1.1; letter-spacing: -.055em; margin: 0 0 1.3rem; color: #f5f8f3; }
.ow-site.page-purchase .purchase-welcome h2 span { color: #cce6bc; }
@media (max-width: 850px) {
  .ow-site.page-pricing .edition-pricing { grid-template-columns: 1fr; }
  .ow-site.page-pricing .upgrade-reasons ol { grid-template-columns: 1fr; gap: 28px; }
  .ow-site.page-pricing .edition-card { padding: 25px; }
  .ow-site.page-checkout .checkout-layout { gap: 16px; }
}
@media (max-width: 760px) {
  .ow-site.page-purchase .purchase-access-shell #key-form { grid-column: 1; grid-row: 1; padding: 28px 24px; }
  .ow-site.page-purchase .purchase-welcome { grid-column: 1; grid-row: 2; padding: 24px; }
  .ow-site.page-purchase .purchase-welcome-top { display: none; }
  .ow-site.page-purchase .purchase-welcome-copy { padding: 0; }
  .ow-site.page-purchase .purchase-welcome h2 { font-size: 1.5rem; margin-bottom: 12px; }
  .ow-site.page-purchase .purchase-welcome h2 br { display: none; }
  .ow-site.page-purchase .purchase-welcome h2 span::before { content: " "; }
  .ow-site.page-purchase #key-form .purchase-access-intro { margin-bottom: 24px; }
}
@media (max-width: 600px) {
  .ow-site.page-pricing .pricing-intro,
  .ow-site.page-checkout .checkout-intro { padding-block: 16px 24px; }
  .ow-site.page-pricing .pricing-intro h1 { font-size: 2.5rem; }
  .ow-site.page-checkout .checkout-intro { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding-bottom: 18px; }
  .ow-site.page-checkout .checkout-intro > .eyebrow { flex-basis: 100%; margin-bottom: 6px; }
  .ow-site.page-checkout .checkout-intro h1 { font-size: 2.1rem; margin-bottom: 0; }
  .ow-site.page-checkout .checkout-intro .text-link { margin-left: auto; font-size: .8125rem; }
  .ow-site.page-checkout .order-plan .checkout-price { align-self: center; margin: 10px 0 0; }
  .ow-site.page-checkout .total-row { font-size: .875rem; padding-block: 12px; margin-top: 8px; }
  .ow-site.page-checkout #today-total { white-space: nowrap; }
  .ow-site.page-checkout .payment-state h2 { margin-top: 0; }
  .ow-site.page-pricing .pricing-intro > p:not(.eyebrow) { font-size: .9375rem; }
  .ow-site:is(.page-pricing, .page-checkout) .currency-toolbar { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 12px; padding: 16px; }
  .ow-site:is(.page-pricing, .page-checkout) .currency-toolbar label { font-size: .8125rem; width: auto; }
  .ow-site:is(.page-pricing, .page-checkout) .currency-toolbar select { width: 100%; min-width: 0; padding-left: 10px; font-size: .8125rem; }
  .ow-site:is(.page-pricing, .page-checkout) .currency-toolbar p,
  .ow-site:is(.page-pricing, .page-checkout) .currency-toolbar button { grid-column: 1 / -1; }
  .ow-site:is(.page-pricing, .page-checkout) .currency-toolbar p { font-size: .8125rem; line-height: 1.6; }
  .ow-site.page-pricing .edition-card h2 { font-size: 1.65rem; }
  .ow-site.page-pricing .plan-options > a { padding: 14px; gap: 8px; }
  .ow-site.page-pricing .plan-options > a > span { display: grid; gap: 2px; }
  .ow-site.page-pricing .plan-options > a > span > strong { font-size: .9375rem; }
  .ow-site.page-pricing .plan-options > a > span:nth-child(2) > strong { font-size: 1.5rem; }
  .ow-site.page-pricing .plan-options small { font-size: .75rem; }
  .ow-site.page-pricing #compare .comparison th,
  .ow-site.page-pricing #compare .comparison td { padding: 12px 9px; font-size: .8125rem; line-height: 1.6; vertical-align: top; }
  .ow-site.page-pricing #compare .comparison th:first-child { width: 36%; }
  .ow-site.page-pricing #compare .comparison td { width: 32%; }
  .ow-site.page-checkout .order-plan,
  .ow-site.page-checkout .payment-state { padding: 22px; }
  .ow-site.page-checkout .order-plan h2 { margin-top: 12px; font-size: 1.5rem; }
  .ow-site.page-checkout #plan-sites { font-size: .8125rem; }
  .ow-site.page-checkout .order-plan #plan-price { font-size: 1.5rem; }
  .ow-site.page-checkout .checkout-price > span { font-size: .8125rem; }
  .ow-site.page-checkout .payment-state h2 { font-size: 1.5rem; }
}

@media (max-width: 360px) {
  .ow-site.page-checkout .order-plan h2 { font-size: 1.25rem; }
  .ow-site.page-checkout .order-plan #plan-price { font-size: 1.35rem; }
  .ow-site.page-checkout .order-plan .checkout-price > span { max-width: 130px; text-align: right; }
  .ow-site.page-checkout .total-row small { max-width: 130px; }
}
