/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

/* ===== P0-Bugfixes (siehe Verbesserungsplan) ===== */

/* 1) Button-Kontrast: .btn-primary:hover legte keine eigene Textfarbe fest,
      dadurch griff eine globale Link-Hover-Farbe (olivgrün) auf dem
      goldbraunen Hover-Hintergrund -> Kontrast von nur ca. 1,02:1. */
.btn-primary:hover {
	color: var(--white, #FFFDF8) !important;
}

/* 2) Karten-Hover: Das Scroll-Reveal-Script setzt "transform" per Inline-Style
      auf jede Karte. Inline-Styles schlagen jede Klassen-Regel ohne
      !important, wodurch der Hover-Lift komplett wirkungslos war. */
.cat-card:hover,
.prod-card:hover,
.review-card:hover {
	transform: translateY(-4px) !important;
}

/* 3) Rechtslinks: Impressum/Datenschutz/AGB/Widerruf/Versand/Zahlung/
      Bewertungs-Echtheit waren auf Desktop nirgends verlinkt. Leiste wird
      in functions.php per wp_footer ausgegeben. */
.child-legal-links {
	background: var(--paper-deep, #F3E6CE);
	border-top: 1px solid var(--line, #E6D8B8);
	padding: 18px 0;
}
.child-legal-links .wrap {
	max-width: var(--wrap, 1180px);
	margin: 0 auto;
	padding: 0 28px;
}
.child-legal-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 24px;
}
.child-legal-links a {
	font-size: .82rem;
	color: var(--ink-soft, #5B5138);
	text-decoration: none;
}
.child-legal-links a:hover {
	color: var(--ink, #2E2717);
	text-decoration: underline;
}


/* 4) Bestseller-Produktfotos: fuellen die 4:3-Kachel sauber aus,
      unabhaengig vom Seitenverhaeltnis des Quellbilds. */
.prod-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}


/* 5) Nav-Dropdown "Produkte": Blocksy-Standard-Submenu wich komplett vom
      Design-System ab (dunkles Kaestchen, Systemschrift, kaum Radius). */
#header-menu-1 .sub-menu {
	background: var(--white, #FFFDF8);
	border: 1px solid var(--line, #E6D8B8);
	border-radius: var(--radius, 14px);
	box-shadow: 0 14px 30px -18px rgba(46, 39, 23, 0.35);
	padding: 6px;
}
#header-menu-1 .sub-menu .ct-menu-link {
	color: var(--ink, #2E2717);
	font-family: 'Work Sans', sans-serif;
	font-size: .92rem;
	border-radius: 8px;
	padding: 10px 14px;
}
#header-menu-1 .sub-menu .menu-item:hover > .ct-menu-link {
	background: var(--paper-deep, #F3E6CE);
	color: var(--gold-deep, #A97A28);
}


/* 6) Button-Press-Feedback: Buttons hatten nur Hover, kein spuerbares
      Klick-Feedback. */
.btn:active,
.prod-actions a:active,
.prod-actions button:active {
	transform: scale(0.97) !important;
}

/* 7) FAQ-Akkordeon: hartes max-height:220px konnte laengere Antworten
      abschneiden. Ersetzt durch die grid-template-rows-Technik, die sich
      automatisch an die tatsaechliche Inhaltshoehe anpasst. */
.faq-a {
	max-height: none !important;
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .3s ease;
	overflow: hidden;
}
.faq-a > * {
	overflow: hidden;
	min-height: 0;
}
.faq-item.open .faq-a {
	grid-template-rows: 1fr;
}

/* 8) Scroll-Reveal-Script (Kategorien/Produkte/Bewertungen) prueft
      prefers-reduced-motion nicht. Erzwingt sichtbaren, statischen Zustand
      per CSS fuer Nutzer:innen mit reduzierter Bewegung. */
@media (prefers-reduced-motion: reduce) {
	.cat-card,
	.prod-card,
	.review-card {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}


/* 9) Karten-Hover auf Touch-Geraeten: translateY(-4px) blieb nach dem
      Antippen haengen, da kein Pointer-Gating vorhanden war. Setzt den
      Hover-Zustand auf Geraeten ohne echten Hover (Touch) zurueck. */
@media (hover: none) {
	.cat-card:hover,
	.prod-card:hover,
	.review-card:hover {
		transform: none !important;
		box-shadow: none !important;
	}
}
