/* Restauração · uma casa clara, com fotografias da nossa comunidade. */
:root {
  --ink:#30382f; --muted:#63665b; --navy:#384637; --navy2:#4c5c45;
  --blue:#865039; --gold:#a14c32; --gold2:#805523; --cream:#f7f5ee;
  --cream2:#fffefa; --paper:#fffefa; --card:#fffefa; --band:#f4efe5;
  --band2:#eee6d7; --line:#dfdfd3; --green:#4d6148;
  --shadow:0 18px 50px #44482c0c; --wrap:1180px;
}
body { background:var(--paper); color:var(--ink); }
h1,h2,h3,h4 { color:var(--ink); }
.kicker,.eyebrow,.text-link { color:#925035; }
.kicker,.eyebrow { font-size:11px; letter-spacing:1.8px; }
.btn { border-radius:7px; font-weight:700; }
.btn.primary,.btn.gold { background:#a14c32; color:white; border-color:#a14c32; box-shadow:none; }
.btn.primary:hover,.btn.gold:hover { background:#823c27; border-color:#823c27; }
.btn.outline,.btn.light { border:1px solid #a9ad9d; background:transparent; color:var(--ink); }
.btn.outline:hover,.btn.light:hover { background:#eeeee4; }
.site-header { background:#fffefbf7; color:var(--ink); border-bottom:1px solid var(--line); }
.brand strong { color:#343c30; font-size:19px; }
.brand small { color:#6c7162; font-size:9px; letter-spacing:1.4px; }
.brand img { width:42px; height:42px; }
.desktop-nav { gap:19px; }
.desktop-nav a { color:#505846; font-weight:600; font-size:13px; }
.desktop-nav a:hover,.desktop-nav a.active,.site-header a[aria-current=page] { color:#a14c32; }
.site-header .nav-give { color:#925035; }
.header-pill,.menu-btn,.icon-btn { border:1px solid #d4d7c9; background:transparent; color:#3a4434; }
.portal-language select { border-color:#d4d7c9; color:#3a4434; background:#fffefa; }
.portal-language option { background:#fff; color:#30382f; }
.header-pill:hover,.menu-btn:hover { background:#eeeede; }
.mobile-menu { background:#25301e66; }
.mobile-menu-panel { background:#fffefa; color:#30382f; border-color:var(--line); }
.mobile-menu-head,.mobile-menu nav a { border-color:var(--line); }
.mobile-menu-head button { background:#efeee5; color:#30382f; }
.mobile-menu .nav-give { color:#a14c32; }

/* Texto e fotografia têm espaços próprios; nenhuma película sobre a imagem. */
.welcome-home { background:#f7f6ef; overflow:hidden; }
.welcome-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; padding-top:64px; padding-bottom:52px; }
.welcome-copy h1 { font-size:clamp(48px,5.3vw,70px); line-height:1.06; letter-spacing:-2.6px; margin:23px 0; font-weight:500; }
.welcome-copy h1 em { display:block; color:#a14c32; font-weight:500; }
.welcome-copy>p { font-size:17px; max-width:43ch; line-height:1.8; color:#63665b; }
.welcome-actions { display:flex; flex-wrap:wrap; gap:12px; margin:28px 0 32px; }
.welcome-location { display:flex; align-items:center; gap:12px; padding-top:22px; border-top:1px solid #d9dccd; max-width:405px; }
.location-icon { display:grid; place-items:center; width:37px; height:37px; border-radius:50%; background:#ececdd; color:#677153; font-size:19px; flex-shrink:0; }
.welcome-location strong,.welcome-location small { display:block; font-size:12px; font-weight:600; }
.welcome-location small { color:#707364; font-size:11px; margin-top:3px; font-weight:400; }
.welcome-visual { position:relative; padding:0 0 28px 38px; min-width:0; }
.welcome-main-photo { margin:0 18px 0 48px; }
.welcome-main-photo img { width:100%; height:476px; object-fit:cover; object-position:50% 62%; border-radius:120px 10px 10px 10px; }
.welcome-main-photo figcaption { font-size:10px; color:#74776b; padding:9px 0 0; text-align:right; }
.welcome-small-photo { position:absolute; width:164px; height:209px; object-fit:cover; object-position:center; left:0; bottom:47px; border:7px solid #fffefa; border-radius:7px; box-shadow:0 12px 26px #41462715; }
.welcome-seal { position:absolute; z-index:1; right:-2px; top:30px; width:94px; height:94px; border:1px solid #b2b79f; border-radius:50%; background:#e8eddb; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0; transform:rotate(9deg); color:#4b5c39; font-size:9px; letter-spacing:1px; }
.welcome-seal b { font-family:var(--serif); font-size:24px; line-height:1.15; font-weight:400; max-width:70px; text-align:center; }
.welcome-sunday { position:absolute; left:177px; right:0; bottom:0; background:#fffefa; border:1px solid #dedfce; border-radius:8px; padding:15px 21px; display:flex; justify-content:space-between; align-items:center; box-shadow:0 10px 30px #444b2410; }
.welcome-sunday small,.welcome-sunday strong { display:block; }
.welcome-sunday small { font-size:10px; text-transform:uppercase; letter-spacing:1.1px; color:#7b765e; }
.welcome-sunday strong { font:500 22px var(--serif); margin-top:6px; }
.welcome-sunday>span { color:#a14c32; font-size:24px; }
.service-ribbon { background:#fffefa; color:#30382f; border-block:1px solid var(--line); box-shadow:none; }
.service-item { border-color:var(--line); padding:23px 18px; }
.service-item b { color:#454e3a; font-size:13px; }
.service-item span { color:#716e61; font-size:12px; }
.quick-paths { background:#fffefa; padding:62px 0; }
.path-card { background:#fffefa; border-color:#dddfd3; border-radius:9px; box-shadow:none; }
.path-card:hover { border-color:#a14c32; }
.path-card>span,.path-card .path-num { color:#a14c32; }
.path-card b,.path-card h3 { color:#37412f; font-size:24px; font-weight:500; }
.path-card p { color:#626659; }
.path-card.path-give { background:#f0f1e5; border-color:#d9ddc9; }
.path-card.path-give .path-num { color:#6c734e; }
.path-card.path-give h3 { color:#4d5837; }
.path-card.path-give p { color:#5c664d; }
.section-heading h2 { font-weight:500; color:#36412f; }

/* Fotografias e histórias da igreja */
.life-home { background:#f3efe5; }
.life-home-grid { display:grid; grid-template-columns:1.12fr 1fr 1fr; gap:25px; }
.life-card { min-width:0; }
.life-card figure { margin:0; position:relative; }
.life-card img { width:100%; height:265px; object-fit:cover; border-radius:9px; }
.life-card:first-child img { object-position:50% 50%; }
.life-card small { display:block; font-size:10px; font-weight:600; color:#786b55; letter-spacing:1.4px; text-transform:uppercase; margin-top:21px; }
.life-card h3 { font-size:28px; font-weight:500; line-height:1.12; margin:12px 0; }
.life-card p { color:#67695e; font-size:14px; line-height:1.75; }
.life-card .text-link { font-size:13px; margin-top:12px; display:inline-block; }
.life-video-tag { position:absolute; bottom:14px; left:14px; background:#fffefaed; color:#37412f; padding:7px 13px; border-radius:5px; font-size:11px; }
.daily-home { background:#fffefa; }
.daily-home-card { border-color:#dedecd; box-shadow:none; border-radius:12px; }
.daily-home-side,.devotional-side { background:#ebeedf; color:#3c4931; }
.daily-home-side .daily-day,.devotional-side .daily-day { color:#62724c; }
.daily-home-side small,.devotional-side .reading-time { color:#6c735c; }
.daily-home-side blockquote,.devotional-side blockquote { color:#3d4932; }
.daily-home-side cite,.devotional-side cite { color:#6c5a34; }
.daily-home-main { background:#fffefa; }
.key-phrase { color:#7e4b31; border-color:#cba887; }
.cycle-badge { background:#eee6d7; color:#725632; }
.next-events.dark { background:#f0f2e8; color:#30382f; }
.next-events .section-heading.light h2 { color:#35412d; }
.next-events .section-heading.light p { color:#626a59; }
.next-events .section-heading.light .kicker { color:#6a714f; }
.event-card-preview { background:#fffefa; border:1px solid #d6dcc9; color:#36412f; border-radius:9px; }
.event-card-preview h3 { color:#36412f; font-weight:500; }
.event-card-preview time { background:#ebeedf; color:#4c5b3b; border:0; }
.event-card-preview time strong,.event-card-preview time small { color:#4c5b3b; }
.event-card-preview p { color:#656d5b; }
.happening { background:#fffefa; }
.notice-card,.notice-card:nth-child(n),.notice-card.has-art { background:#f6f3eb; border:1px solid var(--line); color:#30382f; box-shadow:none; }
.notice-card:before { display:none; }
.notice-card h3,.notice-card.has-art h3 { color:#37402f; }
.notice-card p,.notice-card.has-art p { color:#64665a; }
.notice-card a,.notice-card .text-link { color:#925035; }
.notice-card .tag,.tag { background:#e8eada; color:#5c6747; }
#homeBanners { display:grid; columns:auto; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:stretch; }
#homeBanners .notice-card { width:auto; margin:0; min-height:260px; justify-content:flex-start; }
#homeBanners .notice-card.has-art>.art-open { display:none; }
#homeBanners .notice-card.has-art h3 { font-size:26px; }
#homeBanners .notice-card:not(.has-art) { padding:24px; }
.ministry-preview { background:#f5f4ee; }
.ministry-mini,.ministry-card { background:#fffefa; border-color:var(--line); }
.ministry-mini small { color:#925035; }
.care-home { background:#fffefa; }
.care-home h2,.community-grid h2 { font-weight:500; }
.care-actions a { background:#f5f3eb; border-color:var(--line); }
.community-invite { background:#eeecdf; }
.community-grid p,.community-links span { color:#636758; }
.community-links a { border-color:#ccd1bd; }
.pastor-card { background:#fffefa; border-color:var(--line); }
.pastor-card blockquote { color:#48543a; font-weight:400; }
.pastor-word { background:#fffefa; }
.site-footer,body.leitura-escura .site-footer { background:#eeeee3; color:#36412e; }
.footer-brand blockquote { color:#6b5935; }
.site-footer h3,.footer-address strong { color:#3c4733; }
.site-footer a,.footer-address,.footer-address a,.footer-install,.footer-bottom { color:#616956; }
.site-footer a:hover,.site-footer .external-small { color:#925035; }
.footer-bottom { border-color:#d2d8c2; }
.footer-brand img { max-width:290px; }
.page-hero,.page-hero.compact { background:#f1f1e6; color:#30382f; border-bottom:1px solid #dfe2d2; }
.page-hero:after { display:none; }
.page-hero h1 { color:#37422e; font-weight:500; }
.page-hero h1 em { color:#a14c32; font-weight:400; }
.page-hero p { color:#616956; font-style:normal; font-family:var(--sans); font-size:18px; }
.page-hero .container { padding:70px 0 60px; }
.join-team,.mini-section,.give-box { background:#e9eddd; color:#35412f; }
.join-team h2,.mini-grid h2,.give-box h2 { color:#35412f; }
.join-team p,.mini-grid p,.mini-time small,.give-box p { color:#5e6852; }
.mini-time { background:#fffefb80; border-color:#cbd3ba; }
.mini-time strong,.mini-time span { color:#69764a; }
.give-box .kicker { color:#925035; }
.agenda-period button.active,.study-categories button.active { background:#556344; color:white; border-color:#556344; }
.reader-tools button,.agenda-period button { color:#384530; border-color:#c7ceb9; }
.reader-tools>span,.agenda-note,.agenda-row small { color:#636c58; }
.reflection,.archive-reflection { color:#4e5747; }
.devotional-card { box-shadow:none; border-color:var(--line); }
.devotional-main { background:#fffefa; }
.practice.prayer { background:#f4ebdf; }
.practice.action { background:#edf0e3; }
.mobile-dock { background:#fffefaed; border-color:#d6dac8; }
.mobile-dock a,.mobile-dock button { color:#626b55; }
.mobile-dock [aria-current=page] { color:#96492f; background:#f3e9df; }
.toast { background:#3f4d34; border-color:#869571; }
.update-banner button { background:#556344; }

/* Página de comunidade e vídeos sem reprodução automática. */
.community-jumps { display:flex; gap:26px; flex-wrap:wrap; margin-top:26px; }
.community-jumps a { font-size:13px; color:#875033; border-bottom:1px solid #b5b899; padding-bottom:5px; }
.album-label { color:#5b654e; font-size:12px; border:1px solid #cbd0be; padding:9px 15px; border-radius:30px; }
.album-intro { max-width:790px; color:#606755; font-size:17px; line-height:1.9; margin-bottom:35px; }
.photo-album { display:grid; grid-template-columns:repeat(3,1fr); gap:28px 22px; }
.photo-album figure { margin:0; }
.photo-album .art-open { width:100%; display:block; border:0; padding:0; background:transparent; border-radius:9px; overflow:hidden; }
.photo-album img { width:100%; height:340px; object-fit:cover; transition:transform .3s; }
.photo-album .art-open:hover img { transform:scale(1.035); }
.photo-album figcaption { font-size:12px; color:#67715d; margin-top:12px; }
.source-note { color:#68705e; font-size:12px; margin-top:30px; line-height:1.7; }
.stories-section { background:#f5f3ec; }
.story-filters { display:flex; gap:8px; flex-wrap:wrap; margin:30px 0; }
.story-filters button { padding:9px 18px; border-radius:30px; border:1px solid #cbd0bb; background:#fffefa; color:#4e5d3d; font-size:13px; min-height:44px; }
.story-filters [aria-pressed=true] { background:#576747; color:#fff; border-color:#576747; }
.stories-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; align-items:start; }
.story-card { border:1px solid #dcdfd0; border-radius:11px; background:#fffefa; overflow:hidden; scroll-margin-top:100px; }
.story-video { background:#e7e9dc; }
.story-video video { display:block; width:100%; height:auto; aspect-ratio:4/4.5; object-fit:contain; background:#e7e9dc; }
.story-copy { padding:23px; }
.story-meta { display:flex; flex-wrap:wrap; gap:6px 12px; font-size:10px; color:#737962; line-height:1.7; }
.story-meta>span { color:#945236; text-transform:uppercase; letter-spacing:1px; font-weight:700; }
.story-copy h3 { font-size:28px; font-weight:500; line-height:1.15; margin:15px 0; }
.story-copy p { font-size:14px; line-height:1.85; color:#636b59; }
.story-copy details { border-top:1px solid #e3e4d8; margin-top:20px; }
.story-copy summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; font-size:12px; font-weight:600; padding-top:15px; color:#8a4c32; list-style:none; }
.story-copy summary::-webkit-details-marker { display:none; }
.story-copy summary span { font-size:21px; line-height:1; }
.story-copy details[open] summary span { transform:rotate(45deg); }
.story-copy .text-link { font-size:13px; display:block; }
.video-info { display:block; font-size:10px; color:#7b7f70; margin-top:18px; }
.community-closing { background:#ebeedd; text-align:center; }
.community-closing h2 { font-weight:500; margin:14px 0; }
.community-closing p { color:#647055; }
.community-closing .btn { margin-top:15px; }
.art-viewer { background:#20271feb; }
.visit-photo-band { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:65px; padding-top:55px; }
.visit-photo-band img { width:100%; height:370px; object-fit:cover; border-radius:10px 80px 10px 10px; }
.visit-photo-band h2 { font-size:39px; font-weight:500; line-height:1.2; }
.visit-photo-band p { color:#657059; line-height:1.85; }

/* O modo escuro é uma escolha do leitor e usa tons neutros. */
body.leitura-escura { background:#252921; color:#e8eadd; }
body.leitura-escura .section,body.leitura-escura .journal-section,body.leitura-escura .promise-section,body.leitura-escura .archive-section { background:#252921; }
body.leitura-escura .page-hero { background:#30362a; }
body.leitura-escura .devotional-card,body.leitura-escura .devotional-main,body.leitura-escura .journal-box,body.leitura-escura .progress-panel,body.leitura-escura .archive-item,body.leitura-escura .promise-box { background:#31392b; border-color:#4c5542; color:#e8eadd; }
body.leitura-escura .devotional-side { background:#414d34; }
body.leitura-escura .devotional-side blockquote,body.leitura-escura .devotional-side cite,body.leitura-escura .devotional-side .daily-day,body.leitura-escura .reading-time { color:#e0e8cc; }
body.leitura-escura h1,body.leitura-escura h2,body.leitura-escura h3,body.leitura-escura .journal-ask { color:#f0eee4; }
body.leitura-escura p,body.leitura-escura .archive-reflection,body.leitura-escura #devReflection { color:#d3dac7; }
body.leitura-escura .practice.prayer,body.leitura-escura .practice.action { background:#404834; border-color:#556046; }
body.leitura-escura .key-phrase { color:#e4c39c; }
body.leitura-escura .archive-search input,body.leitura-escura .journal-q textarea { background:#272f22; color:#e9eedf; border-color:#535f45; }
body.leitura-escura .btn.outline,body.leitura-escura .dev-theme-toggle { background:#3d4932; color:#e5e9dc; border-color:#626f51; }
body.leitura-escura .site-header,body.leitura-escura .site-footer,body.leitura-escura .site-footer h3 { color:#36412e; }
body.leitura-escura .site-footer p,body.leitura-escura .site-footer blockquote { color:#616956; }

@media(min-width:1181px) and (max-width:1320px) { .desktop-nav{gap:14px}.brand strong{font-size:17px}.header-inner{gap:17px} }
@media(max-width:1050px) {
 .welcome-grid { gap:30px; }
 .welcome-copy h1 { font-size:56px; }
 .welcome-main-photo { margin-left:20px; margin-right:0; }
 .welcome-main-photo img { height:435px; }
 .welcome-small-photo { width:137px; height:175px; }
 .welcome-sunday { left:140px; padding:14px; }
 .welcome-sunday strong { font-size:19px; }
 .life-home-grid { gap:18px; }
 .life-card img { height:215px; }
 .stories-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:720px) {
 .brand strong { font-size:15px; }
 .brand img { width:32px; height:32px; }
 .welcome-grid { display:flex; flex-direction:column; align-items:stretch; padding-top:37px; padding-bottom:30px; gap:30px; }
 .welcome-copy h1 { font-size:clamp(44px,12.5vw,62px); letter-spacing:-1.8px; margin:19px 0; }
 .welcome-copy h1 em { display:inline; }
 .welcome-copy>p { font-size:15px; line-height:1.75; max-width:38ch; }
 .welcome-copy .eyebrow { font-size:9px; letter-spacing:1.4px; }
 .welcome-actions { margin:22px 0; gap:10px; }
 .welcome-actions .btn { font-size:12px; padding:13px 17px; }
 .welcome-location { padding-top:17px; }
 .welcome-visual { width:100%; padding-left:28px; padding-bottom:27px; }
 .welcome-main-photo { margin:0 9px 0 47px; }
 .welcome-main-photo img { height:338px; border-top-left-radius:85px; object-position:center 61%; }
 .welcome-main-photo figcaption { font-size:9px; }
 .welcome-small-photo { width:123px; height:166px; bottom:45px; border-width:5px; }
 .welcome-sunday { left:134px; padding:12px 15px; }
 .welcome-sunday small { font-size:8px; }
 .welcome-sunday strong { font-size:18px; }
 .welcome-seal { width:73px; height:73px; top:19px; font-size:7px; right:0; }
 .welcome-seal b { font-size:24px; }
 .service-item { padding:16px 10px; }
 .service-item b { font-size:12px; }
 .service-item span { font-size:11px; }
 .life-home-grid { grid-template-columns:1fr; gap:32px; }
 #homeBanners { grid-template-columns:1fr; }
 #homeBanners .notice-card { min-height:0; }
 .life-card img { height:270px; }
 .life-card small { margin-top:17px; }
 .life-card h3 { margin:10px 0; font-size:31px; }
 .life-card p { margin-bottom:7px; }
 .life-card .text-link { margin-top:6px; }
 .page-hero p { font-size:15px; }
 .page-hero .container { padding:43px 0 38px; }
 .community-jumps { gap:15px; }
 .community-jumps a { font-size:11px; }
 .album-label { display:inline-block; margin-top:15px; }
 .album-intro { font-size:15px; }
 .photo-album { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; }
 .photo-album img { height:220px; }
 .photo-album figcaption { font-size:10px; line-height:1.6; }
 .stories-grid { grid-template-columns:1fr; gap:24px; }
 .story-video video { aspect-ratio:4/4.5; }
 .story-copy h3 { font-size:30px; }
 .story-filters { gap:7px; }
 .story-filters button { font-size:12px; padding:8px 15px; }
 .visit-photo-band { grid-template-columns:1fr; gap:27px; padding-top:15px; }
 .visit-photo-band img { height:330px; }
 .visit-photo-band h2 { font-size:34px; }
 .footer-brand img { max-width:245px; }
}
@media(max-width:360px) { .brand strong{font-size:13px}.header-inner{gap:5px}.welcome-copy h1{font-size:43px}.welcome-actions .btn{padding-inline:12px}.welcome-sunday{left:117px}.welcome-small-photo{width:110px}.welcome-sunday strong{font-size:16px} }
@media print { .story-filters,.story-video,.welcome-seal{display:none}.photo-album img{height:auto}.story-card{break-inside:avoid}.page-hero{background:#fff!important;color:#222!important} }
