/* Integration shell only. Visual declarations below are the v22 source CSS, selector-scoped without changing values. */
body { margin: 0; font-family: 'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif !important; }
html { scroll-behavior: smooth; }
#sf-cloud-page { display: contents; }
#sf-cloud-page button, #sf-cloud-page input, #sf-cloud-page select, #sf-cloud-page textarea { font-family: inherit !important; }
#sf-cloud-page {
  --navy-950: #071f37;
  --navy-900: #0a2b4a;
  --navy-850: #0b3154;
  --navy-800: #0d3d67;
  --navy-700: #174f7d;
  --ink: #0a2947;
  --text: #596b7d;
  --muted: #8795a3;
  --line: #dfe7eb;
  --line-soft: #edf2f4;
  --surface: #ffffff;
  --surface-soft: #f6f8f9;
  --surface-blue: #eef5f8;
  --green: #15987d;
  --green-deep: #0f755f;
  --orange: #f1812d;
  --blue: #145b91;
  --container: 1320px;
  --pad: 32px;
  --r1: 10px;
  --r2: 18px;
  --r3: 26px;
  --s1: 4px;
  --s2: 8px;
  --s3: 12px;
  --s4: 16px;
  --s5: 24px;
  --s6: 32px;
  --s7: 48px;
  --s8: 64px;
  --s9: 80px;
  --s10: 104px;
  --shadow-soft: 0 24px 64px rgba(8, 36, 61, .08);
}

#sf-cloud-page * { box-sizing: border-box; }
#sf-cloud-page { scroll-behavior: smooth; }
#sf-cloud-page {
  margin: 0;
  color: var(--ink);
  background: #fff;
  font-family: 'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
#sf-cloud-page button, #sf-cloud-page input, #sf-cloud-page select, #sf-cloud-page textarea { font: inherit; }
#sf-cloud-page button { color: inherit; }
#sf-cloud-page a { color: inherit; text-decoration: none; }
#sf-cloud-page img { display: block; max-width: 100%; }
#sf-cloud-page button { border: 0; background: none; padding: 0; }

#sf-cloud-page .container { width: min(calc(100% - (var(--pad) * 2)), var(--container)); margin-inline: auto; }
#sf-cloud-page .skip-link { position: fixed; z-index: 1000; left: 16px; top: 16px; transform: translateY(-160%); padding: 10px 14px; border-radius: 8px; background: #fff; color: var(--ink); box-shadow: var(--shadow-soft); }
#sf-cloud-page .skip-link:focus { transform: translateY(0); }

/* Core type + rhythm */
#sf-cloud-page h1, #sf-cloud-page h2, #sf-cloud-page h3, #sf-cloud-page p { margin-top: 0; }
#sf-cloud-page h1, #sf-cloud-page h2, #sf-cloud-page h3 { text-wrap: balance; }
#sf-cloud-page .eyebrow { margin: 0 0 var(--s4); color: var(--green-deep); font-size: 12px; line-height: 1; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
#sf-cloud-page .eyebrow--light { color: rgba(255,255,255,.68); }
#sf-cloud-page .eyebrow--line { display: inline-flex; align-items: center; gap: 14px; }
#sf-cloud-page .eyebrow--line::before, #sf-cloud-page .eyebrow--line::after { content: ""; width: 30px; height: 1px; background: currentColor; opacity: .45; }
#sf-cloud-page .section { padding: var(--s10) 0; }
#sf-cloud-page .section-heading { margin-bottom: var(--s8); }
#sf-cloud-page .section-heading h2 { margin: 0; font-size: clamp(34px, 3vw, 46px); line-height: 1.08; letter-spacing: -.038em; font-weight: 760; }
#sf-cloud-page .section-heading--split { display: grid; grid-template-columns: minmax(0, .82fr) minmax(420px, .66fr); gap: 96px; align-items: end; }
#sf-cloud-page .section-heading--split > p { margin: 0 0 2px; color: var(--text); font-size: 16px; line-height: 1.62; }
#sf-cloud-page .section-heading--center { text-align: center; }
#sf-cloud-page .section-heading--center h2 { max-width: 820px; margin-inline: auto; }

/* Utility + header */
#sf-cloud-page .utility-bar { color: rgba(255,255,255,.78); background: var(--navy-950); font-size: 12px; }
#sf-cloud-page .utility-bar__inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
#sf-cloud-page .utility-bar__status, #sf-cloud-page .utility-bar__contacts { display: flex; align-items: center; gap: 18px; }
#sf-cloud-page .utility-bar__status strong { color: #fff; font-weight: 700; }
#sf-cloud-page .utility-bar__status a + a { position: relative; padding-left: 18px; }
#sf-cloud-page .utility-bar__status a + a::before { content: ""; position: absolute; left: 0; top: 50%; width: 5px; height: 5px; border-radius: 50%; background: var(--green); transform: translateY(-50%); }
#sf-cloud-page .utility-bar a { transition: color .2s ease; }
#sf-cloud-page .utility-bar a:hover { color: #fff; }
#sf-cloud-page .utility-bar__contacts a + a { position: relative; padding-left: 18px; }
#sf-cloud-page .utility-bar__contacts a + a::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 12px; background: rgba(255,255,255,.18); transform: translateY(-50%); }
#sf-cloud-page .utility-bar__contacts span { color: rgba(255,255,255,.48); }
#sf-cloud-page .site-header { position: relative; z-index: 50; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--line-soft); }
#sf-cloud-page .site-header__inner { min-height: 86px; display: grid; grid-template-columns: 236px 1fr auto; align-items: center; gap: 36px; }
#sf-cloud-page .brand img { width: 184px; height: auto; }
#sf-cloud-page .site-nav { display: flex; justify-content: center; gap: 34px; color: #40566a; font-size: 14px; font-weight: 650; }
#sf-cloud-page .site-nav a { position: relative; padding: 8px 0; }
#sf-cloud-page .site-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 2px; height: 1px; background: var(--green); transition: right .22s ease; }
#sf-cloud-page .site-nav a:hover::after { right: 0; }
/* Bitrix template isolation: keep the source navigation hover exactly as in v22.
   The site template must not add a text underline or recolor these links. */
#sf-cloud-page .site-nav a,
#sf-cloud-page .site-nav a:visited,
#sf-cloud-page .site-nav a:hover,
#sf-cloud-page .site-nav a:focus {
  color: inherit !important;
  text-decoration: none !important;
}
#sf-cloud-page .header-actions { display: flex; align-items: center; gap: 22px; }
#sf-cloud-page .header-actions__link { color: var(--navy-800); font-size: 13px; font-weight: 700; white-space: nowrap; }

#sf-cloud-page .button { min-height: 52px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; border-radius: var(--r1); font-size: 14px; line-height: 1; font-weight: 780; letter-spacing: .005em; cursor: pointer; transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease; }
#sf-cloud-page .button:hover { transform: translateY(-1px); }
#sf-cloud-page .button--compact { min-height: 48px; padding-inline: 20px; }
#sf-cloud-page .button--primary { color: #fff; background: linear-gradient(135deg, #169f82 0%, #0f7b65 100%); box-shadow: 0 10px 26px rgba(15, 123, 101, .18); }
#sf-cloud-page .button--primary:hover { box-shadow: 0 13px 32px rgba(15, 123, 101, .25); }
#sf-cloud-page .button--light { color: var(--navy-900); background: #fff; box-shadow: 0 12px 34px rgba(0,0,0,.08); }
#sf-cloud-page .button span, #sf-cloud-page .text-link span { font-size: 1.15em; transform: translateY(-1px); }
#sf-cloud-page .text-link { display: inline-flex; align-items: center; gap: 10px; color: var(--navy-700); font-size: 14px; font-weight: 780; cursor: pointer; }
#sf-cloud-page .text-link span { transition: transform .18s ease; }
#sf-cloud-page .text-link:hover span { transform: translate(4px,-1px); }
#sf-cloud-page .text-link--large { margin-top: var(--s6); font-size: 15px; }
#sf-cloud-page .text-link--light { color: #fff; }

/* Hero */
#sf-cloud-page .hero { position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 86% 14%, rgba(52,132,164,.28), transparent 30%), linear-gradient(118deg, var(--navy-950) 0%, var(--navy-850) 55%, #12526e 100%); }
#sf-cloud-page .hero::before { content: ""; position: absolute; width: 560px; height: 560px; right: -180px; bottom: -270px; border-radius: 50%; background: rgba(255,255,255,.035); filter: blur(1px); }
#sf-cloud-page .hero__gridlines { position: absolute; inset: 0; opacity: .08; background-image: linear-gradient(to right, transparent calc(100% - 1px), #fff 1px), linear-gradient(to bottom, transparent calc(100% - 1px), #fff 1px); background-size: calc(100% / 6) 100%, 100% 180px; pointer-events: none; }
#sf-cloud-page .hero__inner { position: relative; z-index: 1; min-height: 670px; padding: 82px 0 86px; display: grid; grid-template-columns: minmax(0, .86fr) minmax(620px, 1.14fr); gap: 76px; align-items: center; }
#sf-cloud-page .hero__copy { max-width: 500px; }
#sf-cloud-page .hero h1 { max-width: 570px; margin: 0 0 var(--s6); font-size: clamp(44px, 3.8vw, 58px); line-height: 1.02; letter-spacing: -.048em; font-weight: 760; }
#sf-cloud-page .hero-offer { width: fit-content; margin-bottom: var(--s5); display: flex; align-items: center; gap: 16px; }
#sf-cloud-page .hero-offer__number { font-size: 68px; line-height: .86; font-weight: 760; letter-spacing: -.06em; }
#sf-cloud-page .hero-offer__copy { padding-top: 3px; display: grid; gap: 1px; }
#sf-cloud-page .hero-offer__copy strong { font-size: 14px; line-height: 1; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; }
#sf-cloud-page .hero-offer__copy em { font-size: 18px; line-height: 1.2; font-style: normal; font-weight: 820; letter-spacing: .09em; }
#sf-cloud-page .hero__note { max-width: 470px; margin: 0 0 var(--s6); color: rgba(255,255,255,.54); font-size: 11px; line-height: 1.55; font-weight: 650; letter-spacing: .055em; }
#sf-cloud-page .demo { position: relative; padding-left: 44px; }
#sf-cloud-page .demo::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 1px; background: linear-gradient(to bottom, rgba(255,255,255,.32), rgba(255,255,255,.06)); }
#sf-cloud-page .demo::after { content: ""; position: absolute; left: 0; top: 0; width: 180px; height: 4px; background: linear-gradient(90deg, var(--blue), var(--green), var(--orange)); transform: translateY(-1px); }
#sf-cloud-page .demo__intro { margin: 40px 0 34px; display: flex; align-items: center; gap: 20px; }
#sf-cloud-page .demo__number { font-size: 70px; line-height: .9; font-weight: 760; letter-spacing: -.06em; }
#sf-cloud-page .demo__intro h2 { max-width: 260px; margin: 0; color: rgba(255,255,255,.72); font-size: 17px; line-height: 1.3; letter-spacing: .12em; font-weight: 780; }
#sf-cloud-page .demo-form { display: grid; gap: 22px; }
#sf-cloud-page .demo-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); column-gap: 20px; row-gap: 22px; align-items: start; }
#sf-cloud-page .field { display: grid; gap: 8px; }
#sf-cloud-page .field > span { color: #6f7f8e; font-size: 11px; line-height: 1; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
#sf-cloud-page .field input, #sf-cloud-page .field select, #sf-cloud-page .field textarea { width: 100%; min-width: 0; border: 1px solid #d7e0e5; border-radius: var(--r1); outline: none; color: var(--ink); background: #fff; transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease; }
#sf-cloud-page .field input, #sf-cloud-page .field select { height: 56px; padding: 0 16px; }
#sf-cloud-page .field textarea { min-height: 112px; padding: 14px 16px; resize: vertical; }
#sf-cloud-page .field input::placeholder, #sf-cloud-page .field textarea::placeholder { color: #9aa6b0; }
#sf-cloud-page .field input:focus, #sf-cloud-page .field select:focus, #sf-cloud-page .field textarea:focus { border-color: rgba(21,152,125,.72); box-shadow: 0 0 0 3px rgba(21,152,125,.09); }
#sf-cloud-page .field small { display: block; margin-top: 2px; color: rgba(255,255,255,.46); font-size: 11px; line-height: 1.45; }
#sf-cloud-page .field--dark > span { color: rgba(255,255,255,.54); }
#sf-cloud-page .field--dark input, #sf-cloud-page .field--dark select, #sf-cloud-page .field--dark textarea { color: #fff; border-color: rgba(255,255,255,.18); background: rgba(3,28,50,.28); }
#sf-cloud-page .field--dark input::placeholder, #sf-cloud-page .field--dark textarea::placeholder, #sf-cloud-page .field--dark select { color: rgba(255,255,255,.5); }
#sf-cloud-page .field--dark input:focus, #sf-cloud-page .field--dark select:focus, #sf-cloud-page .field--dark textarea:focus { border-color: rgba(255,255,255,.42); box-shadow: 0 0 0 3px rgba(255,255,255,.06); }
#sf-cloud-page .field--dark select option { color: var(--ink); background: #fff; }
#sf-cloud-page .demo-form__footer { display: grid; grid-template-columns: 140px minmax(0,1fr) 210px; gap: 18px; align-items: end; }
#sf-cloud-page .verify input { height: 50px; }
#sf-cloud-page .consent { display: flex; align-items: flex-start; gap: 10px; color: #647586; font-size: 12px; line-height: 1.45; }
#sf-cloud-page .consent input { flex: 0 0 auto; width: 17px; height: 17px; margin: 1px 0 0; accent-color: var(--green); }
#sf-cloud-page .consent a { text-decoration: underline; text-underline-offset: 3px; }
#sf-cloud-page .consent--dark { color: rgba(255,255,255,.58); }
#sf-cloud-page .consent--dark a { color: #fff; }
#sf-cloud-page .demo-form__submit { width: 210px; min-height: 50px; }

/* Products - clean shelf, no cards */
#sf-cloud-page .products { position: relative; padding: 70px 0 76px; background: linear-gradient(180deg, #fff 0%, #f7f9fa 100%); border-bottom: 1px solid var(--line-soft); }
#sf-cloud-page .products::before { content: ""; position: absolute; left: 50%; top: 0; width: min(calc(100% - (var(--pad) * 2)), var(--container)); height: 1px; background: linear-gradient(90deg, transparent, var(--line), transparent); transform: translateX(-50%); }
#sf-cloud-page .products__rail { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 36px; }
#sf-cloud-page .product { position: relative; min-width: 0; display: grid; grid-template-rows: 144px auto 1fr auto; align-items: start; }
#sf-cloud-page .product__visual { position: relative; height: 132px; display: grid; place-items: center; }
#sf-cloud-page .product__visual::before { content: ""; position: absolute; width: 108px; height: 108px; border-radius: 50%; background: radial-gradient(circle, rgba(20,91,145,.09), rgba(21,152,125,.035) 58%, transparent 72%); }
#sf-cloud-page .product__visual > span { position: absolute; z-index: 0; color: rgba(10,41,71,.06); font-size: 56px; line-height: 1; font-weight: 850; letter-spacing: -.08em; }
#sf-cloud-page .product__visual img { position: relative; z-index: 1; max-width: 112px; max-height: 116px; object-fit: contain; mix-blend-mode: multiply; }
#sf-cloud-page .product__copy h2 { min-height: 42px; margin: 0 0 8px; font-size: 17px; line-height: 1.24; letter-spacing: -.018em; font-weight: 760; }
#sf-cloud-page .product__copy p { margin: 0; color: var(--text); font-size: 14px; line-height: 1.4; }
#sf-cloud-page .product .text-link { margin-top: 28px; justify-self: start; }

/* Promos - editorial full-width compositions */
#sf-cloud-page .promos { padding: var(--s10) 0; background: #fff; }
#sf-cloud-page .promos__inner { display: grid; grid-template-columns: 1.08fr .92fr; gap: 24px; }
#sf-cloud-page .promo { position: relative; overflow: hidden; min-height: 430px; padding: 54px 56px; border-radius: var(--r3); }
#sf-cloud-page .promo__index { position: absolute; right: 32px; top: 28px; color: rgba(255,255,255,.26); font-size: 11px; line-height: 1; font-weight: 800; letter-spacing: .18em; }
#sf-cloud-page .promo__content { position: relative; z-index: 2; max-width: 560px; }
#sf-cloud-page .promo h2 { margin: 0 0 18px; font-size: clamp(30px, 3vw, 42px); line-height: 1.08; letter-spacing: -.04em; font-weight: 760; }
#sf-cloud-page .promo p { max-width: 540px; margin: 10px 0; font-size: 15px; line-height: 1.6; }
#sf-cloud-page .promo--gift { color: #fff; background: radial-gradient(circle at 84% 28%, rgba(255,255,255,.16), transparent 24%), linear-gradient(125deg, #0a2a48 0%, #114c71 68%, #1d6577 100%); }
#sf-cloud-page .promo--gift::after { content: ""; position: absolute; right: -90px; bottom: -130px; width: 360px; height: 360px; border-radius: 50%; border: 1px solid rgba(255,255,255,.08); box-shadow: 0 0 0 52px rgba(255,255,255,.02), 0 0 0 104px rgba(255,255,255,.018); }
#sf-cloud-page .promo--gift p { color: rgba(255,255,255,.68); }
#sf-cloud-page .promo__phones { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 8px 18px; align-items: baseline; }
#sf-cloud-page .promo__phones span { width: 100%; color: rgba(255,255,255,.42); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
#sf-cloud-page .promo__phones a { color: #fff; font-size: 15px; font-weight: 760; }
#sf-cloud-page .promo__phones small { color: rgba(255,255,255,.45); font-size: 10px; font-weight: 500; }
#sf-cloud-page .promo--server { background: linear-gradient(145deg, #f2f6f7 0%, #ffffff 80%); box-shadow: inset 0 0 0 1px #e5ebee; }
#sf-cloud-page .promo--server .promo__index { color: #97a4af; }
#sf-cloud-page .promo--server p { color: var(--text); }
#sf-cloud-page .promo--server a { color: var(--navy-700); font-weight: 760; }
#sf-cloud-page .promo__price { margin-top: 22px !important; color: var(--ink) !important; font-size: 20px !important; line-height: 1.3 !important; font-weight: 780; }
#sf-cloud-page .promo__icon { position: absolute; z-index: 1; right: 34px; bottom: 28px; opacity: .72; }
#sf-cloud-page .promo__icon--gift { width: 108px; filter: saturate(.9); }
#sf-cloud-page .promo__icon--server { width: 96px; opacity: .62; }

/* Tariffs */
#sf-cloud-page .tariffs { background: #fff; }
#sf-cloud-page .tariff-shell { overflow-x: auto; overscroll-behavior-x: contain; border-top: 1px solid #cfd9de; border-bottom: 1px solid #cfd9de; scrollbar-width: thin; scrollbar-color: #afbcc5 #eef2f4; }
#sf-cloud-page .tariff-table { width: 100%; min-width: 1280px; border-collapse: separate; border-spacing: 0; table-layout: fixed; font-size: 12.5px; }
#sf-cloud-page .tariff-table th, #sf-cloud-page .tariff-table td { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line-soft); vertical-align: middle; }
#sf-cloud-page .tariff-table tr > *:last-child { border-right: 0; }
#sf-cloud-page .tariff-table thead th { position: relative; height: 170px; padding: 28px 18px 22px; vertical-align: top; text-align: left; background: #fff; }
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before { content: ""; position: absolute; left: 18px; top: 0; width: 62px; height: 3px; background: linear-gradient(90deg, var(--blue), var(--green), var(--orange)); }
#sf-cloud-page .tariff-table .feature-col { width: 304px; padding: 30px 24px; color: #778694; font-size: 10px; font-weight: 820; letter-spacing: .15em; text-transform: uppercase; background: #fafcfd; }
#sf-cloud-page .plan-name { display: block; min-height: 38px; font-size: 13px; line-height: 1.35; font-weight: 800; }
#sf-cloud-page .plan-sub { display: block; min-height: 24px; margin-top: 2px; color: var(--text); font-size: 11px; line-height: 1.35; font-weight: 650; }
#sf-cloud-page .plan-price { display: block; margin-top: 14px; font-size: 18px; line-height: 1.1; font-weight: 780; letter-spacing: -.02em; white-space: nowrap; }
#sf-cloud-page .plan-price sup, #sf-cloud-page .tariff-table sup { font-size: 8px; }
#sf-cloud-page .plan-link { margin-top: 12px; color: var(--navy-700); font-size: 11.5px; line-height: 1.2; font-weight: 800; cursor: pointer; }
#sf-cloud-page .plan-link::after { content: " →"; }
#sf-cloud-page .plan-featured { background: linear-gradient(180deg, #f0f8f5 0%, #fbfdfc 100%) !important; }
#sf-cloud-page .tariff-table tbody th { position: sticky; left: 0; z-index: 3; width: 304px; padding: 14px 24px; text-align: left; color: #536678; background: #fff; font-size: 12px; line-height: 1.42; font-weight: 650; box-shadow: 1px 0 0 var(--line); }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th, #sf-cloud-page .tariff-table tbody tr:nth-child(even) td { background-color: #fafcfd; }
#sf-cloud-page .tariff-table tbody th small { display: block; margin-top: 3px; color: var(--muted); font-size: 9.5px; font-weight: 500; }
#sf-cloud-page .tariff-table tbody td { height: 50px; text-align: center; color: var(--green-deep); }
#sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td { padding: 17px 15px; border-bottom: 0; background: #f3f7f8; }
#sf-cloud-page .tariff-table tfoot th { position: sticky; left: 0; z-index: 3; padding-left: 24px; text-align: left; font-size: 10px; font-weight: 820; letter-spacing: .14em; text-transform: uppercase; box-shadow: 1px 0 0 var(--line); }
#sf-cloud-page .tariff-table tfoot td strong { display: block; margin-bottom: 5px; font-size: 14px; white-space: nowrap; }
#sf-cloud-page .tariff-table tfoot .plan-link { margin-top: 0; }
#sf-cloud-page .tariff-meta { margin-top: 30px; display: grid; grid-template-columns: 340px minmax(0,1fr); gap: 54px; align-items: start; }
#sf-cloud-page .annual-gift { margin: 0; padding: 2px 0 2px 18px; border-left: 3px solid var(--orange); color: #7c4c26; font-size: 14px; line-height: 1.5; font-weight: 760; }
#sf-cloud-page .tariff-notes { color: #6b7a89; font-size: 12px; line-height: 1.58; }
#sf-cloud-page .tariff-notes p { margin: 0 0 7px; }

