/* =======================================================
PROJECT: Design System
SOURCE: Figma Tokens (Auto-Generated)
ARCHITECTURE: Variable-Based Spacing System
STRUCTURE:
1. Root Variables (Desktop Base)
2. Responsive Overrides
3. Utility Classes (Compact / Regular / Spacious)
RULES:
- No aliasing
- Explicit pixel values
- Variable name = Class name
- Fully responsive
======================================================= */

/* =======================================================
DESIGN SYSTEM ROOT VARIABLES
Breakpoint: Desktop (1440px Base)
======================================================= */

:root {

    /* ================= TEXT ================= */

    --text-regular-eyebrow-gap: 8px;
    --text-regular-heading-gap: 24px;
    --text-regular-paragraph-gap: 16px;
    --text-regular-list-item-gap: 12px;
    --text-regular-list-block-gap: 24px;
    --text-regular-quote-gap: 32px;

    --text-compact-eyebrow-gap: 4px;
    --text-compact-heading-gap: 16px;
    --text-compact-paragraph-gap: 8px;
    --text-compact-list-item-gap: 8px;
    --text-compact-list-block-gap: 16px;
    --text-compact-quote-gap: 24px;

    --text-spacious-eyebrow-gap: 12px;
    --text-spacious-heading-gap: 32px;
    --text-spacious-paragraph-gap: 24px;
    --text-spacious-list-item-gap: 16px;
    --text-spacious-list-block-margin-bottom: 40px;
    --text-spacious-quote-gap: 48px;

    /* ================= STACK ================= */

    --stack-regular-block-gap: 32px;
    --stack-regular-group-gap: 24px;
    --stack-regular-item-gap: 12px;
    --stack-regular-action-gap: 40px;

    --stack-compact-block-gap: 24px;
    --stack-compact-group-gap: 16px;
    --stack-compact-item-gap: 8px;
    --stack-compact-action-gap: 24px;

    --stack-spacious-block-gap: 48px;
    --stack-spacious-group-gap: 32px;
    --stack-spacious-item-gap: 16px;
    --stack-spacious-action-gap: 48px;

    /* ================= INLINE ================= */

    --inline-regular-inline-item-gap: 12px;
    --inline-regular-icon-text-gap: 8px;

    --inline-compact-inline-item-gap: 8px;
    --inline-compact-icon-text-gap: 12px;

    --inline-spacious-inline-item-gap: 40px;
    --inline-spacious-icon-text-gap: 24px;

    /* ================= LAYOUT ================= */

    --layout-regular-section-padding: 80px;
    --layout-regular-section-padding-x: 24px;
    --layout-regular-section-padding-y: 24px;
    --layout-regular-2-column-gap: 80px;
    --layout-regular-grid-column-gap: 24px;
    --layout-regular-grid-row-gap: 32px;

    --layout-compact-section-padding: 64px;
    --layout-compact-section-padding-x: 16px;
    --layout-compact-section-padding-y: 16px;
    --layout-compact-2-column-gap: 48px;
    --layout-compact-grid-column-gap: 16px;
    --layout-compact-grid-row-gap: 24px;

    --layout-spacious-section-padding: 120px;
    --layout-spacious-section-padding-x: 100px;
    --layout-spacious-section-padding-y: 120px;
    --layout-spacious-2-column-gap: 120px;
    --layout-spacious-grid-column-gap: 32px;
    --layout-spacious-grid-row-gap: 48px;

    /* ================= CARD ================= */

    --component-card-regular-padding-x: 24px;
    --component-card-regular-padding-y: 24px;
    --component-card-regular-item-gap: 12px;
    --component-card-regular-group-gap: 24px;
    --component-card-regular-action-gap: 24px;

    --component-card-compact-padding-x: 16px;
    --component-card-compact-padding-y: 16px;
    --component-card-compact-item-gap: 8px;
    --component-card-compact-group-gap: 16px;
    --component-card-compact-action-gap: 16px;

    --component-card-spacious-padding-x: 32px;
    --component-card-spacious-padding-y: 32px;
    --component-card-spacious-item-gap: 16px;
    --component-card-spacious-group-gap: 32px;
    --component-card-spacious-action-gap: 32px;

    /* ================= LIST ================= */

    --component-list-regular-padding-x: 24px;
    --component-list-regular-padding-y: 16px;
    --component-list-regular-item-gap: 24px;
    --component-list-regular-item-inner-gap: 12px;

    --component-list-compact-padding-x: 16px;
    --component-list-compact-padding-y: 12px;
    --component-list-compact-item-gap: 16px;
    --component-list-compact-item-inner-gap: 8px;

    /* ================= FORM ================= */

    --component-form-regular-padding: 48px;
    --component-form-regular-group-gap: 24px;
    --component-form-regular-field-gap: 12px;
    --component-form-regular-action-gap: 24px;

    --component-form-compact-padding: 32px;
    --component-form-compact-group-gap: 16px;
    --component-form-compact-field-gap: 8px;
    --component-form-compact-action-gap: 16px;

    /* ================= BUTTON ================= */

    --component-button-regular-padding-x: 16px;
    --component-button-regular-padding-y: 8px;
    --component-button-regular-icon-gap: 8px;
    --component-button-regular-group-gap: 16px;

    --component-button-compact-padding-x: 12px;
    --component-button-compact-padding-y: 6px;
    --component-button-compact-icon-gap: 6px;
    --component-button-compact-group-gap: 12px;

    --component-button-spacious-padding-x: 20px;

}

