@import url("https://fonts.googleapis.com/css2?family=Instrument+Sans:wdth,wght@75..100,400..700&display=swap");

/* ============================================================
   Malvetra: komponentų stilius. Vertės ateina iš tokens.css.
   Prefiksas .mv-  ·  Blokai reaguoja į savo plotį (container queries).
   Dekoratyvinių ikonų nėra: tik nuotraukos ir tipografija.
   UI ženklai (rodyklė, telefonas, paieška, meniu, +) lieka.
   ============================================================ */

/* ---------- Pagrindai ---------- */
.mv, .mv *, .mv *::before, .mv *::after { box-sizing: border-box; }
.mv { font-family: var(--font-sans); color: var(--ink); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; font-feature-settings: "ss01" 0; }
.mv img { display: block; max-width: 100%; }
:where(.mv) a { color: inherit; }
.mv :focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 3px; }
.mv .mv-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.display-xl, .display-l { margin: 0; text-wrap: balance; }
.statement { margin: 0; text-transform: uppercase; font-stretch: 88%; text-wrap: balance; }
.h2, .h3, .h4 { margin: 0; text-wrap: balance; }
.body-l, .body, .body-s { margin: 0; text-wrap: pretty; }
.mv .t-muted { color: var(--ink-muted); }
.mv .t-subtle { color: var(--ink-subtle); }

/* ---------- Blokas (sekcija) ---------- */
.mv-section { container-type: inline-size; container-name: block; background: var(--surface); color: var(--ink); padding-block: var(--section-y); position: relative; }
.mv-section--alt { background: var(--surface-alt); }
.mv-section--sky { background: var(--brand-sky-wash); }
.mv-section--flush { padding-block: 0; }
.mv-section--tight { padding-block: var(--space-8); }
.mv-container { width: 100%; max-width: calc(var(--container-max) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }
.mv-container--text { max-width: calc(var(--container-text) + 2 * var(--gutter)); }

.mv-head { display: grid; gap: var(--space-4); max-width: 760px; margin-bottom: var(--space-7); }
.mv-head--center { text-align: center; margin-inline: auto; justify-items: center; }
.mv-head--split { max-width: none; grid-template-columns: 1fr auto; align-items: end; gap: var(--space-6); }
.mv-head .body-l { color: var(--ink-muted); max-width: 620px; }

@container block (max-width: 899px) {
  .display-xl { font-size: 38px; line-height: 1.05; }
  .display-l { font-size: 34px; line-height: 1.08; }
  .statement { font-size: 44px; }
  .h2 { font-size: 30px; }
  .h3 { font-size: 22px; }
  .body-l { font-size: 18px; }
  .mv-section { padding-block: var(--section-y-sm); }
  .mv-section--tight { padding-block: var(--space-7); }
  .mv-container { padding-inline: var(--space-4); }
  .mv-head { margin-bottom: var(--space-6); }
  .mv-head--split { grid-template-columns: 1fr; }
}
.mv-mobile { container-type: inline-size; container-name: block; }

/* UI ženklai (ne dekoracija) */
.mv-i { width: 20px; height: 20px; flex: none; stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.mv-i--s { width: 16px; height: 16px; }
.mv-i--fill { fill: currentColor; stroke: none; }

/* ============================================================
   MYGTUKAS: dvikryptis gradientas + spalvotas šešėlis
   ============================================================ */
.mv-btn {
  --btn-h: var(--control-h-m); --chip: 36px; --pad: 22px;
  position: relative; isolation: isolate;
  display: inline-flex; align-items: center; gap: 14px;
  height: var(--btn-h);
  padding: 0 calc((var(--btn-h) - var(--chip)) / 2) 0 var(--pad);
  border: 0; border-radius: var(--radius-pill); background-color: transparent; -webkit-appearance: none; appearance: none;
  font-family: var(--font-sans); font-size: 16px; font-weight: 600; letter-spacing: 0.005em; line-height: 1;
  text-decoration: none; white-space: nowrap; cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background-position 520ms var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), color var(--dur-fast), background-color var(--dur-fast);
}
.mv-btn--s { --btn-h: var(--control-h-s); --chip: 28px; --pad: 16px; font-size: 14px; gap: 10px; }
.mv-btn--l { --btn-h: var(--control-h-l); --chip: 44px; --pad: 28px; font-size: 17px; gap: 18px; }
.mv-btn--noicon { padding: 0 var(--pad); }
.mv-btn--block { width: 100%; justify-content: space-between; }
.mv-btn--block.mv-btn--noicon { justify-content: center; }

.mv-btn__chip { position: relative; overflow: hidden; display: grid; place-items: center; width: var(--chip); height: var(--chip); border-radius: 50%; transition: background-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), box-shadow var(--dur-base); }
.mv-btn__chip .mv-i { position: absolute; inset: 0; margin: auto; transition: transform var(--dur-base) var(--ease-out), opacity var(--dur-base) var(--ease-out); }
.mv-btn__chip .mv-i + .mv-i { transform: translateX(-140%); opacity: 0; }
.mv-btn:hover .mv-btn__chip .mv-i:first-child, .mv-btn.is-hover .mv-btn__chip .mv-i:first-child { transform: translateX(140%); opacity: 0; }
.mv-btn:hover .mv-btn__chip .mv-i + .mv-i, .mv-btn.is-hover .mv-btn__chip .mv-i + .mv-i { transform: translateX(0); opacity: 1; }
.mv-btn:focus-visible, .mv-btn.is-focus { outline: 2px solid var(--focus-ring); outline-offset: 3px; }

