@tailwind base;@tailwind components;@tailwind utilities;@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");body,html{max-width:100vw;overflow-x:hidden;height:100%;width:100%;margin:0;padding:0}body{color:#333;background:#ffffff;font-family:Montserrat,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;position:relative;transition:opacity .3s ease-in-out}body.loading{overflow:hidden}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}#__next,.layout-wrapper{min-height:100vh;display:flex;flex-direction:column}main{flex:1 1}main,main>:not(.hero-container){padding-top:80px}.hero-container{margin-top:-80px;height:100vh}a:focus,button:focus{outline:2px solid #e5a923;outline-offset:2px}a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img{max-width:100%;height:auto}@keyframes safariFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.content-reveal{animation:safariFadeIn .5s ease-out}.hidden-content{opacity:0;visibility:hidden;transition:opacity .2s ease-out;pointer-events:none}@keyframes fadeOut{0%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes ambientLight{0%,to{background-color:rgba(25,25,25,.98)}50%{background-color:rgba(35,30,25,.98)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spinWithBounce{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.05)}to{transform:rotate(1turn) scale(1)}}@keyframes pulse{0%{transform:scale(.8) rotate(0deg);opacity:.5}25%{transform:scale(1.05) rotate(90deg);opacity:1}50%{transform:scale(.9) rotate(180deg);opacity:.7}75%{transform:scale(1.05) rotate(270deg);opacity:1}to{transform:scale(.8) rotate(1turn);opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes moveLeft{0%{transform:translateX(100%)}to{transform:translateX(-100%)}}@keyframes moveRight{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes textReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes textGlow{0%{text-shadow:0 0 5px rgba(229,169,35,.1)}50%{text-shadow:0 0 20px rgba(229,169,35,.4)}to{text-shadow:0 0 5px rgba(229,169,35,.1)}}@keyframes dotsAnimation{0%,20%{opacity:0;transform:translateY(3px)}50%{opacity:1;transform:translateY(0)}80%,to{opacity:0;transform:translateY(-3px)}}.loader-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;overflow:hidden;background-color:rgba(25,25,25,.98);opacity:0;animation:fadeIn .2s forwards}.loader-wrapper.is-loading{animation:ambientLight 8s ease-in-out infinite;opacity:1;visibility:visible}.loader-wrapper.is-ending{animation:fadeOut .4s ease-in-out forwards;pointer-events:none}.animal-parade,.loading-active{overflow:hidden}.animal-parade{position:absolute;width:100%;height:100%;opacity:.1}.animal-row{position:absolute;display:flex;align-items:center}.animal-row.left{animation:moveLeft 20s linear infinite}.animal-row.right{animation:moveRight 25s linear infinite}.safari-compass{width:120px;height:120px;position:relative;margin-bottom:30px;animation:float 2s ease-in-out infinite}.compass-outer{width:120px;height:120px;border:5px solid #e5a923;border-radius:50%;position:absolute;animation:spinWithBounce 6s ease-in-out infinite}.compass-outer:before{content:"";position:absolute;width:130px;height:130px;top:-10px;left:-10px;border:2px dashed #bc8a1c;border-radius:50%;opacity:.6;animation:spin 12s linear infinite reverse}.compass-inner{width:90px;height:90px;border:4px solid #a36b17;border-radius:50%;position:absolute;top:15px;left:15px;animation:spin 4s ease-in-out infinite alternate}.compass-inner:after{content:"";position:absolute;width:70px;height:70px;top:10px;left:10px;background:radial-gradient(circle,rgba(229,169,35,.3) 0,rgba(229,169,35,0) 70%);border-radius:50%}.compass-markings{width:100px;height:100px;position:absolute;top:10px;left:10px;animation:pulse 8s linear infinite}.compass-markings:after,.compass-markings:before{content:"";position:absolute;background-color:#bc8a1c}.compass-markings:before{width:2px;height:100px;left:49px;top:0}.compass-markings:after{width:100px;height:2px;left:0;top:49px}.compass-needle{width:6px;height:60px;background:linear-gradient(180deg,#e5a923,#a36b17);position:absolute;top:30px;left:57px;transform-origin:center bottom;animation:pulse 3s ease-in-out infinite}.compass-needle:after{content:"";position:absolute;top:-10px;left:-7px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:16px solid #e5a923}.compass-center{width:18px;height:18px;background:radial-gradient(circle,#a36b17 40%,#7e5213 100%);border-radius:50%;position:absolute;top:51px;left:51px;box-shadow:0 0 8px rgba(0,0,0,.3);z-index:10}.compass-center:after{content:"";position:absolute;width:8px;height:8px;background-color:#e5a923;border-radius:50%;top:5px;left:5px}.direction-marker{position:absolute;font-family:Montserrat,sans-serif;font-size:14px;font-weight:700;color:#e5a923}.direction-north{top:5px}.direction-north,.direction-south{left:50%;transform:translateX(-50%)}.direction-south{bottom:5px}.direction-west{left:5px}.direction-east,.direction-west{top:50%;transform:translateY(-50%)}.direction-east{right:5px}.loading-text{font-family:Montserrat,sans-serif;font-size:24px;color:#e5a923;margin-top:30px;font-weight:600;letter-spacing:2px;animation:textReveal 1s ease-out,textGlow 2s ease-in-out infinite;text-transform:uppercase}.progress-dots{display:flex;justify-content:center;margin-top:15px}.dot{width:8px;height:8px;margin:0 4px;border-radius:50%;background-color:#e5a923;animation:dotsAnimation 1s ease-in-out infinite}.dot:first-child{animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}::-webkit-scrollbar{display:none}html{-ms-overflow-style:none;scrollbar-width:none}