/*
 * Iranian Armenia — main stylesheet.
 * Colors come from settings as --ia-primary/--ia-accent/--ia-dark/--ia-brown/--ia-light (inline :root).
 * Layout uses logical properties (inline-start = right in RTL).
 */

/* ---------- Font ---------- */
@font-face {
	font-family: "Vazirmatn";
	src: url("../fonts/vazirmatn-wght.woff2") format("woff2-variations"), url("../fonts/vazirmatn-wght.woff2") format("woff2");
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}

/* ---------- Tokens ---------- */
:root {
	--ia-primary: #6f1d1b;
	--ia-accent: #bb9457;
	--ia-dark: #432818;
	--ia-brown: #99582a;
	--ia-light: #ffe6a7;

	--ia-bg: #fff;
	--ia-text: var(--ia-dark);
	--ia-muted: color-mix(in srgb, var(--ia-dark) 74%, #fff);
	--ia-sand: color-mix(in srgb, var(--ia-light) 34%, #fff);   /* warm intro surfaces */
	--ia-sand-2: color-mix(in srgb, var(--ia-light) 62%, #fff);
	--ia-line: color-mix(in srgb, var(--ia-accent) 30%, #fff);
	--ia-line-soft: color-mix(in srgb, var(--ia-accent) 16%, #fff);
	--ia-on-dark: color-mix(in srgb, var(--ia-light) 18%, #fff);

	--ia-font: "Vazirmatn", "Tahoma", system-ui, sans-serif;
	--ia-fs-sm: 0.875rem;
	--ia-fs-base: 1rem;
	--ia-fs-md: 1.125rem;
	--ia-fs-lg: clamp(1.25rem, 1.1rem + 0.5vw, 1.375rem);
	--ia-fs-xl: clamp(1.5rem, 1.2rem + 1vw, 2rem);
	--ia-fs-2xl: clamp(1.75rem, 1.25rem + 1.8vw, 2.75rem);

	--ia-r-sm: 10px;
	--ia-r-md: 14px;
	--ia-r-lg: 22px;
	--ia-arch: 999px 999px 10px 10px; /* arch frame: Persian/Armenian arches */

	--ia-shadow-sm: 0 1px 2px rgb(67 40 24 / 6%), 0 2px 6px rgb(67 40 24 / 5%);
	--ia-shadow-md: 0 2px 4px rgb(67 40 24 / 5%), 0 12px 28px -8px rgb(67 40 24 / 18%);

	--ia-container: 1240px;
	--ia-gutter: 20px;
	--ia-header-h: 76px;

	/* Gereh band: 8-point star chain, painted with the accent color through a mask. */
	--ia-band: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='12' viewBox='0 0 28 12'%3E%3Cpath d='M0 6H8.6M19.4 6H28' stroke='%23000' stroke-width='1.1'/%3E%3Cpath d='M14 .8L15.19 3.14 17.68 2.32 16.86 4.81 19.2 6 16.86 7.19 17.68 9.68 15.19 8.86 14 11.2 12.81 8.86 10.32 9.68 11.14 7.19 8.8 6 11.14 4.81 10.32 2.32 12.81 3.14Z' fill='none' stroke='%23000' stroke-width='1.1' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	scroll-padding-top: calc(var(--ia-header-h) + 16px);
}

body {
	margin: 0;
	background: var(--ia-bg);
	color: var(--ia-text);
	font-family: var(--ia-font);
	font-size: var(--ia-fs-base);
	line-height: 1.9;
	font-feature-settings: "ss01" 0;
	-webkit-font-smoothing: antialiased;
	overflow-x: clip;
}

img, svg, video { max-width: 100%; height: auto; }
img { display: block; }

h1, h2, h3, h4, h5, h6 {
	color: var(--ia-dark);
	font-weight: 800;
	line-height: 1.45;
	margin: 0 0 0.6em;
	text-wrap: balance;
}
h1 { font-size: var(--ia-fs-2xl); }
h2 { font-size: var(--ia-fs-xl); }
h3 { font-size: var(--ia-fs-lg); }
h4 { font-size: var(--ia-fs-md); }

p { margin: 0 0 1.1em; }

a {
	color: var(--ia-primary);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.3em;
}
a:hover { color: var(--ia-brown); }

:focus-visible {
	outline: 3px solid var(--ia-accent);
	outline-offset: 2px;
	border-radius: 6px;
}

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

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.ia-skip {
	position: absolute;
	inset-inline-start: 16px;
	top: -100px;
	z-index: 1000;
	background: var(--ia-dark);
	color: #fff;
	padding: 10px 16px;
	border-radius: var(--ia-r-sm);
	font-weight: 700;
}
.ia-skip:focus { top: 12px; color: #fff; }

.ia-container {
	width: 100%;
	max-width: calc(var(--ia-container) + var(--ia-gutter) * 2);
	margin-inline: auto;
	padding-inline: var(--ia-gutter);
}

.ia-ltr { direction: ltr; unicode-bidi: isolate; display: inline-block; }

.ia-icon { flex: none; vertical-align: middle; }

/* ---------- Buttons ---------- */
.ia-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 18px;
	border: 1.5px solid transparent;
	border-radius: var(--ia-r-sm);
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	white-space: nowrap;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.ia-btn--primary { background: var(--ia-primary); color: #fff; }
.ia-btn--primary:hover { background: var(--ia-brown); color: #fff; }
.ia-btn--ghost { background: transparent; color: var(--ia-dark); border-color: var(--ia-line); }
.ia-btn--ghost:hover { background: var(--ia-sand); color: var(--ia-primary); border-color: var(--ia-accent); }
.ia-btn--text { background: transparent; color: var(--ia-dark); padding-inline: 10px; }
.ia-btn--text:hover { color: var(--ia-primary); }

.ia-iconbtn {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1.5px solid var(--ia-line);
	border-radius: 50%;
	background: #fff;
	color: var(--ia-dark);
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.ia-iconbtn:hover, .ia-iconbtn[aria-expanded="true"] {
	background: var(--ia-sand);
	border-color: var(--ia-accent);
	color: var(--ia-primary);
}

/* ---------- Brand mark ---------- */
.ia-brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--ia-dark);
	text-decoration: none;
	min-width: 0;
}
.ia-brand:hover { color: var(--ia-dark); }
.ia-brand__mark { flex: none; width: 38px; height: 44px; }
.ia-brand__logo { height: var(--ia-logo-h); width: auto; max-width: 220px; object-fit: contain; }
.ia-brand__text { display: flex; flex-direction: column; min-width: 0; }
.ia-brand__name {
	font-size: 1.1875rem;
	font-weight: 800;
	line-height: 1.35;
	white-space: nowrap;
}
.ia-brand__tagline {
	font-size: 0.75rem;
	font-weight: 500;
	color: var(--ia-muted);
	line-height: 1.5;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ---------- Header ---------- */
.ia-header {
	position: relative;
	z-index: 100;
	background: #fff;
}
.ia-sticky-header .ia-header { position: sticky; top: 0; }
.admin-bar.ia-sticky-header .ia-header { top: 32px; }
@media (max-width: 782px) { .admin-bar.ia-sticky-header .ia-header { top: 0; position: relative; } }

.ia-header.is-scrolled { box-shadow: 0 6px 18px -10px rgb(67 40 24 / 35%); }

.ia-header__bar {
	display: flex;
	align-items: center;
	gap: 24px;
	min-height: var(--ia-header-h);
}
.ia-header__brand { flex: none; }
.ia-header__nav { flex: 1 1 auto; display: flex; justify-content: center; min-width: 0; }
.ia-header__actions { flex: none; display: flex; align-items: center; gap: 8px; }

/* The signature band under the header and over the footer. */
.ia-band {
	height: 12px;
	background-color: var(--ia-accent);
	-webkit-mask: var(--ia-band) repeat-x center / 28px 12px;
	mask: var(--ia-band) repeat-x center / 28px 12px;
	opacity: 0.75;
}
.ia-header .ia-band { position: absolute; inset-inline: 0; bottom: -6px; pointer-events: none; }

/* ---------- Desktop navigation ---------- */
.ia-nav__list { list-style: none; margin: 0; padding: 0; }

.ia-nav--desktop > .ia-nav__list { display: flex; align-items: center; gap: 2px; }
.ia-nav--desktop .ia-nav__item { position: relative; }
.ia-nav--desktop .ia-nav__row { display: flex; align-items: center; }
.ia-nav--desktop .ia-nav__link {
	display: block;
	padding: 10px 12px;
	color: var(--ia-dark);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
	white-space: nowrap;
	border-radius: var(--ia-r-sm);
	position: relative;
}
.ia-nav--desktop .has-sub > .ia-nav__row > .ia-nav__link { padding-inline-end: 2px; }
.ia-nav--desktop .ia-nav__link:hover { color: var(--ia-brown); }
.ia-nav--desktop .is-current > .ia-nav__row > .ia-nav__link { color: var(--ia-primary); }
.ia-nav--desktop .is-current > .ia-nav__row > .ia-nav__link::after {
	content: "";
	position: absolute;
	inset-inline: 12px;
	bottom: 2px;
	height: 2px;
	border-radius: 2px;
	background: var(--ia-accent);
}
.ia-nav--desktop .ia-nav__toggle {
	display: grid;
	place-items: center;
	width: 28px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: var(--ia-muted);
	cursor: pointer;
}
.ia-nav--desktop .ia-nav__toggle .ia-icon { transition: transform 0.2s ease; }
.ia-nav--desktop .ia-nav__toggle:hover { color: var(--ia-primary); }
.ia-nav--desktop .is-open > .ia-nav__row > .ia-nav__toggle { color: var(--ia-primary); }
.ia-nav--desktop .is-open > .ia-nav__row > .ia-nav__toggle .ia-icon { transform: rotate(180deg); }

/* Panel: padding-top bridges the gap so the pointer can travel into it. */
.ia-nav--desktop .ia-nav__panel {
	position: absolute;
	top: 100%;
	inset-inline-start: -8px;
	padding-top: 14px;
	visibility: hidden;
	opacity: 0;
	transform: translateY(4px);
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0s linear 0.16s;
	z-index: 20;
}
.ia-nav--desktop .is-open > .ia-nav__panel {
	visibility: visible;
	opacity: 1;
	transform: none;
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0s;
}
.ia-nav--desktop .ia-nav__sub {
	list-style: none;
	margin: 0;
	padding: 8px;
	width: 330px;
	background: #fff;
	border: 1px solid var(--ia-line-soft);
	border-radius: var(--ia-r-lg);
	box-shadow: var(--ia-shadow-md);
	display: grid;
	gap: 2px;
}
.ia-nav--desktop .ia-nav__sub.is-wide { width: 580px; grid-template-columns: 1fr 1fr; }

.ia-subitem {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 10px 10px;
	border-radius: var(--ia-r-md);
	color: var(--ia-dark);
	text-decoration: none;
}
.ia-subitem:hover, .ia-subitem:focus-visible { background: var(--ia-sand); color: var(--ia-dark); }
.ia-subitem__icon {
	flex: none;
	display: grid;
	place-items: center;
	width: 38px;
	height: 42px;
	border-radius: var(--ia-arch);
	background: var(--ia-sand-2);
	color: var(--ia-primary);
}
.ia-subitem__text { display: flex; flex-direction: column; min-width: 0; padding-top: 2px; }
.ia-subitem__title { font-size: 0.9375rem; font-weight: 700; line-height: 1.6; }
.ia-subitem__desc { font-size: 0.8125rem; color: var(--ia-muted); line-height: 1.7; }
.ia-nav__subitem.is-current .ia-subitem__title { color: var(--ia-primary); }

/* ---------- Header search panel ---------- */
.ia-search-panel {
	position: absolute;
	inset-inline: 0;
	top: 100%;
	background: var(--ia-sand);
	border-bottom: 1px solid var(--ia-line);
	padding: 22px 0 24px;
	box-shadow: 0 16px 24px -18px rgb(67 40 24 / 40%);
}
.ia-search-panel[hidden] { display: none; }

.ia-searchform { display: flex; gap: 10px; align-items: stretch; }
.ia-searchform__field { position: relative; flex: 1 1 auto; min-width: 0; }
.ia-searchform__field .ia-icon {
	position: absolute;
	inset-inline-start: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--ia-brown);
	pointer-events: none;
}
.ia-input {
	width: 100%;
	min-height: 48px;
	padding: 10px 14px;
	border: 1.5px solid var(--ia-line);
	border-radius: var(--ia-r-sm);
	background: #fff;
	color: var(--ia-dark);
	font-size: 1rem;
	line-height: 1.6;
}
.ia-input::placeholder { color: color-mix(in srgb, var(--ia-dark) 55%, #fff); }
.ia-input:focus { border-color: var(--ia-accent); outline: 3px solid color-mix(in srgb, var(--ia-accent) 35%, transparent); outline-offset: 0; }
.ia-searchform__field .ia-input { padding-inline-start: 44px; }
.ia-searchform .ia-btn { min-height: 48px; }

/* ---------- Mobile drawer ---------- */
.ia-menu-btn { display: none; }
.ia-drawer { position: fixed; inset: 0; z-index: 300; }
.ia-drawer[hidden] { display: none; }
.ia-drawer__overlay {
	position: absolute;
	inset: 0;
	background: rgb(67 40 24 / 45%);
	opacity: 0;
	transition: opacity 0.2s ease;
}
.ia-drawer__panel {
	position: absolute;
	inset-block: 0;
	inset-inline-start: 0;
	width: min(88vw, 380px);
	background: #fff;
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform 0.24s ease;
	overflow: hidden;
}
.ia-drawer.is-open .ia-drawer__overlay { opacity: 1; }
.ia-drawer.is-open .ia-drawer__panel { transform: none; }
.ia-drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid var(--ia-line-soft);
}
.ia-drawer__body { flex: 1 1 auto; overflow-y: auto; padding: 16px; overscroll-behavior: contain; }
.ia-drawer__foot { padding: 14px 16px 18px; border-top: 1px solid var(--ia-line-soft); display: grid; gap: 10px; }
.ia-drawer__foot .ia-btn { width: 100%; }
.ia-drawer .ia-searchform { margin-bottom: 14px; }
.ia-drawer .ia-searchform .ia-btn { padding-inline: 14px; }

.ia-nav--mobile .ia-nav__item { border-bottom: 1px solid var(--ia-line-soft); }
.ia-nav--mobile .ia-nav__row { display: flex; align-items: center; }
.ia-nav--mobile .ia-nav__link {
	flex: 1 1 auto;
	display: block;
	padding: 13px 4px;
	color: var(--ia-dark);
	font-weight: 700;
	text-decoration: none;
	line-height: 1.5;
}
.ia-nav--mobile .is-current > .ia-nav__row > .ia-nav__link { color: var(--ia-primary); }
.ia-nav--mobile .ia-nav__toggle {
	flex: none;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: var(--ia-r-sm);
	background: var(--ia-sand);
	color: var(--ia-dark);
	cursor: pointer;
}
.ia-nav--mobile .ia-nav__toggle .ia-icon { transition: transform 0.2s ease; }
.ia-nav--mobile .is-open > .ia-nav__row > .ia-nav__toggle .ia-icon { transform: rotate(180deg); }
.ia-nav--mobile .ia-nav__panel { display: none; padding: 0 0 10px; }
.ia-nav--mobile .is-open > .ia-nav__panel { display: block; }
.ia-nav--mobile .ia-nav__sub { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.ia-nav--mobile .ia-subitem { padding: 8px 6px; }
.ia-nav--mobile .ia-subitem__icon { width: 34px; height: 38px; }

body.ia-no-scroll { overflow: hidden; }

/* ---------- Breakpoints for header ---------- */
@media (max-width: 1099px) {
	.ia-header__nav, .ia-header__auth { display: none; }
	.ia-menu-btn { display: inline-flex; }
	.ia-header__bar { justify-content: space-between; }
}
@media (max-width: 600px) {
	:root { --ia-gutter: 16px; --ia-header-h: 64px; }
	.ia-brand__mark { width: 32px; height: 38px; }
	.ia-brand__name { font-size: 1.0625rem; }
	.ia-brand__tagline { display: none; }
	.ia-header__bar { gap: 10px; }
	.ia-menu-btn .ia-menu-btn__label { display: none; }
	.ia-menu-btn { width: 44px; padding: 0; }
	.ia-search-panel .ia-searchform { flex-wrap: wrap; }
	.ia-search-panel .ia-searchform .ia-btn { flex: 1 1 100%; }
	.ia-drawer .ia-searchform .ia-btn { padding-inline: 12px; }
}
@media (max-width: 359px) {
	.ia-brand { gap: 8px; }
	.ia-brand__name { font-size: 1rem; }
	.ia-header__actions { gap: 6px; }
}

/* ---------- Main / generic pages ---------- */
.ia-main { min-height: 50vh; }

.ia-pagehead {
	background: var(--ia-sand);
	border-bottom: 1px solid var(--ia-line-soft);
	padding: 48px 0 40px;
}
.ia-pagehead__title { margin: 0; }
.ia-pagehead__lead { margin: 10px 0 0; color: var(--ia-muted); max-width: 68ch; }

.ia-section { padding: 56px 0; }

.ia-prose { max-width: 760px; }
.ia-prose > *:first-child { margin-top: 0; }
.ia-prose h2 { margin-top: 1.6em; }
.ia-prose h3 { margin-top: 1.4em; }
.ia-prose ul, .ia-prose ol { padding-inline-start: 1.4em; margin: 0 0 1.1em; }
.ia-prose li { margin-bottom: 0.35em; }
.ia-prose blockquote {
	margin: 1.4em 0;
	padding: 14px 18px;
	border-inline-start: 4px solid var(--ia-accent);
	background: var(--ia-sand);
	border-radius: 0 var(--ia-r-sm) var(--ia-r-sm) 0;
}
.ia-prose img { border-radius: var(--ia-r-md); }
.ia-prose table { width: 100%; border-collapse: collapse; display: block; overflow-x: auto; }
.ia-prose th, .ia-prose td { border: 1px solid var(--ia-line); padding: 8px 12px; text-align: start; }
.ia-prose th { background: var(--ia-sand); }

.ia-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 24px; }
.ia-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--ia-line-soft);
	border-radius: var(--ia-r-md);
	overflow: hidden;
	box-shadow: var(--ia-shadow-sm);
}
.ia-card__media { aspect-ratio: 16 / 10; background: var(--ia-sand); overflow: hidden; }
.ia-card__media img { width: 100%; height: 100%; object-fit: cover; }
.ia-card__body { padding: 16px 18px 20px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.ia-card__title { font-size: 1.0625rem; margin: 0; line-height: 1.6; }
.ia-card__title a { color: var(--ia-dark); text-decoration: none; }
.ia-card__title a:hover { color: var(--ia-primary); }
.ia-card__meta { font-size: 0.8125rem; color: var(--ia-muted); display: flex; align-items: center; gap: 6px; }
.ia-card__excerpt { font-size: 0.9375rem; color: var(--ia-muted); margin: 0; }

.ia-empty {
	display: grid;
	justify-items: center;
	text-align: center;
	gap: 10px;
	padding: 40px 20px;
	border: 1.5px dashed var(--ia-line);
	border-radius: var(--ia-r-lg);
	background: color-mix(in srgb, var(--ia-light) 14%, #fff);
}
.ia-empty__icon {
	display: grid;
	place-items: center;
	width: 56px;
	height: 62px;
	border-radius: var(--ia-arch);
	background: var(--ia-sand-2);
	color: var(--ia-primary);
}
.ia-empty__title { margin: 0; font-size: var(--ia-fs-md); }
.ia-empty__text { margin: 0; color: var(--ia-muted); max-width: 52ch; }

.ia-pagination { margin-top: 40px; }
.ia-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.ia-pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	border: 1.5px solid var(--ia-line);
	border-radius: var(--ia-r-sm);
	color: var(--ia-dark);
	text-decoration: none;
	font-weight: 700;
}
.ia-pagination .page-numbers.current { background: var(--ia-primary); border-color: var(--ia-primary); color: #fff; }
.ia-pagination a.page-numbers:hover { border-color: var(--ia-accent); background: var(--ia-sand); }

/* 404 */
.ia-404 { display: grid; gap: 32px; align-items: center; grid-template-columns: minmax(0, 1fr); padding: 64px 0; }
.ia-404__art img { width: min(100%, 320px); margin-inline: auto; }
@media (min-width: 900px) { .ia-404 { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); } }

/* ---------- Footer ---------- */
.ia-footer {
	margin-top: 72px;
	background: var(--ia-dark);
	color: var(--ia-on-dark);
	font-size: 0.9375rem;
	position: relative;
}
.ia-footer .ia-band { position: absolute; inset-inline: 0; top: -6px; opacity: 0.9; }
.ia-footer a { color: var(--ia-on-dark); text-decoration: none; }
.ia-footer a:hover { color: var(--ia-light); text-decoration: underline; }
.ia-footer__grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1.3fr;
	gap: 40px;
	padding: 64px 0 24px;
}
.ia-footer__title {
	color: var(--ia-light);
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 14px;
}
.ia-footer .ia-brand { color: #fff; margin-bottom: 14px; }
.ia-footer .ia-brand__name { color: #fff; }
.ia-footer__about { margin: 0; line-height: 2; color: var(--ia-on-dark); max-width: 42ch; }
.ia-footer__links { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.ia-footer__link { display: inline-block; padding: 3px 0; }

.ia-contact-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.ia-contact-list li { display: flex; gap: 10px; align-items: flex-start; }
.ia-contact-list .ia-icon { color: var(--ia-accent); margin-top: 4px; }

.ia-socials { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; list-style: none; padding: 0; }
.ia-socials a {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 1px solid color-mix(in srgb, var(--ia-light) 28%, transparent);
	color: var(--ia-light);
}
.ia-socials a:hover { background: color-mix(in srgb, var(--ia-light) 12%, transparent); text-decoration: none; }

.ia-footer__muted { color: color-mix(in srgb, var(--ia-on-dark) 70%, var(--ia-dark)); font-size: 0.875rem; }

.ia-footer__vector { color: var(--ia-accent); opacity: 0.55; padding-top: 8px; }
.ia-footer__vector svg, .ia-footer__vector img { width: 100%; height: auto; max-height: 150px; margin-inline: auto; object-fit: contain; }

.ia-footer__bottom {
	border-top: 1px solid color-mix(in srgb, var(--ia-light) 16%, transparent);
	padding: 18px 0 22px;
	font-size: 0.8125rem;
	color: color-mix(in srgb, var(--ia-on-dark) 78%, var(--ia-dark));
	text-align: center;
}

.ia-footer__grid--3 { grid-template-columns: 1.6fr 1fr 1fr; }
.ia-footer__grid--2 { grid-template-columns: 1.6fr 1fr; }

@media (max-width: 1023px) {
	.ia-footer__grid, .ia-footer__grid--3 { grid-template-columns: 1fr 1fr; gap: 36px 28px; }
	.ia-footer__grid--3 > :first-child { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
	.ia-footer { margin-top: 56px; }
	.ia-footer__grid, .ia-footer__grid--3, .ia-footer__grid--2 { grid-template-columns: 1fr 1fr; gap: 30px 20px; padding-top: 48px; }
	.ia-footer__col--about, .ia-footer__col--contact { grid-column: 1 / -1; }
	.ia-footer__vector svg { height: 96px; }
	/* Compact skyline on phones: both cities stay visible (street and fountain step aside). */
	.ia-footer__vector .ia-v-street, .ia-footer__vector .ia-v-fountain { display: none; }
	.ia-footer__vector .ia-v-azadi { transform: translateX(-150px); }
	.ia-footer__vector .ia-v-scene { transform: translateX(-93px); }
	.ia-pagehead { padding: 36px 0 28px; }
	.ia-section { padding: 40px 0; }
}

/* ---------- Motion preferences ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

.ia-pagehead__search { margin-top: 18px; max-width: 680px; }
.ia-404__home { margin-top: 20px; }
.ia-footer .ia-brand__mark path:first-child { stroke: color-mix(in srgb, var(--ia-accent) 60%, transparent); stroke-width: 1.2; }

/* =========================================================
   Phase 2 — front page & directory
   ========================================================= */

.ia-btn--lg { min-height: 50px; padding: 0 22px; font-size: 1rem; }
.ia-btn--light { background: var(--ia-light); color: var(--ia-dark); }
.ia-btn--light:hover { background: #fff; color: var(--ia-primary); }

/* Stretched link: whole card clickable, one link in the a11y tree. */
.ia-stretched::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ia-stretched:focus-visible { outline: none; }
.ia-stretched:focus-visible::after { outline: 3px solid var(--ia-accent); outline-offset: 2px; }

.ia-home-sec { padding: 72px 0 0; }
.ia-home-sec:first-child { padding-top: 0; }

/* Section header */
.ia-shead {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px 32px;
	flex-wrap: wrap;
	margin-bottom: 28px;
}
.ia-shead__text { max-width: 640px; }
.ia-shead__title { margin: 0; font-size: var(--ia-fs-xl); }
.ia-shead__intro { margin: 6px 0 0; color: var(--ia-muted); }
.ia-shead__more { flex: none; }

/* ---------- Hero ---------- */
.ia-hero { padding: 56px 0 24px; overflow: hidden; }
.ia-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
	gap: 48px;
	align-items: center;
}
.ia-hero__title {
	font-size: clamp(1.75rem, 1.1rem + 2.3vw, 2.875rem);
	line-height: 1.5;
	margin: 0 0 14px;
	letter-spacing: 0;
}
.ia-hero__text { font-size: var(--ia-fs-md); color: var(--ia-muted); margin: 0 0 26px; max-width: 54ch; }
.ia-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }

.ia-hero__art { position: relative; display: grid; place-items: end center; min-height: 420px; }
.ia-hero__arch {
	position: absolute;
	inset: 0 6% 0 6%;
	border-radius: 999px 999px 28px 28px;
	background: var(--ia-sand-2);
}
.ia-hero__arch::before {
	content: "";
	position: absolute;
	inset: 14px;
	border-radius: 999px 999px 18px 18px;
	border: 1.5px solid color-mix(in srgb, var(--ia-accent) 55%, transparent);
}
.ia-hero__arch::after {
	content: "";
	position: absolute;
	inset-inline: 14px;
	bottom: 30px;
	height: 12px;
	background-color: var(--ia-accent);
	-webkit-mask: var(--ia-band) repeat-x center / 28px 12px;
	mask: var(--ia-band) repeat-x center / 28px 12px;
	opacity: 0.6;
}
.ia-hero__img { position: relative; width: 84%; height: auto; margin-bottom: 52px; }

/* ---------- Directory search ---------- */
.ia-dsearch {
	background: #fff;
	border: 1px solid var(--ia-line);
	border-radius: var(--ia-r-lg);
	box-shadow: var(--ia-shadow-md);
	padding: 18px;
}
.ia-dsearch__title { font-size: 1rem; margin: 0 0 12px; display: flex; align-items: center; gap: 8px; }
.ia-dsearch__fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
	gap: 12px;
	align-items: end;
}
.ia-dsearch__field--q { grid-column: 1 / -1; }
.ia-dsearch__field label { display: block; font-size: 0.8125rem; font-weight: 700; color: var(--ia-dark); margin-bottom: 4px; }
.ia-dsearch__input { position: relative; display: block; }
.ia-dsearch__input .ia-icon { position: absolute; inset-inline-start: 14px; top: 50%; transform: translateY(-50%); color: var(--ia-brown); pointer-events: none; }
.ia-dsearch__input .ia-input { padding-inline-start: 42px; }
.ia-dsearch__submit .ia-btn { min-height: 48px; width: 100%; }

.ia-select { position: relative; display: block; }
.ia-select select.ia-input { appearance: none; -webkit-appearance: none; padding-inline-end: 38px; cursor: pointer; }
.ia-select__chev { position: absolute; inset-inline-end: 14px; top: 50%; transform: translateY(-50%); color: var(--ia-brown); pointer-events: none; }

/* Archive variant: one row on wide screens, quieter frame. */
.ia-dsearch--archive { box-shadow: var(--ia-shadow-sm); }
@media (min-width: 1024px) {
	.ia-dsearch--archive .ia-dsearch__fields { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr) auto; }
	.ia-dsearch--archive .ia-dsearch__field--q { grid-column: auto; }
}
.ia-pagehead--dir .ia-pagehead__search { max-width: none; margin-top: 22px; }

/* ---------- Arch cards (main categories) ---------- */
.ia-cats__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 20px;
}
.ia-archcard {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 6px;
	padding: 44px 18px 26px;
	border: 1.5px solid var(--ia-line);
	border-radius: 999px 999px var(--ia-r-md) var(--ia-r-md);
	background: #fff;
	color: var(--ia-dark);
	text-decoration: none;
	transition: background-color 0.18s ease, border-color 0.18s ease;
}
.ia-archcard:hover { background: var(--ia-sand); border-color: var(--ia-accent); color: var(--ia-dark); }
.ia-archcard__icon {
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	margin-bottom: 8px;
	border-radius: 50%;
	background: var(--ia-sand-2);
	color: var(--ia-primary);
	transition: background-color 0.18s ease, color 0.18s ease;
}
.ia-archcard:hover .ia-archcard__icon { background: var(--ia-primary); color: var(--ia-light); }
.ia-archcard__title { font-size: 1.0625rem; font-weight: 800; line-height: 1.6; }
.ia-archcard__text { font-size: 0.875rem; color: var(--ia-muted); line-height: 1.8; }

/* ---------- Listing cards ---------- */
.ia-lgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ia-lcard {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 20px;
	background: #fff;
	border: 1px solid var(--ia-line-soft);
	border-radius: var(--ia-r-md);
	box-shadow: var(--ia-shadow-sm);
	transition: border-color 0.15s ease;
}
.ia-lcard:hover { border-color: var(--ia-accent); }
.ia-lcard__top { display: flex; gap: 14px; align-items: center; }
.ia-lcard__logo {
	flex: none;
	display: grid;
	place-items: center;
	width: 56px;
	height: 60px;
	border-radius: var(--ia-arch);
	background: var(--ia-sand-2);
	color: var(--ia-primary);
	overflow: hidden;
}
.ia-lcard__logo img { width: 100%; height: 100%; object-fit: cover; }
.ia-lcard__head { min-width: 0; }
.ia-lcard__title { font-size: 1.0625rem; margin: 0; line-height: 1.6; }
.ia-lcard__title a { color: var(--ia-dark); text-decoration: none; }
.ia-lcard:hover .ia-lcard__title a { color: var(--ia-primary); }
.ia-lcard__cat { margin: 0; font-size: 0.8125rem; color: var(--ia-brown); font-weight: 600; }
.ia-lcard__excerpt { margin: 0; font-size: 0.9375rem; color: var(--ia-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ia-lcard__foot {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding-top: 12px;
	border-top: 1px dashed var(--ia-line);
	font-size: 0.8125rem;
}
.ia-lcard__loc { display: inline-flex; align-items: center; gap: 4px; color: var(--ia-muted); }
.ia-lcard__more { font-weight: 700; color: var(--ia-primary); white-space: nowrap; }

/* ---------- Immigration intro ---------- */
.ia-immi { padding-top: 72px; }
.ia-immi > .ia-band:first-child { opacity: 0.6; }
.ia-immi__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: 48px;
	align-items: center;
	background: var(--ia-sand);
	padding-block: 48px;
	border-radius: 0;
	max-width: none;
	padding-inline: max(var(--ia-gutter), calc((100% - var(--ia-container)) / 2));
}
.ia-immi__title { margin: 0 0 12px; }
.ia-immi__text { margin: 0 0 18px; color: var(--ia-dark); max-width: 60ch; }
.ia-immi__points { list-style: none; margin: 0 0 24px; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 20px; }
.ia-immi__points li { display: flex; gap: 8px; align-items: flex-start; font-weight: 600; font-size: 0.9375rem; }
.ia-immi__points .ia-icon { color: var(--ia-primary); margin-top: 4px; }
.ia-immi__img { width: 100%; max-width: 360px; margin-inline: auto; height: auto; }

/* ---------- Guide cards ---------- */
.ia-ggrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ia-gcard {
	position: relative;
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--ia-line-soft);
	border-radius: var(--ia-r-md);
	overflow: hidden;
}
.ia-gcard__media { aspect-ratio: 16 / 9; background: var(--ia-sand); display: grid; place-items: center; overflow: hidden; }
.ia-gcard__media img { width: 100%; height: 100%; object-fit: cover; }
.ia-gcard__icon {
	display: grid; place-items: center;
	width: 72px; height: 80px;
	border-radius: var(--ia-arch);
	background: #fff;
	color: var(--ia-primary);
	border: 1.5px solid var(--ia-line);
}
.ia-gcard__body { padding: 16px 18px 20px; display: flex; flex-direction: column; gap: 6px; }
.ia-gcard__topic { margin: 0; font-size: 0.8125rem; font-weight: 700; color: var(--ia-brown); }
.ia-gcard__title { margin: 0; font-size: 1.0625rem; line-height: 1.65; }
.ia-gcard__title a { color: var(--ia-dark); text-decoration: none; }
.ia-gcard:hover .ia-gcard__title a { color: var(--ia-primary); }
.ia-gcard__excerpt { margin: 0; font-size: 0.9375rem; color: var(--ia-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

/* ---------- Service cards ---------- */
.ia-sgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ia-scard {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--ia-line);
	border-top: 4px solid var(--ia-primary);
	border-radius: var(--ia-r-md);
	overflow: hidden;
}
.ia-scard__media { aspect-ratio: 16 / 9; overflow: hidden; }
.ia-scard__media img { width: 100%; height: 100%; object-fit: cover; }
.ia-scard__body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ia-scard__title { margin: 0; font-size: 1.125rem; }
.ia-scard__text { margin: 0; color: var(--ia-muted); font-size: 0.9375rem; }
.ia-scard__foot { margin-top: auto; padding-top: 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.ia-scard__price { font-weight: 800; color: var(--ia-dark); font-size: 1.0625rem; }
.ia-scard__price del { color: var(--ia-muted); font-weight: 500; font-size: 0.875rem; }
.ia-scard__price ins { text-decoration: none; }

/* ---------- News ---------- */
.ia-news { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: 28px; align-items: start; }
.ia-news__lead { position: relative; }
.ia-news__media { aspect-ratio: 16 / 9; border-radius: var(--ia-r-md); overflow: hidden; background: var(--ia-sand); margin-bottom: 14px; }
.ia-news__media img { width: 100%; height: 100%; object-fit: cover; }
.ia-news__title { margin: 0 0 6px; font-size: var(--ia-fs-lg); line-height: 1.6; }
.ia-news__title a { color: var(--ia-dark); text-decoration: none; }
.ia-news__lead:hover .ia-news__title a, .ia-news__item:hover .ia-news__title a { color: var(--ia-primary); }
.ia-news__title--sm { font-size: 1rem; margin-bottom: 2px; }
.ia-news__date { display: flex; align-items: center; gap: 6px; margin: 0 0 6px; font-size: 0.8125rem; color: var(--ia-muted); }
.ia-news__excerpt { margin: 0; color: var(--ia-muted); }
.ia-news__excerpt--sm { font-size: 0.875rem; }
.ia-news__list { list-style: none; margin: 0; padding: 0; display: grid; }
.ia-news__item { position: relative; display: flex; gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--ia-line-soft); }
.ia-news__item:first-child { padding-top: 0; }
.ia-news__thumb { flex: none; width: 96px; height: 72px; border-radius: var(--ia-r-sm); overflow: hidden; background: var(--ia-sand); }
.ia-news__thumb img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- Ads intro ---------- */
.ia-adsec__panel {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr);
	gap: 32px;
	align-items: center;
	padding: 40px 48px;
	border-radius: var(--ia-r-lg);
	background: var(--ia-primary);
	color: #fff;
	position: relative;
	overflow: hidden;
}
.ia-adsec__panel::before {
	content: "";
	position: absolute;
	inset-inline: 0;
	top: 10px;
	height: 12px;
	background-color: var(--ia-light);
	-webkit-mask: var(--ia-band) repeat-x center / 28px 12px;
	mask: var(--ia-band) repeat-x center / 28px 12px;
	opacity: 0.25;
}
.ia-adsec__title { color: #fff; margin: 0 0 10px; }
.ia-adsec__text { margin: 0 0 22px; color: color-mix(in srgb, #fff 88%, var(--ia-light)); max-width: 62ch; }
.ia-adsec__art {
	display: grid;
	place-items: center;
	aspect-ratio: 1;
	max-width: 260px;
	width: 100%;
	margin-inline: auto;
	border-radius: 999px 999px 20px 20px;
	background: #fff;
	padding: 28px 22px 22px;
}
.ia-adsec__img { width: 100%; height: auto; }

/* ---------- Directory archive / single ---------- */
.ia-results-count { margin: 0 0 18px; font-weight: 700; color: var(--ia-muted); }

.ia-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 0.875rem; margin-bottom: 14px; }
.ia-crumbs a { color: var(--ia-brown); text-decoration: none; }
.ia-crumbs a:hover { text-decoration: underline; }
.ia-crumbs .ia-icon { color: var(--ia-accent); }

.ia-listing__id { display: flex; gap: 18px; align-items: center; }
.ia-listing__logo {
	flex: none; display: grid; place-items: center;
	width: 84px; height: 92px;
	border-radius: var(--ia-arch);
	background: #fff; border: 1.5px solid var(--ia-line);
	color: var(--ia-primary); overflow: hidden;
}
.ia-listing__logo img { width: 100%; height: 100%; object-fit: cover; }
.ia-chips { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ia-chip {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 4px 12px; border-radius: 999px;
	background: #fff; border: 1px solid var(--ia-line);
	color: var(--ia-dark); font-size: 0.8125rem; font-weight: 600; text-decoration: none;
}
.ia-chip:hover { border-color: var(--ia-accent); color: var(--ia-primary); }
.ia-chip .ia-icon { color: var(--ia-brown); }

.ia-listing__grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; align-items: start; }
.ia-listing__lead { font-size: var(--ia-fs-md); font-weight: 600; }
.ia-listing__side { position: sticky; top: calc(var(--ia-header-h) + 24px); }
.ia-contactcard { background: var(--ia-sand); border: 1px solid var(--ia-line); border-radius: var(--ia-r-lg); padding: 22px; }
.ia-contactcard__title { font-size: 1.0625rem; margin: 0 0 14px; }
.ia-contactcard__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.ia-contactcard__list li { display: flex; gap: 12px; align-items: flex-start; }
.ia-contactcard__icon { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #fff; color: var(--ia-primary); border: 1px solid var(--ia-line); }
.ia-contactcard__text { display: flex; flex-direction: column; min-width: 0; font-size: 0.9375rem; overflow-wrap: anywhere; }
.ia-contactcard__label { font-size: 0.75rem; color: var(--ia-muted); font-weight: 700; }
.ia-contactcard__text a { color: var(--ia-dark); font-weight: 600; text-decoration: none; }
.ia-contactcard__text a:hover { color: var(--ia-primary); text-decoration: underline; }
.ia-contactcard__empty { margin: 0; color: var(--ia-muted); }

/* ---------- Responsive ---------- */
@media (max-width: 1099px) {
	.ia-cats__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ia-lgrid, .ia-ggrid, .ia-sgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ia-listing__grid { grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; }
}
@media (max-width: 899px) {
	.ia-hero { padding-top: 32px; }
	.ia-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.ia-hero__art { min-height: 0; max-width: 420px; width: 100%; margin-inline: auto; aspect-ratio: 1 / 0.86; }
	.ia-immi__grid, .ia-adsec__panel, .ia-news { grid-template-columns: minmax(0, 1fr); }
	.ia-immi__art { order: -1; }
	.ia-immi__img { max-width: 260px; }
	.ia-adsec__art { max-width: 200px; }
	.ia-listing__grid { grid-template-columns: minmax(0, 1fr); }
	.ia-listing__side { position: static; }
}
@media (max-width: 767px) {
	.ia-cats__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
	.ia-cats__list li:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.ia-cats__list li:last-child:nth-child(odd) .ia-archcard { border-radius: var(--ia-r-lg); }
	.ia-lgrid, .ia-ggrid, .ia-sgrid { grid-template-columns: minmax(0, 1fr); }
	.ia-dsearch__fields { grid-template-columns: minmax(0, 1fr); }
	.ia-dsearch { padding: 14px; }
	.ia-immi__points { grid-template-columns: minmax(0, 1fr); }
	.ia-adsec__panel { padding: 32px 22px; }
	.ia-home-sec { padding-top: 52px; }
	.ia-immi__grid { padding-block: 36px; }
	.ia-listing__id { align-items: flex-start; }
	.ia-listing__logo { width: 64px; height: 70px; }
}
@media (max-width: 400px) {
	.ia-archcard { padding: 36px 10px 20px; }
	.ia-archcard__text { font-size: 0.8125rem; }
	.ia-hero__actions .ia-btn { flex: 1 1 100%; }
}

/* =========================================================
   Phase 2b — daily tools, browse, slider, emergency, FAQ, Telegram
   ========================================================= */

/* Daily strip under the hero */
.ia-daily { padding-top: 24px; }
.ia-daily__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 16px; }
.ia-daily__card {
	background: #fff;
	border: 1px solid var(--ia-line);
	border-radius: var(--ia-r-md);
	padding: 16px 18px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.ia-daily__title { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 0.9375rem; color: var(--ia-dark); }
.ia-daily__title .ia-icon { color: var(--ia-brown); }
.ia-daily__meta { margin: auto 0 0; font-size: 0.75rem; color: var(--ia-muted); line-height: 1.8; }
.ia-daily__meta a { color: var(--ia-muted); }
.ia-clocks { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ia-clock { background: var(--ia-sand); border-radius: var(--ia-r-sm); padding: 8px 12px; display: flex; flex-direction: column; }
.ia-clock__city { font-size: 0.8125rem; color: var(--ia-muted); font-weight: 600; }
.ia-clock__time { font-size: 1.5rem; font-weight: 800; color: var(--ia-dark); line-height: 1.4; font-variant-numeric: tabular-nums; }
.ia-weather { display: flex; align-items: center; gap: 12px; }
.ia-weather__icon { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: var(--ia-sand-2); color: var(--ia-primary); }
.ia-weather__temp { font-size: 2rem; font-weight: 800; line-height: 1; }
.ia-weather__label { font-weight: 600; color: var(--ia-muted); }
.ia-rates { width: 100%; border-collapse: collapse; font-size: 0.875rem; }
.ia-rates th { text-align: start; font-weight: 600; color: var(--ia-dark); padding: 4px 0; }
.ia-rates td { text-align: end; font-weight: 800; padding: 4px 0; white-space: nowrap; }
.ia-rates tr + tr th, .ia-rates tr + tr td { border-top: 1px dashed var(--ia-line); }
.ia-rates__unit { font-weight: 500; color: var(--ia-muted); font-size: 0.75rem; }
.ia-rates__diff { font-size: 0.6875rem; font-weight: 700; margin-inline-start: 4px; direction: ltr; unicode-bidi: isolate; }
.ia-rates__diff.is-up { color: #2f6b3a; }
.ia-rates__diff.is-down { color: var(--ia-primary); }

/* Browse chips */
.ia-browse__rows { display: grid; gap: 18px; }
.ia-browse__row { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 12px; align-items: start; }
.ia-browse__label { margin: 8px 0 0; font-size: 0.9375rem; color: var(--ia-brown); }
.ia-browse__chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ia-bchip {
	display: inline-flex; align-items: center; gap: 6px;
	min-height: 40px; padding: 4px 14px;
	border: 1px solid var(--ia-line); border-radius: 999px;
	background: #fff; color: var(--ia-dark); font-size: 0.875rem; font-weight: 600; text-decoration: none;
}
.ia-bchip .ia-icon { color: var(--ia-brown); }
.ia-bchip:hover { background: var(--ia-sand); border-color: var(--ia-accent); color: var(--ia-primary); }
.ia-bchip__count {
	min-width: 24px; height: 22px; padding: 0 6px; border-radius: 999px;
	display: inline-grid; place-items: center;
	background: var(--ia-sand-2); color: var(--ia-dark); font-size: 0.75rem; font-weight: 700;
}

/* Slider */
.ia-slider { position: relative; }
.ia-slider__track {
	display: flex;
	gap: 20px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding-inline: 2px;
	padding: 2px 2px 12px;
	scrollbar-width: thin;
	scrollbar-color: var(--ia-line) transparent;
	overscroll-behavior-x: contain;
}
.ia-slider__track:focus-visible { outline: 3px solid var(--ia-accent); outline-offset: 4px; border-radius: var(--ia-r-md); }
.ia-slider__slide { flex: 0 0 calc((100% - 40px) / 3); scroll-snap-align: start; display: flex; }
.ia-slider__slide > * { flex: 1; }
.ia-slider__nav { display: flex; gap: 8px; justify-content: flex-end; margin-top: 10px; }
.ia-slider__nav[hidden] { display: none; }
.ia-slider__nav .ia-iconbtn:disabled { opacity: 0.35; cursor: default; }

.ia-ncard { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ia-line-soft); border-radius: var(--ia-r-md); overflow: hidden; }
.ia-ncard__media { aspect-ratio: 16 / 9; background: var(--ia-sand); display: grid; place-items: center; overflow: hidden; }
.ia-ncard__media img { width: 100%; height: 100%; object-fit: cover; }
.ia-ncard__body { padding: 14px 18px 18px; display: flex; flex-direction: column; gap: 6px; }
.ia-ncard__date { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 0.8125rem; color: var(--ia-muted); }
.ia-ncard__title { margin: 0; font-size: 1.0625rem; line-height: 1.65; }
.ia-ncard__title a { color: var(--ia-dark); text-decoration: none; }
.ia-ncard:hover .ia-ncard__title a { color: var(--ia-primary); }
.ia-ncard__excerpt { margin: 0; font-size: 0.9375rem; color: var(--ia-muted); }

/* Emergency */
.ia-emerg__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 16px; }
.ia-emerg__item { display: flex; gap: 14px; align-items: flex-start; padding: 18px; border-radius: var(--ia-r-md); background: #fff; border: 1px solid var(--ia-line); border-inline-start: 4px solid var(--ia-primary); }
.ia-emerg__icon { flex: none; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--ia-sand-2); color: var(--ia-primary); }
.ia-emerg__text { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.ia-emerg__title { margin: 0; font-size: 0.9375rem; line-height: 1.7; }
.ia-emerg__value { font-size: 1.25rem; font-weight: 800; color: var(--ia-primary); text-decoration: none; overflow-wrap: anywhere; }
a.ia-emerg__value:hover { text-decoration: underline; }
.ia-emerg__note { margin: 0; font-size: 0.8125rem; color: var(--ia-muted); line-height: 1.8; }
.ia-emerg__sources { margin: 14px 0 0; font-size: 0.8125rem; color: var(--ia-muted); }

/* FAQ */
.ia-faq__grid { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 40px; align-items: start; }
.ia-faq__list { display: grid; gap: 10px; }
.ia-faq__item { border: 1px solid var(--ia-line); border-radius: var(--ia-r-md); background: #fff; }
.ia-faq__item[open] { background: var(--ia-sand); border-color: var(--ia-accent); }
.ia-faq__q {
	list-style: none; cursor: pointer;
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 14px 18px; font-weight: 700; line-height: 1.7;
}
.ia-faq__q::-webkit-details-marker { display: none; }
.ia-faq__chev { color: var(--ia-brown); transition: transform 0.2s ease; }
.ia-faq__item[open] .ia-faq__chev { transform: rotate(180deg); }
.ia-faq__a { padding: 0 18px 14px; color: var(--ia-dark); }
.ia-faq__a p { margin: 0 0 0.6em; }

/* Telegram */
.ia-tg__panel {
	display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
	padding: 24px 28px; border-radius: var(--ia-r-lg);
	background: var(--ia-sand); border: 1px solid var(--ia-line);
}
.ia-tg__icon { flex: none; display: grid; place-items: center; width: 60px; height: 60px; border-radius: 50%; background: var(--ia-primary); color: var(--ia-light); }
.ia-tg__text { flex: 1 1 280px; }
.ia-tg__title { margin: 0 0 4px; font-size: var(--ia-fs-lg); }
.ia-tg__text p { margin: 0; color: var(--ia-muted); }

@media (max-width: 1099px) {
	.ia-slider__slide { flex-basis: calc((100% - 20px) / 2); }
}
@media (max-width: 899px) {
	.ia-faq__grid { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}
@media (max-width: 600px) {
	.ia-slider__slide { flex-basis: 84%; }
	.ia-browse__row { grid-template-columns: minmax(0, 1fr); gap: 6px; }
	.ia-browse__label { margin: 0; }
	.ia-tg__panel { padding: 20px; }
	.ia-tg__panel .ia-btn { width: 100%; }
}
