@font-face{font-family:"Ruslan Display";src:url(../fonts/RuslanDisplay-Regular.ttf)}
@font-face{font-family:"Cormorant Garamond";src:url(../fonts/CormorantGaramond-VariableFont_wght.ttf);font-weight:300 700}
@font-face{font-family:"Cormorant Garamond";src:url(../fonts/CormorantGaramond-Italic-VariableFont_wght.ttf);font-weight:300 700;font-style:italic}
@font-face{font-family:"Cormorant SC";src:url(../fonts/CormorantSC-SemiBold.ttf);font-weight:600}
@font-face{font-family:"Old Standard TT";src:url(../fonts/OldStandardTT-Regular.ttf)}
@font-face{font-family:"Old Standard TT";src:url(../fonts/OldStandardTT-Italic.ttf);font-style:italic}
@font-face{font-family:"Old Standard TT";src:url(../fonts/OldStandardTT-Bold.ttf);font-weight:700}
:root{--ink:#e9d9b8; --ink2:#c9b08a; --dim:#9c8462;
  --cinnabar:#b3261e; --cinnabar2:#d2452b;
  --gold:linear-gradient(160deg,#6b4a16 0%,#c79a43 22%,#f0d68c 38%,#b88a34 55%,#e6c777 70%,#7a5519 100%);
  --goldc:#cfa95a; --black:#0d0907;
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:#0b0705}
body{font-family:"Old Standard TT",serif;color:var(--ink);font-size:18px;line-height:1.6;
  background:radial-gradient(ellipse at 50% 30%,rgba(0,0,0,0) 40%,rgba(0,0,0,.75) 100%),url(../img/parchment_dark.jpg) 0 0/640px;
  background-color:#140d08;padding:34px 0 40px;overflow-x:hidden}
a{color:inherit;text-decoration:none}
/* the manuscript leaf */
.leaf{position:relative;max-width:1340px;margin:0 auto;padding:0 64px 40px;isolation:isolate}
.leaf::before{content:"";position:absolute;inset:0;z-index:-2;
  background:
   radial-gradient(ellipse 80% 70% at 50% 40%,rgba(70,46,24,.0),rgba(20,12,6,.5) 90%),
   url(../img/cracks.png) 0 0/512px,
   url(../img/parchment_dark.jpg) 120px 40px/900px;
  filter:url(#rough) brightness(1.35) contrast(1.05);
  box-shadow:0 0 0 1px rgba(0,0,0,.4),0 30px 80px rgba(0,0,0,.8);}
.leaf::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  box-shadow:inset 0 0 120px 30px rgba(10,5,2,.85),inset 0 0 18px 4px rgba(40,18,6,.9);filter:url(#rough)}
.grain{position:fixed;inset:0;pointer-events:none;background:url(../img/grain.png);opacity:.55;mix-blend-mode:overlay;z-index:50}
/* worn gilding */
.gild{display:inline-block;background:var(--gold);background-size:400px 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-mask-image:var(--wear-soft);mask-image:var(--wear-soft);-webkit-mask-size:360px;mask-size:360px}
.rubric{font-family:"Cormorant SC";font-weight:600;color:var(--cinnabar2);letter-spacing:.18em;font-size:15px}
.vine{display:block;width:100%;height:36px}
.rule{height:2px;background:var(--gold);opacity:.7;-webkit-mask-image:var(--wear-hard);mask-image:var(--wear-hard);-webkit-mask-size:300px;mask-size:300px}

/* header */
header{display:flex;align-items:center;justify-content:space-between;padding:26px 0 14px}
.logo img{height:84px;display:block;filter:sepia(.25) contrast(1.02) drop-shadow(0 2px 3px rgba(0,0,0,.6))}
nav{display:flex;align-items:center;gap:6px}
nav a{font-family:"Cormorant SC";font-weight:600;font-size:19px;letter-spacing:.14em;color:var(--ink2);padding:6px 14px;position:relative;line-height:1.1;text-align:center}
nav a small{display:block;font-family:"Old Standard TT";font-style:italic;font-size:13px;letter-spacing:.04em;color:var(--dim);text-transform:none}
nav a:hover{color:var(--ink)}
nav .sep{color:var(--cinnabar);font-size:12px}
nav a.on{color:var(--ink)} nav a.on::after{content:"";position:absolute;left:50%;bottom:-8px;width:7px;height:7px;background:var(--cinnabar);transform:translateX(-50%) rotate(45deg)}

/* hero */
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:30px 0 34px}
.hero .rubric{display:block;margin-bottom:12px}
.vyaz{font-family:"Ruslan Display";font-weight:400;line-height:.92;letter-spacing:-.01em;transform:scaleY(1.32);transform-origin:left top;margin-bottom:34px}
.vyaz.h1{font-size:64px;margin-bottom:46px}
.h1en{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-size:44px;line-height:1.05;color:var(--ink);margin:6px 0 22px}
.h1en em{color:var(--cinnabar2);font-style:italic}
.intro{max-width:600px;color:var(--ink2);font-size:19px}
.intro::first-line{font-variant:small-caps;letter-spacing:.05em;color:var(--ink)}
.drop{float:left;width:92px;height:92px;margin:8px 16px 0 0;position:relative;display:grid;place-items:center;
  background:radial-gradient(circle at 40% 35%,#2a130b,#120806);border:3px double var(--goldc);box-shadow:0 0 0 4px #1a0e07,0 0 0 5px rgba(207,169,90,.5)}
.drop b{font-family:"Cormorant Garamond";font-weight:700;font-size:78px;line-height:1;color:var(--cinnabar2);text-shadow:0 0 1px #000,2px 2px 0 rgba(0,0,0,.6);position:relative;z-index:1}
.drop svg{position:absolute;inset:4px;width:calc(100% - 8px);height:calc(100% - 8px)}
.btns{display:flex;gap:18px;margin-top:30px}
.btn{font-family:"Cormorant SC";font-weight:600;font-size:18px;letter-spacing:.14em;padding:12px 26px 12px;position:relative;display:inline-flex;gap:10px;align-items:baseline}
.btn small{font-family:"Old Standard TT";font-style:italic;letter-spacing:0;font-size:14px;opacity:.85}
.btn.seal{background:linear-gradient(#a62a1c,#7e1a12);color:#f6e6c4;box-shadow:inset 0 0 0 1px rgba(240,214,140,.6),inset 0 0 0 4px #7e1a12,inset 0 0 0 5px rgba(240,214,140,.45),0 3px 8px rgba(0,0,0,.5);
  -webkit-mask-image:var(--wear-soft);mask-image:var(--wear-soft);-webkit-mask-size:220px;mask-size:220px}
.btn.line{color:var(--goldc);border:1px solid rgba(207,169,90,.6);outline:1px solid rgba(207,169,90,.3);outline-offset:3px}

/* miniature roundel */
.mini{position:relative;width:520px;height:520px;justify-self:center}
.mini .glow{position:absolute;inset:-40px;background:radial-gradient(circle,rgba(255,170,70,.20),rgba(255,140,40,.05) 45%,transparent 68%)}
.mini svg.ring{position:absolute;inset:0;width:100%;height:100%}
.mini img{position:absolute;left:50%;top:50%;width:360px;transform:translate(-50%,-50%);border-radius:50%;
  filter:sepia(.28) saturate(.9) contrast(1.05) brightness(.93);box-shadow:0 0 0 3px #120806,0 0 30px rgba(0,0,0,.8)}
.mini .patina{position:absolute;left:50%;top:50%;width:360px;height:360px;transform:translate(-50%,-50%);border-radius:50%;
  background:url(../img/cracks.png) 0 0/300px,radial-gradient(circle,transparent 55%,rgba(30,15,5,.55));mix-blend-mode:multiply;opacity:.9}
.caption{position:absolute;bottom:-6px;left:0;right:0;text-align:center;font-style:italic;color:var(--dim);font-size:15px}

/* sections */
.sec-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin:58px 0 34px}
.sec-head h1,.sec-head h2{text-align:center}
.sec-head h1 .v,.sec-head h2 .v{font-family:"Ruslan Display";font-weight:400;font-size:46px;display:inline-block;transform:scaleY(1.3);line-height:1}
.sec-head h1 .e,.sec-head h2 .e{display:block;font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-size:22px;color:var(--ink2);margin-top:12px}
/* featured */
.feat{display:grid;grid-template-columns:560px 1fr;gap:56px;align-items:start;padding:10px 0 20px}
.frame{position:relative;padding:16px;background:#1a0f08;box-shadow:inset 0 0 0 2px var(--goldc),inset 0 0 0 6px #1a0f08,inset 0 0 0 7px rgba(207,169,90,.6),0 10px 30px rgba(0,0,0,.6)}
.frame .pic{height:380px;background:url(../img/bellwether_website_bg_1920x1080.jpg) center/cover;filter:sepia(.45) saturate(.75) contrast(1.05) brightness(.8)}
.frame .pic::after{content:"";position:absolute;inset:16px;background:url(../img/cracks.png) 0 0/400px,radial-gradient(ellipse,transparent 50%,rgba(25,12,4,.7));mix-blend-mode:multiply;opacity:.6}
.frame .cast{position:absolute;bottom:-34px;right:24px;display:flex;gap:10px}
.frame .cast img{width:78px;height:78px;border-radius:50%;object-fit:cover;object-position:top;background:#3b2414;filter:sepia(.35) saturate(.85);box-shadow:0 0 0 2px var(--goldc),0 0 0 4px #140c07,0 4px 10px rgba(0,0,0,.7)}
.corner{position:absolute;width:56px;height:56px;color:var(--goldc)}
.corner.tl{left:-10px;top:-10px}.corner.tr{right:-10px;top:-10px;transform:scaleX(-1)}.corner.bl{left:-10px;bottom:-10px;transform:scaleY(-1)}.corner.br{right:-10px;bottom:-10px;transform:scale(-1)}
.feat h3,.feat .game-title{font-family:"Ruslan Display";font-weight:400;font-size:52px;line-height:.95;transform:scaleY(1.25);transform-origin:left top;margin:6px 0 26px}
.feat .ru{font-family:"Cormorant Garamond";font-style:italic;font-size:26px;color:var(--cinnabar2);margin-bottom:14px}
.feat p{color:var(--ink2)}
.tags{display:flex;flex-wrap:wrap;gap:8px 18px;margin:20px 0 26px;font-family:"Cormorant SC";font-weight:600;letter-spacing:.1em;font-size:15px;color:var(--goldc)}
.tags span::before{content:"✠";display:none}
.tags span+span::before{content:"❧ ";display:inline;color:var(--cinnabar)}
/* about */
.about{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:6px 0 10px}
.ph{display:inline-block;font-family:"Cormorant SC";font-weight:600;font-size:13px;letter-spacing:.16em;color:#1a0e07;background:#c9a65a;padding:2px 10px;margin-bottom:14px;opacity:.85}
.about blockquote{font-family:"Cormorant Garamond";font-style:italic;font-size:34px;line-height:1.25;color:var(--ink)}
.about blockquote span{display:block;font-size:24px;color:var(--ink2);margin-top:14px}
.about p{color:var(--ink2);margin-bottom:14px;text-align:justify;hyphens:auto}
.about p.first::first-letter{font-family:"Ruslan Display";float:left;font-size:64px;line-height:.9;color:var(--cinnabar2);padding:4px 10px 0 0}
.about p.ru{font-style:italic;color:var(--dim)}
/* footer / colophon */
footer{margin-top:40px;text-align:center;padding-top:6px}
footer .wm{height:58px;margin:26px auto 8px;display:block;filter:sepia(.25)}
footer .col{font-style:italic;color:var(--dim);font-size:16px;max-width:620px;margin:0 auto 18px}
footer .links{display:flex;justify-content:center;gap:28px;font-family:"Cormorant SC";font-weight:600;letter-spacing:.14em;color:var(--ink2)}
footer .links a+a::before{content:"·";color:var(--cinnabar);margin-right:28px}
footer .fine{margin-top:16px;font-size:14px;color:var(--dim)}

/* ---------- multi-page additions ---------- */
.logo{display:block}
a.frame{display:block}
.sec-head h1,.feat .game-title{font-weight:400}
nav a[aria-current="page"]{color:var(--ink)}
.page-head{margin-top:34px}
.games{list-style:none}
.games>li+li{margin-top:70px}
/* latest game snippet (home) */
.latest{display:grid;grid-template-columns:420px 1fr;gap:48px;align-items:center;padding:6px 0 10px}
.latest .frame{padding:12px}
.latest .frame .pic{height:236px}
.latest .frame .pic::after{inset:12px}
.latest .frame .cast{bottom:-26px;right:18px;gap:8px}
.latest .frame .cast img{width:58px;height:58px}
.latest .corner{width:44px;height:44px}
.latest h3{font-family:"Ruslan Display";font-weight:400;font-size:40px;line-height:.95;transform:scaleY(1.25);transform-origin:left top;margin:6px 0 20px}
.latest .ru{font-family:"Cormorant Garamond";font-style:italic;font-size:23px;color:var(--cinnabar2);margin-bottom:10px}
.latest p{color:var(--ink2);max-width:620px}
.latest .btns{flex-wrap:wrap;margin-top:24px}
/* contact */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:6px 0 10px}
.contact h3{font-family:"Cormorant SC";font-weight:600;letter-spacing:.14em;font-size:22px;color:var(--ink);margin-bottom:8px}
.contact h3 small{font-family:"Old Standard TT";font-style:italic;letter-spacing:.02em;font-size:16px;color:var(--dim);margin-left:6px}
.contact .mail{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-size:36px;color:var(--goldc);display:inline-block;margin:4px 0 12px;border-bottom:1px solid rgba(207,169,90,.45);word-break:break-word}
.contact p{color:var(--ink2);margin-bottom:14px}
.contact .btns{margin-top:18px}
.contact>div+div{padding-top:30px}
footer .links a[aria-current="page"]{color:var(--ink)}
a:focus-visible{outline:2px solid var(--goldc);outline-offset:3px}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .leaf{padding:0 40px 36px}
  .hero{grid-template-columns:1fr;gap:20px}
  .mini{width:440px;height:440px;margin-top:10px}
  .feat{grid-template-columns:1fr;gap:56px}
  .latest{grid-template-columns:360px 1fr;gap:36px}
}
@media (max-width:900px){
  .latest{grid-template-columns:1fr;gap:44px}
  .about,.contact{grid-template-columns:1fr;gap:34px}
  .contact>div+div{padding-top:0}
}
@media (max-width:720px){
  body{font-size:17px;padding:14px 0 20px}
  .leaf{padding:0 20px 28px}
  .leaf::after{box-shadow:inset 0 0 60px 14px rgba(10,5,2,.85),inset 0 0 12px 3px rgba(40,18,6,.9)}
  header{flex-direction:column;gap:12px;padding:20px 0 8px}
  .logo img{height:60px}
  nav{width:100%;justify-content:space-between;gap:0}
  nav .sep{display:none}
  nav a{font-size:15px;letter-spacing:.08em;padding:6px 4px}
  nav a small{font-size:12px}
  nav a.on::after{bottom:-6px;width:6px;height:6px}
  .rubric{font-size:13px;letter-spacing:.12em}
  .hero{padding:20px 0 24px}
  .vyaz.h1{font-size:43px;margin-bottom:32px}
  .h1en{font-size:30px;margin:4px 0 18px}
  .intro{font-size:17px}
  .drop{width:70px;height:70px;margin:6px 12px 0 0}
  .drop b{font-size:58px}
  .btns{flex-direction:column;align-items:flex-start;gap:14px}
  .btn{font-size:16px;padding:11px 20px}
  .mini{width:320px;height:320px;max-width:100%}
  .mini img,.mini .patina{width:69.2%;height:auto;aspect-ratio:1}
  .mini .glow{inset:-20px}
  .caption{bottom:-18px;font-size:14px}
  .sec-head{gap:12px;margin:40px 0 26px}
  .sec-head h1 .v,.sec-head h2 .v{font-size:34px}
  .sec-head h1 .e,.sec-head h2 .e{font-size:18px}
  .page-head{margin-top:22px}
  .frame{padding:10px}
  .frame .pic{height:210px}
  .frame .pic::after{inset:10px}
  .frame .cast{bottom:-26px;right:14px;gap:8px}
  .frame .cast img{width:54px;height:54px}
  .corner{width:40px;height:40px}
  .feat h3,.feat .game-title{font-size:34px;margin:6px 0 18px}
  .feat .ru{font-size:22px}
  .latest .frame .pic{height:190px}
  .latest h3{font-size:32px;margin-bottom:16px}
  .latest .ru{font-size:20px}
  .about blockquote{font-size:27px}
  .about blockquote span{font-size:20px}
  .about p{text-align:left}
  .contact .mail{font-size:28px}
  footer .wm{height:44px}
  footer .col{font-size:15px}
  footer .links{flex-wrap:wrap;gap:6px 10px;font-size:14px;letter-spacing:.08em}
  footer .links a+a::before{margin-right:10px}
}

/* ---------- about: bilingual text + language toggle ---------- */
.about.about-text{display:block;max-width:780px;margin:0 auto;padding:0 0 14px}
.about-text p{font-size:20px;line-height:1.7;margin-bottom:18px}
.about-text p.first{color:var(--ink)}
.about-text .l-ru{display:none}
html[data-lang="ru"] .about-text .l-ru{display:block}
html[data-lang="ru"] .about-text .l-en{display:none}
.lang-toggle{display:flex;width:max-content;margin:0 0 26px auto;padding:3px;border-radius:999px;
  border:1px solid rgba(207,169,90,.65);outline:1px solid rgba(207,169,90,.28);outline-offset:3px;background:rgba(20,10,5,.45)}
.lang-toggle button{font-family:"Cormorant SC";font-weight:600;font-size:16px;letter-spacing:.14em;line-height:1;
  padding:8px 18px 9px;border:0;border-radius:999px;background:transparent;color:var(--goldc);cursor:pointer;transition:color .15s,background .15s}
.lang-toggle button:hover{color:var(--ink)}
.lang-toggle button[aria-pressed="true"]{background:linear-gradient(#a62a1c,#7e1a12);color:#f6e6c4;
  box-shadow:inset 0 0 0 1px rgba(240,214,140,.55),0 2px 6px rgba(0,0,0,.5)}
.lang-toggle button:focus-visible{outline:2px solid var(--goldc);outline-offset:2px}
@media (max-width:720px){
  .about-text p{font-size:17px;line-height:1.65}
  .lang-toggle{margin:0 auto 22px}
  .lang-toggle button{font-size:15px;padding:8px 16px 9px}
}
