/* ASTROLINIA shared design foundation; department-specific styles MUST stay separate. */
@font-face {
  font-family: "Astro Manrope";
  src: url("../fonts/manrope-regular.b14c3069e3f7.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Astro Manrope";
  src: url("../fonts/manrope-semibold.9c61a253b039.ttf") format("truetype");
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
}
@font-face {
  font-family: "Astro Cormorant";
  src: url("../fonts/cormorant-semibold.9868f4ffd74c.ttf") format("truetype");
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
}
:root {
  --ast-plum: #681044;
  --ast-plum-dark: #3e1238;
  --ast-plum-hover: #85275e;
  --ast-violet-ink: #34203f;
  --ast-ink: #31263a;
  --ast-gold: #cd9963;
  --ast-gold-pale: #e9cb9b;
  --ast-paper: #fffaf5;
  --ast-white: #fff;
  --ast-hairline: #f0e2d7;
  --ast-font-body: "Astro Manrope", "Segoe UI", Arial, sans-serif;
  --ast-font-display: "Astro Cormorant", Georgia, "Times New Roman", serif;
  --ast-container-max: 1360px;
  --ast-gutter: clamp(16px, 3vw, 46px);
  --ast-header-height: 80px;
  color-scheme: light;
}
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--ast-ink);
  background: var(--ast-paper);
  font-family: var(--ast-font-body);
  -webkit-font-smoothing: antialiased;
  line-height: 1.55;
}
button, input, select, textarea { font: inherit; }
a { color: inherit; }
.ast-container {
  width: min(var(--ast-container-max), calc(100% - 2 * var(--ast-gutter)));
  margin-inline: auto;
}
.ast-page-workspace {
  min-height: max(580px, calc(100dvh - var(--ast-header-height)));
  background: var(--ast-page-surface, linear-gradient(180deg, #fffaf5, #fffdfb));
}
.ast-skip-link {
  position: fixed;
  left: 12px;
  top: -100px;
  z-index: 9999;
  background: var(--ast-plum);
  color: white;
  padding: 10px 16px;
  border-radius: 0 0 9px 9px;
  text-decoration: none;
}
.ast-skip-link:focus { top: 0; }
:focus-visible {
  outline: 2px solid var(--ast-plum-hover);
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}


/* Department-specific page photograph. Applied only when the editor explicitly selects image mode. */
body.section-astrology[data-ast-bg-mode="image"] .ast-page-workspace {
  background-color: var(--ast-page-surface, #fffaf5);
  background-image: var(--ast-page-background-image);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

/* Astrology owns one continuous solid surface in color mode.
   Covers the full-width page as well as any space below the visible modules. */
body.section-astrology:not([data-ast-bg-mode="image"]),
body.section-astrology:not([data-ast-bg-mode="image"]) .ast-page-workspace {
  background: var(--ast-page-surface, #fffaf5);
}
