/* ═══ MOMENTERA — Точная копия 24expay + форма как в скриншоте ═══ */
@font-face { font-family:'OpenRunde'; src:url('../fonts/OpenRunde-Regular.woff2') format('woff2'),url('../fonts/OpenRunde-Regular.woff') format('woff'); font-weight:400; font-style:normal; }
@font-face { font-family:'OpenRunde'; src:url('../fonts/OpenRunde-Medium.woff2') format('woff2'),url('../fonts/OpenRunde-Medium.woff') format('woff'); font-weight:500; font-style:normal; }
@font-face { font-family:'OpenRunde'; src:url('../fonts/OpenRunde-Semibold.woff2') format('woff2'),url('../fonts/OpenRunde-Semibold.woff') format('woff'); font-weight:600; font-style:normal; }
@font-face { font-family:'OpenRunde'; src:url('../fonts/OpenRunde-Bold.woff2') format('woff2'),url('../fonts/OpenRunde-Bold.woff') format('woff'); font-weight:700; font-style:normal; }

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { overflow-x:hidden; scroll-behavior:smooth; }
body { font-family:'OpenRunde',sans-serif; font-size:16px; line-height:1.5; color:#fff; background:#2f3235; overflow-x:hidden; position:relative; }
a { text-decoration:none; color:inherit; }
button { cursor:pointer; border:none; background:none; font-family:inherit; color:inherit; }
input { font-family:inherit; }
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button { -webkit-appearance:none; }
img { max-width:100%; display:block; }
.container { width:100%; max-width:1200px; margin:0 auto; padding:0 20px; }

/* ─── BG IMAGE ─── */
.hero-bg-wrap { position:fixed; inset:0; z-index:0; pointer-events:none; }
.hero-bg-img { width:100%; height:100%; object-fit:cover; object-position:center top; opacity:.55; }

/* ─── WARNING BAR ─── */
.warning-bar { position:relative; z-index:50; background:#1a1c1e; border-bottom:1px solid rgba(255,255,255,.08); padding:9px 0; }
.warning-bar .container { display:flex; align-items:center; gap:10px; }
.w-icon { width:22px; height:22px; border-radius:50%; background:#e83e4a; color:#fff; font-size:13px; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.w-text { font-size:13px; color:rgba(255,255,255,.7); }

/* ─── HEADER ─── */
.header { position:sticky; top:0; z-index:200; background:rgba(30,32,36,.88); backdrop-filter:blur(16px); border-bottom:1px solid rgba(255,255,255,.07); }
.header__inner { display:flex; align-items:center; height:64px; gap:12px; }
.logo { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.logo__icon { width:44px; height:44px; background:linear-gradient(135deg,#7C3AED,#5b21b6); border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.logo__name { font-size:19px; font-weight:700; color:#fff; line-height:1.1; }
.logo__name span { color:#a78bfa; }
.logo__sub { font-size:9px; font-weight:600; letter-spacing:.1em; color:rgba(255,255,255,.35); text-transform:uppercase; margin-top:1px; }
.nav { display:none; margin-left:28px; gap:2px; align-items:center; }
.nav a { padding:7px 14px; border-radius:8px; font-size:14px; font-weight:500; color:rgba(255,255,255,.65); transition:all .2s; }
.nav a:hover { color:#fff; background:rgba(255,255,255,.07); }
.header__right { margin-left:auto; }
.header__tg { display:inline-flex; align-items:center; gap:8px; background:rgba(124,58,237,.2); border:1px solid rgba(124,58,237,.4); color:#a78bfa; padding:9px 18px; border-radius:10px; font-size:14px; font-weight:600; transition:all .2s; }
.header__tg:hover { background:rgba(124,58,237,.4); color:#fff; }
.burger { display:flex; flex-direction:column; gap:5px; margin-left:12px; padding:5px; }
.burger span { display:block; width:22px; height:2px; background:rgba(255,255,255,.7); border-radius:2px; }
@media (min-width:860px) { .nav{display:flex;} .burger{display:none;} }
.nav.open { display:flex; flex-direction:column; position:fixed; top:64px; left:0; right:0; background:rgba(30,32,36,.98); border-bottom:1px solid rgba(255,255,255,.07); padding:12px 20px; z-index:199; gap:0; }
.nav.open a { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.06); border-radius:0; font-size:15px; }

/* ─── HERO ─── */
.hero { position:relative; z-index:10; padding:72px 0 80px; min-height:90vh; display:flex; align-items:center; }
.hero__inner { display:flex; flex-direction:column; gap:48px; align-items:stretch; }
.hero__content { flex:1; }
.hero__avatars { display:flex; align-items:center; gap:12px; margin-bottom:28px; }
.ava-list { display:flex; }
.ava { width:36px; height:36px; border-radius:50%; border:2px solid #2f3235; object-fit:cover; margin-left:-8px; }
.ava:first-child { margin-left:0; }
.hero__avatars span { font-size:13px; color:rgba(255,255,255,.6); }
.hero h1 { font-size:40px; font-weight:500; line-height:1.12; letter-spacing:-.02em; color:#fff; margin-bottom:16px; }
.hero h1 strong { color:#a78bfa; font-weight:700; }
.hero__desc { font-size:16px; color:rgba(255,255,255,.55); line-height:1.7; margin-bottom:36px; max-width:500px; }
.hero__stats { display:flex; align-items:center; flex-wrap:wrap; gap:0; }
.hstat { display:flex; flex-direction:column; padding:0 20px; }
.hstat:first-child { padding-left:0; }
.hstat__num { font-size:26px; font-weight:700; color:#fff; }
.hstat__label { font-size:12px; color:rgba(255,255,255,.4); text-transform:uppercase; letter-spacing:.05em; margin-top:-2px; }
.hstat__sep { width:1px; height:38px; background:rgba(255,255,255,.15); }
@media (min-width:960px) {
  .hero__inner { flex-direction:row; align-items:center; gap:60px; }
  .hero h1 { font-size:56px; }
}
@media (min-width:1200px) { .hero h1 { font-size:66px; } }

/* ─── КАЛЬКУЛЯТОР ─── */
.calc-wrap { position:relative; flex-shrink:0; width:100%; }
@media (min-width:960px) { .calc-wrap { width:440px; } }

.city-notch { position:absolute; top:0; left:50%; transform:translate(-50%,-99%); z-index:30; }
.city-notch__btn { display:inline-flex; align-items:center; gap:6px; padding:7px 16px 8px; background:#2f3235; border:1px solid rgba(255,255,255,.14); border-radius:12px 12px 0 0; box-shadow:0 4px 14px rgba(0,0,0,.28); color:rgba(255,255,255,.92); font-family:'OpenRunde',sans-serif; font-size:13px; font-weight:600; white-space:nowrap; transition:background .2s; }
.city-notch__btn:hover { background:#383c41; }
.city-notch__pin { width:8px; height:8px; border-radius:50%; background:#7C3AED; box-shadow:0 0 0 2px rgba(124,58,237,.3); flex-shrink:0; }

.calc-card { background:rgba(22,22,28,.95); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,.08); border-radius:0 0 24px 24px; padding:24px 22px 22px; }

/* ─── ПОЛЯ ФОРМЫ ─── */
.cfield { display:flex; flex-direction:column; gap:8px; margin-bottom:10px; }
.cfield__label { font-size:11px; font-weight:700; color:rgba(255,255,255,.35); text-transform:uppercase; letter-spacing:.1em; }
.cfield__body { display:flex; align-items:center; background:rgba(255,255,255,.06); border:1.5px solid rgba(255,255,255,.1); border-radius:16px; overflow:visible; transition:border-color .2s; }
.cfield__body:focus-within { border-color:rgba(124,58,237,.55); }

.cfield__amount { flex:1; background:transparent; border:none; outline:none; padding:20px 0 20px 20px; font-size:32px; font-weight:700; color:#fff; min-width:0; font-family:'OpenRunde',sans-serif; }
.cfield__amount[readonly] { color:rgba(255,255,255,.4); }

.cfield__cur { position:relative; flex-shrink:0; padding:0 14px; }
.cfield__cur-btn { display:flex; align-items:center; gap:6px; background:transparent; border:none; color:rgba(255,255,255,.85); padding:0; font-size:15px; font-weight:600; white-space:nowrap; cursor:pointer; font-family:'OpenRunde',sans-serif; transition:color .2s; }
.cfield__cur-btn:hover { color:#fff; }

/* ─── ДРОПДАУН ─── */
.calc-drop { position:absolute; top:calc(100% + 8px); right:0; width:260px; background:#1a1c22; border:1px solid rgba(255,255,255,.12); border-radius:14px; box-shadow:0 20px 50px rgba(0,0,0,.7); z-index:600; display:none; }
.calc-drop.open { display:block; }
.calc-drop.drop-up { top:auto; bottom:calc(100% + 8px); }
.calc-search { width:100%; padding:12px 14px; background:transparent; border:none; border-bottom:1px solid rgba(255,255,255,.07); outline:none; font-size:14px; color:#fff; border-radius:14px 14px 0 0; font-family:'OpenRunde',sans-serif; }
.calc-search::placeholder { color:rgba(255,255,255,.25); }
.calc-list { list-style:none; max-height:230px; overflow-y:auto; padding:6px 0; }
.calc-list::-webkit-scrollbar { width:4px; }
.calc-list::-webkit-scrollbar-thumb { background:rgba(255,255,255,.12); border-radius:2px; }
.calc-list li { display:flex; align-items:center; gap:10px; padding:10px 14px; cursor:pointer; font-size:13px; font-weight:500; color:rgba(255,255,255,.75); transition:background .15s; }
.calc-list li:hover,.calc-list li.selected { background:rgba(124,58,237,.2); color:#fff; }
.calc-list .c-ico { width:24px; height:24px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:800; color:#fff; flex-shrink:0; }
.calc-list .c-name { flex:1; font-weight:600; }
.calc-list .c-full { font-size:11px; color:rgba(255,255,255,.3); }

/* ─── СВАП КНОПКА ─── */
.cswap-wrap { display:flex; justify-content:center; margin:16px 0; }
.cswap-btn { width:52px; height:52px; border-radius:50%; background:#E83E4A; border:none; color:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0; cursor:pointer; transition:all .25s; box-shadow:0 4px 16px rgba(232,62,74,.35); }
.cswap-btn:hover { background:#D93140; transform:scale(1.1); box-shadow:0 6px 24px rgba(232,62,74,.5); }

/* ─── НИЖНЯЯ СТРОКА ─── */
.calc-footer { display:flex; flex-direction:column; gap:12px; margin-top:16px; }
.calc-footer__info { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 2px; }
.calc-footer__rate { font-size:13px; color:rgba(255,255,255,.5); flex:1; }
.calc-footer__live { display:flex; align-items:center; gap:4px; font-size:11px; color:rgba(255,255,255,.3); }
.live-dot { width:7px; height:7px; border-radius:50%; background:#10B981; animation:pulse 2s infinite; }
.live-dot.error { background:#EF4444; animation:none; }
@keyframes pulse { 0%,100%{opacity:1}50%{opacity:.4} }
.calc-footer__actions { display:flex; gap:10px; }
.calc-btn-more { flex:1; padding:13px; background:transparent; border:1px solid rgba(255,255,255,.15); color:rgba(255,255,255,.6); border-radius:10px; font-size:14px; font-weight:600; cursor:pointer; transition:all .2s; font-family:'OpenRunde',sans-serif; }
.calc-btn-more:hover { border-color:rgba(255,255,255,.3); color:#fff; }
.calc-btn-go { flex:1; padding:13px; background:#E83E4A; color:#fff; border-radius:10px; font-size:14px; font-weight:700; cursor:pointer; transition:all .2s; font-family:'OpenRunde',sans-serif; border:none; }
.calc-btn-go:hover { background:#D93140; transform:translateY(-1px); box-shadow:0 4px 16px rgba(232,62,74,.4); }

@media (max-width:400px) {
  .calc-drop { width:calc(100vw - 44px); right:-10px; }
  .cfield__amount { font-size:26px; padding:18px 0 18px 16px; }
}
@media (max-width:480px) {
  .calc-card { padding:20px 16px 18px; }
  .cfield__cur-btn { font-size:14px; }
}

/* ─── SERVICES ─── */
.services { position:relative; z-index:10; padding:32px 0; }
.services__grid { display:grid; grid-template-columns:1fr 1fr; grid-template-rows:180px 180px; gap:12px; }
.srv { position:relative; border-radius:18px; overflow:hidden; display:flex; transition:transform .2s; }
.srv:hover { transform:scale(1.015); }
.srv__bg { position:absolute; inset:0; }
.srv__bg img { width:100%; height:100%; object-fit:cover; }
.srv__overlay { position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.65) 0%,rgba(0,0,0,.15) 60%); }
.srv__body { position:relative; z-index:2; padding:18px 20px; display:flex; flex-direction:column; justify-content:flex-end; width:100%; }
.srv__title { font-size:16px; font-weight:700; color:#fff; line-height:1.25; margin-bottom:8px; }
.srv__btn { display:inline-flex; align-items:center; gap:6px; font-size:13px; color:rgba(255,255,255,.7); font-weight:500; }
.srv__btn::after { content:'→'; }
.srv--lg { grid-column:1; grid-row:1; }
.srv__col { display:contents; }
.srv__col .srv:nth-child(1) { grid-column:2; grid-row:1; }
.srv__col .srv:nth-child(2) { grid-column:1; grid-row:2; }
.srv--tall { grid-column:2; grid-row:2; }
@media (min-width:640px) {
  .services__grid { grid-template-columns:2fr 1fr 1fr; grid-template-rows:220px 220px; gap:14px; }
  .srv--lg { grid-column:1; grid-row:1/3; }
  .srv__col .srv:nth-child(1) { grid-column:2; grid-row:1; }
  .srv__col .srv:nth-child(2) { grid-column:2; grid-row:2; }
  .srv--tall { grid-column:3; grid-row:1/3; }
  .srv__title { font-size:18px; }
}

/* ─── FEATURES ─── */
.features { position:relative; z-index:10; padding:60px 0; }
.features h2,.steps h2,.faq h2 { font-size:36px; font-weight:600; color:#fff; margin-bottom:32px; letter-spacing:-.02em; }
.features__grid { display:grid; grid-template-columns:1fr; gap:12px; }
.feat { position:relative; border-radius:18px; overflow:hidden; }
.feat--half { min-height:160px; }
.feat--full { min-height:220px; }
.feat__bg { position:absolute; inset:0; }
.feat__bg img { width:100%; height:100%; object-fit:cover; }
.feat__overlay { position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,.2) 70%); }
.feat__body { position:relative; z-index:2; padding:24px 22px; display:flex; flex-direction:column; justify-content:flex-end; height:100%; }
.feat__title { font-size:18px; font-weight:700; color:#fff; margin-bottom:6px; }
.feat__desc { font-size:14px; color:rgba(255,255,255,.6); line-height:1.6; }
.feat__col { display:contents; }
@media (min-width:640px) {
  .features__grid { grid-template-columns:1fr 2fr 1fr; grid-template-rows:240px 240px; }
  .feat__col { display:block; display:grid; grid-template-rows:1fr 1fr; gap:12px; }
  .feat__col .feat { min-height:0; }
  .feat--full { grid-column:2; grid-row:1/3; }
  .feat__col:first-child { grid-column:1; }
  .feat__col:last-child { grid-column:3; }
  .features h2 { font-size:44px; }
}

/* ─── STEPS ─── */
.steps { position:relative; z-index:10; padding:60px 0; }
.steps__grid { display:grid; grid-template-columns:1fr; gap:14px; list-style:none; }
.step { position:relative; border-radius:18px; overflow:hidden; min-height:180px; }
.step__bg { position:absolute; inset:0; }
.step__bg img { width:100%; height:100%; object-fit:cover; }
.step__overlay { position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.2) 60%); }
.step__body { position:relative; z-index:2; padding:24px 22px; display:flex; flex-direction:column; justify-content:flex-end; height:100%; }
.step__badge { display:inline-block; background:rgba(124,58,237,.6); border:1px solid rgba(124,58,237,.5); color:#fff; font-size:12px; font-weight:700; padding:4px 12px; border-radius:20px; margin-bottom:10px; letter-spacing:.04em; text-transform:uppercase; width:fit-content; }
.step__title { font-size:18px; font-weight:700; color:#fff; margin-bottom:6px; }
.step__desc { font-size:14px; color:rgba(255,255,255,.6); line-height:1.6; }
@media (min-width:640px) {
  .steps__grid { grid-template-columns:repeat(3,1fr); }
  .steps h2 { font-size:44px; }
}

/* ─── FAQ ─── */
.faq { position:relative; z-index:10; padding:60px 0; }
.faq-list { max-width:760px; display:flex; flex-direction:column; gap:6px; }
.faq-item { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); border-radius:12px; overflow:hidden; transition:border-color .2s; }
.faq-item.open { border-color:rgba(124,58,237,.5); }
.faq-q { width:100%; display:flex; align-items:center; justify-content:space-between; padding:18px 20px; font-size:15px; font-weight:600; text-align:left; gap:12px; color:rgba(255,255,255,.85); font-family:'OpenRunde',sans-serif; }
.faq-q:hover { background:rgba(255,255,255,.03); }
.faq-ic { font-size:22px; font-weight:300; color:#a78bfa; flex-shrink:0; }
.faq-a { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.faq-item.open .faq-a { max-height:300px; }
.faq-a p { padding:0 20px 16px; font-size:14px; color:rgba(255,255,255,.45); line-height:1.7; }
@media (min-width:640px) { .faq h2 { font-size:44px; } }

/* ─── FOOTER ─── */
.footer { position:relative; z-index:10; background:#1a1c1e; border-top:1px solid rgba(255,255,255,.07); padding:48px 0 0; }
.footer__grid { display:grid; grid-template-columns:1fr; gap:36px; padding-bottom:40px; border-bottom:1px solid rgba(255,255,255,.07); }
.footer__logo { display:flex; align-items:center; gap:14px; margin-bottom:22px; }
.footer__name { font-size:20px; font-weight:700; color:#fff; }
.footer__name span { color:#a78bfa; }
.footer__subdesc { font-size:9px; letter-spacing:.1em; color:rgba(255,255,255,.3); text-transform:uppercase; }
.footer__hours { display:flex; align-items:flex-start; gap:12px; color:rgba(255,255,255,.55); }
.fh-label { font-size:12px; color:rgba(255,255,255,.35); text-transform:uppercase; letter-spacing:.05em; }
.fh-time { font-size:15px; font-weight:600; color:#fff; }
.fh-days { font-size:13px; color:rgba(255,255,255,.4); }
.footer__links { display:flex; gap:40px; }
.footer__col h4 { font-size:14px; font-weight:700; color:rgba(255,255,255,.7); text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; }
.footer__col ul { display:flex; flex-direction:column; gap:8px; }
.footer__col a { font-size:14px; color:rgba(255,255,255,.4); transition:color .2s; }
.footer__col a:hover { color:#fff; }
.footer__tg { display:inline-flex; align-items:center; gap:10px; background:rgba(124,58,237,.2); border:1px solid rgba(124,58,237,.4); color:#a78bfa; padding:12px 20px; border-radius:10px; font-size:14px; font-weight:600; transition:all .2s; margin-bottom:12px; }
.footer__tg:hover { background:rgba(124,58,237,.4); color:#fff; }
.footer__email { display:block; font-size:13px; color:rgba(255,255,255,.4); transition:color .2s; }
.footer__email:hover { color:#fff; }
.footer__bottom { display:flex; justify-content:space-between; padding:16px 20px; font-size:13px; color:rgba(255,255,255,.25); flex-wrap:wrap; gap:8px; }
.footer__bottom a { color:rgba(255,255,255,.25); transition:color .2s; }
.footer__bottom a:hover { color:#fff; }
@media (min-width:640px) { .footer__grid { grid-template-columns:1fr 1fr 1fr; } }

/* ─── MODAL ─── */
.modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,.75); backdrop-filter:blur(8px); display:none; align-items:center; justify-content:center; z-index:1000; padding:16px; }
.modal-overlay.open { display:flex; }
.modal-box { background:#1e2024; border:1px solid rgba(255,255,255,.12); border-radius:20px; padding:36px 28px; max-width:380px; width:100%; text-align:center; position:relative; animation:popIn .25s ease; }
@keyframes popIn { from{opacity:0;transform:scale(.9)} to{opacity:1;transform:scale(1)} }
.modal-close { position:absolute; top:14px; right:16px; font-size:24px; color:rgba(255,255,255,.4); width:32px; height:32px; display:flex; align-items:center; justify-content:center; transition:color .2s; cursor:pointer; }
.modal-close:hover { color:#fff; }
.modal-icon { width:54px; height:54px; border-radius:50%; background:rgba(124,58,237,.2); border:1px solid rgba(124,58,237,.4); color:#a78bfa; font-size:24px; display:flex; align-items:center; justify-content:center; margin:0 auto 18px; }
.modal-box h3 { font-size:22px; font-weight:700; color:#fff; margin-bottom:10px; }
.modal-box p { font-size:14px; color:rgba(255,255,255,.45); line-height:1.6; margin-bottom:20px; }

/* ─── TG FLOAT ─── */
#tg-float { position:fixed; bottom:22px; right:18px; width:52px; height:52px; background:#7C3AED; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 20px rgba(124,58,237,.5); z-index:999; transition:transform .2s,box-shadow .2s; }
#tg-float:hover { transform:scale(1.1); box-shadow:0 6px 28px rgba(124,58,237,.7); }

/* ─── MOBILE ─── */
@media (max-width:600px) {
  .hero { padding:48px 0 56px; min-height:auto; }
  .hero h1 { font-size:30px; }
  .hstat__num { font-size:20px; }
  .hstat { padding:0 14px; }
  .features h2,.steps h2,.faq h2 { font-size:26px; }
  .srv__title { font-size:14px; }
  .services__grid { grid-template-rows:140px 140px; gap:8px; }
  .feat--half { min-height:130px; }
  .feat--full { min-height:160px; }
  .step { min-height:150px; }
}