/* Benefits - designed flow, no boxed grid */
#sf-cloud-page .benefits { position: relative; overflow: hidden; color: #fff; background: linear-gradient(124deg, #082745 0%, #0d385e 58%, #145270 100%); }
#sf-cloud-page .benefits::before { content: ""; position: absolute; inset: 0; opacity: .06; background-image: linear-gradient(to right, transparent calc(100% - 1px), #fff 1px); background-size: calc(100% / 6) 100%; }
#sf-cloud-page .benefits__glow { position: absolute; right: -140px; top: -180px; width: 580px; height: 580px; border-radius: 50%; background: radial-gradient(circle, rgba(89,163,190,.25), transparent 66%); }
#sf-cloud-page .benefits__layout { position: relative; z-index: 1; display: grid; grid-template-columns: 390px minmax(0,1fr); gap: 92px; align-items: start; }
#sf-cloud-page .benefits__heading { position: sticky; top: 120px; }
#sf-cloud-page .benefits__heading h2 { max-width: 360px; margin: 0; font-size: clamp(38px, 3.6vw, 52px); line-height: 1.06; letter-spacing: -.045em; font-weight: 760; }
#sf-cloud-page .benefits__signal { margin-top: 44px; display: flex; align-items: center; gap: 18px; color: rgba(255,255,255,.24); }
#sf-cloud-page .benefits__signal span { font-size: 14px; font-weight: 800; letter-spacing: .14em; }
#sf-cloud-page .benefits__signal i { width: 84px; height: 1px; background: linear-gradient(90deg, var(--green), var(--orange)); }
#sf-cloud-page .benefits__flow { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); column-gap: 64px; }
#sf-cloud-page .benefit { min-height: 164px; padding: 28px 0 30px; border-top: 1px solid rgba(255,255,255,.15); }
#sf-cloud-page .benefit:nth-last-child(-n/**/+2) { border-bottom: 1px solid rgba(255,255,255,.15); }
#sf-cloud-page .benefit span { display: block; margin-bottom: 20px; color: rgba(255,255,255,.38); font-size: 10px; line-height: 1; font-weight: 820; letter-spacing: .16em; }
#sf-cloud-page .benefit h3 { max-width: 360px; margin: 0; font-size: 20px; line-height: 1.34; letter-spacing: -.02em; font-weight: 680; }
#sf-cloud-page .benefit--lead h3 { font-size: 25px; line-height: 1.25; }

/* Expert */
#sf-cloud-page .expert { background: #fff; }
#sf-cloud-page .expert__layout { display: grid; grid-template-columns: 380px minmax(0,1fr); gap: 88px; align-items: center; }
#sf-cloud-page .expert__portrait { position: relative; width: 100%; aspect-ratio: .94 / 1; overflow: hidden; border-radius: var(--r2); background: #edf2f4; }
#sf-cloud-page .expert__portrait img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 42%; }
#sf-cloud-page .expert__accent { position: absolute; left: 0; right: 0; top: 0; height: 4px; background: linear-gradient(90deg, var(--blue) 0 34%, var(--green) 34% 67%, var(--orange) 67%); }
#sf-cloud-page .expert__copy { max-width: 790px; }
#sf-cloud-page .expert__copy p { margin: 0 0 10px; color: var(--text); font-size: 16px; line-height: 1.62; }
#sf-cloud-page .expert__copy a { color: var(--navy-700); font-weight: 780; white-space: nowrap; }
#sf-cloud-page .expert__copy strong { display: block; max-width: 760px; margin-top: 28px; font-size: clamp(24px, 2.3vw, 32px); line-height: 1.25; letter-spacing: -.03em; font-weight: 720; }

/* Clients - no cells, no nested borders */
#sf-cloud-page .clients { background: linear-gradient(180deg, #f7f9fa 0%, #fbfcfc 100%); }
#sf-cloud-page .clients .section-heading { margin-bottom: 76px; }
#sf-cloud-page .client-cloud { padding: 6px 12px 0; display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); column-gap: 70px; row-gap: 58px; align-items: center; }
#sf-cloud-page .client-cloud img { width: 100%; max-width: 132px; max-height: 54px; margin: auto; object-fit: contain; mix-blend-mode: multiply; filter: saturate(.78); opacity: .88; transition: transform .18s ease, filter .18s ease, opacity .18s ease; }
#sf-cloud-page .client-cloud img:hover { transform: translateY(-2px); filter: saturate(1); opacity: 1; }

/* Contact */
#sf-cloud-page .contact { position: relative; overflow: hidden; color: #fff; background: linear-gradient(120deg, #081f37 0%, #0c3458 62%, #12526c 100%); }
#sf-cloud-page .contact__lines { position: absolute; inset: 0; opacity: .06; background-image: linear-gradient(to right, transparent calc(100% - 1px), #fff 1px); background-size: calc(100% / 6) 100%; }
#sf-cloud-page .contact__layout { position: relative; z-index: 1; min-height: 350px; padding: 76px 0 82px; display: grid; grid-template-columns: 360px minmax(0,1fr); gap: 100px; align-items: center; }
#sf-cloud-page .contact__copy h2 { max-width: 360px; margin: 0 0 24px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; font-weight: 750; }
#sf-cloud-page .connect-form { display: grid; gap: 20px; }
#sf-cloud-page .connect-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
#sf-cloud-page .connect-form__actions { display: grid; grid-template-columns: minmax(0,1fr) 210px; gap: 26px; align-items: center; }
#sf-cloud-page .connect-form .button { width: 210px; }

/* Footer */
#sf-cloud-page .footer { color: rgba(255,255,255,.62); background: #06182a; }
#sf-cloud-page .footer__inner { min-height: 138px; display: grid; grid-template-columns: 1fr auto auto; gap: 62px; align-items: center; }
#sf-cloud-page .footer__brand { display: flex; align-items: center; gap: 20px; }
#sf-cloud-page .footer__brand img { width: 138px; filter: brightness(0) invert(1); opacity: .92; }
#sf-cloud-page .footer__brand p { margin: 0; font-size: 12px; }
#sf-cloud-page .footer__main-link { color: rgba(255,255,255,.8); font-size: 13px; font-weight: 680; }
#sf-cloud-page .footer__phone { display: grid; gap: 4px; }
#sf-cloud-page .footer__phone span { color: rgba(255,255,255,.36); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
#sf-cloud-page .footer__phone a { color: #fff; font-size: 15px; font-weight: 750; }

/* Modal */
#sf-cloud-page .modal { width: min(760px, calc(100% - 32px)); padding: 0; border: 0; border-radius: 20px; color: var(--ink); background: #fff; box-shadow: 0 30px 90px rgba(4,23,40,.28); }
#sf-cloud-page .modal::backdrop { background: rgba(3,20,35,.68); backdrop-filter: blur(5px); }
#sf-cloud-page .modal__sheet { position: relative; padding: 44px; }
#sf-cloud-page .modal__close { position: absolute; right: 22px; top: 18px; width: 40px; height: 40px; border-radius: 50%; color: #607181; background: #f1f4f5; font-size: 28px; line-height: 1; cursor: pointer; }
#sf-cloud-page .modal h2 { margin: 0 0 28px; font-size: 34px; line-height: 1.1; letter-spacing: -.035em; }
#sf-cloud-page .modal__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
#sf-cloud-page .modal__wide { grid-column: 1 / -1; }
#sf-cloud-page .modal__actions { margin-top: 24px; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 28px; align-items: center; }
#sf-cloud-page .modal__optional[hidden] { display: none; }

/* Responsive */
@media (max-width: 1180px) {
  #sf-cloud-page { --pad: 24px; --s10: 88px; }
  #sf-cloud-page .site-header__inner { grid-template-columns: 190px 1fr auto; gap: 20px; }
  #sf-cloud-page .site-nav { gap: 22px; }
  #sf-cloud-page .header-actions__link { display: none; }
  #sf-cloud-page .hero__inner { grid-template-columns: .78fr 1.22fr; gap: 48px; }
  #sf-cloud-page .hero h1 { font-size: 50px; }
  #sf-cloud-page .demo { padding-left: 36px; }
  #sf-cloud-page .products__rail { gap: 24px; }
  #sf-cloud-page .promos__inner { grid-template-columns: 1fr; }
  #sf-cloud-page .promo { min-height: 360px; }
  #sf-cloud-page .benefits__layout { grid-template-columns: 330px 1fr; gap: 64px; }
  #sf-cloud-page .client-cloud { column-gap: 46px; }
}

@media (max-width: 960px) {
  #sf-cloud-page .utility-bar__contacts a:last-child { display: none; }
  #sf-cloud-page .site-nav { display: none; }
  #sf-cloud-page .site-header__inner { grid-template-columns: 1fr auto; }
  #sf-cloud-page .hero__inner { min-height: auto; padding: 72px 0; grid-template-columns: 1fr; gap: 60px; }
  #sf-cloud-page .hero__copy { max-width: 640px; }
  #sf-cloud-page .hero h1 { max-width: 620px; }
  #sf-cloud-page .demo { padding-left: 0; padding-top: 4px; }
  #sf-cloud-page .demo::before { display: none; }
  #sf-cloud-page .demo::after { left: 0; width: 160px; }
  #sf-cloud-page .demo__intro { margin-top: 30px; }
  #sf-cloud-page .products { overflow-x: auto; }
  #sf-cloud-page .products__rail { width: max-content; grid-template-columns: repeat(5, 228px); padding-right: var(--pad); }
  #sf-cloud-page .section-heading--split { grid-template-columns: 1fr; gap: 24px; }
  #sf-cloud-page .section-heading--split > p { max-width: 660px; }
  #sf-cloud-page .tariff-meta { grid-template-columns: 1fr; gap: 24px; }
  #sf-cloud-page .benefits__layout { grid-template-columns: 1fr; gap: 56px; }
  #sf-cloud-page .benefits__heading { position: static; }
  #sf-cloud-page .benefits__heading h2 { max-width: 680px; }
  #sf-cloud-page .benefits__signal { display: none; }
  #sf-cloud-page .expert__layout { grid-template-columns: 300px 1fr; gap: 56px; }
  #sf-cloud-page .client-cloud { grid-template-columns: repeat(4, minmax(0,1fr)); }
  #sf-cloud-page .contact__layout { grid-template-columns: 1fr; gap: 44px; }
  #sf-cloud-page .contact__copy h2 { max-width: 620px; }
}

@media (max-width: 720px) {
  #sf-cloud-page { --pad: 18px; --s10: 68px; }
  #sf-cloud-page .utility-bar { display: none; }
  #sf-cloud-page .site-header__inner { min-height: 72px; }
  #sf-cloud-page .brand img { width: 148px; }
  #sf-cloud-page .button--compact { min-height: 44px; padding-inline: 14px; font-size: 12px; }
  #sf-cloud-page .hero__inner { padding: 58px 0 64px; gap: 48px; }
  #sf-cloud-page .hero h1 { font-size: clamp(40px, 12vw, 52px); }
  #sf-cloud-page .hero-offer__number { font-size: 64px; }
  #sf-cloud-page .demo__intro { gap: 16px; }
  #sf-cloud-page .demo__number { font-size: 58px; }
  #sf-cloud-page .demo__intro h2 { max-width: 210px; font-size: 15px; }
  #sf-cloud-page .demo-form__grid { grid-template-columns: 1fr; row-gap: 16px; }
  #sf-cloud-page .field--email small { margin-bottom: 2px; }
  #sf-cloud-page .demo-form__footer { grid-template-columns: 1fr; align-items: stretch; }
  #sf-cloud-page .verify { width: 180px; }
  #sf-cloud-page .demo-form__submit { width: 100%; }
  #sf-cloud-page .products { padding: 54px 0 60px; }
  #sf-cloud-page .products__rail { grid-template-columns: repeat(5, 214px); gap: 18px; }
  #sf-cloud-page .promo { min-height: 0; padding: 38px 30px 122px; border-radius: 20px; }
  #sf-cloud-page .promo h2 { font-size: 32px; }
  #sf-cloud-page .promo__phones { display: grid; gap: 7px; }
  #sf-cloud-page .promo__phones span { width: auto; }
  #sf-cloud-page .section-heading { margin-bottom: 48px; }
  #sf-cloud-page .section-heading h2 { font-size: 36px; }
  #sf-cloud-page .tariff-table { min-width: 1180px; }
  #sf-cloud-page .tariff-table .feature-col, #sf-cloud-page .tariff-table tbody th { width: 254px; }
  #sf-cloud-page .benefits__heading h2 { font-size: 40px; }
  #sf-cloud-page .benefits__flow { grid-template-columns: 1fr; }
  #sf-cloud-page .benefit:nth-last-child(-n/**/+2) { border-bottom: 0; }
  #sf-cloud-page .benefit:last-child { border-bottom: 1px solid rgba(255,255,255,.15); }
  #sf-cloud-page .benefit { min-height: 130px; }
  #sf-cloud-page .benefit h3, #sf-cloud-page .benefit--lead h3 { font-size: 20px; }
  #sf-cloud-page .expert__layout { grid-template-columns: 1fr; gap: 38px; }
  #sf-cloud-page .expert__portrait { width: min(100%, 360px); }
  #sf-cloud-page .expert__copy strong { font-size: 25px; }
  #sf-cloud-page .clients .section-heading { margin-bottom: 54px; }
  #sf-cloud-page .client-cloud { grid-template-columns: repeat(3, minmax(0,1fr)); column-gap: 28px; row-gap: 38px; padding-inline: 0; }
  #sf-cloud-page .client-cloud img { max-width: 110px; max-height: 45px; }
  #sf-cloud-page .contact__layout { min-height: 0; padding: 64px 0 68px; }
  #sf-cloud-page .contact__copy h2 { font-size: 36px; }
  #sf-cloud-page .connect-form__fields { grid-template-columns: 1fr; }
  #sf-cloud-page .connect-form__actions { grid-template-columns: 1fr; }
  #sf-cloud-page .connect-form .button { width: 100%; }
  #sf-cloud-page .footer__inner { padding: 38px 0; grid-template-columns: 1fr; gap: 22px; }
  #sf-cloud-page .footer__main-link { width: fit-content; }
  #sf-cloud-page .modal__sheet { padding: 36px 22px 26px; }
  #sf-cloud-page .modal__grid { grid-template-columns: 1fr; gap: 16px; }
  #sf-cloud-page .modal__wide { grid-column: auto; }
  #sf-cloud-page .modal__actions { grid-template-columns: 1fr; }
  #sf-cloud-page .modal__actions .button { width: 100%; }
}

@media (max-width: 460px) {
  #sf-cloud-page .header-actions .button { min-width: 44px; width: 44px; padding: 0; overflow: hidden; color: transparent; gap: 0; }
  #sf-cloud-page .header-actions .button span { color: #fff; font-size: 20px; }
  #sf-cloud-page .hero__copy .button { width: 100%; }
  #sf-cloud-page .client-cloud { grid-template-columns: repeat(2, minmax(0,1fr)); row-gap: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  #sf-cloud-page *, #sf-cloud-page *::before, #sf-cloud-page *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* v5 precision pass - requested areas only */
/* Hero grid: finer and substantially quieter */
#sf-cloud-page .hero__gridlines {
  opacity: .028;
  background-image:
    linear-gradient(to right, transparent calc(100% - 1px), rgba(255,255,255,.72) 1px),
    linear-gradient(to bottom, transparent calc(100% - 1px), rgba(255,255,255,.72) 1px);
  background-size: 92px 92px;
}

/* Products: consistent two-line titles and aligned baselines */
#sf-cloud-page .products { padding-top: 60px; padding-bottom: 62px; }
#sf-cloud-page .products__rail { gap: 28px; }
#sf-cloud-page .product { grid-template-rows: 132px 74px 28px auto; }
#sf-cloud-page .product__visual { height: 120px; }
#sf-cloud-page .product__copy { min-width: 0; }
#sf-cloud-page .product__copy h2 {
  min-height: 44px;
  margin-bottom: 8px;
  font-size: 15.5px;
  line-height: 1.28;
  letter-spacing: -.022em;
  text-wrap: pretty;
  hyphens: none;
}
#sf-cloud-page .product__copy p { font-size: 14px; line-height: 1.35; }
#sf-cloud-page .product .text-link { margin-top: 20px; }

/* Promo server: reserved visual zone, never over text */
#sf-cloud-page .promo--server { padding-right: 176px; }
#sf-cloud-page .promo--server .promo__content { max-width: 100%; }
#sf-cloud-page .promo__icon--server {
  width: 94px;
  right: 44px;
  bottom: 44px;
  opacity: .7;
}

/* Tariff inclusion marks - compact, source-like check treatment */
#sf-cloud-page .tariff-table tbody td.is-included { position: relative; }
#sf-cloud-page .table-check {
  width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(21,152,125,.10);
}
#sf-cloud-page .table-check::before {
  content: "";
  width: 8px;
  height: 4px;
  border-left: 2px solid var(--green-deep);
  border-bottom: 2px solid var(--green-deep);
  transform: translateY(-1px) rotate(-45deg);
}

/* Benefits: compact icon teasers, no card grid */
#sf-cloud-page .benefits { padding: 72px 0 76px; }
#sf-cloud-page .benefits::before {
  opacity: .025;
  background-size: 92px 92px;
  background-image:
    linear-gradient(to right, transparent calc(100% - 1px), #fff 1px),
    linear-gradient(to bottom, transparent calc(100% - 1px), #fff 1px);
}
#sf-cloud-page .benefits__glow { width: 500px; height: 500px; right: -180px; top: -230px; opacity: .72; }
#sf-cloud-page .benefits__layout {
  display: grid;
  grid-template-columns: 320px minmax(0,1fr);
  gap: 72px;
  align-items: center;
}
#sf-cloud-page .benefits__heading { position: static; }
#sf-cloud-page .benefits__heading h2 {
  max-width: 310px;
  font-size: 38px;
  line-height: 1.08;
  letter-spacing: -.04em;
}
#sf-cloud-page .benefits__signal { margin-top: 28px; gap: 14px; }
#sf-cloud-page .benefits__signal span { font-size: 11px; }
#sf-cloud-page .benefits__signal i { width: 62px; }
#sf-cloud-page .benefits__flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 30px 38px;
}
#sf-cloud-page .benefit, #sf-cloud-page .benefit:nth-last-child(-n/**/+2), #sf-cloud-page .benefit:last-child {
  min-height: 76px;
  padding: 0;
  border: 0;
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  gap: 14px;
  align-items: start;
}
#sf-cloud-page .benefit__icon {
  width: 30px;
  height: 30px;
  margin-top: 1px;
  color: rgba(255,255,255,.72);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#sf-cloud-page .benefit span {
  display: block;
  margin: 0 0 7px;
  color: rgba(255,255,255,.34);
  font-size: 9px;
  line-height: 1;
  font-weight: 820;
  letter-spacing: .16em;
}
#sf-cloud-page .benefit h3, #sf-cloud-page .benefit--lead h3 {
  max-width: none;
  margin: 0;
  font-size: 15.5px;
  line-height: 1.34;
  letter-spacing: -.012em;
  font-weight: 680;
}

/* Clients: large grid dividers only - no small bordered logo boxes */
#sf-cloud-page .clients .section-heading { margin-bottom: 58px; }
#sf-cloud-page .client-cloud {
  padding: 0;
  gap: 0;
  grid-template-columns: repeat(6, minmax(0,1fr));
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
#sf-cloud-page .client-cloud img {
  width: 100%;
  max-width: none;
  height: 136px;
  max-height: none;
  margin: 0;
  padding: 38px 28px;
  object-fit: contain;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  mix-blend-mode: multiply;
  filter: saturate(.78);
  opacity: .88;
}
#sf-cloud-page .client-cloud img:nth-child(6n) { border-right: 0; }
#sf-cloud-page .client-cloud img:nth-last-child(-n/**/+6) { border-bottom: 0; }

/* Footer follows the information architecture of the main softrum.ru footer */
#sf-cloud-page .footer { position: relative; color: rgba(255,255,255,.66); background: #071f37; }
#sf-cloud-page .footer::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: linear-gradient(90deg, var(--blue), var(--green), var(--orange));
  opacity: .9;
}
#sf-cloud-page .footer__top {
  padding: 58px 0 46px;
  display: grid;
  grid-template-columns: 1.05fr .72fr .8fr 1.08fr 1.35fr;
  gap: 42px;
  align-items: start;
}
#sf-cloud-page .footer__logo { display: inline-block; }
#sf-cloud-page .footer__logo img { width: 162px; filter: brightness(0) invert(1); opacity: .95; }
#sf-cloud-page .footer__column { display: grid; align-content: start; gap: 10px; }
#sf-cloud-page .footer__column h2 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
#sf-cloud-page .footer__column a, #sf-cloud-page .footer__column p {
  margin: 0;
  color: rgba(255,255,255,.64);
  font-size: 13px;
  line-height: 1.45;
  transition: color .18s ease;
}
#sf-cloud-page .footer__column a:hover { color: #fff; }
#sf-cloud-page .footer__contacts a { color: rgba(255,255,255,.82); }
#sf-cloud-page .footer__contacts small { display: block; margin-top: 1px; color: rgba(255,255,255,.36); font-size: 10px; font-weight: 500; }
#sf-cloud-page .footer__bottom {
  min-height: 62px;
  border-top: 1px solid rgba(255,255,255,.10);
  display: flex;
  align-items: center;
}
#sf-cloud-page .footer__bottom p { margin: 0; color: rgba(255,255,255,.42); font-size: 11px; line-height: 1.4; }

@media (max-width: 1180px) {
  #sf-cloud-page .promo--server { padding-right: 170px; }
  #sf-cloud-page .benefits__layout { grid-template-columns: 280px 1fr; gap: 52px; }
  #sf-cloud-page .benefits__heading h2 { font-size: 34px; }
  #sf-cloud-page .benefits__flow { gap: 26px 30px; }
  #sf-cloud-page .footer__top { grid-template-columns: 1fr repeat(2, .8fr) 1fr; }
  #sf-cloud-page .footer__identity { grid-column: 1 / -1; }
}

