:root { --accent: #2b5169; --accent-2: #8f2181; }
  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
  body { margin: 0; background: #faf8f5; color: #1c1b19; font-family: Manrope, system-ui, sans-serif; }
  a { color: var(--accent); text-decoration: none; }
  a:hover { color: #1c1b19; }
  input, textarea, button { font: inherit; color: inherit; }
  ::selection { background: color-mix(in oklab, var(--accent) 22%, transparent); }
  @keyframes ppRise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

/* --- interactive states (converted from the original design) --- */
.hv1:hover { color: #1c1b19 !important; border-bottom: 1px solid var(--accent) !important; }
.hv2:hover { color: #faf8f5 !important; transform: translateY(-2px) !important; box-shadow: 0 12px 26px color-mix(in oklab, var(--accent) 30%, transparent) !important; }
.hv3:hover { color: #faf8f5 !important; background: var(--accent) !important; transform: translateY(-2px) !important; }
.hv4:hover { color: #1c1b19 !important; border-color: var(--accent) !important; transform: translateY(-2px) !important; }
.hv5:hover { border-color: var(--accent) !important; transform: translateY(-3px) !important; }
.hv6:hover { transform: translateY(-5px) !important; }
.hv7:hover { transform: translateY(-6px) !important; box-shadow: 0 26px 50px rgba(28,27,25,0.10) !important; border-color: var(--accent) !important; }
.hv8:hover { color: #14313f !important; transform: translateY(-2px) !important; }
.hv9:hover { background: #fffdfa !important; }
.hv10:hover { border-color: var(--accent) !important; }
.hv11:hover { color: #1c1b19 !important; transform: translateY(-6px) !important; box-shadow: 0 26px 50px rgba(28,27,25,0.10) !important; border-color: var(--accent) !important; }
.hv12:hover { color: #faf8f5 !important; border-color: var(--accent) !important; }
.fc1:focus { border-color: var(--accent) !important; }
.hv13:hover { transform: translateY(-2px) !important; filter: brightness(1.1) !important; }
.hv14:hover { color: #faf8f5 !important; }

/* --- navigation, responsive --- */
[hidden] { display: none !important; }
.pp-nav { display: flex; }
.pp-burger { display: none; }
.pp-header.scrolled { border-bottom-color: #e8e1d6 !important; }
@media (max-width: 899px) {
  .pp-nav { display: none; }
  .pp-burger { display: flex; }
}
@media (min-width: 900px) {
  #mobileMenu { display: none !important; }
}
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
