.contact-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:4rem;margin-top:3rem}.contact-form-section{max-width:650px}.contact-form{margin-top:2rem;background:#fff9;padding:2.5rem;border-radius:16px;box-shadow:0 4px 20px #0000000f}.form-group{margin-bottom:1.75rem;position:relative}.form-group label{display:block;font-size:.95rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.625rem;letter-spacing:-.01em}.required{color:#e74c3c;margin-left:.25rem;font-weight:700}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem 1.125rem;font-size:1rem;font-family:inherit;color:var(--color-text-primary);background:#fffffff2;border:2px solid rgba(0,0,0,.08);border-radius:10px;transition:all .3s ease}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#00640c4d}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-brand-primary);background:#fff;box-shadow:0 0 0 4px #00640c1f;transform:translateY(-1px)}.form-group input.error,.form-group textarea.error,.form-group select.error{border-color:#e74c3c;background:#e74c3c0d}.form-group input.error:focus,.form-group textarea.error:focus,.form-group select.error:focus{box-shadow:0 0 0 4px #e74c3c26}.form-group textarea{resize:vertical;min-height:160px;line-height:1.6}.error-message{display:none;color:#e74c3c;font-size:.875rem;font-weight:500;margin-top:.625rem;padding:.5rem .75rem;background:#e74c3c14;border-left:3px solid #e74c3c;border-radius:4px}.error-message:before{content:"⚠ ";margin-right:.25rem}.form-actions{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06)}.btn{padding:1.125rem 3rem;font-size:1.0625rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;font-family:inherit;letter-spacing:.01em}.btn-primary{background:var(--color-brand-primary);color:#fff;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-primary:hover:before{width:300px;height:300px}.btn-primary:hover{background:var(--color-brand-primary-light);transform:translateY(-2px);box-shadow:0 6px 20px #00640c59}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px #00640c40}.btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary:disabled:before{display:none}.form-message{padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;font-size:.95rem}.form-message--success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.form-message--error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.contact-info{position:sticky;top:120px;height:fit-content;display:flex;flex-direction:column;gap:1.5rem}.phone-info{padding:2.75rem 2.25rem;background:linear-gradient(135deg,#00640c14,#00640c08);border:2px solid rgba(0,100,12,.15);border-radius:20px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.phone-info:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(0,100,12,.1) 0%,transparent 70%);opacity:0;transition:opacity .4s ease}.phone-info:after{content:"";position:absolute;top:1.5rem;left:1.5rem;width:60px;height:60px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(0,100,12,0.15)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'%3E%3C/path%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;opacity:1;transition:all .4s ease;z-index:0}.phone-info:hover:before{opacity:1}.phone-info:hover:after{opacity:.25;transform:scale(1.1) rotate(5deg)}.phone-info:hover{transform:translateY(-6px);box-shadow:0 12px 32px #00640c33;border-color:#00640c4d}.phone-info__label{font-size:.8125rem;color:var(--color-text-secondary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.15em;font-weight:700;position:relative;z-index:1}.phone-info__label:after{content:"";display:block;width:40px;height:2px;background:var(--color-brand-primary);margin:.5rem auto 0;border-radius:2px}.phone-info__number{display:block;font-size:2.5rem;font-weight:800;color:var(--color-brand-primary);text-decoration:none;margin:0 0 1.5rem;transition:all .3s ease;letter-spacing:-.02em;position:relative;z-index:1}.phone-info__number:hover{color:var(--color-brand-primary-light);transform:scale(1.08);text-shadow:0 2px 8px rgba(0,100,12,.2)}.phone-info__hours{font-size:.9375rem;color:var(--color-text-primary);margin:0;padding:.875rem 1.25rem;background:#fffc;border-radius:10px;font-weight:600;position:relative;z-index:1;box-shadow:0 2px 8px #0000000d}.phone-info__hours:before{content:"🕐";margin-right:.5rem}.contact-cta{padding:2.5rem 2.25rem;background:linear-gradient(135deg,#ffffffe6,#fff9);border-radius:20px;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 16px #0000000f;transition:all .3s ease;position:relative;overflow:hidden}.contact-cta:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--color-brand-primary) 0%,var(--color-accent-blue) 100%);border-radius:20px 0 0 20px}.contact-cta:hover{transform:translate(4px);box-shadow:0 6px 20px #00000014}.contact-cta h3{font-size:1.375rem;font-weight:700;color:var(--color-text-primary);margin:0 0 1.25rem;letter-spacing:-.01em;position:relative}.contact-cta p{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.85;margin:0;font-weight:400}@media (max-width: 1399px) and (min-width: 821px){.contact-wrapper{grid-template-columns:1.5fr 1fr;gap:2.5rem}.contact-form-section{max-width:100%}.contact-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.875rem 1rem;font-size:.95rem}.contact-info{position:static;display:flex;flex-direction:column;gap:1.5rem}.phone-info{padding:2rem 1.75rem}.phone-info__number{font-size:2rem;margin-bottom:1rem}.contact-cta{padding:2rem 1.75rem}.btn{padding:1rem 2.5rem;font-size:1rem}}@media (max-width: 820px){.contact-wrapper{grid-template-columns:1fr;gap:2rem}.contact-form-section{max-width:100%}.contact-info{position:static}.phone-info__number{font-size:1.5rem}.btn{width:100%}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.form-group input.error,.form-group textarea.error,.form-group select.error{animation:shake .5s ease-in-out}.form-message{animation:slideIn .4s ease-out}.honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important;visibility:hidden!important}.contact-page{padding:var(--spacing-xxl) 0}.contact-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xxl);margin-top:var(--spacing-xl)}.contact-info{padding:0;height:fit-content}.contact-info__section{margin-bottom:var(--spacing-xl)}.contact-info__section:last-child{margin-bottom:0}.contact-info__title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-brand-primary)}.contact-info__text{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.8;margin:0 0 var(--spacing-md) 0}.phone-info{background:var(--color-bg-primary);padding:var(--spacing-lg);border-radius:8px;text-align:center;box-shadow:0 2px 8px #0000001a}.phone-info__label{font-size:var(--font-size-sm);color:var(--color-text-light);margin:0 0 var(--spacing-sm) 0;font-weight:500}.phone-info__number{display:block;font-size:var(--font-size-2xl);font-weight:700;color:var(--color-brand-primary);text-decoration:none;margin:0 0 var(--spacing-sm) 0;transition:color .3s ease}.phone-info__number:hover{color:var(--color-brand-primary-dark)}.phone-info__hours{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.address-info{margin-top:var(--spacing-md)}.address-info__item{margin-bottom:var(--spacing-sm)}.address-info__label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);display:block;margin-bottom:var(--spacing-xs)}.address-info__value{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6}.contact-cta{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.cta-button{flex:1;padding:var(--spacing-md) var(--spacing-lg);border-radius:8px}@media (max-width: 1399px) and (min-width: 821px){.contact-page{padding:var(--spacing-xl) 0}.contact-container{padding:0 var(--spacing-lg)}.contact-grid{gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.contact-info__title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.contact-info__text{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}.phone-info{padding:var(--spacing-xl)}.phone-info__number{font-size:var(--font-size-xl);margin-bottom:var(--spacing-md)}.phone-info__label{font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.phone-info__hours,.address-info__label,.address-info__value{font-size:var(--font-size-base)}.contact-cta{gap:var(--spacing-lg)}.cta-button{padding:var(--spacing-lg) var(--spacing-xl)}}@media (max-width: 820px){.contact-page{padding:0}.contact-container{padding:0 var(--spacing-md)}.contact-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.contact-header__title{font-size:var(--font-size-2xl)}.contact-header__subtitle{font-size:var(--font-size-base)}.contact-info{padding:0}.contact-info__title{font-size:var(--font-size-lg)}.phone-info{padding:var(--spacing-md)}.phone-info__number{font-size:var(--font-size-xl)}.contact-cta{flex-direction:column}.cta-button{width:100%}}
