/* Footer Style 15 — Slash Columns */
.epf-15 {
    --epf-bg: #fcfcfd;
    --epf-fg: #0f172a;
    --epf-muted: #64748b;
    --epf-text: #334155;
    --epf-line: #f1f5f9;
    --epf-dot: #e2e8f0;
    --epf-accent: #f40035;
    --epf-on-accent: #ffffff;
    --epf-soc-bg: #0b0f19;
    --epf-soc-fg: #ffffff;
    padding: 80px 0 60px;
    overflow: hidden;
    font-family: 'Inter', var(--font-body, sans-serif);
    box-shadow: inset 0 1px 0 var(--epf-line);
    background-image:
        linear-gradient(to right,
            color-mix(in srgb, var(--epf-bg) 90%, transparent) 0%,
            color-mix(in srgb, var(--epf-bg) 50%, transparent) 50%,
            color-mix(in srgb, var(--epf-bg) 80%, transparent) 100%),
        radial-gradient(var(--epf-dot) 1px, transparent 1px);
    background-size: auto, 30px 30px;
}
[data-theme="dark"] .epf-15 {
    --epf-bg: #0e1117;
    --epf-fg: #f1f5f9;
    --epf-muted: #94a3b8;
    --epf-text: #cbd5e1;
    --epf-line: rgba(255, 255, 255, .08);
    --epf-dot: rgba(255, 255, 255, .13);
    --epf-soc-bg: #f1f5f9;
    --epf-soc-fg: #0b0f19;
}

.epf-15__grid { display: flex; gap: 40px; align-items: flex-start; }
.epf-15__brand { flex: 1.5 1 0; min-width: 0; }
.epf-15__col { flex: 1 1 0; min-width: 0; }
.epf-15__end { flex: 1.2 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-end; text-align: right; }

/* Brand */
.epf-15__logo { margin-bottom: 20px; }
.epf-15__wordmark {
    display: inline-block; margin-bottom: 20px;
    font-size: 32px; font-weight: 800; letter-spacing: -1px; line-height: 1.1;
    color: var(--epf-fg);
}
.epf-15__wordmark span { color: var(--epf-accent); font-style: italic; }
.epf-15__wordmark:hover { color: var(--epf-fg) !important; }
.epf-15__desc { padding-right: 20px; font-size: 14.5px; line-height: 1.7; color: var(--epf-text); }
.epf-15__desc strong, .epf-15__desc b { color: var(--epf-fg); }

/* Link columns with accent slashes */
.epf-15__title { display: flex; align-items: center; margin-bottom: 25px !important; font-size: 16px; font-weight: 700; }
.epf-15__title::after {
    content: "//"; margin-left: 8px;
    font-size: 18px; font-weight: 800; font-style: italic; letter-spacing: -1px; line-height: 1;
    color: var(--epf-accent);
}
.epf-15__links li { display: block; }
.epf-15__links li + li { margin-top: 12px; }
.epf-15__links a { display: inline-flex; align-items: center; font-size: 14.5px; font-weight: 600; line-height: 1.2; }

/* Copyright + socials */
.epf-15 .epf-copy { margin-bottom: 25px; font-size: 13.5px; line-height: 1.6; color: var(--epf-muted); }
.epf-15__socials { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.epf-15__socials .epf-social {
    width: 36px; height: 36px; font-size: 16px; border-radius: 4px;
    background: var(--epf-soc-bg); color: var(--epf-soc-fg);
}
.epf-15__socials .epf-social:hover { background: var(--epf-accent); color: var(--epf-on-accent); }

/* Back to top peeks from the bottom edge */



@media (max-width: 992px) {
    .epf-15__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 50px 40px; }
    .epf-15__brand { grid-column: 1 / -1; }
    .epf-15__end { align-items: flex-start; text-align: left; }
    .epf-15__socials { justify-content: flex-start; }
}
@media (max-width: 600px) {
    .epf-15 { padding-top: 56px; }
    .epf-15__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
    .epf-15__desc { padding-right: 0; }
    
}