@media (max-width: 960px) {
  #sf-cloud-page .products__rail { gap: 20px; }
  #sf-cloud-page .benefits__layout { grid-template-columns: 1fr; gap: 38px; }
  #sf-cloud-page .benefits__heading h2 { max-width: 620px; }
  #sf-cloud-page .benefits__signal { display: none; }
  #sf-cloud-page .client-cloud img:nth-child(n) { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  #sf-cloud-page .client-cloud img:nth-child(4n) { border-right: 0; }
  #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+4) { border-bottom: 0; }
  #sf-cloud-page .footer__top { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 36px 56px; }
  #sf-cloud-page .footer__identity { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
  #sf-cloud-page .hero__gridlines { background-size: 64px 64px; opacity: .025; }
  #sf-cloud-page .product { grid-template-rows: 122px 70px 28px auto; }
  #sf-cloud-page .product__copy h2 { font-size: 15px; }
  #sf-cloud-page .promo--server { padding-right: 30px; }
  #sf-cloud-page .promo--server .promo__content { max-width: 100%; }
  #sf-cloud-page .promo__icon--server { right: 28px; bottom: 28px; width: 78px; opacity: .55; }
  #sf-cloud-page .benefits { padding: 58px 0 60px; }
  #sf-cloud-page .benefits__heading h2 { font-size: 34px; }
  #sf-cloud-page .benefits__flow { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 26px 24px; }
  #sf-cloud-page .client-cloud { grid-template-columns: repeat(3, minmax(0,1fr)); }
  #sf-cloud-page .client-cloud img { height: 118px; padding: 34px 20px; }
  #sf-cloud-page .client-cloud img:nth-child(n) { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  #sf-cloud-page .client-cloud img:nth-child(3n) { border-right: 0; }
  #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+3) { border-bottom: 0; }
  #sf-cloud-page .footer__top { padding: 46px 0 36px; grid-template-columns: 1fr 1fr; gap: 34px 28px; }
  #sf-cloud-page .footer__identity { grid-column: 1 / -1; }
  #sf-cloud-page .footer__contacts { grid-column: 1 / -1; }
  #sf-cloud-page .footer__bottom { min-height: 58px; }
}

@media (max-width: 460px) {
  #sf-cloud-page .benefits__flow { grid-template-columns: 1fr; gap: 22px; }
  #sf-cloud-page .benefit { min-height: 0; }
  #sf-cloud-page .client-cloud { grid-template-columns: repeat(2, minmax(0,1fr)); }
  #sf-cloud-page .client-cloud img { height: 108px; padding: 30px 18px; }
  #sf-cloud-page .client-cloud img:nth-child(n) { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  #sf-cloud-page .client-cloud img:nth-child(2n) { border-right: 0; }
  #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+2) { border-bottom: 0; }
  #sf-cloud-page .footer__top { grid-template-columns: 1fr; gap: 30px; }
  #sf-cloud-page .footer__identity, #sf-cloud-page .footer__contacts { grid-column: auto; }
}


/* v6 production refinement - only requested areas */

/* Keyboard UX without changing the visual composition */
#sf-cloud-page a:focus-visible, #sf-cloud-page button:focus-visible, #sf-cloud-page input:focus-visible, #sf-cloud-page select:focus-visible, #sf-cloud-page textarea:focus-visible {
  outline: 2px solid rgba(21,152,125,.72);
  outline-offset: 3px;
}

/* 1-2. Product shelf: packshots align to the same left edge as copy and CTA. */
#sf-cloud-page .products {
  padding-top: 54px;
  padding-bottom: 58px;
}
#sf-cloud-page .products__rail {
  gap: 30px;
}
#sf-cloud-page .product {
  grid-template-rows: 124px 72px 24px auto;
}
#sf-cloud-page .product__visual {
  height: 114px;
  place-items: start;
  align-content: start;
  justify-content: start;
  padding-top: 2px;
}
#sf-cloud-page .product__visual::before {
  left: 0;
  top: 4px;
  width: 104px;
  height: 104px;
}
#sf-cloud-page .product__visual > span {
  left: 0;
  top: 28px;
}
#sf-cloud-page .product__visual img {
  justify-self: start;
  margin: 0;
  object-position: left center;
}
#sf-cloud-page .product__copy h2 {
  max-width: 220px;
  min-height: 40px;
  margin-bottom: 9px;
}
#sf-cloud-page .product .text-link {
  margin-top: 18px;
}

/* 3. Tariffs: remove boxed/cell-border treatment, preserve scanability with horizontal rhythm only. */
#sf-cloud-page .tariff-shell {
  border: 0;
  overflow-x: auto;
  padding: 0 0 4px;
  scrollbar-width: thin;
}
#sf-cloud-page .tariff-table {
  border-collapse: separate;
  border-spacing: 0;
}
#sf-cloud-page .tariff-table th, #sf-cloud-page .tariff-table td {
  border-right: 0;
  border-bottom: 0;
}
#sf-cloud-page .tariff-table thead th {
  height: 158px;
  padding: 30px 20px 24px;
  border-bottom: 1px solid #dce5e9;
  background: transparent;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  left: 20px;
  width: 54px;
  height: 2px;
}
#sf-cloud-page .tariff-table .feature-col {
  padding: 32px 24px 24px;
  background: transparent;
}
#sf-cloud-page .plan-name {
  min-height: 36px;
  line-height: 1.3;
}
#sf-cloud-page .plan-sub {
  min-height: 22px;
  margin-top: 3px;
}
#sf-cloud-page .plan-price {
  margin-top: 13px;
}
#sf-cloud-page .plan-featured {
  background: rgba(21,152,125,.035) !important;
}
#sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tbody td {
  border-bottom: 1px solid #edf2f4;
}
#sf-cloud-page .tariff-table tbody th {
  padding: 15px 24px;
  box-shadow: none;
  background: #fff;
}
#sf-cloud-page .tariff-table tbody td {
  height: 52px;
  background: #fff;
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th, #sf-cloud-page .tariff-table tbody tr:nth-child(even) td {
  background: #fff;
}
#sf-cloud-page .tariff-table tbody tr:hover th, #sf-cloud-page .tariff-table tbody tr:hover td {
  background: #fbfcfc;
}
#sf-cloud-page .tariff-table tbody tr:hover td.plan-featured, #sf-cloud-page .tariff-table tbody tr:hover th.plan-featured {
  background: rgba(21,152,125,.045) !important;
}
#sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td {
  padding: 20px 16px 18px;
  border-top: 1px solid #dce5e9;
  border-bottom: 0;
  background: #f7f9fa;
}
#sf-cloud-page .tariff-table tfoot th {
  padding-left: 24px;
  box-shadow: none;
}
#sf-cloud-page .tariff-table tfoot td strong {
  margin-bottom: 6px;
}
#sf-cloud-page .tariff-meta {
  margin-top: 34px;
}

/* 4. Contact strip above the footer: no decorative grid. */
#sf-cloud-page .contact__lines {
  display: none !important;
}
#sf-cloud-page .contact__layout {
  padding-top: 72px;
  padding-bottom: 76px;
}

/* 5. Footer: exactly four information blocks, no logo/identity column. */
#sf-cloud-page .footer__top {
  padding: 54px 0 42px;
  grid-template-columns: .9fr 1.05fr 1.18fr 1.25fr;
  gap: 64px;
}
#sf-cloud-page .footer__identity, #sf-cloud-page .footer__logo {
  display: none !important;
}
#sf-cloud-page .footer__column {
  gap: 9px;
}
#sf-cloud-page .footer__column h2 {
  margin-bottom: 10px;
}
#sf-cloud-page .footer__bottom {
  min-height: 58px;
}

@media (max-width: 1180px) {
  #sf-cloud-page .products__rail { gap: 24px; }
  #sf-cloud-page .footer__top {
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 34px;
  }
}

@media (max-width: 960px) {
  #sf-cloud-page .products__rail { gap: 20px; }
  #sf-cloud-page .product__visual { height: 110px; }
  #sf-cloud-page .footer__top {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 34px 48px;
  }
}

@media (max-width: 720px) {
  #sf-cloud-page .products {
    padding-top: 50px;
    padding-bottom: 54px;
  }
  #sf-cloud-page .product {
    grid-template-rows: 116px 70px 24px auto;
  }
  #sf-cloud-page .product__visual {
    height: 108px;
  }
  #sf-cloud-page .tariff-table thead th {
    padding-inline: 16px;
  }
  #sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
    left: 16px;
  }
  #sf-cloud-page .tariff-table tbody th {
    padding-inline: 20px;
  }
  #sf-cloud-page .contact__layout {
    padding-top: 60px;
    padding-bottom: 64px;
  }
  #sf-cloud-page .footer__top {
    padding: 44px 0 34px;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 30px 28px;
  }
}

@media (max-width: 460px) {
  #sf-cloud-page .footer__top {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

/* Final QA fixes */
#sf-cloud-page .skip-link:focus { transform: translateY(-160%); }
#sf-cloud-page .skip-link:focus-visible { transform: translateY(0); }

@media (max-width: 960px) {
  #sf-cloud-page .products__rail {
    margin-left: var(--pad);
    margin-right: 0;
    padding-right: var(--pad);
    scroll-snap-type: x proximity;
  }
  #sf-cloud-page .product { scroll-snap-align: start; }
}

/* v7 precision polish - spacing, form ergonomics and tariff readability only */

/* System rhythm: tighter, quieter and consistent without changing section structure. */
#sf-cloud-page {
  --control-h: 54px;
  --control-pad-x: 18px;
  --hairline: rgba(10, 41, 71, .085);
}

#sf-cloud-page .section { padding: 96px 0; }
#sf-cloud-page .section-heading { margin-bottom: 58px; }
#sf-cloud-page .section-heading h2 { line-height: 1.1; }
#sf-cloud-page .button { border-radius: 8px; }

/* Hero form - one spacing system, one baseline, no accidental dead space. */
#sf-cloud-page .hero__inner {
  padding-top: 78px;
  padding-bottom: 82px;
  gap: 68px;
}
#sf-cloud-page .demo {
  padding-left: 42px;
}
#sf-cloud-page .demo__intro {
  margin: 32px 0 28px;
  gap: 18px;
}
#sf-cloud-page .demo__number {
  font-size: 66px;
  line-height: .88;
}
#sf-cloud-page .demo__intro h2 {
  max-width: 246px;
  font-size: 16px;
  line-height: 1.28;
}
#sf-cloud-page .demo-form {
  gap: 26px;
}
#sf-cloud-page .demo-form__grid {
  column-gap: 24px;
  row-gap: 20px;
}
#sf-cloud-page .field {
  gap: 9px;
  min-width: 0;
}
#sf-cloud-page .field > span {
  font-size: 10.5px;
  line-height: 1.15;
  letter-spacing: .105em;
}
#sf-cloud-page .field input, #sf-cloud-page .field select {
  height: var(--control-h);
  padding-inline: var(--control-pad-x);
  border-radius: 8px;
}
#sf-cloud-page .field--dark input, #sf-cloud-page .field--dark select, #sf-cloud-page .field--dark textarea {
  border-color: rgba(255,255,255,.20);
  background: rgba(4, 30, 51, .26);
}
#sf-cloud-page .field--dark input:hover, #sf-cloud-page .field--dark select:hover, #sf-cloud-page .field--dark textarea:hover {
  border-color: rgba(255,255,255,.28);
}
#sf-cloud-page .field--email small {
  min-height: 30px;
  margin-top: 7px;
  max-width: 96%;
  font-size: 10.5px;
  line-height: 1.42;
}
#sf-cloud-page .demo-form__footer {
  grid-template-columns: 136px minmax(280px, 1fr) 204px;
  column-gap: 20px;
  row-gap: 0;
  align-items: end;
}
#sf-cloud-page .verify {
  width: 136px;
}
#sf-cloud-page .verify input {
  height: var(--control-h);
}
#sf-cloud-page .demo-form__footer .consent {
  min-height: var(--control-h);
  padding: 0 2px;
  align-items: center;
  gap: 10px;
  font-size: 11.5px;
  line-height: 1.35;
  white-space: normal;
}
#sf-cloud-page .demo-form__footer .consent input {
  width: 16px;
  height: 16px;
  margin: 0;
}
#sf-cloud-page .demo-form__submit {
  width: 204px;
  min-height: var(--control-h);
  padding-inline: 20px;
}

/* Product shelf: reduce residual vertical slack, keep the approved composition. */
#sf-cloud-page .products {
  padding-top: 48px;
  padding-bottom: 52px;
}
#sf-cloud-page .product {
  grid-template-rows: 118px 68px 22px auto;
}
#sf-cloud-page .product__visual { height: 110px; }
#sf-cloud-page .product__copy h2 { margin-bottom: 7px; }
#sf-cloud-page .product .text-link { margin-top: 14px; }

/* Tariffs - editorial data table, not a grid of boxes. */
#sf-cloud-page .tariff-shell {
  margin-top: 2px;
  padding: 0;
  border: 0;
  overflow-x: auto;
  background: #fff;
  scrollbar-width: thin;
  scrollbar-color: #b8c4cb transparent;
}
#sf-cloud-page .tariff-table {
  min-width: 1260px;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  font-size: 12.5px;
}
#sf-cloud-page .tariff-table th, #sf-cloud-page .tariff-table td {
  border: 0 !important;
}
#sf-cloud-page .tariff-table thead th {
  height: 152px;
  padding: 26px 19px 22px;
  vertical-align: top;
  text-align: left;
  background: #fff;
  box-shadow: inset 0 -1px 0 var(--hairline);
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  left: 19px;
  top: 0;
  width: 44px;
  height: 2px;
  opacity: .9;
}
#sf-cloud-page .tariff-table .feature-col {
  width: 320px;
  padding: 28px 28px 22px;
  background: #fff;
  color: #7d8b98;
  font-size: 9.5px;
  letter-spacing: .16em;
}
#sf-cloud-page .plan-name {
  min-height: 38px;
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: -.006em;
}
#sf-cloud-page .plan-sub {
  min-height: 21px;
  margin-top: 4px;
  font-size: 10.5px;
  line-height: 1.28;
}
#sf-cloud-page .plan-price {
  margin-top: 13px;
  font-size: 18px;
  line-height: 1.08;
}
#sf-cloud-page .plan-link {
  margin-top: 10px;
  font-size: 11px;
}
#sf-cloud-page .plan-featured {
  background: linear-gradient(180deg, rgba(21,152,125,.052), rgba(21,152,125,.018)) !important;
}
#sf-cloud-page .tariff-table tbody tr {
  transition: background-color .16s ease;
}
#sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tbody td {
  background: #fff;
  box-shadow: inset 0 -1px 0 rgba(10,41,71,.065);
}
#sf-cloud-page .tariff-table tbody th {
  width: 320px;
  padding: 13px 28px;
  color: #53687a;
  font-size: 11.75px;
  line-height: 1.42;
  font-weight: 620;
  box-shadow: inset 0 -1px 0 rgba(10,41,71,.065), 14px 0 24px -28px rgba(8,36,61,.45);
}
#sf-cloud-page .tariff-table tbody th small {
  margin-top: 3px;
  font-size: 9px;
  line-height: 1.35;
}
#sf-cloud-page .tariff-table tbody td {
  height: 48px;
  text-align: center;
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th, #sf-cloud-page .tariff-table tbody tr:nth-child(even) td {
  background: #fbfcfc;
}
#sf-cloud-page .tariff-table tbody td.plan-featured, #sf-cloud-page .tariff-table tbody th.plan-featured {
  background: rgba(21,152,125,.027) !important;
}
#sf-cloud-page .tariff-table tbody tr:hover th, #sf-cloud-page .tariff-table tbody tr:hover td {
  background: #f7faf9;
}
#sf-cloud-page .tariff-table tbody tr:hover td.plan-featured, #sf-cloud-page .tariff-table tbody tr:hover th.plan-featured {
  background: rgba(21,152,125,.055) !important;
}
#sf-cloud-page .table-check {
  width: 18px;
  height: 18px;
  background: rgba(21,152,125,.095);
}
#sf-cloud-page .table-check::before {
  width: 7px;
  height: 3px;
  border-left-width: 1.75px;
  border-bottom-width: 1.75px;
}
#sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td {
  padding: 18px 18px 17px;
  background: #f7f9fa;
  box-shadow: inset 0 1px 0 rgba(10,41,71,.085);
}
#sf-cloud-page .tariff-table tfoot th {
  width: 320px;
  padding-left: 28px;
  font-size: 9.5px;
}
#sf-cloud-page .tariff-table tfoot td strong {
  margin-bottom: 6px;
  font-size: 13.5px;
}
#sf-cloud-page .tariff-meta {
  margin-top: 30px;
  gap: 48px;
}
#sf-cloud-page .tariff-notes {
  max-width: 880px;
}

/* Small system-wide polish only: preserve all approved compositions. */
#sf-cloud-page .promo { padding-top: 50px; padding-bottom: 50px; }
#sf-cloud-page .benefit h3, #sf-cloud-page .benefit--lead h3 { line-height: 1.3; }
#sf-cloud-page .expert__copy p { line-height: 1.58; }
#sf-cloud-page .contact__layout { padding-top: 68px; padding-bottom: 72px; }
#sf-cloud-page .connect-form { gap: 18px; }
#sf-cloud-page .connect-form__fields { gap: 18px; }
#sf-cloud-page .footer__top { padding-top: 50px; padding-bottom: 40px; }

@media (max-width: 1180px) {
  #sf-cloud-page .hero__inner { gap: 52px; }
  #sf-cloud-page .demo { padding-left: 34px; }
  #sf-cloud-page .demo-form__footer {
    grid-template-columns: 132px minmax(250px,1fr) 196px;
    column-gap: 18px;
  }
  #sf-cloud-page .verify { width: 132px; }
  #sf-cloud-page .demo-form__submit { width: 196px; }
  #sf-cloud-page .demo-form__footer .consent { font-size: 11px; }
}

@media (max-width: 960px) {
  #sf-cloud-page .demo { padding-left: 0; }
  #sf-cloud-page .demo-form__footer {
    grid-template-columns: 160px minmax(0,1fr) 220px;
    column-gap: 20px;
  }
  #sf-cloud-page .verify { width: 160px; }
  #sf-cloud-page .demo-form__submit { width: 220px; }
  #sf-cloud-page .demo-form__footer .consent { white-space: normal; }
}

@media (max-width: 720px) {
  #sf-cloud-page .section { padding: 68px 0; }
  #sf-cloud-page .section-heading { margin-bottom: 46px; }
  #sf-cloud-page .hero__inner { padding-top: 56px; padding-bottom: 62px; }
  #sf-cloud-page .demo__intro { margin: 28px 0 24px; }
  #sf-cloud-page .demo-form { gap: 22px; }
  #sf-cloud-page .demo-form__grid { row-gap: 16px; }
  #sf-cloud-page .field--email small { min-height: 0; max-width: none; }
  #sf-cloud-page .demo-form__footer {
    grid-template-columns: 1fr;
    row-gap: 16px;
  }
  #sf-cloud-page .verify { width: 168px; }
  #sf-cloud-page .demo-form__footer .consent { min-height: auto; padding: 0; }
  #sf-cloud-page .demo-form__submit { width: 100%; }
  #sf-cloud-page .products { padding-top: 46px; padding-bottom: 50px; }
  #sf-cloud-page .tariff-table { min-width: 1120px; }
  #sf-cloud-page .tariff-table .feature-col, #sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tfoot th { width: 248px; }
  #sf-cloud-page .tariff-table thead th { padding-inline: 15px; }
  #sf-cloud-page .tariff-table thead th:not(.feature-col)::before { left: 15px; }
  #sf-cloud-page .tariff-table .feature-col { padding-left: 20px; }
  #sf-cloud-page .tariff-table tbody th { padding-inline: 20px; }
  #sf-cloud-page .tariff-table tfoot th { padding-left: 20px; }
}

/* v8 production polish - requested areas only: form focus/spacing, tariff header system, global micro-rhythm */

#sf-cloud-page {
  --control-h: 56px;
  --control-pad-x: 20px;
  --focus-line: rgba(125, 198, 184, .62);
  --focus-glow: rgba(2, 24, 43, .16);
  --table-rule: rgba(10, 41, 71, .09);
  --table-rule-strong: rgba(10, 41, 71, .14);
}

/* Keep keyboard accessibility without the heavy double focus ring on form controls. */
#sf-cloud-page input:focus-visible, #sf-cloud-page select:focus-visible, #sf-cloud-page textarea:focus-visible {
  outline: 0 !important;
}
#sf-cloud-page .field input:focus, #sf-cloud-page .field select:focus, #sf-cloud-page .field textarea:focus, #sf-cloud-page .field input:focus-visible, #sf-cloud-page .field select:focus-visible, #sf-cloud-page .field textarea:focus-visible {
  border-color: rgba(21, 152, 125, .52);
  box-shadow: 0 0 0 1px rgba(21, 152, 125, .14), 0 10px 28px rgba(8, 36, 61, .07);
}
#sf-cloud-page .field--dark input:focus, #sf-cloud-page .field--dark select:focus, #sf-cloud-page .field--dark textarea:focus, #sf-cloud-page .field--dark input:focus-visible, #sf-cloud-page .field--dark select:focus-visible, #sf-cloud-page .field--dark textarea:focus-visible {
  border-color: var(--focus-line);
  box-shadow: 0 8px 24px var(--focus-glow), inset 0 0 0 1px rgba(255,255,255,.035);
}

/* Hero form: explicit vertical rhythm and calmer control geometry. */
#sf-cloud-page .demo-form {
  gap: 28px;
}
#sf-cloud-page .demo-form__grid {
  column-gap: 26px;
  row-gap: 22px;
}
#sf-cloud-page .field {
  gap: 10px;
}
#sf-cloud-page .field > span {
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: .115em;
}
#sf-cloud-page .field input, #sf-cloud-page .field select {
  height: var(--control-h);
  padding-inline: var(--control-pad-x);
  border-radius: 9px;
}
#sf-cloud-page .field--dark input, #sf-cloud-page .field--dark select, #sf-cloud-page .field--dark textarea {
  border-color: rgba(255,255,255,.19);
  background: rgba(3, 28, 50, .22);
}
#sf-cloud-page .field--email small {
  min-height: 31px;
  margin-top: 8px;
  max-width: 100%;
  font-size: 10.25px;
  line-height: 1.48;
}
#sf-cloud-page .demo-form__footer {
  grid-template-columns: 142px minmax(300px, 1fr) 214px;
  column-gap: 24px;
  align-items: end;
}
#sf-cloud-page .verify {
  width: 142px;
}
#sf-cloud-page .verify input {
  height: var(--control-h);
}
#sf-cloud-page .demo-form__footer .consent {
  min-height: var(--control-h);
  padding: 0 4px;
  gap: 11px;
  align-items: center;
  font-size: 11.25px;
  line-height: 1.42;
}
#sf-cloud-page .demo-form__footer .consent input {
  width: 17px;
  height: 17px;
}
#sf-cloud-page .demo-form__submit {
  width: 214px;
  min-height: var(--control-h);
  padding-inline: 22px;
  justify-self: end;
}

