.text-type{display:inline-block;white-space:pre-wrap}.text-type__cursor{margin-left:.25rem;display:inline-block;opacity:1}.text-type__cursor--hidden{display:none}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-wght-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext-wght-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter/inter-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter/inter-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/inter/inter-latin-wght-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/inter/inter-latin-ext-wght-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--background: 0 0% 99%;--foreground: 240 10% 8%;--card: 0 0% 100%;--card-foreground: 240 10% 8%;--popover: 0 0% 100%;--popover-foreground: 240 10% 8%;--primary: 0 0% 13%;--primary-foreground: 0 0% 100%;--brand: 330 81% 50%;--brand-foreground: 0 0% 100%;--accent-warm: 38 92% 50%;--accent-warm-foreground: 0 0% 7%;--secondary: 240 5% 96%;--secondary-foreground: 240 6% 10%;--muted: 240 5% 96%;--muted-foreground: 240 4% 40%;--accent: 240 5% 96%;--accent-foreground: 240 6% 10%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 100%;--warning: 38 92% 50%;--warning-foreground: 0 0% 100%;--success: 142 71% 45%;--success-foreground: 0 0% 100%;--border: 240 6% 90%;--input: 240 6% 90%;--ring: 0 0% 13%;--radius: .75rem;--sidebar-background: 0 0% 98%;--sidebar-foreground: 240 6% 10%;--sidebar-primary: 0 0% 13%;--sidebar-primary-foreground: 0 0% 100%;--sidebar-accent: 240 5% 96%;--sidebar-accent-foreground: 240 6% 10%;--sidebar-border: 240 6% 90%;--sidebar-ring: 0 0% 13%;--transition-smooth: all .2s cubic-bezier(.22, 1, .36, 1);--cat-venues: 350 80% 52%;--cat-events: 25 90% 52%;--cat-marketplace: 142 65% 42%;--cat-places: 211 80% 50%;--cat-hotels: 262 70% 55%;--cat-travel: 190 80% 45%;--cat-news: 45 95% 50%;--cat-community: 330 80% 55%}.dark{--background: 240 10% 4%;--foreground: 0 0% 95%;--card: 240 10% 6%;--card-foreground: 0 0% 95%;--popover: 240 10% 6%;--popover-foreground: 0 0% 95%;--primary: 0 0% 100%;--primary-foreground: 0 0% 100%;--brand: 330 90% 71%;--brand-foreground: 0 0% 7%;--accent-warm: 45 96% 56%;--accent-warm-foreground: 0 0% 7%;--secondary: 240 4% 16%;--secondary-foreground: 0 0% 95%;--muted: 240 4% 16%;--muted-foreground: 240 5% 72%;--accent: 240 4% 16%;--accent-foreground: 0 0% 95%;--destructive: 0 63% 56%;--destructive-foreground: 0 0% 100%;--warning: 38 92% 50%;--warning-foreground: 0 0% 100%;--success: 142 71% 45%;--success-foreground: 0 0% 100%;--border: 240 4% 16%;--input: 240 4% 16%;--ring: 0 0% 100%;--sidebar-background: 240 10% 6%;--sidebar-foreground: 0 0% 95%;--sidebar-primary: 0 0% 100%;--sidebar-primary-foreground: 0 0% 7%;--sidebar-accent: 240 4% 16%;--sidebar-accent-foreground: 0 0% 95%;--sidebar-border: 240 4% 16%;--sidebar-ring: 0 0% 100%;--cat-venues: 350 85% 68%;--cat-events: 25 92% 65%;--cat-marketplace: 142 70% 58%;--cat-places: 211 85% 65%;--cat-hotels: 262 75% 70%;--cat-travel: 190 85% 60%;--cat-news: 45 95% 65%;--cat-community: 330 85% 68%}*,*:before,*:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:hsl(var(--border))}body{margin:0;background-color:hsl(var(--background));color:hsl(var(--foreground));font-feature-settings:"rlig" 1,"calt" 1;animation:fade-in .5s ease-out}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.025em}.gradient-text{color:hsl(var(--foreground));-webkit-text-fill-color:hsl(var(--foreground))}.bg-gradient-primary{background:hsl(var(--primary))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes gradient-drift{0%,to{background-position:0% 50%}25%{background-position:50% 100%}50%{background-position:100% 50%}75%{background-position:50% 0%}}@keyframes reveal-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes content-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes heart-pop{0%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.95)}to{transform:scale(1)}}.animate-fade-in{animation:fade-in .2s ease-out}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.float{animation:float 3s ease-in-out infinite}.scale-in{animation:scale-in .3s cubic-bezier(.22,1,.36,1) both}.content-enter{animation:content-enter .4s cubic-bezier(.22,1,.36,1) both}.heart-pop{animation:heart-pop .35s cubic-bezier(.22,1,.36,1)}.shimmer{background:linear-gradient(90deg,transparent 0%,hsl(var(--brand) / .06) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}.hover-minimal{transition:all .2s ease}.hover-minimal:hover{background-color:hsl(var(--accent))}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.02)}.hover-scale:active{transform:scale(.98)}.story-link{transition:color .2s ease,opacity .2s ease}.story-link:hover{color:hsl(var(--brand));opacity:.85}.reveal-up{animation:reveal-up .7s cubic-bezier(.22,1,.36,1) both}.reveal-delay-1{animation-delay:.12s}.reveal-delay-2{animation-delay:.24s}.reveal-delay-3{animation-delay:.36s}.reveal-delay-4{animation-delay:.48s}.reveal-delay-5{animation-delay:.6s}.hero-gradient{background:linear-gradient(135deg,#fafafa,#fdf2f4,#faf5ff,#f0f9ff,#f0fdf4,#fffbeb 90%,#fafafa);background-size:400% 400%;animation:gradient-drift 30s ease infinite}.dark .hero-gradient{background:linear-gradient(135deg,#0c0c0f,#110c12,#0e0c14,#0c1014,#0c110e,#11100c 90%,#0c0c0f);background-size:400% 400%}.hero-grain:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");background-repeat:repeat;background-size:512px 512px;pointer-events:none}.feature-card-lift{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1)}.feature-card-lift:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 10px 15px -3px #00000014,0 4px 6px -4px #0000000a}.feature-card-lift:active{transform:translateY(-1px) scale(.99)}.card-category-hover{--_cat: var(--cat-venues);transition:all .3s cubic-bezier(.22,1,.36,1)}.card-category-hover:hover{background-color:hsl(var(--foreground))!important;border-color:hsl(var(--foreground))!important}.card-category-hover:hover .cat-hover-title,.card-category-hover:hover .cat-hover-desc{color:hsl(var(--_cat))!important}.card-category-hover:hover .cat-hover-icon-box{background-color:hsl(var(--_cat) / .15)!important}.card-category-hover:hover .cat-hover-icon{color:hsl(var(--_cat))!important}.card-category-hover:hover .cat-hover-arrow{color:hsl(var(--_cat))!important;opacity:1!important;transform:translate(4px)}.card-category-hover .cat-hover-arrow{opacity:0;transition:all .3s cubic-bezier(.22,1,.36,1)}.scroll-reveal{will-change:transform,opacity}.scroll-reveal--up{opacity:0;transform:translateY(16px);transition:opacity var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1),transform var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1)}.scroll-reveal--up.revealed{opacity:1;transform:translateY(0)}.scroll-reveal--down{opacity:0;transform:translateY(-16px);transition:opacity var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1),transform var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1)}.scroll-reveal--down.revealed{opacity:1;transform:translateY(0)}.scroll-reveal--left{opacity:0;transform:translate(-16px);transition:opacity var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1),transform var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1)}.scroll-reveal--left.revealed{opacity:1;transform:translate(0)}.scroll-reveal--right{opacity:0;transform:translate(16px);transition:opacity var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1),transform var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1)}.scroll-reveal--right.revealed{opacity:1;transform:translate(0)}.scroll-reveal--fade{opacity:0;transition:opacity var(--sr-duration, .7s) cubic-bezier(.22,1,.36,1)}.scroll-reveal--fade.revealed{opacity:1}.scroll-reveal.revealed{will-change:auto}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes page-exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.99)}}.page-transition-enter{animation:page-enter .3s cubic-bezier(.22,1,.36,1) both}.page-transition-exit{animation:page-exit .15s cubic-bezier(.4,0,1,1) both}@supports (view-transition-name: none){::view-transition-old(root){animation:page-exit .15s cubic-bezier(.4,0,1,1) both}::view-transition-new(root){animation:page-enter .3s cubic-bezier(.22,1,.36,1) both}}@keyframes shake{0%,to{transform:translate(0)}10%,50%,90%{transform:translate(-4px)}30%,70%{transform:translate(4px)}}@keyframes success-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}@keyframes slide-up-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes badge-bounce{0%{transform:scale(1)}30%{transform:scale(1.3)}60%{transform:scale(.9)}to{transform:scale(1)}}.shake{animation:shake .4s cubic-bezier(.22,1,.36,1)}.success-pop{animation:success-pop .4s cubic-bezier(.34,1.56,.64,1) both}.slide-up-in{animation:slide-up-in .3s cubic-bezier(.22,1,.36,1) both}.slide-down-in{animation:slide-down-in .3s cubic-bezier(.22,1,.36,1) both}.badge-bounce{animation:badge-bounce .4s cubic-bezier(.34,1.56,.64,1)}.img-lazy-fade{opacity:0;transition:opacity .3s cubic-bezier(.22,1,.36,1)}.img-lazy-fade.loaded{opacity:1}.nav-link-animated{position:relative}.nav-link-animated:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:hsl(var(--brand));border-radius:1px;transition:width .3s cubic-bezier(.22,1,.36,1)}.nav-link-animated:hover:after,.nav-link-animated.active:after{width:100%}.content-crossfade-enter{animation:fade-in .3s cubic-bezier(.22,1,.36,1) both}.font-size-small{font-size:.875rem}.font-size-medium{font-size:1rem}.font-size-large{font-size:1.125rem}.font-size-extra-large{font-size:1.25rem}.high-contrast{filter:contrast(150%)}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.enhanced-focus *:focus{outline:3px solid hsl(var(--primary))!important;outline-offset:2px!important}.screen-reader-optimized .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
