/* ==========================================================================
   vavada1795.com — «полуночная слива и абрикос» (тёмная тема)
   Шаблон J: справочник определений на dl/dt/dd, узкая колонка 900px.
   Префикс классов: .almanac-
   Шрифты: Kurale (заголовки) / Golos Text (текст, метки — моноширинный стек)
   ========================================================================== */

:root{
  --alm-bg:#130f16;
  --alm-panel:#1c1620;
  --alm-panel-2:#241c29;
  --alm-line:#2f2436;
  --alm-line-soft:#251d2b;
  --alm-acc:#f0a05a;
  --alm-acc-dim:rgba(240,160,90,.13);
  --alm-sec:#b9a3d1;
  --alm-sec-dim:rgba(185,163,209,.12);
  --alm-txt:#eae4ef;
  --alm-mut:#9d94a6;
  --alm-col:900px;
  --alm-fh:"Kurale","Georgia",serif;
  --alm-fb:"Golos Text","Segoe UI",Tahoma,sans-serif;
  --alm-fm:"IBM Plex Mono","Consolas","Courier New",monospace;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  margin:0;
  background:var(--alm-bg);
  color:var(--alm-txt);
  font-family:var(--alm-fb);
  font-size:17px;
  line-height:1.74;
  -webkit-font-smoothing:antialiased;
}

