/* ==========================================================================
   Kachingo — stylesheet
   Order: tokens -> reset -> a11y -> chrome -> components -> utilities
   Scales: TYPO-07 (airy), SPACE-08 (even decimal), CONT-02, BP-05, GEO-10
   ========================================================================== */

/* --------------------------------------------------------------- tokens */
:root {
	/* palette */
	--t-lead: #8602e5;
	--t-vivid: #a257e1;
	--t-accent-strong: #8e32d7;
	--t-ground: #060606;
	--t-bg-elevated: #15101d;
	--t-letters: #FFFFFF;
	--t-soft-text: #c0c0c0;
	--t-border: #2c2437;
	--t-rule-bold: #453a55;
	--t-blend-a: #dbbff3;
	--t-blend-b: #b77ce5;
	--t-notice: #cc2936;

	/* spacing — SPACE-08 */
	--s-1: 5px;
	--s-2: 10px;
	--s-3: 15px;
	--s-4: 25px;
	--s-5: 40px;
	--s-6: 60px;
	--s-7: 90px;
	--s-8: 140px;

	/* geometry — GEO-10 */
	--r-stadium: 9999px;
	--r-orb: 50%;
	--r-1: 0;
	--r-2: 0;
	--r-3: 4px;
	--r-4: 6px;
	--r-5: 10px;
	--r-6: 14px;
	--r-7: 18px;
	--r-8: 24px;
	--b-light: 1px;
	--b-medium: 4px;
	--b-thick: 6px;
	--d-1: none;
	--d-2: none;
	--d-3: none;
	--d-4: 0 0 0 1px rgba(0, 0, 0, 0.06);
	--d-5: 0 0 0 2px rgba(0, 0, 0, 0.10), 0 8px 24px rgba(0, 0, 0, 0.10);
	--d-6: 0 12px 34px rgba(0, 0, 0, 0.34);
	--d-7: 0 18px 46px rgba(0, 0, 0, 0.42);
	--d-8: 0 26px 62px rgba(0, 0, 0, 0.5);

	/* type — TYPO-07 */
	--f-title: "Kachingo Display", "Trebuchet MS", system-ui, sans-serif;
	--f-reading: "Kachingo Text", "Segoe UI", system-ui, sans-serif;
	--z-xxl: clamp(30px, 3.6vw, 48px);
	--z-h2: clamp(25px, 2.6vw, 36px);
	--z-display-3: clamp(21px, 1.8vw, 26px);
	--z-sub-2: 21px;
	--z-h5: 18px;
	--z-h6: 16px;
	--z-normal: 19px;
	--z-small: 16px;
	--z-legal: 14px;
	--l-tight: 1.2;
	--l-default: 1.7;
	--l-relaxed: 2.0;
	--w-book: 400;
	--w-demi: 500;
	--w-black: 600;
	--e-snug: -0.01em;
	--e-regular: 0;
	--e-loose: 0.02em;

	/* motion */
	--t-brisk: 151ms;
	--t-mid: 260ms;
	--t-long: 462ms;
	--x-settle: cubic-bezier(0.2, 0.68, 0.44, 1);
	--x-take-off: cubic-bezier(0.52, 0.09, 0.57, 1);
	--x-smooth: cubic-bezier(0.52, 0.09, 0.57, 1);
	--x-pop: cubic-bezier(0.32, 1.55, 0.62, 0.95);

	/* containers — CONT-02 */
	--v-page: 1320px;
	--v-column: 1320px;
	--v-narrow: 460px;
	--v-padding-desktop: 40px;
	--v-edge-mid: 24px;
	--v-pad-sm: 16px;

	/* chrome */
	--h-size-desktop: 60px;
	--h-size-mobile: 56px;
	--sec-y: 46px;
}

