
:root{--navy:#081a2f;--navy2:#0d2f50;--blue:#165b91;--gold:#d5a455;--gold2:#f0d39b;--cream:#f6f0e5;--cream2:#fffaf2;--paper:#fff;--ink:#172334;--muted:#607083;--line:#e4d9c9;--green:#2d7456;--red:#a73d38;--shadow:0 24px 70px rgba(8,26,47,.12);--radius:24px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--wrap:1160px;--header:76px;color-scheme:light}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 12px)}body{margin:0;background:var(--cream2);color:var(--ink);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(var(--wrap),calc(100% - 40px));margin-inline:auto}.narrow{max-width:800px}.skip-link{position:fixed;left:12px;top:-60px;background:#fff;padding:10px 14px;z-index:200;border-radius:8px}.skip-link:focus{top:12px}.site-header{height:var(--header);position:sticky;top:0;z-index:100;background:rgba(8,26,47,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(240,211,155,.18);color:#fff}.header-inner{width:min(var(--wrap),calc(100% - 32px));height:100%;margin:auto;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:11px;min-width:240px}.brand img{width:48px;height:48px;object-fit:contain}.brand strong{display:block;font:600 17px/1.05 var(--serif)}.brand small{display:block;color:#9fb4c7;font-size:9px;letter-spacing:.12em;text-transform:uppercase;margin-top:4px}.desktop-nav{display:flex;align-items:center;gap:18px;margin-left:auto}.desktop-nav a{color:#c9d6e1;font-size:13px;font-weight:700;padding:9px 0;border-bottom:2px solid transparent}.desktop-nav a:hover,.desktop-nav a.active{color:var(--gold2);border-color:var(--gold)}.header-actions{display:flex;align-items:center;gap:8px}.header-pill,.icon-btn,.menu-btn{border:1px solid rgba(240,211,155,.3);background:rgba(255,255,255,.04);color:#fff;border-radius:999px;min-height:42px;padding:0 14px;font-size:12px;font-weight:800}.header-pill:hover,.icon-btn:hover,.menu-btn:hover{background:rgba(240,211,155,.12)}.menu-btn{display:none}.mobile-menu{position:fixed;inset:0;background:rgba(4,14,25,.68);z-index:130;padding:12px}.mobile-menu-panel{margin-left:auto;width:min(360px,100%);height:100%;background:var(--cream2);border-radius:20px;padding:20px;box-shadow:var(--shadow)}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line)}.mobile-menu-head strong{font:600 22px var(--serif)}.mobile-menu-head button{border:0;background:var(--navy);color:#fff;width:40px;height:40px;border-radius:50%;font-size:22px}.mobile-menu nav{display:grid;padding-top:12px}.mobile-menu nav a{padding:13px 6px;border-bottom:1px solid var(--line);font-weight:750}.eyebrow,.kicker{font-size:11px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;color:var(--gold)}h1,h2,h3,h4{font-family:var(--serif);line-height:1.08;margin:0;text-wrap:balance}h1{font-size:clamp(48px,7vw,86px);letter-spacing:-.035em}h2{font-size:clamp(34px,4.5vw,54px);letter-spacing:-.025em}h3{font-size:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border-radius:999px;padding:0 22px;border:1px solid transparent;font-weight:850;font-size:14px;transition:.18s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:linear-gradient(180deg,#e5c489,#cc9a4c);color:#271a0a;box-shadow:0 13px 30px rgba(166,112,35,.25)}.btn.light{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.35);color:#fff}.btn.outline{background:#fff;border-color:var(--line);color:var(--ink)}.btn.gold{background:var(--gold2);color:#30200e}.btn.dark{background:var(--navy);color:#fff}.btn.small{min-height:42px;padding:0 17px}.text-link{color:#83591d;font-weight:850;text-decoration:underline;text-decoration-color:#d8b273;text-underline-offset:5px}.center{text-align:center;margin-top:26px}.section{padding:82px 0}.section-heading{margin-bottom:32px}.section-heading h2{margin:10px 0}.section-heading p{margin:0;color:var(--muted);max-width:64ch}.section-heading.split{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading.light h2{color:#fff}.section-heading.light p{color:#b9c9d7}.hero{position:relative;min-height:min(780px,88vh);display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}.hero-photo{position:absolute;inset:0;background:url('facade-hero-clean-1-8-0.webp') center 38%/cover no-repeat;filter:brightness(1.14) saturate(1.04)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,37,.78) 0%,rgba(5,20,37,.48) 47%,rgba(5,20,37,.12) 78%),linear-gradient(0deg,rgba(5,20,37,.68) 0%,transparent 60%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .55fr;gap:40px;align-items:end;padding:108px 0 76px}.hero-copy{max-width:760px}.hero h1{margin:16px 0 22px;text-shadow:0 4px 30px rgba(0,0,0,.32)}.hero h1 em{display:block;color:var(--gold2);font-style:normal}.hero-copy>p{font:italic 23px/1.45 var(--serif);max-width:620px;color:#e2ebf2}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-badges{display:flex;gap:12px 24px;flex-wrap:wrap;margin-top:30px;color:#c6d3df;font-size:12px}.hero-welcome{background:rgba(255,250,242,.95);color:var(--ink);padding:28px;border-radius:24px;box-shadow:0 28px 70px rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.7)}.hero-welcome img{width:74px;margin-bottom:18px}.hero-welcome small{display:block;color:#956726;font-weight:900;letter-spacing:.15em}.hero-welcome strong{display:block;font:600 28px/1.12 var(--serif);margin:10px 0 20px}.hero-welcome a{font-weight:850;color:#80591f}.service-ribbon{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(8,26,47,.05)}.service-ribbon .container{display:grid;grid-template-columns:repeat(4,1fr)}.service-item{padding:20px 22px;border-left:1px solid var(--line)}.service-item:first-child{border-left:0}.service-item b{display:block;font:600 18px var(--serif)}.service-item span{font-size:12px;color:var(--muted)}.quick-paths{background:var(--cream2)}.path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.path-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;min-height:215px;transition:.2s;box-shadow:0 8px 25px rgba(8,26,47,.04)}.path-card:hover{transform:translateY(-4px);border-color:var(--gold)}.path-card>span{font:700 12px var(--serif);color:#9b6e2c}.path-card b{display:block;font:600 25px var(--serif);margin:35px 0 8px}.path-card p{margin:0;color:var(--muted);font-size:14px}.daily-home{background:linear-gradient(180deg,#fff,#f5ede0)}.cycle-badge{display:inline-flex;align-items:center;border-radius:999px;background:#f0dfbd;color:#6d4918;font-weight:850;font-size:12px;padding:9px 14px}.daily-home-card{display:grid;grid-template-columns:350px 1fr;background:#fff;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}.daily-home-side{background:linear-gradient(160deg,#123b60,#081a2f);color:#fff;padding:38px 34px;display:flex;flex-direction:column}.daily-day{font:700 76px/.9 var(--serif);color:var(--gold2)}.daily-home-side small{color:#9fb4c7;margin-top:4px}.daily-home-side blockquote{font:500 22px/1.48 var(--serif);margin:34px 0 12px}.daily-home-side cite{font-style:normal;color:var(--gold2);font-weight:800}.daily-home-main{padding:40px}.daily-home-main h3{font-size:38px;margin:12px 0}.key-phrase{font:italic 25px/1.4 var(--serif);color:#875d22;border-left:4px solid var(--gold);padding-left:20px}.daily-home-main>p:not(.key-phrase){color:var(--muted);font-size:16px}.byline{font-size:13px;color:var(--muted);margin-top:22px}.byline strong{color:var(--ink)}.card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.dark{background:linear-gradient(180deg,#0d2f50,#081a2f);color:#fff}.event-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.event-card-preview{background:rgba(255,255,255,.055);border:1px solid rgba(240,211,155,.17);border-radius:20px;padding:24px;display:grid;grid-template-columns:66px 1fr;gap:18px;align-items:start}.event-card-preview time{border:1px solid rgba(240,211,155,.22);border-radius:14px;text-align:center;padding:10px 6px}.event-card-preview time strong{display:block;font:700 28px var(--serif)}.event-card-preview time small{color:var(--gold2);text-transform:uppercase;font-size:10px}.event-card-preview h3{font-size:22px;color:#fff;margin:6px 0}.event-card-preview p{margin:0;color:#b9c9d7;font-size:13px}.happening{background:#fff}.banner-preview-grid,.happening-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.notice-card{min-height:250px;border-radius:22px;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(150deg,#1c5e91,#0b2b49);color:#fff;position:relative;overflow:hidden;border:1px solid rgba(8,26,47,.1)}.notice-card:nth-child(2){background:linear-gradient(150deg,#9f6c29,#3e2b18)}.notice-card:nth-child(3){background:linear-gradient(150deg,#5c3c83,#241733)}.notice-card:before{content:'✦';position:absolute;right:18px;top:12px;font:70px var(--serif);opacity:.12}.notice-card .tag{align-self:flex-start;background:var(--gold2);color:#3a270e;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:900;text-transform:uppercase}.notice-card h3{color:#fff;margin:16px 0 8px}.notice-card p{margin:0;color:#e1e9f0;font-size:14px}.notice-card a{margin-top:16px;color:var(--gold2);font-weight:850}.ministry-preview{background:var(--cream)}.ministry-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ministry-mini{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;position:relative;overflow:hidden}.ministry-mini:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--ministry)}.ministry-mini span{font-size:30px}.ministry-mini h3{margin:18px 0 8px}.ministry-mini p{margin:0;color:var(--muted);font-size:14px}.care-home{background:#fff}.care-home-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:center}.care-home h2{margin:12px 0}.care-home p{color:var(--muted)}.care-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.care-actions a{border-radius:24px;padding:28px;background:var(--navy);color:#fff;min-height:190px}.care-actions a:nth-child(2){background:linear-gradient(145deg,#d7aa63,#a97833);color:#26180a}.care-actions b{display:block;font:600 27px var(--serif)}.care-actions span{display:block;margin-top:13px;color:inherit;opacity:.8}.pastor-word{background:var(--cream)}.pastor-card{display:flex;align-items:center;gap:32px;background:#fff;border:1px solid var(--line);padding:38px;border-radius:28px}.pastor-card img{width:110px}.pastor-card blockquote{font:italic 29px/1.42 var(--serif);margin:12px 0}.pastor-card p{margin:0;color:var(--muted);font-weight:800}.external-pointer{padding-top:0;background:var(--cream)}.external-card{display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(160deg,#fffaf2,#efe3cd);border:1px solid #dcc49c;border-radius:24px;padding:34px}.external-card h2{font-size:38px;margin:8px 0}.external-card p{margin:0;color:#6f5b3a;max-width:650px}.site-footer{background:#061421;color:#dbe6ee;padding:66px 0 0}.footer-grid{display:grid;grid-template-columns:1.6fr .8fr .8fr;gap:50px}.footer-brand img{width:min(380px,100%);max-height:115px;object-fit:contain;object-position:left}.footer-brand blockquote{font:italic 22px/1.45 var(--serif);margin:24px 0 8px;color:var(--gold2)}.footer-brand p{color:#93a9bb}.site-footer h3{font-size:20px;margin-bottom:18px}.site-footer a{display:block;color:#aebfcd;padding:5px 0;font-size:14px}.site-footer a:hover{color:var(--gold2)}.footer-install{display:block;border:0;background:transparent;color:#aebfcd;padding:5px 0;margin:0;font:inherit;font-size:14px;text-align:left;cursor:pointer}.footer-install:hover{color:var(--gold2)}.site-footer .external-small{margin-top:16px;color:var(--gold2)}.footer-bottom{margin-top:45px;border-top:1px solid rgba(240,211,155,.12);display:flex;justify-content:space-between;padding:18px max(20px,calc((100% - var(--wrap))/2));color:#71899b;font-size:11px}.page-hero{background:linear-gradient(120deg,#0e3456,#081a2f);color:#fff;position:relative;overflow:hidden}.page-hero:after{content:'✦';position:absolute;right:7%;top:5%;font:210px var(--serif);color:rgba(240,211,155,.07)}.page-hero .container{position:relative;z-index:2;padding:105px 0 78px}.page-hero.compact h1{font-size:clamp(47px,6vw,75px);margin:14px 0}.page-hero p{font:italic 21px/1.5 var(--serif);color:#cbd8e2;max-width:720px}.visit-hero{background-image:linear-gradient(90deg,rgba(5,20,37,.76),rgba(5,20,37,.38)),url('facade-hero-clean-1-8-0.webp');background-size:cover;background-position:center}.dev-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.dev-toolbar>div{display:flex;gap:10px;align-items:center}.round-btn{min-height:42px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:0 15px;font-weight:800}.devotional-card{display:grid;grid-template-columns:330px 1fr;background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.devotional-side{background:linear-gradient(160deg,#10395e,#071729);color:#fff;padding:38px 32px}.devotional-side small{color:#8da5b9}.devotional-side blockquote{font:500 23px/1.5 var(--serif);margin:32px 0 12px}.devotional-side cite{font-style:normal;color:var(--gold2);font-weight:800}.reading-time{margin-top:25px;color:#9fb4c7;font-size:12px}.devotional-main{padding:42px}.devotional-main h2{font-size:43px;margin:12px 0 20px}.reflection{font-size:17px;color:#435266;white-space:pre-line}.dev-practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.practice{display:flex;gap:14px;border-radius:18px;padding:20px}.practice.prayer{background:#fbf1df}.practice.action{background:#eaf4ed}.practice>span{font-size:24px}.practice h3{font-size:19px;margin-bottom:7px}.practice p{margin:0;font-size:14px;color:#4f5c68}.dev-author{margin-top:22px;color:var(--muted);font-size:13px}.dev-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.journal{margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:0 22px}.journal summary{padding:20px 0;font-weight:850;cursor:pointer}.journal p{color:var(--muted)}.journal textarea{width:100%;min-height:140px;border:1px solid var(--line);border-radius:14px;padding:14px;resize:vertical}.journal button{margin:12px 0 20px}.journal #journalStatus{margin-left:12px;color:var(--green);font-size:12px}.progress-panel{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.progress-panel>span{float:right;color:var(--muted);font-size:12px}.progress-panel>div{height:8px;background:#eee4d5;border-radius:99px;margin-top:14px;overflow:hidden}.progress-panel i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),#f2d795)}.agenda-toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.agenda-toolbar label{font-weight:800;font-size:12px}.agenda-toolbar select{display:block;margin-top:6px;min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px}.agenda-list{display:grid;gap:12px}.agenda-row{display:grid;grid-template-columns:105px 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 22px}.agenda-row.featured{border-left:5px solid var(--gold)}.agenda-date{text-align:center}.agenda-date strong{display:block;font:700 29px var(--serif)}.agenda-date span{font-size:10px;text-transform:uppercase;color:#9b6e2c}.agenda-copy h3{font-size:23px;margin-bottom:5px}.agenda-copy p{margin:0;color:var(--muted);font-size:13px}.agenda-time{font:700 20px var(--serif);color:#8b5d22}.ministry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ministry-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;min-height:310px;display:flex;flex-direction:column;position:relative;overflow:hidden}.ministry-card:before{content:'';position:absolute;top:0;left:0;right:0;height:6px;background:var(--ministry)}.ministry-icon{font-size:34px;margin-top:10px}.ministry-card h2{font-size:29px;margin:22px 0 10px}.ministry-card p{color:var(--muted);font-size:14px}.ministry-card .schedule{margin-top:auto;border-top:1px solid var(--line);padding-top:15px;font-size:12px;font-weight:800;color:#6c4d20}.join-team{background:var(--navy);color:#fff}.join-team .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.join-team h2{margin:10px 0}.join-team p{color:#b9c9d7;margin:0}.study-tools{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start;margin-bottom:28px}.study-tools label{font-weight:850;font-size:12px}.study-tools input{display:block;width:100%;min-height:50px;border:1px solid var(--line);border-radius:14px;margin-top:7px;padding:0 15px}.study-categories{display:flex;gap:8px;flex-wrap:wrap}.study-categories button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800}.study-categories button.active{background:var(--navy);color:#fff}.study-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.study-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;display:flex;flex-direction:column;min-height:310px}.study-card .study-tags{display:flex;gap:6px;flex-wrap:wrap}.study-card .study-tags span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;background:#f3ead9;color:#795421;padding:5px 8px;border-radius:99px}.study-card h2{font-size:28px;margin:20px 0 10px}.study-card p{color:var(--muted);font-size:14px}.study-card footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;color:#8b5d22;font-size:12px;font-weight:850}.article-meta{color:var(--muted);font-size:13px;margin-bottom:26px}.article-content{font-size:18px;line-height:1.78}.article-content h2{font-size:34px;margin:36px 0 12px}.article-content blockquote{font:italic 27px/1.5 var(--serif);border-left:5px solid var(--gold);margin:28px 0;padding:10px 0 10px 22px;color:#795421}.article-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px}.happening-grid{grid-template-columns:repeat(2,1fr)}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:52px;align-items:start}.form-intro h2{margin:12px 0}.form-intro p{color:var(--muted)}.privacy-card{background:#edf5ef;border:1px solid #cfe1d4;border-radius:16px;padding:18px;margin:24px 0}.privacy-card p{margin:6px 0 0;font-size:13px}.portal-form{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow);display:grid;gap:16px}.portal-form label{display:grid;gap:7px;font-size:12px;font-weight:850}.portal-form input,.portal-form select,.portal-form textarea{width:100%;border:1px solid #d8cdbd;border-radius:12px;background:#fff;padding:12px 14px;color:var(--ink)}.portal-form input:focus,.portal-form select:focus,.portal-form textarea:focus{outline:3px solid rgba(213,164,85,.2);border-color:var(--gold)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portal-form .check{display:flex;align-items:flex-start;gap:10px;font-weight:600;line-height:1.4}.portal-form .check input{width:18px;height:18px;margin-top:1px}.portal-form .hp{position:absolute!important;left:-10000px!important}.form-status{margin:0;font-size:13px;font-weight:800}.form-status.ok{color:var(--green)}.form-status.error{color:var(--red)}.visit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.visit-grid article{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px}.visit-grid article>span{font:700 12px var(--serif);color:#9b6e2c}.visit-grid h2{font-size:30px;margin:35px 0 10px}.visit-grid p{color:var(--muted);margin:0}.mini-section{background:linear-gradient(145deg,#302044,#6b3c8e);color:#fff}.mini-grid{display:grid;grid-template-columns:1fr 310px;gap:40px;align-items:center}.mini-grid h2{margin:12px 0}.mini-grid p{color:#e6dff0}.mini-time{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:32px;text-align:center}.mini-time strong{display:block;font:700 48px var(--serif);color:var(--gold2)}.mini-time span{display:block;font-weight:850}.mini-time small{display:block;margin-top:12px;color:#d5cbe2}.faq{background:var(--cream)}.faq h2{margin:12px 0 26px}.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 20px;margin:10px 0}.faq summary{padding:18px 0;font-weight:850;cursor:pointer}.faq details p{color:var(--muted);margin-top:0}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;z-index:180;background:var(--navy);color:#fff;border:1px solid var(--gold);border-radius:12px;padding:12px 18px;transition:.2s;pointer-events:none;max-width:min(520px,90vw)}.toast.show{opacity:1;transform:translate(-50%,0)}.update-banner{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:170;background:#fff;border:1px solid var(--gold);box-shadow:var(--shadow);border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:15px}.update-banner button{border:0;background:var(--navy);color:#fff;border-radius:9px;padding:8px 12px;font-weight:800}.empty-state{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #cdbda8;border-radius:18px;padding:34px;color:var(--muted)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:1050px){.desktop-nav{display:none}.menu-btn{display:inline-flex;align-items:center;gap:7px}.hero-grid{grid-template-columns:1fr}.hero-welcome{max-width:430px}.path-grid,.service-ribbon .container{grid-template-columns:repeat(2,1fr)}.daily-home-card,.devotional-card{grid-template-columns:290px 1fr}.event-preview-grid,.banner-preview-grid,.ministry-preview-grid,.ministry-grid,.study-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.3fr 1fr}.footer-grid>div:last-child{grid-column:2}.form-layout{gap:28px}}
@media(max-width:720px){:root{--header:68px}.container{width:min(100% - 28px,var(--wrap))}.site-header{height:calc(var(--header) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.header-inner{width:calc(100% - 20px)}.brand{min-width:0}.brand img{width:42px;height:42px}.brand strong{font-size:15px}.brand small{display:none}.header-pill{display:none}.menu-btn span{display:none}.section{padding:62px 0}.section-heading.split{display:block}.section-heading.split>.text-link{display:inline-block;margin-top:14px}h1{font-size:clamp(44px,14vw,61px)}h2{font-size:clamp(32px,10vw,43px)}.hero{min-height:auto;display:block}.hero-photo{position:relative;height:43vh;min-height:320px;background-position:center}.hero-overlay{background:linear-gradient(180deg,rgba(5,20,37,.12),rgba(5,20,37,.75));height:43vh;min-height:320px}.hero-grid{display:block;padding:0 0 50px;margin-top:-95px}.hero-copy{position:relative}.hero h1{font-size:clamp(48px,14vw,62px);margin-top:12px}.hero-copy>p{font-size:19px}.hero-welcome{margin-top:28px}.service-ribbon .container{grid-template-columns:1fr 1fr}.service-item{padding:16px 12px}.service-item:nth-child(odd){border-left:0}.path-grid,.event-preview-grid,.banner-preview-grid,.ministry-preview-grid,.ministry-grid,.study-grid,.happening-grid,.visit-grid,.care-actions{grid-template-columns:1fr}.daily-home-card,.devotional-card{grid-template-columns:1fr}.daily-home-side,.devotional-side{padding:28px}.daily-home-main,.devotional-main{padding:28px}.daily-home-main h3,.devotional-main h2{font-size:34px}.key-phrase{font-size:22px}.event-card-preview{grid-template-columns:58px 1fr}.care-home-grid,.form-layout,.mini-grid{grid-template-columns:1fr}.pastor-card{display:block;padding:28px}.pastor-card img{width:74px;margin-bottom:20px}.pastor-card blockquote{font-size:24px}.external-card,.join-team .container{display:block}.external-card .btn,.join-team .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:block;text-align:center}.footer-bottom span{display:block;margin:5px}.page-hero .container{padding:82px 0 58px}.page-hero.compact h1{font-size:46px}.dev-toolbar{align-items:flex-start;gap:12px}.dev-toolbar>div:first-child{display:block}.dev-practice-grid,.form-row{grid-template-columns:1fr}.agenda-toolbar{display:block}.agenda-toolbar .btn{margin-top:12px}.agenda-row{grid-template-columns:74px 1fr}.agenda-time{grid-column:2}.study-tools{grid-template-columns:1fr}.study-categories{margin-top:6px}.mini-time{padding:25px}.update-banner{width:calc(100% - 24px);justify-content:space-between}}
@media print{.site-header,.site-footer,.hero-actions,.dev-actions,.article-actions,.agenda-toolbar,.update-banner,.toast{display:none!important}body{background:#fff}.section{padding:20px 0}.page-hero{color:#000;background:#fff}.page-hero:after{display:none}.page-hero .container{padding:20px 0}.agenda-row{break-inside:avoid;box-shadow:none}.devotional-card{box-shadow:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Endereco confirmado da igreja — v2.0.1 */
.footer-address{font-style:normal;color:#93a9bb;font-size:14px;line-height:1.65;display:flex;flex-direction:column;gap:2px;margin-top:6px}
.footer-address strong{color:#dbe6ee;font-weight:600;margin-bottom:4px}
.footer-address a{display:block;color:#aebfcd;padding:2px 0;font-size:14px}
.footer-address a:hover{color:var(--gold2)}
.footer-address .footer-map{color:var(--gold2);margin-top:6px}
.visit-address{background:#f6f1e6;border-left:4px solid var(--gold2);border-radius:14px;padding:22px 26px;margin:0 0 30px;font-style:normal;line-height:1.7}
.visit-address strong{display:block;font-size:18px;margin-bottom:6px}
.visit-address a{color:inherit;text-decoration:underline}


/* ==================================================================
   PORTAL 2.1 — AQUECIMENTO VISUAL
   Fim do branco puro. Tudo passa a usar o creme e o dourado que já
   são da identidade da igreja. Bloco isolado: apagar daqui para baixo
   devolve exatamente a aparência da versão 2.0.
   ================================================================== */
:root{
  --paper:#fdfaf4;        /* era #fff — papel quente */
  --card:#fffdf8;         /* cartões */
  --band:#f6f0e5;         /* faixa creme */
  --band2:#f1e8d8;        /* faixa creme mais fechada */
  --line:#e6dcc9;
  --ink:#141f2e;
  --muted:#57687d;        /* era #607083 — mais legível */
}
body{background:var(--paper)}

/* --- cartões: creme claríssimo em vez de branco --- */
.path-card,.daily-home-card,.ministry-mini,.care-home,.pastor-card,
.devotional-card,.journal,.progress-panel,.agenda-row,.ministry-card,
.study-card,.portal-form,.visit-grid article,.faq details,
.update-banner,.btn.outline,.round-btn{background:var(--card)}

/* --- faixas alternadas: creme, azul, creme --- */
.service-ribbon{background:var(--band);border-bottom:1px solid var(--line);
  box-shadow:0 8px 24px rgba(8,26,47,.06)}
.quick-paths{background:var(--paper)}
.daily-home{background:linear-gradient(180deg,var(--paper),var(--band2))}
.happening{background:var(--band)}
.ministries-home{background:var(--paper)}
.care-section{background:var(--band)}

/* --- campos de formulário --- */
.portal-form input,.portal-form select,.portal-form textarea,
.agenda-toolbar select,.study-tools input{background:#fffdf8;
  border-color:var(--line)}

/* --- estado vazio: deixa de ser um retângulo branco --- */
.empty-state{background:var(--band2);border:1px dashed #cdbda8;color:#5d6b7d}

/* --- botões de categoria --- */
.study-categories button{background:var(--card);border-color:var(--line)}
.study-categories button:hover{background:var(--band2)}

/* ==================================================================
   FAIXA DE HORÁRIOS — corrige o desalinhamento e a sobra de branco
   ================================================================== */
.service-ribbon .container{display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  align-items:stretch;gap:0}
.service-ribbon .container>*{padding:22px 26px;
  border-right:1px solid var(--line);display:flex;flex-direction:column;
  justify-content:center;min-height:96px}
.service-ribbon .container>*:last-child{border-right:0}
@media(max-width:900px){
  .service-ribbon .container>*{border-right:0;
    border-bottom:1px solid var(--line)}
  .service-ribbon .container>*:last-child{border-bottom:0}
}

/* ==================================================================
   DEVOCIONAL — o texto mais importante da Home deixa de ser o mais fraco
   ================================================================== */
.daily-home-main #homeDevExcerpt,
.daily-home-main>p:not(.key-phrase){
  font-size:18.5px;
  line-height:1.78;
  color:#2a3748;
  max-width:66ch;
  margin:18px 0}
.daily-home-main h3{color:#0d1f33;letter-spacing:-.01em}
.key-phrase{color:#7a5115;font-weight:500}
.daily-home-main .byline{color:#54637a;font-size:14.5px}
.article-body p,.devotional-card p:not(.key-phrase){
  font-size:18px;line-height:1.78;color:#2a3748}
@media(max-width:720px){
  .daily-home-main #homeDevExcerpt,
  .daily-home-main>p:not(.key-phrase){font-size:17px;line-height:1.72}
}

/* ==================================================================
   GRADES ADAPTATIVAS — nada de buraco quando faltam cartões
   ================================================================== */
/* .banner-preview-grid é a grade da Home — era ela que ficava com o buraco.
   .happening-grid é a mesma coisa dentro da página Acontece. */
.banner-preview-grid,.happening-grid{
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.banner-preview-grid:has(> :last-child:nth-child(1)),
.happening-grid:has(> :last-child:nth-child(1)){
  grid-template-columns:minmax(280px,600px)}
.banner-preview-grid:has(> :last-child:nth-child(2)),
.happening-grid:has(> :last-child:nth-child(2)){
  grid-template-columns:repeat(2,minmax(280px,1fr))}
.path-grid,.ministry-grid,.study-grid,.event-preview-grid,
.ministry-preview-grid{
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
@media(max-width:900px){
  .banner-preview-grid,.happening-grid{
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
}

/* seletor de idiomas 2.1 */
.lang-switcher{display:flex;gap:4px;align-items:center;margin-right:10px}
.lang-switcher button{width:30px;height:21px;padding:0;border:1px solid rgba(255,255,255,.28);
 border-radius:4px;background:none;cursor:pointer;opacity:.5;overflow:hidden;
 display:grid;place-items:center;transition:opacity .18s,border-color .18s}
.lang-switcher button svg{width:100%;height:100%;display:block}
.lang-switcher button:hover{opacity:.85}
.lang-switcher button.active{opacity:1;border-color:var(--gold)}
@media(max-width:900px){.lang-switcher{margin-right:6px}
 .lang-switcher button{width:26px;height:18px}}
@media(max-width:420px){.lang-switcher button[data-lang="es"]{display:none}}

/* download de estudo em PDF — 2.1 */
.study-pdf{margin:30px 0 10px;padding:22px 26px;background:var(--band);
 border:1px solid var(--line);border-radius:16px;display:flex;gap:16px;
 align-items:center;flex-wrap:wrap}
.study-pdf small{color:var(--muted);font-size:14px}
.study-links{display:flex;gap:14px;align-items:center}
.pdf-link{color:#a73d38;font-weight:700;font-size:13px}
.cat-count{display:inline-block;margin-left:5px;padding:1px 6px;border-radius:99px;
 background:var(--band2);color:var(--muted);font-size:11px;font-weight:700}
.study-categories button.active .cat-count{background:rgba(255,255,255,.22);color:#fff}

/* ============ Acervo, promessa do dia e células — 2.2 ============ */
.promise-section{padding:56px 0}
.promise-box{background:linear-gradient(160deg,#0d2f50,#081a2f);color:#fff;
 border-radius:24px;padding:44px 46px;box-shadow:var(--shadow);text-align:center}
.promise-box .kicker{color:var(--gold2);letter-spacing:.18em}
.promise-box blockquote{font:italic 27px/1.5 var(--serif);color:#fff;
 margin:18px auto 14px;max-width:60ch}
.promise-box cite{color:var(--gold2);font-style:normal;font-weight:700;font-size:14px;
 letter-spacing:.04em}

.archive-section{background:var(--band)}
.archive-section .section-heading{position:relative}
#devArchiveCount{margin-top:10px;display:inline-block}
.archive-list{display:flex;flex-direction:column;gap:12px;margin-top:26px}
.archive-item{background:var(--card);border:1px solid var(--line);
 border-radius:16px;overflow:hidden}
.archive-item>summary{cursor:pointer;padding:20px 24px;display:flex;
 gap:14px;align-items:baseline;flex-wrap:wrap;list-style:none;
 transition:background .18s}
.archive-item>summary::-webkit-details-marker{display:none}
.archive-item>summary:hover{background:var(--band2)}
.archive-item>summary:after{content:'+';margin-left:auto;color:var(--gold);
 font:700 22px/1 var(--sans)}
.archive-item[open]>summary:after{content:'–'}
.archive-item[open]>summary{background:var(--band2);
 border-bottom:1px solid var(--line)}
.archive-date{color:var(--muted);font-size:12px;font-weight:800;
 text-transform:uppercase;letter-spacing:.08em;min-width:74px}
.archive-item summary strong{font:600 19px/1.35 var(--serif);color:var(--ink)}
.archive-item summary em{color:var(--gold);font-style:normal;font-size:13px;
 font-weight:700}
.archive-item>blockquote{margin:22px 26px 0;font:italic 20px/1.5 var(--serif);
 color:#123b60;border-left:3px solid var(--gold);padding-left:18px}
.archive-reflection{margin:18px 26px;font-size:17.5px;line-height:1.78;
 color:#2a3748}
.archive-item .dev-practice-grid{margin:0 26px 22px}
.archive-item .dev-author{margin:0 26px 24px;color:var(--muted);font-size:14px}
@media(max-width:640px){
 .promise-box{padding:32px 24px}
 .promise-box blockquote{font-size:22px}
 .archive-item>summary{padding:16px 18px}
 .archive-item>blockquote,.archive-reflection,
 .archive-item .dev-practice-grid,.archive-item .dev-author{margin-left:18px;margin-right:18px}
}


/* ==================================================================
   PORTAL 2.3 — PALETA COM MAIS CORPO E TEXTOS MAIORES
   A 2.1 clareou pouco: os cartões continuavam quase brancos.
   Aqui o creme ganha densidade e a tipografia cresce.
   ================================================================== */
:root{
  --paper:#faf4e9;    /* fundo geral: creme perceptível, não branco */
  --card:#fffcf4;     /* cartão: creme claro, ainda destacado do fundo */
  --band:#f2e9d8;     /* faixa creme média */
  --band2:#ebdfc8;    /* faixa creme fechada */
  --line:#ded0b6;     /* linhas mais visíveis */
  --ink:#101c2b;
  --muted:#4d5f74;
  --gold:#c69444;
  --gold-deep:#8a5f1c;
}

body{background:var(--paper);font-size:17px;line-height:1.7}

/* faixas com contraste real entre si */
.service-ribbon{background:var(--band2);border-bottom:1px solid var(--line)}
.quick-paths{background:var(--paper)}
.daily-home{background:linear-gradient(180deg,var(--band),var(--paper))}
.happening{background:var(--band)}
.ministry-preview{background:var(--paper)}
.care-section,.care-home-section{background:var(--band)}
.archive-section{background:var(--band)}
.promise-section{background:var(--paper)}

/* cartões: borda dourada suave para descolar do fundo */
.path-card,.ministry-mini,.care-home,.pastor-card,.agenda-row,
.ministry-card,.study-card,.visit-grid article,.faq details,
.archive-item,.portal-form{
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:0 10px 30px rgba(90,66,28,.07)}

.daily-home-card,.devotional-card{
  background:var(--card);border:1px solid var(--line);
  box-shadow:0 22px 60px rgba(90,66,28,.13)}

/* ------------------------------------------------------------------
   TEXTOS MIÚDOS — o que você apontou nos cartões de ministério
   ------------------------------------------------------------------ */
.ministry-card p,.ministry-mini p{
  font-size:16.5px;line-height:1.7;color:#33445a}
.path-card p{font-size:16px;line-height:1.65;color:#3a4b60}
.study-card p{font-size:16px;line-height:1.68;color:#33445a}
.visit-grid article p,.faq details p{font-size:16.5px;line-height:1.72;color:#33445a}
.section-heading p{font-size:17.5px;color:#42536a}
.agenda-row .note,.event-preview-grid p{font-size:16px;color:#3a4b60}
.care-home p,.pastor-card p{font-size:16.5px;line-height:1.7}
.site-footer a,.footer-address,.footer-address a{font-size:15px}
.study-categories button{font-size:13.5px}
.archive-reflection{font-size:18px}

/* faixa de horários: nome e horário maiores, sem quebra feia */
.service-ribbon .container>*{padding:24px 26px;min-height:104px}
.service-ribbon strong,.service-ribbon b,.service-ribbon h3{
  font-size:20px;line-height:1.25;display:block}
.service-ribbon small,.service-ribbon p,.service-ribbon span{
  font-size:15px;line-height:1.5;color:#3f5068}
.service-ribbon small,.service-ribbon p{text-wrap:balance}

/* cabeçalho e menu um pouco maiores */
.desktop-nav a{font-size:16px}
.header-pill{font-size:14px}

/* títulos com mais presença */
.section-heading h2{color:#0b1a2c}
.kicker{color:var(--gold-deep);letter-spacing:.16em;font-size:12px}

/* ------------------------------------------------------------------
   SELETOR DE IDIOMAS — reescrito com peso maior que as regras antigas
   ------------------------------------------------------------------ */
.site-header .lang-switcher{display:flex!important;gap:5px;align-items:center;
  margin-right:12px}
.site-header .lang-switcher button{
  width:34px!important;height:23px!important;min-width:34px;padding:0!important;
  border:1px solid rgba(255,255,255,.35)!important;border-radius:4px!important;
  background:transparent!important;cursor:pointer;overflow:hidden;
  display:inline-flex!important;align-items:center;justify-content:center;
  opacity:.55;transition:opacity .18s,border-color .18s;flex:0 0 auto}
.site-header .lang-switcher button svg{
  width:34px!important;height:23px!important;display:block;
  object-fit:cover;pointer-events:none}
.site-header .lang-switcher button:hover{opacity:.9}
.site-header .lang-switcher button.active{opacity:1;
  border-color:var(--gold)!important;box-shadow:0 0 0 1px rgba(198,148,68,.45)}
@media(max-width:900px){
  .site-header .lang-switcher button{width:29px!important;height:20px!important;
    min-width:29px}
  .site-header .lang-switcher button svg{width:29px!important;height:20px!important}}
@media(max-width:430px){.site-header .lang-switcher{margin-right:6px;gap:3px}}

@media(max-width:720px){
  body{font-size:16.5px}
  .ministry-card p,.ministry-mini p,.visit-grid article p{font-size:16px}
}

/* ==================================================================
   GRADES SEM SOBRA — o número de colunas acompanha o de cartões
   ================================================================== */
/* 6 ministérios na Home: 3 colunas fecham 3+3, sem buraco */
.ministry-preview-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.ministry-preview-grid:has(> :last-child:nth-child(4)){
  grid-template-columns:repeat(2,minmax(300px,1fr))}
.ministry-preview-grid:has(> :last-child:nth-child(2)){
  grid-template-columns:repeat(2,minmax(300px,1fr))}

/* biblioteca de estudos e ministérios internos */
.ministry-grid,.study-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}
.study-grid:has(> :last-child:nth-child(1)){grid-template-columns:minmax(310px,620px)}
.study-grid:has(> :last-child:nth-child(2)){grid-template-columns:repeat(2,minmax(310px,1fr))}

/* próximos eventos: sempre 3 */
.event-preview-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}

/* cartões da mesma linha com a mesma altura */
.ministry-preview-grid,.ministry-grid,.study-grid,.path-grid,
.banner-preview-grid,.happening-grid{align-items:stretch}
.ministry-mini,.ministry-card,.study-card,.path-card{
  display:flex;flex-direction:column}
.ministry-mini p,.ministry-card p,.study-card p,.path-card p{flex:1 0 auto}

@media(max-width:1100px){
  .ministry-preview-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
}
@media(max-width:680px){
  .ministry-preview-grid,.ministry-grid,.study-grid,
  .event-preview-grid{grid-template-columns:1fr}
}

/* ==================================================================
   2.3 — TEXTOS MIÚDOS QUE SOBRARAM E A ÚLTIMA SOBRA DE GRADE
   ================================================================== */
/* assinatura do cabeçalho estava em 9px */
.brand small{font-size:11.5px!important;letter-spacing:.1em;line-height:1.4}
.footer-brand p,.footer-brand blockquote+p{font-size:15px}
.site-footer .footer-brand blockquote{font-size:20px}

/* notas da agenda, privacidade do cuidado e afins: de 13px para 15px */
.agenda-row p,.agenda-row small,.event-preview-grid small,
.care-note,.form-note,.privacy-note,.section small,
.faq details p,.mini-time small{font-size:15px;line-height:1.6}
.event-preview-grid .month,.agenda-date small{font-size:12.5px;letter-spacing:.06em}

/* 11 ministérios não fecham em nenhuma quantidade de colunas.
   Vira faixa flexível: a última linha centraliza em vez de deixar buraco. */
.ministry-grid{display:flex!important;flex-wrap:wrap;justify-content:center;
  gap:18px}
.ministry-grid>*{flex:0 1 336px;max-width:100%}
@media(max-width:760px){.ministry-grid>*{flex:1 1 100%}}

/* mesma proteção para a biblioteca de estudos, que cresce com o tempo */
.study-grid{display:flex!important;flex-wrap:wrap;justify-content:center;gap:18px}
.study-grid>*{flex:0 1 336px;max-width:100%}
.study-grid>.empty-state{flex:1 1 100%}
@media(max-width:760px){.study-grid>*{flex:1 1 100%}}

.privacy-card,.privacy-card p,.privacy-card li{font-size:15px;line-height:1.65}

/* "set" do cartão de evento estava em 10px */
.event-preview-grid .month,.event-date .month,.event-preview-grid time small,
.next-events .month{font-size:12.5px!important;letter-spacing:.08em;font-weight:800}

/* etiquetas e rodapé: nada abaixo de 12px */
.notice-card .tag,.banner-preview-grid .tag,.happening-grid .tag{
  font-size:12px!important;letter-spacing:.06em;padding:5px 12px}
.footer-bottom span{font-size:13px}
.hero-copy .eyebrow{font-size:12.5px}

/* ==================================================================
   CORREÇÃO: as regras :has() de 2 colunas só valem em telas largas.
   No celular elas forçavam 560px e estouravam a tela.
   ================================================================== */
@media(max-width:820px){
  .banner-preview-grid,.happening-grid,
  .banner-preview-grid:has(> :last-child:nth-child(1)),
  .happening-grid:has(> :last-child:nth-child(1)),
  .banner-preview-grid:has(> :last-child:nth-child(2)),
  .happening-grid:has(> :last-child:nth-child(2)),
  .ministry-preview-grid,
  .ministry-preview-grid:has(> :last-child:nth-child(2)),
  .ministry-preview-grid:has(> :last-child:nth-child(4)),
  .study-grid:has(> :last-child:nth-child(1)),
  .study-grid:has(> :last-child:nth-child(2)),
  .event-preview-grid,.path-grid{
    grid-template-columns:1fr!important}
  .ministry-grid>*,.study-grid>*{flex:1 1 100%!important}
}
/* trava de segurança: nada pode ultrapassar a largura da tela */
.notice-card,.ministry-mini,.ministry-card,.study-card,.path-card,
.agenda-row,.visit-grid article{min-width:0;max-width:100%}
img,svg,video{max-width:100%}

/* ==================================================================
   MURAL DE ARTES — qualquer proporção, nada cortado
   Colunas de altura livre: a arte vertical fica alta, a horizontal
   fica baixa, e as duas convivem sem borda e sem recorte.
   ================================================================== */
.happening-grid:has(.has-art),
.banner-preview-grid:has(.has-art){
  display:block!important;
  columns:3 300px;
  column-gap:20px}
@media(max-width:900px){
  .happening-grid:has(.has-art),
  .banner-preview-grid:has(.has-art){columns:2 260px;column-gap:16px}}
@media(max-width:620px){
  .happening-grid:has(.has-art),
  .banner-preview-grid:has(.has-art){columns:1;column-gap:0}}

.happening-grid:has(.has-art)>*,
.banner-preview-grid:has(.has-art)>*{
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  margin:0 0 20px;
  display:block}

.notice-card.has-art{
  padding:0;overflow:hidden;background:var(--card);
  border:1px solid var(--line);border-radius:18px;
  box-shadow:0 12px 34px rgba(90,66,28,.10);
  transition:transform .2s,box-shadow .2s}
.notice-card.has-art:hover{transform:translateY(-3px);
  box-shadow:0 18px 44px rgba(90,66,28,.16)}

.notice-card .art-open{display:block;width:100%;padding:0;border:0;
  background:none;cursor:zoom-in;line-height:0}
.notice-card.has-art>.art-open img{
  width:100%;height:auto;display:block;object-fit:contain;
  background:#0b1a2c}

.notice-card .notice-body{padding:20px 22px 22px;text-align:left}
.notice-card.has-art .tag{position:static;display:inline-block;margin-bottom:10px}
.notice-card.has-art h3{margin:0 0 8px;font-size:20px;line-height:1.3}
.notice-card.has-art p{margin:0 0 14px;font-size:15.5px;line-height:1.6;
  color:#3a4b60}
.notice-links{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.notice-links .text-link{border:0;background:none;padding:0;cursor:pointer;
  font:inherit;font-size:14px;font-weight:700;color:var(--gold-deep)}
.notice-links a{font-size:14px;font-weight:700}

/* ---------------- visor em tela cheia ---------------- */
.art-viewer{position:fixed;inset:0;z-index:9999;background:rgba(6,15,26,.94);
  display:grid;place-items:center;padding:24px;
  backdrop-filter:blur(3px);animation:artIn .18s ease-out}
@keyframes artIn{from{opacity:0}to{opacity:1}}
.art-viewer[hidden]{display:none}
.art-viewer figure{margin:0;max-width:100%;max-height:100%;
  display:flex;flex-direction:column;align-items:center;gap:14px}
.art-viewer img{max-width:min(94vw,1100px);max-height:82vh;
  width:auto;height:auto;object-fit:contain;border-radius:10px;
  box-shadow:0 30px 80px rgba(0,0,0,.6)}
.art-viewer figcaption{color:#e8eef5;font-size:15px;text-align:center;
  max-width:60ch}
.art-close{position:absolute;top:18px;right:20px;width:44px;height:44px;
  border-radius:50%;border:1px solid rgba(255,255,255,.3);
  background:rgba(255,255,255,.08);color:#fff;font-size:19px;cursor:pointer;
  display:grid;place-items:center}
.art-close:hover{background:rgba(255,255,255,.18)}
body.art-open-lock{overflow:hidden}
@media(max-width:620px){
  .art-viewer{padding:12px}
  .art-viewer img{max-width:96vw;max-height:76vh}
  .art-close{top:10px;right:10px;width:40px;height:40px}}

/* ================= Contribuições / PIX — 2.4 ================= */
.pix-card{background:var(--card);border:1px solid var(--line);border-radius:22px;
 padding:38px 34px;text-align:center;box-shadow:0 18px 50px rgba(90,66,28,.12)}
.pix-card h2{margin:8px 0 6px;font-size:26px}
.pix-key{font:700 27px/1.3 var(--sans);letter-spacing:.02em;color:#0b1a2c;
 margin:0 0 22px;word-break:break-all}
.pix-qr-wrap{margin:34px auto 0;max-width:300px}
.pix-qr{background:#fff;border:1px solid var(--line);border-radius:16px;
 padding:16px;display:block;line-height:0}
.pix-qr svg{width:100%;height:auto;display:block}
.pix-qr-legend{margin:12px 0 0;font-size:14.5px;color:var(--muted)}
.pix-qr-falha{font-size:15px;color:var(--muted);line-height:1.6;margin:0;padding:20px}
.pix-cc{margin-top:26px;text-align:left}
.pix-cc summary{cursor:pointer;font-size:15px;font-weight:700;color:var(--gold-deep);
 text-align:center;padding:8px}
.pix-cc textarea{width:100%;margin:14px 0 12px;font:13px/1.5 ui-monospace,monospace;
 padding:14px;border:1px solid var(--line);border-radius:12px;background:#fffdf8;
 resize:vertical;word-break:break-all}
.btn.copiado{background:var(--green,#2d7456)!important;color:#fff!important;
 border-color:transparent!important}

.pix-notice{margin:28px 0 0;background:#fff7e2;border:1px solid #e6cf9a;
 border-left:5px solid var(--gold);border-radius:16px;padding:24px 26px}
.pix-notice strong{display:block;font-size:17px;margin-bottom:8px;color:#6b4a12}
.pix-notice p{margin:0;font-size:16px;line-height:1.7;color:#4a3a1e}
.pix-holder{margin-top:12px!important;font-size:15px!important}
.pix-holder strong{display:inline;font-size:15px;letter-spacing:.03em}

.pix-verse{margin:34px 0 0;border-left:4px solid var(--gold);padding:6px 0 6px 22px}
.pix-verse p{font:italic 20px/1.55 var(--serif);color:#3a4b60;margin:0 0 8px}
.pix-verse cite{font-style:normal;font-weight:700;font-size:14px;color:var(--gold-deep)}

.pix-help{margin:38px 0 0;padding:26px 28px;background:var(--band);
 border:1px solid var(--line);border-radius:16px}
.pix-help h3{margin:0 0 10px;font-size:19px}
.pix-help p{margin:0 0 18px;font-size:16px;line-height:1.7;color:#3a4b60}

@media(max-width:620px){
 .pix-card{padding:28px 20px}
 .pix-key{font-size:21px}
 .pix-notice,.pix-help{padding:20px 18px}}

/* ==================================================================
   2.6 — DIÁRIO, PASTÉIS MAIS FIRMES, MODO ESCURO E CORRENTE DE 30 DIAS
   ================================================================== */

/* --- pastéis que sumiam em tela clara --- */
.practice{border-width:1px;border-style:solid}
.practice.prayer{background:#f6ead1;border-color:#dcc79a}
.practice.action{background:#dcece0;border-color:#a9cbb6}
.practice h3{color:#33251a;font-size:17px}
.practice.action h3{color:#1c3b2a}
.practice p{color:#3a3327;font-size:16.5px;line-height:1.7}
.practice.action p{color:#22402f}
.practice>span{color:#7a5115}
.practice.action>span{color:#2d7456}

/* --- diário --- */
.journal-box{margin:34px 0 0;background:var(--card);border:1px solid var(--line);
 border-radius:20px;padding:32px 30px;box-shadow:0 14px 40px rgba(90,66,28,.09)}
.journal-head{margin-bottom:24px}
.journal-head h2{font-size:25px;margin:6px 0 8px}
.journal-head p{font-size:16px;color:var(--muted);margin:0;line-height:1.65}
.journal-q{display:grid;grid-template-columns:34px 1fr;gap:4px 12px;
 margin-bottom:22px;align-items:start}
.journal-num{grid-row:span 2;width:30px;height:30px;border-radius:50%;
 display:grid;place-items:center;background:var(--band2);color:var(--gold-deep);
 font:800 14px/1 var(--sans);margin-top:2px}
.journal-ask{font:600 16.5px/1.5 var(--sans);color:#22303f}
.journal-q textarea{grid-column:2;width:100%;margin-top:8px;padding:13px 15px;
 border:1px solid var(--line);border-radius:12px;background:#fffdf8;
 font:16px/1.65 var(--sans);color:#1d2836;resize:vertical;min-height:74px}
.journal-q textarea:focus{outline:2px solid var(--gold);outline-offset:1px;
 border-color:transparent}
.journal-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;
 margin-top:6px}
.journal-state{font-size:14.5px;color:var(--muted)}

/* --- corrente dos 30 dias --- */
.streak{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.streak i{width:19px;height:19px;border-radius:5px;background:var(--band2);
 border:1px solid var(--line);display:block;font-style:normal}
.streak i.on{background:var(--gold);border-color:var(--gold-deep)}
.streak i.today{box-shadow:0 0 0 2px rgba(198,148,68,.45)}
.progress-panel strong{font-size:17px}
.progress-panel span{font-size:15.5px;color:var(--muted)}

/* ==================================================================
   MODO ESCURO — para quem faz devocional de madrugada (5h no templo)
   ================================================================== */
.dev-theme-toggle{display:inline-flex;align-items:center;gap:8px;
 border:1px solid var(--line);background:var(--card);border-radius:999px;
 padding:9px 18px;font:600 14px/1 var(--sans);color:var(--ink);cursor:pointer}
.dev-theme-toggle:hover{background:var(--band2)}

body.leitura-escura{background:#0a1521;color:#dde5ee}
body.leitura-escura .section,
body.leitura-escura .journal-section,
body.leitura-escura .promise-section,
body.leitura-escura .archive-section{background:#0a1521}
body.leitura-escura .page-hero{background:#081120}
body.leitura-escura .devotional-card,
body.leitura-escura .journal-box,
body.leitura-escura .progress-panel,
body.leitura-escura .archive-item{background:#12202f;border-color:#24384c;
 box-shadow:none;color:#dde5ee}
body.leitura-escura h1,body.leitura-escura h2,body.leitura-escura h3,
body.leitura-escura .journal-ask{color:#f0f5fa}
body.leitura-escura p,body.leitura-escura .archive-reflection,
body.leitura-escura #devReflection{color:#c3d1e0}
body.leitura-escura .key-phrase{color:#e8c57f;border-left-color:var(--gold)}
body.leitura-escura .practice.prayer{background:#1b2436;border-color:#33405a}
body.leitura-escura .practice.action{background:#152a25;border-color:#2c4a3c}
body.leitura-escura .practice h3{color:#f0e2c4}
body.leitura-escura .practice.action h3{color:#bfe3cd}
body.leitura-escura .practice p{color:#cdd7e4}
body.leitura-escura .journal-q textarea{background:#0d1926;border-color:#2a3d52;
 color:#e6edf5}
body.leitura-escura .journal-num{background:#1d2c3e;color:#e8c57f}
body.leitura-escura .streak i{background:#1a2635;border-color:#2b3d51}
body.leitura-escura .btn.outline,body.leitura-escura .dev-theme-toggle{
 background:#152435;color:#dde5ee;border-color:#2b3d51}
body.leitura-escura .promise-box{background:#12202f;border:1px solid #24384c}
body.leitura-escura .site-footer{background:#050d16}
body.leitura-escura .journal-state,body.leitura-escura .muted,
body.leitura-escura .progress-panel span{color:#93a7bc}
body.leitura-escura .streak i.on{background:#d7a44f;border-color:#e8c57f}

@media(max-width:620px){
 .journal-box{padding:24px 18px}
 .journal-q{grid-template-columns:26px 1fr;gap:4px 9px}
 .journal-num{width:24px;height:24px;font-size:12px}
 .journal-ask{font-size:15.5px}
}

/* ============ Destaque das contribuições — 2.6 ============ */
.desktop-nav a.nav-give{color:var(--gold2);font-weight:700;
 display:inline-flex;align-items:center;gap:6px}
.desktop-nav a.nav-give span{font-size:13px;opacity:.9}
.desktop-nav a.nav-give:hover{color:#fff}
.desktop-nav a.nav-give:after{background:var(--gold2)}
#mobileMenu a.nav-give{color:var(--gold-deep);font-weight:700}

.path-card.path-give{background:linear-gradient(160deg,#123a5f,#0b2540);
 border-color:#1d4972}
.path-card.path-give .path-num,.path-card.path-give h3{color:#f0d39b}
.path-card.path-give p{color:#c3d6e6}
.path-card.path-give:hover{transform:translateY(-4px)}

.give-invite{background:var(--band)}
.give-box{background:linear-gradient(160deg,#0d2f50,#081a2f);color:#fff;
 border-radius:22px;padding:40px 42px;text-align:center;
 box-shadow:0 20px 54px rgba(8,26,47,.22)}
.give-box .kicker{color:var(--gold2)}
.give-box h2{color:#fff;font-size:28px;margin:8px 0 12px}
.give-box p{color:#b9cbdc;font-size:17px;line-height:1.7;margin:0 auto 24px;
 max-width:54ch}
.footer-give{color:var(--gold2)!important;font-weight:700;margin-top:6px}
@media(max-width:620px){.give-box{padding:30px 22px}.give-box h2{font-size:23px}}

/* ============ Menu com 9 itens: cabe sem quebrar ============ */
.desktop-nav{gap:20px;flex-wrap:nowrap}
.desktop-nav a{white-space:nowrap;font-size:15.5px}
@media(max-width:1330px){.desktop-nav{gap:15px}.desktop-nav a{font-size:14.8px}}
@media(max-width:1190px){.desktop-nav{gap:12px}.desktop-nav a{font-size:14px}
  .site-header .lang-switcher button{width:29px!important;height:20px!important;min-width:29px}
  .site-header .lang-switcher button svg{width:29px!important;height:20px!important}}

/* menu de celular entra antes, para o cabeçalho nunca estourar */
@media(max-width:1180px){
  .desktop-nav{display:none!important}
  .menu-btn{display:inline-flex!important;align-items:center;gap:7px}
}

/* ==================================================================
   2.7 — "O que vem pela frente": os cartões somiam no fundo azul.
   Contraste medido antes: 1.02. Depois: acima de 2.0 no cartão e
   acima de 8 no texto, com faixa dourada para dar vida.
   ================================================================== */
/* fundo mais escuro para o cartão descolar */
.next-events,.upcoming{background:#071a2e}
.event-preview-grid>*{
  position:relative;
  background:linear-gradient(155deg,#295f8c,#1b4470);
  border:1px solid #3d76aa;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 14px 34px rgba(0,0,0,.28);
  transition:transform .2s,box-shadow .2s,border-color .2s}
.event-preview-grid>*:before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,var(--gold2),var(--gold))}
.event-preview-grid>*:hover{
  transform:translateY(-3px);border-color:var(--gold);
  box-shadow:0 20px 44px rgba(0,0,0,.36)}
.event-preview-grid h3{color:#fff}
.event-preview-grid p,.event-preview-grid small{color:#b6cadd!important}
.event-preview-grid .weekday,.event-preview-grid .kicker{
  color:var(--gold2)!important;letter-spacing:.12em}

/* o selo do dia ganha fundo próprio, em vez de só borda */
.event-preview-grid time,.event-preview-grid .event-date,
.event-preview-grid .day-badge{
  background:rgba(240,211,155,.14);
  border:1px solid rgba(240,211,155,.45);
  border-radius:12px;color:#f0d39b}
.event-preview-grid .day,.event-preview-grid time strong{color:#f7e6c4}

/* mesma vida para os cartões escuros da agenda */
.agenda-row.dark,.next-events .card{background:#183f66;border-color:#2d5c8a}


/* ==================================================================
   INSTALAÇÃO 2.8 — faixa de uma linha + caixa que abre pelo botão
   ================================================================== */

/* --- faixa fininha: aparece uma vez, some para sempre no X --- */
.ins-faixa{
  position:relative;z-index:70;
  display:flex;align-items:center;gap:12px;
  padding:9px 44px 9px 16px;
  background:linear-gradient(100deg,#0a1f36,#123a5f 55%,#0a1f36);
  border-bottom:1px solid rgba(213,164,85,.4);
  font-size:14px;color:#e8f0f7;line-height:1.35}
.ins-faixa-txt{flex:1 1 auto;min-width:0}
.ins-faixa-cta{
  flex:0 0 auto;border:1px solid rgba(240,211,155,.5);
  background:rgba(240,211,155,.14);color:#f0d39b;
  border-radius:999px;padding:7px 16px;cursor:pointer;
  font:700 13.5px/1 var(--sans,system-ui);white-space:nowrap}
.ins-faixa-cta:hover{background:var(--gold,#c69444);color:#1b1206;border-color:transparent}
.ins-faixa-x{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);
  width:28px;height:28px;border-radius:50%;
  border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);
  color:#dfe9f2;font-size:13px;cursor:pointer;display:grid;place-items:center}
.ins-faixa-x:hover{background:rgba(255,255,255,.2)}
@media(max-width:520px){
  .ins-faixa{font-size:13.5px;padding:9px 40px 9px 12px;gap:9px}
  .ins-faixa-cta{padding:7px 12px;font-size:13px}}

/* --- caixa de instruções --- */
.ins-fundo{position:fixed;inset:0;z-index:9999;
  background:rgba(5,13,23,.72);backdrop-filter:blur(3px);
  display:grid;place-items:center;padding:20px;
  animation:insEntra .18s ease-out}
@keyframes insEntra{from{opacity:0}to{opacity:1}}
.ins-caixa{position:relative;width:min(430px,100%);
  background:linear-gradient(165deg,#12304f,#0a1f36);
  border:1px solid rgba(240,211,155,.28);border-radius:22px;
  padding:32px 28px 24px;text-align:center;color:#e8f0f7;
  box-shadow:0 30px 70px rgba(0,0,0,.5);
  max-height:90vh;overflow-y:auto}
.ins-logo{border-radius:14px;background:#fff;padding:4px;margin-bottom:14px}
.ins-caixa h2{margin:0 0 8px;font-size:23px;color:#fff}
.ins-sub{margin:0 0 22px;font-size:15px;line-height:1.6;color:#b7cade}
.ins-x{position:absolute;top:12px;right:14px;width:34px;height:34px;
  border-radius:50%;border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.1);color:#e6eef6;font-size:15px;
  cursor:pointer;display:grid;place-items:center}
.ins-x:hover{background:rgba(255,255,255,.22)}
.ins-btn{width:100%;border:0;border-radius:999px;cursor:pointer;
  padding:16px 24px;font:700 16.5px/1 var(--sans,system-ui);
  background:linear-gradient(135deg,#e8c57f,#c69444);color:#1b1206;
  box-shadow:0 8px 22px rgba(198,148,68,.35)}
.ins-btn:disabled{opacity:.75;cursor:default}
.ins-aviso{font-size:14.5px;line-height:1.6;color:#c8d8e6;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:14px;padding:16px;margin:0}
.ins-passos{text-align:left}
.ins-passos>strong{display:block;font-size:14px;color:var(--gold2,#f0d39b);
  margin-bottom:12px;text-align:center}
.ins-passos ol{margin:0;padding:0;list-style:none;
  display:flex;flex-direction:column;gap:12px}
.ins-passos li{display:flex;align-items:flex-start;gap:12px;
  font-size:15px;line-height:1.45;color:#dfeaf4}
.ins-passos li>span:last-child{flex:1 1 auto;min-width:0}
.ins-passos b{color:#fff}
.ins-ico,.ins-num{flex:0 0 34px;width:34px;height:34px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(240,211,155,.16);border:1px solid rgba(240,211,155,.42);
  color:#f0d39b;font:800 14px/1 var(--sans,system-ui)}
.ins-ico svg{width:18px;height:18px}
.ins-troca{display:block;width:100%;margin:18px 0 0;border:0;background:none;
  cursor:pointer;font:600 14px/1.4 var(--sans,system-ui);color:#9fb6cb;
  text-decoration:underline;text-underline-offset:3px;padding:6px}
.ins-troca:hover{color:var(--gold2,#f0d39b)}
.ins-nao{display:block;width:100%;margin:4px 0 0;border:0;background:none;
  cursor:pointer;font:400 13.5px/1.4 var(--sans,system-ui);color:#7d93a8;padding:6px}
.ins-nao:hover{color:#b7cade}
body.ins-travado{overflow:hidden}

/* --- convite permanente na página Sou Novo --- */
.ins-convite-pagina{display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  background:var(--card,#fffcf4);border:1px solid var(--line,#ded0b6);
  border-radius:18px;padding:24px 26px;
  box-shadow:0 12px 32px rgba(90,66,28,.09)}
.ins-convite-pagina img{border-radius:12px;flex:0 0 auto}
.ins-convite-pagina>div{flex:1 1 220px;display:flex;flex-direction:column;gap:3px}
.ins-convite-pagina strong{font-size:18px;color:var(--ink,#101c2b)}
.ins-convite-pagina span{font-size:15.5px;color:var(--muted,#4d5f74);line-height:1.55}
.ins-cta-pagina{flex:0 0 auto}
@media(max-width:560px){
  .ins-convite-pagina{padding:20px 18px;gap:14px}
  .ins-cta-pagina{width:100%}}
