/* Novo Nascimento · leitura e navegação pensadas primeiro para o celular. */
:root{--sans:'Source Sans 3','Segoe UI',Arial,sans-serif;--serif:var(--sans);--brand-muted:#4e5f68;--muted:#4e5f68;--reading-gold:#80601d;--reading-olive:#465e34}
body{font-family:var(--sans);font-size:1.25rem;line-height:1.65}
body p{line-height:1.7}
:root body :is(h1,h2,h3){font-family:var(--sans);font-weight:750;letter-spacing:-.025em;line-height:1.22}
:root body :is(h1,h2,h3) em{font-family:var(--sans);font-style:normal;font-weight:750;letter-spacing:inherit;color:var(--reading-gold)}
body :is(h1,h2,h3){overflow-wrap:break-word}
.eyebrow,.section-kicker{font-size:0.875rem;font-weight:700;letter-spacing:.065em;color:#4e613d;line-height:1.5}
.section-kicker .faith-icon{color:#1a4161;width:30px;height:30px}
.button,.small-button,.text-link,.text-button{font-family:var(--sans);font-size:1.1875rem;font-weight:700;line-height:1.4;min-height:56px;border-radius:12px;letter-spacing:0}
.button{padding:17px 24px}.button>span{flex:none}.text-link,.text-button{display:inline-flex;align-items:center;padding-block:12px}
a,button,input,summary{-webkit-tap-highlight-color:#dfe7cb}
:focus-visible{outline:3px solid #0d5eaa;outline-offset:4px}
button,input,textarea,select{font-family:var(--sans)}
input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:1.25rem;min-height:56px}
input[type=checkbox],input[type=radio]{width:25px;height:25px;flex:none;accent-color:#062b50}
label,.field-label{font-size:1.1875rem;font-weight:600}
.demo-banner{font-size:0.9375rem;font-weight:500;line-height:1.5;padding:9px 20px}
.batch-bar{font-size:0.9375rem;font-weight:600;letter-spacing:.02em;line-height:1.5;padding:11px 20px}
/* O nome tem prioridade. A navegação continua disponível no celular. */
.site-header{z-index:60;position:sticky;top:0;background:#fffdf8;border-bottom:1px solid #d9dfdc}
.site-header .nav{min-height:108px;gap:24px;position:relative}
.site-header .church-brand{gap:13px;min-width:0;flex-shrink:0}
.site-header .church-brand img{width:82px;height:82px;object-fit:contain}
.brand-wordmark{gap:3px;min-width:0}
.brand-wordmark strong{font:800 1.6875rem/1.08 var(--sans);letter-spacing:-.03em;white-space:normal;color:#062b50}
.brand-wordmark small{font:700 0.75rem/1.3 var(--sans);letter-spacing:.07em;color:#43584f}
.brand-wordmark>span{font:600 0.6875rem/1.4 var(--sans);letter-spacing:.03em;color:#68531f;margin-top:3px}
.site-header .nav nav{gap:19px;margin-left:auto}
.site-header .nav nav>a{font:700 1.0625rem/1.35 var(--sans);min-height:48px;display:inline-flex;align-items:center;padding-block:10px}
.site-header .nav nav>.button{font-size:1.0625rem;padding:14px 20px}
.menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:#edf2f3;border:1px solid #c4d2d8;border-radius:12px;color:#062b50;min-height:60px;min-width:64px;font:700 1rem/1.2 var(--sans);padding:8px 10px;flex:none;cursor:pointer}
.menu-toggle svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.menu-toggle[aria-expanded=true]{background:#062b50;color:#fffdf8;border-color:#062b50}
.reading-preference{display:none}
.church-nav{font-size:1.125rem;gap:16px;padding-block:24px}.church-nav a{min-height:48px;display:flex;align-items:center;font-weight:650;color:#244356}
.church-nav a+a:before{display:none}
/* Iconografia Acolher: desenho próprio com duas cores e silhuetas maiores. */
.faith-icon{stroke-width:2.1;color:#163f5d}
.faith-beliefs article>.faith-icon{width:51px;height:51px;padding:7px;background:#f1eddf;border-radius:14px;color:#163f5d}
.mission-symbol>.faith-icon{width:76px;height:76px;color:#163f5d;stroke-width:2.1;margin-left:3px}
.mission-symbol:after{background:#f0ead8;width:84px;height:84px}
.ministry-card>.faith-icon{width:66px;height:66px;padding:8px;border-radius:17px;background:#f0eddf;color:#163f5d;stroke-width:2.1}
.contact-information .contact-detail>.faith-icon{width:34px;height:34px;color:#163f5d;stroke-width:2.1}
.faith-schedule .service-card-top>.faith-icon{width:46px;height:46px;color:#163f5d}
.first-visit>.faith-icon{color:#173f5c;width:54px;height:54px}
.mission-trust-heading>.faith-icon{color:#173f5c;width:46px;height:52px}
.prayer-copy>.faith-icon{color:#e5cb82;width:54px;height:54px;background:#fff8e7;border-radius:14px;padding:7px}
.about-verse>.faith-icon{color:#e8d5a2;width:46px;height:54px}
/* Fundos leves, leitura sobre áreas de cor uniforme. */
.faith-about{background:linear-gradient(180deg,#fffdf8 50%,#f8f5eb)}
.faith-mission{background:#f4efe1}.faith-mission:before{opacity:.5}
.faith-services{background:linear-gradient(145deg,#fffdf8 50%,#eff3f0)}
.faith-ministries{background:#eef2eb}
.faith-contact{background:#fffdf8}
.contact-brand-art{background:#f9f4e7 url('/assets/faith/oliveira-fundo.jpg') center/cover;border-radius:20px;border-color:#ddd3b8;padding:30px}
.contact-brand-art>img{width:300px;height:200px;max-width:100%}.contact-brand-art>span{font-size:0.875rem;font-weight:700;letter-spacing:.035em;color:#58491f;text-align:center}
.contact-brand-art .faith-contact-olive{display:none}
.faith-contact:before{content:'';position:absolute;right:-160px;bottom:-140px;width:450px;height:450px;border:45px solid #eef2e8;border-radius:50%;pointer-events:none;opacity:.45}
.faith-contact>.container{position:relative}
.community-art{margin:0;min-width:0;max-width:520px;flex:1}
.community-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:24px;border:1px solid #d9decf}
.community-art figcaption{font-size:1rem;color:#465e34;margin-top:10px;line-height:1.5}
.faith-ministries .faith-section-head{align-items:center;gap:55px}
.faith-ministries .faith-section-head>div{flex:1}
.faith-ministries .faith-section-head>div>p:last-child{font-size:1.25rem;line-height:1.7;color:#4e5f50;max-width:460px;margin-top:24px}
.faith-section h2{font-size:clamp(2.125rem,3.2vw,2.875rem)}
.section-lead,.faith-about-copy>.section-lead{font-size:1.3125rem;line-height:1.7;color:#4e5f68}
.faith-about-copy>.institution-name{font-size:1.0625rem;color:#4e5f68}
.faith-beliefs h3{font-size:1.4375rem;font-weight:700}.faith-beliefs p{font-size:1.25rem;color:#4e5f50;line-height:1.65}
.faith-foundation small{font-size:0.8125rem;font-weight:700;letter-spacing:.015em;color:#526146}
.faith-foundation>p{font-size:1.0625rem;color:#4e5f50}.faith-foundation strong{font-size:2.4375rem;font-weight:800;color:#80601d}
.faith-about-art figcaption{font-size:1rem;color:#4e5f68}
.about-verse{border-radius:14px}.about-verse blockquote{font:600 1.4375rem/1.5 var(--sans);letter-spacing:0}
.about-verse cite{font-size:0.9375rem;color:#d5e0e8;letter-spacing:.03em}
.mission-intro .section-lead,.mission-intro blockquote{font-size:1.3125rem;line-height:1.7}
.mission-intro cite{font-size:0.9375rem;color:#586044;letter-spacing:.03em}
.mission-art>span{font-size:0.875rem;font-weight:700;letter-spacing:.06em;color:#58491f}
.mission-card{border-radius:18px}.mission-card h3{font-size:1.875rem;font-weight:750}
.mission-card-top>span{font-size:0.875rem;font-weight:700;letter-spacing:.03em;color:#4b5e3c}
.mission-card-top>strong{font:800 2.25rem var(--sans);color:#80601d}
.mission-card>p{font-size:1.25rem;line-height:1.7;color:#4e5f50}
.mission-card details{font-size:1.1875rem;padding-block:12px;color:#264a36}
.mission-card details summary{min-height:48px;display:flex;align-items:center;padding-right:25px;font-weight:700;line-height:1.5}
.mission-card details ul{font-size:1.1875rem;color:#4e5f50;line-height:1.8}
.mission-card-footer>span{font-size:0.8125rem;font-weight:700;color:#586044;letter-spacing:.03em}.mission-card-footer>b{font-size:1.5rem}
.mission-trust{border-radius:18px}.mission-trust-heading h3{font-size:1.4375rem}
.mission-trust p{font-size:1.1875rem;color:#4e5f50;line-height:1.75}.mission-trust .mission-report{font-size:1.125rem;color:#465e34}
.mission-invitation .eyebrow{font-size:0.875rem;color:#69521e;letter-spacing:.04em}.mission-invitation p{font-size:1.5625rem;font-weight:700;line-height:1.4}
.faith-section-head>p{font-size:1.25rem;color:#4e5f50;line-height:1.7}
.faith-schedule .service-card{border-radius:18px;background:#fffdf8;border-color:#ccd8d8}
.service-card-top>span{font-size:1rem;color:#36563d;font-weight:700;letter-spacing:.03em}
.faith-schedule .service-card>strong{font:800 2.625rem/1.2 var(--sans);letter-spacing:-.035em}
.faith-schedule .service-card>h3{font-size:1.4375rem;font-weight:750}
.faith-schedule .service-card>p{font-size:1.25rem;line-height:1.65;color:#4e5f50}
.service-card-bottom{font:500 1rem/1.5 var(--sans);letter-spacing:0;color:#4e5f50}
.first-visit{border-radius:18px}.first-visit h3{font-size:1.4375rem;font-weight:750}.first-visit p{font-size:1.25rem;line-height:1.7;color:#4e5f50}
.first-visit .text-link{font-size:1.1875rem;font-weight:700;color:#264a36}
.section-demo-note{font-size:1.0625rem;line-height:1.65;color:#4c5e43}
.ministry-card{border-radius:18px;padding:28px;border-color:#ccd7c6}
.ministry-card h3{font-size:1.6875rem;font-weight:750}.ministry-card p{font-size:1.25rem;line-height:1.65;color:#4e5f50;max-width:none}
.ministry-card>span{font-size:1.125rem;color:#36563d;font-weight:700;min-height:48px;align-items:center;padding-top:12px}
.faith-prayer h2{font-size:clamp(2.25rem,3.5vw,3rem)}
:root body .faith-prayer h2 em{color:#f0d997}
.prayer-copy>p:not(.eyebrow){font-size:1.3125rem;color:#e0e8ee;line-height:1.7}.prayer-copy>.eyebrow{font-size:0.875rem;letter-spacing:.04em;color:#f0d997}
.prayer-copy .button{font-size:1.25rem;min-height:62px}.prayer-copy blockquote{font:600 1.375rem/1.6 var(--sans)}.prayer-copy cite{font-size:0.9375rem;letter-spacing:.03em;color:#d2dce4}
.contact-intro>p:not(.eyebrow){font-size:1.3125rem;line-height:1.7;color:#4e5f50}
.contact-information{border-radius:20px;background:#f3f6ed;border-color:#d2dcc9}
.contact-panel-title .eyebrow{font-size:0.875rem;letter-spacing:.04em;color:#465e34}
.contact-panel-title h3{font-size:1.8125rem;font-weight:750;line-height:1.3}
.contact-information .contact-detail{gap:18px}.contact-information .contact-detail span{font-size:0.9375rem;font-weight:700;color:#465e34;letter-spacing:.03em}
.contact-information .contact-detail strong{font-size:1.25rem;font-weight:500;color:#263f34;line-height:1.6}
.contact-information .pending-data{font-size:1.0625rem;line-height:1.7;color:#4c5e43}
/* Hero aceito, com mais força tipográfica e sem alterar a fotografia pastoral. */
body .pastoral-hero h1{font-size:clamp(3.5rem,5.2vw,4.875rem);font-weight:800;line-height:1.04;letter-spacing:-.035em}
body .pastoral-hero h1 em{font-weight:800;line-height:1.12;color:#f0d997;letter-spacing:inherit}
.pastoral-hero .pastoral-copy>.pastoral-tagline{font:500 1.625rem/1.5 var(--sans);letter-spacing:0}
.pastoral-hero .pastoral-copy>.eyebrow{font-size:0.9375rem;letter-spacing:.04em}
.pastoral-hero .cream-button{font-size:1.25rem;font-weight:750;border-radius:12px;min-height:62px}
.pastoral-hero .hero-secondary{font-size:1.1875rem;font-weight:650;min-height:52px;display:inline-flex;align-items:center}
.pastoral-hero .church-year-label b{font:800 2.625rem var(--sans);letter-spacing:-.04em}
.pastoral-hero .church-year-label span{font-size:1rem;line-height:1.4;color:#f0e7d2}
.pastoral-hero .church-location-tag>span{font-size:1.0625rem}.pastoral-hero .church-location-tag b{font-size:0.9375rem;color:#d5e1e9;font-weight:500}
.pastoral-team-note>span{font-size:0.8125rem;letter-spacing:.04em}.pastoral-team-note>p{font-size:1.75rem;font-weight:650}.pastoral-team>figcaption{font-size:0.9375rem;letter-spacing:0;border-radius:7px}
.church-values span{font-size:1.1875rem;font-weight:600;color:#2e4e3b}.church-values .faith-icon{width:42px;height:42px;color:#163f5d}
/* Calendário, formulários e páginas de apoio seguem a mesma leitura. */
.hero h1{font-size:clamp(2.75rem,4.7vw,4.125rem);font-weight:800}.hero .lead,.story-copy{font-size:1.3125rem;color:#4e5f68}
.hero-gift p,.guarantee-mini,.hero-price p,.trust-items>span{font-size:1.125rem;line-height:1.65}.trust-items .icon{width:32px;height:32px;flex:none}
.section-heading h2{font-size:clamp(2.125rem,3.6vw,2.875rem)}.section-heading>p{font-size:1.25rem;color:#4e5f68}
.month-card{min-height:320px;border-radius:16px;border-color:#d6ddd5}.month-card h3{font-size:1.5625rem;font-weight:750}.month-card p{font-size:1.25rem;line-height:1.6}.month-card small{font-size:1.0625rem}
.month-name{font-size:0.9375rem;color:#4d6154;font-weight:700;letter-spacing:.03em}.month-index{font-weight:800;font-size:1.75rem;color:#80601d}
.month-symbol{color:#173f5d;stroke-width:2;}.month-card:first-child .month-symbol{color:#edd391}.month-card:nth-child(3n) .month-symbol{color:#3e6039}
.caption,figcaption,.family-line,.family-line>p,.technical,.technical dl,.dates{font-size:1.0625rem;line-height:1.65}
.gift-art h2{font-size:2.375rem}.gift-art p,.christmas-copy p,.product-copy p,.spec-facts p,.cause-grid p,.check-list li{font-size:1.25rem;line-height:1.7}
.product-copy .eyebrow{font-size:0.875rem;letter-spacing:.04em}.product-copy h3{font-size:1.75rem}.product-art>span{font-size:0.875rem;letter-spacing:0}
.cause-grid h3{font-size:1.75rem;font-weight:750}.cause-number{font-size:1rem}.campaign-intro>p:last-child{font-size:1.3125rem}.campaign-bottom .caption,.campaign-bottom>div>span{font-size:1.125rem}
.offer-section .dates{font-size:1.125rem}.faq-list summary{font-size:1.3125rem;font-weight:700;min-height:56px;line-height:1.5}.faq-list details>p{font-size:1.25rem;line-height:1.7}
.legal-page p,.legal-page li,.order-page .intro,.order-panel p,.privacy-check,.prayer-note{font-size:1.25rem;line-height:1.7}
.choice>span>b{font-size:1.25rem}.choice small,.field-help,.summary-line,.summary-gift,.summary-content .caption{font-size:1.125rem;line-height:1.6}
.choice{min-height:64px}.form-error{font-size:1.1875rem}.summary-total{font-size:1.3125rem}.summary-total strong{font-size:1.75rem}.checkout-layout legend{font-size:1.5625rem}
.footer-brand .brand-wordmark strong{font-size:1.75rem}.footer-top>p{font-size:1.3125rem;font-weight:600}.footer-top>p>span{font-size:1.0625rem}.footer-bottom,.footer-bottom nav{font-size:1.0625rem;line-height:1.65}.footer-bottom nav>a{min-height:48px;display:inline-flex;align-items:center;padding-block:10px}
.mobile-buy b{font-family:var(--sans);font-weight:800}.mobile-buy small{font-size:1rem}
@media(max-width:1200px){
 .site-header .nav{justify-content:space-between;min-height:100px;gap:16px}
 .site-header .church-brand img{width:74px;height:78px}.brand-wordmark strong{font-size:1.6875rem}
 .site-header[data-menu-ready] .menu-toggle{display:flex}
 .site-header[data-menu-ready] .nav nav{display:none;position:absolute;left:20px;right:20px;top:calc(100% - 1px);background:#fffdf8;border:1px solid #cdd8d8;padding:12px;box-shadow:0 15px 30px #062b5020;border-radius:0 0 18px 18px;max-height:calc(100dvh - 120px);overflow:auto;margin:0;z-index:62}
 .site-header[data-menu-ready].menu-open .nav nav{display:grid;grid-template-columns:1fr;gap:5px}
 .site-header[data-menu-ready] .nav nav>a{display:flex;font-size:1.25rem;font-weight:650;min-height:54px;padding:12px 18px;border-radius:10px;white-space:normal;text-decoration:none}
 .site-header .nav nav>a[aria-current=page]:not(.button){background:#eaf0e8;color:#193f33}
 .site-header[data-menu-ready] .nav nav>.button{font-size:1.25rem;margin-top:6px;justify-content:space-between;min-height:60px;padding:15px 18px}
 .reading-preference{display:flex;align-items:center;gap:15px;padding:18px 15px;border-top:1px solid #d2dbd2;margin-top:10px;cursor:pointer;min-height:64px;color:#173f33}
 .reading-preference input{width:27px;height:27px;margin:0;flex:none}.reading-preference>span{font-size:1.25rem;font-weight:700;line-height:1.4}.reading-preference small{display:block;font-size:1rem;font-weight:400;line-height:1.5;margin-top:4px;color:#4e5f50}
 .faith-contact>.container{gap:40px}.faith-ministries .faith-section-head{gap:35px}
 .faith-foundation{flex-wrap:wrap}.faith-foundation>span{flex:none}.faith-foundation>p{flex:1;min-width:140px}
}
@media(max-width:760px){
 html{scroll-padding-top:116px}.container{padding-inline:22px}
 .site-header .nav{min-height:106px;gap:10px;padding-block:10px}
 .site-header .church-brand{gap:10px;flex:1;min-width:0}
 .site-header .church-brand img{width:60px;height:70px}
 .site-header .brand-wordmark strong{font-size:1.625rem;line-height:1.03;max-width:165px;white-space:normal}
 .site-header .brand-wordmark small{font-size:0.6875rem;letter-spacing:.03em}.site-header .brand-wordmark>span{display:none}
 .menu-toggle{min-width:60px;min-height:62px;padding:8px;font-size:1rem}
 .site-header[data-menu-ready] .nav nav{left:16px;right:16px;max-height:calc(100dvh - 116px)}
 .demo-banner{font-size:0.9375rem;padding:9px 20px}.batch-bar{font-size:0.9375rem;letter-spacing:0;line-height:1.55;padding:10px 20px;text-wrap:balance}
 .faith-section{padding:52px 0}.faith-section h2,.section-heading h2,.brand-guide-section h2,.brand-guide-intro h2{font-size:2.125rem;line-height:1.18;letter-spacing:-.025em;text-wrap:pretty}
 .faith-section h2 br,.faith-section-head>p br{display:none}
 .section-kicker{font-size:0.875rem;letter-spacing:.04em;gap:11px;line-height:1.5;margin-bottom:20px;align-items:center}
 .section-kicker .faith-icon{width:31px;height:31px;flex:none}.eyebrow{font-size:0.875rem;letter-spacing:.04em}
 .section-lead,.faith-about-copy>.section-lead{font-size:1.3125rem;line-height:1.7;margin-top:23px}
 .faith-about-copy>.institution-name{font-size:1.0625rem;line-height:1.6}.faith-beliefs h3{font-size:1.4375rem}.faith-beliefs p{font-size:1.25rem;line-height:1.65}
 .faith-beliefs article{padding-block:22px;align-items:flex-start;gap:16px}.faith-beliefs article>.faith-icon{width:52px;height:52px;padding:7px;margin-top:2px}
 .faith-foundation{gap:18px;align-items:center;flex-wrap:nowrap}.faith-foundation strong{font-size:2.4375rem}.faith-foundation small{font-size:0.75rem;max-width:110px}.faith-foundation>p{font-size:1.125rem;line-height:1.6;min-width:0}.faith-foundation>span{padding-right:18px}
 .faith-about-grid{gap:34px}.faith-about-art>img{height:390px;border-top-left-radius:90px;border-bottom-right-radius:20px}.faith-about-art figcaption{font-size:1rem;line-height:1.6}
 .about-verse{padding:20px 17px;gap:12px;left:12px;right:-11px;bottom:58px}.about-verse blockquote{font-size:1.3125rem;line-height:1.5}.about-verse>.faith-icon{width:39px;height:48px}.about-verse cite{font-size:0.875rem;margin-top:10px}
 .church-values>.container{display:grid;grid-template-columns:1fr;gap:20px;padding-block:27px}.church-values span{font-size:1.1875rem;display:flex;gap:15px;align-items:center;line-height:1.4}.church-values .faith-icon{width:39px;height:39px;flex:none}
 .church-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-block:22px;overflow:visible;font-size:1.125rem}
 .church-nav a{background:#f0f4f2;border:1px solid #d4dfda;border-radius:11px;min-height:52px;justify-content:center;padding:10px 8px;white-space:normal;text-align:center;line-height:1.35;font-weight:700}
 .mission-intro .section-lead,.mission-intro blockquote{font-size:1.3125rem;line-height:1.7}.mission-intro cite{font-size:0.9375rem}.mission-art>img{height:auto;max-width:100%;border-radius:20px}.mission-art>span{font-size:0.875rem;margin-top:12px}
 .mission-grid{gap:20px}.mission-card{padding:24px 24px 0;border-radius:18px}.mission-card h3{font-size:1.875rem;line-height:1.2}.mission-card>p{font-size:1.3125rem;line-height:1.65}.mission-symbol{height:92px;margin-block:14px 4px}
 .mission-card-top>span{font-size:0.875rem}.mission-card-top>strong{font-size:2.1875rem}.mission-card-top small{font-size:1.375rem}.mission-card details{font-size:1.25rem;padding-block:11px}.mission-card details ul{font-size:1.25rem}.mission-card-footer{margin-inline:-24px;padding:20px 24px}.mission-card-footer>span{font-size:0.8125rem}.mission-card-footer>b{font-size:1.5625rem}
 .mission-trust{padding:25px 23px;gap:20px;border-radius:18px}.mission-trust-heading{align-items:flex-start}.mission-trust-heading h3{font-size:1.5rem;line-height:1.3}.mission-trust p{font-size:1.25rem;line-height:1.7}.mission-trust .mission-report{font-size:1.1875rem}.mission-trust-heading>.faith-icon{width:42px;height:48px}
 .mission-invitation .eyebrow{font-size:0.875rem}.mission-invitation p{font-size:1.5625rem;line-height:1.35;max-width:none}.mission-invitation .button{font-size:1.25rem;margin-top:23px}
 .faith-section-head{margin-bottom:30px}.faith-section-head>p{font-size:1.3125rem;line-height:1.7;margin-top:23px}
 .faith-schedule{grid-template-columns:1fr;gap:17px}
 .faith-schedule .service-card{display:grid;grid-template-columns:98px minmax(0,1fr);column-gap:20px;padding:24px;align-items:start;border-radius:18px}
 .service-card-top{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin:0}
 .service-card-top>.faith-icon{margin:0;width:49px;height:49px}.service-card-top>span{font-size:1rem;letter-spacing:0}
 .faith-schedule .service-card>strong{grid-column:2;font-size:2.375rem;margin:0 0 9px;line-height:1.15}
 .faith-schedule .service-card>h3{grid-column:2;font-size:1.4375rem;line-height:1.25;letter-spacing:0}
 .faith-schedule .service-card>p{grid-column:1/-1;font-size:1.25rem;line-height:1.6;margin-top:20px}
 .service-card-bottom{grid-column:1/-1;font-size:1rem;margin-top:19px;padding-top:15px}
 .first-visit{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:24px;align-items:start}.first-visit>div{min-width:0}.first-visit>.faith-icon{width:44px;height:44px}.first-visit h3{font-size:1.5rem;line-height:1.3}.first-visit p{font-size:1.25rem;line-height:1.65}.first-visit .text-link{grid-column:1/-1;font-size:1.25rem;margin:0;padding:12px 0;min-height:52px}
 .section-demo-note{font-size:1.0625rem;line-height:1.7}
 .faith-ministries .faith-section-head{display:block}.faith-ministries .faith-section-head>div>p:last-child{font-size:1.3125rem;margin-top:23px;line-height:1.7}
 .community-art{margin-top:27px;max-width:none}.community-art img{border-radius:20px;aspect-ratio:3/2}.community-art figcaption{font-size:1rem}
 .ministry-grid{grid-template-columns:1fr;gap:16px}.ministry-card{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:18px;padding:24px;border-radius:18px;align-items:start}
 .ministry-card>.faith-icon{grid-column:1;grid-row:1/3;width:64px;height:64px;padding:8px;margin:0}
 .ministry-card>h3{grid-column:2;font-size:1.625rem;line-height:1.2;margin:0;letter-spacing:-.02em}
 .ministry-card>p{grid-column:2;font-size:1.25rem;line-height:1.6;margin-top:10px;max-width:none}
 .ministry-card>span{grid-column:1/-1;margin-top:21px;padding-top:13px;min-height:49px;font-size:1.1875rem;font-weight:700}.ministry-card:before{width:130px;height:130px;right:-65px;top:-65px}
 .faith-prayer{padding:54px 0;background:#062b50}.faith-prayer>img{opacity:.32;object-position:75% center}.faith-prayer:before{background:linear-gradient(90deg,#05294ff5,#062b50b5)}
 .faith-prayer h2{font-size:2.3125rem;line-height:1.17;max-width:none;letter-spacing:-.025em;text-wrap:pretty}.prayer-copy>.eyebrow{font-size:0.875rem;max-width:none;letter-spacing:.03em;line-height:1.6}.prayer-copy>p:not(.eyebrow){font-size:1.3125rem;line-height:1.7;max-width:none;margin-top:25px}.prayer-copy .button{font-size:1.25rem;min-height:64px;padding:18px 21px;gap:15px}.prayer-copy blockquote{font-size:1.375rem}.prayer-copy cite{font-size:0.9375rem}
 .faith-contact>.container{gap:30px}.contact-intro>p:not(.eyebrow){font-size:1.3125rem;line-height:1.7}.contact-brand-art{min-height:260px;padding:25px 20px;border-radius:20px}.contact-brand-art>img{width:280px;height:185px}.contact-brand-art>span{font-size:0.875rem;letter-spacing:.02em}
 .contact-information{padding:26px 23px}.contact-panel-title .eyebrow{font-size:0.875rem;letter-spacing:.03em}.contact-panel-title h3{font-size:1.8125rem;line-height:1.25}.contact-information .contact-detail{gap:15px;padding:23px 0}.contact-information .contact-detail>.faith-icon{width:32px;height:32px}.contact-information .contact-detail span{font-size:0.9375rem;letter-spacing:.025em}.contact-information .contact-detail strong{font-size:1.25rem;line-height:1.6;font-weight:500}.contact-information .pending-data{font-size:1.0625rem;line-height:1.7;padding:17px}
 /* Fotografia inteira, título legível e CTA com área de toque generosa. */
 .pastoral-hero-grid{padding-top:32px;padding-bottom:30px;min-height:0;grid-template-columns:minmax(0,1fr)}
 .pastoral-hero-grid>*{min-width:0}
 body .pastoral-hero h1{font-size:clamp(2.25rem,13.6vw,3.625rem);font-weight:800;line-height:1.01;letter-spacing:-.03em}
 body .pastoral-hero h1 em{line-height:1.1;margin-top:2px;font-weight:800}
 .pastoral-hero .pastoral-copy>.eyebrow{font-size:0.875rem;letter-spacing:.03em;line-height:1.6;margin-bottom:20px}
 .pastoral-hero .pastoral-copy>.pastoral-tagline{font:500 1.4375rem/1.5 var(--sans);letter-spacing:0;margin-top:20px}
 .pastoral-team{height:auto;aspect-ratio:1.8;margin:0 -10px;min-height:0}.pastoral-team img{width:100%;height:auto;max-width:100%;bottom:0;right:0}.pastoral-team>figcaption{font-size:0.9375rem;padding:8px 11px;right:10px;bottom:5px}
 .pastoral-hero .church-hero-actions{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:12px;margin-top:23px}.pastoral-hero .cream-button{width:100%;min-width:0;font-size:1.3125rem;min-height:64px;justify-content:space-between;padding:17px 22px;gap:14px}.pastoral-hero .hero-secondary{font-size:1.25rem;justify-content:space-between;min-height:54px;padding-block:12px;white-space:normal;gap:14px}.pastoral-hero .hero-secondary>span{flex:none}
 .pastoral-meta{gap:16px;margin-top:23px;padding-top:23px;align-items:center}.pastoral-hero .church-year-label b{font-size:2.625rem}.pastoral-hero .church-year-label span{font-size:1rem}.pastoral-hero .church-location-tag{padding-left:16px}.pastoral-hero .church-location-tag>span{font-size:1rem}.pastoral-hero .church-location-tag b{display:none}
 /* A largura de leitura tem prioridade sobre as grades decorativas. */
 .hero h1{font-size:2.8125rem;line-height:1.07;letter-spacing:-.035em}.hero h1 br:last-child{display:initial}.hero .lead,.story-copy{font-size:1.3125rem;line-height:1.7}
 .hero .eyebrow{font-size:0.875rem;letter-spacing:.03em;line-height:1.5}.hero-price>span{font-size:0.9375rem;letter-spacing:.03em}.hero .guarantee-mini,.hero-gift p,.trust-items>span{font-size:1.125rem;line-height:1.65}
 .hero-cta,.offer-section .button,.final-cta .button{font-size:1.25rem;min-height:64px;line-height:1.4}.hero-visual figcaption,figcaption,.caption{font-size:1.0625rem;line-height:1.6}
 .trust-items{grid-template-columns:1fr;gap:19px}.trust-items>span{gap:14px;align-items:center}.trust-items .icon{width:33px;height:33px}
 .month-grid{grid-template-columns:1fr;gap:17px}.month-card{min-height:0;display:grid;grid-template-columns:66px minmax(0,1fr);column-gap:19px;padding:24px;border-radius:18px}
 .month-card .month-top{grid-column:1/-1;margin-bottom:22px;padding-bottom:14px}.month-name{font-size:1.0625rem}.month-index{font-size:1.75rem}
 .month-symbol{grid-column:1;grid-row:2/5;width:66px;height:66px;padding:9px;margin:0;border-radius:15px;stroke-width:2}
 .month-card h3{grid-column:2;font-size:1.5625rem;line-height:1.25;margin:0}.month-card p{grid-column:2;font-size:1.25rem;line-height:1.6;margin-top:10px}.month-card small{grid-column:2;font-size:1.0625rem;margin-top:10px}
 .family-line{font-size:1.125rem;line-height:1.6}.family-line>p{font-size:1.25rem}.section-heading>p{font-size:1.3125rem;line-height:1.7}.months-section{padding-block:52px}
 .spec-facts{display:grid;grid-template-columns:1fr;gap:20px}.spec-facts>div{display:flex;gap:20px;align-items:center}.spec-facts strong{font-size:2.25rem;min-width:95px}.spec-facts p{font-size:1.25rem;line-height:1.5}.check-list li{font-size:1.25rem;line-height:1.65}.technical summary{font-size:1.25rem;min-height:52px;line-height:1.5}.technical dl{font-size:1.125rem;line-height:1.7}
 .gift-art{align-items:flex-start;gap:18px}.gift-art>svg{width:40px;height:150px;flex:none}.gift-art h2{font-size:2rem}.gift-art .eyebrow{font-size:0.875rem}.gift-art p,.christmas-copy p{font-size:1.25rem;line-height:1.7}.gift-art p br{display:none}.christmas-copy h3{font-size:2rem}
 .product{display:block;border-radius:18px}.product-art{min-height:190px;height:auto;padding:24px}.product-art svg{height:140px}.product-art>span{font-size:0.875rem}.product-copy{padding:26px}.product-copy .eyebrow{font-size:0.875rem;letter-spacing:.03em}.product-copy h3{font-size:1.8125rem}.product-copy p{font-size:1.25rem;line-height:1.65}.product-copy b{font-size:1.9375rem}
 .campaign-intro h2{font-size:2.1875rem;line-height:1.2}.campaign-intro>p:last-child{font-size:1.3125rem;line-height:1.7}.cause-grid article{padding:26px;border-radius:18px}.cause-grid h3{font-size:1.75rem}.cause-grid p{font-size:1.25rem;line-height:1.7}.cause-number{font-size:1rem}.campaign-bottom .caption,.campaign-bottom>div>span{font-size:1.125rem;line-height:1.65}
 .dates,.offer-section .dates{font-size:1.125rem;line-height:1.6;gap:18px}.dates>div{display:block}.offer-price{font-size:3.375rem}.faq-list summary{font-size:1.3125rem;min-height:56px;line-height:1.5;padding-right:32px}.faq-list details>p{font-size:1.25rem;line-height:1.7}.final-cta h2{font-size:2.1875rem;line-height:1.2}
 .footer{padding-bottom:35px}.footer .brand-wordmark strong{font-size:1.6875rem}.footer .brand-wordmark small{font-size:0.75rem}.footer .brand-wordmark>span{font-size:0.75rem;letter-spacing:0}.footer-brand img{width:70px;height:85px}.footer .church-brand{gap:12px;align-items:center}.footer-top>p{font-size:1.375rem}.footer-top>p>span{font-size:1.0625rem}.footer-bottom,.footer-bottom nav{font-size:1.125rem;line-height:1.65}.footer-bottom nav{display:grid;grid-template-columns:1fr 1fr;gap:3px 16px;width:100%}.footer-bottom nav>a{min-height:52px;padding-block:12px;line-height:1.4}
 body[data-page-view=home] .footer{padding-bottom:125px}
 .mobile-buy{padding:13px 20px calc(13px + env(safe-area-inset-bottom));gap:14px;min-height:88px}.mobile-buy b{font-size:26px;white-space:nowrap}.mobile-buy small{font-size:16px;line-height:1.4}.mobile-buy .button{font-size:19px;min-height:56px;padding:14px 18px;white-space:nowrap;gap:12px}
 .whatsapp-float{display:none}
 .checkout-layout .order-summary{display:block;border-radius:18px}.checkout-layout .order-summary>img{height:185px;width:100%;min-height:0;object-position:center 40%}.summary-content{padding:24px}.summary-content h2{font-size:1.75rem;line-height:1.25}.summary-line{font-size:1.1875rem;line-height:1.6;gap:16px}.summary-content .summary-gift{font-size:1.125rem}.summary-total{font-size:1.3125rem;gap:15px}.summary-total strong{font-size:1.8125rem}.summary-content .eyebrow{display:none}.checkout-layout .page-title,.page-title,.order-page h1,.legal-page h1{font-size:2.375rem;line-height:1.15}
 .checkout-layout legend{font-size:1.5625rem}.choice>span>b{font-size:1.3125rem;line-height:1.4}.choice small,.field-help{font-size:1.125rem;line-height:1.65}.choice.bump{padding:22px 18px;gap:14px}.bump>svg{display:none}.donation-options{flex-wrap:wrap;gap:12px}.donation-options>button{font-size:1.25rem;min-height:56px;min-width:100px}.address-grid{grid-template-columns:1fr}.form-error{font-size:1.25rem}.privacy-check{font-size:1.1875rem;line-height:1.65}.order-panel{padding:25px;border-radius:18px}.order-panel h2{font-size:1.8125rem}.order-page .button{font-size:1.25rem;min-height:64px}.legal-page p,.legal-page li{font-size:1.3125rem;line-height:1.7}.legal-page h2{font-size:1.8125rem}.pending-data{font-size:1.125rem;line-height:1.65}
 .brand-guide-note,.brand-guide-intro p,.brand-guide-section p,.identity-hero>.container>p:not(.eyebrow){font-size:1.25rem;line-height:1.7}.font-specimen h3{font-size:2rem}.palette-grid{grid-template-columns:1fr}.palette-card p{font-size:1.1875rem}.brand-guide-section{padding-block:45px}
 [data-large-text=true] .faith-schedule .service-card{display:flex;flex-direction:column;gap:0}
 [data-large-text=true] .service-card-top{flex-direction:row;align-items:center;gap:18px;margin-bottom:18px}
 [data-large-text=true] .ministry-card,[data-large-text=true] .month-card{display:block}
 [data-large-text=true] .ministry-card>.faith-icon,[data-large-text=true] .month-symbol{margin-bottom:19px}
 [data-large-text=true] .first-visit{display:block}
 [data-large-text=true] .first-visit>.faith-icon{margin-bottom:18px}
 [data-large-text=true] .mobile-buy small{display:none}
}
@media(max-width:360px){
 .container{padding-inline:18px}.site-header .nav{gap:8px}.site-header .church-brand{gap:7px}.site-header .church-brand img{width:50px;height:64px}.site-header .brand-wordmark strong{font-size:1.5rem;max-width:145px}.site-header .brand-wordmark small{font-size:0.625rem}.menu-toggle{min-width:55px;padding:7px;font-size:0.9375rem}
 .faith-section h2,.section-heading h2{font-size:2rem}.faith-schedule .service-card{grid-template-columns:86px minmax(0,1fr);gap:14px;padding:22px}.faith-schedule .service-card>strong{font-size:2.1875rem}.faith-schedule .service-card>h3{font-size:1.375rem}
 .ministry-card{grid-template-columns:55px minmax(0,1fr);gap:15px;padding:22px}.ministry-card>.faith-icon{width:55px;height:55px;padding:6px}.ministry-card h3{font-size:1.5625rem}.month-card{grid-template-columns:55px minmax(0,1fr);column-gap:16px;padding:22px}.month-symbol{width:55px;height:55px;padding:7px}
 .faith-prayer h2{font-size:2.1875rem}.prayer-copy .button{font-size:1.1875rem;padding-inline:18px}.pastoral-meta{gap:13px}.pastoral-hero .church-location-tag{padding-left:13px}.pastoral-hero .church-year-label span{font-size:0.9375rem}.pastoral-hero .church-location-tag>span{font-size:1rem}
 .contact-information{padding-inline:21px}.contact-information .contact-detail{gap:12px}.contact-information .contact-detail strong{font-size:1.25rem}.footer .brand-wordmark strong{font-size:1.5625rem}.mobile-buy{padding-inline:17px;gap:10px}.mobile-buy .button{padding-inline:17px}.mobile-buy small{max-width:150px}
}
.palette-color.slate{background:#4e5f68}

/* Página de vendas (05/11): blocos lp-*. Texto de leitura em 19px e nada abaixo de 15px, porque o público tem 60+.
   No celular a foto vem logo depois do título: a 1ª imagem decide em segundos (docs da MaxLar, PAGINA-DE-VENDAS). */
[data-view=home] h2{font:700 clamp(28px,3.4vw,42px)/1.22 var(--serif);letter-spacing:-.03em;color:var(--brand-navy,#062b50);margin:6px 0 22px;max-width:22ch}
[data-view=home] .eyebrow{font-size:13px;letter-spacing:.12em;margin:0}
[data-view=home] p{font-size:19px;line-height:1.7}
[data-view=home] .caption{font-size:15px;color:#5f6a70}
[data-view=home] figure{margin:0}
[data-view=home] figure img{width:100%;height:auto;display:block;border-radius:14px;box-shadow:0 14px 34px #14365a14}
[data-view=home] figcaption{font-size:15px;color:#5f6a70;margin-top:10px;line-height:1.5}
.lp-faixa{background:var(--brand-surface,#f4f1e7);border-block:1px solid var(--line)}
.lp-duas{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding-block:80px}
.lp-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"head img" "body img";column-gap:64px;padding-block:44px 64px;align-items:start}
.lp-hero-head{grid-area:head}.lp-hero-img{grid-area:img;position:sticky;top:130px}.lp-hero-body{grid-area:body}
.lp-hero h1{font:700 clamp(34px,4.1vw,54px)/1.16 var(--serif);letter-spacing:-.035em;color:var(--brand-navy,#062b50);margin:12px 0 22px}
.lp-hero h1 em{font-style:normal;color:#8a6a25}
.lp-fichas{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:12px}
.lp-fichas li{position:relative;padding-left:34px;font-size:19px;line-height:1.5;color:#2c4155}
.lp-fichas li:before{content:'';position:absolute;left:2px;top:6px;width:20px;height:20px;border-radius:50%;background:#5e7138 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.lp-preco{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:0 0 16px}
.lp-preco strong{font:800 52px/1 var(--sans);letter-spacing:-.05em;color:var(--brand-navy,#062b50)}
.lp-preco strong small{font-size:.55em;font-weight:700}
.lp-preco span{font-size:17px;color:#4e5f68}
.button.lp-cta{display:block;line-height:1.35;padding-block:19px;width:100%;max-width:520px;min-height:64px;font-size:20px;border-radius:12px;background:#1f6b45;border-color:#1f6b45;text-align:center}
.button.lp-cta:hover{background:#18573a;border-color:#18573a}
.lp-garantias{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;max-width:520px}
.lp-garantias li{display:flex;gap:12px;align-items:flex-start;font-size:17px;line-height:1.45;color:#34495c}
.lp-garantias .icon{flex:none;width:22px;height:22px;margin-top:1px;color:#8a6a25;stroke:#8a6a25}
.lp-ajuda{font-size:17px!important;margin-top:18px;color:#4e5f68}
.lp-ajuda a{color:#1f6b45;font-weight:700}
.lp-sob-botao{font-size:16px!important;color:#4e5f68;margin-top:12px;max-width:520px}
.lp-numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 22px}
.lp-numeros>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 14px}
.lp-numeros strong{display:block;font:800 30px/1.1 var(--sans);letter-spacing:-.04em;color:var(--brand-navy,#062b50)}
.lp-numeros p{font-size:15px!important;line-height:1.4!important;margin:6px 0 0;color:#4e5f68}
.lp-itens{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:12px}
.lp-itens li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:grid;gap:2px}
.lp-itens b{font-size:19px;color:var(--brand-navy,#062b50)}.lp-itens span{font-size:16px;color:#4e5f68}
.lp-ficha{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0 0 26px;font-size:16px;line-height:1.5}
.lp-ficha dt{font-weight:700;color:#34495c}.lp-ficha dd{margin:0;color:#4e5f68}
.lp-obras{padding-block:80px}
.lp-obras h2{color:#fff!important}
.lp-obras-lista{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 26px}
.lp-obras-lista>div{border:1px solid #4d6681;border-radius:12px;padding:20px;display:grid;gap:6px}
.lp-obras-lista b{font:800 30px/1 var(--sans);color:#e5cb82}.lp-obras-lista span{font-size:17px;line-height:1.5;color:#dbe4ee}
.lp-meta{max-width:520px;margin-bottom:18px}.lp-meta p{color:#dbe4ee}.lp-meta strong{font-size:28px;color:#fff}.lp-meta progress{width:100%;height:10px}
.lp-meta .caption{color:#bccbdf!important}
.lp-link-claro{color:#e5cb82!important;font-size:17px;font-weight:700}
.lp-faq{padding-block:80px;max-width:860px}
.lp-faq .faq-list summary{font-size:19px}
.lp-faq .faq-list details>p{font-size:18px}
.lp-mais>summary{color:#1f6b45}
.lp-mais>details{margin-left:4px}
.lp-final>.container{padding-block:64px;display:grid;justify-items:center;text-align:center}
.lp-final h2{margin-inline:auto}
.lp-final .lp-preco{justify-content:center}
@media(max-width:900px){
  .lp-hero{grid-template-columns:1fr;grid-template-areas:"head" "img" "body";padding-block:22px 44px}
  .lp-hero-img{position:static;margin:0 0 22px}
  .lp-hero h1{font-size:31px;line-height:1.2;margin:8px 0 18px}
  .lp-duas{grid-template-columns:1fr;gap:28px;padding-block:52px}
  .lp-leitura figure{order:2}
  .lp-caixa figure{order:-1}
  .lp-numeros{grid-template-columns:1fr 1fr 1fr;gap:8px}.lp-numeros>div{padding:12px 10px}.lp-numeros strong{font-size:22px}
  .lp-obras,.lp-faq{padding-block:52px}
  .lp-obras-lista{grid-template-columns:1fr}
  .lp-preco strong{font-size:46px}
  [data-view=home] h2{font-size:27px}
}
@media(max-width:370px){.lp-numeros{grid-template-columns:1fr}}
.lp-nw{white-space:nowrap}
.mission-grid.mission-grid-one{grid-template-columns:1fr;max-width:640px}
/* checkout em 3 etapas (Entrega > Contato > Pagamento): cada etapa é um cartão; a aberta ganha destaque */
.checkout-layout{--co-azul:#062b50;--co-ok:#2f6b3f;--co-ok-fundo:#eaf3ec;--co-linha:#e1ddcf;--co-campo:#bfcddc;--co-suave:#f4f8fc;--co-texto2:#56636d}
.checkout-layout .page-title+p{margin-top:10px}
.co-mini{display:none}
.co-passos{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0 8px;padding:0}
.co-passos li{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:6px;border-radius:999px;background:#eef1f4;color:#5d6a76;font-size:15px;font-weight:700;line-height:1.2}
.co-passos li::before{content:attr(data-passo);display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:#fff;font-size:13px}
.co-passos li[data-estado=atual]{background:var(--co-azul);color:#fff}
.co-passos li[data-estado=atual]::before{color:var(--co-azul)}
.co-passos li[data-estado=feito]{background:var(--co-ok-fundo);color:var(--co-ok)}
.co-passos li[data-estado=feito]::before{content:"✓";background:var(--co-ok);color:#fff}
.co-barra{height:4px;background:#e4eaf2;border-radius:4px;overflow:hidden;margin:0}
.co-barra span{display:block;height:100%;width:0;background:var(--co-ok);transition:width .3s}
#form-progress{font-size:15px;color:var(--co-texto2);margin:8px 0 0}

.checkout-layout .co-etapa{background:#fff;border:1px solid var(--co-linha);border-radius:16px;padding:20px 24px 24px;margin:14px 0 0;transition:border-color .2s,box-shadow .2s}
.checkout-layout .co-etapa>legend{float:left;width:100%;display:flex;align-items:center;gap:12px;padding:0;margin:0;font:700 22px/1.3 var(--sans);letter-spacing:-.01em;color:var(--co-azul)}
.checkout-layout .co-etapa>legend+*{clear:both}
.checkout-layout .co-etapa>legend>span{width:34px;height:34px;margin:0;background:var(--co-azul);color:#fff;font:700 16px var(--sans)}
.co-etapa[data-estado=aberta]{border-color:#9fb4ca;box-shadow:0 10px 30px #062b5014}
.co-etapa[data-estado=feita]>legend>span{font-size:0;background:var(--co-ok)}
.co-etapa[data-estado=feita]>legend>span::after{content:"✓";font-size:17px}
.co-etapa[data-estado=futura]{background:#f8f7f2;box-shadow:none}
.co-etapa[data-estado=futura]>legend{color:#7a8696}
.co-etapa[data-estado=futura]>legend>span{background:#e3e6ea;color:#5d6a76}
.co-corpo{clear:both;padding-top:16px}
.co-corpo>label:first-child{margin-top:0}
.co-feita{clear:both;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}
.co-feita[hidden]{display:none}
.co-resumo{margin:0;font-size:16px;line-height:1.5;color:#33465c;min-width:0;overflow-wrap:anywhere}

.checkout-layout label{margin-top:18px}
.checkout-layout .co-corpo input:not([type=checkbox]):not([type=radio]){min-height:56px;border:1.5px solid var(--co-campo);border-radius:10px;padding:12px 14px;background:#fff;transition:border-color .15s,box-shadow .15s}
.checkout-layout .co-corpo input:not([type=checkbox]):not([type=radio]):focus{outline:none;border-color:var(--co-azul);box-shadow:0 0 0 3px #062b5026}
.checkout-layout .co-corpo input[aria-invalid=true]{border-color:#a02f2f}
#shipping-cep{max-width:240px;font-variant-numeric:tabular-nums;letter-spacing:.03em}
#shipping-result:empty{display:none}
.co-frete{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;border-radius:12px;background:var(--co-ok-fundo);color:#24593a;font-weight:700;line-height:1.4}
.co-frete::before{content:"";flex:none;width:24px;height:24px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 4h13v12H1zM14 9h4l4 4v3h-8'/%3E%3Ccircle cx='6' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 4h13v12H1zM14 9h4l4 4v3h-8'/%3E%3Ccircle cx='6' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E") center/contain no-repeat}

.co-endereco{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;margin:16px 0 4px;padding:14px;border:1.5px solid #cfdcea;border-radius:14px;background:var(--co-suave)}
.co-endereco[hidden]{display:none}
.co-endereco>.icon{width:44px;height:44px;padding:10px;border-radius:50%;background:#fff;color:var(--co-azul);stroke:var(--co-azul);stroke-width:2;box-shadow:0 1px 3px #062b501f}
.co-endereco p{margin:0;display:flex;flex-direction:column;gap:2px;min-width:0}
.co-endereco small{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--co-ok);letter-spacing:.01em}
.co-endereco small::before{content:"✓";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--co-ok);color:#fff;font-size:11px}
.co-endereco strong{font-size:18px;line-height:1.35;color:var(--co-azul);overflow-wrap:anywhere}
.co-endereco span{font-size:16px;line-height:1.45;color:var(--co-texto2)}
.co-editar{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:1.5px solid #bccbdc;border-radius:999px;background:#fff;color:var(--co-azul);font:700 15px var(--sans);cursor:pointer;white-space:nowrap}
.co-editar:hover{border-color:var(--co-azul)}
.co-editar:focus-visible{outline:3px solid #062b5040;outline-offset:2px}
.co-editar::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E") center/contain no-repeat}
.checkout-layout .co-numero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 14px}
.co-num{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.co-num>input{flex:1 1 90px;min-width:90px}
.co-check{display:flex;align-items:center;gap:8px;margin:0!important;min-height:44px;font-weight:500;white-space:nowrap;cursor:pointer}
.co-check input{width:24px;height:24px;min-height:0;margin:0}

.co-dominios{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.co-dominios[hidden]{display:none}
.co-dominios button{min-height:40px;padding:6px 14px;border:1px solid #c9d6e4;border-radius:999px;background:#fff;font-size:15px;color:var(--co-azul);cursor:pointer}
.co-sugestao{font-size:15px;margin:8px 0}

.co-falta{margin:0;font-size:17px;color:var(--co-texto2)}
.co-sub{margin:20px 0 0;font-weight:700;color:var(--co-azul)}
.co-sub small{font-weight:400;color:var(--co-texto2)}
.checkout-layout .choice.bump{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:14px;margin-top:10px;padding:14px;border:1.5px solid #dcd6c6;border-radius:14px;background:#fff;min-height:0}
.checkout-layout .choice.bump:has(input:checked){border-color:var(--brand-olive,#6b7f3a);background:#f3f6ec}
.checkout-layout .choice.bump>input{margin:0}
.checkout-layout .choice.bump>span>b{display:block;font-size:18px;line-height:1.3;color:var(--co-azul)}
.checkout-layout .choice.bump small{margin-top:3px;font-size:15px;line-height:1.45}
.checkout-layout .choice.bump strong{display:inline-block;margin-top:6px;font-size:17px;color:var(--co-azul)}
.checkout-layout .choice.bump:has(input:checked) strong::after{content:" · no pacote";font-weight:600;color:var(--co-ok)}
.co-corpo>.caption{margin-top:8px}
.co-oferta{margin-top:22px;color:var(--co-azul)}
.checkout-layout .donation-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.checkout-layout .donation-options>button{min-height:52px;min-width:0;border:1.5px solid #c5d3e4;border-radius:12px;background:#fff;color:var(--co-azul);font-weight:700;cursor:pointer}
.checkout-layout .donation-options>button[aria-pressed=true]{background:#566c34;border-color:#566c34;color:#fff}
.checkout-layout .donation-options>button[aria-pressed=true]::before{content:"✓ "}
.checkout-layout .pix-method{display:flex;align-items:flex-start;gap:14px;margin:22px 0 0;padding:16px 18px;border:1.5px solid #cfdcea;border-radius:14px;background:var(--co-suave)}
.checkout-layout .pix-method .icon{width:26px;height:26px;margin-top:2px;color:var(--co-azul);stroke:var(--co-azul)}
.checkout-layout .pix-method b{color:var(--co-azul)}
.checkout-layout .pix-method p{margin:2px 0 0;font-size:16px;line-height:1.5}
.co-etapa .button.full{justify-content:center;text-align:center;gap:10px;margin-top:20px;border-radius:12px}
.co-etapa .button.full[data-continuar]::after{content:"→";font-size:1.2em;line-height:1}
#pay-button{min-height:64px;font-size:20px}
#pay-button::before{content:"";width:20px;height:20px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center/contain no-repeat}
.co-centro{text-align:center;margin-top:10px}
.checkout-layout .guarantee-mini{max-width:none;display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;border-radius:12px;background:#f6f3eb;color:#3f4b54;font-size:16px;line-height:1.5}
.checkout-layout .guarantee-mini::before{content:"";flex:none;width:22px;height:22px;background:var(--brand-olive,#6b7f3a);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2 4 5v6c0 5 3.5 9.5 8 11 4.5-1.5 8-6 8-11V5z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2 4 5v6c0 5 3.5 9.5 8 11 4.5-1.5 8-6 8-11V5z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center/contain no-repeat}
.checkout-layout .order-summary{border-radius:16px}

@media (max-width:860px){
 .checkout-layout{display:flex;flex-direction:column}.checkout-layout>div{order:1;min-width:0}.checkout-layout>.order-summary{order:2;margin-top:18px}.checkout-layout>.order-summary>img{display:none}
 .co-mini{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:16px;padding:10px 14px 10px 10px;border:1px solid var(--co-linha);border-radius:14px;background:#f6f3eb}
 .co-mini img{width:56px;height:56px;object-fit:cover;border-radius:10px}
 .co-mini p{margin:0;display:flex;flex-direction:column;line-height:1.3;min-width:0}
 .co-mini b{font-size:17px;color:var(--co-azul)}
 .co-mini small{font-size:15px;color:var(--co-texto2)}
 .co-mini strong{font-size:20px;color:var(--co-azul);white-space:nowrap}
}
@media (max-width:760px){
 .checkout-layout .page-title{font-size:2rem;line-height:1.2}
 .checkout-layout .co-etapa{padding:18px 16px 20px;border-radius:14px}
 .checkout-layout .co-etapa>legend{font-size:1.375rem}
 #shipping-cep{max-width:none}
 .checkout-layout .co-numero{grid-template-columns:1fr}
 .co-endereco{grid-template-columns:auto minmax(0,1fr);gap:12px}
 .co-endereco>.icon{width:40px;height:40px;padding:9px}
 .co-editar{grid-column:2;justify-self:start;margin-top:-2px}
 .checkout-layout .choice.bump{gap:12px;padding:12px}
 .checkout-layout .donation-options>button{font-size:1.125rem}
}
@media (max-width:400px){
 .co-passos{gap:6px}.co-passos li{font-size:14px;gap:6px;padding:6px 4px}.co-passos li::before{width:20px;height:20px;font-size:12px}
}
@media (prefers-reduced-motion:reduce){.co-barra span,.checkout-layout .co-etapa{transition:none}}

/* Fotos do checkout e pós-compra: carregadas também sem a antiga coleção da home. */
.bump>img.bump-product-photo{width:88px;height:88px;object-fit:cover;flex:none;border-radius:8px}
img.upsell-art{display:block;width:min(100%,540px);height:auto;object-fit:contain;margin:25px auto;border-radius:12px}
.bump>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){ .bump>img.bump-product-photo{width:68px;height:76px}
}
