/* ============================================================
   ТЕНДЕРГРАД — Продажа квартиры (объявление, QR-лендинг)
   Mobile-first. Сапфировая палитра сайта.
   Префикс .sl-
   ============================================================ */

.sl-wrap{width:100%;overflow-x:clip;--sl-bg:#F2F4FA;--sl-bg2:#E8EAF4;--sl-ink:#050828;--sl-mute:#4F557B;--sl-mute2:#6E7396;--sl-line:rgba(11,16,82,.10);--sl-line2:rgba(11,16,82,.22);--sl-blue:#1B2185;--sl-blue-l:#3A40B8;--sl-blue-d:#0B1052;--sl-platinum:#C9CDE3;--sl-platinum-d:#8B91D2;--sl-ok:#136C66;--sl-ok-bg:#D6EAE6;--sl-shadow:0 18px 40px rgba(11,16,82,.12);--sl-shadow-s:0 10px 28px rgba(11,16,82,.08);--sl-shadow-b:0 28px 64px rgba(11,16,82,.20)}
.cr-page.sl-wrap{background:linear-gradient(180deg,#F2F4FA 0%,#E8EAF4 100%);color:var(--sl-ink)}
.sl-wrap main a:not([class]){color:var(--sl-blue);text-decoration-color:var(--sl-platinum-d)}
.sl-wrap main a:not([class]):hover{color:var(--sl-ink)}
.sl-inner{max-width:1280px;margin:0 auto;padding:0 20px}
@media(min-width:760px){.sl-inner{padding:0 32px}}
@media(min-width:1180px){.sl-inner{padding:0 48px}}

/* ---- buttons ---- */
.sl-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 24px;background:var(--sl-ink);color:#fff;font-family:var(--font-sans);font-weight:600;font-size:15px;border:none;border-radius:999px;cursor:pointer;text-decoration:none;transition:all 200ms cubic-bezier(.2,0,0,1);white-space:nowrap}
.sl-btn:hover{background:var(--sl-blue);transform:translateY(-1px);box-shadow:0 14px 30px rgba(5,8,40,.3)}
.sl-btn svg{width:17px;height:17px}
.sl-btn-ghost{background:transparent;color:var(--sl-ink);border:1px solid var(--sl-line2)}
.sl-btn-ghost:hover{background:var(--sl-ink);border-color:var(--sl-ink);box-shadow:none}
.sl-btn-platinum{background:var(--sl-platinum);color:var(--sl-blue-d);box-shadow:0 10px 26px rgba(201,205,227,.4)}
.sl-btn-platinum:hover{background:#fff;color:var(--sl-blue-d);box-shadow:0 16px 36px rgba(201,205,227,.5)}
.sl-wrap a.sl-btn{color:#fff}
.sl-wrap a.sl-btn-ghost{color:var(--sl-ink)}
.sl-wrap a.sl-btn-platinum{color:var(--sl-blue-d)}
.sl-wrap a.sl-btn:hover{color:#fff}
.sl-wrap a.sl-btn-ghost:hover{color:#fff}
.sl-wrap a.sl-btn-platinum:hover{color:var(--sl-blue-d)}

/* ============================================================
   HERO — медиа + факты
   ============================================================ */
.sl-hero{padding:30px 0 8px}
@media(min-width:1000px){.sl-hero{padding:40px 0 12px}}
.sl-hero-grid{display:grid;gap:22px}
@media(min-width:1000px){.sl-hero-grid{grid-template-columns:1.55fr 1fr;gap:32px;align-items:stretch}}

/* --- gallery --- */
.sl-gal{position:relative;min-width:0}
.sl-gal-main{position:relative;width:100%;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:var(--sl-blue-d);cursor:zoom-in}
@media(min-width:1000px){.sl-gal-main{aspect-ratio:16/11;border-radius:22px}}
.sl-gal-main img{width:100%;height:100%;object-fit:cover;display:block}
.sl-gal-main.is3d{cursor:default;background:linear-gradient(165deg,#F2F4FA 0%,#DCDFEE 100%)}
.sl-gal-3d-layer{position:absolute;inset:0;transition:opacity 300ms ease}
.sl-gal-3d{display:block;width:100%;height:100%;border:0;background:transparent}
.sl-3d-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;display:inline-flex;align-items:center;gap:10px;background:rgba(5,8,40,.6);backdrop-filter:blur(8px);color:#fff;padding:10px 18px;border-radius:999px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;border:1px solid rgba(201,205,227,.25)}
.sl-3d-loading .sp{width:13px;height:13px;border-radius:999px;border:2px solid rgba(201,205,227,.35);border-top-color:#fff;animation:sl-spin 800ms linear infinite}
@keyframes sl-spin{to{transform:rotate(360deg)}}
.sl-gal-badge{position:absolute;top:14px;left:14px;z-index:3;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:rgba(5,8,40,.55);backdrop-filter:blur(8px);color:#fff;padding:8px 14px;border-radius:999px;font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;border:1px solid rgba(201,205,227,.25)}
.sl-gal-badge svg{width:14px;height:14px;flex:0 0 14px}
.sl-gal-badge .d{width:7px;height:7px;border-radius:999px;background:#8FD6C8;box-shadow:0 0 8px #8FD6C8}
.sl-gal-count{position:absolute;bottom:14px;right:14px;z-index:3;background:rgba(5,8,40,.55);backdrop-filter:blur(8px);color:#fff;padding:6px 13px;border-radius:999px;font-family:var(--font-mono);font-size:11.5px;border:1px solid rgba(201,205,227,.2)}
.sl-gal-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:44px;height:44px;border-radius:999px;background:rgba(5,8,40,.5);backdrop-filter:blur(8px);border:1px solid rgba(201,205,227,.25);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 200ms}
.sl-gal-nav:hover{background:rgba(5,8,40,.75)}
.sl-gal-nav svg{width:21px;height:21px}
.sl-gal-prev{left:12px}
.sl-gal-next{right:12px}
.sl-gal-thumbs{display:flex;gap:8px;margin-top:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.sl-gal-thumbs::-webkit-scrollbar{display:none}
.sl-thumb{position:relative;flex:0 0 84px;height:62px;border-radius:11px;overflow:hidden;background:var(--sl-blue-d);cursor:pointer;border:2px solid transparent;transition:border-color 200ms,opacity 200ms;opacity:.62}
.sl-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sl-thumb.on{border-color:var(--sl-blue);opacity:1}
.sl-thumb-3d{background:linear-gradient(155deg,#1B2185 0%,#050828 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--sl-platinum)}
.sl-thumb-3d svg{width:19px;height:19px}
.sl-thumb-3d span{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.08em}
@media(min-width:1000px){.sl-thumb{flex:0 0 104px;height:76px}}

/* --- маркетплейсы ---
   Акцентные: сапфировая обводка, светлая заливка с мягким сапфировым свечением,
   на наведении заливаются сапфиром целиком и стрелка уходит вправо-вверх.
   Заметно, но с «Позвонить» не спорит: та сплошная и почти чёрная, эти —
   контурные, так читается разный вес действия. */
.sl-market{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.sl-market-link{flex:1 1 170px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;border-radius:999px;background:linear-gradient(180deg,#fff 0%,var(--sl-platinum-pale) 100%);border:1.5px solid var(--sl-platinum-d);color:var(--sl-blue);font-family:var(--font-sans);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap;box-shadow:0 6px 18px rgba(27,33,133,.14);transition:all 200ms cubic-bezier(.2,0,0,1)}
.sl-market-link:hover,.sl-market-link:focus-visible{background:var(--sl-blue);border-color:var(--sl-blue);color:#fff;transform:translateY(-1px);box-shadow:0 14px 32px rgba(27,33,133,.34)}
.sl-market-link svg{width:15px;height:15px;opacity:.9;transition:transform 200ms cubic-bezier(.2,0,0,1)}
.sl-market-link:hover svg{transform:translate(2px,-2px)}

/* --- facts card --- */
.sl-facts{background:#fff;border:1px solid var(--sl-line);border-radius:20px;padding:24px 22px;box-shadow:var(--sl-shadow-s);display:flex;flex-direction:column}
@media(min-width:1000px){.sl-facts{padding:30px 28px;border-radius:24px;height:100%}}
.sl-owner{display:inline-flex;align-items:center;gap:8px;background:var(--sl-ok-bg);color:var(--sl-ok);padding:7px 14px;border-radius:999px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:14px}
.sl-owner svg{width:13px;height:13px}
.sl-price{font-family:var(--font-display);font-weight:800;font-size:clamp(30px,8vw,40px);letter-spacing:-.025em;line-height:1;color:var(--sl-ink);font-feature-settings:"tnum" 1}
.sl-price-sub{font-family:var(--font-mono);font-size:12px;color:var(--sl-mute);margin-top:7px;letter-spacing:.03em}
.sl-addr{margin:18px 0 0;padding-top:18px;border-top:1px solid var(--sl-line)}
.sl-addr-jk{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.015em;color:var(--sl-ink);margin:0 0 6px}
.sl-addr-street{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.45;color:var(--sl-mute)}
.sl-addr-street svg{width:16px;height:16px;flex:0 0 16px;margin-top:2px;color:var(--sl-blue)}
.sl-keys{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--sl-line);border-radius:14px;overflow:hidden;margin-top:20px}
.sl-key{background:#fff;padding:14px 15px}
.sl-key-k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--sl-mute2);margin-bottom:5px}
.sl-key-v{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.015em;color:var(--sl-ink);line-height:1.1}
.sl-key-v small{font-family:var(--font-sans);font-weight:600;font-size:12px;color:var(--sl-mute);margin-left:2px}
.sl-facts-cta{display:flex;flex-direction:column;gap:9px;margin-top:auto;padding-top:20px}
.sl-facts-note{margin:14px 0 0;font-size:12px;line-height:1.5;color:var(--sl-mute);text-align:center}

/* --- контактное лицо --- */
.sl-contact{display:flex;align-items:center;gap:9px;padding:12px 14px;margin-bottom:11px;background:var(--sl-bg2);border-radius:13px}
.sl-contact svg{width:16px;height:16px;flex:0 0 16px;color:var(--sl-blue)}
.sl-contact .k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--sl-mute2);display:block;margin-bottom:2px}
.sl-contact .v{font-family:var(--font-display);font-weight:800;font-size:16px;letter-spacing:-.01em;color:var(--sl-ink);line-height:1.1}

/* ============================================================
   SECTIONS
   ============================================================ */
.sl-sec{padding:46px 0}
@media(min-width:1000px){.sl-sec{padding:64px 0}}
.sl-sec-alt{background:var(--sl-bg2)}
.sl-head h2{font-family:var(--font-display);font-weight:800;font-size:clamp(25px,5.4vw,36px);letter-spacing:-.022em;line-height:1.1;margin:11px 0 0;color:var(--sl-ink);max-width:24ch;text-wrap:balance}
.sl-head p{margin:12px 0 0;max-width:62ch;font-size:15px;line-height:1.62;color:var(--sl-mute);text-wrap:pretty}

/* ============================================================
   БЕЗ КОМИССИИ — доверие
   ============================================================ */
.sl-direct{background:linear-gradient(155deg,#1B2185 0%,#050828 100%);color:var(--sl-bg);border-radius:22px;padding:30px 26px;position:relative;overflow:hidden;isolation:isolate;box-shadow:var(--sl-shadow-b)}
@media(min-width:900px){.sl-direct{padding:44px 46px;border-radius:28px;display:grid;grid-template-columns:1fr 1.05fr;gap:44px;align-items:center}}
.sl-direct-crystal{position:absolute;right:-90px;bottom:-110px;width:400px;height:400px;opacity:.12;color:var(--sl-platinum);pointer-events:none;z-index:0}
.sl-direct>div{position:relative;z-index:1}
.sl-direct .cr-eyebrow{color:var(--sl-platinum)}
.sl-direct .cr-eyebrow::before{background:var(--sl-platinum)}
.sl-direct h2{font-family:var(--font-display);font-weight:800;font-size:clamp(23px,5vw,32px);letter-spacing:-.02em;line-height:1.1;margin:12px 0 12px;color:#fff;text-wrap:balance;max-width:20ch}
.sl-direct p{margin:0;font-size:14.5px;line-height:1.62;color:rgba(242,244,250,.82);max-width:48ch}
.sl-direct-zero{display:flex;align-items:baseline;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid rgba(201,205,227,.22)}
.sl-direct-zero .n{font-family:var(--font-display);font-weight:800;font-size:clamp(38px,9vw,54px);letter-spacing:-.03em;line-height:1;color:var(--sl-platinum)}
.sl-direct-zero .t{font-size:13.5px;line-height:1.4;color:rgba(242,244,250,.75);max-width:20ch}
.sl-direct-list{display:grid;gap:1px;background:rgba(201,205,227,.18);border-radius:16px;overflow:hidden;margin-top:22px}
@media(min-width:900px){.sl-direct-list{margin-top:0}}
.sl-direct-item{background:#0E1354;padding:17px 19px;display:flex;gap:13px;align-items:flex-start}
.sl-direct-item svg{width:17px;height:17px;flex:0 0 17px;margin-top:2px;color:var(--sl-platinum)}
.sl-direct-item h4{font-family:var(--font-display);font-weight:700;font-size:15px;margin:0 0 4px;color:#fff}
.sl-direct-item p{margin:0;font-size:13px;line-height:1.5;color:rgba(242,244,250,.7);max-width:none}

/* --- описание --- */
.sl-about-body{display:grid;gap:26px;margin-top:26px}
@media(min-width:900px){.sl-about-body{grid-template-columns:1.25fr 1fr;gap:32px;align-items:stretch}}
.sl-about-text p{margin:0 0 14px;font-size:15px;line-height:1.66;color:var(--sl-mute);text-wrap:pretty}
.sl-about-text p:last-child{margin-bottom:0}
.sl-about-text strong{color:var(--sl-ink);font-weight:700}
.sl-rooms{background:#fff;border:1px solid var(--sl-line);border-radius:20px;padding:22px 24px;display:flex;flex-direction:column}
.sl-rooms h3{font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-.01em;margin:0 0 6px;color:var(--sl-ink)}
.sl-room-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--sl-line)}
.sl-room-row:last-of-type{border-bottom:none}
.sl-room-n{font-size:14.5px;color:var(--sl-ink);font-weight:600}
.sl-room-a{font-family:var(--font-mono);font-size:13px;color:var(--sl-mute);font-feature-settings:"tnum" 1;white-space:nowrap}
.sl-room-total{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-top:auto;padding-top:14px;border-top:1px solid var(--sl-line2)}
.sl-room-total .k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--sl-mute2)}
.sl-room-total .v{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--sl-blue);font-feature-settings:"tnum" 1}

/* --- фичи --- */
.sl-feats{display:grid;gap:10px;margin-top:28px}
@media(min-width:620px){.sl-feats{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.sl-feats{grid-template-columns:repeat(4,1fr);gap:12px}}
.sl-feat{background:#fff;border:1px solid var(--sl-line);border-radius:16px;padding:20px;display:flex;gap:13px;align-items:flex-start}
.sl-feat-ico{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:var(--sl-bg2);color:var(--sl-blue);display:inline-flex;align-items:center;justify-content:center}
.sl-feat-ico svg{width:19px;height:19px}
.sl-feat h4{font-family:var(--font-display);font-weight:800;font-size:15.5px;letter-spacing:-.01em;margin:1px 0 5px;color:var(--sl-ink)}
.sl-feat p{margin:0;font-size:13.5px;line-height:1.5;color:var(--sl-mute)}

/* ============================================================
   ПО ПОМЕЩЕНИЯМ — карточка комнаты (префикс .sl-rm-)
   Медиа слева, состав справа. Всё кликабельно в лайтбокс.
   ============================================================ */
.sl-rm-stack{display:grid;gap:14px;margin-top:26px}
@media(min-width:1000px){.sl-rm-stack{gap:18px}}
.sl-rm{background:#fff;border:1px solid var(--sl-line);border-radius:20px;overflow:hidden;box-shadow:var(--sl-shadow-s)}
@media(min-width:900px){.sl-rm{border-radius:24px;display:grid;grid-template-columns:1.1fr 1fr;align-items:stretch}}
@media(min-width:1180px){.sl-rm{grid-template-columns:1.18fr 1fr}}

/* медиа-колонка */
.sl-rm-media{display:flex;flex-direction:column;gap:6px;padding:6px;background:var(--sl-bg2);min-width:0}
.sl-rm-hero{position:relative;width:100%;aspect-ratio:4/3;border-radius:15px;overflow:hidden;background:var(--sl-blue-d);cursor:zoom-in;border:0;padding:0;display:block}
@media(min-width:900px){.sl-rm-hero{aspect-ratio:auto;flex:1 1 auto;min-height:280px}}
.sl-rm-hero img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 400ms cubic-bezier(.2,0,0,1)}
.sl-rm-hero:hover img{transform:scale(1.03)}
.sl-rm-zoom{position:absolute;right:11px;bottom:11px;z-index:2;display:inline-flex;align-items:center;gap:7px;background:rgba(5,8,40,.55);backdrop-filter:blur(8px);color:#fff;padding:7px 13px;border-radius:999px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;border:1px solid rgba(201,205,227,.22);pointer-events:none}
.sl-rm-zoom svg{width:13px;height:13px}
.sl-rm-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sl-rm-strip button{position:relative;aspect-ratio:4/3;border-radius:11px;overflow:hidden;background:var(--sl-blue-d);cursor:zoom-in;border:0;padding:0;display:block}
.sl-rm-strip img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity 200ms}
.sl-rm-strip button:hover img{opacity:.82}

/* текстовая колонка */
.sl-rm-body{padding:22px 22px 24px;display:flex;flex-direction:column;min-width:0}
@media(min-width:900px){.sl-rm-body{padding:30px 30px 32px}}
.sl-rm-title{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}
.sl-rm-title h3{font-family:var(--font-display);font-weight:800;font-size:clamp(20px,4.4vw,25px);letter-spacing:-.02em;line-height:1.1;margin:0;color:var(--sl-ink)}
.sl-rm-area{font-family:var(--font-mono);font-size:12.5px;color:var(--sl-blue);background:var(--sl-bg2);padding:5px 11px;border-radius:999px;font-feature-settings:"tnum" 1;white-space:nowrap}
.sl-rm-lead{margin:10px 0 0;font-size:14px;line-height:1.6;color:var(--sl-mute);text-wrap:pretty}
.sl-rm-groups{display:grid;gap:16px;margin-top:18px}
.sl-rm-grp>.h{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sl-mute2);margin-bottom:9px}
.sl-rm-grp>.h svg{width:14px;height:14px;color:var(--sl-blue)}
.sl-rm-grp>.h::after{content:"";flex:1;height:1px;background:var(--sl-line)}
.sl-rm-grp ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
@media(min-width:560px){.sl-rm-grp ul{grid-template-columns:1fr 1fr;gap:7px 16px}}
@media(min-width:900px){.sl-rm-grp ul{grid-template-columns:1fr}}
@media(min-width:1180px){.sl-rm-grp ul{grid-template-columns:1fr 1fr;gap:7px 16px}}
.sl-rm-grp li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.45;color:var(--sl-ink)}
.sl-rm-grp li svg{width:14px;height:14px;flex:0 0 14px;margin-top:3px;color:var(--sl-ok)}
.sl-rm-grp li.wide{grid-column:1/-1}

/* ============================================================
   3D — планировка
   ============================================================ */
.sl-3d-shell{margin-top:26px;border:1px solid var(--sl-line);border-radius:20px;overflow:hidden;background:linear-gradient(165deg,#F2F4FA 0%,#DCDFEE 100%);box-shadow:var(--sl-shadow-s);position:relative}
@media(min-width:1000px){.sl-3d-shell{border-radius:26px}}
.sl-3d-frame{display:block;width:100%;height:clamp(330px,58vh,560px);border:0;background:transparent}
.sl-3d-hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:3;pointer-events:none;display:inline-flex;align-items:center;gap:8px;background:rgba(5,8,40,.55);backdrop-filter:blur(8px);color:#fff;padding:7px 15px;border-radius:999px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;border:1px solid rgba(201,205,227,.22);transition:opacity 400ms ease}
.sl-3d-hint svg{width:14px;height:14px}
/* Заставка вместо модели: 11 МБ не уходят в сеть, пока человек сам не попросит */
.sl-3d-poster{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;width:100%;height:clamp(330px,58vh,560px);padding:24px;border:0;background:transparent;cursor:pointer;text-align:center;font-family:var(--font-sans);transition:background 200ms}
.sl-3d-poster:hover{background:rgba(201,205,227,.22)}
.sl-3d-poster .ico{width:58px;height:58px;border-radius:17px;background:linear-gradient(155deg,#1B2185 0%,#050828 100%);color:var(--sl-platinum);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--sl-shadow-s)}
.sl-3d-poster .ico svg{width:27px;height:27px}
.sl-3d-poster .t{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.015em;color:var(--sl-ink)}
.sl-3d-poster .s{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--sl-mute);max-width:34ch;line-height:1.5}
.sl-3d-note{margin-top:14px;font-size:12.5px;line-height:1.55;color:var(--sl-mute);display:flex;gap:11px;align-items:flex-start;max-width:80ch}
.sl-3d-note .bar{width:3px;align-self:stretch;background:var(--sl-blue);border-radius:999px;flex:0 0 3px}

/* ============================================================
   МЕБЕЛЬ В ПОДАРОК
   ============================================================ */
.sl-gift{background:#fff;border:1px solid var(--sl-line);border-radius:22px;padding:28px 26px;margin-top:26px;box-shadow:var(--sl-shadow-s)}
@media(min-width:900px){.sl-gift{padding:40px 44px;border-radius:28px;display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:center}}
.sl-gift h3{font-family:var(--font-display);font-weight:800;font-size:clamp(21px,4.6vw,28px);letter-spacing:-.02em;line-height:1.12;margin:12px 0 12px;color:var(--sl-ink);text-wrap:balance}
.sl-gift p{margin:0;font-size:14.5px;line-height:1.6;color:var(--sl-mute);max-width:46ch}
.sl-gift-list{display:grid;gap:1px;background:var(--sl-line);border-radius:16px;overflow:hidden;margin-top:22px}
@media(min-width:900px){.sl-gift-list{margin-top:0;grid-template-columns:1fr 1fr}}
.sl-gift-item{background:var(--sl-bg);padding:14px 16px;display:flex;align-items:center;gap:11px}
.sl-gift-item svg{width:15px;height:15px;flex:0 0 15px;color:var(--sl-ok)}
.sl-gift-item span{font-size:13.5px;font-weight:600;color:var(--sl-ink);line-height:1.35}

/* ============================================================
   ЮРИДИЧЕСКАЯ ЧИСТОТА
   ============================================================ */
.sl-legal{display:grid;gap:10px;margin-top:26px}
@media(min-width:680px){.sl-legal{grid-template-columns:1fr 1fr;gap:12px}}
.sl-legal-item{background:#fff;border:1px solid var(--sl-line);border-radius:16px;padding:20px 22px;display:flex;gap:14px;align-items:flex-start}
.sl-legal-ico{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:var(--sl-ok-bg);color:var(--sl-ok);display:inline-flex;align-items:center;justify-content:center}
.sl-legal-ico svg{width:20px;height:20px}
.sl-legal-item h4{font-family:var(--font-display);font-weight:800;font-size:15.5px;letter-spacing:-.01em;margin:1px 0 5px;color:var(--sl-ink)}
.sl-legal-item p{margin:0;font-size:13.5px;line-height:1.52;color:var(--sl-mute)}

/* ============================================================
   CTA
   ============================================================ */
.sl-cta{background:linear-gradient(155deg,#1B2185 0%,#0B1052 60%,#050828 100%);color:var(--sl-bg);border-radius:24px;padding:34px 26px;text-align:center;box-shadow:var(--sl-shadow-b)}
@media(min-width:900px){.sl-cta{padding:52px 48px;border-radius:30px}}
.sl-cta .cr-eyebrow{color:var(--sl-platinum);justify-content:center}
.sl-cta .cr-eyebrow::before{background:var(--sl-platinum)}
.sl-cta h2{font-family:var(--font-display);font-weight:800;font-size:clamp(24px,5.6vw,36px);letter-spacing:-.022em;line-height:1.1;margin:13px auto 12px;color:#fff;max-width:24ch;text-wrap:balance}
.sl-cta p{margin:0 auto;font-size:15px;line-height:1.6;color:rgba(242,244,250,.82);max-width:52ch}
.sl-cta-actions{display:flex;flex-direction:column;gap:10px;margin-top:26px;align-items:stretch}
@media(min-width:620px){.sl-cta-actions{flex-direction:row;justify-content:center;flex-wrap:wrap}}
.sl-cta-phone{display:inline-block;margin-top:20px;font-family:var(--font-display);font-weight:800;font-size:clamp(20px,5vw,26px);letter-spacing:-.01em;color:#fff;text-decoration:none}
.sl-cta-phone:hover{color:var(--sl-platinum)}
.sl-cta-who{margin:9px 0 0;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;color:rgba(201,205,227,.85)}

/* ============================================================
   STICKY MOBILE BAR
   ============================================================ */
.sl-sticky{position:fixed;left:0;right:0;bottom:0;z-index:900;background:rgba(242,244,250,.94);backdrop-filter:blur(14px);border-top:1px solid var(--sl-line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;box-shadow:0 -8px 28px rgba(11,16,82,.12)}
.sl-sticky-price{flex:1;min-width:0}
.sl-sticky-price .p{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.02em;color:var(--sl-ink);line-height:1.05;font-feature-settings:"tnum" 1}
.sl-sticky-price .s{font-family:var(--font-mono);font-size:10px;color:var(--sl-mute);margin-top:2px;letter-spacing:.04em}
.sl-sticky-btns{display:flex;gap:8px;flex:0 0 auto}
.sl-sticky-btns .sl-btn{padding:12px 18px;font-size:14px}
.sl-sticky-btns .sl-sticky-ico{width:46px;height:46px;flex:0 0 46px;padding:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}
.sl-sticky-ico svg{width:20px;height:20px}
@media(min-width:1000px){.sl-sticky{display:none}}
.sl-wrap{padding-bottom:78px}
@media(min-width:1000px){.sl-wrap{padding-bottom:0}}

/* ============================================================
   LIGHTBOX
   ============================================================ */
.sl-lb{position:fixed;inset:0;z-index:9999;background:rgba(5,8,40,.95);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px}
.sl-lb-img{max-width:94vw;max-height:84vh;border-radius:8px;object-fit:contain;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.sl-lb-cap{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:var(--sl-platinum);font-family:var(--font-mono);font-size:11.5px;letter-spacing:.05em;padding:0 16px}
.sl-lb-btn{position:absolute;width:48px;height:48px;border-radius:999px;background:rgba(201,205,227,.12);border:1px solid rgba(201,205,227,.28);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 200ms}
.sl-lb-btn:hover{background:rgba(201,205,227,.26)}
.sl-lb-btn svg{width:22px;height:22px}
.sl-lb-close{top:18px;right:18px}
.sl-lb-prev{left:14px;top:50%;transform:translateY(-50%)}
.sl-lb-next{right:14px;top:50%;transform:translateY(-50%)}
