/*
Theme Name: NORDTONE
Template: twentytwentyfive
Description: Child-Theme für NORDTONE – Premium Gitarrenmanufaktur. Dunkle Werkstatt-Optik mit Messing-Akzent, Cormorant Garamond + Inter (lokal eingebunden).
Author: Hachetal IT
Version: 2.0.0
Requires at least: 6.7
Text Domain: nordtone
*/

/* ---------- Eyebrow (kleine Versal-Zeile über Überschriften) ----------
   Im Editor: Absatz-Block → Stile → "Eyebrow" */
.is-style-eyebrow {
	font-family: var(--wp--preset--font-family--inter);
	font-size: 0.75rem !important;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent-1);
	margin-bottom: 0.5rem;
}

/* ---------- Karten (Gruppe-Block → Stile → "Karte") ---------- */
.is-style-nordtone-card {
	border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
	background: var(--wp--preset--color--accent-5);
	transition: border-color .2s ease;
}
.is-style-nordtone-card:hover {
	border-color: var(--wp--preset--color--accent-1);
}
/* Karte auf hellem Hintergrund */
.has-accent-2-background-color .is-style-nordtone-card {
	background: var(--wp--preset--color--accent-6);
	border-color: #CBBB9C;
}

/* ---------- Bilder: leicht warmer Filmlook ---------- */
.wp-block-cover img,
.wp-block-image img,
.wc-block-components-product-image img,
.wp-block-woocommerce-product-image img {
	filter: saturate(.92) contrast(1.03);
}

/* ---------- Header ----------
   Normal: dunkler Balken. Beginnt die Seite mit einem Hero (Cover-Block),
   liegt der Header transparent darüber. */
.nordtone-header-overlay {
	background: var(--wp--preset--color--base);
	border-bottom: 1px solid var(--wp--preset--color--accent-5);
}
.wp-site-blocks:has(main > .wp-block-cover:first-child, main > .wp-block-post-content > .wp-block-cover:first-child) > header {
	position: absolute;
	inset: 0 0 auto 0;
	z-index: 20;
}
.wp-site-blocks:has(main > .wp-block-cover:first-child, main > .wp-block-post-content > .wp-block-cover:first-child) .nordtone-header-overlay {
	background: linear-gradient(to bottom, rgba(14,13,11,.8), transparent);
	border-bottom: 0;
}
.wp-site-blocks > main,
.wp-site-blocks > footer { margin-block-start: 0; }
.wp-block-post-content > * + * { margin-block-start: 0; }

/* ---------- Hero-Verlauf nach unten ins Schwarz ---------- */
.wp-block-cover.is-style-nordtone-hero::after {
	content: "";
	position: absolute;
	inset: auto 0 0 0;
	height: 35%;
	background: linear-gradient(to bottom, transparent, var(--wp--preset--color--base));
	pointer-events: none;
	z-index: 1;
}

/* ---------- Sekundär-Button (Outline) ---------- */
.wp-block-button.is-style-outline > .wp-block-button__link {
	border: 1px solid var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--contrast);
	background: transparent;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--base);
}

/* ---------- WooCommerce ---------- */
.wc-block-components-product-price,
.wc-block-grid__product-price,
.wp-block-woocommerce-product-price,
.woocommerce-Price-amount {
	color: var(--wp--preset--color--accent-1);
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
}
.wc-block-components-product-name,
.wp-block-post-title a {
	font-family: var(--wp--preset--font-family--cormorant);
}
.wc-block-components-button:not(.is-link),
.wp-block-woocommerce-product-button .wp-block-button__link,
.single_add_to_cart_button {
	background: var(--wp--preset--color--accent-1) !important;
	color: var(--wp--preset--color--base) !important;
	border-radius: 2px !important;
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: .8rem;
}
.wc-block-components-button:not(.is-link):hover,
.single_add_to_cart_button:hover {
	background: #C9A862 !important;
}
.wc-block-components-sale-badge,
.wc-block-grid__product-onsale {
	background: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--base);
	border: 0;
	border-radius: 2px;
}
/* Formularfelder in Warenkorb/Checkout */
.wc-block-components-text-input input,
.wc-block-components-textarea,
.wc-blocks-components-select select,
.wc-block-components-combobox input {
	border-radius: 2px !important;
}

