:root{
  --bg:#121212;
  --panel:#1a1a1a;
  --text:#e8e8e8;
  --muted:#a9a9a9;
  --line:#2a2a2a;
  --radius:18px;
  --max:560px;
}

*{box-sizing:border-box}

body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;
  background:var(--bg);
  color:var(--text);
  padding:16px;
}

.wrap{
  max-width:var(--max);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:14px;
}

.card{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
}

.section{padding:14px}

h1{margin:0;font-size:20px}
h2{margin:0 0 10px;font-size:15px}
p{color:var(--muted);font-size:14px}

.banner{
  width:100%;
  aspect-ratio:4/2;
  background:#000;
  overflow:hidden;
}
.banner img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* КНОПКИ */

.grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.btn{
  display:flex;
  align-items:center;
  gap:14px;
  padding:8px 8px;
  border-radius:14px;
  background:#3b3737;
  color:#a9a8a8;
  font-weight:600;
  font-size:15px;
  text-decoration:none;
}

.btn:active{transform:translateY(1px)}

a:btn {
text-decoration:none;
}

.logo-box{
  width:46px;
  height:46px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.logo-box svg{
  width:38px;
  height:38px;
  stroke:#fff;
  fill:none;
  stroke-width:1;
}

.logo-fill{fill:#fff;stroke:none}

/* Цвета */
.youtube-box{background:#FF0000}
.facebook-box{background:#1877F2}
.instagram-box{background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);}
.threads-box{background:#000}
.vk-box{background:#0077FF}
.whatsapp-box{background:#25D366}
.telegram-box{background:#229ED9}
.meet-box{background:#34A853}

/* Разное */
.misc-row{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.03);
}

.round-btn{
  width:46px;
  height:46px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
}

.round-btn svg{
  width:34px;
  height:34px;
  stroke:#fff;
  fill:none;
  stroke-width:1;
}

.misc-link{
  color:#fff;
  text-decoration:underline;
}

.video{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
}
.video iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}

footer{
  text-align:center;
  font-size:12px;
  color:var(--muted);
}

.tal{
  text-align:center;
}

.meet-desc{
  margin:8px 0 10px;
  color:var(--muted);
  font-size:14px;
}

.calendar-links{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:10px;
  gap:10px;
  flex-wrap:wrap; /* чтобы на узком экране переносились */
}

.legal-links{
  display:flex;
  justify-content:center;
  gap:12px;
  margin-top:8px;
  flex-wrap:wrap;
}

.legal-links a{color:var(--muted)}
