/* ==========================================================================
   Little Grims of Horror · responsive.css
   Το design ορίζει ελάχιστα breakpoints (Bootstrap grid). Εδώ μόνο ό,τι
   χρειάζεται για να μη σπάει σε κινητό.
   ========================================================================== */

/* Header: όλα μαζί χρειάζονται ~1300px. Κάτω από 1200 μενού-hamburger (στο markup:
   d-xl-*), 1200–1399 πιο σφιχτό και χωρίς Horde/«Κάνε αίτηση» (υπάρχει στο μενού). */
.hd-name, .hd-nav a { white-space: nowrap; }
.user-chip > b { max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* Συνδεδεμένος: το chip με το όνομα παίρνει τη θέση του σήματος της Horde (δεν χωράνε όλα στα 1296px) */
body[data-user] .hd-horde { display: none !important; }
@media (min-width: 1400px) {
	/* «Guides & Add-ons» μάκρυνε το μενού: λίγο πιο σφιχτά κενά για να χωράει και το όνομα χρήστη */
	.hd-bar { gap: 24px; }
	.hd-nav { gap: 16px; }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
	.hd-bar { gap: 18px; }
	.hd-horde, .hd-cta { display: none !important; }
	.hd-nav { gap: 16px; font-size: 12px; }
	.user-chip > b { display: none !important; }
}

@media (max-width: 991.98px) {
	.hd-bar { gap: 18px; }
	.chief { padding: 90px 0; }
	.featured-text { padding: 36px 32px; }
}

@media (max-width: 767.98px) {
	.h2 { font-size: 36px; }
	.h2.is-white, .apply-text h2 { font-size: 38px; }
	.news-head h2 { font-size: 34px; }
	.page-hero { padding: 96px 0 64px; }
	.hero { padding: 64px 0 96px; }
	.hero-lead { font-size: 17px; }
	.hero-stats { gap: 36px; }
	.card { padding: 26px 22px; }
	.raid { padding: 0; }
	.raid-body { padding: 0 22px 26px; }
	.featured .media { min-height: 240px; }
	.featured-text { padding: 28px 22px 32px; }
	.featured-text h2 { font-size: 30px; }
	.modal { padding: 36px 24px; }
	.rule { gap: 18px; }
	.rule-n { font-size: 38px; }
	.faq-btn { padding: 18px 20px; font-size: 19px; }
	.faq-panel { padding: 0 20px 20px; }
	.ev-cta, .ev-cta .btn { width: 100%; }
	.prose { font-size: 17px; }
	.prose h2 { font-size: 27px; }
	.pt90, .pt100 { padding-top: 70px; }
	.pb100, .pb110, .pb120 { padding-bottom: 80px; }
}

@media (max-width: 575.98px) {
	.hd-bar { gap: 12px; }
	.hd-name { font-size: 15px; }
	.btn { padding: 16px 32px; }
	.btn.is-sm { padding: 11px 22px; }
	.hero-cta .btn { flex: 1 1 auto; }
	.wk-day { min-height: 0; }
	.char { padding: 18px; gap: 14px; }
	.gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 150px; }
}

/* Χωρίς animations όταν το ζητάει το σύστημα */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: .01ms !important; }
}
