/* WE MAFIA — элементы системы. Все значения берутся из tokens.css (переменные --wm-*, --space-*, --motion-*).
   Префикс классов: wm-. Подключать после tokens.css. Шрифты Oswald, Montserrat, Playfair Display — Google Fonts. */

/* ---------- основа страницы ---------- */
*,*::before,*::after{box-sizing:border-box}
html{background:var(--wm-night);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--wm-night);color:var(--wm-white);font-family:var(--font-text);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
@media(min-width:960px){body{font-size:17px;line-height:1.55}}
.wm-page{min-height:100dvh;display:flex;flex-direction:column}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--wm-white)}
img,svg{display:block;max-width:100%}
:focus-visible{outline:var(--focus-width) solid var(--wm-white);outline-offset:var(--focus-offset)}
.wm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wm-wrap{max-width:var(--content-max);margin:0 auto;padding:0 var(--grid-phone-margin)}
@media(min-width:960px){.wm-wrap{padding:0 var(--grid-desktop-margin)}}
.wm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-phone-gutter)}
@media(min-width:960px){.wm-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-desktop-gutter)}}
.wm-section{padding:var(--space-16) 0}
@media(min-width:960px){.wm-section{padding:var(--space-24) 0}.wm-section--chapter{padding-top:var(--space-32)}}
.wm-text{max-width:var(--text-max)}
.wm-grey{color:var(--wm-grey)}
.wm-small{font-size:14px;line-height:1.45}
.wm-todo{color:var(--wm-grey);border-bottom:1px dashed var(--wm-field-line)}
.wm-num{font-variant-numeric:tabular-nums}

/* типографика-приёмы */
.wm-eyebrow{font-family:var(--font-display);font-size:12px;line-height:1.3;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey);font-variant-numeric:tabular-nums}
.wm-eyebrow b{color:var(--wm-white);font-weight:500}
@media(min-width:960px){.wm-eyebrow--lg{font-size:14px}}
.wm-top{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);align-items:start}
.wm-top__r{text-align:right}
@media(max-width:959px){.wm-top__stack{grid-column:1/-1;text-align:left;max-width:none}}
.wm-poster{font-family:var(--font-display);font-weight:700;font-size:78px;line-height:.9;letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap}
.wm-poster em,.wm-accent{font-family:var(--font-accent);font-style:italic;font-weight:400;font-size:.9em;line-height:1;text-transform:none;letter-spacing:0;color:var(--wm-champagne);position:relative;top:.14em;margin-left:-.02em}
@media(min-width:960px){.wm-poster{font-size:clamp(120px,10.5vw,152px);line-height:.88;letter-spacing:-.015em}}
.wm-h1{font-family:var(--font-display);font-weight:700;font-size:44px;line-height:.92;letter-spacing:-.01em;text-transform:uppercase}
.wm-h1 em{font-family:var(--font-accent);font-style:italic;font-weight:400;font-size:.9em;line-height:1;text-transform:none;letter-spacing:0;color:var(--wm-champagne);position:relative;top:.12em}
@media(min-width:960px){.wm-h1{font-size:72px;line-height:.9}}
.wm-h2{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;text-transform:uppercase;font-variant-numeric:tabular-nums}
@media(min-width:960px){.wm-h2{font-size:40px}}
.wm-h3{font-family:var(--font-display);font-weight:500;font-size:24px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase}
.wm-numeral{font-family:var(--font-display);font-weight:600;font-size:24px;line-height:1;font-variant-numeric:tabular-nums}
@media(min-width:960px){.wm-numeral{font-size:28px}}
.wm-quote{font-family:var(--font-accent);font-style:italic;font-size:22px;line-height:1.15;color:var(--wm-champagne)}
@media(min-width:960px){.wm-quote{font-size:28px}}
.wm-wordmark{font-family:var(--font-display);font-weight:500;font-size:17px;line-height:1;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--wm-white);display:inline-flex;align-items:center;min-height:var(--tap-min)}
@media(min-width:960px){.wm-wordmark{font-size:20px}}

