.contact-page{min-height:100vh;background:#f8f9fa}.contact-hero{background:linear-gradient(135deg,#124f31,#1a5f3a);color:white;padding:100px 0 80px}.contact-hero .container{max-width:1200px;margin:0 auto;padding:0 20px}.contact-hero .hero-content{text-align:center;max-width:600px;margin:0 auto}.contact-hero h1{font-size:3rem;font-weight:700;margin-bottom:20px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.contact-hero p{font-size:1.2rem;line-height:1.6;opacity:.9}.contact-main{padding:80px 0}.contact-main .container{max-width:1200px;margin:0 auto;padding:0 20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.contact-info h2{font-size:2.5rem;color:#124f31;margin-bottom:15px;font-weight:700}.contact-subtitle{font-size:1.1rem;color:#666;margin-bottom:40px;line-height:1.6}.contact-methods{margin-bottom:50px}.contact-method{display:flex;align-items:flex-start;margin-bottom:30px;padding:20px;background:white;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.08);transition:transform .3s ease,box-shadow .3s ease}.contact-method:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.12)}.method-icon{font-size:2rem;margin-right:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:#f0f8f4;border-radius:50%}.method-details h3{font-size:1.3rem;color:#124f31;margin-bottom:5px;font-weight:600}.method-details p{color:#666;margin-bottom:8px;font-size:.95rem}.contact-link{color:#124f31;text-decoration:none;font-weight:600;border-bottom:2px solid transparent;transition:border-color .3s ease}.contact-link:hover{border-bottom-color:#124f31}.contact-text{color:#666;font-weight:500}.business-hours{background:white;padding:30px;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.08)}.business-hours h3{font-size:1.4rem;color:#124f31;margin-bottom:20px;font-weight:600}.hours-grid{margin-bottom:15px}.day-hours{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.day-hours:last-child{border-bottom:none}.day{font-weight:500;color:#333}.hours{color:#124f31;font-weight:600}.hours-note{color:#666;font-size:.9rem;margin-top:15px}.contact-form-section{background:white;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.1);overflow:hidden}.form-container{padding:40px}.contact-form-section h2{font-size:2.2rem;color:#124f31;margin-bottom:10px;font-weight:700}.form-subtitle{color:#666;margin-bottom:30px;line-height:1.5}.success-message{gap:15px;background:#e8f5e8;border:1px solid #4caf50;border-radius:8px;padding:20px;margin-bottom:30px}.success-icon,.success-message{display:flex;align-items:center}.success-icon{background:#4caf50;color:white;width:40px;height:40px;border-radius:50%;justify-content:center;font-weight:700;flex-shrink:0}.success-message h4{color:#2e7d32;margin:0 0 5px;font-size:1.1rem}.success-message p{color:#4caf50;margin:0;font-size:.95rem}.error-message{gap:15px;background:#ffeaea;border:1px solid #f44336;border-radius:8px;padding:20px;margin-bottom:30px}.error-icon,.error-message{display:flex;align-items:center}.error-icon{background:#f44336;color:white;width:40px;height:40px;border-radius:50%;justify-content:center;font-weight:700;flex-shrink:0}.error-message h4{color:#c62828;margin:0 0 5px;font-size:1.1rem}.error-message p{color:#f44336;margin:0;font-size:.95rem}.contact-form{display:flex;flex-direction:column;gap:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#333;margin-bottom:8px;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;background:#f8f9fa}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#124f31;background:white;box-shadow:0 0 0 3px rgba(18,79,49,.1)}.form-group textarea{resize:vertical;min-height:120px;font-family:inherit}.submit-btn{background:#124f31;color:white;border:none;padding:16px 40px;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px;align-self:flex-start}.submit-btn:hover:not(:disabled){background:#0f3e26;transform:translateY(-1px);box-shadow:0 4px 12px rgba(18,79,49,.3)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.submit-btn.submitting{pointer-events:none}.spinner{width:16px;height:16px;border:2px solid transparent;border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.quick-actions{background:#124f31;color:white;padding:80px 0}.quick-actions .container{max-width:1200px;margin:0 auto;padding:0 20px}.quick-actions h2{text-align:center;font-size:2.5rem;margin-bottom:50px;font-weight:700}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.action-card{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:40px 30px;text-align:center;transition:transform .3s ease,background .3s ease}.action-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.15)}.action-icon{font-size:3rem;margin-bottom:20px;display:block}.action-card h3{font-size:1.4rem;margin-bottom:15px;font-weight:600}.action-card p{color:rgba(255,255,255,.9);margin-bottom:25px;line-height:1.5}.action-btn{background:#dd9933;color:white;text-decoration:none;padding:12px 30px;border-radius:8px;font-weight:600;display:inline-block;transition:all .3s ease}.action-btn:hover{background:#c4841f;transform:translateY(-1px);box-shadow:0 4px 12px rgba(221,153,51,.3)}@media (max-width:768px){.contact-hero{padding:60px 0 40px}.contact-hero h1{font-size:2.2rem}.contact-main{padding:40px 0}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-info h2{font-size:2rem}.contact-form-section h2{font-size:1.8rem}.form-container{padding:30px 20px}.form-row{grid-template-columns:1fr;gap:20px}.contact-method{padding:15px}.method-icon{width:50px;height:50px;font-size:1.5rem;margin-right:15px}.quick-actions{padding:50px 0}.quick-actions h2{font-size:2rem}.actions-grid{grid-template-columns:1fr;gap:20px}.action-card{padding:30px 20px}}@media (max-width:480px){.contact-hero .container,.contact-main .container,.quick-actions .container{padding:0 15px}.contact-hero h1{font-size:1.8rem}.contact-hero p{font-size:1rem}.form-container{padding:20px 15px}}