main:has(.contact-page){max-width:1100px}.contact-page{padding:clamp(2.5rem,6vw,5rem) 0 clamp(2rem,5vw,4rem);text-align:center}.contact-kicker{margin:0 0 .4rem;color:var(--muted);font-size:.9rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.contact-page h1{margin:0;font-size:clamp(2.5rem,7vw,4.5rem)}.contact-intro{margin:.9rem auto clamp(2rem,5vw,3.5rem);color:var(--texto);font-size:clamp(1.05rem,2.5vw,1.3rem)}:root[data-theme=dark] .contact-kicker,:root[data-theme=dark] .contact-intro{color:var(--creme)}.contact-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(1rem,3vw,1.75rem);max-width:1100px;margin-inline:auto}.contact-options:has(.contact-toggle[aria-expanded=true]){align-items:start}.contact-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid var(--borda);border-radius:28px;background:var(--branco);box-shadow:0 18px 42px #49365f1f;color:var(--texto);text-align:left;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.contact-card:hover{transform:translateY(-5px);border-color:var(--primaria);box-shadow:0 24px 48px #49365f2e}.contact-card:focus-visible{outline:3px solid var(--primaria);outline-offset:4px}.contact-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:1.5rem;border-radius:18px;background:#49365f;color:#fefeff}.contact-icon svg{width:29px;height:29px}.contact-name{color:var(--primaria-escura);font-family:var(--fonte-titulo);font-size:clamp(1.4rem,3vw,1.8rem)}.contact-detail{margin-top:.45rem;overflow-wrap:anywhere;font-size:clamp(.95rem,2.5vw,1.13rem)}.contact-action{margin-top:auto;padding-top:2rem;color:var(--primaria-escura);font-weight:700}.contact-form-intro{margin:.45rem 0 1rem;overflow-wrap:anywhere}.contact-form-intro strong{font-family:inherit;font-weight:700}.contact-toggle{display:inline-flex;align-items:center;gap:.5rem;padding:0;border:0;background:none;color:var(--primaria-escura);font:inherit;font-weight:700;cursor:pointer}.contact-toggle-arrow{display:inline-block;transition:transform .18s ease}.contact-toggle[aria-expanded=true] .contact-toggle-arrow{transform:rotate(180deg)}.contact-toggle:hover{text-decoration:underline}.contact-form{width:100%;margin-top:1.5rem}.contact-form[hidden]{display:none}.contact-field{display:grid;gap:.4rem;margin-bottom:1rem}.contact-field label{font-weight:700}.contact-field input,.contact-field textarea{width:100%;min-height:48px;padding:.75rem .9rem;border:1px solid var(--borda);border-radius:10px;background:var(--branco);color:var(--texto);font:inherit}.contact-field textarea{resize:vertical}.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:3px solid var(--primaria);outline-offset:2px}.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.7rem 1.2rem;border:0;border-radius:10px;background:var(--primaria);color:var(--texto-sobre-primaria);font:inherit;font-weight:700;cursor:pointer}.contact-submit:hover{background:var(--primaria-escura)}.contact-submit:disabled{opacity:.7;cursor:wait}.contact-submit:focus-visible,.contact-toggle:focus-visible,.contact-gmail-link:focus-visible{outline:3px solid var(--primaria);outline-offset:4px}.contact-feedback{min-height:1.5em;margin:.75rem 0 0;font-size:.95rem}.contact-feedback[data-state=error]{color:#a2213b}.contact-feedback[data-state=success]{color:#23613a}.contact-gmail-link{margin-top:1rem;color:var(--primaria-escura);font-size:.95rem}.contact-gmail-link:hover{text-decoration:underline}:root[data-theme=dark] .contact-feedback[data-state=error]{color:#fff0f3}:root[data-theme=dark] .contact-feedback[data-state=success]{color:#e3ffe9}@media(max-width:900px){.contact-options{grid-template-columns:1fr;max-width:430px;align-items:start}.contact-card{min-height:300px}}@media(max-width:620px){.contact-page{padding:2.5rem 0 1rem}.contact-options{grid-template-columns:1fr}.contact-card{padding:1.5rem;border-radius:22px}.contact-icon{margin-bottom:1rem}.contact-action{padding-top:1.4rem}}@media(prefers-reduced-motion:reduce){.contact-card{transition:none}.contact-card:hover{transform:none}.contact-toggle-arrow{transition:none}}
