/*
Theme Name: Ascend Solutions
Theme URI: https://ascendsolutions.com.au
Author: Ascend Solutions Australia
Author URI: https://ascendsolutions.com.au
Description: Elementor Pro-compatible theme for Ascend Solutions — Canberra's trusted bookkeeping, payroll, BAS and CFO advisory firm. Built for conversion with custom Elementor widgets, WooCommerce digital shop, lead magnet system and local SEO schema. All pages are fully editable via Elementor Pro's visual builder and Theme Builder.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ascend
Tags: elementor, woocommerce, custom-logo, custom-menu, featured-images, theme-options, translation-ready

Ascend Solutions — Bookkeeping, Payroll, BAS & CFO Advisory | Canberra ACT
(c) 2026 Ascend Solutions Australia. All rights reserved.
*/

/* ==========================================================================
   DESIGN TOKENS — Global CSS Custom Properties
   These variables are used by both the theme CSS and Elementor-built pages.
   Set your Elementor Global Colors/Fonts to match these values.
   ========================================================================== */
:root {
    /* Brand Colours — Option B: Strategic Rebrand */
    --color-navy: #0B1D3A;       /* Midnight */
    --color-navy-light: #162B52; /* Deep Navy */
    --color-navy-dark: #060F1F;
    --color-teal: #0FA3B1;       /* Teal (Primary) */
    --color-teal-light: #14C4D4;
    --color-teal-dark: #0B7F8A;  /* Dark Teal */
    --color-aqua: #35D0DE;       /* Aqua */
    --color-gold: #D4A843;       /* Amber Gold */
    --color-gold-light: #E8C46A; /* Light Gold */
    --color-gold-dark: #B8902E;  /* Dark Gold */

    /* Neutrals — per Brand Identity Guidelines Section 04 */
    --color-white: #FFFFFF;
    --color-off-white: #F8FAFB;  /* Snow */
    --color-gray-100: #F1F3F5;
    --color-gray-200: #E2E8F0;   /* Silver */
    --color-gray-300: #D1D5DB;
    --color-gray-400: #94A3B8;   /* Cool Gray */
    --color-gray-500: #64748B;   /* Slate */
    --color-gray-600: #334155;   /* Charcoal */
    --color-text: #334155;       /* Charcoal — body text per Section 09 */
    --color-text-light: #64748B; /* Slate */

    /* Semantic aliases used in component CSS */
    --color-light-gray: var(--color-gray-200);
    --color-medium-gray: var(--color-gray-400);

    /* Feedback */
    --color-success: #38A169;
    --color-error: #E53E3E;
    --color-warning: #DD6B20;

    /* Typography */
    --font-heading: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* Fluid type scale */
    --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.8125rem);
    --text-sm: clamp(0.8125rem, 0.775rem + 0.2vw, 0.875rem);
    --text-base: clamp(0.9375rem, 0.9rem + 0.2vw, 1rem);
    --text-lg: clamp(1.0625rem, 1rem + 0.3vw, 1.125rem);
    --text-xl: clamp(1.1875rem, 1.1rem + 0.5vw, 1.3125rem);
    --text-2xl: clamp(1.4375rem, 1.3rem + 0.7vw, 1.625rem);
    --text-3xl: clamp(1.75rem, 1.5rem + 1.2vw, 2.25rem);
    --text-4xl: clamp(2.125rem, 1.8rem + 1.6vw, 3rem);
    --text-5xl: clamp(2.5rem, 2rem + 2.5vw, 4rem);

    /* Spacing (8px grid) */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --space-16: 4rem;
    --space-20: 5rem;
    --space-24: 6rem;

    /* Layout */
    --container-xl: 1200px;

    /* Shadows */
    --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
    --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
    --shadow-glow-teal: 0 0 20px rgba(15,163,177,0.3);
    --shadow-glow-gold: 0 0 20px rgba(212,168,67,0.3);

    /* Borders */
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-xl: 1rem;
    --radius-2xl: 1.5rem;
    --radius-full: 9999px;

    /* Transitions */
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
    --transition-slow: 350ms ease;

    /* Z-index scale */
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-modal: 400;
    --z-popover: 500;
}