/* свет */
.wm-spot{position:relative;background:var(--spot-lamp)}
.wm-spot--top{background:var(--spot-lamp-top)}
.wm-spot--gold{background:var(--spot-gold)}
.wm-grain::after{content:"";position:absolute;inset:0;pointer-events:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='160' height='160' filter='url(%23g)'/></svg>");background-size:var(--grain-tile) var(--grain-tile);opacity:var(--grain-opacity);mix-blend-mode:overlay}
.wm-grain>*{position:relative}
.wm-band{position:relative;background:#000;height:96px;display:flex;align-items:flex-end;padding:0 var(--grid-phone-margin) var(--space-4)}
@media(min-width:960px){.wm-band{padding:0 var(--grid-desktop-margin) var(--space-4)}.wm-band--2{height:128px}.wm-band--3{height:160px}}
.wm-band .wm-eyebrow{color:var(--wm-grey-2)}
.wm-rim{position:relative}
.wm-rim::before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--rim-width);background:var(--wm-red);z-index:1}
.wm-rim::after{content:"";position:absolute;left:-16px;top:-48px;bottom:-48px;width:220px;background:var(--rim-glow);pointer-events:none}
@media(min-width:960px){.wm-rim::after{width:260px}}
.wm-rim>*{position:relative;z-index:1}
.wm-rim--gold::before{background:var(--wm-gold)}
.wm-rim--gold::after{background:radial-gradient(ellipse 55% 50% at 0% 50%,#cd8b4538 0%,#cd8b4500 70%)}
.wm-occ{position:relative;overflow:hidden;--occ-size:clamp(110px,23vw,360px);--occ-top:0px}
.wm-occ__word{position:absolute;left:var(--grid-phone-margin);top:calc(var(--occ-top) + .14em);font-family:var(--font-display);font-weight:700;font-size:var(--occ-size);line-height:.8;letter-spacing:-.02em;text-transform:uppercase;color:var(--wm-white);pointer-events:none;user-select:none;white-space:nowrap}
@media(min-width:960px){.wm-occ__word{left:var(--grid-desktop-margin)}}
.wm-occ__front{position:relative;background:var(--wm-night);margin-top:calc(var(--occ-top) + var(--occ-size)*.52)}
.wm-photo{position:relative;overflow:hidden;background:var(--wm-surface)}
.wm-photo img{width:100%;height:100%;object-fit:cover;filter:var(--photo-tone)}
.wm-photo::before{content:"";position:absolute;inset:0;background:var(--scrim-fade);z-index:1;pointer-events:none}
.wm-photo__text{position:absolute;left:0;right:0;bottom:0;padding:var(--space-4);z-index:2}

/* движение */
.wm-rv{opacity:0;transform:translateY(var(--motion-shift));transition:opacity var(--motion-reveal) var(--motion-ease),transform var(--motion-reveal) var(--motion-ease)}
.is-go .wm-rv,.wm-rv.is-go{opacity:1;transform:none}
.is-go .wm-rv:nth-child(2){transition-delay:calc(var(--motion-stagger)*1)}
.is-go .wm-rv:nth-child(3){transition-delay:calc(var(--motion-stagger)*2)}
.is-go .wm-rv:nth-child(4){transition-delay:calc(var(--motion-stagger)*3)}
.is-go .wm-rv:nth-child(5){transition-delay:calc(var(--motion-stagger)*4)}
.is-go .wm-rv:nth-child(6){transition-delay:calc(var(--motion-stagger)*5)}
.wm-ig::before{content:"";position:absolute;inset:0;background:var(--wm-night);opacity:1;transition:opacity var(--motion-light) var(--motion-ease);pointer-events:none;z-index:0}
.wm-ig.is-go::before{opacity:0}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .wm-rv{transform:none;transition:opacity var(--motion-press) linear}
  .is-go .wm-rv{transition-delay:0ms}
  .wm-ig::before{transition:none}
}

/* ---------- значки ---------- */
.wm-icon{width:var(--icon-size);height:var(--icon-size);flex:none;fill:none;stroke:currentColor;stroke-width:var(--icon-stroke);stroke-linecap:round;stroke-linejoin:round}
.wm-icon--sm{width:20px;height:20px}

/* ---------- кнопка ---------- */
.wm-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-6);border:1px solid transparent;border-radius:var(--radius-0);font-family:var(--font-text);font-size:15px;font-weight:600;line-height:1;letter-spacing:.02em;text-decoration:none;cursor:pointer;white-space:nowrap;background:var(--wm-red);color:var(--wm-white);transition:background var(--motion-press) var(--motion-ease-press),border-color var(--motion-press) var(--motion-ease-press),color var(--motion-press) var(--motion-ease-press)}
@media(min-width:960px){.wm-btn{height:var(--control-height-desktop)}}
.wm-btn:hover{background:var(--wm-red-hover)}
.wm-btn:active,.wm-btn.is-active{background:var(--wm-red-pressed)}
.wm-btn--secondary{background:var(--wm-white);color:var(--wm-night)}
.wm-btn--secondary:hover{background:var(--wm-white-hover)}
.wm-btn--secondary:active,.wm-btn--secondary.is-active{background:var(--wm-grey)}
.wm-btn--outline{background:transparent;color:var(--wm-white);border-color:var(--wm-field-line)}
.wm-btn--outline:hover{background:transparent;border-color:var(--wm-white)}
.wm-btn--outline:active,.wm-btn--outline.is-active{background:var(--wm-surface-2);border-color:var(--wm-white)}
.wm-btn--text{background:transparent;color:var(--wm-white);padding:0 var(--space-2);text-decoration:underline;text-underline-offset:4px;font-weight:500}
.wm-btn--text:hover{background:transparent;color:var(--wm-grey)}
.wm-btn--text:active{background:transparent;color:var(--wm-grey)}
.wm-btn--danger{background:transparent;color:var(--wm-red-text);border-color:var(--wm-red-text)}
.wm-btn--danger:hover{background:transparent;color:var(--wm-white);border-color:var(--wm-white)}
.wm-btn--danger:active{background:var(--wm-red-pressed);color:var(--wm-white);border-color:var(--wm-red-pressed)}
.wm-btn--sm{height:var(--control-height-small);padding:0 var(--space-4);font-size:14px}
.wm-btn--block{width:100%}
.wm-btn[disabled],.wm-btn[aria-disabled="true"]{background:var(--wm-surface-2);color:var(--wm-field-line);border-color:transparent;cursor:not-allowed}
.wm-btn--outline[disabled],.wm-btn--text[disabled],.wm-btn--danger[disabled]{background:transparent;border-color:var(--wm-line);color:var(--wm-field-line)}
.wm-btn.is-loading{color:transparent;pointer-events:none}
.wm-btn.is-loading::after{content:"";position:absolute;width:20px;height:20px;border-radius:999px;border:2px solid #ffffff66;border-top-color:var(--wm-white);animation:wm-spin 800ms linear infinite}
.wm-btn--secondary.is-loading::after{border-color:#0a0a0a55;border-top-color:var(--wm-night)}
@keyframes wm-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.wm-btn.is-loading::after{animation:none;border-top-color:transparent;border-right-color:transparent}}

/* кнопка-значок */
.wm-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);padding:0;border:0;background:transparent;color:var(--wm-white);cursor:pointer;transition:background var(--motion-press) var(--motion-ease-press)}
.wm-iconbtn:hover{background:var(--wm-surface-3)}
.wm-iconbtn:active{background:var(--wm-surface-2)}
.wm-iconbtn--outline{border:1px solid var(--wm-field-line)}
.wm-iconbtn[disabled]{color:var(--wm-field-line);cursor:not-allowed;background:transparent}

/* ссылка */
.wm-link{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--tap-min);font-weight:500;font-size:14px;color:var(--wm-white);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.wm-link:hover{color:var(--wm-grey)}
.wm-link--inline{display:inline;min-height:0;font-size:inherit;font-weight:inherit}
.wm-link--quiet{color:var(--wm-grey);text-decoration:none}
.wm-link--quiet:hover{color:var(--wm-white)}

/* значок-метка */
.wm-badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px;border:1px solid var(--wm-field-line);font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-white);white-space:nowrap;vertical-align:middle}
.wm-badge--example{font-family:var(--font-text);letter-spacing:.04em;text-transform:none;color:var(--wm-grey)}
.wm-badge--success{color:var(--wm-success);border-color:var(--wm-success)}
.wm-badge--warning{color:var(--wm-warning);border-color:var(--wm-warning)}
.wm-badge--error{color:var(--wm-error);border-color:var(--wm-error)}
.wm-badge--muted{color:var(--wm-grey);border-color:var(--wm-line)}
.wm-badge--gold{color:var(--wm-gold);border-color:var(--wm-gold)}
.wm-badge--fill{background:var(--wm-white);color:var(--wm-night);border-color:var(--wm-white)}

