.contact-section{padding:var(--space-24) 0}.contact-form-wrapper{padding:0}.contact-section__inner{display:grid;grid-template-columns:1.4fr .6fr;gap:var(--space-16);align-items:start}.contact-form__title{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-weight-normal);color:var(--color-text);margin-bottom:var(--space-10)}.contact-form{display:flex;flex-direction:column;gap:var(--space-5)}.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.contact-form__field{display:flex;flex-direction:column;gap:var(--space-2)}.contact-form__label{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);letter-spacing:var(--tracking-wider);text-transform:uppercase}.contact-form__optional{color:var(--color-text-muted);font-size:var(--text-xs)}.contact-form__input,.contact-form__select,.contact-form__textarea,.contact-form__select option{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background-color:transparent;border:none;border-bottom:1px solid var(--color-border);border-radius:0;padding:var(--space-3) 0;transition:border-color var(--transition-fast)}.contact-form__input:focus-visible,.contact-form__select:focus-visible,.contact-form__textarea:focus-visible{outline:none;border-bottom-color:var(--color-primary)}.contact-form__input::placeholder,.contact-form__textarea::placeholder{color:var(--color-text-muted);opacity:.6}.contact-form__select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2369418b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;padding-right:var(--space-8);cursor:pointer}.contact-form__textarea{resize:none;min-height:100px}.contact-form__submit{align-self:flex-start;display:inline-flex;align-items:center;margin-top:var(--space-2);padding:var(--space-3) var(--space-8);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-weight-normal);color:var(--color-text-on-primary);background-color:var(--color-primary);border:none;border-radius:var(--radius-full);letter-spacing:var(--tracking-wide);transition:background-color var(--transition-normal),transform var(--transition-fast)}.contact-form__submit:hover{background-color:var(--color-primary-hover);transform:translateY(-2px)}.contact-form__submit:active{transform:translateY(0)}.contact-form__error{font-family:var(--font-body);font-size:var(--text-xs);color:#c94a4a;min-height:1.2em;margin-top:var(--space-1);opacity:0;transition:opacity var(--transition-fast)}.contact-form__error:not(:empty){opacity:1}.contact-form__input.error,.contact-form__select.error,.contact-form__textarea.error{border-bottom-color:#c94a4a}.contact-form__input.error:focus-visible,.contact-form__select.error:focus-visible,.contact-form__textarea.error:focus-visible{border-bottom-color:#c94a4a}.contact-info{display:flex;flex-direction:column;gap:var(--space-10);padding:var(--space-10) var(--space-8);background-color:var(--color-bg-secondary);color:var(--color-text-on-secondary);border-radius:var(--radius-lg);position:sticky;top:calc(6rem + var(--space-8))}.contact-info__block{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-8);border-bottom:1px solid var(--color-border-on-secondary)}.contact-info__block:last-of-type{padding-bottom:0;border-bottom:none}.contact-info__heading{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-on-secondary);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.contact-info__text{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-text-on-secondary);line-height:var(--leading-normal)}.contact-info__link{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-text-on-secondary);text-decoration:none;transition:opacity var(--transition-fast)}.contact-info__link:hover{opacity:.7;color:var(--color-text-on-secondary)}.contact-info__ornament,.contact-info__ornament-diamond{display:none}.contact-info__whatsapp{position:relative}.contact-info__whatsapp-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-on-secondary);background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-full);cursor:not-allowed;opacity:.5;transition:all var(--transition-normal)}.contact-info__whatsapp-btn:not(:disabled){cursor:pointer;opacity:1}.contact-info__whatsapp-btn:not(:disabled):hover{background-color:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px)}.contact-info__whatsapp-icon{flex-shrink:0}.contact-form__input--error,.contact-form__select.contact-form__input--error,.contact-form__textarea.contact-form__input--error{border-bottom-color:#c0392b}.contact-form__error{font-family:var(--font-body);font-size:var(--text-xs);color:#c0392b;margin-top:var(--space-1);display:block}.contact-form__error[hidden]{display:none}.contact-form__success{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);padding:var(--space-10) 0}.contact-form__success[hidden]{display:none}.contact-form__success-icon{font-size:var(--text-3xl);color:var(--color-accent);line-height:1}.contact-form__success p{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-text);line-height:var(--leading-normal);max-width:36ch}.contact-info__whatsapp{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-on-secondary);border:1px solid var(--color-border-on-secondary);border-radius:var(--radius-full);text-decoration:none;letter-spacing:var(--tracking-wide);transition:background-color var(--transition-fast),border-color var(--transition-fast);align-self:flex-start}.contact-info__whatsapp:hover{background-color:#f5eddc1a;border-color:var(--color-text-on-secondary);color:var(--color-text-on-secondary)}.contact-info__whatsapp-icon{width:1.1em;height:1.1em;flex-shrink:0}@media(max-width:768px){.contact-section__inner{grid-template-columns:1fr;gap:var(--space-10)}.contact-form__row{grid-template-columns:1fr}.contact-info{order:-1}}
