/* ==========================================================================
   GlobeMarket — Legal pages (Privacy Policy, Figma 869:13872)
   ========================================================================== */
.gm-legal { font-family: var(--gm-font-sans); color: #0a0a0a; }
.gm-legal p, .gm-legal h1, .gm-legal h2, .gm-legal h3 { margin: 0; }
/* Readable column: 1200px centred (120px sides at 1440, Figma update), never closer than the gutter. */
.gm-legal__in { width: min(1200px, 100% - 2 * var(--gm-gutter)); margin: 0 auto; }

/* Hero (869:13959) */
.gm-legal-hero { padding: 80px 0 43px; background: var(--gm-color-bg-subtle, #f5f7f8); }
.gm-legal-crumbs { display: flex; align-items: center; gap: 4px; height: 32px; font-size: 14px; line-height: 20px; }
.gm-legal-crumbs a { font-weight: 500; color: #454a4f; text-decoration: none; }
.gm-legal-crumbs a:hover { color: #0a0a0a; text-decoration: underline; }
.gm-legal-crumbs span { font-weight: 600; color: #0a0a0a; }
.gm-legal-hero__info { display: flex; flex-direction: column; gap: 16px; padding: 24px 0; }
.gm-legal-hero__title { font-size: 40px; line-height: 48px; font-weight: 700; letter-spacing: -.6px; }
.gm-legal-hero__lead { font-size: 18px; line-height: 28px; color: #2f3137; }

/* Body (869:13998) */
.gm-legal-body { padding: 80px 0; background: #fff; }
.gm-legal-body__in { display: flex; flex-direction: column; gap: 44px; padding-top: 10px; padding-bottom: 10px; }
.gm-legal-intro { display: flex; flex-direction: column; gap: 24px; font-size: 20px; line-height: 28px; }
.gm-legal-intro__updated { font-weight: 600; color: #000; }
.gm-legal-intro__text { display: flex; flex-direction: column; gap: 28px; font-weight: 500; color: #2f3137; }
.gm-legal-intro__text b { font-weight: 600; color: #0a0a0a; }
.gm-legal-sec { display: flex; flex-direction: column; gap: 16px; }
.gm-legal-sec__title--h2 { font-size: 32px; line-height: 40px; font-weight: 700; letter-spacing: -.4px; color: #000; }
.gm-legal-sec__title--h3 { font-size: 24px; line-height: 32px; font-weight: 700; letter-spacing: -.2px; color: #000; }
.gm-legal-p { font-size: 20px; line-height: 28px; color: #2f3137; }
.gm-legal-list { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0 0 0 28px; font-size: 20px; line-height: 28px; color: #2f3137; list-style: disc; }
.gm-legal-list li::marker { color: var(--gm-color-action-primary-default, #ff7a00); }
.gm-legal-list--ol { list-style: decimal; }
.gm-legal-list--ol li::marker { font-weight: 600; }
.gm-legal a { color: inherit; text-decoration: none; }
/* Emails stand out (Figma update): bold and black wherever they appear. */
.gm-legal a[href^="mailto:"] { font-weight: 700; color: #000; }
.gm-legal a:hover { color: var(--gm-color-action-secondary-default, #0858ce); text-decoration: underline; }
.gm-legal a:focus-visible { outline: none; box-shadow: var(--gm-focus-ring); border-radius: 4px; }

/* Tables (880:6389) */
.gm-legal-table { overflow: hidden; border: 1px solid #e8ebed; border-radius: 12px; }
.gm-legal-table__row { display: grid; grid-template-columns: var(--gm-cols); }
.gm-legal-table__row + .gm-legal-table__row { border-top: 1px solid #eceff1; }
.gm-legal-table__row > span { min-width: 0; padding: 18px 20px; font-size: 16px; line-height: 26px; color: #2f3137; overflow-wrap: anywhere; }
.gm-legal-table__row > span:first-child { font-weight: 600; color: #0a0a0a; }
.gm-legal-table__head { border-bottom: 1px solid #e8ebed; }
.gm-legal-table__head + .gm-legal-table__row { border-top: 0; }
.gm-legal-table__head > span, .gm-legal-table__head > span:first-child { padding: 16px 20px; font-size: 13px; line-height: 20px; font-weight: 600; color: #62676c; }

@media (max-width: 900px) {
	.gm-legal-hero { padding: 40px 0 16px; }
	.gm-legal-hero__title { font-size: 32px; line-height: 40px; }
	.gm-legal-hero__lead { font-size: 16px; line-height: 24px; }
	.gm-legal-body { padding: 40px 0 56px; }
	.gm-legal-body__in { gap: 36px; padding-top: 0; }
	.gm-legal-intro, .gm-legal-p, .gm-legal-list { font-size: 17px; line-height: 26px; }
	.gm-legal-intro__text { gap: 18px; }
	.gm-legal-sec__title--h2 { font-size: 26px; line-height: 34px; }
	.gm-legal-sec__title--h3 { font-size: 21px; line-height: 28px; }
	/* Tables become one card per row, each value labelled by its column. */
	.gm-legal-table__head { display: none; }
	.gm-legal-table__row { grid-template-columns: minmax(0, 1fr); padding: 14px 16px; row-gap: 6px; }
	.gm-legal-table__row > span { padding: 0; }
	.gm-legal-table__row > span[data-label]::before { content: attr(data-label); display: block; font-size: 12px; line-height: 18px; font-weight: 600; color: #62676c; }
	.gm-legal-table--plain .gm-legal-table__row { row-gap: 2px; }
}
/* In-text links to other pages (Terms → Refund & Return policy, Privacy Policy). */
.gm-legal a.gm-legal-link { font-weight: 600; color: #0a0a0a; text-decoration: underline; text-decoration-thickness: from-font; text-underline-offset: 3px; }
.gm-legal a.gm-legal-link:hover { color: var(--gm-color-action-secondary-default, #0858ce); }

/* Related articles (Figma 1298:16184, client 2026-10-21): rows show the title; hover/focus adds a light grey background and the arrow. */
.gm-legal-related { display: flex; flex-direction: column; gap: 22px; margin-top: 4px; }
.gm-legal-related__h { margin: 0; font-size: 32px; line-height: 40px; font-weight: 700; letter-spacing: -.4px; color: var(--gm-color-text-primary, #0a0a0a); }
.gm-legal-related__list { display: flex; flex-direction: column; width: 572px; max-width: 100%; margin: 0; padding: 0; list-style: none; }
.gm-legal-related__link {
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	margin: 0 -12px; padding: 12px; border-radius: 8px;
	font-size: 20px; line-height: 28px; font-weight: 600; color: var(--gm-color-text-secondary, #454a4f); text-decoration: none;
	transition: background-color var(--gm-dur-fast, .15s) ease;
}
.gm-legal-related__link img { flex: none; opacity: 0; transform: translateX(-4px); transition: opacity var(--gm-dur-fast, .15s) ease, transform var(--gm-dur-fast, .15s) ease; }
.gm-legal a.gm-legal-related__link:hover, .gm-legal a.gm-legal-related__link:focus-visible { background: #f3f4f5; color: var(--gm-color-text-secondary, #454a4f); text-decoration: none; } /* Not the article links' underline/blue. */
.gm-legal a.gm-legal-related__link:focus-visible { border-radius: 8px; }
.gm-legal-related__link:hover img, .gm-legal-related__link:focus-visible img { opacity: 1; transform: none; }
.gm-legal-related__link:focus-visible { outline: none; box-shadow: var(--gm-focus-ring); }
@media (hover: none) { .gm-legal-related__link img { opacity: 1; transform: none; } } /* Touch screens can't hover: the arrow always shows. */
@media (max-width: 767px) {
	.gm-legal-related__h { font-size: 24px; line-height: 32px; }
	.gm-legal-related__link { font-size: 18px; line-height: 26px; }
}
@media (prefers-reduced-motion: reduce) { .gm-legal-related__link, .gm-legal-related__link img { transition: none; } }
.gm-legal-cta { margin: 8px 0 0; } /* QA-059: article button (Guaranteed by GlobeMarket). */
