/* ═══════════════════════════════════════════════════════════
   SACRED GEOMETRY — patterns, borders, ornaments
   Geometry is the frozen breath of the field.
   ═══════════════════════════════════════════════════════════ */

/* Flower of Life — the seed pattern beneath all pages */
.bg-flower-of-life {
  position: relative;
}
.bg-flower-of-life::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='104' viewBox='0 0 120 104'%3E%3Cg fill='none' stroke='%23d4a843' stroke-width='1'%3E%3Ccircle cx='60' cy='52' r='26'/%3E%3Ccircle cx='34' cy='52' r='26'/%3E%3Ccircle cx='86' cy='52' r='26'/%3E%3Ccircle cx='47' cy='26' r='26'/%3E%3Ccircle cx='73' cy='26' r='26'/%3E%3Ccircle cx='47' cy='78' r='26'/%3E%3Ccircle cx='73' cy='78' r='26'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 120px 104px;
  opacity: 0.02;
  pointer-events: none;
  z-index: 0;
}

/* Sacred border — a vessel with geometry at every threshold */
.sacred-border {
  position: relative;
  border: 1px solid var(--phi-stroke);
  border-radius: 12px;
  overflow: hidden;
  background: var(--phi-bg-card);
}

/* The pattern whispers within the border */
.sacred-border::before {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: 12px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='104' viewBox='0 0 120 104'%3E%3Cg fill='none' stroke='%23d4a843' stroke-width='1'%3E%3Ccircle cx='60' cy='52' r='26'/%3E%3Ccircle cx='34' cy='52' r='26'/%3E%3Ccircle cx='86' cy='52' r='26'/%3E%3Ccircle cx='47' cy='26' r='26'/%3E%3Ccircle cx='73' cy='26' r='26'/%3E%3Ccircle cx='47' cy='78' r='26'/%3E%3Ccircle cx='73' cy='78' r='26'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 120px 104px;
  opacity: 0.03;
  pointer-events: none;
}

/* Corner ornaments — golden spirals unfurling at the corners.
   Quarter-arcs whose radii step by φ approximate the nautilus whorl. */
.sacred-border::after {
  content: '';
  position: absolute;
  top: 8px;
  right: 8px;
  width: 26px;
  height: 26px;
  border-top: 1px solid var(--phi-gold-dim);
  border-right: 1px solid var(--phi-gold-dim);
  border-top-right-radius: 100%;
  opacity: 0.5;
  transition: opacity var(--phi-duration) var(--phi-ease);
  pointer-events: none;
}
.sacred-border:hover::after {
  opacity: 1;
  border-color: var(--phi-gold);
}

/* Secondary spiral arcs — the inner whorl, placed as utility elements */
.sacred-corner-inner {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 16px;
  height: 16px;
  border-top: 1px solid var(--phi-gold);
  border-right: 1px solid var(--phi-gold);
  border-top-right-radius: 100%;
  opacity: 0.35;
  pointer-events: none;
}
.sacred-corner-alt {
  position: absolute;
  bottom: 8px;
  left: 8px;
  width: 26px;
  height: 26px;
  border-bottom: 1px solid var(--phi-gold-dim);
  border-left: 1px solid var(--phi-gold-dim);
  border-bottom-left-radius: 100%;
  opacity: 0.5;
  pointer-events: none;
}
.sacred-corner-alt-inner {
  position: absolute;
  bottom: 14px;
  left: 14px;
  width: 16px;
  height: 16px;
  border-bottom: 1px solid var(--phi-gold);
  border-left: 1px solid var(--phi-gold);
  border-bottom-left-radius: 100%;
  opacity: 0.35;
  pointer-events: none;
}

/* Glowing accent line — light gathered to a single thread */
.glow-line {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    var(--phi-gold-dim) 20%,
    var(--phi-gold) 50%,
    var(--phi-gold-dim) 80%,
    transparent 100%
  );
  opacity: 0.4;
}

/* Sacred divider — two lines embracing a breathing dot */
.sacred-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--phi-space-lg);
  padding: var(--phi-space-2xl) 0;
}
.sacred-divider::before,
.sacred-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--phi-stroke), transparent);
}
.sacred-divider .dot {
  width: 6px;
  height: 6px;
  background: var(--phi-gold);
  border-radius: 50%;
  animation: pulse-glow 3s var(--phi-ease) infinite;
}

/* Geometry card — a card that awakens to attention */
.geo-card {
  position: relative;
  background: var(--phi-bg-card);
  border: 1px solid var(--phi-stroke);
  border-radius: 12px;
  padding: var(--phi-space-xl);
  transition: all var(--phi-duration) var(--phi-ease);
  overflow: hidden;
}
.geo-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 0%,
    var(--phi-gold-glow) 0%, transparent 60%);
  opacity: 0;
  transition: opacity var(--phi-duration) var(--phi-ease);
  pointer-events: none;
}
.geo-card:hover {
  border-color: var(--phi-gold-dim);
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(212, 168, 67, 0.1);
}
.geo-card:hover::before {
  opacity: 1;
}

/* Hexagon badge — the honeycomb cell of the field.
   Note: clip-path severs the border; the glow edge stands in for it. */
.hex-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: var(--phi-bg-elevated);
  box-shadow: inset 0 0 0 1px var(--phi-gold-dim);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  font-family: var(--font-sacred);
  color: var(--phi-gold);
  font-size: var(--phi-caption);
}

/* Emblem ring — a circled sigil in gold, resting visible */
.emblem-ring {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--phi-stroke-glow);
  border-radius: 50%;
  color: var(--phi-gold);
  font-family: var(--font-sacred);
  font-size: var(--phi-caption);
  transition: box-shadow var(--phi-duration) var(--phi-ease);
}
.emblem-ring:hover {
  box-shadow: 0 0 12px var(--phi-gold-glow);
}
