/* SÓ RIO · общая основа для страниц Art и работ.
   Основа не меняется никогда. Кожа сезона — атрибут data-palette на <html>. */
@font-face{font-family:"Stolzl";src:url("/fonts/Stolzl_Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Stolzl";src:url("/fonts/stolzl_bold.otf") format("opentype");font-weight:700;font-display:swap}
@font-face{font-family:"Scandal";src:url("/fonts/PF_Scandal_Pro_Black.ttf") format("truetype");font-display:swap}

:root,[data-palette="autumn"]{--bg:#F2ECE2;--ink:#2D3807;--c1:#E4E8D6;--a1:#C23010;--deep:#2D3807;
  --tBand:url(/sorio/tex/2D3807-7B9C4D.jpg);--tHead:url(/sorio/tex/2D3807-7B9C4D-b.jpg);--tSub:url(/sorio/tex/2D3807-7B9C4D-b.jpg)}
[data-palette="winter"]{--bg:#EEF0EC;--ink:#1D2B35;--c1:#DDE6E4;--a1:#CD4947;--deep:#125349;
  --tBand:url(/sorio/tex/125349-58274C.jpg);--tHead:url(/sorio/tex/125349-58274C.jpg);--tSub:url(/sorio/tex/125349.jpg)}
:root{--big:"Anton","Oswald",Impact,sans-serif;--body:"Stolzl","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;
  --line:color-mix(in srgb,var(--ink) 25%,transparent)}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font:16px/1.45 var(--body);overflow-x:hidden}
a{color:inherit}
img{display:block;max-width:100%;height:auto}

/* шапка и меню */
header.top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-weight:700;font-size:14px;border-bottom:2px solid var(--ink)}
header.top img{height:30px;width:auto}
header.top nav{display:none;gap:18px}
header.top nav a,.mnav a{text-decoration:none}
header.top nav a.on,.mnav a.on{text-decoration:underline;text-underline-offset:4px}
.sub-link{background:var(--a1);color:var(--bg);padding:0 14px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none}
.mnav{display:flex;gap:16px;padding:10px 16px;border-bottom:1px solid var(--ink);font-weight:700;font-size:14px}
@media(min-width:760px){header.top nav{display:flex}header.top{padding:12px 24px}.mnav{display:none}}

.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
@media(min-width:900px){.wrap{padding:0 24px}}

.meta{font:600 12px var(--mono);text-transform:uppercase;color:var(--deep)}
.label{font:600 11px var(--mono);text-transform:uppercase;color:var(--deep)}
.hand{font-family:"Scandal",cursive;font-size:28px;color:var(--a1);display:inline-block;transform:rotate(-4deg)}
.tx{background:linear-gradient(rgba(0,0,0,.35),rgba(0,0,0,.35)),var(--tHead) center/cover;-webkit-background-clip:text;background-clip:text;color:transparent}
.band{height:56px;background:var(--tBand) center/240px repeat;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}

/* картинка в рамке: внутри ярко, вокруг спокойно */
.frame{border:3px solid #fff;box-shadow:0 2px 10px rgba(0,0,0,.16);background:#fff}

.btn{min-height:48px;display:inline-flex;align-items:center;padding:0 18px;font-weight:700;text-decoration:none;border:2px solid var(--ink)}
.btn.main{background:var(--a1);border-color:var(--a1);color:var(--bg)}

/* фильтры словами через запятую, как было на Art */
.filters{display:flex;flex-wrap:wrap;gap:6px 16px;padding:16px 0;border-bottom:1px solid var(--line);font-weight:700;color:color-mix(in srgb,var(--ink) 55%,transparent)}
.filters button{all:unset;cursor:pointer;min-height:32px}
.filters button.on,.filters button:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

/* подписка внизу каждой страницы */
.subwide{margin:48px 0 0;padding:28px 16px;background:var(--tSub) center/cover}
.subwide .inner{max-width:640px;margin:0 auto;background:var(--bg);border:2px solid var(--ink);padding:22px 18px;display:grid;gap:10px}
.subwide b{font-family:var(--big);font-weight:400;font-size:clamp(28px,5vw,48px);line-height:.95;text-transform:uppercase}

footer.bot{border-top:2px solid var(--ink);padding:18px 0 40px;font:12px var(--mono);display:flex;flex-wrap:wrap;gap:6px 18px}
footer.bot a{color:var(--deep)}