/* Tariffs: one header grammar for every plan - title / variant / price / action. */
#sf-cloud-page .tariff-shell {
  overflow-x: auto;
  scrollbar-gutter: stable;
}
#sf-cloud-page .tariff-table {
  min-width: 1300px;
  font-size: 12.5px;
}
#sf-cloud-page .tariff-table thead th {
  height: 174px;
  padding: 28px 16px 22px;
  vertical-align: top;
  background: #fff;
  box-shadow: inset 0 -1px 0 var(--table-rule-strong);
}
#sf-cloud-page .tariff-table thead th:not(.feature-col) {
  position: relative;
  min-width: 0;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  left: 16px;
  top: 0;
  width: 38px;
  height: 2px;
  opacity: .78;
}
#sf-cloud-page .tariff-table .feature-col {
  width: 300px;
  padding: 31px 28px 22px;
  color: #7f8c98;
  font-size: 9.5px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .155em;
  background: #fff;
}
#sf-cloud-page .plan-name {
  display: block;
  min-height: 36px;
  margin: 0;
  max-width: 150px;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.22;
  font-weight: 760;
  letter-spacing: -.012em;
  text-wrap: balance;
}
#sf-cloud-page .plan-sub {
  position: absolute;
  left: 16px;
  top: 74px;
  display: block;
  margin: 0;
  color: #728293;
  font-size: 10px;
  line-height: 1.25;
  font-weight: 720;
  letter-spacing: .012em;
}
#sf-cloud-page .plan-price {
  position: static;
  display: block;
  margin: 29px 0 0;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.05;
  font-weight: 780;
  letter-spacing: -.025em;
  white-space: nowrap;
}
#sf-cloud-page .plan-link {
  position: static;
  width: fit-content;
  min-height: 26px;
  margin: 10px 0 0;
  display: inline-flex;
  align-items: center;
  color: #155687;
  font-size: 10.75px;
  line-height: 1;
  font-weight: 780;
  letter-spacing: .005em;
}
#sf-cloud-page .plan-link::after {
  margin-left: 4px;
}
#sf-cloud-page .plan-featured {
  background: linear-gradient(180deg, rgba(21,152,125,.048) 0%, rgba(21,152,125,.016) 100%) !important;
}
#sf-cloud-page .tariff-table tbody th {
  width: 300px;
  padding: 14px 28px;
  color: #55697a;
  font-size: 11.75px;
  line-height: 1.45;
  font-weight: 620;
  box-shadow: inset 0 -1px 0 var(--table-rule), 14px 0 24px -28px rgba(8,36,61,.38);
}
#sf-cloud-page .tariff-table tbody td {
  height: 50px;
  box-shadow: inset 0 -1px 0 var(--table-rule);
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th, #sf-cloud-page .tariff-table tbody tr:nth-child(even) td {
  background: #fbfcfc;
}
#sf-cloud-page .tariff-table tbody tr:hover th, #sf-cloud-page .tariff-table tbody tr:hover td {
  background: #f7faf9;
}
#sf-cloud-page .table-check {
  width: 19px;
  height: 19px;
  background: rgba(21,152,125,.095);
}
#sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td {
  padding: 19px 16px 18px;
  background: #f7f9fa;
  box-shadow: inset 0 1px 0 var(--table-rule-strong);
}
#sf-cloud-page .tariff-table tfoot th {
  width: 300px;
  padding-left: 28px;
}
#sf-cloud-page .tariff-table tfoot td {
  vertical-align: top;
}
#sf-cloud-page .tariff-table tfoot td strong {
  min-height: 20px;
  margin-bottom: 7px;
  font-size: 13.5px;
  line-height: 1.15;
}

/* Small production polish without changing approved content or compositions. */
#sf-cloud-page .button, #sf-cloud-page .text-link, #sf-cloud-page .plan-link, #sf-cloud-page .site-nav a, #sf-cloud-page .header-actions__link {
  -webkit-tap-highlight-color: transparent;
}
#sf-cloud-page .button {
  letter-spacing: 0;
}
#sf-cloud-page .text-link, #sf-cloud-page .plan-link {
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
#sf-cloud-page .section-heading p, #sf-cloud-page .promo p, #sf-cloud-page .expert__copy p, #sf-cloud-page .tariff-notes, #sf-cloud-page .footer__column p, #sf-cloud-page .footer__column a {
  text-wrap: pretty;
}

@media (max-width: 1180px) {
  #sf-cloud-page .demo-form__footer {
    grid-template-columns: 136px minmax(260px, 1fr) 204px;
    column-gap: 20px;
  }
  #sf-cloud-page .verify { width: 136px; }
  #sf-cloud-page .demo-form__submit { width: 204px; }
}

@media (max-width: 960px) {
  #sf-cloud-page .demo-form__footer {
    grid-template-columns: 154px minmax(0, 1fr) 214px;
    column-gap: 20px;
  }
  #sf-cloud-page .verify { width: 154px; }
  #sf-cloud-page .demo-form__submit { width: 214px; }
}

@media (max-width: 720px) {
  #sf-cloud-page .demo-form { gap: 24px; }
  #sf-cloud-page .demo-form__grid { row-gap: 18px; }
  #sf-cloud-page .field--email small { min-height: 0; }
  #sf-cloud-page .demo-form__footer {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
  #sf-cloud-page .verify { width: 172px; }
  #sf-cloud-page .demo-form__footer .consent { min-height: auto; padding: 0; }
  #sf-cloud-page .demo-form__submit { width: 100%; }

  #sf-cloud-page .tariff-table { min-width: 1140px; }
  #sf-cloud-page .tariff-table .feature-col, #sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tfoot th { width: 246px; }
  #sf-cloud-page .tariff-table thead th { padding-inline: 14px; }
  #sf-cloud-page .tariff-table thead th:not(.feature-col)::before { left: 14px; }
  #sf-cloud-page .tariff-table .feature-col, #sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tfoot th { padding-left: 20px; padding-right: 20px; }
}

/* v9 final production pass - only requested UI/UX corrections. */
#sf-cloud-page {
  --table-header-line: rgba(10, 41, 71, .115);
  --table-header-line-strong: rgba(10, 41, 71, .16);
  --table-header-surface: #fbfcfd;
}

/* Hero select: use our own chevron and keep it safely inside the control. */
#sf-cloud-page .field select {
  -webkit-appearance: none;
  appearance: none;
  padding-left: var(--control-pad-x);
  padding-right: 64px;
  background-repeat: no-repeat;
  background-size: 14px 8px;
  background-position: right 26px center;
}
#sf-cloud-page .field--dark select {
  background-color: rgba(3, 28, 50, .22);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23A7B9C8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
#sf-cloud-page .field--dark select:hover {
  background-color: rgba(3, 28, 50, .26);
}
#sf-cloud-page .field--dark select:focus, #sf-cloud-page .field--dark select:focus-visible {
  background-color: rgba(3, 28, 50, .28);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23D6E2EA' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Tariff header: a single structured header band, not seven floating text groups. */
#sf-cloud-page .tariff-table {
  min-width: 1320px;
}
#sf-cloud-page .tariff-table thead th {
  position: relative;
  height: 184px;
  padding: 0 18px;
  vertical-align: top;
  background: linear-gradient(180deg, var(--table-header-surface) 0%, #fff 100%);
  border-top: 1px solid var(--table-header-line) !important;
  border-bottom: 1px solid var(--table-header-line-strong) !important;
  box-shadow: none;
}
#sf-cloud-page .tariff-table thead th + th {
  border-left: 1px solid var(--table-header-line) !important;
}
#sf-cloud-page .tariff-table thead th:first-child {
  border-left: 1px solid var(--table-header-line) !important;
}
#sf-cloud-page .tariff-table thead th:last-child {
  border-right: 1px solid var(--table-header-line) !important;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  left: 18px;
  top: -1px;
  width: 46px;
  height: 3px;
  opacity: .92;
}
#sf-cloud-page .tariff-table .feature-col {
  position: sticky;
  left: 0;
  z-index: 7;
  width: 292px;
  padding: 30px 28px 0;
  background: #f8fafb;
  color: #718291;
  font-size: 9.5px;
  line-height: 1.2;
  font-weight: 820;
  letter-spacing: .16em;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col) .plan-name {
  position: absolute;
  left: 18px;
  right: 16px;
  top: 28px;
}
#sf-cloud-page .plan-name {
  min-height: 0;
  max-width: none;
  margin: 0;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.27;
  font-weight: 780;
  letter-spacing: -.01em;
  text-wrap: balance;
}
#sf-cloud-page .plan-sub {
  position: absolute;
  left: 18px;
  right: 16px;
  top: 81px;
  min-height: 0;
  margin: 0;
  color: #718292;
  font-size: 9.75px;
  line-height: 1.25;
  font-weight: 760;
  letter-spacing: .035em;
  text-transform: uppercase;
  white-space: nowrap;
}
#sf-cloud-page .plan-price {
  position: absolute;
  left: 18px;
  right: 16px;
  top: 111px;
  margin: 0;
  color: var(--ink);
  font-size: 18px;
  line-height: 1;
  font-weight: 790;
  letter-spacing: -.025em;
  white-space: nowrap;
}
#sf-cloud-page .plan-link {
  position: absolute;
  left: 18px;
  bottom: 23px;
  min-height: 22px;
  margin: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
  color: #155687;
  font-size: 10.75px;
  line-height: 1;
  font-weight: 790;
}
#sf-cloud-page .plan-link::after {
  margin-left: 6px;
  transition: transform .18s ease;
}
#sf-cloud-page .plan-link:hover::after {
  transform: translateX(3px);
}
#sf-cloud-page .tariff-table thead .plan-featured {
  background: linear-gradient(180deg, rgba(21,152,125,.085) 0%, rgba(21,152,125,.025) 100%) !important;
}
#sf-cloud-page .tariff-table thead .plan-featured::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(21,152,125,.055);
}

/* Body remains calm: no card grid, just row rules and a clear frozen feature column. */
#sf-cloud-page .tariff-table tbody th {
  width: 292px;
  padding-left: 28px;
  padding-right: 28px;
}
#sf-cloud-page .tariff-table tfoot th {
  width: 292px;
  padding-left: 28px;
}
#sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tbody td {
  box-shadow: inset 0 -1px 0 rgba(10,41,71,.075);
}
#sf-cloud-page .tariff-table tbody th {
  box-shadow: inset 0 -1px 0 rgba(10,41,71,.075), 12px 0 24px -26px rgba(8,36,61,.32);
}
#sf-cloud-page .tariff-table tbody tr:hover th, #sf-cloud-page .tariff-table tbody tr:hover td {
  background: #f8fbfa;
}

/* Micro-polish: consistent interaction rhythm without changing layouts/content. */
#sf-cloud-page .button, #sf-cloud-page .text-link, #sf-cloud-page .plan-link, #sf-cloud-page .site-nav a, #sf-cloud-page .header-actions__link {
  transition-duration: .2s;
  transition-timing-function: cubic-bezier(.2,.7,.2,1);
}
#sf-cloud-page .button span, #sf-cloud-page .text-link span {
  margin-left: 1px;
}

@media (max-width: 720px) {
  #sf-cloud-page .field select {
    padding-right: 58px;
    background-position: right 22px center;
  }
  #sf-cloud-page .tariff-table {
    min-width: 1160px;
  }
  #sf-cloud-page .tariff-table .feature-col, #sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tfoot th {
    width: 246px;
  }
  #sf-cloud-page .tariff-table thead th {
    height: 180px;
    padding-inline: 15px;
  }
  #sf-cloud-page .tariff-table thead th:not(.feature-col)::before, #sf-cloud-page .tariff-table thead th:not(.feature-col) .plan-name, #sf-cloud-page .plan-sub, #sf-cloud-page .plan-price, #sf-cloud-page .plan-link {
    left: 15px;
  }
  #sf-cloud-page .tariff-table .feature-col {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* v9.1 header alignment correction: normal document flow for robust table-cell rendering. */
#sf-cloud-page .tariff-table thead th {
  height: 184px;
  padding: 27px 18px 22px;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col) .plan-name, #sf-cloud-page .plan-sub, #sf-cloud-page .plan-price, #sf-cloud-page .plan-link {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
}
#sf-cloud-page .plan-name {
  display: block;
  min-height: 42px;
  font-size: 13.5px;
  line-height: 1.25;
}
#sf-cloud-page .plan-sub {
  display: block;
  min-height: 18px;
  margin-top: 5px;
  font-size: 9.75px;
  line-height: 1.25;
}
#sf-cloud-page .plan-sub + .plan-price {
  margin-top: 10px;
}
#sf-cloud-page .plan-name + .plan-price {
  margin-top: 33px;
}
#sf-cloud-page .plan-price {
  display: block;
  font-size: 18px;
  line-height: 1.05;
}
#sf-cloud-page .plan-link {
  display: inline-flex;
  margin-top: 11px;
  min-height: 22px;
}
@media (max-width: 720px) {
  #sf-cloud-page .tariff-table thead th {
    height: 180px;
    padding: 25px 15px 20px;
  }
  #sf-cloud-page .plan-name { font-size: 13px; }
}

/* Last optical correction from visual QA. */
#sf-cloud-page .field select {
  padding-right: 70px;
  background-position: right 30px center;
}
#sf-cloud-page .plan-name {
  font-size: 14px;
  line-height: 1.24;
  font-weight: 790;
}
#sf-cloud-page .plan-sub {
  font-size: 10px;
  letter-spacing: .03em;
}
@media (max-width: 720px) {
  #sf-cloud-page .field select {
    padding-right: 62px;
    background-position: right 24px center;
  }
  #sf-cloud-page .plan-name { font-size: 13.25px; }
}

/* v10 production refinement - only requested corrections + system-level micro-polish. */
#sf-cloud-page {
  --tariff-x: 20px;
  --tariff-feature-x: 26px;
  --tariff-rule: rgba(10, 41, 71, .085);
  --tariff-rule-strong: rgba(10, 41, 71, .13);
}

/* Hero select: the chevron has the same optical inset as the text on the left. */
#sf-cloud-page .field select {
  padding-left: var(--control-pad-x);
  padding-right: 54px;
  background-position: right var(--control-pad-x) center;
}

/* Product shelf: keep the packshots left-aligned and give them a little more breathing room below. */
#sf-cloud-page .product {
  grid-template-rows: 136px 72px 24px auto;
}
#sf-cloud-page .product__visual {
  height: 114px;
}
#sf-cloud-page .product__copy h2 {
  margin-top: 0;
}

/* Decorative sequence numerals were removed from markup; preserve promo composition as-is. */
#sf-cloud-page .promo__content {
  margin-top: 0;
}

/* Tariffs: one spacing system, no boxed-cell treatment. */
#sf-cloud-page .tariff-shell {
  border: 0 !important;
  padding: 0 0 6px;
  background: #fff;
}
#sf-cloud-page .tariff-table {
  min-width: 1320px;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}
#sf-cloud-page .tariff-table th, #sf-cloud-page .tariff-table td {
  border: 0 !important;
}

/* Header is a single editorial band. The plan wrapper creates a strict 4-row baseline system. */
#sf-cloud-page .tariff-table thead th {
  height: 176px;
  padding: 24px var(--tariff-x) 18px;
  vertical-align: top;
  background: #fff;
  box-shadow: inset 0 -1px 0 var(--tariff-rule-strong) !important;
}
#sf-cloud-page .tariff-table thead th + th, #sf-cloud-page .tariff-table thead th:first-child, #sf-cloud-page .tariff-table thead th:last-child {
  border-left: 0 !important;
  border-right: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  left: var(--tariff-x);
  top: 0;
  width: 34px;
  height: 2px;
  opacity: .8;
}
#sf-cloud-page .tariff-table .feature-col {
  width: 292px;
  padding: 27px var(--tariff-feature-x) 18px;
  background: #fff;
  color: #728392;
  font-size: 9.5px;
  line-height: 1.2;
  font-weight: 820;
  letter-spacing: .16em;
  box-shadow: inset 0 -1px 0 var(--tariff-rule-strong) !important;
}
#sf-cloud-page .plan-head {
  display: grid;
  grid-template-rows: 42px 16px 24px 20px;
  row-gap: 8px;
  align-content: start;
  min-height: 126px;
}
#sf-cloud-page .plan-name, #sf-cloud-page .plan-sub, #sf-cloud-page .plan-price, #sf-cloud-page .plan-link {
  position: static !important;
  inset: auto !important;
  min-height: 0;
  margin: 0;
}
#sf-cloud-page .plan-name {
  grid-row: 1;
  align-self: start;
  display: block;
  max-width: 156px;
  color: var(--ink);
  font-size: 13.5px;
  line-height: 1.24;
  font-weight: 790;
  letter-spacing: -.012em;
  text-wrap: balance;
}
#sf-cloud-page .plan-sub {
  grid-row: 2;
  align-self: start;
  display: block;
  color: #718292;
  font-size: 9.75px;
  line-height: 1.2;
  font-weight: 760;
  letter-spacing: .035em;
  text-transform: uppercase;
  white-space: nowrap;
}
#sf-cloud-page .plan-price {
  grid-row: 3;
  align-self: start;
  display: block;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.08;
  font-weight: 790;
  letter-spacing: -.025em;
  white-space: nowrap;
}
#sf-cloud-page .plan-link {
  grid-row: 4;
  align-self: start;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 0;
  color: #155687;
  font-size: 10.75px;
  line-height: 1;
  font-weight: 790;
}
#sf-cloud-page .plan-link::after {
  margin-left: 6px;
}
#sf-cloud-page .tariff-table thead .plan-featured {
  background: linear-gradient(180deg, rgba(21,152,125,.055), rgba(21,152,125,.012)) !important;
}
#sf-cloud-page .tariff-table thead .plan-featured::after {
  display: none !important;
}

/* Body: consistent row metrics and only horizontal reading guides. */
#sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tbody td {
  height: 52px;
  padding-top: 14px;
  padding-bottom: 14px;
  background: #fff;
  box-shadow: inset 0 -1px 0 var(--tariff-rule) !important;
}
#sf-cloud-page .tariff-table tbody th {
  width: 292px;
  padding-left: var(--tariff-feature-x);
  padding-right: var(--tariff-feature-x);
  color: #55697a;
  font-size: 11.75px;
  line-height: 1.42;
  font-weight: 620;
}
#sf-cloud-page .tariff-table tbody td {
  padding-left: var(--tariff-x);
  padding-right: var(--tariff-x);
  text-align: center;
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th, #sf-cloud-page .tariff-table tbody tr:nth-child(even) td {
  background: #fff;
}
#sf-cloud-page .tariff-table tbody tr:hover th, #sf-cloud-page .tariff-table tbody tr:hover td {
  background: rgba(10, 41, 71, .018);
}
#sf-cloud-page .tariff-table tbody tr:hover td.plan-featured, #sf-cloud-page .tariff-table tbody tr:hover th.plan-featured, #sf-cloud-page .tariff-table tbody td.plan-featured, #sf-cloud-page .tariff-table tbody th.plan-featured {
  background: rgba(21,152,125,.025) !important;
}
#sf-cloud-page .table-check {
  vertical-align: middle;
}

/* Footer row follows the same horizontal padding grammar as the header/body. */
#sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td {
  padding-top: 18px;
  padding-bottom: 18px;
  background: #f7f9fa;
  border: 0 !important;
  box-shadow: inset 0 1px 0 var(--tariff-rule-strong) !important;
}
#sf-cloud-page .tariff-table tfoot th {
  width: 292px;
  padding-left: var(--tariff-feature-x);
  padding-right: var(--tariff-feature-x);
}
#sf-cloud-page .tariff-table tfoot td {
  padding-left: var(--tariff-x);
  padding-right: var(--tariff-x);
}
#sf-cloud-page .tariff-table tfoot td strong {
  min-height: 20px;
  margin: 0 0 7px;
  font-size: 13.5px;
  line-height: 1.15;
}
#sf-cloud-page .tariff-table tfoot .plan-link {
  margin: 0;
}

/* Optical polish only: keep existing composition/content, normalize micro-rhythm. */
#sf-cloud-page .section-heading > :last-child, #sf-cloud-page .promo__content > :last-child, #sf-cloud-page .expert__copy > :last-child, #sf-cloud-page .footer__column > :last-child {
  margin-bottom: 0;
}
#sf-cloud-page .button, #sf-cloud-page .text-link, #sf-cloud-page .plan-link {
  text-underline-offset: 3px;
}

@media (max-width: 720px) {
  #sf-cloud-page {
    --tariff-x: 16px;
    --tariff-feature-x: 20px;
  }
  #sf-cloud-page .field select {
    padding-right: 50px;
    background-position: right var(--control-pad-x) center;
  }
  #sf-cloud-page .product {
    grid-template-rows: 132px 72px 24px auto;
  }
  #sf-cloud-page .tariff-table {
    min-width: 1160px;
  }
  #sf-cloud-page .tariff-table thead th {
    height: 172px;
    padding: 23px var(--tariff-x) 17px;
  }
  #sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
    left: var(--tariff-x);
  }
  #sf-cloud-page .tariff-table .feature-col, #sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tfoot th {
    width: 246px;
  }
  #sf-cloud-page .tariff-table .feature-col {
    padding-left: var(--tariff-feature-x);
    padding-right: var(--tariff-feature-x);
  }
  #sf-cloud-page .plan-head {
    grid-template-rows: 40px 15px 24px 20px;
    row-gap: 7px;
    min-height: 120px;
  }
  #sf-cloud-page .plan-name {
    max-width: 146px;
    font-size: 13px;
  }
  #sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tbody td {
    padding-top: 13px;
    padding-bottom: 13px;
  }
}

/* v10.1 specificity guard */
#sf-cloud-page .plan-head .plan-name, #sf-cloud-page .plan-head .plan-sub, #sf-cloud-page .plan-head .plan-price, #sf-cloud-page .plan-head .plan-link { margin: 0 !important; }
#sf-cloud-page .plan-head .plan-price, #sf-cloud-page .tariff-table tfoot td strong, #sf-cloud-page .product__copy p { font-variant-numeric: tabular-nums; }

/* v11 final requested pass - only expert portrait + benefits refinement; all other layouts/content preserved. */

/* Remove the decorative identity stripe above the expert portrait. */
#sf-cloud-page .expert__accent {
  display: none !important;
}

/* Benefits: no background grid. Keep the section quiet and premium. */
#sf-cloud-page .benefits::before {
  display: none !important;
  content: none !important;
}
#sf-cloud-page .benefits__glow {
  opacity: .52;
  right: -150px;
  top: -210px;
  width: 520px;
  height: 520px;
}
#sf-cloud-page .benefits__flow {
  gap: 28px 36px;
}
#sf-cloud-page .benefit, #sf-cloud-page .benefit:nth-last-child(-n/**/+2), #sf-cloud-page .benefit:last-child {
  min-height: 70px;
  grid-template-columns: 28px minmax(0,1fr);
  gap: 14px;
  align-items: start;
}
#sf-cloud-page .benefit__icon {
  width: 24px;
  height: 24px;
  margin-top: 2px;
  color: rgba(255,255,255,.70);
  stroke-width: 1.6;
}
#sf-cloud-page .benefit span {
  margin-bottom: 6px;
  color: rgba(255,255,255,.30);
}
#sf-cloud-page .benefit h3, #sf-cloud-page .benefit--lead h3 {
  font-size: 15px;
  line-height: 1.32;
  font-weight: 670;
  letter-spacing: -.01em;
}

/* Rendering polish only; no geometry/content changes outside requested zones. */
#sf-cloud-page {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 720px) {
  #sf-cloud-page .benefits__flow { gap: 22px; }
  #sf-cloud-page .benefit { grid-template-columns: 26px minmax(0,1fr); gap: 12px; }
  #sf-cloud-page .benefit__icon { width: 22px; height: 22px; }
}

