.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-12);padding:var(--space-12) 0 var(--space-20);align-items:start}.contact-info__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary-dark);margin-bottom:var(--space-4)}.contact-info__desc{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8)}.contact-cards{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-8)}.contact-map{border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;line-height:0}.contact-map iframe{display:block}.contact-card{display:flex;gap:var(--space-4);padding:var(--space-5);background-color:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.contact-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.contact-card__icon{flex-shrink:0;width:48px;height:48px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.contact-card__icon svg{width:22px;height:22px;color:var(--color-white)}.contact-card__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-1)}.contact-card__value{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-primary-dark);line-height:var(--line-height-normal)}.contact-card__value a{color:inherit;transition:color var(--transition-fast)}.contact-card__value a:hover{color:var(--color-accent)}.contact-card__sub{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.contact-whatsapp{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:linear-gradient(135deg,#25d366,#128c7e);border-radius:var(--radius-lg);color:var(--color-white);text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast);margin-bottom:var(--space-8)}.contact-whatsapp:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,.4)}.contact-whatsapp__icon{flex-shrink:0;width:48px;height:48px;background-color:rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center}.contact-whatsapp__icon svg{width:26px;height:26px}.contact-whatsapp__title{font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.contact-whatsapp__sub{font-size:var(--font-size-sm);color:rgba(255,255,255,.8)}.contact-hours{background-color:var(--color-bg-section);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.contact-hours__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary-dark);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.contact-hours__title svg{width:18px;height:18px;color:var(--color-accent)}.contact-hours__list{display:flex;flex-direction:column;gap:var(--space-2)}.contact-hours__item{display:flex;justify-content:space-between;font-size:var(--font-size-sm);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.contact-hours__item:last-child{border-bottom:none}.contact-hours__day{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.contact-hours__time{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.contact-form-wrapper{background-color:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-10);box-shadow:var(--shadow-lg)}.contact-form-wrapper__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary-dark);margin-bottom:var(--space-2)}.contact-form-wrapper__sub{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-8)}.form-group{margin-bottom:var(--space-5)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--space-2)}.form-label .required{color:var(--color-error);margin-left:2px}.form-control{width:100%;padding:.75rem 1rem;font-size:var(--font-size-sm);color:var(--color-text);background-color:var(--color-gray-50);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);outline:0;appearance:none}.form-control::placeholder{color:var(--color-gray-400)}.form-control:focus{background-color:var(--color-white);border-color:var(--color-primary-light);box-shadow:0 0 0 3px var(--color-primary-bg)}.form-control.is-invalid{border-color:var(--color-error);box-shadow:0 0 0 3px rgba(231,76,60,.1)}.form-control.is-valid{border-color:var(--color-success);box-shadow:0 0 0 3px rgba(39,174,96,.1)}textarea.form-control{resize:vertical;min-height:120px}select.form-control{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .875rem center;padding-right:2.5rem;cursor:pointer}.form-error{display:none;font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-1);align-items:center;gap:var(--space-1)}.form-group.has-error .form-error{display:flex}.form-error svg{width:13px;height:13px;flex-shrink:0}.form-check{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer}.form-check__input{flex-shrink:0;width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;margin-top:1px}.form-check__label{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.form-check__label a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.form-submit{margin-top:var(--space-6)}.form-submit .btn{width:100%;justify-content:center;padding:.875rem 2rem;font-size:var(--font-size-base);gap:var(--space-3)}.form-success{display:none;text-align:center;padding:var(--space-12) var(--space-8)}.form-success.is-visible{display:block}.form-success__icon{width:72px;height:72px;background:linear-gradient(135deg,var(--color-success),#2ecc71);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);box-shadow:0 8px 24px rgba(39,174,96,.35)}.form-success__icon svg{width:36px;height:36px;color:var(--color-white)}.form-success__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary-dark);margin-bottom:var(--space-3)}.form-success__text{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);max-width:340px;margin:0 auto var(--space-6)}.contact-map{background-color:var(--color-bg-section);padding:var(--space-16) 0}.contact-map__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary-dark);margin-bottom:var(--space-8);text-align:center}.contact-map__embed{width:100%;height:400px;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border);background-color:var(--color-gray-200);display:flex;align-items:center;justify-content:center}.contact-map__placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);color:var(--color-text-muted)}.contact-map__placeholder svg{width:48px;height:48px;color:var(--color-primary-light)}.contact-map__placeholder p{font-size:var(--font-size-sm);margin-bottom:0}