.contact-element{background:var(--color-primary-dark);color:var(--color-white);padding:var(--spacing-3xl) 0;margin:0}@media (max-width:768px){.contact-element{padding:var(--spacing-2xl) 0}}.contact-element .section-heading{color:var(--color-primary-gold);font-family:var(--font-heading);font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-2xl);text-transform:uppercase;letter-spacing:3px;text-align:center;text-shadow:var(--shadow-gold)}@media (max-width:768px){.contact-element .section-heading{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xl);letter-spacing:2px}}@media (max-width:480px){.contact-element .section-heading{font-size:var(--font-size-xl);letter-spacing:1px;padding:0 var(--spacing-sm)}}.contact-element .contact-image-wrapper{position:relative;border-radius:var(--radius-lg);overflow:hidden;height:100%;min-height:400px}@media (max-width:1199px){.contact-element .contact-image-wrapper{min-height:350px}}@media (max-width:991px){.contact-element .contact-image-wrapper{min-height:300px;aspect-ratio:1.6}}@media (max-width:768px){.contact-element .contact-image-wrapper{min-height:250px;aspect-ratio:1.3333333333}}.contact-element .contact-image-wrapper .contact-image{width:100%;height:100%;object-fit:cover;transition:var(--transition-base)}.contact-element .contact-image-wrapper .image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg, rgba(205, 171, 86, 0.1) 0%, rgba(0, 40, 23, 0.3) 100%);opacity:0;transition:var(--transition-base)}.contact-element .contact-image-wrapper:hover .contact-image{transform:scale(1.05)}.contact-element .contact-image-wrapper:hover .image-overlay{opacity:1}.contact-element .sparkle-container{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.contact-element .sparkle-container .sparkle{position:absolute;width:8px;height:8px;background:var(--color-primary-gold);border-radius:50%;animation:sparkleFloat 2s infinite ease-in-out}.contact-element .sparkle-container .sparkle.sparkle-1{top:20%;left:15%;animation-delay:0s}.contact-element .sparkle-container .sparkle.sparkle-2{top:60%;right:20%;animation-delay:0.7s}.contact-element .sparkle-container .sparkle.sparkle-3{bottom:25%;left:30%;animation-delay:1.4s}.contact-element .contact-card{background:rgba(255, 255, 255, 0.08);border:2px solid rgba(205, 171, 86, 0.4);border-radius:var(--radius-lg);backdrop-filter:blur(10px);overflow:hidden;transition:var(--transition-base);height:100%;display:flex;flex-direction:column}.contact-element .contact-card:hover{transform:translateY(-5px);border-color:var(--color-primary-gold);box-shadow:0 15px 30px rgba(0, 0, 0, 0.2), 0 0 20px rgba(205, 171, 86, 0.25)}.contact-element .contact-card-header{background:linear-gradient(135deg, rgba(205, 171, 86, 0.25) 0%, rgba(205, 171, 86, 0.15) 100%);padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);border-bottom:1px solid rgba(205, 171, 86, 0.4);text-align:center}.contact-element .contact-card-header .contact-icon{width:50px;height:50px;margin:0 auto var(--spacing-sm);background:var(--color-primary-gold);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;transition:var(--transition-base)}.contact-element .contact-card-header .contact-icon i{font-size:var(--font-size-base);color:var(--color-primary-dark)}.contact-element .contact-card-header .contact-card-title{color:var(--color-primary-gold);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:700;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:1px;text-shadow:0 1px 3px rgba(0, 0, 0, 0.3)}.contact-element .contact-card-header .contact-card-subtitle{color:var(--color-white);font-family:var(--font-body);font-size:var(--font-size-sm);margin:0;opacity:0.9}.contact-element .contact-card-body{padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);flex-grow:1;display:flex;flex-direction:column}.contact-element .contact-card-body .contact-form{flex-grow:1}.contact-element .contact-form .field{margin-bottom:var(--spacing-md);position:relative}.contact-element .contact-form .field:last-child{margin-bottom:0}.contact-element .contact-form label{font-family:var(--font-body);font-weight:600;color:var(--color-white);margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);display:block;text-transform:uppercase;letter-spacing:0.5px}.contact-element .contact-form input,.contact-element .contact-form textarea,.contact-element .contact-form select{font-family:var(--font-body);font-size:var(--font-size-sm);background:rgba(255, 255, 255, 0.08);border:2px solid rgba(255, 255, 255, 0.2);color:var(--color-white);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);width:100%;transition:var(--transition-base);backdrop-filter:blur(5px)}.contact-element .contact-form input::placeholder,.contact-element .contact-form textarea::placeholder,.contact-element .contact-form select::placeholder{color:rgba(255, 255, 255, 0.5);font-family:var(--font-body);font-style:italic}.contact-element .contact-form input:focus,.contact-element .contact-form textarea:focus,.contact-element .contact-form select:focus{background:rgba(255, 255, 255, 0.12);border-color:var(--color-primary-gold);box-shadow:0 0 0 0.2rem rgba(205, 171, 86, 0.25), 0 4px 12px rgba(0, 0, 0, 0.15);color:var(--color-white);outline:none;transform:translateY(-1px)}.contact-element .contact-form input:hover:not(:focus),.contact-element .contact-form textarea:hover:not(:focus),.contact-element .contact-form select:hover:not(:focus){border-color:rgba(205, 171, 86, 0.5);background:rgba(255, 255, 255, 0.1)}.contact-element .contact-form textarea{min-height:100px;resize:vertical;line-height:1.6}.contact-element .contact-form input[type="checkbox"]{width:auto;margin-right:var(--spacing-sm);margin-bottom:0;vertical-align:middle;accent-color:var(--color-primary-gold)}.contact-element .contact-form .checkbox,.contact-element .contact-form .field.checkbox{display:flex;align-items:flex-start;margin-bottom:var(--spacing-md)}.contact-element .contact-form .checkbox label,.contact-element .contact-form .field.checkbox label{margin-bottom:0;margin-left:var(--spacing-sm);flex:1;text-transform:none;font-weight:500;font-size:var(--font-size-xs)}.contact-element .contact-form .btn,.contact-element .contact-form .btn-gold,.contact-element .contact-form input[type="submit"],.contact-element .contact-form button[type="submit"]{background:var(--gradient-gold-primary);border:2px solid var(--color-primary-gold);color:var(--color-primary-dark);font-family:var(--font-body);font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--font-size-sm);border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-cubic);box-shadow:0 4px 15px rgba(205, 171, 86, 0.3);position:relative;overflow:hidden}.contact-element .contact-form .btn::before,.contact-element .contact-form .btn-gold::before,.contact-element .contact-form input[type="submit"]::before,.contact-element .contact-form button[type="submit"]::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);transition:var(--transition-base)}.contact-element .contact-form .btn:hover,.contact-element .contact-form .btn-gold:hover,.contact-element .contact-form input[type="submit"]:hover,.contact-element .contact-form button[type="submit"]:hover{background:var(--color-primary-gold);border-color:var(--color-primary-gold);color:var(--color-primary-dark);transform:translateY(-3px);box-shadow:0 8px 25px rgba(205, 171, 86, 0.4)}.contact-element .contact-form .btn:hover::before,.contact-element .contact-form .btn-gold:hover::before,.contact-element .contact-form input[type="submit"]:hover::before,.contact-element .contact-form button[type="submit"]:hover::before{left:100%}.contact-element .contact-form .btn:active,.contact-element .contact-form .btn-gold:active,.contact-element .contact-form input[type="submit"]:active,.contact-element .contact-form button[type="submit"]:active{transform:translateY(-1px);box-shadow:0 4px 15px rgba(205, 171, 86, 0.3)}.contact-element .contact-form .btn:focus,.contact-element .contact-form .btn-gold:focus,.contact-element .contact-form input[type="submit"]:focus,.contact-element .contact-form button[type="submit"]:focus{outline:none;box-shadow:0 0 0 0.2rem rgba(205, 171, 86, 0.25), 0 8px 25px rgba(205, 171, 86, 0.4)}.contact-element .contact-form .form-actions,.contact-element .contact-form .Actions{padding-top:var(--spacing-md);text-align:center;border-top:1px solid rgba(205, 171, 86, 0.2);margin-top:var(--spacing-md)}.contact-element .contact-form .error,.contact-element .contact-form .field.error input,.contact-element .contact-form .field.error textarea{border-color:#dc3545;background:rgba(220, 53, 69, 0.1)}.contact-element .contact-form .error-message,.contact-element .contact-form .message.error{color:#dc3545;font-size:var(--font-size-sm);margin-top:var(--spacing-xs);font-family:var(--font-body)}.contact-element .contact-form .success,.contact-element .contact-form .message.good{background:rgba(40, 167, 69, 0.15);border:1px solid rgba(40, 167, 69, 0.3);color:#28a745;padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-family:var(--font-body);text-align:center}.contact-element .contact-card:hover .contact-card-header .contact-icon{transform:scale(1.1) rotate(5deg);box-shadow:0 4px 15px rgba(205, 171, 86, 0.4)}@media (max-width:768px){.contact-element{padding:var(--spacing-2xl) 0}.contact-element .contact-card-header{padding:var(--spacing-md)}.contact-element .contact-card-header .contact-icon{width:50px;height:50px}.contact-element .contact-card-header .contact-icon i{font-size:var(--font-size-base)}.contact-element .contact-card-header .contact-card-title{font-size:var(--font-size-base)}.contact-element .contact-card-header .contact-card-subtitle{font-size:var(--font-size-sm)}.contact-element .contact-card-body{padding:var(--spacing-md)}.contact-element .contact-form input,.contact-element .contact-form textarea,.contact-element .contact-form select{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.contact-element .contact-form .btn,.contact-element .contact-form .btn-gold,.contact-element .contact-form input[type="submit"],.contact-element .contact-form button[type="submit"]{padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--font-size-sm)}}@keyframes sparkleFloat{0%,100%{transform:translateY(0px);opacity:0.6}50%{transform:translateY(-8px);opacity:1}}