.contact-section{padding:70px 0}.contact-main-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:50px;align-items:start}.contact-left{position:sticky;top:100px}.contact-image-wrap{position:relative;display:flex;flex-direction:column}.contact-image-wrap img{width:100%;height:auto;display:block;border-radius:12px 12px 0 0;object-fit:cover}.contact-hours-box{background:var(--primary);border-radius:0 0 12px 12px;padding:22px 28px;display:flex;align-items:flex-start;gap:16px;color:#fff}.hours-icon-wrap{flex-shrink:0;width:44px;height:44px;background:#ffffff26;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:2px}.hours-text{display:flex;flex-direction:column;gap:3px}.hours-label{font-size:13px;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;display:block}.hours-text p{font-size:15px;color:#fff;line-height:1.5;margin:0}.contact-right{display:flex;flex-direction:column;gap:0}.contact-eyebrow{font-size:14px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.contact-heading{font-size:28px;font-weight:400;color:var(--primary);line-height:1.25;margin-bottom:14px}.contact-desc{font-size:15px;color:var(--text);line-height:1.7;margin-bottom:28px}.contact-info-list{display:flex;flex-direction:column;gap:14px;margin-bottom:32px}.contact-info-item{display:flex;align-items:flex-start;gap:16px;padding:16px 20px;background:#fff;border-radius:10px;border:1px solid #e4eaf4;transition:transform .2s ease,box-shadow .2s ease}.contact-info-item:hover{transform:translate(4px);box-shadow:0 4px 16px #06268b14}.contact-icon-circle{width:70px;height:70px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-info-text{display:flex;flex-direction:column;justify-content:center;gap:2px;padding-top:4px}.info-label{font-size:12px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.4px}.contact-info-text a{font-size:17px;font-weight:700;color:var(--primary);text-decoration:none;transition:color .2s}.contact-info-text a:hover{color:var(--accent)}.contact-info-text p{font-size:15px;color:#555;line-height:1.5;margin:0}.contact-form-section{background:var(--light-gray);padding:70px 0}.contact-form-center{max-width:650px;margin:0 auto}.contact-form-title{text-align:center;margin-bottom:8px}.contact-form-subtitle{text-align:center;color:var(--text);font-size:16px;margin-bottom:32px}.contact-form{display:flex;flex-direction:column;gap:0}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form .form-group{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.contact-form label{font-size:13px;font-weight:600;color:var(--primary)}.contact-form input,.contact-form textarea{width:100%;padding:12px 16px;border:1px solid #dde4ee;border-radius:8px;font-size:15px;color:#333;background:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit;box-sizing:border-box}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #1b99fe1f}.contact-form textarea{resize:vertical;min-height:120px}.contact-submit{width:100%;margin-top:4px}.form-success{margin-top:16px;padding:16px;background:#e8f5e9;border-radius:8px;text-align:center}.form-success p{color:#2e7d32;font-weight:500;margin:0}.form-error{margin-top:16px;padding:16px;background:#fbe9e7;border-radius:8px;text-align:center}.form-error p{color:#c62828;font-weight:500;margin:0}.sms-consent{display:flex;align-items:flex-start;gap:10px;margin:12px 0 16px}.sms-consent input[type=checkbox]{margin-top:3px;flex-shrink:0;width:18px;height:18px;accent-color:#1b99fe}.sms-consent label{font-size:13px;color:#666;line-height:1.5}.sms-consent a{color:#1b99fe;text-decoration:underline}.form-hp{position:absolute;left:-9999px;top:-9999px;opacity:0;height:0;width:0;overflow:hidden;pointer-events:none}@media(max-width:1024px){.contact-main-grid{grid-template-columns:1fr 1.2fr;gap:36px}.contact-left{position:static}}@media(max-width:768px){.contact-section{padding:48px 0}.contact-main-grid{grid-template-columns:1fr;gap:32px}.contact-left{position:static}.contact-image-wrap img{border-radius:12px 12px 0 0}.contact-heading{font-size:22px}.contact-form .form-row{grid-template-columns:1fr;gap:0}}
