/* ── Page wrapper ── */
.anoli-main {
  min-height: 100vh;
}

/* ── Section spacing ── */
.anoli-section {
  padding: var(--space-xl) var(--space-md);
}
.anoli-section--flush { padding-left: 0; padding-right: 0; }
.anoli-section--sm    { padding-top: var(--space-lg); padding-bottom: var(--space-lg); }

/* ── World transition band (dark → cream gradient strip) ── */
.anoli-world-band {
  height: 80px;
  background: linear-gradient(180deg, var(--dark-surface) 0%, var(--cream) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-md);
}
.anoli-world-band__line-dark  { flex: 1; max-width: 60px; height: 1px; background: var(--gold-border); }
.anoli-world-band__line-light { flex: 1; max-width: 60px; height: 1px; background: rgba(26,26,26,0.2); }
.anoli-world-band__pip {
  width: 6px; height: 6px;
  background: var(--gold);
  transform: rotate(45deg);
  flex-shrink: 0;
}

/* ── 2-column grid (category tiles, desktop product grid) ── */
.anoli-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-xs); }
.anoli-grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--space-sm); }

/* ── Section header: overline + title ── */
.anoli-section-header { margin-bottom: var(--space-lg); }
.anoli-section-header .anoli-overline { margin-bottom: var(--space-xs); }
.anoli-section-header .anoli-heading  { font-size: var(--text-xl); }

/* ── Hero ── */
.anoli-hero {
  min-height: 60vh;
  display: flex; align-items: center; justify-content: center;
  padding: var(--space-2xl) var(--space-md);
}
.anoli-hero__inner {
  display: flex; flex-direction: column;
  align-items: center; gap: var(--space-md);
  text-align: center; width: 100%; max-width: 360px;
}
.anoli-hero__logo { width: 160px; height: auto; }
.anoli-hero__rule {
  width: 140px; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  transform-origin: center;
}
.anoli-hero__tagline {
  font-family: var(--font-serif);
  font-size: var(--text-xl); font-weight: 300;
  color: var(--dark-body); letter-spacing: 0.04em;
}

/* ── Category tiles ── */
.anoli-cat-tile {
  display: flex; flex-direction: column; justify-content: flex-end;
  min-height: 140px; padding: var(--space-md);
  background: var(--dark-card) center/cover no-repeat;
  position: relative; overflow: hidden;
  text-decoration: none;
}
.anoli-cat-tile__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(5,3,2,0.85) 0%, transparent 60%);
}
.anoli-cat-tile__name {
  position: relative; z-index: 1;
  font-size: var(--text-xs); letter-spacing: 0.15em; text-transform: uppercase;
  color: rgba(240,236,228,0.88);
}

/* ── Responsive: tablet+ ── */
@media (min-width: 768px) {
  body {
    padding-bottom: 0;
  }
  .anoli-section { padding: var(--space-2xl) var(--space-xl); }
}

@media (min-width: 1024px) {
  .anoli-section { padding: var(--space-2xl) 80px; }
}
