/* All text in Times New Roman */
* {
  font-family: "Times New Roman", Times, serif;
  box-sizing: border-box;
}

/* Baby pink theme */
:root {
  --baby-pink: #f7c6d0; /* adjust shade if needed */
}

body {
  margin: 0;
  min-height: 100vh;
  background: var(--baby-pink);
  color: #000;
  overflow: hidden;
  
  animation: pageFadeIn 700ms ease-out both;
}

@keyframes pageFadeIn {
	from {
		opacity: 0;
		transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Top black ribbon */
.top-ribbon {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 64px;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
}

.logo-text {
  color: #fff;
  font-size: 24px;
  letter-spacing: 0.06em;
}

/* Centered content */
.main {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding-top: 64px; /* offset for ribbon */
}

.headline {
  font-size: clamp(28px, 4vw, 56px);
  font-weight: 700;
  text-align: center;
}

/* Bottom-right image */
.corner-image {
  position: fixed;
  right: 18px;
  bottom: 18px;
  
  height: 30vh;
  width: auto;
  max-width: 42vw;
  
  z-index: 5;
  pointer-events: none;
  user-select: none;
}

/* Mobile adjustments */
@media (max-width: 420px) {
  .top-ribbon {
    height: 56px;
  }

  .main {
    padding-top: 56px;
  }

  .corner-image {
    right: 12px;
    bottom: 12px;
	height: 30vh;
	max-width: 55vw;
  }
}