.privee {
  --pv-ink: #f2e8df;
  --pv-muted: #c2b3bb;
  --pv-copper: #ffbb92;
  --pv-blue: #a7e7f3;
  color: var(--pv-ink);
  background: #0c0a10;
}
.pv-wrap { width: min(1280px, calc(100% - 2 * clamp(22px, 6vw, 84px))); margin-inline: auto; }
.pv-header, .pv-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  min-height: 76px;
}
.pv-header { border-bottom: 1px solid #d6b9d022; }
.pv-brand { font: 26px Georgia, serif; text-decoration: none; }
.pv-brand:hover, .pv-footer a:hover { color: var(--pv-copper); }
.pv-code { color: var(--pv-blue); font: 11px/1.5 Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; }
.pv-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  min-height: clamp(560px, 70svh, 840px);
  gap: clamp(24px, 5vw, 85px);
  padding-block: 52px 70px;
}
.pv-hero::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at 76% 51%, #3f1b3e7d, transparent 55%),
    radial-gradient(ellipse at 92% 32%, #15405654, transparent 55%);
}
.pv-hero h1 { margin: 17px 0 5px; font-size: clamp(76px, 12vw, 184px); line-height: .9; letter-spacing: -.085em; }
.pv-hero h1 span { color: var(--pv-copper); }
.pv-subtitle { margin: 20px 0 15px; font: italic clamp(25px, 3.1vw, 43px)/1.12 Georgia, serif; color: #f0c8b7; }
.pv-intro { max-width: 38ch; font-size: 16px; line-height: 1.7; color: var(--pv-muted); }
.pv-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 28px; }
.pv-action {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  min-height: 46px;
  padding: 10px 18px;
  border: 1px solid #ffc2a069;
  border-radius: 2px;
  color: var(--pv-ink);
  background: #1c101c;
  font-size: 13px;
  text-decoration: none;
}
.pv-action:hover { background: #392338; border-color: var(--pv-copper); }
.pv-action.primary { background: var(--pv-copper); color: #241319; }
.pv-action.primary:hover { background: #ffcfb1; }
.pv-status { display: flex; align-items: center; gap: 10px; margin-top: 26px; color: var(--pv-muted); font-size: 12px; }
.pv-status::before { content: ''; width: 6px; height: 6px; flex: none; border-radius: 50%; background: var(--pv-copper); box-shadow: 0 0 13px #ffb48c9c; }
.pv-signal { min-width: 0; margin: 0; display: grid; justify-items: center; position: relative; }
.pv-portal { width: min(100%, 540px); aspect-ratio: 1; display: grid; place-items: center; position: relative; }
.pv-portal::before {
  content: '';
  position: absolute;
  inset: 5%;
  border-radius: 50%;
  background: conic-gradient(from 20deg, #a1e9f3, #564fbb00 17%, #76428c 32%, #f8ab8e 55%, #4f283900 74%, #a1e9f3);
  filter: blur(32px);
  opacity: .44;
  animation: pv-orbit 22s linear infinite;
}
.pv-ring {
  position: absolute;
  inset: var(--pv-inset);
  border: 1px solid #e1c4f044;
  border-radius: 50%;
  pointer-events: none;
}
.pv-ring.outer { --pv-inset: 3%; border-style: dashed; border-color: #cfa6d35a; animation: pv-orbit 42s linear infinite; }
.pv-ring.middle { --pv-inset: 10%; border-color: #ffc4a04e; box-shadow: 0 0 34px #f49b7138, inset 0 0 20px #b58cd139; }
.pv-ring.middle::after {
  content: '';
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  background: conic-gradient(transparent 0deg 245deg, #f3a89900 245deg, #f3a899 319deg, #fdf0d5 343deg, transparent 344deg);
  mask-image: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2px));
  filter: drop-shadow(0 0 5px #ffab92);
  animation: pv-orbit 11s linear infinite;
}
.pv-ring.inner { --pv-inset: 20%; border-color: #a7e7f357; animation: pv-orbit 15s linear infinite reverse; }
.pv-ring.inner::before, .pv-ring.outer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 6px;
  height: 6px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: var(--pv-blue);
  box-shadow: 0 0 14px 3px #94e6f7;
}
.pv-ring.outer::before { background: var(--pv-copper); box-shadow: 0 0 13px 2px #ffae82; }
.pv-pulse {
  position: absolute;
  inset: 23%;
  border-radius: 50%;
  border: 1px solid #f6c1cf8a;
  opacity: 0;
  animation: pv-pulse 5s ease-out infinite;
}
.pv-pulse + .pv-pulse { animation-delay: -2.5s; }
.pv-disc {
  position: absolute;
  inset: 24%;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid #fbcaad59;
  background: radial-gradient(circle, #211629, #100c18 65%);
  box-shadow: 0 0 36px #d59feb36, inset 0 0 44px #d4b5eb20;
}
.pv-disc img { width: 58%; height: auto; filter: brightness(0) invert(1) drop-shadow(0 0 12px #eed2f9b3); animation: pv-breathe 5s ease-in-out infinite; }
.pv-wave { position: absolute; width: 105%; height: auto; color: #b1e8f3; opacity: .58; pointer-events: none; }
.pv-wave path { fill: none; stroke: currentColor; stroke-width: 1.2; }
.pv-wave path:last-child { stroke: #fff2e9; stroke-dasharray: 45 790; animation: pv-wave 5s linear infinite; }
.pv-signal figcaption { text-align: center; }
.pv-motion {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 44px; margin-top: 4px; padding: 7px 12px;
  border: 0; background: transparent; color: var(--pv-muted); font: 11px Consolas, monospace;
}
.pv-motion::before {
  content: ''; width: 25px; height: 13px;
  border: 1px solid #ccabbf; border-radius: 12px;
  background: radial-gradient(circle at 6px 50%, #ddc3d2 3px, transparent 3.5px), #221927;
}
.pv-motion[aria-checked="true"]::before {
  border-color: var(--pv-copper);
  background: radial-gradient(circle at calc(100% - 6px) 50%, #281923 3px, transparent 3.5px), var(--pv-copper);
}
.pv-motion:hover { color: var(--pv-blue); }
.privee [hidden] { display: none !important; }
.pv-body { padding-block: clamp(35px, 6vw, 78px); border-top: 1px solid #d6b9d02b; }
.pv-body h2 { margin: 12px 0 22px; font-size: clamp(30px, 5vw, 64px); }
.pv-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.pv-card { min-height: 200px; padding: 22px; border: 1px solid #c9a6ce2e; background: #17101c; }
.pv-card h3 { font: 26px/1.15 Georgia, serif; margin: 26px 0 10px; }
.pv-card p, .pv-access p { color: var(--pv-muted); font-size: 14px; line-height: 1.65; }
.pv-card:hover { border-color: #ffc2a080; }
.pv-access { scroll-margin-top: 24px; }
.pv-access .fan-panel { margin: 0; max-width: none; background: #17101c; }
.pv-access .fan-panel h2 { font-size: clamp(24px, 4vw, 38px); margin-bottom: 20px; }
.pv-access .fan-panel form { min-width: 0; }
.pv-footer { border-top: 1px solid #d6b9d02b; color: var(--pv-muted); font-size: 13px; flex-wrap: wrap; }
.privee :focus-visible { outline: 2px solid var(--pv-blue); outline-offset: 4px; }
@keyframes pv-orbit { to { rotate: 360deg; } }
@keyframes pv-breathe { 50% { opacity: .65; scale: .95; } }
@keyframes pv-pulse { 0% { scale: .85; opacity: 0; } 18% { opacity: .8; } 90%,100% { scale: 1.9; opacity: 0; } }
@keyframes pv-wave { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -835; } }
@media (max-width: 740px) {
  .pv-header { min-height: 61px; }
  .pv-brand { font-size: 21px; }
  .pv-hero { grid-template-columns: 1fr; gap: 32px; min-height: 0; padding-block: 56px 30px; }
  .pv-hero h1 { font-size: clamp(72px, 19vw, 130px); }
  .pv-portal { width: min(90%, 450px); }
  .pv-cards { grid-template-columns: 1fr; }
  .pv-card { min-height: 0; }
}
