:root {
  --sv-ink: #14211e;
  --sv-copy: #52635e;
  --sv-muted: #74827e;
  --sv-line: #d8e2dd;
  --sv-paper: #ffffff;
  --sv-canvas: #f4f7f5;
  --sv-soft: #e7f3ef;
  --sv-accent: #0b8f82;
  --sv-accent-dark: #087268;
  --sv-radius: 16px;
  --sv-radius-small: 10px;
  --sv-shadow: 0 24px 70px -48px rgba(20, 45, 39, .38);
}

html { scroll-behavior: smooth; }
body { background: var(--sv-paper); color: var(--sv-ink); font-size: 16px; }
body, button, input, select, textarea { font-family: "Golos Text", Arial, sans-serif; }
h1, h2, h3, h4 { color: var(--sv-ink); font-family: "Golos Text", Arial, sans-serif !important; letter-spacing: -.045em; text-wrap: balance; }
p { text-wrap: pretty; }
a, button { touch-action: manipulation; }
.container { width: min(1180px, calc(100% - 40px)); }
.btn { min-height: 48px; padding-inline: 20px; border-radius: var(--sv-radius-small); font-size: .92rem; }
.btn-primary, .btn-dark { background: var(--sv-accent); color: #fff; }
.btn-primary:hover, .btn-dark:hover { background: var(--sv-accent-dark); }
.btn:active, .sv-text-link:active, .sv-task-router a:active, .sv-tool-list a:active { transform: translateY(1px); }
.sv-text-link { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; color: var(--sv-ink); font-size: .92rem; font-weight: 650; }
.sv-text-link:hover { color: var(--sv-accent); }
.sv-text-link span { color: var(--sv-accent); }

.site-header { position: sticky; top: 0; z-index: 40; border-bottom: 1px solid var(--sv-line); background: rgba(255,255,255,.96); box-shadow: none; backdrop-filter: blur(16px); }
.top-strip { min-height: 30px; background: var(--sv-ink); color: rgba(255,255,255,.8); }
.top-strip span { font-size: .68rem; }
.header-inner { min-height: 68px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.brand-logo { height: 34px; }
.desktop-nav { gap: 2px; }
.desktop-nav a { min-height: 42px; padding: 0 10px; border: 0; border-radius: 8px; color: #53625e; font-size: .76rem; font-weight: 600; }
.desktop-nav a:hover, .desktop-nav a.is-current { background: var(--sv-soft); color: var(--sv-accent-dark); }
.desktop-nav .nav-neuro { border: 0; background: transparent; color: var(--sv-accent-dark); }
.header-actions .btn { min-height: 42px; padding-inline: 15px; }

.sv-hero { padding: clamp(48px, 7vw, 88px) 0 clamp(54px, 8vw, 104px); background: radial-gradient(circle at 82% 18%, rgba(11,143,130,.1), transparent 27rem), var(--sv-paper); }
.sv-hero-layout { display: grid; grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); gap: clamp(48px, 8vw, 112px); align-items: center; }
.sv-hero-copy { max-width: 590px; }
.sv-hero-context { margin: 0 0 18px; color: var(--sv-accent-dark); font-size: .78rem; font-weight: 700; }
.sv-hero h1 { max-width: none; margin: 0; font-size: clamp(3rem, 4.4vw, 4.7rem); line-height: .94; }
.sv-hero-lead { max-width: 53ch; margin: 26px 0 0; color: var(--sv-copy); font-size: clamp(1rem, 1.3vw, 1.12rem); line-height: 1.62; }
.sv-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: 28px; }
.sv-task-router { overflow: hidden; border: 1px solid var(--sv-line); border-radius: var(--sv-radius); background: rgba(255,255,255,.88); box-shadow: var(--sv-shadow); }
.sv-task-router h2 { margin: 0; padding: 22px 24px 17px; border-bottom: 1px solid var(--sv-line); font-size: 1.08rem; letter-spacing: -.025em; }
.sv-task-router a { display: grid; min-height: 70px; grid-template-columns: minmax(0,1fr) auto; gap: 3px 18px; align-items: center; padding: 12px 22px; border-bottom: 1px solid var(--sv-line); color: var(--sv-ink); transition: background-color 180ms ease, padding 180ms ease; }
.sv-task-router a:last-child { border-bottom: 0; }
.sv-task-router a:hover { padding-inline: 26px 18px; background: var(--sv-soft); }
.sv-task-router a span { font-size: .93rem; font-weight: 650; }
.sv-task-router a small { grid-column: 1; color: var(--sv-muted); font-size: .76rem; }
.sv-task-router a i { grid-column: 2; grid-row: 1 / 3; color: var(--sv-accent); font-style: normal; }

.sv-problem-band { border-block: 1px solid var(--sv-line); background: var(--sv-canvas); }
.sv-problem-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; }
.sv-problem-grid p { min-height: 122px; margin: 0; padding: 26px 28px; border-left: 1px solid var(--sv-line); color: var(--sv-copy); font-size: .87rem; line-height: 1.55; }
.sv-problem-grid p:first-child { border-left: 0; padding-left: 0; }
.sv-problem-grid strong { display: block; margin-bottom: 8px; color: var(--sv-ink); font-size: .78rem; }

