* { box-sizing: border-box; margin: 0; padding: 0; }

body { font-family: Arial, sans-serif; background: #f0f4f8; color: #222; }

header {
    background: #1F4E79;
    color: white;
    padding: 1em 2em;
}
header h1 { font-size: 1.6em; margin-bottom: .4em; }
header nav a { color: #DEEAF1; text-decoration: none; margin-right: 1em; }
header nav a:hover { color: #FFD966; }

main { max-width: 960px; margin: 2em auto; padding: 0 1.5em; }

h2 { color: #1F4E79; border-left: 4px solid #2E75B6; padding-left: .5em; margin-bottom: 1em; }
h3 { color: #2E75B6; margin: .8em 0 .4em; }

ul { list-style: none; padding: 0; }
ul li { padding: .4em 0; border-bottom: 1px solid #ddd; }
ul li.icon::before { content: "⛷ "; }

a { color: #2E75B6; text-decoration: none; }
a:hover { text-decoration: underline; }

table { width: 100%; border-collapse: collapse; background: white; margin-bottom: 1em; }
th { background: #1F4E79; color: white; padding: .5em 1em; text-align: left; }
td { border-bottom: 1px solid #eee; padding: .5em 1em; }
tr:nth-child(even) { background: #EBF3FB; }

article.station {
    display: flex;
    gap: 1.5em;
    background: white;
    border-radius: 8px;
    padding: 1.5em;
    box-shadow: 0 2px 8px rgba(0,0,0,.1);
}
article.station img { width: 280px; border-radius: 6px; object-fit: cover; }
article.station section { flex: 1; }

form p { margin-bottom: .6em; }
input[type="text"] { padding: .3em .6em; border: 1px solid #ccc; border-radius: 4px; width: 280px; }
input[type="submit"] { background: #2E75B6; color: white; border: none; padding: .4em 1.2em; border-radius: 4px; cursor: pointer; }
input[type="submit"]:hover { background: #1F4E79; }

.erreur { color: #C00000; background: #fff0f0; border-left: 4px solid #C00000; padding: .5em 1em; margin-bottom: 1em; }

footer { background: #1F4E79; color: #DEEAF1; text-align: center; padding: 1em; margin-top: 3em; font-size: .9em; }
