/*
 * Memelio Magija — vidinių puslapių sekcijos.
 */

/* =====================================================================
 * Paslaugų eilutė
 *
 * Kairėje – numeris ir tekstas, dešinėje – vaizdų grupė. Kiekviena
 * paslauga turi savo akcentą, todėl puslapis nėra vienspalvis.
 * ================================================================== */

.mm-srv {
	display: grid;
	grid-template-columns: minmax(280px, 4fr) minmax(0, 8fr);
	gap: 0;
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
	background: var(--mm-surface);
	scroll-margin-top: calc(var(--mm-header-h) + var(--mm-5));
}

.mm-srv + .mm-srv { margin-top: var(--mm-5); }

.mm-srv__text {
	display: flex;
	flex-direction: column;
	gap: var(--mm-4);
	padding: clamp(var(--mm-5), 2.6vw, var(--mm-7));
	border-right: 1px solid var(--mm-line);
}

.mm-srv__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--mm-4);
}

.mm-srv__title { font-size: var(--mm-fs-h3); }

.mm-srv__mark {
	flex: none;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border: 1px solid color-mix(in srgb, var(--mm-accent) 40%, transparent);
	border-radius: var(--mm-radius);
	color: var(--mm-accent);
	background: color-mix(in srgb, var(--mm-accent) 8%, transparent);
}

.mm-srv__text > .mm-index { order: -1; }

.mm-srv__desc { font-size: var(--mm-fs-sm); line-height: 1.7; color: var(--mm-text-3); }

.mm-srv__text .mm-arrow-link { margin-top: auto; color: var(--mm-accent); }

/* Vaizdų grupė dešinėje. */
.mm-srv__media {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) repeat(3, minmax(0, 1fr));
	min-height: 300px;
}

.mm-srv__media--pair { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mm-srv__media--trio { grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, 1fr)); }

.mm-srv__shot {
	position: relative;
	overflow: hidden;
	border-right: 1px solid var(--mm-line);
	background: var(--mm-surface-2);
}

.mm-srv__shot:last-child { border-right: 0; }

.mm-srv__shot img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 900ms var(--mm-ease-out-expo), filter var(--mm-dur-slow) var(--mm-ease);
	filter: brightness(0.86);
}

.mm-srv__shot:hover img { transform: scale(1.06); filter: brightness(1.02); }

@media (max-width: 1020px) {
	.mm-srv { grid-template-columns: minmax(0, 1fr); }
	.mm-srv__text { border-right: 0; border-bottom: 1px solid var(--mm-line); }
	.mm-srv__media { min-height: 220px; }
}

@media (max-width: 620px) {
	.mm-srv__media,
	.mm-srv__media--trio { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mm-srv__shot:nth-child(n + 3) { border-top: 1px solid var(--mm-line); }
	.mm-srv__shot:nth-child(2n) { border-right: 0; }
}

/* =====================================================================
 * Medžiagų kortelės
 * ================================================================== */

.mm-mat {
	display: flex;
	flex-direction: column;
	background: var(--mm-surface);
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
	transition: border-color var(--mm-dur) var(--mm-ease), transform var(--mm-dur) var(--mm-ease-out-expo);
}

.mm-mat:hover {
	transform: translateY(-4px);
	border-color: color-mix(in srgb, var(--mm-accent) 50%, var(--mm-line));
}

.mm-mat__head { padding: var(--mm-5) var(--mm-5) 0; }

.mm-mat__name {
	font-family: var(--mm-font-display);
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	text-transform: none;
	color: var(--mm-accent);
	line-height: 1.1;
}

.mm-mat__brand {
	display: block;
	font-size: 0.6875rem;
	letter-spacing: 0.1em;
	color: var(--mm-text-4);
	margin-top: 2px;
}

.mm-mat__media {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: radial-gradient(80% 60% at 50% 100%, color-mix(in srgb, var(--mm-accent) 16%, transparent), transparent 70%);
}

.mm-mat__media img { width: 100%; height: 100%; object-fit: contain; padding: var(--mm-4); }

.mm-mat__body {
	display: flex;
	flex-direction: column;
	gap: var(--mm-5);
	padding: 0 var(--mm-5) var(--mm-5);
	flex: 1;
}

.mm-mat__desc { font-size: 0.8125rem; line-height: 1.6; color: var(--mm-text-3); }

.mm-mat__foot { margin-top: auto; }

/* --- Kompaktiška FDM kortelė ---------------------------------------- */

.mm-fil {
	display: flex;
	flex-direction: column;
	gap: var(--mm-3);
	padding: var(--mm-5);
	background: var(--mm-surface);
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	transition: border-color var(--mm-dur) var(--mm-ease), transform var(--mm-dur) var(--mm-ease-out-expo);
}

.mm-fil:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--mm-accent) 50%, var(--mm-line)); }

