
.cm {
  
  --cm-paper: #F7F5F1; --cm-paper-2: #EEEBE5; --cm-white: #FFFFFF; --cm-stone: #DCDBD6; --cm-stone-2: #BFC2C1;
  
  --cm-wood: #8C5A36; --cm-wood-d: #5A3A22; --cm-wood-l: #B98A62;
  
  --cm-ink: #121B24; --cm-text: #2A3542; --cm-muted: #6B7785; --cm-muted-d: #9FB0C0;
  
  --cm-ice: #58C9FF; --cm-ice-2: #A9E6FF; --cm-ice-ink: #0B6FA8; --cm-ice-soft: #DDF3FF;
  
  --cm-night: #0B1826; --cm-night-2: #112437; --cm-night-3: #1A3350; --cm-frost-c: #E6F0F8;
  
  --cm-ok: #1FA37A; --cm-bad: #D84A3C; --cm-warn: #D08A1B;
  
  --st-activation: #E04A3F; --st-cold: #0B6FA8; --st-recovery: #0F9F8E; --st-heat: #7B3FE0;
  --st-activation-l: #FF5A4E; --st-cold-l: #58C9FF; --st-recovery-l: #2ED3C0; --st-heat-l: #B14CFF;
  
  --cm-line: rgba(18, 27, 36, .12); --cm-line-s: rgba(18, 27, 36, .07); --cm-line-d: rgba(230, 240, 248, .16);
  --cm-shadow: 0 30px 60px -24px rgba(18, 27, 36, .28);
  
  --chill: 0; --room: 0; --hue: 196; --sbw: 0px;
  
  --cm-display: 'CM Display', Manrope, 'IBM Plex Sans', Arial, sans-serif;
  --cm-sans: 'IBM Plex Sans', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --cm-mono: 'IBM Plex Mono', ui-monospace, Consolas, monospace;
  --wrap: 1200px; --gut: clamp(16px, 4vw, 40px); --r: 2px;
  --ease: cubic-bezier(.2, .7, .2, 1); --spring: cubic-bezier(.34, 1.4, .64, 1);
  position: relative; font: 400 16px/1.6 var(--cm-sans); color: var(--cm-text); background: var(--cm-paper);
  -webkit-font-smoothing: antialiased; text-align: left; overflow: clip; 
  width: calc(100vw - var(--sbw)); margin-left: calc(50% - 50vw + var(--sbw) / 2); 
}

:root:has(.cm) body { overflow-x: clip; overflow-y: visible; }

:where(.cm) *, :where(.cm) *::before, :where(.cm) *::after { box-sizing: border-box; }
:where(.cm) :where(img, video, canvas, svg) { display: block; max-width: 100%; }
:where(.cm) :where(h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd, fieldset) { margin: 0; padding: 0; border: 0; }
:where(.cm) :where(ul, ol) { list-style: none; }
:where(.cm) a { color: inherit; }
:where(.cm) button { font: inherit; color: inherit; cursor: pointer; background: none; border: 0; padding: 0; border-radius: 0; -webkit-tap-highlight-color: transparent; }
:where(.cm) :where(input, select, textarea) { font: inherit; color: inherit; }
.cm :focus-visible { outline: 2px solid var(--accent, var(--cm-ice-ink)); outline-offset: 3px; }
.cm [hidden] { display: none !important; }
.cm .cm-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.cm section[id] { scroll-margin-top: 56px; }
.cm, .cm * { touch-action: pan-y pinch-zoom; }      
.cm .cm-nowrap { white-space: nowrap; }
.cm .cm-m-only { display: none; }                    


.cm-sec { position: relative; padding: clamp(72px, 9vw, 128px) 0; isolation: isolate; color: var(--fg); background: var(--cm-paper);
  --fg: var(--cm-text); --fg-2: rgba(42, 53, 66, .84); --mute: var(--cm-muted); --accent: var(--cm-ice-ink); --accent-soft: var(--cm-ice-soft);
  --card: var(--cm-white); --card-2: var(--cm-paper-2); --ln: var(--cm-line); --ln-s: var(--cm-line-s); --heading: var(--cm-ink); --eyebrow: var(--cm-ice-ink);
  --btn-bg: var(--cm-ice-ink); --btn-fg: #fff; --btn-hover: #0A6093; }
.cm-sec--tight { padding: clamp(48px, 6vw, 88px) 0; }
.cm-sec--paper { background: var(--cm-paper); }
.cm-sec--paper-2 { background: var(--cm-paper-2); }
.cm-sec--white { background: var(--cm-white); --card-2: var(--cm-paper); }
.cm-sec--stone { background: var(--cm-stone); --card-2: var(--cm-paper); --ln: rgba(18, 27, 36, .16); }

.cm-sec--grid { background-color: var(--cm-paper); background-image: linear-gradient(var(--cm-line-s) 1px, transparent 1px), linear-gradient(90deg, var(--cm-line-s) 1px, transparent 1px); background-size: 24px 24px; }

.cm-sec--night { background: var(--cm-night); --fg: var(--cm-frost-c); --fg-2: rgba(230, 240, 248, .78); --mute: var(--cm-muted-d); --accent: var(--cm-ice); --accent-soft: rgba(88, 201, 255, .12);
  --card: var(--cm-night-2); --card-2: rgba(230, 240, 248, .05); --ln: var(--cm-line-d); --ln-s: rgba(230, 240, 248, .08); --heading: #fff; --eyebrow: rgba(230, 240, 248, .75);
  --btn-bg: var(--cm-ice); --btn-fg: var(--cm-night); --btn-hover: var(--cm-ice-2); }

.cm-sec--night::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: url(/pub/media/spg-story/engine-cryomaster/assets/cm-noise.webp?v=1792567956) 0 0 / 256px 256px repeat; opacity: .35; }

.cm-wood-strip { height: 12px; background: var(--cm-wood-d) repeating-linear-gradient(90deg, rgba(255, 255, 255, .05) 0 140px, rgba(0, 0, 0, .12) 140px 142px), linear-gradient(90deg, var(--cm-wood-d), var(--cm-wood) 50%, var(--cm-wood-d)); }


.cm-wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gut); position: relative; z-index: 2; }
.cm-head { margin-bottom: clamp(36px, 5vw, 64px); max-width: 760px; }
.cm-head--center { text-align: center; margin-inline: auto; }
.cm-head--center .cm-title, .cm-head--center .cm-lead { margin-inline: auto; }

