/* ===== fonts (self-hosted, no third-party requests) ===== */
@font-face{font-family:"Bebas Neue";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/bebas-neue-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bebas Neue";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/bebas-neue-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Oswald";font-style:normal;font-weight:200 700;font-display:swap;src:url(fonts/oswald-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url(fonts/manrope-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url(fonts/manrope-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url(fonts/manrope-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Space Mono";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/space-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Space Mono";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/space-mono-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ===== tokens ===== */
:root{
  --red:#e63329;--blue:#1a3fc4;--yellow:#f5c200;--teal:#00a896;
  --f-head:"Bebas Neue","Oswald","Arial Narrow",Impact,sans-serif;
  --f-body:"Manrope","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --f-mono:"Space Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --r:18px;--r-s:12px;--hh:68px;--maxw:1200px;
  color-scheme:dark;
}
:root,:root[data-theme="dark"]{
  --bg:#0a0a0f;--bg2:#101018;--card:rgba(255,255,255,.045);--card2:rgba(255,255,255,.08);
  --line:rgba(255,255,255,.12);--line2:rgba(255,255,255,.22);
  --ink:#f0ebe0;--ink2:rgba(240,235,224,.76);--ink3:rgba(240,235,224,.58);
  --blue-t:#7b94ff;--red-t:#ff7468;--yel-t:#f5c200;--teal-t:#2fd6c3;
  --on-y:#0a0a0f;--nav:rgba(10,10,15,.8);--art-line:rgba(245,194,0,.2);
  --shadow:0 18px 50px rgba(0,0,0,.45);--field:rgba(255,255,255,.06);
  --sea:#071e44;--sky:#040c22;
}
:root[data-theme="light"]{
  color-scheme:light;
  --bg:#fbfaf6;--bg2:#f1eee6;--card:#ffffff;--card2:#f4f1e9;
  --line:rgba(13,13,18,.13);--line2:rgba(13,13,18,.26);
  --ink:#0d0d12;--ink2:rgba(13,13,18,.8);--ink3:rgba(13,13,18,.64);
  --blue-t:#1a3fc4;--red-t:#c3261c;--yel-t:#946d00;--teal-t:#007a6d;
  --on-y:#0d0d12;--nav:rgba(251,250,246,.86);--art-line:rgba(26,63,196,.18);
  --shadow:0 18px 44px rgba(40,30,10,.14);--field:#ffffff;
  --sea:#bde0f8;--sky:#e8f4ff;
}

/* ===== reset / base ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hh) + 14px)}
body{font-family:var(--f-body);font-size:16px;line-height:1.6;background:var(--bg);color:var(--ink);overflow-x:hidden;min-height:100vh;transition:background .3s,color .3s;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0}
ul{list-style:none}
:focus-visible{outline:3px solid var(--yel-t);outline-offset:3px;border-radius:6px}
[hidden]{display:none!important}
::selection{background:var(--yellow);color:#0a0a0f}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;inset-inline-start:12px;top:-60px;z-index:300;background:var(--yellow);color:var(--on-y);padding:.6rem 1rem;border-radius:10px;font-weight:700;transition:top .2s}
.skip:focus{top:10px}
#bgart{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.5}
:root[data-theme="light"] #bgart{opacity:.42}
main,.ft,.hd{position:relative;z-index:1}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:20px}

/* headings: Bebas (latin) + Oswald (cyrillic); other scripts use system bold */
h1,h2,h3,.f-head{font-family:var(--f-head);font-weight:400;letter-spacing:.03em;line-height:1;text-transform:uppercase}
html[lang="ru"] h1,html[lang="ru"] h2,html[lang="ru"] h3,html[lang="ru"] .f-head{font-weight:600;letter-spacing:.02em}
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3,html[lang="zh"] h1,html[lang="zh"] h2,html[lang="zh"] h3,
html[lang="ar"] .f-head,html[lang="zh"] .f-head{text-transform:none;letter-spacing:0;font-weight:800;line-height:1.25}
html[lang="ar"] body,html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3,html[lang="ar"] .f-head,html[lang="ar"] button,html[lang="ar"] input,html[lang="ar"] textarea,html[lang="ar"] select{font-family:"Segoe UI","Noto Sans Arabic","Noto Naskh Arabic",Tahoma,"Geeza Pro",system-ui,sans-serif}
html[lang="zh"] body,html[lang="zh"] h1,html[lang="zh"] h2,html[lang="zh"] h3,html[lang="zh"] .f-head,html[lang="zh"] button,html[lang="zh"] input,html[lang="zh"] textarea,html[lang="zh"] select{font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC","Hiragino Sans GB",system-ui,sans-serif}
html[lang="ar"] .mono,html[lang="zh"] .mono,html[lang="ar"] .eyebrow,html[lang="zh"] .eyebrow{text-transform:none;letter-spacing:0}

/* ===== buttons ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:.65rem 1.25rem;border-radius:999px;font-weight:700;font-size:.95rem;line-height:1.2;border:2px solid transparent;transition:transform .18s,background .2s,border-color .2s,box-shadow .2s;text-align:center}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn .ic{width:19px;height:19px}
.btn-y{background:var(--yellow);color:var(--on-y);box-shadow:0 8px 24px -10px rgba(245,194,0,.75)}
.btn-y:hover{box-shadow:0 12px 28px -8px rgba(245,194,0,.9)}
.btn-r{background:#d3281e;color:#fff;box-shadow:0 8px 24px -10px rgba(211,40,30,.8)}
.btn-r:hover{box-shadow:0 12px 28px -8px rgba(230,51,41,.95)}
.btn-o{border-color:var(--line2);color:var(--ink);background:transparent}
.btn-o:hover{border-color:var(--yellow);background:var(--card)}
.btn-sm{min-height:38px;padding:.4rem .95rem;font-size:.86rem}
.btn[disabled]{opacity:.55;pointer-events:none}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic .ia{fill:var(--ac,currentColor);stroke:none}
.ic .is{stroke:var(--ac,currentColor)}

/* ===== header ===== */
.hd{position:sticky;top:0;z-index:100;background:var(--nav);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);border-bottom:1px solid var(--line)}
.hd-in{display:flex;align-items:center;gap:1rem;height:var(--hh)}
.logo{display:flex;align-items:center;gap:.55rem;flex:none}
.logo svg{width:46px;height:40px}
.logo-t{display:flex;flex-direction:column;line-height:1}
.logo-n{font-family:var(--f-head);font-size:1.55rem;letter-spacing:.07em;color:var(--ink);text-transform:none}
html[lang="ru"] .logo-n,html[lang="ar"] .logo-n,html[lang="zh"] .logo-n{font-family:"Bebas Neue",var(--f-head);font-weight:400;letter-spacing:.07em}
.logo-n i{font-style:normal;color:var(--yel-t)}
.logo-n u{text-decoration:none;color:var(--red-t)}
.logo-s{font-family:var(--f-mono);font-size:.56rem;letter-spacing:.22em;color:var(--ink3);margin-top:3px;text-transform:uppercase}
.nav{display:flex;align-items:center;gap:.15rem;margin-inline:auto}
.nav a{padding:.5rem .8rem;border-radius:999px;font-weight:700;font-size:.9rem;color:var(--ink2);transition:color .2s,background .2s}
.nav a:hover,.nav a[aria-current="page"]{color:var(--ink);background:var(--card2)}
.nav a.nav-sos{color:var(--red-t)}
.hd-tools{display:flex;align-items:center;gap:.4rem;flex:none}
.ib{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--ink);transition:border-color .2s,background .2s,transform .2s}
.ib:hover{border-color:var(--yellow);transform:translateY(-1px)}
.ib .ic{width:20px;height:20px}
.theme .i-moon{display:none}
:root[data-theme="light"] .theme .i-sun{display:none}
:root[data-theme="light"] .theme .i-moon{display:block}
.lang{position:relative}
.lang-btn{display:flex;align-items:center;gap:.35rem;height:42px;padding:0 .7rem;border-radius:12px;border:1px solid var(--line);background:var(--card);font-weight:800;font-size:.8rem;letter-spacing:.04em}
.lang-btn:hover{border-color:var(--yellow)}
.lang-btn .ic{width:18px;height:18px}
.lang-menu{position:absolute;inset-inline-end:0;top:calc(100% + 8px);min-width:170px;padding:6px;border-radius:14px;background:var(--bg2);border:1px solid var(--line2);box-shadow:var(--shadow);display:none;z-index:120}
.lang-menu.open{display:block}
.lang-menu a{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .7rem;border-radius:9px;font-weight:600;font-size:.92rem;text-align:start}
.lang-menu a:hover,.lang-menu a[aria-current="page"]{background:var(--card2)}
.lang-menu a[aria-current="page"]::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--yellow)}
.hd-cta{display:inline-flex}
.burger{display:none}
@media (max-width:1060px){
  .hd-panel{display:none}
  .nav a{padding:.5rem .6rem}
}
@media (max-width:900px){
  .burger{display:grid}
  .hd-cta{display:none}
  .nav{position:fixed;inset:var(--hh) 0 auto 0;margin:0;flex-direction:column;align-items:stretch;gap:2px;padding:12px 20px 20px;background:var(--bg2);border-bottom:1px solid var(--line2);box-shadow:var(--shadow);transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;max-height:calc(100vh - var(--hh));overflow:auto}
  .nav.open{transform:none;opacity:1;visibility:visible}
  .nav a{padding:.85rem 1rem;font-size:1.05rem;border-radius:12px}
  .nav .nav-mob{display:flex}
  .hd-tools{margin-inline-start:auto}
}
.nav .nav-mob{display:none;margin-top:8px}
@media (max-width:420px){.logo-s{display:none}.logo svg{width:40px;height:35px}.logo-n{font-size:1.35rem}.ib,.lang-btn{height:40px}.ib{width:40px}}

/* ===== shared section parts ===== */
.sec{padding:clamp(36px,5.2vw,72px) 0}
.sec-h{max-width:760px;margin-bottom:clamp(1.4rem,3vw,2.2rem)}
.sec-h h2{font-size:clamp(2.1rem,5vw,3.6rem);margin-top:.5rem}
.sec-h .sub{margin-top:.7rem;color:var(--ink2);font-size:1.02rem}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);font-weight:700}
.eyebrow::before{content:"";width:10px;height:10px;background:var(--red);border-radius:50%;flex:none}
.eyebrow.b::before{background:var(--blue);border-radius:2px}
.eyebrow.y::before{background:var(--yellow);border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%)}
.eyebrow.t::before{background:var(--teal);border-radius:50% 0 50% 0}
.ticks li{position:relative;padding-inline-start:1.5rem;margin:.4rem 0;font-size:.93rem;line-height:1.45}
.ticks li::before{content:"";position:absolute;inset-inline-start:.28rem;top:.28em;width:.42rem;height:.78rem;border:solid currentColor;border-width:0 2.2px 2.2px 0;transform:rotate(45deg);opacity:.9}
[dir="rtl"] .ticks li::before{transform:rotate(45deg)}
.rv{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.rv.vis,.no-js .rv{opacity:1;transform:none}
.arrow-r{transition:transform .2s}
[dir="rtl"] .arrow-r,[dir="rtl"] .btn .ic-arrow{transform:scaleX(-1)}
.btn:hover .arrow-r{transform:translateX(3px)}
[dir="rtl"] .btn:hover .arrow-r{transform:scaleX(-1) translateX(3px)}

/* ===== hero ===== */
.hero{padding:clamp(28px,5vw,64px) 0 clamp(30px,5vw,56px);position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,4vw,56px);align-items:center}
.hero h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:.98;margin:1rem 0 1.2rem}
.hero h1 .l{display:flex;align-items:flex-start;gap:.28em}
.hero h1 .l::before{content:"";flex:none;width:.4em;height:.4em;margin-top:.17em;background:var(--blue)}
html[lang="ru"] .hero h1{font-size:clamp(2.3rem,4.6vw,4.1rem)}
html[lang="es"] .hero h1{font-size:clamp(2.5rem,5.1vw,4.5rem)}
.hero h1 .l2{color:var(--red-t)}
.hero h1 .l2::before{background:var(--red);clip-path:polygon(50% 0,100% 100%,0 100%)}
.hero h1 .l3{color:var(--yel-t)}
.hero h1 .l3::before{background:var(--yellow);border-radius:50%}
html[lang="ar"] .hero h1,html[lang="zh"] .hero h1{font-size:clamp(2.3rem,6.2vw,4.6rem);line-height:1.15}
.lead{font-size:clamp(1rem,1.5vw,1.15rem);color:var(--ink2);max-width:600px}
.hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}
.hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.4rem}
.chip{display:inline-flex;align-items:center;gap:.45rem;padding:.38rem .8rem;border-radius:999px;border:1px solid var(--line);background:var(--card);font-size:.8rem;font-weight:700;color:var(--ink2)}
.chip i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 3px rgba(0,168,150,.22)}
.hero-art{position:relative;aspect-ratio:1/1.02;border-radius:30px;overflow:hidden;border:1px solid var(--line2);background:var(--card);box-shadow:var(--shadow)}
.hero-art>svg{position:absolute;inset:0;width:100%;height:100%}
.art-chip{position:absolute;display:flex;align-items:center;gap:.5rem;padding:.5rem .85rem;border-radius:14px;background:var(--nav);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line2);font-size:.78rem;font-weight:800;box-shadow:var(--shadow);animation:floaty 5.5s ease-in-out infinite}
.art-chip .ic{width:18px;height:18px;--ac:var(--yellow)}
.art-chip:is(a,button){cursor:pointer;text-align:start;transition:border-color .2s,background .2s,box-shadow .2s}
.art-chip:is(a,button):is(:hover,:focus-visible){border-color:var(--yel-t);background:var(--bg2);animation-play-state:paused}
.art-chip.c1{inset-inline-start:5%;top:7%}
.art-chip.c2{inset-inline-end:4%;top:46%;animation-delay:-1.8s}
.art-chip.c3{inset-inline-start:7%;bottom:9%;animation-delay:-3.4s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.art-boat{transform-box:fill-box;transform-origin:50% 92%;animation:rock 6s ease-in-out infinite}
@keyframes rock{0%,100%{transform:rotate(-2.6deg) translateY(0)}50%{transform:rotate(2.6deg) translateY(-3px)}}
.art-w1{animation:wave 9s linear infinite}
.art-w2{animation:wave 13s linear infinite reverse}
.art-w3{animation:wave 17s linear infinite}
@keyframes wave{from{transform:translateX(0)}to{transform:translateX(-120px)}}
.art-rays{transform-box:fill-box;transform-origin:50% 50%;animation:spin 60s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.art-pupil{transition:transform .12s ease-out}
.art-blink{transform-box:fill-box;transform-origin:50% 50%;animation:blink 7s infinite}
@keyframes blink{0%,94%,100%{transform:scaleY(1)}97%{transform:scaleY(.1)}}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-art{max-width:560px;margin-inline:auto;width:100%;aspect-ratio:1/.92}
}

/* ===== stats ===== */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--r);background:var(--card);overflow:hidden}
.stat{padding:1.1rem 1.2rem;border-inline-end:1px solid var(--line);display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap}
.stat:last-child{border-inline-end:0}
.stat b{font-family:var(--f-head);font-weight:400;font-size:2.6rem;line-height:1;color:var(--yel-t)}
.stat:nth-child(2) b{color:var(--red-t)}
.stat:nth-child(3) b{color:var(--teal-t)}
.stat:nth-child(4) b{color:var(--blue-t)}
.stat span{font-size:.85rem;color:var(--ink2);font-weight:600}
@media (max-width:760px){.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-inline-end:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}

