:root{--c-bg:#faf7ef;--c-bg-2:#f3ecdb;--c-surface:#fff;--c-ink:#14213d;--c-ink-2:#3b486a;--c-muted:#6b748f;--c-line:#d9d0b8;--c-primary:#1d3a6e;--c-primary-2:#15294f;--c-accent:#b58a37;--c-accent-2:#8a6520;--c-cream:#f5ecd2;--f-display:"Cormorant Garamond", "EB Garamond", Georgia, serif;--f-body:"Lora", Georgia, "Times New Roman", serif;--f-ui:"Inter", -apple-system, system-ui, sans-serif;--r-sm:4px;--r-md:8px;--r-lg:14px;--shadow-sm:0 1px 2px #14213d0f;--shadow-md:0 8px 24px -10px #14213d2e}[data-theme=dark]{--c-bg:#0e1525;--c-bg-2:#131c34;--c-surface:#16213d;--c-ink:#f4ecd2;--c-ink-2:#c8cee0;--c-muted:#8a93ac;--c-line:#2a365a;--c-primary:#c9b274;--c-primary-2:#d8c188;--c-accent:#d8b257;--c-cream:#1a2440}[data-palette=classic-gold]{--c-bg:#f7f1e3;--c-bg-2:#ece2c5;--c-ink:#2b1d0d;--c-ink-2:#4a3617;--c-primary:#6d1a23;--c-primary-2:#4d0f17;--c-accent:#a87a1f;--c-line:#d5c69b;--c-cream:#efe2bd}[data-palette=terracotta]{--c-bg:#f7efe6;--c-bg-2:#eddccb;--c-ink:#2b1a13;--c-ink-2:#4d3225;--c-primary:#a14a2a;--c-primary-2:#7d3318;--c-accent:#b58a37;--c-line:#ddc6ad;--c-cream:#f1e1c8}[data-palette=olive]{--c-bg:#f4f1e6;--c-bg-2:#e6e2cb;--c-ink:#1c2417;--c-ink-2:#354026;--c-primary:#4d5a2b;--c-primary-2:#364020;--c-accent:#a17a2a;--c-line:#cfca9f;--c-cream:#e9e3c2}*{box-sizing:border-box}html,body{background:var(--c-bg);color:var(--c-ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4{font-family:var(--f-display);color:var(--c-ink);letter-spacing:-.005em;text-wrap:balance;margin:0;font-weight:500}h1{font-size:clamp(40px,6vw,78px);line-height:1.02}h2{font-size:clamp(28px,3.4vw,44px);line-height:1.1}h3{font-size:clamp(20px,2vw,26px);line-height:1.25}.eyebrow{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-accent);font-size:11px;font-weight:600}.lede{color:var(--c-ink-2);text-wrap:pretty;max-width:62ch;font-size:19px}.muted{color:var(--c-muted)}.small{font-size:13px;font-family:var(--f-ui)}.wrap{max-width:1200px;margin:0 auto;padding:0 32px}.wrap-tight{max-width:920px;margin:0 auto;padding:0 32px}.btn{font-family:var(--f-ui);letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:2px;align-items:center;gap:10px;padding:12px 22px;font-size:13.5px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--c-primary);color:var(--c-cream)}.btn-primary:hover{background:var(--c-primary-2)}.btn-ghost{color:var(--c-ink);border-color:var(--c-line);background:0 0}.btn-ghost:hover{border-color:var(--c-ink)}.btn-accent{background:var(--c-accent);color:#fff}.rule{color:var(--c-accent);align-items:center;gap:18px;display:flex}.rule:before,.rule:after{content:"";background:linear-gradient(90deg, transparent, var(--c-line), transparent);flex:1;height:1px}.rule .glyph{font-size:18px}.topbar{background:var(--c-primary);color:#ffffffc7;font-family:var(--f-ui);letter-spacing:.04em;font-size:12px}.topbar .wrap{justify-content:space-between;padding-top:9px;padding-bottom:9px;display:flex}.topbar a:hover{color:#fff}.topbar .sep{opacity:.35;margin:0 10px}.site-header{z-index:50;background:var(--c-bg);border-bottom:1px solid var(--c-line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:sticky;top:0}.site-header.scrolled{background:color-mix(in oklab, var(--c-bg) 92%, transparent)}.brand-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:18px 0;display:grid}.brand{justify-self:center;align-items:center;gap:14px;display:flex}.brand-mark{border:1px solid var(--c-accent);width:46px;height:46px;color:var(--c-accent);border-radius:50%;place-items:center;display:grid}.brand-text{text-align:center;line-height:1.05}.brand-text .pre{font-family:var(--f-ui);letter-spacing:.32em;text-transform:uppercase;color:var(--c-accent);font-size:10.5px}.brand-text .name{font-family:var(--f-display);color:var(--c-ink);font-size:22px;font-weight:500}.brand-text .place{font-family:var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--c-muted);font-size:11px}.nav-cta{justify-self:end;align-items:center;gap:10px;display:flex}.nav-meta{font-family:var(--f-ui);color:var(--c-muted);letter-spacing:.04em;justify-self:start;font-size:12px}.nav-meta a{color:var(--c-ink-2);border-bottom:1px dotted var(--c-line)}.nav-meta a:hover{color:var(--c-primary);border-bottom-color:var(--c-primary)}.nav-row{font-family:var(--f-ui);letter-spacing:.16em;text-transform:uppercase;justify-content:center;gap:4px;padding:6px 0 14px;font-size:12.5px;display:flex}.nav-row a,.nav-row button{color:var(--c-ink-2);letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:8px 14px;font-family:inherit;font-weight:500;text-decoration:none;transition:all .15s}.nav-row a:hover,.nav-row button:hover{color:var(--c-ink)}.nav-row a.active,.nav-row button.active{color:var(--c-primary);border-bottom-color:var(--c-accent)}.hero{background:radial-gradient(60% 80% at 50% 0%, color-mix(in oklab, var(--c-accent) 12%, transparent), transparent 70%), var(--c-bg);padding:80px 0 100px;position:relative;overflow:hidden}.hero-inner{grid-template-columns:1.05fr 1fr;align-items:center;gap:64px;display:grid}.hero-eye{margin-bottom:18px}.hero h1{margin-bottom:22px}.hero h1 em{color:var(--c-primary);font-style:italic;font-weight:500}.hero .lede{margin-bottom:32px}.hero-cta{flex-wrap:wrap;gap:12px;display:flex}.hero-art{aspect-ratio:4/5;box-shadow:var(--shadow-md);border:1px solid var(--c-line);border-radius:2px;position:relative;overflow:hidden}.placeholder{background:repeating-linear-gradient(45deg, color-mix(in oklab, var(--c-primary) 10%, transparent) 0 12px, transparent 12px 24px), var(--c-bg-2);width:100%;height:100%;color:var(--c-muted);text-align:center;place-items:center;padding:16px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;display:grid;position:relative}.placeholder span{background:var(--c-bg);border:1px solid var(--c-line);letter-spacing:.04em;padding:6px 12px}.placeholder.has-photo{background:0 0;padding:0}.placeholder.has-photo img{object-fit:cover;width:100%;height:100%;display:block}.album-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.album-card{color:inherit;border:1px solid var(--c-line);background:var(--c-surface);text-decoration:none;transition:box-shadow .2s,transform .2s;display:block;overflow:hidden}.album-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.album-cover{aspect-ratio:4/3;background:var(--c-bg-2);overflow:hidden}.album-cover img{object-fit:cover;width:100%;height:100%;display:block}.album-meta{padding:14px 18px 18px}.album-meta h3{margin:0 0 4px}.album-count{font-family:var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);font-size:12px}.album-back{font-family:var(--f-ui);color:var(--c-accent);margin-bottom:18px;font-size:13px;display:inline-block}@media (max-width:880px){.album-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.album-grid{grid-template-columns:1fr}}.article-body{font-family:var(--f-body);color:var(--c-ink);font-size:18px;line-height:1.75}.article-body>*+*{margin-top:1.1em}.article-body h2{font-family:var(--f-display);margin:1.6em 0 0;font-size:30px;line-height:1.2}.article-body h3{font-family:var(--f-display);margin:1.4em 0 0;font-size:24px;line-height:1.25}.article-body h4{font-family:var(--f-display);margin:1.2em 0 0;font-size:20px}.article-body p{margin:0}.article-body a{color:var(--c-accent)}.article-body ul,.article-body ol{margin:0;padding-left:1.4em}.article-body li{margin:4px 0}.article-quote{border-left:3px solid var(--c-accent);font-family:var(--f-display);color:var(--c-ink-2);margin:0;padding:2px 0 2px 22px;font-size:23px;font-style:italic}.article-quote cite{font-size:13px;font-style:normal;font-family:var(--f-ui);letter-spacing:.04em;color:var(--c-muted);margin-top:10px;display:block}.article-callout{background:var(--c-cream);border:1px solid var(--c-accent);padding:18px 22px;font-size:16px}.article-figure{margin:0}.article-figure img{border:1px solid var(--c-line);height:auto}.article-figure figcaption{font-family:var(--f-ui);color:var(--c-muted);margin-top:8px;font-size:12.5px}.article-gallery{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.article-gallery img{aspect-ratio:1;object-fit:cover;border:1px solid var(--c-line);width:100%}.article-video{aspect-ratio:16/9;position:relative}.article-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.article-columns{gap:24px;display:grid}.article-columns.cols-2{grid-template-columns:1fr 1fr}.article-columns.cols-3{grid-template-columns:1fr 1fr 1fr}.article-columns>div>*+*{margin-top:1.1em}.article-divider{border:0;border-top:1px solid var(--c-line);margin:4px 0}@media (max-width:700px){.article-body{font-size:16px}.article-columns.cols-2,.article-columns.cols-3{grid-template-columns:1fr}.article-gallery{grid-template-columns:1fr 1fr}}.hero-glyph{pointer-events:none;color:var(--c-accent);opacity:.12;position:absolute}.hero-glyph.tl{top:30px;left:30px}.hero-glyph.br{bottom:30px;right:30px;transform:rotate(180deg)}section.block{padding:88px 0}section.block.alt{background:var(--c-bg-2)}.section-head{text-align:center;margin-bottom:56px}.section-head .eyebrow{margin-bottom:12px;display:block}.section-head h2{max-width:720px;margin:0 auto 14px}.section-head p{color:var(--c-ink-2);max-width:58ch;margin:0 auto}.missas-grid{border:1px solid var(--c-line);background:var(--c-surface);grid-template-columns:repeat(7,1fr);gap:0;display:grid}.missa-day{border-right:1px solid var(--c-line);text-align:center;padding:26px 12px 28px;position:relative}.missa-day:last-child{border-right:0}.missa-day .dow{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-accent);margin-bottom:18px;font-size:10.5px}.missa-time-row+.missa-time-row{margin-top:14px}.missa-day .time{font-family:var(--f-display);color:var(--c-ink);font-size:26px;line-height:1.05}.missa-day .note{font-family:var(--f-ui);color:var(--c-muted);margin-top:4px;font-size:10.5px;font-style:italic;line-height:1.35}.missa-day .missa-empty{font-family:var(--f-display);color:var(--c-muted);opacity:.7;font-size:19px;font-style:italic}.news-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.news-card{background:var(--c-surface);border:1px solid var(--c-line);cursor:pointer;flex-direction:column;transition:transform .25s,box-shadow .25s;display:flex;overflow:hidden}.news-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.news-card .img{aspect-ratio:16/10}.news-card .body{padding:22px 22px 26px}.news-card .date{font-family:var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--c-accent);margin-bottom:10px;font-size:11px}.news-card h3{margin-bottom:8px;font-size:21px}.news-card p{color:var(--c-ink-2);margin:0;font-size:15px}footer.site{background:var(--c-primary);color:#ffffffc7;font-family:var(--f-ui);padding:64px 0 28px;font-size:14px}footer.site h4{color:var(--c-cream);font-family:var(--f-display);text-wrap:balance;margin-bottom:14px;font-size:22px}footer.site .grid{border-bottom:1px solid #ffffff1f;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;display:grid}footer.site .label{letter-spacing:.28em;text-transform:uppercase;color:var(--c-accent);margin-bottom:12px;font-size:10.5px}footer.site .brand-row-foot{align-items:center;gap:12px;margin-bottom:12px;display:flex}footer.site .brand-row-foot h4{margin:0}footer.site .lead-text{max-width:30ch;margin:0 0 18px;line-height:1.55}footer.site ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}footer.site a:hover{color:#fff}footer.site .legal{color:#ffffff80;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:24px;font-size:12px;display:flex}.agenda-list{border-top:1px solid var(--c-line);gap:0;display:grid}.agenda-row{border-bottom:1px solid var(--c-line);grid-template-columns:120px 1fr auto;align-items:center;gap:32px;padding:26px 0;display:grid}.agenda-date{text-align:center;border-right:1px solid var(--c-line);padding-right:24px}.agenda-date .day{font-family:var(--f-display);color:var(--c-primary);font-size:44px;line-height:1}.agenda-date .mon{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-accent);margin-top:6px;font-size:11px}.agenda-row h3{margin-bottom:4px;font-size:22px}.agenda-row .meta{font-family:var(--f-ui);color:var(--c-muted);letter-spacing:.04em;font-size:12.5px}.agenda-row .tag{font-family:var(--f-ui);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--c-line);color:var(--c-ink-2);padding:4px 10px;font-size:10.5px;display:inline-block}.pastoral-grid{background:var(--c-line);border:1px solid var(--c-line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.pastoral-card{background:var(--c-surface);flex-direction:column;gap:12px;padding:32px 28px;display:flex}.pastoral-card .num{font-family:var(--f-display);color:var(--c-accent);font-size:28px;line-height:1}.pastoral-card h3{font-size:22px}.pastoral-card p{color:var(--c-ink-2);margin:0;font-size:14.5px}.pastoral-card .meet{font-family:var(--f-ui);color:var(--c-muted);letter-spacing:.06em;border-top:1px solid var(--c-line);margin-top:auto;padding-top:14px;font-size:11.5px}.timeline{grid-template-columns:140px 1fr;gap:0;display:grid}.timeline-item{display:contents}.timeline .year{font-family:var(--f-display);color:var(--c-accent);border-right:2px solid var(--c-line);text-align:right;padding:28px 24px 28px 0;font-size:36px;position:relative}.timeline .year:after{content:"";background:var(--c-accent);border:3px solid var(--c-bg);border-radius:50%;width:12px;height:12px;position:absolute;top:38px;right:-7px}.timeline .entry{border-bottom:1px solid var(--c-line);padding:28px 0 28px 28px}.timeline-item:last-child .entry{border-bottom:0}.timeline .entry h3{margin-bottom:8px;font-size:22px}.timeline .entry p{color:var(--c-ink-2);max-width:60ch;margin:0}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gallery-item{aspect-ratio:1;border:1px solid var(--c-line);overflow:hidden}.gallery-item.tall{aspect-ratio:1/2;grid-row:span 2}.gallery-item.wide{aspect-ratio:2;grid-column:span 2}.split-2{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.split-portrait{grid-template-columns:240px 1fr;align-items:start;gap:36px;display:grid}.contact-form-grid{grid-template-columns:1fr 1.4fr;gap:56px;margin-top:80px;display:grid}.sac-grid{grid-template-columns:1fr 1fr 1fr;gap:28px;margin-top:56px;display:grid}.pagination{font-family:var(--f-ui);flex-wrap:wrap;justify-content:center;gap:8px;padding:48px 0 0;display:flex}.pagination button,.pagination a,.pagination span{border:1px solid var(--c-line);min-width:40px;color:var(--c-ink);letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:2px;justify-content:center;align-items:center;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.pagination button:hover:not(:disabled),.pagination a:hover{border-color:var(--c-ink);color:var(--c-ink)}.pagination .current,.pagination button.current{background:var(--c-primary);color:var(--c-cream);border-color:var(--c-primary)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination .dots{color:var(--c-muted);background:0 0;border:0;padding:9px 4px}.filter-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:48px;display:flex}.filter-btn{font-family:var(--f-ui);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--c-line);color:var(--c-ink);white-space:nowrap;cursor:pointer;background:0 0;border-radius:2px;padding:8px 16px;font-size:12px;font-weight:600;transition:all .15s}.filter-btn:hover{border-color:var(--c-ink)}.filter-btn.active{background:var(--c-primary);color:var(--c-cream);border-color:var(--c-primary)}.week-liturgy{border:1px solid var(--c-line);background:var(--c-surface);grid-template-columns:repeat(7,1fr);display:grid}.week-day{border-right:1px solid var(--c-line);flex-direction:column;gap:14px;min-height:180px;padding:22px 14px;display:flex}.week-day:last-child{border-right:0}.week-day.is-today{background:color-mix(in oklab, var(--c-cream) 60%, transparent)}.week-day.is-sunday .week-num{color:var(--c-primary);font-weight:600}.week-day.is-solenidade{background:color-mix(in oklab, var(--c-accent) 9%, transparent)}.week-day.is-today.is-solenidade{background:color-mix(in oklab, var(--c-accent) 15%, transparent)}.week-date{border-bottom:1px solid var(--c-line);flex-direction:column;gap:4px;padding-bottom:12px;display:flex}.week-dow{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-accent);font-size:10.5px;font-weight:600}.week-day.is-today .week-dow{color:var(--c-primary);font-weight:700}.week-num{font-family:var(--f-display);color:var(--c-ink);font-variant-numeric:tabular-nums;font-size:22px;line-height:1}.week-celebs{flex-direction:column;flex:1;gap:8px;display:flex}.week-celeb{grid-template-columns:24px 1fr;align-items:baseline;gap:8px;display:grid}.week-name{font-family:var(--f-body);color:var(--c-ink);font-size:13.5px;line-height:1.35}:is(.week-celeb:has(.cal-rank.rank-S) .week-name,.week-celeb:has(.cal-rank.rank-F) .week-name){font-weight:500}.week-feria{font-family:var(--f-body);color:var(--c-muted);font-size:13px;font-style:italic;line-height:1.4}.week-celeb .cal-rank{width:22px;height:18px;font-size:9.5px}@media (max-width:1024px){.week-liturgy{grid-template-columns:1fr}.week-day{border-right:0;border-bottom:1px solid var(--c-line);flex-direction:row;align-items:flex-start;gap:20px;min-height:0;padding:18px 22px}.week-day:last-child{border-bottom:0}.week-date{border-bottom:0;border-right:1px solid var(--c-line);flex:0 0 110px;gap:3px;padding-bottom:0;padding-right:18px}.week-num{font-size:20px}.week-celebs{gap:6px}.week-name{font-size:14.5px}}@media (max-width:760px){.week-day{gap:14px;padding:14px 16px}.week-date{flex:0 0 78px;padding-right:12px}.week-dow{letter-spacing:.16em;font-size:10px}.week-num{font-size:18px}.week-name{font-size:13.5px;line-height:1.35}.week-celeb{grid-template-columns:20px 1fr;gap:6px}.week-celeb .cal-rank{width:20px;height:16px;font-size:9px}}.cal-legend{background:var(--c-surface);border:1px solid var(--c-line);font-family:var(--f-ui);flex-wrap:wrap;justify-content:center;gap:16px 28px;margin-bottom:36px;padding:20px 24px;font-size:12.5px;display:flex}.cal-legend-item{color:var(--c-ink-2);align-items:center;gap:10px;display:flex}.cal-tabs{border-bottom:1px solid var(--c-line);flex-wrap:wrap;gap:2px;margin-bottom:0;display:flex}.cal-tab{font-family:var(--f-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink-2);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:14px 18px;font-size:12.5px;font-weight:500;transition:color .15s,border-color .15s}.cal-tab:hover{color:var(--c-ink)}.cal-tab.active{color:var(--c-primary);border-bottom-color:var(--c-accent)}.cal-month{background:var(--c-surface);border:1px solid var(--c-line);border-top:0}.cal-month-head{border-bottom:1px solid var(--c-line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;padding:32px 40px 24px;display:flex}.cal-month-head h2{margin:0;font-size:clamp(32px,4vw,44px)}.cal-season{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-accent);font-size:11px}.cal-days{padding:16px 0}.cal-day{border-bottom:1px dotted var(--c-line);grid-template-columns:90px 1fr;align-items:start;gap:24px;padding:14px 40px;display:grid}.cal-day:last-child{border-bottom:0}.cal-day.is-sunday{background:color-mix(in oklab, var(--c-cream) 35%, transparent)}.cal-day.is-solenidade{background:color-mix(in oklab, var(--c-accent) 7%, transparent)}.cal-day.is-sunday.is-solenidade{background:color-mix(in oklab, var(--c-accent) 12%, transparent)}.cal-date{font-family:var(--f-display);align-items:baseline;gap:10px;display:flex}.cal-num{color:var(--c-ink);font-variant-numeric:tabular-nums;font-size:26px;font-weight:500;line-height:1}.cal-day.is-sunday .cal-num{color:var(--c-primary)}.cal-dow{font-family:var(--f-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--c-muted);font-size:11px}.cal-day.is-sunday .cal-dow{color:var(--c-accent);font-weight:600}.cal-entries{flex-direction:column;gap:6px;padding-top:4px;display:flex}.cal-entry{grid-template-columns:34px 1fr;align-items:baseline;gap:12px;display:grid}.cal-name{font-family:var(--f-body);color:var(--c-ink);font-size:15.5px;line-height:1.45}.cal-entry .cal-name:has(+*){color:var(--c-ink-2)}.cal-rank{width:26px;height:22px;font-family:var(--f-ui);letter-spacing:0;border:1px solid var(--c-line);background:var(--c-bg);color:var(--c-muted);border-radius:2px;justify-content:center;align-items:center;font-size:10.5px;font-weight:700;display:inline-flex}.cal-rank.rank-S{background:var(--c-primary);color:var(--c-cream);border-color:var(--c-primary)}.cal-rank.rank-F{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.cal-rank.rank-M{background:var(--c-bg-2);color:var(--c-ink);border-color:var(--c-line)}.cal-rank.rank-m{background:var(--c-surface);color:var(--c-ink-2);border-color:var(--c-line)}.cal-rank.rank-mstar{background:var(--c-surface);color:var(--c-muted);border-style:dashed}.cal-rank.rank-feria{width:auto;height:auto;color:var(--c-muted);background:0 0;border:0;padding-left:8px;font-size:14px}.cal-rank.rank-feria:before{content:""}.cal-day:not(.is-sunday):not(.is-solenidade) .cal-entry:has(.rank-feria) .cal-name{color:var(--c-muted);font-size:14px;font-style:italic}@media (max-width:1024px){.cal-month-head{padding:24px 28px 18px}.cal-day{padding:12px 28px}}@media (max-width:760px){.cal-legend{gap:10px 18px;padding:14px 16px;font-size:11px}.cal-tabs,.filter-row{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;scroll-padding-left:20px;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 24px calc(100% - 32px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 24px calc(100% - 32px),#0000 100%)}.cal-tabs::-webkit-scrollbar{display:none}.filter-row::-webkit-scrollbar{display:none}.cal-tab,.filter-btn{scroll-snap-align:start;white-space:nowrap;flex:none}.cal-tab{letter-spacing:.04em;padding:10px 14px;font-size:11.5px}.cal-tab.active{background:var(--c-primary);color:var(--c-cream);border-bottom-color:var(--c-primary)}.filter-row{gap:6px;margin-bottom:32px}.filter-btn{padding:7px 14px;font-size:11px}.cal-month-head{padding:22px 20px 16px}.cal-month-head h2{font-size:30px}.cal-day{grid-template-columns:64px 1fr;gap:14px;padding:12px 20px}.cal-date{flex-direction:column;align-items:flex-start;gap:2px}.cal-num{font-size:22px}.cal-dow{letter-spacing:.14em;font-size:10px}.cal-entry{grid-template-columns:28px 1fr;gap:10px}.cal-rank{width:24px;height:20px;font-size:10px}.cal-name{font-size:14.5px;line-height:1.4}}.contato-grid{grid-template-columns:1fr 1.1fr;gap:56px;display:grid}.confissoes-grid{grid-template-columns:1fr 1fr;gap:56px;display:grid}.contato-card{background:var(--c-surface);border:1px solid var(--c-line);padding:36px}.contato-card h3{margin-bottom:18px}.info-row{border-bottom:1px dotted var(--c-line);grid-template-columns:36px 1fr;align-items:start;gap:14px;padding:14px 0;display:grid}.info-row:last-child{border-bottom:0}.info-row .ic{color:var(--c-accent)}.info-row .lbl{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-muted);margin-bottom:2px;font-size:10.5px}.info-row .val{color:var(--c-ink);font-size:16px}.map{border:1px solid var(--c-line);aspect-ratio:4/5}.devotion{background:var(--c-primary);color:var(--c-cream);text-align:center;padding:96px 0;position:relative;overflow:hidden}.devotion .glyph-big{font-size:120px;font-family:var(--f-display);color:var(--c-accent);opacity:.35;margin-bottom:10px;line-height:.5}.devotion blockquote{font-family:var(--f-display);max-width:24ch;margin:0 auto 18px;font-size:clamp(26px,3.2vw,40px);font-style:italic;font-weight:400;line-height:1.25}.devotion cite{font-family:var(--f-ui);letter-spacing:.3em;text-transform:uppercase;color:var(--c-accent);font-size:11px;font-style:normal}.page-hero{background:var(--c-bg-2);text-align:center;border-bottom:1px solid var(--c-line);padding:80px 0 70px}.page-hero .eyebrow{margin-bottom:12px;display:block}.page-hero h1{margin-bottom:12px;font-size:clamp(40px,5.5vw,64px)}.page-hero p{max-width:56ch;color:var(--c-ink-2);margin:0 auto}.next-mass-strip{background:var(--c-cream);border:1px solid var(--c-accent);flex-wrap:wrap;align-items:center;gap:28px;margin-bottom:36px;padding:18px 28px;display:flex}.next-mass-strip .label{font-family:var(--f-ui);letter-spacing:.28em;text-transform:uppercase;color:var(--c-accent-2);font-size:11px}.next-mass-strip .text{font-family:var(--f-display);color:var(--c-ink);font-size:22px}.next-mass-strip .text strong{color:var(--c-primary);font-weight:600}.festa-strip{background:linear-gradient(135deg, color-mix(in oklab, var(--c-accent) 18%, var(--c-cream)) 0%, var(--c-cream) 100%);border:1px solid var(--c-accent);position:relative;overflow:hidden}.festa-strip:before{content:"★";color:var(--c-accent);opacity:.08;pointer-events:none;font-size:140px;line-height:1;position:absolute;top:-30px;right:-10px}.festa-strip .label{color:var(--c-accent-2);font-weight:700}.festa-strip .text strong{color:var(--c-primary)}.festa-strip .text span{color:var(--c-ink-2)}.aviso-bar{background:var(--c-accent);color:#fff;width:100%;font-family:var(--f-ui);letter-spacing:.06em;text-align:center;padding:9px 0;font-size:12px;display:block}.aviso-bar-link{color:#fff;text-decoration:none}.aviso-bar-link:hover{text-decoration:underline}.aviso-bar strong{letter-spacing:.16em;text-transform:uppercase;margin-right:8px}.nav-toggle{border:1px solid var(--c-line);cursor:pointer;z-index:60;background:0 0;border-radius:2px;justify-content:center;align-items:center;width:44px;height:44px;display:none;position:absolute;top:22px;right:20px}.nav-toggle:hover{border-color:var(--c-ink)}.nav-toggle .bars,.nav-toggle .bars:before,.nav-toggle .bars:after{content:"";background:var(--c-ink);width:20px;height:1.5px;transition:transform .25s,top .25s,opacity .15s;display:block;position:relative}.nav-toggle .bars:before{position:absolute;top:-7px;left:0;right:0}.nav-toggle .bars:after{position:absolute;top:7px;left:0;right:0}.nav-toggle.open .bars{background:0 0}.nav-toggle.open .bars:before{top:0;transform:rotate(45deg)}.nav-toggle.open .bars:after{top:0;transform:rotate(-45deg)}@media (max-width:1024px){.wrap,.wrap-tight{padding:0 24px}section.block{padding:72px 0}.devotion{padding:80px 0}.page-hero{padding:64px 0 56px}.hero{padding:64px 0 80px}.hero-inner{gap:40px}.news-grid{grid-template-columns:1fr 1fr;gap:22px}.pastoral-grid{grid-template-columns:1fr 1fr}footer.site .grid{grid-template-columns:1fr 1fr 1fr;gap:32px}footer.site .grid>:first-child{grid-column:1/-1}footer.site .grid>:first-child .lead-text{max-width:60ch}.nav-meta{font-size:11px}.nav-row{gap:0}.nav-row button{letter-spacing:.12em;padding:8px 10px;font-size:11.5px}.split-2,.contact-form-grid{gap:40px}.split-portrait{grid-template-columns:200px 1fr;gap:28px}.missas-grid{grid-template-columns:1fr}.missa-day{border-right:0;border-bottom:1px solid var(--c-line);text-align:left;align-items:center;gap:24px;padding:22px 24px;display:flex}.missa-day:last-child{border-bottom:0}.missa-day .dow{letter-spacing:.22em;flex:0 0 100px;margin-bottom:0;font-size:11px}.missa-times{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.missa-time-row{flex-wrap:wrap;align-items:baseline;gap:16px;display:flex}.missa-time-row+.missa-time-row{margin-top:0}.missa-day .time{font-size:26px;line-height:1}.missa-day .note{flex:1;min-width:0;margin-top:0;font-size:12px}.brand-row{grid-template-columns:1fr;gap:0;padding:14px 0;position:relative}.brand{justify-self:start}.nav-meta,.nav-cta{display:none}.nav-toggle{display:flex;top:50%;transform:translateY(-50%)}.nav-row{background:var(--c-bg);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);box-shadow:var(--shadow-md);z-index:55;flex-direction:column;gap:0;padding:8px 0 16px;display:none;position:absolute;top:100%;left:0;right:0}.nav-row.is-open{display:flex}.nav-row a,.nav-row button{text-align:left;border-bottom:1px solid var(--c-line);letter-spacing:.14em;border-radius:0;width:100%;padding:14px 24px;font-size:13.5px;display:block}.nav-row a:last-child,.nav-row button:last-child{border-bottom:0}.nav-row a.active,.nav-row button.active{background:var(--c-bg-2)}.hero-inner{grid-template-columns:1fr;gap:40px}.hero-glyph{display:none}.contato-grid,.confissoes-grid,.contact-form-grid,.split-2{grid-template-columns:1fr;gap:36px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){body{font-size:16px}.wrap,.wrap-tight{padding:0 20px}section.block{padding:56px 0}.section-head{margin-bottom:36px}.devotion{padding:64px 0}.page-hero{padding:48px 0 44px}.page-hero h1{font-size:clamp(32px,8vw,44px)}.topbar{font-size:11px}.topbar .wrap{text-align:center;flex-direction:column;gap:4px;padding:8px 20px}.aviso-bar{flex-direction:column;gap:2px;padding:8px 16px;font-size:11px;line-height:1.4}.aviso-bar strong{margin:0;font-size:10px;display:block}.brand-row{grid-template-columns:1fr;gap:0;padding:14px 0;position:relative}.brand{justify-self:start}.brand-mark{width:44px;height:44px}.brand-text{text-align:left}.brand-text .name{font-size:19px}.brand-text .pre{letter-spacing:.28em;font-size:9.5px}.brand-text .place,.nav-meta,.nav-cta{display:none}.nav-toggle{display:flex;top:50%;transform:translateY(-50%)}.nav-row{background:var(--c-bg);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);box-shadow:var(--shadow-md);z-index:55;flex-direction:column;gap:0;padding:8px 0 16px;display:none;position:absolute;top:100%;left:0;right:0}.nav-row.is-open{display:flex}.nav-row a,.nav-row button{text-align:left;border-bottom:1px solid var(--c-line);letter-spacing:.14em;border-radius:0;width:100%;padding:14px 24px;font-size:13.5px;display:block}.nav-row a:last-child,.nav-row button:last-child{border-bottom:0}.nav-row a.active,.nav-row button.active{background:var(--c-bg-2)}.hero{padding:48px 0 64px}.hero-inner{grid-template-columns:1fr;gap:36px}.hero-art{aspect-ratio:4/3}.hero h1{font-size:clamp(34px,9vw,48px)}.hero .lede{font-size:17px}.hero-glyph{display:none}.missas-grid{grid-template-columns:1fr}.missa-day{border-right:0;border-bottom:1px solid var(--c-line);text-align:left;align-items:center;gap:18px;padding:20px 18px;display:flex}.missa-day:last-child{border-bottom:0}.missa-day .dow{letter-spacing:.2em;flex:0 0 84px;margin-bottom:0;font-size:10.5px;line-height:1.2}.missa-times{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.missa-time-row{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.missa-time-row+.missa-time-row{margin-top:0}.missa-day .time{flex:none;font-size:22px;line-height:1}.missa-day .note{flex:1;min-width:0;margin-top:0;font-size:12px}.news-grid{grid-template-columns:1fr;gap:18px}.news-card h3{font-size:19px}.news-card .body{padding:18px 20px 22px}.agenda-row{grid-template-columns:76px 1fr;gap:18px;padding:20px 0}.agenda-date{padding-right:16px}.agenda-date .day{font-size:34px}.agenda-date .mon{font-size:10px}.agenda-row h3{font-size:18px}.agenda-row .meta{font-size:12px}.agenda-row .tag{display:none}.pastoral-grid{grid-template-columns:1fr}.pastoral-card{padding:24px 22px}.timeline{grid-template-columns:70px 1fr}.timeline .year{padding:20px 14px 20px 0;font-size:24px}.timeline .year:after{width:10px;height:10px;top:28px}.timeline .entry{padding:20px 0 20px 20px}.timeline .entry h3{font-size:19px}.gallery-grid{grid-template-columns:1fr 1fr;gap:8px}.gallery-item.tall{aspect-ratio:1;grid-row:span 1}.gallery-item.wide{aspect-ratio:2;grid-column:span 2}.contato-grid{grid-template-columns:1fr;gap:32px}.confissoes-grid{grid-template-columns:1fr;gap:36px}.contato-card{padding:28px 22px}.map{aspect-ratio:4/3}.next-mass-strip{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 20px}.next-mass-strip .text{font-size:18px}.next-mass-strip .btn{justify-content:center;width:100%}.devotion .glyph-big{font-size:80px}footer.site{padding:44px 0 20px;font-size:13.5px}footer.site .grid{grid-template-columns:1fr;gap:28px;padding-bottom:28px}footer.site h4{font-size:20px}footer.site .lead-text{max-width:none}footer.site .label{letter-spacing:.24em;margin-bottom:10px;font-size:10px}footer.site ul{gap:6px}footer.site .legal{text-align:center;flex-direction:column;align-items:center;gap:4px;padding-top:20px;font-size:11.5px}footer.site .brand-row-foot{gap:10px;margin-bottom:10px}.btn{padding:12px 18px;font-size:12.5px}.split-2,.split-portrait,.contact-form-grid{grid-template-columns:1fr;gap:32px}.split-portrait .hero-art{max-width:240px;margin:0 auto}.sac-grid{gap:14px;margin-top:36px;grid-template-columns:1fr!important}.sac-box{padding:22px 20px}}@media (max-width:420px){.wrap,.wrap-tight{padding:0 16px}.hero h1{font-size:32px;line-height:1.05}.missa-day{gap:12px;padding:18px 14px}.missa-day .dow{letter-spacing:.16em;flex:0 0 72px;font-size:10px}.missa-day .time{font-size:20px}.missa-day .note{font-size:11px}.brand-text .name{font-size:17px}.brand-mark{width:38px;height:38px}h2{font-size:clamp(22px,6vw,30px)}h3{font-size:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.cookie-bar{z-index:100;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-md);max-width:760px;box-shadow:var(--shadow-md);align-items:center;gap:20px;margin:0 auto;padding:16px 20px;animation:.3s cookie-up;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.cookie-bar-text{font-family:var(--f-ui);color:var(--c-ink-2);margin:0;font-size:13px;line-height:1.55}.cookie-bar-actions{flex-shrink:0}.cookie-bar .btn{padding:10px 24px}@keyframes cookie-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.cookie-bar{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}.cookie-bar .btn{justify-content:center;width:100%}}.com-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.com-card{background:var(--c-surface);border:1px solid var(--c-line);padding:26px 24px}.com-card h3{margin:12px 0 10px}.com-card .com-addr{color:var(--c-ink-2);margin:0;font-size:15px;line-height:1.55}.com-card .com-phone{color:var(--c-muted);font-size:14px;font-family:var(--f-ui);margin:10px 0 0}
