﻿/* Newsletter subscribe / unsubscribe pages — same card design as ContactUs.aspx */
.ml-wrap { max-width: 640px; margin: 0 auto; padding: 32px 20px; }
.ml-card {
    background: #fff; border-radius: 18px; overflow: hidden;
    border: 1px solid #e9ecef; box-shadow: 0 18px 50px rgba(7,31,23,.12);
}
.ml-header { background: linear-gradient(135deg, #0a3d2e, #1e7a57); color: #fff; padding: 28px 32px; }
.ml-header h2 { margin: 0; font-size: 28px; font-weight: 700; }
.ml-header p { margin: 8px 0 0; opacity: .92; }
.ml-body { padding: 32px; }
.ml-field { display: flex; flex-direction: column; gap: 8px; margin-bottom: 18px; }
.ml-field label { font-weight: 600; color: #0a3d2e; }
.ml-field input {
    width: 100%; box-sizing: border-box; border: 2px solid #e7ece8; border-radius: 12px;
    padding: 14px 16px; font-size: 16px; outline: none; transition: .25s ease; background: #fff;
}
.ml-field input:focus { border-color: #1e7a57; box-shadow: 0 0 0 4px rgba(30,122,87,.12); }
.ml-btn {
    border: none; border-radius: 999px; padding: 14px 28px; font-weight: 700; font-size: 15px;
    cursor: pointer; transition: .25s ease; color: #fff;
    background: linear-gradient(135deg, #1e7a57, #2a9968) !important;
}
.ml-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(30,122,87,.25) !important; }
.ml-msg { display: block; margin-bottom: 18px; padding: 14px 16px; border-radius: 12px; }
.ml-msg:empty { display: none; }
.ml-msg-success { background: #edfdf3; color: #067647; border: 1px solid #b9f1cc; }
.ml-msg-error { background: #fff3f3; color: #b42318; border: 1px solid #ffd3d3; }
.ml-foot { margin: 18px 0 0; font-size: 14px; color: #5a6b63; }
.ml-foot a { color: #1e7a57; font-weight: 600; }
@media (max-width: 768px) {
    .ml-header, .ml-body { padding-left: 20px; padding-right: 20px; }
}
