/*
Theme Name: Librescoot Shop
Theme URI: https://librescoot.org
Description: Storefront child theme styled to match librescoot.org — Abel/Hanken Grotesk, teal accent, dark header.
Author: Starsong GmbH
Template: storefront
Version: 1.0.0
Text Domain: librescoot-shop
*/

/* --- Fonts (self-hosted, mirrored from librescoot.org) --- */
@font-face {
	font-family: 'Abel';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url(assets/fonts/abel-latin.woff2) format('woff2');
}
@font-face {
	font-family: 'Hanken Grotesk';
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url(assets/fonts/hanken-grotesk-latin.woff2) format('woff2');
}

/* --- Brand tokens (from librescoot.org) --- */
:root {
	--ls-accent: #0C9AAE;
	--ls-accent-hover: #087D8E;
	--ls-accent-light: #22D3EE;
	--ls-dark: #2A2D30;
	--ls-footer: #1A1C1E;
	--ls-text: #111111;
	--ls-text-secondary: #555555;
	--ls-bg: #FFFFFF;
	--ls-bg-secondary: #F4F6F8;
	--ls-radius: 4px;
}

/* --- Typography --- */
body,
.woocommerce, .woocommerce-page,
button, input, select, textarea {
	font-family: 'Hanken Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	color: var(--ls-text);
}
h1, h2, h3, h4, h5, h6,
.site-title, .page-title, .product_title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Abel', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	letter-spacing: 0.01em;
	color: var(--ls-text);
}
body { background-color: var(--ls-bg); }

/* --- Header: dark nav like the main site --- */
.site-header {
	background-color: var(--ls-dark) !important;
	border-bottom: 3px solid var(--ls-accent);
}
.site-header,
.site-header a:not(.button),
.main-navigation ul li a,
.site-branding .site-title a,
.site-header .site-description {
	color: #F0F0F0 !important;
}
.main-navigation ul li a:hover,
.site-header a:not(.button):hover { color: var(--ls-accent-light) !important; }

/* --- Accent: links, prices, buttons --- */
a { color: var(--ls-accent); }
a:hover { color: var(--ls-accent-hover); }
.woocommerce .price,
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price { color: var(--ls-text); font-weight: 600; }

.button, button, input[type="submit"],
.woocommerce #respond input#submit,
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit.alt,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: var(--ls-accent);
	color: #fff;
	border-radius: var(--ls-radius);
	border: 0;
	font-family: 'Hanken Grotesk', sans-serif;
	font-weight: 600;
	transition: background-color .15s ease;
}
.button:hover, button:hover, input[type="submit"]:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce input.button:hover, .woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover {
	background-color: var(--ls-accent-hover);
	color: #fff;
}

/* --- Cards / inputs --- */
.woocommerce ul.products li.product,
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border-radius: var(--ls-radius);
}
input[type="text"], input[type="email"], input[type="tel"],
input[type="password"], input[type="number"], textarea, select {
	border-radius: var(--ls-radius);
}

/* --- Footer dark --- */
.site-footer {
	background-color: var(--ls-footer);
	color: #F0F0F0;
}
.site-footer a { color: var(--ls-accent-light); }
.ls-legal-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.25rem 0.5rem;
	margin-bottom: 0.75rem;
	font-size: 0.9em;
}
.ls-legal-nav a {
	color: var(--ls-accent-light);
	text-decoration: none;
}
.ls-legal-nav a:hover { text-decoration: underline; }
.ls-legal-sep { color: rgba(240,240,240,0.4); }

.site-footer .eu-owb-order-withdraw-from-contract-button {
	margin: 0 0 0.75rem 0;
	text-align: center;
	font-size: 0.9em;
}
.site-footer .eu-owb-order-withdraw-from-contract-button a.button,
.site-footer .eu-owb-order-withdraw-from-contract-button a.button:hover {
	background-color: transparent;
	color: var(--ls-accent-light);
	border: 1px solid rgba(240,240,240,0.25);
	border-radius: var(--ls-radius);
	padding: 0.25rem 0.75rem;
	font-weight: 400;
	font-size: 1em;
	text-decoration: none;
}
.site-footer .eu-owb-order-withdraw-from-contract-button a.button:hover {
	border-color: var(--ls-accent-light);
}

/* --- Front page: product grid, no redundant page title --- */
.home.page .entry-title,
.home.page .page-title { display: none; }
.home.page .storefront-sorting,
.home.page .woocommerce-result-count { display: none; }

/* --- Sale badge in accent --- */
.woocommerce span.onsale {
	background-color: var(--ls-accent);
	color: #fff;
	border-radius: var(--ls-radius);
}
