/* Shared reading layout for the five public store policies. */
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) main { background: #fbf9f7; }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) .page-hero { padding: 42px 0 44px; background: #111315; color: #fff; }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) .page-hero > .container { max-width: 1100px; }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) .page-hero .breadcrumb { color: #bbc1c6; font-size: 12px; line-height: 1.5; }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) .page-hero .breadcrumb span::before { content: none; }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) .page-hero h1 { margin: 9px 0 12px; font: 800 clamp(32px, 4vw, 42px)/1.08 var(--display); letter-spacing: -.4px; }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) .page-hero p { max-width: 780px; margin: 0; color: #c0c5c9; font: 400 16px/1.6 var(--body); }
body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) main > .section { padding: 44px 0 64px; }
.policy-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); align-items: start; gap: 40px; max-width: 1100px; }
.policy-nav { display: flex; flex-direction: column; gap: 4px; min-width: 0; padding-top: 2px; }
.policy-nav > strong { margin: 0 12px 9px; color: #737a80; font: 600 12px/1.5 var(--body); letter-spacing: .07em; text-transform: uppercase; }
.policy-nav > a { display: block; padding: 11px 12px; border-radius: 7px; color: #353c42; font: 400 14px/1.45 var(--body); text-decoration: none; overflow-wrap: anywhere; }
.policy-nav > a:hover { color: var(--orange-dark); background: #fff3e9; }
.policy-nav > a.active, .policy-nav > a[aria-current="page"] { color: var(--orange-dark); background: #fff0e3; font-weight: 600; }
.policy-copy.prose { min-width: 0; max-width: 790px; color: #626a72; font: 400 16px/1.65 var(--body); }
.policy-copy.prose h2 { margin: 28px 0 7px; color: #141719; font: 800 23px/1.25 var(--display); letter-spacing: 0; text-transform: uppercase; }
.policy-copy.prose h3 { margin: 22px 0 7px; color: #141719; font: 800 20px/1.3 var(--display); text-transform: uppercase; }
.policy-copy.prose > h2:first-child { margin-top: 0; }
.policy-copy.prose p { margin: 0 0 14px; font: inherit; }
.policy-copy.prose p + h2, .policy-copy.prose ul + h2, .policy-copy.prose ol + h2 { margin-top: 28px; }
.policy-copy.prose ul, .policy-copy.prose ol { margin: 8px 0 18px; padding-left: 21px; }
.policy-copy.prose li { padding-left: 2px; }
.policy-copy.prose li + li { margin-top: 6px; }
.policy-copy.prose strong { color: #41494f; font-weight: 600; }
.policy-copy.prose a { font-weight: 500; }
.policy-copy .notice { margin: 0 0 26px; padding: 14px 16px; border: 1px solid #f0d7c2; border-left: 3px solid var(--orange); border-radius: 7px; background: #fff5eb; color: #80644e; font: 400 13px/1.6 var(--body); }
.policy-copy .notice strong { color: #795037; }
.policy-copy.prose .policy-updated { margin-top: 27px; color: #7b8289; font-size: 12px; line-height: 1.6; }
.policy-copy .hh-consent-link { margin: 0 0 16px; padding: 10px 15px; border: 1px solid #dedfe1; border-radius: 7px; background: #fff; font: 600 14px/1.4 var(--body); color: #252c31; }
.policy-nav a:focus-visible, .policy-copy button:focus-visible { outline: 2px solid var(--orange); outline-offset: 3px; }
.policy-hero-action { margin-top: 20px; font-size: 14px; }
.policy-replacement-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 30px; }
.policy-copy .content-card { padding: 20px; box-shadow: none; }
.policy-replacement-summary > .content-card { margin: 0; }
.policy-copy.prose .policy-replacement-summary .big-stat { display: block; margin-bottom: 8px; color: var(--orange-dark); font: 800 25px/1.15 var(--display); }
.policy-copy.prose .policy-replacement-summary h2 { margin: 0 0 7px; font: 600 14px/1.4 var(--body); text-transform: none; }
.policy-copy.prose .policy-replacement-summary p { margin: 0; font-size: 13px; line-height: 1.6; }
.policy-copy .policy-process { padding-left: 23px; }
.policy-copy .policy-process li { padding-left: 8px; margin-bottom: 17px; }
.policy-copy .policy-process li::marker { color: var(--orange-dark); font-weight: 600; }
.policy-copy .policy-process p { margin: 4px 0 0; }
.policy-copy.prose .policy-eligibility h2 { margin-top: 7px; }
.policy-copy .policy-eligibility .notice { margin-bottom: 0; }
.policy-request { margin-top: 30px; scroll-margin-top: 160px; }
.policy-copy.prose .policy-request h2 { margin-top: 7px; }
.policy-request .form-field > span { font-size: 14px; color: #30383e; }
.policy-request .form-control { font-size: 14px; }
.policy-request .form-message { grid-column: 1 / -1; margin: 0; font-size: 13px; }
@media (max-width: 800px) {
  .policy-layout { grid-template-columns: 1fr; gap: 28px; }
  .policy-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; padding: 0 0 18px; border-bottom: 1px solid #e7e5e2; }
  .policy-nav > strong { grid-column: 1 / -1; margin: 0 0 6px; }
  .policy-nav > a { padding: 10px; font-size: 13px; }
  .policy-copy.prose { max-width: 100%; }
}
@media (max-width: 480px) {
  .policy-replacement-summary { grid-template-columns: 1fr; }
  .policy-replacement-summary .content-card { padding: 16px; }
  .policy-request .form-grid { grid-template-columns: 1fr; }
  .policy-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .policy-copy.prose { font-size: 15px; line-height: 1.7; }
  .policy-copy.prose h2 { font-size: 22px; margin-top: 25px; }
  body:is([data-page="shipping"],[data-page="returns"],[data-page="warranty"],[data-page="privacy"],[data-page="terms"]) main > .section { padding: 28px 0 48px; }
}