.cm-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; align-items: start; }
.cm-grid--7-5 { grid-template-columns: 7fr 5fr; }
.cm-grid--5-7 { grid-template-columns: 5fr 7fr; }
.cm-grid--6-6 { grid-template-columns: 1fr 1fr; }
.cm-grid--8-4 { grid-template-columns: 8fr 4fr; }
.cm-grid--4-4-4, .cm-grid--3x2 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cm-grid--4x { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cm-grid--2x { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cm-grid--center { align-items: center; }

.cm-bleed { position: relative; width: 100%; overflow: hidden; background: var(--cm-stone); }
.cm-bleed--bg { position: absolute; inset: 0; z-index: 0; background: var(--cm-night); }
.cm-bleed > img, .cm-bleed > video, .cm-bleed > picture > img { width: 100%; height: 100%; object-fit: cover; }


.cm-eyebrow { display: inline-block; font: 600 12px/1.3 var(--cm-sans); letter-spacing: .22em; text-transform: uppercase; color: var(--eyebrow); margin-bottom: 18px; }
.cm-display { font: 800 clamp(40px, 5vw, 72px)/1 var(--cm-display); letter-spacing: -.025em; color: var(--heading); text-wrap: balance; }
.cm-sub { font: 600 clamp(20px, 1.9vw, 27px)/1.25 var(--cm-display); color: var(--heading); margin-top: 14px; text-wrap: balance; }
.cm-title { font: 800 clamp(32px, 3.9vw, 56px)/1.05 var(--cm-display); letter-spacing: -.02em; color: var(--heading); max-width: 20ch; text-wrap: balance; }
.cm-title em { font-style: normal; font-weight: 600; color: var(--accent); }
.cm-h3 { font: 700 clamp(19px, 1.7vw, 24px)/1.25 var(--cm-display); letter-spacing: -.01em; color: var(--heading); }
.cm-lead { font-size: clamp(16px, 1.35vw, 19px); line-height: 1.6; color: var(--fg-2); max-width: 60ch; margin-top: 20px; }
.cm-muted { color: var(--mute); }
.cm-note { font-size: 13px; line-height: 1.5; color: var(--mute); max-width: 80ch; }
.cm-small { font-size: 13px; line-height: 1.45; }
.cm-cap { font: 400 12px/1.4 var(--cm-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--mute); margin-top: 10px; }
.cm .cm-num { font-family: var(--cm-mono); font-weight: 500; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.cm-num--xl { font-size: 56px; line-height: 1; letter-spacing: -.03em; }
.cm-num--l { font-size: 36px; line-height: 1.05; letter-spacing: -.02em; }
.cm-num--m { font-size: 24px; line-height: 1.1; }
.cm-label { font: 500 12px/1.2 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--mute); }


.cm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 28px; border: 1px solid var(--btn-bg); border-radius: var(--r); background: var(--btn-bg); color: var(--btn-fg);
  font: 600 13px/1.2 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; text-decoration: none; text-align: center; white-space: nowrap;
  transition: background-color .25s, border-color .25s, color .25s, transform .25s var(--ease), box-shadow .25s; }
.cm-btn:hover { background: var(--btn-hover); border-color: var(--btn-hover); transform: translateY(-2px); }
.cm-btn:active { transform: translateY(0); }
.cm-btn svg { width: 16px; height: 16px; flex: none; }
.cm-btn--primary { background: var(--cm-ice-ink); border-color: var(--cm-ice-ink); color: #fff; }
.cm-btn--primary:hover { background: #0A6093; border-color: #0A6093; color: #fff; }
.cm-btn--ghost { background: transparent; border-color: var(--heading); color: var(--heading); }
.cm-btn--ghost:hover { background: var(--heading); border-color: var(--heading); color: var(--cm-paper); }
.cm-btn--ice { background: var(--cm-ice); border-color: var(--cm-ice); color: var(--cm-night); }
.cm-btn--ice:hover { background: var(--cm-ice-2); border-color: var(--cm-ice-2); color: var(--cm-night); box-shadow: 0 12px 30px -12px rgba(88, 201, 255, .7); }
.cm-btn--line-light { background: transparent; border-color: rgba(230, 240, 248, .6); color: var(--cm-frost-c); }
.cm-btn--line-light:hover { background: var(--cm-frost-c); border-color: var(--cm-frost-c); color: var(--cm-night); }
.cm-btn--sm { min-height: 44px; padding: 0 18px; font-size: 12px; }
.cm-btn[disabled], .cm-btn[aria-disabled="true"] { opacity: .45; cursor: not-allowed; transform: none; }
.cm-cta-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }

.cm-ask { margin-top: clamp(36px, 5vw, 64px); padding: 22px clamp(18px, 3vw, 32px); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 28px;
  background: var(--card); border: 1px solid var(--ln); border-left: 3px solid var(--accent); border-radius: var(--r); }
.cm-ask p { flex: 1 1 320px; font: 600 clamp(17px, 1.4vw, 19px)/1.4 var(--cm-display); color: var(--heading); }
.cm-ask__btns { display: flex; flex-wrap: wrap; gap: 10px; }


.cm-chip { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 6px 14px; font: 500 13px/1.2 var(--cm-sans); letter-spacing: .02em; border: 1px solid var(--ln); border-radius: var(--r); background: var(--card); color: var(--fg); transition: background .2s, border-color .2s, color .2s; }
.cm-chip svg { width: 15px; height: 15px; color: var(--accent); flex: none; }
.cm-chip:is(button, a):hover { border-color: var(--accent); }
.cm-chip.is-on, .cm-chip[aria-pressed="true"] { background: var(--accent-soft); border-color: var(--accent); color: var(--accent); }
.cm-sec--night .cm-chip.is-on, .cm-sec--night .cm-chip[aria-pressed="true"] { color: var(--cm-ice-2); }
.cm-chip--future { border-style: dashed; color: var(--mute); cursor: default; }
.cm-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cm-tag { display: inline-block; padding: 4px 10px; font: 600 11px/1.3 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; background: var(--accent-soft); color: var(--accent); border-radius: var(--r); }

.cm-seg { display: inline-flex; flex-wrap: wrap; border: 1px solid var(--heading); border-radius: var(--r); overflow: hidden; }
.cm-seg button { min-height: 44px; padding: 0 18px; font: 600 12px/1 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--heading); transition: background .25s, color .25s; }
.cm-seg button + button { border-left: 1px solid var(--heading); }
.cm-seg button[aria-pressed="true"], .cm-seg button[aria-selected="true"] { background: var(--heading); color: var(--cm-paper); }
.cm-sec--night .cm-seg button[aria-pressed="true"], .cm-sec--night .cm-seg button[aria-selected="true"] { color: var(--cm-night); }

.cm-stepper { display: inline-flex; align-items: stretch; border: 1px solid var(--heading); border-radius: var(--r); background: var(--card); }
.cm-stepper button { width: 44px; min-height: 44px; font: 400 22px/1 var(--cm-sans); color: var(--heading); transition: background .2s; }
.cm-stepper button:hover { background: var(--accent-soft); }
.cm-stepper button[disabled] { opacity: .35; cursor: not-allowed; }
.cm-stepper output, .cm-stepper input { min-width: 56px; display: grid; place-items: center; text-align: center; border: 0; border-left: 1px solid var(--heading); border-right: 1px solid var(--heading); background: transparent; color: var(--heading); font: 500 18px/1 var(--cm-mono); font-variant-numeric: tabular-nums; }
.cm-stepper input { -moz-appearance: textfield; appearance: textfield; padding: 0 8px; width: 72px; }
.cm-stepper input::-webkit-outer-spin-button, .cm-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.cm-range { -webkit-appearance: none; appearance: none; width: 100%; height: 44px; background: transparent; cursor: pointer; margin: 0; }
.cm-range::-webkit-slider-runnable-track { height: 2px; background: var(--ln); }
.cm-range::-moz-range-track { height: 2px; background: var(--ln); }
.cm-range::-webkit-slider-thumb { -webkit-appearance: none; width: 22px; height: 22px; margin-top: -10px; background: var(--accent); border: 2px solid var(--card); border-radius: var(--r); box-shadow: 0 0 0 1px var(--accent); }
.cm-range::-moz-range-thumb { width: 22px; height: 22px; background: var(--accent); border: 2px solid var(--card); border-radius: var(--r); box-shadow: 0 0 0 1px var(--accent); }

.cm-field { display: grid; gap: 6px; }
.cm-field > span { font: 500 12px/1.3 var(--cm-sans); letter-spacing: .04em; color: var(--mute); }
.cm-input { min-height: 48px; padding: 0 14px; border: 1px solid var(--ln); border-radius: var(--r); background: var(--card); color: var(--heading); font: 500 17px/1 var(--cm-mono); font-variant-numeric: tabular-nums; width: 100%; }
.cm-input::placeholder { color: var(--mute); font-family: var(--cm-sans); font-weight: 400; font-size: 14px; }
.cm-input:focus { border-color: var(--accent); outline: none; box-shadow: 0 0 0 1px var(--accent); }

.cm-toggle { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; cursor: pointer; font-size: 14px; color: var(--fg); position: relative; }
.cm-toggle input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.cm-toggle i { flex: none; width: 44px; height: 24px; border: 1px solid var(--heading); border-radius: 999px; position: relative; transition: background .25s, border-color .25s; }
.cm-toggle i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: var(--heading); transition: transform .25s var(--ease), background .25s; }
.cm-toggle input:checked + i { background: var(--accent); border-color: var(--accent); }
.cm-toggle input:checked + i::after { transform: translateX(20px); background: #fff; }
.cm-toggle input:focus-visible + i { outline: 2px solid var(--accent); outline-offset: 3px; }


.cm-card { position: relative; background: var(--card); border: 1px solid var(--ln); border-radius: var(--r); overflow: hidden; transition: transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s; }
.cm-card:hover { box-shadow: var(--cm-shadow); }
.cm-card__img { aspect-ratio: var(--ar, 4 / 3); overflow: hidden; background: var(--cm-stone); }
.cm-card__img img, .cm-card__img video { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.cm-card:hover .cm-card__img img { transform: scale(1.05); }
.cm-card__body { padding: 22px; }
.cm-card__body b, .cm-card__body .cm-h3 { display: block; color: var(--heading); }
.cm-card__body > b { font: 700 18px/1.3 var(--cm-display); }
.cm-card__body p { margin-top: 10px; font-size: 14px; line-height: 1.6; color: var(--fg-2); }
.cm-card[aria-pressed="true"], .cm-card.is-on { border: 2px solid var(--accent); }

.cm-media { position: relative; overflow: hidden; background: var(--cm-stone); border-radius: var(--r); }
.cm-media > img, .cm-media > video, .cm-media > picture > img { width: 100%; height: 100%; object-fit: cover; }
.cm-media--ar { aspect-ratio: var(--ar, 16 / 10); }
.cm-media figcaption { margin-top: 10px; }
.cm video[data-cm-video] { background: var(--cm-night-2); }

.cm-play { position: absolute; inset: 0; z-index: 2; display: grid; place-items: center; color: #fff; background: linear-gradient(180deg, transparent 40%, rgba(8, 14, 24, .45)); transition: background .3s, opacity .3s; }
.cm-play::before { content: ""; width: 72px; height: 72px; border: 1px solid rgba(255, 255, 255, .8); border-radius: 50%; background: rgba(8, 14, 24, .45) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M9 6.5v11l9-5.5z'/%3E%3C/svg%3E") center / 28px no-repeat; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); transition: transform .3s var(--spring); }
.cm-play:hover::before { transform: scale(1.08); }
.cm-play.is-off { opacity: 0; pointer-events: none; }

.cm-fact { display: grid; gap: 4px; padding: 14px 16px; min-width: 150px; background: rgba(11, 24, 38, .58); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid rgba(230, 240, 248, .18); border-radius: var(--r); color: #fff; }
.cm-fact b { font: 800 30px/1 var(--cm-display); letter-spacing: -.02em; color: #fff; white-space: nowrap; }
.cm-fact span { font: 500 11px/1.35 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: rgba(230, 240, 248, .75); }
.cm-sec--paper .cm-fact, .cm-sec--paper-2 .cm-fact, .cm-sec--white .cm-fact, .cm-sec--stone .cm-fact, .cm-sec--grid .cm-fact { background: var(--cm-white); border-color: var(--cm-line); backdrop-filter: none; -webkit-backdrop-filter: none; color: var(--cm-ink); }
.cm-sec--paper .cm-fact b, .cm-sec--paper-2 .cm-fact b, .cm-sec--white .cm-fact b, .cm-sec--stone .cm-fact b, .cm-sec--grid .cm-fact b { color: var(--cm-ink); }
.cm-sec--paper .cm-fact span, .cm-sec--paper-2 .cm-fact span, .cm-sec--white .cm-fact span, .cm-sec--stone .cm-fact span, .cm-sec--grid .cm-fact span { color: var(--cm-muted); }
.cm-facts { display: flex; flex-wrap: wrap; gap: 12px; }

.cm-hot { position: absolute; left: var(--x); top: var(--y); z-index: 4; width: 44px; height: 44px; margin: -22px 0 0 -22px; display: grid; place-items: center; transition: opacity .6s var(--ease); }
.cm-js .cm-hot { opacity: 0; pointer-events: none; }
.cm-js .cm-hot.is-shown { opacity: 1; pointer-events: auto; }
.cm-hot i { position: relative; width: 14px; height: 14px; border-radius: 50%; background: var(--cm-ice); box-shadow: 0 0 0 2px rgba(11, 24, 38, .45), 0 0 18px rgba(88, 201, 255, .8); }
.cm-hot i::before { content: ""; position: absolute; inset: -8px; border-radius: 50%; border: 1px solid rgba(88, 201, 255, .9); animation: cm-ping 2.4s ease-out infinite; }
.cm-hot[aria-pressed="true"] i { background: #fff; }
.cm-hot[aria-pressed="true"] i::before { animation: none; opacity: 0; }
.cm-hot b { position: absolute; left: calc(100% - 4px); top: 50%; transform: translate(6px, -50%); padding: 9px 13px; width: max-content; max-width: 280px; text-align: left; white-space: nowrap;
  font: 500 13px/1.3 var(--cm-sans); letter-spacing: .01em; color: #fff; background: rgba(11, 24, 38, .72); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid rgba(230, 240, 248, .18); border-radius: var(--r);
  opacity: 0; pointer-events: none; transition: opacity .25s, transform .25s var(--ease); }
.cm-hot--left b { left: auto; right: calc(100% - 4px); transform: translate(-6px, -50%); }
.cm-hot b small { display: none; margin-top: 5px; font: 400 13px/1.4 var(--cm-sans); color: rgba(230, 240, 248, .82); white-space: normal; }
.cm-hot.is-hint b { white-space: normal; }
.cm-hot.is-hint b small { display: block; }
.cm:not(.cm-is-touch) .cm-hot:hover b, .cm-hot:focus-visible b, .cm-hot[aria-pressed="true"] b { opacity: 1; transform: translate(0, -50%); }

.cm-phone { position: relative; width: 360px; max-width: 100%; aspect-ratio: 360 / 780; margin-inline: auto; border: 10px solid #0F141A; border-radius: 28px; background: #0F141A; box-shadow: var(--cm-shadow); overflow: hidden; }
.cm-phone::before { content: ""; position: absolute; z-index: 3; top: 10px; left: 50%; width: 88px; height: 6px; margin-left: -44px; border-radius: 999px; background: #0F141A; box-shadow: 0 0 0 4px #0F141A; }
.cm-phone > video, .cm-phone > img { width: 100%; height: 100%; object-fit: cover; background: var(--cm-night); }
.cm-phone--wide { aspect-ratio: 16 / 9; width: 100%; max-width: 560px; }


.cm-steps { display: grid; gap: 14px; counter-reset: st; }
.cm-step { display: grid; grid-template-columns: 56px 1fr; gap: 16px; padding: 20px; background: var(--card); border: 1px solid var(--ln); border-radius: var(--r); }
.cm-step::before { counter-increment: st; content: "0" counter(st); font: 500 22px/1.2 var(--cm-mono); color: var(--accent); }
.cm-step b { display: block; font: 700 17px/1.3 var(--cm-display); color: var(--heading); margin-bottom: 6px; }
.cm-step p, .cm-step li { font-size: 14px; line-height: 1.6; color: var(--fg-2); }
.cm-stats { display: flex; flex-wrap: wrap; gap: 0 24px; margin-top: 28px; border-top: 1px solid var(--ln); }
.cm-stat { flex: 1 1 110px; padding: 18px 0 0; }
.cm-stat b { display: block; font: 800 clamp(24px, 2.4vw, 36px)/1.1 var(--cm-display); letter-spacing: -.02em; color: var(--heading); white-space: nowrap; }
.cm-stat b.cm-num { font-weight: 500; }
.cm-stat span { display: block; margin-top: 6px; font-size: 13px; line-height: 1.45; color: var(--mute); }
.cm-spec { display: flex; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--ln); font-size: 15px; }
.cm-spec dt { color: var(--mute); }
.cm-spec dd { color: var(--heading); font-weight: 500; text-align: right; font-variant-numeric: tabular-nums; }
.cm-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.cm-table th { text-align: left; font: 600 11px/1.3 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--mute); padding: 10px 12px; border-bottom: 1px solid var(--heading); }
.cm-table td { padding: 13px 12px; border-bottom: 1px solid var(--ln); vertical-align: top; color: var(--fg); }
.cm-table td:first-child { color: var(--mute); }
.cm-table td.cm-num, .cm-table th.cm-num { text-align: right; }
.cm-table tr.is-same td:not(:first-child) { color: var(--mute); }
.cm-table tbody tr:hover td { background: var(--accent-soft); }
.cm-q { border-bottom: 1px solid var(--ln); }
.cm-q summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 22px 0; font: 600 clamp(17px, 1.4vw, 19px)/1.35 var(--cm-display); color: var(--heading); }
.cm-q summary::-webkit-details-marker { display: none; }
.cm-q summary::after { content: "+"; flex: none; width: 36px; height: 36px; border: 1px solid var(--ln); border-radius: var(--r); display: grid; place-items: center; font: 300 22px/1 var(--cm-sans); transition: background .25s, color .25s, border-color .25s; }
.cm-q[open] summary::after { content: "−"; background: var(--accent); color: #fff; border-color: var(--accent); }
.cm-q p { padding: 0 56px 24px 0; font-size: 15px; line-height: 1.7; color: var(--fg-2); }
.cm-ticks li { position: relative; padding-left: 26px; font-size: 15px; line-height: 1.55; }
.cm-ticks li + li { margin-top: 8px; }
.cm-ticks li::before { content: ""; position: absolute; left: 2px; top: 6px; width: 12px; height: 7px; border-left: 2px solid var(--accent); border-bottom: 2px solid var(--accent); transform: rotate(-45deg); }

.cm-verdict { display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px; border-radius: var(--r); font: 500 14px/1.3 var(--cm-sans); background: var(--card); border: 1px solid var(--ln); color: var(--heading); border-left: 3px solid var(--accent); }
.cm-verdict--ok { border-left-color: var(--cm-ok); }
.cm-verdict--warn { border-left-color: var(--cm-warn); }
.cm-verdict--bad { border-left-color: var(--cm-bad); }



.cm-js [data-cm-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .8s var(--ease), transform .8s var(--ease); transition-delay: var(--d, 0s); }
.cm-js [data-cm-reveal="left"] { transform: translateX(-28px); }
.cm-js [data-cm-reveal="right"] { transform: translateX(28px); }
.cm-js [data-cm-reveal="zoom"] { transform: scale(.96); }
.cm-js [data-cm-reveal].is-in { opacity: 1; transform: none; }
.cm-draw { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.6s var(--ease); }      
.is-in .cm-draw, .cm-draw.is-in { stroke-dashoffset: 0; }
@keyframes cm-kb { from { transform: scale(1.08); } to { transform: scale(1); } }        
.cm-kb { animation: cm-kb 22s ease-out both; transform-origin: 50% 40%; }
@keyframes cm-ping { 0% { transform: scale(.6); opacity: .9; } 100% { transform: scale(1.9); opacity: 0; } }
@keyframes cm-float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -10px; } }
@keyframes cm-breathe { 0%, 100% { opacity: .55; transform: scale(.96); } 50% { opacity: 1; transform: scale(1); } }

.cm-frost { position: absolute; inset: 0; z-index: 1; pointer-events: none; opacity: var(--frost-o, calc(var(--chill) * .5)); transition: opacity .9s var(--ease); }
.cm-frost::before, .cm-frost::after { content: ""; position: absolute; left: 0; right: 0; height: 120px; background: url(/pub/media/spg-story/engine-cryomaster/assets/cm-frost-edge.webp?v=1792567956) center / cover no-repeat, linear-gradient(180deg, rgba(169, 230, 255, .35), transparent); mix-blend-mode: screen; }
.cm-frost::before { top: 0; }
.cm-frost::after { bottom: 0; transform: scaleY(-1); }



:root:has(.cm).sgpt-v1 .cm-bar { display: none; }
:root:has(.cm).sgpt-sbar-on .cm-nav { top: 72px; }

.cm-nav { position: sticky; top: 0; z-index: 30; background: rgba(247, 245, 241, .94); backdrop-filter: saturate(1.2) blur(12px); -webkit-backdrop-filter: saturate(1.2) blur(12px); border-bottom: 1px solid var(--cm-line); color: var(--cm-ink); }
.cm-nav__in { display: flex; gap: 2px; overflow-x: auto; scrollbar-width: none; padding: 0 var(--gut); max-width: var(--wrap); margin: 0 auto; }
.cm-nav__in::-webkit-scrollbar { display: none; }
.cm-nav a { flex: none; padding: 17px 14px; font: 500 13px/1 var(--cm-sans); letter-spacing: .02em; text-decoration: none; color: var(--cm-muted); border-bottom: 2px solid transparent; transition: color .2s, border-color .2s; white-space: nowrap; }
.cm-nav a:hover { color: var(--cm-ink); }
.cm-nav a.is-active { color: var(--cm-ink); border-bottom-color: var(--cm-ice-ink); }

.cm-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; transform: translateY(110%); visibility: hidden; transition: transform .45s var(--ease), visibility 0s .45s; display: flex; align-items: center; justify-content: center; gap: 22px;
  padding: 10px var(--gut); background: rgba(11, 24, 38, .96); color: var(--cm-frost-c); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-top: 1px solid var(--cm-line-d); font-family: var(--cm-sans); }
.cm-bar.is-on { transform: none; visibility: visible; transition: transform .45s var(--ease), visibility 0s; }
.cm-bar__name { font: 600 15px/1.2 var(--cm-display); letter-spacing: -.01em; }
.cm-bar__price { font: 500 18px/1 var(--cm-mono); font-variant-numeric: tabular-nums; color: var(--cm-ice); }
.cm-bar__warranty { font: 500 12px/1.3 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--cm-muted-d); }
.cm-bar .cm-btn { min-height: 44px; padding: 0 22px; font-size: 12px; background: var(--cm-ice); border-color: var(--cm-ice); color: var(--cm-night); }
.cm-bar .cm-btn:hover { background: var(--cm-ice-2); border-color: var(--cm-ice-2); }

.cm-sheet { position: fixed; inset: 0; z-index: 60; display: none; align-items: flex-end; justify-content: center; background: rgba(11, 24, 38, .55); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); font-family: var(--cm-sans); }
.cm-sheet.is-on { display: flex; }
.cm-sheet__panel { width: 100%; max-width: 520px; background: var(--cm-white); color: var(--cm-text); border: 1px solid var(--cm-line); border-radius: var(--r); padding: 22px 22px 26px; box-shadow: 0 -20px 60px rgba(11, 24, 38, .35); transform: translateY(24px); animation: cm-sheet-in .35s var(--ease) forwards; }
@keyframes cm-sheet-in { to { transform: none; } }
.cm-sheet__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 8px; }
.cm-sheet__head b { font: 700 20px/1.2 var(--cm-display); color: var(--cm-ink); }
.cm-sheet__close { width: 44px; height: 44px; display: grid; place-items: center; color: var(--cm-muted); font-size: 26px; line-height: 1; border-radius: var(--r); }
.cm-sheet__close:hover { color: var(--cm-ink); background: var(--cm-paper-2); }
.cm-sheet__topic { font-size: 14px; color: var(--cm-muted); margin-bottom: 8px; }
.cm-sheet__lead { font: 400 13px/1.5 var(--cm-sans); color: var(--cm-text); padding: 10px 12px; margin-bottom: 16px; background: var(--cm-paper); border-left: 2px solid var(--cm-ice-ink); }
.cm-sheet__btns { display: grid; gap: 10px; }
.cm-sheet__btns .cm-btn { justify-content: flex-start; padding: 0 18px; background: var(--cm-paper); border-color: var(--cm-line); color: var(--cm-ink); text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 500; }
.cm-sheet__btns .cm-btn:hover { background: var(--cm-ice-soft); border-color: var(--cm-ice-ink); color: var(--cm-ink); }
.cm-sheet__btns .cm-btn--ice { background: var(--cm-ice-ink); border-color: var(--cm-ice-ink); color: #fff; }
.cm-sheet__btns .cm-btn--ice:hover { background: #0A6093; border-color: #0A6093; color: #fff; }
.cm-sheet__btns .cm-btn svg { width: 20px; height: 20px; }

.cm-toast { position: fixed; left: 50%; bottom: 84px; z-index: 70; transform: translate(-50%, 20px); opacity: 0; padding: 12px 18px; background: var(--cm-ink); color: #fff; font: 500 14px/1.3 var(--cm-sans); border-radius: var(--r); transition: transform .35s var(--ease), opacity .35s; pointer-events: none; }
.cm-toast.is-on { transform: translate(-50%, 0); opacity: 1; }


@media (max-width: 900px) {
  .cm { font-size: 15px; }
  .cm .cm-m-only { display: initial; }
  .cm-sec { padding: clamp(56px, 12vw, 72px) 0; }
  .cm-display { font-size: 40px; }
  .cm-sub { font-size: 20px; }
  .cm-title { font-size: 32px; }
  .cm-h3 { font-size: 19px; }
  .cm-eyebrow { font-size: 11px; }
  .cm-lead { font-size: 16px; }
  .cm-note, .cm-small { font-size: 12px; }
  .cm-num--xl { font-size: 40px; }
  .cm-num--l { font-size: 28px; }
  .cm-num--m { font-size: 20px; }
  .cm-head { margin-bottom: 32px; }
  .cm-grid, .cm-grid--7-5, .cm-grid--5-7, .cm-grid--6-6, .cm-grid--8-4, .cm-grid--4-4-4, .cm-grid--3x2, .cm-grid--4x, .cm-grid--2x { grid-template-columns: 1fr; gap: 16px; }
  
  .cm-rail-x { display: flex; grid-template-columns: none; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(var(--gut) * -1); padding: 2px var(--gut) 8px; scroll-padding-inline: var(--gut); }
  .cm-rail-x::-webkit-scrollbar { display: none; }
  .cm-rail-x > * { flex: 0 0 82vw; max-width: 360px; scroll-snap-align: start; }
  .cm-chip { min-height: 44px; }
  .cm-bar { justify-content: space-between; gap: 12px; padding-right: 72px; }   
  .cm-bar__name, .cm-bar__warranty { display: none; }
  .cm-ask { padding: 18px; }
  .cm-ask p { font-size: 16px; }
  .cm-step { grid-template-columns: 40px 1fr; padding: 16px; }
  .cm-q p { padding-right: 0; }
  .cm-fact { min-width: 140px; padding: 12px 14px; }
  .cm-fact b { font-size: 26px; }
  .cm-hot { left: var(--mx, var(--x)); top: var(--my, var(--y)); }
  .cm-hot[data-m-hidden] { display: none; }
  .cm-hot b { max-width: 220px; font-size: 12px; padding: 8px 11px; }
  .cm-phone { width: 280px; }
  .cm-sheet__panel { max-width: none; border-left: 0; border-right: 0; border-bottom: 0; padding-bottom: max(26px, env(safe-area-inset-bottom)); }
  .cm-table { font-size: 14px; }
  .cm-table th, .cm-table td { padding: 10px 8px; }
  
  .cm-table--cards, .cm-table--cards tbody, .cm-table--cards tr, .cm-table--cards td { display: block; width: 100%; }
  .cm-table--cards thead { display: none; }
  .cm-table--cards tr { padding: 12px 0; border-bottom: 1px solid var(--ln); }
  .cm-table--cards td { padding: 2px 0; border: 0; text-align: left; }
  .cm-table--cards td:first-child { font: 600 11px/1.4 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--mute); }
  .cm-table--cards td.cm-num { text-align: left; }
}
@media (min-width: 901px) {
  .cm-sheet { align-items: center; }
  .cm-sheet__panel { transform: translateY(12px) scale(.98); }
}
@media (max-width: 430px) {
  .cm-btn { padding: 0 20px; white-space: normal; }
  .cm-cta-row .cm-btn, .cm-ask__btns .cm-btn { flex: 1 1 100%; }
  .cm-ask__btns { width: 100%; }
}

.cm-is-reduced [data-cm-reveal], .cm-is-reduced .cm-draw { opacity: 1; transform: none; transition: none; stroke-dashoffset: 0; }
.cm-is-reduced .cm-kb { animation: none; transform: none; }
.cm-is-reduced .cm-hot i::before { animation: none; opacity: 0; }
.cm-is-reduced .cm-hot { opacity: 1; pointer-events: auto; }
@media (prefers-reduced-motion: reduce) {
  .cm-js [data-cm-reveal] { opacity: 1; transform: none; transition: none; }
  .cm-js .cm-hot { opacity: 1; pointer-events: auto; }
  .cm-draw { stroke-dashoffset: 0; transition: none; }
  .cm-kb { animation: none; transform: none; }
  .cm-hot i::before { animation: none; opacity: 0; }
  .cm *, .cm *::before, .cm *::after, .cm-bar, .cm-sheet__panel, .cm-toast { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}


.cm .cm-hero { position: relative; height: max(680px, min(100vh, 960px)); padding: 0; overflow: hidden; background: var(--cm-night); color: var(--cm-frost);
  --hx: max(var(--gut), calc((100% - var(--wrap)) / 2 + var(--gut))); }
.cm .cm-hero__media { position: absolute; inset: 0; z-index: 0; }
.cm .cm-hero__media picture { display: block; position: absolute; inset: 0; }
.cm .cm-hero__img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; transform-origin: 50% 40%; }
.cm-js .cm-hero__img { animation: cm-hero-kb 22s cubic-bezier(.2, .7, .2, 1) both; }
@keyframes cm-hero-kb { from { transform: scale(1.08); } to { transform: scale(1); } }
.cm .cm-hero__veil { position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: radial-gradient(ellipse 48% 44% at 17% 22%, rgba(8, 14, 24, .8), rgba(8, 14, 24, .42) 55%, transparent 100%), 
    linear-gradient(180deg, rgba(8, 14, 24, .78) 0%, rgba(8, 14, 24, .38) 18%, transparent 34%),
    linear-gradient(0deg, rgba(8, 14, 24, .86) 0%, rgba(8, 14, 24, .5) 16%, transparent 38%),
    linear-gradient(90deg, rgba(8, 14, 24, .5), transparent 14%); }
.cm .cm-hero__frost { z-index: 2; opacity: .3; pointer-events: none;
  -webkit-mask: linear-gradient(#000, transparent 120px, transparent calc(100% - 120px), #000); mask: linear-gradient(#000, transparent 120px, transparent calc(100% - 120px), #000); }


.cm .cm-hero__top { position: absolute; z-index: 5; left: var(--hx); top: clamp(28px, 4vh, 40px); width: min(54%, 720px); }
.cm .cm-hero__eyebrow { color: rgba(230, 240, 248, .75); }
.cm .cm-hero__h2 { margin: 14px 0 0; color: #fff; white-space: nowrap; }
.cm .cm-hero__sub { margin: 12px 0 0; color: #fff; max-width: 26ch; text-shadow: 0 1px 2px rgba(8, 14, 24, .7), 0 0 28px rgba(8, 14, 24, .6); }
.cm .cm-hero .cm-m-only { display: none; }


.cm .cm-hero__artem { position: absolute; z-index: 5; left: 2.8%; bottom: clamp(28px, 4vh, 40px); width: 112px; display: block; color: var(--cm-frost); text-decoration: none; text-align: center; }
.cm .cm-hero__artem video { display: block; width: 112px; height: 112px; object-fit: cover; border-radius: 50%; border: 2px solid var(--cm-ice); background: var(--cm-night-2);
  box-shadow: 0 0 0 5px rgba(88, 201, 255, .16), var(--cm-shadow); transition: border-color .3s, box-shadow .3s; }
.cm .cm-hero__artem:hover video, .cm .cm-hero__artem:focus-visible video { border-color: #fff; box-shadow: 0 0 0 7px rgba(88, 201, 255, .28), var(--cm-shadow); }
.cm .cm-hero__artem span { display: block; margin-top: 8px; font: 600 11px/1.3 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: rgba(230, 240, 248, .75); }
.cm .cm-hero__artem:focus-visible { outline: none; }


.cm .cm-hero__panel { position: absolute; z-index: 5; left: max(var(--hx), calc(2.8% + 140px)); bottom: clamp(32px, 5vh, 56px); width: min(42%, 560px); }
.cm .cm-hero__lead { margin: 0; font-size: 17px; line-height: 1.55; color: rgba(230, 240, 248, .9); max-width: 560px; }
.cm .cm-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }


.cm .cm-hero__facts { position: absolute; z-index: 4; left: 49%; top: 30%; width: 180px; margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }


.cm .cm-hero__hots { position: absolute; inset: 0; z-index: 6; pointer-events: none; }
.cm .cm-hero__hots .cm-hot { position: absolute; left: var(--x); top: var(--y); pointer-events: auto; }
.cm .cm-hero__hots .cm-hot.is-left b { left: auto; right: calc(100% + 12px); }

.cm .cm-hero__cap { position: absolute; z-index: 5; right: var(--gut); bottom: 18px; margin: 0; font-size: 11px; color: rgba(230, 240, 248, .6); }
.cm .cm-hero__scroll { position: absolute; z-index: 5; right: calc(var(--gut) + 2px); bottom: clamp(64px, 10vh, 100px); writing-mode: vertical-rl; font: 600 11px/1 var(--cm-sans); letter-spacing: .2em; text-transform: uppercase; color: rgba(230, 240, 248, .6); }
.cm .cm-hero__scroll::after { content: ""; display: inline-block; width: 1px; height: 48px; margin-top: 12px; vertical-align: middle; background: linear-gradient(180deg, rgba(230, 240, 248, .8), transparent); transform-origin: top; animation: cm-hero-line 2.2s ease-in-out infinite; }
@keyframes cm-hero-line { 0% { transform: scaleY(0); } 50% { transform: scaleY(1); } 100% { transform: scaleY(0); transform-origin: bottom; } }

.cm-is-reduced .cm-hero__img, .cm-is-reduced .cm-hero__scroll::after { animation: none; }

@media (max-width: 1180px) {
  .cm .cm-hero__facts { left: 50%; width: 164px; }
  .cm .cm-hero__panel { width: min(46%, 520px); }
}

@media (max-width: 900px) {
  .cm .cm-hero { height: auto; --ph: clamp(440px, 62vh, 560px); --ph: clamp(440px, 62svh, 560px); }
  .cm .cm-hero__media { inset: 0 0 auto; height: var(--ph); }
  .cm .cm-hero__img { object-position: 50% 32%; }
  .cm .cm-hero__veil { background: linear-gradient(180deg, rgba(8, 14, 24, .7) 0%, rgba(8, 14, 24, .3) 26%, transparent 40%),
    linear-gradient(0deg, var(--cm-night) 0%, rgba(11, 24, 38, .6) 14%, transparent 34%); }
  .cm .cm-hero__frost { display: none; }
  .cm .cm-hero__hots { inset: 0 0 auto; height: var(--ph); }
  .cm .cm-hero__hots .cm-hot { left: var(--mx, var(--x)); top: var(--my, var(--y)); }
  .cm .cm-hero__hots .cm-hot[data-m-hidden] { display: none; }
  .cm .cm-hero__hots .cm-hot.is-left b { left: calc(100% + 12px); right: auto; }
  .cm .cm-hero__hots .cm-hot.is-left-m b { left: auto; right: calc(100% + 12px); }
  .cm .cm-hero__top { position: relative; left: auto; top: auto; width: auto; height: var(--ph); padding: 16px 100px 0 16px; }
  .cm .cm-hero__h2 { white-space: normal; font-size: 40px; }
  .cm .cm-hero br.cm-m-only { display: inline; }
  .cm .cm-hero p.cm-m-only { display: block; }
  .cm .cm-hero .cm-d-only { display: none; }
  .cm .cm-hero__artem { left: auto; right: 16px; top: 16px; bottom: auto; width: 72px; }
  .cm .cm-hero__artem video { width: 72px; height: 72px; box-shadow: 0 0 0 4px rgba(88, 201, 255, .16); }
  .cm .cm-hero__artem span { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); }
  .cm .cm-hero__panel { position: relative; left: auto; bottom: auto; width: auto; padding: 20px 16px 4px; background: var(--cm-night); }
  .cm .cm-hero__sub { max-width: none; margin: 0 0 12px; }
  .cm .cm-hero__lead { font-size: 15px; }
  .cm .cm-hero__cta { flex-direction: column; margin-top: 18px; }
  .cm .cm-hero__cta .cm-btn { width: 100%; }
  .cm .cm-hero__facts { position: relative; left: auto; top: auto; width: auto; display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 14px 16px 28px; background: var(--cm-night); }
  .cm .cm-hero__facts::-webkit-scrollbar { display: none; }
  .cm .cm-hero__facts .cm-fact { flex: 0 0 150px; scroll-snap-align: start; background: var(--cm-night-2); backdrop-filter: none; }
  .cm .cm-hero__cap { right: 16px; bottom: auto; top: calc(var(--ph) - 26px); }
  .cm .cm-hero__scroll { display: none; }
}


.cm .cm-02__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.cm .cm-02__card { display: flex; flex-direction: column; }
.cm .cm-02__img { aspect-ratio: 4 / 5; overflow: hidden; background: var(--cm-stone); }
.cm .cm-02__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.cm .cm-02__card:hover .cm-02__img img { transform: scale(1.05); }
.cm .cm-02__body { padding: 20px 22px 24px; }
.cm .cm-02__body .cm-cap { margin: 0 0 14px; }
.cm .cm-02__n { display: block; font-size: 13px; letter-spacing: .1em; color: var(--cm-ice-ink); }
.cm .cm-02__body h3 { margin: 8px 0 0; }
.cm .cm-02__body p:last-child { margin: 10px 0 0; font-size: 15px; line-height: 1.6; color: var(--fg-2); }

.cm .cm-02__passport { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px 40px; margin-top: clamp(32px, 4vw, 48px); padding-top: 24px; border-top: 1px solid var(--cm-ink); }
.cm .cm-02__stats { display: flex; flex-wrap: wrap; gap: 8px 40px; margin: 0; padding: 0; border: 0; }
.cm .cm-02__stats .cm-stat b { display: block; font-size: clamp(26px, 2.4vw, 34px); line-height: 1.1; color: var(--cm-ink); }
.cm .cm-02__stats .cm-stat span { display: block; margin-top: 6px; font: 500 11px/1.3 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--cm-muted); }
.cm .cm-02__variant { margin: 0; max-width: 38ch; }

@media (max-width: 900px) {
  .cm .cm-02__cards { grid-template-columns: 1fr; gap: 20px; }
  .cm .cm-02__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 20px; width: 100%; }
  .cm .cm-02__variant { max-width: none; }
}


.cm .cm-03__rail { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-bottom: 24px; border-top: 1px solid var(--cm-ink); }
.cm .cm-03__tab { display: flex; align-items: baseline; gap: 12px; min-height: 64px; padding: 18px 16px 16px 0; border: 0; border-bottom: 2px solid transparent; background: none; text-align: left;
  font: 600 16px/1.2 var(--cm-sans); color: var(--cm-muted); cursor: pointer; transition: color .25s, border-color .25s; }
.cm .cm-03__tab .cm-num { font-size: 13px; color: var(--cm-muted); transition: color .25s; }
.cm .cm-03__tab:hover { color: var(--cm-ink); }
.cm .cm-03__tab[aria-selected="true"] { color: var(--cm-ink); border-bottom-color: var(--cm-ice-ink); }
.cm .cm-03__tab[aria-selected="true"] .cm-num { color: var(--cm-ice-ink); }
.cm .cm-03__tab:focus-visible { outline: 2px solid var(--cm-ice-ink); outline-offset: -2px; }

.cm .cm-03__stage { position: relative; }
.cm .cm-03__media { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--cm-night); touch-action: pan-y pinch-zoom; }
.cm .cm-03__img, .cm .cm-03__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .4s var(--ease); }
.cm .cm-03__video { opacity: 0; }
.cm .cm-03__media.has-clip .cm-03__video { opacity: 1; }
.cm .cm-03__media.is-fading .cm-03__img, .cm .cm-03__media.is-fading .cm-03__video { opacity: 0; }
.cm .cm-03__media::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(0deg, rgba(8, 14, 24, .74) 0%, rgba(8, 14, 24, .3) 34%, transparent 58%); }
.cm .cm-03__play { position: absolute; z-index: 3; left: 50%; top: 50%; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 12px; min-height: 56px; padding: 0 22px 0 8px;
  border: 1px solid rgba(230, 240, 248, .5); background: rgba(11, 24, 38, .6); backdrop-filter: blur(8px); color: #fff; font: 600 12px/1 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; cursor: pointer; transition: background .25s, opacity .3s; }
.cm .cm-03__play i { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--cm-ice); color: var(--cm-night); }
.cm .cm-03__play svg { width: 18px; height: 18px; }
.cm .cm-03__play:hover { background: rgba(11, 24, 38, .85); }
.cm .cm-03__play:focus-visible { outline: 2px solid var(--cm-ice); outline-offset: 3px; }
.cm .cm-03__media:not(.has-clip) .cm-03__play, .cm .cm-03__media[data-state="playing"] .cm-03__play { opacity: 0; pointer-events: none; }
.cm .cm-03__src { position: absolute; z-index: 2; right: 16px; bottom: 14px; margin: 0; font-size: 11px; color: rgba(230, 240, 248, .6); pointer-events: none; }
.cm .cm-03__cap { position: absolute; z-index: 2; left: clamp(20px, 3vw, 40px); bottom: clamp(20px, 3vw, 40px); max-width: 520px; color: #fff; pointer-events: none; }
.cm .cm-03__cap-n { display: block; font-size: 13px; letter-spacing: .1em; color: var(--cm-ice); }
.cm .cm-03__cap-t { margin: 6px 0 0; font: 700 24px/1.2 var(--cm-display); color: #fff; }
.cm .cm-03__cap-p { margin: 8px 0 0; font-size: 15px; line-height: 1.5; color: rgba(230, 240, 248, .88); }

.cm .cm-03__under { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px; margin-top: 18px; }
.cm .cm-03__op { display: flex; align-items: center; gap: 10px; margin: 0; font: 500 15px/1.4 var(--cm-sans); color: var(--cm-text); }
.cm .cm-03__op svg { width: 22px; height: 22px; flex: none; color: var(--cm-ice-ink); }
.cm .cm-03__under .cm-note { margin: 0; }

@media (max-width: 900px) {
  .cm .cm-03__rail { display: flex; gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0 calc(-1 * var(--gut)) 16px; padding: 0 var(--gut); border-top: 0; }
  .cm .cm-03__rail::-webkit-scrollbar { display: none; }
  .cm .cm-03__tab { flex: 0 0 auto; min-height: 44px; padding: 8px 14px; border: 1px solid var(--cm-line); background: #fff; font-size: 14px; scroll-snap-align: start; }
  .cm .cm-03__tab[aria-selected="true"] { background: var(--cm-ice-soft); border-color: var(--cm-ice-ink); color: var(--cm-ice-ink); }
  .cm .cm-03__stage { margin: 0 calc(-1 * var(--gut)); }
  .cm .cm-03__media::after { background: linear-gradient(0deg, rgba(8, 14, 24, .45) 0%, transparent 40%); }
  .cm .cm-03__cap { position: static; max-width: none; padding: 16px var(--gut) 0; color: var(--cm-ink); }
  .cm .cm-03__cap-n { color: var(--cm-ice-ink); }
  .cm .cm-03__cap-t { font-size: 20px; color: var(--cm-ink); }
  .cm .cm-03__cap-p { color: var(--cm-text); }
  .cm .cm-03__under { padding: 0; }
}


.cm .cm-04 { overflow: hidden; }
.cm .cm-04__bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.cm .cm-04__bg img, .cm .cm-04__bg video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(.45) saturate(.9); }
.cm .cm-04__veil { position: absolute; inset: 0; background: rgba(11, 24, 38, .55); }
.cm .cm-04__veil::after { content: ""; position: absolute; inset: 0; background: url(/pub/media/spg-story/engine-cryomaster/assets/cm-noise.webp?v=1792567956) repeat; opacity: .12; mix-blend-mode: overlay; }

.cm .cm-04__rooms { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cm .cm-04__room { position: relative; aspect-ratio: 3 / 4; min-height: 420px; overflow: hidden; background: var(--cm-night-2); isolation: isolate; }
.cm .cm-04__ph { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.cm .cm-04__room:hover .cm-04__ph, .cm .cm-04__room.is-active .cm-04__ph { transform: scale(1.04); }
.cm .cm-04__room::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(0deg, rgba(8, 14, 24, .92) 0%, rgba(8, 14, 24, .6) 36%, rgba(8, 14, 24, .06) 68%, transparent); }
.cm .cm-04__bar { position: absolute; z-index: 2; left: 16px; top: 18px; bottom: 18px; width: 4px; background: rgba(230, 240, 248, .14); }
.cm .cm-04__bar i { position: absolute; left: 0; right: 0; bottom: 0; height: calc(var(--rc) * 100%); background: hsl(var(--rh) 90% 68%); box-shadow: 0 0 14px hsl(var(--rh) 90% 68% / .6); transition: box-shadow .4s; }
.cm .cm-04__room:hover .cm-04__bar i, .cm .cm-04__room.is-active .cm-04__bar i { box-shadow: 0 0 26px hsl(var(--rh) 90% 68%); }
.cm .cm-04__txt { position: absolute; z-index: 2; left: 36px; right: 20px; bottom: 22px; color: var(--cm-frost); }
.cm .cm-04__no { display: block; font-size: 12px; letter-spacing: .14em; color: rgba(230, 240, 248, .6); }
.cm .cm-04__t { display: block; margin-top: 6px; font-size: clamp(36px, 3.6vw, 56px); line-height: 1; color: #fff; }
.cm .cm-04__role { display: block; margin-top: 8px; font: 600 12px/1.3 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: hsl(var(--rh) 90% 74%); }
.cm .cm-04__p { margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: rgba(230, 240, 248, .84); max-width: 34ch; }
.cm .cm-04__win { display: flex; align-items: flex-start; gap: 8px; margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: rgba(230, 240, 248, .84); }
.cm .cm-04__win svg { width: 20px; height: 20px; flex: none; color: var(--cm-ice); }
.cm .cm-04__win span { margin-left: 4px; }
.cm .cm-04__cap { display: block; margin-top: 12px; font-size: 11px; color: rgba(230, 240, 248, .5); }
.cm .cm-04__room.is-longest .cm-04__role::after { content: " · найдовша"; color: var(--cm-ice); }


.cm .cm-04__dock { position: absolute; z-index: 3; left: 36px; right: 20px; top: 20px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; opacity: 0; transition: opacity .4s var(--ease); }
.cm .cm-04__room.is-active .cm-04__dock { opacity: 1; }
.cm .cm-04__timer { min-height: 1em; font-size: 24px; color: #fff; }
.cm .cm-04__dots, .cm .cm-04__track { display: flex; flex-wrap: wrap; gap: 8px; }
.cm .cm-04__dot { width: 14px; height: 14px; border-radius: 50%; background: var(--cm-ice); box-shadow: 0 0 12px rgba(88, 201, 255, .7); }


.cm .cm-04__group { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 18px 40px; align-items: start; margin-top: clamp(28px, 4vw, 44px); padding-top: 24px; border-top: 1px solid var(--cm-line-d); }
.cm .cm-04__ctl { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; }
.cm .cm-04__glabel { font: 600 15px/1.3 var(--cm-sans); color: var(--cm-frost); }
.cm .cm-04__track { grid-column: 1; min-height: 14px; transition: opacity .4s; }
.cm .cm-04.is-running .cm-04__track { opacity: .25; }
.cm .cm-04__out { grid-column: 2; grid-row: 1 / span 2; }
.cm .cm-04__o1, .cm .cm-04__o2 { margin: 0; font: 600 16px/1.4 var(--cm-sans); color: #fff; }
.cm .cm-04__o2 { margin-top: 6px; font-weight: 400; color: rgba(230, 240, 248, .84); }
.cm .cm-04__out .cm-note { margin: 6px 0 0; }
.cm .cm-04__link { display: inline-block; margin-top: 10px; font-size: 14px; color: var(--cm-ice); text-decoration: underline; text-underline-offset: 3px; }
.cm .cm-04__link:hover { color: #fff; }
.cm .cm-04__note { grid-column: 1 / -1; margin: 4px 0 0; }

.cm-is-reduced .cm-04__ph { transition: none; }

@media (max-width: 900px) {
  .cm .cm-04__rooms { grid-template-columns: 1fr; }
  .cm .cm-04__room { aspect-ratio: auto; height: 60vw; min-height: 250px; }
  .cm .cm-04__video { display: none; }
  .cm .cm-04__t { font-size: 36px; }
  .cm .cm-04__group { grid-template-columns: 1fr; }
  .cm .cm-04__out { grid-column: 1; grid-row: auto; }
}


.cm .cm-3d__head .cm-title { max-width: 22ch; }
.cm .cm-3d__modes { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
.cm .cm-3d__modes .cm-chip[hidden] { display: none; }
.cm .cm-3d__grid { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: start; }
.cm .cm-3d__main, .cm .cm-3d__side { min-width: 0; }


.cm .cm-3d__stage { position: relative; aspect-ratio: 16 / 10; overflow: hidden; touch-action: pan-y pinch-zoom; outline-offset: 4px; user-select: none; -webkit-user-select: none;
  background: radial-gradient(60% 80% at 50% 70%, #FFFFFF, #E4E3DE); border: 1px solid var(--cm-line, rgba(18, 27, 36, .12)); }
.cm .cm-3d__stage:focus-visible { outline: 2px solid var(--cm-ice-ink, #0B6FA8); }
.cm .cm-3d[data-mode="3d"] .cm-3d__stage { cursor: grab; }
.cm .cm-3d[data-mode="3d"] .cm-3d__stage.is-drag { cursor: grabbing; }
.cm .cm-3d__canvas { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; transition: opacity .9s; touch-action: none; }
.cm .cm-3d__stage.is-live .cm-3d__canvas { opacity: 1; }
.cm .cm-3d__tags { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }


.cm .cm-3d__poster { position: absolute; inset: 0; display: grid; place-items: center; transition: opacity .8s, visibility 0s; }
.cm .cm-3d__poster img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.cm .cm-3d[data-mode="3d"] .cm-3d__poster, .cm .cm-3d[data-mode="fallback"] .cm-3d__poster { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .8s, visibility 0s .8s; }
.cm .cm-3d__start { position: relative; z-index: 3; flex-direction: column; gap: 2px; min-height: 60px; padding: 10px 28px; }
.cm .cm-3d__start[hidden] { display: none; }
.cm .cm-3d__start small { font: 400 12px/1.2 var(--cm-sans, sans-serif); letter-spacing: .02em; text-transform: none; opacity: .8; }


.cm .cm-3d__hint { position: absolute; left: 14px; top: 14px; z-index: 3; margin: 0; display: flex; gap: 10px; align-items: center; padding: 9px 14px; background: rgba(255, 255, 255, .92); border: 1px solid var(--cm-line, rgba(18, 27, 36, .12));
  font: 600 11px/1.2 var(--cm-sans, sans-serif); letter-spacing: .14em; text-transform: uppercase; color: var(--cm-text, #2A3542); pointer-events: none; transition: opacity .5s; }
.cm .cm-3d__hint::before { content: ""; width: 18px; height: 1px; flex: none; background: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-3d__stage.has-moved .cm-3d__hint, .cm .cm-3d[data-mode="loading"] .cm-3d__hint, .cm .cm-3d[data-mode="idle"] .cm-3d__hint { opacity: 0; }
.cm .cm-3d__hint-fb { display: none; }
.cm .cm-3d[data-mode="fallback"] .cm-3d__hint-fb { display: inline; }
.cm .cm-3d[data-mode="fallback"] .cm-3d__hint-3d { display: none; }
.cm .cm-3d[data-mode="fallback"] .cm-3d__stage.is-plan .cm-3d__hint { opacity: 0; }


.cm .cm-3d__hots { position: absolute; inset: 0; pointer-events: none; z-index: 4; }
.cm .cm-3d__hots .cm-hot { position: absolute; left: 0; top: 0; width: 0; height: 0; margin: 0; padding: 0; border: 0; background: none; pointer-events: auto; cursor: pointer; color: inherit; font: inherit; transition: opacity .3s; }
.cm .cm-3d__hots .cm-hot.is-off { opacity: 0; pointer-events: none; }
.cm .cm-3d__hots .cm-hot i { position: absolute; left: -11px; top: -11px; width: 22px; height: 22px; border-radius: 50%; background: var(--cm-ice-ink, #0B6FA8); box-shadow: 0 0 0 3px rgba(255, 255, 255, .9), 0 4px 10px rgba(18, 27, 36, .25); transition: background-color .25s, transform .25s; }
.cm .cm-3d__hots .cm-hot i::after { content: ""; position: absolute; inset: 7px; border-radius: 50%; background: #fff; }
.cm .cm-3d__hots .cm-hot b { position: absolute; left: 16px; top: -16px; white-space: nowrap; padding: 7px 10px; background: rgba(255, 255, 255, .96); border: 1px solid var(--cm-line, rgba(18, 27, 36, .12)); color: var(--cm-ink, #121B24); font: 600 12px/1.2 var(--cm-sans, sans-serif); letter-spacing: .02em; opacity: 0; transform: translateX(-4px); transition: opacity .25s, transform .25s; pointer-events: none; }
.cm .cm-3d__hots .cm-hot.is-left b { left: auto; right: 16px; transform: translateX(4px); }
.cm .cm-3d__hots .cm-hot:hover b, .cm .cm-3d__hots .cm-hot:focus-visible b, .cm .cm-3d__hots .cm-hot[aria-pressed="true"] b { opacity: 1; transform: none; }
.cm .cm-3d__hots .cm-hot[aria-pressed="true"] i { background: var(--cm-ink, #121B24); transform: scale(1.15); }
.cm .cm-3d__hots .cm-hot[aria-pressed="true"] b { background: var(--cm-ink, #121B24); color: #fff; border-color: var(--cm-ink, #121B24); }
.cm .cm-3d__hots .cm-hot:focus-visible i { outline: 2px solid var(--cm-ice-ink, #0B6FA8); outline-offset: 3px; }
.cm .cm-3d__fb-facade .cm-3d__hots .cm-hot { left: var(--x); top: var(--y); }


.cm .cm-3d__tag { position: absolute; left: 0; top: 0; opacity: 0; transition: opacity .35s; white-space: nowrap; font: 600 11px/1 var(--cm-sans, sans-serif); letter-spacing: .1em; text-transform: uppercase; will-change: transform; pointer-events: none; }
.cm .cm-3d__tag.is-on { opacity: 1; }
.cm .cm-3d__tag--dim { padding: 6px 9px; background: #fff; border: 1px solid var(--cm-ink, #121B24); color: var(--cm-ink, #121B24); font: 500 12px/1 var(--cm-mono, monospace); font-variant-numeric: tabular-nums; letter-spacing: .02em; text-transform: none; }
.cm .cm-3d__tag--part { padding: 6px 9px; background: rgba(255, 255, 255, .96); border: 1px solid var(--cm-line, rgba(18, 27, 36, .12)); color: var(--cm-ink, #121B24); }
.cm .cm-3d__tag--note { padding: 6px 9px; background: var(--cm-ice-soft, #DDF3FF); color: var(--cm-ice-ink, #0B6FA8); border: 1px solid rgba(11, 111, 168, .35); text-transform: none; letter-spacing: .02em; font-weight: 500; font-size: 12px; }


.cm .cm-3d__fb { position: absolute; inset: 0; display: grid; place-items: center; }
.cm .cm-3d__fb[hidden] { display: none; }
.cm .cm-3d__fb-facade { position: relative; width: 88%; aspect-ratio: 1326 / 801; }
.cm .cm-3d__fb-facade img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 26px 30px rgba(18, 27, 36, .28)); }
.cm .cm-3d__fb-svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.cm .cm-3d__fb-svg .room { opacity: .18; }
.cm .cm-3d__fb-svg .dim { opacity: 0; transition: opacity .4s; }
.cm .cm-3d__stage.is-dims .cm-3d__fb-svg .dim { opacity: 1; }
.cm .cm-3d__fb-svg .dim line { stroke: var(--cm-ink, #121B24); stroke-width: 2; }
.cm .cm-3d__fb-svg .dim rect { fill: #fff; stroke: var(--cm-ink, #121B24); stroke-width: 1.5; }
.cm .cm-3d__fb-svg .dim text, .cm .cm-3d__fb-plan text { font: 500 22px var(--cm-mono, monospace); fill: var(--cm-ink, #121B24); text-anchor: middle; dominant-baseline: central; }
.cm .cm-3d__fb-plan { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; visibility: hidden; transition: opacity .4s; }
.cm .cm-3d__stage.is-plan .cm-3d__fb-plan { opacity: 1; visibility: visible; }
.cm .cm-3d__stage.is-plan .cm-3d__fb-facade { opacity: 0; visibility: hidden; }
.cm .cm-3d__fb-plan .shell { fill: var(--cm-stone-2, #BFC2C1); stroke: var(--cm-ink, #121B24); stroke-width: 2; }
.cm .cm-3d__fb-plan .part { stroke: var(--cm-ink, #121B24); stroke-width: 6; }
.cm .cm-3d__fb-plan .door { stroke: var(--cm-ice-ink, #0B6FA8); stroke-width: 4; }
.cm .cm-3d__fb-plan .win { stroke: var(--cm-ice-ink, #0B6FA8); stroke-width: 8; }
.cm .cm-3d__fb-plan .mach { fill: #D6D7D3; stroke: var(--cm-ink, #121B24); stroke-width: 2; }
.cm .cm-3d__fb-plan .wall { fill: none; stroke: var(--cm-ink, #121B24); stroke-width: 3; stroke-dasharray: 10 8; }
.cm .cm-3d__fb-plan .lbl { font: 600 18px var(--cm-sans, sans-serif); letter-spacing: .06em; text-transform: uppercase; fill: var(--cm-text, #2A3542); }
.cm .cm-3d__fb-plan .grid line { stroke: var(--cm-line-s, rgba(18, 27, 36, .07)); stroke-width: 1; }


.cm .cm-3d__cap { margin: 12px 0 0; text-transform: none; letter-spacing: 0; }


.cm .cm-3d__side { display: grid; gap: 18px; }
.cm .cm-3d__ctl { display: grid; gap: 8px; }
.cm .cm-3d__ctl .cm-seg { display: flex; }
.cm .cm-3d__ctl .cm-seg button { flex: 1 1 0; min-height: 48px; padding: 6px 10px; font-size: 11px; line-height: 1.25; letter-spacing: .06em; text-align: center; }
.cm .cm-3d__card { position: relative; }
.cm .cm-3d__card .cm-card__body { padding: 22px; }
.cm .cm-3d__card-eb { display: block; margin-bottom: 8px; }
.cm .cm-3d__card b { display: block; margin: 0 0 8px; }
.cm .cm-3d__card p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--cm-text, #2A3542); }
.cm .cm-3d__card p:empty { display: none; }
.cm .cm-3d__dims { display: grid; grid-template-columns: auto 1fr; gap: 8px 14px; margin: 14px 0 0; }
.cm .cm-3d__dims:empty { display: none; }
.cm .cm-3d__dims dt { font-size: 13px; color: var(--cm-muted, #6B7785); }
.cm .cm-3d__dims dd { margin: 0; font: 500 14px/1.3 var(--cm-mono, monospace); font-variant-numeric: tabular-nums; color: var(--cm-ink, #121B24); }
.cm .cm-3d__card-x { position: absolute; right: 6px; top: 6px; width: 44px; height: 44px; display: grid; place-items: center; color: var(--cm-muted, #6B7785); background: none; border: 0; cursor: pointer; }
.cm .cm-3d__card-x[hidden] { display: none; }
.cm .cm-3d__card-x:hover { color: var(--cm-ink, #121B24); }
.cm .cm-3d__card-x svg { width: 18px; height: 18px; }

@media (max-width: 900px) {
  .cm .cm-3d__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .cm .cm-3d__stage { aspect-ratio: 13 / 14; }
  .cm .cm-3d__modes { flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; margin: 0 calc(-1 * var(--gut, 16px)) 14px; padding: 0 var(--gut, 16px) 4px; }
  .cm .cm-3d__modes::-webkit-scrollbar { display: none; }
  .cm .cm-3d__modes .cm-chip { flex: 0 0 auto; scroll-snap-align: start; white-space: nowrap; }
  .cm .cm-3d__hint { font-size: 10.5px; padding: 8px 12px; max-width: calc(100% - 28px); white-space: normal; }
  .cm .cm-3d__hots .cm-hot b { display: none; }                          
  .cm .cm-3d__hots .cm-hot[aria-pressed="true"] b { display: block; }
  .cm .cm-3d__fb-facade { width: 96%; }
  .cm .cm-3d__side { gap: 14px; }
  .cm .cm-3d__ctl .cm-seg button { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .cm .cm-3d__hots .cm-hot i, .cm .cm-3d__hots .cm-hot b, .cm .cm-3d__tag, .cm .cm-3d__canvas { transition: none; }
}


.cm .cm-06__head { max-width: 820px; }
.cm .cm-06__by { margin: 14px 0 16px; font: 600 13px/1.4 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--cm-ice-ink); }
.cm .cm-06__grid { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: 24px clamp(24px, 3vw, 40px); align-items: start; }


.cm .cm-06__player { margin: 0; }
.cm .cm-06__screen { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--cm-night); border-radius: var(--r); box-shadow: var(--cm-shadow); }
.cm .cm-06__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; background: var(--cm-night); cursor: pointer; }
.cm .cm-06__play { position: absolute; z-index: 3; left: 24px; bottom: 24px; display: inline-flex; align-items: center; gap: 14px; min-height: 64px; padding: 0 24px 0 10px;
  border: 1px solid rgba(230, 240, 248, .55); background: rgba(11, 24, 38, .62); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); color: #fff;
  font: 600 13px/1 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; cursor: pointer; transition: background .25s, opacity .3s; }
.cm .cm-06__play i { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--cm-ice); color: var(--cm-night); transition: transform .3s var(--spring); }
.cm .cm-06__play svg { width: 20px; height: 20px; }
.cm .cm-06__play small { font-size: 12px; letter-spacing: .06em; color: rgba(230, 240, 248, .75); }
.cm .cm-06__play:hover { background: rgba(11, 24, 38, .85); }
.cm .cm-06__play:hover i { transform: scale(1.06); }
.cm .cm-06__play:focus-visible { outline: 2px solid var(--cm-ice); outline-offset: 3px; }
.cm .cm-06__screen:not([data-state="idle"]) .cm-06__play { opacity: 0; pointer-events: none; }
.cm .cm-06__cap { margin-top: 12px; }


.cm .cm-06__lab { display: block; margin-bottom: 10px; font: 600 11px/1.5 var(--cm-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--cm-muted); }
.cm .cm-06__chapters { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--cm-ink); }
.cm .cm-06__ch { display: grid; grid-template-columns: 48px minmax(0, 1fr) 16px; align-items: center; gap: 12px; width: 100%; min-height: 50px; padding: 8px 0; border: 0; border-bottom: 1px solid var(--cm-line);
  background: none; text-align: left; font: 600 15px/1.3 var(--cm-sans); color: var(--cm-text); cursor: pointer; transition: color .25s, background .25s; }
.cm .cm-06__ch .cm-num { font-size: 13px; color: var(--cm-muted); transition: color .25s; }
.cm .cm-06__ch svg { width: 14px; height: 14px; color: var(--cm-ice-ink); opacity: 0; transform: translateX(-4px); transition: opacity .25s, transform .25s; }
.cm .cm-06__ch:hover, .cm .cm-06__ch[aria-current="true"], .cm .cm-06__ch[aria-current="true"] .cm-num { color: var(--cm-ice-ink); }
.cm .cm-06__ch:hover svg, .cm .cm-06__ch[aria-current="true"] svg { opacity: 1; transform: none; }
.cm .cm-06__ch[aria-current="true"] { background: var(--cm-ice-soft); }
.cm .cm-06__ch:focus-visible { outline: 2px solid var(--cm-ice-ink); outline-offset: -2px; }
.cm .cm-06__note { margin-top: 14px; }


.cm .cm-06__more { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px clamp(32px, 5vw, 80px); align-items: center; margin-top: clamp(36px, 5vw, 56px); }
.cm .cm-06__more .cm-ask { margin-top: 32px; }
.cm .cm-06__facts { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.cm .cm-06__facts li { display: flex; gap: 12px; align-items: flex-start; font-size: 16px; line-height: 1.5; color: var(--cm-text); }
.cm .cm-06__facts svg { width: 22px; height: 22px; flex: none; margin-top: 1px; color: var(--cm-ice-ink); }
.cm .cm-06__photos { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.cm .cm-06__photo { margin: 0; }
.cm .cm-06__photo .cm-card__img { aspect-ratio: 4 / 5; overflow: hidden; background: var(--cm-stone); }
.cm .cm-06__photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.cm .cm-06__photo:hover img { transform: scale(1.05); }
.cm .cm-06__photo figcaption { padding: 12px 14px 14px; margin: 0; }

@media (max-width: 900px) {
  .cm .cm-06__grid, .cm .cm-06__more { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-06__play { left: 12px; bottom: 12px; min-height: 54px; gap: 10px; padding: 0 18px 0 8px; font-size: 12px; }
  .cm .cm-06__play i { width: 38px; height: 38px; }
  .cm .cm-06__ch { min-height: 46px; font-size: 14px; }
  .cm .cm-06__photos { gap: 12px; }
}


.cm .cm-07__keys { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 0; }
.cm .cm-07__keys .cm-chip { pointer-events: none; }
.cm .cm-07__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.cm .cm-07__card { display: flex; flex-direction: column; outline: 2px solid transparent; outline-offset: -1px; transition: outline-color .25s, border-color .25s; }
.cm .cm-07__card.is-on { outline-color: var(--cm-ice-ink); border-color: var(--cm-ice-ink); }
.cm .cm-07__img { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--cm-stone); }
.cm .cm-07__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.cm .cm-07__card:hover .cm-07__img img { transform: scale(1.05); }
.cm .cm-07__cap { position: absolute; left: 12px; bottom: 10px; margin: 0; padding: 4px 8px; font-size: 10px; color: rgba(230, 240, 248, .85); background: rgba(11, 24, 38, .6); }
.cm .cm-07__body { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.cm .cm-07__body h3 { margin: 0; }
.cm .cm-07__body > p:first-of-type { margin: 10px 0 0; font-size: 15px; line-height: 1.6; color: var(--fg-2); }
.cm .cm-07__route { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 14px 0 0; }
.cm .cm-07__route:empty { display: none; }
.cm .cm-07__st { display: inline-flex; align-items: center; gap: 7px; min-height: 28px; padding: 0 10px 0 8px; font: 600 12px/1 var(--cm-sans); letter-spacing: .04em; color: var(--cm-text); border: 1px solid var(--cm-line); background: #fff; }
.cm .cm-07__st::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--c); }
.cm .cm-07__st.is-here { border-color: var(--c); color: var(--cm-ink); }
.cm .cm-07__arr { font-size: 12px; color: var(--cm-muted); }
.cm .cm-07__pick { margin-top: auto; padding-top: 0; align-self: flex-start; }
.cm .cm-07__body .cm-07__pick { margin-top: 18px; }
.cm .cm-07__card.is-on .cm-07__pick { margin-top: auto; }
.cm .cm-07__pick[aria-pressed="true"] { background: var(--cm-ice-ink); border-color: var(--cm-ice-ink); color: #fff; }

@media (max-width: 900px) {
  .cm .cm-07__grid { grid-template-columns: 1fr; gap: 20px; }
  .cm .cm-07__pick { width: 100%; }
}


.cm .cm-08__lab { display: block; margin-bottom: 10px; font: 600 12px/1.3 var(--cm-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--mute, #6B7785); }


.cm .cm-08__rail { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.cm .cm-08__rail::before { content: ""; position: absolute; left: 6%; right: 6%; top: 110px; height: 1px; background: var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-08__slot { display: flex; flex-direction: column; border-top: 4px solid var(--c, var(--mute)); transition: transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s, opacity .4s; }
.cm .cm-08__slot:not(.is-in) { opacity: .78; }
.cm .cm-08__slot:not(.is-in) .cm-08__img { filter: saturate(.55); }
.cm .cm-08__slot.is-in { opacity: 1; }
.cm .cm-08__slot.is-new { animation: cm-08-land .5s var(--ease); }
@keyframes cm-08-land { 0% { transform: translateY(-10px); opacity: .4; } 100% { transform: none; opacity: 1; } }
.cm .cm-08__img { position: relative; aspect-ratio: 4 / 3; background: var(--cm-stone, #DCDBD6); transition: filter .4s; }
.cm .cm-08__img--pict { display: grid; place-items: center; color: var(--cm-text, #2A3542); }
.cm .cm-08__img--pict svg { width: 68%; height: auto; opacity: .7; }
.cm .cm-08__cap { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: 26px 14px 10px; color: rgba(230, 240, 248, .82); background: linear-gradient(0deg, rgba(11, 24, 38, .62), transparent); font-size: 10px; }
.cm .cm-08__img--pict .cm-08__cap { color: var(--mute, #6B7785); background: none; padding-top: 10px; }
.cm .cm-08__here { position: absolute; left: 14px; top: 14px; padding: 6px 10px; font: 600 11px/1 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--cm-night, #0B1826); background: var(--cm-ice, #58C9FF); }
.cm .cm-08__body { display: grid; gap: 8px; align-content: start; flex: 1; padding: 18px 20px 20px; }
.cm .cm-08__k { display: inline-flex; align-items: center; gap: 10px; font: 600 11px/1 var(--cm-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--c, var(--mute)); }
.cm .cm-08__k i { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid currentColor; font-size: 11px; font-style: normal; }
.cm .cm-08__name { font: 700 clamp(17px, 1.4vw, 20px)/1.2 var(--cm-display, var(--cm-sans)); letter-spacing: -.01em; color: var(--heading, #121B24); }
.cm .cm-08__line { font-size: 13.5px; line-height: 1.5; color: var(--fg-2, #2A3542); }
.cm .cm-08__meta { display: flex; justify-content: space-between; gap: 10px; margin-top: 4px; padding-top: 10px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); font-size: 13px; color: var(--mute, #6B7785); }
.cm .cm-08__meta [data-price] { color: var(--heading, #121B24); font-size: 15px; }
.cm .cm-08__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 12px; }
.cm .cm-08__foot:empty { display: none; }
.cm .cm-08__stage { display: inline-flex; border: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-08__stage button { min-height: 34px; padding: 0 10px; font: 600 10.5px/1 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--mute, #6B7785); transition: background .2s, color .2s; }
.cm .cm-08__stage button + button { border-left: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-08__stage button[aria-pressed="true"] { background: var(--cm-ink, #121B24); color: var(--cm-paper, #F7F5F1); }
.cm .cm-08__slot.is-stage2 .cm-08__name { color: var(--mute, #6B7785); }
.cm .cm-08__slot-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 12px; border: 1px solid var(--cm-ink, #121B24); color: var(--cm-ink, #121B24); font: 600 11px/1 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; transition: background .2s, color .2s, border-color .2s; }
.cm .cm-08__slot-btn:hover { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); color: #fff; }
.cm .cm-08__slot-btn svg { width: 14px; height: 14px; }
.cm .cm-08__slot-here { font: 600 11px/1 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--cm-ice-ink, #0B6FA8); }


.cm .cm-08__next { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); font-size: 14px; line-height: 1.55; color: var(--fg-2, #2A3542); }


.cm .cm-08__builder { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 24px; align-items: start; margin-top: clamp(36px, 5vw, 56px); }
.cm .cm-08__stations { display: grid; gap: 8px; }
.cm .cm-08__st { position: relative; display: grid; grid-template-columns: 10px minmax(0, 1fr) auto auto; align-items: center; gap: 14px; padding: 14px 16px; background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); transition: border-color .25s, box-shadow .3s; }
.cm .cm-08__st:hover { border-color: var(--c, var(--accent)); }
.cm .cm-08__st.is-in { box-shadow: inset 3px 0 0 var(--c, var(--accent)); }
.cm .cm-08__st.is-rec::after { content: attr(data-rec); position: absolute; right: 16px; top: -8px; padding: 3px 7px; font: 600 9px/1 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; color: #fff; background: var(--cm-warn, #D08A1B); }
.cm .cm-08__dot { width: 10px; height: 10px; background: var(--c, var(--mute)); }
.cm .cm-08__st-txt { display: grid; gap: 2px; min-width: 0; }
.cm .cm-08__st-slot { font: 600 10px/1 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--c, var(--mute)); }
.cm .cm-08__st b { font-size: 15px; font-weight: 600; line-height: 1.3; color: var(--heading, #121B24); }
.cm .cm-08__st p { font-size: 13px; line-height: 1.45; color: var(--mute, #6B7785); }
.cm .cm-08__st-meta { display: grid; gap: 2px; justify-items: end; font-size: 12.5px; color: var(--mute, #6B7785); white-space: nowrap; }
.cm .cm-08__st-meta span + span { color: var(--heading, #121B24); font-size: 14px; }
.cm .cm-08__add { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 118px; min-height: 40px; padding: 0 14px; border: 1px solid var(--cm-ink, #121B24); color: var(--cm-ink, #121B24); font: 600 11px/1 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; transition: background .2s, color .2s, border-color .2s; }
.cm .cm-08__add:hover { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); color: #fff; }
.cm .cm-08__add[aria-pressed="true"] { background: var(--cm-ink, #121B24); border-color: var(--cm-ink, #121B24); color: var(--cm-paper, #F7F5F1); }
.cm .cm-08__add[disabled] { background: var(--cm-ice-soft, #DDF3FF); border-color: var(--cm-ice-soft, #DDF3FF); color: var(--cm-ice-ink, #0B6FA8); cursor: default; }
.cm .cm-08__add svg { width: 14px; height: 14px; }

.cm .cm-08__out { padding: 24px 26px 26px; }
.cm .cm-08__out .cm-eyebrow { margin-bottom: 6px; }
.cm .cm-08__vals { display: grid; gap: 12px; }
.cm .cm-08__vals div { padding-top: 12px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-08__vals dt { font-size: 12px; letter-spacing: .04em; color: var(--mute, #6B7785); }
.cm .cm-08__vals dd { margin: 4px 0 0; font-size: 15px; line-height: 1.45; color: var(--heading, #121B24); }
.cm .cm-08__vals dd .cm-num { font-size: clamp(24px, 2.2vw, 30px); line-height: 1.1; color: var(--heading, #121B24); }
.cm .cm-08__vals dd small { display: block; font-size: 12.5px; line-height: 1.45; color: var(--mute, #6B7785); }
.cm .cm-08__vals dd ul { display: grid; gap: 6px; }
.cm .cm-08__vals dd li { display: flex; align-items: center; gap: 10px; }
.cm .cm-08__vals dd li i { flex: none; width: 10px; height: 10px; background: var(--c, var(--mute)); }
.cm .cm-08__vals dd li em { font-style: normal; font: 600 10px/1 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--mute, #6B7785); }
.cm .cm-08__out .cm-note { margin-top: 10px; }
.cm .cm-08__actions { display: grid; gap: 8px; margin-top: 18px; }
.cm .cm-08__actions .cm-btn { width: 100%; justify-content: flex-start; letter-spacing: .08em; }
.cm .cm-08__status { min-height: 18px; margin-top: 0; }


.cm-is-reduced .cm-08__slot.is-new { animation: none; }
@media (max-width: 1100px) {
  .cm .cm-08__rail { gap: 16px; }
  .cm .cm-08__body { padding: 16px 16px 18px; }
}
@media (max-width: 900px) {
  
  .cm .cm-08__rail { display: flex; grid-template-columns: none; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(var(--gut) * -1); padding: 2px var(--gut) 8px; scroll-padding-inline: var(--gut); touch-action: pan-x pan-y pinch-zoom; }
  .cm .cm-08__rail::-webkit-scrollbar { display: none; }
  .cm .cm-08__rail::before { display: none; }
  .cm .cm-08__slot { flex: 0 0 82vw; max-width: 360px; scroll-snap-align: start; }
  .cm .cm-08__next { margin-top: 20px; padding-top: 16px; }
  .cm .cm-08__builder { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .cm .cm-08__st { grid-template-columns: 10px minmax(0, 1fr); gap: 10px 14px; }
  .cm .cm-08__st-meta { grid-column: 2; justify-items: start; grid-auto-flow: column; gap: 14px; }
  .cm .cm-08__add { grid-column: 2; justify-self: start; }
  .cm .cm-08__out { padding: 18px 16px 20px; }
}


.cm .cm-09__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); grid-template-areas: "plan ctrl"; gap: 24px; align-items: start; }
.cm .cm-09__plan { grid-area: plan; }
.cm .cm-09__ctrl { grid-area: ctrl; padding: 24px 26px 26px; background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-09__lab { display: block; margin-bottom: 12px; font: 600 12px/1.3 var(--cm-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--mute, #6B7785); }
.cm .cm-09__lab--2 { margin-top: 26px; }


.cm .cm-09__board { position: relative; height: 580px; overflow: hidden; background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); box-shadow: var(--cm-shadow, 0 30px 60px -24px rgba(18, 27, 36, .28)); }
.cm .cm-09__room { position: absolute; overflow: visible; background-color: #fff;
  background-image: linear-gradient(var(--cm-line-s, rgba(18, 27, 36, .07)) 1px, transparent 1px), linear-gradient(90deg, var(--cm-line-s, rgba(18, 27, 36, .07)) 1px, transparent 1px), linear-gradient(var(--cm-line, rgba(18, 27, 36, .12)) 1px, transparent 1px), linear-gradient(90deg, var(--cm-line, rgba(18, 27, 36, .12)) 1px, transparent 1px);
  background-size: var(--g2, 20px) var(--g2, 20px), var(--g2, 20px) var(--g2, 20px), var(--g, 40px) var(--g, 40px), var(--g, 40px) var(--g, 40px);
  box-shadow: 0 0 0 3px var(--cm-ink, #121B24); }
.cm .cm-09__room.is-bad { box-shadow: 0 0 0 3px var(--cm-bad, #D84A3C); }
.cm .cm-09__zone { position: absolute; z-index: 1; display: grid; place-items: center; pointer-events: none; border: 1px dashed var(--cm-ice-ink, #0B6FA8); background: repeating-linear-gradient(45deg, rgba(11, 111, 168, .12) 0 1px, transparent 1px 7px); color: var(--cm-ice-ink, #0B6FA8); font: 500 10px/1.2 var(--cm-mono); letter-spacing: .04em; text-align: center; transition: left .25s var(--ease), top .25s var(--ease), width .25s var(--ease), height .25s var(--ease); }
.cm .cm-09__zone span { padding: 2px 4px; background: rgba(255, 255, 255, .88); }
.cm .cm-09__zone.is-tiny span { display: none; }
.cm .cm-09__zone.is-short { border-color: var(--cm-bad, #D84A3C); background: repeating-linear-gradient(45deg, rgba(216, 74, 60, .14) 0 1px, transparent 1px 7px); color: var(--cm-bad, #D84A3C); }

.cm .cm-09__obj { position: absolute; left: 0; top: 0; z-index: 3; cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; will-change: transform; transition: transform .22s var(--ease), width .3s var(--ease), height .3s var(--ease), box-shadow .25s; }
.cm .cm-09__obj.is-drag { cursor: grabbing; transition: box-shadow .2s; z-index: 6; }
.cm .cm-09__lbl { position: absolute; inset: 0; display: grid; place-content: center; gap: 2px; text-align: center; pointer-events: none; font: 500 11px/1.2 var(--cm-mono); letter-spacing: .04em; }
.cm .cm-09__obj.is-small .cm-09__lbl { display: none; }


.cm .cm-09__cam { background: var(--cm-stone-2, #BFC2C1); box-shadow: 0 0 0 1px var(--cm-ink, #121B24); color: var(--cm-ink, #121B24); }
.cm .cm-09__cam.is-drag { box-shadow: 0 0 0 1px var(--cm-ink, #121B24), 0 0 0 4px var(--cm-ice, #58C9FF); }
.cm .cm-09__cam.is-hit { box-shadow: 0 0 0 1px var(--cm-ink, #121B24), 0 0 0 3px var(--cm-bad, #D84A3C); }
.cm .cm-09__rooms { position: absolute; inset: 0; display: flex; }
.cm .cm-09__cam[data-rot="1"] .cm-09__rooms, .cm .cm-09__cam[data-rot="3"] .cm-09__rooms { flex-direction: column; }
.cm .cm-09__cam[data-rot="2"] .cm-09__rooms { flex-direction: row-reverse; }
.cm .cm-09__cam[data-rot="1"] .cm-09__rooms { flex-direction: column-reverse; }
.cm .cm-09__rooms i { position: relative; flex: 1; display: grid; place-items: center; }
.cm .cm-09__rooms i + i { border-left: 1px solid rgba(18, 27, 36, .35); }
.cm .cm-09__cam[data-rot="1"] .cm-09__rooms i + i, .cm .cm-09__cam[data-rot="3"] .cm-09__rooms i + i { border-left: 0; border-top: 1px solid rgba(18, 27, 36, .35); }
.cm .cm-09__rooms i::after { content: attr(data-t); font: 500 var(--ft, 11px)/1 var(--cm-mono); letter-spacing: .02em; color: var(--cm-ink, #121B24); white-space: nowrap; }
.cm .cm-09__cam[data-rot="1"] .cm-09__rooms i::after, .cm .cm-09__cam[data-rot="3"] .cm-09__rooms i::after { writing-mode: vertical-rl; transform: rotate(180deg); }
.cm .cm-09__rooms i:nth-child(1) { background: rgba(88, 201, 255, .18); }
.cm .cm-09__rooms i:nth-child(2) { background: rgba(88, 201, 255, .36); }
.cm .cm-09__rooms i:nth-child(3) { background: rgba(11, 111, 168, .42); }
.cm .cm-09__cam.is-small .cm-09__rooms i::after { display: none; }
.cm .cm-09__front { position: absolute; background: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-09__cam[data-front="s"] .cm-09__front { left: 0; right: 0; bottom: 0; height: var(--fe, 5px); }
.cm .cm-09__cam[data-front="n"] .cm-09__front { left: 0; right: 0; top: 0; height: var(--fe, 5px); }
.cm .cm-09__cam[data-front="w"] .cm-09__front { top: 0; bottom: 0; left: 0; width: var(--fe, 5px); }
.cm .cm-09__cam[data-front="e"] .cm-09__front { top: 0; bottom: 0; right: 0; width: var(--fe, 5px); }
.cm .cm-09__cam .cm-09__lbl { inset: auto 0 calc(var(--fe, 5px) + 2px) 0; font-size: 10px; color: var(--cm-ink, #121B24); opacity: .85; }
.cm .cm-09__cam[data-rot="1"] .cm-09__lbl, .cm .cm-09__cam[data-rot="3"] .cm-09__lbl, .cm .cm-09__cam.is-narrow .cm-09__lbl { display: none; }


.cm .cm-09__mach { background: var(--cm-text, #2A3542); box-shadow: 0 0 0 1px var(--cm-text, #2A3542); color: var(--cm-frost, #E6F0F8); }
.cm .cm-09__mach.is-drag { box-shadow: 0 0 0 1px var(--cm-text, #2A3542), 0 0 0 4px var(--cm-ice, #58C9FF); }
.cm .cm-09__mach.is-hit { box-shadow: 0 0 0 1px var(--cm-text, #2A3542), 0 0 0 3px var(--cm-bad, #D84A3C); }
.cm .cm-09__mach i { position: absolute; background: repeating-linear-gradient(90deg, rgba(230, 240, 248, .14) 0 1px, transparent 1px 5px); box-shadow: inset 0 0 0 1px rgba(230, 240, 248, .35); }
.cm .cm-09__mach .cm-09__cab { background: rgba(230, 240, 248, .14); }
.cm .cm-09__mach .cm-09__lbl { font-size: 10px; }


.cm .cm-09__cond { background: #fff; box-shadow: 0 0 0 1px var(--cm-text, #2A3542); color: var(--cm-text, #2A3542); background-image: repeating-linear-gradient(0deg, rgba(42, 53, 66, .25) 0 1px, transparent 1px 4px); }
.cm .cm-09__cond.is-drag { box-shadow: 0 0 0 1px var(--cm-text, #2A3542), 0 0 0 4px var(--cm-ice, #58C9FF); }
.cm .cm-09__cond .cm-09__lbl { font-size: 9px; writing-mode: vertical-rl; transform: rotate(180deg); background: rgba(255, 255, 255, .7); }
.cm .cm-09__cond[hidden] { display: none; }
.cm .cm-09__hole { position: absolute; z-index: 4; width: 14px; height: 14px; border: 2px solid var(--cm-ice-ink, #0B6FA8); border-radius: 50%; background: #fff; pointer-events: none; transition: top .22s var(--ease); }
.cm .cm-09__hole b { position: absolute; left: 50%; top: -18px; transform: translateX(-50%); font-size: 10px; line-height: 1; color: var(--cm-ice-ink, #0B6FA8); white-space: nowrap; background: #fff; padding: 1px 3px; }
.cm .cm-09__out { position: absolute; z-index: 2; pointer-events: none; font: 600 10px/1 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--mute, #6B7785); writing-mode: vertical-rl; }


.cm .cm-09__pipe { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.cm .cm-09__pipe line { stroke: var(--cm-ice-ink, #0B6FA8); stroke-width: 1.5; stroke-dasharray: 5 4; }
.cm .cm-09__pipe .cm-09__pipe-c { stroke: var(--mute, #6B7785); }
.cm .cm-09__pipe line.is-far { stroke: var(--cm-bad, #D84A3C); }
.cm .cm-09__tag { position: absolute; z-index: 4; transform: translate(-50%, -50%); padding: 2px 6px; white-space: nowrap; pointer-events: none; font-size: 11px; line-height: 1.3; color: var(--cm-ink, #121B24); background: #fff; border: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-09__tag.is-far { color: var(--cm-bad, #D84A3C); border-color: var(--cm-bad, #D84A3C); }
.cm .cm-09__dim { position: absolute; display: flex; align-items: center; gap: 8px; height: 12px; white-space: nowrap; pointer-events: none; font-size: 12px; line-height: 1; letter-spacing: .04em; color: var(--cm-ink, #121B24); }
.cm .cm-09__dim::before, .cm .cm-09__dim::after { content: ""; flex: 1; height: 1px; background: rgba(18, 27, 36, .4); }
.cm .cm-09__dim--d { transform-origin: 0 0; transform: rotate(-90deg); }
.cm .cm-09__scale { position: absolute; left: 14px; bottom: 12px; display: inline-flex; align-items: center; gap: 8px; font-size: 11px; line-height: 1; color: var(--cm-ink, #121B24); }
.cm .cm-09__scale i { display: block; width: var(--m, 40px); height: 8px; border: 1px solid currentColor; border-top: 0; }
.cm .cm-09__legend { padding: 10px 2px 0; font-size: 13px; color: var(--mute, #6B7785); }
.cm .cm-09__hint-touch { display: none; }
@media (pointer: coarse) { .cm .cm-09__hint-fine { display: none; } .cm .cm-09__hint-touch { display: inline; } }


.cm .cm-09__verdict { display: flex; align-items: center; gap: 12px; margin-top: 18px; padding: 12px 14px; background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); border-left: 3px solid var(--cm-ok, #1FA37A); font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--heading, #121B24); transition: border-color .25s; }
.cm .cm-09__verdict i { flex: none; display: grid; place-items: center; width: 28px; height: 28px; background: var(--cm-ok, #1FA37A); color: #fff; }
.cm .cm-09__verdict i svg { width: 18px; height: 18px; display: none; }
.cm .cm-09__verdict[data-v="0"] .cm-09__v-ok { display: block; }
.cm .cm-09__verdict[data-v="1"] { border-left-color: var(--cm-warn, #D08A1B); } .cm .cm-09__verdict[data-v="1"] i { background: var(--cm-warn, #D08A1B); } .cm .cm-09__verdict[data-v="1"] .cm-09__v-q { display: block; }
.cm .cm-09__verdict[data-v="2"] { border-left-color: var(--cm-bad, #D84A3C); } .cm .cm-09__verdict[data-v="2"] i { background: var(--cm-bad, #D84A3C); } .cm .cm-09__verdict[data-v="2"] .cm-09__v-bad { display: block; }
.cm .cm-09__stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 16px; margin: 16px 0 10px; }
.cm .cm-09__stats dt { font-size: 12px; line-height: 1.35; letter-spacing: .04em; color: var(--mute, #6B7785); }
.cm .cm-09__stats dd { margin: 4px 0 0; font-size: 18px; line-height: 1.2; color: var(--heading, #121B24); }
.cm .cm-09__stats dd.is-bad { color: var(--cm-bad, #D84A3C); }
.cm .cm-09__stats dd small { display: block; font: 400 12px/1.4 var(--cm-sans); color: var(--mute, #6B7785); }
.cm .cm-09__rule { font-size: 14px; line-height: 1.5; font-weight: 600; color: var(--heading, #121B24); }
.cm .cm-09__rule.is-low { color: var(--cm-bad, #D84A3C); }
.cm .cm-09__pipe-note { margin-top: 8px; }
.cm .cm-09__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-top: 16px; }
.cm .cm-09__saved { min-height: 18px; }


.cm .cm-09__fields { display: grid; }
.cm .cm-09__row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 0 12px; padding: 8px 0 6px; }
.cm .cm-09__row + .cm-09__row { border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-09__flab { font-size: 15px; font-weight: 500; color: var(--heading, #121B24); }
.cm .cm-09__row output { white-space: nowrap; }
.cm .cm-09__rng { grid-column: 1 / -1; margin-top: 2px; }
.cm .cm-09__opt { display: grid; gap: 8px; padding: 10px 0; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-09__opt:first-of-type { border-top: 0; }
.cm .cm-09__seg { display: flex; width: 100%; }
.cm .cm-09__seg button { flex: 1; display: grid; gap: 2px; padding: 8px 6px; text-align: center; letter-spacing: .04em; line-height: 1.15; }
.cm .cm-09__seg b { font: 600 13px/1.1 var(--cm-sans); letter-spacing: .08em; }
.cm .cm-09__seg small { font-size: 11px; line-height: 1.1; text-transform: none; letter-spacing: 0; opacity: .8; }
.cm .cm-09__ground { margin-top: 10px; }
.cm .cm-09__toggle-note { margin-top: 6px; }
.cm .cm-09__notes { display: grid; gap: 8px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }


.cm .cm-09__checks { margin-top: clamp(36px, 5vw, 56px); display: grid; grid-template-columns: minmax(280px, 1fr) minmax(0, 2fr); gap: clamp(20px, 3vw, 40px); align-items: start; }
.cm .cm-09__ringbox { position: sticky; top: 72px; display: grid; grid-template-columns: 120px 1fr; gap: 20px; align-items: start; }
.cm .cm-09__ring { position: relative; width: 120px; height: 120px; }
.cm .cm-09__ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.cm .cm-09__ring circle { fill: none; stroke-width: 7; }
.cm .cm-09__ring-bg { stroke: var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-09__ring-fg { stroke: var(--cm-ice-ink, #0B6FA8); stroke-dasharray: 326.7; stroke-dashoffset: calc(326.7 - 326.7 * var(--k, 0)); transition: stroke-dashoffset .6s var(--ease), stroke .4s; }
.cm .cm-09__ring.is-done .cm-09__ring-fg { stroke: var(--cm-ok, #1FA37A); }
.cm .cm-09__ring.is-done { animation: cm-09-done .8s var(--ease); }
@keyframes cm-09-done { 0% { transform: scale(1); } 45% { transform: scale(1.08); } 100% { transform: scale(1); } }
.cm .cm-09__ring b { position: absolute; inset: 0; display: grid; place-items: center; font-size: 26px; color: var(--heading, #121B24); }
.cm .cm-09__ringtext { display: grid; gap: 10px; min-width: 0; }
.cm .cm-09__ringtext .cm-btn { justify-self: start; max-width: 100%; height: auto; min-height: 52px; padding: 12px 18px; white-space: normal; text-align: left; line-height: 1.3; }
.cm .cm-09__ringtext .cm-btn--sm { min-height: 44px; }
.cm .cm-09__copied { min-height: 18px; }
.cm .cm-09__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.cm .cm-09__q { background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); transition: border-color .25s, box-shadow .25s; }
.cm .cm-09__list li.is-on .cm-09__q { border-color: var(--cm-ice-ink, #0B6FA8); box-shadow: inset 3px 0 0 var(--cm-ice-ink, #0B6FA8); }
.cm .cm-09__q summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; min-height: 64px; padding: 12px 16px; }
.cm .cm-09__q summary::-webkit-details-marker { display: none; }
.cm .cm-09__n { font-size: 12px; letter-spacing: .12em; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-09__q summary b { font-size: 16px; font-weight: 600; line-height: 1.3; color: var(--heading, #121B24); }
.cm .cm-09__plus { position: relative; width: 28px; height: 28px; border: 1px solid var(--ln, rgba(18, 27, 36, .12)); transition: background .25s, border-color .25s; }
.cm .cm-09__plus::before, .cm .cm-09__plus::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 1.5px; background: var(--cm-ink, #121B24); transform: translate(-50%, -50%); transition: transform .25s var(--ease), background .25s; }
.cm .cm-09__plus::after { transform: translate(-50%, -50%) rotate(90deg); }
.cm .cm-09__q[open] .cm-09__plus { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-09__q[open] .cm-09__plus::before, .cm .cm-09__q[open] .cm-09__plus::after { background: #fff; }
.cm .cm-09__q[open] .cm-09__plus::after { transform: translate(-50%, -50%) rotate(0); }
.cm .cm-09__qbody { padding: 0 16px 16px; }
.cm .cm-09__qbody p { font-size: 14px; line-height: 1.6; color: var(--fg-2, #2A3542); }
.cm .cm-09__done { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; margin-top: 8px; cursor: pointer; font: 600 12px/1 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--heading, #121B24); }
.cm .cm-09__done input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.cm .cm-09__done i { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid var(--cm-ink, #121B24); color: #fff; transition: background .25s, border-color .25s; }
.cm .cm-09__done i svg { width: 15px; height: 15px; opacity: 0; transform: scale(.6); transition: opacity .25s, transform .25s var(--ease); }
.cm .cm-09__done input:checked + i { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-09__done input:checked + i svg { opacity: 1; transform: scale(1); }
.cm .cm-09__done input:focus-visible + i { outline: 2px solid var(--cm-ice-ink, #0B6FA8); outline-offset: 3px; }


.cm-is-reduced .cm-09__obj, .cm-is-reduced .cm-09__zone, .cm-is-reduced .cm-09__ring-fg { transition: none; }
.cm-is-reduced .cm-09__ring.is-done { animation: none; }
@media (max-width: 1200px) { .cm .cm-09__board { height: auto; aspect-ratio: 5 / 4; } }
@media (max-width: 900px) {
  .cm .cm-09__grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "ctrl" "plan"; gap: 16px; }
  .cm .cm-09__ctrl { padding: 18px 16px 20px; }
  .cm .cm-09__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
  .cm .cm-09__row { grid-template-columns: 1fr; gap: 6px; padding: 8px 0; }
  .cm .cm-09__row + .cm-09__row { border-top: 0; }
  .cm .cm-09__row .cm-stepper { width: 100%; justify-content: space-between; }
  .cm .cm-09__row .cm-stepper output { flex: 1; }
  .cm .cm-09__rng { display: none; }
  .cm .cm-09__lab--2 { margin-top: 14px; }
  .cm .cm-09__board { aspect-ratio: 1 / 1; }
  .cm .cm-09__stats { grid-template-columns: 1fr 1fr; }
  .cm .cm-09__stats dd { font-size: 16px; }
  .cm .cm-09__checks { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-09__ringbox { position: static; grid-template-columns: 96px 1fr; gap: 16px; }
  .cm .cm-09__ring { width: 96px; height: 96px; } .cm .cm-09__ring b { font-size: 22px; }
  .cm .cm-09__list { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-09__ringtext .cm-btn { width: 100%; }
}
@media (max-width: 430px) {
  .cm .cm-09__seg button { padding: 8px 4px; }
  .cm .cm-09__seg small { font-size: 10px; }
  .cm .cm-09__hole b { display: none; }
  .cm .cm-09__actions .cm-btn { width: 100%; white-space: normal; line-height: 1.3; min-height: 48px; }
}


.cm .cm-10__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 24px; align-items: start; }
.cm .cm-10__lab { display: block; margin-bottom: 10px; font: 600 12px/1.3 var(--cm-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--mute, #6B7785); }
.cm .cm-10__form { padding: 24px 26px 26px; background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); }


.cm .cm-10__row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px 14px; padding: 10px 0; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-10__row:first-of-type { border-top: 0; }
.cm .cm-10__flab { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 500; line-height: 1.3; color: var(--heading, #121B24); }
.cm .cm-10__flab small { font-size: 12px; color: var(--mute, #6B7785); white-space: nowrap; }
.cm .cm-10__dot { flex: none; width: 10px; height: 10px; background: var(--c, var(--accent)); }
.cm .cm-10__in { width: 136px; text-align: right; }
.cm .cm-10__in.is-bad { border-color: var(--cm-bad, #D84A3C); }
.cm .cm-10__step output, .cm .cm-10__step input { min-width: 56px; }
.cm .cm-10__guests { grid-column: 1 / -1; display: flex; gap: 5px; height: 12px; }
.cm .cm-10__guests i { width: 12px; height: 12px; background: var(--ln, rgba(18, 27, 36, .12)); transition: background .2s; }
.cm .cm-10__guests i.is-on { background: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-10__example-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin-top: 14px; }
.cm .cm-10__form .cm-note { margin-top: 14px; }


.cm .cm-10__out { padding: 24px 28px 26px; }
.cm .cm-10__tape { position: relative; padding-bottom: 20px; }
.cm .cm-10__lane { display: flex; height: 48px; overflow: hidden; background: repeating-linear-gradient(90deg, rgba(18, 27, 36, .08) 0 1px, transparent 1px calc(100% / 12)); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-10__lane i { display: block; height: 100%; flex: none; background: var(--c, var(--mute)); box-shadow: inset -1px 0 0 rgba(255, 255, 255, .5); transform-origin: left; animation: cm-10-grow .5s var(--ease) both; animation-delay: var(--d, 0s); }
.cm .cm-10__lane i.is-rest { background: repeating-linear-gradient(135deg, rgba(18, 27, 36, .12) 0 1px, transparent 1px 7px); box-shadow: none; }
@keyframes cm-10-grow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.cm .cm-10__ticks { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; font: 500 10px/1 var(--cm-mono); letter-spacing: .06em; color: var(--mute, #6B7785); }
.cm .cm-10__ticks i { font-style: normal; }
.cm .cm-10__empty { margin-top: 10px; font-size: 14px; line-height: 1.5; color: var(--mute, #6B7785); }
.cm .cm-10__out.is-live .cm-10__empty { display: none; }
.cm .cm-10__out.is-live .cm-10__example-row [data-example] { display: none; }
.cm .cm-10__vals { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; margin-top: 20px; }
.cm .cm-10__vals div { padding-top: 12px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-10__longest { grid-column: 1 / -1; }
.cm .cm-10__vals dt { font-size: 12px; line-height: 1.35; letter-spacing: .04em; color: var(--mute, #6B7785); }
.cm .cm-10__vals dd { margin: 6px 0 0; line-height: 1.05; color: var(--heading, #121B24); transition: color .3s; }
.cm .cm-10__vals dd.cm-num--xl { font-size: clamp(34px, 3.6vw, 52px); }
.cm .cm-10__vals dd.cm-num--m { font-size: clamp(20px, 1.8vw, 24px); }
.cm .cm-10__vals dd small { display: block; margin-top: 6px; font: 400 12.5px/1.4 var(--cm-sans); color: var(--mute, #6B7785); }
.cm .cm-10__vals dd.is-bump { animation: cm-10-bump .4s var(--ease); }
@keyframes cm-10-bump { 0% { transform: translateY(4px); opacity: .4; } 100% { transform: none; opacity: 1; } }
.cm .cm-10__how { margin-top: 20px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-10__how summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 0; font: 600 12px/1 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-10__how summary::-webkit-details-marker { display: none; }
.cm .cm-10__how summary svg { width: 16px; height: 16px; transition: transform .25s var(--ease); }
.cm .cm-10__how[open] summary svg { transform: rotate(180deg); }
.cm .cm-10__formulas { display: grid; gap: 6px; padding-bottom: 10px; }
.cm .cm-10__formulas li { font-size: 13px; line-height: 1.5; color: var(--heading, #121B24); }
.cm .cm-10__actions { margin-top: 14px; }
.cm .cm-10__caption { margin-top: 12px; }


.cm-is-reduced .cm-10__lane i { animation: none; }
.cm-is-reduced .cm-10__vals dd.is-bump { animation: none; }
@media (max-width: 900px) {
  .cm .cm-10__grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .cm .cm-10__form, .cm .cm-10__out { padding: 18px 16px 20px; }
  .cm .cm-10__in { width: 124px; }
  .cm .cm-10__vals dd.cm-num--xl { font-size: 34px; }
}
@media (max-width: 430px) {
  .cm .cm-10__row { grid-template-columns: 1fr; gap: 6px; }
  .cm .cm-10__in { width: 100%; text-align: left; }
  .cm .cm-10__row--group { grid-template-columns: 1fr auto; }
  .cm .cm-10__vals { gap: 10px 14px; }
  .cm .cm-10__vals dd.cm-num--xl { font-size: 30px; }
  .cm .cm-10__actions .cm-btn { width: 100%; white-space: normal; line-height: 1.3; min-height: 48px; }
}


.cm .cm-11__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 56px); align-items: start; }
.cm .cm-11__card { position: sticky; top: 72px; padding: 0 0 24px; }
.cm .cm-11__ph { margin: 0; padding: 22px 22px 0; }
.cm .cm-11__ph img { width: 100%; height: auto; aspect-ratio: 1326 / 801; object-fit: contain; }
.cm .cm-11__ph .cm-cap { margin-top: 8px; }
.cm .cm-11__price { margin: 18px 22px 0; padding: 18px 0 16px; border-top: 1px solid var(--cm-ink, #121B24); border-bottom: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-11__plabel { display: block; font: 600 11px/1.5 var(--cm-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--mute, #6B7785); }
.cm .cm-11__price .cm-num--xl { display: block; margin-top: 6px; font-size: clamp(40px, 4.4vw, 60px); line-height: 1; color: var(--heading, #121B24); white-space: nowrap; }
.cm .cm-11__warr { display: flex; align-items: center; gap: 10px; margin-top: 14px; font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--heading, #121B24); }
.cm .cm-11__warr svg { flex: none; width: 22px; height: 22px; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-11__rows { margin: 0 22px; }
.cm .cm-11__rows div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-11__rows dt { font-size: 14px; color: var(--mute, #6B7785); }
.cm .cm-11__rows dd { margin: 0; font-size: 20px; color: var(--heading, #121B24); text-align: right; }
.cm .cm-11__rows .cm-11__setrow dd { flex: 1; text-align: left; }
.cm .cm-11__set { font: 600 15px/1.4 var(--cm-sans); color: var(--heading, #121B24); }
.cm .cm-11__setrow.is-empty .cm-11__set { font-weight: 400; color: var(--mute, #6B7785); }
.cm .cm-11__card > .cm-note { margin: 12px 22px 0; }
.cm .cm-11__total { margin: 14px 22px 0; padding: 12px 14px; border-left: 3px solid var(--cm-ice-ink, #0B6FA8); background: var(--cm-ice-soft, #DDF3FF); font-size: 13.5px; line-height: 1.6; color: var(--fg-2, #2A3542); }
.cm .cm-11__total strong { font-weight: 500; color: var(--heading, #121B24); white-space: nowrap; }
.cm .cm-11__total:empty { display: none; }


.cm .cm-11__list + .cm-11__list, .cm .cm-11__opts { margin-top: clamp(28px, 4vw, 44px); }
.cm .cm-11__list .cm-h3 { margin-bottom: 10px; }
.cm .cm-11__list .cm-note { margin-top: 12px; }
.cm .cm-11__inc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
.cm .cm-11__inc li { position: relative; display: flex; gap: 12px; padding: 11px 0 11px 26px; border-bottom: 1px solid var(--ln, rgba(18, 27, 36, .12)); font-size: 15px; line-height: 1.5; color: var(--heading, #121B24); }
.cm .cm-11__inc li::before { content: ""; position: absolute; left: 2px; top: 17px; width: 12px; height: 7px; border-left: 2px solid var(--cm-ice-ink, #0B6FA8); border-bottom: 2px solid var(--cm-ice-ink, #0B6FA8); transform: rotate(-45deg); }
.cm .cm-11__n { flex: none; min-width: 22px; font-size: 11px; letter-spacing: .08em; color: var(--cm-ice-ink, #0B6FA8); padding-top: 4px; }
.cm .cm-11__sep li { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 11px 0 11px 26px; position: relative; border-bottom: 1px solid var(--ln, rgba(18, 27, 36, .12)); font-size: 15px; line-height: 1.5; color: var(--heading, #121B24); }
.cm .cm-11__sep li::before { content: ""; position: absolute; left: 0; top: 21px; width: 12px; height: 2px; background: var(--cm-ink, #121B24); }
.cm .cm-11__sep li[data-kind="fixed"] span { font-weight: 600; }
.cm .cm-11__sep b { flex: 0 1 auto; min-width: 0; font-size: 13px; text-align: right; color: var(--mute, #6B7785); }
.cm .cm-11__sep li[data-kind="fixed"] b { font-size: 17px; color: var(--heading, #121B24); white-space: nowrap; }


.cm .cm-11__opts-head { display: grid; gap: 6px; margin-bottom: 14px; }
.cm .cm-11__opts-head .cm-note { max-width: 60ch; }
.cm .cm-11__groups { display: grid; gap: 8px; }
.cm .cm-11__grp { background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-11__grp summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 10px 18px; font-size: 16px; font-weight: 600; color: var(--heading, #121B24); }
.cm .cm-11__grp summary::-webkit-details-marker { display: none; }
.cm .cm-11__grp summary small { font: 500 12px/1 var(--cm-mono); letter-spacing: .06em; color: var(--mute, #6B7785); }
.cm .cm-11__grp summary svg { flex: none; width: 18px; height: 18px; color: var(--cm-ice-ink, #0B6FA8); transition: transform .25s var(--ease); }
.cm .cm-11__grp[open] summary svg { transform: rotate(180deg); }
.cm .cm-11__grp summary .cm-11__cnt { display: none; min-width: 22px; height: 22px; padding: 0 7px; place-items: center; font: 600 12px/1 var(--cm-mono); color: #fff; background: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-11__grp summary .cm-11__cnt.is-on { display: grid; }
.cm .cm-11__items { display: grid; padding: 0 18px 12px; }
.cm .cm-11__optw { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); }
.cm .cm-11__opt { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 48px; padding: 8px 0; text-align: left; color: var(--heading, #121B24); font-size: 14.5px; line-height: 1.35; transition: color .2s; }
.cm .cm-11__opt:hover span { color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-11__opt i { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid var(--cm-ink, #121B24); color: #fff; transition: background .2s, border-color .2s; }
.cm .cm-11__opt i svg { width: 14px; height: 14px; opacity: 0; transform: scale(.6); transition: opacity .2s, transform .2s var(--ease); }
.cm .cm-11__opt[aria-pressed="true"] i { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-11__opt[aria-pressed="true"] i svg { opacity: 1; transform: scale(1); }
.cm .cm-11__opt[aria-pressed="true"] span { font-weight: 600; }
.cm .cm-11__opt b { font: 500 14px/1 var(--cm-mono); white-space: nowrap; color: var(--heading, #121B24); }
.cm .cm-11__opt[aria-pressed="true"] b { color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-11__opt small { font: 500 12px/1.2 var(--cm-sans); color: var(--mute, #6B7785); white-space: nowrap; }
.cm .cm-11__row { display: flex; align-items: baseline; justify-content: space-between; gap: 8px 16px; min-height: 48px; padding: 12px 0; border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); font-size: 14.5px; line-height: 1.4; color: var(--heading, #121B24); }
.cm .cm-11__row small { flex: none; font: 500 12px/1.2 var(--cm-sans); color: var(--mute, #6B7785); white-space: nowrap; }
.cm .cm-11__qty { display: inline-flex; align-items: center; gap: 2px; }
.cm .cm-11__qty[hidden] { display: none; }
.cm .cm-11__qty button { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid var(--ln, rgba(18, 27, 36, .12)); color: var(--heading, #121B24); transition: background .2s, color .2s, border-color .2s; }
.cm .cm-11__qty button:hover { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); color: #fff; }
.cm .cm-11__qty button svg { width: 12px; height: 12px; }
.cm .cm-11__qty output { min-width: 44px; text-align: center; font: 600 13px/1 var(--cm-mono); color: var(--heading, #121B24); }


@media (max-width: 900px) {
  .cm .cm-11__grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .cm .cm-11__card { position: static; }
  .cm .cm-11__ph { padding: 16px 16px 0; }
  .cm .cm-11__price, .cm .cm-11__rows, .cm .cm-11__total, .cm .cm-11__card > .cm-note { margin-left: 16px; margin-right: 16px; }
  .cm .cm-11__price .cm-num--xl { font-size: 40px; }
  .cm .cm-11__inc { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-11__items { padding: 0 14px 10px; }
}
@media (max-width: 430px) {
  .cm .cm-11__row { flex-direction: column; gap: 4px; }
  .cm .cm-11__opt { grid-template-columns: 22px minmax(0, 1fr); }
  .cm .cm-11__opt b, .cm .cm-11__opt small { grid-column: 2; justify-self: start; }
  .cm .cm-11__optw { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-11__qty { justify-self: start; padding-bottom: 8px; }
}


.cm .cm-12__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.cm .cm-12__photo { margin: 0; }
.cm .cm-12__pic { aspect-ratio: 16 / 10; background: var(--cm-stone, #DCDBD6); box-shadow: var(--cm-shadow, 0 30px 60px -24px rgba(18, 27, 36, .28)); }
.cm .cm-12__pic img { width: 100%; height: 100%; object-fit: cover; }
.cm .cm-12__photo .cm-cap { margin-top: 12px; }


.cm .cm-12__layers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cm .cm-12__layer { display: grid; grid-template-columns: 28px minmax(0, 1fr); grid-template-areas: "ico n" "ico title" "ico text"; gap: 4px 14px; align-content: start; padding: 18px 18px 20px; }
.cm .cm-12__ico { grid-area: ico; width: 28px; height: 28px; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-12__ico svg { width: 28px; height: 28px; }
.cm .cm-12__n { grid-area: n; font-size: 11px; letter-spacing: .12em; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-12__layer .cm-h3 { grid-area: title; font-size: 17px; }
.cm .cm-12__layer p { grid-area: text; margin-top: 4px; font-size: 13.5px; line-height: 1.55; color: var(--fg-2, #2A3542); }


.cm .cm-12__service { margin-top: clamp(40px, 6vw, 72px); }
.cm .cm-12__service > .cm-h3 { margin-bottom: 24px; }
.cm .cm-12__chain { position: relative; padding: 10px 0 6px; }
.cm .cm-12__chain::before { content: ""; position: absolute; left: 8%; right: 8%; top: 23px; height: 1px; background: var(--cm-ink, #121B24); transform: scaleX(0); transform-origin: left; transition: transform 1.4s var(--ease); }
.cm .cm-12__chain.is-in::before { transform: scaleX(1); }
.cm .cm-12__nodes { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.cm .cm-12__nodes li { display: grid; justify-items: center; gap: 12px; text-align: center; opacity: 0; transform: translateY(8px); transition: opacity .5s var(--ease), transform .5s var(--ease); transition-delay: calc(.2s + var(--i, 0) * .14s); }
.cm .cm-12__chain.is-in .cm-12__nodes li { opacity: 1; transform: none; }
.cm .cm-12__nodes i { width: 26px; height: 26px; border: 1px solid var(--cm-ink, #121B24); background: var(--card, #fff); box-shadow: 0 0 0 6px var(--cm-paper-2, #EEEBE5); }
.cm .cm-12__nodes li.is-sg i { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-12__nodes li.is-you i { background: var(--cm-ink, #121B24); }
.cm .cm-12__nodes span { font-size: 13.5px; line-height: 1.4; font-weight: 500; color: var(--heading, #121B24); }
.cm .cm-12__nodes li.is-sg span { color: var(--cm-ice-ink, #0B6FA8); font-weight: 600; }
.cm .cm-12__sg { display: flex; align-items: flex-start; gap: 12px; max-width: 76ch; margin-top: 22px; padding: 14px 16px; background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); border-left: 3px solid var(--cm-ice-ink, #0B6FA8); font-size: 15px; line-height: 1.55; font-weight: 500; color: var(--heading, #121B24); }
.cm .cm-12__sg svg { flex: none; width: 22px; height: 22px; margin-top: 1px; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-12__cool { margin-top: 12px; max-width: 76ch; font-size: 14px; line-height: 1.55; color: var(--fg-2, #2A3542); }
.cm .cm-12__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 24px; }
.cm .cm-12__card { display: grid; align-content: start; gap: 10px; padding: 22px 22px 24px; }
.cm .cm-12__lab { font: 600 12px/1.3 var(--cm-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--mute, #6B7785); }
.cm .cm-12__card p { font-size: 14px; line-height: 1.55; color: var(--fg-2, #2A3542); }
.cm .cm-12__warr .cm-num--xl { font-size: clamp(36px, 3.6vw, 52px); line-height: 1; color: var(--heading, #121B24); }
.cm .cm-12__contracts { display: flex; flex-wrap: wrap; gap: 8px; }
.cm .cm-12__card .cm-12__ico { grid-area: auto; width: 28px; height: 28px; }


.cm-is-reduced .cm-12__chain::before { transform: scaleX(1); transition: none; }
.cm-is-reduced .cm-12__nodes li { opacity: 1; transform: none; transition: none; }
@media (max-width: 1100px) {
  .cm .cm-12__layers { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 900px) {
  .cm .cm-12__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .cm .cm-12__layers { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .cm .cm-12__layer { grid-template-columns: minmax(0, 1fr); grid-template-areas: "ico" "n" "title" "text"; padding: 16px 14px 18px; }
  .cm .cm-12__chain::before { left: 12px; right: auto; top: 10px; bottom: 10px; width: 1px; height: auto; transform: scaleY(0); transform-origin: top; }
  .cm .cm-12__chain.is-in::before { transform: scaleY(1); }
  .cm .cm-12__nodes { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .cm .cm-12__nodes li { grid-template-columns: 26px minmax(0, 1fr); justify-items: start; align-items: center; text-align: left; gap: 14px; }
  .cm .cm-12__cards { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 480px) {
  .cm .cm-12__layers { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-12__layer { grid-template-columns: 28px minmax(0, 1fr); grid-template-areas: "ico n" "ico title" "ico text"; }
}


.cm .cm-13__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 64px); align-items: center; }
.cm .cm-13__chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.cm .cm-13__chip { min-height: 44px; padding: 8px 16px; font-size: 14px; cursor: pointer; }
.cm .cm-13__chip[aria-pressed="true"] { background: var(--cm-wood, #8C5A36); border-color: var(--cm-wood, #8C5A36); color: #fff; }
.cm .cm-13__chip[data-heat="none"][aria-pressed="true"] { background: var(--cm-ice-ink, #0B6FA8); border-color: var(--cm-ice-ink, #0B6FA8); }


.cm .cm-13__scheme { position: relative; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto auto auto;
  grid-template-areas: "machine condenser ." "machine exchanger pool" "machine exchanger hot"; gap: 24px clamp(18px, 2.4vw, 32px); padding: clamp(16px, 2vw, 24px);
  background: var(--card, #fff); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); box-shadow: var(--cm-shadow, 0 30px 60px -24px rgba(18, 27, 36, .28)); }
.cm .cm-13__lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; z-index: 0; }
.cm .cm-13__seg { fill: none; stroke: var(--cm-stone-2, #BFC2C1); stroke-width: 2; stroke-linecap: round; transition: stroke .5s var(--ease), opacity .5s; }
.cm .cm-13__seg.is-on { stroke: var(--cm-wood-l, #B98A62); }
.cm .cm-13__seg.is-on[data-seg="mc"] { stroke: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-13__flow { fill: none; stroke: var(--cm-wood-d, #5A3A22); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 5 19; opacity: 0; transition: opacity .5s; }
.cm .cm-13__flow[data-flow="mc"] { stroke: var(--cm-ice, #58C9FF); }
.cm .cm-13__flow.is-on { opacity: .9; animation: cm-13-flow 1.5s linear infinite; }
@keyframes cm-13-flow { to { stroke-dashoffset: -48; } }

.cm .cm-13__node { position: relative; z-index: 1; display: grid; gap: 6px; align-content: center; justify-items: start; min-height: 96px; padding: 14px;
  background: var(--cm-paper, #F7F5F1); border: 1px solid var(--ln, rgba(18, 27, 36, .12)); color: var(--heading, #121B24); transition: border-color .45s, box-shadow .45s, opacity .45s, transform .45s var(--ease); }
.cm .cm-13__node svg { width: 28px; height: 28px; color: var(--mute, #6B7785); transition: color .45s; }
.cm .cm-13__node--machine { grid-area: machine; align-self: stretch; border-color: var(--cm-ice-ink, #0B6FA8); background: var(--cm-ice-soft, #DDF3FF); }
.cm .cm-13__node--machine svg { color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-13__node--condenser { grid-area: condenser; }
.cm .cm-13__node--exchanger { grid-area: exchanger; align-self: stretch; }
.cm .cm-13__node--pool { grid-area: pool; }
.cm .cm-13__node--hot { grid-area: hot; }
.cm .cm-13__label { font: 600 14px/1.3 var(--cm-sans); color: var(--heading, #121B24); overflow-wrap: anywhere; }
.cm .cm-13__sub { font: 600 10.5px/1.3 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--mute, #6B7785); }
.cm .cm-13__node.is-on { border-color: var(--cm-wood, #8C5A36); box-shadow: 0 18px 40px -24px rgba(140, 90, 54, .6); transform: translateY(-2px); }
.cm .cm-13__node.is-on svg { color: var(--cm-wood, #8C5A36); }
.cm .cm-13__node--condenser.is-on { border-color: var(--cm-ice-ink, #0B6FA8); box-shadow: 0 18px 40px -24px rgba(11, 111, 168, .6); }
.cm .cm-13__node--condenser.is-on svg { color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-13__node.is-dim { opacity: .45; }


.cm .cm-13__side .cm-title { max-width: 18ch; }
.cm .cm-13__by { margin-top: 22px; padding: 16px 18px; border-left: 3px solid var(--cm-wood, #8C5A36); background: var(--card, #fff); border-top: 1px solid var(--ln, rgba(18, 27, 36, .12)); border-right: 1px solid var(--ln, rgba(18, 27, 36, .12)); border-bottom: 1px solid var(--ln, rgba(18, 27, 36, .12)); font-size: 16px; line-height: 1.6; color: var(--heading, #121B24); min-height: 5.6em; transition: border-left-color .4s; }
.cm .cm-13[data-heat="none"] .cm-13__by { border-left-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-13__intro { margin-top: 20px; font-size: 15px; line-height: 1.7; color: var(--fg-2, #2A3542); }
.cm .cm-13__link { padding: 12px 2px; margin: -12px -2px; color: var(--cm-ice-ink, #0B6FA8); text-decoration: underline; text-decoration-color: rgba(11, 111, 168, .4); text-underline-offset: 3px; transition: text-decoration-color .25s; }
.cm .cm-13__link:hover { text-decoration-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-13__note { margin-top: 14px; }

@media (max-width: 1100px) {
  
  .cm .cm-13__scheme { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-areas: "machine machine" "exchanger condenser" "pool hot"; gap: 36px 18px; }
  .cm .cm-13__node { min-height: 84px; padding: 14px; }
  .cm .cm-13__node--machine, .cm .cm-13__node--exchanger { align-self: auto; }
  .cm .cm-13__node--machine { grid-template-columns: 28px minmax(0, 1fr); grid-template-areas: "ico label" "ico sub"; column-gap: 12px; row-gap: 2px; }
  .cm .cm-13__node--machine svg { grid-area: ico; }
  .cm .cm-13__node--machine .cm-13__label { grid-area: label; }
  .cm .cm-13__node--machine .cm-13__sub { grid-area: sub; }
}
@media (max-width: 900px) {
  .cm .cm-13__grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .cm .cm-13__left { order: 2; }
  .cm .cm-13__side { order: 1; }
  .cm .cm-13__by { min-height: 0; }
}
@media (max-width: 430px) {
  .cm .cm-13__scheme { padding: 14px; gap: 30px 12px; }
  .cm .cm-13__node { padding: 12px; min-height: 76px; }
  .cm .cm-13__label { font-size: 14px; }
  .cm .cm-13__chip { flex: 1 1 auto; justify-content: center; }
}
.cm-is-reduced .cm-13__flow.is-on { animation: none; stroke-dasharray: none; opacity: .35; }
@media (prefers-reduced-motion: reduce) {
  .cm .cm-13__flow.is-on { animation: none; stroke-dasharray: none; opacity: .35; }
}


.cm .cm-14__seg { display: none; }
.cm .cm-14__lanes { border-top: 2px solid var(--cm-ink); }
.cm .cm-14__hd, .cm .cm-14__row { display: grid; grid-template-columns: minmax(200px, 1.1fr) repeat(3, minmax(0, 1fr)); column-gap: clamp(16px, 2.4vw, 32px); }
.cm .cm-14__hd { border-bottom: 1px solid var(--ln); }
.cm .cm-14__hd > span { display: block; padding: 16px 0 14px; }
.cm .cm-14__row { border-bottom: 1px solid var(--ln); }
.cm .cm-14__step { display: flex; gap: 14px; align-items: baseline; padding: 24px 0; }
.cm .cm-14__n { font-size: 15px; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-14__step .cm-h3 { font-size: clamp(17px, 1.4vw, 20px); }
.cm .cm-14__cell { padding: 24px 0; font-size: 15px; line-height: 1.55; color: var(--fg-2); }
.cm .cm-14__cell--sg, .cm .cm-14__hd-sg { padding-left: 18px; padding-right: 18px; background: var(--cm-ice-soft, #DDF3FF); color: var(--fg); }
.cm .cm-14__hd-sg { color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-14__terms { margin-top: 18px; }

@media (max-width: 900px) {
  .cm .cm-14__seg { display: inline-flex; margin-bottom: 20px; max-width: 100%; }
  .cm .cm-14__seg button { flex: 1 1 0; padding: 0 8px; }
  .cm .cm-14__hd { display: none; }
  .cm .cm-14__row { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-14__step { padding: 18px 0 6px; }
  .cm .cm-14__cell { display: none; padding: 0 0 18px; }
  .cm .cm-14__cell--sg { padding-left: 0; padding-right: 0; background: none; }
  .cm .cm-14__lanes[data-lane="0"] .cm-14__cell[data-lane="0"], .cm .cm-14__lanes[data-lane="1"] .cm-14__cell[data-lane="1"], .cm .cm-14__lanes[data-lane="2"] .cm-14__cell[data-lane="2"] { display: block; }
}


.cm .cm-15__cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 2vw, 24px); }
.cm .cm-15__col { position: relative; display: flex; flex-direction: column; padding: 22px 22px 24px; background: var(--cm-white); border: 1px solid var(--ln); border-radius: var(--r); transition: box-shadow .5s var(--ease), border-color .3s; }
.cm .cm-15__col:hover { box-shadow: var(--cm-shadow, 0 30px 60px -24px rgba(18, 27, 36, .28)); }
.cm .cm-15__col.is-here { border-color: var(--cm-ice-ink, #0B6FA8); box-shadow: inset 0 0 0 1px var(--cm-ice-ink, #0B6FA8); }
.cm .cm-15__col.is-rec { border-color: var(--cm-ok, #1FA37A); box-shadow: inset 0 0 0 1px var(--cm-ok, #1FA37A); }
.cm .cm-15__tag { position: absolute; top: 14px; right: 14px; padding: 6px 10px; font: 600 10.5px/1 var(--cm-sans); letter-spacing: .14em; text-transform: uppercase; border-radius: var(--r); }
.cm .cm-15__tag--here { background: var(--cm-ice-ink, #0B6FA8); color: #fff; }
.cm .cm-15__tag--rec { background: var(--cm-ok, #1FA37A); color: #fff; opacity: 0; transform: translateY(-6px); transition: opacity .35s, transform .35s var(--ease); }
.cm .cm-15__col.is-rec .cm-15__tag--rec { opacity: 1; transform: none; }
.cm .cm-15__col.is-rec .cm-15__tag--here { top: 44px; }
.cm .cm-15__fig { height: clamp(150px, 15vw, 200px); margin: 10px 0 18px; }
.cm .cm-15__svg { width: 100%; height: 100%; overflow: visible; }

.cm .cm-15__f-body { fill: var(--cm-stone-2, #BFC2C1); stroke: rgba(18, 27, 36, .35); stroke-width: 1; }
.cm .cm-15__f-cap { fill: #A6A9A8; }
.cm .cm-15__f-seam { stroke: rgba(18, 27, 36, .18); stroke-width: 1; }
.cm .cm-15__f-part { stroke: rgba(18, 27, 36, .35); stroke-width: 1; stroke-dasharray: 3 4; }
.cm .cm-15__f-glass { fill: var(--cm-ice-soft, #DDF3FF); stroke: var(--cm-ice-ink, #0B6FA8); stroke-width: 1; }
.cm .cm-15__f-glow { fill: var(--cm-ice, #58C9FF); opacity: .38; }
.cm .cm-15__f-rail { stroke: var(--cm-ink, #121B24); stroke-width: 2; stroke-linecap: round; }
.cm .cm-15__f-panel { fill: var(--cm-ink, #121B24); }
.cm .cm-15__f-screen { fill: var(--cm-ice, #58C9FF); }
.cm .cm-15__f-door { fill: var(--cm-stone, #DCDBD6); stroke: rgba(18, 27, 36, .45); stroke-width: 1; }
.cm .cm-15__f-floor { stroke: var(--cm-ink, #121B24); stroke-width: 1.2; }
.cm .cm-15__f-shade { fill: rgba(18, 27, 36, .08); }
.cm .cm-15__f-temp { font: 500 12px var(--cm-mono); fill: var(--cm-text); letter-spacing: -.02em; }
.cm .cm-15__name { font-size: clamp(20px, 1.8vw, 24px); white-space: nowrap; }
.cm .cm-15__for { margin-top: 6px; font-size: 14.5px; line-height: 1.5; color: var(--fg-2); min-height: 2.9em; }
.cm .cm-15__price { display: grid; gap: 4px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--ln); }
.cm .cm-15__price b { color: var(--heading); white-space: nowrap; }
.cm .cm-15__price span { font-size: 13px; color: var(--mute); }
.cm .cm-15__cap { margin-top: 14px; }


.cm .cm-15__tblwrap { margin-top: clamp(36px, 5vw, 56px); }
.cm .cm-15__table th[scope="row"] { font: 400 14.5px/1.45 var(--cm-sans); letter-spacing: 0; text-transform: none; color: var(--mute); padding: 14px 12px; border-bottom: 1px solid var(--ln); vertical-align: top; }
.cm .cm-15__table thead th { white-space: nowrap; }
.cm .cm-15__table thead th small { display: inline-block; margin-left: 8px; padding: 3px 6px; font: 600 9.5px/1 var(--cm-sans); letter-spacing: .12em; background: var(--cm-ice-ink, #0B6FA8); color: #fff; border-radius: var(--r); vertical-align: middle; }
.cm .cm-15__table td { font-size: 15px; line-height: 1.45; }
.cm .cm-15__table .is-here { background: var(--cm-ice-soft, #DDF3FF); }
.cm .cm-15__table thead th.is-here { color: var(--cm-ice-ink, #0B6FA8); border-bottom-color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-15__table td.is-same { color: var(--mute); }
.cm .cm-15__lux { margin-top: 14px; font-size: 14.5px; color: var(--fg-2); }


.cm .cm-15__row2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 3.5vw, 48px); margin-top: clamp(36px, 5vw, 56px); align-items: start; }
.cm .cm-15__quiz .cm-card__body { padding: 26px 26px 28px; }
.cm .cm-15__quiz .cm-eyebrow { display: block; margin-bottom: 14px; }
.cm .cm-15__q { margin-bottom: 14px; }
.cm .cm-15__opts { display: grid; gap: 8px; }
.cm .cm-15__opt { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 12px 16px; text-align: left; font: 500 15px/1.3 var(--cm-sans); color: var(--heading); background: var(--cm-paper); border: 1px solid var(--ln); border-radius: var(--r); transition: border-color .2s, background .2s; }
.cm .cm-15__opt::after { content: ""; flex: none; width: 10px; height: 10px; border-right: 1.6px solid var(--cm-ice-ink, #0B6FA8); border-bottom: 1.6px solid var(--cm-ice-ink, #0B6FA8); transform: rotate(-45deg); opacity: .6; transition: transform .2s var(--ease), opacity .2s; }
.cm .cm-15__opt:hover { border-color: var(--cm-ice-ink, #0B6FA8); background: var(--cm-white); }
.cm .cm-15__opt:hover::after { transform: translateX(3px) rotate(-45deg); opacity: 1; }
.cm .cm-15__link { display: inline-flex; align-items: center; min-height: 44px; font: 600 12px/1.3 var(--cm-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-15__link:hover { text-decoration: underline; text-underline-offset: 3px; }
.cm .cm-15__step[data-q="2"] .cm-15__link { margin-top: 10px; }
.cm .cm-15__res p { margin-top: 8px; font-size: 15px; line-height: 1.6; color: var(--fg-2); }
.cm .cm-15__rbtns { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-top: 18px; }
.cm .cm-15__worth .cm-eyebrow { display: block; margin-bottom: 12px; }
.cm .cm-15__worth p { font-size: clamp(16px, 1.3vw, 18px); line-height: 1.6; color: var(--fg); }

@media (max-width: 900px) {
  .cm .cm-15__cols { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-15__fig { height: 200px; }
  .cm .cm-15__for { min-height: 0; }
  .cm .cm-15__table, .cm .cm-15__table tbody, .cm .cm-15__table tr { display: block; }
  .cm .cm-15__table thead { display: none; }
  .cm .cm-15__table tr { padding: 14px 0; border-bottom: 1px solid var(--ln); }
  .cm .cm-15__table th[scope="row"] { display: block; padding: 0 0 8px; border: 0; font-weight: 600; color: var(--heading); }
  .cm .cm-15__table td { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 12px; padding: 5px 0; border: 0; }
  .cm .cm-15__table td::before { content: attr(data-l); font: 600 11px/1.6 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--mute); }
  .cm .cm-15__table td.is-here { background: none; }
  .cm .cm-15__table td.is-here::before { color: var(--cm-ice-ink, #0B6FA8); }
  .cm .cm-15__row2 { grid-template-columns: minmax(0, 1fr); }
}


.cm .cm-16 { padding-bottom: calc(clamp(72px, 9vw, 128px) + 12px); }
.cm .cm-16__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 4.5vw, 64px); align-items: stretch; }
.cm .cm-16__photo { display: grid; grid-template-rows: minmax(0, 1fr) auto; margin: 0; }
.cm .cm-16__big { height: 100%; min-height: 460px; overflow: hidden; background: var(--cm-stone-2, #BFC2C1); }
.cm .cm-16__big img { width: 100%; height: 100%; object-fit: cover; }
.cm .cm-16__text { min-width: 0; }
.cm .cm-16__head { margin-bottom: clamp(24px, 3vw, 36px); }
.cm .cm-16__cards { display: grid; gap: 12px; }
.cm .cm-16__card { display: grid; background: var(--cm-white); }
.cm .cm-16__card--pic { grid-template-columns: 168px minmax(0, 1fr); }
.cm .cm-16__thumb { aspect-ratio: auto; height: 100%; min-height: 100%; }
.cm .cm-16__card .cm-card__body { padding: 20px 22px 22px; }
.cm .cm-16__n { display: block; margin-bottom: 8px; font-size: 12px; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-16__card .cm-h3 { font-size: clamp(17px, 1.4vw, 20px); }
.cm .cm-16__card p { margin-top: 8px; font-size: 14.5px; line-height: 1.55; color: var(--fg-2); }
.cm .cm-16__card .cm-cap { display: block; margin-top: 10px; }
.cm .cm-16__line { margin-top: 22px; font-size: 14.5px; line-height: 1.6; color: var(--fg-2); }
.cm .cm-16__strip { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; }

@media (max-width: 900px) {
  .cm .cm-16__grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .cm .cm-16__big { height: auto; min-height: 0; aspect-ratio: 4 / 3; }
  .cm .cm-16__card--pic { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-16__thumb { aspect-ratio: 16 / 9; height: auto; min-height: 0; }
}


.cm .cm-17__top { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 32px; }
.cm .cm-17__top .cm-head { margin-bottom: 0; }
.cm .cm-17__cmp { margin-bottom: 6px; }


.cm .cm-17__draw { margin: clamp(28px, 4vw, 48px) 0 0; padding: clamp(16px, 2.5vw, 28px) clamp(16px, 3vw, 36px) 14px; background: var(--cm-white); border: 1px solid var(--ln);
  background-image: linear-gradient(var(--cm-line-s, rgba(18, 27, 36, .07)) 1px, transparent 1px), linear-gradient(90deg, var(--cm-line-s, rgba(18, 27, 36, .07)) 1px, transparent 1px); background-size: 24px 24px; }
.cm .cm-17__frame { max-width: 920px; margin: 0 auto; }
.cm .cm-17__svg { width: 100%; height: auto; overflow: visible; }
.cm .cm-17__draw-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 16px; margin-top: 10px; }
.cm .cm-17__draw-foot .cm-cap { margin: 0; }
.cm .cm-17__draw-foot b { color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-17__f-body { fill: var(--cm-stone-2, #BFC2C1); stroke: rgba(18, 27, 36, .35); stroke-width: 1; }
.cm .cm-17__f-cap { fill: #A6A9A8; }
.cm .cm-17__f-seam { stroke: rgba(18, 27, 36, .18); stroke-width: 1; }
.cm .cm-17__f-part { stroke: rgba(18, 27, 36, .35); stroke-width: 1; stroke-dasharray: 3 4; }
.cm .cm-17__f-glass { fill: var(--cm-ice-soft, #DDF3FF); stroke: var(--cm-ice-ink, #0B6FA8); stroke-width: 1; }
.cm .cm-17__f-glow { fill: var(--cm-ice, #58C9FF); opacity: .38; }
.cm .cm-17__f-rail { stroke: var(--cm-ink, #121B24); stroke-width: 2.4; stroke-linecap: round; }
.cm .cm-17__f-panel { fill: var(--cm-ink, #121B24); }
.cm .cm-17__f-screen { fill: var(--cm-ice, #58C9FF); }
.cm .cm-17__f-door { fill: var(--cm-stone, #DCDBD6); stroke: rgba(18, 27, 36, .45); stroke-width: 1; }
.cm .cm-17__f-floor { stroke: var(--cm-ink, #121B24); stroke-width: 1.2; }
.cm .cm-17__f-shade { fill: rgba(18, 27, 36, .08); }
.cm .cm-17__f-temp { font: 500 13px var(--cm-mono); fill: var(--cm-text); letter-spacing: -.02em; }
.cm .cm-17__f-dim { stroke: var(--cm-text); stroke-width: 1; }
.cm .cm-17__f-dtxt { font: 500 12.5px var(--cm-mono); fill: var(--cm-text); letter-spacing: -.02em; }
.cm .cm-17__f-lbl { font: 400 11px var(--cm-sans); fill: var(--cm-muted, #6B7785); }


.cm .cm-17__tabs { display: flex; margin-top: clamp(28px, 4vw, 44px); max-width: 100%; }
.cm .cm-17__tabs button { flex: 1 1 auto; white-space: nowrap; padding: 0 14px; }
.cm .cm-17__panels { margin-top: 20px; }
.cm .cm-17__panel[hidden] { display: none; }
.cm .cm-17__hd, .cm .cm-17__row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); column-gap: clamp(16px, 3vw, 40px); }
.cm .cm-17__panel.is-cmp .cm-17__hd, .cm .cm-17__panel.is-cmp .cm-17__row { grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr) minmax(0, 1fr); }
.cm .cm-17__hd { padding: 0 0 10px; border-bottom: 1px solid var(--cm-ink); }
.cm .cm-17__row { padding: 14px 0; border-bottom: 1px solid var(--ln); animation: cm-17-fly .6s var(--ease) both; animation-delay: calc(var(--i, 0) * 35ms); }
.cm .cm-17__row dt { font-size: 15px; line-height: 1.45; color: var(--mute); }
.cm .cm-17__row dd { font-size: 15.5px; line-height: 1.45; color: var(--fg); }
.cm .cm-17__duo, .cm .cm-17__row dd.cm-17__duo { display: none; color: var(--mute); }
.cm .cm-17__panel.is-cmp .cm-17__duo { display: block; }
.cm .cm-17__foot { margin-top: 18px; }
@keyframes cm-17-fly { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.cm.cm-is-reduced .cm-17__row { animation: none; }

@media (max-width: 900px) {
  .cm .cm-17__draw { padding: 12px 10px 10px; }
  .cm .cm-17__f-temp, .cm .cm-17__f-dtxt { font-size: 26px; }   
  .cm .cm-17__f-lbl { font-size: 21px; }
  .cm .cm-17__tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .cm .cm-17__tabs::-webkit-scrollbar { display: none; }
  .cm .cm-17__tabs button { flex: 0 0 auto; }
  .cm .cm-17__hd { display: none; }
  .cm .cm-17__row, .cm .cm-17__panel.is-cmp .cm-17__row { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .cm .cm-17__row dt { font-size: 13px; }
  .cm .cm-17__row dd { font-size: 15px; }
  .cm .cm-17__duo::before { content: attr(data-l) ": "; font-weight: 600; }
}


.cm .cm-18__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(28px, 4.5vw, 64px); align-items: start; }
.cm .cm-18__side { position: sticky; top: 72px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; min-width: 0; }   
.cm .cm-18__search { position: relative; display: block; }
.cm .cm-18__search > svg { position: absolute; left: 14px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); color: var(--mute); pointer-events: none; }
.cm .cm-18__input { padding-left: 42px; padding-right: 44px; font: 400 15px/1 var(--cm-sans); }
.cm .cm-18__input::-webkit-search-cancel-button { display: none; }
.cm .cm-18__clear { position: absolute; right: 4px; top: 50%; display: grid; place-items: center; width: 40px; height: 40px; transform: translateY(-50%); color: var(--mute); }
.cm .cm-18__clear svg { width: 16px; height: 16px; }
.cm .cm-18__group .cm-eyebrow { display: block; margin-bottom: 10px; }
.cm .cm-18__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cm .cm-18__chips .cm-chip span { color: var(--mute); font-variant-numeric: tabular-nums; }
.cm .cm-18__chips .cm-chip[aria-pressed="true"] span { color: inherit; opacity: .8; }
.cm .cm-18__count { font-size: 13px; color: var(--mute); }
.cm .cm-18__list { border-top: 1px solid var(--ln); }
.cm .cm-18__item[hidden] { display: none; }
.cm .cm-18__q { font: 600 clamp(17px, 1.5vw, 19px)/1.35 var(--cm-display, var(--cm-sans)); letter-spacing: -.01em; }
.cm .cm-18__q mark { background: var(--cm-ice-soft, #DDF3FF); color: inherit; }
.cm .cm-18__tag { flex: none; margin-left: auto; font: 500 11px/1.2 var(--cm-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--mute); }
.cm .cm-18__a { overflow: hidden; }
.cm .cm-18__in p { font-size: 15px; }
.cm .cm-18__go { margin: 0 0 24px; }
.cm .cm-18__empty { margin-top: 24px; padding: 24px; background: var(--cm-white); border: 1px solid var(--ln); }
.cm .cm-18__ebtns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }

@media (max-width: 900px) {
  .cm .cm-18__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .cm .cm-18__side { position: static; gap: 16px; }
  .cm .cm-18__chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 calc(-1 * var(--gut)); padding: 0 var(--gut); }
  .cm .cm-18__chips::-webkit-scrollbar { display: none; }
  .cm .cm-18__chips .cm-chip { flex: none; }
  .cm .cm-18__tag { display: none; }
}


.cm .cm-19 { overflow: hidden; padding: clamp(88px, 10vw, 144px) 0 clamp(64px, 8vw, 104px); }
.cm .cm-19__bg { position: absolute; inset: 0; z-index: 0; overflow: hidden; }   
.cm .cm-19__bg img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; transform: scale(1.08); transform-origin: 50% 45%; }
.cm .cm-19.is-live .cm-19__bg img { transform: scale(1); transition: transform 22s ease-out; }
.cm .cm-19__veil { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(11, 24, 38, .62) 0%, rgba(11, 24, 38, .62) 50%, rgba(11, 24, 38, .85) 100%); }
.cm .cm-19__frost { z-index: 1; }
.cm .cm-19__grid { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(32px, 5vw, 72px); align-items: start; }
.cm .cm-19__main .cm-title { max-width: 16ch; }
.cm .cm-19__main .cm-lead { max-width: 48ch; }
.cm .cm-19__deal { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 16px 40px; margin-top: 32px; padding: 22px 0; border-top: 1px solid var(--cm-line-d); border-bottom: 1px solid var(--cm-line-d); }
.cm .cm-19__price, .cm .cm-19__install { display: grid; gap: 6px; }
.cm .cm-19__price b { line-height: 1; letter-spacing: -.02em; color: #fff; white-space: nowrap; }
.cm .cm-19__install b { line-height: 1; color: var(--cm-frost-c, #E6F0F8); white-space: nowrap; }
.cm .cm-19__price span, .cm .cm-19__install span { font: 600 11px/1.3 var(--cm-sans); letter-spacing: .16em; text-transform: uppercase; color: rgba(230, 240, 248, .72); }
.cm .cm-19__warranty { display: flex; align-items: center; gap: 10px; margin-top: 18px; font: 600 15px/1.4 var(--cm-sans); color: var(--cm-frost-c, #E6F0F8); }
.cm .cm-19__warranty svg { flex: none; width: 22px; height: 22px; color: var(--cm-ice); }
.cm .cm-19__btns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 26px; }
.cm .cm-19__btns .cm-btn { width: 100%; }
.cm .cm-19__btns .cm-btn--ice { grid-column: 1 / -1; min-height: 60px; font-size: 14px; }
.cm .cm-19__note { margin-top: 16px; color: rgba(230, 240, 248, .66); }


.cm .cm-19__sheet { --fg: var(--cm-text); --fg-2: rgba(42, 53, 66, .82); --mute: var(--cm-muted); --heading: var(--cm-ink); --accent: var(--cm-ice-ink, #0B6FA8); --accent-soft: var(--cm-ice-soft, #DDF3FF); --ln: var(--cm-line); --card: var(--cm-white);
  background: var(--cm-white); color: var(--cm-text); border: 0; box-shadow: var(--cm-shadow, 0 30px 60px -24px rgba(18, 27, 36, .28)); overflow: visible; }
.cm .cm-19__a4 { padding: 26px 28px 22px; }
.cm .cm-19__a4-brand { font: 600 11px/1.3 var(--cm-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--cm-ice-ink, #0B6FA8); }
.cm .cm-19__a4-title { margin-top: 8px; font-size: clamp(19px, 1.6vw, 22px); color: var(--cm-ink); }
.cm .cm-19__lines { margin-top: 16px; border-top: 1px solid var(--cm-line); }
.cm .cm-19__lines > div { display: grid; grid-template-columns: minmax(0, 11fr) minmax(0, 13fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--cm-line); font-size: 13.5px; line-height: 1.45; }
.cm .cm-19__lines dt { color: var(--cm-muted); }
.cm .cm-19__lines dd { font-weight: 500; color: var(--cm-ink); overflow-wrap: anywhere; }
.cm .cm-19__lines dd.cm-num { font-size: 13px; }
.cm .cm-19__a4-foot { margin-top: 14px; font-size: 12px; }
.cm .cm-19__sheet-btns { display: grid; gap: 10px; padding: 0 28px 26px; }
.cm .cm-19__sheet-btns .cm-btn { width: 100%; }
.cm .cm-19__sheet-btns .cm-btn svg { width: 18px; height: 18px; margin-right: 10px; }
.cm .cm-19__sheet-btns .cm-btn.is-busy { opacity: .6; pointer-events: none; }


.cm .cm-19__next { position: relative; z-index: 2; margin-top: clamp(48px, 6vw, 80px); }
.cm .cm-19__h3 { margin-bottom: 20px; color: var(--cm-frost-c, #E6F0F8); }
.cm .cm-19__steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.cm .cm-19__steps .cm-step { grid-template-columns: minmax(0, 1fr); align-content: start; gap: 12px; padding: 22px 24px; background: rgba(230, 240, 248, .06); border-color: var(--cm-line-d); }
.cm .cm-19__steps .cm-step::before { font-size: 30px; line-height: 1; color: var(--cm-ice); }
.cm .cm-19__steps .cm-step b { font-size: 17px; color: var(--cm-frost-c, #E6F0F8); }
.cm .cm-19__steps .cm-step p { color: rgba(230, 240, 248, .74); }
.cm .cm-19__cap { position: absolute; z-index: 2; right: var(--gut); bottom: 14px; margin: 0; color: rgba(230, 240, 248, .55); }

@media (max-width: 1100px) {
  .cm .cm-19__grid { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-19__sheet { max-width: 620px; }
}
@media (max-width: 900px) {
  .cm .cm-19 { padding: 64px 0 72px; }
  .cm .cm-19__btns { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-19__btns .cm-btn--ice { min-height: 56px; }
  .cm .cm-19__a4 { padding: 20px 18px 16px; }
  .cm .cm-19__sheet-btns { padding: 0 18px 20px; }
  .cm .cm-19__lines > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .cm .cm-19__steps { grid-template-columns: minmax(0, 1fr); }
  .cm .cm-19__steps .cm-step { grid-template-columns: 44px minmax(0, 1fr); padding: 16px 18px; }
  .cm .cm-19__cap { position: static; margin: 20px 0 0; padding: 0 var(--gut); text-align: right; }
}
.cm.cm-is-reduced .cm-19__bg img, .cm.cm-is-reduced .cm-19.is-live .cm-19__bg img { transform: none; transition: none; }

.mgz-element.cm { width: auto; margin-left: 0; }
