/* Textus Intentio wordmark — text-only logo.
   "textus" bold + "intentio" light; the two i-dots are orange circles (a nod to the original two-circle logo).
   Colour follows currentColor, size follows font-size. Markup: brand_wordmark() in includes/functions.php */
.wordmark {
    display: inline-block;
    font-family: "Sora", "Inter", system-ui, sans-serif;
    font-size: 1.6rem;
    line-height: 1;
    letter-spacing: -.055em;
    white-space: nowrap;
    color: inherit;
    font-kerning: normal;
}
.wordmark b { font-weight: 700; }
.wordmark > span { font-weight: 300; }
.wordmark .wm-i { position: relative; display: inline-block; }
.wordmark .wm-i::after {
    content: "";
    position: absolute;
    left: 40%; /* Sora's dotless i stem sits left of the glyph centre */
    top: .05em;
    width: .2em;
    height: .2em;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffb347, #f57c00 55%, #ff5a4e);
    box-shadow: 0 0 .3em rgba(245, 124, 0, .5);
    transform: translateX(-50%);
}

/* Playful hover: the two dots hop one after the other */
a:hover > .wordmark .wm-i::after,
.wordmark:hover .wm-i::after { animation: wm-hop .55s cubic-bezier(.3, 1.6, .5, 1); }
.wordmark .wm-i:last-of-type::after { animation-delay: .12s; }
@keyframes wm-hop { 40% { transform: translate(-50%, -.22em); } }
@media (prefers-reduced-motion: reduce) { .wordmark .wm-i::after { animation: none !important; } }

/* Placements */
.wm-nav { font-size: 1.62rem; color: var(--ti-ink, #0a0a12); }
.wm-footer { font-size: 2.1rem; color: #fff; }
.wm-admin { font-size: 1.4rem; color: #fff; }
.wm-login { font-size: 2.6rem; color: #fff; }
@media (max-width: 575.98px) { .wm-nav { font-size: 1.42rem; } }

/* Giant faded wordmark at the bottom of the footer (inherits the footer's gradient text) */
.footer-wordmark .wordmark { font-size: inherit; letter-spacing: -.06em; color: inherit; }
.footer-wordmark .wordmark .wm-i::after { opacity: .35; box-shadow: none; }

/* Uploaded image logos (Admin → Settings → Branding) */
.brand-logo-img { display: block; width: auto; max-width: 100%; object-fit: contain; }
.brand-logo-wm-nav { height: 38px; max-width: 220px; }
.brand-logo-wm-footer { height: 46px; max-width: 260px; }
.brand-logo-wm-admin { height: 32px; max-width: 150px; }
.brand-logo-wm-login { height: 48px; max-width: 280px; }
@media (max-width: 575.98px) { .brand-logo-wm-nav { height: 32px; max-width: 170px; } }
/* Two logos: show the one that matches the current theme */
.logo-for-dark { display: none; }
[data-bs-theme="dark"] .logo-for-light { display: none; }
[data-bs-theme="dark"] .logo-for-dark { display: block; }
.wm-preview { font-size: 1.5rem; }