.mm-fil__media {
	aspect-ratio: 3 / 2;
	border-radius: var(--mm-radius-sm);
	overflow: hidden;
	background: radial-gradient(70% 60% at 50% 100%, color-mix(in srgb, var(--mm-accent) 18%, transparent), var(--mm-surface-2));
}

.mm-fil__media img { width: 100%; height: 100%; object-fit: contain; padding: var(--mm-3); }

.mm-fil__name {
	font-family: var(--mm-font-display);
	font-size: 1.125rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	text-transform: none;
	color: var(--mm-accent);
}

.mm-fil__desc { font-size: 0.8125rem; line-height: 1.55; color: var(--mm-text-3); }

.mm-fil__tags { display: flex; gap: var(--mm-2); margin-top: auto; padding-top: var(--mm-2); color: var(--mm-text-4); }
.mm-fil__tags .mm-icon { width: 15px; height: 15px; }

/* Savybių legenda. */
.mm-legend {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mm-4) var(--mm-6);
	padding-top: var(--mm-5);
	margin-top: var(--mm-5);
	border-top: 1px solid var(--mm-line);
}

.mm-legend__item {
	display: flex;
	align-items: center;
	gap: var(--mm-2);
	font-size: 0.6875rem;
	letter-spacing: 0.04em;
	color: var(--mm-text-4);
}

.mm-legend__item .mm-icon { width: 15px; height: 15px; color: var(--mm-text-3); }

/* =====================================================================
 * Darbų galerija
 * ================================================================== */

.mm-gallerybar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--mm-4);
	padding-block: var(--mm-3);
	border-block: 1px solid var(--mm-line);
	margin-bottom: var(--mm-7);
	background: var(--mm-bg-alt);
}

.mm-gallerybar .mm-filters { flex: 1; }
.mm-gallerybar .mm-select { width: auto; min-width: 180px; padding-block: 0.625rem; }

.mm-gallerygrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
	gap: var(--mm-4);
}

/* Pirmos trys plytelės platesnės — galerija atrodo gyviau. */
.mm-gallerygrid > *:nth-child(-n + 3) { grid-row: span 1; }

.mm-empty {
	padding: var(--mm-9) var(--mm-5);
	text-align: center;
	border: 1px dashed var(--mm-line-strong);
	border-radius: var(--mm-radius);
	color: var(--mm-text-3);
	font-size: var(--mm-fs-sm);
}

/* =====================================================================
 * Apie mus — laiko juosta
 * ================================================================== */

.mm-timeline {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--mm-7);
	padding-left: var(--mm-8);
}

.mm-timeline::before {
	content: "";
	position: absolute;
	top: 8px;
	bottom: 8px;
	left: 22px;
	width: 1px;
	background: linear-gradient(180deg, var(--mm-red), color-mix(in srgb, var(--mm-red) 20%, transparent));
}

.mm-tl {
	position: relative;
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr);
	gap: var(--mm-5);
	align-items: start;
}

.mm-tl__mark {
	position: absolute;
	left: calc(var(--mm-8) * -1);
	top: 0;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border: 1px solid color-mix(in srgb, var(--mm-red) 45%, transparent);
	border-radius: var(--mm-radius);
	background: var(--mm-bg);
	color: var(--mm-red);
}

.mm-tl__year {
	font-family: var(--mm-font-display);
	font-size: 1.5rem;
	font-weight: 300;
	color: var(--mm-text);
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.mm-tl__title {
	font-family: var(--mm-font-body);
	font-size: var(--mm-fs-xs);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mm-red);
	margin-bottom: var(--mm-2);
}

.mm-tl__text { font-size: var(--mm-fs-sm); line-height: 1.7; color: var(--mm-text-3); }