/* фильтр */
.wm-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-overflow-scrolling:touch}
.wm-chips::-webkit-scrollbar{display:none}
.wm-chip{flex:none;display:inline-flex;align-items:center;gap:6px;height:var(--control-height-small);padding:0 var(--space-4);border:1px solid var(--wm-field-line);background:transparent;color:var(--wm-white);font-family:var(--font-text);font-size:14px;font-weight:600;letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:background var(--motion-press) var(--motion-ease-press),border-color var(--motion-press) var(--motion-ease-press)}
.wm-chip:hover{border-color:var(--wm-white)}
.wm-chip[aria-pressed="true"],.wm-chip.is-on{background:var(--wm-surface-3);border-color:var(--wm-grey)}
.wm-chip[aria-pressed="true"]::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--wm-white)}
.wm-chip[disabled]{color:var(--wm-field-line);border-color:var(--wm-line);cursor:not-allowed}
.wm-chip__n{font-family:var(--font-display);font-weight:500;color:var(--wm-grey);font-variant-numeric:tabular-nums}

/* поле */
.wm-field{display:flex;flex-direction:column;gap:6px}
.wm-field__label{font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}
.wm-field__label b{color:var(--wm-white);font-weight:500}
.wm-field__control{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-4);border:var(--hairline) solid var(--wm-field-line);background:var(--wm-surface-2);color:var(--wm-white);transition:border-color var(--motion-press) var(--motion-ease-press)}
@media(min-width:960px){.wm-field__control{min-height:var(--control-height-desktop)}}
.wm-field__control:hover{border-color:var(--wm-grey)}
.wm-field__control:focus-within{border-color:var(--wm-white);box-shadow:var(--focus-ring)}
.wm-field__control .wm-icon{color:var(--wm-grey)}
.wm-field input,.wm-field textarea,.wm-field select{flex:1;min-width:0;width:100%;border:0;background:transparent;color:var(--wm-white);font-size:16px;line-height:1.4;padding:0;outline:0;font-family:var(--font-text)}
.wm-field input,.wm-field select{height:calc(var(--control-height) - 2px)}
@media(min-width:960px){.wm-field input,.wm-field select{height:calc(var(--control-height-desktop) - 2px)}}
.wm-field input::placeholder,.wm-field textarea::placeholder{color:var(--wm-grey);opacity:1}
.wm-field--textarea .wm-field__control{align-items:flex-start;padding:var(--space-3) var(--space-4)}
.wm-field textarea{resize:vertical;min-height:88px}
.wm-field__hint{font-size:13px;line-height:1.4;color:var(--wm-grey)}
.wm-field__error{display:flex;align-items:center;gap:6px;font-size:13px;line-height:1.4;color:var(--wm-error)}
.wm-field.is-invalid .wm-field__control,.wm-field [aria-invalid="true"]{border-color:var(--wm-error)}
.wm-field.is-invalid .wm-field__control:focus-within{border-color:var(--wm-error)}
.wm-field.is-disabled .wm-field__control,.wm-field__control:has([disabled]){border-color:var(--wm-line);background:var(--wm-surface);color:var(--wm-field-line)}
.wm-field.is-disabled input{color:var(--wm-field-line)}
.wm-field--select .wm-field__control{position:relative;padding-right:var(--space-12)}
.wm-field--select select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:0}
.wm-field--select select option{background:var(--wm-surface-2);color:var(--wm-white)}
.wm-field--select .wm-field__chev{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--wm-grey)}
.wm-row-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}

/* выбор вариантами-кнопками */
.wm-seg{display:flex;flex-wrap:wrap;gap:6px}
.wm-seg__opt{position:relative}
.wm-seg__opt input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.wm-seg__opt span{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height-small);padding:0 var(--space-4);border:1px solid var(--wm-field-line);font-size:14px;font-weight:600;letter-spacing:.02em;transition:background var(--motion-press) var(--motion-ease-press),border-color var(--motion-press) var(--motion-ease-press)}
.wm-seg__opt:hover span{border-color:var(--wm-white)}
.wm-seg__opt input:checked+span{background:var(--wm-white);color:var(--wm-night);border-color:var(--wm-white)}
.wm-seg__opt input:focus-visible+span{outline:var(--focus-width) solid var(--wm-white);outline-offset:var(--focus-offset)}
.wm-seg__opt input[disabled]+span{color:var(--wm-field-line);border-color:var(--wm-line)}
.wm-seg--block .wm-seg__opt{flex:1}.wm-seg--block .wm-seg__opt span{width:100%}

/* переключатель */
.wm-switch{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--tap-min);cursor:pointer}
.wm-switch input{position:absolute;opacity:0;width:1px;height:1px}
.wm-switch__track{position:relative;width:44px;height:24px;border:1px solid var(--wm-field-line);background:var(--wm-surface-2);flex:none;transition:background var(--motion-press) var(--motion-ease-press),border-color var(--motion-press) var(--motion-ease-press)}
.wm-switch__track::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background:var(--wm-grey);transition:transform var(--motion-press) var(--motion-ease-press),background var(--motion-press) var(--motion-ease-press)}
.wm-switch input:checked+.wm-switch__track{background:var(--wm-white);border-color:var(--wm-white)}
.wm-switch input:checked+.wm-switch__track::after{transform:translateX(20px);background:var(--wm-night)}
.wm-switch input:focus-visible+.wm-switch__track{outline:var(--focus-width) solid var(--wm-white);outline-offset:var(--focus-offset)}
.wm-switch input[disabled]+.wm-switch__track{border-color:var(--wm-line);background:var(--wm-surface)}
.wm-switch input[disabled]+.wm-switch__track::after{background:var(--wm-field-line)}
.wm-switch__label{font-size:15px}
.wm-switch__state{font-family:var(--font-display);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}

/* вопрос-ответ */
.wm-acc{border-top:var(--hairline) solid var(--wm-line)}
.wm-acc:last-child{border-bottom:var(--hairline) solid var(--wm-line)}
.wm-acc summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:56px;padding:var(--space-3) 0;cursor:pointer;font-family:var(--font-display);font-size:20px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;line-height:1.1}
.wm-acc summary::-webkit-details-marker{display:none}
.wm-acc summary .wm-icon{color:var(--wm-grey);transition:transform var(--motion-press) var(--motion-ease-press)}
.wm-acc[open] summary .wm-icon{transform:rotate(45deg)}
.wm-acc summary:hover{color:var(--wm-grey)}
.wm-acc__body{padding:0 0 var(--space-4);color:var(--wm-grey);max-width:var(--text-max)}
.wm-acc__body b{color:var(--wm-white);font-weight:600}

