@import url('https://fonts.googleapis.com/css2?family=Vollkorn:ital,wght@0,500;0,700;0,900;1,600&family=Alegreya+Sans:ital,wght@0,400;0,500;0,700;1,400&display=swap&subset=cyrillic');

:root{
  --alCloth:#0f1d18;
  --alPanel:#16291f;
  --alBrass:#c9a227;
  --alIvory:#efe9dc;
  --alMute:#93a89b;
  --alLine:rgba(201,162,39,.38);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:#0f1d18;
  background-image:
    repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 3px),
    repeating-linear-gradient(0deg,rgba(0,0,0,.14) 0 1px,transparent 1px 3px);
  color:var(--alIvory);
  font-family:'Alegreya Sans','Segoe UI',system-ui,sans-serif;
  font-size:17px;
  line-height:1.62;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Vollkorn',Georgia,serif;font-weight:700;line-height:1.16;margin:0 0 .5em}
p{margin:0 0 1.05em}
a{color:var(--alBrass)}

.alWrap{max-width:1080px;margin:0 auto;padding:0 22px}

.alSkip{position:absolute;left:-9999px;top:0}
.alSkip:focus{left:8px;top:8px;background:var(--alBrass);color:#12241c;padding:8px 14px;z-index:99}

/* ---------- cloth header ---------- */
.alCloth{
  position:sticky;top:0;z-index:40;
  background:rgba(15,29,24,.96);
  border-bottom:3px double var(--alLine);
}
.alClothIn{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 22px;max-width:1080px;margin:0 auto}
.alSpine{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--alIvory)}
.alSpine svg{display:block;width:38px;height:44px;flex:none}
.alSpineTxt{font-family:'Vollkorn',Georgia,serif;font-size:21px;letter-spacing:.06em;line-height:1.05}
.alSpineTxt em{display:block;font-style:normal;font-family:'Alegreya Sans',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--alMute)}
.alClothNav{display:flex;gap:14px;flex-wrap:wrap;margin-left:auto;font-size:14px;letter-spacing:.04em}
.alClothNav a{color:var(--alMute);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
.alClothNav a:hover{color:var(--alBrass);border-bottom-color:var(--alLine)}

.alStamp{
  display:inline-block;font-family:'Alegreya Sans',sans-serif;font-weight:700;
  font-size:14px;letter-spacing:.11em;text-transform:uppercase;
  color:#11241b;background:var(--alBrass);
  padding:11px 20px;border:1px solid #e3c04a;border-radius:2px;
  text-decoration:none;box-shadow:0 2px 0 #8d6f12;
}
.alStamp:hover{background:#dbb43a}
.alStampGhost{background:transparent;color:var(--alBrass);box-shadow:none;border:1px solid var(--alLine)}
.alStampGhost:hover{background:rgba(201,162,39,.1)}

/* ---------- masthead ---------- */
.alMast{padding:34px 0 10px;border-bottom:3px double var(--alLine)}
.alMastRow{display:grid;grid-template-columns:1.55fr 1fr;gap:34px;align-items:start}
.alYear{
  font-family:'Alegreya Sans',sans-serif;font-size:12px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--alBrass);margin:0 0 14px;
  border-top:1px solid var(--alLine);border-bottom:1px solid var(--alLine);padding:7px 0;
}
h1{font-size:clamp(28px,4.4vw,46px);letter-spacing:-.01em}
.alLede{font-size:19px;color:#dcd5c6;max-width:41em}
.alActs{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 26px}

.alLedger{background:var(--alPanel);border:1px solid var(--alLine);border-radius:3px;padding:16px 18px}
.alLedgerHd{font-family:'Vollkorn',serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--alBrass);border-bottom:1px solid var(--alLine);padding-bottom:7px;margin-bottom:9px}
.alLedgerRow{display:flex;justify-content:space-between;gap:10px;font-size:15px;padding:5px 0;border-bottom:1px dotted rgba(147,168,155,.3)}
.alLedgerRow:last-child{border-bottom:0}
.alLedgerRow span{color:var(--alMute)}
.alLedgerRow em{font-style:normal;font-family:'Vollkorn',serif;color:var(--alBrass);white-space:nowrap}

/* ---------- issue ---------- */
.alIssue{padding:30px 0 12px}
.alRule2{border-top:3px double var(--alLine);padding-top:18px}
.alIssueHd{font-family:'Alegreya Sans',sans-serif;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--alMute);margin:0 0 4px}
.alIssueHd i{font-style:normal;color:var(--alBrass)}
.alIssue h2{font-size:clamp(23px,3vw,33px);margin-bottom:.45em}
.alIssue h3{font-family:'Alegreya Sans',sans-serif;font-size:14px;letter-spacing:.15em;text-transform:uppercase;color:var(--alBrass);margin:20px 0 8px}

.alProse{columns:2;column-gap:40px;column-rule:1px solid rgba(147,168,155,.22)}
.alProse p{break-inside:avoid}
.alProse h3{break-after:avoid;margin-top:0}
.alSolo{columns:1}

