/* Shiv shared footer — vanilla HTML/CSS/JS conversion of Footer4Col (React/Tailwind).
   No newsletter/subscribe block. Collaboration contact instead. */
.shiv-footer { background:#000000; color:#e2e8f0; margin-top:0; font-family:Inter,"Instrument Sans",system-ui,-apple-system,sans-serif; }
.shiv-footer a { text-decoration:none; }
.shiv-footer-collab { border-bottom:1px solid #e2e8f0; background:#ffffff; }
.shiv-footer-collab-inner { max-width:1280px; margin:0 auto; padding:28px 24px; display:grid; grid-template-columns:1.2fr .8fr; gap:24px; align-items:center; }
.shiv-footer-collab h2 { margin:0 0 8px; font-family:"Instrument Serif",Georgia,serif; font-weight:400; font-size:clamp(1.4rem,2.6vw,2rem); letter-spacing:-.03em; color:#0f172a; line-height:1.05; }
.shiv-footer-collab p { margin:0; color:#475569; font-size:14px; line-height:1.6; max-width:60ch; }
.shiv-footer-collab-btns { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.shiv-footer-btn { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; padding:0; border-radius:50%; border:1px solid #e2e8f0; background:#fff; color:#0f172a; box-shadow:0 2px 8px rgba(15,23,42,.06); transition:all .18s; }
.shiv-footer-btn:hover { background:rgba(139,124,246,.12); border-color:#8b7cf6; color:#7656c7; transform:scale(1.1); }
.shiv-footer-btn:focus-visible { outline:2px solid #8b7cf6; outline-offset:2px; }
.shiv-footer-btn svg { width:16px; height:16px; flex-shrink:0; }
.shiv-footer-btn.primary { background:#fff; border-color:#e2e8f0; }
.shiv-footer-btn.primary:hover { background:rgba(139,124,246,.12); border-color:#8b7cf6; color:#7656c7; }
.shiv-footer-collab-media { display:flex; align-items:center; justify-content:flex-end; }
.shiv-footer-collab-media img { width:150px; height:172px; object-fit:cover; border-radius:18px; border:1px solid rgba(15,23,42,.12); box-shadow:0 8px 24px rgba(15,23,42,.1); }
.shiv-footer-grid { max-width:1280px; margin:0 auto; padding:32px 24px 8px; display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:28px; }
.shiv-footer-brand { display:flex; align-items:center; gap:10px; }
.shiv-footer-brand img { width:auto; height:58px; border-radius:12px; object-fit:contain; background:#fff; padding:5px 10px; }
.shiv-footer-brand span { font-size:18px; font-weight:800; letter-spacing:-.02em; color:#fff; }
.shiv-footer-desc { margin:12px 0 0; color:#94a3b8; font-size:13.5px; line-height:1.65; max-width:34ch; }
.shiv-footer-social { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.shiv-footer-social a { display:inline-flex; align-items:center; gap:6px; padding:7px 11px; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); color:#e2e8f0; font-size:12px; font-weight:600; transition:all .18s; }
.shiv-footer-social a:hover { background:rgba(255,255,255,.16); color:#fff; }
.shiv-footer-social svg { width:14px; height:14px; }
.shiv-footer h4 { margin:0 0 12px; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:#fff; }
.shiv-footer ul { list-style:none; margin:0; padding:0; }
.shiv-footer ul li { margin:0 0 8px; }
.shiv-footer ul li a { color:#94a3b8; font-size:13.5px; transition:color .15s; }
.shiv-footer ul li a:hover { color:#fff; }
.shiv-footer-contact li { display:flex; gap:8px; align-items:flex-start; color:#94a3b8; font-size:13.5px; line-height:1.5; }
.shiv-footer-contact svg { width:15px; height:15px; flex-shrink:0; margin-top:2px; color:#b794ff; }
.shiv-footer-bottom { max-width:1280px; margin:20px auto 0; padding:14px 24px 18px; border-top:1px solid rgba(255,255,255,.1); display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.shiv-footer-bottom p { margin:0; font-size:12px; color:#64748b; }
@media(max-width:900px){ .shiv-footer-grid{ grid-template-columns:1fr 1fr; } .shiv-footer-collab-inner{ grid-template-columns:1fr; } .shiv-footer-collab-media{ justify-content:flex-start; } }
@media(max-width:600px){ .shiv-footer-grid{ grid-template-columns:1fr; gap:20px; padding:24px 16px 4px; } .shiv-footer-collab-inner{ padding:22px 16px; } .shiv-footer-bottom{ padding:12px 16px 16px; } .shiv-footer-collab-media img{ width:min(100%,320px); height:220px; } }
