.alianzas-page{padding:16px}@media (min-width:640px){.alianzas-page{padding:20px}}@media (min-width:1024px){.alianzas-page{padding:24px}}.page-header h2{margin:0 0 6px;font-size:20px;font-weight:600}@media (min-width:640px){.page-header h2{font-size:22px}}@media (min-width:1024px){.page-header h2{font-size:24px;font-weight:700}}.page-header p{margin:0 0 14px;color:#6b7280;font-size:14px}@media (min-width:640px){.page-header p{margin:0 0 16px}}.search-bar-container{margin:8px 0 16px}@media (min-width:640px){.search-bar-container{margin:8px 0 20px}}.alianza-search{width:100%;max-width:420px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;outline:none;font-size:14px;background-color:#f7f7f7;color:#0f172a}.alianza-search:focus{border-color:#6c7bff;box-shadow:0 0 0 3px rgba(108,123,255,.15)}.alianzas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}@media (min-width:640px){.alianzas-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}}@media (min-width:1024px){.alianzas-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}}.alianza-card{position:relative;display:block;width:100%;aspect-ratio:3/4;border:0;padding:0;cursor:pointer;overflow:hidden;border-radius:16px;background:#0f172a;box-shadow:0 6px 18px rgba(2,6,23,.15);transition:transform .18s ease,box-shadow .18s ease}.alianza-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(2,6,23,.22)}.alianza-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.alianza-gradient{position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(0deg,rgba(0,0,0,.65),transparent);pointer-events:none}.alianza-name{position:absolute;left:12px;bottom:10px;color:#fff;font-size:16px;font-weight:700;letter-spacing:.2px;text-shadow:0 1px 2px rgba(0,0,0,.5)}@media (min-width:640px){.alianza-name{left:14px;bottom:12px;font-size:17px}}@media (min-width:1024px){.alianza-name{font-size:18px}}.empty-state{text-align:center;padding:48px 0;color:#6b7280}.loading-container{padding:32px;text-align:center}.loading-spinner{width:28px;height:28px;margin:0 auto 10px;border:3px solid #e5e7eb;border-top-color:#6c7bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}