/* Current boft.ru palette, Arial typography and rounded panels, confined to /app. */
.app-landing{--bg:var(--background);--font:Arial,Helvetica,sans-serif;--font-display:var(--font);--accent:var(--pink);--accent-text:var(--pink);--accent-soft:#32262f;--accent-ink:#2b1d28;--surface:#242020;--ink-soft:#d7ceca;--plate-light:#242020;--plate-ink:var(--ink);--plate-paper:#242020;--plate-paper-ink:var(--ink);--plate-border:1px solid #ffffff1c;--r:28px;--r-rXl:28px;--content:1180px;--edge:32px;--col-gap:24px;--gap:24px;--block-gap:48px;--span-10:1000px;--span-8:800px;--t-hero-size:80px;--t-title-size:60px;--t-lead-size:21px;--t-body-size:18px;--t-body-lh:1.5;--t-hero-ls:-.05em;--t-title-ls:-.045em;--t-heading-ls:-.035em;--t-heading-size:32px;--t-heading-lh:1.12;--t-heading-fw:650;--t-caption-size:14px;--t-label-size:13px;--t-title-fw:650;--t-title-lh:1.08;--t-lead-lh:1.45;--plate-inset:40px;--card-inset:40px;overflow:clip}
.app-landing h1,.app-landing h2,.app-landing h3,.app-landing p{margin:0}
.app-landing img{max-width:100%}
.app-landing .wrap-wide{width:min(var(--content),calc(100% - 2 * var(--edge)));margin-inline:auto}
.app-landing .section{padding-block:48px}
.app-landing .g12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.app-landing .sg-hero-copy{padding-top:120px;padding-bottom:36px;min-height:max(760px,100svh)}
.app-landing .sg-hero{min-height:max(760px,100svh)}
.app-landing .sg-hero h1{font-size:clamp(38px,5.1vw,76px);line-height:1.04;letter-spacing:-.05em}
.app-landing .sg-hero-sub,.app-landing .sg-cap p{color:#d7ceca}
.app-landing .sg-hero-copy .badge{pointer-events:auto}
.app-landing .store-badges{display:flex;gap:12px}
.app-landing .badge{display:inline-flex;min-height:52px;align-items:center;border-radius:12px}
.app-landing .badge img{display:block;width:156px;height:52px}
.app-landing .sg-fallback{display:block}
.app-landing .sg-ready:not(.sg-failed) .sg-fallback{display:none}
.app-landing .sg-spin{display:none}
.app-landing .sg-js .sg-spin{display:block}
.app-landing .sg-drag:focus-visible{outline:2px solid var(--pink);outline-offset:-8px}
.app-landing .ps-rows{list-style:none;margin:0;padding:0}
.app-landing .ps-row{border:1px solid #ffffff1c}
.app-landing .ps-text h3{color:var(--ink)}
.app-landing .ps-num{color:var(--pink)}
.app-landing .fd-panel,.app-landing .fd-panel--light{background:var(--surface);color:var(--ink);border:1px solid #ffffff1c}
.app-landing .fd-copy h2{color:var(--ink);letter-spacing:-.045em}
.app-landing .fd-sub{color:#d7ceca}
.app-landing .fd-tab{color:var(--ink);border-color:#9a7b91;border-radius:14px;font-weight:500}
.app-landing .fd-tab-icon{filter:none}
.app-landing .fd-tab:hover{border-color:var(--pink);background:#ffffff0a}
.app-landing .fd-tab[aria-pressed=true]{background:var(--pink);color:#2b1d28}
.app-landing .fd-tab[aria-pressed=true] .fd-tab-icon{filter:brightness(0)}
.app-landing .fd-tab:focus-visible{outline:2px solid var(--pink);outline-offset:3px}
.app-landing .fd-static{width:75%;height:85%;object-fit:contain;position:absolute;inset:7.5% 12.5%}
.app-landing .fd-stage:has(.fd-cardbox) .fd-static{display:none}
.app-landing .final>.wrap-wide{background:#32262f;border:1px solid #ffffff1c;border-radius:28px;padding:48px;align-items:center;overflow:hidden}
.app-landing .final h2{font-size:clamp(32px,4.5vw,60px);line-height:1.06;letter-spacing:-.045em;color:var(--pink)}
.app-landing .final p{color:#d7ceca;font-size:20px;line-height:1.5;margin:22px 0;max-width:35ch}
.app-landing .final-copy{grid-column:1 / span 7}
.app-landing .final-phone{grid-column:9 / span 3}
.app-landing .final{padding-bottom:100px}
@media(max-width:700px){.app-landing{--edge:20px;--plate-inset:24px;--card-inset:24px;--block-gap:24px;--t-title-size:38px;--t-lead-size:18px;--t-heading-size:26px}.app-landing .section{padding-block:24px}.app-landing .sg-hero-copy{padding-top:108px;min-height:max(760px,100svh);padding-bottom:24px}.app-landing .sg-hero{min-height:max(760px,100svh)}.app-landing .sg-hero h1{font-size:38px}.app-landing .sg-hero-sub{font-size:17px}.app-landing .sg-hero{--sg-ball:clamp(180px,calc((100svh - 480px) / 1.2),78vw)}.app-landing .sg-gallery{--sg-ball:min(36svh,72vw,300px)}.app-landing .fd-tabs{flex-wrap:wrap;overflow:visible;justify-content:center}.app-landing .fd-tab{min-height:44px}.app-landing .final>.wrap-wide{padding:28px 24px}.app-landing .final-copy{grid-column:1 / -1}.app-landing .final-phone{grid-column:3 / span 8;max-height:430px;overflow:hidden}.app-landing .final p{font-size:18px}.app-landing .final{padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){.app-landing *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.app-landing .sg-hero{--sg-ball:min(30svh,28vw,360px)}
.app-landing .sg-hero h1{font-size:clamp(38px,min(4.8vw,5.8svh),72px)}
.app-landing .sg-fallback,.app-landing .sg-video,.app-landing .sg-scene iframe{mix-blend-mode:lighten}
@media(max-width:700px){.app-landing .sg-hero{--sg-ball:clamp(180px,calc((100svh - 480px) / 1.2),78vw)}.app-landing .sg-hero h1{font-size:38px}}
.app-landing .sg-scene{mix-blend-mode:lighten}
.app-landing .sg:not(.sg-js) .sg-controls,.app-landing .fd-panel:not([data-booted]) .fd-tabs{display:none}
