/*
Theme Name:   Pure Haven IT Consulting
Theme URI:    https://purehavenitconsulting.com.au
Description:  Custom child theme for Pure Haven IT Consulting — IT recruitment, project delivery & workforce solutions. Built on Astra.
Author:       Pure Haven Digital
Author URI:   https://purehavendigital.com.au
Template:     astra
Version:      1.9.78
License:      GNU General Public License v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  purehaven-it-consulting
*/

/* ==========================================================================
   Design Tokens — Pure Haven IT Consulting
   ========================================================================== */

:root {
	/* Brand Colours */
	--ph-color-electric-blue: #0066FF;
	--ph-color-electric-blue-hover: #0052CC;
	--ph-color-electric-blue-light: #E6F0FF;
	--ph-color-vibrant-orange: #FF6B00;
	--ph-color-vibrant-orange-hover: #E55F00;
	--ph-color-vibrant-orange-light: #FFF3EB;
	--ph-color-success-teal: #00B4A6;
	--ph-color-success-teal-hover: #009688;
	--ph-color-success-teal-light: #E6F9F7;
	--ph-color-navy: #0D1B3E;
	--ph-color-navy-dark: #081428;
	--ph-color-navy-light: #1A2F5C;
	--ph-color-grey-bg: #F5F7FA;
	--ph-color-grey-border: #E2E8F0;
	--ph-color-grey-text: #000000;
	--ph-color-white: #FFFFFF;
	--ph-color-black: #0F172A;

	/* Semantic Aliases */
	--ph-color-primary: var(--ph-color-electric-blue);
	--ph-color-primary-hover: var(--ph-color-electric-blue-hover);
	--ph-color-secondary: var(--ph-color-vibrant-orange);
	--ph-color-secondary-hover: var(--ph-color-vibrant-orange-hover);
	--ph-color-accent: var(--ph-color-success-teal);
	--ph-color-accent-hover: var(--ph-color-success-teal-hover);
	--ph-color-background: var(--ph-color-white);
	--ph-color-surface: var(--ph-color-grey-bg);
	--ph-color-text: var(--ph-color-charcoal);
	--ph-color-charcoal: #1E293B;
	--ph-color-text-muted: var(--ph-color-grey-text);
	--ph-color-text-inverse: var(--ph-color-white);

	/* Hero & Overlay */
	--ph-hero-overlay: rgba(13, 27, 62, 0.6);
	--ph-hero-gradient: linear-gradient(135deg, rgba(13, 27, 62, 0.85) 0%, rgba(13, 27, 62, 0.45) 100%);

	/* Typography — system stack (no external font CDN) */
	--ph-font-heading: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
	--ph-font-body: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
	--ph-font-weight-regular: 400;
	--ph-font-weight-medium: 500;
	--ph-font-weight-semibold: 600;
	--ph-font-weight-bold: 700;
	--ph-font-size-hero: clamp(2.5rem, 5vw, 4rem);
	--ph-font-size-h1: clamp(2rem, 4vw, 3rem);
	--ph-font-size-h2: clamp(1.75rem, 3vw, 2.25rem);
	--ph-font-size-h3: clamp(1.25rem, 2vw, 1.5rem);
	--ph-font-size-body: 1rem;
	--ph-font-size-body-lg: 1.25rem;
	--ph-font-size-small: 0.875rem;
	--ph-line-height-tight: 1.2;
	--ph-line-height-body: 1.6;
	--ph-line-height-relaxed: 1.75;

	/* Spacing */
	--ph-space-xs: 0.25rem;
	--ph-space-sm: 0.5rem;
	--ph-space-md: 1rem;
	--ph-space-lg: 1.5rem;
	--ph-space-xl: 2rem;
	--ph-space-2xl: 3rem;
	--ph-space-3xl: 4rem;
	--ph-space-4xl: 6rem;
	--ph-section-padding: clamp(3rem, 6vw, 6rem);
	--ph-container-max: 1280px;
	--ph-container-padding: clamp(1rem, 4vw, 2rem);

	/* Border Radius */
	--ph-radius-sm: 4px;
	--ph-radius-md: 8px;
	--ph-radius-lg: 12px;
	--ph-radius-xl: 16px;
	--ph-radius-pill: 9999px;

	/* Shadows */
	--ph-shadow-sm: 0 1px 3px rgba(13, 27, 62, 0.08);
	--ph-shadow-md: 0 4px 12px rgba(13, 27, 62, 0.1);
	--ph-shadow-lg: 0 8px 24px rgba(13, 27, 62, 0.12);
	--ph-shadow-xl: 0 16px 48px rgba(13, 27, 62, 0.16);

	/* Glassmorphism */
	--ph-glass-bg: rgba(255, 255, 255, 0.12);
	--ph-glass-border: rgba(255, 255, 255, 0.2);
	--ph-glass-blur: blur(12px);

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

	/* Z-Index Scale */
	--ph-z-dropdown: 100;
	--ph-z-sticky: 200;
	--ph-z-overlay: 300;
	--ph-z-modal: 400;
	--ph-z-toast: 500;

	/* Header */
	--ph-header-height: 72px;
	--ph-header-height-mobile: 52px;
	--ph-header-bg: var(--ph-color-white);
	--ph-header-shadow: var(--ph-shadow-sm);
}

/* ==========================================================================
   Base Resets (child theme layer only)
   ========================================================================== */

.ph-body {
	font-family: var(--ph-font-body);
	font-size: var(--ph-font-size-body);
	line-height: var(--ph-line-height-body);
	color: var(--ph-color-charcoal);
}

.ph-heading,
.ph-h1,
.ph-h2,
.ph-h3,
.ph-h4 {
	font-family: var(--ph-font-heading);
	font-weight: var(--ph-font-weight-bold);
	line-height: var(--ph-line-height-tight);
	color: var(--ph-color-navy);
}

.ph-container {
	width: 100%;
	max-width: var(--ph-container-max);
	margin-inline: auto;
	padding-inline: var(--ph-container-padding);
}
