.vpmp{color:#26392e;font-family:inherit;container-type:inline-size;margin:24px 0;--vpmp-line:#dfe6d7;overflow-wrap:anywhere}.vpmp *{box-sizing:border-box}.vpmp a{color:var(--vpmp-green);text-decoration:none}.vpmp a:hover{text-decoration:underline}.vpmp h2,.vpmp h3,.vpmp input,.vpmp button,.vpmp select{font-family:inherit}.vpmp-heading h2{font-size:clamp(28px,4vw,44px);color:var(--vpmp-green);margin:0 0 10px;line-height:1.2}.vpmp-heading p{color:#6b7d62;margin:0 0 24px}.vpmp-search{display:flex;align-items:center;gap:14px;background:white;border:1px solid var(--vpmp-line);border-radius:9px;padding:7px 7px 7px 18px}.vpmp-search>i{color:#829563}.vpmp .vpmp-search input{width:100%;min-width:0;flex:1;border:0;background:transparent;box-shadow:none;margin:0;padding:10px 0;color:inherit}.vpmp button{cursor:pointer}.vpmp .vpmp-primary{border:0;background:var(--vpmp-green);color:#fff;border-radius:6px;padding:12px 22px;min-height:44px;font-weight:600;line-height:1.4}.vpmp .vpmp-primary:hover{filter:brightness(1.15)}.vpmp-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:28px;margin-top:26px}.vpmp-filters{border:1px solid var(--vpmp-line);border-radius:9px;background:#f8faf3}.vpmp-filters summary{cursor:pointer;padding:17px;font-weight:600;color:var(--vpmp-green);list-style:none;display:flex;align-items:center;gap:10px}.vpmp-filters summary::after{content:'+';margin-left:auto}.vpmp-filters[open] summary::after{content:'−'}.vpmp-filter-body{padding:0 17px 17px}.vpmp fieldset{border:0;border-top:1px solid var(--vpmp-line);padding:18px 0 10px;margin:0;min-width:0}.vpmp legend{float:none;font-size:14px;font-weight:600;width:auto;padding:0 5px 0 0;color:var(--vpmp-green);margin:0}.vpmp-check{display:flex;gap:8px;align-items:center;margin:0;min-height:37px;font-size:13px;cursor:pointer}.vpmp-check input{width:17px;height:17px;flex:none;accent-color:var(--vpmp-green);margin:0}.vpmp-check span{flex:1}.vpmp-check small{color:#718364}.vpmp .vpmp-apply{width:100%;margin-top:12px}.vpmp-clear{display:block;text-align:center;padding:13px;font-size:12px}.vpmp-hint{font-size:11px;color:#718364;line-height:1.5;margin:4px 0}.vpmp-results{min-width:0}.vpmp-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--vpmp-line);padding-bottom:15px;margin-bottom:20px;flex-wrap:wrap}.vpmp-toolbar p{margin:0;font-size:13px;color:#64775a}.vpmp-sort{display:flex;align-items:center;gap:7px;font-size:12px;flex-wrap:wrap}.vpmp-sort label{margin:0}.vpmp .vpmp-sort select{width:auto;max-width:200px;background:white;color:var(--vpmp-green);border:1px solid var(--vpmp-line);border-radius:5px;padding:8px;font-size:12px;margin:0}.vpmp-sort button{border:1px solid var(--vpmp-line);padding:8px;border-radius:5px;color:var(--vpmp-green);background:white}.vpmp-cards{display:grid;grid-template-columns:repeat(var(--vpmp-columns),minmax(0,1fr));gap:22px 18px}.vpmp-card{border:1px solid var(--vpmp-line);border-radius:10px;background:white;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s}.vpmp-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #16301b14}.vpmp-photo{position:relative;display:block;aspect-ratio:1.5;background:#eff4e7;overflow:hidden}.vpmp-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.vpmp-card:hover img{transform:scale(1.035)}.vpmp-badge{position:absolute;left:12px;bottom:12px;right:12px;width:fit-content;max-width:calc(100% - 24px);background:var(--vpmp-accent);color:#203410;border-radius:5px;padding:7px 10px;font-size:12px;font-weight:700;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vpmp-card-body{padding:18px;display:flex;flex-direction:column;flex:1}.vpmp-meta{font-size:11px;line-height:1.6;color:#738568;margin:0 0 9px}.vpmp-card h3{font-size:20px;line-height:1.3;margin:0 0 9px;color:var(--vpmp-green)}.vpmp-establishment{font-size:14px;font-weight:600;margin:0 0 12px}.vpmp-description{font-size:13px;color:#697c60;line-height:1.7;margin:0 0 14px}.vpmp-dates{font-size:11px;line-height:1.7;color:#738568;margin:0 0 16px}.vpmp-detail{margin-top:auto;padding:14px 0 0;border-top:1px solid var(--vpmp-line);display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;min-height:44px}.vpmp-detail i{color:#7a9639}.vpmp-pagination{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:26px}.vpmp-pagination a{display:grid;place-items:center;min-width:40px;min-height:42px;padding:7px 12px;border:1px solid var(--vpmp-line);border-radius:5px;font-size:13px}.vpmp-pagination a[aria-current]{background:var(--vpmp-green);color:white}.vpmp-empty{border:1px solid var(--vpmp-line);border-radius:9px;text-align:center;padding:55px 20px}.vpmp-empty>i{font-size:30px;color:#8ca257}.vpmp-empty p{margin:18px 0;font-size:16px}.vpmp-notice{padding:15px;border:1px solid #e5d1a0;background:#fff9e7;font-size:13px;margin:15px 0}.vpmp-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.vpmp :is(a,button,input,summary,select):focus-visible{outline:3px solid var(--vpmp-accent);outline-offset:3px}
@container (max-width:1050px){.vpmp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:740px){.vpmp-layout{grid-template-columns:minmax(0,1fr)}.vpmp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.vpmp-search{gap:8px}.vpmp .vpmp-primary{padding:12px 15px}}
@container (max-width:540px){.vpmp-cards{grid-template-columns:minmax(0,1fr)}.vpmp-search>i{display:none}.vpmp-toolbar{align-items:flex-start;flex-direction:column}.vpmp-card h3{font-size:23px}}
@media(max-width:740px){.vpmp-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:540px){.vpmp-cards{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.vpmp *{transition:none!important}}

.vpmp[data-columns="1"] .vpmp-cards{grid-template-columns:minmax(0,1fr)}

/* 1.1.0: categoría y acceso sobre la fotografía. */
.vpmp .vpmp-photo-wrap {
    position: relative;
}
.vpmp .vpmp-photo-badges {
    position: absolute;
    inset: 12px 12px auto;
    pointer-events: none;
    z-index: 2;
}
.vpmp .vpmp-category-badge,
.vpmp .vpmp-audience-badge {
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 9px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.94);
    color: #111111;
    font-size: 13px;
    line-height: 1.4;
}
.vpmp .vpmp-audience-badge {
    align-self: flex-start;
    margin: 0 0 12px;
    background: #edf3df;
    color: #334523;
    font-weight: 700;
}
.vpmp .vpmp-establishment a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}
.vpmp .vpmp-photo-detail {
    position: absolute;
    bottom: 14px;
    left: 14px;
    display: flex;
    padding: 2.5px;
    border: 1px solid #ffffff;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    box-shadow: 0 2px 8px #0002;
    text-decoration: none;
    z-index: 3;
}
.vpmp .vpmp-photo-switch {
    display: block;
    position: relative;
    width: 54px;
    height: 24px;
}
.vpmp .vpmp-photo-switch-knob {
    position: absolute;
    top: 0;
    left: 0;
    display: grid;
    place-items: center;
    width: 30px;
    height: 24px;
    border-radius: 999px;
    background: #ffffff;
    color: #3e532a;
    transition: transform 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}
.vpmp .vpmp-photo-detail:hover .vpmp-photo-switch-knob,
.vpmp .vpmp-photo-detail:focus-visible .vpmp-photo-switch-knob {
    transform: translateX(24px);
    background: var(--vpmp-accent);
    color: #ffffff;
}
.vpmp .vpmp-photo-switch-knob svg {
    width: 14px;
    height: 14px;
}
