:root{
  --page-padding: clamp(16px, 4vw, 48px);
  --content-width: 1200px;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:#fff;
  color:#000;
  font-family:Tahoma, Geneva, Verdana, sans-serif;
  overflow-x:hidden;
}

a{color:#000}

.site-header{
  position:relative;
  width:100%;
  min-height:320px;
  padding:70px var(--page-padding) 80px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.site-header h1,
.site-header .tagline,
.site-header .archive-label{
  width:100%;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
  font-weight:400;
}

h1{
  margin:0;
  font-size:69pt;
  line-height:1;
}

.tagline{
  margin:18px 0 0;
  font-size:24pt;
  line-height:1.2;
}

.archive-label{
  margin:10px 0 0;
  font-size:12pt;
  line-height:1.2;
}

.social-links{
  position:absolute;
  top:24px;
  right:28px;
  display:flex;
  align-items:center;
  gap:14px;
  margin:0;
}

.social-links a{
  display:inline-flex;
  width:30px;
  height:30px;
  align-items:center;
  justify-content:center;
  color:#000;
  text-decoration:none;
}

.social-links svg{
  width:100%;
  height:100%;
  fill:#000;
}

main{
  width:min(100%, calc(var(--content-width) + (var(--page-padding) * 2)));
  margin:0 auto;
  padding:0 var(--page-padding);
}

.archive{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:clamp(70px,10vw,150px);
}

.post,
.post-media{width:100%}

.post-media img{
  display:block;
  width:100%;
  height:auto;
}

.post-title{display:none !important}

.post-body{
  max-width:780px;
  margin-top:14px;
  font-size:16px;
  line-height:1.55;
}

.post-body > :first-child{margin-top:0}
.post-body > :last-child{margin-bottom:0}
.post-body img{display:none}
.post-body iframe,
.post-body video{max-width:100%}

.status[hidden]{display:none !important}

.site-footer{
  width:100%;
  padding:100px var(--page-padding) 60px;
  text-align:center;
}

.site-footer p{
  margin:0;
  font-family:Tahoma, Geneva, Verdana, sans-serif;
  font-size:12pt;
  font-weight:400;
  line-height:1.12;
  text-align:center;
}

@media (max-width:768px){
  .site-header{
    min-height:260px;
    padding-top:72px;
    padding-bottom:54px;
  }

  h1{font-size:48pt}

  .tagline{
    font-size:18pt;
  }

  .archive-label{
    font-size:12pt;
  }

  .social-links{
    top:16px;
    right:16px;
    gap:12px;
  }

  .social-links a{
    width:26px;
    height:26px;
  }

  .site-footer{
    padding-top:80px;
    padding-bottom:40px;
  }

  .site-footer p{
    font-size:12pt;
  }
}

.mobile-only-break{
  display:none;
}

@media (max-width:768px){
  .mobile-only-break{
    display:block;
  }
}