/* Certificates - compact extension added to v11 without changing existing layout */
#sf-cloud-page .certificates {
  padding: 88px 0 56px;
  background: linear-gradient(180deg, #f7f9fc 0%, #ffffff 100%);
}
#sf-cloud-page .certificates .section-heading { margin-bottom: 32px; }
#sf-cloud-page .certificates__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
#sf-cloud-page .certificate-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  padding: 18px;
  border: 1px solid rgba(11,49,84,.08);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 20px 48px rgba(11,49,84,.08);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  cursor: pointer;
  text-align: left;
}
#sf-cloud-page .certificate-card:hover, #sf-cloud-page .certificate-card:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 24px 56px rgba(11,49,84,.12);
  border-color: rgba(18,123,195,.22);
  outline: none;
}
#sf-cloud-page .certificate-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 220px;
  padding: 12px;
  border-radius: 18px;
  background: linear-gradient(180deg, #fbfcfe 0%, #f2f6fb 100%);
  overflow: hidden;
}
#sf-cloud-page .certificate-card__media img {
  max-width: 100%;
  max-height: 220px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
}
#sf-cloud-page .certificate-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 16px;
}
#sf-cloud-page .certificate-card__title {
  display: block;
  color: #0b3154;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}
#sf-cloud-page .certificate-card__action {
  flex: none;
  color: #127bc3;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
}
#sf-cloud-page .cert-modal {
  width: min(1040px, calc(100vw - 32px));
  max-width: 1040px;
  padding: 0;
  border: 0;
  border-radius: 28px;
  background: transparent;
  overflow: visible;
}
#sf-cloud-page .cert-modal::backdrop {
  background: rgba(8, 21, 35, .64);
  backdrop-filter: blur(8px);
}
#sf-cloud-page .cert-modal__sheet {
  position: relative;
  padding: 22px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 30px 90px rgba(8,21,35,.28);
}
#sf-cloud-page .cert-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: #edf4fb;
  color: #0b3154;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
#sf-cloud-page .cert-modal__figure { margin: 0; }
#sf-cloud-page .cert-modal__figure img {
  display: block;
  width: 100%;
  max-height: calc(88vh - 70px);
  object-fit: contain;
  border-radius: 18px;
  background: #fff;
}
#sf-cloud-page .cert-modal__figure figcaption {
  padding: 16px 6px 0;
  color: #0b3154;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}
@media (max-width: 960px) {
  #sf-cloud-page .certificates { padding: 72px 0 44px; }
  #sf-cloud-page .certificates__grid { grid-template-columns: 1fr; }
  #sf-cloud-page .certificate-card { padding: 16px; border-radius: 20px; }
  #sf-cloud-page .certificate-card__media { min-height: 180px; }
  #sf-cloud-page .certificate-card__media img { max-height: 180px; }
  #sf-cloud-page .certificate-card__meta { padding-top: 14px; }
  #sf-cloud-page .certificate-card__title { font-size: 17px; }
  #sf-cloud-page .cert-modal { width: min(100vw - 20px, 900px); }
  #sf-cloud-page .cert-modal__sheet { padding: 16px; border-radius: 22px; }
  #sf-cloud-page .cert-modal__close { top: 10px; right: 10px; width: 40px; height: 40px; }
  #sf-cloud-page .cert-modal__figure img { max-height: calc(85vh - 56px); border-radius: 14px; }
  #sf-cloud-page .cert-modal__figure figcaption { font-size: 16px; }
}


/* v11 targeted refinement: clients + certificates only */
#sf-cloud-page .clients {
  background: #ffffff;
  border: 0;
}
#sf-cloud-page .clients .section-heading, #sf-cloud-page .certificates .section-heading {
  margin-bottom: 48px;
}
#sf-cloud-page .clients .section-heading h2, #sf-cloud-page .certificates .section-heading h2 {
  margin-top: 0;
  color: #0b3154;
  letter-spacing: -.038em;
}
#sf-cloud-page .clients .section-heading .eyebrow, #sf-cloud-page .certificates .section-heading .eyebrow {
  margin-bottom: 13px;
  color: #7d8b99;
  font-size: 11px;
  line-height: 1;
  font-weight: 760;
  letter-spacing: .17em;
}

/* Clients: clean editorial grid, no cards and no hover effects */
#sf-cloud-page .client-cloud {
  padding: 0;
  gap: 0;
  border: 0;
  background: transparent;
}
#sf-cloud-page .client-cloud img {
  width: 100%;
  height: 132px;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 34px 30px;
  object-fit: contain;
  border-right: 1px solid #e1e7ec;
  border-bottom: 1px solid #e1e7ec;
  background: transparent;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
  transform: none;
  transition: none;
}
#sf-cloud-page .client-cloud img:hover {
  transform: none;
  filter: none;
  opacity: 1;
}
#sf-cloud-page .client-cloud img:nth-child(-n/**/+6) { border-top: 1px solid #e1e7ec; }
#sf-cloud-page .client-cloud img:nth-child(6n + 1) { border-left: 1px solid #e1e7ec; }

/* Certificates: flat grey section, only the certificate sheets themselves are white */
#sf-cloud-page .certificates {
  padding: 88px 0 72px;
  background: #f3f5f7;
  border: 0;
}
#sf-cloud-page .certificates__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 30px;
}
#sf-cloud-page .certificate-card {
  display: grid;
  grid-template-rows: auto auto;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: left;
  cursor: pointer;
  transform: none;
}
#sf-cloud-page .certificate-card:hover, #sf-cloud-page .certificate-card:focus-visible {
  transform: none;
  border: 0;
  box-shadow: none;
  outline: none;
}
#sf-cloud-page .certificate-card:focus-visible .certificate-card__media {
  outline: 2px solid rgba(18,123,195,.42);
  outline-offset: 4px;
}
#sf-cloud-page .certificate-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 248px;
  padding: 18px;
  border: 0;
  border-radius: 12px;
  background: #ffffff;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(11,49,84,.07);
}
#sf-cloud-page .certificate-card__media img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 248px;
  object-fit: contain;
  box-shadow: none;
}
#sf-cloud-page .certificate-card__meta {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 18px;
  align-items: start;
  padding-top: 16px;
}
#sf-cloud-page .certificate-card__title {
  display: block;
  color: #173a58;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 680;
  letter-spacing: -.012em;
}
#sf-cloud-page .certificate-card__action {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding-top: 2px;
  color: #24618f;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}
#sf-cloud-page .certificate-card__action::after {
  content: "→";
  font-size: 15px;
  line-height: 1;
}

/* Certificate viewer: one clean sheet, precise navigation */
#sf-cloud-page .cert-modal {
  width: min(1080px, calc(100vw - 36px));
  max-width: 1080px;
  padding: 0;
  border: 0;
  border-radius: 18px;
  background: transparent;
  overflow: visible;
}
#sf-cloud-page .cert-modal::backdrop {
  background: rgba(7,22,36,.66);
  backdrop-filter: blur(7px);
}
#sf-cloud-page .cert-modal__sheet {
  position: relative;
  padding: 22px 72px 20px;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 28px 90px rgba(5,22,36,.24);
}
#sf-cloud-page .cert-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 4;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #6f7f8e;
  font-size: 28px;
  line-height: 40px;
  text-align: center;
  cursor: pointer;
}
#sf-cloud-page .cert-modal__nav {
  position: absolute;
  top: 50%;
  z-index: 3;
  width: 44px;
  height: 64px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: translateY(-50%);
  cursor: pointer;
}
#sf-cloud-page .cert-modal__nav::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  border-top: 2px solid #0b3154;
  border-right: 2px solid #0b3154;
}
#sf-cloud-page .cert-modal__nav--prev { left: 15px; }
#sf-cloud-page .cert-modal__nav--next { right: 15px; }
#sf-cloud-page .cert-modal__nav--prev::before { transform: translate(-38%,-50%) rotate(-135deg); }
#sf-cloud-page .cert-modal__nav--next::before { transform: translate(-62%,-50%) rotate(45deg); }
#sf-cloud-page .cert-modal__nav:hover, #sf-cloud-page .cert-modal__nav:focus-visible, #sf-cloud-page .cert-modal__close:hover, #sf-cloud-page .cert-modal__close:focus-visible {
  background: transparent;
  border: 0;
  outline: none;
}
#sf-cloud-page .cert-modal__nav:focus-visible::after, #sf-cloud-page .cert-modal__close:focus-visible::after {
  content: "";
  position: absolute;
  inset: 4px;
  border: 1px solid rgba(18,123,195,.5);
  border-radius: 6px;
}
#sf-cloud-page .cert-modal__figure {
  display: grid;
  gap: 14px;
  margin: 0;
}
#sf-cloud-page .cert-modal__figure img {
  display: block;
  width: 100%;
  max-height: calc(88vh - 100px);
  object-fit: contain;
  border: 0;
  border-radius: 10px;
  background: #ffffff;
}
#sf-cloud-page .cert-modal__figure figcaption {
  padding: 0 2px;
  color: #2b465f;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 640;
  letter-spacing: -.006em;
}

@media (max-width: 960px) {
  #sf-cloud-page .clients .section-heading, #sf-cloud-page .certificates .section-heading { margin-bottom: 38px; }

  #sf-cloud-page .client-cloud img { height: 122px; padding: 30px 22px; }
  #sf-cloud-page .client-cloud img:nth-child(-n/**/+6) { border-top: 0; }
  #sf-cloud-page .client-cloud img:nth-child(6n + 1) { border-left: 0; }
  #sf-cloud-page .client-cloud img:nth-child(n) { border-right: 1px solid #e1e7ec; border-bottom: 1px solid #e1e7ec; }
  #sf-cloud-page .client-cloud img:nth-child(4n + 1) { border-left: 1px solid #e1e7ec; }
  #sf-cloud-page .client-cloud img:nth-child(-n/**/+4) { border-top: 1px solid #e1e7ec; }

  #sf-cloud-page .certificates { padding: 74px 0 58px; }
  #sf-cloud-page .certificates__grid { grid-template-columns: 1fr; gap: 22px; }
  #sf-cloud-page .certificate-card { grid-template-columns: minmax(0,220px) minmax(0,1fr); grid-template-rows: auto; gap: 22px; align-items: center; }
  #sf-cloud-page .certificate-card__media { min-height: 176px; padding: 12px; }
  #sf-cloud-page .certificate-card__media img { max-height: 176px; }
  #sf-cloud-page .certificate-card__meta { padding-top: 0; align-items: center; }

  #sf-cloud-page .cert-modal__sheet { padding: 18px 58px 18px; }
  #sf-cloud-page .cert-modal__nav { width: 40px; height: 56px; }
}

@media (max-width: 720px) {
  #sf-cloud-page .client-cloud img { height: 114px; padding: 27px 18px; }
  #sf-cloud-page .client-cloud img:nth-child(n) { border-right: 1px solid #e1e7ec; border-bottom: 1px solid #e1e7ec; }
  #sf-cloud-page .client-cloud img:nth-child(3n + 1) { border-left: 1px solid #e1e7ec; }
  #sf-cloud-page .client-cloud img:nth-child(-n/**/+3) { border-top: 1px solid #e1e7ec; }

  #sf-cloud-page .certificate-card { grid-template-columns: minmax(0,150px) minmax(0,1fr); gap: 18px; }
  #sf-cloud-page .certificate-card__media { min-height: 146px; border-radius: 10px; }
  #sf-cloud-page .certificate-card__media img { max-height: 146px; }
  #sf-cloud-page .certificate-card__meta { grid-template-columns: 1fr; gap: 8px; }
  #sf-cloud-page .certificate-card__title { font-size: 15px; }
  #sf-cloud-page .certificate-card__action { font-size: 11px; }

  #sf-cloud-page .cert-modal { width: min(100vw - 18px, 900px); }
  #sf-cloud-page .cert-modal__sheet { padding: 14px 44px 16px; border-radius: 14px; }
  #sf-cloud-page .cert-modal__close { top: 8px; right: 8px; }
  #sf-cloud-page .cert-modal__nav { width: 36px; height: 52px; }
  #sf-cloud-page .cert-modal__nav--prev { left: 5px; }
  #sf-cloud-page .cert-modal__nav--next { right: 5px; }
  #sf-cloud-page .cert-modal__nav::before { width: 12px; height: 12px; }
  #sf-cloud-page .cert-modal__figure img { max-height: calc(84vh - 86px); border-radius: 8px; }
  #sf-cloud-page .cert-modal__figure figcaption { font-size: 14px; }
}

@media (max-width: 460px) {
  #sf-cloud-page .client-cloud img:nth-child(n) { border-right: 1px solid #e1e7ec; border-bottom: 1px solid #e1e7ec; }
  #sf-cloud-page .client-cloud img:nth-child(2n + 1) { border-left: 1px solid #e1e7ec; }
  #sf-cloud-page .client-cloud img:nth-child(-n/**/+2) { border-top: 1px solid #e1e7ec; }

  #sf-cloud-page .certificates { padding: 64px 0 50px; }
  #sf-cloud-page .certificate-card { grid-template-columns: 118px minmax(0,1fr); gap: 14px; }
  #sf-cloud-page .certificate-card__media { min-height: 122px; padding: 10px; }
  #sf-cloud-page .certificate-card__media img { max-height: 122px; }
}


/* v3 - targeted UI/UX refinement: clients + certificates only */
#sf-cloud-page .clients {
  background: #fff;
}
#sf-cloud-page .clients .section-heading { margin-bottom: 44px; }
#sf-cloud-page .client-cloud {
  border-top: 1px solid #e4e9ee;
  border-left: 1px solid #e4e9ee;
  border-right: 0;
  border-bottom: 0;
}
#sf-cloud-page .client-cloud img, #sf-cloud-page .client-cloud img:nth-child(n), #sf-cloud-page .client-cloud img:nth-child(2n), #sf-cloud-page .client-cloud img:nth-child(3n), #sf-cloud-page .client-cloud img:nth-child(4n), #sf-cloud-page .client-cloud img:nth-child(6n), #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+2), #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+3), #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+4), #sf-cloud-page .client-cloud img:nth-last-child(-n/**/+6) {
  border-top: 0;
  border-left: 0;
  border-right: 1px solid #e4e9ee;
  border-bottom: 1px solid #e4e9ee;
}
#sf-cloud-page .client-cloud img {
  background: #fff;
  filter: none;
  opacity: 1;
  transition: none;
  transform: none;
}
#sf-cloud-page .client-cloud img:hover {
  transform: none;
  filter: none;
  opacity: 1;
}

#sf-cloud-page .certificates {
  padding: 84px 0 70px;
  background: #f3f5f7;
}
#sf-cloud-page .certificates .section-heading { margin-bottom: 40px; }
#sf-cloud-page .certificates__carousel {
  position: relative;
  padding: 0 58px;
}
#sf-cloud-page .certificates__viewport {
  overflow: hidden;
}
#sf-cloud-page .certificates__track {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
#sf-cloud-page .certificates__track::-webkit-scrollbar { display: none; }
#sf-cloud-page .certificate-card {
  flex: 0 0 clamp(276px, 29vw, 336px);
  min-width: 0;
  scroll-snap-align: start;
  display: block;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}
#sf-cloud-page .certificate-card__media {
  min-height: 232px;
  padding: 16px;
  border: 0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(11,49,84,.055);
}
#sf-cloud-page .certificate-card__media img {
  max-height: 232px;
  box-shadow: none;
}
#sf-cloud-page .certificate-card__meta {
  display: block;
  padding: 14px 10px 0;
  text-align: center;
}
#sf-cloud-page .certificate-card__title {
  display: block;
  color: #173a58;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 620;
  letter-spacing: -.008em;
}
#sf-cloud-page .certificate-card__date {
  display: block;
  margin-top: 4px;
  color: #7b8996;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 520;
  letter-spacing: .015em;
}
#sf-cloud-page .certificate-card__action { display: none; }
#sf-cloud-page .certificates__nav, #sf-cloud-page .cert-modal__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: #173a58;
}
#sf-cloud-page .certificates__nav {
  position: absolute;
  top: 108px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 1px solid #d8e0e7;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 20px rgba(11,49,84,.06);
  cursor: pointer;
}
#sf-cloud-page .certificates__nav--prev { left: 0; }
#sf-cloud-page .certificates__nav--next { right: 0; }
#sf-cloud-page .certificates__nav svg, #sf-cloud-page .cert-modal__nav svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#sf-cloud-page .certificates__nav:hover, #sf-cloud-page .certificates__nav:focus-visible {
  border-color: #bfcbd6;
  outline: none;
}

#sf-cloud-page .cert-modal__nav::before { display: none; }
#sf-cloud-page .cert-modal__nav {
  border: 0;
  background: transparent;
  box-shadow: none;
}
#sf-cloud-page .cert-modal__nav svg { width: 22px; height: 22px; }
#sf-cloud-page .cert-modal__figure figcaption {
  padding: 2px 72px 0;
  color: #324b62;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 520;
  letter-spacing: .01em;
  text-align: center;
}

@media (max-width: 960px) {
  #sf-cloud-page .certificates__carousel { padding: 0 50px; }
  #sf-cloud-page .certificate-card { flex-basis: min(52vw, 320px); }
  #sf-cloud-page .client-cloud {
    border-top: 1px solid #e4e9ee;
    border-left: 1px solid #e4e9ee;
  }
  #sf-cloud-page .client-cloud img, #sf-cloud-page .client-cloud img:nth-child(n) {
    border-top: 0;
    border-left: 0;
    border-right: 1px solid #e4e9ee;
    border-bottom: 1px solid #e4e9ee;
  }
}

@media (max-width: 720px) {
  #sf-cloud-page .certificates { padding: 68px 0 54px; }
  #sf-cloud-page .certificates__carousel { padding: 0 42px; }
  #sf-cloud-page .certificates__nav { top: 92px; width: 36px; height: 36px; }
  #sf-cloud-page .certificate-card { flex-basis: min(76vw, 292px); }
  #sf-cloud-page .certificate-card__media { min-height: 196px; padding: 14px; }
  #sf-cloud-page .certificate-card__media img { max-height: 196px; }
  #sf-cloud-page .certificate-card__title { font-size: 14px; }
  #sf-cloud-page .certificate-card__date { font-size: 11.5px; }
  #sf-cloud-page .cert-modal__figure figcaption { padding-inline: 36px; font-size: 13.5px; }
}

@media (max-width: 460px) {
  #sf-cloud-page .certificates__carousel { padding: 0 34px; }
  #sf-cloud-page .certificate-card { flex-basis: 82vw; }
  #sf-cloud-page .certificate-card__media { min-height: 176px; }
  #sf-cloud-page .certificate-card__media img { max-height: 176px; }
  #sf-cloud-page .certificates__nav { top: 82px; width: 34px; height: 34px; }
}


/* v3.1 final polish: certificate rail and viewer only */
#sf-cloud-page .certificates__viewport {
  width: min(100%, 960px);
  margin-inline: auto;
}
#sf-cloud-page .certificate-card {
  flex-basis: 324px;
}
#sf-cloud-page .cert-modal__figure figcaption {
  font-size: 13.5px;
  line-height: 1.55;
  font-weight: 540;
  letter-spacing: .016em;
}
#sf-cloud-page .cert-modal__nav svg {
  display: block;
  width: 22px;
  height: 22px;
}
@media (max-width: 960px) {
  #sf-cloud-page .certificates__viewport { width: 100%; }
  #sf-cloud-page .certificate-card { flex-basis: min(52vw, 320px); }
}
@media (max-width: 720px) {
  #sf-cloud-page .certificate-card { flex-basis: min(76vw, 292px); }
  #sf-cloud-page .cert-modal__figure figcaption { font-size: 13px; }
}
@media (max-width: 460px) {
  #sf-cloud-page .certificate-card { flex-basis: 82vw; }
}


/* v4 - certificate spacing refinement only */
#sf-cloud-page .certificates {
  padding: 92px 0 76px;
}
#sf-cloud-page .certificates .section-heading {
  margin-bottom: 46px;
}
#sf-cloud-page .certificates__carousel {
  padding: 0 62px;
}
#sf-cloud-page .certificates__viewport {
  width: min(100%, 1040px);
  padding: 2px 0 8px;
}
#sf-cloud-page .certificates__track {
  gap: 28px;
  scroll-padding-inline: 2px;
}
#sf-cloud-page .certificate-card {
  flex-basis: 316px;
}
#sf-cloud-page .certificate-card__media {
  min-height: 236px;
  padding: 18px;
}
#sf-cloud-page .certificate-card__media img {
  max-height: 236px;
}
#sf-cloud-page .certificate-card__meta {
  padding: 16px 10px 0;
}
#sf-cloud-page .certificate-card__title {
  font-size: 14.5px;
  line-height: 1.34;
  letter-spacing: -.01em;
}
#sf-cloud-page .certificate-card__date {
  margin-top: 5px;
  font-size: 11.5px;
  line-height: 1.4;
}
#sf-cloud-page .certificates__nav {
  top: 112px;
}
#sf-cloud-page .cert-modal__figure figcaption {
  padding-top: 6px;
}

@media (max-width: 960px) {
  #sf-cloud-page .certificates { padding: 78px 0 62px; }
  #sf-cloud-page .certificates .section-heading { margin-bottom: 38px; }
  #sf-cloud-page .certificates__carousel { padding: 0 52px; }
  #sf-cloud-page .certificates__track { gap: 22px; }
  #sf-cloud-page .certificate-card { flex-basis: min(52vw, 310px); }
}
@media (max-width: 720px) {
  #sf-cloud-page .certificates { padding: 66px 0 52px; }
  #sf-cloud-page .certificates__carousel { padding: 0 42px; }
  #sf-cloud-page .certificates__track { gap: 18px; }
  #sf-cloud-page .certificate-card { flex-basis: min(76vw, 284px); }
  #sf-cloud-page .certificate-card__media { min-height: 190px; padding: 14px; }
  #sf-cloud-page .certificate-card__media img { max-height: 190px; }
  #sf-cloud-page .certificate-card__meta { padding-top: 14px; }
  #sf-cloud-page .certificates__nav { top: 90px; }
}
@media (max-width: 460px) {
  #sf-cloud-page .certificates__carousel { padding: 0 34px; }
  #sf-cloud-page .certificate-card { flex-basis: 80vw; }
  #sf-cloud-page .certificate-card__media { min-height: 172px; }
  #sf-cloud-page .certificate-card__media img { max-height: 172px; }
  #sf-cloud-page .certificates__nav { top: 81px; }
}

/* Customer review 2026-09-25: exact Softrum brand palette only. */
#sf-cloud-page {
  --navy-950: #0a2746;
  --navy-900: #123a65;
  --navy-850: #123a65;
  --navy-800: #1e4d7e;
  --navy-700: #1e4d7e;
  --ink: #0a2746;
  --green: #259075;
  --green-deep: #19755e;
  --orange: #ff9404;
  --blue: #1d5aaf;
}

