/* ════════════════════════════════════════════════════════════════
   AVULLY NATATION — Design System (Figma Make → Elementor)
   Fonts : Nunito (titres) + DM Sans (corps)
   ════════════════════════════════════════════════════════════════ */

:root {
  --an-primary:    #0B96C5;
  --an-primary-dk: #065878;
  --an-accent:     #F5713A;
  --an-accent-dk:  #D45A28;
  --an-light:      #F5F8FA;
  --an-ice:        #E3F5FB;
  --an-text:       #1B2E38;
  --an-muted:      #637685;
  --an-muted-lt:   #9AAFBB;
  --an-footer:     #0D1E28;
  --an-white:      #FFFFFF;
  --an-danger:     #E53935;
}

/* ── Scope global pour le contenu Avully ──────────────────────── */
.an-root {
  font-family: 'DM Sans', sans-serif;
  color: var(--an-text);
  font-size: 16px;
  line-height: 1.6;
}
.an-root *,
.an-root *::before,
.an-root *::after { box-sizing: border-box; }

.an-root h1, .an-root h2, .an-root h3, .an-root h4 {
  font-family: 'Nunito', sans-serif;
  margin: 0;
}
.an-root p { margin: 0; }
.an-root img { display: block; max-width: 100%; }
.an-root a { text-decoration: none; }

.an-wrap { max-width: 1200px; margin: 0 auto; width: 100%; }
.an-section { padding: 96px 40px; }
.an-section--sm { padding: 80px 40px; }

/* Alternance de fonds */
.an-bg-white { background: var(--an-white); }
.an-bg-light { background: var(--an-light); }
.an-bg-ice   { background: var(--an-ice); }
.an-bg-deep  { background: var(--an-primary-dk); }
.an-bg-dark  { background: var(--an-text); }
.an-bg-grad  { background: linear-gradient(135deg, var(--an-primary), var(--an-primary-dk)); }

