[hidden]{display:none!important}
:root{
  --mata:#1f3a2e; --verde:#2f7a4f; --verde-cl:#e3efe6;
  --vinho:#9b1c2c; --vinho-esc:#7a1422;
  --areia:#f4ede1; --creme:#fbf8f2; --terra:#8a6a4a;
  --tinta:#1d2420; --cinza:#5d665f; --linha:#e2dacb;
  --raio:18px; --sombra:0 10px 30px -12px rgba(31,58,46,.25);
  --serif:"Fraunces",Georgia,serif; --sans:"DM Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;font-family:var(--sans);color:var(--tinta);background:var(--creme);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--verde)}
h1,h2,h3{font-family:var(--serif);line-height:1.15;margin:0 0 .5em;color:var(--mata);font-weight:700}
h1{font-size:clamp(2.2rem,5.5vw,3.8rem);letter-spacing:-.01em}
h1 em{font-style:italic;color:var(--vinho);font-weight:500}
h2{font-size:clamp(1.7rem,3.6vw,2.6rem);max-width:22ch}
h3{font-size:1.2rem}
p{margin:0 0 1em}
.wrap{width:min(1160px,100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;z-index:99}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--vinho);outline-offset:3px;border-radius:6px}
.lead{font-size:1.15rem;color:var(--cinza);max-width:58ch}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;padding:.9em 1.5em;border-radius:999px;font:700 .98rem var(--sans);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .2s,box-shadow .2s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn--vinho{background:var(--vinho);color:#fff;box-shadow:0 8px 20px -10px var(--vinho)}
.btn--vinho:hover{background:var(--vinho-esc)}
.btn--verde{background:var(--verde);color:#fff}
.btn--verde:hover{background:var(--mata)}
.btn--linha{border-color:var(--mata);color:var(--mata);background:transparent}
.btn--linha:hover{background:var(--mata);color:#fff}
.btn--branco{background:#fff;color:var(--vinho)}
.btn--sm{padding:.65em 1.15em;font-size:.9rem}
.btn--bloco{width:100%}

/* topo */
.topo{position:sticky;top:0;z-index:50;background:rgba(251,248,242,.92);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.topo.is-rolado{border-color:var(--linha);box-shadow:0 4px 20px -14px rgba(0,0,0,.3)}
.topo__in{display:flex;align-items:center;gap:24px;height:72px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--mata);font-family:var(--serif);font-size:1.15rem;white-space:nowrap}
.marca strong{color:var(--vinho)}
.menu{display:flex;gap:22px;margin-left:auto}
.menu a{color:var(--tinta);text-decoration:none;font-weight:500;font-size:.95rem}
.menu a:hover{color:var(--vinho)}
.menu-btn{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}
.menu-btn span{display:block;height:2px;background:var(--mata);margin:6px 0;transition:.2s}
@media (max-width:1060px){
  .menu{position:fixed;inset:72px 0 auto 0;flex-direction:column;gap:0;background:var(--creme);padding:8px 20px 20px;border-bottom:1px solid var(--linha);transform:translateY(-120%);transition:transform .25s;z-index:-1}
  .menu.is-aberto{transform:none}
  .menu a{padding:14px 0;border-bottom:1px solid var(--linha);font-size:1.05rem}
  .menu-btn{display:block}
  .topo__cta{margin-left:auto}
}
@media (max-width:520px){.topo__cta{display:none}.menu-btn{margin-left:auto}.marca{font-size:1.02rem}}

/* hero */
.hero{padding:56px 0 72px;background:radial-gradient(1200px 500px at 85% 10%,var(--verde-cl),transparent 60%),var(--creme);overflow:hidden}
.hero__in{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.selo{display:inline-block;background:#fff;border:1px solid var(--linha);padding:.4em .9em;border-radius:999px;font-size:.88rem;color:var(--mata);font-weight:500}
.hero__btns{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 20px}
.hero__nota{font-family:var(--serif);font-style:italic;color:var(--terra);border-left:3px solid var(--verde);padding-left:14px;max-width:44ch}
.hero__foto{margin:0;position:relative}
.hero__foto img{border-radius:200px 200px var(--raio) var(--raio);box-shadow:var(--sombra);width:100%;aspect-ratio:5/6;object-fit:cover;object-position:center 30%}
.hero__foto::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:2px solid var(--verde);border-radius:200px 200px var(--raio) var(--raio);z-index:-1;opacity:.5}
.hero__foto figcaption{position:absolute;left:-18px;bottom:28px;background:#fff;padding:.7em 1em;border-radius:12px;box-shadow:var(--sombra);font-size:.88rem;color:var(--mata);font-weight:500}
@media (max-width:860px){
  .hero{padding:28px 0 48px}
  .hero__in{grid-template-columns:1fr;gap:36px}
  .hero__foto{max-width:420px;margin-inline:auto}
  .hero__foto figcaption{left:10px}
}

/* números */
.numeros{background:var(--mata);color:#fff;padding:30px 0}
.numeros__grid{display:flex;flex-wrap:wrap;justify-content:space-around;gap:20px 36px;text-align:center}
.num strong{display:block;font-family:var(--serif);font-size:2.2rem;line-height:1;color:#fff}
.num span{font-size:.88rem;opacity:.8}

/* seções */
.secao{padding:88px 0}
.secao--areia{background:var(--areia)}
.secao--verde{background:var(--mata);color:#e9f1eb}
.secao--verde h2{color:#fff}
.secao--vinho{background:var(--vinho);color:#fde9ec}
.secao--vinho h2{color:#fff}
.sobre-titulo{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:var(--verde);margin-bottom:.8em}
.sobre-titulo::before{content:"🐾 "}
.sobre-titulo--claro{color:#b9dcc4}
@media (max-width:640px){.secao{padding:60px 0}}

/* história */
.historia{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:start}
.linha-tempo{list-style:none;padding:0;margin:28px 0;position:relative}
.linha-tempo::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--linha)}
.linha-tempo li{position:relative;padding-left:36px;margin-bottom:22px}
.linha-tempo li::before{content:"";position:absolute;left:0;top:6px;width:16px;height:16px;border-radius:50%;background:var(--creme);border:3px solid var(--verde)}
.linha-tempo li:nth-child(2)::before{border-color:var(--vinho)}
.lt__ano{font-weight:700;color:var(--mata);font-size:.95rem}
.linha-tempo p{margin:.2em 0 0;color:var(--cinza)}
.pilares{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.pilares li{background:var(--verde-cl);color:var(--mata);font-weight:700;padding:.5em 1em;border-radius:999px;font-size:.92rem}
.historia__fotos{display:grid;gap:18px;position:sticky;top:100px}
.historia__fotos img{border-radius:var(--raio);box-shadow:var(--sombra);width:100%;aspect-ratio:4/4.4;object-fit:cover}
.historia__fotos picture:nth-child(2) img{width:78%;margin-left:auto;margin-top:-50px;border:6px solid var(--creme)}
@media (max-width:860px){.historia{grid-template-columns:1fr}.historia__fotos{position:static;grid-template-columns:1fr 1fr}.historia__fotos picture:nth-child(2) img{width:100%;margin:0}}

/* cards */
.cards6{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
.card{background:#fff;border-radius:var(--raio);padding:28px;border:1px solid var(--linha);transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.card__ic{font-size:1.8rem;display:inline-grid;place-items:center;width:58px;height:58px;border-radius:16px;background:var(--verde-cl);margin-bottom:14px}
.card p{color:var(--cinza);margin:0}
@media (max-width:900px){.cards6{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cards6{grid-template-columns:1fr}}

.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.opcao{display:block;text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:var(--raio);padding:26px;color:inherit;text-decoration:none;font:inherit;cursor:pointer;transition:background .2s,transform .2s}
.opcao:hover{background:rgba(255,255,255,.12);transform:translateY(-4px)}
.opcao span{font-size:2rem}
.opcao h3{color:#fff;margin:.4em 0 .3em}
.opcao p{margin:0;opacity:.85;font-size:.95rem}
@media (max-width:900px){.cards4{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.cards4{grid-template-columns:1fr}}

/* doar */
.doar{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.tabs{display:inline-flex;background:var(--areia);padding:5px;border-radius:999px;margin:12px 0 22px}
.tab{border:0;background:transparent;padding:.7em 1.3em;border-radius:999px;font:700 .95rem var(--sans);color:var(--cinza);cursor:pointer}
.tab.is-on{background:#fff;color:var(--vinho);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.valores{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.valor{text-align:left;background:#fff;border:2px solid var(--linha);border-radius:14px;padding:14px 16px;cursor:pointer;font:inherit;transition:border-color .15s,background .15s}
.valor strong{display:block;font-family:var(--serif);font-size:1.4rem;color:var(--mata)}
.valor small{color:var(--cinza);font-size:.85rem;line-height:1.3;display:block}
.valor[aria-checked="true"]{border-color:var(--vinho);background:#fdf3f4}
.valor[aria-checked="true"] strong{color:var(--vinho)}
.outro{display:block;margin-top:14px;font-weight:500}
.outro input{display:block;margin-top:6px;width:200px}
.mensal-info{margin-top:22px;background:var(--verde-cl);border-radius:var(--raio);padding:22px}
.mensal-info p{font-size:.97rem}
.pix{background:#fff;border-radius:24px;padding:28px;box-shadow:var(--sombra);border:1px solid var(--linha);position:sticky;top:100px;text-align:center}
.pix__topo{display:flex;justify-content:space-between;align-items:center;font-weight:700;color:var(--mata);margin-bottom:12px}
.pix__tag{background:#32bcad;color:#fff;padding:.2em .7em;border-radius:6px;font-size:.85rem;letter-spacing:.08em}
#pixValorTxt{font-family:var(--serif);font-size:1.5rem}
.pix__qr{width:220px;height:220px;margin:4px auto 10px;display:grid;place-items:center}
.pix__qr img,.pix__qr svg{width:100%;height:100%}
.pix__dica{font-size:.85rem;color:var(--cinza)}
.pix__chave{display:grid;gap:10px;text-align:left}
.pix__chave small{color:var(--cinza)}
.pix__chave code{background:var(--areia);padding:.75em 1em;border-radius:10px;font-size:.95rem;word-break:break-all;color:var(--mata);font-weight:700}
.pix__ok{margin:14px 0 0;font-weight:700;color:var(--verde)}
.racao{display:flex;align-items:center;gap:20px;margin-top:40px;background:var(--areia);border-radius:var(--raio);padding:22px 26px}
.racao>span{font-size:2rem}
.racao h3{margin:0 0 .2em}
.racao p{margin:0;color:var(--cinza);font-size:.97rem}
.racao .btn{margin-left:auto}
.racao--verde{background:var(--verde-cl)}
@media (max-width:860px){.doar{grid-template-columns:1fr}.pix{position:static}.racao{flex-direction:column;align-items:flex-start}.racao .btn{margin-left:0}}

/* transparência */
.transp{background:#fff;border-radius:24px;padding:32px;margin-top:28px;border:1px solid var(--linha)}
.transp__resumo{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}
.transp__resumo div{background:var(--areia);border-radius:14px;padding:16px}
.transp__resumo small{display:block;color:var(--cinza)}
.transp__resumo strong{font-family:var(--serif);font-size:1.5rem;color:var(--mata)}
.transp__cats{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.transp__cats li{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--linha);border-radius:14px}
.transp__cats li span:first-child{font-size:1.5rem}
.transp__cats b{display:block;font-size:.95rem}
.transp__cats small{color:var(--cinza)}
.transp__barra{height:6px;background:var(--areia);border-radius:6px;margin-top:6px;overflow:hidden}
.transp__barra i{display:block;height:100%;background:var(--verde)}
.transp__nota{color:var(--cinza);font-size:.95rem}
@media (max-width:760px){.transp__resumo,.transp__cats{grid-template-columns:1fr}.transp{padding:22px}}

/* galeria */
.galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.galeria figure{margin:0}
.galeria img{border-radius:var(--raio);width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--sombra)}
.galeria figcaption{font-size:.92rem;color:var(--cinza);margin-top:10px;font-style:italic;font-family:var(--serif)}
@media (max-width:760px){.galeria{grid-template-columns:1fr 1fr}.galeria figure:last-child{grid-column:span 2}.galeria figure:last-child img{aspect-ratio:16/10}}

/* adoção */
.adocao{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin:28px 0}
.gato{background:#fff;border-radius:var(--raio);overflow:hidden;border:1px solid var(--linha)}
.gato img{width:100%;aspect-ratio:1;object-fit:cover}
.gato__c{padding:18px}
.gato dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:.9rem;margin:10px 0 14px}
.gato dt{color:var(--cinza)}
.gato dd{margin:0;font-weight:500}
.status{display:inline-block;font-size:.78rem;font-weight:700;padding:.25em .7em;border-radius:999px;background:var(--verde-cl);color:var(--mata)}
.vazio{background:#fff;border:1px dashed var(--terra);border-radius:var(--raio);padding:24px;margin:24px 0}

/* formulários */
.form{background:#fff;border-radius:24px;padding:30px;border:1px solid var(--linha);display:grid;gap:14px;margin-top:28px}
.form h3{margin:0}
.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form label{display:grid;gap:6px;font-weight:500;font-size:.93rem}
.span2{grid-column:span 2}
input,select,textarea{font:inherit;font-size:1rem;padding:.75em .9em;border:1.5px solid var(--linha);border-radius:12px;background:var(--creme);color:var(--tinta);width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--verde);background:#fff}
.form .check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.9rem;color:var(--cinza)}
.check input{width:20px;height:20px;flex:none;margin-top:2px}
.chips{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.chips legend{font-weight:500;font-size:.93rem;margin-bottom:8px}
.chips label{display:block}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-block;padding:.45em .95em;border:1.5px solid var(--linha);border-radius:999px;font-size:.9rem;cursor:pointer;font-weight:500}
.chips input:checked+span{background:var(--mata);border-color:var(--mata);color:#fff}
.chips input:focus-visible+span{outline:3px solid var(--vinho);outline-offset:2px}
.form .btn{justify-self:start}
.form--claro{color:var(--tinta)}
.mini{font-size:.88rem;color:var(--cinza);margin:0}
.duas{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.duas .form{margin-top:0}
.aviso{background:rgba(255,255,255,.12);border-left:3px solid #fff;padding:12px 16px;border-radius:0 10px 10px 0;font-size:.95rem}
@media (max-width:860px){.duas{grid-template-columns:1fr}}
@media (max-width:560px){.form__grid{grid-template-columns:1fr}.span2{grid-column:auto}.form{padding:22px}.form .btn{justify-self:stretch}}

/* instagram */
.insta{padding:64px 0}
.insta__in{display:flex;align-items:center;gap:28px;background:#fff;border:1px solid var(--linha);border-radius:24px;padding:28px 32px}
.insta__in h2{font-size:1.6rem;margin-bottom:.2em}
.insta__in p{margin:0;color:var(--cinza)}
.insta__in .btn{margin-left:auto}
.insta__in img{border-radius:50%;box-shadow:var(--sombra);flex:none}
@media (max-width:760px){.insta__in{flex-direction:column;text-align:center}.insta__in .btn{margin:0}}

/* faq */
.faq{max-width:820px}
.faq details{background:#fff;border-radius:14px;margin-bottom:10px;border:1px solid var(--linha)}
.faq summary{cursor:pointer;padding:18px 22px;font-weight:700;color:var(--mata);list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--vinho);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 22px 18px;margin:0;color:var(--cinza)}

/* rodapé */
.rodape{background:var(--mata);color:#cfe0d4;padding:56px 0 100px}
.rodape__in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
.rodape__marca{display:flex;gap:16px}
.rodape__marca img{border-radius:50%;flex:none}
.rodape strong{color:#fff;letter-spacing:.06em}
.rodape p{margin:.3em 0;font-size:.92rem}
.rodape nav,.rodape__ct{display:grid;gap:8px;align-content:start}
.rodape a{color:#cfe0d4;text-decoration:none;font-size:.95rem}
.rodape a:hover{color:#fff}
.rodape__fim{text-align:center;margin:40px 0 0;font-size:.85rem;opacity:.7}
@media (max-width:760px){.rodape__in{grid-template-columns:1fr}}
@media (min-width:861px){.rodape{padding-bottom:40px}}

/* barra celular */
.barra{display:none}
@media (max-width:860px){
  .barra{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:60;background:var(--mata);border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.3);overflow:hidden}
  .barra a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 0;color:#fff;text-decoration:none;font-size:1.15rem}
  .barra a span{font-size:.78rem;font-weight:700}
  .barra a:first-child{background:var(--vinho)}
  body{padding-bottom:84px}
}

/* toast */
.toast{position:fixed;left:50%;bottom:110px;transform:translate(-50%,20px);background:var(--tinta);color:#fff;padding:.8em 1.3em;border-radius:12px;opacity:0;pointer-events:none;transition:.25s;z-index:80;font-weight:500;max-width:90vw;text-align:center}
.toast.is-on{opacity:1;transform:translate(-50%,0)}

/* animação */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-vis{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition:none!important}}
