/*
|--------------------------------------------------------------------------
| MKGO - Refund Policy
|--------------------------------------------------------------------------
|
| File:
| /assets/css/pages/refunds.css
|
| Refund-policy-specific presentation only.
|
| General policy layout remains owned by:
| /assets/css/pages/policy.css
|
*/


/*
|--------------------------------------------------------------------------
| Refund Page Variables
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-main {
    --refund-slate: #0f172a;
    --refund-slate-soft: #334155;
    --refund-text: #475569;
    --refund-muted: #64748b;
    --refund-light: #94a3b8;
    --refund-border: #e2e8f0;
    --refund-border-strong: #cbd5e1;
    --refund-surface: #ffffff;
    --refund-surface-alt: #f8fafc;
}


/*
|--------------------------------------------------------------------------
| Hero
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-hero {
    position: relative;

    overflow: hidden;
}


.refund-policy-page .policy-hero::after {
    content: "";

    position: absolute;

    top: -190px;
    right: -160px;

    width: 480px;
    height: 480px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(15, 23, 42, 0.065) 0%,
            rgba(15, 23, 42, 0) 70%
        );

    pointer-events: none;
}


.refund-policy-page .policy-hero > * {
    position: relative;
    z-index: 1;
}


/*
|--------------------------------------------------------------------------
| Policy Content
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content {
    color: var(--refund-text);
}


.refund-policy-page
.policy-content
> *:first-child {
    margin-top: 0;
}


.refund-policy-page
.policy-content
> *:last-child {
    margin-bottom: 0;
}


/*
|--------------------------------------------------------------------------
| Section Headings
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content h2 {
    position: relative;

    margin-top: 48px;
    margin-bottom: 18px;

    padding-top: 20px;

    border-top:
        1px solid
        var(--refund-border);

    color: var(--refund-slate);

    scroll-margin-top: 120px;
}


.refund-policy-page
.policy-content
h2:first-child {
    margin-top: 0;

    padding-top: 0;

    border-top: 0;
}


.refund-policy-page .policy-content h2::before {
    content: "";

    position: absolute;

    top: -1px;
    left: 0;

    width: 48px;
    height: 2px;

    border-radius: 999px;

    background: var(--refund-slate);
}


.refund-policy-page
.policy-content
h2:first-child::before {
    display: none;
}


.refund-policy-page .policy-content h3 {
    margin-top: 30px;
    margin-bottom: 12px;

    color: var(--refund-slate);

    scroll-margin-top: 120px;
}


.refund-policy-page .policy-content h4 {
    margin-top: 24px;
    margin-bottom: 10px;

    color: var(--refund-slate);

    scroll-margin-top: 120px;
}


/*
|--------------------------------------------------------------------------
| Paragraphs
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content p {
    line-height: 1.78;
}


.refund-policy-page
.policy-content
p + p {
    margin-top: 14px;
}


/*
|--------------------------------------------------------------------------
| Strong Text
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content strong {
    color: var(--refund-slate);

    font-weight: 750;
}


/*
|--------------------------------------------------------------------------
| Lists
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content ul,
.refund-policy-page .policy-content ol {
    display: grid;

    gap: 9px;

    margin-top: 16px;
    margin-bottom: 22px;

    padding-left: 24px;
}


.refund-policy-page .policy-content li {
    padding-left: 4px;

    color: var(--refund-text);

    line-height: 1.72;
}


.refund-policy-page
.policy-content
li::marker {
    color: var(--refund-slate);

    font-weight: 700;
}


/*
|--------------------------------------------------------------------------
| Links
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content a {
    color: var(--refund-slate);

    font-weight: 700;

    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}


.refund-policy-page
.policy-content
a:hover {
    text-decoration-thickness: 2px;
}


.refund-policy-page
.policy-content
a:focus-visible {
    outline:
        2px solid
        var(--refund-slate);

    outline-offset: 3px;

    border-radius: 3px;
}


/*
|--------------------------------------------------------------------------
| Tables
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content table {
    width: 100%;

    margin: 26px 0;

    overflow: hidden;

    border:
        1px solid
        var(--refund-border);

    border-radius: 12px;

    border-spacing: 0;
    border-collapse: separate;

    background: var(--refund-surface);
}


.refund-policy-page .policy-content th,
.refund-policy-page .policy-content td {
    padding: 14px 16px;

    border-right:
        1px solid
        var(--refund-border);

    border-bottom:
        1px solid
        var(--refund-border);

    text-align: left;
    vertical-align: top;

    line-height: 1.6;
}


.refund-policy-page
.policy-content
th:last-child,

.refund-policy-page
.policy-content
td:last-child {
    border-right: 0;
}


.refund-policy-page
.policy-content
tr:last-child
td {
    border-bottom: 0;
}


.refund-policy-page .policy-content th {
    background: var(--refund-surface-alt);

    color: var(--refund-slate);

    font-size: 0.82rem;
    font-weight: 750;
}


.refund-policy-page .policy-content td {
    color: var(--refund-text);

    font-size: 0.86rem;
}


/*
|--------------------------------------------------------------------------
| Blockquotes
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content blockquote {
    margin: 26px 0;

    padding: 20px 22px;

    border-left:
        3px solid
        var(--refund-slate);

    background: var(--refund-surface-alt);

    color: var(--refund-text);
}


.refund-policy-page
.policy-content
blockquote
> *:first-child {
    margin-top: 0;
}


.refund-policy-page
.policy-content
blockquote
> *:last-child {
    margin-bottom: 0;
}


/*
|--------------------------------------------------------------------------
| Horizontal Rules
|--------------------------------------------------------------------------
*/

