.hero-section{position:relative}.hero-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:150px;background:linear-gradient(to top,var(--bg-primary),transparent);pointer-events:none}.hero-section h1{animation:heroTitleFadeIn 1s ease-out .3s forwards;opacity:0;transform:translateY(20px)}@keyframes heroTitleFadeIn{to{opacity:1;transform:translateY(0)}}.hero-section p{animation:heroSubtitleFadeIn 1s ease-out .5s forwards;opacity:0}@keyframes heroSubtitleFadeIn{to{opacity:1}}.contact-card{position:relative;overflow:hidden;animation:cardSlideIn .6s ease-out backwards}.contact-card:nth-child(1){animation-delay:.2s}.contact-card:nth-child(2){animation-delay:.4s}@keyframes cardSlideIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.contact-card::before{content:'';position:absolute;top:-100%;left:-100%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(184,134,11,0.05) 50%,transparent 70%);transition:all .6s ease;pointer-events:none;z-index:1}.contact-card:hover::before{top:100%;left:100%}.card-icon{transition:all .4s cubic-bezier(0.34,1.56,0.64,1)}.contact-card:hover .card-icon{transform:scale(1.1) rotate(5deg);box-shadow:0 8px 25px rgba(184,134,11,0.3)}.contact-info-item{transition:all .3s ease;position:relative}.contact-info-item::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent);transition:width .3s ease}.contact-info-item:hover::after{width:100%}.contact-info-item:hover{padding-left:.5rem}.info-icon{transition:all .3s ease}.contact-info-item:hover .info-icon{background:var(--gold)}.contact-info-item:hover .info-icon i{color:#fff}.action-buttons .btn{position:relative;overflow:hidden;transition:all .4s cubic-bezier(0.34,1.56,0.64,1)}.action-buttons .btn::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:left .5s ease}.action-buttons .btn:hover::before{left:100%}.action-buttons .btn:hover{transform:translateY(-3px)}.action-buttons .btn i{transition:transform .3s ease}.action-buttons .btn:hover i{animation:iconPop .5s ease}@keyframes iconPop{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}.map-section{animation:mapFadeIn .8s ease-out .6s backwards}@keyframes mapFadeIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.map-section iframe{transition:all .4s ease}.map-section:hover iframe{box-shadow:0 20px 50px rgba(0,0,0,0.15)}.map-wrapper{position:relative;border-radius:24px;overflow:hidden}.map-wrapper::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(184,134,11,0.1),transparent);pointer-events:none;z-index:1;opacity:0;transition:opacity .3s ease}.map-wrapper:hover::before{opacity:1}.faq-section{animation:faqFadeIn .8s ease-out .8s backwards}@keyframes faqFadeIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.faq-item{transition:all .3s ease;position:relative;overflow:hidden}.faq-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);transform:scaleY(0);transition:transform .3s ease}.faq-item:hover::before,.faq-item.active::before{transform:scaleY(1)}.faq-item:hover{background:var(--bg-tertiary)}.faq-question{cursor:pointer;transition:all .3s ease}.faq-question:hover{color:var(--gold)}.faq-question i{transition:transform .3s ease}.faq-item.active .faq-question i{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease}.faq-item.active .faq-answer{max-height:500px;padding-top:1rem}.contact-form-section{animation:formFadeIn .8s ease-out 1s backwards}@keyframes formFadeIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.form-group{position:relative;margin-bottom:1.5rem}.form-group input,.form-group textarea,.form-group select{transition:all .3s ease;border:2px solid var(--glass-border)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(184,134,11,0.1);outline:none}.form-group label{position:absolute;top:50%;left:1rem;transform:translateY(-50%);color:var(--text-muted);transition:all .3s ease;pointer-events:none;background:var(--bg-secondary);padding:0 .5rem}.form-group input:focus ~ label,.form-group input:not(:placeholder-shown) ~ label,.form-group textarea:focus ~ label,.form-group textarea:not(:placeholder-shown) ~ label{top:0;font-size:.75rem;color:var(--gold)}.submit-btn{position:relative;overflow:hidden;transition:all .4s cubic-bezier(0.34,1.56,0.64,1)}.submit-btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,0.2);border-radius:50%;transform:translate(-50%,-50%);transition:width .5s ease,height .5s ease}.submit-btn:hover::before{width:300px;height:300px}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(184,134,11,0.4)}.social-links a{transition:all .4s cubic-bezier(0.34,1.56,0.64,1)}.social-links a:hover{transform:translateY(-5px) scale(1.1)}.social-links a::after{content:'';position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);width:0;height:3px;background:currentColor;transition:width .3s ease;border-radius:2px}.social-links a:hover::after{width:80%}.office-hours{position:relative}.office-hours-item{transition:all .3s ease;padding:.5rem;border-radius:8px}.office-hours-item:hover{background:var(--bg-tertiary);padding-left:1rem}.office-hours-item.today{background:rgba(184,134,11,0.1);border-left:3px solid var(--gold)}@media(max-width:768px){.contact-card{animation-delay:.2s!important}.contact-info-item:hover{padding-left:0}.contact-info-item::after{display:none}}