/* ── BOUTONS ──────────────────────────────────────────────────── */
.an-btn {
  display: inline-flex; align-items: center; justify-content: center;
  font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 16px;
  padding: 14px 32px; border-radius: 50px; border: none; cursor: pointer;
  transition: all 0.22s cubic-bezier(0.4,0,0.2,1);
}
.an-btn--cta {
  background: var(--an-accent); color: #fff;
  box-shadow: 0 8px 24px rgba(245,113,58,0.35);
}
.an-btn--cta:hover { background: var(--an-accent-dk); transform: translateY(-2px); }
.an-btn--ghost {
  background: transparent; color: #fff; border: 2px solid #fff;
  font-weight: 600; padding: 12px 30px;
}
.an-btn--ghost:hover { background: rgba(255,255,255,0.15); }
.an-btn--outline {
  background: transparent; color: var(--an-primary); border: 2px solid var(--an-primary);
  font-weight: 700; padding: 12px 30px;
}
.an-btn--outline:hover { background: var(--an-primary); color: #fff; }
.an-btn--outline-mut {
  background: transparent; color: var(--an-muted); border: 2px solid var(--an-muted);
  font-weight: 600; padding: 12px 30px;
}
.an-btn--outline-mut:hover { background: var(--an-muted); color: #fff; }
.an-btn--ghost-w { background: transparent; color:#fff; border:2px solid rgba(255,255,255,0.5); font-weight:700; padding:12px 30px; }
.an-btn--ghost-w:hover { background: rgba(255,255,255,0.15); }
.an-btn--full { width: 100%; }

/* ── EYEBROW / TITRES ─────────────────────────────────────────── */
.an-eyebrow {
  font-family: 'DM Sans', sans-serif; font-size: 13px; color: var(--an-primary);
  text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 12px; font-weight: 600;
}
.an-eyebrow--accent { color: var(--an-primary); }
.an-h2 {
  font-family: 'Nunito', sans-serif; font-weight: 800;
  font-size: clamp(28px, 4vw, 42px); color: var(--an-text);
  letter-spacing: -0.02em; line-height: 1.15;
}
.an-h2--white { color: #fff; }
.an-lead { font-size: 17px; color: var(--an-muted); line-height: 1.6; }
.an-section-head { text-align: center; margin-bottom: 48px; }
.an-section-head .an-h2 { margin-bottom: 12px; }

/* ── NAVBAR ───────────────────────────────────────────────────── */
.an-navbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000; height: 72px;
  display: flex; align-items: center; padding: 0 40px;
  background: var(--an-white); box-shadow: 0 2px 20px rgba(13,30,40,0.12);
  transition: background 0.3s ease, box-shadow 0.3s ease;
}
.an-navbar.is-transparent { background: transparent; box-shadow: none; }
.an-navbar__inner {
  max-width: 1200px; margin: 0 auto; width: 100%;
  display: flex; align-items: center; justify-content: space-between;
}
.an-logo { display: flex; align-items: center; gap: 10px; }
.an-logo svg { width: 28px; height: 28px; }
.an-logo__txt {
  font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 20px;
  color: var(--an-text); white-space: nowrap;
}
.an-navbar.is-transparent .an-logo__txt { color: #fff; }
.an-navbar.is-transparent .an-logo svg path { stroke: #fff; }

.an-nav { display: flex; align-items: center; gap: 32px; }
.an-nav__link {
  font-family: 'DM Sans', sans-serif; font-weight: 500; font-size: 15px;
  color: var(--an-text); transition: color 0.2s; position: relative;
  background: none; border: none; cursor: pointer; display: flex; align-items: center; gap: 4px;
}
.an-nav__link:hover { color: var(--an-primary); }
.an-navbar.is-transparent .an-nav__link { color: #fff; }
.an-navbar.is-transparent .an-nav__link:hover { color: var(--an-ice); }

.an-nav__item { position: relative; }
.an-nav__drop {
  position: absolute; top: 100%; left: 0; margin-top: 8px; background: #fff;
  border-radius: 12px; box-shadow: 0 8px 32px rgba(11,150,197,0.15);
  padding: 8px 0; min-width: 190px; opacity: 0; visibility: hidden;
  transform: translateY(-6px); transition: all 0.2s;
}
.an-nav__item:hover .an-nav__drop { opacity: 1; visibility: visible; transform: translateY(0); }
.an-nav__drop a {
  display: block; padding: 10px 20px; font-family: 'DM Sans', sans-serif;
  font-size: 14px; color: var(--an-text); transition: color 0.2s;
}
.an-nav__drop a:hover { color: var(--an-primary); }

.an-burger { display: none; background: none; border: none; cursor: pointer; padding: 8px; }
.an-mobile { display: none; }

/* ── HERO ACCUEIL ─────────────────────────────────────────────── */
.an-hero {
  position: relative; min-height: 100vh; display: flex; align-items: center;
  overflow: hidden; background: var(--an-primary-dk);
}
.an-hero__bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.an-hero__overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(6,88,120,0.85), rgba(11,150,197,0.55)); }
.an-hero__inner {
  position: relative; z-index: 1; max-width: 1200px; margin: 0 auto; width: 100%;
  padding: 100px 40px 80px; display: flex; gap: 48px; align-items: center;
}
.an-hero__left { flex: 0 0 58%; display: flex; flex-direction: column; gap: 20px; }
.an-badge-pill {
  display: inline-flex; align-self: flex-start; padding: 6px 16px; border-radius: 50px;
  background: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.30);
  backdrop-filter: blur(4px); font-size: 13px; color: #fff;
}
.an-hero__h1 {
  font-family: 'Nunito', sans-serif; font-weight: 800;
  font-size: clamp(44px, 6vw, 72px); color: #fff; line-height: 1.1; letter-spacing: -0.03em;
}
.an-hero__sub { font-size: 18px; color: rgba(255,255,255,0.88); max-width: 480px; line-height: 1.6; }
.an-hero__btns { display: flex; gap: 16px; flex-wrap: wrap; }
.an-trust { display: flex; gap: 20px; flex-wrap: wrap; }
.an-trust span { font-size: 14px; color: rgba(255,255,255,0.8); display: flex; align-items: center; gap: 6px; }

.an-glass {
  flex: 0 0 38%; background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.25);
  border-radius: 24px; padding: 32px; backdrop-filter: blur(16px);
  box-shadow: 0 24px 64px rgba(0,0,0,0.25);
}
.an-glass__head { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.an-glass__head img { width: 80px; height: 80px; border-radius: 50%; object-fit: cover; border: 3px solid rgba(255,255,255,0.6); flex-shrink: 0; }
.an-glass__t { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 16px; color: #fff; }
.an-glass__st { font-size: 13px; color: rgba(255,255,255,0.8); }
.an-glass__row { display: flex; align-items: center; gap: 8px; color: #fff; font-size: 14px; margin-bottom: 10px; }
.an-glass__stats { border-top: 1px solid rgba(255,255,255,0.2); padding-top: 16px; display: flex; justify-content: space-between; margin-top: 16px; }
.an-glass__num { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 28px; color: #fff; }
.an-glass__lbl { font-size: 12px; color: rgba(255,255,255,0.7); }

.an-scroll { position: absolute; bottom: 32px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 4px; color: #fff; }
.an-scroll svg { animation: an-bounce 1.5s infinite; }
.an-scroll span { font-size: 12px; }
@keyframes an-bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(8px)} }

/* ── HERO INTERNE ─────────────────────────────────────────────── */
.an-hero-int {
  height: 340px; position: relative; display: flex; align-items: center; overflow: hidden;
  background: var(--an-primary-dk);
}
.an-hero-int__bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.an-hero-int__ov { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(6,88,120,0.88), rgba(11,150,197,0.60)); }
.an-hero-int__in { position: relative; z-index: 1; max-width: 1200px; margin: 0 auto; width: 100%; padding: 72px 40px 0; }
.an-crumb { font-size: 13px; color: rgba(255,255,255,0.65); margin-bottom: 12px; }
.an-crumb a { color: rgba(255,255,255,0.65); }
.an-hero-int__h1 { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: clamp(32px,5vw,52px); color: #fff; line-height: 1.1; letter-spacing: -0.03em; margin-bottom: 12px; }
.an-hero-int__sub { font-size: 18px; color: rgba(255,255,255,0.85); }

/* ── CARDS ACTIVITÉS (image top) ──────────────────────────────── */
.an-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; }
.an-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.an-grid-2 { display: grid; grid-template-columns: repeat(2,1fr); gap: 32px; }

.an-card {
  border-radius: 20px; overflow: hidden; background: #fff;
  box-shadow: 0 4px 24px rgba(11,150,197,0.10); transition: transform 0.25s, box-shadow 0.25s;
  display: block; height: 100%;
}
.an-card:hover { transform: translateY(-8px); box-shadow: 0 12px 40px rgba(11,150,197,0.20); }
.an-card__img { height: 180px; overflow: hidden; background: var(--an-ice); }
.an-card__img img { width: 100%; height: 100%; object-fit: cover; }
.an-card__body { padding: 20px 24px; }
.an-card__icon { display: block; margin-bottom: 10px; }
.an-card__t { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 18px; color: var(--an-text); margin-bottom: 8px; }
.an-card__txt { font-size: 14px; color: var(--an-muted); line-height: 1.5; margin-bottom: 12px; }
.an-card__link { font-size: 14px; color: var(--an-primary); font-weight: 500; }

/* ── ICON BOX (why / valeurs) ─────────────────────────────────── */
.an-feat { display: flex; gap: 20px; align-items: flex-start; }
.an-feat__ico { width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.an-feat__t { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 17px; color: var(--an-text); margin-bottom: 6px; }
.an-feat__x { font-size: 14px; color: var(--an-muted); line-height: 1.6; }

.an-vcard { background: #fff; border-radius: 20px; padding: 32px; box-shadow: 0 4px 24px rgba(11,150,197,0.10); height: 100%; }
.an-vcard__ico { width: 48px; height: 48px; border-radius: 12px; background: var(--an-ice); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.an-vcard__t { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 18px; color: var(--an-text); margin-bottom: 8px; }
.an-vcard__x { font-size: 14px; color: var(--an-muted); line-height: 1.6; }

/* ── TWO COLUMNS (text + image) ──────────────────────────────── */
.an-split { display: flex; gap: 64px; align-items: center; }
.an-split__txt { flex: 1; }
.an-split__img { flex: 1; position: relative; }
.an-split__img img { width: 100%; height: 480px; object-fit: cover; border-radius: 20px; box-shadow: 0 16px 48px rgba(6,88,120,0.20); background: var(--an-ice); }
.an-split--55 .an-split__txt { flex: 0 0 52%; }
.an-float-badge { position: absolute; bottom: -20px; left: -20px; background: #fff; border-radius: 16px; padding: 20px 24px; box-shadow: 0 8px 32px rgba(11,150,197,0.15); }
.an-float-badge__n { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 36px; color: var(--an-primary); }
.an-float-badge__l { font-size: 13px; color: var(--an-muted); }

.an-body-txt p { font-size: 16px; color: var(--an-muted); line-height: 1.7; margin-bottom: 14px; }
.an-body-txt strong { color: var(--an-text); }

/* Chips */
.an-chips { display: flex; gap: 12px; flex-wrap: wrap; }
.an-chip { background: var(--an-ice); border-radius: 50px; padding: 8px 16px; font-size: 14px; color: var(--an-primary); font-weight: 500; }

/* ── LABELS ───────────────────────────────────────────────────── */
.an-label { display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.an-label__logo { width: 80px; height: 80px; background: var(--an-ice); border-radius: 8px; display: flex; align-items: center; justify-content: center; }
.an-label__logo span { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 22px; color: var(--an-primary); }
.an-label__n { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 16px; color: var(--an-text); }
.an-label__d { font-size: 13px; color: var(--an-muted); }

/* Label card (reglement) */
.an-lcard { background: #fff; border-radius: 20px; padding: 32px; box-shadow: 0 4px 24px rgba(11,150,197,0.10); height: 100%; }
.an-lcard__badge { display: inline-block; background: var(--an-ice); border-radius: 50px; padding: 4px 14px; font-size: 12px; color: var(--an-primary); font-weight: 600; margin-bottom: 12px; }
.an-lcard__t { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 20px; color: var(--an-text); margin: 12px 0 10px; }
.an-lcard__x { font-size: 14px; color: var(--an-muted); line-height: 1.7; }

/* ── GALERIE MOSAÏQUE ─────────────────────────────────────────── */
.an-gallery { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: auto auto; gap: 16px; }
.an-gallery__big { grid-row: 1/3; border-radius: 16px; overflow: hidden; background: var(--an-ice); }
.an-gallery__big img { width: 100%; height: 100%; object-fit: cover; }
.an-gallery__cell { border-radius: 16px; overflow: hidden; height: 200px; background: var(--an-ice); position: relative; }
.an-gallery__cell img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; }
.an-gallery__cell:hover img { transform: scale(1.05); }

/* ── AGENDA / EVENTS ──────────────────────────────────────────── */
.an-event { display: flex; gap: 20px; align-items: center; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); border-radius: 16px; padding: 20px 24px; }
.an-event__date { text-align: center; min-width: 48px; }
.an-event__day { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 32px; color: var(--an-accent); line-height: 1; }
.an-event__mon { font-size: 13px; color: var(--an-ice); }
.an-event__t { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 16px; color: #fff; margin-bottom: 6px; }
.an-event__tag { display: inline-block; padding: 2px 12px; border-radius: 50px; background: rgba(11,150,197,0.40); font-size: 12px; color: var(--an-ice); }
.an-hours-card { background: rgba(255,255,255,0.10); border: 1px solid rgba(255,255,255,0.20); border-radius: 20px; padding: 32px; }
.an-hours-card h3 { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 18px; color: #fff; margin-bottom: 20px; }
.an-hours-row { display: flex; justify-content: space-between; margin-bottom: 12px; font-size: 14px; color: #fff; }
.an-hours-row span:last-child { color: rgba(255,255,255,0.7); }

/* Timeline (agenda) */
.an-timeline { max-width: 800px; margin: 0 auto; }
.an-tl-item { display: flex; gap: 20px; align-items: flex-start; padding-bottom: 24px; position: relative; }
.an-tl-dot { width: 16px; height: 16px; border-radius: 50%; flex-shrink: 0; margin-top: 4px; }
.an-tl-date { min-width: 110px; font-size: 14px; color: var(--an-muted); font-weight: 500; }
.an-tl-body { background: var(--an-light); border-radius: 12px; padding: 16px 22px; flex: 1; }
.an-tl-body p { font-size: 15px; color: var(--an-text); }
.an-tl-tag { display: inline-block; margin-top: 6px; padding: 2px 12px; border-radius: 50px; font-size: 12px; }

/* ── CTA FINAL ────────────────────────────────────────────────── */
.an-cta-final { text-align: center; }
.an-cta-final .an-eyebrow { color: var(--an-primary); }
.an-cta-final__h2 { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: clamp(32px,5vw,52px); color: #fff; letter-spacing: -0.02em; margin-bottom: 16px; }
.an-cta-final__sub { font-size: 18px; color: var(--an-muted); margin-bottom: 32px; }
.an-cta-coords { display: flex; gap: 32px; justify-content: center; flex-wrap: wrap; }
.an-cta-coords span { font-size: 14px; color: var(--an-muted); display: flex; align-items: center; gap: 6px; }

/* ── TABLES ───────────────────────────────────────────────────── */
.an-table { width: 100%; border-collapse: collapse; border-radius: 16px; overflow: hidden; box-shadow: 0 4px 24px rgba(11,150,197,0.10); }
.an-table thead th { background: var(--an-text); color: #fff; padding: 14px 20px; text-align: left; font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 14px; }
.an-table tbody td { padding: 13px 20px; border-bottom: 1px solid var(--an-ice); font-size: 14px; color: var(--an-text); }
.an-table tbody tr:nth-child(even) td { background: var(--an-light); }
.an-table tbody tr:last-child td { border-bottom: none; }

/* ── ENCADRÉS / CALLOUTS ──────────────────────────────────────── */
.an-callout { border-radius: 12px; padding: 20px 24px; font-size: 14px; line-height: 1.6; }
.an-callout--ice { background: var(--an-ice); color: var(--an-muted); }
.an-callout--warn { background: #FFF8F5; border-left: 4px solid var(--an-accent); color: var(--an-text); }
.an-callout--danger { background: #FFF0F0; border-left: 4px solid var(--an-danger); color: var(--an-danger); font-weight: 600; }
.an-callout strong { color: var(--an-text); }
.an-callout--warn strong { color: var(--an-accent); }

/* ── PRICING CARD ─────────────────────────────────────────────── */
.an-price { border-radius: 20px; overflow: hidden; box-shadow: 0 4px 24px rgba(11,150,197,0.10); background: #fff; height: 100%; display: flex; flex-direction: column; }
.an-price__head { padding: 24px; color: #fff; text-align: center; }
.an-price__head h3 { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 18px; }
.an-price__body { padding: 28px 24px; flex: 1; display: flex; flex-direction: column; }
.an-price__amt { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 30px; color: var(--an-text); }
.an-price__per { font-size: 14px; color: var(--an-muted); margin-bottom: 16px; }
.an-price__list { list-style: none; padding: 0; margin: 0 0 20px; }
.an-price__list li { font-size: 14px; color: var(--an-muted); padding: 6px 0; display: flex; gap: 8px; align-items: center; }

/* Level cards (natation cours) */
.an-level { border-radius: 16px; overflow: hidden; box-shadow: 0 4px 24px rgba(11,150,197,0.10); background: #fff; }
.an-level__head { padding: 16px 20px; color: #fff; font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 18px; }
.an-level__body { padding: 24px; }
.an-level__row { font-size: 14px; color: var(--an-muted); margin-bottom: 8px; }
.an-level__row strong { color: var(--an-text); }

/* ── FORM (contact) ───────────────────────────────────────────── */
.an-form { display: flex; flex-direction: column; gap: 16px; }
.an-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.an-input, .an-select, .an-textarea {
  width: 100%; background: var(--an-light); border: 1px solid var(--an-ice); border-radius: 12px;
  padding: 14px 18px; font-family: 'DM Sans', sans-serif; font-size: 15px; color: var(--an-text);
  outline: none; transition: border 0.2s;
}
.an-input:focus, .an-select:focus, .an-textarea:focus { border-color: var(--an-primary); }
.an-textarea { min-height: 160px; resize: vertical; }
.an-check { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; color: var(--an-muted); }
.an-check input { accent-color: var(--an-primary); margin-top: 3px; }

.an-contact-card { background: var(--an-light); border-radius: 20px; padding: 32px; display: flex; flex-direction: column; gap: 24px; }
.an-contact-item { display: flex; gap: 16px; align-items: flex-start; }
.an-contact-item__ico { width: 48px; height: 48px; border-radius: 12px; background: var(--an-ice); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.an-contact-item h4 { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 16px; color: var(--an-text); margin-bottom: 4px; }
.an-contact-item p { font-size: 15px; color: var(--an-muted); line-height: 1.5; }

/* ── MAP PLACEHOLDER ──────────────────────────────────────────── */
.an-map-ph { background: var(--an-ice); border-radius: 20px; height: 400px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; }
.an-map-ph svg { color: var(--an-primary); }
.an-map-ph p { font-size: 14px; color: var(--an-muted); }

/* ── FOOTER ───────────────────────────────────────────────────── */
.an-footer { background: var(--an-footer); padding: 64px 40px 40px; }
.an-footer__grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 48px; }
.an-footer__brand { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.an-footer__brand span { font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 20px; color: #fff; }
.an-footer p, .an-footer a, .an-footer span { font-family: 'DM Sans', sans-serif; }
.an-footer__tagline { font-size: 14px; color: var(--an-muted); margin-bottom: 20px; line-height: 1.6; }
.an-footer__sep { border-top: 1px solid var(--an-text); margin: 20px 0; }
.an-footer__contact { display: flex; flex-direction: column; gap: 8px; }
.an-footer__contact div { display: flex; align-items: flex-start; gap: 8px; }
.an-footer__contact span { font-size: 13px; color: var(--an-muted-lt); line-height: 1.5; }
.an-social { display: flex; gap: 12px; margin-top: 20px; }
.an-social button { width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,0.06); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background 0.2s; }
.an-social button:hover { background: var(--an-primary); }
.an-footer h4 { font-family: 'Nunito', sans-serif; font-weight: 700; font-size: 16px; color: #fff; margin-bottom: 16px; }
.an-footer__links { display: flex; flex-direction: column; gap: 10px; }
.an-footer__links a { font-size: 14px; color: var(--an-muted-lt); transition: color 0.2s; }
.an-footer__links a:hover { color: #fff; }
.an-footer__label { font-size: 13px; color: var(--an-muted); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 8px; }
.an-footer__hours { font-size: 13px; color: var(--an-muted-lt); line-height: 1.7; }
.an-footer__news input { width: 100%; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.12); border-radius: 50px; padding: 12px 20px; font-size: 14px; color: #fff; margin-bottom: 8px; outline: none; }
.an-footer__news input::placeholder { color: var(--an-muted); }
.an-footer__bottom { border-top: 1px solid var(--an-text); margin-top: 40px; padding-top: 20px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }
.an-footer__bottom p { font-size: 12px; color: var(--an-muted); }
.an-footer__legal { display: flex; gap: 24px; }
.an-footer__legal span { font-size: 12px; color: var(--an-muted); cursor: pointer; transition: color 0.2s; }
.an-footer__legal span:hover { color: #fff; }

/* ── RESPONSIVE ───────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .an-grid-4 { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 900px) {
  .an-section { padding: 64px 24px; }
  .an-hero__inner { flex-direction: column; padding: 100px 24px 60px; }
  .an-hero__left, .an-glass { flex: none; width: 100%; }
  .an-split { flex-direction: column; }
  .an-split__txt, .an-split__img { flex: none; width: 100%; }
  .an-grid-3 { grid-template-columns: 1fr; }
  .an-grid-2 { grid-template-columns: 1fr; }
  .an-agenda-split { flex-direction: column; }
  .an-nav, .an-navbar .an-btn { display: none; }
  .an-burger { display: block; }
  .an-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .an-form__row { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .an-grid-4 { grid-template-columns: 1fr; }
  .an-gallery { grid-template-columns: 1fr 1fr; }
  .an-gallery__big { grid-row: auto; grid-column: 1/3; height: 240px; }
  .an-footer__grid { grid-template-columns: 1fr; }
  .an-hero-int { height: 260px; }
  .an-footer__bottom { flex-direction: column; align-items: flex-start; }
}