/* =======================================================
RESPONSIVE OVERRIDE
Breakpoint: ≤1366px
======================================================= */

@media only screen and (max-width:1366px) {
    :root {

        --layout-regular-section-padding: 72px;
        --layout-spacious-section-padding: 110px;
        --layout-spacious-2-column-gap: 110px;

    }
}

/* =======================================================
RESPONSIVE OVERRIDE
Breakpoint: ≤1199px
======================================================= */

@media only screen and (max-width:1599px) {
    :root {

      --layout-spacious-section-padding-y:100px;
       
    }
}
@media only screen and (max-width:1366px) {
    :root {

      --layout-spacious-section-padding-y:80px;
       
    }
}
@media only screen and (max-width:1199px) {
    :root {

        --layout-regular-section-padding: 64px;
        --layout-spacious-section-padding: 100px;
        --layout-regular-2-column-gap: 64px;
        --layout-spacious-2-column-gap: 100px;
		--layout-spacious-section-padding-y:70px;

    }
}
/* =======================================================
RESPONSIVE OVERRIDE
Breakpoint: ≤1024px
======================================================= */

@media only screen and (max-width:1024px) {
    :root {

        --layout-regular-section-padding: 56px;
        --layout-spacious-section-padding: 88px;
        --layout-regular-2-column-gap: 56px;
        --layout-spacious-2-column-gap: 88px;
		--layout-spacious-section-padding-y:60px;

    }
}

/* =======================================================
RESPONSIVE OVERRIDE
Breakpoint: ≤767px
======================================================= */

@media only screen and (max-width:767px) {
    :root {

		--layout-regular-section-padding: 48px;
		--layout-compact-section-padding: 48px;
		--layout-spacious-section-padding: 72px;

		--layout-regular-2-column-gap: 40px;
		--layout-spacious-2-column-gap: 64px;
		--layout-spacious-section-padding-y:50px;
		--text-spacious-list-block-margin-bottom:30px;
    }
}

/* =======================================================
RESPONSIVE OVERRIDE
Breakpoint: ≤479px
======================================================= */

@media only screen and (max-width:479px) {
    :root {

        --layout-regular-section-padding: 40px;
        --layout-compact-section-padding: 40px;
        --layout-spacious-section-padding: 56px;

        --layout-regular-2-column-gap: 32px;
        --layout-spacious-2-column-gap: 48px;

    }
}

/* =======================================================
RESPONSIVE OVERRIDE
Breakpoint: ≤374px
======================================================= */

@media only screen and (max-width:374px) {
    :root {

        --layout-regular-section-padding: 32px;
        --layout-compact-section-padding: 32px;
        --layout-spacious-section-padding: 48px;

        --layout-regular-2-column-gap: 24px;
        --layout-spacious-2-column-gap: 40px;

    }
}

/* =======================================================
UTILITY CLASSES
Variable Name = Class Name Mapping
======================================================= */

/* -----------------------
Density: Compact
----------------------- */

.text-compact-eyebrow-gap {
    gap: var(--text-compact-eyebrow-gap);
}

.text-compact-heading-gap {
    gap: var(--text-compact-heading-gap);
}

.text-compact-paragraph-gap {
    gap: var(--text-compact-paragraph-gap);
}

