/**
 * L'Orto Font Declarations
 *
 * Self-hosted web fonts for the L'Orto design system.
 * Fonts are loaded with font-display: swap for better performance.
 *
 * @package RynueLorto
 * @since 1.0.0
 */

/* ========================================
   PLUS JAKARTA SANS - Primary UI Font
   ======================================== */

@font-face {
	font-family: 'Plus Jakarta Sans';
	src: url('../../../fonts/plus-jakarta-sans-regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Plus Jakarta Sans';
	src: url('../../../fonts/plus-jakarta-sans-medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Plus Jakarta Sans';
	src: url('../../../fonts/plus-jakarta-sans-semibold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Plus Jakarta Sans';
	src: url('../../../fonts/plus-jakarta-sans-bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ========================================
   LORA - Secondary Serif Font
   ======================================== */

@font-face {
	font-family: 'Lora';
	src: url('../../../fonts/lora-regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Lora';
	src: url('../../../fonts/lora-italic.woff2') format('woff2');
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Lora';
	src: url('../../../fonts/lora-semibold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Lora';
	src: url('../../../fonts/lora-bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ========================================
   CAVEAT - Handwritten Font
   ======================================== */

@font-face {
	font-family: 'Caveat';
	src: url('../../../fonts/caveat-regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Caveat';
	src: url('../../../fonts/caveat-medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Caveat';
	src: url('../../../fonts/caveat-semibold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

/* ========================================
   NUNITO - Brand Display Font
   Primary font for headings and hero text
   Download: https://fonts.google.com/specimen/Nunito
   Weights needed: 400, 600, 700, 800
   ======================================== */

@font-face {
	font-family: 'Nunito';
	src: url('../../../fonts/nunito-regular.woff2') format('woff2'),
	     url('../../../fonts/nunito-regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Nunito';
	src: url('../../../fonts/nunito-semibold.woff2') format('woff2'),
	     url('../../../fonts/nunito-semibold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Nunito';
	src: url('../../../fonts/nunito-bold.woff2') format('woff2'),
	     url('../../../fonts/nunito-bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Nunito';
	src: url('../../../fonts/nunito-extrabold.woff2') format('woff2'),
	     url('../../../fonts/nunito-extrabold.woff') format('woff');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

/* ========================================
   OUTFIT - Brand UI Font
   Primary font for body text and UI elements
   Download: https://fonts.google.com/specimen/Outfit
   Weights needed: 300, 400, 500, 600, 700
   ======================================== */

@font-face {
	font-family: 'Outfit';
	src: url('../../../fonts/outfit-light.woff2') format('woff2'),
	     url('../../../fonts/outfit-light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Outfit';
	src: url('../../../fonts/outfit-regular.woff2') format('woff2'),
	     url('../../../fonts/outfit-regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Outfit';
	src: url('../../../fonts/outfit-medium.woff2') format('woff2'),
	     url('../../../fonts/outfit-medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Outfit';
	src: url('../../../fonts/outfit-semibold.woff2') format('woff2'),
	     url('../../../fonts/outfit-semibold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Outfit';
	src: url('../../../fonts/outfit-bold.woff2') format('woff2'),
	     url('../../../fonts/outfit-bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ========================================
   FONT LOADING FALLBACK
   If local fonts not available, import from Google Fonts CDN
   Remove this import once local fonts are in place
   ======================================== */

@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ========================================
   FONT APPLICATION
   Apply brand fonts to elements
   ======================================== */

/* Display Font (Nunito) - Used for headings and hero text */
h1, h2, h3, h4, h5, h6,
.lorto-heading,
.lorto-hero,
.lorto-display,
.page-title-action,
.wp-heading-inline {
	font-family: var(--font-display);
}

/* UI Font (Outfit) - Used for body text and UI elements */
body,
.lorto-admin-page,
.lorto-btn,
.lorto-form-input,
.lorto-form-select,
.lorto-form-textarea,
.lorto-form-label,
.lorto-card,
.lorto-modal,
.lorto-stat-card,
p, span, div,
button, input, select, textarea {
	font-family: var(--font-ui);
}

/* Preserve monospace for code elements */
code, pre, .lorto-code {
	font-family: var(--font-mono);
}

/* Preserve handwritten font for notes */
.lorto-note, .lorto-handwritten {
	font-family: var(--font-handwritten);
}

/* Preserve serif for quotes and literary content */
blockquote, .lorto-quote {
	font-family: var(--font-serif);
}
