:root {
--az-color-primary: #FFD400;
--az-color-primary-hover: #E6BE00;
--az-color-primary-soft: #FFF4B8;

--az-color-black: #111111;
--az-color-soft-black: #1C1C1C;
--az-color-white: #FFFFFF;

--az-color-surface: #F7F7F7;
--az-color-surface-strong: #F1F1F1;
--az-color-border: #E5E5E5;
--az-color-muted: #6B6B6B;

--az-color-success: #1F8F4E;
--az-color-warning: #B77900;
--az-color-danger: #C62828;

--az-radius-sm: 8px;
--az-radius-md: 12px;
--az-radius-lg: 18px;
--az-radius-xl: 24px;
--az-radius-pill: 999px;

--az-shadow-sm: 0 1px 2px rgba(17, 17, 17, 0.05);
--az-shadow-md: 0 8px 24px rgba(17, 17, 17, 0.08);
--az-shadow-lg: 0 16px 40px rgba(17, 17, 17, 0.12);

--az-space-1: 4px;
--az-space-2: 8px;
--az-space-3: 12px;
--az-space-4: 16px;
--az-space-5: 20px;
--az-space-6: 24px;
--az-space-8: 32px;
--az-space-10: 40px;
--az-space-12: 48px;
--az-space-16: 64px;

--az-container: 1280px;
--az-container-wide: 1440px;

--az-font-size-xs: 12px;
--az-font-size-sm: 14px;
--az-font-size-md: 16px;
--az-font-size-lg: 18px;
--az-font-size-xl: 22px;
--az-font-size-2xl: 28px;
--az-font-size-3xl: 36px;

--az-line-height-tight: 1.3;
--az-line-height-normal: 1.7;

--az-transition-fast: 160ms ease;
--az-transition-normal: 240ms ease;
}

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

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

body {
margin: 0;
background: var(--az-color-white);
color: var(--az-color-black);
font-size: var(--az-font-size-md);
line-height: var(--az-line-height-normal);
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}

a {
color: inherit;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition:
color var(--az-transition-fast),
background-color var(--az-transition-fast),
border-color var(--az-transition-fast);
}

button,
input,
select,
textarea {
font: inherit;
}

button,
.wp-element-button,
.wp-block-button__link {
border: 0;
border-radius: var(--az-radius-md);
background: var(--az-color-primary);
color: var(--az-color-black);
font-weight: 700;
cursor: pointer;
transition:
background-color var(--az-transition-fast),
transform var(--az-transition-fast),
box-shadow var(--az-transition-fast);
}

button:hover,
.wp-element-button:hover,
.wp-block-button__link:hover {
background: var(--az-color-primary-hover);
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
outline: 3px solid rgba(255, 212, 0, 0.55);
outline-offset: 2px;
}

img {
max-width: 100%;
height: auto;
}

.az-container {
width: min(
calc(100% - 32px),
var(--az-container)
);
margin-inline: auto;
}

.az-container-wide {
width: min(
calc(100% - 32px),
var(--az-container-wide)
);
margin-inline: auto;
}

.az-surface {
background: var(--az-color-surface);
border: 1px solid var(--az-color-border);
border-radius: var(--az-radius-lg);
}

.az-card {
background: var(--az-color-white);
border: 1px solid var(--az-color-border);
border-radius: var(--az-radius-lg);
box-shadow: var(--az-shadow-sm);
}

.az-muted {
color: var(--az-color-muted);
}

.az-badge {
display: inline-flex;
align-items: center;
gap: var(--az-space-2);
min-height: 28px;
padding-inline: var(--az-space-3);
border-radius: var(--az-radius-pill);
background: var(--az-color-primary-soft);
color: var(--az-color-black);
font-size: var(--az-font-size-sm);
font-weight: 700;
}

.az-section {
padding-block: var(--az-space-12);
}

.az-section-title {
margin: 0 0 var(--az-space-6);
color: var(--az-color-black);
font-size: var(--az-font-size-2xl);
line-height: var(--az-line-height-tight);
font-weight: 800;
}

@media (max-width: 768px) {
:root {
--az-font-size-2xl: 24px;
--az-font-size-3xl: 30px;
}

.az-container,
.az-container-wide {
width: min(
calc(100% - 24px),
var(--az-container)
);
}

.az-section {
padding-block: var(--az-space-8);
}
}


/**
 * Local Persian typography.
 *
 * V108_STAGE22_FONT_STEPPER_REPAIR
 */
@font-face {
    font-family: "Azinnja Vazirmatn";
    src: url("../fonts/Vazirmatn-Regular.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "Azinnja Vazirmatn";
    src: url("../fonts/Vazirmatn-Bold.woff2") format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

:root {
    --az-font-family:
        "Azinnja Vazirmatn",
        Tahoma,
        Arial,
        sans-serif;
}

html,
body,
button,
input,
select,
textarea {
    font-family: var(--az-font-family) !important;
}

body {
    font-size: 15px;
    line-height: 1.75;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

button,
input,
select,
textarea {
    letter-spacing: 0;
}
