:root{--color-primary:#E07A5F;--color-secondary:#F4F1DE;--color-accent:#F2CC8F;--color-highlight:#81B29A;--color-text:#333333;--color-text-light:#666666;--color-heading:#222222;--color-link:var(--color-primary);--color-link-hover:var(--color-highlight);--color-background:#FFFFFF;--color-background-alt:var(--color-secondary);--color-background-dark:#F9F7F3;--color-border:#DDDDDD;--color-input-border:#CCCCCC;--color-input-background:#FFFFFF;--color-button:var(--color-primary);--color-button-text:#FFFFFF;--color-button-hover:var(--color-highlight);--font-primary:"Lato",sans-serif;--font-heading:"Playfair Display",serif;--font-size-base:17px;--line-height-base:1.6;--spacing-unit:1rem;--spacing-xs:calc(var(--spacing-unit) * 0.25);--spacing-sm:calc(var(--spacing-unit) * 0.5);--spacing-md:var(--spacing-unit);--spacing-lg:calc(var(--spacing-unit) * 2.5);--spacing-xl:calc(var(--spacing-unit) * 3);--container-width:1120px;--container-padding:var(--spacing-md);--grid-gap:var(--spacing-md);--transition-speed:0.3s;--transition-timing:ease;--border-radius:4px;--border-radius-lg:8px;--box-shadow:0 2px 4px rgba(0,0,0,0.1);--box-shadow-lg:0 4px 8px rgba(0,0,0,0.1)}html.dark{--color-text:#F4F1DE;--color-text-light:#CCCCCC;--color-heading:#FFFFFF;--color-link:var(--color-accent);--color-link-hover:var(--color-highlight);--color-background:#333333;--color-background-alt:#444444;--color-background-dark:#222222;--color-border:#555555;--color-input-border:#666666;--color-input-background:#444444;--color-button:var(--color-accent);--color-button-text:#333333;--color-button-hover:var(--color-highlight);--box-shadow:0 2px 4px rgba(0,0,0,0.3);--box-shadow-lg:0 4px 8px rgba(0,0,0,0.3)}html{font-size:var(--font-size-base);box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{font-family:var(--font-primary);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-background);margin:0;padding:0;transition:background-color var(--transition-speed) var(--transition-timing),color var(--transition-speed) var(--transition-timing)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-heading);line-height:1.2;margin-top:0;margin-bottom:var(--spacing-md);font-weight:700}h1{font-size:2.25rem}h2{font-size:1.8rem}h3{font-size:1.55rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:var(--spacing-md)}a{color:var(--color-link);text-decoration:none;transition:color var(--transition-speed) var(--transition-timing)}a:focus,a:hover{color:var(--color-link-hover);text-decoration:underline}a:focus{outline:thin dotted}img{max-width:100%;height:auto;display:block}blockquote,figure{margin:0 0 var(--spacing-md)}blockquote{padding:var(--spacing-md) var(--spacing-lg);border-left:4px solid var(--color-primary);background-color:var(--color-background-alt);font-style:italic}html.dark blockquote{border-left-color:var(--color-accent)}blockquote p:last-child{margin-bottom:0}hr{border:0;height:1px;background-color:var(--color-border);margin:var(--spacing-lg) 0}.screen-reader-text,.visually-hidden{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus,.visually-hidden:focus{background-color:var(--color-background);border-radius:var(--border-radius);box-shadow:var(--box-shadow);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:var(--color-text);display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.container{width:100%;max-width:var(--container-width);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding);box-sizing:border-box}.site{display:flex;flex-direction:column;min-height:100vh}@media(min-width:1024px){.site{justify-content:center}}.site-content{flex:1 0 auto;padding:var(--spacing-lg) 0;position:relative}.site-content:before{background-image:url(/images/parafia-przyjazn-kosciol-dzien.jpg);background-size:cover;background-position:50%;background-repeat:no-repeat;filter:blur(5px);opacity:.7;transition:background-image var(--transition-speed) var(--transition-timing)}.site-content:after,.site-content:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1}.site-content:after{background-color:hsla(0,0%,100%,.7);transition:background-color var(--transition-speed) var(--transition-timing)}@media(min-width:1024px){.site-content{flex:0 1 auto;margin:auto 0;min-height:60vh;display:flex;flex-direction:column;justify-content:center}}html.dark .site-content:before{background-image:url(/images/parafia-przyjazn-kosciol-noc.jpg)}html.dark .site-content:after{background-color:rgba(0,0,0,.7)}.site-main{width:100%}@media(min-width:1024px){.site-main{padding:var(--spacing-xl) 0}}.site-header{background-color:var(--color-background);box-shadow:var(--box-shadow);padding:var(--spacing-md) 0;position:relative;z-index:100}.site-header-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.site-branding{margin-right:var(--spacing-md)}.site-branding .site-title{font-family:var(--font-heading);font-size:1.5rem;margin:0}.site-branding .site-title a{color:var(--color-heading);text-decoration:none}.site-branding .site-title a:focus,.site-branding .site-title a:hover{color:var(--color-primary)}html.dark .site-branding .site-title a:focus,html.dark .site-branding .site-title a:hover{color:var(--color-accent)}.site-branding .site-description{margin:var(--spacing-xs) 0 0;font-size:.875rem;color:var(--color-text-light)}.header-controls{display:flex;align-items:center;margin-left:auto}.site-header-bottom{width:100%}.secondary-navigation{margin-top:var(--spacing-sm)}@media(min-width:768px){.secondary-navigation{display:flex;justify-content:center}}.secondary-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center}.secondary-navigation li{margin:0 var(--spacing-sm)}.secondary-navigation a{color:var(--color-text-light);font-size:.875rem;text-decoration:none}.secondary-navigation a:focus,.secondary-navigation a:hover{color:var(--color-primary)}html.dark .secondary-navigation a:focus,html.dark .secondary-navigation a:hover{color:var(--color-accent)}html.dark-toggle{background:none;border:none;color:var(--color-text);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center}html.dark-toggle:focus,html.dark-toggle:hover{color:var(--color-primary)}html.dark html.dark-toggle:focus,html.dark html.dark-toggle:hover{color:var(--color-accent)}html.dark-toggle svg{width:24px;height:24px}html.dark html.dark-toggle .light-icon,html.dark-toggle .dark-icon{display:none}html.dark html.dark-toggle .dark-icon{display:inline-block}.main-navigation{width:100%}@media(min-width:768px){.main-navigation{display:flex;justify-content:center}}.main-navigation ul{display:none;list-style:none;margin:0;padding:0}@media(min-width:768px){.main-navigation ul{display:flex}}.main-navigation ul.toggled,.main-navigation.toggled ul{display:block;text-align:center}.main-navigation li{position:relative}@media(min-width:768px){.main-navigation li{margin-right:var(--spacing-md)}.main-navigation li:last-child{margin-right:0}}.main-navigation a{display:block;padding:var(--spacing-sm) 0;color:var(--color-text);text-decoration:none;font-weight:700}.main-navigation a:focus,.main-navigation a:hover{color:var(--color-primary)}html.dark .main-navigation a:focus,html.dark .main-navigation a:hover{color:var(--color-accent)}.main-navigation .current-menu-ancestor>a,.main-navigation .current-menu-item>a{color:var(--color-primary)}html.dark .main-navigation .current-menu-ancestor>a,html.dark .main-navigation .current-menu-item>a{color:var(--color-accent)}.main-navigation .sub-menu{background-color:var(--color-background);box-shadow:var(--box-shadow);padding:var(--spacing-sm)}@media(min-width:768px){.main-navigation .sub-menu{position:absolute;top:100%;left:-999em;z-index:99999;display:block;min-width:200px}.main-navigation .sub-menu .sub-menu{top:0;left:-999em}.main-navigation .sub-menu li{margin-right:0;width:100%}}.main-navigation .sub-menu a{width:100%}@media(min-width:768px){.main-navigation .sub-menu a{padding:var(--spacing-sm) var(--spacing-md)}.main-navigation li.focus>.sub-menu,.main-navigation li:hover>.sub-menu{left:0}.main-navigation li.focus>.sub-menu .sub-menu,.main-navigation li:hover>.sub-menu .sub-menu{left:100%}}.menu-toggle{display:block;background:none;border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text);font-family:var(--font-primary);font-size:1rem;cursor:pointer;margin:0 auto var(--spacing-sm)}@media(min-width:768px){.menu-toggle{display:none}}.menu-toggle:focus,.menu-toggle:hover{background-color:var(--color-background-alt)}.menu-toggle .menu-toggle-icon{display:inline-block;width:20px;height:2px;background-color:var(--color-text);position:relative}.menu-toggle .menu-toggle-icon:after,.menu-toggle .menu-toggle-icon:before{content:"";display:block;width:100%;height:100%;background-color:var(--color-text);position:absolute;left:0}.menu-toggle .menu-toggle-icon:before{top:-6px}.menu-toggle .menu-toggle-icon:after{bottom:-6px}.dropdown-toggle{display:inline-block;background:none;border:none;padding:var(--spacing-xs);color:var(--color-text);cursor:pointer}@media(min-width:768px){.dropdown-toggle{display:none}}.dropdown-toggle:focus,.dropdown-toggle:hover{color:var(--color-primary)}html.dark .dropdown-toggle:focus,html.dark .dropdown-toggle:hover{color:var(--color-accent)}.dropdown-toggle:after{content:"▼";display:inline-block;margin-left:.5em;transition:transform var(--transition-speed) var(--transition-timing)}.submenu-toggled-on>.dropdown-toggle:after{transform:rotate(180deg)}.main-navigation .sub-menu{display:none}.main-navigation li.submenu-toggled-on>.sub-menu,.main-navigation.toggled-on .submenu-toggled-on>.sub-menu{display:block}.site-footer{background-color:var(--color-background-dark);color:var(--color-text);padding:var(--spacing-lg) 0;margin-top:auto}.footer-widgets{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:var(--grid-gap);gap:var(--grid-gap)}.footer-navigation,.footer-widgets{margin-bottom:var(--spacing-lg)}.footer-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center}.footer-navigation li{margin:0 var(--spacing-sm)}.footer-navigation a{color:var(--color-text);text-decoration:none}.footer-navigation a:focus,.footer-navigation a:hover{color:var(--color-primary)}html.dark .footer-navigation a:focus,html.dark .footer-navigation a:hover{color:var(--color-accent)}.site-info{text-align:center;font-size:.875rem;color:var(--color-text-light)}.site-info a{color:var(--color-text)}.site-info a:focus,.site-info a:hover{color:var(--color-primary)}html.dark .site-info a:focus,html.dark .site-info a:hover{color:var(--color-accent)}.footer-links{margin-top:var(--spacing-sm)}.widget{margin:0 0 var(--spacing-lg)}.widget:last-child{margin-bottom:0}.widget .widget-title{font-size:1.25rem;margin-bottom:var(--spacing-md)}.widget ul{list-style:none;margin:0;padding:0}.widget li{margin-bottom:var(--spacing-sm)}.widget li:last-child{margin-bottom:0}.button,button,input[type=button],input[type=reset],input[type=submit]{background-color:var(--color-button);color:var(--color-button-text);border:none;border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-primary);font-size:1rem;font-weight:700;cursor:pointer;transition:background-color var(--transition-speed) var(--transition-timing),box-shadow var(--transition-speed) var(--transition-timing)}.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{background-color:var(--color-button-hover);text-decoration:none}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=range],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{color:var(--color-text);background-color:var(--color-input-background);border:1px solid var(--color-input-border);border-radius:var(--border-radius);padding:var(--spacing-sm);width:100%;font-family:var(--font-primary);font-size:1rem}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=range]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:var(--color-primary);outline:none}html.dark input[type=color]:focus,html.dark input[type=date]:focus,html.dark input[type=datetime-local]:focus,html.dark input[type=datetime]:focus,html.dark input[type=email]:focus,html.dark input[type=month]:focus,html.dark input[type=number]:focus,html.dark input[type=password]:focus,html.dark input[type=range]:focus,html.dark input[type=search]:focus,html.dark input[type=tel]:focus,html.dark input[type=text]:focus,html.dark input[type=time]:focus,html.dark input[type=url]:focus,html.dark input[type=week]:focus,html.dark select:focus,html.dark textarea:focus{border-color:var(--color-accent)}textarea{width:100%;resize:vertical}.mass-times-widget{background-color:var(--color-background-alt);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.mass-times-widget .widget-title{margin-top:0;color:var(--color-primary)}html.dark .mass-times-widget .widget-title{color:var(--color-accent)}.mass-times-widget .mass-day{margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.mass-times-widget .mass-day:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.mass-times-widget .mass-day.current-day{font-weight:700}.mass-times-widget .mass-day.current-day .day-name{color:var(--color-primary)}html.dark .mass-times-widget .mass-day.current-day .day-name{color:var(--color-accent)}.mass-times-widget .day-name{font-weight:700;display:block}.mass-times-widget .mass-time{display:block;margin-top:var(--spacing-xs)}.confession-countdown{background-color:var(--color-background-alt);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);text-align:center}.confession-countdown .countdown-title{margin-top:0;color:var(--color-primary)}html.dark .confession-countdown .countdown-title{color:var(--color-accent)}.confession-countdown .countdown-description{margin-bottom:var(--spacing-md)}.confession-countdown .countdown-item{display:inline-block;margin:0 var(--spacing-sm);text-align:center}.confession-countdown .countdown-value{display:block;font-size:2rem;font-weight:700;color:var(--color-primary)}html.dark .confession-countdown .countdown-value{color:var(--color-accent)}.confession-countdown .countdown-label{display:block;font-size:.875rem;text-transform:uppercase;color:var(--color-text-light)}.sacrament-checklist{background-color:var(--color-background-alt);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.sacrament-checklist .checklist-title{margin-top:0;color:var(--color-primary)}html.dark .sacrament-checklist .checklist-title{color:var(--color-accent)}.sacrament-checklist .checklist-description{margin-bottom:var(--spacing-md)}.sacrament-checklist .checklist-item{margin-bottom:var(--spacing-sm);padding-left:30px;position:relative}.sacrament-checklist .checklist-item:last-child{margin-bottom:0}.sacrament-checklist .checklist-item:before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border:2px solid var(--color-primary);border-radius:50%}html.dark .sacrament-checklist .checklist-item:before{border-color:var(--color-accent)}.sacrament-checklist .checklist-item.completed:before{background-color:var(--color-primary)}html.dark .sacrament-checklist .checklist-item.completed:before{background-color:var(--color-accent)}.candle-intention-form{background-color:var(--color-background-alt);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.candle-intention-form .form-title{margin-top:0;color:var(--color-primary)}html.dark .candle-intention-form .form-title{color:var(--color-accent)}.candle-intention-form .form-description,.candle-intention-form .form-field{margin-bottom:var(--spacing-md)}.candle-intention-form .form-field:last-child{margin-bottom:0}.candle-intention-form label{display:block;margin-bottom:var(--spacing-xs);font-weight:700}.candle-intention-form .required{color:#e32;margin-left:var(--spacing-xs)}.priest-profile{display:grid;grid-template-columns:1fr;grid-gap:var(--grid-gap);gap:var(--grid-gap);margin-bottom:var(--spacing-lg)}@media(min-width:768px){.priest-profile{grid-template-columns:300px 1fr}}.priest-profile .priest-image{border-radius:var(--border-radius);overflow:hidden}.priest-profile .priest-content .priest-title{margin-top:0;color:var(--color-primary)}html.dark .priest-profile .priest-content .priest-title{color:var(--color-accent)}.priest-profile .priest-content .priest-role{font-size:1.25rem;color:var(--color-text-light);margin-bottom:var(--spacing-md)}.priest-profile .priest-content .priest-contact{margin-top:var(--spacing-md)}.priest-profile .priest-content .priest-contact .contact-item{margin-bottom:var(--spacing-xs)}.priest-profile .priest-content .priest-contact .contact-item:last-child{margin-bottom:0}.cemetery-search{background-color:var(--color-background-alt);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.cemetery-search .search-title{margin-top:0;color:var(--color-primary)}html.dark .cemetery-search .search-title{color:var(--color-accent)}.cemetery-search .search-description{margin-bottom:var(--spacing-md)}.cemetery-search .search-form{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.cemetery-search .search-form input[type=text]{flex:1 1;min-width:200px}.cemetery-search .search-form button{white-space:nowrap}.cemetery-search .search-results{margin-top:var(--spacing-md)}.cemetery-search .search-results .result-item{padding:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.cemetery-search .search-results .result-item:last-child{border-bottom:none}.cemetery-search .search-results .result-name{font-weight:700}.cemetery-search .search-results .result-dates{color:var(--color-text-light);font-size:.875rem}.cemetery-search .search-results .result-location{margin-top:var(--spacing-xs);font-size:.875rem}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.hidden{display:none}.clearfix:after{content:"";display:table;clear:both}.menu-toggle{position:relative;z-index:101}.main-navigation.toggled-on .menu{display:block;position:absolute;top:100%;left:0;width:100%;background-color:var(--color-background);box-shadow:var(--box-shadow);padding:var(--spacing-md);z-index:100}.main-navigation.toggled-on li{display:block;width:100%;text-align:left}.main-navigation.toggled-on a{padding:var(--spacing-sm) var(--spacing-md)}.main-navigation.toggled-on .sub-menu{position:static;box-shadow:none;padding-left:var(--spacing-md)}.hamburger-icon{width:24px;height:2px;background-color:currentColor;display:block;position:relative;transition:background-color .15s ease-in-out}.hamburger-icon:after,.hamburger-icon:before{content:"";width:100%;height:100%;background-color:currentColor;display:block;position:absolute;transition:transform .15s ease-in-out}.hamburger-icon:before{top:-8px}.hamburger-icon:after{top:8px}.menu-toggle.toggled-on .hamburger-icon{background-color:rgba(0,0,0,0)}.menu-toggle.toggled-on .hamburger-icon:before{transform:translateY(8px) rotate(45deg)}.menu-toggle.toggled-on .hamburger-icon:after{transform:translateY(-8px) rotate(-45deg)}@media(max-width:768px){html{font-size:16px}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}}.liturgical-info h2{text-align:center}.liturgical-info .next-holiday .holiday-message{padding:1rem;background-color:var(--primary-color);color:var(--background-color);border-radius:8px;text-align:center;font-weight:700;font-size:1.2rem}