/*
Theme Name: GleanTap
Theme URI: https://gleantap.com
Author: GleanTap Team
Author URI: https://gleantap.com
Description: High-fidelity custom WordPress theme for GleanTap.
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: gleantap
*/

@font-face {
    font-family: 'Gantari';
    src: url('./assets/fonts/Gantari-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gothic';
    src: url('./assets/fonts/Gothic.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gantari';
    src: url('./assets/fonts/Gantari-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gantari';
    src: url('./assets/fonts/Gantari-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gantari';
    src: url('./assets/fonts/Gantari-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Gantari';
    src: url('./assets/fonts/Gantari-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Geist';
    src: url('./assets/fonts/GeistMono-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Geist';
    src: url('./assets/fonts/GeistMono-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Geist';
    src: url('./assets/fonts/GeistMono-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Geist';
    src: url('./assets/fonts/GeistMono-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "open-sans";
    src: url('./assets/fonts/OpenSans-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "open-sans";
    src: url('./assets/fonts/OpenSans-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "open-sans";
    src: url('./assets/fonts/OpenSans-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "open-sans";
    src: url('./assets/fonts/OpenSans-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}


:root {
    /* Base Colors */
    --gt-primary: #4B5DF6;
    --gt-primary-alpha: #4B5DF63D;
    --gt-primary-secondary: #C4CAFD;
    --gt-dark: #141414;
    --gt-gray: #717174;
    --gt-white: #FFFFFF;
    --gt-border-light: #EBEBEB;
    --gt-border-alt: #E4E3E9;
    --gt-primary-border: #1A29A9;

    /* Functional Colors */
    --gt-success: #27AE60;
    --gt-success-bright: #0BD50B;
    --gt-warning: #F39C12;
    --gt-warning-alt: #D35400;
    --gt-info: #2980B9;
    --gt-purple: #8E44AD;
    --gt-danger: #C0392B;

    /* Gradients - Standard */
    --gt-grad-primary-soft: linear-gradient(180deg, #E2E5FE 0%, #CED3FD 100%);
    --gt-grad-primary-strong: linear-gradient(180deg, #97A1F9 0%, #4B5DF6 100%);
    --gt-grad-success-light: linear-gradient(180deg, #E2FEE2 0%, #C5FCC5 100%);
    --gt-grad-info-light: linear-gradient(180deg, #E5F2FA 0%, #D4EAF7 100%);
    --gt-grad-warning-light: linear-gradient(180deg, #FCEFE4 0%, #FAE4D1 100%);
    --gt-grad-success-bg: linear-gradient(180deg, #E6F9EE 0%, #D6F5E3 100%);
    --gt-grad-warning-bg: linear-gradient(180deg, #FDF8E2 0%, #FCF3CF 100%);
    --gt-grad-purple-bg: linear-gradient(180deg, #F2EAF6 0%, #E9DBF0 100%);
    --gt-grad-danger-bg: linear-gradient(180deg, #FCE6E4 0%, #FAD5D1 100%);

    /* Shadows */
    --gt-shadow-card: 0px 4px 12px -4px rgba(0, 0, 0, 0.08);
    --gt-shadow-element: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);

    /* Typography */
    --gt-font-gantari: 'Gantari', sans-serif;
    --gt-font-sans: 'Open Sans', sans-serif;
    --gt-font-primary: var(--gt-font-gantari), -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --gt-font-heading: var(--gt-font-gantari), -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --gt-font-gothic: 'Gothic', sans-serif;
    --gt-font-geist: 'Geist Mono', monospace;

    /* Font Sizes */
    --gt-text-xs: 0.75rem;
    --gt-text-sm: 0.875rem;
    --gt-text-base: 1rem;
    --gt-text-lg: 1.125rem;
    --gt-text-xl: 1.25rem;
    --gt-text-2xl: 1.5rem;
    --gt-text-3xl: 1.875rem;
    --gt-text-4xl: 2.25rem;

    /* Spacing */
    --gt-space-1: 0.25rem;
    --gt-space-2: 0.5rem;
    --gt-space-3: 0.75rem;
    --gt-space-4: 1rem;
    --gt-space-5: 1.25rem;
    --gt-space-6: 1.5rem;
    --gt-space-8: 2rem;
    --gt-space-10: 2.5rem;
    --gt-space-12: 3rem;
    --gt-space-16: 4rem;

    /* Border Radius */
    --gt-radius-sm: 0.25rem;
    --gt-radius-md: 0.5rem;
    --gt-radius-lg: 1rem;
    --gt-radius-full: 9999px;

    /* Shadows - Enhanced for modern depth */
    --gt-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.03);
    --gt-shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
    --gt-shadow-md: 0 4px 8px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.04);
    --gt-shadow-lg: 0 12px 24px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.05);
    --gt-shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.12), 0 8px 16px rgba(0, 0, 0, 0.06);
    --gt-shadow-2xl: 0 25px 50px rgba(0, 0, 0, 0.15), 0 12px 24px rgba(0, 0, 0, 0.08);

    /* Transitions */
    --gt-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --gt-transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    --gt-transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);

    /* Container */
    --gt-container-max: 1344px;
    --gt-container-padding: var(--gt-space-6);
}

body {
    font-family: var(--gt-font-primary);
}

::selection {
    background-color: var(--gt-primary);
    color: var(--gt-white);
}

::-moz-selection {
    background-color: var(--gt-primary);
    color: var(--gt-white);
}

.gt-btn-primary {
    background: linear-gradient(0deg, #4B5DF6, #4B5DF6),
        linear-gradient(360deg, rgba(0, 0, 0, 0.038) 0%, rgba(0, 0, 0, 0) 100%);
    color: var(--gt-white);
    border: 1px solid var(--gt-primary-border);
    cursor: pointer;
}

.gt-btn-primary:hover {
    filter: brightness(1.10);
    box-shadow: var(--gt-shadow-card);
}

.gt-btn-primary-header {
    background: linear-gradient(0deg, #F1F135, #F1F135),
        linear-gradient(360deg, rgba(0, 0, 0, 0.038) 0%, rgba(0, 0, 0, 0) 100%);
    color: var(--gt-dark);
    cursor: pointer;
}

.gt-btn-primary-header:hover {
    filter: brightness(0.98);
    box-shadow: var(--gt-shadow-card);
}

.gt-btn-outline {
    background-color: transparent;
    color: var(--gt-primary);
    border: 1px solid var(--gt-primary);
    cursor: pointer;
}

.gt-btn-outline:hover {
    background-color: var(--gt-primary);
    color: var(--gt-white);
}

.gt-btn-secondary {
    background-color: #00000008;
    color: #141414;
    border: 1px solid #1414141F;
    cursor: pointer;
}

.gt-btn-secondary:hover {
    background-color: transparent;
    color: #141414;
}

.gantari-font,
.font-gantari {
    font-family: var(--gt-font-gantari);
    font-optical-sizing: auto;
    font-style: normal;
}

.gothic-font,
.font-gothic {
    font-family: var(--gt-font-gothic);
    font-optical-sizing: auto;
    font-style: normal;
}

.geist-font,
.font-geist {
    font-family: var(--gt-font-geist);
    font-optical-sizing: auto;
    font-style: normal;
}

.font-sans {
    font-family: var(--gt-font-sans);
    font-optical-sizing: auto;
    font-style: normal;
}