.contact-page{flex:1 1}.contact-hero{background:linear-gradient(180deg,rgba(22,32,40,.92),rgba(22,32,40,.75) 50%,rgba(22,32,40,.95)),url(/images/home.jpg) 50%/cover no-repeat;color:#fff;padding:100px 20px 80px;text-align:center;position:relative;overflow:hidden;border-bottom:1px solid var(--border-color)}.contact-hero:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(146,199,163,.06) 0,transparent 70%);animation:pulse 6s ease-in-out infinite;pointer-events:none}.contact-hero h1{font-family:var(--font-serif);font-size:3rem;margin-bottom:1rem;color:#92c7a3;letter-spacing:2px;animation:fadeIn 1s ease-out,slideDown 1s ease-out;position:relative;z-index:1;text-shadow:0 4px 15px rgba(0,0,0,.7)}.contact-content{display:grid;grid-template-columns:1fr 1.5fr;grid-gap:3rem;gap:3rem;padding:60px 0;max-width:1200px;margin:0 auto}.contact-info h2{font-size:2rem;margin-bottom:1.5rem;color:var(--text-dark)}.contact-info>p{font-size:1.1rem;color:var(--text-light);line-height:1.8;margin-bottom:2rem}.contact-details{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;gap:1.5rem;align-items:flex-start}.contact-icon{font-size:2rem;flex-shrink:0}.contact-item h3{font-size:1.3rem;margin-bottom:.5rem;color:var(--text-dark)}.contact-item p{color:var(--text-light);line-height:1.6}.contact-form{background:var(--bg-white);padding:2.5rem;border-radius:10px;box-shadow:var(--shadow)}.contact-form h2{font-size:1.8rem;margin-bottom:2rem;color:var(--text-dark)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-dark)}.form-group input,.form-group textarea{width:100%;padding:12px;border:2px solid var(--border-color);border-radius:5px;font-size:16px;font-family:inherit;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color)}.form-group.has-error input,.form-group.has-error textarea{border-color:#e74c3c;background-color:rgba(231,76,60,.03)}.error-message{display:block;color:#e74c3c;font-size:.85rem;margin-top:.4rem;font-weight:500;animation:fadeIn .2s ease-in-out}.alert-banner{padding:12px 16px;border-radius:6px;margin-bottom:1.5rem;font-size:.95rem;font-weight:500;line-height:1.4}.alert-banner.success{background-color:rgba(46,204,113,.12);border:1px solid rgba(46,204,113,.4);color:#27ae60}.alert-banner.error{background-color:rgba(231,76,60,.12);border:1px solid rgba(231,76,60,.4);color:#c0392b}.btn-submit{width:100%;padding:15px;font-size:18px;transition:all .3s ease}.btn-submit:disabled{opacity:.65;cursor:not-allowed}@media (max-width:968px){.contact-page{padding:40px 15px}.contact-hero{padding:60px 20px}.contact-hero h1{font-size:2rem}.hero-subtitle{font-size:1rem}.contact-content{grid-template-columns:1fr;gap:2rem;padding:40px 0}.contact-form{padding:2rem}}@media (max-width:768px){.contact-page{padding:30px 10px}.contact-hero{padding:50px 20px}.contact-hero h1{font-size:1.6rem}.contact-form,.contact-info{padding:1.5rem}.contact-form h2,.contact-info h2{font-size:1.5rem}.contact-item{flex-direction:column;gap:.5rem;text-align:center}.contact-icon{font-size:1.5rem}}@media (max-width:480px){.contact-hero h1{font-size:1.4rem}.contact-form,.contact-info{padding:1rem}}