/*
Theme Name: Pentangle Connect Demo
Theme URI: https://pentangle.co.uk/
Author: Pentangle Technology
Author URI: https://pentangle.co.uk/
Description: Minimal theme for demoing the Pentangle Connect Stora WordPress plugin. No clutter — just the booking widget.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pentangle-connect-demo
*/

:root {
    --demo-primary: #c32a38;
    --demo-accent: #f0dfa8;
    --demo-bg: #faf7ef;
    --demo-text: #2a1215;
    --demo-muted: #5c4a4d;
    --demo-border: #e8dcc4;
    --demo-max: 1080px;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: "DM Sans", system-ui, -apple-system, sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--demo-text);
    background: var(--demo-bg);
    -webkit-font-smoothing: antialiased;
}

a {
    color: var(--demo-primary);
}

img {
    max-width: 100%;
    height: auto;
}

.demo-site {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.demo-header {
    background: var(--demo-accent);
    border-bottom: 1px solid #e0cfa0;
}

.demo-header__inner {
    width: min(var(--demo-max), 92%);
    margin: 0 auto;
    padding: 0.85rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.demo-logo {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    text-decoration: none;
    color: var(--demo-text);
    font-weight: 700;
}

.demo-logo img {
    height: 2.25rem;
    width: auto;
    border-radius: 6px;
}

.demo-header__links {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.875rem;
}

.demo-header__links a {
    color: var(--demo-muted);
    text-decoration: none;
}

.demo-header__links a:hover {
    color: var(--demo-primary);
}

.demo-main {
    flex: 1;
    width: min(var(--demo-max), 92%);
    margin: 0 auto;
    padding: 2rem 0 3rem;
}

.demo-main--widget {
    padding-top: 1.5rem;
}

.demo-footer {
    background: var(--demo-accent);
    border-top: 1px solid #e0cfa0;
    font-size: 0.8125rem;
    color: var(--demo-muted);
}

.demo-footer__inner {
    width: min(var(--demo-max), 92%);
    margin: 0 auto;
    padding: 1rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.5rem 1rem;
}

.demo-page-title {
    margin: 0 0 1.5rem;
    font-size: clamp(1.5rem, 3vw, 2rem);
}

@media (max-width: 640px) {
    .demo-header__inner {
        flex-direction: column;
        align-items: flex-start;
    }
}
