/*
Theme Name: Sorrel 9
Author: biserynka.com.ua
Version: 1.0.2611061704
Text Domain: sorrel-2c11
Requires PHP: 8.1
*/
@font-face{font-family:'Geologica';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/geologica/geologica-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:'Geologica';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/geologica/geologica-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+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 900;font-display:swap;src:url(fonts/golos-text/golos-text-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:'Golos Text';font-style:normal;font-weight:400 900;font-display:swap;src:url(fonts/golos-text/golos-text-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+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--bg:#eaf0ec;--surface:#dde6e0;--ink:#17221c;--muted:#475850;--line:#c4d1c8;
--accent:#2a4b9b;--accent-ink:#ffffff;--accent-soft:#d3dce2;--hbg:#eaf0ec;
--hink:#17221c;--fbg:#17221c;--fink:#eaf0ec;--fh:'Geologica', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;--fb:'Golos Text', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
--hw:600;--ht:-0.01em;--r:12px;--rs:6px;--ratio:1/1;--gut:16px;
--fs:1.0625rem;--lh:1.6;--hs:1;
--measure:70ch}
@media(min-width:768px){:root{--gut:28px;--fs:1.125rem}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:light}
body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--fs)/var(--lh) var(--fb);overflow-x:hidden;
-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{max-width:100%;height:auto}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{text-decoration-thickness:2px}
a:not([href]){color:inherit;text-decoration:none}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:2px}
h1,h2,h3,.brand-name{font-family:var(--fh);font-weight:var(--hw);letter-spacing:var(--ht);line-height:1.18;
color:var(--ink);text-wrap:balance}
h1{font-size:calc(var(--hs)*clamp(1.85rem,1.2rem + 3.2vw,2.9rem));margin:.2em 0 .45em}
h2{font-size:calc(var(--hs)*clamp(1.38rem,1.1rem + 1.4vw,1.85rem));margin:1.9em 0 .55em}
h3{font-size:calc(var(--hs)*clamp(1.12rem,1rem + .6vw,1.3rem));margin:1.5em 0 .4em;line-height:1.28}
p,ul,ol{margin:0 0 1em}
.wrap{max-width:1180px;margin:0 auto;padding-inline:var(--gut)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--bg);padding:8px;z-index:9}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* шапка */
.site-header{position:relative;background:var(--hbg);color:var(--hink);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:12px;min-height:60px}
.brand{display:flex;align-items:center;gap:10px;color:var(--hink);text-decoration:none;margin-right:auto;min-width:0}
.brand svg{width:34px;height:34px;flex:none}
.brand-name{color:var(--hink);font-size:1.3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lang{display:flex;gap:2px;font-size:.875rem}
.lang a{color:var(--hink);text-decoration:none;padding:8px 7px;border-radius:var(--rs);opacity:.75}
.lang a[aria-current]{opacity:1;font-weight:600;text-decoration:underline;text-underline-offset:.3em}
.menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:10px 4px;
font-size:.95rem;color:var(--hink)}
.menu summary::-webkit-details-marker{display:none}
.burger{width:20px;height:14px;background:linear-gradient(currentColor 0 0) 0 0/100% 2px no-repeat,
linear-gradient(currentColor 0 0) 0 6px/100% 2px no-repeat,linear-gradient(currentColor 0 0) 0 12px/100% 2px no-repeat}
.menu[open] .burger{background:linear-gradient(45deg,transparent 45%,currentColor 45% 55%,transparent 55%),
linear-gradient(-45deg,transparent 45%,currentColor 45% 55%,transparent 55%)}
.menu-nav{position:absolute;left:0;right:0;background:var(--hbg);border-bottom:1px solid var(--line);z-index:5;
padding:8px var(--gut) 16px}
.menu-nav a{display:block;padding:12px 0;color:var(--hink);text-decoration:none;
border-bottom:1px solid color-mix(in srgb,var(--hink) 18%,transparent);font-size:1.05rem}
.primary{display:none}
.primary ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 22px}
.primary a{color:var(--hink);text-decoration:none;font-size:.95rem;padding:6px 0;display:inline-block}
.primary a:hover{text-decoration:underline}
@media(min-width:1000px){.menu{display:none}.primary{display:block}}
/* крихти, підписи */
.crumbs{font-size:.875rem;color:var(--muted);margin:20px 0 4px}
.crumbs a{color:var(--muted)}
.crumbs span{margin:0 .4em}
.byline{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:.9rem;color:var(--muted);margin:0 0 22px}
.byline a{color:var(--ink)}
.motif{margin:10px 0 18px}
.intro{padding:26px 0 8px;max-width:46rem}
.intro p{color:var(--muted);font-size:1.05em;margin:0}
.sec-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:36px 0 0}
.sec-title h2{margin:0}.sec-title h2 a{color:var(--ink);text-decoration:none}
.sec-title .all{font-size:.92rem;white-space:nowrap}
/* картки */
.card,.row,.line-item,.hero,.tile{position:relative}
a.cover{position:absolute;inset:0;z-index:2}
.card-img{margin:0 0 12px;aspect-ratio:var(--ratio);overflow:hidden;border-radius:var(--r);background:var(--surface)}
.card-img img{width:100%;height:100%;object-fit:cover;display:block}
.card-title{font-size:calc(var(--hs)*1.15rem);margin:0 0 6px;line-height:1.3}
.card-title a{color:var(--ink);text-decoration:none}
.card:hover .card-title a,.row:hover .card-title a,.line-item:hover .card-title a{text-decoration:underline;
text-decoration-thickness:1px}
.card-ex{color:var(--muted);font-size:.95rem;margin:0;display:-webkit-box;-webkit-line-clamp:3;
-webkit-box-orient:vertical;overflow:hidden}
.card-cat{font-size:.85rem;color:var(--accent);margin:0 0 4px}
.chord-thumb{display:flex;gap:6px;align-items:flex-end;justify-content:center;height:100%;padding:12px;
color:var(--ink);background:var(--surface)}
.chord-thumb svg{width:30%;height:auto;max-width:96px}
.row .chord-thumb svg,.line-item .chord-thumb svg{width:62%;max-width:none}
.row .chord-thumb svg+svg,.line-item .chord-thumb svg+svg{display:none}
.grid{display:grid;gap:28px 22px;grid-template-columns:1fr}
@media(min-width:620px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.grid-3{grid-template-columns:repeat(3,1fr)}}
.row{display:grid;grid-template-columns:84px 1fr;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--line)}
.row .card-img{margin:0;aspect-ratio:1/1;border-radius:var(--rs)}
.row .card-title{font-size:1.05rem;margin:0 0 4px}
.list .row{grid-template-columns:110px 1fr}
@media(min-width:760px){.list .row{grid-template-columns:200px 1fr;gap:22px}}
.line-item{display:grid;grid-template-columns:1fr 96px;gap:16px;align-items:center;padding:14px 0 14px 14px;
border-left:3px solid var(--accent);border-bottom:1px solid var(--line)}
.stack .line-item.feature{background:var(--surface);border-bottom:0;margin:12px 0;padding-right:12px;
border-radius:0 var(--r) var(--r) 0}
.line-item .card-img{margin:0;aspect-ratio:1/1;border-radius:var(--rs)}
.line-item .card-title{font-size:1.12rem}
@media(min-width:760px){.line-item{grid-template-columns:1fr 180px;padding-left:22px}
.line-item .card-img{aspect-ratio:var(--ratio)}}
/* стаття */
.article{padding-bottom:40px}
.prose{max-width:var(--measure)}
.prose figure{margin:26px 0}
.prose figure img{display:block;width:100%;height:auto;border-radius:var(--r)}
.prose li{margin:.3em 0}
.prose blockquote{margin:22px 0;padding:14px 18px;background:var(--accent-soft);border-left:4px solid var(--accent);
border-radius:0 var(--rs) var(--rs) 0}
.prose blockquote p:last-child{margin:0}
.table-scroll{overflow-x:auto;margin:20px 0;-webkit-overflow-scrolling:touch;border:1px solid var(--line);
border-radius:var(--rs)}
.prose table{border-collapse:collapse;width:100%;font-size:.94rem;line-height:1.45}
.prose table:has(tr>:nth-child(3)){min-width:520px}
.prose th,.prose td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.prose th{background:var(--surface);font-weight:600}
.prose tr:last-child td{border-bottom:0}
.cover-img{margin:0 0 24px}
.cover-img img{display:block;width:100%;height:auto;border-radius:var(--r);aspect-ratio:16/9;object-fit:cover}
.toc{background:var(--surface);border-radius:var(--r);padding:4px 16px;margin:0 0 26px;font-size:.95rem}
.toc summary{cursor:pointer;padding:12px 0;font-weight:600}
.toc ol{margin:0 0 12px;padding-left:1.2em}
.toc a{color:var(--ink);text-decoration:none}.toc a:hover{text-decoration:underline}
.toc li{margin:.35em 0}
.uke-chords{display:flex;flex-wrap:wrap;gap:14px;margin:14px 0 22px}
.uke-chord{color:var(--ink)}
.uke-chord svg{display:block;width:96px;height:auto}
.author-box{display:flex;gap:16px;align-items:flex-start;margin:40px 0 0;padding:20px;background:var(--surface);
border-radius:var(--r);max-width:70ch}
.avatar{flex:none;width:56px;height:56px;border-radius:50%;background:var(--accent);color:var(--accent-ink);
display:grid;place-items:center;font:600 1.15rem var(--fh)}
.author-box p{margin:0 0 .4em;font-size:.95rem}
.author-name{font-weight:600}
.related{margin-top:44px}
.side{display:none}
.side h2{font-size:1rem;font-family:var(--fb);font-weight:700;letter-spacing:0;margin:0 0 8px}
.side ol,.side ul{padding-left:1.2em;margin:0 0 28px;font-size:.92rem}
.side ul{list-style:none;padding:0}
.side li{margin:.45em 0;line-height:1.4}
.side ul li{padding-bottom:.45em;border-bottom:1px solid var(--line)}
.side a{color:var(--ink);text-decoration:none}.side a:hover{text-decoration:underline}
/* підвал */
.site-footer{margin-top:56px;padding:28px 0 40px;border-top:1px solid var(--line);font-size:.92rem;color:var(--muted)}
.site-footer .brand{margin-bottom:12px;color:var(--ink)}
.site-footer .brand-name{color:var(--ink)}
.foot-cols{display:grid;gap:8px 40px;grid-template-columns:1fr}
@media(min-width:760px){.foot-cols{grid-template-columns:1.3fr 1fr 1fr}}
.foot-h{font-weight:700;color:var(--ink);margin:14px 0 6px}
.foot-links{list-style:none;padding:0;margin:0 0 14px}
.foot-links a{color:var(--ink);display:inline-block;padding:5px 0}
.motif{height:9px;background:repeating-linear-gradient(115deg,var(--accent) 0 1.5px,transparent 1.5px 7px)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.newest{margin:26px 0 8px}
@media(min-width:900px){.newest{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px}
.newest .row{grid-template-columns:112px 1fr}}
.index{display:grid;gap:8px 40px;grid-template-columns:1fr;margin-top:10px}
@media(min-width:760px){.index{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.index{grid-template-columns:repeat(3,1fr)}}
.sec{padding:6px 0 18px}
.sec h2{font-size:1.3rem;margin:16px 0 4px}
.sec h2 a{color:var(--ink);text-decoration:none}
.sec ul{list-style:none;padding:0;margin:0}
.sec li{padding:9px 0;border-bottom:1px solid var(--line);line-height:1.4;font-size:.98rem}
.sec li a{color:var(--ink);text-decoration:none}.sec li a:hover{color:var(--accent);text-decoration:underline}
.sec .all{display:inline-block;margin-top:10px;font-size:.92rem}
.count{color:var(--muted);font-weight:400;font-family:var(--fb);font-size:.85rem;margin-left:.4em}

.grid .card{background:var(--surface);border-radius:var(--r);overflow:hidden}
.grid .card .card-img{border-radius:0;margin:0}
.grid .card .card-body{padding:14px 16px 18px}

@media(min-width:1000px){.article .cover-img img{aspect-ratio:21/9}.article .toc{max-width:var(--measure)}}

.article .head{text-align:center;max-width:46rem;margin-left:auto;margin-right:auto}
.article .crumbs,.article .byline{justify-content:center}
.prose h2::after{content:'';display:block;width:56px;height:3px;background:var(--accent);margin-top:10px;border-radius:2px}
.site-footer{background:var(--fbg);color:color-mix(in srgb,var(--fink) 78%,transparent);border-top:0;margin-top:64px;
padding:34px 0 44px}
.site-footer .brand,.site-footer .brand-name,.site-footer .foot-h,.site-footer .foot-links a{color:var(--fink)}
.f-dark-motif{display:none}
