.compact-reading>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;min-height:44px;list-style:none;font-weight:700;font-size:.9rem;color:#dfcca7;padding:9px 0;margin:8px 0 0}
.compact-reading>summary::-webkit-details-marker{display:none}
.compact-reading>summary::after{content:'+';font-weight:500;font-size:1.5rem;line-height:1;flex:none}
.compact-reading[open]>summary::after{content:'−'}
.compact-reading[open]>summary{margin-bottom:15px}
.reading-body p{line-height:1.8}.reading-preview{margin-bottom:12px}
.testimonial-card:has(>details[open])>.reading-preview,.curiosity-copy:has(>details[open])>.reading-preview{display:none}
.testimonials .compact-reading>summary{color:#725e2e}
.curiosity-list{gap:30px 32px;align-items:start}
.curiosity-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;align-items:start;padding:20px 0;border-top:1px solid #c3a36633}
.curiosity-card .curiosity-sketch{width:120px;max-width:120px;margin:0;aspect-ratio:1;border-radius:5px}
.curiosity-card .curiosity-copy{padding:0;min-width:0}
.curiosity-copy h3{font-size:1.1rem;line-height:1.4;margin:0 0 10px}
.curiosity-copy p{font-size:.95rem;line-height:1.75;padding:0;margin:0 0 12px}
.curiosity-copy .compact-reading>summary{margin:0;padding:6px 0;font-size:.9rem}
.neighborhood-preview{max-width:760px;color:#bdc4bd;font-size:1rem;line-height:1.8;margin-bottom:15px}
.section-reading>summary{border-top:1px solid #c3a36640;padding:17px 0;max-width:850px;font-size:1rem}
.section-reading[open]>.reading-body{padding-top:12px}
.section-reading .neighborhood-intro{margin-bottom:30px}
.tribute-card p{margin-bottom:15px}
@media(max-width:1000px){.curiosity-list{grid-template-columns:1fr}.curiosity-card{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:650px){.curiosity-list{gap:12px}.curiosity-card{grid-template-columns:84px minmax(0,1fr);gap:16px;padding:20px 0}.curiosity-card .curiosity-sketch{width:84px;max-width:84px}.curiosity-copy h3{font-size:1rem}.curiosity-copy p{font-size:.95rem}.curiosity-card:has(details[open]){grid-template-columns:1fr}.curiosity-card:has(details[open]) .curiosity-sketch{width:110px;max-width:110px}.section-reading>summary{font-size:.95rem}}

/* Homenagens: resumo visível, texto e fotos somente ao expandir. */
.tribute-card>.tribute-copy{padding:20px 0 5px;border-top:1px solid #c3a36633}
.tribute-copy:has(>details[open])>.reading-preview{display:none}
.tribute-copy .compact-reading>summary{margin:0;padding:6px 0}
.tribute-copy .tribute-body{margin:0;max-width:none}
.tribute-copy .tribute-body img{display:block;width:auto;max-width:100%;max-height:540px;object-fit:contain;margin:20px auto}
.tribute-grid{align-items:start}
/* A ilustração cresce junto com o causo aberto, em todas as telas. */
.curiosity-card:has(details[open]){grid-template-columns:1fr}
.curiosity-card:has(details[open]) .curiosity-sketch{width:100%;max-width:380px;margin:0 auto 8px}
@media(max-width:650px){.curiosity-card:has(details[open]) .curiosity-sketch{width:100%;max-width:340px}}

/* Acabamento da abertura e ritmo de leitura. */
.hero .gold{background:#d2bb87;border:1px solid #d2bb87;color:#181c19}
.hero .gold:hover{background:#e3cda0;border-color:#e3cda0}
.hero .gold:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hero-copy p{max-width:490px}
.tribute-copy:has(>details[open])>.reading-preview{display:none}
@media(max-width:650px){
 .section{padding-top:38px;padding-bottom:38px}
 .section-heading{margin-bottom:20px}
 .section-heading p{margin-top:12px}
 .hero-copy{padding-top:25px;padding-bottom:25px}
 .hero h1{margin-bottom:15px}
 .hero-actions{margin-top:20px}
 .field{gap:22px}
 .testimonial-grid{gap:18px}
 .testimonial-person{margin-bottom:14px}
 .tribute-grid{gap:18px}
 .section-reading .neighborhood-intro{margin-bottom:24px}
}

/* Foto em toda a largura, proporção original e texto abaixo da imagem. */
.hero{display:flex;flex-direction:column;height:auto;min-height:0}
.hero-photo{position:relative;inset:auto;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
.hero-shade{display:none}
.hero-copy{position:relative;inset:auto;width:100%;max-width:none;padding:24px 7% 22px}
.hero h1{font-size:clamp(2rem,3.5vw,3.5rem);margin:0;line-height:1.08}
.hero-copy p{margin:0;max-width:540px;font-size:1rem;line-height:1.65}
.hero-actions{margin-top:16px;gap:12px}
.hero-bottom{position:relative;inset:auto;margin:0 7% 18px;padding-top:12px;font-size:.75rem}
@media(min-width:851px){
 .hero-copy{display:grid;grid-template-columns:1fr 1.2fr;column-gap:40px;align-items:center}
 .hero-copy h1{grid-column:1;grid-row:1 / 3}
 .hero-copy p{grid-column:2;grid-row:1}
 .hero-actions{grid-column:2;grid-row:2}
}
@media(max-width:850px){
 .hero-copy{padding:20px 6%}
 .hero h1{margin-bottom:14px}
 .hero-bottom{margin:0 6% 16px}
}
@media(max-width:650px){
 .hero-photo{max-height:none}
 .hero-copy{padding:25px 6%}
 .hero h1{font-size:clamp(2.2rem,9vw,3rem)}
}
@media(min-width:651px) and (max-height:650px){
 .hero-copy{padding-top:16px;padding-bottom:16px}
 .hero h1{font-size:2rem}
 .hero-actions{margin-top:12px}
 .hero-bottom{margin-bottom:12px;padding-top:10px}
}

/* Em monitores, foto ampla e texto abaixo cabem juntos na primeira tela. */
@media(min-width:651px){
 .hero{display:grid;grid-template-rows:minmax(0,1fr) auto auto;height:calc(100svh - var(--header-height,84px));min-height:0;overflow:hidden}
 .hero-photo{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:50% 24%}
 .hero-copy{padding:20px 7% 18px;min-width:0}
 .hero h1{font-size:clamp(2rem,3.2vw,3.2rem)}
 .hero-bottom{margin:0 7% 14px;padding-top:10px}
}
@media(min-width:651px) and (max-height:650px){
 .hero-copy{padding-top:12px;padding-bottom:12px}
 .hero h1{font-size:1.9rem}
 .hero-actions{margin-top:10px}
 .hero-actions .button{min-height:44px;padding:10px 18px}
 .hero-bottom{margin-bottom:10px;padding-top:8px}
}

/* Acervo exclusivo de camisas: foto inteira, formato vertical e fundo neutro. */
.shirts{border-top:1px solid #c3a36633}
.shirt-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.shirt-card{display:block;width:100%;max-width:390px;padding:0;text-align:left;border:0;border-radius:7px;background:transparent;color:var(--ink)}
.shirt-card img{display:block;width:100%;height:auto;aspect-ratio:5/6;object-fit:contain;background:#e9e9e7;border-radius:7px;transition:filter .2s}
.shirt-card:hover img{filter:brightness(1.04)}
.shirt-copy{padding:16px 2px 0}
.shirt-copy h3{font-size:1.15rem;line-height:1.4;margin:0 0 5px}
.shirt-copy p{font-size:.95rem;color:var(--muted);margin:0 0 12px}
.shirt-action{font-size:.9rem;font-weight:700;color:#dfcca7}
.shirt-year{display:block;font-size:.85rem;color:var(--muted);margin-bottom:10px}
@media(max-width:1000px){.shirt-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:650px){.shirt-gallery{grid-template-columns:1fr;gap:25px}.shirt-card{max-width:360px;margin:auto}}
/* Moldura discreta para apresentar cada manto como peça do acervo. */
.shirt-card img{padding:18px;background:#eeede8;border:7px solid #2d3032;outline:1px solid #b99c60;outline-offset:-5px;border-radius:2px;box-shadow:0 12px 28px #0004,inset 0 0 0 1px #ffffff70;aspect-ratio:5/6;object-fit:contain}
.shirt-card:hover img{filter:brightness(1.025)}
@media(max-width:650px){.shirt-card img{padding:14px;border-width:6px}}

.shirts-note{max-width:760px;color:#bdbbb5;font-size:.9rem;line-height:1.6;margin:0 0 28px}.shirts-more{display:block;margin:32px auto 0}.shirts-more[hidden]{display:none}

/* Frente e costas compartilham a mesma moldura e área, sem alterar o tamanho. */
.shirt-picture{display:block;width:100%;border:0;padding:0;background:none;color:inherit;text-align:inherit}
.shirt-flip{perspective:1200px}
.shirt-flip-inner{display:grid;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.25,.8,.25,1)}
.shirt-flip-inner img{grid-area:1/1;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.shirt-flip-inner .shirt-back{transform:rotateY(180deg)}
.shirt-flip.is-flipped .shirt-flip-inner{transform:rotateY(180deg)}
.shirt-side{display:block;font-size:.8rem;color:#dfcca7;margin:0 0 10px}
button.shirt-action{padding:8px 0;border:0;background:none;text-align:left}
#viewer .viewer-flip{display:block;margin:12px auto;padding:9px 18px;border:1px solid #b99c60;border-radius:4px;background:#25292b;color:#dfcca7;font-size:.9rem}
#viewer .viewer-flip[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.shirt-flip-inner{transition:none}}

/* Zoom suave nas camisas para dispositivos com mouse. */
@media(hover:hover) and (pointer:fine){
 .shirt-picture{position:relative;transform-origin:center;transition:transform .32s ease;z-index:0}
 .shirt-picture:hover{transform:scale(1.045);z-index:2}
}
@media(prefers-reduced-motion:reduce){.shirt-picture{transition:none}}

/* Lupa localizada: amplia cinco vezes o ponto das costas sob o mouse. */
.shirt-picture{position:relative}
.shirt-magnifier{display:block;position:absolute;z-index:5;pointer-events:none;background-repeat:no-repeat;background-color:#ededeb;border:2px solid #c3a366;border-radius:8px;box-shadow:0 10px 32px #0009;box-sizing:content-box}
.shirt-magnifier[hidden]{display:none}
.shirt-inscription{margin-top:12px;font-size:.85rem;color:#dfcca7}
.shirt-inscription summary{cursor:pointer;padding:6px 0;font-weight:700}
.shirt-inscription p{white-space:pre-line;color:var(--ink);line-height:1.6;padding:12px 14px;border:1px solid #c3a36655;border-radius:4px;margin-top:8px;font-size:.9rem}
@media(hover:hover) and (pointer:fine){.shirt-picture.is-flipped:hover{transform:none;cursor:zoom-in}}

/* Lupa padrão na frente e nas costas de todos os mantos. */
@media(hover:hover) and (pointer:fine){.shirt-picture:hover{transform:none;cursor:zoom-in}}

/* Lupa nas fotos do acervo, no visualizador e no carrossel do campo. */
.photo .photo-media{display:block;position:relative;width:100%;margin:0;line-height:0;overflow:hidden;border-radius:6px}
.viewer-photo-media{display:inline-block;position:relative;max-width:100%;line-height:0;vertical-align:top}
.field-photo-media{display:block;position:relative;width:100%;line-height:0;overflow:hidden;border-radius:8px}
.photo-magnifier,.photo .photo-magnifier{display:block;position:absolute;z-index:5;pointer-events:none;margin:0;background-repeat:no-repeat;background-color:#232729;background-origin:border-box;border:2px solid #c3a366;border-radius:8px;box-shadow:0 8px 28px #0009;box-sizing:border-box}
.photo:hover img{filter:none}
@media(hover:hover) and (pointer:fine){.photo-media,.viewer-photo-media,.field-photo-media{cursor:zoom-in}}

.curiosity-crest{display:grid;place-items:center;background:transparent}
.curiosity-crest img{display:block;width:100%;height:100%;object-fit:contain}
