@property --royal-wipe{syntax:'<angle>';inherits:false;initial-value:0deg}
.royal-type{font-family:serif;font-weight:400;letter-spacing:0}
.royal-project{position:absolute;left:39.5%;top:615px;width:26%;height:300px;z-index:3;display:flex;flex-direction:column;align-items:center;transform:rotate(3deg);text-decoration:none}
.royal-stage{position:relative;width:100%;flex:1;display:block;isolation:isolate}
.royal-ship-wrap,.royal-title,.royal-get{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.royal-ship-wrap{mask-image:conic-gradient(from -90deg,transparent 0deg var(--royal-wipe),#000 var(--royal-wipe) 360deg);transform-origin:50% 50%}
.royal-ship{height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 5px 8px #0008)}
.royal-title{font:clamp(34px,3.6vw,60px)/1.04 serif;flex-direction:column;color:#eeeae1;opacity:0;pointer-events:none}
.royal-get{font:clamp(26px,2.7vw,44px)/1.2 serif;color:#eeeae1;opacity:0;pointer-events:none;white-space:nowrap}
.royal-project-label{margin-top:14px;font:14px/1.4 'Home Video',monospace;letter-spacing:1px;color:#c6c1b7;text-align:center}
.royal-project:is(:hover,:focus-visible) .royal-ship-wrap{animation:royal-spiral .95s cubic-bezier(.4,0,.5,1) forwards}
.royal-project:is(:hover,:focus-visible) .royal-title{animation:royal-lettering 2.55s ease-in-out forwards}
.royal-project:is(:hover,:focus-visible) .royal-get{animation:royal-free .5s 2.2s cubic-bezier(.16,1,.3,1) forwards}
@keyframes royal-spiral{
  0%{--royal-wipe:0deg;transform:rotate(0deg) scale(1);filter:blur(0);opacity:1}
  65%{opacity:.8}
  100%{--royal-wipe:360deg;transform:rotate(620deg) scale(.15);filter:blur(6px);opacity:0}
}
@keyframes royal-lettering{
  0%,28%{opacity:0;transform:translateY(16px);filter:blur(4px)}
  40%,72%{opacity:1;transform:translate(0);filter:blur(0)}
  100%{opacity:0;transform:translateX(-90%);filter:blur(4px)}
}
@keyframes royal-free{from{opacity:0;transform:translateX(35%)}to{opacity:1;transform:translateX(0)}}
@media(min-width:1051px){.minimal-view .hero{height:1110px}.minimal-view .social-stickers{right:2%;justify-content:space-between;gap:0}}
@media(min-width:1600px){.minimal-view .hero{height:1220px}.royal-project{top:730px;height:320px}}
@media(min-width:701px) and (max-width:1050px){.minimal-view .hero{height:1140px}.minimal-view .social-stickers{right:2%;justify-content:space-between;gap:0}.royal-project{top:600px;height:270px;width:28%;left:39%}.royal-project-label{font-size:12px}}
@media(max-width:700px){.royal-project{position:relative;left:auto;top:auto;width:min(290px,84%);height:300px;margin:50px auto 0;transform:none}.royal-title{font-size:52px}.royal-get{font-size:36px}}
@media(prefers-reduced-motion:reduce){.royal-project:is(:hover,:focus-visible) .royal-ship-wrap,.royal-project:is(:hover,:focus-visible) .royal-title{animation:none;opacity:0}.royal-project:is(:hover,:focus-visible) .royal-get{animation:none;opacity:1}}
.motion-off .royal-project:is(:hover,:focus-visible) .royal-ship-wrap,.motion-off .royal-project:is(:hover,:focus-visible) .royal-title{animation:none;opacity:0}
.motion-off .royal-project:is(:hover,:focus-visible) .royal-get{animation:none;opacity:1}
.font-page .font-back{font:14px/1.4 'Home Video',monospace;color:#c6c1b7;margin-left:20px}
.font-download-page{max-width:1240px;margin:0 auto;padding:80px 0 60px}
.font-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:60px;align-items:center}
.font-kicker{font:14px/1.6 'Home Video',monospace;color:#bab4a8;letter-spacing:2px;margin:0 0 28px}
.font-page h1{font-size:clamp(72px,8.5vw,145px);line-height:1.02;margin:0 0 28px;color:#eeeae1}
.font-description{font:22px/1.6 'Caslon',serif;max-width:510px;margin:0 0 30px;color:#c7c1b5}
.font-download{display:inline-flex;min-height:64px;padding:20px 25px;gap:45px;font:16px/1.4 'Home Video',monospace;background:#eeeae1;color:#080808;border:1px solid #eeeae1;text-decoration:none;box-shadow:0 5px 10px #0006}
.font-download:hover{background:#ff4b2b;border-color:#ff4b2b}
.font-file-size{font-size:12px;opacity:.6}
.font-format{font:12px/1.7 'Home Video',monospace;color:#939087;margin:17px 0 0;letter-spacing:.5px}
.font-ship{width:100%;height:auto;max-height:540px;object-fit:contain;transform:rotate(4deg);filter:drop-shadow(0 7px 12px #0009)}
.font-specimen{margin-top:85px;padding:45px 0;border-top:1px solid #393834;border-bottom:1px solid #393834}
.font-alphabet{font-size:clamp(26px,4.9vw,74px);line-height:1.6;overflow-wrap:anywhere;margin:0}
.font-numerals{font-size:clamp(36px,5vw,74px);line-height:1.5;margin:20px 0}
.font-specimen-note{font:16px/1.7 'Home Video',monospace;color:#aaa599;max-width:800px;margin:24px 0 0}
.font-install{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:28px;font:14px/1.8 'Home Video',monospace;color:#aaa599}
.font-install p{max-width:680px;margin:0}.font-install a{color:#eeeae1;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}
@media(max-width:700px){.font-page .header{height:100px}.font-page .brand-copy{font-size:11px}.font-page .font-back{font-size:11px}.font-download-page{padding-top:42px}.font-intro{grid-template-columns:1fr;gap:40px}.font-page h1{font-size:clamp(62px,17vw,108px)}.font-description{font-size:20px}.font-ship{width:65%;max-height:360px;margin:auto;grid-row:2}.font-specimen{margin-top:45px}.font-specimen-note{font-size:14px}.font-install{flex-direction:column;align-items:flex-start}.font-download{width:100%;justify-content:space-between}.font-format{font-size:11px}.font-alphabet{font-size:clamp(24px,6.4vw,44px)}}

/* Lettering previews are raster images; the complete OTF stays private. */
.royal-title img{width:95%;height:auto;max-height:86%;object-fit:contain}.royal-get img{width:100%;height:auto;max-height:80%;object-fit:contain}
.royal-heading-art{display:block;width:100%;max-width:590px;height:auto}.font-alphabet img{display:block;width:100%;max-width:1140px;height:auto}.font-numerals img{display:block;width:55%;max-width:580px;height:auto}
.font-purchase-note{font:14px/1.8 'Home Video',monospace;color:#c7c1b5;margin:18px 0 12px}.font-return{font:12px/1.8 'Home Video',monospace;color:#bab4a8;text-underline-offset:4px}
