@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,900;1,400;1,600&family=Inter:wght@300;400;500;600;700&display=swap');



:root {
  --ink: #0A0D14;
  --ink-2: #10141F;
  --parchment: #F4EDE1;
  --gold: #C9A227;
  --gold-soft: #E0B84C;
  --terracotta: #B4552D;
  --sage: #2E6B63;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--ink);
  color: var(--parchment);
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.font-display {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
}

::selection {
  background: rgba(201, 162, 39, 0.35);
  color: #ffffff;
}

::-webkit-scrollbar {
  width: 10px;
}
::-webkit-scrollbar-track {
  background: #0A0D14;
}
::-webkit-scrollbar-thumb {
  background: #2a2f3d;
  border-radius: 999px;
}
::-webkit-scrollbar-thumb:hover {
  background: #3a4152;
}

@keyframes aurora {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: 0.5; }
  50% { transform: translate3d(40px, -30px, 0) scale(1.15); opacity: 0.8; }
}
.animate-aurora { animation: aurora 18s ease-in-out infinite; }
.animate-aurora-slow { animation: aurora 26s ease-in-out infinite reverse; }

@keyframes spin-slow {
  to { transform: rotate(360deg); }
}
.animate-spin-slow { animation: spin-slow 70s linear infinite; }

@keyframes marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
.animate-marquee { animation: marquee 45s linear infinite; }

@keyframes float-y {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
}
.animate-float { animation: float-y 6s ease-in-out infinite; }

@keyframes pulse-dot {
  0%, 100% { opacity: 0.35; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.35); }
}
.animate-pulse-dot { animation: pulse-dot 2.4s ease-in-out infinite; }

@media (prefers-reduced-motion: reduce) {
  .animate-aurora,
  .animate-aurora-slow,
  .animate-spin-slow,
  .animate-marquee,
  .animate-float,
  .animate-pulse-dot {
    animation: none !important;
  }
  html { scroll-behavior: auto; }
}

*, *::before, *::after { box-sizing: border-box; border-width: 0; border-style: solid; border-color: currentColor; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; line-height: 1.5; font-family: var(--font-sans, ui-sans-serif, system-ui, sans-serif); }
body { line-height: inherit; min-height: 100%; }
img, svg, video, canvas { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; color: inherit; background: transparent; }
button { cursor: pointer; }
a { color: inherit; text-decoration: inherit; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
ul, ol { list-style: none; padding: 0; }
table { border-collapse: collapse; }

@keyframes nx-spin { to { transform: rotate(360deg); } }
@keyframes nx-ping { 75%, 100% { transform: scale(2); opacity: 0; } }
@keyframes nx-pulse { 50% { opacity: 0.5; } }
@keyframes nx-bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8,0,1,1); } 50% { transform: none; animation-timing-function: cubic-bezier(0,0,0.2,1); } }