/* Exact palette sampled from the production softrum.ru UI and logo; geometry/content unchanged. */
#sf-cloud-page .button--primary {
  background: linear-gradient(135deg, #259075 0%, #19755e 100%);
  box-shadow: 0 10px 26px rgba(25,117,94,.22);
}
#sf-cloud-page .button--primary:hover { box-shadow: 0 13px 32px rgba(25,117,94,.30); }
#sf-cloud-page .site-nav a::after { background: #259075; }
#sf-cloud-page .hero {
  background: radial-gradient(circle at 86% 14%, rgba(30,77,126,.28), transparent 31%),
              linear-gradient(118deg, #0a2746 0%, #123a65 54%, #1e4d7e 100%);
}
#sf-cloud-page .demo::after, #sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  background: linear-gradient(90deg, #1d5aaf, #259075, #ff9404);
}
#sf-cloud-page .benefits { background: linear-gradient(124deg, #0a2746 0%, #123a65 58%, #1e4d7e 100%); }
#sf-cloud-page .promo--gift { background: radial-gradient(circle at 84% 28%, rgba(255,255,255,.18), transparent 25%), linear-gradient(125deg, #0a2746 0%, #123a65 68%, #1e4d7e 100%); }

/* Header: remove unrelated ITS message; one clear conversion action. */
#sf-cloud-page .site-header__inner { grid-template-columns: 236px 1fr auto; }
#sf-cloud-page .header-actions { gap: 0; }
#sf-cloud-page .header-actions .button { min-width: 188px; }

/* Demo access: automatic delivery, no redundant consultation CTA. */
#sf-cloud-page .demo__intro { margin: 18px 0 30px; }
#sf-cloud-page .demo__intro h2 {
  max-width: none;
  color: rgba(255,255,255,.86);
  font-size: 18px;
  letter-spacing: .10em;
}
#sf-cloud-page .demo-form__submit:disabled {
  opacity: .48;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}
#sf-cloud-page .demo-form .field--email small {
  max-width: 500px;
  color: rgba(255,255,255,.62);
  font-size: 11.5px;
  line-height: 1.5;
}

/* Programs: one quiet afterword, no new card/container. */
#sf-cloud-page .products__afterword {
  margin-top: 38px;
  padding-top: 24px;
  border-top: 1px solid #e5ebef;
}
#sf-cloud-page .products__afterword p {
  margin: 0;
  color: #657688;
  font-size: 14px;
  line-height: 1.55;
}
#sf-cloud-page .products__afterword a {
  color: #0d4c7d;
  font-weight: 760;
  text-decoration: underline;
  text-decoration-color: rgba(13,76,125,.28);
  text-underline-offset: 4px;
}

/* Promotions: current-client friendly and both old-page promotions grouped together. */
#sf-cloud-page .promo__title-link { color: inherit; }
#sf-cloud-page .promo__details-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-top: 8px;
  color: #fff;
  font-size: 13px;
  font-weight: 760;
  text-decoration: underline;
  text-decoration-color: rgba(255,255,255,.34);
  text-underline-offset: 4px;
}
#sf-cloud-page .promo__secondary-offer {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.18);
}
#sf-cloud-page .promo__secondary-offer strong {
  display: block;
  color: #fff;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 780;
  letter-spacing: -.01em;
}
#sf-cloud-page .promo__secondary-offer p { margin-top: 6px; }
#sf-cloud-page .promo--gift { min-height: 500px; }

/* Tariffs: readable vertical labels + light row/column tint instead of a boxy border grid. */
#sf-cloud-page .tariff-shell {
  border-top: 1px solid #cfdae3;
  border-bottom: 1px solid #cfdae3;
}
#sf-cloud-page .tariff-table th, #sf-cloud-page .tariff-table td {
  border-right: 0;
  border-bottom-color: #e7edf1;
}
#sf-cloud-page .tariff-table thead th {
  background: #f6f9fb;
  border-bottom: 1px solid #dbe4ea;
}
#sf-cloud-page .tariff-table thead th:nth-child(even) { background: #fbfdfe; }
#sf-cloud-page .tariff-table .feature-col {
  color: #647789;
  background: #f1f6f9;
}
#sf-cloud-page .tariff-table tbody th {
  color: #344f67;
  background: #fff;
  font-size: 13px;
  line-height: 1.46;
  font-weight: 710;
  box-shadow: 1px 0 0 #dfe7ec;
}
#sf-cloud-page .tariff-table tbody td { background: #fff; }
#sf-cloud-page .tariff-table tbody td:nth-child(even) { background: #f9fbfd; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th { background: #f4f8fa; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td { background: #f6f9fb; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td:nth-child(even) { background: #f1f6f9; }
#sf-cloud-page .tariff-table .plan-featured { background: #eef8f4 !important; }
#sf-cloud-page .tariff-table tbody td:nth-child(7) { background: #f4faf7; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td:nth-child(7) { background: #edf7f2; }
#sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td { background: #eef4f7; }
#sf-cloud-page .tariff-table tfoot td:nth-child(even) { background: #f4f8fa; }
#sf-cloud-page .tariff-meta--notes-only { grid-template-columns: 1fr; }

@media (max-width: 960px) {
  #sf-cloud-page .products__afterword { margin-top: 30px; }
  #sf-cloud-page .promo--gift { min-height: 0; }
}

/* Customer fixes v8 - strictly points 1, 2 and 4 only. */
#sf-cloud-page .utility-bar__contacts { gap: 16px; }
#sf-cloud-page .utility-bar__cta {
  min-height: 30px;
  margin-left: 2px;
  padding: 0 14px;
  border: 0;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff;
  background: #259075;
  box-shadow: 0 5px 14px rgba(25,117,94,.20);
  font: inherit;
  font-size: 11.5px;
  line-height: 1;
  font-weight: 760;
  white-space: nowrap;
  cursor: pointer;
  transition: background .18s ease, box-shadow .18s ease;
}
#sf-cloud-page .utility-bar__cta:hover, #sf-cloud-page .utility-bar__cta:focus-visible {
  color: #fff;
  background: #19755e;
  box-shadow: 0 7px 18px rgba(25,117,94,.26);
  outline: none;
}
#sf-cloud-page .header-actions--mobile { display: none; }

#sf-cloud-page .demo-form .verify input:required:invalid:not(:placeholder-shown) { border-color: rgba(255,255,255,.28); }
#sf-cloud-page .promo__secondary-offer strong a {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: rgba(255,255,255,.34);
  text-underline-offset: 4px;
}
#sf-cloud-page .promo__secondary-offer strong a:hover, #sf-cloud-page .promo__secondary-offer strong a:focus-visible {
  text-decoration-color: rgba(255,255,255,.72);
  outline: none;
}

@media (max-width: 720px) {
  #sf-cloud-page .header-actions--mobile { display: flex; }
}


/* v10: header CTA + exact demo access form, no other regressions */
#sf-cloud-page .utility-bar__contacts { gap: 18px; }
#sf-cloud-page .utility-bar__cta--link {
  min-height: 0;
  margin-left: 8px;
  padding: 0;
  border-radius: 0;
  color: #fff;
  background: transparent;
  box-shadow: none;
  font-size: 12.5px;
  line-height: 1.2;
  font-weight: 500;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(255,255,255,.55);
  text-underline-offset: 4px;
  white-space: nowrap;
}
#sf-cloud-page .utility-bar__cta--link:hover, #sf-cloud-page .utility-bar__cta--link:focus-visible {
  color: #fff;
  background: transparent;
  box-shadow: none;
  text-decoration-color: rgba(255,255,255,.95);
  outline: none;
}
#sf-cloud-page .demo::after {
  top: -6px;
  transform: none;
}
#sf-cloud-page .demo__intro {
  margin: 24px 0 28px;
}
#sf-cloud-page .demo__intro h2 {
  max-width: 100%;
  color: rgba(255,255,255,.84);
  font-size: 16px;
  letter-spacing: .105em;
}
#sf-cloud-page #get_promo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 22px;
  row-gap: 18px;
  align-items: start;
}
#sf-cloud-page #get_promo > input[type="hidden"] {
  display: none;
}
#sf-cloud-page #get_promo .f_row {
  display: none !important;
}
#sf-cloud-page .demo-field {
  min-width: 0;
  display: grid;
  gap: 8px;
}
#sf-cloud-page .demo-field__label {
  color: rgba(255,255,255,.56);
  font-size: 11px;
  line-height: 1;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}
#sf-cloud-page #get_promo .demo-field input[type="text"], #sf-cloud-page #get_promo .demo-field input[type="email"], #sf-cloud-page #get_promo .demo-field input[type="tel"], #sf-cloud-page #get_promo .softrum__select select {
  width: 100% !important;
  margin: 0 !important;
  height: 56px;
  padding: 0 18px !important;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 16px;
  outline: none;
  color: #fff;
  background: rgba(3,28,50,.28);
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
#sf-cloud-page #get_promo .demo-field input[type="text"]::placeholder, #sf-cloud-page #get_promo .demo-field input[type="email"]::placeholder, #sf-cloud-page #get_promo .demo-field input[type="tel"]::placeholder, #sf-cloud-page #get_promo .softrum__select select {
  color: rgba(255,255,255,.56);
}
#sf-cloud-page #get_promo .demo-field input[type="text"]:focus, #sf-cloud-page #get_promo .demo-field input[type="email"]:focus, #sf-cloud-page #get_promo .demo-field input[type="tel"]:focus, #sf-cloud-page #get_promo .softrum__select select:focus {
  border-color: rgba(255,255,255,.42);
  box-shadow: 0 0 0 3px rgba(255,255,255,.06);
}
#sf-cloud-page #get_promo .softrum__select {
  position: relative;
}
#sf-cloud-page #get_promo .softrum__select::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  width: 11px;
  height: 11px;
  border-right: 2px solid rgba(255,255,255,.7);
  border-bottom: 2px solid rgba(255,255,255,.7);
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
}
#sf-cloud-page #get_promo .softrum__select select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 48px !important;
}
#sf-cloud-page .demo-field--name { grid-column: 1; }
#sf-cloud-page .demo-field--email { grid-column: 2; }
#sf-cloud-page .demo-field--phone { grid-column: 1; }
#sf-cloud-page .demo-field--select { grid-column: 2; }
#sf-cloud-page #get_promo .softrum__note {
  max-width: 420px;
  margin-top: 2px;
  color: rgba(255,255,255,.54);
  font-size: 11px;
  line-height: 1.5;
  font-weight: 500;
}
#sf-cloud-page #get_promo .softrum__checkbox {
  grid-column: 1 / -1;
  margin-top: 2px;
}
#sf-cloud-page #get_promo .checkbox_container {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  color: rgba(255,255,255,.58);
  font-size: 12px;
  line-height: 1.45;
}
#sf-cloud-page #get_promo .checkbox_container input {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  margin: 1px 0 0;
  accent-color: var(--green);
}
#sf-cloud-page #get_promo .checkbox_container a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}
#sf-cloud-page #get_promo #form_answer {
  grid-column: 1 / -1;
  min-height: 0;
}
#sf-cloud-page #get_promo input[type="submit"] {
  width: 260px !important;
  margin: 2px 0 0 !important;
  padding: 0 24px !important;
  justify-self: start;
  border: 0;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, #169f82 0%, #0f7b65 100%);
  box-shadow: 0 10px 26px rgba(15, 123, 101, .18);
  font-size: 15px !important;
  font-weight: 760;
  line-height: 50px;
  text-align: center !important;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
#sf-cloud-page #get_promo input[type="submit"]:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 13px 32px rgba(15, 123, 101, .25);
}
#sf-cloud-page #get_promo input[type="submit"]:disabled {
  opacity: .52;
  cursor: not-allowed;
  box-shadow: none;
}
@media (max-width: 980px) {
  #sf-cloud-page #get_promo {
    grid-template-columns: 1fr;
    row-gap: 16px;
  }
  #sf-cloud-page .demo-field--name, #sf-cloud-page .demo-field--email, #sf-cloud-page .demo-field--phone, #sf-cloud-page .demo-field--select, #sf-cloud-page #get_promo .softrum__checkbox, #sf-cloud-page #get_promo #form_answer {
    grid-column: 1;
  }
  #sf-cloud-page #get_promo input[type="submit"] {
    width: 100% !important;
  }
}

/* v11 customer fixes: certificates, adaptive nav, tariff palette, brighter brand surfaces only. */

/* 1. Certificates: exactly three complete items in the rail at every viewport. */
#sf-cloud-page .certificates .section-heading h2 {
  max-width: 900px;
}
#sf-cloud-page .certificates__viewport {
  width: min(100%, 1040px);
  overflow: hidden;
}
#sf-cloud-page .certificates__track {
  gap: 24px;
}
#sf-cloud-page .certificate-card {
  flex: 0 0 calc((100% - 48px) / 3);
  width: calc((100% - 48px) / 3);
}
#sf-cloud-page .certificate-card__media {
  min-height: 226px;
}
#sf-cloud-page .certificate-card__media img {
  max-height: 226px;
}
#sf-cloud-page .certificate-card__meta {
  padding: 15px 6px 0;
}
#sf-cloud-page .certificate-card__title {
  font-size: 14px;
  line-height: 1.34;
}
#sf-cloud-page .certificate-card__date {
  font-size: 11.25px;
  line-height: 1.42;
}

/* 2. Keep page navigation visible on tablet and mobile, without introducing a second menu system. */
@media (max-width: 960px) {
  #sf-cloud-page .site-header__inner {
    grid-template-columns: minmax(150px, 1fr) auto;
    grid-template-rows: auto auto;
    padding-top: 10px;
    padding-bottom: 8px;
    row-gap: 6px;
  }
  #sf-cloud-page .site-nav {
    grid-column: 1 / -1;
    grid-row: 2;
    display: flex;
    justify-content: flex-start;
    gap: 28px;
    width: 100%;
    overflow-x: auto;
    padding: 6px 0 4px;
    color: #40566a;
    font-size: 13px;
    font-weight: 650;
    white-space: nowrap;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  #sf-cloud-page .site-nav::-webkit-scrollbar { display: none; }
  #sf-cloud-page .site-nav a { flex: 0 0 auto; }

  #sf-cloud-page .certificates__carousel { padding: 0 48px; }
  #sf-cloud-page .certificates__track { gap: 18px; }
  #sf-cloud-page .certificate-card {
    flex-basis: calc((100% - 36px) / 3);
    width: calc((100% - 36px) / 3);
  }
  #sf-cloud-page .certificate-card__media {
    min-height: 172px;
    padding: 12px;
  }
  #sf-cloud-page .certificate-card__media img { max-height: 172px; }
  #sf-cloud-page .certificate-card__meta { padding-top: 12px; }
  #sf-cloud-page .certificate-card__title { font-size: 12.5px; }
  #sf-cloud-page .certificate-card__date { font-size: 10.5px; }
  #sf-cloud-page .certificates__nav { top: 78px; }
}
@media (max-width: 720px) {
  #sf-cloud-page .site-header__inner {
    min-height: 0;
    padding-top: 10px;
    padding-bottom: 8px;
  }
  #sf-cloud-page .site-nav {
    gap: 22px;
    padding-bottom: 5px;
    font-size: 12.5px;
  }
  #sf-cloud-page .certificates__carousel { padding: 0 34px; }
  #sf-cloud-page .certificates__track { gap: 10px; }
  #sf-cloud-page .certificate-card {
    flex-basis: calc((100% - 20px) / 3);
    width: calc((100% - 20px) / 3);
  }
  #sf-cloud-page .certificate-card__media {
    min-height: 126px;
    padding: 8px;
    border-radius: 9px;
  }
  #sf-cloud-page .certificate-card__media img { max-height: 126px; }
  #sf-cloud-page .certificate-card__meta { padding: 10px 2px 0; }
  #sf-cloud-page .certificate-card__title {
    font-size: 11px;
    line-height: 1.28;
  }
  #sf-cloud-page .certificate-card__date {
    margin-top: 3px;
    font-size: 9px;
    line-height: 1.3;
  }
  #sf-cloud-page .certificates__nav {
    top: 55px;
    width: 32px;
    height: 32px;
  }
}
@media (max-width: 460px) {
  #sf-cloud-page .site-nav { gap: 18px; font-size: 12px; }
  #sf-cloud-page .certificates__carousel { padding: 0 30px; }
  #sf-cloud-page .certificates__track { gap: 8px; }
  #sf-cloud-page .certificate-card {
    flex-basis: calc((100% - 16px) / 3);
    width: calc((100% - 16px) / 3);
  }
  #sf-cloud-page .certificate-card__media {
    min-height: 104px;
    padding: 6px;
  }
  #sf-cloud-page .certificate-card__media img { max-height: 104px; }
  #sf-cloud-page .certificate-card__title { font-size: 10px; }
  #sf-cloud-page .certificate-card__date { font-size: 8.5px; }
  #sf-cloud-page .certificates__nav { top: 44px; width: 30px; height: 30px; }
}

/* 3. Tariff headers in Softrum blue tones, with legible plan hierarchy. */
#sf-cloud-page .tariff-table thead th {
  color: #fff;
  background: #1e4d7e;
  border-bottom: 1px solid rgba(255,255,255,.16);
}
#sf-cloud-page .tariff-table thead th:nth-child(even) {
  background: #1d5aaf;
}
#sf-cloud-page .tariff-table thead .feature-col {
  color: rgba(255,255,255,.86);
  background: #123a65;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  background: linear-gradient(90deg, #4b88c4, #5fbba3, #ffad38);
}
#sf-cloud-page .tariff-table thead .plan-name, #sf-cloud-page .tariff-table thead .plan-price {
  color: #fff;
}
#sf-cloud-page .tariff-table thead .plan-sub {
  color: rgba(255,255,255,.72);
}
#sf-cloud-page .tariff-table thead .plan-link {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(255,255,255,.45);
  text-underline-offset: 4px;
}
#sf-cloud-page .tariff-table thead .plan-link:hover, #sf-cloud-page .tariff-table thead .plan-link:focus-visible {
  text-decoration-color: #fff;
  outline: none;
}
#sf-cloud-page .tariff-table thead .plan-featured {
  background: #259075 !important;
}
#sf-cloud-page .tariff-table tbody td:nth-child(even) { background: #f5f8fc; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td { background: #eef4fa; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td:nth-child(even) { background: #e8f0f8; }
#sf-cloud-page .tariff-table tbody td:nth-child(7) { background: #edf6f5; }
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td:nth-child(7) { background: #e4f1ef; }

/* 4. Brighter large brand surfaces using the exact Softrum blue family. */
#sf-cloud-page .hero {
  background: radial-gradient(circle at 86% 14%, rgba(75,136,196,.22), transparent 31%), linear-gradient(118deg, #123a65 0%, #1e4d7e 62%, #1d5aaf 100%);
}
#sf-cloud-page .benefits {
  background: linear-gradient(124deg, #123a65 0%, #1e4d7e 58%, #1d5aaf 100%);
}
#sf-cloud-page .contact {
  background: linear-gradient(120deg, #123a65 0%, #1e4d7e 66%, #259075 100%);
}
#sf-cloud-page .promo--gift {
  background: radial-gradient(circle at 84% 28%, rgba(255,255,255,.14), transparent 24%), linear-gradient(125deg, #123a65 0%, #1e4d7e 68%, #259075 100%);
}


/* v12 targeted fix: mobile integrity, quieter tariff palette, seamless demo accent. */

/* 2. Preserve full button labels on phones; keep the adaptive navigation readable. */
@media (max-width: 720px) {
  #sf-cloud-page .site-header__inner {
    column-gap: 18px;
  }
  #sf-cloud-page .header-actions--mobile {
    display: flex;
    min-width: 0;
    justify-content: flex-end;
  }
  #sf-cloud-page .header-actions .button {
    min-width: 0;
    width: auto;
    max-width: 100%;
    padding: 0 14px;
    overflow: visible;
    color: #fff;
    gap: 8px;
    white-space: nowrap;
    font-size: 11.5px;
  }
  #sf-cloud-page .header-actions .button span {
    color: #fff;
    font-size: 1.05em;
  }
  #sf-cloud-page .site-nav {
    max-width: 100%;
    padding-top: 7px;
    padding-bottom: 6px;
  }
}
@media (max-width: 460px) {
  #sf-cloud-page .site-header__inner {
    grid-template-columns: minmax(124px, 1fr) auto;
    column-gap: 12px;
  }
  #sf-cloud-page .brand img { width: 136px; }
  #sf-cloud-page .header-actions .button {
    min-height: 40px;
    padding-inline: 12px;
    font-size: 11px;
    border-radius: 9px;
  }
  #sf-cloud-page .site-nav {
    gap: 18px;
    font-size: 12px;
  }
}

/* 4. Tariff header stays in one restrained Softrum blue family. */
#sf-cloud-page .tariff-table thead th, #sf-cloud-page .tariff-table thead th:nth-child(even), #sf-cloud-page .tariff-table thead .plan-featured {
  background: #244f7f !important;
}
#sf-cloud-page .tariff-table thead .feature-col {
  background: #1f466f !important;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before {
  background: #4b88c4;
  opacity: .92;
}
#sf-cloud-page .tariff-table thead .plan-featured::before {
  background: #ff9404;
}

/* 5. Join the vertical guide to the brand accent without a visible gap. */
#sf-cloud-page .demo::before {
  top: -6px;
}
#sf-cloud-page .demo::after {
  top: -6px;
  transform: none;
}

/* v13 requested-only pass: mobile header integrity, clearer tariff separation, cleaner hero accent. */

