/*
Theme Name: Hustero
Theme URI: https://hustero.com
Author: James De Koven 
Author URI: https://jamesdekoven.dev
Description: Hustero is a premium WordPress theme designed exclusively for contemporary agencies, creative studios, and fast-scaled modern consultancies. Built around a core philosophy of extreme minimalism, it eliminates unnecessary visual clutter to place your capabilities and case studies directly under the spotlight.
Version: 1.0
Required at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
Tags: one-column, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, rtl-language-support, theme-options, threaded-comments, translation-ready, wide-blocks
Text Domain: hustero
*/



@import url('https://fonts.googleapis.com/css2?family=Google+Sans+Flex:opsz,wght@6..144,1..1000&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* 1. Use a more intuitive box-sizing model */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* 2. Remove default margin for common elements */
* {
    margin: 0;
}

/* 3. Allow percentage-based heights in the application */
html,
body {
    height: 100%;
    scroll-behavior: smooth;
}

/* 4. Add accessible line-height and improve text rendering */
body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

/* 5. Improve media defaults for responsive design */
img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

/* 6. Remove built-in form typography styles */
input,
button,
textarea,
select {
    font: inherit;
}

/* 7. Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: break-word;
}

/* 8. Remove list styles on ul/ol elements with a list role, which suggests default styling will be removed */
ul[role='list'],
ol[role='list'] {
    list-style: none;
}

/* 9. Create a root stacking context (Useful for React/Vue/Next.js apps) */
#root,
#__next {
    isolation: isolate;
}

.wrapper {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
    padding-inline: 1.5rem;
    transition: all 0.3s ease-in-out;
}

/* .debug,
.debug * {
    outline: 1px solid rgba(255, 0, 0, 0.5) !important;
    background: rgba(255, 0, 0, 0.05) !important;
} */

.debug {
    outline: 1px dashed rgba(255, 0, 0, 0.5) !important;
}


:root {
    /* ── Brand Colors ── */
    --color-primary: #14254A;
    --color-primary-light: #25407A;
    --color-primary-dark: #0A1326;

    --color-secondary: #F6901E;
    --color-secondary-light: #F8A94D;
    --color-secondary-dark: #D47712;

    /* ── Neutrals ── */
    --color-white: #FFFFFF;
    --color-gray-50: #F4F6F9;
    --color-gray-100: #E2E7ED;
    --color-gray-200: #C5CDD7;
    --color-gray-400: #8A99AF;
    --color-gray-600: #55657E;
    --color-gray-800: #212C40;

    /* ── Dark Mode Surfaces ── */
    --color-navy-dark: #0A1326;
    --color-navy-surface: #111F3D;

    /* ── Focus ── */
    --focus-ring: rgba(246, 144, 30, 0.5);

    /* ══════════════════════════════════
       DARK MODE — DEFAULT
    ══════════════════════════════════ */
    --bg-body: var(--color-navy-dark);
    --bg-surface: var(--color-navy-surface);

    --text-main: var(--color-gray-50);
    --text-muted: var(--color-gray-400);
    --text-inverse: var(--color-primary-dark);

    --border-color: rgba(255, 255, 255, 0.1);

    --btn-primary-bg: var(--color-secondary);
    --btn-primary-text: var(--color-primary-dark);
    --btn-primary-hover: var(--color-secondary-light);
}

/* ══════════════════════════════════
   LIGHT MODE OVERRIDE
══════════════════════════════════ */
[data-theme="light"] {
    --bg-body: var(--color-gray-50);
    --bg-surface: var(--color-white);

    --text-main: var(--color-gray-800);
    --text-muted: var(--color-gray-600);
    --text-inverse: var(--color-white);

    --border-color: var(--color-gray-200);

    --btn-primary-bg: var(--color-primary);
    --btn-primary-text: var(--color-white);
    --btn-primary-hover: var(--color-primary-light);
}

/* ══════════════════════════════════
   BASE STYLES
══════════════════════════════════ */
body {
    background-color: var(--bg-body);
    color: var(--text-main);
    font-family: "Google Sans Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    /* set your default weight */
    font-style: normal;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "GRAD" 0,
        "ROND" 0;
    transition: background-color 0.3s ease, color 0.3s ease;
    overflow-x: hidden;
}