/* шторка снизу и окно */
.wm-sheet,.wm-dialog{border:0;padding:0;background:var(--wm-surface);color:var(--wm-white);max-width:100%;overscroll-behavior:contain}
.wm-sheet{position:fixed;left:0;right:0;bottom:0;top:auto;margin:0;width:100%;max-height:var(--sheet-max-height);overflow:auto;box-shadow:var(--shadow-sheet)}
.wm-sheet::backdrop,.wm-dialog::backdrop{background:#000000a6}
.wm-sheet[open]{animation:wm-up var(--motion-sheet) var(--motion-ease)}
@keyframes wm-up{from{transform:translateY(100%)}to{transform:none}}
.wm-sheet__in{padding:var(--space-2) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom))}
.wm-sheet__grab{width:40px;height:4px;background:var(--wm-field-line);margin:4px auto var(--space-3)}
.wm-sheet__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}
.wm-sheet__head .wm-iconbtn{margin:-6px -12px 0 0}
@media(min-width:960px){.wm-sheet{left:auto;right:0;top:0;bottom:0;width:440px;max-height:none;box-shadow:var(--shadow-lamp)}.wm-sheet[open]{animation-name:wm-in}.wm-sheet__grab{display:none}.wm-sheet__in{padding:var(--space-6)}}
@keyframes wm-in{from{transform:translateX(100%)}to{transform:none}}
.wm-dialog{position:fixed;inset:0;margin:auto;width:min(calc(100% - 32px),480px);box-shadow:var(--shadow-lamp)}
.wm-dialog__in{padding:var(--space-6) var(--space-4)}
@media(min-width:960px){.wm-dialog__in{padding:var(--space-8)}}
.wm-dialog__actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-6)}
@media(min-width:960px){.wm-dialog__actions{flex-direction:row;justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){.wm-sheet[open]{animation:none}}
/* показ шторки/окна в документации */
.wm-sheet--demo,.wm-dialog--demo{position:relative;inset:auto;display:block;width:100%;max-width:440px;margin:0;animation:none}

/* уведомление */
.wm-notice{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border:var(--hairline) solid var(--wm-field-line);background:var(--wm-surface);font-size:14px;line-height:1.45}
.wm-notice .wm-icon{flex:none;margin-top:1px;width:20px;height:20px}
.wm-notice__t{display:block;font-weight:600;color:var(--wm-white)}
.wm-notice__m{color:var(--wm-grey)}
.wm-notice--info .wm-icon{color:var(--wm-white)}
.wm-notice--success{border-color:var(--wm-success)}.wm-notice--success .wm-icon,.wm-notice--success .wm-notice__t{color:var(--wm-success)}
.wm-notice--warning{border-color:var(--wm-warning)}.wm-notice--warning .wm-icon,.wm-notice--warning .wm-notice__t{color:var(--wm-warning)}
.wm-notice--error{border-color:var(--wm-error)}.wm-notice--error .wm-icon,.wm-notice--error .wm-notice__t{color:var(--wm-error)}
.wm-notice__close{margin:-8px -12px -8px auto;flex:none}
.wm-toast{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:var(--z-toast);box-shadow:var(--shadow-lamp)}
@media(min-width:960px){.wm-toast{left:auto;right:48px;bottom:48px;width:400px}}

/* пустое состояние и загрузка */
.wm-empty{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-8) 0;max-width:420px}
.wm-empty__t{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;text-transform:uppercase}
.wm-empty__t em{font-family:var(--font-accent);font-style:italic;font-weight:400;font-size:.9em;text-transform:none;color:var(--wm-champagne);position:relative;top:.1em}
.wm-empty__m{color:var(--wm-grey)}
.wm-skeleton{position:relative;overflow:hidden;background:var(--wm-surface-2);min-height:16px}
.wm-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0,#ffffff0d 50%,transparent 100%);transform:translateX(-100%);animation:wm-shimmer 1600ms linear infinite}
@keyframes wm-shimmer{to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){.wm-skeleton::after{animation:none}}
.wm-spinner{width:24px;height:24px;border-radius:999px;border:2px solid var(--wm-line);border-top-color:var(--wm-white);animation:wm-spin 800ms linear infinite}
@media(prefers-reduced-motion:reduce){.wm-spinner{animation:none;border-color:var(--wm-field-line);border-top-color:var(--wm-white)}}
.wm-loading{display:flex;align-items:center;gap:var(--space-3);color:var(--wm-grey);font-size:14px;min-height:var(--tap-min)}