.text-compact-list-item-gap {
    gap: var(--text-compact-list-item-gap);
}

.text-compact-list-block-gap {
    gap: var(--text-compact-list-block-gap);
}

.text-compact-quote-gap {
    gap: var(--text-compact-quote-gap);
}

.stack-compact-block-gap {
    gap: var(--stack-compact-block-gap);
}

.stack-compact-group-gap {
    gap: var(--stack-compact-group-gap);
}

.stack-compact-item-gap {
    gap: var(--stack-compact-item-gap);
}

.stack-compact-action-gap {
    gap: var(--stack-compact-action-gap);
}

.inline-compact-inline-item-gap {
    gap: var(--inline-compact-inline-item-gap);
}

.inline-compact-icon-text-gap {
    gap: var(--inline-compact-icon-text-gap);
}

.layout-compact-section-padding {
    padding: var(--layout-compact-section-padding);
}

.layout-compact-section-padding-x {
    padding-inline: var(--layout-compact-section-padding-x);
}

.layout-compact-section-padding-y {
    padding-block: var(--layout-compact-section-padding-y);
}

.layout-compact-2-column-gap {
    gap: var(--layout-compact-2-column-gap);
}

.layout-compact-grid-column-gap {
    column-gap: var(--layout-compact-grid-column-gap);
}

.layout-compact-grid-row-gap {
    row-gap: var(--layout-compact-grid-row-gap);
}

.component-card-compact-padding-x {
    padding-inline: var(--component-card-compact-padding-x);
}

.component-card-compact-padding-y {
    padding-block: var(--component-card-compact-padding-y);
}

.component-card-compact-item-gap {
    gap: var(--component-card-compact-item-gap);
}

.component-card-compact-group-gap {
    gap: var(--component-card-compact-group-gap);
}

.component-card-compact-action-gap {
    gap: var(--component-card-compact-action-gap);
}

.component-list-compact-padding-x {
    padding-inline: var(--component-list-compact-padding-x);
}

.component-list-compact-padding-y {
    padding-block: var(--component-list-compact-padding-y);
}

.component-list-compact-item-gap {
    gap: var(--component-list-compact-item-gap);
}

.component-list-compact-item-inner-gap {
    gap: var(--component-list-compact-item-inner-gap);
}

.component-form-compact-padding {
    padding: var(--component-form-compact-padding);
}

.component-form-compact-group-gap {
    gap: var(--component-form-compact-group-gap);
}

.component-form-compact-field-gap {
    gap: var(--component-form-compact-field-gap);
}

.component-form-compact-action-gap {
    gap: var(--component-form-compact-action-gap);
}

.component-button-compact-padding-x {
    padding-inline: var(--component-button-compact-padding-x);
}

.component-button-compact-padding-y {
    padding-block: var(--component-button-compact-padding-y);
}

.component-button-compact-icon-gap {
    gap: var(--component-button-compact-icon-gap);
}

.component-button-compact-group-gap {
    gap: var(--component-button-compact-group-gap);
}

/* -----------------------
Density: Regular
----------------------- */

.text-regular-eyebrow-gap {
    gap: var(--text-regular-eyebrow-gap);
}

.text-regular-heading-gap {
    gap: var(--text-regular-heading-gap);
}

.text-regular-paragraph-gap {
    gap: var(--text-regular-paragraph-gap);
}

.text-regular-list-item-gap {
    gap: var(--text-regular-list-item-gap);
}

.text-regular-list-block-gap {
    gap: var(--text-regular-list-block-gap);
}

.text-regular-quote-gap {
    gap: var(--text-regular-quote-gap);
}

.stack-regular-block-gap {
    gap: var(--stack-regular-block-gap);
}

.stack-regular-group-gap {
    gap: var(--stack-regular-group-gap);
}

.stack-regular-item-gap {
    gap: var(--stack-regular-item-gap);
}

.stack-regular-action-gap {
    gap: var(--stack-regular-action-gap);
}

.inline-regular-inline-item-gap {
    gap: var(--inline-regular-inline-item-gap);
}

.inline-regular-icon-text-gap {
    gap: var(--inline-regular-icon-text-gap);
}

.layout-regular-section-padding {
    padding: var(--layout-regular-section-padding);
}

.layout-regular-section-padding-x {
    padding-inline: var(--layout-regular-section-padding-x);
}

.layout-regular-section-padding-y {
    padding-block: var(--layout-regular-section-padding-y);
}