.refund-policy-page .policy-content hr {
    margin: 38px 0;

    border: 0;

    border-top:
        1px solid
        var(--refund-border);
}


/*
|--------------------------------------------------------------------------
| Refund-Specific Managed Content Boxes
|--------------------------------------------------------------------------
|
| These are optional classes that can be used inside policy_documents
| content if required later.
|
*/

.refund-policy-page .refund-notice,
.refund-policy-page .refund-important,
.refund-policy-page .refund-warning,
.refund-policy-page .refund-example,
.refund-policy-page .refund-processing,
.refund-policy-page .refund-eligibility {
    margin: 26px 0;

    padding: 20px 22px;

    border:
        1px solid
        var(--refund-border);

    border-radius: 12px;

    background: var(--refund-surface-alt);
}


.refund-policy-page .refund-important {
    border-left:
        4px solid
        var(--refund-slate);
}


.refund-policy-page .refund-warning {
    border-left:
        4px solid
        var(--refund-slate-soft);

    background: #ffffff;
}


.refund-policy-page .refund-processing {
    background: #ffffff;
}


.refund-policy-page .refund-eligibility {
    border-color:
        var(--refund-border-strong);
}


.refund-policy-page .refund-notice > *:first-child,
.refund-policy-page .refund-important > *:first-child,
.refund-policy-page .refund-warning > *:first-child,
.refund-policy-page .refund-example > *:first-child,
.refund-policy-page .refund-processing > *:first-child,
.refund-policy-page .refund-eligibility > *:first-child {
    margin-top: 0;
}


.refund-policy-page .refund-notice > *:last-child,
.refund-policy-page .refund-important > *:last-child,
.refund-policy-page .refund-warning > *:last-child,
.refund-policy-page .refund-example > *:last-child,
.refund-policy-page .refund-processing > *:last-child,
.refund-policy-page .refund-eligibility > *:last-child {
    margin-bottom: 0;
}


/*
|--------------------------------------------------------------------------
| Refund Amount / Processing Information
|--------------------------------------------------------------------------
|
| Optional classes for managed policy HTML.
|
*/

.refund-policy-page .refund-amount,
.refund-policy-page .refund-time,
.refund-policy-page .refund-method {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    gap: 24px;

    margin: 18px 0;

    padding: 16px 18px;

    border:
        1px solid
        var(--refund-border);

    border-radius: 10px;

    background: #ffffff;
}