/* ---------- шапка, меню, подвал ---------- */
.wm-header{position:sticky;top:0;z-index:var(--z-header);height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:0 4px 0 var(--grid-phone-margin);background:#0a0a0aeb}
@media(min-width:960px){.wm-header{height:var(--header-height-desktop);padding:0 var(--grid-desktop-margin)}}
.wm-header--line{border-bottom:var(--hairline) solid var(--wm-line)}
.wm-header__nav{display:none;gap:var(--space-8)}
@media(min-width:960px){.wm-header__nav{display:flex}}
.wm-header__nav a{font-size:15px;color:var(--wm-grey);text-decoration:none;display:inline-flex;align-items:center;min-height:var(--tap-min)}
.wm-header__nav a:hover,.wm-header__nav a[aria-current]{color:var(--wm-white)}
.wm-header__nav a[aria-current]{font-weight:500}
.wm-header__act{display:flex;align-items:center;gap:4px}
.wm-header__login{font-size:14px;font-weight:500;color:var(--wm-grey);text-decoration:none;display:inline-flex;align-items:center;min-height:var(--tap-min);padding:0 var(--space-3)}
.wm-header__login:hover{color:var(--wm-white)}
.wm-header__book{display:none}
@media(min-width:960px){.wm-header__book{display:inline-flex}.wm-header__menu{display:none}.wm-header__login{padding:0 var(--space-4)}}
.wm-menu{position:fixed;inset:0;z-index:var(--z-sheet);background:var(--wm-night);display:flex;flex-direction:column;padding:0 var(--grid-phone-margin) calc(var(--space-6) + env(safe-area-inset-bottom))}
.wm-menu__head{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);margin:0 -4px 0 0}
.wm-menu__list{flex:1;display:flex;flex-direction:column;justify-content:center;gap:0}
.wm-menu__list a{display:flex;align-items:center;justify-content:space-between;min-height:56px;font-family:var(--font-display);font-size:32px;font-weight:600;letter-spacing:.01em;text-transform:uppercase;text-decoration:none;color:var(--wm-white);border-top:var(--hairline) solid var(--wm-line)}
.wm-menu__list a:last-child{border-bottom:var(--hairline) solid var(--wm-line)}
.wm-menu__list a:hover{color:var(--wm-grey)}
.wm-menu__foot{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-6)}
.wm-menu--demo{position:relative;inset:auto;min-height:640px;max-width:390px;border:1px solid var(--wm-line)}
.wm-footer{background:#000;color:var(--wm-grey);font-size:14px;padding:var(--space-12) 0 calc(var(--space-12) + 80px)}
@media(min-width:960px){.wm-footer{padding-bottom:var(--space-16)}}
.wm-footer__in{display:grid;gap:var(--space-6);border-top:var(--hairline) solid var(--wm-line);padding-top:var(--space-8)}
@media(min-width:960px){.wm-footer__in{grid-template-columns:2fr 1fr 1fr 1.4fr;gap:var(--space-8)}}
.wm-footer__col b{display:block;font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey-2);margin-bottom:var(--space-2)}
.wm-footer a{color:var(--wm-grey);text-decoration:none;display:inline-flex;align-items:center;min-height:var(--tap-min)}
.wm-footer a:hover{color:var(--wm-white)}
.wm-footer__call{color:var(--wm-white)!important;font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:.04em;min-height:var(--tap-min)!important}
.wm-footer__legal{grid-column:1/-1;font-size:12px;color:var(--wm-grey-2);border-top:var(--hairline) solid var(--wm-line);padding-top:var(--space-4)}
.wm-footer__legal a{display:inline;min-height:0;color:var(--wm-grey)}

/* нижняя панель записи, нижнее меню, боковое меню */
.wm-bar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-bar);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--grid-phone-margin) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--wm-night);border-top:var(--hairline) solid var(--wm-field-line);transform:translateY(110%);transition:transform var(--motion-sheet) var(--motion-ease)}
.wm-bar.is-on{transform:none}
.wm-bar .wm-eyebrow{line-height:1.4}
@media(min-width:960px){.wm-bar{display:none}}
@media(prefers-reduced-motion:reduce){.wm-bar{transition:none}}
.wm-bar--demo{display:flex;position:relative;transform:none;max-width:390px;border:1px solid var(--wm-line)}
.wm-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-bar);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:calc(var(--tabbar-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--wm-night);border-top:var(--hairline) solid var(--wm-line)}
.wm-tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--wm-grey);text-decoration:none;font-family:var(--font-display);font-size:11px;letter-spacing:.1em;text-transform:uppercase;min-height:var(--tabbar-height)}
.wm-tabbar a .wm-icon{width:22px;height:22px}
.wm-tabbar a[aria-current]{color:var(--wm-white);font-weight:600}
.wm-tabbar a[aria-current]::after{content:"";width:16px;height:2px;background:var(--wm-white)}
@media(min-width:960px){.wm-tabbar{display:none}}
.wm-tabbar--demo{display:grid;position:relative;max-width:390px;border:1px solid var(--wm-line)}
.wm-sidenav{display:none}
@media(min-width:960px){.wm-sidenav{display:flex;flex-direction:column;gap:var(--space-2);width:var(--sidenav-width);padding:var(--space-6) 0;border-right:var(--hairline) solid var(--wm-line);min-height:100%}}
.wm-sidenav__me{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-6) var(--space-4);border-bottom:var(--hairline) solid var(--wm-line);margin-bottom:var(--space-2)}
.wm-sidenav a{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap-min);padding:0 var(--space-6);color:var(--wm-grey);text-decoration:none;font-size:15px;border-left:2px solid transparent}
.wm-sidenav a:hover{color:var(--wm-white)}
.wm-sidenav a[aria-current]{color:var(--wm-white);font-weight:500;border-left-color:var(--wm-white);background:var(--wm-surface)}
.wm-sidenav__foot{margin-top:auto;padding:var(--space-4) var(--space-6) 0;border-top:var(--hairline) solid var(--wm-line)}
.wm-sidenav--demo{display:flex;flex-direction:column;width:var(--sidenav-width);flex:none;padding:var(--space-6) 0;border-right:var(--hairline) solid var(--wm-line);min-height:560px}
.wm-cabinet{display:grid;grid-template-columns:1fr;min-height:100dvh}
@media(min-width:960px){.wm-cabinet{grid-template-columns:var(--sidenav-width) minmax(0,1fr)}}

/* ---------- аватары, места, кто идёт ---------- */
.wm-avatar{width:var(--avatar);height:var(--avatar);border-radius:var(--radius-full);background:var(--wm-surface-2);flex:none;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--wm-grey);text-transform:uppercase}
.wm-avatar img{width:100%;height:100%;object-fit:cover}
.wm-avatar--sm{width:24px;height:24px;font-size:11px}
.wm-avatar--lg{width:var(--avatar-lg);height:var(--avatar-lg);font-size:20px}
.wm-who{display:flex;align-items:center;gap:var(--space-2);font-size:14px;color:var(--wm-grey)}
.wm-who__avs{display:flex}
.wm-who__avs .wm-avatar{width:22px;height:22px;border:2px solid var(--wm-night);font-size:9px}
.wm-who__avs .wm-avatar+.wm-avatar{margin-left:-7px}
.wm-who__list{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.wm-who__list li{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding-right:8px;font-family:var(--font-display);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--wm-white)}
.wm-seats{display:flex;flex-direction:column;gap:6px}
.wm-seats__n{display:flex;align-items:baseline;gap:var(--space-3)}
.wm-seats__n b{font-family:var(--font-display);font-weight:600;font-size:24px;line-height:1;font-variant-numeric:tabular-nums}
@media(min-width:960px){.wm-seats__n b{font-size:28px}}
.wm-seats__n b small{font-weight:400;font-size:inherit;color:var(--wm-grey)}
.wm-seats__n span{font-size:14px;color:var(--wm-grey)}
.wm-seats__line{height:2px;background:var(--wm-line);position:relative}
.wm-seats__line i{position:absolute;left:0;top:0;bottom:0;background:var(--wm-white)}
.wm-seats[data-state="few"] .wm-seats__n b,.wm-seats[data-state="few"] .wm-seats__line i{color:var(--wm-warning);background:var(--wm-warning)}
.wm-seats[data-state="few"] .wm-seats__n b{background:none}
.wm-seats[data-state="full"] .wm-seats__n b{color:var(--wm-grey)}
.wm-seats[data-state="full"] .wm-seats__line i{background:var(--wm-field-line)}