@media (max-width: 620px) {
	.mm-tl { grid-template-columns: minmax(0, 1fr); gap: var(--mm-2); }
}

/* --- Vertybės -------------------------------------------------------- */

.mm-values {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
}

.mm-value {
	display: flex;
	flex-direction: column;
	gap: var(--mm-3);
	padding: var(--mm-6) var(--mm-5);
	border-right: 1px solid var(--mm-line);
	background: var(--mm-surface);
	transition: background var(--mm-dur) var(--mm-ease);
}

.mm-value:last-child { border-right: 0; }
.mm-value:hover { background: var(--mm-surface-2); }

.mm-value__icon { color: var(--mm-red); }

.mm-value__title {
	font-family: var(--mm-font-body);
	font-size: var(--mm-fs-xs);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mm-text);
}

.mm-value__text { font-size: var(--mm-fs-xs); line-height: 1.6; color: var(--mm-text-3); }

@media (max-width: 900px) {
	.mm-value { border-right: 0; border-bottom: 1px solid var(--mm-line); }
	.mm-value:last-child { border-bottom: 0; }
}

/* --- Dirbtuvių juosta ------------------------------------------------- */

.mm-shots {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: var(--mm-3);
}

.mm-shots a {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: var(--mm-radius);
	background: var(--mm-surface-2);
}

.mm-shots img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: brightness(0.78);
	transition: transform 900ms var(--mm-ease-out-expo), filter var(--mm-dur-slow) var(--mm-ease);
}

.mm-shots a:hover img { transform: scale(1.08); filter: brightness(1); }

@media (max-width: 900px) { .mm-shots { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 520px) { .mm-shots { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* --- Žmogus / citata --------------------------------------------------- */

.mm-person {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
	gap: var(--mm-5);
	align-items: stretch;
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
	background: var(--mm-surface);
}

.mm-person__media { background: var(--mm-surface-2); }
.mm-person__media img { width: 100%; height: 100%; object-fit: cover; }

.mm-person__body {
	display: flex;
	flex-direction: column;
	gap: var(--mm-4);
	padding: var(--mm-6);
}

.mm-person__name { font-size: var(--mm-fs-h4); color: var(--mm-red); }

.mm-person__role {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--mm-text-4);
}

.mm-quote {
	display: grid;
	place-items: center;
	padding: var(--mm-7);
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	background:
		radial-gradient(70% 100% at 100% 0%, var(--mm-red-wash), transparent 70%),
		var(--mm-surface);
	font-family: var(--mm-font-display);
	font-size: var(--mm-fs-h3);
	font-weight: 300;
	line-height: 1.25;
	letter-spacing: var(--mm-ls-display);
	text-transform: uppercase;
	color: var(--mm-text);
	text-align: center;
}

@media (max-width: 900px) { .mm-person { grid-template-columns: minmax(0, 1fr); } }

/* =====================================================================
 * Dažymo procesas
 * ================================================================== */

.mm-paintsteps {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	gap: var(--mm-4);
}

@media (max-width: 1280px) { .mm-paintsteps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 700px) { .mm-paintsteps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.mm-pstep { display: flex; flex-direction: column; gap: var(--mm-3); }

.mm-pstep__index {
	font-family: var(--mm-font-display);
	font-size: 1.375rem;
	font-weight: 200;
	color: var(--mm-red);
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.mm-pstep__title {
	font-family: var(--mm-font-body);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--mm-text);
}

.mm-pstep__text { font-size: 0.75rem; line-height: 1.55; color: var(--mm-text-3); }

.mm-pstep__media {
	margin-top: auto;
	aspect-ratio: 4 / 5;
	border-radius: var(--mm-radius);
	overflow: hidden;
	background: var(--mm-surface-2);
	border: 1px solid var(--mm-line);
}

.mm-pstep__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 800ms var(--mm-ease-out-expo);
}

.mm-pstep:hover .mm-pstep__media img { transform: scale(1.06); }

/* --- Dažymo lygiai ----------------------------------------------------- */

.mm-levels {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr));
	gap: var(--mm-5);
}

.mm-level {
	display: flex;
	align-items: flex-start;
	gap: var(--mm-4);
	padding-left: var(--mm-5);
	border-left: 1px solid var(--mm-line);
}

