:root { --cyh-vino:#4a1416; --cyh-oro:#c7a255; --cyh-crema:#f7f4ef; --cyh-borde:#e7dfd6; }
#colorlib-main .colorlib-about { padding-top:2.5em; }
.cofradias-filtros { padding:20px !important; background:var(--cyh-crema) !important; color:var(--cyh-vino) !important; border-top:3px solid var(--cyh-oro); }
.cofradias-filtros form > p { margin-bottom:17px; }
.cofradias-filtros input[type="text"], .cofradias-filtros input[type="number"], .cofradias-filtros select { width:100%; height:40px; margin-top:6px; padding:7px 10px; border:1px solid var(--cyh-borde); background:#fff; color:#333; }
.cofradias-filtros select:disabled { opacity:.52; cursor:not-allowed; }
.cofradias-filtros label:not(.cofradia-opcion) { display:block; margin-top:9px; font-size:11px; letter-spacing:.05em; }
.fundacion-filtro { margin:17px 0; padding:0; border:0; }
.fundacion-titulo { display:block; margin:0 0 6px; color:var(--cyh-vino); font-size:71%; font-variant-caps:small-caps; letter-spacing:normal; line-height:1.25; }
.fundacion-titulo b { font-weight:700; }
.fundacion-titulo small { color:inherit; font-size:82%; font-variant-caps:all-small-caps; font-weight:400; letter-spacing:.02em; }
.fundacion-numeros { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.fundacion-numeros label { margin-top:0 !important; }
#fundacion-slider { margin:23px 11px 13px; }
#fundacion-slider.noUi-horizontal { height:8px; border:0; background:#ded7cf; box-shadow:none; }
#fundacion-slider .noUi-connect { background:var(--cyh-oro); }
#fundacion-slider.noUi-horizontal .noUi-handle { width:22px; height:22px; right:-11px; top:-7px; border:2px solid var(--cyh-oro); border-radius:50%; background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.2); cursor:grab; }
#fundacion-slider .noUi-handle:before, #fundacion-slider .noUi-handle:after { display:none; }
#grupo-caracter, #grupo-grado { display:grid; gap:7px; margin-top:7px; }
.cofradia-opcion { display:grid !important; grid-template-columns:14px 26px minmax(0,1fr); align-items:center !important; column-gap:7px; width:100%; min-height:30px; margin:0 !important; padding:0 !important; font-size:11px !important; line-height:1.2 !important; cursor:pointer; }
.cofradia-opcion input { grid-column:1; width:14px; height:14px; margin:0; accent-color:#efb400; }
.cofradia-opcion img { grid-column:2; width:26px; height:26px; object-fit:contain; }
.cofradia-opcion span { grid-column:3; align-self:center !important; display:flex; align-items:center; min-width:0; min-height:26px; margin:0 !important; padding:0 !important; line-height:1.2 !important; }
.cofradia-opcion-texto { grid-template-columns:14px minmax(0,1fr) !important; column-gap:10px; min-height:30px; }
.cofradia-opcion-texto .cofradia-icono-vacio { display:none !important; }
.cofradia-opcion-texto span:last-child { grid-column:2 !important; }
.cofradias-filtros button { border:1px solid var(--cyh-borde); background:#fff; padding:5px 9px; color:var(--cyh-vino); }
.cofradias-filtros input[type="submit"] { margin-top:18px; min-height:42px; border:0; background:#efb400; color:#fff; font-weight:700; text-transform:uppercase; }
.cofradias-resultados { padding-left:16px !important; }
.cofradias-cabecera-resultados { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.cofradias-cabecera-resultados h3 { margin:0 0 18px; }
.cofradias-orden { display:flex; align-items:center; gap:8px; margin:0 0 18px; }
.cofradias-orden input { display:none; }
.cofradias-orden label { margin:0; color:var(--cyh-vino); font-size:11px; font-weight:600; white-space:nowrap; }
.cofradias-orden select { min-width:210px; height:36px; padding:5px 28px 5px 9px; border:1px solid var(--cyh-borde); background:#fff; color:var(--cyh-vino); }
.cofradias-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.cofradia-card { position:relative; min-width:0; border:1px solid var(--cyh-borde); background:#fff; transition:transform .18s ease,box-shadow .18s ease; }
.cofradia-card::before { content:""; position:absolute; top:-1px; left:-1px; right:-1px; height:4px; background:var(--caracter-strip,var(--cyh-oro)); }
.cofradia-card:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(74,20,22,.10); }
.cofradia-card a { display:block; height:100%; padding:15px; color:var(--cyh-vino); text-align:left; }
.cofradia-media { position:relative; display:block; min-height:96px; margin-bottom:12px; }
.cofradia-card a .cofradia-fundacion { position:absolute; z-index:2; top:0; right:0; display:block; color:#c99b24 !important; font-size:11px; font-weight:700; line-height:1; letter-spacing:.02em; white-space:nowrap; }
.cofradia-emblema { display:flex; align-items:center; justify-content:center; height:96px; background:transparent; }
.cofradia-emblema img { max-width:86px; max-height:82px; width:auto; height:auto; object-fit:contain; }
.cofradia-nombre { display:block; font-weight:700; line-height:1.35; }
.cofradia-ubicacion { display:block; margin-top:7px; color:#746762; font-size:88%; line-height:1.35; }
.cofradias-paginacion { grid-column:1/-1; display:flex; flex-wrap:wrap; justify-content:center; gap:7px; margin:18px 0 4px; }
.cofradias-paginacion input { display:none; }
.cofradias-paginacion button { min-width:36px; min-height:36px; padding:7px 11px; border:1px solid var(--cyh-borde); background:#fff; color:var(--cyh-vino); }
.cofradias-paginacion button:hover,.cofradias-paginacion button.activa { border-color:var(--cyh-oro); background:var(--cyh-oro); color:#fff; }
@media(max-width:1199px){.cofradias-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:991px){.cofradias-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.cofradias-resultados{padding-left:0!important}}
@media(max-width:767px){.cofradias-cabecera-resultados{display:block}.cofradias-orden{justify-content:space-between}.cofradias-orden select{min-width:0;flex:1}}
@media(max-width:560px){.cofradias-grid{grid-template-columns:1fr 1fr;gap:9px}.cofradia-card a{padding:10px}.cofradia-media{min-height:72px}.cofradia-emblema{height:72px}.cofradia-emblema img{max-width:64px;max-height:62px}.cofradia-fundacion{font-size:10px}.cofradia-nombre{font-size:12px}.cofradia-ubicacion{font-size:10px}}
