/*
Theme Name: Paquse Custom Theme
Theme URI: https://paquse.com
Template: astra
Author: Paquse Team
Author URI: https://paquse.com
Description: Paquse Customer Portal child theme based on Astra.
Version: 1.0.2
Text Domain: paquse-custom-theme
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/* GLOBAL VARIABLES (Red/Navy/Peach) */
:root {
    --paquse-red: #DD183B;
    --paquse-navy: #0F172A;
    --paquse-text: #3A3A3A;
    --paquse-bg: #F8FAFC;
    --paquse-white: #ffffff;
    --paquse-peach: #FFEDE6;
    --paquse-radius: 60px;
    /* Pill Shape */
    --paquse-font-head: 'Lexend', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --paquse-font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

/* BASE STYLES */
body {
    font-family: var(--paquse-font-body) !important;
    background-color: var(--paquse-bg) !important;
    color: var(--paquse-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--paquse-navy);
    font-family: var(--paquse-font-head) !important;
    font-weight: 700;
}

a {
    color: var(--paquse-red);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: var(--paquse-navy);
}

/* ASTRA HEADER OVERRIDES */
.site-header {
    background-color: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(15, 23, 42, 0.05);
    /* Very light navy border */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.main-header-bar {
    padding: 16px 0 !important;
}

/* CUSTOM LOGO PLACEHOLDER */
.site-branding .site-title a {
    color: var(--paquse-navy) !important;
    text-transform: none;
    /* paquse style */
    font-family: var(--paquse-font-head) !important;
    font-weight: 800;
    letter-spacing: -0.5px;
    font-size: 24px;
}

/* NAVIGATION */
.main-header-menu a {
    color: var(--paquse-navy) !important;
    font-family: var(--paquse-font-body) !important;
    font-weight: 600 !important;
    text-transform: none !important;
    /* Normal case */
    font-size: 15px !important;
}

.main-header-menu a:hover {
    color: var(--paquse-red) !important;
}

/* BUTTONS (Pill Shape) */
.wp-block-button__link,
.elementor-button,
.ast-custom-button-link {
    background-color: var(--paquse-navy) !important;
    color: var(--paquse-white) !important;
    border-radius: var(--paquse-radius) !important;
    font-family: var(--paquse-font-head) !important;
    font-weight: 600 !important;
    padding: 12px 28px !important;
    text-transform: none !important;
    font-size: 15px !important;
    letter-spacing: 0.2px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
    transition: transform 0.2s, background-color 0.2s;
}

.wp-block-button__link.has-primary-background-color {
    background-color: var(--paquse-red) !important;
    box-shadow: 0 4px 12px rgba(221, 24, 59, 0.25);
}

.wp-block-button__link:hover,
.elementor-button:hover,
.ast-custom-button-link:hover {
    background-color: #1E293B !important;
    transform: translateY(-2px);
}

.wp-block-button__link.has-primary-background-color:hover {
    background-color: #C41535 !important;
}

/* FOOTER */
.site-footer {
    background-color: var(--paquse-navy) !important;
    color: rgba(255, 255, 255, 0.7) !important;
    padding: 60px 0 !important;
}

.site-footer a {
    color: var(--paquse-white) !important;
    opacity: 0.8;
}

.site-footer a:hover {
    color: var(--paquse-red) !important;
    opacity: 1;
}

/* Elementor Section Backgrounds */
.elementor-section.elementor-section-boxed>.elementor-container {
    /* Ensures consistent spacing */
}

/* ADMIN BAR - Force visibility for Super Admins */
#wpadminbar {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
}

html.admin-bar {
    margin-top: 32px !important;
    padding-top: 0 !important;
}

@media screen and (max-width: 782px) {
    html.admin-bar {
        margin-top: 46px !important;
    }
}