img,svg{max-width:100%}
a{color:var(--alm-acc);text-decoration:none}
a:hover{color:var(--alm-sec)}
::selection{background:var(--alm-acc);color:#20140b}
:focus-visible{outline:2px solid var(--alm-sec);outline-offset:3px}

/* -------------------------------------------------------- skip и шапка */
.almanac-skip{
  position:absolute;left:-9999px;top:0;z-index:90;
  padding:12px 22px;background:var(--alm-acc);color:#20140b;font-weight:600;
}
.almanac-skip:focus{left:12px;top:12px}

.almanac-top{
  position:sticky;top:0;z-index:70;
  display:flex;align-items:center;gap:24px;
  padding:10px 28px;
  background:rgba(19,15,22,.94);
  border-bottom:1px solid var(--alm-line);
  backdrop-filter:saturate(150%) blur(10px);
}
.almanac-mark{display:flex;align-items:center;gap:11px;flex:0 0 auto}
.almanac-mark svg{width:34px;height:34px;display:block}
.almanac-mark__t{display:flex;flex-direction:column;line-height:1.14}
.almanac-mark__n{font-family:var(--alm-fh);font-size:25px;color:var(--alm-txt);letter-spacing:.05em}
.almanac-mark__s{
  font-family:var(--alm-fm);font-size:10px;color:var(--alm-mut);
  text-transform:uppercase;letter-spacing:.18em;
}
.almanac-nav{display:flex;gap:20px;margin-left:auto;flex-wrap:wrap}
.almanac-nav a{
  font-family:var(--alm-fm);font-size:12.5px;color:var(--alm-mut);
  letter-spacing:.06em;padding:3px 0;border-bottom:1px solid transparent;
  transition:color .18s ease,border-color .18s ease;
}
.almanac-nav a:hover{color:var(--alm-acc);border-bottom-color:var(--alm-acc)}

/* -------------------------------------------------------------------- CTA */
.almanac-go{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 26px;
  background:var(--alm-acc);color:#20140b;
  border:1px solid var(--alm-acc);border-radius:2px;
  font-weight:600;font-size:14.5px;letter-spacing:.01em;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.almanac-go:hover{
  background:#ffb977;color:#20140b;transform:translateY(-2px);
  box-shadow:0 8px 22px rgba(240,160,90,.22);
}
.almanac-go--big{padding:16px 36px;font-size:16.5px}
.almanac-go--out{background:transparent;color:var(--alm-sec);border-color:var(--alm-line)}
.almanac-go--out:hover{background:var(--alm-sec-dim);color:var(--alm-txt);border-color:var(--alm-sec);box-shadow:none}

/* ----------------------------------------------------------------- каркас */
.almanac-col{width:100%;max-width:var(--alm-col);margin:0 auto;padding:0 28px}
main{display:block;padding-bottom:70px}

.almanac-sec{padding-top:46px;margin-top:46px;border-top:1px solid var(--alm-line-soft)}
.almanac-tag{
  display:block;margin:0 0 8px;
  font-family:var(--alm-fm);font-size:11.5px;letter-spacing:.2em;
  text-transform:lowercase;color:var(--alm-acc);
}
.almanac-in{color:var(--alm-mut);margin:0 0 18px}

h1,h2,h3{font-family:var(--alm-fh);font-weight:400;color:var(--alm-txt)}
h1{font-size:clamp(30px,4.2vw,48px);line-height:1.16;margin:0 0 16px}
h2{font-size:clamp(23px,2.8vw,32px);line-height:1.24;margin:0 0 14px}
h3{font-size:20px;line-height:1.32;margin:26px 0 7px;color:var(--alm-sec)}
p{margin:0 0 14px}
.almanac-note{font-size:14.5px;color:var(--alm-mut)}
.almanac-hi{color:var(--alm-acc)}

/* ------------------------------------------------------------------- hero */
.almanac-hero{
  padding:56px 0 40px;
  background:
    radial-gradient(700px 380px at 78% 10%,rgba(240,160,90,.12),transparent 66%),
    radial-gradient(620px 360px at 6% 92%,rgba(185,163,209,.10),transparent 70%);
}
.almanac-hero__lead{font-size:18.5px;color:var(--alm-mut);margin-bottom:22px}
.almanac-hero__acts{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:26px}
.almanac-quick{
  display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;
}
.almanac-quick a{
  flex:1 1 190px;
  display:block;padding:12px 15px;
  background:var(--alm-panel);
  border:1px solid var(--alm-line);border-radius:2px;
  transition:border-color .18s ease,background .18s ease;
}
.almanac-quick a:hover{border-color:var(--alm-acc);background:var(--alm-panel-2)}
.almanac-quick b,.almanac-quick i{font-style:normal;font-weight:400;display:block}
.almanac-quick__k{display:block;font-family:var(--alm-fh);font-size:17px;color:var(--alm-txt)}
.almanac-quick__v{display:block;font-size:12.5px;color:var(--alm-mut);margin-top:2px}

.almanac-kpi{
  display:flex;flex-wrap:wrap;gap:0;
  border-top:1px solid var(--alm-line);border-bottom:1px solid var(--alm-line);
}
.almanac-kpi__c{
  flex:1 1 160px;padding:15px 16px;
  border-right:1px solid var(--alm-line-soft);
}
.almanac-kpi__c:last-child{border-right:0}
.almanac-kpi__n{font-family:var(--alm-fh);font-size:27px;line-height:1.1;color:var(--alm-acc)}
.almanac-kpi__l{font-size:12.5px;color:var(--alm-mut)}

/* ------------------------------------------------------------ dl / dt / dd */
.almanac-dl{
  display:grid;grid-template-columns:240px 1fr;
  gap:0 26px;margin:14px 0 0;
}
.almanac-dl dt{
  font-family:var(--alm-fh);font-size:17.5px;color:var(--alm-acc);
  padding:13px 0 4px;
  border-top:1px solid var(--alm-line-soft);
}
.almanac-dl dd{
  margin:0;padding:13px 0 12px;
  border-top:1px solid var(--alm-line-soft);
  font-size:15.5px;
}
.almanac-dl dt:first-of-type,.almanac-dl dd:first-of-type{border-top:0}
.almanac-dl dd span{display:block;color:var(--alm-mut);font-size:14px;margin-top:3px}
.almanac-dl--tight dt{font-size:16px}
.almanac-dl--num dt{font-family:var(--alm-fm);font-size:13.5px;letter-spacing:.05em;color:var(--alm-sec)}

/* ------------------------------------------------------------------ цитаты */
.almanac-say{
  margin:22px 0 0;padding:0 0 0 20px;
  border-left:2px solid var(--alm-acc);
}
.almanac-say p{margin:0 0 8px;font-size:16px}
.almanac-say cite{
  font-style:normal;font-size:13px;color:var(--alm-mut);
  font-family:var(--alm-fm);letter-spacing:.03em;
}
.almanac-say--sec{border-left-color:var(--alm-sec)}

/* --------------------------------------------------------------------- FAQ */
.almanac-faq{margin-top:14px}
.almanac-faq details{
  border-bottom:1px solid var(--alm-line-soft);
  padding:12px 0;
}
.almanac-faq summary{
  cursor:pointer;list-style:none;
  font-family:var(--alm-fh);font-size:17.5px;color:var(--alm-txt);
  display:flex;gap:10px;
}
.almanac-faq summary::-webkit-details-marker{display:none}
.almanac-faq summary::before{content:"→";color:var(--alm-acc);flex:0 0 auto}
.almanac-faq details[open] summary{color:var(--alm-acc)}
.almanac-faq details[open] summary::before{content:"↓"}
.almanac-faq p{margin:10px 0 0 22px;font-size:15.5px;color:var(--alm-mut)}

/* ------------------------------------------------------------------- SVG */
.almanac-fig{display:block;width:100%;height:auto;margin:20px 0 6px}

/* ----------------------------------------------------------------- подвал */
.almanac-foot{
  border-top:1px solid var(--alm-line);
  background:var(--alm-panel);
  padding:40px 0 30px;margin-top:56px;
}
.almanac-foot__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.almanac-foot p{font-size:14px;color:var(--alm-mut);margin:0 0 12px}
.almanac-age{
  margin-top:24px;padding-top:15px;border-top:1px solid var(--alm-line-soft);
  font-family:var(--alm-fm);font-size:12.5px;color:var(--alm-mut);letter-spacing:.05em;
}

/* ---------------------------------------------------------------- адаптив */
@media (max-width:1000px){
  :root{--alm-col:760px}
  .almanac-dl{grid-template-columns:200px 1fr;gap:0 20px}
  .almanac-foot__grid{grid-template-columns:1fr 1fr}
  .almanac-nav{gap:14px}
}

@media (max-width:760px){
  body{font-size:16px}
  .almanac-col{padding:0 18px}
  .almanac-top{padding:9px 18px;gap:12px;flex-wrap:wrap}
  .almanac-nav{width:100%;margin-left:0;order:3;gap:12px}
  .almanac-dl{grid-template-columns:1fr;gap:0}
  .almanac-dl dt{padding-bottom:0;border-top:1px solid var(--alm-line-soft)}
  .almanac-dl dd{padding-top:4px;border-top:0}
  .almanac-dl dd:first-of-type{border-top:0}
  .almanac-kpi__c{flex:1 1 50%;border-right:0;border-bottom:1px solid var(--alm-line-soft)}
  .almanac-quick a{flex:1 1 100%}
  .almanac-hero__acts .almanac-go{width:100%}
  .almanac-foot__grid{grid-template-columns:1fr}
  h3{font-size:18.5px}
}

/* ------------------------------------------------- уточнения справочника */
.almanac-dl dt:hover{color:#ffb977}
.almanac-dl dd:hover span{color:var(--alm-sec)}
.almanac-dl--num dt::after{
  content:"";display:block;width:26px;height:2px;margin-top:6px;
  background:var(--alm-acc);opacity:.5;
}
.almanac-dl--tight dd{color:var(--alm-mut);font-size:15px}
.almanac-dl--tight dd:hover{color:var(--alm-txt)}

.almanac-sec:target{scroll-margin-top:80px}
.almanac-sec > h2 + .almanac-in{max-width:66ch}
.almanac-tag::before{content:"";display:inline-block;width:14px;height:1px;
  background:var(--alm-acc);vertical-align:middle;margin-right:8px;opacity:.7}

.almanac-hero h1{max-width:20ch}
.almanac-hero__lead{max-width:64ch}
.almanac-quick a:focus-visible{border-color:var(--alm-sec)}
.almanac-quick__k::after{
  content:"→";margin-left:7px;color:var(--alm-acc);
  opacity:0;transition:opacity .18s ease,margin-left .18s ease;
}
.almanac-quick a:hover .almanac-quick__k::after{opacity:1;margin-left:11px}

.almanac-kpi__c:nth-child(4) .almanac-kpi__n,
.almanac-kpi__c:nth-child(5) .almanac-kpi__n{color:var(--alm-sec)}
.almanac-kpi__c:hover{background:var(--alm-panel)}

.almanac-say{position:relative}
.almanac-say::before{
  content:"«";position:absolute;left:-2px;top:-14px;
  font-family:var(--alm-fh);font-size:34px;color:var(--alm-acc);opacity:.35;
}
.almanac-say + .almanac-say{margin-top:26px}
.almanac-say cite::before{content:"— ";color:var(--alm-acc)}

.almanac-faq details:last-child{border-bottom:0}
.almanac-faq summary:hover{color:var(--alm-acc)}
.almanac-faq details[open]{background:linear-gradient(180deg,var(--alm-panel) 0%,transparent 100%)}

.almanac-fig text{font-family:var(--alm-fm)}
.almanac-go:active{transform:translateY(0)}
.almanac-foot a:hover{text-decoration:underline}
.almanac-note{max-width:70ch}

/* ------------------------------------------------------- служебные состояния */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none !important}
}

@media print{
  .almanac-top,.almanac-hero__acts,.almanac-quick,.almanac-skip{display:none}
  body{background:#fff;color:#111}
  .almanac-dl dt{color:#333}
  .almanac-faq details{border-color:#ccc}
  .almanac-foot{background:#fff;border-top:1px solid #ccc}
}

@media (max-width:1000px){
  .almanac-hero{padding:44px 0 32px}
  .almanac-hero h1{max-width:none}
  .almanac-sec{padding-top:38px;margin-top:38px}
  .almanac-say{padding-left:16px}
}

@media (max-width:760px){
  .almanac-tag::before{width:10px;margin-right:6px}
  .almanac-dl--num dt::after{display:none}
  .almanac-say::before{display:none}
  .almanac-faq p{margin-left:0}
  .almanac-fig{overflow-x:auto}
  .almanac-kpi{border-bottom:0}
  .almanac-kpi__c:last-child{border-bottom:0}
}
