body.contact-page{background:var(--color-bg);min-width:0}.contact-page main{overflow-wrap:anywhere}.contact-page [hidden]{display:none!important}.contact-page .contact-hero{padding-block:clamp(2rem,5vw,4.5rem) clamp(2rem,4vw,3rem)}.contact-intro{max-width:var(--container-wide)}.contact-eyebrow{color:var(--color-muted);letter-spacing:.06em;font-size:.875rem;font-weight:600}.contact-intro h1{margin-block:0 var(--space-5);font-size:clamp(2.5rem,5.4vw,4.75rem);line-height:1.08}.contact-intro h1 span{color:var(--color-link)}.contact-lead{max-width:62ch;color:var(--color-muted);font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.65}.contact-personal-note{max-width:62ch;margin-top:var(--space-3);color:var(--color-muted);font-size:.9375rem}.contact-email{margin-top:var(--space-4);flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.contact-email p{color:var(--color-muted);font-size:.875rem}.contact-email a{gap:var(--space-3);min-height:2.75rem;text-decoration-color:var(--color-border);align-items:center;font-size:.9375rem;display:inline-flex}.contact-email a span{color:var(--color-link)}.contact-email a:hover{text-decoration-color:var(--color-link)}.contact-whatsapp{align-items:center;gap:var(--space-4);width:min(100%,53rem);margin-inline:auto;margin-top:var(--space-5);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-wrap:wrap;display:flex}.contact-whatsapp-copy{flex:18rem;min-width:0}.contact-whatsapp h2{font-size:1.125rem;line-height:1.3}.contact-whatsapp p{margin-top:var(--space-2);color:var(--color-muted);font-size:.875rem;line-height:1.6}.contact-whatsapp-link{border:1px solid var(--color-control-border);border-radius:var(--radius-sm);background:var(--color-bg);max-width:100%;min-height:3rem;color:var(--color-text);justify-content:center;align-items:center;gap:.5rem;padding:.75rem .875rem;font-size:.875rem;font-weight:600;line-height:1.4;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.contact-whatsapp-link svg{flex:0 0 20px}.contact-whatsapp-link>span:not(.contact-whatsapp-arrow){min-width:0}.contact-whatsapp-arrow{flex-shrink:0;transition:transform .15s}.contact-whatsapp-link:hover,.contact-whatsapp-link:focus-visible{color:var(--color-link);border-color:var(--color-link)}.contact-whatsapp-link:hover .contact-whatsapp-arrow,.contact-whatsapp-link:focus-visible .contact-whatsapp-arrow{transform:translate(1px,-1px)}.contact-whatsapp-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;box-shadow:none}@media (width<=30rem){.contact-whatsapp{padding:var(--space-4)}.contact-whatsapp-link{gap:.375rem;width:100%;padding-inline:.5rem}}@media (prefers-reduced-motion:reduce){.contact-whatsapp-link,.contact-whatsapp-arrow{transition:none}.contact-whatsapp-link:hover .contact-whatsapp-arrow,.contact-whatsapp-link:focus-visible .contact-whatsapp-arrow{transform:none}}.contact-page .contact-form-section{padding-block:0 var(--space-8)}.contact-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(100%,53rem);min-width:0;margin-inline:auto;padding:clamp(1.25rem,3vw,2.5rem);position:relative}.contact-panel:before{content:"";background:var(--color-accent);width:3rem;height:2px;position:absolute;top:-1px;left:2.5rem}.contact-form-heading h2{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.15}.contact-required-note{margin-block:var(--space-3) var(--space-5);color:var(--color-muted);font-size:.8125rem}.contact-required-note span{color:var(--color-link)}.contact-fields{gap:var(--space-5);display:grid}.contact-field{min-width:0}.contact-field label,.contact-service-field legend{margin-bottom:var(--space-2);font-size:.875rem;font-weight:600;line-height:1.5;display:block}.contact-field label span,.contact-service-field legend span{color:var(--color-muted);font-weight:400}.contact-field :is(input,select,textarea){border:1px solid var(--color-control-border);border-radius:var(--radius-sm);background:var(--color-bg);width:100%;min-height:3rem;color:var(--color-text);padding:.75rem;font-size:1rem;line-height:1.5}.contact-field :is(input,textarea)::placeholder{color:var(--color-placeholder);opacity:1}.contact-field :is(input,select,textarea):hover{border-color:var(--color-muted)}.contact-field :is(input,select,textarea)[aria-invalid=true]{border-color:var(--color-error)}.contact-field textarea{resize:vertical;min-height:8rem}.contact-service-field{border:0;min-width:0;margin:0;padding:0}.contact-service-field .contact-helper{margin-block:0 var(--space-3)}.contact-choices{gap:var(--space-2);display:grid}.contact-page input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--color-selected);flex:none;margin:0}.contact-choices label{border:1px solid var(--color-control-border);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.75rem;min-height:2.75rem;padding:.75rem;font-size:.875rem;line-height:1.5;display:flex}.contact-choices label:has(input:checked){border-color:var(--color-selected);background:var(--color-selected-bg)}.contact-choices label:hover{border-color:var(--color-muted)}.contact-helper{margin-top:var(--space-2);color:var(--color-muted);font-size:.8125rem;line-height:1.6}.contact-field-error{margin-top:var(--space-2);color:var(--color-error);font-size:.875rem}.contact-error-summary{margin-block:var(--space-5);padding:var(--space-4);border:1px solid var(--color-error);border-radius:var(--radius-sm);font-size:.875rem}.contact-error-summary h3{letter-spacing:0;font-size:1rem;line-height:1.5}.contact-error-summary ul{margin-bottom:0;padding-left:1.25rem}.contact-error-summary li+li{margin-top:var(--space-2)}.contact-error-summary a{color:var(--color-error-link)}.contact-submit-row{align-items:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.contact-submit{justify-content:center;align-items:center;gap:var(--space-5);border:1px solid var(--color-primary-border);border-radius:var(--radius-pill);background:var(--color-cta-bg);min-height:3rem;color:var(--color-accent-text);cursor:pointer;transition:background-color var(--transition-fast);padding:.75rem 1.25rem;font-weight:700;display:inline-flex}@media (hover:hover){.contact-submit:hover:enabled{background:var(--color-cta-hover)}}.contact-submit:disabled{background:var(--color-disabled-bg);color:var(--color-disabled-text);cursor:not-allowed;transition:none}.contact-submit-status{color:var(--color-muted);font-size:.875rem}.contact-privacy{margin-top:var(--space-4);color:var(--color-muted);max-width:78ch;font-size:.8125rem;line-height:1.65}.contact-privacy a{color:var(--color-text)}.contact-success{padding-block:var(--space-7)}.contact-success h2{margin-top:var(--space-4);font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}.contact-success p:not(.contact-eyebrow){margin-block:var(--space-5);color:var(--color-muted)}.contact-success a{color:var(--color-link)}.contact-page #budget-other-field{display:none}.contact-page #contact-form:has(#contact-budget option[value=Other]:checked) #budget-other-field{display:block}.contact-page .contact-next{border-top:1px solid var(--color-border);padding-block:var(--space-7) var(--space-8)}.contact-next h2{margin-top:var(--space-3);font-size:clamp(1.875rem,4vw,3rem)}.contact-next ol{gap:var(--space-6);margin:var(--space-7) 0 0;padding:0;list-style:none;display:grid}.contact-next li{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.contact-step{color:var(--color-link);font-size:.875rem}.contact-next li p{margin-top:var(--space-4);color:var(--color-text);max-width:42ch;font-size:1.125rem;line-height:1.6}.contact-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=48rem){.contact-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-field--wide{grid-column:1/-1}.contact-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-next ol{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=30rem){.contact-submit{width:100%}.contact-intro h1{margin-block:0 var(--space-4)}.contact-personal-note{font-size:.875rem}}
