
/* ============================================================
   Site footer (template-parts/site-footer.php)
   Palette = Astra global colors already loaded site-wide.
   ============================================================ */
.df-footer{--df-bg:var(--ast-global-color-1,#03431a);--df-bg-deep:#022f12;--df-gold:var(--ast-global-color-0,#e0b337);--df-text:#e6efe8;--df-muted:#b3c6b8;--df-line:rgba(255,255,255,.14);background:var(--df-bg);color:var(--df-text);font-size:.9375rem;line-height:1.75;border-top:3px solid var(--df-gold)}
.df-footer *,.df-footer *::before,.df-footer *::after{box-sizing:border-box}
.df-footer a{color:var(--df-text);text-decoration:none;transition:color .15s}
.df-footer a:hover{color:var(--df-gold)}
.df-footer a:focus-visible{outline:3px solid var(--df-gold);outline-offset:3px;border-radius:4px}
.df-footer p,.df-footer ul,.df-footer h2,.df-footer address{margin:0;padding:0}
.df-footer ul{list-style:none}
.df-wrap{max-width:1200px;margin-inline:auto;padding-inline:1.25rem}
.df-grid{display:grid;gap:2.5rem 2rem;padding-block:3rem 2.5rem}
@media(min-width:640px){.df-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.df-grid{grid-template-columns:1.25fr 1.4fr .9fr 1.1fr;gap:2rem 3rem}}
.df-col{display:grid;gap:.9rem;align-content:start}
.df-title{font-size:.8125rem;font-weight:700;letter-spacing:.06em;color:var(--df-gold);text-transform:uppercase;line-height:1.4;display:flex;align-items:center;gap:.6rem}
.df-title::after{content:"";flex:1;max-width:2.5rem;height:1px;background:var(--df-line)}
/* brand */
.df-logo{display:inline-block;background:#fff;border-radius:8px;padding:.5rem .75rem;justify-self:start}
.df-logo img{display:block;width:160px;height:auto}
.df-tagline{color:var(--df-muted);font-size:.9rem;max-width:32ch}
.df-label{font-size:.8125rem;color:var(--df-muted)}
.df-social{display:flex;flex-wrap:wrap;gap:.5rem}
.df-social a{display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--df-line);border-radius:50%;color:var(--df-text)}
.df-social a:hover{border-color:var(--df-gold);color:var(--df-gold)}
.df-social svg,.df-btn svg,.df-clinics address a svg{width:1.25rem;height:1.25rem;flex:none}
/* clinics */
.df-clinics{display:grid;gap:1rem}
.df-clinics address{font-style:normal;display:grid;gap:.15rem;padding-inline-start:.9rem;border-inline-start:2px solid var(--df-line)}
.df-clinics strong{color:#fff;font-size:1rem}
.df-clinics span{color:var(--df-muted);font-size:.9rem}
.df-clinics address a{display:inline-flex;align-items:center;gap:.35rem;min-height:2.5rem;font-size:.875rem;font-weight:600;color:var(--df-gold);justify-self:start}
.df-clinics address a svg{width:1rem;height:1rem}
/* links */
.df-links{display:grid;gap:.15rem}
.df-links a{display:inline-flex;align-items:center;min-height:2.5rem;color:var(--df-text)}
.df-links .menu-item{margin:0}
.df-links .current-menu-item>a{color:var(--df-gold)}
/* booking */
.df-book p{color:var(--df-muted);font-size:.9rem}
.df-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3rem;padding:.6rem 1.1rem;border-radius:6px;font-weight:700;background:var(--df-gold);color:#14261C;border:2px solid var(--df-gold);font-variant-numeric:tabular-nums;justify-self:start}
.df-btn:hover{background:#f0c95a;border-color:#f0c95a;color:#14261C}
.df-btn--ghost{background:transparent;color:#fff;border-color:var(--df-line)}
.df-btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.06);color:#fff}
.df-minor{display:grid;gap:.2rem;font-size:.875rem}
.df-minor a{display:inline-flex;align-items:center;min-height:2.5rem;color:var(--df-muted);text-decoration:underline;text-underline-offset:.2em}
.df-minor a:hover{color:var(--df-gold)}
/* bottom bar */
.df-bottom{background:var(--df-bg-deep);border-top:1px solid var(--df-line);font-size:.8125rem;color:var(--df-muted)}
.df-bottom__in{display:grid;gap:.9rem;padding-block:1.25rem}
.df-supervision{max-width:70ch}
.df-legal{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem}
.df-legal__links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.df-legal__links a,.df-lang a{display:inline-flex;align-items:center;min-height:2.25rem;color:var(--df-muted);text-decoration:underline;text-underline-offset:.2em}
.df-legal__links a:hover,.df-lang a:hover{color:var(--df-gold)}
.df-lang{margin-inline-start:auto}
.df-lang ul{display:flex;gap:1rem}
.df-lang .current-lang a{color:#fff;text-decoration:none;font-weight:700}
@media(max-width:639px){.df-lang{margin-inline-start:0}.df-bottom__in{padding-block-end:5.5rem}}
/* floating WhatsApp (replaces the 300x60 .floating image button) */
.df-wa{position:fixed;inset-block-end:1.25rem;inset-inline-end:1.25rem;z-index:9999;display:inline-flex;align-items:center;gap:.6rem;min-width:3.5rem;height:3.5rem;padding:0 1.1rem;border-radius:999px;background:#25d366;color:#fff;font-weight:700;font-size:.9375rem;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.df-wa svg{width:1.6rem;height:1.6rem;flex:none;fill:currentColor}
.df-wa:hover{background:#1ebe5b;color:#fff}
.df-wa:focus-visible{outline:3px solid #14261C;outline-offset:3px}
@media(max-width:639px){.df-wa{padding:0;width:3.5rem;justify-content:center}.df-wa span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
@media print{.df-wa{display:none}}
@media(prefers-reduced-motion:reduce){.df-footer a{transition:none}}