.mm-level__icon { color: var(--mm-red); flex: none; }

.mm-level__title {
	display: block;
	font-size: var(--mm-fs-xs);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mm-text);
	margin-bottom: var(--mm-1);
}

.mm-level__time { display: block; font-size: var(--mm-fs-xs); color: var(--mm-red); margin-bottom: var(--mm-2); }
.mm-level__text { font-size: var(--mm-fs-xs); line-height: 1.55; color: var(--mm-text-3); }

/* --- Technikos --------------------------------------------------------- */

.mm-techs {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(170px, 100%), 1fr));
	gap: var(--mm-5) var(--mm-6);
}

.mm-tech { display: flex; flex-direction: column; gap: var(--mm-2); }
.mm-tech__icon { color: var(--mm-red); margin-bottom: var(--mm-1); }

.mm-tech__title {
	font-size: var(--mm-fs-xs);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mm-text);
}

.mm-tech__text { font-size: var(--mm-fs-xs); line-height: 1.55; color: var(--mm-text-3); }

/* =====================================================================
 * Individualūs užsakymai — kelias nuo idėjos iki rezultato
 * ================================================================== */

.mm-flow {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: var(--mm-3);
	align-items: start;
}

@media (max-width: 1100px) { .mm-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 620px) { .mm-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.mm-flowstep {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--mm-3);
}

/* Raudonos rodyklės tarp žingsnių. */
.mm-flowstep:not(:last-child)::after {
	content: "»";
	position: absolute;
	top: 38%;
	right: calc(var(--mm-3) * -0.75);
	transform: translate(50%, -50%);
	z-index: 2;
	font-size: 1.125rem;
	color: var(--mm-red);
	line-height: 1;
	pointer-events: none;
}

@media (max-width: 1100px) {
	.mm-flowstep:nth-child(3n)::after { display: none; }
}

@media (max-width: 620px) {
	.mm-flowstep:nth-child(3n)::after { display: block; }
	.mm-flowstep:nth-child(2n)::after { display: none; }
}

.mm-flowstep__media {
	aspect-ratio: 4 / 5;
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
	background: var(--mm-surface-2);
}

.mm-flowstep__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 800ms var(--mm-ease-out-expo);
}

.mm-flowstep:hover .mm-flowstep__media img { transform: scale(1.05); }

.mm-flowstep__title {
	font-family: var(--mm-font-body);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--mm-text);
}

.mm-flowstep__text { font-size: 0.75rem; line-height: 1.55; color: var(--mm-text-3); }

/* --- Ką galime sukurti -------------------------------------------------- */

.mm-cando {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 250px;
	padding: var(--mm-5);
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
	background: var(--mm-surface);
	isolation: isolate;
}

.mm-cando__bg { position: absolute; inset: 0; z-index: -2; }

.mm-cando__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: brightness(0.6);
	transition: transform 1000ms var(--mm-ease-out-expo), filter var(--mm-dur-slow) var(--mm-ease);
}

.mm-cando:hover .mm-cando__bg img { transform: scale(1.07); filter: brightness(0.78); }

.mm-cando__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 30%, rgba(5, 5, 6, 0.94) 100%);
}

.mm-cando__icon { color: var(--mm-red); margin-bottom: var(--mm-3); }

.mm-cando__title {
	font-size: var(--mm-fs-xs);
	font-family: var(--mm-font-body);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mm-text);
	margin-bottom: var(--mm-2);
}

.mm-cando__text { font-size: var(--mm-fs-xs); line-height: 1.55; color: var(--mm-text-3); }

/* =====================================================================
 * Dovanos — progos
 * ================================================================== */

.mm-occasions {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 0;
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
}

@media (max-width: 1100px) { .mm-occasions { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 620px) { .mm-occasions { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.mm-occ {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--mm-4);
	padding: var(--mm-5);
	border-right: 1px solid var(--mm-line);
	background: var(--mm-surface);
	transition: background var(--mm-dur) var(--mm-ease);
}

.mm-occ:last-child { border-right: 0; }
.mm-occ:hover { background: var(--mm-surface-2); }

.mm-occ__head { display: flex; align-items: center; gap: var(--mm-3); }
.mm-occ__head .mm-icon { color: var(--mm-red); }

.mm-occ__title {
	font-family: var(--mm-font-display);
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--mm-text);
}

.mm-occ__media {
	aspect-ratio: 4 / 5;
	border-radius: var(--mm-radius-sm);
	overflow: hidden;
	background: var(--mm-surface-2);
}

.mm-occ__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 900ms var(--mm-ease-out-expo);
}