/* Links auf hellen Sektionen etwas dunkler für bessere Lesbarkeit */
.has-accent-2-background-color a:not(.wp-element-button) { color: #8A6D2F; }

/* ================= Shop-Aufbau (v2) ================= */

/* Service-Leiste ganz oben */
.nordtone-utility {
	background: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--base);
	font-size: .75rem;
	letter-spacing: .04em;
}
.nordtone-utility p { margin: 0; }
.nordtone-utility a { color: var(--wp--preset--color--base); }
.wp-site-blocks > header { position: relative; }
/* Dropdown im Menü */
.wp-block-navigation .wp-block-navigation__submenu-container {
	background: var(--wp--preset--color--base) !important;
	border: 1px solid var(--wp--preset--color--accent-5) !important;
	padding: .5rem 0;
	min-width: 220px !important;
}
.wp-block-navigation .wp-block-navigation__submenu-container a { padding: .5rem 1.25rem !important; }
.wp-block-navigation a:hover { color: var(--wp--preset--color--accent-1); }
.nordtone-header-right .wc-block-mini-cart__button,
.nordtone-header-right .wc-block-customer-account a { color: var(--wp--preset--color--contrast); }
@media (max-width: 781px) {
	.nordtone-header-right .wp-block-buttons,
	.nordtone-utility p:last-child { display: none; }
}

/* Nummerierte Liste (Anatomie) */
.nordtone-numbered {
	border-top: 1px solid #CBBB9C;
	padding-top: .9rem;
	margin-top: .9rem !important;
	font-size: .95rem;
}
.nordtone-numbered strong { font-family: var(--wp--preset--font-family--cormorant); font-size: 1.35rem; font-weight: 500; }

/* Kategorie-Kacheln */
.nordtone-tile { transition: transform .3s ease; }
.nordtone-tile:hover { transform: translateY(-4px); }
.nordtone-tile h3 { margin: 0; }

/* Vertrauens-Leiste */
.nordtone-trust { border-bottom: 1px solid var(--wp--preset--color--accent-5); }
.nordtone-trust p { margin: 0; }

/* Footer */
.nordtone-footer-link { margin: .35rem 0 !important; }
.nordtone-footer-link a { color: var(--wp--preset--color--contrast); }
.nordtone-footer-link a:hover { color: var(--wp--preset--color--accent-1); }

