@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,600;0,700;0,800;0,900;1,500;1,600&family=Inter:wght@400;500;600;700;800&display=swap";@tailwind base;@tailwind components;@tailwind utilities;:root{--gold: #c9a84c}body{margin:0;padding:0;font-family:Inter,sans-serif;background-color:#0d0f14;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html{scroll-behavior:smooth}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#0d0f14}::-webkit-scrollbar-thumb{background:#2a2d36;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#c9a84c}::selection{background:#c9a84c4d;color:#fff}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes heroZoom{0%{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.anim-fade-up{opacity:0;animation:fadeUp .8s cubic-bezier(.22,1,.36,1) forwards}.anim-fade-in{animation:fadeIn .5s ease forwards}.anim-hero-zoom{animation:heroZoom 1.6s cubic-bezier(.22,1,.36,1) forwards}.accordion-grid{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.22,1,.36,1)}.accordion-grid.open{grid-template-rows:1fr}.accordion-grid>div{overflow:hidden}@keyframes conciergeIn{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.concierge-in{animation:conciergeIn .28s cubic-bezier(.22,1,.36,1) both}@keyframes bubbleIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bubble-in{animation:bubbleIn .25s ease-out both}@keyframes conciergePing{0%{transform:scale(1);opacity:.7}70%,to{transform:scale(2.2);opacity:0}}.concierge-ping{animation:conciergePing 1.8s cubic-bezier(0,0,.2,1) infinite}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.typing-dot{animation:typingDot 1.2s infinite}@media (prefers-reduced-motion: reduce){.reveal,.anim-fade-up,.anim-fade-in,.anim-hero-zoom,.concierge-in,.bubble-in,.concierge-ping,.typing-dot{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}
