/* Reference-specific corrections. Public content and admin behavior stay in app.js. */
:root{--gold:#eaa12b;--paper-image:url('/assets/refinamento/paper-seamless.svg');--paper-size:500px 130px}
.kicker::after,.gold-line,.gallery-link::after,.hero h1::after{background:linear-gradient(90deg,#ff9c08 0%,#d89022 50%,#66584a 100%)}
.section.green,.site-footer,.login-header,.admin-header,.solid-button,.login-submit{background-color:#003d32;background-image:radial-gradient(ellipse at 34% 40%,#064d3e 0%,#00372f 80%)}
.hero-scene::after{content:"";position:absolute;inset:0 48% 12% 0;background:linear-gradient(180deg,transparent 38%,#030708 65%,transparent 100%);mask-image:linear-gradient(90deg,#000 45%,transparent);pointer-events:none;z-index:1}
.quick-links>a{box-shadow:0 .5vw 1vw #4d351d24}
.quick-links>a:last-child img{object-fit:fill}
.bulletin-cover{isolation:isolate;overflow:visible;border-color:#f4ecdf;box-shadow:0 .6vw .8vw #001d1a45}
.bulletin-cover::before,.bulletin-cover::after{content:"";position:absolute;inset:1% -1% -3%;background:#eee8dd;border:1px solid #d5cbbd;z-index:-1;transform:rotate(3deg);box-shadow:0 .4vw .5vw #00130c35;pointer-events:none}
.bulletin-cover::after{inset:1% 0 -1.5%;transform:rotate(1deg);background:#f7f1e7}
.bulletin-cover .bulletin-photo{position:relative;background:#eee5d6;overflow:hidden}
.contact-button.pastor{background-image:radial-gradient(ellipse at 45% 50%,#064c3e,#00382f 85%)}
.contact-button.prayer{background-image:linear-gradient(110deg,#f9efdf80,#f4e8d970)}
.location-card .button{box-shadow:0 0 .4vw #fff9e73b;border-radius:1.8vw}
.thanks-card a{background-image:linear-gradient(110deg,#b74c1d,#b45924)}
.admin-tabs button{position:relative}
.admin-tabs button+button::before{content:"";position:absolute;left:0;top:18%;height:45%;width:1px;background:#e2d7ca}
.admin-tabs button.active{font-weight:700}
.admin-rows{border-color:#ded6cc;background:#ffffff70}
.admin-row{border-color:#e8e0d6}
.admin-row>button{background:#f4f1ed}
.input-icon{background:#ffffff28}
.login-main label{font-weight:700}
.login-submit,.back-site{display:flex;justify-content:center;align-items:center;gap:2vw}
.login-submit>.icon,.back-site>.icon{width:1em;height:1em}
@media(min-width:1025px){
 .history.history-refined .history-shape{background:url('/assets/history-contour.svg') center/100% 100% no-repeat}
 .history.history-refined .history-architecture{display:none}
 .history-flow-active .history-boundary{top:calc(var(--history-height) - 122px);height:123px;background-image:url('/assets/refinamento/history-desktop.svg');mask-image:none}
 .history.history-refined .timeline>div{min-height:11.7vw;padding:3.8vw 0 2vw}
 .history.history-refined .history-note{margin-top:0;font-size:1.76vw;max-width:40vw}
 .history.history-refined{min-height:66.67vw}
 .desktop-community>img{object-position:50% 57%}
 .desktop-community::after{width:30vw;height:5.1vw;background-size:100% 100%}
 .map-card{margin-bottom:3.4vw}
 .community-intro .community-hero{margin-top:4.23vw}
 .community-hero img{object-position:center 57%}
 .youth-main img{transform:scale(1.12);transform-origin:50% 62%}
 .community-gallery>.wave{height:7.42vw}
 .youth>.wave{height:6.8vw}
 .visit .sanctuary-wide{object-position:center 37%}
 .visit-address .icon{width:1.2em;height:1.2em}
 .empty-service{max-width:34vw}
 .empty-service>.icon{width:4.5vw;height:4.5vw}
 .agenda-watermark{width:28vw;height:28vw;opacity:.28}
 .agenda-watermark .icon{width:13vw;height:13vw}
 .thanks-card>img{object-position:50% 38%;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}
 .thanks-card a>.icon{width:6.8vw;height:6.8vw}
 .thanks-heading h3{font-weight:400;letter-spacing:-.04em}
 .location-card>div::after{width:8vw;right:-7vw}
 .location-card>img{object-position:45% 50%}
 .contact-hero{object-position:center 45%}
}
@media(max-width:1024px){
 body{background:#faf7ef var(--paper-image) 0 0/var(--paper-size)}
 .history-flow-active,.history.history-refined,.community-page,.contact-page,.login-main,.admin-main{background-color:#faf7ef;background-image:var(--paper-image);background-size:var(--paper-size)}
 .history-flow-active .history.history-refined{background:transparent!important}
 .home-top{background:linear-gradient(#edddc488,#edddc488),var(--paper-image) 0 0/var(--paper-size)}
 .section:not(.green){background-color:transparent}
 .home-header .brand-symbol img{transform:none;width:100%}
 .home-header .brand-name{font-size:3.8vw;letter-spacing:-.025em}
 .home-header{padding-left:9.3%;padding-right:5.5%;height:15.3vw;min-height:0}
 .hero h1{font-weight:400;letter-spacing:-.035em}
 .quick-links{gap:3.4vw;padding:3.1vw 5.2% 4vw}
 .quick-links>a,.quick-links>a:nth-child(2){box-shadow:0 .6vw 1vw #543c2428}
 .quick-links img,.quick-links>a:nth-child(2) img{height:27vw;border:.4vw solid #fbf2df;border-radius:1.8vw;object-position:center}
 .quick-links span{font-weight:700;font-size:4.6vw;letter-spacing:-.045em;padding:3.2vw 2vw 2.3vw 5vw;min-width:60%;background:#faf5ea var(--paper-image) center/var(--paper-size)}
 .quick-links>a:last-child{background:url('/assets/mapa-horizontal.png') left center/55% 100% repeat-x}
 .quick-links>a:last-child img{height:17vw;width:55%;object-fit:fill;border-right:0;border-radius:1.8vw 0 0 1.8vw}
 .quick-links>a:last-child span{min-width:48%;padding:4.3vw 2vw 3vw 5vw;font-size:4.3vw}
 .history h2{font-size:8.3vw;font-weight:700;line-height:1.08;letter-spacing:-.05em;-webkit-text-stroke:0}
 .history.history-refined .timeline{margin-top:4vw}
 .history.history-refined .timeline>div{min-height:17vw;padding:4vw 0 3vw}
 .history.history-refined .timeline h3{font-size:4.1vw}
 .history.history-refined .history-note{font-size:3.6vw;max-width:63%;min-width:0;line-height:1.22}
 .home-community{padding-top:5vw}
 .home-community h2{font-size:6.7vw;font-weight:700;letter-spacing:-.055em;line-height:1.02}
 .home-community p{font-size:3.55vw;line-height:1.22;margin:1.4vw 0 2vw}
 .home-mosaic .photo:first-child img{transform:scale(1.13);transform-origin:50% 55%}
 .home-mosaic .photo:nth-child(2) img{transform:scale(1.03);transform-origin:center}
 .home-mosaic .photo:nth-child(3) img{transform:scale(1.16);transform-origin:65% 48%}
 .gallery-link{font-weight:700;font-size:3.8vw;padding-bottom:1.5vw}
 .history-flow-active .messages::before{inset:0 0 auto;width:100%;height:11.7vw;border-radius:0;background:url('/assets/refinamento/messages-ribbon.svg') center/100% 100% no-repeat;transform:none;opacity:1}
 .messages h2{font-weight:700;font-size:5.7vw;letter-spacing:-.04em}
 .messages .inner>p{font-weight:400;font-size:3.15vw;line-height:1.07;max-width:80%}
 .play-circle{width:8.7vw;height:8.7vw;border-width:1px}
 .youtube-link>.icon:first-child{width:4vw;height:3vw;fill:currentColor;stroke:none}
 .youtube-link>.icon:last-child{width:1.8vw;height:1.8vw}
 .visit{padding-top:4.5vw;background:var(--paper-image) 0 0/var(--paper-size)}
 .visit h2,.services h2{font-size:6.4vw;font-weight:700;letter-spacing:-.055em}
 .visit .inner>p{max-width:77%;font-size:3.35vw;line-height:1.14}
 .visit .sanctuary-wide{object-position:center 42%}
 .visit-address{font-weight:700}
 .visit-address small{font-weight:400}
 .visit-address>.icon{width:4vw;height:4.7vw;fill:#ed980d;stroke:#fff7e8}
 .services{background:var(--paper-image) 0 0/var(--paper-size)!important;padding-bottom:8vw}
 .services>.inner>div:first-child>p{font-size:3.25vw;line-height:1.15;max-width:77%}
 .empty-service{margin-top:3.5vw}
 .empty-service>.icon,.empty-icon>.icon{padding:3.4vw;width:13vw;height:13vw}
 .services>.wave{height:7vw}
 .bulletin{padding:4.3vw 0 6vw}
 .bulletin .split{grid-template-columns:1.18fr .82fr;gap:3vw}
 .bulletin h2{font-size:5.9vw;line-height:1;font-weight:700;letter-spacing:-.055em;max-width:none}
 .bulletin p{font-size:3vw;font-weight:400;line-height:1.12;max-width:42vw}
 .bulletin-cover{height:35vw;transform:rotate(-14deg);padding:3vw 1.9vw;align-self:center}
 .bulletin-cover .bulletin-photo img{transform:scale(1.6);transform-origin:50% 50%;object-position:50% 55%}
 .bulletin::before{width:46%;right:3%;opacity:.4;mask-image:none;mix-blend-mode:normal;background-image:url('/assets/folhagem.svg')}
 .agenda{background:var(--paper-image) 0 0/var(--paper-size);padding-top:3vw}
 .agenda h2{font-size:5.6vw;font-weight:700}
 .agenda-watermark{width:23vw;height:23vw;top:5vw;right:-4%;opacity:.22;border-width:1.1vw}
 .agenda-state{margin-top:2vw}
 .agenda-state .button{font-size:2.65vw;padding:1.4vw 2.8vw}
 .home-contact{background:linear-gradient(#f0e5d477,#f0e5d477),var(--paper-image) 0 0/var(--paper-size)!important}
 .home-contact h2,.home-map h2{font-size:5.5vw;font-weight:700;letter-spacing:-.06em}
 .home-contact p{max-width:78%;font-size:3vw;line-height:1.15}
 .home-contact .contact-button strong{font-weight:700;font-size:3.5vw;letter-spacing:-.035em}
 .home-contact .contact-button>.icon:first-child{width:7vw;height:7vw}
 .home-contact .contact-button::after{bottom:-40%;width:18%;right:6%;height:140%;mask-image:none;opacity:.65}
 .home-contact .contact-button.prayer{background-image:radial-gradient(ellipse at 45% 50%,#064c3e,#00382f 85%)}
 .home-map{grid-template-columns:1fr 1.1fr;gap:4vw;background:var(--paper-image) 0 0/var(--paper-size);padding-top:2vw;padding-bottom:5vw}
 .home-map p{font-size:2.65vw;max-width:37vw}
 .home-map .button>.icon:first-child{fill:#df870b;stroke:#fff7e7}
 .site-footer{padding-bottom:2vw}
 .site-footer .brand-symbol img{transform:scale(1.1)}
 .site-footer::after{width:16%;height:85%;opacity:.35;mask-image:none}
 .community-brand>span{font-weight:400;font-size:3vw;line-height:1.17}
 .community-intro::before{background:url('/assets/refinamento/community-architecture.svg') top right/100% 100% no-repeat;height:44vw}
 .community-intro h1{font-weight:700;letter-spacing:-.055em}
 .community-intro p{max-width:81%;font-size:3.4vw;line-height:1.22}
 .community-intro .mobile-only p:first-child{max-width:80%}
 .community-intro .mobile-only p:last-child{max-width:100%}
 .community-hero img{object-position:50% 57%;transform:scale(1.06)}
 .community-feature{grid-template-columns:2.2fr 1fr;gap:3.6vw;margin-top:2vw;padding-bottom:3vw;border-bottom:1px solid #c9b79d}
 .community-feature .photo img{transform:scale(1.03);object-position:50% 65%}
 .community-feature h2{font-weight:700;letter-spacing:-.045em;font-size:5.4vw;line-height:.98}
 .community-feature p{font-size:2.6vw;line-height:1.17}
 .community-feature .round-link{margin-top:0;margin-left:auto}
 .community-gallery>.wave{height:9vw;background:#003d32;margin-bottom:-3vw}
 .youth::before{width:100%;right:0;top:0;height:45vw;clip-path:none;border:0;background:url('/assets/refinamento/youth-ribbons.svg') right top/100% 100% no-repeat;opacity:1}
 .youth h2{-webkit-text-stroke:0;font-size:6.8vw;font-weight:700;letter-spacing:-.055em;max-width:60%}
 .youth-carousel{height:48vw;grid-template-columns:2.7fr 1fr;gap:1.5vw}
 .youth-main img{transform:scale(1.05);object-position:50% 62%}
 .youth-next img{object-position:50% center;transform:scale(1.05)}
 .carousel-back,.carousel-next{background:#faf7ef;box-shadow:0 .2vw .5vw #0002}
 .dots>b{background:#ed970b}
 .meetings{background:var(--paper-image) 0 0/var(--paper-size);min-height:47vw}
 .meetings>img{width:108%;right:-20%;top:0;mask-image:linear-gradient(90deg,transparent 0%,#000 27%)}
 .meetings>div{max-width:31vw}
 .meetings h2{font-size:6.3vw;-webkit-text-stroke:0;letter-spacing:-.055em}
 .meetings p{max-width:29vw;font-size:2.65vw;line-height:1.2}
 .meetings::before{background-image:url('/assets/refinamento/surface-wave.svg');height:9vw}
 .contact-header{clip-path:none;mask:url('/assets/refinamento/contact-header.svg') center/100% 100%;height:18vw;padding:2vw 6% 4vw 12%}
 .contact-header .brand-symbol img{width:8vw;transform:scale(1.1)}
 .contact-header:has(.menu:not([hidden])){mask:none}
 .contact-page .contact-hero{height:77vw;clip-path:none;mask:url('/assets/refinamento/contact-photo.svg') center/100% 100%;object-position:50% 40%}
 .contact-intro .inner{padding:1.7vw 0 7vw}
 .contact-intro h1{color:#080c0b;letter-spacing:-.055em;font-size:8.5vw}
 .contact-intro .inner::after{width:24vw;height:24vw;right:-6%;top:3vw;opacity:.5}
 .contact-intro p{max-width:78%;font-size:3.6vw;line-height:1.2}
 .help{background:linear-gradient(#f0e3d566,#f0e3d566),var(--paper-image) 0 0/var(--paper-size);border-radius:0;padding-top:4.5vw;mask-image:url('/assets/refinamento/soft-top.svg'),linear-gradient(#000,#000);mask-size:100% 3vw,100% calc(100% - 3vw + 1px);mask-position:top,bottom;mask-repeat:no-repeat}
 .help h2{font-size:6.3vw;letter-spacing:-.055em;color:#080c0b}
 .help .contact-button strong{font-weight:700;letter-spacing:-.045em}
 .help .contact-button>.icon{width:7.5vw;height:7.5vw}
 .help::after{content:"";position:absolute;left:7%;bottom:0;width:18vw;height:10vw;background:url('/assets/folhagem.svg') center/contain no-repeat;opacity:.08;pointer-events:none;z-index:3}
 .thanks,.plan-visit{background:var(--paper-image) 0 0/var(--paper-size)}
 .thanks h2,.plan-visit h2{font-size:6.7vw;letter-spacing:-.055em;color:#080c0b}
 .thanks-heading h3{font-weight:700;letter-spacing:-.055em;font-size:3.9vw}
 .thanks-heading p{font-size:2.65vw}
 .thanks-card>img{object-position:50% 38%;clip-path:polygon(21% 0,100% 0,100% 100%,0 100%)}
 .thanks-card a{font-size:3.7vw;gap:2.5vw}
 .thanks-card a>.icon{width:7vw;height:7vw;flex-shrink:0}
 .thanks::after{background-image:url('/assets/refinamento/surface-wave.svg');height:7vw}
 .location-card>div::after{width:10vw;right:-9vw}
 .location-card>img{object-position:43% 50%}
 .location-card h3{font-weight:700;font-size:3.4vw}
 .location-card p,.location-card h3+p{font-weight:400;font-size:2.85vw}
 .location-card .button{border-width:.3vw;border-radius:2vw;font-size:2.65vw;gap:1.5vw}
 .contact-footer .footer-top{width:auto;padding:1vw 0 2vw}
 .contact-footer .brand-name{font-size:3vw}
 .contact-footer .brand-symbol{width:11vw;height:8vw}
 .login-header .brand-symbol img{transform:scale(1.05)}
 .login-header{background-image:radial-gradient(ellipse at 35% 40%,#00513f,#00372f 85%)}
 .login-main h1{letter-spacing:-.04em;font-size:8.9vw;font-weight:700}
 .login-main>p{font-size:4.25vw;line-height:1.23;max-width:100%}
 .login-main label{font-weight:700;font-size:4.1vw}
 .input-icon>svg{width:5.6vw;height:5.6vw}
 .input-icon input{font-size:4vw;padding-left:1vw}
 .login-submit{font-size:4.9vw;border-radius:1.8vw;min-height:12vw}
 .login-bottom{background:var(--paper-image) 0 0/var(--paper-size);clip-path:none;mask:url('/assets/refinamento/contact-photo.svg') center/100% 100%}
 .admin-header .brand-symbol{width:12vw;height:9vw}
 .admin-header .brand-symbol img{transform:scale(1.05)}
 .admin-header .panel-name{font-size:3vw;font-weight:400}
 .admin-header>.icon-button{margin-left:2vw}
 .admin-tabs button{font-size:2.9vw;gap:2vw;padding-bottom:2.5vw}
 .admin-tabs button>.icon{width:4.7vw;height:4.7vw}
 .admin-main h1{font-size:6.3vw;letter-spacing:-.045em}
 .admin-section-heading h2{font-size:3.8vw;letter-spacing:-.045em}
 .admin-rows{border-radius:1.8vw;border-width:1px}
 .admin-row{padding:1.5vw 2vw;gap:2.5vw}
 .admin-row>button{min-height:9vw;min-width:12vw;padding:.7vw 2.8vw;font-size:2.3vw}
 .admin-row>button>.icon{width:3.7vw;height:3.7vw}
 .date-thumb{font-size:3.8vw}
}
@media(max-width:380px){
 .thanks-heading p,.contact-button small{font-size:11px}
 .thanks-heading h3{font-size:14px;white-space:normal}
 .thanks-card a{font-size:12px}
 .location-card h3{font-size:12px}
 .location-card p,.location-card h3+p{font-size:11px}
 .location-card .button{font-size:10px}
 .admin-row>button{font-size:11px;padding:7px}
 .admin-tabs button{font-size:11px}
 .login-main>p,.login-main label,.input-icon input{font-size:16px}
}

@media(max-width:1024px){.meetings::before{background-image:url('/assets/refinamento/meetings-top.svg')}.community-gallery>.wave{background: url('/assets/refinamento/youth-entry.svg') center/100% 100% no-repeat}.community-gallery>.wave path{display:none}.visit-address>.icon{color:#ed980d}.home-map .button>.icon:first-child{color:#df870b}}

/* Continuous photographic edge and a single location marker. */
.hero-scene{background:#000}.hero-scene::after{display:none}
.hero-photo{filter:drop-shadow(-3px 0 5px #000)}
@media(max-width:1024px){.quick-links>a:last-child{background:#eee3d1}.quick-links>a:last-child span{min-width:48%;height:100%;display:flex;align-items:center}.home-top{background:linear-gradient(#edddc466,#edddc466),var(--paper-image) 0 0/var(--paper-size)}}

.hero-photo{mask:url('/assets/refinamento/facade-blend-desktop.svg') center/100% 100%;filter:none}@media(max-width:1024px){.hero-photo{mask-image:url('/assets/refinamento/facade-blend-mobile.svg')}}
.section.green{background-image:linear-gradient(#003d32 0 5vw,transparent 12vw),radial-gradient(ellipse at 34% 40%,#064d3e 0%,#00372f 80%)}