/* self-hosted faces — no third-party host is contacted */
@font-face {
	font-family: "Kachingo Display";
	src: url("/typeface/rbt-700.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Kachingo Display";
	src: url("/typeface/rbt-500.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Kachingo Text";
	src: url("/typeface/itr-400.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Kachingo Text";
	src: url("/typeface/itr-600.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

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

html,
body {
	overflow-x: clip;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--t-ground);
	color: var(--t-letters);
	font-family: var(--f-reading);
	font-size: var(--z-normal);
	font-weight: var(--w-book);
	line-height: var(--l-relaxed);
	letter-spacing: var(--e-regular);
	-webkit-font-smoothing: antialiased;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.page-main {
	flex: 1 0 auto;
	display: block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	overflow-wrap: anywhere;
	margin: 0;
}

h1 {
	font-family: var(--f-title);
	font-size: var(--z-xxl);
	font-weight: var(--w-black);
	line-height: var(--l-tight);
	letter-spacing: var(--e-snug);
	color: var(--t-letters);
}

h2 {
	font-family: var(--f-title);
	font-size: var(--z-h2);
	font-weight: var(--w-black);
	line-height: var(--l-tight);
	letter-spacing: var(--e-snug);
	color: var(--t-letters);
	margin-block: 40px var(--s-4);
}

h3 {
	font-family: var(--f-reading);
	font-size: var(--z-display-3);
	font-weight: var(--w-black);
	line-height: var(--l-tight);
	color: var(--t-letters);
}

h4 {
	font-family: var(--f-reading);
	font-size: var(--z-sub-2);
	font-weight: var(--w-black);
	color: var(--t-letters);
}

h5,
h6 {
	font-family: var(--f-reading);
	font-weight: var(--w-demi);
	color: var(--t-letters);
}

p {
	margin-block: 0 var(--s-4);
}

img {
	max-width: 100%;
	height: auto;
}

svg {
	fill: currentColor;
}

table {
	border-collapse: collapse;
}

button,
input,
textarea {
	font: inherit;
}

/* shared section frame — every .*-core carries the same max-width */
.dimig-core,
.zagugi-core,
.vamiva-core,
.rusemyz-core,
.zomu-core,
.kyse-core,
.zosavo-core,
.vanamo-core,
.vanamo-rail-core,
.mivin-core,
.baxevel-core,
.navi-core,
.supyzax-core,
.xuto-core,
.rebeve-core {
	width: 100%;
	max-width: calc(var(--v-page) + 2 * var(--v-padding-desktop));
	margin-inline: auto;
	padding-inline: var(--v-padding-desktop);
	display: block;
}

.dimig,
.zagugi,
.vamiva,
.rusemyz,
.zomu,
.kyse,
.zosavo,
.vanamo,
.mivin,
.baxevel,
.navi,
.supyzax {
	padding-block: var(--sec-y);
	display: block;
}

/* --------------------------------------------------------------- a11y */
.skip-href {
	position: absolute;
	inset-inline-start: var(--s-3);
	background: var(--t-vivid);
	color: var(--t-ground);
	padding: var(--s-2) var(--s-4);
	border-radius: var(--r-3);
	font-weight: var(--w-black);
	z-index: 400;
	text-decoration: none;
}

.skip-href:not(:focus) {
	top: -200px !important;
}

.skip-href:focus {
	top: var(--s-3);
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

:focus-visible {
	outline: 3px solid var(--t-blend-b);
	outline-offset: 2px;
}

/* --------------------------------------------------------- rg-banner RG-04 */
.rg-banner {
	margin: 0;
	background: #120c1a;
	color: var(--t-letters);
	border-block-end: 3px solid var(--t-notice);
	display: block;
	text-align: center;
	padding: var(--s-2) var(--s-3);
	font-size: var(--z-legal);
	line-height: 1.45;
}

.rg-banner-href {
	color: var(--t-letters);
	background: #120c1a;
	text-decoration: underline;
	text-decoration-color: var(--t-notice);
	text-underline-offset: 3px;
	text-decoration-thickness: 2px;
}

.rg-banner-href:hover {
	color: var(--t-blend-a);
	background: #120c1a;
}

/* ------------------------------------------------------- header HEAD-BURGER */
.fusufup {
	position: sticky;
	top: 0;
	z-index: 120;
	background: #0b0810;
	color: var(--t-letters);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.55);
	transition: box-shadow var(--t-mid) var(--x-settle);
}

.fusufup-shell {
	height: 60px;
	max-width: 1440px;
	margin-inline: auto;
	padding-inline: var(--s-4);
	display: flex;
	align-items: center;
	gap: var(--s-3);
	position: relative;
	transition: height var(--t-mid) var(--x-settle);
}

.fusufup.is-shrunk .fusufup-shell {
	height: 50px;
}

.fusufup-mark {
	order: 1;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(162, 87, 225, 0.12);
	border: var(--b-light) solid var(--t-border);
	border-radius: var(--r-stadium);
	padding: 3px 18px;
	line-height: 0;
}

.fusufup-mark img {
	height: 40px;
	width: auto;
	flex-shrink: 0;
	display: block;
	transition: height var(--t-mid) var(--x-settle);
}

.fusufup.is-shrunk .fusufup-mark img {
	height: 30px;
}

.fusufup-controls {
	order: 2;
	margin-inline-start: auto;
	display: flex;
	align-items: center;
	gap: var(--s-3);
}

.fusufup-quiet-key {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding-inline: var(--s-4);
	border: var(--b-light) solid var(--t-rule-bold);
	border-radius: var(--r-4);
	background: #0b0810;
	color: var(--t-letters);
	font-family: var(--f-title);
	font-size: var(--z-legal);
	font-weight: var(--w-demi);
	text-decoration: none;
	white-space: nowrap;
	flex-shrink: 0;
	transition: background var(--t-brisk) var(--x-settle), color var(--t-brisk) var(--x-settle);
}

.fusufup-quiet-key:hover {
	background: var(--t-letters);
	color: #0b0810;
}

.fusufup-menu-knob {
	order: 3;
	flex-shrink: 0;
	width: 46px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #0b0810;
	color: var(--t-letters);
	border: 0;
	border-radius: var(--r-4);
	cursor: pointer;
	padding: 0;
}

.fusufup-lines {
	position: relative;
	display: block;
	width: 22px;
	height: 2px;
	background: var(--t-letters);
	border-radius: var(--r-stadium);
}

.fusufup-lines::before,
.fusufup-lines::after {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	width: 22px;
	height: 2px;
	background: var(--t-letters);
	border-radius: var(--r-stadium);
	transition: transform var(--t-brisk) var(--x-settle);
}

.fusufup-lines::before {
	top: -7px;
}

.fusufup-lines::after {
	top: 7px;
}

.fusufup-menu-knob[aria-expanded="true"] .fusufup-lines::before {
	transform: translateY(7px);
}

.fusufup-menu-knob[aria-expanded="true"] .fusufup-lines::after {
	transform: translateY(-7px);
}

.fusufup-pane {
	display: none;
	position: absolute;
	top: 100%;
	inset-inline-end: 0;
	width: min(320px, 100vw);
	max-height: calc(100vh - 120px);
	overflow-y: auto;
	background: #120c1a;
	border: var(--b-light) solid var(--t-border);
	border-radius: var(--r-5);
	box-shadow: var(--d-7);
	padding: var(--s-3);
	z-index: 130;
}

.fusufup-pane.is-open {
	display: block;
}

.fusufup-routes {
	display: block;
}

.fusufup-series {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.fusufup-node {
	display: block;
}

.fusufup-routes-href {
	display: block;
	padding: var(--s-2) var(--s-3);
	border-radius: var(--r-3);
	background: #120c1a;
	color: var(--t-letters);
	font-size: var(--z-small);
	font-weight: var(--w-demi);
	text-decoration: none;
	white-space: nowrap;
	transition: background var(--t-brisk) var(--x-settle), color var(--t-brisk) var(--x-settle);
}

.fusufup-routes-href:hover {
	background: var(--t-accent-strong);
	color: var(--t-letters);
}

.fusufup-routes-href[aria-current="page"] {
	background: var(--t-lead);
	color: var(--t-letters);
	font-weight: var(--w-black);
}

/* ------------------------------------------------------ breadcrumbs BREAD-04 */
.rebeve {
	display: block;
	padding-block: var(--s-4) 0;
}

.rebeve-core {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--s-1);
}

.rebeve-step {
	display: inline-flex;
	align-items: baseline;
	gap: var(--s-1);
}

.rebeve-digit {
	font-family: var(--f-title);
	font-weight: var(--w-black);
	font-size: var(--z-h6);
	color: var(--t-vivid);
	background: var(--t-ground);
}

.rebeve-href,
.rebeve-now {
	font-family: var(--f-reading);
	font-size: var(--z-small);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	background: var(--t-ground);
}

.rebeve-href {
	color: var(--t-soft-text);
	text-decoration: none;
}

.rebeve-href:hover {
	color: var(--t-letters);
	background: var(--t-ground);
}

.rebeve-now {
	color: var(--t-letters);
}

.rebeve-gap {
	color: #6b6b6b;
	background: var(--t-ground);
	margin-inline: var(--s-3);
}

/* ----------------------------------------------------------- hero HERO-05 */
.dimig {
	background: var(--t-ground);
	color: var(--t-letters);
}

.dimig-frame {
	border: var(--b-medium) solid var(--t-letters);
	outline: var(--b-light) solid var(--t-letters);
	outline-offset: 8px;
	background: var(--t-ground);
	padding: var(--s-7) var(--s-6);
	display: block;
}

.dimig-matter {
	display: block;
}

.dimig-chip {
	display: inline-block;
	font-size: var(--z-small);
	font-style: italic;
	color: var(--t-blend-b);
	background: var(--t-ground);
	margin-block-end: var(--s-3);
}

.dimig-rule {
	width: 80px;
	height: 1px;
	border: 0;
	background: var(--t-vivid);
	margin: var(--s-4) 0;
}

.dimig-sub {
	font-size: var(--z-h5);
	font-family: var(--f-reading);
	line-height: var(--l-default);
	color: var(--t-soft-text);
	background: var(--t-ground);
	margin-block-end: var(--s-5);
}

.dimig-controls {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--s-3);
}

.dimig-tag {
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-ground);
	display: block;
}

/* ---------------------------------------------------- page header PHEAD-05 */
.zagugi {
	background: var(--t-ground);
	color: var(--t-letters);
	padding-block: var(--s-6) var(--sec-y);
}

.zagugi-matter {
	display: block;
	border-block-end: var(--b-light) solid var(--t-border);
	padding-block-end: var(--s-5);
}

.zagugi-chip {
	display: inline-block;
	font-size: var(--z-legal);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	color: var(--t-blend-b);
	background: var(--t-ground);
	margin-block-end: var(--s-2);
}

.zagugi-title {
	margin-block-end: var(--s-4);
}

.zagugi-sub {
	font-size: var(--z-h5);
	color: var(--t-soft-text);
	background: var(--t-ground);
	line-height: var(--l-default);
	margin-block-end: var(--s-4);
}

.zagugi-controls {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--s-2);
}

.zagugi-tag {
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-ground);
	display: block;
}

/* ---------------------------------------------------------- prose PROSE-22 */
.vamiva {
	background: var(--t-ground);
	color: var(--t-letters);
}

.vamiva-core h2 {
	margin-block: 40px var(--s-3);
}

.vamiva-core h2:first-child {
	margin-block-start: 0;
}

.vamiva-top {
	margin-block: var(--s-4) var(--s-2);
}

.vamiva-core p {
	margin-block: 0;
	text-indent: 2.2em;
	color: var(--t-soft-text);
	background: var(--t-ground);
	line-height: var(--l-relaxed);
}

.vamiva-lede {
	text-indent: 0 !important;
}

.vamiva-core p a {
	color: var(--t-blend-b);
	background: var(--t-ground);
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: background var(--t-brisk) var(--x-settle), color var(--t-brisk) var(--x-settle);
}

.vamiva-core p a:hover {
	color: var(--t-ground);
	background: var(--t-blend-a);
}

.vamiva-series {
	margin-block: var(--s-3);
	padding-inline-start: var(--s-4);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

.vamiva-series .vamiva-node {
	margin-block-end: var(--s-2);
	color: var(--t-soft-text);
	background: var(--t-ground);
	line-height: var(--l-default);
}

.vamiva-figure {
	margin: var(--s-5) 0;
	display: block;
	align-self: flex-start;
	background: var(--t-bg-elevated);
	border: var(--b-light) solid var(--t-border);
	border-radius: var(--r-5);
	padding: var(--s-3);
	max-width: 100%;
}

.vamiva-figure--context {
	max-width: 100%;
}

/* a portrait or square stretched across 1240px becomes a thin crop band */
.vamiva-figure--tall {
	max-width: 440px;
	margin-inline: auto;
}

.vamiva-figure--tall .vamiva-art {
	max-height: 56vh;
}

.vamiva-figure--detail {
	max-width: 420px;
	float: inline-end;
	margin-inline-start: var(--s-5);
}

.vamiva-art {
	display: block;
	width: 100%;
	height: auto;
	max-height: 52vh;
	object-fit: cover;
	border-radius: var(--r-4);
	border: var(--b-light) solid var(--t-border);
}

.vamiva-cap {
	display: block;
	margin-block-start: var(--s-2);
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-bg-elevated);
	line-height: 1.5;
	text-indent: 0;
}

/* ------------------------------------------------------ items grid GRID-05 */
.rusemyz {
	background: var(--t-ground);
	color: var(--t-letters);
}

.rusemyz-lead-brick {
	background: var(--t-lead);
	color: var(--t-letters);
	border-radius: var(--r-5);
	padding: var(--s-6);
	margin-block-end: var(--s-6);
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 320px);
	gap: var(--s-6);
	align-items: center;
}

