@charset "utf-8";
/**
 * FRONTEND-B01 — Typography foundation (finalized)
 * Additive polish; load AFTER fa.css (and after slider.css on Second.php).
 *
 * HUMAN_FONT_SELECTION = VAZIRMATN (self-hosted OFL v33.003)
 * CONTENT_MAX_WIDTH_42REM = REMOVED (do not reintroduce)
 * Section titles: 1.1em / 1.45 on safe selectors only
 *
 * Does not change: hamburger JS, form redesign (B03), EN skin, admin UI.
 */

/* ------------------------------------------------------------------ */
/* Self-hosted Vazirmatn (Regular + Bold only — matches bold usage)   */
/* Assets: Templates/Main/Fonts/vazirmatn/  (see SOURCE.txt, OFL.txt) */
/* ------------------------------------------------------------------ */

@font-face {
	font-family: "Vazirmatn";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../Fonts/vazirmatn/Vazirmatn-Regular.woff2") format("woff2");
}

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

/*
 * Site chrome + prose — FA polish only (this file is FA-linked).
 * CMS/Word HTML often sets inline font-family:Tahoma on spans; force
 * inheritance so Vazirmatn wins without restyling admin/EN.
 */
body,
.topmenu,
.container .right,
.rightbox,
.footer,
.pathway,
.contentbox > .content,
#contactus-form,
.nivo-caption,
.SubmitBtn,
.ResetBtn {
	font-family: "Vazirmatn", Tahoma, Geneva, sans-serif;
}

.topmenu *,
.container .right *,
.rightbox *,
.footer *,
.pathway *,
.contentbox > .content *,
#contactus-form *,
.nivo-caption * {
	font-family: inherit !important;
}

/* Keep monospace; do not force icon/image chrome (arrows/home are CSS backgrounds) */
.contentbox > .content pre,
.contentbox > .content code,
.contentbox > .content pre *,
.contentbox > .content code * {
	font-family: monospace !important;
}

/* ------------------------------------------------------------------ */
/* Long-form content typography                                       */
/* ------------------------------------------------------------------ */

/*
 * LEGACY_TD_LEFT_INHERITANCE_HAZARD safety net (2026-08-31 forensic):
 * fa.css sets `caption, th, td { text-align: left }`. CMS prose lives inside a TD.
 * Pages without inline text-align:right on every LI inherit left → RTL “left-shifted” look.
 * Scope to .contentdata only. Do NOT set text-align on td/th here — cell rules win on the
 * cell itself (Unofficial/Official pricing tables keep center/left as authored).
 */
.contentdata {
	text-align: start;
}

/*
 * Official / prose lists: list-style-position:inside leaves a large bullet gutter and
 * interacts poorly with nested CMS spans. outside + modest RTL padding restores proximity.
 * Tables are unaffected (not ul/li).
 */
.contentdata ul {
	list-style-position: outside;
	padding-right: 1.25em;
	padding-left: 0;
	margin-right: 0.15em;
}

.contentdata ul > li {
	list-style-position: outside;
}

.contentbox > .content {
	font-size: 13.5px;
	line-height: 1.75;
	color: #222;
}

.contentbox > .content p,
.contentbox > .content li {
	font-size: inherit;
	line-height: inherit;
}

.contentbox > .content p {
	margin-bottom: 0.9em;
}

.contentbox > .content ul,
.contentbox > .content ol {
	margin-bottom: 0.9em;
}

.contentbox > .content li {
	margin-bottom: 0.35em;
}

.contentbox > .content .DivDescription,
.contentbox > .content .DivText {
	font-size: inherit;
	line-height: 1.75;
	margin-bottom: 0.9em;
}

/* ------------------------------------------------------------------ */
/* Desktop padding restore — NO artificial readable-measure max-width */
/* ------------------------------------------------------------------ */

@media only screen and (min-width: 1030px) {
	/*
	 * Legacy fa.css: `#roundedBL > div.content { padding: 0 !important }` @min-width:1030.
	 * Documented !important (required override).
	 */
	#roundedBL > div.content {
		padding: 12px 18px 14px !important;
		box-sizing: border-box;
	}

	.contentbox > .content table {
		max-width: 100%;
	}
}

@media only screen and (max-width: 1030px) and (min-width: 768px) {
	.contentbox > .content {
		padding: 12px 16px;
		box-sizing: border-box;
	}
}

