:root{--navy:#10243f;--navy2:#1b3658;--gold:#c6a15b;--cream:#f7f1e8;--paper:#fffdfa;--text:#1d2430;--muted:#647084;--white:#fff;--line:#e9e1d4;--shadow:0 20px 55px rgba(16,36,63,.10)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:var(--paper);line-height:1.65}
a{color:inherit}img{max-width:100%;height:auto}
.container,.wrap{width:min(1180px,92%);margin:auto}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:15px;top:15px;z-index:9999;background:#fff;padding:12px}
.topbar{background:var(--navy);color:#fff;font-size:13px}.topbar-inner{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);box-shadow:0 8px 30px rgba(16,36,63,.08);backdrop-filter:blur(12px)}
.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.brand .custom-logo{max-height:60px;width:auto}
.brand-mark{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-family:"Playfair Display",serif;font-weight:700}
.brand-text strong{display:block;font-family:"Playfair Display",serif;font-size:24px;line-height:1.1;color:var(--navy)}.brand-text small{display:block;color:var(--muted);font-size:13px}
.main-navigation ul{display:flex;gap:25px;align-items:center;list-style:none;margin:0;padding:0}.main-navigation a{text-decoration:none;font-weight:700;font-size:14px;color:var(--navy)}.main-navigation a:hover{color:#9b6a17}
.menu-toggle{display:none;background:var(--navy);color:#fff;border:0;padding:10px 14px;border-radius:8px;font-size:20px}
.hero{position:relative;min-height:650px;display:flex;align-items:center;background:linear-gradient(135deg,#10243f,#294b72);background-size:cover;background-position:center;color:#fff;overflow:hidden}
.hero:after{content:"M";position:absolute;right:4%;bottom:-25%;font-family:"Playfair Display",serif;font-size:min(55vw,650px);line-height:1;color:rgba(255,255,255,.035)}
.hero-inner{position:relative;z-index:2;width:min(1180px,92%);margin:auto;padding:105px 0 145px}
.hero h1{max-width:900px;margin:0 0 20px;font-family:"Playfair Display",serif;font-size:clamp(45px,6vw,76px);line-height:1.07}
.eyebrow{display:inline-block;color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:800;margin:0 0 16px}
.motto{font-family:"Playfair Display",serif;font-size:clamp(23px,3vw,34px);font-style:italic;color:#ecd59f;margin:0 0 34px}
.btns{display:flex;gap:13px;flex-wrap:wrap}.btn{display:inline-flex;padding:14px 22px;border-radius:999px;background:var(--gold);color:#172132;text-decoration:none;font-weight:800}.btn.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.quick{position:relative;z-index:4;display:grid;grid-template-columns:repeat(5,1fr);margin-top:-70px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}
.quick a{display:flex;flex-direction:column;min-height:135px;padding:25px 20px;text-decoration:none;border-right:1px solid var(--line);transition:.2s}.quick a:last-child{border-right:0}.quick a:hover{background:var(--cream)}
.quick b{font-family:"Playfair Display",serif;color:var(--navy);font-size:20px}.quick span{color:var(--muted);font-size:14px;margin-top:5px}
.section{padding:88px 0}.section:nth-of-type(even){background:#fff}
.section h2{margin:0 0 22px;font-family:"Playfair Display",serif;color:var(--navy);font-size:clamp(34px,4.5vw,54px);line-height:1.12}
.grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center}
.image-card{display:block;width:100%;min-height:350px;object-fit:cover;border-radius:22px;background:linear-gradient(145deg,#10243f,#355a80);box-shadow:var(--shadow)}
.schedule{background:var(--cream)!important}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-title h2{margin-bottom:0}.section-title>p{color:var(--muted)}
.mass-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card,.content-box,.announcements,.intentions,.parish-data,.service-panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:0 12px 36px rgba(16,36,63,.07)}
.card h3,.content-entry-title,.parish-data h3,.service-panel h3{margin:0 0 15px;font-family:"Playfair Display",serif;color:var(--navy);font-size:25px}
.hours{font-family:"Playfair Display",serif;font-size:42px;line-height:1.25;color:#a97720;margin:0}.list{list-style:none;margin:0;padding:0}.list li{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid var(--line)}
.news-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:stretch}.news-layout aside{display:flex;flex-direction:column;gap:15px}.news-layout .image-card{height:100%;min-height:360px}.quote{padding:18px;border-left:4px solid var(--gold);background:var(--cream);border-radius:0 12px 12px 0;color:var(--muted)}
.date-badge{display:inline-block;padding:6px 11px;border-radius:999px;background:var(--cream);color:#946719;font-size:12px;font-weight:800}.text-link{display:inline-block;margin-top:15px;color:#9b6a17;text-decoration:none;font-weight:800}
.news-more{margin-top:30px}.archive-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.archive-card{display:block;padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff;text-decoration:none}.archive-card small{color:#a97720;font-weight:800}.archive-card h3{margin:6px 0 0;color:var(--navy);font-size:20px}
#intencje{background:linear-gradient(135deg,#10243f,#203f64);color:#fff}#intencje h2{color:#fff}#intencje .content-box{color:var(--text)}
.intentions,.announcements{overflow-wrap:anywhere}.day{padding:18px 0;border-bottom:1px solid var(--line)}.day:last-child{border-bottom:0}.day h3{margin:0 0 12px;color:var(--navy)}.intent-line{display:grid;grid-template-columns:85px 1fr;gap:18px;padding:6px 0}.time{font-weight:800;color:#9b6a17}
.announcements ol{margin:0;padding-left:24px}.announcements li{margin-bottom:12px}
.sacr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sacr-grid span{padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px;text-align:center;color:var(--navy);font-weight:700}
#cmentarz{background:linear-gradient(120deg,#10243f,#244a72);color:#fff}.cemetery{padding:48px;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:rgba(255,255,255,.06)}#cmentarz h2{color:#fff}.cemetery p{max-width:760px}
.contact-overview{display:grid;grid-template-columns:.75fr 1.25fr;gap:22px}.service-list{display:grid;gap:12px}.service-row{display:flex;justify-content:space-between;gap:25px;padding:17px;background:var(--cream);border-radius:12px}.service-row>div{display:flex;flex-direction:column}.service-role{color:#9b6a17;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.service-contact{text-align:right}.compact>div{width:50%}
.vatican-widget{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.vatican-widget iframe{display:block;border:0}
.entry-content p:last-child{margin-bottom:0}.entry-content ol,.entry-content ul{padding-left:24px}
.site-footer{background:var(--navy);color:#fff}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:55px 0}.site-footer h3{color:var(--gold);font-size:22px;margin:0 0 10px}.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.14);padding:18px;color:rgba(255,255,255,.74)}
.page-content{padding:70px 0}

@media(max-width:950px){
.topbar-inner{flex-direction:column;gap:2px}.menu-toggle{display:block}.main-navigation{display:none;position:absolute;left:4%;right:4%;top:122px;background:#fff;padding:22px;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.14)}.main-navigation.is-open{display:block}.main-navigation ul{display:block}.main-navigation li{padding:9px 0}
.quick{grid-template-columns:repeat(3,1fr)}.quick a{border-bottom:1px solid var(--line)}
.grid-2,.news-layout,.contact-overview{grid-template-columns:1fr}.mass-grid{grid-template-columns:1fr 1fr}.sacr-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
.brand-text strong{font-size:18px}.brand-mark{width:45px;height:45px}.hero{min-height:590px}.hero-inner{padding:85px 0 130px}.quick{grid-template-columns:1fr 1fr}.quick a{min-height:120px}.section{padding:68px 0}.section-title{align-items:flex-start;flex-direction:column}.mass-grid,.archive-list,.footer-grid{grid-template-columns:1fr}.sacr-grid{grid-template-columns:1fr}.service-row{flex-direction:column}.service-contact{text-align:left}.compact>div{width:100%}.compact{gap:16px}.intent-line{grid-template-columns:65px 1fr}
}
