/* ============================================================
   refund-layout.css — full layout redesign for /refund-policy/
   
   Design: clean editorial, 2-column on desktop (sticky TOC + content cards),
   stacked on mobile. Numbered badges, no overlap, light hero.
   ============================================================ */

/* === Page wrapper === */
html body .dag-refund {
    background: #ffffff;
    padding: 0;
    margin: 0;
}

html body .dag-refund > .dag-container,
html body .dag-refund .dag-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 clamp(20px, 4vw, 40px);
}

/* === Hero already styled by legal-hero-redesign.css — reinforce key bits === */
html body .refund-hero {
    background: #fafafa !important;
    background-image: none !important;
    border-left: 4px solid #b0122a !important;
    border-bottom: 1px solid #e4e4e7 !important;
    padding: clamp(40px, 6vw, 72px) clamp(20px, 4vw, 56px) !important;
    margin: 0 0 32px !important;
}

html body .refund-hero::before,
html body .refund-hero::after {
    display: none !important;
    content: none !important;
}

/* Hero pills */
html body .refund-hero__chips {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body .refund-chip,
html body .refund-hero__chips a,
html body .refund-hero__chips span {
    background: rgba(176, 18, 42, 0.08) !important;
    color: #b0122a !important;
    border: 1px solid rgba(176, 18, 42, 0.20) !important;
    padding: 6px 14px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
}

/* === TWO-COLUMN LAYOUT — TOC sticky + Content === */
html body .refund-layout,
html body .refund-main,
html body .dag-refund > .refund-content,
html body .refund-policy-grid {
    display: grid !important;
    grid-template-columns: 280px 1fr !important;
    gap: 48px !important;
    max-width: 1440px !important;
    margin: 0 auto 64px !important;
    padding: 0 clamp(20px, 4vw, 40px) !important;
    align-items: start !important;
}

@media (max-width: 900px) {
    html body .refund-layout,
    html body .refund-main,
    html body .dag-refund > .refund-content,
    html body .refund-policy-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
}

/* === TOC SIDEBAR === */
html body .refund-toc,
html body nav.refund-toc,
html body aside.refund-toc,
html body .refund-sidebar,
html body .refund-contents {
    background: #fafafa !important;
    border: 1px solid #e4e4e7 !important;
    border-left: 3px solid #b0122a !important;
    padding: 24px 24px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    /* sticky disabled per user request */
    position: static !important;
}

html body .refund-toc h2,
html body .refund-toc h3,
html body .refund-toc__title,
html body .refund-contents h2 {
    color: #b0122a !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    margin: 0 0 16px !important;
}

html body .refund-toc ul,
html body .refund-toc ol,
html body nav.refund-toc ol,
html body .refund-contents ol {
    list-style: none !important;
    counter-reset: refund-toc !important;
    padding: 0 !important;
    margin: 0 !important;
}

html body .refund-toc li,
html body nav.refund-toc li,
html body .refund-contents li {
    counter-increment: refund-toc !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(228, 228, 231, 0.6) !important;
    position: relative !important;
}

html body .refund-toc li:last-child {
    border-bottom: none !important;
}

html body .refund-toc li a,
html body .refund-toc__link,
html body .refund-contents li a {
    display: flex !important;
    align-items: baseline !important;
    gap: 12px !important;
    padding: 10px 0 !important;
    color: #0f0f10 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    transition: color 160ms ease !important;
}

html body .refund-toc li a::before,
html body .refund-toc__link::before {
    content: counter(refund-toc, decimal-leading-zero) !important;
    color: #b0122a !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    flex-shrink: 0 !important;
    min-width: 24px !important;
}

html body .refund-toc li a:hover,
html body .refund-toc__link:hover {
    color: #b0122a !important;
}

/* === CONTENT SECTIONS === */
html body .refund-section,
html body section.refund-section,
html body .refund-block,
html body .refund-card,
html body article.refund-section {
    background: #ffffff !important;
    border: 1px solid #e4e4e7 !important;
    padding: 32px clamp(24px, 3vw, 40px) !important;
    margin: 0 0 16px !important;
    border-radius: 0 !important;
    position: relative !important;
    counter-increment: refund-section !important;
    color: #0f0f10 !important;
}

/* Numbered badge top-left of each section */
html body .refund-section::before,
html body section.refund-section::before {
    content: counter(refund-section, decimal-leading-zero) !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 56px !important;
    height: 56px !important;
    background: #b0122a !important;
    color: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    border-radius: 0 !important;
    z-index: 1 !important;
}

/* Initialize counter on parent */
html body .refund-content,
html body .refund-main,
html body .refund-sections,
html body .refund-policy-grid > main {
    counter-reset: refund-section !important;
}

/* Section headings — leave room for badge */
html body .refund-section h2,
html body .refund-section h3,
html body section.refund-section h2,
html body section.refund-section h3 {
    color: #0f0f10 !important;
    font-size: clamp(20px, 2vw, 26px) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 0 16px !important;
    padding-left: 72px !important;
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
}

/* Body text inside sections — full width, no padding */
html body .refund-section p,
html body .refund-section ul,
html body .refund-section ol,
html body section.refund-section p,
html body section.refund-section ul,
html body section.refund-section ol {
    padding-left: 0 !important;
    margin-left: 0 !important;
    color: #3f3f46 !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
}

html body .refund-section p {
    margin: 0 0 16px !important;
}

html body .refund-section ul,
html body .refund-section ol {
    margin: 0 0 16px !important;
    padding-left: 24px !important;
}

html body .refund-section li {
    margin: 6px 0 !important;
}

html body .refund-section strong {
    color: #0f0f10 !important;
    font-weight: 600 !important;
}

/* === IMPORTANT / NOTE callouts === */
html body .refund-section .important,
html body .refund-section .note,
html body .refund-section blockquote,
html body .refund-callout {
    background: rgba(176, 18, 42, 0.04) !important;
    border-left: 3px solid #b0122a !important;
    padding: 16px 20px !important;
    margin: 16px 0 !important;
    color: #0f0f10 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

html body .refund-section .important strong,
html body .refund-callout strong {
    color: #b0122a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    font-size: 11px !important;
    display: block !important;
    margin-bottom: 8px !important;
}

/* === BOTTOM CTA — "Want the fastest resolution?" === */
html body .refund-cta,
html body section.refund-cta,
html body .refund-final-cta {
    background: #fafafa !important;
    border: 1px solid #e4e4e7 !important;
    border-left: 4px solid #b0122a !important;
    padding: 32px clamp(24px, 3vw, 40px) !important;
    margin: 32px 0 !important;
    border-radius: 0 !important;
    text-align: left !important;
}

html body .refund-cta h2,
html body .refund-cta h3,
html body .refund-cta__title {
    color: #0f0f10 !important;
    font-size: clamp(18px, 2vw, 22px) !important;
    font-weight: 700 !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    min-height: auto !important;
    display: block !important;
    line-height: 1.3 !important;
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
}

html body .refund-cta p,
html body .refund-cta__text {
    color: #52525b !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    margin: 0 0 20px !important;
    max-width: 60ch !important;
}

html body .refund-cta__actions,
html body .refund-cta .actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin: 0 !important;
    flex-direction: row !important;
    align-items: center !important;
    width: auto !important;
}

html body .refund-cta__actions .dag-btn,
html body .refund-cta .dag-btn {
    width: auto !important;
    min-width: 160px !important;
    white-space: nowrap !important;
    writing-mode: horizontal-tb !important;
}

/* === Mobile responsive === */
@media (max-width: 768px) {
    html body .refund-hero {
        padding: 32px 20px !important;
    }
    
    html body .refund-section,
    html body section.refund-section {
        padding: 56px 20px 24px !important;
    }
    
    html body .refund-section::before,
    html body section.refund-section::before {
        width: 44px !important;
        height: 44px !important;
        font-size: 14px !important;
    }
    
    html body .refund-section h2,
    html body .refund-section h3 {
        padding-left: 0 !important;
        margin-top: 8px !important;
        font-size: 20px !important;
        min-height: auto !important;
        display: block !important;
    }
    
    html body .refund-cta__actions,
    html body .refund-cta__actions .dag-btn {
        width: 100% !important;
    }
}
