/*
 * Amoon typography system.
 *
 * One scale for the whole site, written against what the audit of every public
 * page found (September 2026): Elementor's own defaults set headings and
 * buttons to line-height 1, older articles ran at 36px leading and newer ones
 * at 1.5, card excerpts were 12px, and the same component used 14, 16 and 18px
 * on different templates.
 *
 * Layering, lowest to highest:
 *   1. Elementor's generic widget defaults (.elementor-heading-title{line-height:1} ...)
 *   2. this file                     (body-prefixed so it beats layer 1)
 *   3. per-element Elementor values  (.elementor-123 .elementor-element-abc ...)
 * Layer 3 is left alone here on purpose: those values are normalised in the
 * Elementor data itself and point at the kit's global typography presets,
 * whose sizes read the tokens below. See scripts/typography/README.md.
 *
 * Sizes are fluid between a 360px and a 1440px viewport.
 */

:root {
	/* Weights actually shipped by the IRANSansX @font-face rules in style.css. */
	--amoon-fw-regular: 400;
	--amoon-fw-medium: 500;
	--amoon-fw-semibold: 600;
	--amoon-fw-bold: 700;

	/* Scale: mobile (360px) -> desktop (1440px). */
	--amoon-fs-display: clamp(1.875rem, 1.583rem + 1.296vw, 2.75rem);  /* 30 -> 44 */
	--amoon-fs-h1: clamp(1.625rem, 1.458rem + 0.741vw, 2.125rem);      /* 26 -> 34 */
	--amoon-fs-h2: clamp(1.3125rem, 1.208rem + 0.463vw, 1.625rem);     /* 21 -> 26 */
	--amoon-fs-h3: clamp(1.125rem, 1.063rem + 0.278vw, 1.3125rem);     /* 18 -> 21 */
	--amoon-fs-h4: clamp(1.0625rem, 1.042rem + 0.093vw, 1.125rem);     /* 17 -> 18 */
	--amoon-fs-h5: 1rem;                                               /* 16 */
	--amoon-fs-h6: 0.9375rem;                                          /* 15 */
	--amoon-fs-lead: clamp(1.0625rem, 1.021rem + 0.185vw, 1.1875rem);  /* 17 -> 19 */
	--amoon-fs-article: clamp(1rem, 0.958rem + 0.185vw, 1.125rem);     /* 16 -> 18: ~100 characters a line in the 790px post column */
	--amoon-fs-body: 1rem;                                             /* 16 */
	--amoon-fs-ui: 0.9375rem;                                          /* 15: buttons, menus, card copy */
	--amoon-fs-small: 0.875rem;                                        /* 14 */
	--amoon-fs-caption: 0.8125rem;                                     /* 13: meta, breadcrumbs, captions */
	--amoon-fs-micro: 0.75rem;                                         /* 12: tab-bar labels, badges only */
	--amoon-fs-input: 1rem;                                            /* 16: below this iOS zooms on focus */

	/* Persian needs more leading than Latin: dots and descenders stack. */
	--amoon-lh-display: 1.3;
	--amoon-lh-h1: 1.4;
	--amoon-lh-h2: 1.45;
	--amoon-lh-h3: 1.5;
	--amoon-lh-heading: 1.55;   /* h4-h6, card titles */
	--amoon-lh-article: 1.9;    /* long-form paragraphs and lists */
	--amoon-lh-body: 1.8;       /* short copy: cards, intros, FAQ answers */
	--amoon-lh-small: 1.7;      /* 13-14px copy: excerpts, captions, footer links */
	--amoon-lh-ui: 1.5;         /* menus, labels, inputs */
	--amoon-lh-button: 1.35;

	/* Rhythm */
	--amoon-space-p: 1em;
	--amoon-measure: 50rem;     /* ~90 Persian characters at article size; the post column width */

	/* Text colours that pass WCAG AA on white and on the #f5f5f7 page tint. */
	--amoon-color-muted: #5c5f66;
	--amoon-color-placeholder: #75777c;
}

/* ------------------------------------------------------------------
 * 1. Document
 * ------------------------------------------------------------------ */

body {
	font-size: var(--amoon-fs-body);
	line-height: var(--amoon-lh-body);
	overflow-wrap: break-word;
	text-rendering: optimizeLegibility;
}

body p {
	margin-block: 0 var(--amoon-space-p);
	text-wrap: pretty;
}

/* `bolder` inside a 600 heading asks for 900; keep emphasis on shipped faces. */
body strong,
body b {
	font-weight: var(--amoon-fw-bold);
}

