
:root{--navy:#061b35;--navy2:#0a3156;--gold:#e5ac2b;--gold2:#ffd36a;--ink:#18212b;--muted:#65707d;--bg:#f7f5f0;--surface:#fff;--surface2:#efebe3;--line:#ddd7cc;--display:"Source Serif 4",Georgia,"Times New Roman",serif;--section:"Source Serif 4",Georgia,"Times New Roman",serif;--body:"Noto Sans","Segoe UI",Arial,sans-serif;--ui:"Noto Sans","Segoe UI",Arial,sans-serif;--script:"Source Serif 4",Georgia,"Times New Roman",serif;--shadow:0 16px 40px rgba(6,27,53,.10);--radius:22px;--shell:1220px}
html[data-theme="dark"]{--ink:#f4f0e8;--muted:#bdc5ce;--bg:#07131f;--surface:#0e2234;--surface2:#162d42;--line:#29475f;--shadow:0 18px 44px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.shell{width:min(var(--shell),calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;left:12px;top:-70px;z-index:1000;background:#fff;color:#111;padding:10px 14px;border-radius:10px;font-family:var(--ui)}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:100;background:#061b35;color:#fff;border-bottom:1px solid rgba(255,255,255,.10)}.header-inner{height:78px;display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:22px}.brand img{height:49px;width:auto}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:2px;font-family:var(--ui);font-size:.86rem;font-weight:700}.desktop-nav>a,.more-nav>summary{padding:13px 12px;border-radius:999px;position:relative;cursor:pointer;list-style:none;color:#eaf0f6}.desktop-nav>a::after,.more-nav>summary::after{content:"";position:absolute;height:2px;left:15px;right:15px;bottom:7px;background:var(--gold2);transform:scaleX(0);transition:transform .25s ease}.desktop-nav>a:hover::after,.desktop-nav>a.active::after,.more-nav>summary:hover::after{transform:scaleX(1)}.more-nav{position:relative}.more-nav summary::-webkit-details-marker{display:none}.more-menu{position:absolute;right:0;top:calc(100% + 12px);width:220px;padding:9px;border-radius:16px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}.more-menu a{display:block;padding:11px 12px;border-radius:11px;font-family:var(--ui);font-size:.9rem}.more-menu a:hover{background:var(--surface2)}.header-actions{display:flex;align-items:center;gap:9px}.live-button{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:#071827;padding:11px 16px;border-radius:999px;font-family:var(--ui);font-weight:800;font-size:.85rem}.live-button svg,.button svg,.text-link svg,.path-item>svg,.hero-info svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.theme-button,.menu-button{width:43px;height:43px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#fff;display:grid;place-items:center}.theme-button .sun{display:none}html[data-theme="dark"] .theme-button .moon{display:none}html[data-theme="dark"] .theme-button .sun{display:block}.menu-button{display:none;padding:12px}.menu-button span{display:block;width:18px;height:2px;background:#fff;margin:2px 0}.menu-backdrop{position:fixed;inset:0;background:rgba(1,8,15,.58);z-index:119}.mobile-menu{position:fixed;z-index:120;top:0;right:0;height:100dvh;width:min(390px,90vw);background:#061b35;color:#fff;padding:22px;transform:translateX(105%);transition:transform .32s ease}.mobile-menu.open{transform:none}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.12)}.mobile-menu-head img{height:48px}.mobile-menu-head button{border:0;background:none;color:#fff;font-size:2rem}.mobile-menu nav{display:grid;margin-top:20px}.mobile-menu nav a{font-family:var(--ui);font-weight:700;padding:13px 8px;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-menu nav a.active{color:var(--gold2)}.mobile-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.mobile-menu-actions a{padding:12px;text-align:center;border-radius:12px;background:var(--gold);color:#071827;font-family:var(--ui);font-weight:800}.mobile-menu-actions a+ a{background:#fff}.section{padding:88px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:36px}.section-heading>div{max-width:760px}.section-heading>p{max-width:510px;color:var(--muted)}h1,h2,h3{margin:0;color:inherit}h1,h2{font-family:var(--display);letter-spacing:-.032em}h1{font-size:clamp(3.2rem,6vw,6.2rem);line-height:.96;font-weight:900}h2{font-size:clamp(2.3rem,4.2vw,4.2rem);line-height:1.02;font-weight:900}h3{font-family:var(--section);font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.18;font-weight:700;letter-spacing:-.018em}.eyebrow{font-family:var(--ui);text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.72rem;color:#9b6b00;margin:0 0 10px}.handwritten{font-family:var(--display);font-size:1rem;color:var(--gold2);margin:0 0 8px;line-height:1.25;font-weight:800;font-style:italic;letter-spacing:.02em}.handwritten.dark{color:#a87300}.handwritten.light{color:var(--gold2)}.large-copy{font-family:var(--body);font-size:1.18rem;line-height:1.7;color:var(--ink);font-weight:500}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:49px;padding:0 19px;border-radius:12px;font-family:var(--ui);font-weight:800;font-size:.9rem;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease}.button:hover{transform:translateY(-2px)}.button.gold{background:var(--gold);color:#071827;box-shadow:0 10px 26px rgba(229,172,43,.20)}.button.navy{background:var(--navy);color:#fff}.button.glass{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.32);backdrop-filter:blur(8px)}.text-link{display:inline-flex;align-items:center;gap:7px;font-family:var(--ui);font-weight:800;font-size:.88rem;color:var(--gold2)}.text-link svg{width:17px}.dark-link{color:var(--ink)}.home-hero{position:relative;min-height:720px;background:#061b35;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,36,.91) 0%,rgba(4,21,40,.72) 43%,rgba(4,21,40,.32) 100%)}.hero-content{position:relative;z-index:2;min-height:600px;display:grid;grid-template-columns:1.1fr .72fr;align-items:center;gap:80px;padding:70px 0 120px}.hero-copy h1 span{color:var(--gold2)}.hero-copy>p:not(.handwritten){max-width:620px;color:#dfe8f0;font-size:1.1rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.hero-sabbath{align-self:end;margin-bottom:16px;background:rgba(4,24,46,.87);border:1px solid rgba(255,255,255,.17);backdrop-filter:blur(14px);border-radius:var(--radius);padding:28px}.hero-sabbath time{font-family:var(--ui);font-size:.8rem;color:#dbe5ee}.hero-sabbath h2{font-size:2.3rem;margin:7px 0 0}.script-accent{font-family:var(--display);font-size:1.15rem;color:var(--gold2);margin:5px 0 18px;font-weight:700}.mini-times{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);padding:16px 0;margin-bottom:16px}.mini-times span{font-family:var(--ui);font-size:.76rem;color:#cfdce7}.mini-times strong{display:block;color:#fff;font-size:.9rem}.hero-info{position:absolute;z-index:3;left:50%;transform:translateX(-50%);bottom:0;background:#fff;color:#142131;display:grid;grid-template-columns:1fr 1.35fr 1fr;border-radius:18px 18px 0 0;overflow:hidden;box-shadow:0 -10px 34px rgba(0,0,0,.14)}.hero-info>div{display:flex;align-items:center;gap:13px;padding:19px 24px;border-right:1px solid #e7e2d8}.hero-info>div:last-child{border-right:0}.hero-info svg{width:23px;height:23px;color:#a87300}.hero-info span{display:grid}.hero-info small{font-family:var(--ui);text-transform:uppercase;letter-spacing:.1em;color:#6e7884;font-size:.65rem}.hero-info strong{font-family:var(--ui);font-size:.84rem}.new-here{background:var(--surface)}.path-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.path-item{display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;padding:28px 20px;border-right:1px solid var(--line);transition:background .2s ease}.path-item:last-child{border-right:0}.path-item:hover{background:var(--surface2)}.path-item>svg{width:27px;height:27px;fill:none;stroke:#9b6b00;stroke-width:1.6}.path-item>svg:last-child{width:17px;color:var(--muted)}.path-item span{display:grid}.path-item strong{font-family:var(--section);font-size:1.28rem}.path-item small{font-family:var(--ui);color:var(--muted);font-size:.75rem;line-height:1.45}.sabbath-spotlight{background:var(--bg)}.split-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.feature-photo{position:relative;height:560px;overflow:hidden;border-radius:26px}.feature-photo img{width:100%;height:100%;object-fit:cover}.feature-photo span{position:absolute;left:22px;bottom:22px;background:#fff;color:#122033;padding:9px 13px;border-radius:999px;font-family:var(--ui);font-weight:700;font-size:.75rem}.feature-copy{max-width:560px}.schedule-list{margin:26px 0 28px}.schedule-list div{display:grid;grid-template-columns:115px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid var(--line)}.schedule-list dt{font-family:var(--ui);font-weight:800;color:#9b6b00}.schedule-list dd{margin:0;font-family:var(--section);font-size:1.25rem;font-weight:700}.happenings{background:var(--surface)}.happenings-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:54px}.event-editorial article{display:grid;grid-template-columns:88px 1fr;gap:24px;padding:25px 0;border-top:1px solid var(--line)}.event-editorial article:last-child{border-bottom:1px solid var(--line)}.event-editorial time{font-family:var(--display);font-weight:900;font-size:2.2rem;line-height:1;color:var(--navy)}html[data-theme="dark"] .event-editorial time{color:var(--gold2)}.event-editorial time span{display:block;font-family:var(--ui);font-size:.62rem;letter-spacing:.16em;color:#a87300;margin-bottom:5px}.event-editorial h3{font-size:1.8rem}.event-editorial p{color:var(--muted);margin:.45rem 0 0}.notice-stack{display:grid;gap:22px}.notice-feature{border:1px solid var(--line);display:grid;grid-template-columns:170px 1fr;gap:20px;padding:14px;border-radius:18px;background:var(--bg)}.notice-feature>img{width:170px;height:170px;object-fit:contain;background:#fff;border-radius:12px}.notice-feature>div{align-self:center}.text-button{border:0;background:none;padding:0;color:#9b6b00;font-family:var(--ui);font-weight:800}.announcement-note{padding:28px;background:var(--navy);color:#fff;border-radius:18px}.announcement-note h3{font-size:1.8rem}.announcement-note p:not(.handwritten){color:#d3dfeb}.announcement-note a{font-family:var(--ui);font-weight:800;color:var(--gold2)}.resources-preview{background:var(--bg)}.resource-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.resource-preview{border-top:1px solid var(--line);padding-top:16px}.resource-preview>div{height:300px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);overflow:hidden}.resource-preview img{width:100%;height:100%;object-fit:contain;padding:12px}.resource-preview p{font-family:var(--ui);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#9b6b00;margin:15px 0 4px}.resource-preview h3{font-size:1.45rem}.watch-feature{background:var(--navy);color:#fff}.watch-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.watch-inner>div:first-child p:not(.handwritten){color:#d4dfea;max-width:530px}.watch-visual{position:relative;height:420px;overflow:hidden;border-radius:24px}.watch-visual img{width:100%;height:100%;object-fit:cover}.watch-visual::after{content:"";position:absolute;inset:0;background:rgba(2,13,24,.20)}.play-disc{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#071b33;font-size:1.5rem}.visit-section{background:var(--surface)}.visit-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.visit-copy>p:not(.handwritten){max-width:600px;color:var(--muted)}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:28px 0}.visit-details span{display:block;font-family:var(--ui);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#9b6b00;margin-bottom:6px}.visit-details strong{font-family:var(--section);font-size:1.1rem}.scripture{margin:0;background:var(--surface2);padding:54px;border-radius:24px;font-family:var(--section);font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.1}.scripture cite{display:block;margin-top:18px;font-family:var(--ui);font-size:.78rem;font-style:normal;text-transform:uppercase;letter-spacing:.1em;color:#9b6b00}.welcome-overlay,.media-modal{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px}.welcome-overlay[hidden],.media-modal[hidden]{display:none}.welcome-backdrop,.media-backdrop{position:absolute;inset:0;background:rgba(3,14,26,.72);backdrop-filter:blur(7px)}.welcome-card{position:relative;z-index:2;width:min(660px,100%);max-height:calc(100dvh - 40px);overflow:auto;background:#fff;color:#17212c;border-radius:28px;padding:42px;box-shadow:0 28px 80px rgba(0,0,0,.30)}.welcome-card h2{font-size:clamp(2.4rem,5vw,3.7rem);max-width:12ch}.welcome-card>p:not(.handwritten){color:#67727f;max-width:570px}.welcome-close,.media-close{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;border:1px solid #d8d8d8;background:#fff;color:#111;font-size:1.8rem;display:grid;place-items:center}.welcome-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0 20px}.welcome-links a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;border:1px solid #e0e2e4;border-radius:14px}.welcome-links svg{width:23px;height:23px;fill:none;stroke:#132235;stroke-width:1.7}.welcome-links svg:last-child{width:16px}.welcome-links span{display:grid}.welcome-links strong{font-family:var(--ui);font-size:.9rem}.welcome-links small{font-family:var(--ui);font-size:.72rem;color:#737d88}.welcome-enter{width:100%;border:0;border-radius:13px;background:#071b33;color:#fff;padding:14px;font-family:var(--ui);font-weight:800}.media-dialog{position:relative;z-index:2;width:min(920px,100%);max-height:90dvh;padding:54px 20px 18px;background:var(--surface);border-radius:20px;overflow:auto}.media-dialog img{max-height:74dvh;width:100%;object-fit:contain}.media-dialog p{text-align:center;font-family:var(--ui);font-size:.85rem}.page-hero{position:relative;background:linear-gradient(115deg,#061b35,#0b3b64);color:#fff}.page-hero.compact .shell{padding:74px 0 82px}.page-hero.compact h1{font-size:clamp(3.3rem,6vw,5.6rem)}.page-hero.compact p:not(.handwritten){max-width:680px;color:#dbe5ef}.page-hero.image-hero{min-height:540px;display:grid;align-items:end;overflow:hidden}.page-hero.image-hero>img,.image-hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.image-hero-overlay{background:linear-gradient(90deg,rgba(3,17,32,.84),rgba(3,17,32,.35))}.page-hero.image-hero .shell{position:relative;z-index:2;padding:90px 0}.page-hero.image-hero .shell p:not(.handwritten){color:#dbe5ef;max-width:620px}.narrow{max-width:1120px}.status-line{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:65px}.status-line span{font-family:var(--ui);font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#9b6b00;font-size:.75rem}.status-line p{margin:0;color:var(--muted)}.sabbath-page-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:54px}.sabbath-story{border-top:1px solid var(--line)}.sabbath-story img{width:100%;height:390px;object-fit:cover;margin:18px 0 22px}.schedule-panel{background:var(--surface);border:1px solid var(--line);padding:30px;border-radius:20px;align-self:start}.simple-callout{margin-top:65px;padding:32px;background:var(--surface2);display:flex;align-items:center;justify-content:space-between;gap:30px;border-radius:20px}.simple-callout p{margin:.3rem 0;color:var(--muted)}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:78px}.reference-item{border-top:1px solid var(--line);padding-top:18px;display:grid;grid-template-columns:46px 1fr;gap:16px}.reference-item>span,.ministry-item>span{font-family:var(--ui);font-weight:800;color:#a87300;font-size:.8rem}.reference-item p{color:var(--muted);margin:.4rem 0}.line-list{border-top:1px solid var(--line)}.line-list a{display:grid;grid-template-columns:260px 1fr;gap:30px;padding:22px 0;border-bottom:1px solid var(--line)}.line-list strong{font-family:var(--section);font-size:1.4rem}.line-list span{color:var(--muted)}.calendar-month{padding-bottom:70px}.month-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:25px}.outline-button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:10px 14px;border-radius:10px;font-family:var(--ui);font-size:.8rem;font-weight:800}.event-list-large{border-top:1px solid var(--line)}.event-list-large article{display:grid;grid-template-columns:105px 1fr;gap:28px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}.event-list-large time{font-family:var(--display);font-size:2.6rem;font-weight:900;line-height:.9}.event-list-large time span{display:block;font-family:var(--ui);font-size:.67rem;letter-spacing:.14em;color:#a87300;margin-bottom:4px}.event-list-large h3{font-size:1.7rem}.event-list-large p{margin:.35rem 0 0;color:var(--muted)}.recurring{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;border-top:1px solid var(--line);padding-top:50px}.recurring-list{border-top:1px solid var(--line)}.recurring-list>div{display:grid;grid-template-columns:1fr 220px;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.recurring-list strong{font-family:var(--section);font-size:1.35rem}.recurring-list span{font-family:var(--ui);color:var(--muted);text-align:right}.library-tools{display:flex;justify-content:space-between;align-items:end;gap:25px;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:34px}.library-tools label{display:grid;gap:8px;font-family:var(--ui);font-size:.78rem;font-weight:800;width:min(400px,100%)}.library-tools input{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:12px 14px;border-radius:10px}.filter-row{display:flex;flex-wrap:wrap;gap:8px}.filter-row button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:9px 12px;border-radius:999px;font-family:var(--ui);font-size:.74rem;font-weight:800}.filter-row button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.library-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 22px}.library-card .cover{height:320px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;overflow:hidden}.library-card img{width:100%;height:100%;object-fit:contain;padding:12px}.library-card>p{font-family:var(--ui);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#a87300;margin:13px 0 3px}.library-card h3{font-size:1.4rem}.library-card>span{display:block;color:var(--muted);font-size:.94rem;margin-top:6px}.library-card[hidden]{display:none}.resource-help{margin-top:70px;background:var(--navy);color:#fff;border-radius:22px;padding:38px;display:flex;align-items:center;justify-content:space-between;gap:30px}.resource-help h2{font-size:2.5rem}.resource-help p:not(.handwritten){color:#d6e1ea}.ministry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.ministry-item{background:var(--surface);padding:28px;min-height:210px}.ministry-item h3{margin:25px 0 8px}.ministry-item p{color:var(--muted);margin:0}.about-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.about-story>div p:not(.eyebrow){color:var(--muted)}.about-story figure{margin:0;height:520px;overflow:hidden;border-radius:22px}.about-story img{width:100%;height:100%;object-fit:cover}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:70px}.values-grid article{background:var(--surface);padding:30px}.values-grid span{font-family:var(--ui);font-size:.75rem;color:#a87300;font-weight:800}.values-grid h3{margin:26px 0 8px}.values-grid p{color:var(--muted)}.connect-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:45px}.visit-primary{padding-right:50px}.visit-primary p:not(.eyebrow){font-family:var(--section);font-size:1.35rem}.expect-card{background:var(--surface2);padding:36px;border-radius:22px}.expect-card ul{padding-left:20px;color:var(--muted)}.schedule-social-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:70px}.visit-schedule,.follow-panel{padding:36px;border-radius:22px}.visit-schedule{border:1px solid var(--line);background:var(--surface)}.follow-panel{background:var(--navy);color:#fff}.follow-panel p:not(.handwritten){color:#d6e0e9}.socials{display:flex;gap:10px;align-items:center}.socials a{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;transition:transform .2s ease,background .2s ease,border-color .2s ease}.socials a:hover{transform:translateY(-2px);background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.30)}.socials img{width:24px;height:24px;object-fit:contain}.socials.large{margin:24px 0}.socials.large a{width:46px;height:46px;border-radius:12px}.socials.large img{width:27px;height:27px}.archive-collections{display:grid;gap:22px}.archive-collection{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.archive-collection summary{padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:30px;cursor:pointer;list-style:none}.archive-collection summary::-webkit-details-marker{display:none}.archive-collection summary time{font-family:var(--ui);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#a87300}.archive-collection summary h3{font-size:1.8rem;margin:5px 0}.archive-collection summary p{color:var(--muted);margin:0}.archive-collection summary>span{font-family:var(--ui);font-weight:800;font-size:.8rem}.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:10px 0 30px}.archive-thumb{padding:0;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:left}.archive-thumb img{width:100%;aspect-ratio:16/10;object-fit:contain;background:#fff}.archive-thumb span{display:block;padding:10px;font-family:var(--ui);font-size:.75rem;font-weight:700}.site-footer{background:#061b35;color:#fff;padding:62px 0 0}.footer-main{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:42px}.footer-identity img{height:62px;width:auto}.footer-identity p{color:#c9d6e1;max-width:330px}.footer-column{display:grid;align-content:start;gap:7px}.footer-column h2{font-family:var(--section);font-size:1.35rem;margin-bottom:9px}.footer-column a,.footer-column p{font-family:var(--ui);font-size:.78rem;color:#cbd7e2;margin:0}.footer-column strong{color:#fff}.footer-bottom{margin-top:42px;border-top:1px solid rgba(255,255,255,.13);padding:19px 0 24px;display:flex;justify-content:space-between;gap:20px;color:#aebdcc;font-family:var(--ui);font-size:.72rem}.back-top{position:fixed;right:18px;bottom:18px;z-index:80;width:44px;height:44px;border-radius:50%;border:0;background:#061b35;color:#fff;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .2s}.back-top.show{opacity:1;pointer-events:auto}.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal.visible{opacity:1;transform:none}body.modal-open{overflow:hidden}
@media(max-width:1050px){.desktop-nav{display:none}.menu-button{display:grid}.header-inner{grid-template-columns:1fr auto}.brand img{height:45px}.path-grid{grid-template-columns:1fr 1fr}.path-item:nth-child(2){border-right:0}.path-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.split-feature,.watch-inner,.visit-grid,.about-story,.connect-grid,.schedule-social-grid,.sabbath-page-grid,.happenings-layout{grid-template-columns:1fr}.feature-photo{height:480px}.watch-visual{height:380px}.reference-grid{grid-template-columns:1fr}.resource-preview-grid,.library-grid{grid-template-columns:repeat(3,1fr)}.ministry-grid,.values-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1.5fr 1fr 1fr}.footer-column:nth-of-type(4),.footer-column:nth-of-type(5){margin-top:10px}.recurring{grid-template-columns:1fr}.hero-content{grid-template-columns:1fr;gap:30px;padding-top:80px}.hero-sabbath{max-width:620px}.home-hero{min-height:900px}}
@media(max-width:720px){body{font-size:16px}.shell{width:min(100% - 30px,var(--shell))}.site-header{position:sticky}.header-inner{height:68px}.brand img{height:40px}.live-button{width:43px;height:43px;padding:0;justify-content:center}.live-button span{display:none}.home-hero{min-height:auto}.hero-content{min-height:auto;padding:62px 0 165px}.hero-copy h1{font-size:clamp(3rem,14vw,4.8rem)}.hero-copy>p:not(.handwritten){font-size:1rem}.hero-sabbath{padding:22px}.hero-sabbath h2{font-size:2rem}.hero-info{grid-template-columns:1fr;position:absolute;bottom:0;border-radius:0;width:100%;left:0;transform:none}.hero-info>div{padding:12px 15px;border-right:0;border-bottom:1px solid #e7e2d8}.hero-info>div:nth-child(3){display:none}.hero-info strong{font-size:.78rem}.section{padding:66px 0}.section-heading{display:grid;gap:12px;align-items:start}.section-heading>p{margin:0}.path-grid{grid-template-columns:1fr}.path-item{border-right:0!important;border-bottom:1px solid var(--line)!important}.feature-photo{height:360px;border-radius:18px}.schedule-list div{grid-template-columns:100px 1fr}.event-editorial article{grid-template-columns:70px 1fr;gap:17px}.notice-feature{grid-template-columns:110px 1fr}.notice-feature>img{width:110px;height:130px}.resource-preview-grid,.library-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.resource-preview>div,.library-card .cover{height:240px}.watch-visual{height:270px}.visit-details{grid-template-columns:1fr}.scripture{padding:32px}.welcome-card{padding:34px 20px 22px;border-radius:22px}.welcome-links{grid-template-columns:1fr}.page-hero.compact .shell{padding:56px 0 62px}.status-line{grid-template-columns:1fr;gap:8px;margin-bottom:50px}.simple-callout{display:grid}.line-list a{grid-template-columns:1fr;gap:5px}.month-heading{display:grid}.event-list-large article{grid-template-columns:75px 1fr;gap:18px}.event-list-large time{font-size:2rem}.recurring-list>div{grid-template-columns:1fr;gap:4px}.recurring-list span{text-align:left}.library-tools{display:grid;align-items:start}.library-tools label{width:100%}.filter-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.filter-row button{white-space:nowrap}.resource-help{display:grid;padding:28px}.ministry-grid,.values-grid{grid-template-columns:1fr}.ministry-item{min-height:auto}.about-story figure{height:360px}.schedule-social-grid{margin-top:45px}.archive-grid{grid-template-columns:1fr 1fr;gap:10px}.archive-collection summary{align-items:start}.archive-collection summary>span{display:none}.footer-main{grid-template-columns:1fr 1fr;gap:34px 26px}.footer-identity{grid-column:1/-1}.footer-bottom{display:grid}.mobile-menu-actions{grid-template-columns:1fr}.back-top{bottom:14px;right:14px}}
@media(max-width:460px){.resource-preview-grid,.library-grid,.archive-grid{grid-template-columns:1fr}.resource-preview>div,.library-card .cover{height:340px}.mini-times{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-identity{grid-column:auto}.section-heading h2{font-size:2.55rem}.event-editorial h3{font-size:1.55rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

html[data-theme="dark"] .hero-info{background:var(--surface);color:var(--ink)}
html[data-theme="dark"] .hero-info>div{border-color:var(--line)}
html[data-theme="dark"] .hero-info small{color:var(--muted)}
html[data-theme="dark"] .feature-photo span{background:var(--surface);color:var(--ink)}

/* V81 clean sans serif refinement */
.schedule-list dd,.path-item strong,.event-editorial h3,.notice-feature h3,.resource-preview h3,.event-list-large h3,.recurring-list strong,.library-card h3,.ministry-item h3,.values-grid h3,.archive-collection summary h3,.footer-column h2{font-family:var(--display)!important;font-weight:700!important;}
.hero-sabbath h2,.resource-help h2,.visit-schedule h2,.follow-panel h2,.expect-card h2{font-family:var(--display)!important;}
.follow-panel .socials a,.site-footer .socials a{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.17);}
.follow-panel .socials a:hover,.site-footer .socials a:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.30);}

/* V82 Mentorship Emphasis Day integration */
.hero-theme{margin:-9px 0 18px;color:#e9eff5;font-family:var(--body);font-size:.94rem;font-weight:600}.mentorship-home{background:linear-gradient(180deg,var(--bg),var(--surface2))}.mentorship-home-grid{display:grid;grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);gap:64px;align-items:center}.mentorship-poster{position:relative;max-width:500px;justify-self:center}.mentorship-poster img{width:100%;aspect-ratio:1007/1562;object-fit:cover;border-radius:24px;box-shadow:0 28px 70px rgba(6,27,53,.18);border:1px solid rgba(155,107,0,.18)}.poster-action{position:absolute;left:18px;bottom:18px;border:1px solid rgba(255,255,255,.35);background:rgba(6,27,53,.88);backdrop-filter:blur(12px);color:#fff;border-radius:999px;padding:11px 16px;font-family:var(--ui);font-size:.78rem;font-weight:800}.mentorship-home-copy h2{max-width:770px}.event-theme{font-family:var(--display);font-size:clamp(1.25rem,2.2vw,1.8rem);font-weight:800;color:#9b6b00;margin:10px 0 15px}.event-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin:30px 0}.event-facts>div{background:var(--surface);padding:20px 22px;display:grid;gap:5px}.event-facts span{font-family:var(--ui);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:800}.event-facts strong{font-family:var(--display);font-size:1.02rem;line-height:1.35}.feature-actions{display:flex;flex-wrap:wrap;gap:11px}.button.soft{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:none}.button.soft:hover{box-shadow:0 8px 20px rgba(6,27,53,.08)}
.mentorship-page-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#061b35 0%,#0a3156 100%)}.mentorship-page-hero::after{content:"";position:absolute;right:-80px;top:-160px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(229,172,43,.22),transparent 65%);pointer-events:none}.mentorship-page-hero .shell{position:relative;z-index:1}.eyebrow.light{color:var(--gold2)}.mentorship-event-section{background:var(--bg)}.mentorship-lead-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:72px;align-items:start}.official-poster{margin:0;position:sticky;top:105px}.official-poster img{width:100%;border-radius:24px;box-shadow:0 28px 70px rgba(6,27,53,.16);border:1px solid var(--line)}.official-poster figcaption{padding-top:14px}.official-poster .outline-button{width:100%}.mentorship-intro{padding-top:12px}.mentorship-intro h2{max-width:820px}.event-facts.prominent{margin-top:34px}.mentor-leadership{margin-top:32px;padding-top:26px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:16px 28px}.mentor-leadership>.eyebrow{grid-column:1/-1;margin:0}.mentor-leadership>div{display:grid;gap:3px}.mentor-leadership span{font-family:var(--ui);font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:800}.mentor-leadership strong{font-family:var(--display);font-size:1rem}.special-schedule{margin-top:92px;padding:48px;border-radius:26px;background:var(--navy);color:#fff}.schedule-intro{display:grid;grid-template-columns:1fr .8fr;gap:40px;align-items:end;margin-bottom:34px}.schedule-intro .eyebrow{color:var(--gold2);grid-column:1/-1;margin-bottom:-25px}.schedule-intro h2{font-size:clamp(2.2rem,4vw,3.8rem)}.schedule-intro p{color:#cad7e2;margin:0;max-width:520px}.schedule-cards{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.schedule-cards article{padding:28px 24px;border-right:1px solid rgba(255,255,255,.16)}.schedule-cards article:last-child{border-right:0}.schedule-cards time{display:block;font-family:var(--ui);font-weight:800;color:var(--gold2);font-size:.82rem;margin-bottom:18px}.schedule-cards h3{font-size:1.35rem}.schedule-cards p{color:#cbd7e2;font-size:.9rem;line-height:1.55;margin-bottom:0}.programme-section,.video-section{margin-top:92px}.programme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.programme-card{padding:0;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:18px;overflow:hidden;text-align:left;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.programme-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(155,107,0,.35)}.programme-card img{width:100%;aspect-ratio:4/5.6;object-fit:contain;background:#f4efe5}.programme-card span{display:grid;gap:2px;padding:17px 18px 19px}.programme-card strong{font-family:var(--display);font-size:1.04rem}.programme-card small{font-family:var(--ui);color:var(--muted);font-size:.72rem}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.video-grid article{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.video-grid video{display:block;width:100%;aspect-ratio:16/9;background:#07131f;object-fit:contain}.video-grid article>div{padding:18px 20px 22px}.video-grid article .eyebrow{margin-bottom:6px}.featured-event{display:grid;grid-template-columns:320px 1fr;gap:42px;align-items:center;margin-bottom:68px;padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:0 18px 46px rgba(6,27,53,.08)}.featured-event-art img{width:100%;aspect-ratio:643/952;object-fit:cover;border-radius:17px}.featured-event-copy{padding:12px 22px 12px 0}.featured-event-copy h2{font-size:clamp(2.2rem,4vw,3.7rem)}.featured-event-copy>p:not(.eyebrow,.event-theme){color:var(--muted);max-width:710px}.event-meta-row{display:flex;flex-wrap:wrap;gap:12px 28px;margin:26px 0}.event-meta-row span{display:grid;font-family:var(--ui);font-size:.76rem;color:var(--muted)}.event-meta-row strong{color:var(--ink);font-size:.9rem}.media-dialog{max-width:min(900px,calc(100vw - 30px));max-height:92vh}.media-dialog img{max-height:82vh;object-fit:contain}
html[data-theme="dark"] .mentorship-home{background:linear-gradient(180deg,var(--bg),var(--surface2))}html[data-theme="dark"] .mentorship-poster img,html[data-theme="dark"] .official-poster img{border-color:var(--line)}html[data-theme="dark"] .programme-card img{background:#f4efe5}html[data-theme="dark"] .button.soft{background:var(--surface);border-color:var(--line)}
@media(max-width:1050px){.mentorship-home-grid,.mentorship-lead-grid{grid-template-columns:1fr;gap:44px}.mentorship-poster{max-width:460px}.official-poster{position:relative;top:auto;max-width:520px;margin-inline:auto}.schedule-cards{grid-template-columns:1fr 1fr}.schedule-cards article:nth-child(2){border-right:0}.schedule-cards article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}.programme-grid{grid-template-columns:1fr 1fr}.featured-event{grid-template-columns:260px 1fr}.featured-event-copy{padding-right:8px}}
@media(max-width:720px){.mentorship-home-grid{gap:34px}.mentorship-poster{max-width:360px}.event-facts{grid-template-columns:1fr}.mentorship-lead-grid{gap:34px}.mentor-leadership{grid-template-columns:1fr}.special-schedule{margin-top:64px;padding:30px 22px;border-radius:20px}.schedule-intro{grid-template-columns:1fr;gap:10px}.schedule-intro .eyebrow{grid-column:auto;margin:0}.schedule-cards{grid-template-columns:1fr}.schedule-cards article{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)!important}.schedule-cards article:last-child{border-bottom:0!important}.programme-section,.video-section{margin-top:64px}.programme-grid{grid-template-columns:1fr 1fr;gap:12px}.programme-card span{padding:14px}.video-grid{grid-template-columns:1fr}.featured-event{grid-template-columns:1fr;padding:16px;gap:24px}.featured-event-art{max-width:340px;margin-inline:auto}.featured-event-copy{padding:0 6px 8px}.event-meta-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.poster-action{left:12px;bottom:12px}.feature-actions{display:grid;grid-template-columns:1fr}.feature-actions .button{width:100%}}
@media(max-width:460px){.programme-grid{grid-template-columns:1fr}.programme-card img{aspect-ratio:auto;max-height:580px}.event-meta-row{grid-template-columns:1fr}}

/* V83 modular motion and accessibility refinement */
@view-transition{navigation:auto}
:root{
  --shell:1260px;
  --radius:20px;
  --radius-sm:14px;
  --motion-fast:180ms;
  --motion-base:360ms;
  --motion-slow:620ms;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-standard:cubic-bezier(.2,.7,.2,1);
}
html{scroll-padding-top:92px}
body{font-size:17.5px;line-height:1.68}
.site-header{transition:background var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard)}
.header-inner{height:80px;transition:height var(--motion-base) var(--ease-out)}
.brand img{transition:height var(--motion-base) var(--ease-out),transform var(--motion-base) var(--ease-out)}
.site-header.scrolled{background:rgba(6,27,53,.96);box-shadow:0 12px 34px rgba(1,10,20,.16);border-color:rgba(255,255,255,.07);backdrop-filter:blur(14px)}
.site-header.scrolled .header-inner{height:68px}.site-header.scrolled .brand img{height:43px}
.desktop-nav{font-size:.92rem}.live-button{font-size:.9rem;min-height:45px}.more-menu a{font-size:.92rem}
.eyebrow{font-size:.82rem;letter-spacing:.11em}.handwritten{font-size:1.02rem}.text-link{font-size:.94rem}.button{font-size:.94rem;min-height:51px;padding-inline:21px}
.hero-sabbath time,.mini-times span,.hero-info small,.path-item small,.feature-photo span,.event-editorial time span,.filter-row button,.library-card>p,.values-grid span,.archive-collection summary time,.archive-collection summary>span,.archive-thumb span,.programme-card small,.event-facts span,.mentor-leadership span,.schedule-cards time,.event-meta-row span{font-size:.82rem!important}
.hero-info strong{font-size:.92rem}.mini-times strong{font-size:.95rem}.footer-column a,.footer-column p{font-size:.9rem}.footer-bottom{font-size:.82rem}.welcome-links small{font-size:.86rem!important}.welcome-links strong{font-size:1rem!important}
.section{padding:96px 0}.section-heading{margin-bottom:42px}.section-heading>p{font-size:1.03rem;line-height:1.7}
h1{font-size:clamp(3.1rem,5.4vw,5.6rem);line-height:.98}h2{font-size:clamp(2.35rem,3.7vw,3.9rem);line-height:1.04}h3{font-size:clamp(1.35rem,1.85vw,1.78rem)}

/* Modular surfaces */
.path-grid,.ministry-grid,.values-grid,.event-facts{border-radius:20px;overflow:hidden;box-shadow:0 12px 34px rgba(6,27,53,.045)}
.path-item,.ministry-item,.values-grid article,.programme-card,.resource-preview,.library-card,.notice-feature,.featured-event{transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) ease,background var(--motion-base) ease}
.path-item:hover,.ministry-item:hover,.values-grid article:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(6,27,53,.08);position:relative;z-index:2}
.resource-preview:hover,.programme-card:hover,.featured-event:hover{transform:translateY(-5px)}
.resource-preview img,.programme-card img,.notice-feature img,.featured-event img,.mentorship-poster img,.official-poster img{transition:transform .7s var(--ease-out)}
.resource-preview:hover img,.programme-card:hover img,.notice-feature:hover img,.featured-event:hover img{transform:scale(1.018)}
.button,.live-button,.outline-button,.text-button,.welcome-enter{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-base) ease,background var(--motion-base) ease,border-color var(--motion-base) ease}
.button:active,.live-button:active,.welcome-enter:active{transform:translateY(1px) scale(.985)}

