@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-normal-uvC0WHQr.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-normal-DYeaGGzO.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-ext-700-normal-CNjt5vTB.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-ext-700-normal-qRbaVVD7.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-ext-400-normal-Cp7z-ARB.woff2)format("woff2"),url(/assets/source-serif-4-latin-ext-400-normal-CEpydyUl.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/source-serif-4-latin-ext-400-italic-JynPwBMj.woff2)format("woff2"),url(/assets/source-serif-4-latin-ext-400-italic-G7LDTi7t.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-serif-4-latin-ext-600-normal-0sIUyHMO.woff2)format("woff2"),url(/assets/source-serif-4-latin-ext-600-normal-C6NNqpJh.woff)format("woff")}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-serif-4-latin-ext-700-normal-C8ywwcuQ.woff2)format("woff2"),url(/assets/source-serif-4-latin-ext-700-normal-BZsvHpal.woff)format("woff")}:root{--paper:#f3ecdd;--paper-bright:#fffaf0;--paper-deep:#e7dcc8;--ink:#201b18;--ink-soft:#655c53;--red:#981f1b;--red-dark:#6f1614;--gold:#b68a52;--rule:#34292033;--shadow:0 24px 70px #40261524;--display:"Cormorant Garamond", Georgia, serif;--body:"Source Serif 4", Georgia, serif;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;opacity:.19;z-index:20;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.11'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}::selection{color:var(--ink);background:#d9b48c}.skip-link{z-index:100;color:#fff;background:var(--ink);padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:1px solid var(--rule);z-index:10;justify-content:space-between;align-items:center;width:min(100% - 3rem,1440px);height:92px;margin:0 auto;display:flex;position:relative}.wordmark{font:600 1.55rem/1 var(--display);letter-spacing:.025em;align-items:baseline;gap:.55rem;text-decoration:none;display:inline-flex}.wordmark-mark{color:var(--red);font-size:1rem}.wordmark small{font:600 .63rem/1 var(--body);color:var(--red);letter-spacing:.16em}.site-header nav,.site-footer nav{align-items:center;gap:2rem;display:flex}.site-header nav a,.site-footer nav a{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;text-decoration:none;position:relative}.site-header nav a:after{content:"";background:var(--red);transform-origin:0;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-.5rem;left:0;transform:scaleX(0)}.site-header nav a:hover:after,.site-header nav a.active:after{transform:scaleX(1)}.site-footer{border-top:1px solid var(--rule);width:min(100% - 3rem,1440px);color:var(--ink-soft);justify-content:space-between;align-items:center;margin:5rem auto 0;padding:2rem 0 3rem;font-size:.82rem;display:flex}.site-footer p{margin:0}.site-footer p span{color:var(--red);margin-right:.4rem}.eyebrow{color:var(--red);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .8rem;font-size:.68rem;font-weight:700}h1,h2,h3,p{text-wrap:pretty}h1,h2,h3{font-family:var(--display)}em{font-weight:400}.home-hero{grid-template-columns:minmax(0,1.16fr) minmax(340px,.62fr);align-items:center;gap:clamp(3rem,9vw,9rem);width:min(100% - 3rem,1320px);min-height:690px;margin:0 auto;padding:6.7rem 4rem 6rem;display:grid;position:relative}.home-hero:before{content:"";background:var(--red);width:1px;height:24%;position:absolute;top:-1px;right:15%}.hero-copy h1,.page-intro h1,.explainer-hero h1{font:500 clamp(4.7rem, 8vw, 8.6rem)/.78 var(--display);letter-spacing:-.055em;margin:0}.hero-copy h1 em,.page-intro h1 em,.explainer-hero h1 em{color:var(--red)}.hero-deck{color:#493f37;max-width:670px;margin:2.7rem 0 0;font-size:clamp(1.07rem,1.5vw,1.35rem);line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.7rem;margin-top:2.8rem;display:flex}.primary-action{color:#fff;background:var(--red);text-transform:uppercase;letter-spacing:.12em;min-width:260px;box-shadow:7px 7px 0 var(--red-dark);justify-content:space-between;align-items:center;gap:2.5rem;padding:1rem 1.15rem;font-size:.74rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.primary-action:hover{box-shadow:4px 4px 0 var(--red-dark);transform:translate(3px,3px)}.text-action{color:var(--red-dark);text-underline-offset:.3rem;font-size:.85rem}.sunday-card{background:var(--paper-bright);min-height:470px;box-shadow:var(--shadow);border:1px solid #d8c9b4;padding:5.2rem 3rem 3rem;position:relative;transform:rotate(1.5deg)}.sunday-card:before,.sunday-card:after{content:"";background:var(--red);height:1px;position:absolute;left:2.8rem;right:2.8rem}.sunday-card:before{top:3rem}.sunday-card:after{bottom:2.8rem}.folio-number{font:500 10rem/1 var(--display);color:#981f1b17;pointer-events:none;position:absolute;top:-4.6rem;right:-1rem}.sunday-card>p{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;margin:0 0 3rem;font-size:.76rem}.sunday-card h2{color:var(--red-dark);margin:0;font-size:2.15rem;line-height:1.03}.sunday-card strong{font:500 1.45rem/1.2 var(--display);margin-top:1rem;display:block}.sunday-card small{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);margin-top:2.3rem;display:block}.ribbon-tail{background:var(--red);width:20px;height:135px;position:absolute;top:0;right:2rem}.ribbon-tail:after{content:"";border:10px solid var(--red);border-bottom-color:#0000;position:absolute;bottom:-10px}.catalog-strip{color:var(--paper-bright);background:var(--ink);grid-template-columns:repeat(3,1fr) 1.3fr;align-items:center;gap:2.5rem;padding:2.8rem max(3rem,50vw - 600px);display:grid}.catalog-strip div{border-right:1px solid #ffffff2e;align-items:baseline;gap:.75rem;display:flex}.catalog-strip strong{font:500 2.9rem/1 var(--display);color:#e4b68c}.catalog-strip span,.catalog-strip p{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.catalog-strip p{color:#c8bdaf;justify-self:end;margin:0}.home-calendar-wrap{width:min(100% - 3rem,1220px);margin:7rem auto}.calendar-folio{background:var(--paper-bright);border:1px solid #dacdbb;padding:clamp(1.2rem,3vw,3.4rem);box-shadow:0 15px 50px #33221414}.calendar-heading-row{grid-template-columns:3rem 1fr 3rem;align-items:center;margin-bottom:2.7rem;display:grid}.calendar-heading-row>a{border:1px solid var(--rule);width:2.7rem;height:2.7rem;color:var(--red);place-items:center;font-size:1.25rem;text-decoration:none;display:grid}.calendar-heading-row>a:last-child{justify-self:end}.calendar-heading-row div{text-align:center}.calendar-heading-row h2{margin:0;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:500}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{border-bottom:1px solid var(--ink)}.calendar-weekdays span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em;padding:0 .65rem .8rem;font-size:.64rem}.calendar-day,.calendar-outside,.calendar-blank{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);min-height:132px}.calendar-days>:nth-child(7n){border-right:0}.calendar-day{flex-direction:column;padding:.8rem;text-decoration:none;transition:background .16s,transform .16s;display:flex;position:relative;overflow:hidden}.calendar-day:before{content:"";background:var(--day-color,var(--red));opacity:.75;width:3px;position:absolute;top:0;bottom:0;left:0}.calendar-day:hover{z-index:2;background:#f5e6d3;transform:translateY(-2px);box-shadow:0 8px 20px #3c28181f}.calendar-number{font:500 1.5rem/1 var(--display)}.calendar-title{font:600 .8rem/1.18 var(--display);margin-top:auto}.calendar-rank{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.09em;margin-top:.45rem;font-size:.56rem}.option-count{color:var(--red);text-transform:uppercase;letter-spacing:.07em;border:1px solid;padding:.18rem .3rem;font-size:.48rem;position:absolute;top:.55rem;right:.5rem}.calendar-outside{color:#756a5f;padding:.8rem}.color-white{--day-color:#c7bda9}.color-red{--day-color:#a12722}.color-green{--day-color:#3e6d50}.color-violet{--day-color:#69547d}.color-black{--day-color:#24201e}.color-rose{--day-color:#b86276}.linear-promise{grid-template-columns:1.2fr 1fr;align-items:center;gap:7rem;width:min(100% - 3rem,1120px);margin:8rem auto;display:grid}.linear-promise h2,.missal-parts h2,.print-explainer h2,.explainer-cta h2{font:500 clamp(2.7rem, 5vw, 4.8rem)/.95 var(--display);margin:0}.linear-promise p:not(.eyebrow){color:var(--ink-soft);line-height:1.7}.linear-promise a{color:var(--red);text-underline-offset:.3rem}.promise-diagram{background:var(--paper-bright);min-height:390px;box-shadow:var(--shadow);border:1px solid #cdbda8;grid-template-columns:repeat(4,1fr);align-items:stretch;padding:2rem;display:grid;position:relative;transform:rotate(-1deg)}.promise-diagram span{writing-mode:vertical-rl;border-left:1px solid var(--rule);font:600 1.2rem/1 var(--display);color:var(--red-dark);padding:1.4rem;transform:rotate(180deg)}.promise-diagram i{font:500 2rem/1 var(--display);color:#a18f7e;align-self:end}.page-frame{width:min(100% - 3rem,1240px);margin:0 auto}.page-intro{max-width:970px;padding:6rem 3rem 5rem}.page-intro h1{font-size:clamp(4rem,7vw,7rem)}.page-intro>p:last-child{max-width:650px;color:var(--ink-soft);margin-top:2rem;line-height:1.7}.calendar-page .calendar-folio{margin-bottom:6rem}.loading-state{text-align:center;min-height:65vh;color:var(--red);place-content:center;display:grid}.loading-state span{font-size:2rem;animation:.7s both reveal}.loading-state p{font:500 1.5rem/1 var(--display)}.error-state{flex-direction:column;justify-content:center;align-items:flex-start;width:min(100% - 3rem,800px);min-height:65vh;margin:0 auto;display:flex;position:relative}.error-state h1{margin:0;font-size:clamp(3rem,7vw,6rem);line-height:.9}.error-state>p:not(.eyebrow){color:var(--ink-soft);font-size:1.1rem}.error-state a{color:var(--red);margin-top:1.5rem}.not-found .folio-number{font-size:14rem;top:12%;right:0}.reader-page{--reader-accent:var(--day-color,var(--red));position:relative}.reader-ribbon{z-index:12;background:#981f1b1f;width:3px;height:100vh;position:fixed;top:0;right:clamp(.35rem,2vw,1.5rem)}.reader-ribbon span{background:var(--red);width:100%;transition:height 80ms linear;display:block}.date-nav{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto 1fr;align-items:center;width:min(100% - 3rem,1160px);margin:1rem auto 0;padding:1rem 0;display:grid}.date-nav a{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;text-decoration:none}.date-nav a:last-child{text-align:right}.date-nav .week-link{color:var(--red)}.mass-cover{text-align:center;background:var(--reader-accent);color:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:600px;padding:7rem max(2rem,50vw - 520px);display:flex;position:relative;overflow:hidden}.mass-cover:before,.mass-cover:after{content:"";background:#ffffffb3;width:min(500px,66vw);height:1px;position:absolute;left:50%;transform:translate(-50%)}.mass-cover:before{top:5.5rem}.mass-cover:after{bottom:5.5rem}.mass-cover .eyebrow{color:#fff;opacity:.8}.mass-cover h1{max-width:1000px;font:500 clamp(3.4rem, 7vw, 7.6rem)/.82 var(--display);letter-spacing:-.045em;margin:0}.mass-title-english{font:500 clamp(1.8rem, 3.2vw, 3rem)/1 var(--display);margin:1.4rem 0 .9rem}.mass-cover time{text-transform:uppercase;letter-spacing:.12em;font-size:.82rem}.linear-note{text-transform:uppercase;letter-spacing:.12em;white-space:nowrap;font-size:.68rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.linear-note span{margin-right:.5rem}.mass-options{background:var(--paper-bright);width:min(100% - 3rem,1040px);box-shadow:var(--shadow);z-index:2;align-items:center;gap:.6rem;margin:-1.6rem auto 3rem;padding:1.3rem;display:flex;position:relative;overflow-x:auto}.mass-options p{font:600 .85rem/1.2 var(--display);min-width:145px;margin:0 auto 0 0}.mass-options a{border:1px solid var(--rule);align-items:center;gap:.55rem;min-width:max-content;padding:.75rem 1rem;font-size:.72rem;text-decoration:none;display:flex}.mass-options a span{color:var(--red)}.mass-options a.active{color:#fff;background:var(--ink)}.reader-legend{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);width:min(100% - 3rem,1040px);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.07em;flex-wrap:wrap;justify-content:center;gap:2.2rem;margin:3rem auto;padding:1rem 0;font-size:.68rem;display:flex}.reader-legend i{border-radius:50%;width:10px;height:10px;margin-right:.3rem;display:inline-block}.legend-latin{background:var(--red)}.legend-english{background:var(--ink)}.reader-legend b{color:var(--ink)}.reader-legend em{color:var(--red);text-transform:none}.mass-sequence{background:var(--paper-bright);border:1px solid #dacdbb;width:min(100% - 3rem,1040px);margin:0 auto;box-shadow:0 20px 70px #37251614}.mass-block{border-bottom:1px solid var(--rule);padding:1.8rem clamp(1rem,3vw,2.8rem);scroll-margin-top:2rem}.mass-block:last-child{border-bottom:0}.mass-block-heading{border-top:2px solid var(--reader-accent);grid-template-columns:1fr 1fr;gap:2.8rem;padding:.65rem 0 .7rem;display:grid}.mass-block-heading h2{letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:1rem;font-weight:600;line-height:1.15}.mass-block-heading h2:last-child{padding-left:1.4rem}.bilingual-pair{grid-template-columns:1fr 1fr;gap:0;display:grid}.language-column{min-width:0;padding:.7rem 1.4rem .7rem 0}.language-column+.language-column{border-left:1px solid #8f8172;padding:.7rem 0 .7rem 1.4rem}.language-label{color:var(--red);text-transform:uppercase;letter-spacing:.14em;font-size:.58rem;font-weight:700;display:none}.mass-text{flex-direction:column;gap:.42rem;font-size:clamp(.92rem,1.15vw,1.08rem);line-height:1.52;display:flex}.text-space{min-height:.45rem}.rubric-line{color:var(--red);font-size:.9em;font-style:italic}.response-line{font-weight:700}.spoken-line{display:block}.role-canon .mass-text{font-size:.98rem}.role-canon{background:#fdf5e8}.role-passio,.role-crucis-adoratione,.role-de-lectionibus{background:#f8f0e4}.provenance{color:var(--ink-soft);border-top:1px dotted #c7b9a7;margin-top:.7rem;padding-top:.6rem}.provenance summary{cursor:pointer;text-transform:uppercase;letter-spacing:.08em;width:max-content;max-width:100%;font-size:.66rem;list-style:none}.provenance summary::-webkit-details-marker{display:none}.provenance summary span{color:var(--red);margin-right:.35rem}.provenance[open] summary{color:var(--red)}.provenance-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem;margin-top:1rem;display:grid}.provenance-list article{background:#eee3d2;padding:1rem;overflow:hidden}.provenance-list .eyebrow{margin-bottom:.25rem;font-size:.56rem}.provenance-list strong,.provenance-list code,.provenance-list small{display:block}.provenance-list strong{color:var(--ink);font:600 .9rem/1.2 var(--display)}.provenance-list code{overflow-wrap:anywhere;margin-top:.5rem;font-size:.58rem}.provenance-list small{margin-top:.3rem;font-size:.58rem}.source-links{flex-wrap:wrap;gap:.7rem;margin-top:.7rem;display:flex}.source-links a,.source-links span{color:var(--red-dark);font-size:.63rem}.review-state{text-transform:uppercase;letter-spacing:.08em;margin:.8rem 0 0;font-size:.6rem}.reader-end{text-align:center;color:var(--ink-soft);padding:5rem 1rem}.reader-end span{color:var(--red);font-size:1.6rem}.reader-end p{font:500 1.2rem/1 var(--display)}.download-panel{color:#fff;background:var(--ink);grid-template-columns:.75fr 1.5fr;gap:4rem;width:min(100% - 3rem,1160px);margin:1rem auto 7rem;padding:clamp(2rem,5vw,4.5rem);display:grid}.download-panel h2{font:500 3rem/.9 var(--display);margin:0}.download-panel>div:first-child>p:last-child{color:#c8bbae;line-height:1.6}.download-panel .eyebrow{color:#dba879}.download-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.8rem;display:grid}.download-card{border:1px solid #ffffff38;flex-direction:column;min-height:195px;padding:1.2rem;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.download-card:hover{background:var(--red);border-color:var(--red)}.download-card .download-icon{align-self:flex-end;font-size:1.4rem}.download-card strong{font:600 1.2rem/1 var(--display);margin-top:auto}.download-card>span:not(.download-icon){color:#d6cbbf;margin-top:.5rem;font-size:.66rem}.download-card small{color:#a89c91;text-transform:uppercase;letter-spacing:.08em;margin-top:.6rem;font-size:.57rem}.print-note{border-top:1px solid #fff3;grid-column:1/-1;padding-top:1.2rem}.print-note summary{cursor:pointer;color:#e8b68b;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem}.print-note p{color:#c8bbae;max-width:820px;font-size:.82rem;line-height:1.6}.week-intro{grid-template-columns:1.3fr 1fr;align-items:end;gap:2rem;max-width:none;display:grid}.week-intro .eyebrow{grid-column:1/-1}.week-intro p:last-child{border-left:2px solid var(--red);padding-left:1.5rem}.week-contents{background:var(--paper-bright);border-top:2px solid var(--ink);margin:0 3rem 5rem;padding:0;list-style:none}.week-contents li{border-bottom:1px solid var(--rule);grid-template-columns:130px 1fr auto;align-items:center;gap:2rem;min-height:120px;padding:1.2rem;display:grid;position:relative}.week-contents li:before{content:"";background:var(--day-color);width:4px;position:absolute;top:0;bottom:0;left:0}.week-contents time{font:500 1.1rem/1 var(--display)}.week-contents div span,.week-contents div strong,.week-contents div small{display:block}.week-contents div span{color:var(--red-dark);font:500 1.2rem/1 var(--display)}.week-contents div strong{margin-top:.3rem}.week-contents div small{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;margin-top:.45rem}.week-contents a{color:var(--red);text-transform:uppercase;letter-spacing:.1em;text-underline-offset:.3rem;font-size:.7rem}.explainer-hero{flex-direction:column;justify-content:center;width:min(100% - 3rem,1320px);min-height:720px;margin:0 auto;padding:7rem 4rem;display:flex;position:relative}.explainer-hero h1{max-width:1040px}.explainer-hero>p:not(.eyebrow){max-width:670px;color:var(--ink-soft);margin-top:2.8rem;font-size:1.18rem;line-height:1.7}.scroll-cue{color:var(--red);text-underline-offset:.3rem;position:absolute;bottom:5rem;right:4rem}.scroll-cue span{margin-left:1rem}.scrolly{grid-template-columns:minmax(0,1.22fr) minmax(330px,.78fr);align-items:start;gap:7vw;width:min(100% - 3rem,1320px);margin:0 auto;display:grid}.missal-stage{align-content:center;min-height:calc(100vh - 3rem);display:grid;position:sticky;top:1.5rem}.book-diagram{background:var(--paper-bright);min-height:530px;box-shadow:var(--shadow);border:1px solid #cdbda8;padding:2.4rem 2.2rem 3rem 5.5rem;position:relative;overflow:hidden}.book-spine{background:var(--red);color:#fff;place-items:center;width:3.6rem;display:grid;position:absolute;top:0;bottom:0;left:0}.book-spine span{writing-mode:vertical-rl;font:600 .85rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase;transform:rotate(180deg)}.book-sections{z-index:1;grid-template-columns:repeat(4,1fr);height:100%;transition:opacity .4s,transform .4s;display:grid;position:relative}.book-sections .section{border-right:1px solid var(--rule);flex-direction:column;justify-content:flex-end;padding:2rem .9rem;text-decoration:none;transition:background .18s;display:flex}.book-sections .section:hover{background:#f3e4d0}.section b{writing-mode:vertical-rl;font:600 1.45rem/1 var(--display);color:var(--red-dark);margin:0 auto auto;transform:rotate(180deg)}.section small{text-align:center;color:var(--ink-soft);font-size:.54rem}.route-lines{z-index:3;opacity:0;pointer-events:none;width:calc(100% - 6.5rem);height:55%;transition:opacity .3s;position:absolute;top:22%;left:5rem;right:1.5rem}.route-lines path{fill:none;stroke:var(--red);stroke-width:5px;stroke-dasharray:12 10}.route-lines circle{fill:var(--red-dark)}.linear-ribbon{transform-origin:0;opacity:0;z-index:4;transition:opacity .35s,transform .5s;display:flex;position:absolute;top:50%;left:8rem;right:4rem;transform:translateY(-50%)scaleX(.5)}.linear-ribbon span{color:#fff;background:var(--red);text-align:center;text-transform:uppercase;letter-spacing:.05em;border-right:1px solid #ffffff59;flex:1;padding:1.2rem .3rem;font-size:.58rem}.sheet-diagram{opacity:0;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:1rem;transition:opacity .35s,transform .35s;display:grid;position:absolute;inset:5.5rem 3.5rem 4rem 7rem;transform:translateY(30px)}.sheet-diagram i{background:var(--paper);font:500 3rem/1 var(--display);border:1px solid #bba991;place-items:center;display:grid}.sheet-diagram strong{color:var(--red);text-transform:uppercase;letter-spacing:.1em;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}.stage-route .route-lines,.stage-resolve .route-lines{opacity:1}.stage-resolve .route-lines path{stroke-dasharray:0}.stage-linear .book-sections{opacity:.14;transform:scale(.96)}.stage-linear .linear-ribbon{opacity:1;transform:translateY(-50%)scaleX(1)}.stage-fold .book-sections,.stage-fold .route-lines{opacity:0}.stage-fold .sheet-diagram{opacity:1;transform:translateY(0)}.stage-counter{color:var(--ink-soft);font-size:.67rem;position:absolute;bottom:1rem;right:1rem}.stage-counter span{color:var(--red);font:500 1.4rem/1 var(--display)}.explainer-steps{padding:25vh 0}.explainer-steps section{color:#655c53;border-left:2px solid #0000;flex-direction:column;justify-content:center;min-height:76vh;padding-left:1.4rem;transition:color .3s,border-color .3s,transform .3s;display:flex;transform:translateY(18px)}.explainer-steps section.active{color:var(--ink);border-left-color:var(--red);transform:none}.explainer-steps h2{font:500 clamp(2.4rem, 4vw, 4rem)/.95 var(--display);margin:0}.explainer-steps section>p:last-child{color:var(--ink-soft);line-height:1.75}.missal-parts{background:var(--ink);color:#fff;margin-top:8rem;padding:8rem max(3rem,50vw - 600px)}.missal-parts header{max-width:770px}.missal-parts .eyebrow{color:#dda678}.parts-grid{border-top:1px solid #ffffff40;grid-template-columns:repeat(4,1fr);margin-top:4rem;display:grid}.parts-grid a{border-right:1px solid #fff3;flex-direction:column;min-height:330px;padding:1.5rem;text-decoration:none;transition:background .18s;display:flex}.parts-grid a:hover{background:var(--red)}.parts-grid a>span{color:#d7a275;font:500 2.4rem/1 var(--display)}.parts-grid h3{margin:auto 0 .8rem;font-size:1.65rem}.parts-grid p{color:#c9bdb1;font-size:.78rem;line-height:1.55}.parts-grid small{color:#dda678;font-size:.62rem}.print-explainer{grid-template-columns:1fr 1fr;align-items:center;gap:7rem;width:min(100% - 3rem,1120px);margin:9rem auto;display:grid}.print-explainer ol{color:var(--ink-soft);padding-left:1.2rem;line-height:1.9}.fold-visual{aspect-ratio:11/8.5;background:var(--paper-bright);box-shadow:var(--shadow);grid-template-columns:1fr 1fr;display:grid;position:relative}.fold-visual span{color:var(--ink-soft);font:500 2rem/1 var(--display);border:1px solid #cbbba5;place-items:center;display:grid}.fold-visual span:last-of-type{color:#fff;background:var(--red)}.fold-visual i{background:var(--ink);width:1px;position:absolute;top:0;bottom:0;left:50%}.fold-visual b{background:var(--paper);color:var(--red);text-transform:uppercase;letter-spacing:.1em;padding:.4rem;font-size:.58rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}.explainer-cta{text-align:center;background:#e5dac8;flex-direction:column;justify-content:center;align-items:center;min-height:570px;padding:6rem 2rem;display:flex}.explainer-cta h2{max-width:800px}.explainer-cta .primary-action{margin-top:2.5rem}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.home-hero>*,.page-intro>*,.explainer-hero>*{animation:.52s both reveal}.home-hero>:nth-child(2),.page-intro>:nth-child(2),.explainer-hero>:nth-child(2){animation-delay:80ms}.home-hero>:nth-child(3),.page-intro>:nth-child(3),.explainer-hero>:nth-child(3){animation-delay:.15s}@media (width<=1000px){.home-hero{grid-template-columns:1fr .7fr;gap:3rem;padding-inline:1rem}.hero-copy h1{font-size:clamp(4rem,9vw,6rem)}.sunday-card{min-height:420px;padding-inline:2rem}.catalog-strip{grid-template-columns:repeat(3,1fr)}.catalog-strip p{grid-column:1/-1;justify-self:start}.linear-promise,.print-explainer{gap:3rem}.scrolly{grid-template-columns:1.2fr .8fr;gap:3rem}.book-diagram{min-height:460px}.parts-grid{grid-template-columns:repeat(2,1fr)}.download-panel{grid-template-columns:1fr;gap:2rem}}@media (width<=760px){.site-header{width:min(100% - 1.5rem,100%);height:72px}.wordmark{font-size:1.28rem}.site-header nav{gap:1rem}.site-header nav a{font-size:.59rem}.site-footer{flex-direction:column;align-items:flex-start;gap:1.4rem;width:calc(100% - 2rem)}.home-hero{grid-template-columns:1fr;min-height:auto;padding:5rem .25rem 4rem}.home-hero:before{display:none}.hero-copy h1,.page-intro h1,.explainer-hero h1{font-size:clamp(3.7rem,17vw,5.5rem)}.hero-copy h1{line-height:.82}.hero-deck{font-size:1rem}.sunday-card{justify-self:center;width:min(92%,420px);transform:rotate(.8deg)}.catalog-strip{grid-template-columns:1fr;gap:1.2rem;padding:2.5rem 1.25rem}.catalog-strip div{border-bottom:1px solid #ffffff29;border-right:0;padding-bottom:1rem}.home-calendar-wrap{width:calc(100% - 1rem);margin:4rem auto}.calendar-folio{padding:.75rem;overflow:hidden}.calendar-heading-row{margin:1rem 0 1.5rem}.calendar-heading-row h2{font-size:2rem}.calendar-weekdays span{text-align:center;padding-inline:.1rem;font-size:.52rem}.calendar-day,.calendar-outside,.calendar-blank{min-height:84px}.calendar-day{padding:.45rem .35rem}.calendar-number{font-size:1.15rem}.calendar-title{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.56rem;display:-webkit-box;overflow:hidden}.calendar-rank{display:none}.option-count{background:var(--red);color:#0000;border:0;border-radius:50%;width:5px;height:5px;padding:0;top:.3rem;right:.2rem;overflow:hidden}.linear-promise,.print-explainer{grid-template-columns:1fr;width:calc(100% - 2rem);margin-block:5rem}.promise-diagram{min-height:300px}.page-intro{padding:4rem 0 3rem}.date-nav{width:calc(100% - 1.5rem)}.date-nav a span{display:none}.mass-cover{min-height:540px;padding-inline:1rem}.mass-cover h1{font-size:clamp(3rem,13vw,5rem)}.mass-options{width:calc(100% - 1rem);margin-top:-1rem}.reader-legend{justify-content:flex-start;gap:1rem;width:calc(100% - 2rem)}.mass-sequence{width:calc(100% - 1rem)}.mass-block{padding:1.2rem 1rem}.mass-block-heading{grid-template-columns:1fr;gap:.25rem}.mass-block-heading h2:last-child{color:var(--red);padding-left:0;font-size:.82rem}.bilingual-pair{grid-template-columns:1fr}.language-column,.language-column+.language-column{border-left:0;padding:.7rem 0}.language-column+.language-column{border-top:1px solid #a69887;margin-top:.45rem;padding-top:1rem}.language-label{margin-bottom:.7rem;display:block}.mass-text{font-size:.95rem}.download-panel{width:calc(100% - 1rem);margin-bottom:4rem;padding:2rem 1.2rem}.download-grid{grid-template-columns:1fr}.download-card{min-height:150px}.week-intro{display:block}.week-intro p:last-child{margin-top:2rem}.week-contents{margin-inline:0}.week-contents li{grid-template-columns:1fr auto;gap:.6rem}.week-contents time{grid-column:1/-1}.explainer-hero{min-height:650px;padding:5rem .2rem}.scroll-cue{bottom:2rem;left:.2rem;right:auto}.scrolly{width:calc(100% - 1rem);display:block}.missal-stage{z-index:4;min-height:auto;padding:0;position:sticky;top:.5rem}.book-diagram{min-height:315px;padding:1rem 1rem 1rem 3.5rem;box-shadow:0 12px 35px #4026152b}.book-spine{width:2.5rem}.section b{font-size:.9rem}.section small{display:none}.route-lines{width:calc(100% - 4rem);left:3rem}.linear-ribbon{left:4.2rem;right:1rem;overflow:hidden}.linear-ribbon span{padding:.9rem .15rem;font-size:.42rem}.sheet-diagram{inset:2rem 1rem 2rem 3.5rem}.explainer-steps{padding:0 1rem}.explainer-steps section{min-height:72vh;padding-top:280px}.missal-parts{margin-top:4rem;padding:5rem 1rem}.parts-grid{grid-template-columns:1fr}.parts-grid a{border-bottom:1px solid #fff3;min-height:240px}.print-explainer{gap:2.5rem}}@media (width<=430px){.site-header nav a:first-child{display:none}.hero-actions{flex-direction:column;align-items:stretch}.primary-action{width:100%;min-width:0}.sunday-card{width:100%;padding-inline:1.6rem}.linear-promise>*{min-width:0}.promise-diagram{width:100%;min-width:0;padding:.8rem;overflow:hidden;transform:none}.promise-diagram span{min-width:0;padding:.65rem .25rem;font-size:.9rem}.calendar-day,.calendar-outside,.calendar-blank{min-height:72px}.calendar-title{font-size:.5rem}.mass-cover:before,.mass-cover:after{width:82%}.linear-note{font-size:.55rem}.provenance-list{grid-template-columns:1fr}.reader-ribbon{right:2px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{body:before,.site-header,.site-footer,.reader-ribbon,.date-nav,.reader-legend,.provenance,.download-panel{display:none!important}body,:root{background:#fff}.mass-cover{-webkit-print-color-adjust:exact;print-color-adjust:exact;min-height:90vh}.mass-sequence{width:100%;box-shadow:none;border:0}.mass-block{break-inside:avoid}}