body small {
	font-size: var(--amoon-fs-small);
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
	margin-block: 0 0.5em;
	text-wrap: balance;
}

body h1 { font-size: var(--amoon-fs-h1); font-weight: var(--amoon-fw-bold); line-height: var(--amoon-lh-h1); }
body h2 { font-size: var(--amoon-fs-h2); font-weight: var(--amoon-fw-bold); line-height: var(--amoon-lh-h2); }
body h3 { font-size: var(--amoon-fs-h3); font-weight: var(--amoon-fw-semibold); line-height: var(--amoon-lh-h3); }
body h4 { font-size: var(--amoon-fs-h4); font-weight: var(--amoon-fw-semibold); line-height: var(--amoon-lh-heading); }
body h5 { font-size: var(--amoon-fs-h5); font-weight: var(--amoon-fw-semibold); line-height: var(--amoon-lh-heading); }
body h6 { font-size: var(--amoon-fs-h6); font-weight: var(--amoon-fw-semibold); line-height: var(--amoon-lh-heading); }

/* Persian has no italic; the browser only slants the glyphs. */
body em,
body i:not([class]),
body figcaption,
body cite {
	font-style: normal;
}

body em {
	font-weight: var(--amoon-fw-medium);
}

body figcaption,
body .wp-caption-text,
body .widget-image-caption {
	margin-block-start: 0.5em;
	color: var(--amoon-color-muted);
	font-size: var(--amoon-fs-caption);
	line-height: var(--amoon-lh-small);
}

/* Tables: Hello shrinks them to .9em and gives th 700. */
body table {
	font-size: var(--amoon-fs-small);
	line-height: var(--amoon-lh-small);
}

body table th {
	font-weight: var(--amoon-fw-semibold);
}

body table td,
body table th {
	padding: 0.6em 0.75em;
	vertical-align: top;
}

/* ------------------------------------------------------------------
 * 2. Elementor widget defaults (layer 1 overrides)
 * ------------------------------------------------------------------ */

/* Elementor sets every heading to line-height 1; two-line Persian titles collide. */
body .elementor-widget-heading .elementor-heading-title,
body .elementor-widget-theme-post-title .elementor-heading-title,
body .elementor-widget-theme-archive-title .elementor-heading-title,
body .elementor-widget-theme-page-title .elementor-heading-title {
	line-height: var(--amoon-lh-h2);
	text-wrap: balance;
}

body .elementor-widget-heading p.elementor-heading-title {
	text-wrap: pretty;
}

/* Heading widgets left on "default" took weight 500 from the kit's primary
 * font, so they sat lighter than the ones linked to a preset. */
body .elementor-widget-heading :is(h1, h2).elementor-heading-title {
	font-weight: var(--amoon-fw-bold);
}

body .elementor-widget-heading :is(h3, h4, h5, h6).elementor-heading-title {
	font-weight: var(--amoon-fw-semibold);
}

body .elementor-widget-text-editor {
	line-height: var(--amoon-lh-body);
}

/* Headings written inside a text block (About, landing copy): more room above
 * than below, so each one belongs to the text that follows it. */
body .elementor-widget-text-editor :is(h2, h3, h4, h5, h6):not(:first-child) {
	margin-block-start: 1.2em;
}

/* Utility for Elementor "CSS Classes": keeps a text block at a readable
 * measure when its container runs the full 1160px. */
body .amoon-measure,
/* Inside flexbox containers Elementor pins every widget to max-width 100%
 * with .elementor.elementor .e-con > .elementor-widget (four classes). */
body .elementor .e-con > .elementor-widget.amoon-measure,
body .elementor .e-con-inner > .elementor-widget.amoon-measure {
	/* min() keeps Elementor's 100% cap: wide tables must not push past a phone screen. */
	max-width: min(100%, var(--amoon-measure));
}

/* The trailing paragraph margin doubled the widget gap under every text block. */
body .elementor-widget-text-editor .elementor-widget-container > :last-child,
body .elementor-widget-text-editor.elementor-widget > :last-child:not(.elementor-widget-container) {
	margin-block-end: 0;
}

body .elementor-button,
body .elementor-button .elementor-button-text {
	line-height: var(--amoon-lh-button);
}

body .elementor-button {
	text-align: center;
}

body .elementor-button .elementor-button-content-wrapper {
	align-items: center;
}

body .elementor-icon-list-items .elementor-icon-list-text {
	line-height: 1.6;
}

/* Centred footer contact lines: an even break instead of a lone "– پلاک ۹۱". */
body .elementor-location-footer .elementor-icon-list-text {
	text-wrap: balance;
}