.rusemyz-lead-matter {
	display: block;
	background: var(--t-lead);
	color: var(--t-letters);
}

.rusemyz-lead-glyph {
	display: inline-flex;
	width: 46px;
	height: 46px;
	color: var(--t-letters);
	background: var(--t-lead);
	margin-block-end: var(--s-2);
}

.rusemyz-lead-glyph svg {
	width: 100%;
	height: 100%;
}

.rusemyz-lead-top {
	font-family: var(--f-title);
	font-size: var(--z-h2);
	font-weight: var(--w-black);
	line-height: var(--l-tight);
	color: var(--t-letters);
	background: var(--t-lead);
	margin-block-end: var(--s-3);
}

.rusemyz-lead-line {
	font-size: var(--z-h5);
	line-height: var(--l-default);
	color: #f1e6ff;
	background: var(--t-lead);
}

.rusemyz-lead-controls {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--s-2);
	background: var(--t-lead);
}

.rusemyz-tag {
	display: block;
	font-size: var(--z-legal);
	color: #f1e6ff;
	background: var(--t-lead);
	line-height: 1.45;
}

.rusemyz-stack {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--s-5);
}

.rusemyz-brick {
	border-block-start: 2px solid var(--t-vivid);
	background: var(--t-ground);
	color: var(--t-letters);
	padding: var(--s-4);
	display: block;
	transition: transform var(--t-mid) var(--x-settle);
}