/* 1) Mobile / tablet: no disappearing labels, stable header rhythm, visible section navigation. */
@media (max-width: 960px) {
  #sf-cloud-page .utility-bar {
    display: none;
  }
  #sf-cloud-page .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    min-height: 0;
    padding-top: 12px;
    padding-bottom: 10px;
    row-gap: 8px;
    column-gap: 16px;
  }
  #sf-cloud-page .site-nav {
    grid-column: 1 / -1;
    grid-row: 2;
    display: flex;
    justify-content: flex-start;
    gap: 22px;
    width: 100%;
    overflow-x: auto;
    padding: 6px 0 4px;
    white-space: nowrap;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  #sf-cloud-page .site-nav::-webkit-scrollbar { display: none; }
  #sf-cloud-page .site-nav a { flex: 0 0 auto; }
  #sf-cloud-page .header-actions--mobile {
    display: flex;
    min-width: 0;
    justify-content: flex-end;
  }
  #sf-cloud-page .header-actions .button {
    min-width: 0;
    width: auto;
    max-width: none;
    min-height: 42px;
    padding: 0 14px;
    overflow: visible;
    white-space: nowrap;
    text-overflow: clip;
    gap: 8px;
    font-size: 11.5px;
    line-height: 1;
    border-radius: 10px;
  }
  #sf-cloud-page .header-actions .button span {
    color: inherit;
    font-size: 1em;
  }
}
@media (max-width: 720px) {
  #sf-cloud-page .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
    padding-top: 10px;
    padding-bottom: 9px;
    row-gap: 8px;
    column-gap: 12px;
  }
  #sf-cloud-page .brand {
    min-width: 0;
  }
  #sf-cloud-page .brand img {
    width: 134px;
  }
  #sf-cloud-page .site-nav {
    gap: 18px;
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: 12.25px;
  }
  #sf-cloud-page .header-actions {
    gap: 0;
    min-width: 0;
  }
  #sf-cloud-page .header-actions .button {
    min-height: 38px;
    padding: 0 12px;
    font-size: 10.5px;
    letter-spacing: 0;
    border-radius: 9px;
  }
}
@media (max-width: 420px) {
  #sf-cloud-page .site-header__inner {
    column-gap: 10px;
  }
  #sf-cloud-page .brand img {
    width: 126px;
  }
  #sf-cloud-page .site-nav {
    gap: 16px;
    font-size: 11.5px;
  }
  #sf-cloud-page .header-actions .button {
    min-height: 36px;
    padding: 0 10px;
    font-size: 10px;
  }
}

/* 2) Tariffs: remove the top accent border, add calm column separation in the site palette. */
#sf-cloud-page .tariff-shell {
  border-top: 0 !important;
  padding-top: 0 !important;
}
#sf-cloud-page .tariff-table thead th:not(.feature-col)::before, #sf-cloud-page .tariff-table thead .plan-featured::before {
  display: none !important;
  content: none !important;
}
#sf-cloud-page .tariff-table thead th {
  color: #fff;
  background: #2c5a8b !important;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.16), inset 1px 0 0 rgba(255,255,255,.12) !important;
}
#sf-cloud-page .tariff-table thead th:nth-child(even):not(.feature-col) {
  background: #336396 !important;
}
#sf-cloud-page .tariff-table thead .feature-col {
  color: rgba(255,255,255,.88);
  background: #234a74 !important;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.14) !important;
}
#sf-cloud-page .tariff-table thead .plan-featured {
  background: #2f668f !important;
}
#sf-cloud-page .tariff-table thead .plan-name, #sf-cloud-page .tariff-table thead .plan-price {
  color: #fff !important;
}
#sf-cloud-page .tariff-table thead .plan-sub {
  color: rgba(255,255,255,.74) !important;
}
#sf-cloud-page .tariff-table thead .plan-link {
  color: #fff !important;
  text-decoration-color: rgba(255,255,255,.44);
}
#sf-cloud-page .tariff-table tbody th, #sf-cloud-page .tariff-table tbody td, #sf-cloud-page .tariff-table tfoot th, #sf-cloud-page .tariff-table tfoot td {
  border-right: 1px solid rgba(10,41,71,.08) !important;
}
#sf-cloud-page .tariff-table tr > *:last-child {
  border-right: 0 !important;
}
#sf-cloud-page .tariff-table tbody th {
  background: #f7fafc;
}
#sf-cloud-page .tariff-table tbody td {
  background: #ffffff;
}
#sf-cloud-page .tariff-table tbody td:nth-child(even) {
  background: #f7fbff;
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) th {
  background: #f1f6fa;
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td {
  background: #fbfdff;
}
#sf-cloud-page .tariff-table tbody tr:nth-child(even) td:nth-child(even) {
  background: #f3f8fd;
}
#sf-cloud-page .tariff-table tbody td.plan-featured, #sf-cloud-page .tariff-table tbody th.plan-featured, #sf-cloud-page .tariff-table tbody tr:nth-child(even) td.plan-featured, #sf-cloud-page .tariff-table tbody tr:nth-child(even) th.plan-featured {
  background: #eef6fb !important;
}
#sf-cloud-page .tariff-table tfoot th {
  background: #eef4f8;
}
#sf-cloud-page .tariff-table tfoot td {
  background: #f8fbfd;
}
#sf-cloud-page .tariff-table tfoot td:nth-child(even) {
  background: #f2f7fb;
}

/* 3) Hero accent: seamless connection and quieter, more organic emphasis. */
#sf-cloud-page .demo::before {
  top: 0 !important;
  left: 0;
  background: linear-gradient(to bottom, rgba(255,255,255,.34), rgba(255,255,255,.08));
}
#sf-cloud-page .demo::after {
  left: -1px;
  top: 0 !important;
  width: 162px;
  height: 4px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(90deg, #2e78c7 0%, #2f9d95 50%, #f5a623 100%);
  transform: none !important;
}
@media (max-width: 960px) {
  #sf-cloud-page .demo {
    padding-top: 12px;
  }
  #sf-cloud-page .demo::after {
    width: 154px;
  }
}
@media (max-width: 720px) {
  #sf-cloud-page .demo {
    padding-top: 10px;
  }
  #sf-cloud-page .demo::after {
    width: 148px;
  }
}

/* v14 requested-only pass: final hero accent alignment only. */
#sf-cloud-page .demo::before {
  left: 0 !important;
  top: 0 !important;
  width: 2px !important;
  background: linear-gradient(to bottom, rgba(255,255,255,.40), rgba(255,255,255,.10)) !important;
}
#sf-cloud-page .demo::after {
  left: 0 !important;
  top: 0 !important;
  height: 4px !important;
  border-radius: 0 999px 999px 0 !important;
  transform: none !important;
}

/* v15 requested-only pass: hero accent join, restore utility email, remove tariff eyebrow, improve select option contrast. */

/* 1) Hero accent: raise the horizontal line slightly and make the joint read as one continuous element. */
#sf-cloud-page .demo::before {
  top: -6px !important;
  left: 0 !important;
  width: 2px !important;
  background: linear-gradient(to bottom, rgba(255,255,255,.38), rgba(255,255,255,.10)) !important;
}
#sf-cloud-page .demo::after {
  left: 0 !important;
  top: -6px !important;
  width: 164px !important;
  height: 4px !important;
  border-radius: 0 999px 999px 0 !important;
  background: linear-gradient(90deg, #2e78c7 0%, #2f9d95 52%, #f5a623 100%) !important;
  box-shadow: -1px 0 0 #2e78c7;
  transform: none !important;
}
@media (max-width: 960px) {
  #sf-cloud-page .demo::after { width: 158px !important; }
}
@media (max-width: 720px) {
  #sf-cloud-page .demo::after { width: 152px !important; }
}

/* 2) Restore the support email in the upper utility bar. */
#sf-cloud-page .utility-bar__contacts {
  gap: 16px;
}
#sf-cloud-page .utility-bar__contacts a[href^="mailto:"] {
  color: rgba(255,255,255,.88);
  white-space: nowrap;
}
#sf-cloud-page .utility-bar__contacts a[href^="mailto:"]:hover, #sf-cloud-page .utility-bar__contacts a[href^="mailto:"]:focus-visible {
  color: #fff;
}

/* 3) Remove the extra eyebrow above the tariffs heading. */
#sf-cloud-page .tariffs .eyebrow {
  display: none !important;
}

/* 4) Improve contrast in the configuration dropdown list. */
#sf-cloud-page #get_promo .softrum__select select option {
  color: #163654 !important;
  background: #ffffff !important;
}
#sf-cloud-page #get_promo .softrum__select select option:checked, #sf-cloud-page #get_promo .softrum__select select option:hover {
  color: #ffffff !important;
  background: #2f67aa !important;
}


/* v16 final requested-only pass: hero accent join, remove top CTA, restore consultation button, proper mobile burger header. */

/* 1) Demo accent lines: lift the horizontal stroke a bit more and blend the junction into one continuous mark. */
#sf-cloud-page .demo::before {
  top: -10px !important;
  left: 0 !important;
  width: 2px !important;
  background: linear-gradient(to bottom, #2e78c7 0 14px, rgba(255,255,255,.36) 22px, rgba(255,255,255,.10) 100%) !important;
}
#sf-cloud-page .demo::after {
  left: 0 !important;
  top: -10px !important;
  width: 160px !important;
  height: 4px !important;
  border-radius: 0 999px 999px 0 !important;
  background: linear-gradient(90deg, #2e78c7 0%, #2f9d95 54%, #f5a623 100%) !important;
  box-shadow: none !important;
  transform: none !important;
}
@media (max-width: 960px) {
  #sf-cloud-page .demo::after { width: 156px !important; }
}
@media (max-width: 720px) {
  #sf-cloud-page .demo::after { width: 150px !important; }
}

/* 2 + 3 + 4) Header cleanup: no top CTA, consultation button restored, mobile/tablet headers stabilized with a real burger menu. */
#sf-cloud-page .header-burger {
  display: none;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid rgba(10,41,71,.12);
  border-radius: 12px;
  background: #fff;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  box-shadow: 0 6px 18px rgba(10,41,71,.08);
}
#sf-cloud-page .header-burger span {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 999px;
  background: #153f69;
  transition: transform .22s ease, opacity .22s ease;
}
#sf-cloud-page .site-header.is-nav-open .header-burger span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
#sf-cloud-page .site-header.is-nav-open .header-burger span:nth-child(2) {
  opacity: 0;
}
#sf-cloud-page .site-header.is-nav-open .header-burger span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

@media (max-width: 960px) {
  #sf-cloud-page .utility-bar {
    display: block !important;
  }
  #sf-cloud-page .utility-bar__inner {
    min-height: 0 !important;
    padding: 10px 0 9px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 8px;
  }
  #sf-cloud-page .utility-bar__status, #sf-cloud-page .utility-bar__contacts {
    width: 100%;
    flex-wrap: wrap;
    gap: 8px 14px;
  }
  #sf-cloud-page .utility-bar__contacts {
    align-items: center;
  }
  #sf-cloud-page .utility-bar__contacts a {
    white-space: nowrap;
  }
  #sf-cloud-page .utility-bar__contacts a + a::before {
    height: 10px;
  }
  #sf-cloud-page .site-header {
    position: relative;
    z-index: 20;
  }
  #sf-cloud-page .site-header__inner {
    position: relative;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto !important;
    min-height: 84px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    column-gap: 14px !important;
    row-gap: 0 !important;
    align-items: center !important;
  }
  #sf-cloud-page .brand {
    min-width: 0;
  }
  #sf-cloud-page .brand img {
    width: 150px !important;
  }
  #sf-cloud-page .header-actions, #sf-cloud-page .header-actions--mobile {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 10px !important;
    min-width: 0;
  }
  #sf-cloud-page .header-burger {
    display: inline-flex;
    flex: 0 0 auto;
  }
  #sf-cloud-page .header-actions .button {
    min-width: 0 !important;
    width: auto !important;
    min-height: 46px !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
    font-size: 12.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    gap: 8px !important;
  }
  #sf-cloud-page .header-actions .button span {
    color: inherit !important;
    font-size: 1em !important;
  }
  #sf-cloud-page .site-nav {
    display: none !important;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 8px);
    margin: 0;
    padding: 14px 16px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    background: #fff;
    border: 1px solid rgba(10,41,71,.08);
    border-radius: 16px;
    box-shadow: 0 18px 44px rgba(10,41,71,.12);
    white-space: normal !important;
    overflow: visible !important;
    scrollbar-width: none;
  }
  #sf-cloud-page .site-header.is-nav-open .site-nav {
    display: flex !important;
  }
  #sf-cloud-page .site-nav a {
    width: 100%;
    padding: 0 !important;
    color: #173f68;
    font-size: 15px !important;
    line-height: 1.35;
  }
  #sf-cloud-page .site-nav a::after {
    display: none !important;
  }
}
@media (max-width: 720px) {
  #sf-cloud-page .utility-bar__status {
    gap: 6px 10px;
  }
  #sf-cloud-page .utility-bar__status strong, #sf-cloud-page .utility-bar__status span, #sf-cloud-page .utility-bar__contacts a {
    font-size: 12px;
    line-height: 1.35;
  }
  #sf-cloud-page .site-header__inner {
    min-height: 76px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    column-gap: 10px !important;
  }
  #sf-cloud-page .brand img {
    width: 136px !important;
  }
  #sf-cloud-page .header-burger {
    width: 42px;
    height: 42px;
    border-radius: 11px;
  }
  #sf-cloud-page .header-actions .button {
    min-height: 42px !important;
    padding: 0 12px !important;
    font-size: 11px !important;
    border-radius: 11px !important;
  }
  #sf-cloud-page .site-nav {
    top: calc(100% + 6px);
    padding: 14px 14px !important;
  }
}
@media (max-width: 430px) {
  #sf-cloud-page .utility-bar__contacts {
    gap: 6px 12px;
  }
  #sf-cloud-page .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  #sf-cloud-page .brand img {
    width: 126px !important;
  }
  #sf-cloud-page .header-actions, #sf-cloud-page .header-actions--mobile {
    gap: 8px !important;
  }
  #sf-cloud-page .header-actions .button {
    min-height: 40px !important;
    padding: 0 10px !important;
    font-size: 10.5px !important;
  }
}


/* v17 requested-only pass: restore desktop consultation CTA and rebuild mobile/tablet header with premium burger. */

/* Desktop / default header state */
#sf-cloud-page .site-header__inner {
  grid-template-columns: 236px 1fr auto !important;
  min-height: 86px !important;
  align-items: center !important;
}
#sf-cloud-page .site-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
}
#sf-cloud-page .site-nav__cta {
  display: none !important;
}
#sf-cloud-page .header-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end;
  gap: 18px !important;
}
#sf-cloud-page .header-actions__link {
  display: inline-flex !important;
  align-items: center;
  color: var(--navy-800);
  font-size: 13px;
  font-weight: 780;
  white-space: nowrap;
}
#sf-cloud-page .header-actions > .button {
  display: inline-flex !important;
  min-width: 0 !important;
  padding-inline: 34px !important;
  min-height: 60px !important;
  border-radius: 18px !important;
  font-size: 17px !important;
  font-weight: 780 !important;
  box-shadow: 0 14px 32px rgba(15,123,101,.20) !important;
}
#sf-cloud-page .header-burger {
  display: none !important;
}

/* Tablet/mobile: compact top bar + burger menu + CTA inside opened menu */
@media (max-width: 1100px) {
  #sf-cloud-page .utility-bar__inner {
    min-height: 0 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    gap: 8px !important;
  }
  #sf-cloud-page .utility-bar__status, #sf-cloud-page .utility-bar__contacts {
    width: 100%;
    flex-wrap: wrap;
    gap: 8px 14px !important;
  }
  #sf-cloud-page .site-header {
    position: relative;
    z-index: 30;
  }
  #sf-cloud-page .site-header__inner {
    grid-template-columns: minmax(0,1fr) auto !important;
    gap: 14px !important;
    min-height: 82px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  #sf-cloud-page .brand img {
    width: 150px !important;
  }
  #sf-cloud-page .header-actions {
    gap: 0 !important;
  }
  #sf-cloud-page .header-actions__link, #sf-cloud-page .header-actions > .button {
    display: none !important;
  }
  #sf-cloud-page .header-burger {
    display: inline-flex !important;
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    border: 1px solid rgba(10,41,71,.10);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(10,41,71,.10);
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
  }
  #sf-cloud-page .header-burger span {
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: #153f69;
    transition: transform .22s ease, opacity .22s ease;
  }
  #sf-cloud-page .site-nav {
    display: none !important;
    position: absolute;
    top: calc(100% + 8px);
    left: 12px;
    right: 12px;
    z-index: 50;
    padding: 18px !important;
    border: 1px solid rgba(10,41,71,.08);
    border-radius: 18px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 22px 50px rgba(10,41,71,.14);
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 14px !important;
  }
  #sf-cloud-page .site-header.is-nav-open .site-nav {
    display: flex !important;
  }
  #sf-cloud-page .site-nav a {
    width: 100%;
    padding: 2px 0 !important;
    color: #173f68 !important;
    font-size: 15px !important;
    font-weight: 700;
    line-height: 1.35;
  }
  #sf-cloud-page .site-nav a::after {
    display: none !important;
  }
  #sf-cloud-page .site-nav__cta {
    display: inline-flex !important;
    justify-content: center;
    width: 100%;
    margin-top: 6px;
    min-height: 50px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
  }
}
@media (max-width: 720px) {
  #sf-cloud-page .utility-bar__status strong, #sf-cloud-page .utility-bar__status span, #sf-cloud-page .utility-bar__contacts a {
    font-size: 12px !important;
    line-height: 1.35;
  }
  #sf-cloud-page .utility-bar__contacts a + a {
    padding-left: 12px;
  }
  #sf-cloud-page .utility-bar__contacts a + a::before {
    height: 10px;
  }
  #sf-cloud-page .site-header__inner {
    min-height: 74px !important;
    gap: 12px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  #sf-cloud-page .brand img {
    width: 138px !important;
  }
  #sf-cloud-page .header-burger {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
    border-radius: 13px;
  }
  #sf-cloud-page .site-nav {
    left: 10px;
    right: 10px;
    top: calc(100% + 6px);
    padding: 16px !important;
    border-radius: 16px;
  }
  #sf-cloud-page .site-nav__cta {
    min-height: 48px !important;
    font-size: 13px !important;
  }
}

/* v18 requested-only pass: remove ITS text, restore consultation CTA style, premium burger + stable mobile header. */

/* Desktop: only the consultation CTA on the right, in the approved Softrum-style shape. */
#sf-cloud-page .header-actions__link { display: none !important; }
#sf-cloud-page .header-actions {
  gap: 0 !important;
}
#sf-cloud-page .header-actions > .button {
  display: inline-flex !important;
  min-width: 236px !important;
  min-height: 58px !important;
  padding: 0 30px !important;
  border: 0 !important;
  border-radius: 16px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #20a182 0%, #178266 100%) !important;
  box-shadow: 0 12px 28px rgba(19,126,100,.18) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 760 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}
#sf-cloud-page .header-actions > .button span {
  margin-left: 4px;
  font-size: 1.1em !important;
}
#sf-cloud-page .header-actions > .button:hover, #sf-cloud-page .header-actions > .button:focus-visible {
  transform: translateY(-1px);
  background: linear-gradient(135deg, #229f80 0%, #14765e 100%) !important;
  box-shadow: 0 14px 32px rgba(19,126,100,.23) !important;
  outline: none;
}

/* Premium burger: compact, quiet, no generic boxed-nav feel. */
#sf-cloud-page .header-burger {
  display: none !important;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: #f4f7fa;
  box-shadow: inset 0 0 0 1px rgba(10,41,71,.07);
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
}
#sf-cloud-page .header-burger span {
  display: block;
  width: 19px;
  height: 2px;
  border-radius: 999px;
  background: #153f69;
  transition: transform .2s ease, opacity .2s ease;
}
#sf-cloud-page .site-header.is-nav-open .header-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
#sf-cloud-page .site-header.is-nav-open .header-burger span:nth-child(2) { opacity: 0; }
#sf-cloud-page .site-header.is-nav-open .header-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 960px) {
  /* Keep the dark utility strip stable and compact. */
  #sf-cloud-page .utility-bar { display: block !important; }
  #sf-cloud-page .utility-bar__inner {
    min-height: 0 !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
    display: grid !important;
    grid-template-columns: 1fr auto;
    align-items: center !important;
    gap: 8px 18px !important;
  }
  #sf-cloud-page .utility-bar__status, #sf-cloud-page .utility-bar__contacts {
    width: auto !important;
    min-width: 0;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px 12px !important;
  }
  #sf-cloud-page .utility-bar__contacts { justify-content: flex-end; }
  #sf-cloud-page .utility-bar__status strong, #sf-cloud-page .utility-bar__status span, #sf-cloud-page .utility-bar__contacts a {
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    white-space: nowrap;
  }

  /* Main header is a single stable row: logo + burger only. */
  #sf-cloud-page .site-header { position: relative; z-index: 50; }
  #sf-cloud-page .site-header__inner {
    position: relative;
    grid-template-columns: minmax(0,1fr) auto !important;
    grid-template-rows: auto !important;
    min-height: 78px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    gap: 12px !important;
    align-items: center !important;
  }
  #sf-cloud-page .brand { min-width: 0; }
  #sf-cloud-page .brand img { width: 148px !important; }
  #sf-cloud-page .header-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
  }
  #sf-cloud-page .header-actions > .button { display: none !important; }
  #sf-cloud-page .header-burger {
    display: inline-flex !important;
    flex: 0 0 46px;
  }

  /* Menu opens as a deliberate navigation sheet, not a horizontal scroller. */
  #sf-cloud-page .site-nav {
    display: none !important;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 1px);
    z-index: 60;
    margin: 0 !important;
    padding: 18px 20px 20px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    background: #fff;
    border-top: 1px solid rgba(10,41,71,.06);
    border-bottom: 1px solid rgba(10,41,71,.08);
    box-shadow: 0 20px 42px rgba(10,41,71,.12);
  }
  #sf-cloud-page .site-header.is-nav-open .site-nav { display: flex !important; }
  #sf-cloud-page .site-nav a {
    width: 100%;
    padding: 13px 0 !important;
    color: #153f69 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    border-bottom: 1px solid rgba(10,41,71,.07);
  }
  #sf-cloud-page .site-nav a::after { display: none !important; }
  #sf-cloud-page .site-nav__cta {
    display: inline-flex !important;
    width: 100%;
    min-height: 50px !important;
    margin-top: 18px !important;
    padding: 0 20px !important;
    border-radius: 14px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #20a182 0%, #178266 100%) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 760 !important;
  }
}

@media (max-width: 720px) {
  #sf-cloud-page .utility-bar__inner {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  #sf-cloud-page .utility-bar__status, #sf-cloud-page .utility-bar__contacts {
    justify-content: flex-start !important;
  }
  #sf-cloud-page .utility-bar__contacts a + a {
    padding-left: 12px !important;
  }
  #sf-cloud-page .utility-bar__contacts a + a::before {
    height: 9px !important;
  }
  #sf-cloud-page .site-header__inner {
    min-height: 72px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }
  #sf-cloud-page .brand img { width: 136px !important; }
  #sf-cloud-page .header-burger {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
    border-radius: 11px;
  }
  #sf-cloud-page .site-nav {
    padding: 15px 18px 18px !important;
  }
  #sf-cloud-page .site-nav a {
    padding: 12px 0 !important;
    font-size: 14px !important;
  }
  #sf-cloud-page .site-nav__cta {
    min-height: 48px !important;
    margin-top: 16px !important;
    font-size: 13.5px !important;
  }
}

