/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */.fa,.fa-brands,.fa-classic,.fa-regular,.fa-solid,.fab,.far,.fas{--_fa-family:var(
        --fa-family,var(--fa-style-family,"Font Awesome 7 Free")
    );-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa) /""}@supports not (content:""/""){:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)}}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(var(--fa-li-width, 2em)*-1);line-height:inherit;position:absolute;text-align:center;width:var(--fa-li-width,2em)}.fa-chevron-right{--fa:"\f054"}.fa-arrow-left{--fa:"\f060"}.fa-bars{--fa:"\f0c9"}.fa-calendar-day{--fa:"\f783"}.fa-calendar-alt{--fa:"\f073"}.fa-font{--fa:"\f031"}.fa-refresh{--fa:"\f021"}.fa-minus{--fa:"\f068"}.fa-plus{--fa:"\+"}.fa-undo{--fa:"\f0e2"}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-display:block;font-family:Font Awesome\ 7 Free;font-style:normal;font-weight:400;src:url(6f05ca9ab7b5345dbc07.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-display:block;font-family:Font Awesome\ 7 Free;font-style:normal;font-weight:900;src:url(8ae0d37556ff1e685de2.woff2)}.fas{--fa-family:var(--fa-family-classic);--fa-style:900}.fa-classic{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-display:block;font-family:Font Awesome\ 5 Brands;font-weight:400;src:url(1c5c7716b05754cb4eab.woff2) format("woff2")}@font-face{font-display:block;font-family:Font Awesome\ 5 Free;font-weight:900;src:url(8ae0d37556ff1e685de2.woff2) format("woff2")}@font-face{font-display:block;font-family:Font Awesome\ 5 Free;font-weight:400;src:url(6f05ca9ab7b5345dbc07.woff2) format("woff2")}@font-face{font-display:block;font-family:FontAwesome;src:url(8ae0d37556ff1e685de2.woff2) format("woff2")}@font-face{font-display:block;font-family:FontAwesome;src:url(1c5c7716b05754cb4eab.woff2) format("woff2")}@font-face{font-display:block;font-family:FontAwesome;src:url(6f05ca9ab7b5345dbc07.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-display:block;font-family:FontAwesome;src:url(e4340c52a50e727c6afa.woff2) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}.back-button{align-items:center;background-color:#f9f6f2;border:1px solid #a5161c;border-radius:6px;color:#a5161c;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:700;gap:.25rem;margin-bottom:1rem;outline:1px solid rgba(165,22,28,.12);outline-offset:-1px;padding:.4rem .8rem;transition:outline-color .3s ease}.back-button:hover{background-color:#a5161c;color:#f9f6f2;outline-color:rgba(165,22,28,.35);outline-offset:0}.app-navigation{background:var(--primary-color) 0;left:0;position:sticky;right:0;top:0;width:100%;z-index:1030}.app-navigation:before{content:"";height:2px;left:0;position:absolute;right:0;top:0}@media (min-width:768px){.app-navigation{padding:.7rem;position:sticky;top:0}.desktop-header{align-items:center;display:flex;gap:2rem;justify-content:space-between;margin:0 auto}.logo-container{align-items:center;display:flex;gap:1rem;text-decoration:none;transition:var(--transition)}.logo-container:hover{transform:translateY(-2px)}.logo-image{height:48px;transition:var(--transition);width:48px}.logo-container:hover .logo-image{transform:scale(1.05)}.logo-text{color:#fff;font-size:1.75rem;font-weight:600;letter-spacing:.5px}.desktop-nav{gap:1rem}.desktop-nav,.nav-link{align-items:center;display:flex}.nav-link{border-radius:10px;color:var(--light-bg)!important;font-size:1rem!important;font-weight:500;gap:.5rem;padding:.5rem 1rem!important;position:relative;text-decoration:none}.nav-link,.nav-link i{transition:var(--transition)}.nav-link i{font-size:1.1rem}.nav-link:hover{background:hsla(0,0%,100%,.15);transform:translateY(-2px)}.nav-link:hover i{transform:scale(1.1)}.menu-backdrop,.mobile-header,.mobile-sidebar{display:none}body{padding-top:0!important}}@media (max-width:767px){.app-navigation{position:sticky;top:0}.desktop-header{display:none}.mobile-header{align-items:center;background:var(--primary-color);color:#fff;display:flex;justify-content:space-between;left:0;padding:.8rem;position:sticky;right:0;top:0;z-index:1030}.mobile-logo-container{align-items:center;display:flex;gap:.75rem}.mobile-logo-image{height:40px;width:40px}.mobile-header .logo{color:#fff;font-size:1.3rem;font-weight:600;margin:0}.menu-toggle{background:hsla(0,0%,100%,.1);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem;transition:var(--transition)}.menu-toggle:hover{background:hsla(0,0%,100%,.2);transform:scale(1.05)}.menu-toggle:active{transform:scale(.95)}.mobile-sidebar{background:var(--primary-color);color:#fff;height:100%;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:270px;z-index:1040}.mobile-sidebar.open{transform:translateX(0)}.sidebar-content{height:100%;overflow-y:auto;padding:2rem 1.5rem}.sidebar-logo{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.2);display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem}.sidebar-logo-image{height:56px;width:56px}.sidebar-logo-text{color:#fff;font-size:1.5rem;font-weight:600}.sidebar-header{margin-bottom:1.5rem}.sidebar-header h5{color:hsla(0,0%,100%,.7);font-size:.9rem;font-weight:500;letter-spacing:1px;margin-bottom:1rem;padding-bottom:.75rem;text-transform:uppercase}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem}.sidebar-link{align-items:center;border-radius:12px;color:var(--light-bg)!important;display:flex;font-size:1.05rem;gap:1rem;overflow:hidden;padding:1rem 1.25rem;position:relative;text-decoration:none;transition:var(--transition)}.sidebar-link:hover{background:hsla(0,0%,100%,.15);transform:translateX(8px)}.sidebar-link i{font-size:1.2rem;text-align:center;width:24px}.menu-backdrop{background:rgba(0,0,0,.6);bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .3s,visibility .3s;visibility:hidden;z-index:1035}.menu-backdrop.show{opacity:1;visibility:visible}body{padding-top:0!important}}@media (min-width:768px) and (max-width:1024px){.desktop-nav{gap:1.5rem}.nav-link{color:var(--light-bg)!important;font-size:1rem;padding:.5rem 1rem!important}.logo-text{font-size:1.5rem}}@media print{.app-navigation{display:none}body{padding-top:0!important}}#liturgical-container{background:#f9f6f2;border-radius:8px;color:var(--text-color);line-height:1.5;margin:0 auto;max-width:900px;outline:1px solid rgba(0,0,0,.2);outline-offset:-1px;overflow:hidden;padding:2em}.liturgical-header{text-align:center}.liturgical-title{font-size:1.5em;font-weight:700;letter-spacing:1px}.liturgical-subtitle,.liturgical-title{color:var(--primary-color);text-transform:uppercase}.liturgical-subtitle{font-size:1.17em;font-weight:400;margin-bottom:.5em}.liturgical-date{color:var(--primary-color);font-style:italic}.liturgical-section{margin-bottom:.5em;page-break-inside:avoid}.section-title{border-bottom:2px solid var(--primary-color);color:var(--primary-color);font-size:1.87em;font-weight:700;letter-spacing:1px;margin-bottom:.6em;margin-top:.8em;padding-bottom:.5em;text-align:center;text-transform:uppercase}.invocation{margin-bottom:.8em}.versicle{margin-bottom:.2em}.response-marker,.versicle-marker{color:var(--primary-color);font-style:italic;font-weight:700;margin-right:.3em}.hymn{margin-bottom:.5em}.hymn p{margin-bottom:1em}.antiphon,.psalm-container{margin-bottom:.5em}.antiphon{text-align:justify}.psalm-title{color:var(--primary-color);font-size:1.2em;margin-bottom:.5em;text-align:center}.psalm-verse{margin-bottom:1em;text-align:justify}.liturgical-label{color:var(--primary-color);font-size:1.2em;font-weight:700}.doxology{margin-bottom:.3em;margin-top:.3em}.canticle,.canticle-title{margin-bottom:.5em}.canticle-title{color:var(--primary-color);font-size:1.2em;text-align:center}.reading{margin-bottom:.5em}.reading-title{color:var(--primary-color);font-weight:700;margin-bottom:.3em}.reading-reference{color:var(--primary-color);font-style:italic;text-align:right}.reading-text{text-align:justify}.responsory{margin-bottom:.5em}.responsory-verse{margin-bottom:.2em}.benedictus,.magnificat,.te-deum{color:var(--primary-color);font-size:1.15em;text-align:center!important;text-align:justify}.preces{margin-bottom:.5em}.preces-intro{text-align:justify}.preces-response{font-style:italic;margin-bottom:.5em}.preces-item{text-align:justify}.dominical-prayer,.preces-item{margin-bottom:.5em}.dominical-intro{font-style:italic;margin-bottom:.3em}.dominical-text{text-align:justify}.prayer{margin-bottom:.5em}.prayer-title{margin-bottom:.3em}.prayer-text{text-align:justify}.conclusion{margin-top:.5em}.conclusion p{margin-bottom:.3em}.rubric{color:var(--primary-color);font-style:italic}.bold-text{font-weight:700}.red-text{color:var(--primary-color)}.centered-text{text-align:center}.italic-text{font-style:italic}@media (max-width:768px){#liturgical-container{padding:.8em}.liturgical-title{font-size:1.33em}.section-title{font-size:1.78em}}@media print{body{font-size:11pt;padding:0}.liturgical-section{page-break-inside:avoid}.no-print{display:none!important}}.liturgical-wrapper{min-height:100vh;width:100%}.liturgical-content{border-radius:8px;margin:0 auto;max-width:1200px}.font-controls{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem;margin-top:1rem}@media (min-width:992px){.liturgical-content{max-width:83.33%}}@media (min-width:1200px){.liturgical-content{max-width:66.67%}}.liturgical-divider{border:none;border-top:1px solid rgba(0,0,0,.3);margin:1em 0;width:100%}.nunc-dimittis{color:var(--primary-color);font-size:1.2em;font-style:italic;margin-bottom:.5em;text-align:center}#liturgical-container{animation:slideUpFade .4s ease-out}.liturgy-section{background-color:var(--light-bg);color:var(--text-color);margin:0 auto;max-width:1100px;padding:1.5rem}.history-section{line-height:1.5}.hours-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.hour-card{align-items:center;background:#fdfcf8;border-radius:6px;color:inherit;cursor:pointer;display:flex;gap:1rem;outline:1px solid rgba(165,22,28,.2);outline-offset:-1px;padding:1.25rem;position:relative;text-decoration:none;transition:outline-color .3s ease}.hour-card:hover{outline-color:rgba(165,22,28,.5);outline-offset:0}.hour-icon{align-items:center;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:6px;color:#fff;display:flex;flex-shrink:0;font-size:1.25rem;height:48px;justify-content:center;transition:transform .3s ease;width:48px}.hour-card:hover .hour-icon{transform:scale(1.05)}.hour-content{flex:1}.hour-title{color:var(--text-color);font-size:1.1rem;font-weight:600;margin:0}.hour-arrow{color:var(--text-light);flex-shrink:0;height:20px;transition:all .3s ease;width:20px}.hour-card:hover .hour-arrow{color:var(--primary-color);transform:translateX(3px)}@media (max-width:768px){.liturgy-section{padding:1rem}.hero-title{font-size:1.5rem}.hero-section{padding:1.5rem 1rem}.section-title{font-size:1.3rem}.hours-grid{gap:1rem;grid-template-columns:1fr}}@media (max-width:480px){.hero-title{font-size:1.3rem}.hero-description{font-size:.85rem;text-align:left}.hour-card{gap:.8rem;padding:1rem}.hour-icon{font-size:1.1rem;height:40px;width:40px}.hour-title{font-size:1rem}}.no-liturgy-container{align-items:center;display:flex;justify-content:center;min-height:400px;padding:2rem}.no-liturgy-card{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,.1);max-width:500px;padding:3rem 2rem;text-align:center;width:100%}.no-liturgy-icon{align-items:center;background:#f9f6f2;border-radius:50%;display:inline-flex;height:80px;justify-content:center;margin-bottom:1.5rem;width:80px}.no-liturgy-icon svg,.no-liturgy-title{color:var(--primary-color,#8b4513)}.no-liturgy-title{font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.no-liturgy-message{color:#666;font-size:1rem;line-height:1.6;margin-bottom:2rem}.next-liturgy-info{background:#f9f6f2;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.next-liturgy-label{color:#666;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.next-liturgy-date{color:var(--primary-color,#8b4513);font-size:1.125rem;font-weight:700;margin-bottom:1rem}.next-liturgy-button{align-items:center;background:var(--primary-color,#8b4513);border-radius:6px;color:#fff;display:inline-flex;font-weight:500;gap:.5rem;padding:.5rem;text-decoration:none;transition:all .2s ease}.next-liturgy-button:hover{background:#6d3410;box-shadow:0 4px 8px rgba(0,0,0,.15);transform:translateY(-2px)}.next-liturgy-button svg{transition:transform .2s ease}.next-liturgy-button:hover svg{transform:translateX(4px)}@media (max-width:768px){.no-liturgy-container{min-height:300px;padding:1rem}.no-liturgy-card{padding:2rem 1.5rem}.no-liturgy-title{font-size:1.25rem}.no-liturgy-icon{height:64px;width:64px}.no-liturgy-icon svg{height:48px;width:48px}}.calendario-link{color:var(--primary-color,#8b4513);text-decoration:underline;text-decoration-color:rgba(139,69,19,.3);text-underline-offset:3px;transition:all .2s ease}.calendario-link:hover{text-decoration-color:var(--primary-color,#8b4513)}.calendario-link:active{opacity:.7}.liturgy-section{animation:slideUpFade .4s ease-out}.calendar-container{background-color:var(--light-bg);color:var(--text-color);line-height:1.5;margin:0 auto;max-width:1100px;padding:1.5rem}.calendar-header{border-bottom:2px solid var(--primary-color);margin-bottom:1.5rem;padding-bottom:1rem;text-align:center}.calendar-title{color:var(--primary-color);font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:.4rem;margin-top:0}.calendar-subtitle{color:var(--text-light);font-size:.95rem;font-style:italic;margin-bottom:.8rem}.calendar-months{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:1.5rem}.month-card{background:#fdfcf8;border:1px solid var(--border-color);border-radius:6px;outline:1px solid rgba(0,0,0,.08);outline-offset:-1px;overflow:hidden;transition:outline-color .3s ease,transform .3s ease}.month-card:hover{outline-color:rgba(165,22,28,.12);transform:translateY(-3px)}.month-title{background-color:var(--primary-color);color:#fdfcf8;font-size:1.25rem;font-weight:700;letter-spacing:.3px;margin:0;padding:.5rem;text-align:center}.month-events{padding:1.2rem}.event-link{align-items:center;background-color:#fff;border:1px solid rgba(0,0,0,.1);border-radius:5px;color:var(--text-color);display:flex;margin-bottom:.6rem;padding:.8rem;position:relative;text-decoration:none;transition:all .3s ease}.event-link:hover{background-color:rgba(165,22,28,.08);border-color:rgba(165,22,28,.2);transform:translateX(3px)}.event-link:last-child{margin-bottom:0}.event-date{align-items:center;background-color:var(--primary-color);border-radius:50%;color:#fdfcf8;display:flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:34px;justify-content:center;margin-right:.8rem;min-width:34px}.event-title{color:var(--text-color);flex-grow:1;font-size:1rem;line-height:1.35}.event-link i{color:var(--primary-color);font-size:.8rem;margin-left:auto;transition:opacity .3s ease}.event-link:hover i{opacity:1}.current-month{border:2px solid var(--primary-color)}.current-month .month-title{background:var(--primary-color) 0;outline:2px solid rgba(165,22,28,.25);outline-offset:-2px}.event-today .event-date{animation:pulse 2s infinite;background:#2ecc71;outline:2px solid rgba(46,204,113,.3);outline-offset:2px}@keyframes pulse{0%,to{outline-color:rgba(46,204,113,.3)}50%{outline-color:rgba(46,204,113,.1)}}.no-events{color:var(--text-light);font-style:italic;padding:1.5rem;text-align:center}@media (max-width:768px){.calendar-container{padding:.8rem}.calendar-title{font-size:1.6rem}.calendar-subtitle{font-size:.85rem}.calendar-months{gap:1rem;grid-template-columns:1fr}.month-title{font-size:1.15rem;padding:.3rem}.event-link{padding:.7rem}.event-date{font-size:.85rem;height:32px;min-width:32px}.event-title{font-size:.95rem}}@media (min-width:1200px){.calendar-months{grid-template-columns:repeat(3,1fr)}}@media (min-width:1400px){.calendar-container{max-width:1300px}.calendar-months{grid-template-columns:repeat(4,1fr)}}@media print{.calendar-container{background-color:#fdfcf8;padding:0}.month-card{border:1px solid var(--border-color);outline:none;page-break-inside:avoid;margin-bottom:1rem}.month-card:hover{transform:none}.event-link:hover{background-color:#f5f5f5;transform:none}.event-link i{display:none}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.calendar-container{animation:slideUpFade .4s ease-out}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#a5161c;--primary-dark:#8b0000;--primary-light:#c41e25;--secondary-color:#8b0000;--light-bg:#f9f6f2;--border-color:#ddd;--text-color:#333;--text-light:#666;--spacing-unit:0.8rem;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}@font-face{font-display:block;font-family:Crimson Pro;font-style:normal;src:url(ee6defbf888ba1c35518.woff2) format("woff2")}@font-face{font-display:block;font-family:Crimson Pro;font-style:italic;src:url(18e8da6d55feed0a1cad.woff2) format("woff2")}body{background-color:var(--light-bg)!important;font-family:Crimson Pro,Times New Roman,serif!important;font-size:1.1em}