body { font-family: 'Cairo', Arial, sans-serif; background: #f7f9fa; margin: 0; color: #222; }
header { background: #1A3A52; color: #fff; padding: 24px 0 12px 0; text-align: center; }
header h1 { margin: 0; font-size: 2.2em; }
header h2 { margin: 0 0 12px 0; font-size: 1.2em; font-weight: normal; }
nav { margin-bottom: 10px; }
nav a { color: #fff; text-decoration: none; margin: 0 10px; font-weight: bold; }
nav a:hover { text-decoration: underline; }
main { max-width: 900px; margin: 30px auto; padding: 0 16px; }
section { margin-bottom: 40px; background: #fff; border-radius: 10px; box-shadow: 0 2px 8px #0001; padding: 24px; }
.card-grid { display: flex; flex-wrap: wrap; gap: 20px; }
.card { flex: 1 1 180px; background: #f3f6f8; border-radius: 8px; padding: 18px; text-align: center; box-shadow: 0 1px 4px #0001; }
.card .icon { font-size: 2.5em; display: block; margin-bottom: 10px; }
ul { padding-right: 20px; }
button { background: #1A3A52; color: #fff; border: none; border-radius: 6px; padding: 10px 18px; font-size: 1em; cursor: pointer; margin: 5px 0; }
button:hover { background: #D4A574; color: #1A3A52; }
footer { background: #1A3A52; color: #fff; text-align: center; padding: 18px 0; margin-top: 40px; border-radius: 10px 10px 0 0; }
.contact-info p { margin: 8px 0; }
input, textarea { width: 100%; padding: 8px; margin: 6px 0 14px 0; border: 1px solid #ccc; border-radius: 4px; font-size: 1em; }
.modal { position: fixed; top: 0; right: 0; left: 0; bottom: 0; background: #0007; display: flex; align-items: center; justify-content: center; z-index: 1000; }
.modal-content { background: #fff; padding: 30px; border-radius: 10px; max-width: 500px; width: 90%; position: relative; }
.close { position: absolute; left: 16px; top: 10px; font-size: 2em; color: #1A3A52; cursor: pointer; }
details { margin-bottom: 12px; }
@media (max-width: 700px) { .card-grid { flex-direction: column; } main { padding: 0 4px; } section { padding: 12px; } }