/* ---------- карточка игры как приглашение ---------- */
.wm-game{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:var(--wm-surface);min-height:300px;overflow:hidden}
.wm-game.wm-spot{background:var(--spot-lamp)}
@media(min-width:960px){.wm-game{padding:var(--space-6);min-height:360px}}
.wm-game__top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start}
.wm-game__date{font-family:var(--font-display);font-weight:700;font-size:40px;line-height:.92;letter-spacing:-.01em;text-transform:uppercase;font-variant-numeric:tabular-nums;white-space:nowrap}
.wm-game__date small{display:block;font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--wm-grey);margin-top:6px}
@media(min-width:960px){.wm-game__date{font-size:48px}}
.wm-game__place{text-align:right;font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey);line-height:1.3}
.wm-game__place b{color:var(--wm-white);font-weight:500}
.wm-game__body{flex:1;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2);padding:var(--space-6) 0 var(--space-3)}
.wm-game__title{font-family:var(--font-display);font-weight:700;font-size:44px;line-height:.9;letter-spacing:-.01em;text-transform:uppercase}
.wm-game__title em{font-family:var(--font-accent);font-style:italic;font-weight:400;font-size:.9em;text-transform:none;letter-spacing:0;color:var(--wm-champagne);position:relative;top:.12em}
.wm-game--kids .wm-game__title em,.wm-game--trip .wm-game__title em{color:var(--wm-champagne)}
.wm-game--tournament .wm-game__title em{color:var(--wm-gold)}
.wm-game__meta{font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}
.wm-game__foot{display:flex;flex-direction:column;gap:var(--space-3);border-top:var(--hairline) solid var(--wm-field-line);padding-top:var(--space-3)}
.wm-game__line{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);font-size:14px;color:var(--wm-grey)}
.wm-game__line b{color:var(--wm-white);font-weight:600}
.wm-game__price{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--wm-white);font-variant-numeric:tabular-nums}
.wm-game__state{align-self:flex-start;margin-bottom:var(--space-1)}
.wm-game[data-state="past"]{color:var(--wm-grey)}
.wm-game[data-state="past"] .wm-game__title,.wm-game[data-state="past"] .wm-game__date{color:var(--wm-grey)}
.wm-game[data-state="past"] .wm-game__title em{color:var(--wm-grey)}
.wm-game[data-state="full"] .wm-game__date{color:var(--wm-grey)}
/* строка афиши (список игр) */
.wm-row{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-4) 0;border-bottom:var(--hairline) solid var(--wm-line);min-height:72px;text-decoration:none;color:inherit}
@media(min-width:960px){.wm-row{grid-template-columns:150px 2fr 1.6fr 1.2fr 150px;gap:var(--space-6);padding:var(--space-6) 0}}
.wm-row__d{font-family:var(--font-display);font-weight:600;font-size:26px;line-height:1;text-transform:uppercase;font-variant-numeric:tabular-nums}
.wm-row__d small{display:block;font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--wm-grey);margin-top:6px}
@media(min-width:960px){.wm-row__d{font-size:40px}}
.wm-row__t,.wm-row__m{display:block}
.wm-row__t{font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase}
@media(min-width:960px){.wm-row__t{font-size:24px}}
.wm-row__m{font-size:14px;line-height:1.45;color:var(--wm-grey);margin-top:4px}
.wm-row__pl,.wm-row__se{display:none}
@media(min-width:960px){.wm-row__pl,.wm-row__se{display:block;font-size:14px;line-height:1.45;color:var(--wm-grey)}}
.wm-row__se b{color:var(--wm-white);font-weight:600}
.wm-row__go{color:var(--wm-grey)}
.wm-row__ac{display:none}
@media(min-width:960px){.wm-row__go{display:none}.wm-row__ac{display:inline-flex}}
.wm-row[data-state="past"]{color:var(--wm-grey)}
.wm-row[data-state="past"] .wm-row__t,.wm-row[data-state="past"] .wm-row__d{color:var(--wm-grey)}

/* следующая игра */
.wm-next{display:flex;flex-direction:column;gap:10px;padding:8px 0 8px 22px}
.wm-next__head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}
.wm-next .wm-btn{width:100%;margin-top:var(--space-2)}
@media(min-width:960px){.wm-next{width:100%;max-width:440px}.wm-next .wm-h2{font-size:32px}}

/* ---------- шторка записи ---------- */
.wm-booking{display:flex;flex-direction:column;gap:var(--space-4)}
.wm-booking__date{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;text-transform:uppercase;font-variant-numeric:tabular-nums}
.wm-booking dl{display:flex;flex-direction:column}
.wm-booking dl div{display:flex;justify-content:space-between;gap:var(--space-4);min-height:40px;align-items:center;border-top:var(--hairline) solid var(--wm-line);font-size:14px}
.wm-booking dt{color:var(--wm-grey)}
.wm-booking dd{text-align:right;font-weight:500;font-variant-numeric:tabular-nums}
.wm-booking__total{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);border-top:var(--hairline) solid var(--wm-field-line);padding-top:var(--space-3)}
.wm-booking__total b{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;font-variant-numeric:tabular-nums}
.wm-booking__total span{font-size:14px;color:var(--wm-grey)}
.wm-booking__hint{font-size:13px;color:var(--wm-grey);text-align:center}
.wm-booking__success{display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start;padding:var(--space-4) 0}
.wm-booking__success .wm-icon{width:40px;height:40px;color:var(--wm-success)}
.wm-bonus-slider{display:flex;flex-direction:column;gap:var(--space-2)}
.wm-bonus-slider input[type=range]{width:100%;accent-color:var(--wm-white);height:44px;margin:0}
.wm-bonus-slider__row{display:flex;justify-content:space-between;font-size:14px;color:var(--wm-grey)}
.wm-bonus-slider__row b{color:var(--wm-white);font-family:var(--font-display);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}

