/* Tema "default" - modul Footer: layout pe coloane (logo/text legal, contact+distribuie, Legal,
   Newsletter), la fel ca in nadragaventura_vs. */

.pub-footer {
    background: var(--pub-header-footer-bg);
    border-top: 2px solid var(--pub-accent);
    margin-top: 0px;
}

/* NU .pub-wrap (latimea normala de continut) - un rand scurt de coloane (Brand/Contact/Orar/Legal/
   Social/Newsletter) nu are nevoie sa fie limitat la aceeasi latime ca restul paginii; foloseste tot
   ce ofera ecranul, ca sa treaca mai putine coloane pe randul urmator la wrap. flex-grow:0 pe
   .pub-footer-col mai jos face ca grupul sa nu se intinda sa umple tot spatiul - ramane compact si
   centrat (justify-content) indiferent cat de lata e latimea disponibila. */
.pub-footer-cols {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px;
    padding: 40px 16px;
}

/* flex-grow:0 (nu 1) - cu 5-6 coloane active (Brand/Contact/Orar/Legal/Social/Newsletter), oricum
   nu mai incap toate pe un singur rand, iar cu grow:1 ultima coloana ramasa singura pe randul
   urmator se intindea sa umple toata latimea (arata ca un bloc uriaș, disproportionat). Cu grow:0,
   fiecare coloana ramane la latimea ei naturala (240px), indiferent pe ce rand ajunge la wrap. */
.pub-footer-col {
    flex: 0 1 240px;
}

/* Coloana cu logo/nume magazin - continutul ei (o singura imagine sau un singur rand de text) e
   mai ingust decat restul coloanelor, deci ii ajunge o baza mai mica (200px in loc de 240px). */
.pub-footer-col--brand {
    flex: 0 1 200px;
}

/* Linie verticala de 1px intre coloane, cu fade la capete (gradient, nu culoare plina) - pozitionata
   la jumatatea gap-ului (16px = gap:32px / 2 de mai sus), ca sa cada exact la mijloc intre 2 coloane.
   Doar peste breakpoint-ul de mai jos: sub el, coloanele trec pe un singur rand (flex-wrap), iar o
   linie inaintea primei coloane de pe un rand nou n-ar avea sens (ar "atarna" fara nimic langa ea). */
.pub-footer-col:not(:first-child) {
    position: relative;
}
.pub-footer-col:not(:first-child)::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -16px;
    width: 1px;
    background: linear-gradient(to bottom, transparent, var(--pub-accent), transparent);
}
@media (max-width: 700px) {
    .pub-footer-col:not(:first-child)::before {
        display: none;
    }
}

.pub-footer-col strong {
    display: block;
    margin-bottom: 8px;
    color: var(--pub-text);
}

.pub-footer-col p,
.pub-footer-col div {
    color: var(--pub-text-muted);
    font-size: 13px;
    margin: 4px 0;
}

.pub-footer-col a {
    color: var(--pub-text-muted);
}

.pub-footer-col a:hover {
    color: var(--pub-text);
}

/* Link cu iconita + text (Widget contact, Social) - fara asta iconita (inline-flex) si textul
   se aliniaza dupa baseline, nu dupa centrul lor, si par decalate pe verticala. */
.pub-footer-icon-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.pub-footer-orar-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.pub-footer-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
    margin-bottom: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--pub-border);
}

.pub-footer-legal a {
    color: var(--pub-text-muted);
}

.pub-footer-legal a:hover {
    color: var(--pub-text);
}

.pub-footer-logo {
    height: 100px;
    width: auto;
    max-width: 200px;
    object-fit: contain;
    display: block;
    margin-bottom: 10px;
}

.pub-footer-brand {
    font-size: 16px;
}

.pub-footer-share-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    padding: 0;
    margin-top: 8px;
    font-size: 13px;
    color: var(--pub-text-muted);
    cursor: pointer;
}

.pub-footer-share-btn:hover,
.pub-footer-share-btn.is-copied {
    color: var(--pub-accent);
}

.pub-footer-share-icon {
    flex-shrink: 0;
}

.pub-newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
}

.pub-newsletter-form input[type="email"] {
    padding: 8px 10px;
    border: 1px solid var(--pub-border);
    border-radius: var(--pub-radius);
    font-size: 13px;
    background: var(--pub-bg);
    color: var(--pub-text);
}

.pub-newsletter-form button {
    padding: 8px 14px;
    border: none;
    border-radius: var(--pub-radius);
    background: var(--pub-accent);
    color: #fff;
    font-weight: 600;
    cursor: pointer;
    font-size: 13px;
    align-self: flex-start;
}

.pub-newsletter-form button:hover {
    background: var(--pub-accent-hover);
}

.pub-newsletter-status {
    font-size: 13px;
    margin: 4px 0 !important;
}

.pub-newsletter-status-ok {
    color: #2e7d32;
}

.pub-newsletter-status-error {
    color: var(--pub-danger);
}

.pub-footer-bottom {
    border-top: 1px solid var(--pub-border);
    padding: 16px;
    font-size: 13px;
    color: var(--pub-text-muted);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.pub-footer-cookie-settings {
    background: none;
    border: none;
    padding: 0;
    font-size: 13px;
    color: var(--pub-text-muted);
    text-decoration: underline;
    cursor: pointer;
}

.pub-footer-cookie-settings:hover {
    color: var(--pub-accent);
}