.sv-tools, .sv-workflow, .sv-human-help, .sv-regions, .sv-contact, .sv-faq, .country-route, .country-institutions { padding: clamp(72px, 9vw, 128px) 0; }
.sv-section-head { max-width: 710px; margin-bottom: 42px; }
.sv-section-head h2, .sv-workflow h2, .sv-human-help h2, .sv-regions h2, .sv-contact h2, .sv-faq h2, .country-institutions h2 { margin: 0; font-size: clamp(2.35rem, 4.3vw, 4.65rem); line-height: .96; }
.sv-section-head p, .sv-regions p, .sv-contact p, .country-institutions p { max-width: 58ch; margin: 18px 0 0; color: var(--sv-copy); line-height: 1.65; }
.sv-tools-layout { display: grid; grid-template-columns: minmax(320px,.82fr) minmax(0,1.18fr); gap: clamp(28px, 5vw, 72px); align-items: stretch; }
.sv-tool-feature { display: flex; min-height: 480px; flex-direction: column; justify-content: flex-end; padding: clamp(28px, 4vw, 46px); border-radius: var(--sv-radius); background: linear-gradient(150deg, #153d37, #0b786f); color: #fff; box-shadow: 0 28px 80px -50px rgba(10,90,80,.8); }
.sv-tool-feature > span { margin-bottom: auto; color: rgba(255,255,255,.7); font-size: .78rem; font-weight: 650; }
.sv-tool-feature h3 { max-width: 12ch; margin: 0; color: #fff; font-size: clamp(2.1rem, 3.5vw, 3.8rem); line-height: .96; }
.sv-tool-feature p { max-width: 38ch; margin: 18px 0 28px; color: rgba(255,255,255,.78); font-size: .92rem; line-height: 1.55; }
.sv-tool-feature b { font-size: .9rem; }.sv-tool-feature b i { margin-left: 6px; font-style: normal; }
.sv-tool-list { border-top: 1px solid var(--sv-line); }
.sv-tool-list a { display: grid; min-height: 94px; grid-template-columns: minmax(150px,.55fr) minmax(0,1fr); gap: 24px; align-items:center; padding: 18px 4px; border-bottom: 1px solid var(--sv-line); color: var(--sv-ink); transition: color 180ms ease, padding 180ms ease; }
.sv-tool-list a:hover { padding-inline: 14px 4px; color: var(--sv-accent-dark); }
.sv-tool-list strong { font-size: 1.05rem; }.sv-tool-list span { color: var(--sv-copy); font-size: .84rem; line-height: 1.48; }

.sv-workflow { background: var(--sv-canvas); }
.sv-workflow-layout, .sv-human-layout { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.9fr); gap: clamp(42px,7vw,100px); align-items: center; }
.sv-workflow-media, .sv-human-media { display: block; overflow: hidden; border-radius: var(--sv-radius); background: #e9efec; }
.sv-workflow-media img { display:block; width:100%; aspect-ratio: 16 / 10; max-height: 520px; object-fit:cover; object-position:center 46%; }
.sv-workflow-copy h2 { max-width: 10ch; }
.sv-workflow-copy ol { margin: 34px 0 20px; padding: 0; list-style: none; counter-reset: route; }
.sv-workflow-copy li { position:relative; padding: 18px 0 18px 48px; border-top:1px solid var(--sv-line); counter-increment:route; }
.sv-workflow-copy li::before { position:absolute; top:20px; left:0; color:var(--sv-accent); font-size:.72rem; font-weight:700; content:counter(route, decimal-leading-zero); }
.sv-workflow-copy li strong { display:block; margin-bottom:6px; font-size:1.05rem; }.sv-workflow-copy li span { color:var(--sv-copy); font-size:.86rem; line-height:1.5; }

.sv-human-layout { grid-template-columns:minmax(0,1fr) minmax(340px,.85fr); }
.sv-human-copy h2 { max-width: 11ch; }.sv-human-copy > p { max-width:55ch; margin:22px 0 0; color:var(--sv-copy); line-height:1.65; }
.sv-service-lines { margin-top:32px; border-top:1px solid var(--sv-line); }
.sv-service-lines div { display:flex; min-height:56px; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid var(--sv-line); }
.sv-service-lines span { font-size:.87rem; }.sv-service-lines strong { flex:0 0 auto; font-size:.82rem; }
.sv-human-media img { display:block; width:100%; aspect-ratio:4 / 5; max-height:600px; object-fit:cover; object-position:center; }

.sv-regions { background:var(--sv-canvas); }
.sv-regions-layout, .country-institutions-layout { display:grid; grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr); gap:clamp(50px,8vw,120px); align-items:start; }
.sv-regions h2 { max-width:11ch; }
.sv-regions nav, .country-institutions ul { margin:0; padding:0; border-top:1px solid var(--sv-line); list-style:none; }
.sv-regions nav a, .country-institutions li { display:grid; min-height:92px; grid-template-columns:minmax(150px,.45fr) minmax(0,1fr); gap:24px; align-items:center; border-bottom:1px solid var(--sv-line); color:var(--sv-ink); }
.sv-regions nav a:hover { color:var(--sv-accent-dark); }.sv-regions nav span, .country-institutions li span { color:var(--sv-copy); font-size:.84rem; }

.sv-contact { background:#edf5f2; }
.sv-contact-layout { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:clamp(48px,8vw,120px); align-items:center; }
.sv-contact h2 { max-width:9ch; }.sv-contact nav { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.sv-contact nav a { display:flex; min-height:84px; align-items:center; gap:14px; padding:16px; border:1px solid #d0dfda; border-radius:var(--sv-radius-small); background:rgba(255,255,255,.68); color:var(--sv-ink); }
.sv-contact nav a:hover { border-color:#a9c9c0; background:#fff; }.sv-contact nav img { flex:0 0 auto; }.sv-contact nav strong,.sv-contact nav small { display:block; }.sv-contact nav strong { font-size:.88rem; }.sv-contact nav small { margin-top:3px; color:var(--sv-muted); font-size:.72rem; }
.sv-faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 56px; margin-top:38px; border-top:1px solid var(--sv-line); }
.sv-faq-grid article { min-height:150px; padding:24px 0; border-bottom:1px solid var(--sv-line); }.sv-faq-grid h3 { margin:0 0 10px; font-size:1.12rem; }.sv-faq-grid p { max-width:48ch; margin:0; color:var(--sv-copy); font-size:.86rem; line-height:1.55; }

.country-hero { padding:clamp(56px,8vw,112px) 0; background:radial-gradient(circle at 80% 20%,rgba(11,143,130,.1),transparent 26rem),var(--sv-paper); }
.country-hero-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(350px,.72fr); gap:clamp(48px,8vw,112px); align-items:end; }
.country-label { color:var(--sv-accent-dark); font-size:.78rem; font-weight:700; }.country-hero h1 { max-width:14ch; margin:16px 0 22px; font-size:clamp(3rem,5.4vw,5.8rem); line-height:.94; }.country-hero p:not(.country-label) { max-width:56ch; color:var(--sv-copy); line-height:1.62; }
.country-task-list { border-top:1px solid var(--sv-line); }.country-task-list h2 { margin:0; padding:0 0 18px; border-bottom:1px solid var(--sv-line); font-size:1rem; }.country-task-list a { display:flex; min-height:58px; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid var(--sv-line); color:var(--sv-ink); font-size:.88rem; }.country-task-list a:hover { color:var(--sv-accent); }
.country-route { background:var(--sv-canvas); }.country-route-grid { display:grid; grid-template-columns:1.1fr .9fr 1fr; gap:1px; overflow:hidden; border:1px solid var(--sv-line); border-radius:var(--sv-radius); background:var(--sv-line); }.country-route-grid article { min-height:240px; padding:30px; background:#fff; }.country-route-grid h3 { max-width:12ch; margin:0 0 70px; font-size:1.45rem; }.country-route-grid p { margin:0; color:var(--sv-copy); font-size:.86rem; line-height:1.6; }
.country-institutions li { min-height:74px; }.country-institutions h2 { max-width:9ch; }.country-institutions li strong { font-size:.88rem; line-height:1.35; }

.mobile-contact-bar { display:none; }
.community-popup { border:1px solid var(--sv-line); border-radius:var(--sv-radius); background:#fff; box-shadow:0 28px 80px -42px rgba(20,40,35,.5); }
.community-head { background:#fff; }.community-title { color:var(--sv-ink); }
.field-help { display:block; margin-top:8px; color:var(--sv-muted); font-size:.78rem; line-height:1.45; }
.notice-error { border-color:#e4b9b4; background:#fff2f0; color:#8a2f27; }
.order-page .page-hero { background:var(--sv-canvas); }
.order-page .form-shell { width:min(980px, calc(100% - 40px)); }
.order-page .tool-panel { border:1px solid var(--sv-line); border-radius:var(--sv-radius); box-shadow:none; }
.order-page .section-dark { background:#fff; color:var(--sv-ink); }
.order-page .section-dark .section-title,.order-page .section-dark .section-text { color:var(--sv-ink); }
.order-page .section-dark .section-text { color:var(--sv-copy); }
.order-page .contact-grid { gap:1px; overflow:hidden; border:1px solid var(--sv-line); border-radius:var(--sv-radius); background:var(--sv-line); }
.order-page .contact-card { border:0; border-radius:0; background:#fff; color:var(--sv-ink); box-shadow:none; }
.order-page .contact-card span { color:var(--sv-copy); }
.order-page .section-alt .grid-3 { grid-template-columns:1fr; max-width:820px; gap:0; border-top:1px solid var(--sv-line); }
.order-page .section-alt .feature-card { display:grid; min-height:0; grid-template-columns:54px 220px minmax(0,1fr); gap:18px; align-items:start; padding:22px 0; border:0; border-bottom:1px solid var(--sv-line); border-radius:0; background:transparent; box-shadow:none; }
.order-page .section-alt .feature-card h3,.order-page .section-alt .feature-card p { margin:0; }
.order-page .section-alt .feature-card p { color:var(--sv-copy); }

/* Existing page imagery is kept compact on phones. */
.page-hero-showcase-picture img, .premium-hero-visual img, .tools-feature-visual img { object-fit:cover; }

@media (max-width: 1080px) {
  .desktop-nav { display:none; }.menu-toggle { display:grid; }
  .sv-hero-layout, .sv-workflow-layout, .sv-human-layout, .sv-regions-layout, .sv-contact-layout, .country-hero-layout, .country-institutions-layout { grid-template-columns:1fr; }
  .sv-hero-copy { max-width:760px; }.sv-hero h1 { max-width:12ch; }.sv-task-router { max-width:760px; }
  .sv-workflow-copy { max-width:700px; }.sv-human-media { max-width:720px; }
}

@media (max-width: 767px) {
  body { padding-bottom:70px; font-size:16px; }
  .container { width:min(100% - 32px, 1180px); }
  .top-strip { display:none; }.header-inner { min-height:62px; padding-inline:16px; }.brand-logo { height:31px; }
  .mobile-nav { max-height:calc(100dvh - 62px); overflow:auto; padding-bottom:24px; }.mobile-nav a { min-height:50px; }
  .sv-hero { padding:34px 0 44px; background:radial-gradient(circle at 90% 0,rgba(11,143,130,.1),transparent 18rem),#fff; }
  .sv-hero-layout { gap:30px; }.sv-hero-context { margin-bottom:14px; }.sv-hero h1 { max-width:11ch; font-size:clamp(2.55rem,12.3vw,3.7rem); line-height:.94; }.sv-hero-lead { margin-top:20px; font-size:1rem; line-height:1.55; }
  .sv-hero-actions { align-items:stretch; flex-direction:column; margin-top:22px; }.sv-hero-actions .btn,.sv-hero-actions .sv-text-link { width:100%; justify-content:center; }
  .sv-task-router { border-radius:12px; box-shadow:none; }.sv-task-router h2 { padding:18px 18px 14px; }.sv-task-router a { min-height:64px; padding:10px 17px; }.sv-task-router a:hover { padding-inline:17px; }
  .sv-problem-grid { grid-template-columns:1fr; }.sv-problem-grid p,.sv-problem-grid p:first-child { min-height:0; padding:18px 0; border:0; border-top:1px solid var(--sv-line); }.sv-problem-grid p:first-child { border-top:0; }
  .sv-tools,.sv-workflow,.sv-human-help,.sv-regions,.sv-contact,.sv-faq,.country-route,.country-institutions { padding:58px 0 66px; }
  .sv-section-head { margin-bottom:28px; }.sv-section-head h2,.sv-workflow h2,.sv-human-help h2,.sv-regions h2,.sv-contact h2,.sv-faq h2,.country-institutions h2 { font-size:clamp(2.15rem,10vw,3.15rem); }
  .sv-tools-layout { grid-template-columns:1fr; gap:28px; }.sv-tool-feature { min-height:360px; padding:24px; border-radius:12px; }.sv-tool-feature h3 { font-size:2.4rem; }.sv-tool-list a { min-height:82px; grid-template-columns:1fr; gap:6px; padding:16px 2px; }
  .sv-workflow-layout,.sv-human-layout,.sv-regions-layout,.sv-contact-layout,.country-hero-layout,.country-institutions-layout { gap:34px; }
  .sv-workflow-media img,.sv-human-media img { aspect-ratio:4 / 3; max-height:260px; object-position:center; }.sv-workflow-copy h2,.sv-human-copy h2,.sv-regions h2,.sv-contact h2 { max-width:12ch; }
  .sv-service-lines div { align-items:flex-start; flex-direction:column; gap:7px; padding:14px 0; }
  .sv-regions nav a,.country-institutions li { min-height:74px; grid-template-columns:1fr; gap:5px; padding:14px 0; }
  .sv-contact nav,.sv-faq-grid { grid-template-columns:1fr; }.sv-contact nav a { min-height:72px; }.sv-faq-grid { gap:0; }.sv-faq-grid article { min-height:0; }
  .country-hero { padding:42px 0 54px; }.country-hero h1 { font-size:clamp(2.55rem,11vw,3.8rem); }.country-route-grid { grid-template-columns:1fr; }.country-route-grid article { min-height:0; padding:24px; }.country-route-grid h3 { margin-bottom:24px; }
  .mobile-contact-bar { position:fixed; z-index:38; right:0; bottom:0; left:0; display:grid; grid-template-columns:.9fr 1.1fr; gap:8px; padding:9px 12px calc(9px + env(safe-area-inset-bottom)); border-top:1px solid var(--sv-line); background:rgba(255,255,255,.96); backdrop-filter:blur(16px); }
  .mobile-contact-bar a { display:grid; min-height:48px; place-items:center; border:1px solid var(--sv-line); border-radius:9px; color:var(--sv-ink); font-size:.86rem; font-weight:700; }.mobile-contact-bar a:last-child { border-color:var(--sv-accent); background:var(--sv-accent); color:#fff; }
  .community-popup { right:10px; bottom:76px; left:10px; width:auto; max-height:calc(100dvh - 98px); overflow:auto; border-radius:12px; }.community-links { grid-template-columns:1fr 1fr 1fr; }.community-link { min-width:0; padding:10px 8px; }.community-link img { width:32px; height:32px; }.community-link em { display:none; }
  .order-page .form-shell { width:min(100% - 32px, 980px); }.order-page .section-alt .feature-card { grid-template-columns:42px minmax(0,1fr); gap:8px 14px; }.order-page .section-alt .feature-card p { grid-column:2; }
  .page-hero-showcase,.premium-hero-visual,.tools-feature-visual { min-height:0!important; max-height:280px!important; border-radius:12px!important; }.page-hero-showcase-picture,.premium-hero-visual picture,.tools-feature-visual picture { min-height:0!important; height:100%!important; }.page-hero-showcase-picture img,.premium-hero-visual img,.tools-feature-visual img { width:100%!important; height:100%!important; max-height:280px!important; aspect-ratio:4 / 3!important; object-fit:cover!important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
}
