.santuari-document{min-width:0;margin:36px 0 44px}
.santuari-document-imatge{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;background:var(--paper-2);color:var(--ink);text-decoration:none!important}
.santuari-document-imatge img,.santuari-document-imatge svg{display:block;width:100%;height:auto;max-height:640px;object-fit:contain;filter:none}
.santuari-document-imatge svg{height:560px;padding:20px}
.acte .santuari-document-imatge{color:var(--ink)}
.santuari-amplia{position:absolute;right:12px;bottom:12px;display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border-radius:30px;background:#111d;color:#fff;font:13px var(--sans);transition:background .2s}
.santuari-document-imatge:hover .santuari-amplia{background:#111}
.santuari-document-imatge:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.santuari-document figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:16px;color:var(--ink-2);font:14px/1.65 var(--sans)}
.santuari-document figcaption strong{color:var(--ink);font-size:16px;font-weight:500}
.santuari-document-data{font-size:12px;letter-spacing:.035em;color:var(--ink-3)}
.acte .santuari-tractament{font:13px/1.65 var(--sans);color:var(--ink-3);margin-top:-20px}
.santuari-font,.santuari-font-inline{font-size:13px;text-underline-offset:4px}
.santuari-documents-parella{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:30px 0 40px}
.santuari-documents-parella .santuari-document{margin:0}
.santuari-documents-parella .santuari-document-imatge{height:330px}
.santuari-documents-parella img{height:100%;max-height:100%;object-fit:contain}
.santuari-relat-galeria{align-items:start;row-gap:36px}
.santuari-documents-parella.santuari-relat-galeria .santuari-document-imatge{height:auto}
.santuari-documents-parella.santuari-relat-galeria .santuari-document-imatge img{height:auto;max-height:none}
.santuari-ermita-galeria{grid-template-columns:1.05fr 1fr;gap:24px}
.santuari-ermita-galeria .santuari-document:first-child{grid-row:span 2}
@media(max-width:700px){.santuari-ermita-galeria{grid-template-columns:1fr}.santuari-ermita-galeria .santuari-document:first-child{grid-row:auto}}
@media(max-width:560px){.santuari-relat-galeria{grid-template-columns:1fr;gap:30px}}
.santuari-comparacio .santuari-document-imatge{height:auto;aspect-ratio:2/3;background:none}
.santuari-comparacio img{height:100%;object-fit:cover}
.santuari-arxiu{border-block:1px solid var(--rule);margin:48px 0}
.santuari-arxiu summary{cursor:pointer;padding:25px 0;list-style:none;font:500 20px/1.4 var(--sans);position:relative;padding-right:35px}
.santuari-arxiu summary::-webkit-details-marker{display:none}
.santuari-arxiu summary::after{content:'+';position:absolute;right:4px;top:27px;font-size:24px;font-weight:400}
.santuari-arxiu[open] summary::after{content:'−'}
.santuari-arxiu summary span{display:block;font:14px/1.5 var(--sans);color:var(--ink-3);margin-top:6px}
.santuari-arxiu-dins{padding:20px 0 24px}
.santuari-arxiu h3,.santuari-projecte h3,.santuari-verge-vestida h3{font:500 clamp(24px,3vw,32px)/1.2 var(--sans);letter-spacing:-.03em;margin:10px 0 20px}
.santuari-arxiu .eyebrow,.santuari-projecte .eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.12em;color:var(--ink-3);margin-bottom:16px}
.santuari-arxiu-entrada{color:var(--ink-2);font-size:16px!important;line-height:1.7!important}
.santuari-etapes{display:flex;gap:8px;padding:5px;background:var(--paper-2);border-radius:12px;margin-top:26px}
.santuari-etapes[hidden],.santuari-document[hidden]{display:none}
.santuari-etapes button{flex:1;border:0;border-radius:8px;background:transparent;padding:12px 6px;color:var(--ink-2);font:500 14px/1.4 var(--sans);cursor:pointer}
.santuari-etapes button span{display:block;font-size:11px;font-weight:400;opacity:.7;margin-top:3px}
.santuari-etapes button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.santuari-resultat{font-size:12px!important;color:var(--ink-3);margin:0!important}
.santuari-projecte,.santuari-verge-vestida{margin:56px 0}
.santuari-projecte-accions{display:flex;gap:24px;flex-wrap:wrap;margin:30px 0}
.santuari-projecte-accions a{font:14px/1.5 var(--sans);text-decoration:none!important;display:flex;flex-direction:column;gap:5px}
.santuari-projecte-accions a span{font-size:12px;color:var(--ink-3)}
.santuari-projecte-accions a:hover{opacity:.7}
dialog.santuari-visor{background:var(--paper);color:var(--ink);font-family:var(--sans)}
.santuari-visor-interior{height:100%;display:flex;flex-direction:column;min-height:0}
.santuari-visor-cap{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--rule);flex-shrink:0}
.santuari-visor-cap h2{font:500 18px/1.35 var(--sans);letter-spacing:-.02em;margin:4px 0 0}
.santuari-visor-data{font:12px/1.4 var(--sans);color:var(--ink-3);margin:0}
.santuari-visor button{font:13px/1.3 var(--sans);cursor:pointer;border:1px solid var(--rule);border-radius:8px;background:var(--paper-2);color:var(--ink);min-height:40px;padding:8px 12px}
.santuari-visor button:hover{border-color:var(--ink-3)}
.santuari-visor button:disabled{opacity:.35;cursor:default}
.santuari-visor button:focus-visible,.santuari-visor a:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.santuari-visor .santuari-visor-tanca{display:grid;place-items:center;width:44px;height:44px;padding:0;flex-shrink:0;line-height:1;background:transparent}
.santuari-visor-eines{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 24px;flex-wrap:wrap;border-bottom:1px solid var(--rule);flex-shrink:0}
.santuari-visor-eines>div{display:flex;gap:6px;align-items:center}
.santuari-visor-eines .santuari-visor-versio[hidden]{display:none}
.santuari-visor-comptador{font-size:12px;color:var(--ink-3);min-width:44px;text-align:center}
.santuari-visor-llenc{position:relative;flex:1;min-height:100px;overflow:auto;overscroll-behavior:contain;background:var(--paper-2);padding:20px;scrollbar-gutter:stable}
.santuari-visor-suport{margin:auto;display:block;max-width:none}
.santuari-visor-suport img,.santuari-visor-suport svg{display:block;width:100%;height:auto;max-width:none;max-height:none;filter:none}
.santuari-visor-estat{font-size:14px;padding:24px;text-align:center;color:var(--ink-2)}
.santuari-visor-peu{padding:16px 24px 20px;border-top:1px solid var(--rule);max-height:28%;overflow:auto;flex-shrink:0}
.santuari-visor-peu p{font:13px/1.65 var(--sans);margin:0 0 8px;color:var(--ink-2)}
.santuari-visor-peu .santuari-visor-credit{font-size:12px;color:var(--ink-3)}
.santuari-visor-peu a{font-size:13px;text-underline-offset:4px;color:var(--ink)}
@media(max-width:700px){
 .santuari-documents-parella{gap:16px}.santuari-documents-parella .santuari-document-imatge{height:240px}
 .santuari-comparacio .santuari-document-imatge{height:auto}
 .santuari-document-imatge svg{height:420px;padding:14px}
 .santuari-amplia{right:8px;bottom:8px;font-size:11px;padding:6px 9px}
 .santuari-document figcaption{font-size:12px}.santuari-document figcaption strong{font-size:14px}
 .santuari-document{margin-block:28px}.santuari-document-imatge img{max-height:520px}
 .santuari-visor-cap{padding:16px}.santuari-visor-cap h2{font-size:16px}
 .santuari-visor-eines{padding:8px 12px;gap:8px}.santuari-visor button{min-height:44px}
 .santuari-visor-peu{padding:12px 16px max(16px,env(safe-area-inset-bottom));max-height:30%}
 .santuari-visor-llenc{padding:12px}.santuari-visor-eines .santuari-visor-versio{width:100%}
 .santuari-visor-versio button{flex:1}
}
@media(max-width:420px){#santuari-fotos{grid-template-columns:1fr}#santuari-fotos .santuari-document-imatge{height:300px}}

/* Expanded backgrounds fill the three Madonna frames at every viewport size. */
.santuari-document:is([data-etapa="talla"],[data-etapa="talla-vestida"]) .santuari-document-imatge{height:auto;aspect-ratio:1}
.santuari-document:is([data-etapa="talla"],[data-etapa="talla-vestida"]) .santuari-document-imatge img{width:100%;height:100%;max-height:none;object-fit:cover}
.santuari-document-imatge[data-reframed],.santuari-visor-suport[data-reframed]{aspect-ratio:1;overflow:hidden}
[data-reframed]>img{transform:scale(var(--santuari-frame-scale));transform-origin:center top}
.santuari-document-imatge[data-extracte]{display:block;border-radius:6px}
.santuari-document-imatge[data-extracte] .santuari-amplia{display:none}
.santuari-document-imatge[data-extracte] img{position:absolute;max-width:none;max-height:none;height:auto;object-fit:initial}
.crim-document .santuari-document-imatge:not([data-extracte]) img{max-height:none}
.santuari-document-imatge[data-negatiu-positiu] img,.santuari-visor-suport[data-negatiu-positiu] img{filter:invert(1)}
.crim-execucions .santuari-document-imatge{height:auto;aspect-ratio:3/2}
.crim-execucions .santuari-document-imatge img{height:100%;object-fit:contain}
.crim-execucions .santuari-amplia{font-size:11px;padding:6px 9px;right:8px;bottom:8px}
.santuari-interiors .santuari-document-imatge{height:auto;aspect-ratio:604/523}
.santuari-interiors .santuari-document-imatge:not([data-cropped]) img{height:100%;object-fit:cover}
.santuari-document-imatge[data-cropped],.santuari-visor-suport[data-cropped]{display:block;position:relative;overflow:hidden}
.santuari-document-imatge[data-cropped] img,.santuari-visor-suport[data-cropped] img{position:absolute;max-width:none;max-height:none;height:auto;object-fit:initial}
@media(max-width:600px){.santuari-interiors{grid-template-columns:1fr;gap:28px}}

/* One quiet moving image; the historical photographs remain in the viewer. */
.santuari-video-imatge{position:relative;overflow:hidden;border-radius:12px;background:var(--paper-2)}
.santuari-video-imatge video{display:block;width:100%;height:auto;aspect-ratio:1544/1340;object-fit:contain}
@media(min-width:900px){
 .santuari-video-imatge{aspect-ratio:16/9}
 .santuari-video-imatge video{height:100%;aspect-ratio:16/9;object-fit:cover;object-position:50% 18%}
}
.santuari-video-accions{position:absolute;inset:auto 12px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.santuari-video-accions button,.acte .santuari-video-amplia{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 15px;border:1px solid #ffffff30;border-radius:30px;background:#111d;color:#fff;font:13px/1.2 var(--sans);text-decoration:none;cursor:pointer;pointer-events:auto;backdrop-filter:blur(10px);transition:background .2s}
.santuari-video-amplia{margin-left:auto}
.santuari-video-accions button:hover,.acte .santuari-video-amplia:hover{background:#111;color:#fff;text-decoration:none}
.santuari-video-accions :is(button,a):focus-visible{outline:2px solid white;outline-offset:3px}
.santuari-video-accions button:disabled{cursor:default}
.santuari-visor-suport video{display:block;width:100%;height:auto;max-width:none}
.santuari-visor-documents{display:flex;gap:6px;padding:12px 24px;border-bottom:1px solid var(--rule);flex-shrink:0;overflow-x:auto}
.santuari-visor-documents button{border-color:transparent;background:transparent;white-space:nowrap}
.santuari-visor-documents button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.santuari-visor [hidden],.santuari-video-accions [hidden]{display:none}
@media(max-width:700px){
 .santuari-video-accions{inset:auto 8px 8px;gap:8px}
 .santuari-video-accions button,.acte .santuari-video-amplia{padding:9px 12px;font-size:12px}
 .santuari-visor-documents{padding:8px 12px;gap:4px}
 .santuari-visor-documents button{padding:8px 10px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.santuari-video-accions :is(button,a){transition:none}}