.relative { position:relative }
.bg-\[\#0A0D14\] { background-color:#0A0D14 }
.py-24 { padding-top:6rem; padding-bottom:6rem }
.mx-auto { margin-left:auto; margin-right:auto }
.max-w-7xl { max-width:80rem }
.px-6 { padding-left:1.5rem; padding-right:1.5rem }
.max-w-2xl { max-width:42rem }
.text-xs { font-size:0.75rem; line-height:1rem }
.font-medium { font-weight:500 }
.uppercase { text-transform:uppercase }
.tracking-\[0\.28em\] { letter-spacing:0.28em }
.text-\[\#C9A227\] { color:#C9A227 }
.mt-4 { margin-top:1rem }
.text-4xl { font-size:2.25rem; line-height:2.5rem }
.font-bold { font-weight:700 }
.leading-tight { line-height:1.25 }
.text-\[\#F4EDE1\] { color:#F4EDE1 }
.mt-5 { margin-top:1.25rem }
.text-lg { font-size:1.125rem; line-height:1.75rem }
.leading-relaxed { line-height:1.625 }
.mt-20 { margin-top:5rem }
.absolute { position:absolute }
.bottom-2 { bottom:0.5rem }
.left-\[7px\] { left:7px }
.top-2 { top:0.5rem }
.w-px { width:1px }
.bg-gradient-to-b { background-image:linear-gradient(to bottom, var(--tw-gradient-stops, transparent)) }
.from-transparent { --tw-gradient-from:transparent; --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, transparent) }
.to-transparent { --tw-gradient-to:transparent }
.space-y-12 > * + * { margin-top:3rem }
.left-0 { left:0rem }
.grid { display:grid }
.h-4 { height:1rem }
.w-4 { width:1rem }
.place-items-center { place-items:center }
.rounded-full { border-radius:9999px }
.border-2 { border-width:2px; border-style:solid }
.border-\[\#C9A227\] { border-color:#C9A227 }
.shadow-\[0_0_0_6px_rgba\(201\,162\,39\,0\.12\)\] { --tw-shadow-color:0 0 0 6px rgba(201,162,39,0.12) }
.h-10 { height:2.5rem }
.w-10 { width:2.5rem }
.shrink-0 { flex-shrink:0 }
.rounded-xl { border-radius:0.75rem }
.border { border-width:1px; border-style:solid; border-color:var(--tw-border-color, currentColor) }
.text-\[\#E0B84C\] { color:#E0B84C }
.h-5 { height:1.25rem }
.w-5 { width:1.25rem }
.font-mono { font-family:var(--font-mono, ui-monospace, SFMono-Regular, monospace) }
.tracking-\[0\.14em\] { letter-spacing:0.14em }
.text-2xl { font-size:1.5rem; line-height:2rem }
.font-semibold { font-weight:600 }
.mt-3 { margin-top:0.75rem }
.text-sm { font-size:0.875rem; line-height:1.25rem }
.bg-\[\#10141F\] { background-color:#10141F }
.flex { display:flex }
.flex-col { flex-direction:column }
.gap-6 { gap:1.5rem }
.max-w-sm { max-width:24rem }
.text-base { font-size:1rem; line-height:1.5rem }
.mt-16 { margin-top:4rem }
.h-full { height:100% }
.overflow-hidden { overflow:hidden }
.rounded-2xl { border-radius:1rem }
.border-white\/10 { border-color:color-mix(in oklab, #ffffff 10%, transparent) }
.p-6 { padding:1.5rem }
.transition-all { transition-property:all; transition-duration:150ms; transition-timing-function:cubic-bezier(0.4,0,0.2,1) }
.duration-500 { transition-duration:500ms }
.hover\:hover:-translate-y-2 { --tw-ty:-0.5rem; transform:translate(var(--tw-tx,0),-0.5rem) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.hover\:hover:border-white\/20 { border-color:color-mix(in oklab, #ffffff 20%, transparent) }
.pointer-events-none { pointer-events:none }
.-right-16 { right:-4rem }
.-top-16 { top:-4rem }
.h-40 { height:10rem }
.w-40 { width:10rem }
.opacity-0 { opacity:0 }
.blur-3xl { filter:blur(64px) }
.transition-opacity { transition-property:opacity; transition-duration:150ms; transition-timing-function:cubic-bezier(0.4,0,0.2,1) }
.group:hover .group-hover\:opacity-40 { opacity:0.4 }
.h-12 { height:3rem }
.w-12 { width:3rem }
.transition-transform { transition-property:transform; transition-duration:150ms; transition-timing-function:cubic-bezier(0.4,0,0.2,1) }
.group:hover .group-hover\:scale-110 { --tw-scale:1.1; transform:translate(var(--tw-tx,0),var(--tw-ty,0)) rotate(var(--tw-rotate,0deg)) scale(1.1) }
.h-6 { height:1.5rem }
.w-6 { width:1.5rem }
.text-\[11px\] { font-size:11px }
.mt-2 { margin-top:0.5rem }
.text-xl { font-size:1.25rem; line-height:1.75rem }
.hover\:hover:shadow-\[0_30px_80px_-40px_rgba\(201\,162\,39\,0\.7\)\] { --tw-shadow-color:0 30px 80px -40px rgba(201,162,39,0.7) }
.focus-visible\:focus-visible:outline-none { outline:2px solid transparent; outline-offset:2px }
.focus-visible\:focus-visible:ring-2 { box-shadow:0 0 0 2px var(--tw-ring-color, oklch(62.3% 0.214 259.815)) }
.focus-visible\:focus-visible:ring-\[\#C9A227\] { --tw-ring-color:#C9A227 }
.inset-0 { top:0rem; right:0rem; bottom:0rem; left:0rem }
.left-5 { left:1.25rem }
.top-5 { top:1.25rem }
.border-white\/20 { border-color:color-mix(in oklab, #ffffff 20%, transparent) }
.px-3 { padding-left:0.75rem; padding-right:0.75rem }
.py-1 { padding-top:0.25rem; padding-bottom:0.25rem }
.tracking-\[0\.16em\] { letter-spacing:0.16em }
.backdrop-blur { backdrop-filter:blur(8px) }
.flex-1 { flex:1 1 0% }
.leading-snug { line-height:1.375 }
.transition-colors { transition-property:color,background-color,border-color,fill,stroke; transition-duration:150ms; transition-timing-function:cubic-bezier(0.4,0,0.2,1) }
.duration-300 { transition-duration:300ms }
.group:hover .group-hover\:text-\[\#E0B84C\] { color:#E0B84C }
.mt-6 { margin-top:1.5rem }
.items-center { align-items:center }
.justify-between { justify-content:space-between }
.border-t { border-top-width:1px; border-top-style:solid }
.pt-4 { padding-top:1rem }
.inline-flex { display:inline-flex }
.gap-2 { gap:0.5rem }
.h-3\.5 { height:0.875rem }
.w-3\.5 { width:0.875rem }
.gap-1 { gap:0.25rem }
.group:hover .group-hover\:translate-x-0\.5 { --tw-tx:0.125rem; transform:translate(0.125rem,var(--tw-ty,0)) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.group:hover .group-hover\:-translate-y-0\.5 { --tw-ty:-0.125rem; transform:translate(var(--tw-tx,0),-0.125rem) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.bg-\[\#FBF7EF\] { background-color:#FBF7EF }
.shadow-\[0_2px_20px_-12px_rgba\(10\,13\,20\,0\.35\)\] { --tw-shadow-color:0 2px 20px -12px rgba(10,13,20,0.35) }
.hover\:hover:-translate-y-1\.5 { --tw-ty:-0.375rem; transform:translate(var(--tw-tx,0),-0.375rem) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.hover\:hover:shadow-\[0_30px_70px_-40px_rgba\(10\,13\,20\,0\.55\)\] { --tw-shadow-color:0 30px 70px -40px rgba(10,13,20,0.55) }
.aspect-\[4\/5\] { aspect-ratio:4/5 }
.bg-\[\#E7DCC9\] { background-color:#E7DCC9 }
.w-full { width:100% }
.justify-center { justify-content:center }
.text-5xl { font-size:3rem; line-height:1.1 }
.opacity-100 { opacity:1 }
.inset-x-0 { left:0rem; right:0rem }
.bottom-0 { bottom:0rem }
.h-2\/5 { height:40% }
.bg-gradient-to-t { background-image:linear-gradient(to top, var(--tw-gradient-stops, transparent)) }
.from-\[\#0A0D14\] { --tw-gradient-from:#0A0D14; --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, transparent) }
.top-0 { top:0rem }
.h-20 { height:5rem }
.left-4 { left:1rem }
.top-4 { top:1rem }
.gap-1\.5 { gap:0.375rem }
.border-white\/30 { border-color:color-mix(in oklab, #ffffff 30%, transparent) }
.text-\[10px\] { font-size:10px }
.tracking-\[0\.2em\] { letter-spacing:0.2em }
.h-3 { height:0.75rem }
.w-3 { width:0.75rem }
.inset-x-4 { left:1rem; right:1rem }
.bottom-4 { bottom:1rem }
.mt-1 { margin-top:0.25rem }
.italic { font-style:italic }
.text-\[\#B4552D\] { color:#B4552D }
.gap-3 { gap:0.75rem }
.px-4 { padding-left:1rem; padding-right:1rem }
.py-2\.5 { padding-top:0.625rem; padding-bottom:0.625rem }
.text-\[\#0A0D14\] { color:#0A0D14 }
.hover\:hover:border-\[\#C9A227\] { border-color:#C9A227 }
.focus-visible\:focus-visible:ring-\[\#B4552D\] { --tw-ring-color:#B4552D }
.rotate-180 { --tw-rotate:180deg; transform:translate(var(--tw-tx,0),var(--tw-ty,0)) rotate(180deg) scale(var(--tw-scale,1)) }
.pt-5 { padding-top:1.25rem }
.mb-3 { margin-bottom:0.75rem }
.last\:last-child:mb-0 { margin-bottom:0rem }
.tracking-\[0\.24em\] { letter-spacing:0.24em }
.space-y-2\.5 > * + * { margin-top:0.625rem }
.mt-1\.5 { margin-top:0.375rem }
.h-1\.5 { height:0.375rem }
.w-1\.5 { width:0.375rem }
.rotate-45 { --tw-rotate:45deg; transform:translate(var(--tw-tx,0),var(--tw-ty,0)) rotate(45deg) scale(var(--tw-scale,1)) }
.bg-\[\#C9A227\] { background-color:#C9A227 }
.bg-\[\#F4EDE1\] { background-color:#F4EDE1 }
.gap-8 { gap:2rem }
.py-4 { padding-top:1rem; padding-bottom:1rem }
.text-3xl { font-size:1.875rem; line-height:2.25rem }
.mt-12 { margin-top:3rem }
.flex-wrap { flex-wrap:wrap }
.border-\[\#0A0D14\] { border-color:#0A0D14 }
.hover\:hover:text-\[\#0A0D14\] { color:#0A0D14 }
.mt-10 { margin-top:2.5rem }
.min-h-screen { min-height:100vh }
.antialiased { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale }
.translate-y-0 { --tw-ty:0rem; transform:translate(var(--tw-tx,0),0rem) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.translate-y-8 { --tw-ty:2rem; transform:translate(var(--tw-tx,0),2rem) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.pt-28 { padding-top:7rem }
.pb-20 { padding-bottom:5rem }
.-left-32 { left:-8rem }
.-top-40 { top:-10rem }
.h-\[36rem\] { height:36rem }
.w-\[36rem\] { width:36rem }
.blur-\[120px\] { filter:blur(120px) }
.-right-40 { right:-10rem }
.top-1\/3 { top:33.33333333333333% }
.h-\[32rem\] { height:32rem }
.w-\[32rem\] { width:32rem }
.blur-\[130px\] { filter:blur(130px) }
.left-1\/3 { left:33.33333333333333% }
.h-\[24rem\] { height:24rem }
.w-\[24rem\] { width:24rem }
.-right-24 { right:-6rem }
.top-1\/2 { top:50% }
.hidden { display:none }
.h-\[42rem\] { height:42rem }
.w-\[42rem\] { width:42rem }
.-translate-y-1\/2 { --tw-ty:-50%; transform:translate(var(--tw-tx,0),-50%) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.opacity-60 { opacity:0.6 }
.max-w-3xl { max-width:48rem }
.mb-8 { margin-bottom:2rem }
.py-2 { padding-top:0.5rem; padding-bottom:0.5rem }
.h-2 { height:0.5rem }
.w-2 { width:0.5rem }
.bg-\[\#E0B84C\] { background-color:#E0B84C }
.leading-\[1\.05\] { line-height:1.05 }
.tracking-tight { letter-spacing:-0.025em }
.bg-gradient-to-r { background-image:linear-gradient(to right, var(--tw-gradient-stops, transparent)) }
.from-\[\#E0B84C\] { --tw-gradient-from:#E0B84C; --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, transparent) }
.via-\[\#C9A227\] { --tw-gradient-via:#C9A227; --tw-gradient-stops:var(--tw-gradient-from, transparent), var(--tw-gradient-via), var(--tw-gradient-to, transparent) }
.to-\[\#B4552D\] { --tw-gradient-to:#B4552D }
.text-transparent { color:transparent }
.mt-8 { margin-top:2rem }
.max-w-xl { max-width:36rem }
.gap-4 { gap:1rem }
.px-7 { padding-left:1.75rem; padding-right:1.75rem }
.py-3\.5 { padding-top:0.875rem; padding-bottom:0.875rem }
.hover\:hover:bg-\[\#E0B84C\] { background-color:#E0B84C }
.hover\:hover:shadow-\[0_0_40px_-8px_rgba\(201\,162\,39\,0\.7\)\] { --tw-shadow-color:0 0 40px -8px rgba(201,162,39,0.7) }
.focus-visible\:focus-visible:ring-\[\#E0B84C\] { --tw-ring-color:#E0B84C }
.group:hover .group-hover\:rotate-90 { --tw-rotate:90deg; transform:translate(var(--tw-tx,0),var(--tw-ty,0)) rotate(90deg) scale(var(--tw-scale,1)) }
.border-white\/15 { border-color:color-mix(in oklab, #ffffff 15%, transparent) }
.hover\:hover:bg-white\/5 { background-color:color-mix(in oklab, #ffffff 5%, transparent) }
.max-w-lg { max-width:32rem }
.grid-cols-3 { grid-template-columns:repeat(3, minmax(0, 1fr)) }
.pt-8 { padding-top:2rem }
.bottom-8 { bottom:2rem }
.left-1\/2 { left:50% }
.-translate-x-1\/2 { --tw-tx:-50%; transform:translate(-50%,var(--tw-ty,0)) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
.hover\:hover:text-\[\#E0B84C\] { color:#E0B84C }
.tracking-\[0\.3em\] { letter-spacing:0.3em }
.border-b { border-bottom-width:1px; border-bottom-style:solid }
.backdrop-blur-xl { backdrop-filter:blur(24px) }
.border-transparent { border-color:transparent }
.bg-transparent { background-color:transparent }
.block { display:block }
.tracking-wide { letter-spacing:0.025em }
.rounded { border-radius:0.25rem }
.px-5 { padding-left:1.25rem; padding-right:1.25rem }
.hover\:hover:bg-\[\#C9A227\] { background-color:#C9A227 }
.max-h-96 { max-height:24rem }
.max-h-0 { max-height:0rem }
.rounded-lg { border-radius:0.5rem }
.py-3 { padding-top:0.75rem; padding-bottom:0.75rem }
.border-y { border-top-width:1px; border-top-style:solid; border-bottom-width:1px; border-bottom-style:solid }
.py-5 { padding-top:1.25rem; padding-bottom:1.25rem }
.inset-y-0 { top:0rem; bottom:0rem }
.z-10 { z-index:10 }
.w-24 { width:6rem }
.from-\[\#10141F\] { --tw-gradient-from:#10141F; --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, transparent) }
.right-0 { right:0rem }
.bg-gradient-to-l { background-image:linear-gradient(to left, var(--tw-gradient-stops, transparent)) }
.w-max { width:max-content }
.gap-10 { gap:2.5rem }
.max-w-4xl { max-width:56rem }
.text-center { text-align:center }
.text-7xl { font-size:4.5rem; line-height:1.05 }
.leading-none { line-height:1 }
.h-px { height:1px }
.w-16 { width:4rem }
.h-\[28rem\] { height:28rem }
.w-\[28rem\] { width:28rem }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border-width:0 }
.bg-white\/5 { background-color:color-mix(in oklab, #ffffff 5%, transparent) }
.focus\:focus:border-\[\#C9A227\] { border-color:#C9A227 }
.focus\:focus:outline-none { outline:2px solid transparent; outline-offset:2px }
.focus\:focus:ring-2 { box-shadow:0 0 0 2px var(--tw-ring-color, oklch(62.3% 0.214 259.815)) }
.text-\[\#7FB3A8\] { color:#7FB3A8 }
.py-16 { padding-top:4rem; padding-bottom:4rem }
.gap-12 { gap:3rem }
.max-w-xs { max-width:20rem }
.tracking-\[0\.22em\] { letter-spacing:0.22em }
.space-y-3 > * + * { margin-top:0.75rem }
.mt-14 { margin-top:3.5rem }

@media (min-width: 640px) {
  .sm\:text-5xl { font-size:3rem; line-height:1.1 }
  .sm\:grid-cols-2 { grid-template-columns:repeat(2, minmax(0, 1fr)) }
  .sm\:text-6xl { font-size:3.75rem; line-height:1.1 }
  .sm\:text-4xl { font-size:2.25rem; line-height:2.5rem }
  .sm\:flex-row { flex-direction:row }
}

@media (min-width: 768px) {
  .md\:left-1\/2 { left:50% }
  .md\:-translate-x-1\/2 { --tw-tx:-50%; transform:translate(-50%,var(--tw-ty,0)) rotate(var(--tw-rotate,0deg)) scale(var(--tw-scale,1)) }
  .md\:space-y-0 > * + * { margin-top:0rem }
  .md\:grid { display:grid }
  .md\:grid-cols-2 { grid-template-columns:repeat(2, minmax(0, 1fr)) }
  .md\:gap-16 { gap:4rem }
  .md\:py-8 { padding-top:2rem; padding-bottom:2rem }
  .md\:pr-4 { padding-right:1rem }
  .md\:text-right { text-align:right }
  .md\:pl-4 { padding-left:1rem }
  .md\:ml-auto { margin-left:auto }
  .md\:flex-row-reverse { flex-direction:row-reverse }
  .md\:flex-row { flex-direction:row }
  .md\:items-end { align-items:flex-end }
  .md\:justify-between { justify-content:space-between }
  .md\:flex { display:flex }
  .md\:inline-block { display:inline-block }
  .md\:hidden { display:none }
}

@media (min-width: 1024px) {
  .lg\:py-32 { padding-top:8rem; padding-bottom:8rem }
  .lg\:px-10 { padding-left:2.5rem; padding-right:2.5rem }
  .lg\:grid-cols-4 { grid-template-columns:repeat(4, minmax(0, 1fr)) }
  .lg\:grid-cols-3 { grid-template-columns:repeat(3, minmax(0, 1fr)) }
  .lg\:flex-row { flex-direction:row }
  .lg\:items-end { align-items:flex-end }
  .lg\:justify-between { justify-content:space-between }
  .lg\:block { display:block }
  .lg\:text-7xl { font-size:4.5rem; line-height:1.05 }
  .lg\:text-5xl { font-size:3rem; line-height:1.1 }
}