/* v20 requested-only pass: restore the approved consultation button exactly to the earlier Softrum header styling. */
@media (min-width: 961px) {
  #sf-cloud-page .header-actions > .button {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 0 20px !important;
    gap: 14px !important;
    border: 0 !important;
    border-radius: var(--r1) !important;
    color: #fff !important;
    background: linear-gradient(135deg, #169f82 0%, #0f7b65 100%) !important;
    box-shadow: 0 10px 26px rgba(15, 123, 101, .18) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 780 !important;
    letter-spacing: .005em !important;
    white-space: nowrap !important;
  }
  #sf-cloud-page .header-actions > .button span {
    margin-left: 0 !important;
    font-size: 1.15em !important;
    transform: translateY(-1px) !important;
  }
  #sf-cloud-page .header-actions > .button:hover, #sf-cloud-page .header-actions > .button:focus-visible {
    transform: translateY(-1px) !important;
    background: linear-gradient(135deg, #169f82 0%, #0f7b65 100%) !important;
    box-shadow: 0 13px 32px rgba(15, 123, 101, .25) !important;
    outline: none;
  }
}

/* On tablet/mobile the consultation action stays only inside the opened burger menu. */
@media (max-width: 960px) {
  #sf-cloud-page .header-actions > .button {
    display: none !important;
  }
  #sf-cloud-page .site-nav__cta {
    display: inline-flex !important;
    min-height: 48px !important;
    padding: 0 20px !important;
    gap: 14px !important;
    border-radius: var(--r1) !important;
    color: #fff !important;
    background: linear-gradient(135deg, #169f82 0%, #0f7b65 100%) !important;
    box-shadow: 0 10px 26px rgba(15, 123, 101, .18) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 780 !important;
    letter-spacing: .005em !important;
  }
}

/* v21 requested-only pass: fit the two long tariff names and keep support e-mail visible on phone. */

/* Tariffs: only the two long plan names are tightened so they sit cleanly inside their columns. */
#sf-cloud-page .tariff-table thead th:nth-child(7) .plan-name, #sf-cloud-page .tariff-table thead th:nth-child(8) .plan-name {
  font-size: 12px !important;
  line-height: 1.28 !important;
  letter-spacing: -.018em !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

/* Mobile/tablet utility bar: explicitly keep oblako@softrum.ru visible without disturbing desktop. */
@media (max-width: 960px) {
  #sf-cloud-page .utility-bar__contacts a[href^="mailto:"] {
    display: inline-flex !important;
    align-items: center;
    color: rgba(255,255,255,.88) !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 720px) {
  #sf-cloud-page .utility-bar__contacts a[href^="mailto:"] {
    flex: 0 0 auto;
  }
}

/* v22 requested-only pass: compact two-row mobile utility bar. */
@media (max-width: 720px) {
  #sf-cloud-page .utility-bar {
    background: #071f37 !important;
  }

  #sf-cloud-page .utility-bar__inner {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    gap: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  #sf-cloud-page .utility-bar__status, #sf-cloud-page .utility-bar__contacts {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    white-space: nowrap !important;
  }

  #sf-cloud-page .utility-bar__status {
    min-height: 30px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  #sf-cloud-page .utility-bar__contacts {
    min-height: 31px;
  }

  #sf-cloud-page .utility-bar__status strong, #sf-cloud-page .utility-bar__status > span, #sf-cloud-page .utility-bar__contacts > a {
    font-size: clamp(8.8px, 2.55vw, 10.25px) !important;
    line-height: 1 !important;
    letter-spacing: .005em !important;
    white-space: nowrap !important;
  }

  #sf-cloud-page .utility-bar__status strong {
    color: rgba(255,255,255,.96) !important;
    font-weight: 720 !important;
  }

  #sf-cloud-page .utility-bar__status > span {
    position: relative;
    margin-left: 10px;
    padding-left: 11px;
    color: rgba(255,255,255,.60) !important;
    font-weight: 520 !important;
  }

  #sf-cloud-page .utility-bar__status > span::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 10px;
    background: rgba(255,255,255,.16);
    transform: translateY(-50%);
  }

  #sf-cloud-page .utility-bar__contacts > a {
    position: relative;
    padding: 0 !important;
    color: rgba(255,255,255,.78) !important;
    font-weight: 520 !important;
  }

  #sf-cloud-page .utility-bar__contacts > a + a {
    margin-left: 10px !important;
    padding-left: 11px !important;
  }

  #sf-cloud-page .utility-bar__contacts > a + a::before {
    left: 0 !important;
    top: 50% !important;
    width: 1px !important;
    height: 10px !important;
    background: rgba(255,255,255,.16) !important;
    transform: translateY(-50%) !important;
  }

  #sf-cloud-page .utility-bar__contacts > a[href^="mailto:"] {
    color: rgba(255,255,255,.94) !important;
    font-weight: 620 !important;
  }

  /* Hide only the explanatory text on phones; the toll-free number itself remains. */
  #sf-cloud-page .utility-bar__contacts > a[href^="tel:88006008922"] > span {
    display: none !important;
  }
}

@media (max-width: 420px) {
  #sf-cloud-page .utility-bar__status > span {
    margin-left: 8px;
    padding-left: 9px;
  }

  #sf-cloud-page .utility-bar__contacts > a + a {
    margin-left: 8px !important;
    padding-left: 9px !important;
  }
}


/* Integration guards - no visual change to v22; only enforce native hidden semantics. */
#sf-cloud-page [hidden] { display: none !important; }
#sf-cloud-page dialog:not([open]) { display: none !important; }
#sf-cloud-page template { display: none !important; }

/* Bitrix template compatibility guards.
   These repeat the existing v22 computed values only where the legacy site
   template uses !important declarations for the old promo form. No geometry
   or visual value differs from the supplied v22 source. */
#sf-cloud-page #get_promo .softrum__select {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
#sf-cloud-page #get_promo .softrum__select select {
  display: inline-block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 56px !important;
  margin: 0 !important;
  padding: 0 48px 0 18px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 16px !important;
  color: rgba(255,255,255,.56) !important;
  background: rgba(3,28,50,.28) !important;
  box-shadow: none !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
#sf-cloud-page #get_promo .softrum__select::after {
  display: block !important;
}
#sf-cloud-page #get_promo .softrum__note {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  max-width: 420px !important;
  margin-top: 2px !important;
  color: rgba(255,255,255,.54) !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
}
/* Closed native dialogs must stay closed even if the active site template has
   a generic .modal { display:block !important } rule. */
#sf-cloud-page dialog.modal:not([open]),
#sf-cloud-page dialog.cert-modal:not([open]) {
  display: none !important;
}

/* Standard Bitrix main.userconsent.request (.default).
   Only the built-in component markup is visually mapped to the existing promo checkboxes. */
#sf-cloud-page #get_promo .softrum__checkbox,
#sf-cloud-page .connect-form__actions .consent,
#sf-cloud-page .modal__actions .consent {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
#sf-cloud-page #get_promo .softrum__checkbox {
  color: rgba(255,255,255,.58) !important;
}
#sf-cloud-page .connect-form__actions .consent,
#sf-cloud-page .modal__actions .consent {
  color: #647586 !important;
}
#sf-cloud-page .connect-form__actions .consent--dark {
  color: rgba(255,255,255,.58) !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request,
#sf-cloud-page .modal__actions .consent .main-user-consent-request {
  display: inline-flex !important;
  position: static !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  color: inherit !important;
  background: transparent !important;
  font: inherit !important;
  line-height: inherit !important;
  cursor: pointer !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"],
#sf-cloud-page #get_promo .softrum__checkbox > input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent > input[type="checkbox"],
#sf-cloud-page .modal__actions .consent .main-user-consent-request input[type="checkbox"],
#sf-cloud-page .modal__actions .consent > input[type="checkbox"] {
  display: block !important;
  position: relative !important;
  z-index: 1 !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  margin: 1px 0 0 !important;
  padding: 0 !important;
  border: 1px solid #9ba8b3 !important;
  border-radius: 4px !important;
  outline: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: hidden !important;
  clip: auto !important;
  clip-path: none !important;
  transform: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background: #fff center / 12px 9px no-repeat !important;
  box-shadow: 0 1px 2px rgba(7, 35, 57, .06) !important;
  box-sizing: border-box !important;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page #get_promo .softrum__checkbox > input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent > input[type="checkbox"]:checked,
#sf-cloud-page .modal__actions .consent .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page .modal__actions .consent > input[type="checkbox"]:checked {
  border-color: var(--green) !important;
  background-color: var(--green) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 9'%3E%3Cpath d='M1 4.5 4.3 8 11 1' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"]:focus-visible,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request input[type="checkbox"]:focus-visible,
#sf-cloud-page .modal__actions .consent .main-user-consent-request input[type="checkbox"]:focus-visible {
  border-color: var(--green) !important;
  box-shadow: 0 0 0 3px rgba(21, 152, 125, .14) !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent--dark .main-user-consent-request input[type="checkbox"] {
  border-color: rgba(255,255,255,.48) !important;
  background-color: rgba(255,255,255,.06) !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent--dark .main-user-consent-request input[type="checkbox"]:checked {
  border-color: #2aa284 !important;
  background-color: #2aa284 !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request-announce,
#sf-cloud-page .modal__actions .consent .main-user-consent-request-announce {
  display: inline !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  color: inherit !important;
  background: transparent !important;
  font: inherit !important;
  line-height: inherit !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce-link,
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request a,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request-announce-link,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request a,
#sf-cloud-page .modal__actions .consent .main-user-consent-request-announce-link,
#sf-cloud-page .modal__actions .consent .main-user-consent-request a {
  display: inline !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: inherit !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request,
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce {
  color: rgba(255,255,255,.58) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce-link,
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request a,
#sf-cloud-page .connect-form__actions .consent--dark .main-user-consent-request-announce-link,
#sf-cloud-page .connect-form__actions .consent--dark .main-user-consent-request a {
  color: #fff !important;
}


/* The Bitrix agreement popup is appended to document.body. A native showModal()
   dialog lives in the browser top layer, so no z-index can place the Bitrix popup
   above it. Keep the same visual modal, but open it as a non-top-layer dialog and
   reproduce its backdrop here so the standard Bitrix popup can sit above it. */
html.softrum-lead-modal-open,
html.softrum-lead-modal-open body {
  overflow: hidden !important;
}

#sf-cloud-page dialog.modal[open] {
  display: flex !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 10000 !important;
  width: 100vw !important;
  max-width: none !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 16px !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: rgba(3,20,35,.68) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  box-sizing: border-box !important;
}

#sf-cloud-page dialog.modal[open] .modal__sheet {
  width: min(760px, 100%) !important;
  max-height: calc(100dvh - 32px) !important;
  margin: auto !important;
  overflow: auto !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 30px 90px rgba(4,23,40,.28) !important;
  box-sizing: border-box !important;
}

/* Only the popup produced by main.userconsent.request is promoted above the
   custom lead modal. The classes are assigned by index.php after Bitrix opens it. */
.popup-window.softrum-userconsent-popup-layer,
.softrum-userconsent-popup-layer {
  z-index: 10002 !important;
}

.popup-window-overlay.softrum-userconsent-overlay-layer,
.softrum-userconsent-overlay-layer {
  z-index: 10001 !important;
}


/* v6 form UX: inline JS validation, contact masks and AJAX feedback. */
#sf-cloud-page .field,
#sf-cloud-page .demo-field {
  position: relative;
}
#sf-cloud-page .form-field-error {
  position: absolute;
  z-index: 2;
  left: 0;
  top: calc(100% + 5px);
  display: block;
  margin: 0;
  color: #b4233c;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 650;
  pointer-events: none;
}
#sf-cloud-page .field--dark .form-field-error,
#sf-cloud-page .demo-field .form-field-error {
  color: #ffd2d8;
}
#sf-cloud-page .field.is-invalid input,
#sf-cloud-page .field.is-invalid select,
#sf-cloud-page .field.is-invalid textarea {
  border-color: #c93b52 !important;
  box-shadow: 0 0 0 3px rgba(201,59,82,.09) !important;
}
#sf-cloud-page .field--dark.is-invalid input,
#sf-cloud-page .field--dark.is-invalid select,
#sf-cloud-page .field--dark.is-invalid textarea,
#sf-cloud-page .demo-field.is-invalid input,
#sf-cloud-page .demo-field.is-invalid select {
  border-color: rgba(255,154,169,.88) !important;
  box-shadow: 0 0 0 3px rgba(255,120,141,.10) !important;
}
#sf-cloud-page .form-status {
  display: grid;
  grid-template-columns: 30px minmax(0,1fr);
  gap: 12px;
  align-items: start;
  width: 100%;
  margin: 18px 0 0;
  padding: 14px 16px;
  border: 1px solid #dbe6e2;
  border-radius: 12px;
  color: #163b32;
  background: #f4faf7;
  box-sizing: border-box;
  outline: none;
}
#sf-cloud-page .form-status::before {
  content: "";
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  font-size: 15px;
  line-height: 1;
  font-weight: 800;
  box-sizing: border-box;
}
#sf-cloud-page .form-status[data-state="success"]::before {
  content: "✓";
  color: #fff;
  background: #15806a;
}
#sf-cloud-page .form-status[data-state="error"] {
  border-color: #efd8dc;
  color: #6d2733;
  background: #fff7f8;
}
#sf-cloud-page .form-status[data-state="error"]::before {
  content: "!";
  color: #fff;
  background: #b93449;
}
#sf-cloud-page .form-status__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}
#sf-cloud-page .form-status__title {
  font-size: 13px;
  line-height: 1.35;
  font-weight: 800;
}
#sf-cloud-page .form-status__text {
  font-size: 12px;
  line-height: 1.5;
  font-weight: 500;
}
#sf-cloud-page #get_promo .form-status {
  grid-column: 1 / -1;
  margin: 0;
}
#sf-cloud-page .demo-form .form-status,
#sf-cloud-page .connect-form .form-status {
  border-color: rgba(255,255,255,.15);
  color: rgba(255,255,255,.90);
  background: rgba(255,255,255,.08);
}
#sf-cloud-page .demo-form .form-status[data-state="error"],
#sf-cloud-page .connect-form .form-status[data-state="error"] {
  border-color: rgba(255,163,178,.30);
  color: #ffe8ec;
  background: rgba(155,35,56,.18);
}
#sf-cloud-page .modal__sheet > .form-status {
  margin-top: 22px;
}
#sf-cloud-page .connect-form > .form-status {
  margin-top: 0;
}
#sf-cloud-page .button.is-loading,
#sf-cloud-page #get_promo input[type="submit"].is-loading {
  cursor: wait !important;
}
#sf-cloud-page .form-submit-spinner {
  display: inline-block;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  border: 2px solid rgba(255,255,255,.42);
  border-top-color: #fff;
  border-radius: 50%;
  animation: sf-form-submit-spin .7s linear infinite;
  box-sizing: border-box;
}
@keyframes sf-form-submit-spin {
  to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  #sf-cloud-page .form-submit-spinner { animation: none; }
}
@media (max-width: 640px) {
  #sf-cloud-page .form-status {
    grid-template-columns: 26px minmax(0,1fr);
    gap: 10px;
    padding: 13px 14px;
  }
  #sf-cloud-page .form-status::before {
    width: 26px;
    height: 26px;
  }
}

/* v8 forms polish: stable validation geometry and restrained error states.
   Scope is intentionally limited to the three page forms. */
#sf-cloud-page .field,
#sf-cloud-page .demo-field {
  box-sizing: border-box;
  padding-bottom: 24px;
}

#sf-cloud-page .form-field-error {
  top: auto;
  right: 0;
  bottom: 2px;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 16px;
  margin: 0;
  color: #b24759;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  white-space: normal;
  pointer-events: none;
}

#sf-cloud-page .form-field-error::before {
  content: "";
  flex: 0 0 5px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  opacity: .82;
}

#sf-cloud-page .field--dark .form-field-error,
#sf-cloud-page .demo-field .form-field-error {
  color: rgba(255, 208, 216, .94);
}

#sf-cloud-page .field input,
#sf-cloud-page .field select,
#sf-cloud-page .field textarea,
#sf-cloud-page #get_promo .demo-field input[type="text"],
#sf-cloud-page #get_promo .demo-field input[type="email"],
#sf-cloud-page #get_promo .demo-field input[type="tel"],
#sf-cloud-page #get_promo .softrum__select select {
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;
}

#sf-cloud-page .field:not(.is-invalid) input:hover,
#sf-cloud-page .field:not(.is-invalid) select:hover,
#sf-cloud-page .field:not(.is-invalid) textarea:hover {
  border-color: #c6d3da;
}

#sf-cloud-page .field--dark:not(.is-invalid) input:hover,
#sf-cloud-page .field--dark:not(.is-invalid) select:hover,
#sf-cloud-page .field--dark:not(.is-invalid) textarea:hover,
#sf-cloud-page .demo-field:not(.is-invalid) input:hover,
#sf-cloud-page .demo-field:not(.is-invalid) select:hover {
  border-color: rgba(255,255,255,.30);
}

#sf-cloud-page .field input:focus,
#sf-cloud-page .field select:focus,
#sf-cloud-page .field textarea:focus,
#sf-cloud-page .field input:focus-visible,
#sf-cloud-page .field select:focus-visible,
#sf-cloud-page .field textarea:focus-visible {
  border-color: rgba(26, 145, 119, .74);
  box-shadow: 0 0 0 3px rgba(26, 145, 119, .08);
}

#sf-cloud-page .field--dark input:focus,
#sf-cloud-page .field--dark select:focus,
#sf-cloud-page .field--dark textarea:focus,
#sf-cloud-page .field--dark input:focus-visible,
#sf-cloud-page .field--dark select:focus-visible,
#sf-cloud-page .field--dark textarea:focus-visible,
#sf-cloud-page .demo-field input:focus,
#sf-cloud-page .demo-field select:focus,
#sf-cloud-page .demo-field input:focus-visible,
#sf-cloud-page .demo-field select:focus-visible {
  border-color: rgba(121, 207, 187, .68) !important;
  box-shadow: 0 0 0 3px rgba(71, 181, 155, .10) !important;
}

#sf-cloud-page .field.is-invalid input,
#sf-cloud-page .field.is-invalid select,
#sf-cloud-page .field.is-invalid textarea {
  border-color: #c95c6c !important;
  background-color: #fffdfd;
  box-shadow: 0 0 0 3px rgba(185, 65, 83, .07) !important;
}

#sf-cloud-page .field--dark.is-invalid input,
#sf-cloud-page .field--dark.is-invalid select,
#sf-cloud-page .field--dark.is-invalid textarea,
#sf-cloud-page .demo-field.is-invalid input,
#sf-cloud-page .demo-field.is-invalid select {
  border-color: rgba(255, 177, 190, .76) !important;
  background-color: rgba(44, 43, 64, .22) !important;
  box-shadow: 0 0 0 3px rgba(255, 158, 175, .08) !important;
}

#sf-cloud-page .modal__grid,
#sf-cloud-page .connect-form__fields {
  row-gap: 10px;
}

#sf-cloud-page #get_promo {
  row-gap: 10px;
}

#sf-cloud-page .form-status {
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(15, 56, 47, .06);
}

#sf-cloud-page .demo-form .form-status,
#sf-cloud-page .connect-form .form-status {
  box-shadow: 0 12px 34px rgba(3, 25, 45, .12);
}

@media (max-width: 640px) {
  #sf-cloud-page .field,
  #sf-cloud-page .demo-field {
    padding-bottom: 32px;
  }

  #sf-cloud-page .form-field-error {
    bottom: 3px;
    min-height: 28px;
    align-items: flex-start;
  }

  #sf-cloud-page .form-field-error::before {
    margin-top: 5px;
  }

  #sf-cloud-page .modal__grid,
  #sf-cloud-page .connect-form__fields,
  #sf-cloud-page #get_promo {
    row-gap: 6px;
  }
}

/* v11 - consent checkbox layout only.
   Use the real checkbox rendered by the standard Bitrix .default template.
   This avoids any dependency on pseudo-elements or internal sibling order. */
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request,
#sf-cloud-page .modal__actions .consent .main-user-consent-request {
  display: inline-flex !important;
  position: relative !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  vertical-align: top !important;
  cursor: pointer !important;
}

/* Disable only decorative checkbox pseudo-elements so the native Bitrix input
   is the single visible control. */
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request::before,
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request::after,
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce::before,
#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce::after,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request::before,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request::after,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request-announce::before,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request-announce::after,
#sf-cloud-page .modal__actions .consent .main-user-consent-request::before,
#sf-cloud-page .modal__actions .consent .main-user-consent-request::after,
#sf-cloud-page .modal__actions .consent .main-user-consent-request-announce::before,
#sf-cloud-page .modal__actions .consent .main-user-consent-request-announce::after {
  content: none !important;
  display: none !important;
}

#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"],
#sf-cloud-page #get_promo .softrum__checkbox > input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent > input[type="checkbox"],
#sf-cloud-page .modal__actions .consent .main-user-consent-request input[type="checkbox"],
#sf-cloud-page .modal__actions .consent > input[type="checkbox"] {
  display: inline-block !important;
  position: static !important;
  z-index: auto !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  min-width: 16px !important;
  max-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  border: 1px solid #9aa8b4 !important;
  border-radius: 4px !important;
  outline: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: hidden !important;
  clip: auto !important;
  clip-path: none !important;
  transform: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background-color: #fff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 11px 8px !important;
  box-shadow: inset 0 0 0 1px rgba(7, 35, 57, .025), 0 1px 2px rgba(7, 35, 57, .05) !important;
  box-sizing: border-box !important;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease !important;
}

#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page #get_promo .softrum__checkbox > input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent > input[type="checkbox"]:checked,
#sf-cloud-page .modal__actions .consent .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page .modal__actions .consent > input[type="checkbox"]:checked {
  border-color: var(--green) !important;
  background-color: var(--green) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 9'%3E%3Cpath d='M1 4.5 4.3 8 11 1' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"]:focus-visible,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request input[type="checkbox"]:focus-visible,
#sf-cloud-page .modal__actions .consent .main-user-consent-request input[type="checkbox"]:focus-visible {
  border-color: var(--green) !important;
  box-shadow: 0 0 0 3px rgba(21, 152, 125, .14) !important;
}

#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"],
#sf-cloud-page #get_promo .softrum__checkbox > input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent--dark .main-user-consent-request input[type="checkbox"],
#sf-cloud-page .connect-form__actions .consent--dark > input[type="checkbox"] {
  border-color: rgba(255,255,255,.55) !important;
  background-color: rgba(255,255,255,.08) !important;
  box-shadow: none !important;
}

#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page #get_promo .softrum__checkbox > input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent--dark .main-user-consent-request input[type="checkbox"]:checked,
#sf-cloud-page .connect-form__actions .consent--dark > input[type="checkbox"]:checked {
  border-color: #2aa284 !important;
  background-color: #2aa284 !important;
}

#sf-cloud-page #get_promo .softrum__checkbox .main-user-consent-request-announce,
#sf-cloud-page .connect-form__actions .consent .main-user-consent-request-announce,
#sf-cloud-page .modal__actions .consent .main-user-consent-request-announce {
  display: inline !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: inherit !important;
  cursor: pointer !important;
}