.refund-policy-page .refund-amount strong,
.refund-policy-page .refund-time strong,
.refund-policy-page .refund-method strong {
    flex: 0 0 auto;

    color: var(--refund-slate);
}


/*
|--------------------------------------------------------------------------
| Generated Policy Sections
|--------------------------------------------------------------------------
*/

.refund-policy-page
.policy-content
[data-refund-section] {
    position: relative;
}


.refund-policy-page
.policy-content
[data-refund-section].is-refund-section-active {
    color: var(--refund-slate);
}


/*
|--------------------------------------------------------------------------
| Section Anchor
|--------------------------------------------------------------------------
*/

.refund-policy-page .refund-section-anchor {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-left: 8px;

    color: var(--refund-light);

    text-decoration: none;

    font-size: 0.78em;
    font-weight: 700;

    opacity: 0;

    transform: translateY(-1px);

    transition:
        opacity 0.18s ease,
        color 0.18s ease;
}


.refund-policy-page
.policy-content
h2:hover
.refund-section-anchor,

.refund-policy-page
.policy-content
h2:focus-within
.refund-section-anchor {
    opacity: 1;
}


.refund-policy-page
.refund-section-anchor:hover {
    color: var(--refund-slate);
}


/*
|--------------------------------------------------------------------------
| Hash Highlight
|--------------------------------------------------------------------------
*/

.refund-policy-page
.policy-content
.refund-hash-highlight {
    animation:
        refund-section-highlight
        1.35s ease;
}


@keyframes refund-section-highlight {

    0% {
        background:
            rgba(15, 23, 42, 0.08);
    }

    100% {
        background:
            transparent;
    }

}


/*
|--------------------------------------------------------------------------
| Active Refund Link in Policy Sidebar
|--------------------------------------------------------------------------
*/

.refund-policy-page
.policy-sidebar
a[href*="refunds.php"] {
    color: #0f172a;

    font-weight: 750;
}


/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 760px) {

    .refund-policy-page .policy-content table {
        display: block;

        overflow-x: auto;

        white-space: nowrap;

        -webkit-overflow-scrolling: touch;
    }


    .refund-policy-page .policy-content h2 {
        margin-top: 38px;

        scroll-margin-top: 100px;
    }


    .refund-policy-page .policy-content h3,
    .refund-policy-page .policy-content h4 {
        scroll-margin-top: 100px;
    }


    .refund-policy-page .refund-section-anchor {
        opacity: 1;
    }


    .refund-policy-page .refund-amount,
    .refund-policy-page .refund-time,
    .refund-policy-page .refund-method {
        flex-direction: column;

        gap: 8px;
    }

}


/*
|--------------------------------------------------------------------------
| Small Mobile
|--------------------------------------------------------------------------
*/

@media (max-width: 520px) {

    .refund-policy-page .policy-content h2 {
        margin-top: 34px;
        margin-bottom: 15px;

        padding-top: 17px;
    }


    .refund-policy-page .policy-content ul,
    .refund-policy-page .policy-content ol {
        padding-left: 20px;
    }


    .refund-policy-page .policy-content th,
    .refund-policy-page .policy-content td {
        padding: 12px 14px;
    }


    .refund-policy-page .refund-notice,
    .refund-policy-page .refund-important,
    .refund-policy-page .refund-warning,
    .refund-policy-page .refund-example,
    .refund-policy-page .refund-processing,
    .refund-policy-page .refund-eligibility {
        padding: 17px 18px;
    }

}


/*
|--------------------------------------------------------------------------
| Reduced Motion
|--------------------------------------------------------------------------
*/

@media (prefers-reduced-motion: reduce) {

    .refund-policy-page .refund-section-anchor {
        transition: none;
    }


    .refund-policy-page
    .policy-content
    .refund-hash-highlight {
        animation: none;
    }

}