.layout-regular-2-column-gap {
    gap: var(--layout-regular-2-column-gap);
}

.layout-regular-grid-column-gap {
    column-gap: var(--layout-regular-grid-column-gap);
}

.layout-regular-grid-row-gap {
    row-gap: var(--layout-regular-grid-row-gap);
}

.component-card-regular-padding-x {
    padding-inline: var(--component-card-regular-padding-x);
}

.component-card-regular-padding-y {
    padding-block: var(--component-card-regular-padding-y);
}

.component-card-regular-item-gap {
    gap: var(--component-card-regular-item-gap);
}

.component-card-regular-group-gap {
    gap: var(--component-card-regular-group-gap);
}

.component-card-regular-action-gap {
    gap: var(--component-card-regular-action-gap);
}

.component-list-regular-padding-x {
    padding-inline: var(--component-list-regular-padding-x);
}

.component-list-regular-padding-y {
    padding-block: var(--component-list-regular-padding-y);
}

.component-list-regular-item-gap {
    gap: var(--component-list-regular-item-gap);
}

.component-list-regular-item-inner-gap {
    gap: var(--component-list-regular-item-inner-gap);
}

.component-form-regular-padding {
    padding: var(--component-form-regular-padding);
}

.component-form-regular-group-gap {
    gap: var(--component-form-regular-group-gap);
}

.component-form-regular-field-gap {
    gap: var(--component-form-regular-field-gap);
}

.component-form-regular-action-gap {
    gap: var(--component-form-regular-action-gap);
}

.component-button-regular-padding-x {
    padding-inline: var(--component-button-regular-padding-x);
}

.component-button-regular-padding-y {
    padding-block: var(--component-button-regular-padding-y);
}

.component-button-regular-icon-gap {
    gap: var(--component-button-regular-icon-gap);
}

.component-button-regular-group-gap {
    gap: var(--component-button-regular-group-gap);
}

/* -----------------------
Density: Spacious
----------------------- */

.text-spacious-eyebrow-gap {
    gap: var(--text-spacious-eyebrow-gap);
}

.text-spacious-heading-gap {
    gap: var(--text-spacious-heading-gap);
}

.text-spacious-paragraph-gap {
    gap: var(--text-spacious-paragraph-gap);
}

.text-spacious-list-item-gap {
    gap: var(--text-spacious-list-item-gap);
}

.text-spacious-list-block-margin-bottom {
    margin-bottom: var(--text-spacious-list-block-margin-bottom) !important;
}

.text-spacious-quote-gap {
    gap: var(--text-spacious-quote-gap);
}

.stack-spacious-block-gap {
    gap: var(--stack-spacious-block-gap);
}

.stack-spacious-group-gap {
    gap: var(--stack-spacious-group-gap);
}

.stack-spacious-item-gap {
    gap: var(--stack-spacious-item-gap);
}

.stack-spacious-action-gap {
    gap: var(--stack-spacious-action-gap);
}

.inline-spacious-inline-item-gap {
    gap: var(--inline-spacious-inline-item-gap);
}

.inline-spacious-icon-text-gap {
    gap: var(--inline-spacious-icon-text-gap);
}

.layout-spacious-section-padding {
    padding: var(--layout-spacious-section-padding);
}

.layout-spacious-section-padding-x {
    padding-inline: var(--layout-spacious-section-padding-x);
}

.layout-spacious-section-padding-y {
    padding-block: var(--layout-spacious-section-padding-y) !important;
}

.layout-spacious-2-column-gap {
    gap: var(--layout-spacious-2-column-gap);
}

.layout-spacious-grid-column-gap {
    column-gap: var(--layout-spacious-grid-column-gap);
}

.layout-spacious-grid-row-gap {
    row-gap: var(--layout-spacious-grid-row-gap);
}

.component-card-spacious-padding-x {
    padding-inline: var(--component-card-spacious-padding-x);
}

.component-card-spacious-padding-y {
    padding-block: var(--component-card-spacious-padding-y);
}

.component-card-spacious-item-gap {
    gap: var(--component-card-spacious-item-gap);
}

.component-card-spacious-group-gap {
    gap: var(--component-card-spacious-group-gap);
}

.component-card-spacious-action-gap {
    gap: var(--component-card-spacious-action-gap);
}

.component-button-spacious-padding-x {
    padding-inline: var(--component-button-spacious-padding-x);
}