/* Estilos das páginas internas (complementa estilo.css) */
.page-h1{font-size:clamp(2.4rem,6vw,4.6rem);}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.6rem;font-size:.8rem;color:var(--muted);align-items:center}
.breadcrumb a{color:var(--green)}
.breadcrumb a:hover{text-decoration:underline}
.nav-link[aria-current="page"]{color:var(--green);font-weight:600}
.nav-link[aria-current="page"]::after{width:100%}
.mobile-link[aria-current="page"]{color:var(--gold)}

.prose-site section{margin-bottom:.5rem}
.prose-site h2{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.1;letter-spacing:-.02em;margin:2.8rem 0 1rem;color:var(--ink)}
.prose-site section:first-child h2{margin-top:0}
.prose-site p{color:var(--ink-soft);margin-bottom:1.1rem;line-height:1.85;font-size:1.04rem}
.prose-site strong{color:var(--ink);font-weight:600}
.prose-site a{color:var(--green);border-bottom:1px solid var(--gold);transition:color .3s}
.prose-site a:hover{color:var(--gold)}
.prose-site ul.dots,.prose-site ol.steps{margin:0 0 1.3rem;padding:0;list-style:none}
.prose-site ul.dots li{position:relative;padding-left:1.6rem;margin-bottom:.8rem;color:var(--ink-soft);line-height:1.7}
.prose-site ul.dots li::before{content:'';position:absolute;left:.2rem;top:.7rem;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.prose-site ol.steps{counter-reset:s}
.prose-site ol.steps li{counter-increment:s;position:relative;padding:0 0 0 3.2rem;margin-bottom:1.2rem;color:var(--ink-soft);line-height:1.7}
.prose-site ol.steps li::before{content:counter(s);position:absolute;left:0;top:-.15rem;width:2.3rem;height:2.3rem;border-radius:50%;background:var(--green-deep);color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-style:italic}
.callout{background:var(--bg);border:1px solid var(--line-strong);border-left:3px solid var(--gold);padding:1.3rem 1.5rem;border-radius:2px;margin:1.2rem 0 1.4rem}
.callout p{margin-bottom:.6rem}
.callout ul.dots{margin-bottom:0}
.contact-box{display:grid;gap:1rem;margin:1rem 0 1.4rem}
.contact-box p{display:flex;gap:1rem;align-items:flex-start;margin:0;padding:1.1rem 1.2rem;border:1px solid var(--line);background:var(--bg);border-radius:2px}
.contact-box i{width:2.4rem;height:2.4rem;flex-shrink:0;border-radius:50%;background:var(--green-deep);color:var(--cream);display:flex;align-items:center;justify-content:center;font-size:.9rem}
.map-wrap{position:relative;aspect-ratio:4/3;border:1px solid var(--line-strong);border-radius:2px;overflow:hidden;margin-top:1.2rem}
.map-wrap iframe{width:100%;height:100%;border:0;filter:sepia(.3) saturate(.7) hue-rotate(50deg) brightness(.95)}

details.faq{border-bottom:1px solid var(--line-strong);padding:1.1rem 0}
details.faq:first-of-type{border-top:1px solid var(--line-strong)}
details.faq summary{cursor:pointer;list-style:none;font-family:'Fraunces',serif;font-size:1.2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;color:var(--ink)}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:'+';font-size:1.6rem;color:var(--gold);line-height:1;transition:transform .3s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{margin:.9rem 0 0}

.aside-sticky{position:sticky;top:7rem;display:grid;gap:1.4rem}
.toc{border:1px solid var(--line);background:var(--bg);padding:1.5rem;border-radius:2px}
.toc ol{list-style:none;margin:1rem 0 0;padding:0;counter-reset:t}
.toc li{counter-increment:t;margin-bottom:.65rem;font-size:.92rem;line-height:1.4}
.toc li::before{content:counter(t,decimal-leading-zero);font-family:'Fraunces',serif;font-style:italic;color:var(--gold);margin-right:.6rem}
.toc a{color:var(--ink-soft);transition:color .3s}
.toc a:hover{color:var(--green)}
.aside-cta{background:var(--green-deep);color:var(--cream);padding:1.8rem;border-radius:2px}

.related-card{display:block;border:1px solid var(--line);background:var(--surface);padding:1.8rem;border-radius:2px;transition:all .5s cubic-bezier(.16,1,.3,1)}
.related-card:hover{background:var(--green-deep);color:var(--cream);transform:translateY(-4px)}
.related-card:hover p,.related-card:hover span{color:rgba(250,246,237,.8)}
.related-icon{width:2.8rem;height:2.8rem;border-radius:50%;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--green)}
.related-card:hover .related-icon{color:var(--gold-soft);border-color:rgba(212,165,116,.4)}
@media (max-width:1023px){.aside-sticky{position:static}}
