/* Shop policy documents: compact headings, readable text, and direct section links. */
.gear-shop-page.xfg-shop-policy-page { background:#1b1b1b; color:#e6e8eb; }
.gear-shop-page.xfg-shop-policy-page .xfg-shop-policy {
    display:block;
    width:calc(100% - 64px);
    max-width:1600px;
    margin:0 auto;
    padding:30px 0 56px;
    background:transparent;
    color:#e6e8eb;
    font:400 14px/1.5 var(--shop-text,"Segoe UI",sans-serif);
    overflow-wrap:anywhere;
}
.xfg-shop-policy .xfg-shop-policy__heading { margin:0 0 14px; padding:0; background:transparent; }
.xfg-shop-policy .xfg-shop-policy__heading h1 { margin:0 0 12px; color:#fff; font:600 27px/1.2 var(--shop-display,"Arial Narrow",sans-serif); letter-spacing:0; text-transform:none; }
.xfg-shop-policy .xfg-shop-policy__context { margin:0; color:#c4c8cd; font-size:13px; line-height:1.5; }
.xfg-shop-policy .xfg-shop-policy__nav { display:flex; flex-wrap:wrap; gap:8px 22px; margin:0 0 22px; padding:0 0 15px; border-bottom:1px solid #4a4d50; }
.xfg-shop-policy .xfg-shop-policy__nav a { font-size:13px; }
.xfg-shop-policy .xfg-shop-policy__nav [aria-current="page"] { color:#fff; font-weight:600; text-decoration:none; }
.xfg-shop-policy .xfg-policy-intro { margin:0 0 20px; padding:0; background:transparent; }
.xfg-shop-policy .xfg-policy-meta { margin:0 0 12px; color:#c4c8cd; font-size:12px; font-weight:600; }
.xfg-shop-policy .xfg-policy-meta span { padding:0 5px; }
.xfg-shop-policy p { max-width:none; margin:0 0 12px; font-size:inherit; line-height:inherit; }
.xfg-shop-policy a { color:#ffd000; text-decoration:underline; text-underline-offset:2px; }
.xfg-shop-policy a:hover { color:#ffe46b; }
.xfg-shop-policy :is(a,button):focus-visible { outline:2px solid #ffd000; outline-offset:4px; }
.xfg-shop-policy .xfg-shop-policy__contents { display:block; margin:0 0 24px; padding:0; background:transparent; }
.xfg-shop-policy .xfg-shop-policy__contents h2 { margin:0 0 8px; font:600 18px/1.3 var(--shop-display,"Arial Narrow",sans-serif); color:#fff; }
.xfg-shop-policy .xfg-shop-policy__contents ol { margin:0; padding-left:22px; }
.xfg-shop-policy .xfg-shop-policy__contents li { margin:0 0 2px; padding:0; font-size:13px; line-height:1.45; }
.xfg-shop-policy .xfg-shop-policy__document { display:block; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:inherit; }
.xfg-shop-policy .xfg-shop-policy__document section { margin:0 0 22px; padding:0; scroll-margin-top:175px; background:transparent; border:0; }
.xfg-shop-policy .xfg-shop-policy__document h2,
.xfg-shop-policy .xfg-shop-policy__document h3 { margin:0 0 8px; color:#fff; font:600 19px/1.3 var(--shop-display,"Arial Narrow",sans-serif); letter-spacing:0; text-transform:none; }
.xfg-shop-policy .xfg-shop-policy__document h2 { margin-bottom:16px; font-size:21px; }
.xfg-shop-policy .xfg-shop-policy__document section > h2 { margin-bottom:8px; font-size:19px; }
.xfg-shop-policy .xfg-shop-policy__document :is(ul,ol) { margin:0 0 12px; padding-left:24px; }
.xfg-shop-policy .xfg-shop-policy__document li { margin:0 0 5px; padding:0; }
.xfg-shop-policy .xfg-shop-policy__document strong { color:#fff; font-weight:600; }
.xfg-shop-policy .xfg-shop-policy__document code { color:inherit; background:#24272a; border-radius:2px; padding:1px 4px; font:inherit; }
.xfg-shop-policy .legal-callout { margin:0 0 22px; padding:0 0 0 14px; border-left:2px solid #ffd000; background:transparent; }
.xfg-shop-policy .legal-callout > strong { display:block; margin-bottom:5px; }
.xfg-shop-policy .xfg-policy-notice { display:flex; flex-wrap:wrap; align-items:center; gap:5px 12px; margin:0 0 14px; padding:0; border:0; background:transparent; font-size:13px; }
.xfg-shop-policy .xfg-policy-notice > strong { font-weight:500; }
.xfg-shop-policy .xfg-policy-notice button,
.xfg-shop-policy .xfg-shop-policy__settings { display:inline; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#ffd000; cursor:pointer; font:inherit; text-align:left; text-decoration:underline; text-underline-offset:2px; }
.xfg-shop-policy .cookie-status { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:14px 0; padding:16px; border:1px solid #4a4d50; background:#24272a; }
.xfg-shop-policy .cookie-status__copy { min-width:0; }
.xfg-shop-policy .cookie-status__copy :is(small,strong) { display:block; margin-bottom:5px; }
.xfg-shop-policy .cookie-status__copy small { color:#c4c8cd; font-size:12px; }
.xfg-shop-policy .cookie-status__copy p { margin:0; }
.xfg-shop-policy .cookie-status__action { flex:0 0 auto; font-weight:600; }
.xfg-shop-policy .xfg-policy-contact-link { margin:28px 0 0; padding-top:18px; border-top:1px solid #4a4d50; }
@media(min-width:1900px) {
    .gear-shop-page.xfg-shop-policy-page .xfg-shop-policy { width:calc(100% - 80px); max-width:1800px; font-size:15px; }
}
@media(max-width:820px) {
    .gear-shop-page.xfg-shop-policy-page .xfg-shop-policy { width:calc(100% - 40px); padding:22px 0 42px; }
    .xfg-shop-policy .xfg-shop-policy__heading h1 { font-size:25px; }
    .xfg-shop-policy .xfg-shop-policy__document section { scroll-margin-top:130px; }
}
@media(max-width:480px) {
    .gear-shop-page.xfg-shop-policy-page .xfg-shop-policy { width:calc(100% - 32px); padding-top:18px; font-size:14px; line-height:1.55; }
    .xfg-shop-policy .xfg-shop-policy__heading h1 { font-size:24px; }
    .xfg-shop-policy .xfg-shop-policy__nav { gap:8px 16px; margin-bottom:18px; }
    .xfg-shop-policy .xfg-shop-policy__contents li { line-height:1.65; }
    .xfg-shop-policy .xfg-shop-policy__document h3 { font-size:19px; }
    .xfg-shop-policy .cookie-status { align-items:flex-start; flex-direction:column; gap:12px; padding:14px; }
}
