/**
 * Rajgir Parent Theme
 *
 * Base CSS — Typography
 *
 * Canonical path:
 * assets/css/base/typography.css
 *
 * Responsibility:
 * - Apply centralized typography tokens to document elements.
 * - Establish readable body typography.
 * - Establish heading hierarchy.
 * - Support Hindi / Devanagari readability.
 * - Preserve multilingual fallback behavior.
 *
 * Token source:
 * assets/css/tokens/typography.css
 *
 * This file does NOT:
 * - define typography token values;
 * - load fonts;
 * - define component typography;
 * - define page typography;
 * - define responsive typography;
 * - contain business logic.
 *
 * @package Rajgir
 */


/* ==========================================================================
   1. DOCUMENT TYPOGRAPHY
   ========================================================================== */

html {
	font-family:
		var(--rajgir-font-family-body);
}

body {
	font-family:
		var(--rajgir-type-body-font-family);

	font-size:
		var(--rajgir-type-body-font-size);

	font-weight:
		var(--rajgir-type-body-font-weight);

	line-height:
		var(--rajgir-type-body-line-height);

	letter-spacing:
		var(--rajgir-letter-spacing-normal);
}


/* ==========================================================================
   2. HEADINGS
   ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family:
		var(--rajgir-type-heading-font-family);

	font-weight:
		var(--rajgir-type-heading-font-weight);

	line-height:
		var(--rajgir-type-heading-line-height);

	letter-spacing:
		var(--rajgir-letter-spacing-tight);
}


/*
 * Exact heading sizes belong to the approved typography scale.
 *
 * Individual components may consume their appropriate approved
 * typography token without redefining the global system here.
 */


/* ==========================================================================
   3. PARAGRAPHS
   ========================================================================== */

p {
	font-family:
		var(--rajgir-type-body-font-family);

	font-size:
		var(--rajgir-type-body-font-size);

	font-weight:
		var(--rajgir-type-body-font-weight);

	line-height:
		var(--rajgir-type-body-line-height);
}


/* ==========================================================================
   4. LIST CONTENT
   ========================================================================== */

ul,
ol {
	font-family:
		var(--rajgir-type-body-font-family);

	font-size:
		var(--rajgir-type-body-font-size);

	line-height:
		var(--rajgir-type-body-line-height);
}


/* ==========================================================================
   5. LINKS
   ========================================================================== */

a {
	font-family:
		var(--rajgir-font-family-ui);
}


/* ==========================================================================
   6. SMALL / SECONDARY CONTENT
   ========================================================================== */

small {
	font-family:
		var(--rajgir-font-family-ui);

	font-size:
		var(--rajgir-font-size-small);

	line-height:
		var(--rajgir-line-height-small);
}


/* ==========================================================================
   7. LABELS
   ========================================================================== */

label {
	font-family:
		var(--rajgir-type-label-font-family);

	font-size:
		var(--rajgir-type-label-font-size);

	font-weight:
		var(--rajgir-type-label-font-weight);

	line-height:
		var(--rajgir-type-label-line-height);
}


/* ==========================================================================
   8. QUOTATIONS
   ========================================================================== */

blockquote {
	font-family:
		var(--rajgir-type-body-font-family);

	font-size:
		var(--rajgir-type-body-font-size);

	line-height:
		var(--rajgir-type-body-line-height);
}


/* ==========================================================================
   9. CODE / PRE
   ========================================================================== */

code,
kbd,
samp,
pre {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Menlo,
		Monaco,
		Consolas,
		"Liberation Mono",
		"Courier New",
		monospace;
}


/* ==========================================================================
   10. FORM TEXT INHERIT
   ========================================================================== */

button,
input,
select,
textarea {
	font-family:
		var(--rajgir-font-family-ui);
}


/* ==========================================================================
   11. HINDI / DEVANAGARI
   ========================================================================== */

:lang(hi) {

	font-family:
		var(--rajgir-font-family-devanagari);

	line-height:
		var(--rajgir-line-height-devanagari);

}


/*
 * Hindi and mixed Hindi-English content must remain readable.
 *
 * The typography system therefore does not force an English-only
 * font strategy onto Devanagari content.
 */


/* ==========================================================================
   12. MIXED LANGUAGE CONTENT
   ========================================================================== */

:lang(hi) :lang(en),
:lang(en) :lang(hi) {

	font-family:
		var(--rajgir-font-family-multilingual);

}


/* ==========================================================================
   13. NUMBERS / PUNCTUATION
   ========================================================================== */

body {
	font-variant-numeric:
		normal;
}


/* ==========================================================================
   14. TEXT WRAPPING
   ========================================================================== */

p,
li,
td,
th,
figcaption {
	overflow-wrap:
		break-word;
}


/* ==========================================================================
   15. HEADING WRAPPING
   ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {
	overflow-wrap:
		break-word;
}


/* ==========================================================================
   16. WORDPRESS CONTENT
   ========================================================================== */

.wp-block-heading {
	font-family:
		var(--rajgir-type-heading-font-family);

	font-weight:
		var(--rajgir-type-heading-font-weight);

	line-height:
		var(--rajgir-type-heading-line-height);
}

.wp-block-paragraph {
	font-family:
		var(--rajgir-type-body-font-family);

	font-size:
		var(--rajgir-type-body-font-size);

	line-height:
		var(--rajgir-type-body-line-height);
}


/* ==========================================================================
   17. CAPTIONS
   ========================================================================== */

figcaption,
.wp-caption-text {
	font-family:
		var(--rajgir-type-caption-font-family);

	font-size:
		var(--rajgir-type-caption-font-size);

	font-weight:
		var(--rajgir-type-caption-font-weight);

	line-height:
		var(--rajgir-type-caption-line-height);
}


/* ==========================================================================
   18. NAVIGATION TEXT FOUNDATION
   ========================================================================== */

nav,
nav a {
	font-family:
		var(--rajgir-type-navigation-font-family);

	font-weight:
		var(--rajgir-type-navigation-font-weight);

	line-height:
		var(--rajgir-type-navigation-line-height);
}


/* ==========================================================================
   19. TYPOGRAPHY BOUNDARY
   ========================================================================== */

/*
 * Component-specific typography belongs in:
 *
 * assets/css/components/
 *
 * Page-specific typography belongs in:
 *
 * assets/css/pages/
 *
 * Responsive typography belongs in:
 *
 * assets/css/responsive/
 *
 * Typography token VALUES belong in:
 *
 * assets/css/tokens/typography.css
 *
 * This file only applies the approved token system to base
 * document elements.
 */