/* FAQ */
.wp-block-details {
	border-bottom: 1px solid #CBBB9C;
	padding: 1.1rem 0;
}
.wp-block-details summary {
	font-family: var(--wp--preset--font-family--cormorant);
	font-size: 1.4rem;
	cursor: pointer;
	list-style: none;
	display: flex; justify-content: space-between; gap: 1rem;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after { content: "+"; color: var(--wp--preset--color--accent-1); }
.wp-block-details[open] summary::after { content: "–"; }
.wp-block-details > p { margin-top: .75rem; }

/* Produkt-Raster (WooCommerce-Shortcode & Kategorie-Seiten) */
.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
@media (max-width: 1000px) { .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px)  { .woocommerce ul.products { grid-template-columns: 1fr; } }
.woocommerce ul.products li.product {
	width: auto !important; margin: 0 !important; float: none !important;
	background: var(--wp--preset--color--accent-5);
	border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
	padding: 0 0 1.5rem !important;
	display: flex; flex-direction: column;
	transition: border-color .2s ease;
}
.woocommerce ul.products li.product:hover { border-color: var(--wp--preset--color--accent-1); }
.has-accent-2-background-color .woocommerce ul.products li.product { background: var(--wp--preset--color--accent-6); border-color: #CBBB9C; }
.woocommerce ul.products li.product img { aspect-ratio: 4/5; object-fit: cover; margin: 0 0 1rem !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--wp--preset--font-family--cormorant);
	font-size: 1.35rem !important; font-weight: 400; padding: 0 1.25rem !important; color: inherit;
}
.woocommerce ul.products li.product .price { padding: 0 1.25rem; font-size: 1rem !important; color: var(--wp--preset--color--accent-1) !important; }
.has-accent-2-background-color .woocommerce ul.products li.product .price { color: #8A6D2F !important; }
.woocommerce ul.products li.product .price del { opacity: .55; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button {
	margin: auto 1.25rem 0 !important;
	background: transparent !important;
	border: 1px solid var(--wp--preset--color--accent-1) !important;
	color: inherit !important;
	border-radius: 2px; text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; font-weight: 500;
	text-align: center;
}
.woocommerce ul.products li.product .button:hover { background: var(--wp--preset--color--accent-1) !important; color: var(--wp--preset--color--base) !important; }
.woocommerce span.onsale {
	background: var(--wp--preset--color--accent-1); color: var(--wp--preset--color--base);
	border-radius: 2px; min-height: 0; min-width: 0; line-height: 1; padding: .4rem .6rem; font-size: .7rem;
	text-transform: uppercase; letter-spacing: .08em; top: .75rem; left: .75rem; right: auto;
}

/* Anfrage-Formular */
.nordtone-form label { display: block; font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; color: var(--wp--preset--color--accent-4); margin-bottom: .35rem; }
.nordtone-form input[type=text], .nordtone-form input[type=email], .nordtone-form input[type=tel],
.nordtone-form select, .nordtone-form textarea {
	width: 100%; box-sizing: border-box;
	background: var(--wp--preset--color--accent-5);
	border: 1px solid #3a3630; border-radius: 2px;
	color: var(--wp--preset--color--contrast);
	padding: .8rem .9rem; font: inherit;
}
.nordtone-form input:focus, .nordtone-form select:focus, .nordtone-form textarea:focus { outline: none; border-color: var(--wp--preset--color--accent-1); }
.nordtone-form input[type=file] { color: var(--wp--preset--color--accent-4); font-size: .9rem; }
.nordtone-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
@media (max-width: 640px) { .nordtone-form__row { grid-template-columns: 1fr; } }
.nordtone-form__check label { text-transform: none; letter-spacing: 0; font-size: .85rem; display: flex; gap: .6rem; align-items: flex-start; }
.nordtone-form__check input { margin-top: .25rem; accent-color: var(--wp--preset--color--accent-1); }
.nordtone-form button { cursor: pointer; }
.nordtone-form__msg { padding: 1rem 1.25rem; border: 1px solid var(--wp--preset--color--accent-1); }
.nordtone-form__msg--err { border-color: #b4543f; }
.nordtone-hp { position: absolute !important; left: -9999px !important; }

/* Kacheln & Banner: sichtbar auch ohne Bild */
.nordtone-tile, .nordtone-banner { background-color: var(--wp--preset--color--accent-5); }
.nordtone-tile { border: 1px solid color-mix(in srgb, currentColor 14%, transparent); }

/* Outline-Buttons auf hellem Hintergrund */
.has-accent-2-background-color .wp-block-button.is-style-outline > .wp-block-button__link {
	color: var(--wp--preset--color--text-dark);
	border-color: #8A6D2F;
}
.has-accent-2-background-color .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--text-dark);
	border-color: var(--wp--preset--color--text-dark);
	color: var(--wp--preset--color--accent-2);
}

/* Platz für den Header über dem Hero */
.wp-block-cover.is-style-nordtone-hero { padding-top: 9rem; }
/* Checkbox-Text normal umbrechen */
.nordtone-form__check label { display: block; padding-left: 1.6rem; position: relative; }
.nordtone-form__check input { position: absolute; left: 0; top: .1rem; margin: 0; }

/* Inhalt im Hero über dem Verlauf */
.wp-block-cover.is-style-nordtone-hero .wp-block-cover__inner-container { position: relative; z-index: 2; }