/* Accordions: the question is a label, the answer is reading copy. */
body .elementor-accordion .elementor-tab-title,
body .elementor-accordion .elementor-accordion-title {
	line-height: 1.6;
}

body .elementor-accordion .elementor-tab-content,
body .e-n-accordion-item .elementor-widget-text-editor,
body .dynamic-accordion .elementor-tab-content {
	font-size: var(--amoon-fs-body);
	line-height: var(--amoon-lh-body);
}

/* FAQ questions read as h5, the same preset the article accordions use. */
body .e-n-accordion-item-title-text {
	font-size: var(--amoon-fs-h5);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-heading);
}

body .elementor-toc__header-title {
	font-size: var(--amoon-fs-h5);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-ui);
}

body .elementor-toc__list-item {
	font-size: var(--amoon-fs-small);
	line-height: var(--amoon-lh-small);
}

/* Swiper "3 / 7" counters and similar numerals read as captions. */
body .swiper-pagination-fraction {
	font-size: var(--amoon-fs-small);
	line-height: var(--amoon-lh-ui);
}

/* Element Pack tabs: the idle tab was #999 on #f3f3f3 (2.6:1). */
body .bdt-tab > * > a .bdt-tab-text,
body .bdt-tab .bdt-tab-text {
	font-size: var(--amoon-fs-ui);
	line-height: var(--amoon-lh-ui);
}

body .bdt-tab > :not(.bdt-active) > a {
	color: var(--amoon-color-muted);
}

body .bdt-ep-advanced-heading-main-title-inner {
	line-height: var(--amoon-lh-h2);
}

body .bdt-ep-static-carousel-title {
	font-size: var(--amoon-fs-h5);
	line-height: var(--amoon-lh-heading);
}

/* Sidebar "latest posts": 14px/700 titles at line-height 1.2, #999 meta (2.6:1). */
body .bdt-post-list-link,
body .list-part .bdt-post-list-title {
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-heading);
}

body .bdt-post-list-desc .bdt-post-list-meta,
body .bdt-post-list-desc .bdt-post-list-meta a {
	color: var(--amoon-color-muted);
}