/* ===== pillars (Bauhaus tiles) ===== */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tile{position:relative;display:flex;flex-direction:column;min-height:400px;padding:26px 24px 22px;overflow:hidden;color:#fff;isolation:isolate;transition:transform .25s}
.tile:hover{transform:translateY(-5px)}
.tile>*{position:relative;z-index:1}
.tile .deco{position:absolute;z-index:0;inset:auto -14% -10% auto;width:78%;opacity:.28;pointer-events:none}
[dir="rtl"] .tile .deco{inset:auto auto -10% -14%}
.tile-ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.18);margin-bottom:1.1rem}
.tile-ic .ic{width:28px;height:28px;--ac:currentColor}
.tile h3{font-size:2.15rem;margin-bottom:.7rem}
.tile p{font-size:.95rem;line-height:1.5;opacity:.95}
.tile .ticks{margin:.9rem 0 1.2rem}
.tile-act{margin-top:auto;display:flex;flex-wrap:wrap;gap:.5rem}
.tile .btn-t{background:rgba(255,255,255,.95);color:#0a0a0f;min-height:40px;padding:.45rem 1rem;font-size:.86rem;border-radius:999px;font-weight:800;display:inline-flex;align-items:center;gap:.4rem}
.tile .btn-t:hover{background:#fff}
.tile .btn-l{color:inherit;font-weight:800;font-size:.86rem;padding:.45rem .6rem;display:inline-flex;align-items:center;gap:.35rem;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
.tile--blue{background:#1a3fc4;border-radius:34px 6px 6px 6px}
.tile--yellow{background:#f5c200;color:#0a0a0f;border-radius:6px 34px 6px 6px}
.tile--yellow .tile-ic{background:rgba(10,10,15,.12)}
.tile--yellow .btn-t{background:#0a0a0f;color:#f5c200}
.tile--red{background:#d3281e;border-radius:6px 6px 34px 6px}
.tile--teal{background:#00a896;color:#04201c;border-radius:6px 6px 6px 34px}
.tile--teal .tile-ic{background:rgba(4,32,28,.14)}
.tile--teal .btn-t{background:#04201c;color:#e7fffb}
[dir="rtl"] .tile--blue{border-radius:6px 34px 6px 6px}
[dir="rtl"] .tile--yellow{border-radius:34px 6px 6px 6px}
[dir="rtl"] .tile--red{border-radius:6px 6px 6px 34px}
[dir="rtl"] .tile--teal{border-radius:6px 6px 34px 6px}
@media (max-width:1060px){.pillars{grid-template-columns:1fr 1fr}.tile{min-height:340px}}
@media (max-width:620px){.pillars{grid-template-columns:1fr}.tile{min-height:0}}

/* ===== SOS band ===== */
.sosband{position:relative;display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;padding:clamp(22px,4vw,40px);border-radius:28px;background:#d3281e;color:#fff;overflow:hidden;isolation:isolate}
.sosband::before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.07) 0 14px,transparent 14px 28px)}
.sosband .buoy{position:absolute;inset-inline-end:-40px;top:-50px;width:230px;height:230px;opacity:.16;z-index:-1;animation:spin 40s linear infinite}
.sosband .buoy .ic{width:100%;height:100%;stroke-width:1.3}
.sosband h2{font-size:clamp(2rem,4.6vw,3.4rem);margin-bottom:.55rem}
.sosband p{max-width:640px;opacity:.96}
.sosband .acts{display:flex;flex-wrap:wrap;gap:.6rem}
.btn-w{background:#fff;color:#b01e15;box-shadow:0 10px 26px -10px rgba(0,0,0,.5)}
.btn-wo{border-color:rgba(255,255,255,.7);color:#fff}
.btn-wo:hover{background:rgba(255,255,255,.14);border-color:#fff}
@media (max-width:820px){.sosband{grid-template-columns:1fr}}

/* ===== cards ===== */
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.card{position:relative;display:flex;flex-direction:column;gap:.55rem;padding:18px 18px 14px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);transition:transform .22s,border-color .22s,box-shadow .22s}
.card:hover{transform:translateY(-4px);border-color:var(--ac,var(--yellow));box-shadow:var(--shadow)}
.card-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--ac,var(--yellow)) 18%,transparent);border:1px solid color-mix(in srgb,var(--ac,var(--yellow)) 40%,transparent)}
.card-ic .ic{width:26px;height:26px}
.card h3{font-size:1.45rem;line-height:1.05;margin-top:.3rem}
.card p{font-size:.9rem;color:var(--ink2);line-height:1.5}
.card-act{margin-top:auto;padding-top:.5rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.lnk{display:inline-flex;align-items:center;gap:.35rem;font-weight:800;font-size:.86rem;color:var(--ink);padding:.3rem 0;border-bottom:2px solid var(--ac,var(--yellow))}
.lnk:hover{color:var(--yel-t)}
.lnk .ic{width:16px;height:16px}
.add{display:inline-flex;align-items:center;gap:.3rem;height:34px;padding:0 .75rem;border-radius:999px;border:1px solid var(--line2);font-size:.78rem;font-weight:800;color:var(--ink2);transition:all .2s;white-space:nowrap}
.add .ic{width:15px;height:15px}
.add:hover{border-color:var(--yellow);color:var(--ink)}
.add.on{background:var(--yellow);border-color:var(--yellow);color:var(--on-y)}
.route{counter-reset:stop}
.route .card::before{counter-increment:stop;content:counter(stop,decimal-leading-zero);position:absolute;inset-inline-end:14px;top:10px;font-family:var(--f-mono);font-size:.72rem;font-weight:700;color:var(--ink3)}
.band{position:relative;padding:clamp(20px,3.5vw,38px);border-radius:28px;border:1px solid var(--line);background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 14%,var(--card)),var(--card) 60%);overflow:hidden}
.band::after{content:"";position:absolute;inset-inline-end:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:34px solid color-mix(in srgb,var(--yellow) 22%,transparent);pointer-events:none}
.band>*{position:relative;z-index:1}

/* ===== products ===== */
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.pcard{position:relative;display:flex;flex-direction:column;gap:.6rem;padding:22px 20px 16px;border-radius:20px;border:1px solid var(--line);background:var(--card);overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s}
.pcard::before{content:"";position:absolute;inset-inline:0;top:0;height:5px;background:var(--ac)}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--ac)}
.pcard.big{grid-column:span 2}
.pcard-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.pcard .card-ic{width:44px;height:44px}
.brand{font-family:var(--f-mono);font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--ink3)}
.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line2);color:var(--ink2)}
.badge.live{border-color:rgba(0,168,150,.6);color:var(--teal-t)}
.badge.live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);animation:pulse 1.8s infinite}
@keyframes pulse{50%{opacity:.35}}
.pcard h3{font-size:1.65rem;line-height:1.02}
.pcard.big h3{font-size:2.05rem}
.pcard p{font-size:.9rem;color:var(--ink2);line-height:1.5}
.tags{display:flex;flex-wrap:wrap;gap:.35rem}
.tags span{padding:.2rem .6rem;border-radius:8px;background:var(--card2);font-size:.74rem;font-weight:700;color:var(--ink2)}
.pcard-act{margin-top:auto;padding-top:.6rem;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}
.pcard-act .lnk{margin-inline-end:auto}
@media (max-width:1060px){.bento{grid-template-columns:1fr 1fr}.pcard.big{grid-column:span 2}}
@media (max-width:620px){.bento{grid-template-columns:1fr}.pcard.big{grid-column:auto}}

