/*
Theme Name: Intellectus.gr
Theme URI: https://intellectus.gr
Author: Intellectus.gr
Author URI: https://intellectus.gr
Description: Rich editorial WordPress theme for essays on philosophy, theology and history. Deep navy & burgundy palette on warm paper, EB Garamond display type, wordmark logo.
Version: 1.0.0
Requires at least: 5.9
Requires PHP: 7.4
Tested up to: 6.6
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: philosophia-gr
Tags: blog, custom-background, custom-logo, custom-menu, featured-images, translation-ready

This theme, including all CSS and images unless otherwise specified, is
licensed under the GNU General Public License v2 or later.
*/

/* -----------------------------------------------------------
   All component styling below is applied on top of Tailwind
   utility classes (loaded via the CDN script in header.php).
   This file only contains the custom, non-utility CSS that the
   design needs: the parallax hero, quote rotation, animations,
   and small helper classes.
----------------------------------------------------------- */


  body {
    background-color: #F5EEDF;
    background-image: radial-gradient(circle at 1px 1px, rgba(20,30,51,0.05) 1px, transparent 0);
    background-size: 22px 22px;
  }
  .ornament::before, .ornament::after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, transparent, currentColor, transparent);
  }
  .drop-cap::first-letter {
    font-family: 'EB Garamond', serif;
    float: left;
    font-size: 4.8rem;
    line-height: 0.82;
    font-weight: 600;
    padding-right: 0.5rem;
    padding-top: 0.35rem;
    color: #6E1423;
  }
  .card-lift { transition: transform .35s ease, box-shadow .35s ease; }
  .card-lift:hover { transform: translateY(-6px); }


  #hero {
    position: relative;
    overflow: hidden;
  }
  #hero-bg {
    position: absolute;
    top: -12%;
    left: 0;
    right: 0;
    height: 124%;
    background-size: cover;
    background-position: center 35%;
    will-change: transform;
    transform: translate3d(0, 0, 0);
  }
  #hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15,21,36,0.90) 0%, rgba(15,21,36,0.82) 45%, rgba(15,21,36,0.95) 100%);
    transition: opacity 0.05s linear;
  }
  .hero-text-shadow {
    text-shadow: 0 2px 10px rgba(0,0,0,0.55), 0 8px 30px rgba(0,0,0,0.35);
  }

  /* Hero — λέξη-προς-λέξη εμφάνιση για το απόφθεγμα */
  .hero-word {
    display: inline-block;
    opacity: 0;
    transform: translateY(14px);
    animation: heroWordIn 0.65s cubic-bezier(.2,.7,.3,1) forwards;
    animation-delay: var(--wd, 150ms);
  }
  @keyframes heroWordIn {
    to { opacity: 1; transform: translateY(0); }
  }

  /* Hero — fade + ανύψωση για eyebrow / υπότιτλο / CTA */
  .hero-anim {
    opacity: 0;
    transform: translateY(12px);
    animation: heroFadeRise 0.7s cubic-bezier(.2,.7,.3,1) forwards;
    animation-delay: var(--d, 0ms);
  }
  @keyframes heroFadeRise {
    to { opacity: 1; transform: translateY(0); }
  }

  @media (prefers-reduced-motion: reduce) {
    .hero-word, .hero-anim {
      animation: none !important;
      opacity: 1 !important;
      transform: none !important;
    }
  }

  .meander-bg {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cpath d='M0 20 H20 V0 M20 40 H60 V20 H20 M60 60 H80 V40' fill='none' stroke='%23C9A860' stroke-opacity='0.35' stroke-width='1.5'/%3E%3C/svg%3E");
    background-size: 80px 80px;
  }

  /* Προσβασιμότητα: ορατή εστίαση παντού */
  a:focus-visible, button:focus-visible, input:focus-visible {
    outline: 2px solid #6E1423;
    outline-offset: 3px;
    border-radius: 2px;
  }

  /* Μειωμένη κίνηση */
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      animation-duration: 0.001ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.001ms !important;
      scroll-behavior: auto !important;
    }
  }

  /* Μπάρα προόδου ανάγνωσης */
  #reading-progress {
    position: fixed;
    top: 0; left: 0;
    height: 3px;
    width: 0%;
    background: linear-gradient(to right, #6E1423, #A9812F);
    z-index: 60;
    transition: width 0.1s ease-out;
  }

  /* Ριζόγραμμα αναζήτησης */
  #search-panel { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
  #search-panel.open { max-height: 90px; }

  /* Κινητό μενού */
  #mobile-menu { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
  #mobile-menu.open { max-height: 360px; }

  /* Οριζόντια κύλιση δημοφιλών */
  .snap-row { scroll-snap-type: x mandatory; }
  .snap-item { scroll-snap-align: start; }
  .snap-row::-webkit-scrollbar { height: 6px; }
  .snap-row::-webkit-scrollbar-thumb { background: rgba(20,30,51,0.2); border-radius: 999px; }

  #quote-stage {
    position: relative;
  }
  .quote-block {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: opacity .5s ease;
  }

