/* ============================================================
   CONVIVÊNCIA NACIONAL — MONASTÉRIO MÓRIA · JULHO 2026
   Linguagem visual da Junta Episcopal (pergaminho + ouro velho +
   serifado litúrgico), com ACENTO PRÓPRIO desta convivência:
   verde-mata profundo (o Monastério vive entre jardins, tucanos
   e a Assoprovida) no lugar da ametista do curso de 2010.
   Fontes 100% self-hosted (sem CDN).
   ============================================================ */
@font-face{font-family:'Cormorant Garamond';src:url('fonts/Cormorant.woff2') format('woff2');
 font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:'EB Garamond';src:url('fonts/EBGaramond.woff2') format('woff2');
 font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:'EB Garamond';src:url('fonts/EBGaramond-Italic.woff2') format('woff2');
 font-weight:400 800;font-style:italic;font-display:swap}
@font-face{font-family:'Inter';src:url('fonts/Inter-latin.woff2') format('woff2');
 font-weight:100 900;font-style:normal;font-display:swap;
 unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';src:url('fonts/Inter-latin-ext.woff2') format('woff2');
 font-weight:100 900;font-style:normal;font-display:swap;
 unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
 /* verde-mata profundo — acento primário desta convivência (AA sobre pergaminho) */
 --mata:#2f5d43;--mata-d:#20452f;--mata-l:#7fa48d;--mata-soft:#e9f0ea;
 --mata-grad:linear-gradient(135deg,#20452f,#2f5d43 50%,#3d7154);
 /* ouro velho litúrgico */
 --gold:#9c7a33;--gold-d:#74591f;--gold-l:#d8c285;--gold-dd:#5b4314;
 --gold-foil:linear-gradient(100deg,#83662a 0%,#9c7a33 18%,#d8c285 40%,#f0e2b4 50%,#d8c285 60%,#9c7a33 82%,#83662a 100%);
 --gold-grad:linear-gradient(90deg,transparent,#9c7a33 35%,#d8c285 50%,#9c7a33 65%,transparent);
 /* pergaminho quente */
 --bg1:#f9f6ef;--bg2:#f0ebe0;--ink:#2a2620;--ink2:#433d31;--ink3:#5a5142;
 --card:#fdfbf5;--border:#e4dccb;
 --shadow:0 1px 2px rgba(60,45,20,.05),0 6px 22px rgba(90,70,30,.06);
 --shadow-h:0 16px 44px rgba(90,70,30,.16);
 --step--2:.64rem;--step--1:.8rem;--step-0:1rem;--step-1:1.25rem;--step-2:1.563rem;--step-3:1.953rem;--step-4:2.441rem;--step-5:3.052rem;
 --cap:.74rem;--lh:1.6rem;--rhythm:1.6rem}
body.dark{
 --mata:#a8c9b4;--mata-d:#c0dbc9;--mata-l:#5f8a70;--mata-soft:#1a251e;
 --mata-grad:linear-gradient(135deg,#2f5d43,#4a7d5f 55%,#3d7154);
 --gold:#cbb27e;--gold-d:#d8c285;--gold-l:#e8d49b;--gold-dd:#e3d29c;
 --gold-foil:linear-gradient(100deg,#9c7a33 0%,#cbb27e 20%,#e8d49b 40%,#f6ecce 50%,#e8d49b 60%,#cbb27e 80%,#9c7a33 100%);
 --gold-grad:linear-gradient(90deg,transparent,#cbb27e 35%,#f0e2b4 50%,#cbb27e 65%,transparent);
 --bg1:#211a12;--bg2:#16110b;--ink:#ece6d8;--ink2:#cbc3b0;--ink3:#9f9685;
 --card:#2b2318;--border:#41372a;
 --shadow:0 1px 3px rgba(0,0,0,.4),0 8px 30px rgba(0,0,0,.4);
 --shadow-h:0 16px 44px rgba(0,0,0,.55)}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:118.75%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{font-family:'EB Garamond',Georgia,serif;color:var(--ink);line-height:var(--lh);min-height:100vh;
 font-feature-settings:'kern','liga','clig','onum','pnum';text-rendering:optimizeLegibility;
 background:var(--bg2);background-image:radial-gradient(1100px 620px at 50% -10%,var(--bg1),var(--bg2));
 background-attachment:fixed;-webkit-font-smoothing:antialiased;transition:background .4s,color .3s}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.035;
 background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="2"/></filter><rect width="100%25" height="100%25" filter="url(%23n)"/></svg>')}
body.dark::before{opacity:.025;mix-blend-mode:overlay}
body.dark{background-image:radial-gradient(1000px 560px at 50% -12%,rgba(216,194,133,.10),transparent 60%),radial-gradient(1100px 620px at 50% -10%,var(--bg1),var(--bg2))}
p{orphans:2;widows:2}
::selection{background:rgba(47,93,67,.22)}

.eyebrow{font-family:'Inter',sans-serif;font-size:var(--step--1);font-weight:700;
 font-variant-caps:all-small-caps;letter-spacing:.2em;color:var(--gold-d)}
@supports not (font-variant-caps:all-small-caps){.eyebrow{text-transform:uppercase;font-size:.7rem;letter-spacing:.28em}}
.cormorant{font-family:'Cormorant Garamond',serif}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- tela de senha (limiar) ---------- */
#login{position:fixed;inset:0;z-index:99;display:flex;align-items:center;justify-content:center;
 background:radial-gradient(900px 600px at 50% 0%,var(--bg1),var(--bg2))}
#login::before{content:'';position:absolute;inset:0;
 background:image-set(url("img/hero2-bg.webp") type("image/webp"),url("img/hero2-bg.jpg") type("image/jpeg")) center/cover;
 opacity:.26;filter:blur(2px) sepia(.22) saturate(.82) brightness(1.02)}
#login::after{content:'';position:absolute;inset:0;
 background:radial-gradient(120% 90% at 50% -10%,rgba(156,122,51,.12),transparent 58%),
 radial-gradient(closest-side,transparent 60%,rgba(32,69,47,.22));mix-blend-mode:multiply;pointer-events:none}
.lbox{position:relative;background:var(--card);border:1.5px solid var(--gold);border-radius:22px;
 padding:56px 48px;max-width:468px;width:90%;text-align:center;
 box-shadow:0 30px 90px rgba(32,69,47,.32),0 2px 10px rgba(60,45,20,.18)}
.lbox::before{content:'';position:absolute;inset:-26px;z-index:-1;border-radius:36px;
 background:radial-gradient(closest-side,rgba(249,246,239,.4),transparent 70%);pointer-events:none}
.lbox::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-grad);border-radius:22px 22px 0 0}
body.dark .lbox::before{background:radial-gradient(closest-side,rgba(22,19,15,.6),transparent 75%)}
body.dark .lbox{box-shadow:0 30px 90px rgba(0,0,0,.6),0 2px 10px rgba(0,0,0,.4)}
.seal{width:100px;height:100px;border-radius:50%;margin:0 auto 22px;object-fit:cover;display:block;
 filter:saturate(.76) sepia(.16) brightness(.99);
 box-shadow:0 0 0 2px var(--card),0 0 0 4px rgba(140,108,44,.42),0 0 18px rgba(170,140,88,.26),
 0 12px 30px rgba(32,69,47,.3),inset 0 3px 7px rgba(40,25,10,.4),inset 0 -2px 6px rgba(255,248,230,.22)}
.logdate{font-family:'Inter',sans-serif;font-size:.62rem;font-weight:600;letter-spacing:.18em;
 text-transform:uppercase;color:var(--gold-d);margin:-10px 0 22px;font-variant-numeric:tabular-nums lining-nums}
.lbox h2{font-family:'Cormorant Garamond',serif;font-size:var(--step-3);font-weight:700;line-height:1.1;margin-bottom:6px}
.lbox p{color:var(--ink2);font-family:'Inter',sans-serif;font-size:var(--cap);margin-bottom:22px}
.lbox label{display:block;text-align:left;font-family:'Inter',sans-serif;font-size:var(--cap);font-weight:600;
 color:var(--ink2);margin-bottom:7px;letter-spacing:.02em}
.lbox input{width:100%;padding:13px 16px;border:2px solid var(--mata);border-radius:11px;background:var(--card);
 color:var(--ink);font-size:16px;outline:none;font-family:'Inter',sans-serif}
.lbox input[aria-invalid="true"]{border-color:#b03050}
body.dark .lbox input[aria-invalid="true"]{border-color:#f0939f}
.lbox input::placeholder{color:var(--ink3);opacity:1}
.lbox input:focus{border-color:var(--mata);box-shadow:0 0 0 3px rgba(47,93,67,.22)}
.btn{font-family:'Inter',sans-serif;font-weight:600;letter-spacing:.06em;border:none;cursor:pointer;color:#fff;
 background:var(--mata-grad);border-radius:12px;transition:.25s;text-shadow:0 1px 2px rgba(0,0,0,.15)}
.lbox .btn{width:100%;margin-top:14px;padding:14px;font-size:.8rem;text-transform:uppercase}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(47,93,67,.35)}
#lerr{color:#b03050;font-size:var(--cap);font-weight:600;margin-top:10px;display:none;font-family:'Inter',sans-serif}
body.dark #lerr{color:#f0939f}

/* ---------- app ---------- */
#app{display:none;max-width:920px;margin:0 auto;padding:34px 20px 60px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;
 font-family:'Inter',sans-serif;font-size:.8rem}
.topbar a{text-decoration:none;color:var(--mata-d);font-weight:600}
.night{cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--mata-d);
 border-radius:30px;padding:6px 14px;font-family:'Inter',sans-serif;font-size:.72rem;font-weight:600;
 display:inline-flex;align-items:center;gap:6px}

