/*
 * PDFRaj Engine — proprietary.
 * Copyright (c) 2026 Aditya Raj. All rights reserved.
 * Author: Aditya Raj. Unauthorized copying, distribution, or resale of this
 * source, in whole or in part, is prohibited.
 */
/*
 * The site footer, in one place.
 *
 * These rules lived twice - once scoped to .pdfraj-home-v2 and once to
 * .pdfraj-tool-v2 - so the dark footer appeared on the homepage and the tool
 * pages and nowhere else. The designed pages added in portal issue #53 render
 * the same partial and came out with a pale, unstyled footer beside an
 * identical header, which is what the client spotted.
 *
 * Rooted at `footer.ft`, which is what _partials/tool/footer.php outputs, so it
 * needs no wrapper class and applies wherever that footer is rendered. Loaded
 * from the head partial on every page for the same reason.
 *
 * Collected with a brace-aware walk, so the responsive rules stay inside their
 * media queries. A flat regex pulled the narrow-screen single-column rule out
 * of its query and stacked the footer columns at every width.
 *
 * The base rules (container, link reset, logo box, box-sizing) come along too:
 * the footer leaned on them from the page stylesheet, and without them it
 * rendered full-bleed with underlined links.
 */
footer.ft, footer.ft * { box-sizing:border-box }
footer.ft img, footer.ft svg { display:block;max-width:100% }
footer.ft a { color:inherit;text-decoration:none }
footer.ft .wrap { width:100%;max-width:1216px;margin:0 auto;padding:0 40px }
footer.ft { background:#0B0E1A;padding:72px 0 36px }
footer.ft .ft-top { display:grid;grid-template-columns:240px 1fr;gap:80px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.07) }
footer.ft .ft-logo { font-family:var(--fd, system-ui, sans-serif);font-size:24px;font-weight:800;color:#fff;letter-spacing:-.5px;margin-bottom:14px }
footer.ft .ft-tag { font-family:var(--fb, system-ui, sans-serif);font-size:15px;color:rgba(255,255,255,.38);line-height:1.75;margin-bottom:26px }
footer.ft .ft-soc { display:flex;gap:10px }
footer.ft .soc-btn { width:38px;height:38px;background:rgba(255,255,255,.07);border-radius:var(--r8);display:flex;align-items:center;justify-content:center;transition:background .15s }
footer.ft .soc-btn:hover { background:rgba(255,255,255,.14) }
footer.ft .soc-btn svg { width:17px;height:17px;color:rgba(255,255,255,.55) }
footer.ft .ft-links { display:grid;grid-template-columns:repeat(4,1fr);gap:24px }
footer.ft .fc-h { font-family:var(--fd, system-ui, sans-serif);font-size:13px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.9px;text-transform:uppercase;margin-bottom:16px }
footer.ft .fc-l { display:flex;flex-direction:column;gap:10px }
footer.ft .fc-l a { font-family:var(--fb, system-ui, sans-serif);font-size:14px;color:rgba(255,255,255,.48);transition:color .15s }
footer.ft .fc-l a:hover { color:#fff }
footer.ft .ft-bot { display:flex;align-items:center;justify-content:space-between;padding-top:28px;flex-wrap:wrap;gap:14px }
footer.ft .ft-copy { font-family:var(--fb, system-ui, sans-serif);font-size:13px;color:rgba(255,255,255,.22) }
footer.ft .ft-leg { display:flex;gap:18px;flex-wrap:wrap }
footer.ft .ft-leg a { font-family:var(--fb, system-ui, sans-serif);font-size:13px;color:rgba(255,255,255,.28);transition:color .15s }
footer.ft .ft-leg a:hover { color:rgba(255,255,255,.65) }
@media(max-width:960px) {
	footer.ft .ft-top { grid-template-columns:1fr;gap:40px }
	footer.ft .ft-links { grid-template-columns:repeat(2,1fr) }
}
@media(max-width:600px) {
	footer.ft .wrap { padding:0 20px }
	footer.ft .ft-links { grid-template-columns:1fr }
}
footer.ft .ft-logo { display:flex;align-items:center;gap:9px }
footer.ft .ft-lm { width:32px;height:32px;background:var(--p);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0 }
footer.ft .ft-lm svg { width:18px;height:18px }
