/* Página 3 – Consagração a Jesus pelas mãos de Maria. Layout acessível e editorial. */
.c41-page{--c41-navy:#09263c;--c41-ink:#243f50;--c41-gold:#bb955d;--c41-paper:#f7f2e9;--c41-line:#e0d7c8;font:400 19px/1.7 'Source Sans 3',sans-serif;color:var(--c41-ink);max-width:1390px;margin:auto;min-width:0}
.c41-page *{box-sizing:border-box;min-width:0}
.c41-page h1,.c41-page h2,.c41-page h3{font-family:'Cormorant Garamond',serif;line-height:1.15;letter-spacing:-.017em}
.c41-page button,.c41-page input,.c41-page textarea{font:inherit}
.c41-page :where(button,a,input,textarea):focus-visible{outline:3px solid #2e8bb7;outline-offset:3px}
.c41-kicker{font:700 14px/1.6 'Source Sans 3',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#85602c;display:block}
.c41-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);background:radial-gradient(ellipse at 20% 10%,#25516a 0%,transparent 52%),linear-gradient(130deg,#091e31,#113853);color:white;border-radius:22px;min-height:440px;overflow:hidden;box-shadow:0 24px 55px #0d26342b}
.c41-hero-copy{align-self:center;padding:clamp(27px,4.5vw,73px)}.c41-hero .c41-kicker{color:#f3d8a2}
.c41-hero h1{font-size:clamp(43px,4.5vw,72px);margin:13px 0 24px;color:#fff;font-weight:600}
.c41-hero h1 em{color:#f0cf8e;font-weight:500}.c41-hero p{font-size:21px;color:#e6eaeb;line-height:1.6;max-width:630px;margin:0}
.c41-hero-foot{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px;font-size:18px;color:#f4dfb8;font-weight:700}
.c41-hero-foot span{display:inline-flex;gap:8px;align-items:center}
.c41-hero-image{position:relative;min-height:350px}.c41-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 26%;display:block}
.c41-hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#09283e 0%,transparent 48%);pointer-events:none}
.c41-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:19px 0 37px}
.c41-stats>div{background:#fff;border:1px solid var(--c41-line);border-radius:11px;padding:19px 24px}
.c41-stats span{font-size:14px;letter-spacing:.07em;font-weight:800;color:#586b74;display:block}.c41-stats strong{font-size:32px;line-height:1.35;color:var(--c41-navy)}.c41-stats small{font-size:16px;font-weight:500;color:#637580}
.c41-intro{display:grid;grid-template-columns:70px 1fr;gap:22px;padding:28px 32px;border-left:4px solid var(--c41-gold);background:#f3ecdf;border-radius:13px;margin-bottom:44px}
.c41-intro .c41-ornament{font-size:47px;color:#9b7d48;align-self:start;line-height:1}.c41-intro h2{font-size:37px;color:#102e43;margin:0 0 10px;font-weight:600}
.c41-intro p{font-size:19px;color:#2f4654;line-height:1.77;margin:0 0 13px}.c41-intro p:last-child{margin:0}
.c41-plan,.c41-roadmap,.c41-journal{border:1px solid var(--c41-line);background:#fff;border-radius:17px;padding:clamp(21px,3.7vw,44px);margin-bottom:38px;box-shadow:0 14px 45px #1224360b}
.c41-plan-head{display:flex;justify-content:space-between;gap:28px}.c41-plan h2,.c41-roadmap h2,.c41-journal h2{font-size:clamp(36px,3.6vw,53px);font-weight:600;color:#102d42;margin:6px 0 10px}
.c41-plan-head p,.c41-roadmap>p,.c41-journal-heading p{font-size:19px;color:#48616f;margin:0;max-width:820px}
.c41-seal{color:#b49362;font:600 68px 'Cormorant Garamond',serif;line-height:1}
.c41-plan-form{margin-top:28px;background:#f8f4ec;border-radius:11px;padding:24px;border:1px solid #e9decf}.c41-plan-form label,.c41-journal form>label{display:block;font-size:20px;font-weight:700;margin-bottom:9px;color:#13344b}
.c41-plan-controls{display:flex;align-items:center;flex-wrap:wrap;gap:15px}.c41-plan-controls input{font-size:19px;background:#fff;border:1px solid #98a7ad;border-radius:9px;min-height:58px;padding:10px 15px;color:#152f40;max-width:100%;width:min(280px,100%)}
.c41-btn{min-height:58px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 23px;border-radius:9px;border:0;font-weight:800;font-size:19px;cursor:pointer;text-decoration:none}
.c41-btn-gold{background:#bd9457;color:#112a3b}.c41-btn-gold:hover:not(:disabled){background:#dbb16f}.c41-page button:disabled{cursor:not-allowed;opacity:.48}
.c41-help{font-size:17px;color:#4e6471;margin:15px 0 4px}.c41-status{font-size:17px;color:#25633e;line-height:1.5;margin:8px 0 0;max-width:100%;overflow-wrap:anywhere}
.c41-roadmap>p{margin-bottom:25px}.c41-phases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.c41-phase{background:#f7f3ec;border:1px solid #ded3c1;border-radius:11px;padding:15px 18px;cursor:pointer;color:#153a50;text-align:left;display:flex;flex-direction:column;gap:4px;min-height:110px}
.c41-phase-index{font-size:14px;color:#816236;font-weight:800;letter-spacing:.04em}.c41-phase strong{font-size:21px;line-height:1.23}.c41-phase small{font-size:15px;color:#627179;font-weight:700}.c41-phase:hover{background:#ede4d6}
.c41-phase.c41-active{color:#fff;background:#0f374f;border-color:#0f374f;box-shadow:inset 0 0 0 1px #d8b47b}.c41-active .c41-phase-index,.c41-active small{color:#e9cc9e}
.c41-phase-detail{background:#0b304a;color:#fff;margin-top:22px;border-radius:12px 12px 0 0;padding:25px 29px;display:flex;justify-content:space-between;align-items:center;gap:15px}
.c41-phase-detail small{font-size:14px;color:#e7c58f;font-weight:800;letter-spacing:.08em}.c41-phase-detail h3{font-size:36px;color:#fff;margin:6px 0 8px}.c41-phase-detail p{font-size:18px;color:#e0ebee;max-width:850px;margin:0}.c41-phase-detail>span{font-size:44px;color:#d3a970}
.c41-days{padding:21px;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px;background:#f8f5ee;border:1px solid #e6dacb;border-top:0;border-radius:0 0 12px 12px}
.c41-day{position:relative;min-height:56px;border:1px solid #c9beb0;border-radius:9px;background:#fff;color:#16364b;font-size:21px;font-weight:800;cursor:pointer}.c41-day:hover{background:#e8efee}
.c41-day-active{background:#123950!important;color:#fff!important;border-color:#123950!important;box-shadow:0 0 0 2px #d3ad78}.c41-day-done>span{position:absolute;right:5px;top:2px;font-size:13px;color:#27815a}.c41-day-active>span{color:#a9e5be}
.c41-day-navigation{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:22px}.c41-day-navigation button{min-height:51px;padding:10px 17px;display:flex;align-items:center;justify-content:center;gap:9px;background:white;border:1px solid #9cabb3;border-radius:9px;font-size:17px;font-weight:800;cursor:pointer;color:#15374e}.c41-day-navigation button:hover:not(:disabled){background:#f0f5f3}
.c41-reading{background:#fff;border:1px solid var(--c41-line);border-radius:18px;overflow:hidden;margin-bottom:40px;box-shadow:0 15px 45px #142d3910;scroll-margin-top:90px}
.c41-reading-head{padding:clamp(25px,4vw,53px);background:linear-gradient(120deg,#f3eadb,#fffaf4);border-bottom:1px solid #e8ddc9}.c41-reading-head h2{font-size:clamp(43px,4.5vw,67px);font-weight:600;color:#0e2e43;margin:9px 0}.c41-reading-head p{margin:0;font-size:20px;color:#64533c;font-weight:700}
.c41-scripture{display:flex;align-items:center;justify-content:space-between;padding:24px clamp(25px,4vw,52px);background:#0d354f;color:#fff;gap:20px}.c41-scripture .c41-kicker{color:#e6c489}.c41-scripture strong{font:600 36px 'Cormorant Garamond',serif;display:block;margin:3px 0}.c41-scripture p{color:#e7eaeb;font-size:17px;max-width:760px;margin:0}
.c41-reading-grid{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(280px,.86fr);gap:29px;padding:clamp(25px,4vw,52px)}.c41-meditation h3,.c41-reading-aside h3{font-size:39px;font-weight:600;color:#0e2d43;margin:12px 0 17px}
.c41-meditation>p,.c41-reading-aside p{font-size:21px;line-height:1.78;color:#324b5a;margin:0 0 23px}.c41-question{border-left:4px solid #b6915e;background:#f9f3e9;border-radius:0 10px 10px 0;padding:21px 24px;margin-top:33px}.c41-question span{font-size:14px;font-weight:800;letter-spacing:.08em;color:#865d2e}.c41-question p{font-size:22px;font-weight:700;color:#223c4b;margin:8px 0}
.c41-reading-aside{display:flex;flex-direction:column;gap:18px}.c41-reading-aside>div{border-radius:12px;padding:25px 26px;border:1px solid #e6d8c6;background:#f9f5ee}.c41-reading-aside h3{font-size:32px;margin:9px 0}.c41-reading-aside .c41-prayer{background:#103650;border-color:#103650;color:#fff}.c41-prayer .c41-kicker{color:#f0c88c}.c41-prayer h3,.c41-prayer p{color:#fff}.c41-reading-aside .c41-tradition{background:#eef2f0;border-color:#d9e0df}.c41-tradition a{font-size:17px;color:#1b5977;text-decoration:underline;font-weight:800;display:inline-flex;align-items:center;gap:9px;line-height:1.45}
.c41-reading-foot{display:flex;align-items:flex-start;gap:12px;background:#f7f8f7;padding:18px 30px;color:#50616c;font-size:17px;line-height:1.55}
.c41-journal-heading{display:flex;gap:17px;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.c41-entry-badge{font-size:15px;font-weight:700;color:#4b624f;background:#e8f0e9;padding:9px 13px;border-radius:60px;white-space:nowrap}
.c41-journal textarea{width:100%;min-height:160px;padding:18px 20px;border:1px solid #aab9c0;border-radius:10px;resize:vertical;font-size:20px;color:#1b394e;line-height:1.6;background:white}.c41-journal textarea:disabled{background:#f5f4f1}
.c41-counter{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#516674;font-size:16px;margin:7px 0 17px}.c41-counter span{white-space:nowrap}
.c41-completed{display:flex;align-items:center;gap:13px;font-size:20px;font-weight:700;color:#244357;margin:16px 0 27px;cursor:pointer}.c41-completed input{width:26px;height:26px;flex-shrink:0;accent-color:#0d567a}
.c41-journal-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap}
.c41-finish{background:radial-gradient(ellipse at 88% 0,#1e5263,transparent 48%),#0b293f;border:1px solid #b39b75;border-radius:16px;color:#fff;padding:clamp(27px,4vw,50px);margin-bottom:30px}.c41-finish .c41-kicker{color:#e7c38a}.c41-finish h2{font-size:clamp(38px,4vw,58px);font-weight:600;color:#fff;margin:9px 0 19px}.c41-finish>p{font-size:20px;line-height:1.76;color:#e1e9e9;max-width:950px}.c41-finish-links{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0}.c41-finish-links a{display:inline-flex;align-items:center;gap:7px;min-height:53px;padding:9px 15px;border:1px solid #c6a774;background:#153e57;color:#fff;font-size:17px;font-weight:700;text-decoration:none;border-radius:7px}.c41-finish-links a:hover{background:#23516a}.c41-finish .c41-finish-note{border-top:1px solid #6c8290;padding-top:17px;margin-bottom:0;color:#f3dab0;font-size:17px}
@media(max-width:1000px){.c41-phases{grid-template-columns:repeat(2,minmax(0,1fr))}.c41-reading-grid{grid-template-columns:1fr}.c41-days{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media(max-width:780px){.c41-hero{grid-template-columns:1fr}.c41-hero-image{height:210px;min-height:0;order:-1}.c41-hero-image:after{background:linear-gradient(0deg,#102f47,transparent 45%)}.c41-hero-copy{padding:30px}.c41-hero h1{font-size:52px}.c41-stats{grid-template-columns:1fr 1fr}.c41-stats>div:last-child{grid-column:1/-1}.c41-intro{grid-template-columns:1fr;gap:8px}.c41-intro .c41-ornament{font-size:31px}.c41-days{grid-template-columns:repeat(6,minmax(0,1fr))}.c41-day-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.c41-day-navigation button:nth-child(2){grid-column:1/-1;grid-row:1}.c41-plan-head{align-items:flex-start}}
@media(max-width:490px){.c41-page{font-size:18px}.c41-hero{border-radius:13px}.c41-hero-image{height:175px}.c41-hero-copy{padding:24px 20px}.c41-hero h1{font-size:43px}.c41-hero p{font-size:19px}.c41-hero-foot{gap:8px 16px;font-size:16px}.c41-stats{gap:8px}.c41-stats>div{padding:12px 15px}.c41-stats span{font-size:12px}.c41-stats strong{font-size:25px}.c41-stats small{font-size:14px}.c41-intro{padding:20px}.c41-intro h2{font-size:34px}.c41-intro p{font-size:18px}.c41-plan,.c41-roadmap,.c41-journal{padding:20px}.c41-seal{display:none}.c41-plan-controls{display:grid}.c41-plan-controls input,.c41-plan-controls button{width:100%}.c41-phases{gap:7px}.c41-phase{padding:11px;min-height:100px}.c41-phase-index{font-size:12px}.c41-phase strong{font-size:17px}.c41-phase small{font-size:13px}.c41-phase-detail{padding:19px;flex-direction:column;align-items:flex-start}.c41-phase-detail h3{font-size:30px}.c41-phase-detail p{font-size:17px}.c41-phase-detail>span{display:none}.c41-days{grid-template-columns:repeat(5,minmax(0,1fr));padding:12px;gap:6px}.c41-day{font-size:18px;min-height:47px}.c41-day-navigation button{font-size:16px;gap:4px;padding:9px}.c41-reading-head{padding:26px 20px}.c41-reading-head h2{font-size:45px}.c41-scripture{padding:19px 20px}.c41-scripture strong{font-size:32px}.c41-scripture>svg{display:none}.c41-reading-grid{padding:25px 20px}.c41-meditation h3{font-size:35px}.c41-meditation>p,.c41-reading-aside p{font-size:19px}.c41-reading-aside>div{padding:22px}.c41-question{padding:19px}.c41-question p{font-size:19px}.c41-reading-foot{padding:16px 20px}.c41-journal-heading{flex-direction:column}.c41-entry-badge{white-space:normal}.c41-completed{font-size:18px}.c41-btn{width:100%}.c41-finish{padding:24px 21px}.c41-finish h2{font-size:40px}.c41-finish>p{font-size:19px}.c41-finish-links{flex-direction:column}.c41-finish-links a{width:100%}}
@media(prefers-reduced-motion:reduce){.c41-page *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Protect high-contrast headings against older global CSS declarations. */
.c41-page .c41-hero h1,.c41-page .c41-phase-detail h3,.c41-page .c41-prayer h3,.c41-page .c41-finish h2{color:#fff}
/* A+ / letras maiores – adaptação sem armazenar preferências no navegador. */
body.ex-reading-large .c41-page{font-size:22px}
body.ex-reading-large .c41-page :is(.c41-intro p,.c41-hero p,.c41-reading-grid p,.c41-journal-heading p,.c41-finish>p,.c41-roadmap>p,.c41-phase-detail p){font-size:clamp(20px,1.2em,25px)!important;line-height:1.7}
body.ex-reading-large .c41-page :is(.c41-phase strong,.c41-btn,.c41-completed,.c41-plan-form label,.c41-journal form>label){font-size:23px!important}
body.ex-reading-large .c41-page :is(.c41-kicker,.c41-phase-index,.c41-stats span,.c41-phase small,.c41-entry-badge){font-size:17px!important}
body.ex-reading-large .c41-page :is(.c41-stats,.c41-phases,.c41-reading-grid){min-width:0}
@media(max-width:490px){body.ex-reading-large .c41-page .c41-hero h1{font-size:44px}body.ex-reading-large .c41-page .c41-phase{padding:10px}body.ex-reading-large .c41-page .c41-phase strong{font-size:19px!important}}

/* v0.7.6 · Acabamento editorial no próprio componente c41.
   Tokens compartilhados do design system original, sem CSS global adicional. */
.c41-page {
  --ap-page-ivory:var(--ap-ivory,#f8f6f0);
  --ap-page-paper:var(--ap-paper,#fffefa);
  --ap-page-gold:var(--ap-gold,#a7793e);
  --ap-page-rule:var(--ap-rule,#ddd5c7);
}
.c41-hero {
  border-radius:var(--ap-radius-lg,20px);
  box-shadow:0 16px 45px rgba(9,38,56,.13),0 1px 2px rgba(9,38,56,.08);
}
.c41-hero :where(h1) {text-wrap:balance;letter-spacing:-.02em;line-height:1.05}
.c41-hero :where(p) {max-width:62ch;line-height:1.65}
.c41-hero :where(button,a) {text-decoration-thickness:1px;text-underline-offset:4px}
.c41 :where(button,a,input,textarea,select,summary):focus-visible {outline:3px solid var(--ap-focus,#9b6e2e);outline-offset:3px}
.c41 :where(input,textarea,select) {accent-color:var(--ap-gold,#a7793e)}
.c41 :where(h2,h3) {text-wrap:balance}
@media(max-width:600px) {
 .c41-hero {border-radius:14px}
 .c41-hero :where(h1) {letter-spacing:-.024em;line-height:1.08}
}

/* Mobile typography: readable, architectural rather than oversized poster text. */
@media(max-width:600px){
 .c41-hero :where(h1){font-size:clamp(37px,9.8vw,49px);line-height:1.08;overflow-wrap:normal}
 .c41-hero :where(p){font-size:clamp(16px,4.15vw,19px);line-height:1.6}
}