/* ===== process / promises ===== */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:st}
.step{position:relative;padding:20px 18px;border-top:3px solid var(--ac);background:var(--card);border-radius:0 0 var(--r) var(--r);border-inline:1px solid var(--line);border-bottom:1px solid var(--line)}
.step::before{counter-increment:st;content:counter(st);display:block;font-family:var(--f-head);font-size:3.4rem;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--ac);margin-bottom:.4rem}
.step h3{font-size:1.4rem;margin-bottom:.4rem}
.step p{font-size:.9rem;color:var(--ink2)}
.promises{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px}
.prom{display:flex;gap:.8rem;align-items:flex-start;padding:16px;border-radius:var(--r);border:1px dashed var(--line2)}
.prom .card-ic{width:40px;height:40px;flex:none}
.prom h3{font-size:1.2rem;margin-bottom:.15rem}
.prom p{font-size:.84rem;color:var(--ink2);line-height:1.45}
@media (max-width:1060px){.steps,.promises{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps,.promises{grid-template-columns:1fr}}

/* ===== SOS page extras ===== */
.need{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.need .box{padding:22px;border-radius:var(--r);border:1px solid var(--line);background:var(--card)}
.need h3{font-size:1.7rem;margin-bottom:.6rem}
@media (max-width:760px){.need{grid-template-columns:1fr}}

html[lang="ru"] .tile h3,html[lang="es"] .tile h3{font-size:1.85rem;line-height:1.1}
html[lang="ru"] .card h3,html[lang="ru"] .pcard h3,html[lang="ru"] .step h3{line-height:1.12}
html[lang="ru"] .sosband h2{line-height:1.08}
.phero-cta{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}

.steps.s3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:760px){.steps.s3{grid-template-columns:minmax(0,1fr)}}

/* ===== wiki block / wiki page ===== */
.wikib{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(22px,4vw,40px);border-radius:28px;border:1px solid var(--line2);background:var(--card)}
.wikib h2{font-size:clamp(2rem,4.2vw,3rem);margin:.5rem 0 .6rem}
.wikib .sub{color:var(--ink2)}
.wsearch{position:relative;display:flex;gap:.5rem}
.wsearch input{flex:1;min-width:0;height:50px;padding:0 1rem 0 2.8rem;border-radius:999px;border:1.5px solid var(--line2);background:var(--field);outline:0;transition:border-color .2s,box-shadow .2s}
[dir="rtl"] .wsearch input{padding:0 2.8rem 0 1rem}
.wsearch input:focus{border-color:var(--yellow);box-shadow:0 0 0 4px rgba(245,194,0,.2)}
.wsearch>.ic{position:absolute;inset-inline-start:1rem;top:14px;width:22px;height:22px;color:var(--ink3);pointer-events:none}
.wchips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem}
.wchip{padding:.4rem .85rem;border-radius:999px;border:1px solid var(--line2);font-size:.84rem;font-weight:700;color:var(--ink2);background:transparent;transition:all .2s}
.wchip:hover,.wchip.on{background:var(--yellow);border-color:var(--yellow);color:var(--on-y)}
@media (max-width:860px){.wikib{grid-template-columns:1fr}}
.wgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-top:1.2rem}
.wcard{padding:20px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;gap:.5rem;scroll-margin-top:90px}
.wcard:target,.wcard.hit{border-color:var(--yellow);box-shadow:0 0 0 3px rgba(245,194,0,.25)}
.wcard .cat{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);font-weight:700}
.wcard h3{font-size:1.5rem;line-height:1.05}
.wcard p{font-size:.92rem;color:var(--ink2)}
.wcard .lnk{align-self:flex-start;margin-top:auto}
.wcats{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}
.wempty{padding:2rem;text-align:center;color:var(--ink2);border:1px dashed var(--line2);border-radius:var(--r);margin-top:1rem}
.wbig{max-width:640px;margin-top:1.4rem}