/* More purposeful page introductions */
.page-hero{isolation:isolate;overflow:hidden}.page-hero::before{content:"";position:absolute;inset:auto -12% -80% 42%;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(229,172,43,.15),transparent 66%);pointer-events:none;z-index:-1}
.page-hero.compact .shell{padding:82px 0 90px}.page-hero.compact p:not(.handwritten){font-size:1.05rem;line-height:1.7}

/* V83 welcome experience */
.welcome-overlay{padding:28px;opacity:0;visibility:hidden;pointer-events:none;display:grid!important;transition:opacity .32s ease,visibility .32s ease}
.welcome-overlay[hidden]{display:none!important}.welcome-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}.welcome-overlay.is-closing{opacity:0;visibility:hidden;pointer-events:none}
.welcome-backdrop{background:linear-gradient(135deg,rgba(2,12,24,.78),rgba(4,28,52,.68));backdrop-filter:blur(14px) saturate(1.05);opacity:0;transition:opacity .42s ease}.welcome-overlay.is-open .welcome-backdrop{opacity:1}
.welcome-card{width:min(960px,100%);min-height:560px;max-height:calc(100dvh - 56px);padding:58px 370px 42px 52px;border-radius:30px;overflow:auto;background:#fff;color:#17212c;box-shadow:0 38px 110px rgba(0,0,0,.34);transform:translateY(26px) scale(.975);opacity:0;transition:transform .55s var(--ease-out),opacity .4s ease;isolation:isolate}
.welcome-overlay.is-open .welcome-card{transform:none;opacity:1}.welcome-overlay.is-closing .welcome-card{transform:translateY(12px) scale(.985);opacity:0;transition-duration:.25s}
.welcome-card::before{content:"";position:absolute;z-index:-2;right:0;top:0;bottom:0;width:330px;background:url('../images/waterford-church-hero.webp?v=83') center/cover no-repeat}
.welcome-card::after{content:"";position:absolute;z-index:-1;right:0;top:0;bottom:0;width:330px;background:linear-gradient(180deg,rgba(6,27,53,.06),rgba(6,27,53,.62))}
.welcome-card h2{font-size:clamp(2.55rem,4.6vw,4rem);max-width:10ch;line-height:1.02}.welcome-card>p:not(.handwritten){font-size:1.02rem;line-height:1.67;max-width:530px;color:#5e6976}
.welcome-close{z-index:3;top:18px;right:18px;border:1px solid rgba(255,255,255,.34);background:rgba(6,27,53,.72);color:#fff;backdrop-filter:blur(10px);transition:transform .2s ease,background .2s ease}.welcome-close:hover{transform:rotate(6deg);background:#061b35}
.welcome-links{grid-template-columns:1fr 1fr;gap:11px;margin:30px 0 20px}.welcome-links a{min-height:83px;padding:15px 16px;border-radius:16px;background:#fff;transition:transform .3s var(--ease-out),box-shadow .3s ease,border-color .3s ease;opacity:0;transform:translateY(10px)}
.welcome-overlay.is-open .welcome-links a{opacity:1;transform:none}.welcome-overlay.is-open .welcome-links a:nth-child(1){transition-delay:.10s}.welcome-overlay.is-open .welcome-links a:nth-child(2){transition-delay:.15s}.welcome-overlay.is-open .welcome-links a:nth-child(3){transition-delay:.20s}.welcome-overlay.is-open .welcome-links a:nth-child(4){transition-delay:.25s}
.welcome-links a:hover{transform:translateY(-3px);border-color:#c9a34b;box-shadow:0 12px 28px rgba(6,27,53,.09)}.welcome-links svg{width:25px;height:25px}.welcome-enter{min-height:51px;border-radius:14px;font-size:.95rem}.welcome-enter:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(6,27,53,.18)}

/* Media viewer motion */
.media-modal{opacity:0;visibility:hidden;pointer-events:none;display:grid!important;transition:opacity .28s ease,visibility .28s ease}.media-modal[hidden]{display:none!important}.media-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}.media-backdrop{opacity:0;transition:opacity .3s ease}.media-modal.is-open .media-backdrop{opacity:1}.media-dialog{transform:translateY(18px) scale(.985);opacity:0;transition:transform .42s var(--ease-out),opacity .28s ease}.media-modal.is-open .media-dialog{transform:none;opacity:1}

/* Modern footer */
.site-footer{position:relative;overflow:hidden;padding:74px 0 0;background:linear-gradient(145deg,#04172d 0%,#071f3b 58%,#092d4f 100%)}
.site-footer::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-220px;top:-280px;background:radial-gradient(circle,rgba(229,172,43,.12),transparent 67%);pointer-events:none}
.footer-main{position:relative;grid-template-columns:minmax(260px,1.55fr) repeat(4,minmax(130px,1fr));gap:52px;padding-bottom:54px}.footer-identity{padding-right:28px}.footer-identity img{height:66px}.footer-identity p{font-size:.95rem;line-height:1.65;color:#c8d5e1;margin:18px 0 22px}.footer-column{gap:9px}.footer-column h2{font-size:1.12rem!important;letter-spacing:-.01em;margin-bottom:11px;color:#fff}.footer-column a,.footer-column p{line-height:1.55;color:#c8d5e1}.footer-column a{width:max-content;max-width:100%;transition:color .2s ease,transform .2s ease}.footer-column a:hover{color:#fff;transform:translateX(3px)}
.site-footer .socials{gap:11px}.site-footer .socials a,.follow-panel .socials a{flex:0 0 46px;width:46px;height:46px;aspect-ratio:1/1;border-radius:14px;padding:0;overflow:hidden;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.16);display:grid;place-items:center}.site-footer .socials img,.follow-panel .socials img{display:block;width:26px;height:26px;aspect-ratio:1/1;object-fit:contain;object-position:center;max-width:none}.site-footer .socials a:hover,.follow-panel .socials a:hover{transform:translateY(-4px) scale(1.03);background:rgba(255,255,255,.13);border-color:rgba(255,211,106,.42);box-shadow:0 10px 22px rgba(0,0,0,.17)}
.footer-bottom{position:relative;margin-top:0;padding:23px 0 28px;border-top:1px solid rgba(255,255,255,.12);font-size:.83rem;color:#aebdcc}

/* Reveal and navigation motion */
.reveal{opacity:0;transform:translateY(24px);filter:blur(2px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out),filter .55s ease;transition-delay:var(--reveal-delay,0ms)}.reveal.visible{opacity:1;transform:none;filter:none}
.mobile-menu{transition:transform .42s var(--ease-out);box-shadow:-30px 0 70px rgba(0,0,0,.2)}.menu-backdrop{animation:menuFade .25s ease both}@keyframes menuFade{from{opacity:0}to{opacity:1}}
.back-top{transition:opacity .25s ease,transform .35s var(--ease-out);transform:translateY(12px)}.back-top.show{transform:none}

@media(max-width:1050px){
  .footer-main{grid-template-columns:1.4fr 1fr 1fr;gap:40px 30px}.footer-identity{grid-row:span 2}.welcome-card{width:min(850px,100%);padding-right:320px}.welcome-card::before,.welcome-card::after{width:285px}
}
@media(max-width:720px){
  body{font-size:17px}.shell{width:min(100% - 32px,var(--shell))}.header-inner{height:70px}.site-header.scrolled .header-inner{height:64px}.site-header.scrolled .brand img{height:38px}.section{padding:72px 0}.eyebrow{font-size:.8rem}.hero-info small{font-size:.78rem!important}.hero-info strong{font-size:.86rem}.path-item small{font-size:.84rem!important}.footer-main{grid-template-columns:1fr 1fr;gap:34px 24px;padding-bottom:42px}.footer-identity{grid-column:1/-1;grid-row:auto;padding-right:0}.footer-identity p{max-width:520px}.footer-column a,.footer-column p{font-size:.9rem}.footer-bottom{gap:6px;font-size:.8rem}
  .welcome-overlay{padding:0;align-items:end}.welcome-card{width:100%;min-height:0;max-height:92dvh;border-radius:28px 28px 0 0;padding:220px 20px 22px;transform:translateY(100%);overflow:auto}.welcome-overlay.is-open .welcome-card{transform:none}.welcome-card::before,.welcome-card::after{left:0;right:0;top:0;bottom:auto;width:100%;height:190px}.welcome-card::before{background-position:center 46%}.welcome-card h2{font-size:clamp(2.35rem,10vw,3.2rem);max-width:12ch}.welcome-card>p:not(.handwritten){font-size:1rem}.welcome-close{top:14px;right:14px}.welcome-links{grid-template-columns:1fr 1fr;gap:9px}.welcome-links a{min-height:98px;grid-template-columns:auto 1fr;padding:14px}.welcome-links a>svg:last-child{display:none}.welcome-links strong{font-size:.95rem!important}.welcome-links small{font-size:.82rem!important;line-height:1.4}
}
@media(max-width:460px){
  .footer-main{grid-template-columns:1fr}.footer-identity{grid-column:auto}.site-footer{padding-top:58px}.site-footer .socials a,.follow-panel .socials a{width:48px;height:48px;flex-basis:48px}.site-footer .socials img,.follow-panel .socials img{width:27px;height:27px}.welcome-links{grid-template-columns:1fr}.welcome-links a{min-height:76px}.welcome-card{padding-top:210px}.welcome-card::before,.welcome-card::after{height:180px}
}
@media(prefers-reduced-motion:reduce){
  ::view-transition-group(*){animation-duration:0s!important}.welcome-overlay,.welcome-backdrop,.welcome-card,.welcome-links a,.media-modal,.media-backdrop,.media-dialog,.site-header,.header-inner,.brand img{transition:none!important}.welcome-card,.welcome-links a,.media-dialog{transform:none!important;opacity:1!important}.reveal{filter:none!important}
}
/* V83 minimum readable interface text */
.resource-preview p,.visit-details span,.scripture cite,.status-line span,.reference-item>span,.ministry-item>span,.outline-button,.library-tools label,.poster-action,.archive-thumb span{font-size:.84rem!important}


/* V86 Waterford typography system
   Source Serif 4 carries church heritage. Noto Sans keeps the interface clean and Samsung like. */
:root{
  --display:"Source Serif 4",Georgia,"Times New Roman",serif;
  --section:"Source Serif 4",Georgia,"Times New Roman",serif;
  --body:"Noto Sans","Segoe UI",Arial,sans-serif;
  --ui:"Noto Sans","Segoe UI",Arial,sans-serif;
  --script:"Source Serif 4",Georgia,"Times New Roman",serif;
}

/* Heritage type is reserved for the large church moments */
h1,h2{
  font-family:var(--display);
  font-weight:700;
  letter-spacing:-.024em;
  text-wrap:balance;
}
h1{line-height:.94}
h2{line-height:1}
.section-heading h2,.page-hero h1,.home-hero h1,.mentorship-intro h2,.mentorship-home-copy h2,.featured-event-copy h2,.schedule-intro h2,.welcome-card h2,.resource-help h2{
  font-family:var(--display)!important;
  font-weight:700!important;
}

/* Modern sans stays on functional titles and modular components */
h3,.schedule-list dd,.path-item strong,.event-editorial h3,.notice-feature h3,.resource-preview h3,.event-list-large h3,.recurring-list strong,.library-card h3,.ministry-item h3,.values-grid h3,.archive-collection summary h3,.footer-column h2,.visit-schedule h2,.follow-panel h2,.expect-card h2,.programme-card strong,.event-facts strong,.mentor-leadership strong{
  font-family:var(--section)!important;
  font-weight:700!important;
  letter-spacing:-.018em;
}

/* Editorial accents replace the old handwritten font so the brand stays refined */
.handwritten,.script-accent,.event-theme{
  font-family:var(--script)!important;
  font-style:italic;
  font-weight:600;
  letter-spacing:-.012em;
}
.handwritten{
  font-size:clamp(1.35rem,1.7vw,1.7rem);
  line-height:1;
  margin-bottom:12px;
}
.script-accent{
  font-size:clamp(1.45rem,2vw,1.85rem);
  line-height:1.05;
  margin-top:8px;
}
.event-theme{
  font-size:clamp(1.65rem,2.55vw,2.35rem);
  line-height:1.02;
  color:#a87300;
  margin:12px 0 18px;
}
.home-hero .handwritten,.hero-sabbath .script-accent{color:var(--gold2)}

/* Scripture and faith statements feel editorial, not corporate */
.scripture{
  font-family:var(--display)!important;
  font-weight:600;
  font-style:italic;
  letter-spacing:-.018em;
  line-height:1.08;
}
.scripture cite{
  font-family:var(--ui)!important;
  font-style:normal;
  letter-spacing:.11em;
}

/* Dates can use the serif as a small editorial signature */
.event-editorial time,.event-list-large time{
  font-family:var(--display)!important;
  font-weight:700!important;
  letter-spacing:-.025em;
}
.event-editorial time span,.event-list-large time span{
  font-family:var(--ui)!important;
  letter-spacing:.14em;
}

/* Keep dense informational areas crisp and highly readable */
.desktop-nav,.mobile-menu nav,.button,.live-button,.text-link,.eyebrow,.hero-info,.mini-times,.event-facts,.mentor-leadership,.schedule-cards,.programme-card small,.event-meta-row,.footer-main,.footer-bottom,.library-tools,.filter-row{
  font-family:var(--ui);
}
body,p,li,dd,input,textarea,select{
  font-family:var(--body);
}

/* Slightly stronger heading proportions with enough room for serif forms */
.home-hero .hero-copy h1{max-width:12ch;font-size:clamp(3.9rem,6.8vw,7.1rem)}
.page-hero h1{max-width:13ch}
.section-heading h2{max-width:15ch}
.hero-sabbath h2{font-family:var(--display)!important;font-weight:700!important;line-height:1.02}
.welcome-card h2{letter-spacing:-.02em}

/* Footer identity gets one restrained serif moment while navigation stays modern */
.footer-identity p:first-of-type{font-family:var(--body)}
.footer-column h2{font-family:var(--section)!important}

@media(max-width:720px){
  .home-hero .hero-copy h1{font-size:clamp(3.45rem,15.5vw,5.15rem);line-height:.93}
  .page-hero h1{font-size:clamp(3.2rem,13vw,4.7rem);line-height:.95}
  .section-heading h2{font-size:clamp(2.65rem,11vw,3.65rem);line-height:.98}
  .handwritten{font-size:1.45rem}
  .event-theme{font-size:1.85rem}
}

/* V85 Church identity, QR restoration and compatibility pass */

/* Progressive motion: content is readable even when JavaScript or observers are unavailable */
.reveal{opacity:1!important;transform:none!important;filter:none!important}
.motion-ready .reveal{opacity:0!important;transform:translateY(22px)!important;filter:blur(1px)!important;transition:opacity .68s var(--ease-out),transform .68s var(--ease-out),filter .5s ease;transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal.visible{opacity:1!important;transform:none!important;filter:none!important}

/* Main navigation uses Waterford's heritage serif while functional controls remain sans serif */
.desktop-nav,.mobile-menu nav{font-family:var(--display)!important}
.desktop-nav{font-size:1.08rem!important;font-weight:600!important;letter-spacing:.005em;gap:5px}
.desktop-nav>a,.more-nav>summary{font-family:var(--display)!important;font-weight:600!important;padding:13px 13px}
.more-menu{width:228px}
.more-menu a{font-family:var(--display)!important;font-size:1.08rem!important;font-weight:600!important;line-height:1.2}
.mobile-menu nav a{font-family:var(--display)!important;font-size:1.3rem;font-weight:600!important;letter-spacing:.005em}

/* QR button is a real link first, with modal enhancement when JavaScript is available */
.qr-header-button{width:43px;height:43px;flex:0 0 43px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;display:grid;place-items:center;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.qr-header-button:hover{background:rgba(255,255,255,.14);border-color:rgba(255,211,106,.42);transform:translateY(-1px)}
.qr-header-button svg{width:19px;height:19px;fill:currentColor;stroke:none}
.mobile-menu-actions{grid-template-columns:1fr 1fr}
.mobile-menu-actions .mobile-qr-action{grid-column:1/-1;background:rgba(255,255,255,.09)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16);font-family:var(--ui)!important}

/* Compatibility fallbacks before modern viewport and blur enhancements */
.mobile-menu{height:100vh;height:100dvh}
.welcome-card{max-height:calc(100vh - 56px);max-height:calc(100dvh - 56px)}
.welcome-backdrop,.menu-backdrop,.media-backdrop,.qr-backdrop{top:0;right:0;bottom:0;left:0}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .site-header.scrolled,.hero-sabbath,.welcome-backdrop,.welcome-close{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
}

/* QR modal */
.qr-modal{position:fixed;z-index:180;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease}
.qr-modal[hidden]{display:none!important}
.qr-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.qr-backdrop{position:absolute;background:rgba(2,13,26,.78)}
.qr-dialog{position:relative;z-index:1;width:100%;max-width:520px;background:#fff;color:#17212c;border-radius:28px;padding:40px;box-shadow:0 32px 90px rgba(0,0,0,.34);text-align:center;transform:translateY(18px) scale(.985);transition:transform .36s var(--ease-out)}
.qr-modal.is-open .qr-dialog{transform:none}
.qr-close{position:absolute;right:14px;top:14px;width:42px;height:42px;border-radius:50%;border:1px solid #e4ded4;background:#f7f4ee;color:#14243a;font-size:1.55rem;line-height:1;display:grid;place-items:center}
.qr-dialog h2{font-family:var(--display);font-size:clamp(2.45rem,5vw,3.5rem);line-height:.98;margin:4px auto 12px;max-width:10ch}
.qr-dialog>p:not(.handwritten,.qr-url,.qr-status){max-width:390px;margin:0 auto 22px;color:#62707d}
.qr-code-frame{width:240px;height:240px;margin:0 auto 12px;padding:13px;border-radius:22px;background:#fff;border:1px solid #ded8cd;box-shadow:0 12px 34px rgba(6,27,53,.1)}
.qr-code-frame img{width:100%;height:100%;object-fit:contain}
.qr-url{font-family:var(--ui);font-size:.88rem;font-weight:700;color:#34475a;margin:9px 0 22px}
.qr-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qr-actions .button{width:100%}
.qr-status{min-height:1.35em;margin:13px 0 0;font-family:var(--ui);font-size:.83rem;color:#6a7580}

/* Visible QR destination on Connect means the code never depends on JavaScript */
.share-waterford-section{padding-top:0}
.share-waterford-panel{display:grid;grid-template-columns:1fr 270px;gap:60px;align-items:center;padding:54px 60px;border-radius:28px;background:linear-gradient(135deg,#f3ead7 0%,#fff 64%);border:1px solid #e2d8c7;box-shadow:0 22px 54px rgba(6,27,53,.08)}
html[data-theme="dark"] .share-waterford-panel{background:linear-gradient(135deg,#102b42,#0d2031);border-color:#29475f}
.share-waterford-copy h2{max-width:12ch;margin-bottom:18px}
.share-waterford-copy>p:not(.handwritten,.qr-status){max-width:650px;color:var(--muted)}
.share-waterford-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.share-waterford-qr{margin:0;text-align:center}
.share-waterford-qr img{width:250px;height:250px;object-fit:contain;border-radius:22px;padding:12px;background:#fff;border:1px solid #ded8cd;box-shadow:0 14px 38px rgba(6,27,53,.12)}
.share-waterford-qr figcaption{font-family:var(--ui);font-size:.82rem;font-weight:700;color:var(--muted);margin-top:10px}

/* Footer becomes a branded church closing experience */
.site-footer{padding:0!important;background:linear-gradient(145deg,#03162b 0%,#061b35 52%,#092e50 100%)!important}
.site-footer::before{width:620px!important;height:620px!important;right:-250px!important;top:-340px!important}
.footer-callout{position:relative;display:grid;grid-template-columns:62px 1fr auto;gap:22px;align-items:center;padding:38px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.footer-callout-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;color:var(--gold2);background:rgba(229,172,43,.1);border:1px solid rgba(255,211,106,.22)}
.footer-callout-mark svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.footer-callout-copy p{margin:0 0 4px;font-family:var(--ui);font-size:.73rem;letter-spacing:.1em;text-transform:uppercase;color:#b9c7d4;font-weight:700}
.footer-callout-copy h2{font-family:var(--display)!important;font-size:clamp(2rem,3.3vw,3rem)!important;line-height:1!important;color:#fff;margin:0;font-weight:600!important;letter-spacing:-.018em}
.footer-callout-actions{display:flex;gap:10px;align-items:center}
.footer-callout-actions a{min-height:47px;padding:0 18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--ui);font-size:.84rem;font-weight:800}
.footer-live{background:var(--gold);color:#071827}.footer-share{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);color:#fff}
.footer-main{position:relative;display:grid!important;grid-template-columns:minmax(250px,1.45fr) .78fr .86fr 1fr minmax(220px,1.08fr)!important;gap:44px!important;padding:58px 0 52px!important}
.footer-identity{padding-right:16px!important}.footer-identity img{height:62px!important}.footer-identity p{font-family:var(--display)!important;font-size:1.22rem!important;line-height:1.45!important;font-weight:500;color:#d0dce6!important;max-width:330px;margin:20px 0 22px!important}
.footer-column{display:grid;align-content:start;gap:9px!important}
.footer-column h2{display:flex;align-items:center;gap:10px;font-family:var(--display)!important;font-size:1.52rem!important;line-height:1!important;font-weight:600!important;letter-spacing:-.012em!important;margin:4px 0 17px!important;color:#fff!important}
.footer-heading-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(229,172,43,.1);color:var(--gold2);border:1px solid rgba(255,211,106,.17)}
.footer-heading-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-links a{font-family:var(--display)!important;font-size:1.08rem!important;line-height:1.25!important;font-weight:500;color:#d3dee7!important;padding:3px 0}
.footer-links a:hover,.footer-directions:hover{color:var(--gold2)!important;transform:translateX(3px)}
.footer-service p{display:grid;gap:1px;margin:0 0 8px!important;color:#b9c8d5!important;font-family:var(--body)!important;font-size:.86rem!important}
.footer-service p span{font-family:var(--display);font-size:1.02rem;color:#d8e2ea}
.footer-service p strong{font-family:var(--ui);font-size:.82rem;color:#fff}
.footer-visit>p{font-family:var(--body)!important;font-size:.88rem!important;line-height:1.55!important;color:#c6d3de!important;margin:0 0 10px!important}
.footer-directions{font-family:var(--display)!important;font-size:1.05rem!important;font-weight:600;color:#fff!important;margin-bottom:14px}
.footer-qr-link{display:grid!important;grid-template-columns:82px 1fr;gap:12px;align-items:center;width:100%!important;padding:9px!important;border-radius:15px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);transform:none!important}
.footer-qr-link img{width:82px;height:82px;object-fit:contain;border-radius:9px;background:#fff;padding:4px}
.footer-qr-link span{display:grid;gap:1px}.footer-qr-link strong{font-family:var(--display);font-size:1.03rem;color:#fff}.footer-qr-link small{font-family:var(--body);font-size:.72rem;line-height:1.35;color:#aebdca}
.site-footer .socials{display:flex!important;gap:10px!important}.site-footer .socials a,.follow-panel .socials a{width:48px!important;height:48px!important;flex:0 0 48px!important;min-width:48px;min-height:48px;border-radius:14px!important;padding:0!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.16)!important;overflow:hidden!important}
.site-footer .socials img,.follow-panel .socials img{display:block!important;width:27px!important;height:27px!important;max-width:27px!important;max-height:27px!important;object-fit:contain!important;margin:0!important}
.footer-bottom{padding:22px 0 26px!important;font-family:var(--display)!important;font-size:1rem!important;color:#aebdcc!important;display:flex;justify-content:space-between;gap:20px}
.footer-bottom span:last-child{font-style:italic;color:#d4dee7}

/* Keep the core interactive controls usable on touch browsers */
button,a,summary{-webkit-tap-highlight-color:rgba(229,172,43,.16)}
button{touch-action:manipulation}
.menu-button,.theme-button,.qr-header-button{min-width:43px;min-height:43px}

@media(max-width:1120px){
  .desktop-nav{font-size:1rem!important}.desktop-nav>a,.more-nav>summary{padding-inline:9px}
  .footer-main{grid-template-columns:1.3fr 1fr 1fr!important}.footer-identity{grid-row:span 2}.footer-visit{grid-column:3}.footer-service{grid-column:2}
}
@media(max-width:900px){
  .footer-callout{grid-template-columns:54px 1fr}.footer-callout-actions{grid-column:1/-1;padding-left:76px}
}
@media(max-width:720px){
  .qr-header-button{width:42px;height:42px;flex-basis:42px}.live-button{width:42px;height:42px;min-height:42px;padding:0;justify-content:center}.live-button span{display:none}.header-actions{gap:7px}
  .mobile-menu-actions{grid-template-columns:1fr 1fr}.mobile-menu-actions .mobile-qr-action{grid-column:1/-1}
  .qr-modal{padding:0;align-items:end}.qr-dialog{max-width:none;border-radius:28px 28px 0 0;padding:34px 22px 24px;transform:translateY(100%)}.qr-modal.is-open .qr-dialog{transform:none}.qr-code-frame{width:210px;height:210px}.qr-dialog h2{font-size:2.7rem}.qr-actions{grid-template-columns:1fr}
  .share-waterford-panel{grid-template-columns:1fr;padding:36px 24px;gap:30px}.share-waterford-qr{order:-1}.share-waterford-qr img{width:220px;height:220px;margin-inline:auto}
  .footer-callout{grid-template-columns:1fr;padding:32px 0;gap:15px}.footer-callout-mark{width:52px;height:52px}.footer-callout-actions{grid-column:auto;padding-left:0;display:grid;grid-template-columns:1fr 1fr}.footer-callout-actions a{width:100%}
  .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 26px!important;padding:46px 0 42px!important}.footer-identity{grid-column:1/-1;grid-row:auto!important}.footer-visit{grid-column:auto}.footer-service{grid-column:auto}.footer-identity p{font-size:1.12rem!important}.footer-column h2{font-size:1.38rem!important}.footer-links a{font-size:1.03rem!important}.footer-bottom{font-size:.92rem!important;flex-direction:column;gap:4px}
}
@media(max-width:480px){
  .brand img{max-width:150px;height:auto!important}.header-inner{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}.qr-header-button{display:none}.footer-main{grid-template-columns:1fr!important}.footer-identity{grid-column:auto}.footer-callout-actions{grid-template-columns:1fr}.footer-qr-link{max-width:300px}.footer-bottom{font-size:.88rem!important}
}
@media(prefers-reduced-motion:reduce){
  .motion-ready .reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.qr-modal,.qr-dialog{transition:none!important}
}
[hidden]{display:none!important}


/* V86 Source Serif 4 and Noto Sans refinement */
html{font-family:var(--body);font-synthesis:none}
body{font-family:var(--body);font-weight:400;letter-spacing:0}

/* Major church identity */
h1,h2,.page-hero h1,.section-heading h2,.home-hero .hero-copy h1,.hero-sabbath h2,.welcome-card h2,.mentorship-intro h2,.mentorship-home-copy h2,.featured-event-copy h2,.schedule-intro h2,.resource-help h2{
  font-family:var(--display)!important;
  font-weight:600!important;
  letter-spacing:-.022em!important;
}

/* Modern serif navigation, restrained enough for UI use */
.desktop-nav,.desktop-nav>a,.more-nav>summary,.more-menu a,.mobile-menu nav,.mobile-menu nav a{
  font-family:var(--display)!important;
  font-weight:600!important;
  letter-spacing:-.008em!important;
}
.desktop-nav{font-size:1.075rem!important}
.more-menu a{font-size:1.03rem!important}
.mobile-menu nav a{font-size:1.24rem!important;line-height:1.25}

/* Small and functional text always stays highly legible */
p,li,dd,input,textarea,select,button,.button,.live-button,.text-link,.eyebrow,.hero-info,.mini-times,.event-facts,.mentor-leadership,.schedule-cards,.programme-card small,.event-meta-row,.library-tools,.filter-row,.qr-url,.qr-status{
  font-family:var(--body)!important;
}
.button,.live-button,button,.eyebrow,.qr-url{font-weight:700}

/* Component titles get a modern bookish serif without decorative thin strokes */
h3,.schedule-list dd,.path-item strong,.event-editorial h3,.notice-feature h3,.resource-preview h3,.event-list-large h3,.recurring-list strong,.library-card h3,.ministry-item h3,.values-grid h3,.archive-collection summary h3,.visit-schedule h2,.follow-panel h2,.expect-card h2,.programme-card strong,.event-facts strong,.mentor-leadership strong{
  font-family:var(--section)!important;
  font-weight:600!important;
  letter-spacing:-.014em!important;
}

/* Editorial accent instead of a separate handwriting family */
.handwritten,.script-accent,.event-theme{
  font-family:var(--display)!important;
  font-style:italic!important;
  font-weight:500!important;
  letter-spacing:-.018em!important;
}
.handwritten{font-size:clamp(1.2rem,1.45vw,1.5rem)}
.script-accent{font-size:clamp(1.3rem,1.8vw,1.65rem)}
.event-theme{font-size:clamp(1.45rem,2.2vw,2rem)}

/* Footer hierarchy: serif identity and headings, Noto Sans for dense information */
.footer-identity p{font-family:var(--display)!important;font-weight:500!important;letter-spacing:-.01em}
.footer-column h2,.footer-callout-copy h2,.footer-directions,.footer-qr-link strong{
  font-family:var(--display)!important;
  font-weight:600!important;
  letter-spacing:-.015em!important;
}
.footer-links a,.footer-service p,.footer-service p span,.footer-service p strong,.footer-visit>p,.footer-qr-link small,.footer-bottom{
  font-family:var(--body)!important;
  letter-spacing:0!important;
}
.footer-links a{font-size:.95rem!important;font-weight:500!important;line-height:1.35!important}
.footer-service p{gap:0!important;margin:0 0 9px!important;font-size:.84rem!important}
.footer-service p span{font-size:.91rem!important;font-weight:500;color:#d8e2ea}
.footer-service p strong{font-size:.84rem!important;font-weight:700}
.footer-bottom{font-size:.88rem!important}

/* Compact QR modal so it fits common laptop and mobile viewports */
.qr-dialog{
  max-height:calc(100vh - 32px);
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:32px 34px 28px;
  border-radius:24px;
  scrollbar-width:thin;
}
.qr-close{width:44px;height:44px;right:12px;top:12px;font-family:var(--body);font-size:1.35rem}
.qr-dialog h2{font-size:clamp(2.15rem,4.2vw,3rem);line-height:1.02;max-width:12ch;margin:0 auto 10px}
.qr-dialog>p:not(.handwritten,.qr-url,.qr-status){font-family:var(--body);font-size:1rem;line-height:1.55;margin-bottom:17px}
.qr-code-frame{width:210px;height:210px;padding:11px;border-radius:18px}
.qr-url{font-size:.82rem;margin:8px 0 16px}
.qr-actions .button{min-height:44px}

/* Slightly tighter, more balanced footer */
.footer-main{gap:34px!important;padding:48px 0 44px!important}
.footer-identity img{height:58px!important}
.footer-identity p{font-size:1.08rem!important;line-height:1.5!important;margin:17px 0 20px!important}
.footer-column h2{font-size:1.38rem!important;margin:4px 0 15px!important}
.footer-heading-icon{width:32px;height:32px}
.footer-qr-link{grid-template-columns:72px 1fr;padding:8px!important}
.footer-qr-link img{width:72px;height:72px}

@media(max-width:720px){
  .qr-dialog{max-height:92vh;max-height:92dvh;padding:28px 20px 20px;border-radius:24px 24px 0 0}
  .qr-dialog h2{font-size:2.18rem;max-width:11ch}
  .qr-code-frame{width:180px;height:180px}
  .qr-close{width:42px;height:42px}
  .footer-links a{font-size:.95rem!important}
}


/* =========================================================
   V87 Art Directed Church Experience
   Fraunces + Noto Sans + Allura
   ========================================================= */
:root{
  --display:"Fraunces",Georgia,"Times New Roman",serif;
  --section:"Fraunces",Georgia,"Times New Roman",serif;
  --body:"Noto Sans","Segoe UI",Arial,sans-serif;
  --ui:"Noto Sans","Segoe UI",Arial,sans-serif;
  --script:"Allura","Segoe Script",cursive;
  --radius:24px;
  --radius-lg:34px;
}

body{font-family:var(--body);font-size:17px;letter-spacing:-.005em}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.018;background-image:radial-gradient(circle at 20% 30%,#061b35 0 0.8px,transparent .9px),radial-gradient(circle at 70% 65%,#e5ac2b 0 .7px,transparent .8px);background-size:19px 19px,23px 23px}

/* editorial typography */
h1,h2{font-family:var(--display)!important;font-optical-sizing:auto;letter-spacing:-.045em}
h1{font-weight:600!important}
h2{font-weight:600!important}
h3{font-family:var(--section)!important;font-weight:600!important}
h1 strong{font-weight:800}
h1 em,h2 em,h3 em{font-family:var(--display);font-style:italic;font-weight:500;color:#a87300}
.home-hero h1 em,.watch-feature h2 em,.footer-callout h2 em,.digital-pass h2 em{color:var(--gold2)}
.page-hero h1{font-weight:650!important}
.desktop-nav,.mobile-menu nav{font-family:var(--display)!important}
.desktop-nav>a,.more-nav>summary{font-family:var(--display)!important;font-size:1.02rem!important;font-weight:600!important;letter-spacing:-.015em}
.mobile-menu nav a{font-family:var(--display)!important;font-size:1.22rem!important;font-weight:600!important}
.more-menu a{font-family:var(--body)!important;font-size:.91rem!important;font-weight:600!important}
.handwritten{font-family:var(--script)!important;font-size:clamp(1.65rem,2.15vw,2.15rem)!important;font-weight:400!important;font-style:normal!important;letter-spacing:.015em!important;line-height:1!important}
.script-accent{font-family:var(--script)!important;font-size:1.75rem!important;font-weight:400!important;line-height:1.05!important}
.event-theme{font-family:var(--display)!important;font-style:italic!important;font-weight:500!important;letter-spacing:-.01em!important}
.scripture{font-family:var(--display)!important;font-style:italic;font-weight:500!important}
.large-copy{font-size:1.12rem;max-width:66ch}

/* details that feel designed rather than templated */
.section-heading{position:relative}
.section-heading::before{content:"";position:absolute;left:0;top:-20px;width:52px;height:2px;background:var(--gold)}
.eyebrow{font-size:.76rem;letter-spacing:.14em}
.button{border-radius:14px;min-height:50px;letter-spacing:.005em}
.path-item{position:relative;overflow:hidden}
.path-item::before{content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:var(--gold);transition:width .28s ease}
.path-item:hover::before{width:100%}
.path-item strong{font-family:var(--display)!important;font-size:1.35rem!important;font-weight:600!important}

/* scroll progress adds a subtle editorial motion cue */
.scroll-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:transparent;overflow:hidden;pointer-events:none}
.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));box-shadow:0 0 12px rgba(255,211,106,.35)}

/* hero art direction */
.hero-copy h1{max-width:11ch;text-wrap:balance}
.hero-copy h1 strong,.hero-copy h1 em{display:inline-block}
.hero-copy h1 em{margin-top:.07em}
.hero-sabbath{box-shadow:0 26px 60px rgba(0,0,0,.22)}
.hero-sabbath h2{font-size:2.45rem!important}

/* Live map */
.live-map-section{background:var(--surface);overflow:hidden}
.live-map-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:54px;align-items:stretch}
.live-map-copy{padding:38px 0;align-self:center}
.live-map-copy h2{max-width:9ch;margin-bottom:18px}
.map-facts{display:grid;gap:0;margin:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.map-facts>div{display:grid;grid-template-columns:105px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}
.map-facts>div:last-child{border-bottom:0}
.map-facts span{font-family:var(--ui);font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}
.map-facts strong{font-family:var(--body);font-size:.94rem;line-height:1.5}
.map-actions{display:flex;flex-wrap:wrap;gap:10px}
.map-status{min-height:1.4em;margin:10px 0 0;font-size:.82rem;color:var(--muted)}
.live-map-frame{position:relative;min-height:500px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--surface2)}
.live-map-frame iframe{width:100%;height:100%;min-height:500px;border:0;display:block;filter:saturate(.92) contrast(1.02)}
.map-corner-card{position:absolute;left:20px;bottom:20px;display:flex;align-items:center;gap:11px;padding:12px 15px;border-radius:16px;background:rgba(6,27,53,.94);color:#fff;box-shadow:0 16px 35px rgba(6,27,53,.24);backdrop-filter:blur(10px)}
.map-corner-card>div{display:grid}.map-corner-card strong{font-family:var(--display);font-size:1rem;font-weight:600}.map-corner-card small{font-family:var(--body);font-size:.72rem;color:#cdd9e5}
.map-pulse{width:11px;height:11px;border-radius:50%;background:var(--gold2);box-shadow:0 0 0 0 rgba(255,211,106,.55);animation:mapPulse 2.2s infinite}
@keyframes mapPulse{0%{box-shadow:0 0 0 0 rgba(255,211,106,.52)}70%{box-shadow:0 0 0 12px rgba(255,211,106,0)}100%{box-shadow:0 0 0 0 rgba(255,211,106,0)}}

/* Dedicated QR experience */
.digital-pass-section{background:var(--bg);padding-top:70px;padding-bottom:92px}
.digital-pass{position:relative;display:grid;grid-template-columns:1fr .92fr;gap:70px;align-items:center;overflow:hidden;padding:64px;border-radius:38px;background:linear-gradient(135deg,#061b35 0%,#0b3158 72%,#123e67 100%);color:#fff;box-shadow:0 28px 80px rgba(6,27,53,.2)}
.digital-pass::before{content:"W";position:absolute;right:-.03em;top:-.34em;font-family:var(--display);font-size:25rem;font-weight:800;line-height:1;color:rgba(255,255,255,.025);pointer-events:none}
.digital-pass::after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(255,211,106,.16);border-radius:50%;right:33%;bottom:-180px}
.digital-pass-copy{position:relative;z-index:2;max-width:610px}
.digital-pass-copy h2{font-size:clamp(3rem,5vw,5.15rem);line-height:.93;max-width:10ch;margin:12px 0 20px}
.digital-pass-copy>p:not(.handwritten,.eyebrow,.qr-status){color:#d4e0e9;max-width:58ch}
.light-eyebrow{color:var(--gold2)}
.digital-pass-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:26px}
.digital-pass-visual{position:relative;z-index:2;display:grid;grid-template-columns:minmax(250px,320px) 1fr;gap:24px;align-items:center;justify-content:end}
.qr-art-card{background:#fff;color:#132033;padding:18px;border-radius:26px;box-shadow:0 24px 55px rgba(0,0,0,.2);transform:rotate(-1.2deg);transition:transform .3s ease}
.qr-art-card:hover{transform:rotate(0) translateY(-4px)}
.qr-art-card img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:15px}
.qr-art-card strong{display:block;text-align:center;font-family:var(--ui);font-size:.76rem;margin-top:10px;color:#475463}
.qr-art-label{display:block;font-family:var(--script);font-size:1.75rem;line-height:1;color:#a87300;text-align:center;margin:0 0 12px}
.digital-pass-steps{display:grid;gap:13px}
.digital-pass-steps span{display:grid;grid-template-columns:34px 1fr;column-gap:9px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.13)}
.digital-pass-steps span:last-child{border-bottom:0}
.digital-pass-steps b{grid-row:1/3;font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold2);font-size:1rem}
.digital-pass-steps strong{font-family:var(--display);font-size:1.18rem;font-weight:600}
.digital-pass-steps small{font-family:var(--body);font-size:.72rem;color:#b8c7d4}

/* Restyle the existing Connect QR panel as a designed module */
.share-waterford-section{background:var(--bg)!important;padding-top:28px!important}
.share-waterford-panel{border-radius:34px!important;border:1px solid var(--line)!important;box-shadow:none!important;background:linear-gradient(145deg,var(--surface),var(--surface2))!important}
.share-waterford-copy h2 em{color:#a87300}
.share-waterford-qr{transform:rotate(1deg);transition:transform .25s ease}
.share-waterford-qr:hover{transform:rotate(0) translateY(-3px)}

/* QR popup is utility first, not oversized editorial */
.qr-dialog{max-width:520px!important;padding:36px 34px 30px!important;border-radius:28px!important}
.qr-dialog .handwritten{font-size:1.65rem!important;margin-bottom:8px!important}
.qr-dialog h2{font-family:var(--display)!important;font-size:clamp(2.25rem,4vw,3.15rem)!important;max-width:10ch!important;line-height:.96!important}
.qr-dialog h2 em{color:#a87300}
.qr-code-frame{width:195px!important;height:195px!important}

/* Footer: designed but no QR clutter */
.footer-main{grid-template-columns:minmax(260px,1.35fr) .78fr .84fr 1fr 1.05fr!important;gap:36px!important;padding:50px 0 44px!important}
.footer-identity p{font-family:var(--display)!important;font-size:1.12rem!important;font-style:italic;line-height:1.5!important}
.footer-social-label{font-family:var(--ui)!important;font-size:.72rem!important;text-transform:uppercase;letter-spacing:.11em;color:#9fb0bf!important;margin:0 0 9px!important;font-weight:700!important}
.footer-column h2{font-family:var(--display)!important;font-size:1.48rem!important;font-weight:600!important}
.footer-links a{font-family:var(--display)!important;font-size:1.01rem!important;font-weight:500!important;line-height:1.28!important}
.footer-service p span{font-family:var(--display)!important;font-size:.98rem!important;font-weight:500!important}
.footer-service p strong,.footer-visit>p{font-family:var(--body)!important}
.footer-map-link,.footer-directions{font-family:var(--display)!important;font-size:1rem!important;font-weight:600!important;color:#fff!important;display:inline-flex;align-items:center;gap:7px;width:max-content}
.footer-map-link::after,.footer-directions::after{content:"↗";font-family:var(--ui);font-size:.78em;color:var(--gold2)}
.footer-map-link:hover,.footer-directions:hover{color:var(--gold2)!important}
.footer-bottom{font-family:var(--body)!important;font-size:.84rem!important}
.footer-bottom span:last-child{font-family:var(--display)!important;font-size:1rem;font-style:italic}
.footer-callout-copy h2{font-family:var(--display)!important;font-weight:600!important}
.footer-callout-copy h2 em{font-weight:500}

/* dark mode additions */
html[data-theme="dark"] .live-map-section{background:var(--surface)}
html[data-theme="dark"] .share-waterford-panel{background:linear-gradient(145deg,var(--surface),var(--surface2))!important}
html[data-theme="dark"] .qr-art-card{background:#f8f8f4;color:#132033}

@media(max-width:1120px){
  .live-map-layout{grid-template-columns:1fr 1.1fr;gap:34px}
  .digital-pass{grid-template-columns:1fr;padding:54px}
  .digital-pass-copy h2{max-width:12ch}
  .digital-pass-visual{justify-content:start;grid-template-columns:minmax(240px,300px) minmax(180px,1fr);max-width:650px}
  .footer-main{grid-template-columns:1.3fr 1fr 1fr!important}
}
@media(max-width:900px){
  .live-map-layout{grid-template-columns:1fr}
  .live-map-copy{padding:0}
  .live-map-frame,.live-map-frame iframe{min-height:430px}
  .digital-pass{padding:44px;gap:48px}
}
@media(max-width:720px){
  .handwritten{font-size:1.55rem!important}
  .desktop-nav{font-size:1rem}
  .live-map-frame,.live-map-frame iframe{min-height:390px}
  .map-corner-card{left:14px;bottom:14px;right:14px}
  .digital-pass-section{padding:52px 0}
  .digital-pass{padding:34px 24px;border-radius:28px;gap:38px}
  .digital-pass-copy h2{font-size:3.15rem;max-width:10ch}
  .digital-pass-visual{grid-template-columns:1fr;max-width:320px}
  .digital-pass-steps{grid-template-columns:repeat(3,1fr);gap:0}
  .digital-pass-steps span{grid-template-columns:1fr;gap:2px;padding:10px 10px;border-bottom:0;border-right:1px solid rgba(255,255,255,.13)}
  .digital-pass-steps span:last-child{border-right:0}
  .digital-pass-steps b{grid-row:auto;font-size:.8rem}.digital-pass-steps strong{font-size:1rem}.digital-pass-steps small{font-size:.65rem}
  .qr-dialog{padding:30px 22px 22px!important;max-height:92vh!important;max-height:92dvh!important}
  .footer-links a{font-size:1rem!important}
}
@media(max-width:480px){
  .map-facts>div{grid-template-columns:1fr;gap:3px}
  .map-actions{display:grid}.map-actions .button{width:100%}
  .live-map-frame,.live-map-frame iframe{min-height:350px}
  .digital-pass{padding:32px 20px}.digital-pass-copy h2{font-size:2.75rem}
  .digital-pass-actions{display:grid}.digital-pass-actions .button{width:100%}
  .qr-art-card{max-width:260px}
  .digital-pass-steps{max-width:300px}
}
@media(prefers-reduced-motion:reduce){
  .map-pulse{animation:none}.qr-art-card,.share-waterford-qr{transition:none!important;transform:none!important}
}