.header{position:relative;text-align:center;background:var(--card);border:1px solid var(--border);
 border-radius:24px;padding:58px 30px 48px;box-shadow:var(--shadow);overflow:hidden}
.header::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--mata-grad)}
.header::after{content:'';position:absolute;left:50%;transform:translateX(-50%);bottom:15px;width:74px;height:15px;
 background:var(--gold);opacity:.8;
 -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2080%2018'%3E%3Cpath%20fill='%23000'%20d='M40%203l5%206-5%206-5-6z'/%3E%3Cpath%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20d='M33%209C24%209%2018%206%209%208M47%209c9%200%2015-3%2024-2'/%3E%3Ccircle%20cx='7'%20cy='8'%20r='1.8'%20fill='%23000'/%3E%3Ccircle%20cx='73'%20cy='8'%20r='1.8'%20fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2080%2018'%3E%3Cpath%20fill='%23000'%20d='M40%203l5%206-5%206-5-6z'/%3E%3Cpath%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20d='M33%209C24%209%2018%206%209%208M47%209c9%200%2015-3%2024-2'/%3E%3Ccircle%20cx='7'%20cy='8'%20r='1.8'%20fill='%23000'/%3E%3Ccircle%20cx='73'%20cy='8'%20r='1.8'%20fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat}
