/* ── Banner full-width lipit de navbar, imagine estompată spre TRANSPARENT (fade) ── */
.psy-banner {
    position: relative; left: 50%; margin-left: -50vw; margin-right: -50vw;
    width: 100vw; max-width: none; margin-top: 60px; min-height: 300px;
    display: flex; align-items: center; justify-content: center;
    padding: 70px 28px 42px; background: transparent; overflow: hidden; margin-bottom: 30px;}
.psy-banner > * { position: relative; z-index: 2;}
.psy-banner-title {
    position: absolute; top: 18px; left: 32px; margin: 0; z-index: 2;
    font-size: 1.3rem; font-weight: 700; color: var(--text);}
.psy-banner .search-container-spectacular { margin: 0; width: min(560px, 100%);}
@media (max-width: 768px) { .psy-banner { margin-top: 0;} }
@media (max-width: 600px) {
    .psy-banner { min-height: 240px; padding: 46px 16px 32px;}
    .psy-banner-title { top: 14px; left: 16px; font-size: 1.05rem;}
}
@media (max-width: 480px) { .psy-banner { margin-top: 4px;} }

/* ── Bara de căutare (identică cu psihologi) ── */
.search-container-spectacular {
    position: relative; background: var(--glass); border: 2px solid var(--border); border-radius: 25px;
    padding: 12px 20px; display: flex; align-items: center; gap: 12px;
    transition: all 0.3s ease;}
.search-container-spectacular:focus-within {
    border-color: var(--primary);}
.search-icon-spectacular { font-size: 1.2rem; color: var(--primary);}
.search-input-spectacular { flex: 1; background: transparent; border: none; color: var(--text); font-size: 1rem; outline: none; -webkit-appearance: none; appearance: none;}
/* Fara "patrat" interior la focus: inelul global :focus-visible (base.css) e mutat
   pe pilula intreaga prin :focus-within de mai sus; input-ul ramane curat. */
.search-input-spectacular:focus,
.search-input-spectacular:focus-visible {
    outline: none !important; outline-offset: 0 !important; box-shadow: none !important;}
.search-input-spectacular::-webkit-search-cancel-button,
.search-input-spectacular::-webkit-search-decoration { -webkit-appearance: none; appearance: none;}
.search-input-spectacular::placeholder { color: var(--muted);}
.search-clear-btn {
    padding: 8px 16px; background: rgba(110, 193, 255, 0.15); border: 1px solid var(--primary);
    border-radius: 15px; color: var(--primary); font-weight: 600; cursor: pointer; transition: all 0.3s ease; font-size: 0.9rem;}
.search-clear-btn:hover { background: rgba(110, 193, 255, 0.25);}
@media (max-width: 480px) {
    .search-container-spectacular { background: rgba(20, 30, 50, 0.92) !important;}
}
