:root {
  --wine: #660E36;
  --rose: #C8ACA5;
  --paper: #ffffff;
  --ink: #2b2226;
  --muted: #8d7a80;
  --rule: #ecdfdb;
  --hover: #faf4f2;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  padding: 36px 20px 56px;
  background: var(--paper);
  color: var(--ink);
  font-family: "Fraunces", Georgia, serif;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
}
main { max-width: 720px; margin: 0 auto; }
.brand {
  font-size: .9rem; font-weight: 500; letter-spacing: .28em;
  color: var(--wine); margin: 0 0 34px;
}
h1 {
  font-weight: 400; font-size: clamp(2rem, 7.5vw, 3.2rem);
  line-height: 1.04; color: var(--wine); margin: 0 0 8px;
  letter-spacing: -.02em;
}
.sub { color: var(--muted); font-size: .95rem; margin: 0 0 28px; }
p { font-size: 1.05rem; line-height: 1.6; margin: 0 0 14px; max-width: 46ch; }
.hint { color: var(--muted); font-size: .95rem; }
.video {
  position: relative; padding-top: 56.25%;
  background: #000; border-radius: 3px; overflow: hidden;
}
.video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.actions {
  margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--rule);
}
.actions a {
  color: var(--wine); text-decoration: none;
  border-bottom: 1px solid var(--rose); padding-bottom: 1px;
  font-size: 1.05rem;
}
.actions a:hover, .actions a:focus-visible { border-bottom-color: var(--wine); }