.header h1{font-family:'Cormorant Garamond',serif;font-weight:700;
 font-size:clamp(var(--step-3),6vw,var(--step-5));letter-spacing:-.015em;margin:14px 0 6px;line-height:1.06;text-wrap:balance}
.header .hdesc{font-family:'Cormorant Garamond',serif;font-weight:600;font-style:italic;
 font-size:clamp(var(--step-1),3vw,var(--step-2));line-height:1.2;margin:2px auto 6px;max-width:36ch;text-wrap:balance;color:var(--ink2)}
.header .tag{display:inline-block;margin-top:12px;padding:7px 20px;background:var(--mata-soft);
 border:1px solid var(--border);border-radius:30px;font-family:'Inter',sans-serif;font-size:.82rem;color:var(--ink2);
 font-feature-settings:'tnum','lnum'}

/* colofão rubricado */
.info{position:relative;display:grid;grid-template-columns:repeat(3,auto);justify-content:center;gap:0;
 margin:var(--rhythm) 0;padding:14px 0}
.info::before,.info::after{content:'';position:absolute;left:6%;right:6%;height:1px;background:var(--gold-grad);opacity:.75}
.info::before{top:0}.info::after{bottom:0}
.icard{padding:0 26px;text-align:center}
.icard+.icard{border-left:1px solid;border-image:linear-gradient(180deg,transparent,var(--gold-l) 30%,var(--gold) 50%,var(--gold-l) 70%,transparent) 1}
@media(max-width:560px){.info{grid-template-columns:1fr;justify-items:center;padding:10px 0}
 .icard{padding:9px 0}.icard+.icard{border-left:none;border-top:1px solid var(--border)}}
