/*
Theme Name: Red Wizard
Theme URI: https://iekreth.gr
Author: Yannis Papadimitriou
Author URI: https://iekreth.gr
Description: A vibrant and sweet theme inspired by the Red Wizard.
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: red-wizard
*/

/*--------------------------------------------------------------
# Variables
--------------------------------------------------------------*/
:root {
    --primary-color: #FF5733;
    --secondary-color: #A52A2A;
    --accent-color: #FFC300;
    --background-color-body: #FDFBF5;
    --text-color-body: #333333;
    --text-color-headings: #111111;
    --link-color: #FF5733;
    --link-hover-color: #FFC300;
    --mystical-accent-color: #4A2A4A;
    --font-family-body: 'Open Sans', sans-serif;
    --font-family-headings: 'Cinzel', serif;
    --base-font-size: 16px;
    --heading-h1-size: 3rem;
    --heading-h2-size: 2.2rem;
    --heading-h3-size: 1.8rem;
    --max-content-width: 1200px;
    --base-padding: 1rem;
    --base-margin: 1rem;
    --section-spacing-vertical: 3rem;
    --header-background: #FFFFFF;
    --header-text-color: #333333;
    --header-padding-vertical: 1rem;
    --header-padding-horizontal: 2rem;
    --footer-background: #FFF8E7;
    --footer-text-color: #333333;
    --button-primary-background-color: #FF5733;
    --button-primary-text-color: #FFFFFF;
    --button-primary-border-radius: 25px;
    --button-primary-border: 1px solid #C64422;
    --button-primary-padding: 0.75rem 1.5rem;
    --button-primary-hover-effect-bg-color: #E64A22;
    --button-primary-hover-effect-text-color: #FFFFFF;
    --button-secondary-background-color: transparent;
    --button-secondary-text-color: #FF5733;
    --button-secondary-border: 2px solid #FF5733;
    --button-secondary-border-radius: 25px;
    --button-secondary-padding: 0.5rem 1rem;
    --button-secondary-hover-effect-bg-color: #FF5733;
    --button-secondary-hover-effect-text-color: #FFFFFF;
    --image-border-radius: 8px;
    --image-shadow: 0 4px 15px rgba(255, 87, 51, 0.2);
    --table-of-contents-background: #FFF5E1;
    --table-of-contents-border-color: #FFC300;
    --faq-accordion-header-background: #FFF8E7;
    --faq-accordion-header-text-color: #333333;
    --pros-cons-table-pros-header-bg: #FFC300;
    --pros-cons-table-cons-header-bg: #A52A2A;
    --faq-item-border-color: #FFF8E7;
    --faq-question-background-color: #FFFFFF;
    --faq-question-text-color: #333333;
    --faq-question-hover-background-color: #FFF5E1;
    --faq-answer-background-color: #FFFFFF;
    --faq-answer-text-color: #333333;
    --faq-active-indicator-color: #FFC300;
}

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
body {
    background-color: var(--background-color-body);
    color: var(--text-color-body);
    font-family: var(--font-family-body);
    font-size: var(--base-font-size);
    line-height: 1.6;
}

h1, h2, h3, h4, h5, h6, .entry-title {
    font-family: var(--font-family-headings);
    color: var(--text-color-headings);
    margin-top: var(--section-spacing-vertical);
    margin-bottom: var(--base-margin);
}

.entry-content h2, .entry-content h3 {
    color: var(--secondary-color);
}

h1 { font-size: var(--heading-h1-size); }
h2 { font-size: var(--heading-h2-size); }
h3 { font-size: var(--heading-h3-size); }

p {
    margin-bottom: var(--base-margin);
}

a {
    color: var(--link-color);
    text-decoration: none;
}

a:hover {
    color: var(--link-hover-color);
}

img {
    border-radius: var(--image-border-radius);
    box-shadow: var(--image-shadow);
    max-width: 100%;
    height: auto;
}

.site-main {
    max-width: var(--max-content-width);
    margin: 0 auto;
    padding: var(--section-spacing-vertical) var(--base-padding);
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.site-header.sticky-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.site-header {
    background-color: #FFFFFF;
    padding: 1rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.site-header.scrolled {
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.site-branding {
    display: flex;
    align-items: center;
}

.custom-logo {
    max-height: 50px;
    width: auto;
}

.site-title {
    font-size: 1.5rem;
    margin-left: 1rem;
}

.main-navigation ul {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

.main-navigation li {
    margin-left: 1.5rem;
}

.header-cta {
    margin-left: auto;
}

.header-cta .button {
    background-color: var(--button-primary-background-color);
    color: var(--button-primary-text-color);
    border-radius: var(--button-primary-border-radius);
    border: var(--button-primary-border);
    padding: var(--button-primary-padding);
    font-weight: bold;
    text-align: center;
}

.header-cta .button:hover {
    background-color: var(--button-primary-hover-effect-bg-color);
    color: var(--button-primary-hover-effect-text-color);
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer {
    background-color: var(--footer-background);
    color: var(--footer-text-color);
    padding: var(--section-spacing-vertical) var(--header-padding-horizontal);
    text-align: center;
}

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
.wp-block-button__link {
    background-color: var(--button-primary-background-color);
    color: var(--button-primary-text-color);
    border-radius: var(--button-primary-border-radius);
    border: var(--button-primary-border);
    padding: var(--button-primary-padding);
    font-weight: bold;
    text-align: center;
}

.wp-block-button__link:hover {
    background-color: var(--button-primary-hover-effect-bg-color);
    color: var(--button-primary-hover-effect-text-color);
}

.is-style-outline .wp-block-button__link {
    background-color: var(--button-secondary-background-color);
    color: var(--button-secondary-text-color);
    border: var(--button-secondary-border);
}

.is-style-outline .wp-block-button__link:hover {
    background-color: var(--button-secondary-hover-effect-bg-color);
    color: var(--button-secondary-hover-effect-text-color);
}

/*--------------------------------------------------------------
# FAQ Accordion
--------------------------------------------------------------*/
.faq-item {
    border: 1px solid var(--faq-item-border-color);
    margin-bottom: var(--base-margin);
}

.faq-question {
    background-color: var(--faq-question-background-color);
    color: var(--faq-question-text-color);
    padding: var(--base-padding);
    cursor: pointer;
    margin: 0;
}

.faq-question:hover {
    background-color: var(--faq-question-hover-background-color);
}

.faq-answer {
    display: none;
    background-color: var(--faq-answer-background-color);
    color: var(--faq-answer-text-color);
    padding: var(--base-padding);
}

.faq-item.active .faq-answer {
    display: block;
}