:root{--red:#933018;--gold:#f7ba4f;--paper:#faf6ec;--ink:#382821;--line:#dcd7c7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit}button{font:inherit;cursor:pointer}header,footer{background:var(--red);color:white;display:flex;align-items:center;justify-content:space-between;padding:22px max(5vw,calc((100vw - 1250px)/2));gap:24px}header,nav,.actions,.sec-head{display:flex;align-items:center}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:22px Georgia,serif}.brand span{font-size:30px;color:var(--gold)}.brand strong{font-weight:normal}nav{gap:24px}nav a{text-decoration:none;font-size:14px}nav a:last-child{border-left:1px solid #c78671;padding-left:22px}#hamb{display:none}.hero{display:grid;grid-template-columns:45% 55%;max-width:1500px;margin:auto;border-bottom:3px solid var(--gold)}.intro{padding:clamp(40px,5.5vw,84px);align-self:center}.eyebrow,small{font-size:11px;font-weight:bold;letter-spacing:.16em}.eyebrow{color:var(--red)}h1,h2,h3{font-family:Georgia,serif;font-weight:normal}h1{font-size:clamp(55px,6.5vw,100px);line-height:.97;margin:24px 0}h1 em{font-weight:normal;color:var(--red)}p{line-height:1.65} .intro p{max-width:310px;font-size:16px}.actions{gap:20px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;text-decoration:none;background:var(--red);color:white;padding:14px 20px;border-radius:3px;font-weight:600;font-size:14px}.textlink,.cards button,.dates a{font-size:14px;color:var(--red);font-weight:bold;text-underline-offset:4px}.facade{margin:0;min-height:410px;position:relative}.facade img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 55%}.section{padding:58px max(5vw,calc((100vw - 1250px)/2))}h2{font-size:clamp(32px,3.5vw,54px);letter-spacing:-.035em;margin:10px 0 26px}.sec-head{justify-content:space-between;gap:18px}.dates{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.dates article{padding:24px 18px 24px 0}.dates article+article{padding-left:24px;border-left:1px solid var(--line)}small{color:var(--red);letter-spacing:.06em;text-transform:uppercase}.dates h3{font-size:23px;margin:13px 0}.dates strong{font-weight:normal;font-size:18px}.community{background:#f3e9df}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.cards img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:50% 55%}.cards .saint,.cards .mary{object-position:center 12%;background:#fffcf5}.cards h3{font-size:27px;margin:18px 0 0}.cards p{margin:9px 0 12px}.cards button{background:none;border:0;padding:7px 0}.history,.visit{display:grid;grid-template-columns:1fr 1.45fr;align-items:center;gap:6vw}.history img,.visit img{width:100%;max-height:380px;object-fit:contain}.visit{background:#efe2d6;grid-template-columns:1fr 1fr}.visit img{object-fit:cover;object-position:center 62%;height:290px}address{font-style:normal;line-height:1.7;margin-bottom:18px}footer{font-size:14px}footer strong{font:20px Georgia,serif}dialog{max-width:min(90vw,530px);border:0;background:var(--paper);color:var(--ink);padding:35px;box-shadow:0 20px 90px #33181344}dialog::backdrop{background:#281411aa}dialog h2{font-size:34px;margin-right:25px}dialog h3{margin-bottom:5px;font-size:22px}dialog p{margin-top:8px}.close{position:absolute;right:12px;top:8px;background:none;border:0;font-size:30px}.skip{position:absolute;left:-9999px}.skip:focus{left:8px;background:white;padding:10px}.btn:hover{background:#772610}a:focus-visible,button:focus-visible{outline:3px solid #be8534;outline-offset:3px}@media(max-width:760px){header{padding:14px 5%;position:relative;flex-wrap:wrap;gap:4px}.brand{font-size:18px;gap:8px}#hamb{display:block;background:none;color:white;border:0;padding:10px}nav{display:none;width:100%;align-items:start;gap:0}nav.open{display:grid}nav a,nav a:last-child{border:0;padding:12px 0}.hero{grid-template-columns:1fr}.intro{padding:28px 5% 25px}.intro h1{font-size:clamp(38px,8vw,54px);line-height:1.1;margin:11px 0}.intro h1 br{display:none}.intro h1 br:after{content:' '}.intro p{margin:8px 0;max-width:none}.actions{margin-top:16px}.facade{min-height:245px}.facade img{object-position:center 54%}.section{padding:35px 5%}.sec-head{display:block}.sec-head .textlink{display:inline-block;margin-bottom:16px}.sec-head h2{margin-bottom:8px}.dates{grid-template-columns:1fr 1fr}.dates article,.dates article+article{padding:16px 10px;border:0}.dates article:nth-child(2n){border-left:1px solid var(--line)}.dates article:nth-child(n+3){border-top:1px solid var(--line)}.dates h3{font-size:19px}.cards,.history,.visit{grid-template-columns:1fr}.cards{gap:28px}.history img{max-width:240px}.history,.visit{gap:20px}.visit img{height:230px}footer{flex-wrap:wrap;gap:12px}.eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Cores das artes da comunidade. A faixa reproduz as proporções exatas. */
:root {
  --green: #303f22;
  --brand-stripe: linear-gradient(to right, var(--red) 0 70%, var(--green) 70% 97%, var(--gold) 97% 100%);
}
header, footer { background: var(--green); }
nav a:last-child { border-color: #839074; }
.hero { background: var(--red); color: var(--paper); }
.intro h1 em, .intro .textlink { color: white; }
.intro .eyebrow, .community .eyebrow { color: var(--gold); }
.intro .btn, .visit .btn { background: var(--green); }
.intro .btn { box-shadow: inset 0 0 0 1px #d5bd86; }
.btn:hover { filter: brightness(1.12); }
.agenda h2, .history h2, .visit h2 { color: var(--green); }
.dates {
  background: var(--green);
  color: white;
  border: 0;
  border-top: 3px solid var(--gold);
}
.dates article { padding-left: 22px; }
.dates article + article { border-color: #67725c; }
.dates small { color: var(--gold); }
.dates a { color: white; }
.community { background: var(--red); color: var(--paper); }
.cards button { color: white; text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 5px; }
footer { position: relative; }
footer::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: var(--brand-stripe);
}
@media (max-width: 760px) {
  .dates article, .dates article + article { padding: 16px 12px; border-color: #67725c; }
}
