/*
Theme Name: Addict aux Sciences
Theme URI: https://example.org/addictauxsciences
Author: Ariane + ChatGPT
Author URI: https://example.org
Description: Site vitrine pour l'association "Addict aux sciences" avec Conférences et Expositions.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: addictauxsciences
*/

/* --- Reset & base --- */
* { box-sizing: border-box; }
html { font-size: 16px; }
body {
  margin: 0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  line-height: 1.6;
  color: #0f172a; /* slate-900 */
  background: #ffffff;
}

a { color: #0ea5e9; text-decoration: none; }
a:hover { text-decoration: underline; }

.container { max-width: 1100px; margin: 0 auto; padding: 1rem; }

/* --- Header --- */
.site-header {
  position: sticky; top: 0; z-index: 10;
  background: #0b1220; color: #fff; border-bottom: 1px solid rgba(255,255,255,.08);
}
.site-brand { display: flex; align-items: baseline; gap: .5rem; padding: .75rem 1rem; }
.site-brand .title { font-weight: 800; letter-spacing: .2px; }
.site-brand .tagline { opacity: .8; font-size: .9rem; }

.nav { display: flex; gap: 1rem; flex-wrap: wrap; padding: .5rem 1rem 1rem; }
.nav a { color: #e2e8f0; }
.nav a:hover { color: #fff; }

/* --- Hero --- */
.hero {
  background: radial-gradient(1000px 400px at 80% -50%, #e0f2fe, transparent), #f8fafc;
  border-bottom: 1px solid #e5e7eb;
}
.hero-inner { padding: 4rem 1rem; text-align: center; }
.hero h1 { font-size: clamp(2rem, 4vw, 3rem); margin: 0 0 .5rem; }
.hero p { font-size: 1.1rem; color: #334155; }
.cta-row { margin-top: 1rem; display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }
.btn {
  display: inline-block; padding: .7rem 1rem; border-radius: .75rem; font-weight: 600; border: 1px solid #0ea5e9;
}
.btn-primary { background: #0ea5e9; color: white; }
.btn-ghost { background: transparent; color: #0ea5e9; }

/* --- Cards --- */
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.card { border: 1px solid #e2e8f0; border-radius: 1rem; overflow: hidden; background: white; }
.card img { width: 100%; height: 180px; object-fit: cover; display: block; }
.card-body { padding: 1rem; }
.card-title { font-size: 1.1rem; margin: 0 0 .25rem; }
.badge { display: inline-block; padding: .15rem .5rem; border-radius: .5rem; background: #e0f2fe; color: #0369a1; font-size: .8rem; }

/* --- Footer --- */
.site-footer { margin-top: 2rem; border-top: 1px solid #e5e7eb; background: #0b1220; color: #94a3b8; }
.site-footer .inner { padding: 2rem 1rem; }
.site-footer a { color: #e2e8f0; }

/* --- Content --- */
h2.section-title { margin: 2rem 0 1rem; font-size: 1.6rem; }
.post-meta { color: #64748b; font-size: .9rem; }
.wp-block-image img { max-width: 100%; height: auto; }

/* --- Forms --- */
input, textarea, select {
  width: 100%; padding: .7rem .8rem; border-radius: .6rem; border: 1px solid #cbd5e1;
}
button, input[type=submit] { cursor: pointer; }