.rusemyz-brick:hover {
	transform: translateY(-5px);
}

.rusemyz-glyph {
	display: inline-flex;
	width: 34px;
	height: 34px;
	color: var(--t-vivid);
	background: var(--t-ground);
	margin-block-end: var(--s-2);
}

.rusemyz-glyph svg {
	width: 100%;
	height: 100%;
}

.rusemyz-top {
	font-size: var(--z-normal);
	font-weight: var(--w-black);
	color: var(--t-letters);
	background: var(--t-ground);
	margin-block-end: var(--s-2);
}

.rusemyz-line {
	font-size: var(--z-small);
	line-height: var(--l-default);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

/* -------------------------------------------------------- reviews REV-05 */
.zomu {
	background: var(--t-ground);
	color: var(--t-letters);
}

.zomu-series {
	border-inline-start: 1px solid var(--t-vivid);
	display: block;
	padding-block-start: var(--s-3);
}

.zomu-node {
	position: relative;
	padding-inline-start: var(--s-7);
	margin-block-end: var(--s-6);
	display: block;
}

.zomu-node::before {
	content: "";
	position: absolute;
	inset-inline-start: -8px;
	top: 8px;
	width: 16px;
	height: 16px;
	background: var(--t-vivid);
	border-radius: var(--r-orb);
}

.zomu-file {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--s-3);
	font-size: var(--z-small);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

.zomu-day {
	color: var(--t-soft-text);
	background: var(--t-ground);
}

.zomu-handle {
	color: var(--t-letters);
	background: var(--t-ground);
	font-weight: var(--w-demi);
}

.zomu-handle::before {
	content: "\2022";
	color: var(--t-rule-bold);
	background: var(--t-ground);
	margin-inline-end: var(--s-3);
}

.zomu-chip {
	display: flex;
	align-items: center;
	gap: var(--s-2);
	margin-block: var(--s-1) var(--s-2);
}

.zomu-stars {
	color: var(--t-blend-b);
	background: var(--t-ground);
	letter-spacing: 2px;
	font-size: var(--z-h5);
}

.zomu-score {
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

.zomu-words {
	margin: 0;
	display: block;
}

.zomu-words p {
	margin: 0;
	font-size: var(--z-normal);
	line-height: var(--l-default);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

/* ------------------------------------------------------------- faq FAQ-04 */
.kyse {
	background: var(--t-ground);
	color: var(--t-letters);
}

.kyse-series {
	display: block;
}

.kyse-node {
	border-block-end: var(--b-light) solid var(--t-border);
	display: block;
}

.kyse-top {
	display: grid;
	grid-template-columns: 60px minmax(0, 1fr) 28px;
	align-items: start;
	gap: var(--s-2);
	padding-block: var(--s-4);
	cursor: pointer;
	list-style: none;
	background: var(--t-ground);
	color: var(--t-letters);
}

.kyse-top::-webkit-details-marker {
	display: none;
}

.kyse-digit {
	font-family: var(--f-title);
	font-weight: var(--w-black);
	font-size: var(--z-display-3);
	color: var(--t-vivid);
	background: var(--t-ground);
	align-self: start;
}

.kyse-ask {
	font-size: var(--z-sub-2);
	font-weight: var(--w-black);
	line-height: 1.35;
	color: var(--t-letters);
	background: var(--t-ground);
}

.kyse-arrow {
	width: 0;
	height: 0;
	margin-block-start: 10px;
	justify-self: end;
	border-inline: 7px solid transparent;
	border-block-start: 8px solid var(--t-vivid);
}

.kyse-node[open] .kyse-arrow {
	border-block-start: 0;
	border-block-end: 8px solid var(--t-vivid);
}

.kyse-matter {
	display: block;
	padding: 0 0 var(--s-4) 60px;
}

.kyse-matter p {
	margin: 0;
	color: var(--t-soft-text);
	background: var(--t-ground);
	line-height: var(--l-default);
}

/* ------------------------------------------------------ data table TABLE-05 */
.zosavo {
	background: var(--t-ground);
	color: var(--t-letters);
}

.zosavo-scroll {
	overflow-x: auto;
	border: var(--b-light) solid var(--t-border);
	border-radius: var(--r-4);
}

.zosavo-grid {
	width: 100%;
	min-width: 560px;
	background: var(--t-ground);
	color: var(--t-letters);
}

.zosavo-grid th {
	background: var(--t-bg-elevated);
	color: var(--t-letters);
	padding: var(--s-3);
	font-size: var(--z-legal);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	font-weight: var(--w-black);
	text-align: start;
	position: sticky;
	top: 0;
	z-index: 1;
}

.zosavo-grid td {
	padding: var(--s-2) var(--s-3);
	font-size: var(--z-small);
	line-height: 1.5;
	color: var(--t-soft-text);
	background: var(--t-ground);
	border-block-end: 1px solid rgba(255, 255, 255, 0.05);
	overflow-wrap: break-word;
}

.zosavo-file {
	background: var(--t-ground);
}

.zosavo-cap {
	display: block;
	margin-block-start: var(--s-2);
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

/* --------------------------------------------------------- cta block CTA-08 */
.vanamo {
	background: var(--t-lead);
	color: var(--t-letters);
	padding-block: var(--s-7);
	scroll-margin-top: 80px;
}

.vanamo-core {
	text-align: center;
}

.vanamo-title {
	font-family: var(--f-title);
	font-size: var(--z-xxl);
	font-weight: var(--w-black);
	text-transform: uppercase;
	letter-spacing: var(--e-snug);
	line-height: var(--l-tight);
	color: var(--t-letters);
	background: var(--t-lead);
	margin-block-end: var(--s-4);
}

.vanamo-sub {
	font-size: var(--z-h5);
	line-height: var(--l-default);
	color: #f1e6ff;
	background: var(--t-lead);
	margin-block-end: var(--s-5);
}

.vanamo-controls {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--s-3);
}

.vanamo-tag {
	display: block;
	font-size: var(--z-legal);
	color: #f1e6ff;
	background: var(--t-lead);
}

.vanamo-rail {
	display: block;
	padding-block: var(--s-5);
	background: var(--t-ground);
}

.vanamo-rail-core {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--s-4);
	background: var(--t-bg-elevated);
	border: var(--b-light) solid var(--t-border);
	border-inline-start: var(--b-medium) solid var(--t-vivid);
	border-radius: var(--r-5);
	padding-block: var(--s-4);
}

.vanamo-rail-line {
	font-size: var(--z-h5);
	font-weight: var(--w-demi);
	color: var(--t-letters);
	background: var(--t-bg-elevated);
	max-width: 620px;
}

.vanamo-rail-controls {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--s-1);
	background: var(--t-bg-elevated);
}

.vanamo-rail-tag {
	display: block;
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-bg-elevated);
}

