@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

:root{--ipcb-navy:#25235C;--ipcb-blue:#527BB3;--ipcb-light-blue:#95B7DF;--ipcb-pale-blue:#E7F0FA;--ipcb-red:#ED242F;--ipcb-yellow:#F4DF00;--ipcb-white:#FFFFFF;--ipcb-offwhite:#F7F8FA;--ipcb-graphite:#34363B;--ipcb-gray:#74777D;--border:#dfe4eb;--shadow:0 10px 35px rgba(24,35,70,.08);--container:1170px;--ease:300ms ease}
body{font-family:Poppins,Arial,sans-serif;color:var(--ipcb-graphite);font-size:16px;line-height:1.75;background:#fff;-webkit-font-smoothing:antialiased}
.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-100px;z-index:9999;background:#fff;color:var(--ipcb-navy);padding:12px 18px;box-shadow:var(--shadow)}.skip-link:focus{top:16px}
:focus-visible{outline:3px solid var(--ipcb-yellow);outline-offset:3px}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--ipcb-blue);font-size:.76rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:14px}.eyebrow::before{content:'';width:34px;height:3px;background:var(--ipcb-red)}
h1,h2,h3,h4{color:var(--ipcb-navy);line-height:1.15;letter-spacing:-.025em}h1{font-size:clamp(2.65rem,5.2vw,4.25rem)}h2{font-size:clamp(2rem,3.8vw,3rem)}h3{font-size:clamp(1.25rem,2vw,1.65rem)}p+p{margin-top:18px}.lead{font-size:1.08rem;line-height:1.8;color:#5e626b}.muted{color:var(--ipcb-gray)}.small{font-size:.85rem}.placeholder{color:#6f5710;background:#fff8dd;border:1px solid #e8d891;padding:3px 7px;font-size:.8rem;font-weight:600;display:inline-block}.section{padding:100px 0}.section--soft{background:var(--ipcb-offwhite)}.section--pale{background:var(--ipcb-pale-blue)}.section-head{max-width:760px;margin-bottom:46px}.section-head.center{text-align:center;margin-inline:auto}.section-head.center .eyebrow{justify-content:center}.section-head p{margin-top:18px}.grid{display:grid;gap:28px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.btn{min-height:50px;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:2px;font-size:.78rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase;transition:background var(--ease),color var(--ease),border-color var(--ease),transform var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--ipcb-navy);color:#fff}.btn-primary:hover{background:var(--ipcb-blue)}.btn-light{background:#fff;color:var(--ipcb-navy)}.btn-outline{border-color:rgba(255,255,255,.75);color:#fff}.btn-outline:hover{background:#fff;color:var(--ipcb-navy)}.btn-outline-dark{border-color:var(--ipcb-navy);color:var(--ipcb-navy)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.topbar{background:var(--ipcb-navy);color:#fff;font-size:.7rem;letter-spacing:.03em}.topbar-inner{height:40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid transparent;transition:box-shadow var(--ease)}.site-header.scrolled{box-shadow:0 8px 25px rgba(18,28,55,.12)}.nav{min-height:88px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:13px;min-width:246px}.brand img{width:70px;height:70px;object-fit:contain}.brand-text{color:var(--ipcb-navy);font-size:.74rem;line-height:1.25;font-weight:700;text-transform:uppercase}.brand-text span{display:block;color:var(--ipcb-blue);font-size:.67rem;margin-top:4px}.nav-list{display:flex;align-items:center;justify-content:flex-end;gap:22px;margin-left:auto}.nav-link{position:relative;font-size:.76rem;color:var(--ipcb-navy);font-weight:600;white-space:nowrap}.nav-link::after{content:'';position:absolute;height:2px;background:var(--ipcb-red);left:0;right:100%;bottom:-9px;transition:right var(--ease)}.nav-link:hover::after,.nav-link[aria-current=page]::after{right:0}.menu-toggle{display:none;border:0;background:transparent;color:var(--ipcb-navy);width:44px;height:44px;padding:10px}.menu-toggle span,.menu-toggle::before,.menu-toggle::after{content:'';display:block;height:2px;background:currentColor;margin:5px 0;transition:var(--ease)}
.hero{min-height:720px;display:flex;align-items:center;position:relative;background:#111f33 url('../images/ipcb-ourinhos/hero.png') center/cover no-repeat;color:#fff}.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,45,.94) 0%,rgba(27,40,69,.82) 46%,rgba(12,20,45,.36) 100%)}.hero-content{position:relative;width:min(760px,70%);padding:90px 0 145px}.hero .eyebrow{color:#fff}.hero h1{color:#fff;max-width:800px}.hero .hero-lead{max-width:680px;font-size:1.05rem;margin-top:22px;color:rgba(255,255,255,.82)}
.quick-panel{position:relative;z-index:3;margin-top:-92px}.quick-grid{display:grid;grid-template-columns:1fr 1fr 1fr;background:#fff;box-shadow:0 18px 55px rgba(17,31,64,.18)}.quick-item{padding:32px 30px;min-height:185px;border-right:1px solid var(--border)}.quick-item:last-child{border-right:0;background:var(--ipcb-pale-blue)}.quick-label{font-size:.7rem;font-weight:700;color:var(--ipcb-blue);letter-spacing:.13em;text-transform:uppercase}.quick-item h3{font-size:1.15rem;margin:10px 0 9px}.quick-item p{font-size:.83rem;line-height:1.6}.text-link{display:inline-flex;gap:8px;margin-top:14px;color:var(--ipcb-navy);font-size:.73rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.text-link::after{content:'\2192';transition:transform var(--ease)}.text-link:hover::after{transform:translateX(4px)}
.icon-card,.belief-card,.content-card{background:#fff;border:1px solid var(--border);border-radius:2px;padding:32px;transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}.icon-card:hover,.belief-card:hover,.content-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent}.icon{width:48px;height:48px;display:grid;place-items:center;color:var(--ipcb-blue);background:var(--ipcb-pale-blue);margin-bottom:24px}.icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}.icon-card h3,.belief-card h3{margin-bottom:13px}.icon-card p,.belief-card p,.content-card p{font-size:.91rem;color:#676b73}.belief-card{border-top:3px solid var(--ipcb-blue)}
.split{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.media-frame{position:relative;overflow:hidden;min-height:540px;background:var(--ipcb-pale-blue)}.media-frame img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform 500ms ease}.media-frame:hover img{transform:scale(1.03)}.media-frame::after{content:'';position:absolute;inset:0;border:10px solid rgba(255,255,255,.45);pointer-events:none}.quote-mark{border-left:4px solid var(--ipcb-red);padding:3px 0 3px 22px;margin:26px 0;color:var(--ipcb-navy);font-weight:600;font-size:1.15rem}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:70px}.stat{padding:30px;border-right:1px solid var(--border)}.stat:last-child{border-right:0}.stat strong{display:block;color:var(--ipcb-navy);font-size:1.8rem}.stat span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ipcb-gray)}
.cta-band{background:var(--ipcb-navy);color:#fff;padding:80px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner h2{color:#fff;max-width:700px}.cta-inner p{margin-top:12px;color:rgba(255,255,255,.72);max-width:680px}
.ministry-card{position:relative;min-height:350px;overflow:hidden;background:var(--ipcb-navy)}.ministry-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.46;transition:transform 500ms ease}.ministry-card:hover img{transform:scale(1.035)}.ministry-card::after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(13,21,48,.96))}.ministry-content{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;color:#fff}.ministry-content h3{color:#fff;margin-bottom:8px}.ministry-content p{font-size:.88rem;line-height:1.6;color:rgba(255,255,255,.78)}.status-note{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ipcb-yellow);margin-bottom:10px}
.sermon-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.filter-btn{border:1px solid var(--border);background:#fff;color:var(--ipcb-navy);padding:9px 14px;font-size:.72rem;font-weight:600}.filter-btn.active,.filter-btn:hover{background:var(--ipcb-navy);color:#fff;border-color:var(--ipcb-navy)}.sermon-card{background:#fff;border:1px solid var(--border);display:flex;flex-direction:column}.sermon-thumb{height:205px;position:relative;background:var(--ipcb-navy) url('../images/ipcb-ourinhos/biblia.png') center/cover}.sermon-thumb::after{content:'';position:absolute;inset:0;background:rgba(24,30,65,.42)}.play{position:absolute;z-index:2;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:54px;height:54px;border:1px solid rgba(255,255,255,.8);display:grid;place-items:center;color:#fff}.sermon-body{padding:26px;display:flex;flex-direction:column;flex:1}.sermon-meta{font-size:.7rem;text-transform:uppercase;color:var(--ipcb-blue);font-weight:600}.sermon-body h3{font-size:1.23rem;margin:9px 0}.sermon-info{font-size:.82rem;color:var(--ipcb-gray);margin-bottom:18px}.sermon-actions{margin-top:auto;display:flex;gap:16px;border-top:1px solid var(--border);padding-top:16px}
.gospel-flow{counter-reset:gospel}.gospel-step{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--border)}.gospel-step::before{counter-increment:gospel;content:'0' counter(gospel);font-weight:700;color:var(--ipcb-light-blue);font-size:1.2rem}.gospel-step h3{font-size:1rem;margin-bottom:4px}.gospel-step p{font-size:.9rem;color:var(--ipcb-gray)}.solas{display:grid;grid-template-columns:repeat(5,1fr);margin-top:45px;border:1px solid var(--border)}.sola{text-align:center;padding:34px 18px;border-right:1px solid var(--border)}.sola:last-child{border-right:0}.sola strong{font-size:1.05rem;color:var(--ipcb-navy);font-style:italic}.sola span{display:block;color:var(--ipcb-gray);font-size:.75rem;margin-top:7px}
.accordion{border-top:1px solid var(--border)}.accordion-item{border-bottom:1px solid var(--border)}.accordion-trigger{width:100%;border:0;background:transparent;text-align:left;padding:22px 44px 22px 0;color:var(--ipcb-navy);font-weight:600;position:relative}.accordion-trigger::after{content:'+';position:absolute;right:4px;font-size:1.5rem;font-weight:300;top:16px}.accordion-trigger[aria-expanded=true]::after{content:'\2212'}.accordion-panel{display:none;padding:0 50px 23px 0;color:var(--ipcb-gray);font-size:.92rem}.accordion-panel.open{display:block}
.page-hero{background:var(--ipcb-navy) url('../images/ipcb-ourinhos/hero.png') center 48%/cover no-repeat;color:#fff;position:relative;padding:112px 0}.page-hero::before{content:'';position:absolute;inset:0;background:rgba(21,27,61,.86)}.page-hero .container{position:relative}.page-hero h1{color:#fff;font-size:clamp(2.5rem,5vw,4rem)}.page-hero p{max-width:700px;color:rgba(255,255,255,.78);margin-top:17px}.breadcrumbs{display:flex;gap:8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;margin-bottom:18px;color:var(--ipcb-light-blue)}
.article-body{max-width:820px;margin:auto}.article-body h2{font-size:2rem;margin:48px 0 18px}.article-body h3{margin:32px 0 12px}.article-body ul{list-style:disc;padding-left:22px}.article-body li+li{margin-top:8px}.timeline{border-left:2px solid var(--ipcb-light-blue);padding-left:36px}.timeline-item{position:relative;padding:0 0 42px}.timeline-item::before{content:'';position:absolute;left:-43px;top:5px;width:12px;height:12px;background:var(--ipcb-red);border-radius:50%;box-shadow:0 0 0 6px var(--ipcb-pale-blue)}.timeline-item h3{margin-bottom:9px}.doctrine-nav{position:sticky;top:120px;padding:28px;background:var(--ipcb-offwhite)}.doctrine-nav a{display:block;padding:8px 0;font-size:.83rem;color:var(--ipcb-navy);border-bottom:1px solid var(--border)}
.location-card{background:#fff;border:1px solid var(--border);padding:36px}.address{font-style:normal;margin:20px 0;color:var(--ipcb-gray)}.map-placeholder{min-height:470px;background:var(--ipcb-pale-blue);display:grid;place-items:center;text-align:center;padding:35px;color:var(--ipcb-navy);border:1px solid #d4e0ec}.map-placeholder svg{width:54px;height:54px;stroke:var(--ipcb-blue);fill:none;margin:0 auto 18px}
.form{display:grid;gap:20px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.field label{display:block;font-size:.77rem;font-weight:600;color:var(--ipcb-navy);margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid #ccd2dc;border-radius:2px;background:#fff;padding:14px 15px;color:var(--ipcb-graphite)}.field textarea{min-height:150px;resize:vertical}.check{display:flex;align-items:flex-start;gap:10px;font-size:.78rem}.check input{margin-top:5px}.form-notice{display:none;padding:14px;background:var(--ipcb-pale-blue);color:var(--ipcb-navy);font-size:.85rem}.form-notice.show{display:block}
.site-footer{background:#191846;color:rgba(255,255,255,.7);padding-top:78px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.15fr;gap:50px;padding-bottom:60px}.footer-brand img{width:96px;height:96px;object-fit:contain;background:#fff;padding:5px;margin-bottom:18px}.site-footer h3{color:#fff;font-size:1rem;margin-bottom:22px}.footer-links a{display:block;padding:5px 0;font-size:.82rem;transition:color var(--ease),transform var(--ease)}.footer-links a:hover{color:#fff;transform:translateX(3px)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;font-size:.71rem}.footer-bottom .container{display:flex;justify-content:space-between;gap:20px}.legal-links{display:flex;gap:18px;flex-wrap:wrap}
.cookie-banner{display:none;position:fixed;z-index:500;left:20px;right:20px;bottom:20px;background:#fff;border-top:3px solid var(--ipcb-blue);box-shadow:0 14px 50px rgba(20,27,58,.25);padding:20px}.cookie-banner.show{display:block}.cookie-inner{width:min(100%,1100px);margin:auto;display:flex;gap:28px;align-items:center}.cookie-inner p{font-size:.78rem;line-height:1.55;flex:1}.cookie-actions{display:flex;gap:8px}.cookie-actions .btn{min-height:40px;padding:9px 13px;font-size:.65rem}.whatsapp-widget{position:fixed;right:22px;bottom:22px;z-index:220;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.whatsapp-float{background:#1d7651;color:#fff;padding:13px 18px;font-size:.76rem;font-weight:700;box-shadow:var(--shadow);border-radius:2px}.whatsapp-bubble{display:none;background:#fff;color:var(--ipcb-navy);padding:12px 15px;box-shadow:var(--shadow);font-size:.76rem;max-width:220px}.whatsapp-bubble.show{display:block}.missing-image{display:none!important}
.reveal{opacity:0;transform:translateY(22px);transition:opacity 650ms ease,transform 650ms ease}.reveal.visible{opacity:1;transform:none}.not-found{text-align:center;padding:130px 0}.not-found .code{font-size:8rem;color:var(--ipcb-pale-blue);font-weight:700;line-height:1}.empty-state{text-align:center;padding:40px;border:1px dashed var(--border);color:var(--ipcb-gray)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
