/* =========================================================
   QuantEstate / ASTRA RESET LAYER
   Purpose: neutralize Astra defaults before project styling.
   ========================================================= */

:root {
    --qe-bg: #ffffff;
    --qe-bg-soft: #f5f7fb;
    --qe-surface: #ffffff;
    --qe-surface-dark: #111722;
    --qe-text: #121722;
    --qe-text-soft: #697386;
    --qe-line: #dfe5ee;
    --qe-primary: #173262;
    --qe-primary-hover: #102547;
    --qe-accent: #6f91c9;
    --qe-white: #ffffff;
    --qe-black: #0b0e13;

    --qe-radius-sm: 8px;
    --qe-radius-md: 14px;
    --qe-radius-lg: 24px;
    --qe-radius-pill: 999px;

    --qe-container: 1440px;
    --qe-gutter: 48px;

    --qe-shadow-sm: 0 8px 24px rgba(20, 31, 48, 0.06);
    --qe-shadow-md: 0 18px 50px rgba(20, 31, 48, 0.10);

    --qe-ease: cubic-bezier(.22,.61,.36,1);
    --qe-speed: .24s;
}

html {
    box-sizing: border-box;
    scroll-behavior: smooth;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

body.quantestate-site {
    margin: 0;
    background: var(--qe-bg);
    color: var(--qe-text);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.quantestate-site img,
body.quantestate-site svg,
body.quantestate-site video {
    max-width: 100%;
    height:100%!important;
}

body.quantestate-site p,
body.quantestate-site h1,
body.quantestate-site h2,
body.quantestate-site h3,
body.quantestate-site h4,
body.quantestate-site h5,
body.quantestate-site h6 {
    margin-top: 0;
}

body.quantestate-site a {
    color: inherit;
    text-decoration: none;
}

body.quantestate-site a:hover,
body.quantestate-site a:focus,
body.quantestate-site a:active {
    color: inherit;
}

/* Kill Astra's default blue-ish focus/hover feel. */
body.quantestate-site :where(a, button, input, textarea, select, summary):focus,
body.quantestate-site :where(a, button, input, textarea, select, summary):focus-visible {
    outline: none;
    box-shadow: none;
}

/* ---------- Astra button reset ---------- */
body.quantestate-site :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .ast-button,
    .wp-block-button__link,
    .elementor-button
) {
    appearance: none;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: inherit;
    font: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-transform: none;
    text-decoration: none;
    cursor: pointer;
    transition: none;
}

body.quantestate-site :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .ast-button,
    .wp-block-button__link,
    .elementor-button
):hover,
body.quantestate-site :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .ast-button,
    .wp-block-button__link,
    .elementor-button
):focus {
    background: transparent;
    color: inherit;
    border-color: transparent;
    box-shadow: none;
}

/* ---------- Astra container reset ---------- */
body.quantestate-site .ast-container,
body.quantestate-site .site-content > .ast-container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

body.quantestate-site .site-content,
body.quantestate-site .ast-separate-container,
body.quantestate-site .ast-separate-container .ast-article-single,
body.quantestate-site .ast-separate-container .ast-article-post {
    background: transparent;
}

body.quantestate-site .entry-content,
body.quantestate-site .entry-content > * {
    max-width: none;
}

/* ---------- Form reset ---------- */
body.quantestate-site :where(input, textarea, select) {
    width: 100%;
    margin: 0;
    border: 1px solid var(--qe-line);
    border-radius: var(--qe-radius-sm);
    background: var(--qe-white);
    color: var(--qe-text);
    font: inherit;
    line-height: 1.4;
    box-shadow: none;
}

body.quantestate-site :where(input, textarea, select):focus {
    border-color: #9ca6b5;
    outline: none;
    box-shadow: none;
}

body.quantestate-site input::placeholder,
body.quantestate-site textarea::placeholder {
    color: #a1a7b0;
    opacity: 1;
}
