/* Cherrylake Commerce Platform - Base Styles */

:root {
    /* Core palette */
    --cherry-red: #da291c;
    --cherry-red-dark: #c42418;
    --soft-black: #373a37;
    --stone: #a09888;
    --light-gray: #e8e6e3;
    --white: #ffffff;

    /* Expanded palette */
    --cypress-shade: #234220;
    --native-green: #b6d559;
    --clear-sky-blue: #86c7ed;
    --muhly-bloom: #e5b5d4;
    --lanceleaf: #fbc342;

    /* Typography */
    --font-family: "Acumin Pro Wide", Helvetica, Arial, sans-serif;
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-black: 900;
}

* {
    box-sizing: border-box;
}

body {
    font-family: var(--font-family);
    font-weight: var(--font-weight-regular);
    color: var(--soft-black);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: var(--font-weight-bold);
    line-height: 1.2;
    margin: 0 0 16px 0;
}

a {
    color: var(--cherry-red);
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* Utility classes */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

.font-light { font-weight: var(--font-weight-light); }
.font-regular { font-weight: var(--font-weight-regular); }
.font-semibold { font-weight: var(--font-weight-semibold); }
.font-bold { font-weight: var(--font-weight-bold); }

.text-red { color: var(--cherry-red); }
.text-stone { color: var(--stone); }
.text-black { color: var(--soft-black); }

.bg-white { background-color: var(--white); }
.bg-light-gray { background-color: var(--light-gray); }
.bg-red { background-color: var(--cherry-red); }
