/* Santo Rosário v0.4.2: sacro contemporâneo, contraste e leitura acessível. */
.r42-page{--r42-navy:#0b2b43;--r42-deep:#081d30;--r42-gold:#bb975f;--r42-ink:#233b4c;--r42-line:#dcd1c0;--r42-cream:#f7f1e6;font:400 19px/1.7 'Source Sans 3',system-ui,sans-serif;color:var(--r42-ink);max-width:1390px;margin:auto;min-width:0}
.r42-page *{box-sizing:border-box;min-width:0}.r42-page :where(h1,h2,h3){font-family:'Cormorant Garamond',Georgia,serif;letter-spacing:-.012em;line-height:1.13;font-weight:600}.r42-page h1,.r42-page h2,.r42-page h3,.r42-page p{overflow-wrap:break-word}.r42-page button{font:inherit;cursor:pointer;touch-action:manipulation}.r42-page button:disabled{opacity:.55;cursor:not-allowed}.r42-page :where(button,a,summary):focus-visible{outline:3px solid #22749c;outline-offset:4px}.r42-page a{color:#0d5276;text-decoration:underline;text-underline-offset:4px}
.r42-kicker{display:block;font:800 14px/1.4 'Source Sans 3',sans-serif;letter-spacing:.11em;text-transform:uppercase;color:#806032}
.r42-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.78fr);min-height:425px;background:radial-gradient(ellipse at 25% 0,#245471 0,transparent 52%),linear-gradient(125deg,#081d30,#13415c);border-radius:20px;overflow:hidden;color:#fff;box-shadow:0 25px 50px #0a233323}
.r42-hero-copy{padding:clamp(26px,4.4vw,67px);align-self:center}.r42-hero .r42-kicker{color:#f5dcac}.r42-hero h1{color:#fff;font-size:clamp(42px,4.2vw,68px);margin:14px 0 16px}.r42-hero h1 em{font-weight:500;color:#f1cb91}.r42-hero p{font-size:22px;line-height:1.56;color:#edf4f3;max-width:690px;margin:0}.r42-hero-tags{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:28px;font-size:17px;font-weight:700;color:#f3d9a9}.r42-hero-tags span{display:inline-flex;align-items:center;gap:8px}
.r42-hero-portrait{position:relative;min-height:320px}.r42-hero-portrait img{height:100%;width:100%;object-fit:cover;object-position:center 25%;display:block}.r42-hero-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#123b50 0%,transparent 48%);pointer-events:none}
.r42-note{display:grid;grid-template-columns:61px minmax(0,1fr);gap:17px;margin:26px 0 48px;padding:25px 31px;background:#f4ecdf;border-left:4px solid #b58d50;border-radius:12px}.r42-note-mark{font-size:45px;color:#997746;line-height:1}.r42-note h2{font-size:clamp(31px,3.3vw,43px);margin:0 0 9px;color:#10354b}.r42-note p{font-size:19px;margin:0;line-height:1.75}
.r42-title{margin:0 0 26px}.r42-title h2{font-size:clamp(35px,3.5vw,51px);margin:9px 0 10px;color:#10374f}.r42-title p{font-size:19px;max-width:860px;margin:0;color:#475b66}
.r42-pick{padding:clamp(20px,3vw,36px);background:white;border:1px solid var(--r42-line);box-shadow:0 13px 34px #152b3a0e;border-radius:16px;margin-bottom:38px}.r42-sets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.r42-set{background:#f8f5ef;border:1px solid #d6c9b7;border-radius:12px;text-align:left;padding:20px 16px;display:flex;flex-direction:column;gap:5px;min-height:164px;color:#193b50;position:relative;transition:background .2s,transform .2s}.r42-set:hover{background:#f1e7d8;transform:translateY(-2px)}.r42-set-icon{color:#ac8850;font-size:28px;line-height:1}.r42-set strong{font-size:24px;font-weight:800}.r42-set small{font-size:16px;line-height:1.33;color:#546c78}.r42-set em{color:#6c5029;font-size:13px;font-weight:800;font-style:normal;text-transform:uppercase;letter-spacing:.05em;margin-top:auto}.r42-set.r42-selected{background:#0e344c;border:2px solid #c69f66;color:white;box-shadow:inset 0 0 0 2px #0e344c}.r42-set.r42-selected small{color:#e0ebef}.r42-set.r42-selected em{color:#f4d8a8}.r42-hint{background:#f7f3ed;border-radius:10px;margin:22px 0 0;padding:15px 18px;color:#365469;font-size:17px}
.r42-reading-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr);gap:26px;align-items:start;margin-bottom:42px}.r42-reading-main,.r42-prayer-sidebar{min-width:0}.r42-reading-main>.r42-title{padding:0 10px}
.r42-mysteries{display:flex;flex-direction:column;gap:10px;margin:23px 0 30px}.r42-mystery{display:flex;align-items:center;gap:17px;width:100%;min-height:88px;text-align:left;background:#fff;border:1px solid #ded7cb;border-radius:11px;padding:14px 19px;color:#183d55}.r42-mystery:hover{background:#f6f0e7}.r42-mystery-active{background:#e9f0ef;border:2px solid #0e4967;box-shadow:0 8px 23px #24495a11}.r42-mystery-index{border:1px solid #ceb994;border-radius:50%;width:49px;height:49px;flex:0 0 49px;display:grid;place-items:center;font-weight:800;font-size:18px;color:#7a602e}.r42-mystery strong{display:block;font-size:20px;line-height:1.3;font-weight:800}.r42-mystery small{font-size:15px;color:#536774;line-height:1.45;display:block;margin-top:3px}.r42-mystery-check{color:#28704a;font-size:25px;margin-left:auto}
.r42-meditation{border-radius:16px;background:#fff;border:1px solid #e2d8c8;overflow:hidden;scroll-margin-top:85px;padding:clamp(23px,3.3vw,41px);box-shadow:0 15px 40px #0b253112}.r42-meditation h2{font-size:clamp(36px,4vw,53px);margin:11px 0 23px;color:#0b3047}.r42-scripture{background:#0f3b56;color:white;border-radius:12px;padding:22px 25px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 31px}.r42-scripture small{font-size:13px;letter-spacing:.07em;color:#f6d59f;font-weight:800;display:block}.r42-scripture strong{font-size:32px;display:block;font-family:'Cormorant Garamond',Georgia,serif;line-height:1.25}.r42-scripture span{display:block;font-size:16px;color:#e5ecec;line-height:1.55}.r42-scripture>svg{flex-shrink:0}.r42-meditation h3{font-size:35px;color:#133b50;margin:0 0 17px}.r42-meditation>p{font-size:20px;line-height:1.8;color:#304b5a;margin:0 0 21px}.r42-meditation-prompt{padding:22px 25px;border-left:4px solid #b59460;background:#f7f0e4;margin:24px 0;border-radius:0 10px 10px 0}.r42-meditation-prompt span,.r42-meditation-actions span{font-size:14px;font-weight:800;letter-spacing:.075em;color:#8a6632}.r42-meditation-prompt p{font-size:21px;color:#223d4d;font-weight:700;margin:7px 0 0}.r42-meditation-actions{display:grid;grid-template-columns:1fr 1fr;gap:15px}.r42-meditation-actions section{background:#f8f4ed;border-radius:12px;padding:20px;border:1px solid #e5d9c5}.r42-meditation-actions section:last-child{background:#0d354d;border-color:#0d354d;color:#fff}.r42-meditation-actions section:last-child span{color:#eac68b}.r42-meditation-actions strong{display:block;color:#1a3b50;font-size:21px;margin-top:8px}.r42-meditation-actions p{font-size:19px;line-height:1.65;margin:8px 0 0}.r42-meditation-actions section:last-child p{color:white}
.r42-prayer-sidebar{display:flex;flex-direction:column;gap:22px}.r42-prayer-sidebar>section{background:#fff;border:1px solid #e1d7c8;border-radius:14px;padding:clamp(22px,2.7vw,31px);box-shadow:0 11px 29px #102a3b0b}.r42-prayer-sidebar h2{font-size:36px;color:#10374f;margin:8px 0 17px}.r42-prayer-sidebar p{font-size:18px;color:#3c5361;line-height:1.68}.r42-steps ol{counter-reset:step;list-style:none;padding:0;margin:24px 0}.r42-steps li{position:relative;padding:0 0 21px 54px;counter-increment:step;font-size:19px;line-height:1.6;color:#2f4a59}.r42-steps li:before{content:counter(step);position:absolute;left:0;top:0;background:#e9ddc7;color:#6a512f;display:grid;place-items:center;border-radius:50%;width:39px;height:39px;font-weight:800}.r42-steps li:not(:last-child):after{content:'';position:absolute;top:41px;bottom:0;left:19px;width:1px;background:#ddcdb2}.r42-prayers{background:#fbf8f1!important}.r42-prayer-detail{border:1px solid #d9cbb7;border-radius:10px;background:white;margin:10px 0;overflow:hidden}.r42-prayer-detail summary{cursor:pointer;padding:16px 18px;color:#133d52;font-size:19px;font-weight:800;display:flex;justify-content:space-between;gap:10px;align-items:center}.r42-prayer-detail summary small{color:#566c77;font-size:14px;font-weight:500}.r42-prayer-detail[open]{box-shadow:inset 0 3px #b99761}.r42-prayer-detail p{font-size:19px;line-height:1.76;margin:0;padding:18px 20px 23px;background:#fbf9f5;white-space:normal}.r42-family{background:#eaf0ee!important}.r42-family p{margin-bottom:0}
.r42-guided{border:1px solid #ccbc9f;border-radius:18px;padding:clamp(22px,3.6vw,47px);background:linear-gradient(135deg,#fff,#faf4ea);box-shadow:0 18px 45px #112a390d;margin-bottom:42px;scroll-margin-top:90px}.r42-guided-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.r42-guided-heading h2{font-size:clamp(38px,4vw,57px);color:#0c344b;margin:8px 0 10px}.r42-guided-heading p{font-size:19px;color:#415967;max-width:850px;margin:0}.r42-guided-cross{font-size:56px;color:#b99869}.r42-guided-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:27px 0}.r42-guided-status>div{border:1px solid #ded3c1;border-radius:11px;padding:18px 21px;background:#fff}.r42-guided-status span{display:block;font-size:13px;color:#576c76;letter-spacing:.045em;font-weight:800}.r42-guided-status strong{font-size:30px;color:#0f3952;line-height:1.4}.r42-guided-status small{font-size:17px;color:#586e79;font-weight:500}.r42-guided-body{background:#123d55;color:#fff;border-radius:14px;padding:clamp(20px,3vw,37px)}.r42-beads{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px;margin-bottom:28px}.r42-bead{border:2px solid #f2dfbb;background:#fff;display:grid;place-items:center;border-radius:50%;aspect-ratio:1;color:#153e56;font-size:21px;font-weight:800;min-height:46px;padding:0}.r42-bead:hover{background:#e6eced}.r42-bead-done{background:#d6a96b!important;color:#152d3c!important;border-color:#ead1a7}.r42-guided-instruction h3{color:#fff;font-size:34px;margin:3px 0 12px}.r42-guided-instruction p{color:#e0edf1;font-size:19px;line-height:1.7;max-width:950px;margin:0 0 18px}.r42-bead-actions{display:flex;gap:11px;flex-wrap:wrap}.r42-bead-actions button,.r42-finish-decade button{font-size:18px;min-height:54px;display:inline-flex;gap:9px;align-items:center;justify-content:center;font-weight:800;border:1px solid #cbd9dc;border-radius:10px;background:#edf0ef;color:#10344a;padding:12px 17px}.r42-bead-actions button.r42-primary,.r42-finish-decade button.r42-primary{background:#d9af71;color:#142d3e;border-color:#e9c891}.r42-bead-actions button.r42-primary:hover,.r42-finish-decade button.r42-primary:hover{background:#f2ce94}.r42-finish-decade{margin-top:23px;padding:24px;border-radius:11px;background:#234f62;border-left:3px solid #e4ba7f}.r42-finish-decade strong{font-size:22px;color:#fff}.r42-finish-decade p{margin:10px 0 16px}.r42-guided-message{margin:17px 0 5px;font-size:19px;font-weight:800;color:#146343;min-height:22px}.r42-privacy{background:#f1ece3;border-radius:9px;padding:16px 19px;color:#3b5666;font-size:17px;line-height:1.6;margin:10px 0 0}
.r42-questions{border:1px solid #e0d6c7;border-radius:16px;padding:clamp(23px,4vw,44px);background:#fff;margin-bottom:34px}.r42-questions h2{font-size:42px;color:#0e354b;margin:8px 0 20px}.r42-questions details{border-top:1px solid #e5dacb;padding:16px 0}.r42-questions summary{font-size:21px;font-weight:800;cursor:pointer;color:#15394b}.r42-questions details p{font-size:19px;line-height:1.72;max-width:950px}.r42-sources{border-top:1px solid #d3c7b2;padding:27px 10px 35px;margin-bottom:22px}.r42-sources p{font-size:17px;margin:8px 0}.r42-sources a{font-size:18px;font-weight:800}
@media(max-width:1100px){.r42-sets{grid-template-columns:repeat(2,minmax(0,1fr))}.r42-reading-grid{grid-template-columns:1fr}.r42-prayer-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.r42-steps{grid-row:span 2}.r42-beads{grid-template-columns:repeat(5,minmax(0,1fr))}.r42-bead{aspect-ratio:auto;min-height:60px}}
@media(max-width:780px){.r42-hero{grid-template-columns:1fr}.r42-hero-portrait{order:-1;min-height:0;height:230px}.r42-hero-portrait:after{background:linear-gradient(0deg,#102f47,transparent 50%)}.r42-hero-copy{padding:27px}.r42-hero h1{font-size:60px}.r42-guided-status{grid-template-columns:1fr 1fr}.r42-guided-status>div:first-child{grid-column:1/-1}.r42-prayer-sidebar{grid-template-columns:1fr}.r42-steps{grid-row:auto}}
@media(max-width:490px){.r42-page{font-size:18px}.r42-hero{border-radius:14px;min-height:0}.r42-hero-portrait{height:190px}.r42-hero-copy{padding:23px 20px}.r42-hero h1{font-size:54px}.r42-hero p{font-size:19px}.r42-hero-tags{font-size:15px;gap:8px 13px}.r42-note{grid-template-columns:1fr;padding:21px;margin-bottom:30px}.r42-note-mark{font-size:27px}.r42-note h2{font-size:33px}.r42-note p{font-size:18px}.r42-title h2{font-size:37px}.r42-title p{font-size:18px}.r42-pick{padding:19px 16px}.r42-sets{gap:8px}.r42-set{min-height:151px;padding:14px 12px}.r42-set strong{font-size:20px}.r42-set small{font-size:14px}.r42-set em{font-size:11px}.r42-set-icon{font-size:22px}.r42-hint{font-size:16px}.r42-reading-grid{gap:13px}.r42-reading-main>.r42-title{padding:0}.r42-mystery{padding:14px 11px;gap:10px}.r42-mystery-index{width:42px;height:42px;flex-basis:42px;font-size:17px}.r42-mystery strong{font-size:18px}.r42-mystery small{font-size:14px}.r42-meditation{padding:22px 18px}.r42-meditation h2{font-size:42px}.r42-scripture{padding:19px}.r42-scripture strong{font-size:29px}.r42-scripture svg{display:none}.r42-meditation>p{font-size:19px}.r42-meditation-actions{grid-template-columns:1fr}.r42-prayer-sidebar>section{padding:22px}.r42-prayer-sidebar h2{font-size:35px}.r42-prayer-detail summary{flex-direction:column;align-items:flex-start}.r42-guided{padding:20px 16px}.r42-guided-cross{display:none}.r42-guided-heading h2{font-size:42px}.r42-guided-status{gap:8px}.r42-guided-status>div{padding:12px}.r42-guided-status span{font-size:11px}.r42-guided-status strong{font-size:25px}.r42-guided-body{padding:18px 12px}.r42-beads{gap:7px}.r42-bead{min-height:53px;font-size:19px}.r42-bead-actions{display:grid;grid-template-columns:1fr}.r42-bead-actions button{width:100%}.r42-questions{padding:20px}.r42-questions h2{font-size:36px}.r42-questions summary{font-size:19px}}
@media(prefers-reduced-motion:reduce){.r42-page *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
body.ex-reading-large .r42-page{font-size:22px}body.ex-reading-large .r42-page :is(.r42-hero p,.r42-note p,.r42-title p,.r42-meditation>p,.r42-meditation-actions p,.r42-prayer-sidebar p,.r42-guided-heading p,.r42-guided-instruction p,.r42-prayer-detail p,.r42-questions details p){font-size:clamp(20px,1.25em,25px)!important;line-height:1.72}body.ex-reading-large .r42-page :is(.r42-set strong,.r42-mystery strong,.r42-prayer-detail summary,.r42-bead-actions button,.r42-questions summary){font-size:clamp(20px,1.18em,24px)!important}body.ex-reading-large .r42-page :is(.r42-set small,.r42-mystery small,.r42-kicker,.r42-guided-status span){font-size:16px!important}body.ex-reading-large .r42-page .r42-sets{min-width:0}

/* v0.7.6 · Acabamento editorial no próprio componente r42.
   Tokens compartilhados do design system original, sem CSS global adicional. */
.r42-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);
}
.r42-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);
}
.r42-hero :where(h1) {text-wrap:balance;letter-spacing:-.02em;line-height:1.05}
.r42-hero :where(p) {max-width:62ch;line-height:1.65}
.r42-hero :where(button,a) {text-decoration-thickness:1px;text-underline-offset:4px}
.r42 :where(button,a,input,textarea,select,summary):focus-visible {outline:3px solid var(--ap-focus,#9b6e2e);outline-offset:3px}
.r42 :where(input,textarea,select) {accent-color:var(--ap-gold,#a7793e)}
.r42 :where(h2,h3) {text-wrap:balance}
@media(max-width:600px) {
 .r42-hero {border-radius:14px}
 .r42-hero :where(h1) {letter-spacing:-.024em;line-height:1.08}
}

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