.sales-terms-page { padding-top: 0; }
.sales-terms-container { max-width: 1100px; padding: 48px 0 72px; }
.sales-terms-content { color: var(--text-light); font-size: 15px; line-height: 1.95; overflow-wrap: anywhere; }
.sales-terms-content p { margin: 0 0 22px; }
.sales-terms-content ul, .sales-terms-content ol { margin: 0 0 24px; padding-left: 25px; }
.sales-terms-content li { margin-bottom: 7px; padding-left: 4px; }
.sales-terms-content :is(h2, h3, h4) { margin: 30px 0 16px; color: #fff; line-height: 1.4; }
.sales-terms-content a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.sales-terms-content a:hover { color: #d7dfff; }
.sales-terms-content a:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
html.checkout-terms-open, .checkout-terms-open body { overflow: hidden; }
.checkout-terms-dialog { position: fixed; inset: 0; width: min(900px, calc(100% - 40px)); max-width: none; max-height: 85vh; max-height: 85dvh; margin: auto; padding: 0; border: 1px solid #343d67; border-radius: 12px; background: #090b22; color: var(--text-light); box-shadow: 0 24px 100px rgba(0, 0, 0, .5); font-family: "Poppins", "Segoe UI", sans-serif; overflow: hidden; }
.checkout-terms-dialog::backdrop { background: rgba(0, 1, 14, .75); backdrop-filter: blur(3px); }
.checkout-terms-panel { display: flex; flex-direction: column; max-height: inherit; }
.checkout-terms-header { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 26px; border-bottom: 1px solid rgba(182, 189, 216, .15); background: #131639; }
.checkout-terms-header h2 { margin: 0; color: #fff; font-size: 23px; font-weight: 600; line-height: 1.4; }
.checkout-terms-close { display: grid; flex: 0 0 auto; place-items: center; width: 42px; height: 42px; padding: 10px; border: 1px solid #4c5786; border-radius: 7px; background: transparent; color: var(--text-light); cursor: pointer; }
.checkout-terms-close svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
.checkout-terms-close:hover { background: #27325b; }
.checkout-terms-close:focus-visible, .checkout-terms-content:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; }
.checkout-terms-content { min-height: 0; padding: 26px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #566495 transparent; }
.checkout-terms-content > :last-child { margin-bottom: 0; }
@media (max-width: 599px) {
  .sales-terms-container { width: calc(100% - 36px); padding: 32px 0 50px; }
  .sales-terms-page .retail-page-banner h1 { font-size: clamp(24px, 6vw, 34px); overflow-wrap: anywhere; }
  .sales-terms-content { font-size: 14px; line-height: 1.85; }
  .checkout-terms-dialog { width: calc(100% - 24px); max-height: 90vh; max-height: 90dvh; border-radius: 9px; }
  .checkout-terms-header { padding: 14px 16px; }
  .checkout-terms-header h2 { font-size: 19px; }
  .checkout-terms-content { padding: 20px 16px; }
}