/* Primary: gradientas šviesus→tamsus, hover jis „pervažiuoja“ į kitą pusę, šešėlis pakyla */
.mv-btn--primary {
  color: var(--on-action);
  background-image: linear-gradient(105deg, var(--action-grad-a) 0%, var(--action) 45%, var(--action-grad-b) 100%);
  background-size: 220% 100%; background-position: 0% 50%;
  box-shadow: var(--shadow-action);
}
.mv-btn--primary::after { content: ""; position: absolute; inset: 0; border-radius: inherit; z-index: -1; background: linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0) 55%); pointer-events: none; }
.mv-btn--primary .mv-btn__chip { background: rgba(255,255,255,0.16); color: var(--on-action); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.22); }
.mv-btn--primary:hover, .mv-btn--primary.is-hover { background-position: 100% 50%; box-shadow: var(--shadow-action-hover); transform: translateY(-1px); }
.mv-btn--primary:hover .mv-btn__chip, .mv-btn--primary.is-hover .mv-btn__chip { background: #ffffff; color: var(--action-grad-b); box-shadow: 0 2px 8px rgba(2,40,80,0.35); }
.mv-btn--primary:active, .mv-btn--primary.is-active { background-position: 100% 50%; box-shadow: var(--shadow-action-pressed); transform: translateY(0) scale(0.985); }
.mv-btn--primary:active .mv-btn__chip, .mv-btn--primary.is-active .mv-btn__chip { background: #ffffff; color: var(--action-grad-b); box-shadow: none; }

/* Secondary: šviesus gradientas + rėmelis, hover tampa tamsus gradientas */
.mv-btn--secondary {
  color: var(--ink);
  background-image: linear-gradient(180deg, var(--surface-raised) 0%, var(--surface-alt) 100%);
  box-shadow: inset 0 0 0 1px var(--line-control), var(--shadow-control);
}
.mv-btn--secondary .mv-btn__chip { background: var(--surface-alt); color: var(--ink); box-shadow: inset 0 0 0 1px var(--line); }
.mv-btn--secondary:hover, .mv-btn--secondary.is-hover { color: var(--surface); background-image: linear-gradient(180deg, color-mix(in srgb, var(--ink) 82%, var(--surface)) 0%, var(--ink) 100%); box-shadow: inset 0 0 0 1px var(--ink), 0 12px 24px -12px rgba(11,16,21,0.55); transform: translateY(-1px); }
.mv-btn--secondary:hover .mv-btn__chip, .mv-btn--secondary.is-hover .mv-btn__chip { background: var(--surface); color: var(--ink); box-shadow: none; }
.mv-btn--secondary:active, .mv-btn--secondary.is-active { color: var(--surface); background-image: linear-gradient(180deg, var(--ink) 0%, var(--ink) 100%); box-shadow: inset 0 2px 6px rgba(0,0,0,0.35); transform: scale(0.985); }

/* Glass: ant nuotraukos */
.mv-btn--glass { color: #ffffff; background-image: linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.06) 100%); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.45), inset 0 1px 0 rgba(255,255,255,0.35), 0 10px 24px -12px rgba(0,0,0,0.5); backdrop-filter: blur(12px) saturate(1.3); -webkit-backdrop-filter: blur(12px) saturate(1.3); }
.mv-btn--glass .mv-btn__chip { background: rgba(255,255,255,0.14); color: #ffffff; }
.mv-btn--glass:hover, .mv-btn--glass.is-hover { color: var(--ink-950); background-image: linear-gradient(180deg, #ffffff 0%, #e8eef3 100%); box-shadow: inset 0 0 0 1px #ffffff, 0 14px 28px -12px rgba(0,0,0,0.6); transform: translateY(-1px); }
.mv-btn--glass:hover .mv-btn__chip, .mv-btn--glass.is-hover .mv-btn__chip { background: var(--ink-950); color: #ffffff; }
.mv-btn--glass:active, .mv-btn--glass.is-active { color: var(--ink-950); background-image: linear-gradient(180deg, var(--brand-sky) 0%, #8fcdee 100%); box-shadow: inset 0 2px 6px rgba(2,40,80,0.3); transform: scale(0.985); }
.mv-btn--glass:focus-visible, .mv-btn--glass.is-focus { outline-color: #ffffff; }

/* Ghost: teksto lygio */
.mv-btn--ghost { background: transparent; color: var(--action-text); padding: 0 2px; height: auto; min-height: 32px; gap: 10px; box-shadow: none; }
.mv-btn--ghost .mv-btn__label { background: linear-gradient(currentColor, currentColor) left bottom / 0 1.5px no-repeat; padding-bottom: 3px; transition: background-size var(--dur-base) var(--ease-out); }
.mv-btn--ghost:hover .mv-btn__label, .mv-btn--ghost.is-hover .mv-btn__label { background-size: 100% 1.5px; }
.mv-btn--ghost .mv-btn__chip { width: 20px; height: 20px; background: transparent; color: currentColor; }
.mv-btn--ghost:active, .mv-btn--ghost.is-active { opacity: 0.75; }

/* Ikonos mygtukas */
.mv-btn--icon { width: var(--btn-h); padding: 0; justify-content: center; color: var(--ink); background-image: linear-gradient(180deg, var(--surface-raised), var(--surface-alt)); box-shadow: inset 0 0 0 1px var(--line), var(--shadow-control); }
.mv-btn--icon:hover, .mv-btn--icon.is-hover { color: var(--surface); background-image: linear-gradient(180deg, var(--ink), var(--ink)); box-shadow: inset 0 0 0 1px var(--ink); }
.mv-btn--icon.mv-btn--on-media { color: #ffffff; background-image: linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0.04)); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.4); }
.mv-btn--icon.mv-btn--on-media:hover { background-image: linear-gradient(180deg, #ffffff, #e8eef3); color: var(--ink-950); }

/* Išjungtas */
.mv-btn:disabled, .mv-btn[aria-disabled="true"], .mv-btn.is-disabled { background-image: none; background-color: var(--disabled-bg); color: var(--disabled-ink); box-shadow: none; cursor: not-allowed; transform: none; backdrop-filter: none; }
.mv-btn:disabled::after, .mv-btn.is-disabled::after { display: none; }
.mv-btn:disabled .mv-btn__chip, .mv-btn[aria-disabled="true"] .mv-btn__chip, .mv-btn.is-disabled .mv-btn__chip { background: transparent; color: var(--disabled-ink); box-shadow: none; }
.mv-btn.is-disabled .mv-btn__chip .mv-i:first-child { transform: none; opacity: 1; }
.mv-btn--ghost.is-disabled, .mv-btn--ghost:disabled { background-color: transparent; }

/* Kraunasi */
.mv-btn.is-loading { pointer-events: none; }
.mv-btn.is-loading .mv-btn__chip .mv-i { opacity: 0; }
.mv-btn.is-loading .mv-btn__chip::after { content: ""; width: 45%; height: 45%; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent; animation: mv-spin 0.8s linear infinite; }
@keyframes mv-spin { to { transform: rotate(360deg); } }

.mv-btn-row { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }

/* ============================================================
   NUORODA, ŽYMOS
   ============================================================ */
.mv-link { display: inline-flex; align-items: center; gap: 8px; color: var(--action-text); font-weight: 600; text-decoration: none; }
.mv-link span { background: linear-gradient(currentColor, currentColor) left bottom / 100% 1px no-repeat; padding-bottom: 2px; transition: background-size var(--dur-base) var(--ease-out); }
.mv-link:hover span, .mv-link.is-hover span { background-size: 0 1px; background-position: right bottom; }
.mv-link .mv-i { transition: transform var(--dur-base) var(--ease-out); }
.mv-link:hover .mv-i, .mv-link.is-hover .mv-i { transform: translateX(4px); }
.mv-link--inline { display: inline; font-weight: 500; }

.mv-tag { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border-radius: var(--radius-pill); box-shadow: inset 0 0 0 1px var(--line); font-size: 13px; font-weight: 600; letter-spacing: 0.01em; color: var(--ink-muted); white-space: nowrap; }
.mv-tag--solid { background: var(--surface-alt); box-shadow: none; color: var(--ink); }
.mv-tag--sky { background: var(--brand-sky); box-shadow: none; color: var(--ink-950); }
.mv-tag--action { background-image: linear-gradient(105deg, var(--action-grad-a), var(--action-grad-b)); box-shadow: none; color: var(--on-action); }
.mv-tag--media { background: rgba(11,16,21,0.45); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.25); color: #ffffff; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.mv-tag-row { display: flex; flex-wrap: wrap; gap: 8px; }

/* ============================================================
   FORMA
   ============================================================ */
.mv-field { display: grid; gap: var(--space-2); border: 0; padding: 0; margin: 0; min-width: 0; }
.mv-field__label { font-size: 15px; font-weight: 600; color: var(--ink); padding: 0; }
.mv-field__label small { font-weight: 400; color: var(--ink-subtle); margin-left: 6px; font-size: 14px; }
.mv-input { width: 100%; height: var(--control-h-l); padding: 0 18px; border: 0; border-radius: var(--radius-md); background: var(--surface); box-shadow: inset 0 0 0 1px var(--line-control); font-family: var(--font-sans); font-size: 17px; color: var(--ink); transition: box-shadow var(--dur-fast) var(--ease-out), background-color var(--dur-fast); -webkit-appearance: none; appearance: none; }
.mv-input::placeholder { color: var(--ink-subtle); }
.mv-input:hover, .mv-input.is-hover { box-shadow: inset 0 0 0 1px var(--ink); }
.mv-input:focus, .mv-input.is-focus { outline: none; box-shadow: inset 0 0 0 2px var(--action), 0 0 0 4px rgba(11,103,208,0.16); }
.mv-input.is-error { box-shadow: inset 0 0 0 2px var(--danger); }
.mv-input:disabled, .mv-input.is-disabled { background: var(--disabled-bg); color: var(--disabled-ink); box-shadow: none; cursor: not-allowed; }
textarea.mv-input { height: 128px; padding: 14px 18px; resize: vertical; line-height: 1.5; }
.mv-select { position: relative; }
.mv-select .mv-input { padding-right: 48px; cursor: pointer; }
.mv-select .mv-i { position: absolute; right: 18px; top: 50%; transform: translateY(-50%); pointer-events: none; color: var(--ink-muted); }
.mv-field__hint { font-size: 14px; color: var(--ink-subtle); margin: 0; }
.mv-field__error { font-size: 14px; color: var(--danger); margin: 0; font-weight: 500; }
.mv-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-5) var(--space-4); }
.mv-field-grid > .mv-span { grid-column: 1 / -1; }
@container block (max-width: 640px) { .mv-field-grid { grid-template-columns: 1fr; } }

/* Pasirinkimai: pilės su indikatoriumi. Checkbox: kvadratėlis, radio: taškas */
.mv-choices { display: flex; flex-wrap: wrap; gap: 8px; }
.mv-choice { position: relative; }
.mv-choice input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; z-index: 1; }
.mv-choice span { display: inline-flex; align-items: center; gap: 10px; height: 46px; padding: 0 18px 0 14px; border-radius: var(--radius-pill); background-image: linear-gradient(180deg, var(--surface-raised), var(--surface-alt)); box-shadow: inset 0 0 0 1px var(--line-control); font-size: 15px; font-weight: 500; color: var(--ink); transition: background-color var(--dur-fast), color var(--dur-fast), box-shadow var(--dur-fast); }
.mv-choice span::before { content: ""; width: 18px; height: 18px; border-radius: 6px; box-shadow: inset 0 0 0 1.5px var(--line-control); background: var(--surface); flex: none; transition: all var(--dur-fast) var(--ease-out); }
.mv-choice input[type="radio"] + span::before { border-radius: 50%; }
.mv-choice:hover span { box-shadow: inset 0 0 0 1px var(--ink), var(--shadow-control); }
.mv-choice input:checked + span { background-image: linear-gradient(180deg, color-mix(in srgb, var(--ink) 85%, var(--surface)), var(--ink)); color: var(--surface); box-shadow: inset 0 0 0 1px var(--ink), 0 8px 18px -10px rgba(11,16,21,0.6); }
.mv-choice input[type="checkbox"]:checked + span::before { background: var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b1015' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center / 14px no-repeat; box-shadow: none; }
.mv-choice input[type="radio"]:checked + span::before { background: var(--surface); box-shadow: inset 0 0 0 5px var(--surface), inset 0 0 0 9px var(--ink); }
.mv-choice input:focus-visible + span { outline: 2px solid var(--focus-ring); outline-offset: 3px; }
.mv-choice input:disabled + span { background-image: none; background-color: var(--disabled-bg); color: var(--disabled-ink); box-shadow: none; }

.mv-consent { font-size: 14px; color: var(--ink-subtle); margin: 0; line-height: 1.5; }
.mv-consent a { color: var(--ink-muted); }

/* ============================================================
   TABAI, ACCORDION
   ============================================================ */
.mv-tabs { display: inline-flex; gap: 4px; padding: 4px; border-radius: var(--radius-pill); background: var(--surface-alt); box-shadow: inset 0 1px 2px rgba(11,16,21,0.06); }
.mv-tab { height: 40px; padding: 0 20px; border: 0; border-radius: var(--radius-pill); background: transparent; font-family: var(--font-sans); font-size: 15px; font-weight: 600; color: var(--ink-muted); cursor: pointer; transition: background-color var(--dur-fast), color var(--dur-fast), box-shadow var(--dur-fast); }
.mv-tab:hover, .mv-tab.is-hover { color: var(--ink); }
.mv-tab[aria-selected="true"] { background: var(--surface-raised); color: var(--ink); box-shadow: var(--shadow-control); }

.mv-acc { border-top: 1px solid var(--line); }
.mv-acc__item { border-bottom: 1px solid var(--line); }
.mv-acc__item summary { list-style: none; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: var(--space-4); padding: 22px 0; cursor: pointer; font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -0.01em; color: var(--ink); }
.mv-acc__item summary::-webkit-details-marker { display: none; }
.mv-acc__item summary:hover .mv-acc__q { color: var(--action-text); }
.mv-acc__q { transition: color var(--dur-fast); }
.mv-acc__toggle { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; box-shadow: inset 0 0 0 1px var(--line); color: var(--ink); transition: transform var(--dur-base) var(--ease-in-out), background-color var(--dur-fast); }
.mv-acc__item[open] .mv-acc__toggle { transform: rotate(45deg); background: var(--ink); color: var(--surface); box-shadow: none; }
.mv-acc__a { padding: 0 52px 26px 0; color: var(--ink-muted); font-size: 17px; line-height: 1.65; }
.mv-acc__item[open] .mv-acc__a { animation: mv-fade var(--dur-base) var(--ease-out); }
@keyframes mv-fade { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@container block (max-width: 640px) { .mv-acc__item summary { font-size: 18px; padding: 18px 0; } .mv-acc__a { padding-right: 0; } }

/* ============================================================
   MEDIJA
   ============================================================ */
.mv-media { position: relative; overflow: hidden; background: var(--surface-alt); border-radius: var(--radius-lg); isolation: isolate; }
.mv-media--sharp { border-radius: var(--radius-0); }
.mv-media img, .mv-media video { width: 100%; height: 100%; object-fit: cover; }
.mv-media__ph { position: absolute; inset: 0; z-index: -1; }
.mv-ph--day { background: linear-gradient(180deg, #8fc4e8 0%, #cfe6f4 46%, #3a4b38 47%, #2a3727 100%); }
.mv-ph--roof { background: repeating-linear-gradient(90deg, rgba(255,255,255,0.10) 0 2px, transparent 2px 64px), repeating-linear-gradient(0deg, rgba(255,255,255,0.10) 0 2px, transparent 2px 40px), linear-gradient(160deg, #1d2c3b 0%, #0f1a25 60%, #0b1015 100%); }
.mv-ph--dusk { background: linear-gradient(180deg, #1a2433 0%, #3b3a4a 38%, #b9764a 58%, #1a1e22 59%, #0d1114 100%); }
.mv-ph--house { background: linear-gradient(180deg, #b7d8ee 0%, #e7f1f7 55%, #d9dedf 56%, #9aa59a 100%); }
.mv-ph--device { background: radial-gradient(60% 70% at 50% 55%, #ffffff 0%, #e9f3fa 55%, #cfe3f1 100%); }
.mv-ph--night { background: radial-gradient(80% 60% at 70% 30%, #1f3b57 0%, #0e1822 60%, #0b1015 100%); }
.mv-ph--team { background: linear-gradient(135deg, #c9d3db 0%, #8d9aa5 50%, #3d4955 100%); }
.mv-ph__label { position: absolute; left: 14px; bottom: 14px; z-index: 2; }
.mv-hero__media .mv-ph__label { left: auto; bottom: auto; right: 24px; top: 104px; }

/* ============================================================
   HEADER, MENIU, PAIEŠKA, MOBILE JUOSTA
   ============================================================ */
.mv-header { container-type: inline-size; container-name: header; position: relative; z-index: var(--z-header); color: #ffffff; background: transparent; transition: background-color var(--dur-base) var(--ease-in-out), color var(--dur-base), box-shadow var(--dur-base); }
.mv-header__bar { display: flex; align-items: center; gap: var(--space-6); height: var(--header-h); max-width: calc(var(--container-max) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }
.mv-header__logo { display: block; width: 168px; flex: none; }
.mv-header__logo img { width: 100%; height: auto; }
.mv-header__logo .is-solid-only { display: none; }
.mv-header__nav { display: flex; gap: 4px; margin: 0 auto; }
.mv-header__nav a { position: relative; padding: 10px 14px; font-size: 15px; font-weight: 500; text-decoration: none; color: inherit; opacity: 0.88; transition: opacity var(--dur-fast); }
.mv-header__nav a::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 4px; height: 1.5px; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform var(--dur-base) var(--ease-out); }
.mv-header__nav a:hover, .mv-header__nav a[aria-current="page"] { opacity: 1; }
.mv-header__nav a:hover::after, .mv-header__nav a[aria-current="page"]::after { transform: scaleX(1); }
.mv-header__tools { display: flex; align-items: center; gap: var(--space-3); }
.mv-header__tel { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; text-decoration: none; color: inherit; padding: 0 6px; }
.mv-header .mv-btn--icon { color: inherit; background-image: none; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.35); }
.mv-header .mv-btn--icon:hover { background-image: linear-gradient(#ffffff, #ffffff); color: var(--ink-950); }
.mv-header__burger { display: none !important; }
.mv-header.is-solid { background: color-mix(in srgb, var(--surface) 88%, transparent); color: var(--ink); box-shadow: var(--shadow-header); backdrop-filter: blur(16px) saturate(1.4); -webkit-backdrop-filter: blur(16px) saturate(1.4); }
.mv-header.is-solid .mv-header__logo .is-solid-only { display: block; }
.mv-header.is-solid .mv-header__logo .is-media-only { display: none; }
[data-theme="dark"] .mv-header.is-solid .mv-header__logo .is-solid-only { display: none; }
[data-theme="dark"] .mv-header.is-solid .mv-header__logo .is-media-only { display: block; }
.mv-header.is-solid .mv-btn--icon { box-shadow: inset 0 0 0 1px var(--line); }
.mv-header.is-solid .mv-btn--icon:hover { background-image: linear-gradient(var(--ink), var(--ink)); color: var(--surface); }
@container header (max-width: 1100px) { .mv-header__tel span { display: none; } }
@container header (max-width: 979px) {
  .mv-header__bar { height: 68px; padding-inline: var(--space-4); gap: var(--space-3); }
  .mv-header__logo { width: 132px; margin-right: auto; }
  .mv-header__nav, .mv-header__tel, .mv-header__cta { display: none; }
  .mv-header__burger { display: inline-flex !important; }
}

.mv-menu { container-type: inline-size; background: var(--ink-950); color: #ffffff; padding: var(--space-4) var(--space-4) var(--space-6); display: grid; gap: var(--space-5); }
.mv-menu__top { display: flex; justify-content: space-between; align-items: center; height: 52px; }
.mv-menu__top img { width: 132px; }
.mv-menu nav { display: grid; }
.mv-menu nav a { display: flex; justify-content: space-between; align-items: baseline; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,0.12); font-size: 28px; font-weight: 600; letter-spacing: -0.02em; text-decoration: none; color: #ffffff; }
.mv-menu nav a small { font-size: 14px; font-weight: 500; letter-spacing: 0; color: #8e9aa7; }
.mv-menu__contact { display: grid; gap: var(--space-3); }
.mv-menu__note { font-size: 14px; color: #8e9aa7; margin: 0; }

.mv-search { background: var(--surface-raised); color: var(--ink); border-radius: var(--radius-lg); box-shadow: var(--shadow-raised); padding: var(--space-5); display: grid; gap: var(--space-5); max-width: 760px; }
.mv-search__field { position: relative; }
.mv-search__field .mv-i { position: absolute; left: 20px; top: 50%; transform: translateY(-50%); color: var(--ink-muted); }
.mv-search__field .mv-input { height: 64px; padding-left: 56px; font-size: 19px; border-radius: var(--radius-pill); }
.mv-search__group { display: grid; gap: var(--space-3); }
.mv-search__group > p { font-size: 14px; font-weight: 600; color: var(--ink-subtle); margin: 0; }
.mv-search__results { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.mv-search__results a { display: grid; grid-template-columns: 56px 1fr auto; gap: 2px var(--space-4); align-items: center; padding: 12px 4px; border-bottom: 1px solid var(--line); text-decoration: none; color: var(--ink); }
.mv-search__results a:hover { background: var(--surface-alt); }
.mv-search__thumb { grid-row: 1 / span 2; width: 56px; height: 56px; border-radius: var(--radius-sm); }
.mv-search__results strong { font-weight: 600; font-size: 17px; }
.mv-search__results strong mark { background: transparent; color: var(--action-text); }
.mv-search__results small { grid-column: 2; color: var(--ink-subtle); font-size: 14px; }
.mv-search__results .mv-i { grid-row: 1 / span 2; grid-column: 3; color: var(--ink-subtle); }

.mv-callbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 8px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); background: color-mix(in srgb, var(--surface-raised) 92%, transparent); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-top: 1px solid var(--line); z-index: var(--z-sticky-bar); }
.mv-callbar .mv-btn { height: 52px; min-width: 0; justify-content: center; padding: 0 14px; }
.mv-callbar .mv-btn__label { overflow: hidden; text-overflow: ellipsis; }
.mv-callbar .mv-callbar__ico { width: 18px; height: 18px; margin-right: -4px; }

/* ============================================================
   HERO
   ============================================================ */
.mv-hero { container-type: inline-size; container-name: block; position: relative; min-height: 820px; display: grid; align-items: end; color: #ffffff; background: var(--ink-950); overflow: hidden; isolation: isolate; }
.mv-hero__media { position: absolute; inset: 0; z-index: -2; border-radius: 0; }
.mv-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(11,16,21,0.70) 0%, rgba(11,16,21,0.28) 55%, rgba(11,16,21,0.04) 100%), linear-gradient(0deg, rgba(11,16,21,0.85) 0%, rgba(11,16,21,0) 48%); }
.mv-hero__header { position: absolute; top: 0; left: 0; right: 0; }
.mv-hero__body { width: 100%; max-width: calc(var(--container-max) + 2 * var(--gutter)); margin-inline: auto; padding: 160px var(--gutter) var(--space-7); display: grid; gap: var(--space-5); }
.mv-hero__title { max-width: 760px; }
.mv-hero__lead { max-width: 540px; color: rgba(255,255,255,0.86); }
.mv-hero__actions { margin-top: var(--space-3); }
.mv-hero__stats { margin-top: var(--space-8); }
.mv-hero--service { min-height: 640px; }
.mv-hero--simple { min-height: 0; background: var(--surface-alt); color: var(--ink); }
.mv-hero--simple::before { display: none; }
.mv-hero--simple .mv-hero__body { padding-top: 140px; padding-bottom: var(--space-8); }
.mv-hero--simple .mv-hero__lead { color: var(--ink-muted); }
@container block (max-width: 899px) {
  .mv-hero { min-height: 700px; }
  .mv-hero--service { min-height: 580px; }
  .mv-hero__body { padding: 120px var(--space-4) var(--space-6); gap: var(--space-4); }
  .mv-hero__actions .mv-btn { width: 100%; justify-content: space-between; }
  .mv-hero__stats { margin-top: var(--space-6); }
}
.mv-crumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 14px; color: rgba(255,255,255,0.75); list-style: none; padding: 0; margin: 0; }
.mv-crumbs a { color: inherit; text-decoration: none; }
.mv-crumbs a:hover { color: #ffffff; text-decoration: underline; }
.mv-crumbs li + li::before { content: "/"; margin-right: 8px; opacity: 0.6; }
.mv-crumbs [aria-current] { color: #ffffff; }
@container block (max-width: 640px) { .mv-crumbs li:not(:nth-last-child(2)) { display: none; } .mv-crumbs li + li::before { content: none; } .mv-crumbs li:nth-last-child(2) a::before { content: "← "; } }

/* ============================================================
   STATS: universalus įrodymų blokas, be linijų. 2–5 elementai.
   ============================================================ */
.mv-stats { display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: var(--space-6); list-style: none; margin: 0; padding: 0; }
.mv-stat { display: grid; gap: 8px; align-content: start; }
.mv-stat__value { font-size: 56px; font-weight: 600; line-height: 1; letter-spacing: -0.035em; font-stretch: 88%; display: flex; align-items: baseline; gap: 6px; }
.mv-stat__value small { font-size: 0.42em; font-weight: 600; letter-spacing: -0.01em; color: var(--ink-muted); font-stretch: 100%; }
.mv-stat__label { font-size: 16px; line-height: 1.45; color: var(--ink-muted); max-width: 240px; }
.mv-stats--on-media .mv-stat__value { font-size: 36px; color: #ffffff; }
.mv-stats--on-media .mv-stat__value small { color: rgba(255,255,255,0.75); }
.mv-stats--on-media .mv-stat__label { color: rgba(255,255,255,0.75); font-size: 14px; }
.mv-stats--cards .mv-stat { padding: var(--space-6) var(--space-5); border-radius: var(--radius-lg); background: var(--surface-alt); }
.mv-section--alt .mv-stats--cards .mv-stat { background: var(--surface); }
@container block (max-width: 899px) {
  .mv-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5) var(--space-4); }
  .mv-stat__value { font-size: 38px; }
  .mv-stats--on-media .mv-stat__value { font-size: 26px; }
}

/* ============================================================
   PARTNERIŲ / ĮRANGOS JUOSTA
   ============================================================ */
.mv-logos { display: grid; grid-template-columns: minmax(180px, 280px) 1fr; gap: var(--space-6); align-items: center; }
.mv-logos__label { font-size: 16px; line-height: 1.45; color: var(--ink-muted); margin: 0; }
.mv-logos__row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-5) var(--space-8); list-style: none; margin: 0; padding: 0; }
.mv-logos__row img { height: 28px; width: auto; filter: brightness(0); opacity: 0.72; transition: opacity var(--dur-fast); }
.mv-logos__row li:hover img { opacity: 1; }
[data-theme="dark"] .mv-logos__row img { filter: brightness(0) invert(1); }
@container block (max-width: 899px) { .mv-logos { grid-template-columns: 1fr; gap: var(--space-4); } .mv-logos__row { gap: var(--space-5) var(--space-6); } .mv-logos__row img { height: 22px; } }

/* ============================================================
   STATEMENT
   ============================================================ */
.mv-statement { font-size: 80px; font-weight: 600; line-height: 0.98; letter-spacing: -0.035em; text-transform: uppercase; font-stretch: 88%; margin: 0; text-wrap: balance; }
.mv-statement .mv-pill-media { display: inline-block; vertical-align: middle; width: 2.2em; height: 0.78em; border-radius: var(--radius-pill); overflow: hidden; position: relative; margin: 0 0.08em; transform: translateY(-0.06em); isolation: isolate; }
.mv-statement .mv-pill-media .mv-media__ph { position: absolute; inset: 0; }
.mv-statement .is-muted { color: var(--ink-subtle); }
.mv-statement .is-sky { color: var(--action-text); }
[data-theme="dark"] .mv-statement .is-sky { color: var(--brand-sky); }
.mv-statement-foot { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-8); margin-top: var(--space-8); }
@container block (max-width: 899px) { .mv-statement { font-size: 40px; } .mv-statement-foot { grid-template-columns: 1fr; gap: var(--space-4); margin-top: var(--space-6); } }

/* ============================================================
   SPLIT: medija (nuotrauka, video arba didelė tipografija) + tekstas
   ============================================================ */
.mv-split { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-8); align-items: center; }
.mv-split--reverse > :first-child { order: 2; }
.mv-split__media { min-height: 560px; }
.mv-split__body { display: grid; gap: var(--space-5); align-content: center; max-width: 560px; }
.mv-split__body .body-l, .mv-split__body .body { color: var(--ink-muted); }
.mv-split__foot { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-5); }
.mv-split__logo { display: inline-flex; align-items: center; gap: var(--space-3); font-size: 14px; color: var(--ink-subtle); }
.mv-split__logo img { height: 22px; width: auto; filter: brightness(0); opacity: 0.75; }
[data-theme="dark"] .mv-split__logo img { filter: brightness(0) invert(1); }
/* Didelės tipografijos „medija“ */
.mv-figure { display: grid; align-content: space-between; gap: var(--space-6); min-height: 480px; padding: var(--space-7); border-radius: var(--radius-lg); background: var(--surface-alt); position: relative; overflow: hidden; }
[data-theme="dark"] .mv-figure { background: linear-gradient(160deg, #13212e 0%, var(--ink-950) 70%); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08); }
.mv-figure__value { margin: 0; font-size: 200px; font-weight: 600; line-height: 0.85; letter-spacing: -0.06em; font-stretch: 80%; background: linear-gradient(180deg, var(--brand-navy) 0%, var(--action) 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
[data-theme="dark"] .mv-figure__value { background-image: linear-gradient(180deg, var(--brand-sky) 0%, var(--action-grad-a) 100%); }
.mv-figure__caption { margin: 0; font-size: 16px; line-height: 1.5; color: var(--ink-muted); max-width: 340px; }
/* Sąrašai: numeruotas (numatytas) arba eilutės */
.mv-list { display: grid; margin: 0; padding: 0; list-style: none; counter-reset: li; }
.mv-list > li { display: grid; grid-template-columns: 48px 1fr; gap: 4px var(--space-4); padding: 18px 0; border-top: 1px solid var(--line); counter-increment: li; }
.mv-list > li::before { content: counter(li, decimal-leading-zero); grid-row: 1 / span 2; font-size: 14px; font-weight: 600; color: var(--action-text); padding-top: 3px; font-variant-numeric: tabular-nums; }
[data-theme="dark"] .mv-list > li::before { color: var(--brand-sky); }
.mv-list strong { font-weight: 600; font-size: 18px; letter-spacing: -0.01em; }
.mv-list p { margin: 0; color: var(--ink-muted); font-size: 16px; line-height: 1.55; }
.mv-list--rows > li { grid-template-columns: 1fr 1.3fr; gap: var(--space-5); padding: 20px 0; }
.mv-list--rows > li::before { display: none; }
@container block (max-width: 899px) {
  .mv-split { grid-template-columns: 1fr; gap: var(--space-6); }
  .mv-split--reverse > :first-child { order: 0; }
  .mv-split__media { min-height: 0; aspect-ratio: 4 / 3; }
  .mv-figure { min-height: 0; padding: var(--space-5); gap: var(--space-4); }
  .mv-figure__value { font-size: 112px; }
  .mv-list--rows > li { grid-template-columns: 1fr; gap: 4px; }
}

/* ============================================================
   SHOWCASE: sąrašas, kuris keičia mediją (paspaudus arba slenkant)
   ============================================================ */
.mv-show { display: grid; grid-template-columns: 1fr 1.1fr; gap: var(--space-8); align-items: center; }
.mv-show--reverse .mv-show__stage { order: -1; }
.mv-show__items { display: grid; border-top: 1px solid var(--line); }
.mv-show__item { display: grid; grid-template-columns: 96px 1fr; gap: 4px var(--space-4); padding: 20px 0; border: 0; border-bottom: 1px solid var(--line); background: none; text-align: left; cursor: pointer; font-family: var(--font-sans); color: var(--ink-subtle); transition: color var(--dur-base); }
.mv-show__label { grid-row: 1 / span 2; font-size: 14px; font-weight: 600; padding-top: 4px; }
.mv-show__item strong { font-size: 20px; font-weight: 600; letter-spacing: -0.01em; color: inherit; }
.mv-show__item span:last-child { font-size: 16px; line-height: 1.55; }
.mv-show__item:hover { color: var(--ink-muted); }
.mv-show__item[aria-selected="true"] { color: var(--ink); }
.mv-show__item[aria-selected="true"] span:last-child { color: var(--ink-muted); }
.mv-show__item[aria-selected="true"] .mv-show__label { color: var(--action-text); }
.mv-show__stage { position: relative; aspect-ratio: 1 / 1; border-radius: var(--radius-lg); overflow: hidden; background: var(--brand-sky-wash); isolation: isolate; }
.mv-show__panel { position: absolute; inset: 0; transition: opacity var(--dur-slow) var(--ease-out); }
.mv-show__panel[data-step] { opacity: 0; }
.mv-show__panel.is-active { opacity: 1; }
.mv-show__panel > .mv-media { position: absolute; inset: 0; border-radius: 0; }
.mv-show [data-steps].is-off { opacity: 0; }
@container block (max-width: 899px) { .mv-show { grid-template-columns: 1fr; gap: var(--space-5); } .mv-show__stage { order: -1; } .mv-show__item { grid-template-columns: 80px 1fr; } }
/* Energijos schema: vienas iš Showcase turinio variantų */
.mv-flow { width: 100%; height: 100%; display: block; }
.mv-flow__node { fill: var(--surface-raised); stroke: var(--line); stroke-width: 1; }
.mv-flow__value { fill: var(--ink); font-family: var(--font-sans); font-size: 26px; font-weight: 600; letter-spacing: -0.03em; }
.mv-flow__label { fill: var(--ink-subtle); font-family: var(--font-sans); font-size: 14px; font-weight: 500; }
.mv-flow__wire { fill: none; stroke: var(--line-control); stroke-width: 2; }
.mv-flow__pulse { fill: none; stroke: var(--energy); stroke-width: 3; stroke-linecap: round; stroke-dasharray: 10 18; animation: mv-flow 1.6s linear infinite; transition: opacity var(--dur-base); }
@keyframes mv-flow { to { stroke-dashoffset: -28; } }
@media (prefers-reduced-motion: reduce) { .mv-flow__pulse { animation: none; } }

/* ============================================================
   ŽINGSNIAI
   ============================================================ */
.mv-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); gap: var(--space-5); counter-reset: step; position: relative; z-index: 0; }
.mv-step { position: relative; display: grid; gap: var(--space-3); align-content: start; padding-top: var(--space-6); counter-increment: step; }
.mv-step::before { content: "0" counter(step); position: absolute; top: 0; left: 0; font-size: 14px; font-weight: 600; color: var(--action-text); background: var(--surface); padding-right: 12px; }
.mv-section--alt .mv-step::before { background: var(--surface-alt); }
.mv-step::after { content: ""; position: absolute; top: 9px; left: 0; right: calc(-1 * var(--space-5)); height: 1px; background: var(--line); z-index: -1; }
.mv-step:last-child::after { right: 0; }
.mv-step h3 { font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -0.01em; margin: 0; }
.mv-step p { font-size: 16px; line-height: 1.55; color: var(--ink-muted); margin: 0; }
@container block (max-width: 899px) {
  .mv-steps { grid-template-columns: 1fr; gap: 0; }
  .mv-step { grid-template-columns: 52px 1fr; padding: var(--space-4) 0; border-bottom: 1px solid var(--line); }
  .mv-step::before { position: static; grid-row: 1 / span 2; padding-top: 3px; background: none; }
  .mv-step::after { display: none; }
}

/* ============================================================
   CARDS: vienas kortelių blokas, 3 išdėstymai
   --tiles (tekstas ant nuotraukos) · --stacked (nuotrauka viršuje) · --offer (kaina + sąrašas)
   ============================================================ */
.mv-cards { display: grid; gap: var(--space-5); grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.mv-card { position: relative; display: grid; gap: var(--space-4); align-content: start; color: var(--ink); text-decoration: none; isolation: isolate; }
.mv-card__media { aspect-ratio: 4 / 3; }
.mv-card__media .mv-media__ph { transition: transform var(--dur-slow) var(--ease-out); }
a.mv-card:hover .mv-card__media .mv-media__ph, .mv-card.is-hover .mv-card__media .mv-media__ph { transform: scale(1.04); }
.mv-card__tags { position: absolute; left: 14px; top: 14px; z-index: 2; }
.mv-card__body { display: grid; gap: 6px; }
.mv-card__meta { font-size: 15px; color: var(--ink-subtle); }
.mv-card__title { font-size: 22px; font-weight: 600; line-height: 1.25; letter-spacing: -0.015em; display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-3); margin: 0; }
.mv-card__title .mv-i { color: var(--ink-subtle); margin-top: 4px; transition: transform var(--dur-base) var(--ease-out), color var(--dur-base); }
a.mv-card:hover .mv-card__title .mv-i, .mv-card.is-hover .mv-card__title .mv-i { transform: translateX(4px); color: var(--action-text); }
.mv-card__text { font-size: 16px; line-height: 1.55; color: var(--ink-muted); margin: 0; }
.mv-card__num { font-size: 56px; font-weight: 600; letter-spacing: -0.04em; line-height: 1; color: var(--line-control); font-stretch: 88%; }
.mv-card__price { display: flex; align-items: baseline; gap: 8px; }
.mv-card__price strong { font-size: 40px; font-weight: 600; letter-spacing: -0.035em; line-height: 1; font-stretch: 88%; }
.mv-card__price span { font-size: 14px; color: var(--ink-subtle); }
.mv-card__list { list-style: none; margin: 0; padding: 0; display: grid; }
.mv-card__list li { padding: 11px 0; border-top: 1px solid var(--line); font-size: 16px; color: var(--ink-muted); }
.mv-card__arrow { display: none; }

/* --tiles: tekstas ant nuotraukos, mozaika */
.mv-cards--tiles { grid-template-columns: repeat(12, 1fr); grid-auto-rows: 300px; gap: var(--space-4); }
.mv-cards--tiles .mv-card { grid-column: span 4; display: flex; align-items: flex-end; gap: var(--space-4); padding: var(--space-5); border-radius: var(--radius-lg); overflow: hidden; color: #ffffff; }
.mv-cards--tiles .mv-card--wide { grid-column: span 8; }
.mv-cards--tiles .mv-card--half { grid-column: span 6; }
.mv-cards--tiles .mv-card--tall { grid-row: span 2; }
.mv-cards--tiles .mv-card__media { position: absolute; inset: 0; z-index: -2; aspect-ratio: auto; border-radius: 0; }
.mv-cards--tiles .mv-card::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, var(--scrim-media) 0%, rgba(11,16,21,0) 60%); }
.mv-cards--tiles .mv-card__body { flex: 1; }
.mv-cards--tiles .mv-card__title { font-size: 28px; line-height: 1.15; letter-spacing: -0.02em; }
.mv-cards--tiles .mv-card__title .mv-i { display: none; }
.mv-cards--tiles .mv-card__text { color: rgba(255,255,255,0.82); font-size: 15px; max-width: 380px; }
.mv-cards--tiles .mv-card__arrow { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; flex: none; background: rgba(255,255,255,0.14); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.35); backdrop-filter: blur(8px); transition: background var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base); }
.mv-cards--tiles a.mv-card:hover .mv-card__arrow, .mv-cards--tiles .mv-card.is-hover .mv-card__arrow { background: linear-gradient(105deg, var(--action-grad-a), var(--action-grad-b)); box-shadow: var(--shadow-action); transform: rotate(-45deg); }
.mv-cards--tiles a.mv-card:hover .mv-card__media .mv-media__ph, .mv-cards--tiles .mv-card.is-hover .mv-card__media .mv-media__ph { transform: scale(1.04); }

/* --offer: kortelė su kaina ir sąrašu */
.mv-cards--offer { gap: var(--space-4); align-items: stretch; }
.mv-cards--offer .mv-card { grid-template-rows: auto auto auto 1fr auto; gap: var(--space-5); padding: 10px 10px var(--space-5); border-radius: calc(var(--radius-lg) + 6px); background: var(--surface); box-shadow: inset 0 0 0 1px var(--line); }
.mv-cards--offer .mv-card__media { aspect-ratio: 16 / 10; border-radius: var(--radius-lg); }
.mv-cards--offer .mv-card > :not(.mv-card__media) { margin-inline: var(--space-4); }
.mv-cards--offer .mv-card__title { font-size: 24px; letter-spacing: -0.02em; align-items: center; }
.mv-cards--offer .mv-card.is-featured { background: var(--ink-950); box-shadow: var(--shadow-raised); }
html[data-theme="dark"] .mv-cards--offer .mv-card.is-featured, .mv-section[data-theme="dark"] .mv-cards--offer .mv-card.is-featured { background: var(--brand-navy); }
.mv-cards-note { margin-top: var(--space-6); font-size: 15px; color: var(--ink-subtle); max-width: 760px; }

@container block (max-width: 1100px) { .mv-cards:not(.mv-cards--tiles) { grid-template-columns: repeat(min(var(--n, 3), 2), minmax(0, 1fr)); } }
@container block (max-width: 899px) {
  .mv-cards--tiles { grid-template-columns: 1fr; grid-auto-rows: auto; gap: var(--space-3); }
  .mv-cards--tiles .mv-card, .mv-cards--tiles .mv-card--wide, .mv-cards--tiles .mv-card--half { grid-column: 1 / -1; grid-row: auto; min-height: 220px; padding: var(--space-4); }
  .mv-cards--tiles .mv-card--tall { min-height: 320px; }
  .mv-cards--tiles .mv-card__title { font-size: 22px; }
  .mv-cards--offer .mv-card.is-featured { order: -1; }
}
@container block (max-width: 640px) {
  .mv-cards:not(.mv-cards--tiles) { grid-template-columns: 1fr; gap: var(--space-6); }
  /* Kompaktiškas sąrašas telefone (įjungiamas) */
  .mv-cards.mv-cards--compact { grid-template-columns: 1fr; gap: 0; grid-auto-rows: auto; border-top: 1px solid var(--line); }
  .mv-cards--compact .mv-card, .mv-cards--compact .mv-card--wide, .mv-cards--compact .mv-card--half, .mv-cards--compact .mv-card--tall { grid-column: 1 / -1; display: grid; grid-template-columns: 72px 1fr auto; align-items: center; gap: var(--space-4); min-height: 0; padding: 12px 0; border-radius: 0; border-bottom: 1px solid var(--line); color: var(--ink); overflow: visible; }
  .mv-cards--compact .mv-card::before { display: none; }
  .mv-cards--compact .mv-card__media { position: relative; inset: auto; z-index: 0; width: 72px; height: 72px; aspect-ratio: 1; border-radius: var(--radius-sm); }
  .mv-cards--compact .mv-card__title { font-size: 18px; }
  .mv-cards--compact .mv-card__text { font-size: 14px; color: var(--ink-subtle); }
  .mv-cards--compact .mv-card__arrow { width: auto; height: auto; background: none; box-shadow: none; backdrop-filter: none; color: var(--ink); }
}
/* ============================================================
   ATSILIEPIMAI
   ============================================================ */
.mv-reviews-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: var(--space-5); margin-bottom: var(--space-7); }
.mv-rating { display: flex; align-items: center; gap: var(--space-4); }
.mv-rating__num { font-size: 56px; font-weight: 600; line-height: 1; letter-spacing: -0.04em; font-stretch: 88%; }
.mv-stars { display: flex; gap: 2px; color: var(--energy); }
.mv-stars .mv-i { width: 18px; height: 18px; }
.mv-rating small { display: block; font-size: 14px; color: var(--ink-subtle); margin-top: 4px; }
.mv-reviews { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); }
.mv-review { display: grid; grid-template-rows: auto 1fr auto; gap: var(--space-5); padding: var(--space-6); border-radius: var(--radius-lg); background: var(--surface); box-shadow: inset 0 0 0 1px var(--line); }
.mv-section--alt .mv-review { box-shadow: none; }
.mv-review blockquote { margin: 0; font-size: 19px; line-height: 1.5; color: var(--ink); letter-spacing: -0.005em; }
.mv-review footer { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
.mv-review cite { font-style: normal; font-weight: 600; font-size: 16px; display: block; }
.mv-review footer small { font-size: 14px; color: var(--ink-subtle); }
.mv-review__src { font-size: 13px; font-weight: 600; color: var(--ink-subtle); }
@container block (max-width: 899px) { .mv-reviews { grid-template-columns: 1fr; } .mv-review { padding: var(--space-5); } .mv-rating__num { font-size: 40px; } }

/* ============================================================
   DUK
   ============================================================ */
.mv-faq { display: grid; grid-template-columns: 5fr 7fr; gap: var(--space-8); align-items: start; }
.mv-faq__aside { display: grid; gap: var(--space-5); position: sticky; top: 120px; }
.mv-faq__aside .body { color: var(--ink-muted); }
@container block (max-width: 899px) { .mv-faq { grid-template-columns: 1fr; gap: var(--space-5); } .mv-faq__aside { position: static; } }

/* ============================================================
   CTA JUOSTA: pilno pločio nuotrauka su veiksmu
   ============================================================ */
.mv-ctaband { container-type: inline-size; container-name: block; position: relative; overflow: hidden; isolation: isolate; color: #ffffff; background: var(--ink-950); }
.mv-ctaband > .mv-media { position: absolute; inset: 0; z-index: -2; border-radius: 0; }
.mv-ctaband::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(11,16,21,0.88) 0%, rgba(11,16,21,0.55) 50%, rgba(2,77,125,0.25) 100%); }
.mv-ctaband__inner { display: grid; grid-template-columns: 7fr 5fr; gap: var(--space-8); align-items: end; padding-block: var(--space-9); }
.mv-ctaband__main { display: grid; gap: var(--space-5); }
.mv-ctaband__main .body-l { color: rgba(255,255,255,0.84); max-width: 520px; }
.mv-ctaband__next { list-style: none; margin: 0; padding: var(--space-5); border-radius: var(--radius-lg); background: rgba(11,16,21,0.42); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.16); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); display: grid; gap: 0; counter-reset: nx; }
.mv-ctaband__next li { display: grid; grid-template-columns: 36px 1fr; gap: 2px 12px; padding: 14px 0; counter-increment: nx; }
.mv-ctaband__next li + li { border-top: 1px solid rgba(255,255,255,0.12); }
.mv-ctaband__next li::before { content: counter(nx); grid-row: 1 / span 2; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; font-size: 13px; font-weight: 600; background: rgba(255,255,255,0.12); color: #ffffff; }
.mv-ctaband__next strong { font-size: 17px; font-weight: 600; }
.mv-ctaband__next span { font-size: 15px; color: rgba(255,255,255,0.72); }
@container block (max-width: 899px) { .mv-ctaband__inner { grid-template-columns: 1fr; gap: var(--space-6); padding-block: var(--space-8); } .mv-ctaband__main .mv-btn { width: 100%; justify-content: space-between; } }

/* ============================================================
   UŽKLAUSOS FORMA
   ============================================================ */
.mv-cta { display: grid; grid-template-columns: 5fr 7fr; gap: var(--space-8); align-items: start; }
.mv-cta__aside { display: grid; gap: var(--space-5); }
.mv-cta__aside .body-l { color: var(--ink-muted); }
.mv-people { display: grid; margin-top: var(--space-3); }
.mv-person { display: grid; grid-template-columns: 64px 1fr; gap: 2px var(--space-4); align-items: center; padding: 16px 0; border-top: 1px solid var(--line); }
.mv-person__photo { grid-row: 1 / span 2; width: 64px; height: 64px; border-radius: 50%; }
.mv-person strong { font-size: 17px; font-weight: 600; }
.mv-person strong small { font-weight: 400; color: var(--ink-subtle); font-size: 14px; margin-left: 6px; }
.mv-person a { font-size: 16px; color: var(--action-text); text-decoration: none; font-weight: 600; }
.mv-form { background: var(--surface-raised); border-radius: var(--radius-lg); padding: var(--space-6); display: grid; gap: var(--space-5); box-shadow: inset 0 0 0 1px var(--line), var(--shadow-raised); }
.mv-form__foot { display: grid; gap: var(--space-3); }
.mv-form__note { font-size: 15px; color: var(--ink-muted); margin: 0; }
.mv-form__note strong { color: var(--ink); }
@container block (max-width: 899px) { .mv-cta { grid-template-columns: 1fr; gap: var(--space-6); } .mv-form { padding: var(--space-5) var(--space-4); } }

/* ============================================================
   FOOTER: didelis kvietimas, 24/7 juosta, nukirstas logotipas
   ============================================================ */
.mv-footer { container-type: inline-size; container-name: block; position: relative; overflow: hidden; background: var(--ink-950); color: #f3f6f9; padding-top: var(--space-9); }
.mv-footer a { color: #b3bec9; text-decoration: none; }
.mv-footer a:hover { color: #ffffff; }
.mv-footer__call { display: grid; grid-template-columns: 7fr 5fr; gap: var(--space-8); align-items: end; padding-bottom: var(--space-8); }
.mv-footer__title { font-size: 64px; font-weight: 600; line-height: 1.02; letter-spacing: -0.035em; margin: 0; color: #ffffff; text-wrap: balance; }
.mv-footer__title span { color: var(--brand-sky); }
.mv-footer__phone { display: grid; gap: var(--space-4); justify-items: start; }
.mv-footer__phone a.mv-footer__num { font-size: 40px; font-weight: 600; letter-spacing: -0.03em; color: #ffffff; font-stretch: 88%; background: linear-gradient(currentColor, currentColor) left bottom / 0 2px no-repeat; transition: background-size var(--dur-base) var(--ease-out); }
.mv-footer__phone a.mv-footer__num:hover { background-size: 100% 2px; }
.mv-footer__phone small { font-size: 15px; color: #8e9aa7; }
.mv-footer__care { display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-6); align-items: center; padding: var(--space-5) 0; border-top: 1px solid rgba(255,255,255,0.12); border-bottom: 1px solid rgba(255,255,255,0.12); font-size: 16px; color: #d6dee5; }
.mv-footer__care b { font-weight: 600; color: #ffffff; display: inline-flex; align-items: center; gap: 10px; }
.mv-footer__care b::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #4cc38a; box-shadow: 0 0 0 4px rgba(76,195,138,0.18); animation: mv-pulse 2s ease-in-out infinite; }
@keyframes mv-pulse { 50% { box-shadow: 0 0 0 8px rgba(76,195,138,0); } }
.mv-footer__cols { display: grid; grid-template-columns: 3fr 2fr 2fr 3fr; gap: var(--space-6); padding: var(--space-7) 0; }
.mv-footer h4 { font-size: 14px; font-weight: 600; color: #8e9aa7; margin: 0 0 var(--space-4); }
.mv-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; font-size: 16px; color: #b3bec9; }
.mv-footer__about { font-size: 16px; line-height: 1.6; color: #b3bec9; margin: 0; max-width: 320px; }
.mv-footer__certs { display: grid; gap: 10px; }
.mv-cert { display: grid; gap: 2px; padding: 12px 16px; border-radius: var(--radius-sm); background: rgba(255,255,255,0.04); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.12); }
.mv-cert strong { font-size: 15px; font-weight: 600; color: #ffffff; }
.mv-cert small { font-size: 13px; color: #8e9aa7; }
.mv-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-4); font-size: 14px; color: #8e9aa7; padding-bottom: var(--space-5); position: relative; z-index: 1; }
.mv-footer__bottom nav { display: flex; flex-wrap: wrap; gap: var(--space-5); }
.mv-footer__wordmark { position: relative; margin-top: var(--space-4); height: 15vw; max-height: 210px; overflow: hidden; pointer-events: none; }
.mv-footer__wordmark img { width: 100%; max-width: calc(var(--container-max)); margin-inline: auto; opacity: 1; filter: brightness(0) invert(1); mix-blend-mode: normal; -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,0.22) 0%, rgba(0,0,0,0) 85%); mask-image: linear-gradient(180deg, rgba(0,0,0,0.22) 0%, rgba(0,0,0,0) 85%); }
@container block (max-width: 899px) {
  .mv-footer { padding-top: var(--space-8); }
  .mv-footer__call { grid-template-columns: 1fr; gap: var(--space-5); padding-bottom: var(--space-6); }
  .mv-footer__title { font-size: 38px; }
  .mv-footer__phone a.mv-footer__num { font-size: 30px; }
  .mv-footer__cols { grid-template-columns: 1fr 1fr; gap: var(--space-6) var(--space-5); }
  .mv-footer__cols > :first-child, .mv-footer__cols > :last-child { grid-column: 1 / -1; }
  .mv-footer__bottom { padding-bottom: calc(var(--space-5) + 76px); }
  .mv-footer__wordmark { height: 24vw; }
}

@media (prefers-reduced-motion: reduce) { .mv *, .mv *::before, .mv *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; } }

/* Pataisos */
.mv-section--alt .mv-figure { background: var(--surface); }
.mv-section--sky .mv-figure { background: var(--surface); }
.mv-cards--offer .mv-card > .mv-btn { width: auto; }
.mv-flow__pulse.is-off { opacity: 0; }
@container block (max-width: 640px) { .mv-cards--compact .mv-ph__label { display: none; } }
