/* bhut.red — shared styles */

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Inter-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Inter-Italic.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/Inter-Medium.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/Inter-SemiBold.woff2') format('woff2');
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: #1a1a1a;
  background: #fefcfc radial-gradient(ellipse at center, #fefcfc 0%, #f4f0ef 100%) fixed;
  line-height: 1.65;
  max-width: 700px;
  margin: 0 auto;
  padding: 48px 24px 60px;
  min-height: 100vh;
}

a {
  color: #c0392b;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

/* Logo */
.logo {
  display: block;
  width: 100%;
  max-width: 480px;
  margin: 0 auto 40px;
}

/* Tagline */
.tagline {
  text-align: center;
  font-size: 1.05rem;
  font-weight: 400;
  font-style: italic;
  color: #555;
  letter-spacing: 0.01em;
  margin-bottom: 40px;
}

/* Section headings */
h1 {
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin-bottom: 16px;
  color: #1a1a1a;
}

h2 {
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin-top: 28px;
  margin-bottom: 12px;
  color: #1a1a1a;
}

/* What we do list */
.services {
  list-style: none;
  text-align: center;
  margin-bottom: 40px;
}

.services li {
  padding: 3px 0;
  font-size: 0.95rem;
  font-weight: 400;
  color: #333;
  line-height: 1.4;
}

.services li::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  vertical-align: -2px;
  background: url('/bullet.png') no-repeat center / contain;
}

/* PGP fingerprint block */
.fingerprint {
  background: #f2f2f2;
  padding: 14px 20px;
  border-radius: 4px;
  font-family: "SF Mono", "Fira Code", "Fira Mono", Menlo, monospace;
  font-size: 0.78rem;
  line-height: 1.5;
  text-align: center;
  color: #555;
  margin-bottom: 0;
  letter-spacing: 0.04em;
}

.fingerprint span {
  white-space: nowrap;
}

.fingerprint a {
  color: #999;
  font-size: 0.72rem;
  display: block;
  margin-top: 6px;
  letter-spacing: 0;
}

/* Policy page body text */
.policy p {
  margin-bottom: 14px;
  font-size: 0.95rem;
  line-height: 1.7;
}

.policy p:last-of-type {
  margin-bottom: 28px;
}

/* Divider */
hr {
  border: none;
  border-top: 1px solid #e0e0e0;
  margin: 28px 0;
}

/* Footer */
.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 12px 0;
  border-top: 1px solid #eaeaea;
  text-align: center;
  font-size: 0.82rem;
  color: #999;
  background: #fefcfc;
}

.footer a {
  color: #999;
  margin: 0 10px;
}

.footer a:hover {
  color: #c0392b;
}

/* Back link on sub-pages */
.back {
  display: inline-block;
  margin-bottom: 28px;
  font-size: 0.85rem;
  color: #999;
}

.back:hover {
  color: #c0392b;
}
