.contact-page{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);min-height:100vh}.contact-page .contact-hero{color:#fff;text-align:center;background:linear-gradient(135deg,#003366e6 0%,#1e40afcc 100%),url(../media/home-about.29hfq75muogma.jpg) 50%/cover no-repeat;min-height:50vh;padding:120px 20px 100px;position:relative}.contact-page .contact-hero:before{content:"";z-index:1;background:linear-gradient(#0000004d 0%,#0009 100%);position:absolute;inset:0}.contact-page .contact-hero .contact-hero-content{z-index:2;max-width:800px;margin:0 auto;position:relative}.contact-page .contact-hero .contact-hero-content h1{color:#fff;text-shadow:2px 2px 4px #000c;margin-bottom:24px;font-size:clamp(2.5rem,5vw,4rem);font-weight:700}.contact-page .contact-hero .contact-hero-content .hero-subtitle{color:#fffffff2;text-shadow:1px 1px 2px #000000b3;max-width:600px;margin:0 auto;font-size:1.2rem;line-height:1.6}.contact-page .contact-main{background:#fff;min-height:auto;padding:80px 20px;overflow:visible}.contact-page .contact-container{max-width:1200px;height:auto;min-height:auto;margin:0 auto}.contact-page .contact-grid{grid-template-columns:1fr;align-items:stretch;gap:60px;display:grid}@media screen and (max-width:768px){.contact-page .contact-grid{gap:40px}}.contact-page .contact-cards{flex-direction:row;justify-content:space-between;gap:40px;width:100%;height:auto;display:flex}@media screen and (max-width:768px){.contact-page .contact-cards{gap:30px}}@media screen and (max-width:600px){.contact-page .contact-cards{flex-direction:column;gap:20px}}.contact-page .contact-card{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;height:280px;padding:24px 20px;transition:all .3s;display:flex;position:relative;box-shadow:0 4px 16px #00000014}@media screen and (max-width:900px){.contact-page .contact-card{height:auto;min-height:240px;padding:24px 16px}}@media screen and (max-width:600px){.contact-page .contact-card{min-height:auto;padding:20px 16px}}.contact-page .contact-card:hover{border-color:#d1d5db;transform:translateY(-4px);box-shadow:0 8px 32px #0000001f}.contact-page .contact-card .card-icon{color:#fff;background:linear-gradient(135deg,#036,#1e40af);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:22px;transition:transform .3s;display:flex}.contact-page .contact-card .card-icon:hover{transform:scale(1.05)}.contact-page .contact-card h2{color:#111827;text-align:center;width:100%;margin-bottom:6px;font-size:1.4rem;font-weight:700;line-height:1.2}.contact-page .contact-card .card-description{color:#6b7280;text-align:center;width:100%;margin-bottom:16px;font-size:.9rem;font-weight:500;line-height:1.4}.contact-page .contact-card .contact-link{color:#036;text-align:center;background:#f8fafc;border:2px solid #e5e7eb;border-radius:8px;padding:10px 16px;font-size:1.05rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.contact-page .contact-card .contact-link:hover{color:#fff;background:#036;border-color:#036;transform:translateY(-2px);box-shadow:0 4px 12px #00336640}.contact-page .contact-card .email-links{flex-direction:row;justify-content:center;align-items:stretch;gap:12px;width:100%;display:flex}.contact-page .contact-card .email-links .contact-link{text-align:center;word-break:break-all;overflow-wrap:anywhere;flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;max-width:none;padding:12px 10px;font-size:.85rem;display:flex}.contact-page .contact-card .email-links .contact-link .email-label{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;word-break:normal;margin-top:2px;font-size:.75rem;font-weight:500}.contact-page .contact-card .email-links .contact-link:hover .email-label{color:#fffc}.contact-page .contact-card .contact-address{color:#1f2937;text-align:center;width:100%;font-size:1rem;font-style:normal;font-weight:500;line-height:1.6}.contact-page .contact-form-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;height:auto;min-height:auto;padding:32px 40px 16px;overflow:visible;box-shadow:0 4px 20px #00000014}@media screen and (max-width:480px){.contact-page .contact-form-section{padding:20px 16px 12px}}.contact-page .contact-form-section .form-header{text-align:center;margin-bottom:32px}.contact-page .contact-form-section .form-header h2{color:var(--text-color);margin-bottom:8px;font-size:2rem;font-weight:700}@media screen and (max-width:480px){.contact-page .contact-form-section .form-header h2{font-size:1.5rem}}.contact-page .contact-form-section .form-header p{color:var(--text-muted);text-align:left;font-size:1.1rem;line-height:1.6}.contact-page .contact-form .form-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:0;display:grid}@media screen and (max-width:480px){.contact-page .contact-form .form-row{grid-template-columns:1fr;gap:20px}}.contact-page .contact-form .form-group{margin-bottom:16px}.contact-page .contact-form .form-group:last-child,.contact-page .contact-form .form-group:last-of-type{margin-bottom:6px}.contact-page .contact-form .form-group.has-error input,.contact-page .contact-form .form-group.has-error select,.contact-page .contact-form .form-group.has-error textarea{background-color:#fef2f2;border-color:#dc2626}.contact-page .contact-form .form-group.has-error input:focus,.contact-page .contact-form .form-group.has-error select:focus,.contact-page .contact-form .form-group.has-error textarea:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.contact-page .contact-form .field-error{color:#dc2626;align-items:center;gap:6px;margin-top:6px;font-size:.85rem;font-weight:500;animation:.2s ease-out fadeIn;display:flex}.contact-page .contact-form .field-error:before{content:"⚠";font-size:.9rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.contact-page .contact-form label{color:var(--text-color);margin-bottom:8px;font-size:.95rem;font-weight:600;display:block}.contact-page .contact-form input,.contact-page .contact-form select,.contact-page .contact-form textarea{box-sizing:border-box;background:#fff;border:2px solid #e2e8f0;border-radius:8px;width:100%;min-height:48px;padding:14px 16px;font-family:inherit;font-size:16px;transition:all .3s}@media (max-width:480px){.contact-page .contact-form input,.contact-page .contact-form select,.contact-page .contact-form textarea{min-height:52px;padding:16px;font-size:16px}}.contact-page .contact-form input:focus,.contact-page .contact-form select:focus,.contact-page .contact-form textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f61a}.contact-page .contact-form input.error,.contact-page .contact-form select.error,.contact-page .contact-form textarea.error{background-color:#fef2f2;border-color:#dc2626}.contact-page .contact-form input.error:focus,.contact-page .contact-form select.error:focus,.contact-page .contact-form textarea.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.contact-page .contact-form input::placeholder,.contact-page .contact-form select::placeholder,.contact-page .contact-form textarea::placeholder{color:#94a3b8}.contact-page .contact-form textarea{resize:vertical;min-height:120px;line-height:1.5}.contact-page .contact-form select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.contact-page .contact-form .required{color:#dc2626;margin-left:2px;font-weight:700}.contact-page .contact-form .error-message{color:#dc2626;align-items:center;gap:6px;margin-top:6px;font-size:.875rem;font-weight:500;display:flex}.contact-page .contact-form .error-message:before{content:"⚠";font-size:1rem}.contact-page .contact-form .error-message.general-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:12px 16px}.contact-page .contact-form .error-message.general-error .error-icon{margin-right:4px;font-size:1.2rem}.contact-page .success-message{text-align:center;background:linear-gradient(135deg,#d1fae5 0%,#a7f3d0 100%);border:2px solid #10b981;border-radius:12px;margin-bottom:24px;padding:32px 24px;animation:.4s cubic-bezier(.175,.885,.32,1.275) fadeInScale}.contact-page .success-message .success-icon{margin:0 auto 16px;animation:.6s cubic-bezier(.175,.885,.32,1.275) checkmark}.contact-page .success-message .success-icon svg{margin:0 auto;display:block}.contact-page .success-message h3{color:#065f46;margin:0 0 12px;font-size:1.5rem;font-weight:700}.contact-page .success-message p{color:#047857;margin:0 0 20px;font-size:1.05rem}.contact-page .success-message .next-steps{text-align:left;background:#fff;border-radius:8px;margin-top:20px;padding:16px 20px}.contact-page .success-message .next-steps strong{color:#065f46;margin-bottom:12px;font-size:1.1rem;display:block}.contact-page .success-message .next-steps ul{margin:0;padding:0;list-style:none}.contact-page .success-message .next-steps ul li{color:#047857;padding:6px 0 6px 24px;position:relative}.contact-page .success-message .next-steps ul li:before{content:"✓";color:#10b981;font-size:1.1rem;font-weight:700;position:absolute;left:0}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes checkmark{0%{transform:scale(0)rotate(-45deg)}50%{transform:scale(1.2)rotate(10deg)}to{transform:scale(1)rotate(0)}}.contact-page .submit-button{color:#fff!important;cursor:pointer!important;opacity:1!important;visibility:visible!important;z-index:10!important;background:linear-gradient(135deg,#3b82f6,#1e40af)!important;border:none!important;border-radius:8px!important;outline:none!important;justify-content:center!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:56px!important;margin-top:8px!important;margin-bottom:0!important;padding:18px 32px!important;font-size:1.1rem!important;font-weight:600!important;transition:all .3s!important;display:flex!important;position:relative!important;box-shadow:0 2px 8px #3b82f633!important}@media (max-width:480px){.contact-page .submit-button{min-height:52px!important;font-size:1.05rem!important}}.contact-page .submit-button .spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.contact-page .submit-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;transform:translateY(-2px)!important;box-shadow:0 8px 25px #3b82f64d!important}.contact-page .submit-button:active:not(:disabled){transform:translateY(0)!important}.contact-page .submit-button:disabled{opacity:.7!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}.contact-page .submit-button:focus-visible{outline-offset:2px!important;outline:2px solid #1e40af!important}.contact-form .form-success,.contact-form .form-error{border-radius:12px;align-items:flex-start;gap:16px;margin-bottom:24px;padding:20px;animation:.3s ease-out fadeInScale;display:flex}.contact-form .form-success svg,.contact-form .form-error svg{flex-shrink:0;margin-top:2px}.contact-form .form-success strong,.contact-form .form-error strong{margin-bottom:4px;font-weight:600;display:block}.contact-form .form-success p,.contact-form .form-error p{margin:0;font-size:.95rem}.contact-form .form-success{color:#065f46;background:#d1fae5;border:1px solid #10b981}.contact-form .form-success svg{color:#10b981}.contact-form .form-error{color:#991b1b;background:#fee2e2;border:1px solid #dc2626}.contact-form .form-error svg{color:#dc2626}.contact-form .submit-button.submitting{cursor:wait!important;background:linear-gradient(135deg,#60a5fa,#3b82f6)!important}.contact-form .submit-button .loading-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}.contact-form input:disabled,.contact-form select:disabled,.contact-form textarea:disabled{cursor:not-allowed;opacity:.7;background-color:#f8fafc}.contact-form-section form .submit-button,.contact-form .submit-button,button.submit-button{color:#fff!important;opacity:1!important;visibility:visible!important;text-transform:none!important;letter-spacing:normal!important;background:linear-gradient(135deg,#3b82f6,#1e40af)!important;border:2px solid #3b82f6!important;font-family:inherit!important;display:block!important;box-shadow:0 4px 12px #3b82f64d!important}.contact-form-section form .submit-button:hover,.contact-form .submit-button:hover,button.submit-button:hover{color:#fff!important;background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:#2563eb!important;transform:translateY(-2px)!important}.contact-why-choose{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);padding:80px 20px}@media screen and (max-width:480px){.contact-why-choose{padding:40px 16px}}.contact-why-choose .why-choose-content{text-align:center;max-width:1000px;margin:0 auto}.contact-why-choose .why-choose-content h2{color:var(--text-color);margin-bottom:50px;font-size:2.5rem;font-weight:700}@media screen and (max-width:480px){.contact-why-choose .why-choose-content h2{margin-bottom:30px;font-size:1.5rem}}.contact-why-choose .benefits-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px;display:grid}.contact-why-choose .benefits-grid .benefit-item{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:32px 24px;transition:transform .3s;box-shadow:0 4px 20px #0000000f}.contact-why-choose .benefits-grid .benefit-item:hover{transform:translateY(-4px)}.contact-why-choose .benefits-grid .benefit-item h3{color:var(--text-color);margin-bottom:12px;font-size:1.3rem;font-weight:700}.contact-why-choose .benefits-grid .benefit-item p{color:var(--text-muted);line-height:1.6}@media screen and (max-width:768px){.contact-hero{padding:60px 20px 50px}.contact-hero .contact-hero-content h1{font-size:2.5rem}.contact-hero .hero-subtitle{font-size:1.1rem}.contact-main{padding:50px 20px}.contact-form-section{padding:24px 20px 12px}.contact-why-choose{padding:50px 20px}.contact-why-choose .why-choose-content h2{font-size:2rem}}@media screen and (max-width:480px){.contact-cards{gap:24px}.contact-card{min-height:200px;padding:20px 16px}.contact-card .card-icon{width:48px;height:48px;margin-bottom:12px;font-size:18px}.contact-card h2{margin-bottom:4px;font-size:1.2rem;font-weight:700}.contact-card .card-description{margin-bottom:12px;font-size:.85rem;font-weight:500}.contact-card .contact-link{padding:10px 16px;font-size:1rem;font-weight:600}.benefits-grid{grid-template-columns:1fr;gap:20px}}
