
:root{
  --theme:#fff8ee;
  --entry:#ffffff;
  --primary:#1a120b;
  --secondary:#8e6736;
  --accent:#23d4ff;
}
[data-theme="dark"],
html.dark,
body.dark{
  --theme:#120d07;
  --entry:#1a120b;
  --primary:#e2d7c3;
  --secondary:#b98e55;
  --accent:#23d4ff;
}
html{background:var(--theme);}
header.site-header{
  background:linear-gradient(90deg,#b98e55 0%,#8e6736 100%);
  box-shadow:0 2px 4px rgba(0,0,0,.6);
}
.nav{
  position:relative;
}
/* --- typografia --- */
body{
  font-family:"Inter",system-ui,-apple-system,Segoe UI,Helvetica,Arial,sans-serif !important;
  line-height:1.6;
  color:var(--primary);
}
h1,h2,h3,.post-title{
  font-family:"Old Standard TT",serif !important;
  font-weight:700;
  letter-spacing:.5px;
  margin-top:1.2em;
  margin-bottom:.5em;
  color:var(--secondary) !important;
  font-size:50px;
}

/* --- painike-/linkkityyli --- */
a.button, .btn{
  display:inline-block;
  background:var(--accent);
  color:#000;
  padding:.45em 1.1em;
  border:2px solid #b98e55;
  border-radius:6px;
  text-decoration:none;
  font-weight:500;
  transition:all .25s ease;
}
a.button:hover, .btn:hover{
  background:#b98e55;
  color:#000;
  border-color:#23d4ff;
  box-shadow:0 0 8px rgba(35,212,255,.6);
}

/* --- header-ornamentti --- */
header.header{
  position:relative;
  margin-bottom:1.2rem;
}
header.header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:24px;
  background:url("../img/gearline.svg") repeat-x center;
  background-size:auto 24px;
  opacity:.9;
  z-index:-1;
  pointer-events:none;
}

/* Skip link visually hidden until focused */
.skip-link {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.skip-link:focus,
.skip-link:active {
  position: absolute;
  left: 0;
  top: 0;
  width: auto;
  height: auto;
  padding: 0.5rem 1rem;
  background: #fff;
  color: #000;
  z-index: 1000;
}

/* Navigation menu styles */
.menu {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.menu li {
  margin-right: 1rem;
}
.hidden {
  display: none;
}
#menu-trigger {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  #menu-trigger {
    display: inline-block;
  }
  .menu {
    display: block;
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 1rem;
    background: var(--theme);
    padding: 1rem;
    border: 2px solid var(--secondary);
    border-radius: 8px;
    z-index: 1000;
  }
  .menu.hidden {
    display: none;
  }
  .menu li {
    margin: 0.5rem 0;
  }
}

/* Responsive YouTube embeds */
.youtube-video {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.post-description{
  font-size:22px;
}
.page-header h1{
  font-size:50px;
}