/* ===== FAQ ===== */
.faq{max-width:860px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem .2rem;cursor:pointer;font-weight:800;font-size:1.05rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--f-head);font-size:1.8rem;line-height:1;color:var(--yel-t);transition:transform .25s;flex:none}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 .2rem 1.2rem;color:var(--ink2);max-width:720px}

/* ===== order form ===== */
.order-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(16px,3vw,32px);align-items:start}
.form{padding:clamp(20px,3.5vw,34px);border-radius:26px;border:1px solid var(--line2);background:var(--card);box-shadow:var(--shadow);position:relative}
.form::before{content:"";position:absolute;inset-inline:26px;top:-1px;height:4px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,var(--blue) 0 25%,var(--red) 25% 50%,var(--yellow) 50% 75%,var(--teal) 75%)}
.otabs{display:flex;gap:.35rem;padding:4px;border-radius:999px;background:var(--card2);border:1px solid var(--line);margin-bottom:1.1rem;overflow-x:auto}
.otab{flex:1;white-space:nowrap;padding:.55rem .9rem;border-radius:999px;font-weight:800;font-size:.86rem;color:var(--ink2);transition:all .2s}
.otab[aria-selected="true"]{background:var(--yellow);color:var(--on-y)}
.otab.sos[aria-selected="true"]{background:#d3281e;color:#fff}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:620px){.frow{grid-template-columns:1fr}}
.field{margin-bottom:12px;position:relative}
.field>label,.field>.lbl{display:block;font-size:.8rem;font-weight:800;letter-spacing:.03em;margin-bottom:.35rem;color:var(--ink2)}
.fc{width:100%;min-height:48px;padding:.7rem .9rem;border-radius:12px;border:1.5px solid var(--line2);background:var(--field);color:var(--ink);outline:0;transition:border-color .2s,box-shadow .2s}
.fc:focus{border-color:var(--yellow);box-shadow:0 0 0 4px rgba(245,194,0,.2)}
.fc::placeholder{color:var(--ink3)}
textarea.fc{min-height:120px;resize:vertical}
select.fc{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink3) 50%),linear-gradient(135deg,var(--ink3) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px;background-repeat:no-repeat;padding-inline-end:2.4rem}
[dir="rtl"] select.fc{background-position:20px 52%,14px 52%}
select.fc option{background:var(--bg2);color:var(--ink)}
.ferr{display:none;margin-top:.3rem;font-size:.8rem;font-weight:700;color:var(--red-t)}
.ferr.on{display:block}
.pick-btn{display:flex;align-items:center;justify-content:space-between;gap:.6rem;text-align:start}
.pick-btn b{font-weight:800;color:var(--yel-t)}
.pick-panel{display:none;margin-top:6px;padding:8px;border-radius:14px;border:1px solid var(--line2);background:var(--bg2);max-height:260px;overflow:auto}
.pick-panel.open{display:block}
.pick-grp{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);padding:.5rem .5rem .2rem;font-weight:700}
.pick-panel label{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600}
.pick-panel label:hover{background:var(--card2)}
.pick-panel input{accent-color:var(--yellow);width:17px;height:17px}
.chk{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;color:var(--ink2);margin:.4rem 0 .8rem}
.chk input{accent-color:var(--yellow);width:18px;height:18px;margin-top:2px;flex:none}
.chk a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.chk.urgent{color:var(--red-t);font-weight:800}
.hp{position:absolute;inset-inline-start:-9999px;opacity:0;pointer-events:none;height:0;overflow:hidden}
.fnote{font-size:.8rem;color:var(--ink3);margin-top:.8rem}
.fglobal{min-height:1.2em;margin:.2rem 0 .6rem;font-size:.86rem;font-weight:700;color:var(--red-t)}
.fglobal.ok{color:var(--teal-t)}
.fok{display:none;text-align:center;padding:2.2rem 1rem}
.fok.on{display:block}
.fok .ic{width:54px;height:54px;margin:0 auto 1rem;color:var(--teal-t)}
.fok p{font-weight:800;font-size:1.1rem}
.contacts{display:grid;gap:10px}
.cbtn{display:flex;align-items:center;gap:.9rem;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:var(--card);transition:transform .2s,border-color .2s;text-align:start;width:100%}
.cbtn:hover{transform:translateX(4px);border-color:var(--yellow)}
[dir="rtl"] .cbtn:hover{transform:translateX(-4px)}
.cbtn .card-ic{width:44px;height:44px;flex:none}
.cbtn b{display:block;font-weight:800;font-size:.98rem;line-height:1.2}
.cbtn small{display:block;color:var(--ink2);font-size:.82rem;line-height:1.3;margin-top:2px}
.cbtn em{margin-inline-start:auto;font-style:normal;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:var(--teal-t);border:1px solid currentColor;border-radius:999px;padding:.1rem .5rem}
.cfast{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-bottom:2px;font-weight:700}
@media (max-width:900px){.order-grid{grid-template-columns:1fr}}