.mm-occ:hover .mm-occ__media img { transform: scale(1.06); }

.mm-occ__text { font-size: var(--mm-fs-xs); line-height: 1.6; color: var(--mm-text-3); flex: 1; }

/* =====================================================================
 * Kontaktai
 * ================================================================== */

.mm-contact {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(280px, 1fr);
	gap: 0;
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	overflow: hidden;
	background: var(--mm-surface);
}

@media (max-width: 900px) { .mm-contact { grid-template-columns: minmax(0, 1fr); } }

.mm-contact__form {
	padding: clamp(var(--mm-5), 3vw, var(--mm-8));
	border-right: 1px solid var(--mm-line);
}

@media (max-width: 900px) {
	.mm-contact__form { border-right: 0; border-bottom: 1px solid var(--mm-line); }
}

.mm-contact__info { padding: clamp(var(--mm-5), 3vw, var(--mm-8)); }

.mm-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--mm-4);
}

.mm-form-grid > .mm-field--wide { grid-column: 1 / -1; }

@media (max-width: 620px) {
	.mm-form-grid { grid-template-columns: minmax(0, 1fr); }
}

.mm-infolist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--mm-5);
}

.mm-infolist li { display: flex; gap: var(--mm-4); margin: 0; }

.mm-infolist__icon {
	flex: none;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid color-mix(in srgb, var(--mm-red) 35%, transparent);
	border-radius: var(--mm-radius);
	color: var(--mm-red);
}

.mm-infolist__label {
	display: block;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--mm-text-4);
	margin-bottom: var(--mm-1);
}

.mm-infolist__value { font-size: var(--mm-fs-sm); line-height: 1.6; color: var(--mm-text); }
.mm-infolist__value a:hover { color: var(--mm-red); }

/* --- Žemėlapis -----------------------------------------------------------
 *
 * Žemėlapis įkeliamas tik paspaudus. Iki tol nėra jokios užklausos į
 * Google, todėl nereikia ir sutikimo lango: kol žmogus nepaspaudė,
 * jokie svetimi slapukai nenustatomi. Tai ir greičiau, ir švariau
 * BDAR požiūriu.
 * -------------------------------------------------------------------- */

.mm-map {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	background:
		radial-gradient(70% 90% at 50% 100%, var(--mm-red-wash), transparent 70%),
		var(--mm-surface);
	min-height: 380px;
	display: grid;
}

.mm-map iframe {
	width: 100%;
	height: 100%;
	min-height: 380px;
	border: 0;
	display: block;
	/* Tamsinam žemėlapį, kad neiškristų iš temos. */
	filter: invert(0.92) hue-rotate(180deg) brightness(0.86) contrast(0.9) saturate(0.35);
}

/* --- Būsena prieš įkėlimą --- */

.mm-map__intro {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--mm-4);
	padding: var(--mm-8) var(--mm-5);
	text-align: center;
}

/* Subtilus tinklelis fone — užuomina į žemėlapį, be jokių užklausų. */
.mm-map__intro::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	opacity: 0.5;
	background-image:
		linear-gradient(var(--mm-line-soft) 1px, transparent 1px),
		linear-gradient(90deg, var(--mm-line-soft) 1px, transparent 1px);
	background-size: 46px 46px;
	mask-image: radial-gradient(70% 70% at 50% 50%, #000, transparent);
}

.mm-map__intro > * { position: relative; z-index: 1; }

.mm-map__pin {
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: var(--mm-red-wash);
	border: 1px solid color-mix(in srgb, var(--mm-red) 45%, transparent);
	color: var(--mm-red);
}

.mm-map__pin svg { width: 26px; height: 26px; }

.mm-map__address {
	font-family: var(--mm-font-display);
	font-size: var(--mm-fs-h4);
	font-weight: 300;
	letter-spacing: var(--mm-ls-display);
	text-transform: uppercase;
	color: var(--mm-text);
}

