/*
Theme Name: Retirement Realized
Theme URI: https://retirementrealized.com
Author: Antigravity
Description: A premium WordPress theme for Retirement Realized, built from Figma designs.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: retirement-realized
*/

:root {
    /* Colors */
    --color-primary: #004643;
    --color-accent: #C7DA55;
    --color-dark: #06101D;
    --color-white: #FFFFFF;
    --color-off-white: #FDFFEA;
    --color-alert: #FF5838;
    --color-text-500: #808080;
    --color-black: #000000;

    /* Fonts */
    --font-heading: 'Gabarito', sans-serif;
    --font-body: 'Europa', sans-serif;
    --font-quote: 'Kalice-Trial', serif;

    /* Spacing */
    --container-width: 1200px;
    --section-padding: 112px 0;
}

/* Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.5;
    color: var(--color-black);
    background-color: var(--color-white);
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    font-weight: 900;
    text-transform: uppercase;
    line-height: 0.86;
}

h2 { font-size: 80px; }
h4 { font-size: 55px; }
h5 { font-size: 40px; font-weight: 700; line-height: 1.2; }
.h5-5 { font-size: 30px; font-weight: 700; line-height: 1.2; }
h6 { font-size: 24px; font-weight: 700; line-height: 1.2; }

a {
    text-decoration: none;
    color: inherit;
    transition: 0.3s ease;
}

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

.container {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 20px;
}

section {
    padding: var(--section-padding);
}

/* Button Styles */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 20px 40px;
    border-radius: 5px;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 18px;
    cursor: pointer;
    transition: transform 0.2s ease, background-color 0.3s ease;
}

.btn:hover {
    transform: translateY(-2px);
}

.btn-primary {
    background-color: var(--color-accent);
    color: var(--color-primary);
}

.btn-outline {
    border: 2px solid var(--color-accent);
    color: var(--color-off-white);
    background: transparent;
}

.btn-dark {
    background-color: var(--color-primary);
    color: var(--color-accent);
}

/* Responsive */
@media (max-width: 1024px) {
    h2 { font-size: 60px; }
    h4 { font-size: 40px; }
}

@media (max-width: 768px) {
    h2 { font-size: 48px; }
    h4 { font-size: 32px; }
    section { padding: 60px 0; }
}
