/* diabec-footer.css — Shared footer styles (df-* grid system + disclaimer)
   Loaded after diabec-base.css. */

/* ========== FOOTER BASE ========== */
.footer {
    background: var(--deep-green, #2c3e1f);
    padding: 3rem 2rem;
    text-align: left !important;
}

.footer-disclaimer {
    max-width: 900px;
    margin: 0 auto 2rem;
    padding: 2rem 2.5rem;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: var(--radius-sm, 8px);
}

.footer-disclaimer p {
    font-size: 0.8rem;
    color: rgba(255,255,255,0.5);
    line-height: 1.7;
}

.footer-copyright {
    font-size: 0.82rem;
    color: rgba(255,255,255,0.4);
}

.footer a {
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* ========== DF GRID SYSTEM ========== */
.df-wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 2rem;
    text-align: left;
}

.df-grid {
    display: grid;
    grid-template-columns: 1.8fr 1.1fr 1fr 1fr 1fr;
    gap: 2.25rem;
    align-items: start;
    text-align: left;
}

.df-grid > div { text-align: left; }

.df-brand-name {
    font-family: 'Playfair Display', serif;
    font-size: 1.35rem;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.02em;
    margin: 0 0 0.9rem;
    line-height: 1;
}

.df-company {
    font-size: 0.72rem;
    line-height: 1.7;
    color: rgba(255,255,255,0.5);
    margin: 0;
    max-width: 280px;
}

.df-company strong {
    color: rgba(255,255,255,0.72);
    font-weight: 600;
    display: block;
    margin-bottom: 0.15rem;
    letter-spacing: 0.02em;
}

.df-company span { display: block; }

.df-h {
    font-family: 'Inter', sans-serif;
    font-size: 0.68rem;
    font-weight: 700;
    color: #c8a96e;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin: 0 0 0.9rem;
    line-height: 1;
}

.df-list { list-style: none; padding: 0; margin: 0; }
.df-list li { margin-bottom: 0.4rem; font-size: 0.8rem; line-height: 1.35; }
.df-list a { color: rgba(255,255,255,0.72); text-decoration: none; transition: color .15s; }
.df-list a:hover { color: #fff; }

.df-col-contact .df-h { text-align: left; }
.df-contact li { display: flex; align-items: center; gap: 0.5rem; color: rgba(255,255,255,0.72); }
.df-flag { font-size: 0.85rem; width: 1.2rem; display: inline-block; text-align: center; flex-shrink: 0; }
.df-cc { display: none; }

/* ========== FOOTER BOTTOM ========== */
.df-bottom {
    max-width: 1180px;
    margin: 2rem auto 0;
    padding: 1.1rem 2rem 0;
    border-top: 1px solid rgba(255,255,255,0.08);
    text-align: left;
}

.df-copy {
    font-size: 0.72rem;
    color: rgba(255,255,255,0.45);
    margin: 0 0 0.9rem;
    letter-spacing: 0.02em;
    text-align: left;
    font-weight: 400;
}

.df-disc-body {
    font-size: 0.66rem;
    line-height: 1.7;
    color: rgba(255,255,255,0.72);
    max-width: none;
}

.df-disc-body p { margin: 0 0 0.7rem; }
.df-disc-body p:last-child { margin: 0; }
.df-disc-body strong { color: rgba(255,255,255,0.82); font-weight: 600; }
.df-disc-body a { color: rgba(255,255,255,0.72); text-decoration: underline; }

.df-p65 { font-size: 0.66rem !important; line-height: 1.7 !important; color: rgba(255,255,255,0.68) !important; margin: 0.6rem 0 0 !important; }
.df-p65 .df-p65-warn { display: inline; font-weight: 700; color: #e8c57a; letter-spacing: 0.04em; margin-right: 0.2rem; }
.df-p65 a { color: rgba(255,255,255,0.78); text-decoration: underline; }

/* ========== FOOTER RESPONSIVE ========== */
@media (max-width: 900px) {
    .df-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
    .df-grid > div:first-child { grid-column: 1 / -1; }
    .df-bottom { flex-direction: column; align-items: flex-start; }

    .footer > div[style*="grid-template-columns"] {
        grid-template-columns: 1fr !important;
        text-align: center !important;
        gap: 1.5rem !important;
    }
}

@media (max-width: 520px) {
    .df-wrap { padding: 0 1.2rem; }
    .df-grid { grid-template-columns: 1fr; gap: 1.8rem; }

    /* Brand — compact centered block */
    .df-grid > div:first-child { text-align: center; padding-bottom: 1rem; border-bottom: 1px solid rgba(255,255,255,0.08); }
    .df-brand-name { font-size: 1.2rem; margin-bottom: 0.5rem; }
    .df-grid > div:first-child .df-company { margin: 0 auto; text-align: center; max-width: 260px; }
    .df-company { font-size: 0.68rem; line-height: 1.6; }

    /* Contact — hide emoji flags, show text codes */
    .df-col-contact { padding-bottom: 1rem; border-bottom: 1px solid rgba(255,255,255,0.08); }
    .df-flag { display: none !important; }
    .df-cc { display: inline !important; font-weight: 600; color: rgba(255,255,255,0.5); margin-right: 0.15rem; font-size: 0.65rem; letter-spacing: 0.03em; }
    .df-contact { display: grid !important; grid-template-columns: 1fr 1fr; gap: 0.4rem 0.8rem; }
    .df-contact li { font-size: 0.75rem; }
    .df-contact li:last-child { grid-column: 1 / -1; margin-top: 0.15rem; }

    /* Nav columns — 3-column compact grid */
    .df-grid > div:nth-child(3),
    .df-grid > div:nth-child(4),
    .df-grid > div:nth-child(5) { display: inline; }
    .df-grid { grid-template-columns: 1fr 1fr 1fr; gap: 1.2rem 0.5rem; }
    .df-grid > div:first-child { grid-column: 1 / -1; }
    .df-col-contact { grid-column: 1 / -1; }

    /* Headings + links smaller */
    .df-h { font-size: 0.6rem; margin-bottom: 0.5rem; letter-spacing: 0.12em; }
    .df-list li { font-size: 0.72rem; margin-bottom: 0.25rem; line-height: 1.4; }

    /* Bottom disclaimer */
    .df-bottom { padding: 0.8rem 0 0; margin-top: 1.2rem; }
    .df-copy { font-size: 0.65rem; }
    .df-disc-body { font-size: 0.65rem; line-height: 1.65; }
    .df-p65 { font-size: 0.65rem !important; }
}
