/* V3: apenas ajustes pedidos sobre a V2 aprovada. */
nav a,nav button{font-weight:600}
.contact-options a{display:block}
.social a{display:grid;place-items:center}
.social a:hover{color:var(--orange);border-color:var(--orange)}
.social a svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.panel-copy .cta{width:280px;max-width:100%;min-height:48px}
.panel-copy .cta:disabled{opacity:1}
.brand-panel:has(.imoinvest-photo) .cta{color:#282B2A}
.brand-panel:has(.buildit-photo) .cta{color:#000}
.brand-panel:has(.real-photo) .eyebrow{color:#8C2626}
.brand-panel:has(.real-photo) .eyebrow:before{background:#8C2626}
.brand-panel:has(.imoinvest-photo) .eyebrow{color:#08795d}
.real-photo{background-position:center;background-size:cover}
@media(min-width:651px) and (max-width:1000px){.real-photo{background-image:url('assets/real-tablet-v3.jpg')!important;background-position:center 35%}}
.contact-form-modal .compact-form{padding:32px 50px 26px}
.compact-form .back{margin-bottom:12px}
.compact-form h2{margin-bottom:12px}
.compact-form>p{margin-bottom:18px;font-size:14px}
.compact-form .form-grid{gap:12px 16px}
.compact-form label{gap:5px}
.compact-form input,.compact-form select{padding:9px 11px;min-height:39px}
.compact-form textarea{min-height:65px;height:65px;padding:9px 11px}
.compact-form .cta{padding:12px 20px;min-height:43px}
.compact-form .notice{margin:12px 0 0;font-size:12px}
.compact-form .form-feedback{margin-top:10px;padding:10px;font-size:12px}
@media(max-width:650px){
 /* Compensa a largura da Montserrat para preservar as quebras principais da V2. */
 h1{font-size:33px}
 .solutions h2,.about h2{font-size:28px}
 .project h2{font-size:26px}
 .contact-form-modal .compact-form{padding:42px 24px 22px}
 .compact-form .back{margin-bottom:9px;min-height:24px}
 .compact-form h2{font-size:26px;margin-bottom:10px}
 .compact-form>p{font-size:13px;margin-bottom:14px;line-height:1.4}
 .compact-form .form-grid{gap:9px}
 .compact-form label{font-size:13px;gap:4px}
 .compact-form input,.compact-form select{font-size:16px;min-height:38px;padding:7px 10px}
 .compact-form textarea{min-height:56px;height:56px;font-size:16px}
 .compact-form .notice{font-size:11px;line-height:1.4}
}
@media(max-height:700px) and (min-width:651px){.contact-form-modal .compact-form{padding-top:24px;padding-bottom:22px}.compact-form>p{margin-bottom:12px}.compact-form .form-grid{gap:9px 16px}}

/* Campo internacional: mantém a altura e a tipografia aprovadas. */
.phone-field{display:grid;gap:5px;min-width:0;font-size:14px}
.phone-control{display:grid;grid-template-columns:112px minmax(0,1fr);gap:6px}
.phone-control input,.phone-control select{min-width:0}
.phone-control option{font-family:inherit}
@media(max-width:650px){.phone-field{gap:4px;font-size:13px}}

/* Confirmação de contacto; não altera o formulário nem os estados de erro. */
.contact-confirmation-modal{max-width:800px}
.contact-confirmation{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 50px}
.contact-confirmation h2{margin-bottom:16px}
.contact-confirmation>p{max-width:600px;margin:0;line-height:1.6}
@media(max-width:650px){.contact-confirmation{min-height:240px;padding:54px 24px 36px}}