.icard .l{font-family:'Inter',sans-serif;font-size:var(--step--1);font-weight:600;font-variant-caps:all-small-caps;
 letter-spacing:.1em;color:var(--mata-d);margin-bottom:4px}
@supports not (font-variant-caps:all-small-caps){.icard .l{text-transform:uppercase;font-size:.62rem;letter-spacing:.14em}}
.icard .v{font-size:var(--step-0);font-feature-settings:'tnum','lnum'}

/* seções */
.sec{background:var(--card);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);
 padding:40px 34px;margin-top:calc(var(--rhythm)*1.4)}
.stitle{font-family:'Cormorant Garamond',serif;font-size:var(--step-3);font-weight:600;
 margin-bottom:var(--rhythm);padding-bottom:calc(var(--rhythm)/2);border-bottom:1px solid var(--border);position:relative}
.stitle::after{content:'';position:absolute;left:0;bottom:-1px;width:80px;height:2px;border-radius:2px;background:var(--gold-foil)}
.stitle small{font-family:'Inter',sans-serif;font-size:var(--cap);font-weight:500;color:var(--ink3);margin-left:8px}

/* carta do convite — página de livro iluminado */
.carta{max-width:64ch;margin:0 auto}
.carta p{font-size:var(--step-0);line-height:1.72;color:var(--ink2);margin-bottom:calc(var(--rhythm)*1.1);
 text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;text-wrap:pretty}
@media(max-width:680px){.carta p{text-align:left}}
.carta p:first-child{font-size:var(--step-1);line-height:1.5;color:var(--ink)}
.carta p:first-child::first-letter{font-family:'Cormorant Garamond',serif;float:left;font-size:3.05em;line-height:.9;
 font-weight:700;margin:.06em .42em .02em 0;padding:.16em .2em .1em;text-align:center;
 color:#f0e2b4;-webkit-text-fill-color:#f0e2b4;
 background:radial-gradient(circle at 50% 32%,rgba(216,194,133,.28),transparent 62%),linear-gradient(135deg,#20452f,#2f5d43 52%,#3d7154);
 border:1px solid #b08d3e;border-radius:6px;
 box-shadow:0 0 0 2px var(--card),0 0 0 3px rgba(176,141,62,.55),0 6px 18px rgba(32,69,47,.35);
 text-shadow:0 1px 0 rgba(0,0,0,.35),0 0 10px rgba(216,194,133,.35)}
.assin{display:flex;gap:34px;justify-content:center;flex-wrap:wrap;margin-top:calc(var(--rhythm)*1.4);text-align:center}
.assin .who{min-width:220px}
.assin .nm{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:var(--step-1);color:var(--ink)}
.assin .rl{font-family:'Inter',sans-serif;font-size:var(--cap);color:var(--gold-d);font-weight:600;letter-spacing:.06em}
.assin .who::before{content:'';display:block;width:170px;height:1px;margin:0 auto 8px;background:var(--gold-grad)}

/* cartões dos dias */
.diagrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){.diagrid{grid-template-columns:1fr}}
.dcard{position:relative;display:block;text-decoration:none;color:inherit;background:var(--card);
 border:1px solid var(--border);border-radius:18px;padding:26px 24px 22px;box-shadow:var(--shadow),inset 0 0 0 1px rgba(156,122,51,.12);
 overflow:hidden;transition:transform .35s cubic-bezier(.2,.85,.25,1),box-shadow .35s,border-color .35s}
.dcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-h);border-color:var(--gold)}
.dcard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--mata-grad)}
.dcard .dnum{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:var(--step-4);line-height:1;
 background:linear-gradient(176deg,#8a6a26,#a9842f 34%,#d4ab50 50%,#9c7a33 68%,#6f5420);
 -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--gold-d)}
