/* Contato orientado a mensagem e pós-contato compacto, dentro da marca Trameva. */
.contact-section{padding-block:72px}
.contact-section .section-heading{max-width:820px;margin-inline:auto;text-align:center;padding-bottom:28px;border-bottom:1px solid #d9e0e6;margin-bottom:40px}
.contact-section h2{font-size:clamp(1.875rem,3vw,2.5rem);line-height:1.25;text-wrap:balance}
.contact-section h3{font-size:1.25rem;line-height:1.4}
.contact-channels{display:grid;gap:24px;max-width:1100px;margin-inline:auto}
.contact-channel{background:var(--color-cream);border-radius:16px;padding:32px;text-align:center;min-width:0}
.contact-channel--primary{background:var(--color-primary);color:white}
.contact-channel--primary h3{color:white}
.contact-channel--primary .button--secondary{background:white;color:var(--color-primary);border-color:white}
.contact-channel--primary :focus-visible{outline-color:white}
.contact-channel-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 auto 20px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary)}
.contact-channel p{line-height:1.8}
.contact-small{font-size:.8125rem;line-height:1.8;margin-top:20px}
.contact-section .section-cta-actions{margin-top:32px}
.contact-message-layout{display:grid;gap:32px;align-items:start;max-width:1100px;margin-inline:auto}
.contact-message-layout .service-form h2{font-size:1.5rem}
.contact-context{display:grid;gap:24px;min-width:0}
.contact-context-note{padding:28px;background:white;border-radius:12px;border:1px solid #e1d8ca}
.contact-context-note p{line-height:1.8}
.contact-context-note p:last-child{margin-bottom:0}
.contact-context-note ul{padding-left:20px;line-height:1.8;margin-bottom:0}
.contact-context-note li+li{margin-top:10px}
.contact-shortcuts,.contact-cities,.contact-next{display:grid;gap:28px}
.contact-shortcut{padding:28px;border-top:2px solid var(--color-primary);background:var(--color-cream);border-radius:0 0 12px 12px;text-align:center}
.contact-shortcut>.icon,.contact-cities .icon{width:28px;height:28px;margin:0 auto 20px}
.contact-shortcut p,.contact-next p{line-height:1.8;font-size:.9375rem}
.contact-shortcut .card-link{font-size:.875rem}
.contact-cities{max-width:1000px;margin-inline:auto}
.contact-cities article{padding:28px;background:white;border-radius:12px;text-align:center;border:1px solid #e1d8ca}
.contact-cities p{line-height:1.8;margin-bottom:0}
.contact-reading{max-width:760px;margin:28px auto 0;text-align:center;line-height:1.8}
.contact-section .service-split p{line-height:1.8}
.contact-section .service-image-placeholder{margin:0}
.contact-faq{display:grid;gap:0 32px;align-items:start}
.contact-faq .faq-trigger{font-size:1rem}
.contact-faq .faq-panel p{font-size:.9375rem;line-height:1.8}
.contact-conversation{display:grid;gap:32px;align-items:center}
.contact-conversation p{line-height:1.8}
.contact-message-guide{padding:32px;background:var(--color-cream);border-radius:16px;border:1px solid #e1d8ca}
.contact-message-guide>span{display:flex;gap:12px;align-items:center;font-weight:600;margin-bottom:20px}
.contact-message-guide ul{padding-left:20px;line-height:1.9}
.contact-message-guide small{font-size:.8125rem;line-height:1.7}
.contact-next{max-width:1000px;margin-inline:auto}
.contact-next article{padding:28px;background:white;border-top:2px solid var(--color-primary);text-align:center}
.contact-page button.arrow-link,.thanks-page button.arrow-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px}
.contact-page button.arrow-link>.icon,.thanks-page button.arrow-link>.icon{width:32px;height:32px;padding:8px;border-radius:50%;background:var(--color-primary);color:white;flex-shrink:0}
.contact-section[id]{scroll-margin-top:120px}
@media(min-width:768px){.contact-channels,.contact-shortcuts,.contact-cities,.contact-next,.contact-faq{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.contact-message-layout{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.contact-conversation{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}}
@media(max-width:767px){.contact-section{padding-block:48px}.contact-channel,.contact-context-note,.contact-shortcut,.contact-cities article,.contact-message-guide{padding:24px}.contact-section .actions{flex-direction:column}.contact-section .actions .button{width:100%}.contact-channel .button,.contact-conversation .button{width:100%}}
/* Obrigado: uma mensagem central, sem nova solicitação comercial. */
.thanks-page{background:var(--color-cream)}
.thanks-header{background:white;border-bottom:1px solid #e1d8ca}
.thanks-header>.container{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:16px}
.thanks-header .brand{width:180px}
.thanks-header>.container>a:last-child{display:flex;align-items:center;min-height:44px;font-size:.9375rem}
.thanks-main{padding:48px 16px 24px}
.thanks-card{max-width:840px;margin-inline:auto;padding:48px;background:white;border:1px solid #e1d8ca;border-radius:20px}
.thanks-card h1{font-size:clamp(2rem,3.5vw,2.875rem);line-height:1.2;text-wrap:balance}
.thanks-card h2{font-size:1.5rem;line-height:1.4}
.thanks-card h3{font-size:1.0625rem;line-height:1.5}
.thanks-card .eyebrow{color:var(--color-primary);margin-bottom:16px}
.thanks-intro{font-size:1.0625rem;line-height:1.8}
.thanks-state{display:flex;gap:20px;margin-block:28px;padding:24px;background:var(--color-primary-soft);border-radius:12px}
.thanks-state>.icon{flex-shrink:0;width:28px;height:28px}
.thanks-state h2{font-size:1.0625rem;margin-bottom:8px}
.thanks-state p{font-size:.9375rem;line-height:1.8;margin-bottom:0}
.thanks-contact{text-align:center;margin-bottom:32px}
.thanks-contact .button{width:100%;background:var(--color-accent);color:var(--color-primary);border-color:var(--color-accent)}
.thanks-contact p{font-size:.8125rem;line-height:1.8;margin:14px 0 0}
.thanks-steps{border-block:1px solid #d9e0e6;padding-block:28px;margin-bottom:28px}
.thanks-steps>div{padding-left:20px;border-left:3px solid #d9e0e6;margin-top:24px}
.thanks-steps p{font-size:.9375rem;line-height:1.8;margin-bottom:0}
.thanks-links{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.thanks-links a{font-size:.875rem}
.thanks-footer{max-width:840px;margin:0 auto;padding:8px 16px 32px;text-align:center;font-size:.8125rem;line-height:1.8}
@media(max-width:767px){.thanks-header .brand{width:150px}.thanks-main{padding-top:24px}.thanks-card{padding:28px 24px;border-radius:16px}.thanks-state{padding:20px;gap:12px}.thanks-links{flex-direction:column;align-items:stretch}.thanks-links .button{width:100%}.thanks-state h2{font-size:1rem}}

/* Reservas exclusivas de Contato: três apoios no corpo e fundo da hero. */
.contact-page .contact-hero-background{background:var(--color-primary-soft);transform:none}
.contact-hero-slot{max-width:560px}
.contact-page .contact-hero-slot span{color:inherit}
.contact-context .contact-image-placeholder{width:100%;min-height:0;aspect-ratio:3/2;padding:24px}
.contact-conversation-support{display:grid;gap:24px;min-width:0}
.contact-conversation-support .contact-image-placeholder{width:100%;min-height:0;aspect-ratio:3/2}
@media(max-width:767px){.contact-image-placeholder strong{font-size:1.125rem}.contact-image-placeholder p{font-size:.875rem}.contact-image-placeholder{padding:24px}}

/* Imagens fornecidas: proporção original nos apoios do corpo. */
.contact-image-provided{margin:0;border-radius:14px;overflow:hidden}
.contact-image-provided img{display:block;width:100%;height:auto}
.contact-page .contact-hero-background img{transform:none}