/* ------------------------------------------------------------------ */
/* Heading hierarchy + accepted CMS section-title selectors           */
/* Do NOT globally enlarge every strong/b.                            */
/* ------------------------------------------------------------------ */

.contentbox > .content h1 {
	font-size: 1.4em;
	line-height: 1.35;
	margin: 0.6em 0 0.45em;
	color: #036;
}

.contentbox > .content h2 {
	font-size: 1.25em;
	line-height: 1.4;
	margin: 0.7em 0 0.4em;
	color: #036;
}

.contentbox > .content h3 {
	font-size: 1.1em;
	line-height: 1.45;
	margin: 0.65em 0 0.35em;
	color: #036;
}

.contentbox > .content h4,
.contentbox > .content h5,
.contentbox > .content h6 {
	font-size: 1.05em;
	line-height: 1.45;
	margin: 0.55em 0 0.3em;
}

/*
 * CMS / Word rich-text section titles (accepted 1.1em / 1.45):
 * - AboutUs: orange color-span wrapping <b>/<strong>
 * - Homepage thumb: <li><span><strong>…
 * Inline short <b> without orange span excluded.
 */
.contentbox > .content .Description span[style*="153, 51, 0"] b,
.contentbox > .content .Description span[style*="153, 51, 0"] strong,
.contentbox > .content .Description span[style*="#930"] b,
.contentbox > .content .Description span[style*="#930"] strong,
.contentbox > .content .Description span[style*="#993300"] b,
.contentbox > .content .Description span[style*="#993300"] strong {
	font-size: 1.1em;
	line-height: 1.45;
}

.contentbox > .content li > span > strong {
	font-size: 1.1em;
	line-height: 1.45;
}

.contentbox > .content strong,
.contentbox > .content b {
	line-height: 1.55;
}

/* ------------------------------------------------------------------ */
/* Content links only                                                 */
/* ------------------------------------------------------------------ */

.contentbox > .content a {
	color: #1a5f96;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: rgba(26, 95, 150, 0.4);
	text-underline-offset: 2px;
}

.contentbox > .content a:hover {
	color: #930;
	text-decoration-color: #930;
}

/* ------------------------------------------------------------------ */
/* Baseline focus visibility                                          */
/* ------------------------------------------------------------------ */

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.SubmitBtn:focus-visible,
.ResetBtn:focus-visible {
	outline: 2px solid #036;
	outline-offset: 2px;
}

a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
	outline: 2px solid #036;
	outline-offset: 2px;
}

@supports selector(:focus-visible) {
	a:focus:not(:focus-visible),
	button:focus:not(:focus-visible),
	input:focus:not(:focus-visible),
	textarea:focus:not(:focus-visible),
	select:focus:not(:focus-visible) {
		outline: none;
	}
}

/* ------------------------------------------------------------------ */
/* Small / supporting text                                            */
/* ------------------------------------------------------------------ */

.footer .copyright {
	font-size: 12px;
	line-height: 1.55;
}

.contentbox > .content .SpanDate,
.contentbox > .content .SpanDescription,
.contentbox > .content .pathway {
	font-size: 12px;
	line-height: 1.5;
}

/* Menu / sidebar: Vazirmatn at legacy ~12px body; slightly roomier leading */
.topmenu {
	line-height: 1.4;
}

.container .right,
.rightbox {
	line-height: 1.45;
}

/* ------------------------------------------------------------------ */
/* Mobile                                                             */
/* ------------------------------------------------------------------ */

@media only screen and (max-width: 767px) {
	.contentbox > .content {
		font-size: 14px;
		line-height: 1.75;
		padding: 12px 14px !important;
		box-sizing: border-box !important;
		max-width: none;
	}

	/*
	 * fa.css @≤767: `.contentbox *:not(img){ width:100%!important }` forces each nested
	 * CMS <span>/<a> full-width → sentence-ending "." can sit alone on the next line.
	 * Restore inline shrink-wrap for list inline descendants only (not table cells).
	 */
	.contentdata ul li span,
	.contentdata ul li a {
		width: auto !important;
		max-width: 100%;
		display: inline !important;
	}

	.contentbox > .content p,
	.contentbox > .content ul,
	.contentbox > .content ol {
		margin-bottom: 0.95em;
	}

	.contentbox > .content h1 {
		font-size: 1.28em;
	}

	.contentbox > .content h2 {
		font-size: 1.16em;
	}

	.contentbox > .content h3 {
		font-size: 1.08em;
	}
}
