/* Gestel.nu – footer. Altijd een donkere merkvlak, ook in licht thema. */

.gn-footer { background: var(--gn-footer-bg); color: rgba(255, 255, 255, .82); font-size: .9375rem; line-height: 1.55; }
.gn-footer a { color: #fff; text-decoration: none; }
.gn-footer a:hover { text-decoration: underline; }
.gn-footer :focus-visible { outline-color: #7fd9fb; }
.gn-footer__grid { display: grid; gap: 2rem; padding-top: 3rem; padding-bottom: 2.5rem; }
@media (min-width: 600px) { .gn-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .gn-footer__grid { grid-template-columns: 1.5fr 1fr 1fr 1.1fr; gap: 3rem; } }

.gn-footer .gn-logo__img { height: 36px; }
.gn-footer .gn-logo__img--licht { display: none !important; }
.gn-footer .gn-logo__img--donker { display: block !important; }
.gn-footer__slogan { margin: .75rem 0 1.25rem; color: rgba(255, 255, 255, .72); font-size: 1.0625rem; font-style: italic; }
.gn-footer__title { margin: 0 0 .75rem; color: #7fd9fb; font-size: .75rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.gn-footer__title:not(:first-child) { margin-top: 1.5rem; }
.gn-footer__list { margin: 0; padding: 0; list-style: none; display: grid; gap: .5rem; }
.gn-footer__label { display: block; font-size: .8125rem; color: rgba(255, 255, 255, .6); }

.gn-social { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.gn-social a { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 999px; background: rgba(255, 255, 255, .1); }
.gn-social a:hover { background: var(--gn-accent); color: var(--gn-on-accent); text-decoration: none; }

.gn-apps { display: flex; flex-wrap: wrap; gap: .5rem; }
.gn-app { display: inline-flex; align-items: center; gap: .6rem; padding: .5rem .9rem; border: 1px solid rgba(255, 255, 255, .3); border-radius: 12px; line-height: 1.1; font-weight: 700; }
.gn-app small { display: block; font-size: .6875rem; font-weight: 500; opacity: .8; }
.gn-footer .gn-btn--friend { background: var(--gn-accent); color: var(--gn-on-accent); }
.gn-footer .gn-btn--friend .gn-icon { color: var(--gn-on-accent); }
.gn-footer .gn-btn--friend:hover { text-decoration: none; }

.gn-footer__bottom { padding-top: 1.25rem; padding-bottom: 1.5rem; border-top: 1px solid rgba(255, 255, 255, .12); font-size: .8125rem; color: rgba(255, 255, 255, .6); }
.gn-footer__bottom p { margin: 0; }
