.contact-page .contact-page-opening{padding-top:var(--space-7);padding-bottom:var(--space-6)}.contact-page h1{font:clamp(2.6rem, 5.3vw, 5.5rem)/1.1 var(--font-display);letter-spacing:-.04em;max-width:19ch;margin:0 0 var(--space-5);text-wrap:balance}.contact-page .contact-invitation{color:var(--text-muted);max-width:60ch;font-size:1.1rem}.contact-page .contact-page-body{padding-top:var(--space-5);grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.contact-page .contact-direct,.contact-page .contact-form-panel{min-width:0}.contact-page .contact-direct h2{font-size:clamp(2rem,3vw,3rem)}.contact-page .contact-direct>p{color:var(--text-muted)}.contact-page .contact-direct-links{margin:var(--space-6) 0 var(--space-5)}.contact-page .contact-direct-links>div+div{margin-top:var(--space-4)}.contact-page .contact-direct-links dt{color:var(--accent);font-size:.85rem}.contact-page .contact-direct-links dd{margin:0}.contact-page .contact-direct-links a{overflow-wrap:anywhere;font-size:clamp(1rem,1.4vw,1.3rem)}.contact-page .contact-whatsapp{gap:1.5rem}.contact-page .contact-channel-note{max-width:38ch;font-size:.85rem}.contact-page .contact-business-address{border:0;border-top:1px solid var(--color-brown);padding:var(--space-5) 0 0;margin:var(--space-6) 0 var(--space-4);font-size:1rem}.contact-page .contact-business-address strong{color:var(--text);font-family:var(--font-display);font-size:1.4rem}.contact-page .contact-form-panel{background:var(--surface-raised);border:1px solid var(--color-brown);padding:clamp(1.25rem,3vw,3rem)}.contact-page .contact-form-panel h2{margin-bottom:var(--space-4);font-size:clamp(2rem,3vw,3rem)}.contact-page .contact-preview-note{border-left:2px solid var(--accent);padding-left:var(--space-3);color:var(--text)}.contact-page .contact-form-legend{color:var(--text-muted);margin-bottom:var(--space-6);font-size:.85rem}.contact-page form{min-width:0}.contact-page fieldset{min-width:0;margin:0 0 var(--space-6);border:0;padding:0}.contact-page legend{font:1.4rem/1.3 var(--font-display);margin-bottom:var(--space-4);padding:0}.contact-page .contact-field-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-page .contact-field{min-width:0}.contact-page .contact-field-full{grid-column:1/-1}.contact-page label{margin-bottom:var(--space-2);font-size:.9rem;display:block}.contact-page label span{color:var(--text-muted);font-size:.85rem}.contact-page input,.contact-page select,.contact-page textarea{box-sizing:border-box;border:1px solid var(--accent);background:var(--surface);width:100%;min-width:0;min-height:48px;color:var(--text);font:1rem/1.5 var(--font-body);border-radius:0;padding:.75rem;display:block}.contact-page textarea{resize:vertical}.contact-page input[aria-invalid=true],.contact-page select[aria-invalid=true],.contact-page textarea[aria-invalid=true]{border-width:2px;padding:calc(.75rem - 1px)}.contact-page .contact-field-help{color:var(--text-muted);margin:var(--space-2) 0 0;font-size:.85rem}.contact-page .contact-field-error{color:var(--accent);margin:var(--space-2) 0 0;font-size:.9rem}.contact-page .contact-advice{border-left:2px solid var(--accent);padding-left:var(--space-3);margin:var(--space-2) 0 0;color:var(--text-muted);font-size:.9rem}.contact-page .contact-error-summary{border:1px solid var(--accent);padding:var(--space-4);margin-bottom:var(--space-6)}.contact-page .contact-error-summary h3{margin:0 0 var(--space-3);font-size:1.4rem}.contact-page .contact-error-summary ul{padding-left:var(--space-4);margin:0}.contact-page .contact-error-summary li+li{margin-top:var(--space-2)}.contact-page .contact-error-summary a{padding-block:.3rem;font-size:.9rem;display:inline-block}.contact-page .contact-privacy{color:var(--text-muted);margin:0 0 var(--space-5);font-size:.85rem}.contact-page .button{cursor:pointer;font:.9rem/1.5 var(--font-body);border:0}.contact-page .button:disabled{opacity:.5;cursor:default}.contact-page .contact-preview-result{border-left:2px solid var(--accent);padding:var(--space-3);margin-top:var(--space-5)}.contact-page .contact-preview-result p{margin:0}@media (width<=1000px){.contact-page .contact-page-body{grid-template-columns:minmax(0,1fr)}.contact-page .contact-direct{max-width:40rem}}@media (width<=600px){.contact-page .contact-page-opening{padding-top:var(--space-6)}.contact-page .contact-field-grid{grid-template-columns:minmax(0,1fr)}.contact-page .contact-page-body{padding-bottom:var(--space-7)}}
