/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline;}.container-inline .details-wrapper{display:block;}
.clearfix:after{display:table;clear:both;content:"";}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}
.views-align-left{text-align:left;}.views-align-right{text-align:right;}.views-align-center{text-align:center;}.views-view-grid .views-col{float:left;}.views-view-grid .views-row{float:left;clear:both;width:100%;}.views-display-link + .views-display-link{margin-left:0.5em;}
.full-width-wrapper{box-sizing:border-box !important;margin:0 -50vw !important;padding:0 1rem !important;position:relative !important;left:50% !important;right:50% !important;width:100vw !important;max-width:none !important;}.masstimes-container{display:flex !important;gap:1rem !important;height:100% !important;margin-bottom:5rem !important;}.map-pane,.mass-sidebar{flex:none !important;height:500px !important;}.map-pane{border:2px solid #ddd !important;width:66% !important;}.mass-sidebar{width:360px !important;max-height:500px !important;display:flex !important;flex-direction:column !important;background:#fff !important;box-shadow:-2px 0 8px rgba(0,0,0,0.1) !important;overflow:hidden !important;}.mass-content{overflow-y:auto !important;padding:1rem !important;flex:1 !important;}.mass-sidebar-header{padding:1.5rem !important;border-bottom:1px solid #eee !important;position:relative !important;}.sidebar-title{margin:0 !important;font-size:1.75rem !important;color:#0a294e !important;}.sidebar-subtitle{margin:.5rem 0 1rem !important;font-size:.875rem !important;color:#627d94 !important;font-style:italic !important;}.mass-search-form{display:flex !important;gap:.5rem !important;}.mass-search-input{flex:2 !important;position:relative !important;}#mass-search-input{width:100% !important;padding:.5rem 2.5rem .5rem .75rem !important;border:1px solid #ccc !important;border-radius:.25rem !important;}.mass-search-button{position:absolute !important;right:.5rem !important;top:50% !important;transform:translateY(-50%) !important;background:none !important;border:none !important;cursor:pointer !important;color:#627d94 !important;font-size:1rem !important;}.mass-search-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ccc;max-height:200px;overflow-y:auto;z-index:1000;list-style:none;margin:0;padding:0;}.mass-search-suggestions li{padding:.5rem;cursor:pointer;}.mass-search-suggestions li:hover{background:#f0f0f0;}.parish-card{margin-bottom:1rem !important;border:1px solid #eee !important;border-radius:0.5rem !important;background:#fff !important;box-shadow:0 2px 8px rgba(0,0,0,0.05) !important;overflow:hidden !important;transition:box-shadow .2s !important;}.parish-card[open]{box-shadow:0 4px 12px rgba(0,0,0,0.1) !important;}.parish-card summary{position:relative !important;display:block !important;padding:1rem 1.5rem !important;background:#f7fafc !important;font-size:1.2rem !important;font-weight:600 !important;color:#1a202c !important;cursor:pointer !important;list-style:none !important;}.parish-card summary::-webkit-details-marker{display:none !important;}.parish-card summary::after{content:"\f078" !important;font-family:"Font Awesome 5 Free" !important;font-weight:900 !important;position:absolute !important;right:1.5rem !important;top:50% !important;transform:translateY(-50%) rotate(0deg) !important;transition:transform 0.2s !important;}.parish-card[open] > summary::after{transform:translateY(-50%) rotate(-180deg) !important;}.parish-distance{font-size:0.8rem !important;font-weight:400 !important;color:#555 !important;margin-left:0.5rem !important;}.parish-body{padding:1rem 1.5rem 1.5rem !important;}.parish-body p,.parish-contact li{display:flex !important;align-items:center !important;margin-bottom:.75rem !important;font-size:0.9rem !important;line-height:1.4 !important;color:#4a5568 !important;}.parish-body p i,.parish-contact li i,.full-width-wrapper .parish-body p > svg,.full-width-wrapper .parish-contact li > svg{display:inline-block !important;width:1.25rem !important;text-align:center !important;margin-right:.75rem !important;color:#2b6cb0 !important;vertical-align:middle !important;}.parish-body p a,.parish-contact li a{color:inherit !important;text-decoration:none !important;}.parish-body h4,.times-group h5{margin:1.25rem 0 .5rem !important;font-size:1.1rem !important;font-weight:700 !important;color:#4a5568 !important;text-transform:uppercase !important;letter-spacing:.05em !important;border-bottom:1px solid #e2e8f0 !important;padding-bottom:.25rem !important;}.parish-contact,.mass-times{list-style:none !important;padding:0 !important;margin:0 !important;}.mass-times li{margin-bottom:.25rem !important;font-size:.95rem !important;}.times-group dl{display:grid !important;grid-template-columns:auto 1fr !important;gap:.5rem 1rem !important;margin:.5rem 0 0 !important;}.times-group dt,.times-group dd{font-size:0.9rem !important;line-height:1.4 !important;color:#2d3748 !important;}.times-group dt{font-weight:600 !important;}.times-group dd{text-align:right !important;}.no-parishes{color:#777 !important;font-style:italic !important;}.church-marker{text-align:center !important;line-height:24px !important;}.church-marker .fa-church{font-size:20px !important;color:#444 !important;text-shadow:0 1px 2px rgba(0,0,0,0.3) !important;}.leaflet-popup-content{font-size:1.1rem !important;}@media (max-width:768px){.masstimes-container{flex-direction:column !important;gap:0 !important;}.map-pane{width:100% !important;height:300px !important;margin-bottom:1rem !important;border:none !important;}.mass-sidebar{width:100% !important;max-height:none !important;box-shadow:none !important;border:none !important;}.mass-sidebar-header{padding:1rem !important;}.mass-content{padding:0.5rem 1rem 1rem !important;}.parish-card summary{font-size:1.1rem !important;padding:0.75rem 1rem !important;}.parish-body p,.parish-body h4,.times-group h5,.times-group dt,.times-group dd{font-size:0.9rem !important;line-height:1.4 !important;}}
