/* «Роевой» — оформление сайта клуба. Вощина, мёд и вереск. */
@font-face{font-family:"Manrope";src:url(/static/fonts/manrope-cyrillic.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";src:url(/static/fonts/manrope-latin.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap;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:"Yeseva One";src:url(/static/fonts/yeseva-one-cyrillic.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Yeseva One";src:url(/static/fonts/yeseva-one-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;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{
  --wax:#FFF9EC; --wax2:#FBEFD2; --honey:#F0B12C; --honey2:#C98710; --ink:#1E1A13; --ink2:#4A4234;
  --heather:#6B4580; --heather2:#EFE4F3; --leaf:#3E6B35; --leaf2:#E3EEDC; --line:#E5D6B3; --mut:#7A6E58;
  --r:20px; --sh:5px 5px 0 var(--ink);
}
*{box-sizing:border-box}
html{background:var(--ink)}
body{margin:0;background:var(--wax);color:var(--ink);font:17px/1.62 "Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-text-size-adjust:100%}
img,video{max-width:100%;display:block}
a{color:var(--heather);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--honey2)}
h1,h2,h3,.ttl{font-family:"Yeseva One",Georgia,serif;font-weight:400;line-height:1.15;letter-spacing:.2px}
h1{font-size:44px;margin:0 0 14px}
h2{font-size:30px;margin:44px 0 14px}
h3{font-size:22px;margin:22px 0 8px}
p{margin:0 0 14px}
small,.mut{color:var(--mut)}
.s{font-size:14.5px}
.box{max-width:1120px;margin:0 auto;padding:0 28px}

/* шапка: медовая полоса с сотами, по центру название, под ней тёмная лента разделов */
.cap{background:var(--honey) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 0l28 16v32L28 64 0 48V16zM28 64l28 16v32M28 64L0 80v32' fill='none' stroke='%23E09E17' stroke-width='2'/%3E%3C/svg%3E") 0 0/56px 97px;color:var(--ink)}
.cap .box{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding-top:22px;padding-bottom:20px}
.mark{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}
.mark svg{flex:none}
.mark b{font:400 40px/1 "Yeseva One",Georgia,serif;display:block}
.mark i{font-style:normal;font-size:13.5px;font-weight:600;display:block;margin-top:4px;letter-spacing:.3px}
.cap .season{justify-self:end;text-align:right;font-size:13.5px;font-weight:600;background:var(--wax);border:2px solid var(--ink);border-radius:14px;padding:7px 12px;box-shadow:3px 3px 0 var(--ink)}
.cap .season span{display:block;font-weight:800}
.rail{background:var(--ink);position:sticky;top:0;z-index:5}
.rail ul{list-style:none;margin:0 auto;max-width:1120px;padding:0 20px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.rail ul::-webkit-scrollbar{display:none}
.rail a{display:block;white-space:nowrap;padding:12px 14px;color:#F6E7C3;text-decoration:none;font-weight:600;font-size:15px;border-bottom:4px solid transparent}
.rail a:hover{color:#fff}
.rail .on a{color:var(--honey);border-bottom-color:var(--honey)}
.rail .lv a::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#E2533B;margin-right:7px;vertical-align:1px}

main{padding:40px 0 70px}
.path{font-size:14px;color:var(--mut);margin:-16px 0 22px}
.path a{color:var(--mut)}

/* главная */
.lead{display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:center}
.lead h1{font-size:54px}
.big{font-size:19px;line-height:1.55}
.lead .big{font-size:20px}
.pill{display:inline-block;background:var(--leaf2);color:var(--leaf);font-weight:700;font-size:13px;border-radius:99px;padding:3px 11px;margin-bottom:12px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:46px 0 0;border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:#fff}
.facts div{padding:18px 20px;border-right:2px solid var(--ink)}
.facts div:last-child{border-right:0}
.facts b{display:block;font:400 34px/1 "Yeseva One",Georgia,serif;color:var(--honey2)}
.facts span{font-size:14px;color:var(--ink2)}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.now{background:var(--heather2);border-radius:var(--r);padding:24px 26px}
.now h3{margin-top:0}
.now ul{margin:0;padding-left:20px}

/* карточки */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.card{background:#fff;border:2px solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);transition:transform .12s,box-shadow .12s}
a.card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);color:var(--ink)}
.card img{aspect-ratio:16/9;object-fit:cover;width:100%;border-bottom:2px solid var(--ink);background:var(--wax2)}
.card .in{padding:14px 18px 18px}
.card .ttl{font-size:20px;display:block;margin-bottom:6px}
.card small{display:block;font-size:13.5px}
.tag{display:inline-block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--honey2);margin-bottom:4px}

/* плеер */
figure.hp{margin:0;position:relative;border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:#15120d;box-shadow:var(--sh)}
figure.hp video{width:100%;aspect-ratio:16/9;background:#15120d;object-fit:contain}
.hp .lbl,.hp .clk{position:absolute;top:12px;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:99px;pointer-events:none;letter-spacing:.2px}
.hp .lbl{left:12px;background:var(--honey);color:var(--ink)}
.hp .clk{right:12px;background:rgba(20,16,10,.72);color:#fff;font-variant-numeric:tabular-nums}
.hp .hp-note{position:absolute;left:12px;right:12px;bottom:56px;background:rgba(255,249,236,.95);color:var(--ink);padding:10px 12px;border-radius:12px;font-size:14px}
.under{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font-size:14px;color:var(--mut);margin:14px 2px 0}
.under select{font:inherit;border:2px solid var(--ink);border-radius:10px;background:#fff;padding:2px 6px}
.cams{display:grid;grid-template-columns:1fr 1fr;gap:34px 30px}
.cams .wide{grid-column:1/-1}
.cam h3{margin:16px 0 4px}
.rec{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#A2321F}
.rec::before{content:"";width:9px;height:9px;border-radius:50%;background:#E2533B}

/* таблицы и списки */
table.t{width:100%;border-collapse:separate;border-spacing:0;font-size:15px;background:#fff;border:2px solid var(--ink);border-radius:16px;overflow:hidden}
table.t th,table.t td{padding:9px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
table.t th{background:var(--wax2);font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.5px}
table.t tr:last-child td{border-bottom:0}
.tw{overflow-x:auto}
dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 20px;margin:20px 0;font-size:15.5px}
dl.kv dt{color:var(--mut)}
dl.kv dd{margin:0}

/* дневник: линия времени */
.years{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}
.years a{border:2px solid var(--ink);border-radius:99px;padding:5px 16px;text-decoration:none;color:var(--ink);font-weight:700;background:#fff}
.years a.on{background:var(--ink);color:var(--honey)}
.tl{position:relative;margin:0;padding:0 0 0 34px;list-style:none}
.tl::before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:3px;background:var(--line);border-radius:3px}
.tl>li{position:relative;margin:0 0 34px}
.tl>li::before{content:"";position:absolute;left:-33px;top:5px;width:18px;height:20px;background:var(--honey);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.tl time{display:block;font-weight:800;font-size:14px;color:var(--honey2);letter-spacing:.3px}
.tl h3{margin:2px 0 8px;font-size:25px}
.tl .who{font-size:14px;color:var(--mut);margin-bottom:8px}
.entry{max-width:760px}
.entry ul,.entry ol{padding-left:22px;margin:0 0 14px}
.mini-tl{list-style:none;margin:0;padding:0}
.mini-tl li{padding:10px 0;border-bottom:1px dashed var(--line);display:grid;grid-template-columns:110px 1fr;gap:12px}
.mini-tl time{font-weight:800;color:var(--honey2);font-size:14.5px}

/* календарь */
.months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.mo{border:2px solid var(--ink);border-radius:18px;background:#fff;padding:16px 18px;position:relative}
.mo h3{margin:0 0 8px;font-size:23px}
.mo ul{margin:0;padding-left:18px;font-size:15px}
.mo .z{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--mut)}
.mo.cur{background:var(--heather2);box-shadow:var(--sh)}
.mo.cur::after{content:"сейчас";position:absolute;top:-12px;right:14px;background:var(--heather);color:#fff;font-size:12px;font-weight:800;padding:2px 10px;border-radius:99px}
.mo .ours{margin-top:10px;font-size:13.5px;color:var(--ink2);border-top:1px dashed var(--line);padding-top:8px}

/* форма */
form.f{max-width:620px;display:grid;gap:6px;margin-top:22px}
form.f label{font-weight:700;font-size:15px;margin-top:10px}
form.f input[type=text],form.f input[type=email],form.f select,form.f textarea{font:inherit;font-size:16px;padding:10px 12px;border:2px solid var(--ink);border-radius:12px;background:#fff;color:var(--ink);width:100%}
form.f textarea{min-height:170px;resize:vertical}
form.f .ok{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14.5px;margin-top:14px}
form.f .ok input{margin-top:5px;width:18px;height:18px;flex:none}
form.f .trap{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
button{font:inherit;font-weight:800;font-size:16px;background:var(--honey);color:var(--ink);border:2px solid var(--ink);border-radius:14px;padding:12px 26px;box-shadow:4px 4px 0 var(--ink);cursor:pointer;justify-self:start;margin-top:16px}
button:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.warn{color:#A2321F;font-weight:700}

.callout{border-left:6px solid var(--honey);background:var(--wax2);border-radius:0 16px 16px 0;padding:16px 20px;margin:24px 0}
.pager{display:flex;justify-content:space-between;gap:16px;margin-top:34px;font-weight:600;font-size:15px;flex-wrap:wrap}
.cols2{columns:2;column-gap:40px}

/* подвал */
.base{background:var(--ink);color:#D9CBA8;font-size:14.5px}
.base .box{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding-top:40px;padding-bottom:34px}
.base b{color:var(--honey);font-family:"Yeseva One",Georgia,serif;font-weight:400;font-size:24px;display:block;margin-bottom:6px}
.base a{color:#F6E7C3}
.base ul{list-style:none;margin:0;padding:0}
.base li{margin:3px 0}
.base .end{grid-column:1/-1;border-top:1px solid #3D3526;padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;color:#A99A78}

@media (max-width:980px){
  .lead{grid-template-columns:1fr;gap:26px}
  .cards{grid-template-columns:1fr 1fr}
  .months{grid-template-columns:1fr 1fr}
  .facts{grid-template-columns:1fr 1fr}
  .facts div:nth-child(2){border-right:0}
  .facts div:nth-child(-n+2){border-bottom:2px solid var(--ink)}
}
@media (max-width:700px){
  body{font-size:16px}
  .box{padding:0 16px}
  h1,.lead h1{font-size:34px}
  h2{font-size:25px;margin-top:36px}
  .cap .box{grid-template-columns:1fr;gap:10px;padding-top:14px;padding-bottom:14px}
  .cap .box>span:empty{display:none}
  .mark i{font-size:12px}
  .cap .season{justify-self:start;text-align:left;font-size:12.5px;padding:4px 10px;box-shadow:2px 2px 0 var(--ink);border-radius:10px}
  .cap .season span{display:inline;margin-left:4px}
  .mark b{font-size:32px}
  .mark svg{width:46px;height:52px}
  .rail ul{padding:0 8px}
  .rail a{padding:11px 10px;font-size:14.5px}
  main{padding:26px 0 50px}
  .big,.lead .big{font-size:17.5px}
  .cards,.cams,.duo,.months{grid-template-columns:1fr}
  .cards{gap:22px}
  .base .box{grid-template-columns:1fr}
  .cols2{columns:1}
  .mini-tl li{grid-template-columns:1fr;gap:2px}
  dl.kv{grid-template-columns:1fr;gap:0}
  dl.kv dd{margin-bottom:8px}
  .hp .lbl,.hp .clk{top:8px;font-size:11px;padding:3px 8px}
  .hp .lbl{left:8px}.hp .clk{right:8px}
  figure.hp,.card{box-shadow:3px 3px 0 var(--ink)}
  table.stack,table.stack tbody,table.stack tr,table.stack td{display:block;width:100%}
  table.stack tr:first-child{display:none}
  table.stack tr{padding:10px 0;border-bottom:1px solid var(--line)}
  table.stack tr:last-child{border-bottom:0}
  table.stack td{border:0;padding:2px 16px}
  table.stack td[data-h]::before{content:attr(data-h) ": ";color:var(--mut);font-size:13px}
  table.stack td:first-child::before{content:none}
  table.stack td:first-child{font-weight:700}
}