/* ------------------------------------------------------ legal LEGAL-01 */
.mivin {
	background: var(--t-ground);
	color: var(--t-letters);
	scroll-margin-top: 80px;
}

.mivin-sub {
	font-family: var(--f-reading);
	font-size: var(--z-h5);
	line-height: var(--l-default);
	color: var(--t-letters);
	background: var(--t-ground);
	margin-block-end: var(--s-5);
}

.mivin-day {
	font-size: var(--z-legal);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	color: var(--t-soft-text);
	background: var(--t-ground);
	margin-block-end: var(--s-6);
}

.mivin-node {
	display: block;
	border-block-start: 1px solid rgba(255, 255, 255, 0.06);
	padding-block-start: var(--s-4);
}

.mivin-node:first-of-type {
	border-block-start: 0;
	padding-block-start: 0;
}

.mivin-top {
	font-family: var(--f-title);
	font-size: var(--z-display-3);
	font-weight: var(--w-black);
	color: var(--t-letters);
	background: var(--t-ground);
	margin-block: var(--s-6) var(--s-4);
}

.mivin-node p {
	font-size: var(--z-normal);
	line-height: var(--l-relaxed);
	color: var(--t-soft-text);
	background: var(--t-ground);
	margin-block-end: var(--s-4);
}

.mivin-brick {
	background: var(--t-bg-elevated);
	color: var(--t-letters);
	padding: var(--s-5);
	border-radius: var(--r-4);
	margin-block-start: var(--s-6);
}

.mivin-series {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mivin-brick .mivin-node {
	border: 0;
	padding: 0;
	margin-block-end: var(--s-3);
	color: var(--t-soft-text);
	background: var(--t-bg-elevated);
	font-size: var(--z-small);
	line-height: var(--l-default);
}

.mivin-words {
	display: block;
	padding: var(--s-4);
	background: #2a1015;
	color: var(--t-letters);
	border-inline-start: 3px solid var(--t-notice);
	border-radius: var(--r-2);
	font-size: var(--z-small);
	line-height: var(--l-default);
	margin-block-start: var(--s-6);
}

/* ------------------------------------------------------ contact form FORM-08 */
.baxevel {
	background: var(--t-ground);
	color: var(--t-letters);
}

.baxevel-brick {
	background: var(--t-bg-elevated);
	color: var(--t-letters);
	padding: var(--s-6);
	border-radius: var(--r-4);
	border: var(--b-light) solid var(--t-border);
}

.baxevel-body {
	display: block;
}

.baxevel-field {
	display: block;
	margin-block-end: var(--s-4);
}

.baxevel-chip {
	display: block;
	margin-block-end: var(--s-1);
	font-size: var(--z-small);
	font-weight: var(--w-demi);
	color: var(--t-letters);
	background: var(--t-bg-elevated);
}

.baxevel-field input,
.baxevel-field textarea {
	width: 100%;
	padding: var(--s-3);
	background: #0c0912;
	color: var(--t-letters);
	border: var(--b-light) solid var(--t-rule-bold);
	border-radius: var(--r-3);
	font-size: var(--z-small);
}

.baxevel-key {
	width: 100%;
	min-height: 72px;
	background: var(--t-vivid);
	color: #17061f;
	border: 0;
	border-radius: var(--r-4);
	font-family: var(--f-title);
	font-size: var(--z-sub-2);
	font-weight: var(--w-black);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	cursor: pointer;
	transition: background var(--t-brisk) var(--x-settle), color var(--t-brisk) var(--x-settle);
}

.baxevel-key:hover {
	background: var(--t-blend-a);
	color: #17061f;
}

.baxevel-words {
	display: block;
	margin-block-start: var(--s-4);
	padding: var(--s-4);
	background: #0f2417;
	color: var(--t-letters);
	border-radius: var(--r-3);
	font-size: var(--z-small);
}

/* ----------------------------------------------------- author card AUTH-07 */
.navi {
	background: var(--t-ground);
	color: var(--t-letters);
}

.navi-brick {
	background: var(--t-bg-elevated);
	color: var(--t-letters);
	padding: var(--s-6);
	border-radius: var(--r-4);
	border-inline-start: var(--b-medium) solid var(--t-vivid);
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	gap: var(--s-5);
	align-items: start;
}

.navi-headshot {
	display: block;
	width: 100px;
	height: 100px;
	border-radius: var(--r-orb);
	overflow: hidden;
	background: var(--t-bg-elevated);
}

.navi-headshot img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center top;
}