/* ===== footer ===== */
.ft{border-top:1px solid var(--line);background:var(--bg2);padding:clamp(34px,5vw,56px) 0 22px;margin-top:20px}
.ft-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}
.ft p{color:var(--ink2);font-size:.9rem;max-width:380px;margin-top:.9rem}
.ft h4{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3);margin-bottom:.8rem;font-weight:700}
html[lang="ar"] .ft h4,html[lang="zh"] .ft h4{letter-spacing:0;text-transform:none}
.ft li{margin:.45rem 0}
.ft li a{color:var(--ink2);font-size:.92rem;font-weight:600;transition:color .2s}
.ft li a:hover{color:var(--yel-t)}
.ft-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-top:2rem;padding-top:1.1rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--ink3)}
@media (max-width:860px){.ft-grid{grid-template-columns:1fr 1fr}.ft-grid>div:first-child{grid-column:1/-1}}

/* ===== dialog (pop-up explanations) ===== */
dialog.dlg{margin:auto;width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;border:1px solid var(--line2);border-radius:26px;background:var(--bg2);color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.55);overflow:hidden}
dialog.dlg::backdrop{background:rgba(5,5,10,.62);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
dialog.dlg[open]{animation:pop .24s ease}
@keyframes pop{from{opacity:0;transform:translateY(14px) scale(.97)}}
.dlg-in{position:relative;padding:28px 26px 22px;overflow:auto;max-height:calc(100dvh - 30px)}
.dlg-in::before{content:"";position:absolute;inset-inline:0;top:0;height:6px;background:var(--ac,var(--yellow))}
.dlg-x{position:absolute;inset-inline-end:12px;top:14px;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--line);background:var(--card)}
.dlg-x:hover{border-color:var(--yellow)}
.dlg-ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--ac,var(--yellow)) 20%,transparent);border:1px solid color-mix(in srgb,var(--ac,var(--yellow)) 45%,transparent);margin-bottom:.9rem}
.dlg-ic .ic{width:30px;height:30px}
.dlg h3{font-size:2.1rem;margin-bottom:.6rem;padding-inline-end:44px}
.dlg-d{color:var(--ink2);margin-bottom:.8rem}
.dlg h4{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink3);margin:1.1rem 0 .3rem;font-weight:700}
html[lang="ar"] .dlg h4,html[lang="zh"] .dlg h4{letter-spacing:0;text-transform:none}
.dlg .tags{margin-top:.2rem}
.dlg-foot{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.dlg-foot .grow{margin-inline-end:auto}

/* ===== toast / cookie note ===== */
.toast{position:fixed;inset-inline:0;bottom:22px;margin-inline:auto;width:max-content;max-width:calc(100vw - 32px);padding:.75rem 1.2rem;border-radius:14px;background:var(--ink);color:var(--bg);font-weight:700;font-size:.9rem;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;transition:all .3s;z-index:260}
.toast.on{transform:none;opacity:1}
.note{position:fixed;inset-inline-start:16px;bottom:16px;z-index:150;max-width:min(420px,calc(100vw - 100px));display:flex;gap:.8rem;align-items:center;padding:.8rem 1rem;border-radius:16px;background:var(--bg2);border:1px solid var(--line2);box-shadow:var(--shadow);font-size:.82rem;color:var(--ink2)}
.note[hidden]{display:none}
.note button{flex:none;padding:.45rem .9rem;border-radius:999px;background:var(--yellow);color:var(--on-y);font-weight:800;font-size:.8rem}
.lang-hint{position:fixed;inset-inline-end:16px;top:calc(var(--hh) + 12px);z-index:140;max-width:320px;padding:.9rem 1rem;border-radius:16px;background:var(--bg2);border:1px solid var(--line2);box-shadow:var(--shadow);font-size:.86rem;display:flex;flex-direction:column;gap:.6rem}
.lang-hint[hidden]{display:none}
.lang-hint div{display:flex;gap:.5rem}

/* ===== inner pages ===== */
.phero{padding:clamp(26px,4.5vw,56px) 0 clamp(14px,2vw,26px)}
.crumb{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-family:var(--f-mono);font-size:.74rem;color:var(--ink3);font-weight:700;letter-spacing:.06em;margin-bottom:1rem}
.crumb a:hover{color:var(--yel-t)}
.crumb span[aria-hidden]{opacity:.6}
.phero h1{font-size:clamp(2.6rem,7vw,5.2rem);line-height:.95;margin-bottom:1rem;max-width:980px;overflow-wrap:anywhere}
.phero.pb h1{color:var(--ink)}
.phero .lead{max-width:760px}
.phero-bar{display:flex;gap:6px;margin-bottom:1.1rem}
.phero-bar i{width:34px;height:8px;border-radius:2px}
.phero-bar i:nth-child(1){background:var(--blue)}.phero-bar i:nth-child(2){background:var(--red)}.phero-bar i:nth-child(3){background:var(--yellow);border-radius:8px}.phero-bar i:nth-child(4){background:var(--teal)}
.ctab{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:clamp(20px,3.5vw,34px);border-radius:26px;background:var(--yellow);color:var(--on-y)}
.ctab h2{font-size:clamp(1.9rem,4vw,2.9rem)}
.ctab .btn{background:#0a0a0f;color:#f5c200}
.ctab .btn:hover{background:#000}
.rel{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}

/* grid children may shrink below their content (prevents mobile overflow) */
.order-grid>*,.wikib>*,.hero-grid>*,.need>*,.ft-grid>*,.sosband>*,.frow>*{min-width:0}
@media (max-width:900px){.order-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:860px){.wikib{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.otab{padding:.5rem .35rem;font-size:.8rem;white-space:normal;line-height:1.15}.form{padding:20px 16px}}

/* ===== Skipper chat ===== */
.fab{position:fixed;inset-inline-end:18px;bottom:18px;z-index:170;display:flex;align-items:center;gap:.6rem;height:56px;padding:0 1.15rem 0 .8rem;border-radius:999px;background:var(--yellow);color:var(--on-y);font-weight:800;font-size:.92rem;box-shadow:0 14px 34px -10px rgba(245,194,0,.8),0 0 0 4px rgba(245,194,0,.18);transition:transform .2s}
.fab:hover{transform:translateY(-3px)}
.fab .hm{width:38px;height:38px;border-radius:50%;background:#0a0a0f;display:grid;place-items:center;color:#f5c200}
.fab .hm .ic{width:24px;height:24px;animation:spin 14s linear infinite}
.fab.hide{display:none}
@media (max-width:560px){.fab span.t{display:none}.fab{width:56px;padding:0;justify-content:center}}
.bot{position:fixed;inset-inline-end:18px;bottom:18px;z-index:180;width:min(400px,calc(100vw - 24px));height:min(600px,calc(100dvh - 90px));display:none;flex-direction:column;border-radius:24px;border:1px solid var(--line2);background:var(--bg2);box-shadow:0 30px 80px rgba(0,0,0,.5);overflow:hidden}
.bot.open{display:flex;animation:pop .25s ease}
.bot-head{position:relative;display:flex;align-items:center;gap:.75rem;padding:14px 16px;background:linear-gradient(120deg,#1a3fc4,#0f2a8a);color:#fff}
.bot-head::after{content:"";position:absolute;inset-inline:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--red) 0 33%,var(--yellow) 33% 66%,var(--teal) 66%)}
.bot-av{width:42px;height:42px;border-radius:50%;background:#f5c200;color:#0a0a0f;display:grid;place-items:center;flex:none}
.bot-av .ic{width:26px;height:26px}
.bot-head b{display:block;font-family:var(--f-head);font-weight:400;font-size:1.5rem;letter-spacing:.05em;line-height:1}
html[lang="ru"] .bot-head b{font-weight:600}
.bot-head small{display:block;font-size:.74rem;opacity:.9;margin-top:3px;line-height:1.25}
.bot-x{margin-inline-start:auto;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff;flex:none}
.bot-x:hover{background:rgba(255,255,255,.26)}
.bot-body{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.msg{white-space:pre-line;max-width:88%;padding:.65rem .9rem;border-radius:16px;font-size:.9rem;line-height:1.5;word-wrap:break-word;overflow-wrap:anywhere}
.msg.b{align-self:flex-start;background:var(--card2);border:1px solid var(--line);border-end-start-radius:4px}
.msg.u{align-self:flex-end;background:var(--yellow);color:var(--on-y);font-weight:600;border-end-end-radius:4px}
.msg b{font-weight:800}
.msg .macts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.msg .macts a,.msg .macts button{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;border-radius:999px;border:1px solid var(--line2);font-size:.78rem;font-weight:800;color:var(--ink);background:var(--card)}
.msg .macts a:hover,.msg .macts button:hover{border-color:var(--yellow);background:var(--yellow);color:var(--on-y)}
.msg .macts .ic{width:14px;height:14px}
.typing{align-self:flex-start;display:flex;gap:4px;padding:.8rem .9rem;border-radius:16px;background:var(--card2);border:1px solid var(--line)}
.typing span{width:7px;height:7px;border-radius:50%;background:var(--ink3);animation:dots 1.2s infinite}
.typing span:nth-child(2){animation-delay:.18s}.typing span:nth-child(3){animation-delay:.36s}
@keyframes dots{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}
.bot-chips{display:flex;gap:.4rem;padding:0 14px 10px;overflow-x:auto;flex:none;scrollbar-width:none}
.bot-chips::-webkit-scrollbar{display:none}
.bot-chips button{flex:none;padding:.4rem .8rem;border-radius:999px;border:1px solid var(--line2);font-size:.78rem;font-weight:800;color:var(--ink2);white-space:nowrap}
.bot-chips button:hover{border-color:var(--yellow);color:var(--ink);background:var(--card2)}
.bot-chips button.sos{border-color:rgba(230,51,41,.6);color:var(--red-t)}
.bot-form{display:flex;gap:.5rem;padding:10px 14px 8px;border-top:1px solid var(--line);flex:none}
.bot-form input{flex:1;min-width:0;height:46px;padding:0 1rem;border-radius:999px;border:1.5px solid var(--line2);background:var(--field);outline:0}
.bot-form input:focus{border-color:var(--yellow)}
.bot-form button{width:46px;height:46px;border-radius:50%;background:var(--yellow);color:var(--on-y);display:grid;place-items:center;flex:none}
.bot-form button:disabled{opacity:.5}
.bot-form button .ic{width:20px;height:20px}
.bot-note{padding:0 16px 12px;font-size:.7rem;color:var(--ink3);line-height:1.35;flex:none}
.bot-note b{color:var(--ink2)}
@media (max-width:560px){.bot{inset-inline:8px;bottom:8px;width:auto;height:calc(100dvh - 16px);border-radius:20px}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
}
@media print{.hd,.fab,.bot,#bgart,.note,.toast{display:none!important}body{background:#fff;color:#000}}

/* Service scopes, long-form guides and robust small-screen behaviour */
.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.scope-box{padding:clamp(20px,3vw,34px);border:1px solid var(--line2);border-radius:var(--r);background:var(--card)}
.scope-box h2{font-size:2rem;line-height:1.15;margin-bottom:1rem}
.scope-box p{color:var(--ink2);margin-bottom:1rem}
.guide-body{max-width:850px;line-height:1.8}
.guide-body h2{font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.15;margin:2rem 0 1rem}
.guide-body p{margin:0 0 1.2rem;color:var(--ink2)}
.guide-body ol{padding-inline-start:1.6rem;margin-bottom:1.8rem}
.guide-body ol li{padding-inline-start:.4rem;margin-bottom:.8rem}
.guide-meta{color:var(--ink3);font-size:.85rem;line-height:1.6;margin-top:1rem}
.guide-cta{display:flex;flex-wrap:wrap;gap:12px;margin:1.6rem 0}
.related-guides{display:grid;gap:10px;margin-bottom:2rem}
.related-guides a,.guide-source a{color:var(--blue-t);text-decoration:underline;text-underline-offset:4px}
.wcard h3 a:hover{color:var(--yel-t)}
.nojs-contact{padding:12px 20px;background:var(--bg2)}
.fc[aria-invalid=true]{border-color:var(--red-t)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;line-height:1.5;margin:16px 0;color:var(--ink2)}
.consent input{flex:none;accent-color:var(--yel-t);width:18px;height:18px;margin-top:2px}
.consent a{text-decoration:underline;color:var(--blue-t)}
.bot-chips{flex-wrap:wrap}
.bot-body{min-height:80px}
.msg{max-width:95%}
.hero h1 .l{overflow-wrap:anywhere}
@media(max-width:600px){.scope-grid{grid-template-columns:1fr}.wgrid{grid-template-columns:minmax(0,1fr)}.guide-body{overflow-wrap:anywhere}.hero h1{font-size:clamp(2.2rem,9vw,3.6rem)}.guide-cta .btn{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
.no-js .lang-menu{display:block;position:static;box-shadow:none}
.no-js #orderForm,.no-js #mailForm{display:none}

.no-js .hd-in{height:auto;min-height:var(--hh);flex-wrap:wrap;padding-block:12px}
.no-js .nav{position:static;visibility:visible;opacity:1;transform:none;max-height:none;flex-wrap:wrap;box-shadow:none}
.no-js .lang-menu{display:flex;flex-wrap:wrap;min-width:0;gap:4px;border:0}
.no-js .lang-menu a{width:auto;font-size:.8rem}
.no-js #langBtn,.no-js #burger,.no-js #themeBtn{display:none}
@media(max-width:900px){.no-js .nav{flex-basis:100%;flex-direction:row}.no-js .hd-tools{flex-wrap:wrap}}
@media(max-width:360px){.hd-in{padding-inline:12px;gap:8px}.hd-tools{gap:4px}.lang-btn{width:40px;padding:0;justify-content:center}.lang-btn>.ic{display:none}}
