     :root {
         --primary-color: #C9A227;
         --gold-light: #D4B03A;
         --gold-dark: #B89220;
         --dark-text: #1a1a1a;
         --white: #ffffff;
     }

     * {
         margin: 0;
         padding: 0;
         box-sizing: border-box;
     }

     body {
         font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
         line-height: 1.6;
         color: var(--dark-text);
     }

     .contact-section {
         padding: 6rem 2rem;
         background: linear-gradient(135deg, #f8f8f8 0%, #ffffff 100%);
     }

     .contact-container {
         max-width: 1200px;
         margin: 0 auto;
     }

     .contact-header {
         text-align: center;
         margin-bottom: 4rem;
         animation: fadeInDown 0.8s ease-out;
     }

     .label {
         display: inline-block;
         color: var(--primary-color);
         font-weight: 600;
         font-size: 0.95rem;
         text-transform: uppercase;
         letter-spacing: 2px;
         margin-bottom: 1rem;
     }

     .contact-header h2 {
         font-size: 2.5rem;
         color: var(--dark-text);
         margin-bottom: 1rem;
         font-weight: 700;
     }

     .contact-header p {
         font-size: 1.2rem;
         color: #666;
         max-width: 600px;
         margin: 0 auto;
     }

     .contact-content {
         display: grid;
         grid-template-columns: 1fr 1.5fr;
         gap: 3rem;
         margin-bottom: 3rem;
     }

     .contact-info {
         display: flex;
         flex-direction: column;
         gap: 1.5rem;
     }

     .contact-info-card {
         background: var(--white);
         padding: 2rem;
         border-radius: 15px;
         border: 2px solid transparent;
         transition: all 0.3s;
         box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
         animation: fadeInLeft 0.8s ease-out;
     }

     .contact-info-card:hover {
         border-color: var(--primary-color);
         transform: translateY(-5px);
         box-shadow: 0 8px 25px rgba(201, 162, 39, 0.2);
     }

     .contact-info-icono {
         width: 60px;
         height: 60px;
         background: linear-gradient(135deg, rgba(201, 162, 39, 0.1), rgba(201, 162, 39, 0.2));
         border-radius: 12px;
         display: flex;
         align-items: center;
         justify-content: center;
         margin-bottom: 1rem;
     }

     .contact-info-icono svg {
         width: 28px;
         height: 28px;
         fill: var(--primary-color);
     }

     .contact-info-card h3 {
         color: var(--dark-text);
         margin-bottom: 0.5rem;
         font-size: 1.3rem;
         font-weight: 600;
     }

     .contact-info-card p {
         color: #666;
         margin-bottom: 0.5rem;
         font-size: 0.95rem;
     }

     .contact-info-card a {
         color: var(--primary-color);
         text-decoration: none;
         font-weight: 600;
         transition: color 0.3s;
         display: inline-block;
     }

     .contact-info-card a:hover {
         color: var(--gold-dark);
     }

     .contact-info-icon {
         color: #888;
         font-size: 0.9rem;
         font-weight: 400;
         margin-top: 0.3rem;
     }

     .contact-form-wrapper {
         background: var(--white);
         padding: 2.5rem;
         border-radius: 15px;
         box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
         animation: fadeInRight 0.8s ease-out;
     }

     .form-group {
         margin-bottom: 1.5rem;
     }

     .form-group label {
         display: block;
         margin-bottom: 0.5rem;
         color: var(--dark-text);
         font-weight: 600;
     }

     .form-group input,
     .form-group textarea {
         width: 100%;
         padding: 0.875rem;
         border: 2px solid #e0e0e0;
         border-radius: 8px;
         font-size: 1rem;
         transition: all 0.3s;
         font-family: inherit;
     }

     .form-group input:focus,
     .form-group textarea:focus {
         outline: none;
         border-color: var(--primary-color);
         box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.1);
     }

     .form-group textarea {
         resize: vertical;
         min-height: 120px;
     }

     .submit-button {
         width: 100%;
         padding: 1rem 2rem;
         background: var(--primary-color);
         color: var(--white);
         border: none;
         border-radius: 50px;
         font-size: 1rem;
         font-weight: 600;
         cursor: pointer;
         transition: all 0.3s;
         box-shadow: 0 4px 15px rgba(201, 162, 39, 0.3);
         position: relative;
         overflow: hidden;
     }

     .submit-button:hover {
         background: var(--gold-dark);
         transform: translateY(-2px);
         box-shadow: 0 6px 20px rgba(201, 162, 39, 0.4);
     }

     .submit-button:active {
         transform: translateY(0);
     }

     .map-section {
         margin-top: 4rem;
         border-radius: 15px;
         overflow: hidden;
         box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
         animation: fadeInUp 0.8s ease-out;
     }

     .map-container {
         width: 100%;
         height: 450px;
         position: relative;
     }

     .map-container iframe {
         width: 100%;
         height: 100%;
         border: 0;
     }

     .success-message {
         display: none;
         background: #4CAF50;
         color: white;
         padding: 1rem;
         border-radius: 8px;
         margin-bottom: 1rem;
         text-align: center;
     }

     .success-message.show {
         display: block;
         animation: slideDown 0.5s ease-out;
     }

     @keyframes fadeInDown {
         from {
             opacity: 0;
             transform: translateY(-30px);
         }

         to {
             opacity: 1;
             transform: translateY(0);
         }
     }

     @keyframes fadeInLeft {
         from {
             opacity: 0;
             transform: translateX(-30px);
         }

         to {
             opacity: 1;
             transform: translateX(0);
         }
     }

     @keyframes fadeInRight {
         from {
             opacity: 0;
             transform: translateX(30px);
         }

         to {
             opacity: 1;
             transform: translateX(0);
         }
     }

     @keyframes fadeInUp {
         from {
             opacity: 0;
             transform: translateY(30px);
         }

         to {
             opacity: 1;
             transform: translateY(0);
         }
     }

     @keyframes slideDown {
         from {
             opacity: 0;
             transform: translateY(-20px);
         }

         to {
             opacity: 1;
             transform: translateY(0);
         }
     }

     @media (max-width: 968px) {
         .contact-content {
             grid-template-columns: 1fr;
         }

         .contact-header h2 {
             font-size: 2rem;
         }

         .map-container {
             height: 350px;
         }
     }

     @media (max-width: 576px) {
         .contact-section {
             padding: 3rem 1rem;
         }

         .contact-header h2 {
             font-size: 1.75rem;
         }

         .contact-form-wrapper {
             padding: 1.5rem;
         }
     }

     footer {
         background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
         color: var(--white);
         padding: 3rem 0 1.5rem;
     }

     .footer-content {
         display: grid;
         grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
         gap: 2rem;
         margin-bottom: 2rem;
         margin-left: 184px;
     }

     .footer-section h4 {
         color: var(--white);
         margin-bottom: 1rem;
         font-size: 1.2rem;
     }

     .footer-section ul {
         list-style: none;
     }

     .footer-section a {
         color: rgba(255, 255, 255, 0.8);
         text-decoration: none;
         display: block;
         margin-bottom: 0.5rem;
         transition: all 0.3s;
     }

     .footer-section a:hover {
         color: var(--primary-color);
         padding-left: 0.5rem;
     }

     .footer-section p {
         color: rgba(255, 255, 255, 0.8);
         line-height: 1.8;
     }

     .footer-bottom {
         text-align: center;
         padding-top: 2rem;
         border-top: 1px solid rgba(255, 255, 255, 0.1);
         color: rgba(255, 255, 255, 0.7);
     }