/*
 * Typography: Poppins, self-hosted (latin, woff2), sized to match latestmodapks.com.
 * Fonts only: no colours, logo or layout rules live here.
 *
 * Loaded last on the front end (see includes/class-typography.php), and every
 * selector starts with "html body" so it also beats GeneratePress's own inline
 * Customizer typography (single-class and element selectors) regardless of the
 * values saved in the database.
 *
 * Responsive sizes use clamp() between the 390px and ~1280px values.
 */

@font-face {
	font-family: 'Poppins';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/poppins-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Poppins';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/poppins-500.woff2') format('woff2');
}
@font-face {
	font-family: 'Poppins';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/poppins-600.woff2') format('woff2');
}
@font-face {
	font-family: 'Poppins';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/poppins-700.woff2') format('woff2');
}

/*
 * Fallbacks with Poppins's metrics, so the swap from the system font does not move
 * anything. The size-adjust values are the measured width ratio of Poppins to Arial (400-500: 109.9%,
 * 600-700: 105%); the overrides are Poppins's 1050/-350/100 vertical metrics divided by that.
 */
@font-face {
	font-family: 'Poppins Fallback';
	font-style: normal;
	font-weight: 400 500;
	src: local('Arial'), local('Helvetica'), local('Liberation Sans');
	size-adjust: 109.9%;
	ascent-override: 95.5%;
	descent-override: 31.8%;
	line-gap-override: 9.1%;
}
@font-face {
	font-family: 'Poppins Fallback';
	font-style: normal;
	font-weight: 600 700;
	src: local('Arial Bold'), local('Arial-BoldMT'), local('Helvetica Bold'), local('Liberation Sans Bold');
	size-adjust: 105%;
	ascent-override: 100%;
	descent-override: 33.3%;
	line-gap-override: 9.5%;
}

:root {
	--lm-font: 'Poppins', 'Poppins Fallback', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}

/* ---- Base --------------------------------------------------------------- */
html body,
html body button,
html body input,
html body select,
html body textarea,
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body .main-title,
html body .site-description,
html body .widget-title,
html body .entry-title,
html body .main-navigation a,
html body .menu-toggle,
html body .site-info {
	font-family: var(--lm-font);
}

html body {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: normal;
}

/* ---- Navigation --------------------------------------------------------- */
html body .main-navigation .main-nav ul li:not(.switch-theme) a {
	font-size: clamp(13px, 12.8px + 0.06vw, 13.5px);
	font-weight: 500;
	line-height: 1.45;
	text-transform: none;
	letter-spacing: normal;
}
html body .lm-launch-logo {
	font-weight: 700;
}

/* ---- Section headings (H2 on lists) -------------------------------------- */
html body .lm-shelf-head h2,
html body .lm-section-title,
html body .editor-heading h2 {
	font-size: clamp(19px, 18.2px + 0.2vw, 20px);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.005em;
}
html body .lm-shelf-more,
html body .lm-archive-count {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.45;
}

/* ---- Page H1 (archives, categories) -------------------------------------- */
html body .lm-archive-title {
	font-size: clamp(22px, 19.3px + 0.7vw, 28px);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.01em;
}

/* ---- App cards and lists ------------------------------------------------- */
html body .lm-slide-title {
	font-size: clamp(18px, 13.6px + 1.126vw, 28px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: normal;
}
html body .lm-slide-desc,
html body .lm-promo-desc,
html body .lm-teaser-desc {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.45;
}
html body .lm-tile-name,
html body .lm-quick-name,
html body .app-name-homepage {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.3;
}
html body .lm-teaser-title,
html body .lm-search-result-title,
html body .lm-banner-card-title,
html body .lm-cat-name {
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.3;
}
html body .lm-tile-meta,
html body .lm-cat-count,
html body .app-card-meta {
	font-size: 12.5px;
	font-weight: 400;
	line-height: 1.45;
}
html body .lm-promo-title {
	font-weight: 700;
	letter-spacing: normal;
}

/* ---- Buttons ------------------------------------------------------------- */
html body .lm-launch-btn,
html body .lm-launch-search button,
html body .lm-find .lm-find-button,
html body .lm-listing .app-btn,
html body .app-btn.app-apk,
html body .app-btn.app-desktop {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: normal;
}
html body .lm-pagination li > .page-numbers,
html body .lm-chips a {
	font-size: 13.5px;
	font-weight: 500;
}

/* ---- Home page: keep the display sizes, drop weights Poppins is not loaded in ---- */
html body .lm-launch-title,
html body .lm-launch-stats dt {
	font-weight: 700;
}
html body .lm-launch-pill,
html body .lm-launch-trust li::before {
	font-weight: 600;
}
html body .lm-launch-trust,
html body .lm-launch-credit {
	font-size: 13px;
}

/* ---- Listing page -------------------------------------------------------- */
html body .lm-listing .entry-title,
html body .entry-title {
	font-size: clamp(20px, 19.1px + 0.225vw, 22px);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: normal;
}
html body .lm-hero .app-desc,
html body .app-desc {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
}
html body .lm-facts dt {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.77;
}
html body .lm-facts dd {
	font-weight: 600;
}
html body .lm-listing .app-detailes-main-block,
html body .app-detailes-main-block {
	font-size: clamp(15px, 14.8px + 0.1vw, 16px);
	font-weight: 400;
	line-height: 1.75;
}
html body .lm-listing .app-detailes-main-block h2,
html body .lm-listing .app-detailes-main-block h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: normal;
}
html body .lm-listing .app-info-grp td,
html body .app-info-grp td,
html body .appver,
html body .developer-name,
html body .lm-listing .developer-name {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.77;
}
html body .lm-listing .app-name-table-key,
html body .app-name-table-key {
	font-weight: 500;
}
html body .lm-listing .dld-btn-text p,
html body .lm-downloads-title {
	font-size: clamp(15px, 14.6px + 0.1vw, 16px);
	font-weight: 600;
	line-height: 1.5;
}
html body .lm-listing .dld-btn-text p + p {
	font-size: 13px;
	font-weight: 400;
}

/* ---- Meta, footer -------------------------------------------------------- */
html body .lm-breadcrumbs,
html body .lm-legal-links,
html body .lm-downloads-note,
html body .lm-badge {
	font-size: 13px;
	font-weight: 400;
}
html body .lm-breadcrumb [aria-current] {
	font-weight: 600;
}
html body .lm-footer-brand p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
}
html body .lm-footer-heading {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: normal;
}
html body .lm-footer-menu a {
	font-size: 13px;
	font-weight: 600;
	line-height: 1.8;
}
html body .site-info .copyright-bar {
	font-size: 13px;
	font-weight: 400;
}