/* ---------- рейтинг ---------- */
.wm-reg{display:grid;grid-template-columns:48px 32px minmax(0,1fr) 72px;gap:var(--space-3);align-items:center;min-height:56px;border-bottom:var(--hairline) solid var(--wm-line);text-decoration:none;color:inherit}
@media(min-width:720px){.wm-reg{grid-template-columns:72px 36px minmax(0,1fr) 72px 96px;gap:var(--space-4);min-height:60px}}
.wm-reg__rank{font-family:var(--font-display);font-weight:700;font-size:32px;line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--wm-grey)}
@media(min-width:720px){.wm-reg__rank{font-size:44px}}
.wm-reg__rank--gold{color:var(--wm-gold)}
.wm-reg__nick{font-family:var(--font-display);font-weight:500;font-size:18px;line-height:1.1;letter-spacing:.06em;text-transform:uppercase;color:var(--wm-white);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(min-width:720px){.wm-reg__nick{font-size:20px}}
.wm-reg__v{text-align:right;font-family:var(--font-display);font-weight:500;font-size:18px;line-height:1;font-variant-numeric:tabular-nums;color:var(--wm-grey)}
.wm-reg__v--pt{color:var(--wm-white);font-weight:600}
.wm-reg__games{display:none}
@media(min-width:720px){.wm-reg__games{display:block}}
.wm-reg--head{min-height:36px;border-bottom:var(--hairline) solid var(--wm-field-line)}
.wm-reg--head span{font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}
.wm-reg--head .wm-reg__v{font-size:11px;font-weight:500;color:var(--wm-grey)}
.wm-reg--me{background:var(--wm-surface);margin:0 calc(-1 * var(--space-3));padding:0 var(--space-3);border-left:2px solid var(--wm-white);border-bottom-color:transparent}
.wm-reg--cut{min-height:44px;color:var(--wm-grey);font-size:14px;display:flex;align-items:center}
.wm-reg--top10 .wm-reg__rank{color:var(--wm-gold)}
.wm-reg-note{display:flex;flex-direction:column;gap:6px;padding:var(--space-4) 0;border-bottom:var(--hairline) solid var(--wm-line)}
.wm-season{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:var(--hairline) solid var(--wm-field-line)}
.wm-season__t{font-family:var(--font-display);font-weight:600;font-size:22px;line-height:1;text-transform:uppercase}

/* ---------- маска и награды ---------- */
.wm-trophy{display:flex;flex-direction:column;gap:var(--space-4)}
.wm-shelf{position:relative;width:min(100%,300px);aspect-ratio:3/4;background:#0e0c09;box-shadow:var(--glow-gold);padding:var(--space-4);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.wm-shelf::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--wm-gold);z-index:2}
.wm-shelf__word{font-family:var(--font-accent);font-style:italic;font-size:clamp(56px,8vw,80px);line-height:1;color:var(--wm-gold);align-self:flex-end;position:relative;z-index:2}
.wm-shelf img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:var(--photo-tone)}
.wm-shelf .wm-eyebrow{position:relative;z-index:2}
.wm-ladder{display:flex;flex-wrap:wrap;gap:4px var(--space-3)}
.wm-ladder span{font-family:var(--font-display);font-size:14px;font-weight:500;letter-spacing:.1em;color:var(--wm-grey-2);font-variant-numeric:tabular-nums}
.wm-ladder span.is-gold{color:var(--wm-gold)}
.wm-award{display:inline-flex;align-items:center;gap:var(--space-2);min-height:32px}
.wm-award__n{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-1);background:var(--wm-gold);color:var(--wm-night);font-family:var(--font-display);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}
.wm-award__n--grey{background:var(--wm-surface-3);color:var(--wm-white)}
.wm-award__t{font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-white)}
.wm-award--gold .wm-award__t{color:var(--wm-gold)}
.wm-award--best .wm-award__n{background:var(--wm-white);color:var(--wm-night)}

/* ---------- баллы и бонусы ---------- */
.wm-balance{display:flex;flex-direction:column;gap:6px;padding:var(--space-4);border:var(--hairline) solid var(--wm-line);min-height:120px}
.wm-balance__k{font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}
.wm-balance__v{font-family:var(--font-display);font-weight:700;font-size:40px;line-height:1;font-variant-numeric:tabular-nums}
.wm-balance__m{font-size:13px;line-height:1.4;color:var(--wm-grey);margin-top:auto}
.wm-balance--points .wm-balance__v{color:var(--wm-white)}
.wm-balance--bonus{border-color:var(--wm-field-line)}
.wm-balance--bonus .wm-balance__v{color:var(--wm-white)}
.wm-balance--bonus .wm-balance__v small{font-size:18px;font-weight:500;color:var(--wm-grey);margin-left:4px}
.wm-balances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}

/* ---------- профиль ---------- */
.wm-profile{display:flex;align-items:center;gap:var(--space-4)}
.wm-profile__nick{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;letter-spacing:.04em;text-transform:uppercase}
.wm-profile__m{font-size:14px;color:var(--wm-grey);margin-top:4px;display:flex;align-items:center;gap:6px}
.wm-history{display:flex;flex-direction:column}
.wm-history li{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;min-height:56px;border-bottom:var(--hairline) solid var(--wm-line);font-size:14px}
.wm-history__d{font-family:var(--font-display);font-weight:600;font-size:18px;text-transform:uppercase;font-variant-numeric:tabular-nums;line-height:1}
.wm-history__d small{display:block;font-size:11px;letter-spacing:.14em;color:var(--wm-grey);font-weight:500;margin-top:4px}
.wm-history__t{font-weight:500;color:var(--wm-white)}
.wm-history__m{color:var(--wm-grey);margin-top:2px}
.wm-history__pt{font-family:var(--font-display);font-weight:600;font-size:18px;text-align:right;font-variant-numeric:tabular-nums}
.wm-history__pt small{display:block;font-size:11px;letter-spacing:.14em;color:var(--wm-grey);font-weight:500;margin-top:4px;text-transform:uppercase}

