/* ==========================================================================
   Universal Academic Services — shared stylesheet
   Adapted from the reference build's pattern; recolored to our Ink & Paper
   + brass system. Loaded on every page from /assets/css/style.css
   ========================================================================== */

html { -webkit-font-smoothing: antialiased; }
body { background: #FBFBF9; color: #101B33; }
.font-serif { font-family: 'Source Serif 4', serif; }
.citation-strip {
  font-family: 'IBM Plex Mono', monospace;
  letter-spacing: .06em;
  font-size: .7rem;
  text-transform: uppercase;
  color: #5B6472;
  display: flex; align-items: center; gap: .55rem; flex-wrap: wrap;
}
.citation-strip .dot { width: 3px; height: 3px; border-radius: 999px; background: #B7BEC9; flex: none; }
.skip-link { position: absolute; left: -9999px; top: 0; background: #101B33; color: #fff; padding: .65rem 1.1rem; z-index: 100; border-radius: 0 0 8px 0; font-weight: 600; }
.skip-link:focus { left: 0; top: 0; }
a, button { -webkit-tap-highlight-color: transparent; }
*:focus-visible { outline: 2px solid #8A5A22; outline-offset: 2px; border-radius: 4px; }
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}
.card-hover { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.card-hover:hover { transform: translateY(-3px); box-shadow: 0 4px 10px rgba(16,27,51,.07), 0 20px 46px rgba(16,27,51,.11); }
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.in { opacity: 1; transform: none; }
.grad-brand { background: linear-gradient(135deg, #0A1224 0%, #101B33 45%, #2B3A5C 100%); }
.grad-paper-fade { background: linear-gradient(180deg, #F1F2F4 0%, #FFFFFF 100%); }
::selection { background: #8A5A22; color: #fff; }
.num-tick { font-variant-numeric: tabular-nums; }
.mobile-menu { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
.mobile-menu.open { max-height: 720px; }
details.dd summary::-webkit-details-marker { display: none; }
details.dd[open] .dd-chevron { transform: rotate(180deg); }
.dd-panel { animation: ddIn .18s ease; }
@keyframes ddIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.marker-line { background: repeating-linear-gradient(90deg, #E1E4E9 0 6px, transparent 6px 12px); height: 1px; }

/* Journal accent utilities (kept distinct from the single brass CTA accent) */
.text-agri { color: #4B6043; } .bg-agri\/10 { background: #EAEEE7; }
.text-humn { color: #666699; } .bg-humn\/10 { background: #ECECF3; }
.text-edu  { color: #800000; } .bg-edu\/10  { background: #F1E0E0; }

/* Staggered reveal-animation delays */
.delay-40{transition-delay:40ms;} .delay-60{transition-delay:60ms;} .delay-80{transition-delay:80ms;}
.delay-100{transition-delay:100ms;} .delay-120{transition-delay:120ms;} .delay-160{transition-delay:160ms;}
.delay-180{transition-delay:180ms;} .delay-200{transition-delay:200ms;} .delay-240{transition-delay:240ms;}
