/*
Theme Name: Podenco Pottery
Theme URI: https://podencopottery.ch
Author: Podenco Pottery
Description: Ruhiges, helles Block-Theme für handgemachte Keramik – mit viel Raum für Produktfotos, Galerie, Terminen und WooCommerce-Shop. Zusammen mit dem Plugin „Podenco Pottery Funktionen“ verwenden (Termine und Twint-Zahlung).
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: podenco-pottery
Tags: block-theme, full-site-editing, e-commerce, one-column, custom-colors, editor-style
*/

/* ---------- Grundlagen ---------- */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
img { height: auto; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.wp-site-blocks { display: flex; flex-direction: column; min-height: 100vh; }
.wp-site-blocks > footer { margin-top: auto; }

a:focus-visible,
button:focus-visible,
.wp-element-button:focus-visible {
	outline: 2px solid var(--wp--preset--color--akzent);
	outline-offset: 3px;
}

/* ---------- Block-Stile ---------- */

/* Überzeile: kleine Grossbuchstaben mit Sperrung */
.is-style-ueberzeile {
	font-size: 14px !important;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--text-leise);
}

/* Bild mit Bogen oben (wie auf der Startseite) */
.wp-block-image.is-style-bogen img,
.wp-block-image.is-style-bogen .components-placeholder {
	border-radius: 999px 999px 60px 60px;
	width: 100%;
	aspect-ratio: 7 / 9;
	object-fit: cover;
}

/* Bild mit weichen Ecken */
.wp-block-image.is-style-weich img { border-radius: 16px; }

/* Button: Umriss */
.wp-block-button.is-style-umriss .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--kontrast);
	box-shadow: inset 0 0 0 1px var(--wp--preset--color--kontrast);
}
.wp-block-button.is-style-umriss .wp-block-button__link:hover {
	background: var(--wp--preset--color--kontrast);
	color: var(--wp--preset--color--basis);
}

/* Button: nur Text-Link */
.wp-block-button.is-style-textlink .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--kontrast);
	padding-left: 6px;
	padding-right: 6px;
	text-decoration: underline;
	text-underline-offset: 4px;
}
.wp-block-button.is-style-textlink .wp-block-button__link:hover { color: var(--wp--preset--color--akzent); }

/* Galerie: Werkstatt-Raster (erste Reihe hoch, danach quer) */
.wp-block-gallery.is-style-werkstatt.has-nested-images figure.wp-block-image img {
	border-radius: 12px;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	height: 100%;
}
.wp-block-gallery.is-style-werkstatt.has-nested-images figure.wp-block-image:nth-child(n+4) img {
	aspect-ratio: 6 / 5;
}

/* Galerie: Mauerwerk (für die Galerie-Seite) */
.wp-block-gallery.is-style-mauerwerk.has-nested-images {
	display: block !important;
	columns: 3 280px;
	column-gap: var(--wp--style--unstable-gallery-gap, 24px);
}
.wp-block-gallery.is-style-mauerwerk.has-nested-images figure.wp-block-image {
	display: block;
	width: 100% !important;
	margin: 0 0 24px !important;
	break-inside: avoid;
}
.wp-block-gallery.is-style-mauerwerk.has-nested-images figure.wp-block-image img {
	border-radius: 12px;
	width: 100%;
	height: auto !important;
	object-fit: initial;
}
.wp-block-gallery.is-style-mauerwerk.has-nested-images figure.wp-block-image figcaption {
	background: none;
	color: var(--wp--preset--color--text-weich);
	position: static;
	padding: 8px 2px 0;
	text-align: left;
	font-size: 15px;
}

/* ---------- Kopfzeile ---------- */
.pp-header .wp-block-navigation a { text-decoration: none; }
.pp-header .wp-block-navigation a:hover { text-decoration: underline; text-underline-offset: 6px; }
.pp-header .pp-logo img { width: 84px; height: auto; display: block; }
.pp-header .wp-block-button__link { padding: 12px 24px; }
.pp-header .wp-block-button.is-style-dunkel .wp-block-button__link,
.wp-block-button.is-style-dunkel .wp-block-button__link {
	background: var(--wp--preset--color--kontrast);
	color: var(--wp--preset--color--basis);
}
.wp-block-button.is-style-dunkel .wp-block-button__link:hover { background: var(--wp--preset--color--akzent-dunkel); }
.wp-block-button.is-style-hell .wp-block-button__link {
	background: var(--wp--preset--color--basis);
	color: var(--wp--preset--color--kontrast);
	font-weight: 700;
}
.wp-block-button.is-style-hell .wp-block-button__link:hover { background: var(--wp--preset--color--weiss); color: var(--wp--preset--color--kontrast); }

.wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--basis) !important;
	padding: 32px 24px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 20px; font-size: 22px; }

@media (max-width: 781px) {
	.pp-header .pp-logo img { width: 64px; }
	.pp-header .pp-header-shop { display: none; }
}

/* ---------- Fusszeile ---------- */
.pp-footer .pp-logo img { width: 110px; height: auto; display: block; }
.pp-footer a { color: var(--wp--preset--color--text-weich); }

/* ---------- Abschnitte ---------- */
.pp-kopfreihe { gap: 16px; }
.pp-fakten h3 { margin-bottom: 10px; }
.pp-shop-cta { border-radius: 24px; }
.pp-shop-cta p { max-width: 560px; }