/* ---------- catalogue calendar ---------- */
.alCal{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--alLine);margin:16px 0 20px}
.alCalDay{border-right:1px solid rgba(147,168,155,.22);border-bottom:1px solid rgba(147,168,155,.22);padding:12px 13px;background:var(--alPanel)}
.alCal .alCalDay:nth-child(4n){border-right:0}
.alCal .alCalDay:nth-child(n+9){border-bottom:0}
.alCalNum{font-family:'Vollkorn',serif;font-size:12px;letter-spacing:.14em;color:var(--alMute)}
.alCalTitle{font-family:'Vollkorn',serif;font-size:18px;color:var(--alIvory);margin:2px 0 4px;line-height:1.2}
.alCalMeta{font-size:13.5px;color:var(--alBrass)}
.alCalMeta i{font-style:normal;display:block;color:var(--alMute)}

/* ---------- contents list (VIP) ---------- */
.alContents{list-style:none;margin:14px 0 18px;padding:0}
.alContents li{display:flex;align-items:baseline;gap:6px;padding:9px 0;border-bottom:1px solid rgba(147,168,155,.16)}
.alContents li:last-child{border-bottom:0}
.alContentsName{font-family:'Vollkorn',serif;font-size:19px;color:var(--alIvory);white-space:nowrap}
.alContentsDesc{color:var(--alMute);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.alDots{flex:1 1 auto;min-width:18px;border-bottom:2px dotted rgba(147,168,155,.45);transform:translateY(-5px)}
.alPage{font-family:'Vollkorn',serif;font-size:19px;color:var(--alBrass);white-space:nowrap}

/* ---------- ledger sheet ---------- */
.alSheetWrap{overflow-x:auto;margin:14px 0 18px;border:1px solid var(--alLine)}
.alSheet{width:100%;border-collapse:collapse;font-size:15px;min-width:460px}
.alSheet caption{text-align:left;padding:10px 13px;color:var(--alMute);font-size:13px;letter-spacing:.12em;text-transform:uppercase;background:var(--alPanel)}
.alSheet th,.alSheet td{padding:9px 13px;text-align:left;border-top:1px solid rgba(147,168,155,.2)}
.alSheet th{font-family:'Vollkorn',serif;color:var(--alBrass);font-weight:500;letter-spacing:.05em}
.alSheet tbody tr:nth-child(odd){background:rgba(22,41,31,.7)}
.alSheet td:last-child,.alSheet th:last-child{text-align:right}

/* ---------- inserts ---------- */
.alNote{background:var(--alPanel);border-left:3px solid var(--alBrass);padding:14px 17px;margin:16px 0}
.alNote p:last-child{margin-bottom:0}

.alSlips{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:16px 0 4px}
.alSlip{background:var(--alPanel);border:1px solid var(--alLine);border-radius:3px;padding:15px 17px}
.alSlipHd{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--alMute);border-bottom:1px dotted rgba(147,168,155,.35);padding-bottom:7px;margin-bottom:9px}
.alSlipHd em{font-style:normal;font-family:'Vollkorn',serif;color:var(--alBrass)}
.alSlip p{font-size:15.5px;margin:0}

.alFaq{margin:14px 0 8px}
.alFaq details{border-top:1px solid rgba(147,168,155,.22);padding:11px 0}
.alFaq details:last-child{border-bottom:1px solid rgba(147,168,155,.22)}
.alFaq summary{cursor:pointer;font-family:'Vollkorn',serif;font-size:19px;color:var(--alIvory);list-style:none;display:flex;gap:10px;align-items:baseline}
.alFaq summary::-webkit-details-marker{display:none}
.alFaq summary::before{content:'\00a7';color:var(--alBrass);font-size:16px}
.alFaq details[open] summary{color:var(--alBrass)}
.alFaq p{margin:9px 0 2px;padding-left:20px;color:#dcd5c6}

.alColophon{border-top:3px double var(--alLine);margin-top:26px;padding:20px 0 0}
.alColophon h2{font-size:21px}

.alFoot{border-top:3px double var(--alLine);margin-top:26px;padding:22px 0 44px;color:var(--alMute);font-size:14.5px}
.alAge{display:inline-block;border:1px solid var(--alBrass);color:var(--alBrass);border-radius:50%;width:38px;height:38px;line-height:36px;text-align:center;font-family:'Vollkorn',serif;font-size:14px;margin-right:10px;vertical-align:middle}

@media (max-width:900px){
  .alMastRow{grid-template-columns:1fr;gap:22px}
  .alCal{grid-template-columns:repeat(2,1fr)}
  .alCal .alCalDay:nth-child(4n){border-right:1px solid rgba(147,168,155,.22)}
  .alCal .alCalDay:nth-child(2n){border-right:0}
  .alCal .alCalDay:nth-child(n+9){border-bottom:1px solid rgba(147,168,155,.22)}
  .alCal .alCalDay:nth-child(n+11){border-bottom:0}
  .alSlips{grid-template-columns:1fr}
}
@media (max-width:640px){
  body{font-size:16.5px}
  .alWrap{padding:0 15px}
  .alClothIn{padding:9px 15px;gap:10px}
  .alClothNav{display:none}
  .alSpine svg{width:30px;height:35px}
  .alSpineTxt{font-size:18px}
  .alStamp{padding:9px 13px;font-size:12.5px;margin-left:auto;letter-spacing:.06em}
  .alMast{padding:20px 0 8px}
  .alLede{font-size:17px}
  .alProse{columns:1}
  .alCal{grid-template-columns:1fr}
  .alCal .alCalDay{border-right:0;border-bottom:1px solid rgba(147,168,155,.22)}
  .alCal .alCalDay:last-child{border-bottom:0}
  .alContents li{flex-wrap:wrap}
  .alContentsDesc{white-space:normal;flex:1 1 100%;order:3}
  .alSheet{min-width:420px}
}
