footer {
    background:#1F2937;
    color:#fff;
    padding:60px 0 30px;
    @media screen and (max-width:1025px) {padding:30px 0 15px;}
}
footer .row {
    align-items:center;
    justify-content:space-between;
    gap:15px;
    @media screen and (max-width:1025px) {
        justify-content:center;
    }
}
footer a.logo span {
    color:#fff;
}
footer nav {
    @media screen and (max-width:1025px) {width:100%;}
}
footer nav ul.footer_links {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    list-style:none;
    margin:0;
    padding:0;
    @media screen and (max-width:575px) {flex-flow:column; align-items:center; gap:5px;}
}
footer nav ul.footer_links li a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 1rem;
    transition: color 0.3s;
}
footer nav ul.footer_links li:hover a {
    color:#fff;
}
footer a.mailto {
    display:flex;
    gap:10px;
    align-items:center;
    text-decoration:none;
}
footer a.mailto img {
    width:15px;
    height:15px;
}
footer a.mailto span {
    flex: 1 1 0;
    color:#fff;
}
.overline {
    width:100%;
    border-top:1px solid rgba(255, 255, 255, 0.1);
    padding-top:30px;
}
.copyright {
    @media screen and (max-width:1025px) {text-align:center;}
}
.copyright a {
    color:rgba(255, 255, 255, 0.8);;
}
.copyright a:hover {
    color:#fff;
}

.modal-overlay {
          position: fixed;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background-color: rgba(0, 0, 0, 0.5);
          display: flex;
          justify-content: center;
          align-items: center;
          z-index: 1000;
          opacity: 0;
          transition: opacity 0.3s ease;
        }
        
        .modal-overlay.show {
          opacity: 1;
        }
        
        .modal-content {
          background: white;
          padding: 30px;
          border-radius: 10px;
          max-width: 500px;
          width: 90%;
          position: relative;
          transform: scale(0.7);
          transition: transform 0.3s ease;
        }
        
        .modal-overlay.show .modal-content {
          transform: scale(1);
        }
        
        .modal-close {
          position: absolute;
          top: 15px;
          right: 15px;
          background: none;
          border: none;
          font-size: 30px;
          cursor: pointer;
          color: #666;
          line-height: 1;
          padding: 0;
          width: 30px;
          height: 30px;
        }
        
        .modal-close:hover {
          color: #000;
        }
        
        .modal-title {
          margin: 15px 0 25px 0;
          font-size: 24px;
          color: #333;
          @media screen and (max-width:575px) {font-size:18px;}
        }
        
        .callback-form {
          display: flex;
          flex-direction: column;
        }
        
        .form-group label {
          display: block;
          margin-bottom: 8px;
          color: #333;
          font-weight: 500;
        }
        
        .form-group input:not([type="checkbox"]) {
          width: 100%;
          padding: 12px;
          border: 1px solid #ddd;
          border-radius: 5px;
          font-size: 16px;
          box-sizing: border-box;
          transition: border-color 0.3s;
        }
        
        .form-group input:focus {
          outline: none;
          border-color: #4CAF50;
        }
        
        .form-group input.error {
          border-color: #f44336;
        }
        
        .error-message {
          display: block;
          color: #f44336;
          font-size: 14px;
          margin-top: 5px;
          min-height: 20px;
          @media screen and (max-width:575px) {font-size:12px;}
        }
        
        .submit-btn {
          background-color: #4CAF50;
          color: white;
          padding: 14.4px;
          border: none;
          border-radius: 5px;
          font-size: 16px;
          cursor: pointer;
          transition: background-color 0.3s;
          margin-top: 10px;
        }
        
        .submit-btn:hover {
          background-color: #45a049;
        }
        
        .submit-btn:disabled {
          background-color: #ccc;
          cursor: not-allowed;
        }
        
        .success-message {
          text-align: center;
          padding: 20px;
        }
        
        .success-message p {
          color: #4CAF50;
          font-size: 18px;
          margin: 0;
        }
        .form-group label.checkbox-label {
            display:flex;
            gap:5px;
        }
        .checkbox-text {
            font-size:12px;
            color:#666;
        }