@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,400;6..72,500&display=swap");

:root { color-scheme: dark; font-family: Manrope, Arial, sans-serif; background: #08070a; color: #f4ede5; }
* { box-sizing: border-box; }
html, body { min-height: 100%; margin: 0; }
a { color: inherit; }
.preview { position: relative; display: grid; min-height: 100svh; overflow: hidden; background: #08070a; }
.preview-media, .preview-veil { position: absolute; inset: 0; }
.preview-media { background: #130a12 url("/assets/amaiya-hero-cover-poster.webp") center / cover no-repeat; }
.preview-media video { width: 100%; height: 100%; object-fit: cover; }
.preview-veil { background: linear-gradient(105deg, rgba(8, 7, 10, .82) 0%, rgba(19, 8, 18, .45) 45%, rgba(8, 7, 10, .69) 100%); }
.preview-veil::after { content: ""; position: absolute; inset: -12%; background: radial-gradient(circle at 67% 26%, rgba(198, 91, 125, .25), transparent 36%); animation: arrival-light 8s ease-in-out infinite alternate; }
.preview-content { position: relative; z-index: 1; display: grid; width: min(1240px, calc(100% - 96px)); min-height: 100svh; margin: 0 auto; padding: 36px 0 28px; }
.preview-header, .preview footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.preview-header img { display: block; width: min(292px, 42vw); height: auto; }
.site-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 14px; }.site-nav a, .preview footer a, .text-link { color: rgba(244, 237, 229, .82); font-size: .73rem; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }.site-nav a:hover, .preview footer a:hover, .text-link:hover { color: #f4c3d6; }
.preview section { align-self: center; max-width: 740px; padding: 88px 0; }
h1 { margin: 0; font-family: Newsreader, Georgia, serif; font-size: clamp(4.2rem, 8.6vw, 8.5rem); font-weight: 400; letter-spacing: -.055em; line-height: .89; }
.preview #preview-title { font-family: Manrope, Arial, sans-serif; font-size: clamp(3.75rem, 6.25vw, 6.8rem); font-weight: 650; letter-spacing: -.05em; line-height: .99; }
.preview section > p { max-width: 32rem; margin: 26px 0 0; color: rgba(244, 237, 229, .82); font-size: clamp(1rem, 1.5vw, 1.2rem); line-height: 1.7; }
.arrival { display: flex; align-items: center; gap: 13px; margin-top: 34px; color: #f3c6d6; font-size: .76rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.arrival span { display: inline-flex; gap: 5px; }.arrival i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; animation: arrival-dot 1.6s ease-in-out infinite; }.arrival i:nth-child(2) { animation-delay: .16s; }.arrival i:nth-child(3) { animation-delay: .32s; }
.preview footer { align-self: end; padding-top: 18px; border-top: 1px solid rgba(244, 237, 229, .18); color: rgba(244, 237, 229, .58); font-size: .72rem; }.preview footer nav { display: flex; flex-wrap: wrap; gap: 16px; }
.report-page, .not-found-page { display: grid; min-height: 100svh; background: radial-gradient(circle at 70% 8%, #321322, transparent 35%), #100a10; }
.report-shell { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; width: min(780px, calc(100% - 48px)); min-height: 100svh; margin: 0 auto; padding: 36px 0 28px; }.report-header { display: flex; align-items: center; }.report-header img, .not-found-page img { display: block; width: min(230px, 55vw); height: auto; }
.report-shell article { align-self: center; max-width: 42rem; padding: 28px 0; }.eyebrow { margin: 0 0 18px; color: #f3c6d6; font-size: .72rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.report-shell h1 { font-size: clamp(3.4rem, 7vw, 5.7rem); line-height: .94; }.report-shell article > p:not(.eyebrow) { max-width: 35rem; margin: 22px 0 0; color: rgba(244, 237, 229, .8); font-size: 1rem; line-height: 1.8; }
.contact-button { display: inline-block; margin-top: 28px; padding: 14px 18px; border: 1px solid #f3c6d6; border-radius: 3px; color: #1a0c15; background: #f3c6d6; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }.fine-print { font-size: .82rem !important; }.report-shell footer { padding-top: 0; border-top: 0; }.report-shell footer a { color: rgba(244, 237, 229, .74); font-size: .78rem; text-decoration: none; }
.not-found-page main { align-self: center; width: min(560px, calc(100% - 48px)); margin: 0 auto; }.not-found-page p { margin: 42px 0 12px; color: rgba(244, 237, 229, .82); font-family: Newsreader, Georgia, serif; font-size: clamp(2.5rem, 7vw, 4.6rem); }
.policy-page { background: radial-gradient(circle at 72% 0%, #321322, transparent 30%), #100a10; }.policy-shell { width: min(1120px, calc(100% - 48px)); margin: 0 auto; padding: 36px 0 28px; }.policy-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; }.policy-header img { display: block; width: min(230px, 55vw); height: auto; }.policy-main { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); gap: clamp(36px, 7vw, 100px); padding: 92px 0; }.policy-side { align-self: start; position: sticky; top: 32px; }.policy-side h1 { font-size: clamp(3.5rem, 6vw, 6.2rem); }.policy-side p { color: rgba(244, 237, 229, .7); line-height: 1.7; }.policy-side nav { display: grid; gap: 10px; margin-top: 34px; }.policy-side nav a { color: rgba(244, 237, 229, .74); font-size: .79rem; text-decoration: none; }.policy-side nav a:hover { color: #f3c6d6; }.policy-copy section + section { margin-top: 56px; }.policy-copy h2 { margin: 0 0 15px; color: #f3c6d6; font-size: .76rem; letter-spacing: .11em; text-transform: uppercase; }.policy-copy p, .policy-copy li { color: rgba(244, 237, 229, .82); font-size: 1rem; line-height: 1.85; }.policy-copy p { margin: 0 0 18px; }.policy-copy ul { margin: 0; padding-left: 1.2rem; }.policy-copy li + li { margin-top: 10px; }.policy-footer { display: flex; justify-content: space-between; gap: 20px; padding-top: 18px; border-top: 1px solid rgba(244, 237, 229, .18); color: rgba(244, 237, 229, .58); font-size: .72rem; }.policy-footer nav { display: flex; flex-wrap: wrap; gap: 14px; }.policy-footer a { color: inherit; text-decoration: none; }
.contact-address { margin: 14px 0 0; font-size: .9rem; }.contact-address a { color: rgba(244,237,229,.82); text-decoration: none; }.contact-address a:hover { color: #f3c6d6; }
a:focus-visible { outline: 2px solid #f4c3d6; outline-offset: 5px; }
@keyframes arrival-light { from { transform: translate3d(-2%, -1%, 0); opacity: .55; } to { transform: translate3d(3%, 2%, 0); opacity: 1; } }
@keyframes arrival-dot { 0%, 100% { transform: translateY(0); opacity: .35; } 50% { transform: translateY(-4px); opacity: 1; } }
@media (max-width: 700px) { .preview-content { width: calc(100% - 36px); padding: 28px 0 24px; }.preview-header, .policy-header { align-items: flex-start; flex-direction: column; }.preview-header img { width: min(230px, 52vw); }.site-nav { justify-content: flex-start; }.preview section { align-self: end; padding: 86px 0 72px; }.preview #preview-title { font-size: clamp(3.2rem, 13.5vw, 4.65rem); }.preview-veil { background: linear-gradient(180deg, rgba(8, 7, 10, .2), rgba(8, 7, 10, .88) 72%, rgba(8, 7, 10, .98)); }.preview footer { align-items: flex-start; flex-direction: column; gap: 12px; }.preview footer nav { gap: 14px; }.report-shell, .policy-shell { width: calc(100% - 36px); }.report-shell { padding: 28px 0 24px; }.report-shell article { padding: 36px 0; }.report-shell h1 { font-size: clamp(3.25rem, 15vw, 4.6rem); }.policy-main { grid-template-columns: 1fr; padding: 58px 0; }.policy-side { position: static; }.policy-footer { align-items: flex-start; flex-direction: column; } }
@media (prefers-reduced-motion: reduce) { .preview-media video { display: none; }.preview-veil::after, .arrival i { animation: none; }.arrival i { opacity: .8; } }
