/*
Theme Name: Peak Performance Institute
Theme URI: https://peakperformance.gr
Author: Peak Performance Institute
Author URI: https://peakperformance.gr
Description: Custom WordPress theme for the Peak Performance Institute — sports science, ergophysiology assessment, LMS academy (LearnDash), diagnostics e-commerce (WooCommerce) and EU research. Built on an ACF Pro / ACF Extended Flexible Content page builder with a compiled Tailwind CSS pipeline. Bilingual GR/EN ready (WPML / Polylang).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ppi-theme
Tags: custom-theme, flexible-content, learndash, woocommerce, multilingual
*/

/*
 * The visual styling for this theme is compiled by Tailwind CSS into
 * /dist/main.css and enqueued from inc/enqueue.php. This file carries the
 * required WordPress theme header above plus a few small runtime overrides
 * that don't warrant a Tailwind rebuild.
 */

/*
 * Restore position:sticky.
 *
 * <body> ships with Tailwind's `overflow-x-hidden` to prevent horizontal
 * scrollbars. Setting overflow on a single axis turns the element into a
 * scroll container, which silently disables `position: sticky` for every
 * descendant (e.g. the sticky sidebar card on the single-course page and the
 * sticky site header). `overflow-x: clip` clips the exact same way but does
 * NOT establish a scroll container, so sticky descendants work again.
 */
body.overflow-x-hidden {
	overflow-x: clip;
}

/*
 * Long-form article typography (.ppi-prose).
 *
 * Block-editor / the_content() output (publication body, blog posts) renders
 * inside `.ppi-prose`. Tailwind's Preflight strips default heading sizes and
 * list markers, so restore a readable rhythm here rather than adding the
 * @tailwindcss/typography plugin. Brand palette: red #C8102E, dark #111.
 */
.ppi-prose > * + * {
	margin-top: 1.25em;
}
.ppi-prose h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 1.125rem;
	font-weight: 800;
	text-transform: uppercase;
	color: #111111;
	letter-spacing: 0.01em;
	border-bottom: 1px solid #f3f4f6;
	padding-bottom: 0.75rem;
	margin-top: 2.5rem;
}
.ppi-prose h3 {
	font-family: 'Montserrat', sans-serif;
	font-size: 1rem;
	font-weight: 700;
	color: #111111;
	margin-top: 2rem;
}
.ppi-prose h4 {
	font-weight: 700;
	color: #111111;
}
.ppi-prose p,
.ppi-prose li {
	color: #374151;
	line-height: 1.75;
}
.ppi-prose a {
	color: #C8102E;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.ppi-prose a:hover {
	color: #111111;
}
.ppi-prose ul,
.ppi-prose ol {
	padding-left: 1.5rem;
}
.ppi-prose ul {
	list-style: disc;
}
.ppi-prose ol {
	list-style: decimal;
}
.ppi-prose li + li {
	margin-top: 0.5rem;
}
.ppi-prose strong {
	color: #111111;
	font-weight: 700;
}
.ppi-prose blockquote {
	border-left: 4px solid #C8102E;
	padding-left: 1.25rem;
	font-style: italic;
	color: #4b5563;
}
.ppi-prose img {
	border-radius: 0.75rem;
}
.ppi-prose table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
	border: 1px solid #ECEEF1;
	border-radius: 0.75rem;
	overflow: hidden;
}
.ppi-prose thead {
	background: #f9fafb;
}
.ppi-prose th,
.ppi-prose td {
	padding: 0.75rem 1rem;
	border-bottom: 1px solid #ECEEF1;
	text-align: left;
}
.ppi-prose th {
	font-weight: 700;
	text-transform: uppercase;
	color: #111111;
	letter-spacing: 0.05em;
	font-size: 0.75rem;
}
.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout {
    grid-column: 1 / -1;
}