.navi-matter {
	display: block;
	background: var(--t-bg-elevated);
}

.navi-quote {
	display: block;
	font-family: var(--f-title);
	font-size: var(--z-xxl);
	line-height: 0.8;
	color: var(--t-vivid);
	background: var(--t-bg-elevated);
}

.navi-line {
	font-style: italic;
	font-size: var(--z-h5);
	line-height: var(--l-default);
	color: var(--t-letters);
	background: var(--t-bg-elevated);
	margin-block: var(--s-3);
}

.navi-credit {
	font-size: var(--z-small);
	letter-spacing: var(--e-loose);
	color: var(--t-soft-text);
	background: var(--t-bg-elevated);
}

.navi-role {
	color: var(--t-soft-text);
	background: var(--t-bg-elevated);
}

.navi-articles {
	display: block;
	margin-block-start: var(--s-6);
}

.navi-top {
	font-family: var(--f-title);
	font-size: var(--z-display-3);
	font-weight: var(--w-black);
	color: var(--t-letters);
	background: var(--t-ground);
	margin-block-end: var(--s-3);
}

.navi-series {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--s-2);
}

.navi-node {
	display: block;
	border-block-start: var(--b-light) solid var(--t-border);
	padding-block-start: var(--s-2);
}

.navi-node--lead {
	border-block-start: 2px solid var(--t-vivid);
}

.navi-href {
	color: var(--t-letters);
	background: var(--t-ground);
	text-decoration: none;
	font-weight: var(--w-demi);
	transition: color var(--t-brisk) var(--x-settle);
}

.navi-href:hover {
	color: var(--t-blend-a);
	background: var(--t-ground);
}

/* -------------------------------------------------- author byline BYLINE-01 */
.xuto {
	display: block;
	padding-block: var(--s-4) var(--s-6);
}

.xuto-core {
	display: flex;
	align-items: center;
	gap: var(--s-3);
	border-block-start: var(--b-light) solid var(--t-border);
	padding-block-start: var(--s-4);
}

.xuto-headshot {
	display: block;
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	border-radius: var(--r-orb);
	overflow: hidden;
	background: var(--t-ground);
}

.xuto-headshot img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center top;
}

.xuto-line {
	display: block;
}

