/*
Theme Name: FlairyDesigns Theme
Theme URI: https://github.com/flairy-designs
Description: A modern, elegant, and timeless WordPress theme for digital template shops, featuring pastel colors and soft typography.
Version: 1.0.0
Author: Antigravity
Author URI: https://github.com/antigravity
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-menu, featured-images, flexible-header, full-width-template, translation-ready, grid-layout, e-commerce
Text Domain: flairydesigns-theme

This theme is designed from the ground up for modern typography, responsive CSS grid layouts, and seamless integration with the FlairyDesigns Etsy Sync plugin.
*/

/* Reset & Base Setup */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

:root {
    /* Color Palette */
    --color-primary: #a78881;         /* Warm Rose Gold */
    --color-primary-light: #f5ebe6;   /* Blush Sand */
    --color-secondary: #8da499;       /* Soft Sage Green */
    --color-secondary-light: #f0f4f1; /* Mint Cream */
    --color-bg-base: #FAF8F5;          /* Warm Alabaster Cream */
    --color-bg-card: #ffffff;
    --color-text-dark: #2c2927;       /* Dark Chocolate Slate */
    --color-text-muted: #726b68;      /* Warm Charcoal */
    --color-border: #ebdcd6;          /* Soft Peach Border */
    --color-accent: #e5bfb2;          /* Pastel Coral Accent */
    
    /* Typography */
    --font-heading: 'Playfair Display', Georgia, serif;
    --font-body: 'Inter', system-ui, -apple-system, sans-serif;
    
    /* Spacing */
    --spacing-xs: 0.5rem;
    --spacing-sm: 1rem;
    --spacing-md: 2rem;
    --spacing-lg: 4rem;
    --spacing-xl: 8rem;
    
    /* Layout */
    --container-max-width: 1280px;
    --border-radius-sm: 8px;
    --border-radius-md: 16px;
    --border-radius-lg: 24px;
    --shadow-soft: 0 8px 30px rgba(167, 136, 129, 0.05);
    --shadow-hover: 0 16px 40px rgba(167, 136, 129, 0.1);
    --transition-smooth: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

body {
    background-color: var(--color-bg-base);
    color: var(--color-text-dark);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

/* Base Headings */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    color: var(--color-text-dark);
    font-weight: 600;
    line-height: 1.25;
}

h1 { font-size: clamp(2.5rem, 5vw, 4rem); }
h2 { font-size: clamp(2rem, 4vw, 3rem); }
h3 { font-size: clamp(1.5rem, 3vw, 2rem); }
h4 { font-size: 1.5rem; }

a {
    color: var(--color-primary);
    text-decoration: none;
    transition: var(--transition-smooth);
}

a:hover {
    color: var(--color-text-dark);
}

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

ul, ol {
    list-style: none;
}

button, .button, input[type="submit"] {
    background-color: var(--color-primary);
    color: #ffffff;
    font-family: var(--font-body);
    font-weight: 500;
    border: none;
    padding: 0.8rem 2rem;
    border-radius: var(--border-radius-sm);
    cursor: pointer;
    font-size: 0.95rem;
    transition: var(--transition-smooth);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

button:hover, .button:hover, input[type="submit"]:hover {
    background-color: var(--color-text-dark);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(44, 41, 39, 0.15);
}

.button-outline {
    background-color: transparent;
    color: var(--color-text-dark);
    border: 1px solid var(--color-border);
}

.button-outline:hover {
    background-color: var(--color-primary-light);
    border-color: var(--color-primary);
    color: var(--color-primary);
}

.container {
    width: 100%;
    max-width: var(--container-max-width);
    margin: 0 auto;
    padding: 0 var(--spacing-sm);
}

@media (min-width: 768px) {
    .container {
        padding: 0 var(--spacing-md);
    }
}