/* ---------- Termine (vom Plugin ausgegeben) ---------- */
.pp-termine { list-style: none; margin: 0; padding: 0; }
.pp-termin {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr) 120px 140px;
	gap: 32px;
	align-items: center;
	padding: 26px 0;
	border-top: 1px solid var(--wp--preset--color--linie);
}
.pp-termin:last-child { border-bottom: 1px solid var(--wp--preset--color--linie); }
.pp-termin__datum {
	font-family: var(--wp--preset--font-family--cormorant);
	font-size: 30px;
	font-weight: 600;
	line-height: 1.1;
}
.pp-termin__titel { font-size: 20px; font-weight: 500; margin: 0; line-height: 1.3; }
.pp-termin__titel a { color: inherit; text-decoration: none; }
.pp-termin__titel a:hover { text-decoration: underline; }
.pp-termin__info { font-size: 15px; color: var(--wp--preset--color--text-weich); margin: 4px 0 0; }
.pp-termin__art {
	justify-self: start;
	padding: 5px 14px;
	border-radius: 999px;
	font-size: 14px;
	border: 1px solid var(--wp--preset--color--akzent);
	color: var(--wp--preset--color--akzent);
}
.pp-termin__art--kurs { background: var(--wp--preset--color--salbei); border-color: var(--wp--preset--color--salbei); color: #fff; }
.pp-termin__link { justify-self: end; font-size: 16px; }
.pp-termine-leer { color: var(--wp--preset--color--text-weich); }

.pp-termin-details {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 24px;
	padding: 28px 0;
	margin: 0 0 32px;
	border-top: 1px solid var(--wp--preset--color--linie);
	border-bottom: 1px solid var(--wp--preset--color--linie);
}
.pp-termin-details dt { font-size: 14px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--text-leise); }
.pp-termin-details dd { margin: 4px 0 0; font-size: 19px; font-weight: 500; }

@media (max-width: 781px) {
	.pp-termin {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px 16px;
	}
	.pp-termin__datum { grid-column: 1 / -1; font-size: 26px; }
	.pp-termin__text { grid-column: 1 / -1; }
	.pp-termin__link { justify-self: end; }
}

/* ---------- WooCommerce ---------- */
.woocommerce ul.products li.product a img,
.wc-block-grid__product-image img,
.wc-block-components-product-image img,
.wp-block-woocommerce-product-image-gallery img,
.woocommerce div.product div.images img {
	border-radius: 12px;
}
.wc-block-components-product-price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--wp--preset--color--kontrast) !important;
	font-weight: 500;
}
.woocommerce span.onsale,
.wc-block-components-product-sale-badge {
	background: var(--wp--preset--color--akzent) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
}
.woocommerce .quantity .qty {
	border: 1px solid #B9AA98;
	border-radius: 999px;
	padding: 12px 10px;
	min-height: 50px;
	background: transparent;
	font-size: 17px;
}
.woocommerce div.product form.cart .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wc-block-components-button:not(.is-link) {
	background: var(--wp--preset--color--akzent) !important;
	color: #fff !important;
	border-radius: 999px !important;
	border: 0 !important;
	padding: 16px 32px !important;
	font-family: var(--wp--preset--font-family--karla) !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	min-height: 50px;
}
.woocommerce div.product form.cart .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.wc-block-components-button:not(.is-link):hover {
	background: var(--wp--preset--color--akzent-dunkel) !important;
}
.woocommerce div.product form.cart table.variations { margin-bottom: 20px; border: 0; }
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td { display: block; padding: 0; border: 0; text-align: left; }
.woocommerce div.product form.cart table.variations th label { font-weight: 700; font-size: 16px; display: block; margin-bottom: 10px; }
.woocommerce div.product form.cart table.variations select {
	min-width: 220px;
	padding: 12px 16px;
	border: 1px solid #B9AA98;
	border-radius: 12px;
	background: transparent;
	font-size: 16px;
	font-family: inherit;
	color: var(--wp--preset--color--kontrast);
}
.woocommerce div.product form.cart .reset_variations { font-size: 14px; margin-left: 8px; }
.woocommerce div.product .woocommerce-variation-price .price { font-size: 30px; }
.woocommerce-message,
.woocommerce-info,
.wc-block-components-notice-banner {
	border-radius: 12px !important;
}
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-textarea {
	border-radius: 10px !important;
}
.wp-block-woocommerce-product-details .wc-tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-weight: 500; }

/* ---------- Kleinigkeiten ---------- */
.pp-hero h1 em { color: var(--wp--preset--color--akzent); font-style: italic; }
.wp-block-gallery.is-style-werkstatt { --wp--style--unstable-gallery-gap: 24px; gap: 24px; }
.pp-kopfreihe .wp-block-heading { margin: 0; }
.pp-header .pp-nav-shop-mobil { display: none; }
.pp-header .is-menu-open .pp-nav-shop-mobil { display: block; }
.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0;
	position: absolute !important; width: 1px; word-wrap: normal !important;
}
.pp-termin__titel { font-family: var(--wp--preset--font-family--karla); }

/* Abschnitte in Seiten ohne Titel: Seitenabstand auch auf dem Handy */
.wp-block-post-content.alignfull > .alignfull.has-global-padding {
	padding-left: var(--wp--style--root--padding-left);
	padding-right: var(--wp--style--root--padding-right);
}
@media (max-width: 781px) {
	.pp-footer .wp-block-navigation__container,
	.pp-footer .wp-block-navigation { justify-content: flex-start !important; }
}