.xuto-credit {
	margin: 0;
	font-size: var(--z-small);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

.xuto-handle {
	color: var(--t-blend-b);
	background: var(--t-ground);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.xuto-handle:hover {
	color: var(--t-blend-a);
	background: var(--t-ground);
}

.xuto-role {
	margin: 0;
	margin-block-start: var(--s-1);
	font-size: var(--z-legal);
	font-style: italic;
	color: var(--t-soft-text);
	background: var(--t-ground);
}

.xuto-day {
	display: block;
	font-size: var(--z-legal);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

/* ------------------------------------------------------ error block ERR-08 */
.supyzax {
	background: var(--t-ground);
	color: var(--t-letters);
	padding-block: var(--s-7);
}

.supyzax-chip {
	display: inline-block;
	font-family: var(--f-title);
	font-size: var(--z-h2);
	font-weight: var(--w-black);
	color: var(--t-vivid);
	background: var(--t-ground);
	letter-spacing: var(--e-loose);
}

.supyzax-title {
	max-width: var(--v-narrow);
	margin-block: var(--s-3);
}

.supyzax-sub {
	font-size: var(--z-h5);
	color: var(--t-soft-text);
	background: var(--t-ground);
	line-height: var(--l-default);
	margin-block-end: var(--s-5);
}

.supyzax-return {
	display: inline-flex;
	align-items: center;
	min-height: 48px;
	padding-inline: var(--s-5);
	background: var(--t-vivid);
	color: #17061f;
	border-radius: var(--r-4);
	font-family: var(--f-title);
	font-weight: var(--w-black);
	text-decoration: none;
	transition: background var(--t-brisk) var(--x-settle), color var(--t-brisk) var(--x-settle);
}

.supyzax-return:hover {
	background: var(--t-blend-a);
	color: #17061f;
}

.supyzax-suggestions {
	display: block;
	margin-block-start: var(--s-6);
	padding: var(--s-5);
	background: var(--t-bg-elevated);
	border-radius: var(--r-4);
}

.supyzax-top {
	font-family: var(--f-title);
	font-size: var(--z-display-3);
	font-weight: var(--w-black);
	color: var(--t-letters);
	background: var(--t-bg-elevated);
	margin-block-end: var(--s-3);
}

.supyzax-series {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: var(--s-4);
}

.supyzax-node {
	display: inline-block;
}

.supyzax-href {
	font-size: var(--z-normal);
	color: var(--t-blend-b);
	background: var(--t-bg-elevated);
	text-decoration: none;
}

.supyzax-href:hover {
	color: var(--t-blend-a);
	background: var(--t-bg-elevated);
	text-decoration: underline;
}

/* ---------------------------------------------------------- footer FOOT-06 */
.xukexon {
	background: var(--t-ground);
	color: var(--t-letters);
	border-block-start: var(--b-light) solid var(--t-border);
	padding-block: var(--s-7);
	flex-shrink: 0;
}

.xukexon-shell {
	width: 100%;
	max-width: calc(var(--v-page) + 2 * var(--v-padding-desktop));
	margin-inline: auto;
	padding-inline: var(--v-padding-desktop);
}

.xukexon-manifesto {
	display: block;
	text-align: center;
}

.xukexon-statement {
	font-family: var(--f-title);
	font-size: var(--z-h2);
	font-weight: var(--w-black);
	line-height: var(--l-tight);
	color: var(--t-letters);
	background: var(--t-ground);
	max-width: var(--v-narrow);
	margin-inline: auto;
	margin-block: 0 var(--s-4);
}

.xukexon-return {
	display: inline-block;
	font-family: var(--f-title);
	font-size: var(--z-h5);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	color: var(--t-letters);
	background: var(--t-ground);
	text-decoration: underline;
	text-underline-offset: 5px;
	transition: color var(--t-brisk) var(--x-settle);
}

.xukexon-return:hover {
	color: var(--t-blend-a);
	background: var(--t-ground);
}

.xukexon-rule {
	height: 1px;
	background: rgba(255, 255, 255, 0.1);
	margin-block: var(--s-6);
}

.xukexon-tag {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: var(--s-5);
}

.xukexon-mark {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	line-height: 0;
}

.xukexon-mark img {
	height: 34px;
	width: auto;
	display: block;
}

.xukexon-routes,
.xukexon-legal {
	display: block;
	min-width: 180px;
}

.xukexon-top {
	font-size: var(--z-legal);
	text-transform: uppercase;
	letter-spacing: var(--e-loose);
	color: var(--t-soft-text);
	background: var(--t-ground);
	margin-block-end: var(--s-2);
}

.xukexon-series {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--s-1);
}

.xukexon-node {
	display: block;
}

.xukexon-href {
	font-size: var(--z-small);
	color: var(--t-soft-text);
	background: var(--t-ground);
	text-decoration: none;
	transition: color var(--t-brisk) var(--x-settle);
}

.xukexon-href:hover {
	color: var(--t-letters);
	background: var(--t-ground);
}

.xukexon-line {
	display: block;
	flex-basis: 100%;
	font-size: var(--z-legal);
	line-height: var(--l-default);
	color: var(--t-soft-text);
	background: var(--t-ground);
}

/* ---------------------------------------------------- cookie banner COOK-15 */
.mifok {
	position: fixed;
	inset-inline-end: 0;
	inset-block-end: 0;
	width: min(360px, 100vw);
	max-height: 62vh;
	z-index: 300;
	transition: clip-path var(--t-mid) var(--x-settle), opacity var(--t-mid) var(--x-settle);
	clip-path: inset(0 0 0 0);
}

.mifok.is-gone {
	clip-path: inset(0 0 0 100%);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.mifok-sheet {
	background: var(--t-bg-elevated);
	color: var(--t-letters);
	border-inline-start: var(--b-light) solid var(--t-rule-bold);
	border-block-start: var(--b-light) solid var(--t-rule-bold);
	padding: var(--s-5);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: var(--s-4);
	max-height: 62vh;
	overflow-y: auto;
}

.mifok-words {
	margin: 0;
	font-size: var(--z-small);
	line-height: var(--l-default);
	color: var(--t-letters);
	background: var(--t-bg-elevated);
}

.mifok-controls {
	display: flex;
	flex-direction: column;
	gap: var(--s-3);
}

.mifok-confirm,
.mifok-dismiss {
	width: 100%;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-4);
	font-family: var(--f-title);
	font-weight: var(--w-black);
	font-size: var(--z-small);
	cursor: pointer;
	border: var(--b-light) solid var(--t-rule-bold);
	transition: background var(--t-brisk) var(--x-settle), color var(--t-brisk) var(--x-settle);
}

.mifok-confirm {
	background: var(--t-vivid);
	color: #17061f;
	border-color: var(--t-vivid);
}

.mifok-confirm:hover {
	background: var(--t-blend-a);
	color: #17061f;
}

.mifok-dismiss {
	background: var(--t-bg-elevated);
	color: var(--t-letters);
}

.mifok-dismiss:hover {
	background: var(--t-letters);
	color: var(--t-bg-elevated);
}

/* ----------------------------------------------------------------- motion */
[data-anim] {
	opacity: 0;
	transform: scale(0.96) translateY(18px);
	transition: opacity var(--t-long) var(--x-settle), transform var(--t-long) var(--x-settle);
}

[data-anim].has-entered {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}

	[data-anim] {
		opacity: 1;
		transform: none;
	}
}

/* --------------------------------------------------------- tablet / mobile */
@media (max-width: 1040px) {
	:root {
		--v-padding-desktop: 24px;
		--sec-y: 40px;
	}

	.rusemyz-lead-brick {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--s-4);
		padding: var(--s-5);
	}

	.dimig-frame {
		padding: var(--s-6) var(--s-5);
	}
}

@media (max-width: 720px) {
	:root {
		--v-padding-desktop: 16px;
		--sec-y: 34px;
		--z-xxl: clamp(26px, 7vw, 32px);
		--z-h2: clamp(22px, 5.6vw, 26px);
		--z-display-3: 22px;
		--z-sub-2: 19px;
		--z-h5: 17px;
		--z-h6: 15px;
		--z-normal: 18px;
		--z-small: 15px;
		--z-legal: 13px;
	}

	.fusufup-shell {
		height: 56px;
		padding-inline: var(--s-3);
		gap: var(--s-2);
	}

	.fusufup.is-shrunk .fusufup-shell {
		height: 50px;
	}

	.fusufup-mark img {
		height: 26px;
	}

	.fusufup.is-shrunk .fusufup-mark img {
		height: 24px;
	}

	.fusufup-mark {
		padding: 3px 12px;
	}

	.fusufup-quiet-key {
		padding-inline: var(--s-3);
		font-size: 12px;
	}

	.dimig-frame {
		padding: var(--s-5) var(--s-4);
		outline-offset: 5px;
	}

	.rusemyz-stack {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--s-4);
	}

	.zomu-node {
		padding-inline-start: var(--s-5);
	}

	.kyse-top {
		grid-template-columns: 34px minmax(0, 1fr) 22px;
		gap: var(--s-1);
	}

	.kyse-matter {
		padding-inline-start: 34px;
	}

	.vamiva-figure--detail {
		float: none;
		max-width: 100%;
		margin-inline-start: 0;
	}

	.navi-brick {
		grid-template-columns: minmax(0, 1fr);
		padding: var(--s-4);
	}

	.baxevel-brick {
		padding: var(--s-4);
	}

	.xukexon-tag {
		flex-direction: column;
		gap: var(--s-4);
	}

	.mifok {
		width: 100vw;
		max-height: none;
	}

	.mifok-sheet {
		padding: 12px 14px !important;
		gap: 8px !important;
		font-size: 13px !important;
		line-height: 1.35 !important;
		max-height: 46vh;
	}

	.mifok-words {
		font-size: 13px !important;
		line-height: 1.35 !important;
	}

	.mifok-controls {
		flex-direction: row;
		gap: 8px !important;
	}

	.mifok-confirm,
	.mifok-dismiss {
		padding: 8px 14px !important;
		font-size: 12px !important;
		min-height: 40px !important;
	}

	.vanamo {
		padding-block: var(--s-6);
	}

	.vanamo-rail-core {
		padding: var(--s-4);
	}

	.supyzax {
		padding-block: var(--s-6);
	}

	.xukexon {
		padding-block: var(--s-6);
	}
}