/* ---------- форматы, под ключ, заявка ---------- */
.wm-format{display:flex;flex-direction:column;text-decoration:none;color:inherit;min-height:300px;position:relative;overflow:hidden;background:var(--spot-lamp)}
.wm-format__top{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);padding:var(--space-4);align-items:start}
.wm-format__body{margin-top:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}
.wm-format__t{font-family:var(--font-display);font-weight:700;font-size:32px;line-height:.92;letter-spacing:-.01em;text-transform:uppercase}
.wm-format__word{font-family:var(--font-accent);font-style:italic;font-size:clamp(40px,6vw,56px);line-height:1;color:var(--wm-champagne)}
.wm-format__m{font-size:14px;color:var(--wm-grey)}
.wm-format__more{font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:4px;min-height:var(--tap-min);display:inline-flex;align-items:center}
.wm-format:hover .wm-format__more{color:var(--wm-grey)}
.wm-package{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px var(--space-6);padding:var(--space-4) 0;border-top:var(--hairline) solid var(--wm-line)}
.wm-package:last-child{border-bottom:var(--hairline) solid var(--wm-line)}
.wm-package__t{font-family:var(--font-display);font-weight:500;font-size:22px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase}
.wm-package__m{grid-column:1;font-size:14px;color:var(--wm-grey)}
.wm-package__p{grid-row:1/3;grid-column:2;align-self:center;font-family:var(--font-display);font-weight:600;font-size:20px;font-variant-numeric:tabular-nums;color:var(--wm-white)}
.wm-params{display:flex;gap:var(--space-8);flex-wrap:wrap}
.wm-params b{display:block;font-family:var(--font-display);font-weight:700;font-size:36px;line-height:1;font-variant-numeric:tabular-nums}
@media(min-width:960px){.wm-params b{font-size:52px}}
.wm-params span{font-size:13px;color:var(--wm-grey)}
.wm-lead{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6) var(--space-4);background:var(--wm-surface);box-shadow:var(--shadow-lamp)}
@media(min-width:960px){.wm-lead{padding:var(--space-8)}}
.wm-lead__t{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;text-transform:uppercase}
.wm-lead__legal{font-size:12px;line-height:1.4;color:var(--wm-grey)}

/* ---------- отзыв, фотоотчёт, площадка, акция ---------- */
.wm-review{position:relative;background:var(--wm-surface);overflow:hidden;aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-3);text-decoration:none;color:inherit}
.wm-review img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.wm-review__src{position:relative;z-index:1;font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey);background:var(--wm-night);padding:4px 6px;align-self:flex-start}
.wm-report{position:relative;background:var(--spot-lamp);min-height:300px;padding:var(--space-4);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;text-decoration:none;color:inherit}
.wm-report img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:var(--photo-tone)}
.wm-report::before{content:"";position:absolute;inset:0;background:var(--scrim-fade);pointer-events:none}
.wm-report>*{position:relative;z-index:1}
.wm-report__t{font-family:var(--font-display);font-weight:700;font-size:clamp(32px,4vw,44px);line-height:.92;letter-spacing:-.01em;text-transform:uppercase}
.wm-report__word{font-family:var(--font-accent);font-style:italic;font-size:clamp(40px,6vw,64px);line-height:1;color:var(--wm-champagne)}
.wm-venue{display:flex;flex-direction:column;gap:4px;padding:var(--space-4) 0;border-top:var(--hairline) solid var(--wm-line)}
.wm-venue:last-child{border-bottom:var(--hairline) solid var(--wm-line)}
.wm-venue__t{font-family:var(--font-display);font-weight:500;font-size:22px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;margin-top:4px}
.wm-venue__m{font-size:14px;color:var(--wm-grey)}
.wm-map{position:relative;min-height:220px;background:var(--spot-lamp);display:flex;align-items:flex-end;padding:var(--space-4)}
.wm-promo{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) 0;border-top:var(--hairline) solid var(--wm-field-line);border-bottom:var(--hairline) solid var(--wm-field-line)}
@media(min-width:960px){.wm-promo{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-8);padding:var(--space-6) 0}}
.wm-promo__t{font-family:var(--font-display);font-weight:600;font-size:24px;line-height:1.05;letter-spacing:.01em;text-transform:uppercase}
@media(min-width:960px){.wm-promo__t{font-size:28px}}
.wm-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:var(--hairline) solid var(--wm-line)}
@media(min-width:960px){.wm-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.wm-stats li{padding:var(--space-4) var(--space-4) var(--space-4) 0;border-bottom:var(--hairline) solid var(--wm-line)}
.wm-stats li:nth-child(even){padding-left:var(--space-4);border-left:var(--hairline) solid var(--wm-line)}
@media(min-width:960px){.wm-stats li{padding:var(--space-8) var(--space-6) var(--space-8) 0;border-bottom:0}.wm-stats li:nth-child(even){padding-left:0;border-left:0}.wm-stats li:not(:first-child){padding-left:var(--space-6);border-left:var(--hairline) solid var(--wm-line)}}
.wm-stats b{display:block;font-family:var(--font-display);font-weight:700;font-size:36px;line-height:1;font-variant-numeric:tabular-nums;margin-bottom:4px}
@media(min-width:960px){.wm-stats b{font-size:56px}}
.wm-stats span{font-size:13px;color:var(--wm-grey)}
.wm-steps{display:grid}
@media(min-width:960px){.wm-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-12)}}
.wm-step{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-3);padding:var(--space-5) 0;border-top:var(--hairline) solid var(--wm-line)}
.wm-step__n{font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--wm-grey);padding-top:4px}
.wm-step b{display:block;font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.15;letter-spacing:.02em;text-transform:uppercase;margin-bottom:4px}
.wm-step p{font-size:14px;line-height:1.5;color:var(--wm-grey)}
.wm-team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
@media(min-width:960px){.wm-team{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}}
.wm-person{display:flex;flex-direction:column;gap:6px}
.wm-person__ph{aspect-ratio:3/4;background:var(--spot-lamp);display:flex;align-items:flex-end;padding:var(--space-3);position:relative;overflow:hidden}
.wm-person__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:var(--photo-tone)}
.wm-person__ph .wm-accent{position:relative;top:0;margin:0;font-size:32px}
.wm-person__n{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:.04em;text-transform:uppercase}
.wm-person__r{font-size:13px;color:var(--wm-grey)}
.wm-strip{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:var(--space-3);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-bottom:4px}
.wm-strip::-webkit-scrollbar{display:none}
.wm-strip>*{scroll-snap-align:start}
@media(min-width:960px){.wm-strip{grid-auto-columns:minmax(300px,30%);gap:var(--space-4)}}
.wm-strip--reviews{grid-auto-columns:64%}
@media(min-width:960px){.wm-strip--reviews{grid-auto-columns:240px}}