body.dark .dcard .dnum{background:var(--gold-foil);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dcard .dwk{font-family:'Inter',sans-serif;font-size:var(--cap);font-weight:700;letter-spacing:.14em;
 text-transform:uppercase;color:var(--mata-d);margin:6px 0 10px}
.dcard .dtx{font-family:'EB Garamond',serif;font-size:var(--step-0);color:var(--ink2);line-height:1.5}
.dcard .dgo{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:'Inter',sans-serif;
 font-size:.72rem;font-weight:700;color:var(--mata-d);border:1px solid var(--gold-l);border-radius:8px;padding:6px 12px}
.dcard:hover .dgo{border-color:var(--gold);color:var(--gold-d);background:rgba(156,122,51,.08)}

/* aviso honesto (grade a confirmar) */
.aviso{max-width:64ch;margin:var(--rhythm) auto 0;background:var(--mata-soft);border:1px solid var(--border);
 border-left:4px solid var(--gold);border-radius:0 16px 16px 0;padding:20px 26px;
 font-family:'Inter',sans-serif;font-size:var(--step--1);color:var(--ink2);line-height:1.6}
.aviso b{color:var(--gold-dd)}
body.dark .aviso b{color:var(--gold-dd)}

/* FAQ — acordeão litúrgico (estilo próprio desta convivência) */
.faq{max-width:64ch;margin:0 auto}
.faq details{border-bottom:1px solid var(--border)}
.faq details:last-child{border-bottom:none}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:14px;
 padding:18px 6px;font-family:'EB Garamond',serif;font-size:var(--step-1);line-height:1.35;color:var(--ink);
 transition:color .2s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--mata-d)}
.faq summary .q{flex:1}
.faq summary .fmark{flex:0 0 auto;font-family:'Cormorant Garamond',serif;font-weight:700;font-size:var(--step-1);
 color:var(--gold);transition:transform .3s;line-height:1}
.faq details[open] summary .fmark{transform:rotate(45deg)}
.faq details[open] summary{color:var(--mata-d);font-weight:600}
.faq .a{padding:0 6px 22px 6px;font-size:var(--step-0);line-height:1.7;color:var(--ink2);max-width:60ch}
.faq .a p{margin-bottom:12px}
.faq .a p:last-child{margin-bottom:0}
.faq .a a{color:var(--mata-d);font-weight:600;text-decoration-color:var(--gold);text-underline-offset:3px}
.faq .a .fonte{display:block;margin-top:8px;font-family:'Inter',sans-serif;font-size:var(--step--2);
 font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}

/* downloads */
.dl{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;justify-content:center}
.dl a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-family:'Inter',sans-serif;
 font-weight:600;font-size:.82rem;padding:13px 24px;border-radius:12px;transition:.25s}
.dl a.primary{color:#fff;background:var(--mata-grad)}
.dl a.parchpdf{color:var(--gold-d);background:var(--card);border:1.5px solid var(--gold)}
.dl a.parchpdf:hover{border-color:var(--gold-d);background:rgba(156,122,51,.07)}
.dl a:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(47,93,67,.2)}

/* listas rubricadas (informações práticas) */
.plist{list-style:none;margin:0;padding:0;max-width:64ch;margin-inline:auto}
.plist li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid var(--border);
 font-family:'EB Garamond',serif;font-size:var(--step-0);line-height:1.55;color:var(--ink2)}
.plist li:last-child{border-bottom:none}
.plist li::before{content:'\2767';position:absolute;left:2px;top:12px;color:var(--gold);font-size:.85rem;opacity:.8}
.plist b{color:var(--ink)}

/* rodapé */
footer{margin-top:calc(var(--rhythm)*1.8);text-align:center;font-family:'Inter',sans-serif;
 font-size:var(--cap);color:var(--ink3);line-height:1.7}
footer .fl{display:block;width:120px;margin:0 auto 12px;opacity:.7}
footer a{color:var(--gold-d);font-weight:600}

/* navegação entre dias */
.dianav{display:flex;justify-content:space-between;gap:12px;margin-top:calc(var(--rhythm)*1.2);
 font-family:'Inter',sans-serif;font-size:.8rem}
.dianav a{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:var(--mata-d);font-weight:600;
 border:1px solid var(--border);background:var(--card);border-radius:12px;padding:11px 18px;transition:.25s}
.dianav a:hover{border-color:var(--gold);color:var(--gold-d)}