@media (max-width: 460px) {
	.fusufup-quiet-key {
		padding-inline: var(--s-2);
	}

	.rebeve-gap {
		margin-inline: var(--s-2);
	}

	.zosavo-grid {
		min-width: 520px;
	}
}

/* =========================================================== offer buttons
   Geometry, colour and the looping stamp come from scripts/cta-style.mjs
   (green #16A34A, keyframes jatona-ripple). Height raised to the 48px tap
   floor required by TZ/12 §7. */
.fusufup-prompt-key,
.dimig-prompt-key,
.zagugi-prompt-key,
.rusemyz-prompt-key,
.vanamo-prompt-key,
.vanamo-rail-key {
	font-family: var(--f-title);
	letter-spacing: var(--e-loose);
	text-align: center;
	max-width: 100%;
}

.jatona-pick {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 var(--s-4);
	min-height: 48px;
	border-radius: var(--r-4);
	border: var(--b-light) solid var(--t-rule-bold);
	font-size: var(--z-legal);
	font-weight: var(--w-demi);
}

.jatona-pick {
	background: #16A34A;
	color: #060606;
	text-decoration: none;
	transition: background 0.14s cubic-bezier(0.2, 0.7, 0.3, 1);
}

.jatona-pick.jatona-pick {
	color: #060606;
	text-decoration: none;
}

.jatona-pick:hover {
	background: #15803D;
	color: #FFFFFF;
	animation: none;
}

.jatona-pick.jatona-pick:hover {
	color: #FFFFFF;
	text-decoration: none;
}

.jatona-pick:hover::after {
	animation: none;
}

.jatona-pick:active {
	background: #166534;
	color: #FFFFFF;
}

.jatona-pick:focus-visible {
	outline: 3px solid #FFFFFF;
	outline-offset: 3px;
}

.jatona-pick {
	animation: jatona-ripple 1.01s ease-in-out infinite;
}

@keyframes jatona-ripple {
	0% {
		transform: translate(0, 0);
	}

	13.861% {
		transform: translate(2px, 2px);
	}

	55.446%,
	100% {
		transform: translate(0, 0);
	}
}

@media (prefers-reduced-motion: reduce) {

	.jatona-pick,
	.jatona-pick::after {
		animation: none !important;
		transition: none !important;
	}
}

/* phase-shift so two buttons on one page never pulse in unison */
.rusemyz-prompt-key.jatona-pick {
	animation-delay: -0.31s;
}

.vanamo-rail-key.jatona-pick {
	animation-delay: -0.62s;
}

.vanamo-prompt-key.jatona-pick {
	animation-delay: -0.83s;
}

/* green on the purple panels needs an edge to read as a button */
.vanamo-controls .jatona-pick,
.rusemyz-lead-controls .jatona-pick {
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.92);
	border-color: #0d5c2b;
}

.fusufup-prompt-key.jatona-pick {
	min-height: 44px;
	white-space: nowrap;
	flex-shrink: 0;
}

/* --------------------------------- header row wraps before the button clips */
@media (max-width: 640px) {
	.fusufup-shell {
		flex-wrap: wrap;
		height: auto;
		min-height: 56px;
		padding-block: var(--s-2);
		row-gap: var(--s-2);
	}

	.fusufup.is-shrunk .fusufup-shell {
		height: auto;
		min-height: 52px;
	}

	.fusufup-controls {
		order: 4;
		flex-basis: 100%;
		margin-inline-start: 0;
	}

	.fusufup-prompt-key.jatona-pick,
	.fusufup-quiet-key {
		width: 100%;
	}

	.fusufup-menu-knob {
		order: 2;
		margin-inline-start: auto;
	}

	.fusufup-pane {
		width: min(320px, calc(100vw - 20px));
	}
}

/* ------------------------------------------- offer plugs inside long blocks */
.vamiva + .vamiva {
	padding-block-start: 0;
}

.vamiva + .vanamo-rail,
.vanamo-rail + .vamiva {
	padding-block-start: var(--s-4);
}

.rusemyz-plug,
.zomu-plug {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: var(--s-3);
	background: var(--t-bg-elevated);
	color: var(--t-letters);
	border: var(--b-light) solid var(--t-border);
	border-inline-start: var(--b-medium) solid #16A34A;
	border-radius: var(--r-5);
	padding: var(--s-4);
}

.zomu-plug {
	margin-block-end: var(--s-6);
	margin-inline-start: var(--s-7);
}

.rusemyz-plug-line,
.zomu-plug-line {
	display: block;
	font-family: var(--f-title);
	font-size: var(--z-sub-2);
	font-weight: var(--w-black);
	line-height: var(--l-tight);
	color: var(--t-letters);
	background: var(--t-bg-elevated);
}

.rusemyz-plug-key,
.zomu-plug-key {
	font-family: var(--f-title);
	letter-spacing: var(--e-loose);
	text-align: center;
	max-width: 100%;
}

.rusemyz-plug-key.jatona-pick {
	animation-delay: -0.17s;
}

.zomu-plug-key.jatona-pick {
	animation-delay: -0.46s;
}

@media (max-width: 720px) {

	.zomu-plug {
		margin-inline-start: var(--s-5);
	}
}

/* nojs guard 28.09.2026: без JS контент виден */
html.no-js [data-anim]{opacity:1!important;transform:none!important;visibility:visible!important;clip-path:none!important}