/* ------------------------------------------------------------------
 * 3. Long-form content: articles, services, equipment, aftercare
 *
 * Post bodies come in two shapes: Elementor posts (text-editor widgets
 * inside the Single Post / Single Service template's post-content widget)
 * and classic equipment pages (the_content() straight into that widget).
 * The selectors name both without reaching into forms, TOCs or icon lists
 * that also live inside post content. Pages render through a post-content
 * widget too (the Single Page template) but are composed layouts whose
 * widgets carry their own sizes, so they are left out.
 * ------------------------------------------------------------------ */

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container {
	font-size: var(--amoon-fs-article);
	line-height: var(--amoon-lh-article);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor :is(p, li),
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > p,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > :is(ul, ol) li {
	font-size: var(--amoon-fs-article);
	line-height: var(--amoon-lh-article);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor p,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > p {
	margin-block-end: 1.1em;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor :is(ul, ol),
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > :is(ul, ol) {
	margin-block: 0 1.25em;
	padding-inline-start: 1.4em;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor li + li,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > :is(ul, ol) li + li {
	margin-block-start: 0.4em;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor li > :is(ul, ol) {
	margin-block: 0.4em 0;
}

/* Heading rhythm: more room above than below ties a heading to its section. */
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor :is(h1, h2, h3, h4, h5, h6),
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > :is(h2, h3, h4, h5, h6) {
	margin-block: 1.6em 0.55em;
}

/* Seven older posts open with an <h1> inside the article; size it as the h2 it acts as. */
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor :is(h1, h2),
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > h2 {
	font-size: var(--amoon-fs-h2);
	font-weight: var(--amoon-fw-bold);
	line-height: var(--amoon-lh-h2);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor h3,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > h3 {
	margin-block-start: 1.4em;
	font-size: var(--amoon-fs-h3);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-h3);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor h4,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > h4 {
	margin-block-start: 1.3em;
	font-size: var(--amoon-fs-h4);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-heading);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor :is(h5, h6) {
	margin-block-start: 1.2em;
	font-size: var(--amoon-fs-h5);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-heading);
}

/* A heading that opens a text block needs no top margin: the widget gap is there. */
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content .elementor-widget-text-editor .elementor-widget-container > :is(h1, h2, h3, h4, h5, h6):first-child,
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content > .elementor-widget-container > :is(h2, h3, h4):first-child {
	margin-block-start: 0;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content :is(h1, h2, h3, h4) strong {
	font-weight: inherit;
}

/* TinyMCE left inline sizes inside headings (an h2 set at 16px, below the
 * body text). Inline styles can only be outranked with !important. */
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content :is(h1, h2, h3, h4, h5, h6) [style*="font-size"] {
	font-size: inherit !important;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content p[style*="line-height"] {
	line-height: var(--amoon-lh-article) !important;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content table {
	margin-block: 0.5em 1.5em;
	font-size: var(--amoon-fs-small);
}

/* Table cells inherit the widget's justify; in a 100px cell that is all gaps. */
body .elementor-widget-text-editor :is(td, th) {
	text-align: start;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content table :is(p, li) {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
}

/* Equipment pages run their text the full 1180px under an 800px photo:
 * 130 characters a line. Keep it to the photo's width. */
body.single-facility .elementor-widget-theme-post-content > .elementor-widget-container > :is(p, ul, ol, h2, h3, h4, blockquote, table) {
	max-width: var(--amoon-measure);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content :is(figure, .wp-caption) {
	margin-block: 1.5em;
}

/* "نکته مهم" notes are written as blockquotes; the browser only indented them. */
body:is(.single-post, .single-facility) .elementor-widget-theme-post-content blockquote {
	margin: 1.5em 0;
	padding: 0.9em 1.25em;
	border-inline-start: 3px solid var(--e-global-color-primary, #8f4298);
	border-radius: 4px;
	background: rgba(143, 66, 152, 0.06);
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content blockquote > :last-child {
	margin-block-end: 0;
}

body:is(.single-post, .single-facility) .elementor-widget-theme-post-content blockquote :is(h2, h3, h4) {
	margin-block-start: 0;
	font-size: var(--amoon-fs-article);
	line-height: var(--amoon-lh-article);
}

/* Legacy consultation blocks (imported cz_title markup, ~60 posts) carry
 * inline 14pt / 18pt spans that set one sentence in two sizes. The phrase
 * keeps its colour and weight; only the size joins the sentence. */
body .cz_wpe_content p {
	font-size: var(--amoon-fs-lead);
	line-height: var(--amoon-lh-body);
}

body .cz_wpe_content h2 {
	font-size: var(--amoon-fs-h3);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-h3);
}

body .cz_wpe_content [style*="font-size"] {
	font-size: inherit !important;
}

/* Justified Persian opens rivers once a column is phone-narrow. Widgets set
 * to justify get align_mobile=start in their Elementor settings; this catches
 * the paragraphs that carry it inline. */
@media (max-width: 767px) {
	body [style*="text-align: justify"],
	body [style*="text-align:justify"] {
		text-align: start !important;
	}
}

/* ------------------------------------------------------------------
 * 4. Navigation
 * ------------------------------------------------------------------ */

body .rtmega-menu-area .desktop-menu-area ul.rtmega-megamenu > .menu-item > .menu-link {
	font-size: var(--amoon-fs-body);
	font-weight: var(--amoon-fw-medium);
	line-height: var(--amoon-lh-ui);
}

body .rtmega-menu-area ul.rtmega-megamenu ul.sub-menu .menu-item .menu-link {
	font-size: var(--amoon-fs-ui);
	line-height: var(--amoon-lh-ui);
}

/* Mobile drawer: the plugin scales everything to 1.15em (18.4px). */
body .rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar {
	font-size: var(--amoon-fs-body);
}

body .rtmega-menu-area .mobile-menu-area ul.rtmega-megamenu .menu-item .menu-link {
	font-weight: var(--amoon-fw-medium);
	line-height: var(--amoon-lh-ui);
}

body .rtmega-menu-area .mobile-menu-area ul.rtmega-megamenu .sub-menu .menu-item .menu-link {
	font-size: var(--amoon-fs-ui);
	font-weight: var(--amoon-fw-regular);
}

body .elementor-nav-menu .elementor-item {
	line-height: var(--amoon-lh-ui);
}

body .elementor-nav-menu--dropdown .elementor-item,
body .elementor-nav-menu--dropdown .elementor-sub-item {
	font-size: var(--amoon-fs-ui);
	line-height: var(--amoon-lh-ui);
}

/* Bottom tab bar (Amoon Core): 12px is the tab-bar convention; keep it legible. */
body .mobile-nav .nav-text {
	font-size: var(--amoon-fs-micro);
	line-height: 1.4;
	color: #5c5f66;
}

body .menu-overlay .menu-content :is(a, span, p) {
	line-height: var(--amoon-lh-ui);
}

/* ------------------------------------------------------------------
 * 5. Breadcrumbs, post meta, pagination
 * ------------------------------------------------------------------ */

body .elementor-widget-cactus_breadcrumb,
body .elementor-widget-cactus_breadcrumb :is(a, span),
body .elementor-widget-bdt-breadcrumbs :is(a, span),
body .elementor-widget-blog_post_breadcrumb :is(a, span) {
	font-size: var(--amoon-fs-caption);
	line-height: var(--amoon-lh-small);
}

body .elementor-widget-post-info .elementor-icon-list-text,
body .elementor-widget-post-info time {
	font-size: var(--amoon-fs-caption);
	line-height: var(--amoon-lh-ui);
}

/* Element Pack sets breadcrumb items to flex: none, so a long post title
 * cannot wrap and runs off a 320px screen. */
body .bdt-ep-breadcrumb > * {
	flex: 0 1 auto;
	min-width: 0;
}

body .elementor-widget-bdt-breadcrumbs .bdt-breadcrumb > * > :not(.bdt-active) {
	color: var(--amoon-color-muted);
}

body .page-numbers {
	font-size: var(--amoon-fs-ui);
	line-height: var(--amoon-lh-ui);
}

/* ------------------------------------------------------------------
 * 6. Cards (loop items)
 * ------------------------------------------------------------------ */

body .e-loop-item .elementor-widget-theme-post-title .elementor-heading-title {
	line-height: var(--amoon-lh-heading);
}

/* Card excerpts were 12px justified text. */
body .elementor-widget-theme-post-excerpt .elementor-widget-container {
	font-size: var(--amoon-fs-small);
	line-height: var(--amoon-lh-body);
}

/* ------------------------------------------------------------------
 * 7. Forms
 * ------------------------------------------------------------------ */

body input[type="text"],
body input[type="email"],
body input[type="tel"],
body input[type="number"],
body input[type="search"],
body input[type="url"],
body input[type="password"],
body input[type="date"],
body textarea,
body select {
	font-size: var(--amoon-fs-input);
	line-height: var(--amoon-lh-ui);
}

/* Gravity Forms' themes style fields and labels with two classes
 * (.gform_wrapper.gravity-theme ...), so the rules below repeat
 * .gform_wrapper to outrank them without !important. */
body .gform_wrapper.gform_wrapper :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], input[type="password"], input[type="date"], input[type="search"], textarea, select) {
	font-size: var(--amoon-fs-input);
}

/* A plugin stylesheet sets every label to line-height 1; two-line labels collide. */
body label {
	line-height: var(--amoon-lh-ui);
}

body ::placeholder {
	color: var(--amoon-color-placeholder);
	opacity: 1;
}

body .gform_wrapper.gform_wrapper .gfield_label,
body .gform_wrapper.gform_wrapper legend.gfield_label {
	font-size: var(--amoon-fs-ui);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-ui);
}

body .gform_wrapper.gform_wrapper .gchoice label,
body .gform_wrapper.gform_wrapper .gform-field-label--type-inline {
	font-size: var(--amoon-fs-ui);
	line-height: var(--amoon-lh-ui);
}

body .gform_wrapper.gform_wrapper .gfield_description,
body .gform_wrapper.gform_wrapper .ginput_complex label,
body .gform_wrapper.gform_wrapper .gform-field-label--type-sub {
	font-size: var(--amoon-fs-caption);
	line-height: var(--amoon-lh-small);
}

body .gform_wrapper.gform_wrapper .gfield_validation_message,
body .gform_wrapper.gform_wrapper .validation_message,
body .gform_wrapper.gform_wrapper .gform_submission_error {
	font-size: var(--amoon-fs-small);
	line-height: var(--amoon-lh-small);
}

body .gform_wrapper.gform_wrapper .gform_title {
	font-size: var(--amoon-fs-h3);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-h3);
}

body .gform_wrapper.gform_wrapper .gform_button,
body .gform_wrapper.gform_wrapper input[type="submit"] {
	font-size: var(--amoon-fs-body);
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-button);
}

/* Amoon Health Tools (BMI, calorie, mizaj) inside the mobile menu overlay. */
body .amoon-tools :is(input, select, textarea) {
	font-size: var(--amoon-fs-input);
	font-weight: var(--amoon-fw-regular);
}

body .amoon-tools .amoon-button {
	font-weight: var(--amoon-fw-semibold);
	line-height: var(--amoon-lh-button);
}