.mm-map__where { font-size: var(--mm-fs-sm); color: var(--mm-text-3); }

.mm-map__consent {
	max-width: 42ch;
	font-size: 0.6875rem;
	line-height: 1.6;
	color: var(--mm-text-4);
}

.mm-map__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mm-3);
	justify-content: center;
}

/* =====================================================================
 * Dokumento puslapis (privatumo politika, taisyklės ir pan.)
 *
 * Skaitomas tekstas, o ne rinkodara: siauresnė juosta, didesnis eilučių
 * tarpas, aiški antraščių hierarchija.
 * ================================================================== */

.mm-doc {
	max-width: 72ch;
	font-size: var(--mm-fs-sm);
	line-height: 1.85;
}

.mm-doc h2 {
	font-size: var(--mm-fs-h3);
	margin-top: var(--mm-8);
	margin-bottom: var(--mm-4);
	padding-top: var(--mm-6);
	border-top: 1px solid var(--mm-line);
}

.mm-doc > h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }

.mm-doc h3 {
	font-family: var(--mm-font-body);
	font-size: var(--mm-fs-sm);
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: none;
	color: var(--mm-text);
	margin-top: var(--mm-6);
	margin-bottom: var(--mm-2);
}

.mm-doc p { margin-bottom: var(--mm-4); }
.mm-doc ul, .mm-doc ol { margin-bottom: var(--mm-4); padding-left: 1.3em; }
.mm-doc li { margin-bottom: var(--mm-2); }
.mm-doc li::marker { color: var(--mm-red); }

.mm-doc a {
	color: var(--mm-red);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.mm-doc a:hover { color: var(--mm-red-bright); }

.mm-doc dl {
	display: grid;
	grid-template-columns: minmax(140px, auto) 1fr;
	gap: var(--mm-2) var(--mm-5);
	margin: 0 0 var(--mm-4);
	padding: var(--mm-5);
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	background: var(--mm-surface);
}

.mm-doc dt { color: var(--mm-text-3); font-size: var(--mm-fs-xs); }
.mm-doc dd { margin: 0; color: var(--mm-text); }

@media (max-width: 560px) {
	.mm-doc dl { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.mm-doc dd { margin-bottom: var(--mm-3); }
}

/* Įspėjimas, kad dokumentą dar turi peržiūrėti teisininkas. */
.mm-doc__notice {
	display: flex;
	gap: var(--mm-4);
	padding: var(--mm-5);
	margin-bottom: var(--mm-7);
	border-left: 2px solid var(--mm-warning);
	border-radius: 0 var(--mm-radius) var(--mm-radius) 0;
	background: rgba(245, 165, 36, 0.08);
	font-size: var(--mm-fs-xs);
	line-height: 1.6;
	color: var(--mm-text-2);
}

.mm-doc__notice .mm-icon { color: var(--mm-warning); flex: none; margin-top: 2px; }

.mm-doc__updated {
	font-size: var(--mm-fs-xs);
	color: var(--mm-text-4);
	margin-bottom: var(--mm-7);
}

/* =====================================================================
 * Kainos / paketai
 * ================================================================== */

.mm-plan {
	display: flex;
	flex-direction: column;
	gap: var(--mm-5);
	padding: var(--mm-6);
	background: var(--mm-surface);
	border: 1px solid var(--mm-line);
	border-radius: var(--mm-radius);
	height: 100%;
	transition: border-color var(--mm-dur) var(--mm-ease), transform var(--mm-dur) var(--mm-ease-out-expo);
}

.mm-plan:hover { transform: translateY(-4px); border-color: var(--mm-line-strong); }

.mm-plan--featured {
	border-color: var(--mm-red);
	background: radial-gradient(80% 60% at 50% 0%, var(--mm-red-wash), transparent 70%), var(--mm-surface);
}

.mm-plan__name { font-size: var(--mm-fs-h4); color: var(--mm-text); }

.mm-plan__price {
	font-family: var(--mm-font-display);
	font-size: clamp(2rem, 1.5rem + 1.6vw, 2.75rem);
	font-weight: 300;
	color: var(--mm-red);
	line-height: 1;
}

.mm-plan__price small { font-size: 0.4em; color: var(--mm-text-3); letter-spacing: 0.06em; }

.mm-plan__foot { margin-top: auto; }
