@supports (-webkit-touch-callout:none){.touch-hover{cursor:pointer}.safari-fixed-fix{position:sticky!important;transform:translateZ(0)}.safari-flex-gap-fix{margin-right:var(--gap-fallback,1rem)}.safari-flex-gap-fix:last-child{margin-right:0}.ios-vh-fix{height:100%;height:-webkit-fill-available}.ios-touch-target{padding:.75rem;margin:-.75rem}}@media not all and (min-resolution:.001dpcm){@supports (-webkit-appearance:none){.safari-flickering-fix{transform:translateZ(0);backface-visibility:hidden}}}@media (hover:none){.touch-optimized{min-height:48px;min-width:48px}.touch-always-visible{opacity:1!important;visibility:visible!important}}@media only screen and (min-device-width:768px) and (max-device-width:1024px){.ipad-scroll-fix{-webkit-overflow-scrolling:touch}.ipad-menu{transform:none!important;transition:opacity .2s ease-in-out!important}.ipad-focus-fix:focus{outline:auto!important}}@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:landscape){.ipad-landscape-padding{padding-bottom:env(safe-area-inset-bottom,20px)}}@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:portrait){.ipad-portrait-fix{max-height:calc(100vh - 60px)}}@supports (padding:max(0px)){.safe-area-padding-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom,0))}.safe-area-margin-bottom{margin-bottom:max(1rem,env(safe-area-inset-bottom,0))}.safe-area-padding-top{padding-top:max(1rem,env(safe-area-inset-top,0))}.safe-area-padding-x{padding-left:max(1rem,env(safe-area-inset-left,1rem));padding-right:max(1rem,env(safe-area-inset-right,1rem))}}@media screen and (-webkit-min-device-pixel-ratio:0){.chrome-ios-select-fix{-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1em}}@media (min-resolution:192dpi){.retina-optimized-image{image-rendering:-webkit-optimize-contrast}}@supports not (display:grid){.grid-fallback{display:flex;flex-wrap:wrap}.grid-fallback>*{flex:1 1 300px;margin:.5rem}}@supports not (gap:1rem){.flex-gap-fallback{margin:-.5rem}.flex-gap-fallback>*{margin:.5rem}}.bg-white.dark:bg-[\#121212].rounded-xl.overflow-hidden.shadow-lg,.bg-white.dark:bg-[\#1a1a1a].rounded-xl.overflow-hidden.shadow-lg,.card{transition:all .3s ease-in-out;position:relative;overflow:hidden}.bg-white.dark:bg-[\#121212].rounded-xl.overflow-hidden.shadow-lg:hover,.bg-white.dark:bg-[\#1a1a1a].rounded-xl.overflow-hidden.shadow-lg:hover,.card:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,.15),0 5px 15px rgba(0,0,0,.08);border-color:rgba(59,130,246,.5)}.button-blue,.card a,.inline-flex.items-center.bg-blue-600{position:relative;overflow:hidden;z-index:5;transition:all .3s cubic-bezier(.4,0,.2,1)}.button-blue:before,.card a:before,.inline-flex.items-center.bg-blue-600:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.1);border-radius:50%;transform:translate(-50%,-50%);transition:all .5s ease;z-index:-1}.button-blue:hover:before,.card a:hover:before,.inline-flex.items-center.bg-blue-600:hover:before{width:300%;height:300%}.bg-gradient-to-t.from-black\/80,.bg-gradient-to-t.from-black\/90{opacity:.85;transition:opacity .3s ease}.group:hover .bg-gradient-to-t.from-black\/80,.group:hover .bg-gradient-to-t.from-black\/90{opacity:.95}@media (prefers-reduced-motion:no-preference){.sound-effect{transition:transform .1s}.sound-effect:active{transform:scale(.98)}}.product-card .buttons-container{position:relative;z-index:30;opacity:.95;transform:translateY(5px);transition:all .3s ease}.product-card:hover .buttons-container{opacity:1;transform:translateY(0)}.service-card{transition:all .3s ease}.service-card:hover{transform:translateY(-5px)}.bg-gradient-to-r.from-blue-900\/80.to-black\/50,.bg-gradient-to-t.from-black\/90.via-black\/60.to-blue-900\/30{opacity:.9}.dark{background-color:#121212!important;color:#e5e7eb!important}.dark .bg-gray-100,.dark .bg-gray-50,.dark .bg-white{background-color:#1a1a1a!important}.dark header .text-gray-600,.dark header a,.dark header button{color:rgba(229,231,235,.9)!important}.dark header .text-gray-600:hover,.dark header a:hover,.dark header button:hover{color:#ffffff!important}.dark a[href="/auth/login"] button,.dark a[href="/auth/register"] button,.dark button[aria-label=Menu]{background-color:rgba(26,26,26,.9)!important;color:white!important;border-color:rgba(75,85,99,.5)!important}.dark a[href="/auth/login"] button:hover,.dark a[href="/auth/register"] button:hover,.dark button[aria-label=Menu]:hover{background-color:rgba(38,38,38,.9)!important;border-color:rgba(59,130,246,.5)!important}.dark header a.rounded-full,.dark header button.rounded-full{background-color:rgba(26,26,26,.8)!important;border-color:rgba(75,85,99,.5)!important}.dark .bg-blue-600{background-color:#2563eb!important}.dark .hover\:bg-blue-700:hover{background-color:#1d4ed8!important}.dark .border-blue-600{border-color:#3b82f6!important}.dark .text-blue-600{color:#60a5fa!important}.dark .bg-gradient-to-r.from-blue-600.to-blue-500,.dark .bg-gradient-to-r.from-blue-600.to-blue-700{background:linear-gradient(90deg,#1e40af,#3b82f6)!important}.dark .hover\:bg-gray-100:hover{background-color:rgba(38,38,38,.8)!important}.dark .bg-white.dark\:bg-\[\#121212\].rounded-xl,.dark .bg-white.dark\:bg-\[\#1a1a1a\].rounded-xl,.dark .bg-white.rounded-xl,.dark .card{background-color:#1a1a1a!important;border-color:rgba(55,65,81,.5)!important}.dark .bg-white.dark\:bg-\[\#121212\].rounded-xl:hover,.dark .bg-white.dark\:bg-\[\#1a1a1a\].rounded-xl:hover,.dark .bg-white.rounded-xl:hover,.dark .card:hover{border-color:rgba(59,130,246,.4)!important}.dark .text-gray-600{color:rgba(229,231,235,.8)!important}.dark .text-gray-500{color:rgba(229,231,235,.7)!important}.dark .text-gray-700{color:rgba(229,231,235,.9)!important}.dark .text-gray-800{color:rgba(255,255,255,.95)!important}.dark .card-highlight{box-shadow:0 0 20px 1px rgba(59,130,246,.3)!important}.dark .card-highlight-soon{box-shadow:0 0 20px 1px rgba(234,88,12,.3)!important}.text-shadow{text-shadow:0 2px 4px rgba(0,0,0,.5)}.text-shadow-sm{text-shadow:0 1px 2px rgba(0,0,0,.3)}.text-shadow-lg{text-shadow:0 4px 8px rgba(0,0,0,.7)}.text-white,.text-white span,.text-white\/90,h1.text-white,h2.text-white,h3.text-white,h4.text-white,p.text-white,span.text-white{text-shadow:0 2px 4px rgba(0,0,0,.5)}.h-\[50vh\] .text-white,.h-\[70vh\] .text-white,.hero h1,.hero h2,.hero p{text-shadow:0 2px 6px rgba(0,0,0,.6)}.card p,.product-card p,.service-card p{text-shadow:0 1px 3px rgba(0,0,0,.4)}.absolute.bottom-4.left-4.text-2xl.font-semibold.text-white,.absolute.bottom-4.left-4.text-xl.font-semibold.text-white,.block.h-full .overflow-hidden .relative h3{text-shadow:0 2px 5px rgba(0,0,0,.8)}.text-blue-300,.text-blue-400,.text-blue-500{text-shadow:0 0 5px rgba(59,130,246,.3)}.text-green-300,.text-green-400,.text-green-500{text-shadow:0 0 5px rgba(16,185,129,.3)}.bg-blue-600,.bg-blue-700,.bg-gradient-to-br,.bg-gradient-to-r,a.text-white,button.text-white{text-shadow:0 1px 2px rgba(0,0,0,.3)}.absolute.inset-0.bg-gradient-to-t.from-black\/70.to-transparent,.bg-gradient-to-t.from-black\/80,.bg-gradient-to-t.from-black\/90{--tw-gradient-from:rgb(0 0 0/0.95)!important;--tw-gradient-to:transparent!important;--tw-gradient-stops:var(--tw-gradient-from),rgb(0 0 0/0.7),var(--tw-gradient-to)!important;opacity:.85!important}.bg-gradient-to-r.from-blue-900\/80.to-black\/50{--tw-gradient-from:rgb(30 58 138/0.9)!important;--tw-gradient-to:rgb(0 0 0/0.7)!important;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)!important}section.relative.h-\[70vh\]{height:60vh!important;min-height:450px}section.relative.h-\[50vh\]{height:45vh!important;min-height:350px}.h-\[50vh\] .flex.flex-col.justify-end.pb-20,.h-\[70vh\] .flex.flex-col.justify-end.pb-20{padding-bottom:2.5rem!important}.h-\[50vh\] .container.flex.flex-col.justify-center,.h-\[70vh\] .container.flex.flex-col.justify-center{justify-content:flex-end!important;padding-bottom:3rem!important}.block.h-full .overflow-hidden .relative.h-48 .absolute.inset-0.bg-gradient-to-t.from-black\/70.to-transparent,.block.h-full .overflow-hidden .relative.h-60 .absolute.inset-0.bg-gradient-to-t.from-black\/80.to-transparent{--tw-gradient-from:rgb(0 0 0/0.95)!important;--tw-gradient-stops:var(--tw-gradient-from),rgb(0 0 0/0.6),transparent!important}a.bg-white,button.bg-white{box-shadow:0 1px 3px rgba(0,0,0,.1)!important}.bg-gradient-to-r,a.bg-blue-600,button.bg-blue-600{box-shadow:0 2px 5px rgba(0,0,0,.2)!important}.text-shadow,.text-white h1,.text-white h2,.text-white h3,.text-white p,.text-white span,h1.text-white,h2.text-white,h3.text-white,p.text-white,span.text-white{text-shadow:0 2px 4px rgba(0,0,0,.5)}.h-\[50vh\] .text-white,.h-\[70vh\] .text-white{text-shadow:0 2px 8px rgba(0,0,0,.7)}.card h2,.card h3,.product-card h2,.product-card h3,.service-card h2,.service-card h3{text-shadow:0 2px 4px rgba(0,0,0,.7)}.card p,.product-card p,.service-card p{text-shadow:0 1px 3px rgba(0,0,0,.5)}.theme-switch{--toggle-size:15px;display:inline-block;vertical-align:middle;line-height:0;margin:0;padding:0;--container-width:5.625em;--container-height:2.5em;--container-radius:6.25em;--container-light-bg:#3D7EAE;--container-night-bg:#1D1F2C;--circle-container-diameter:3.375em;--sun-moon-diameter:2.125em;--sun-bg:#ECCA2F;--moon-bg:#C4C9D1;--spot-color:#959DB1;--circle-container-offset:calc((var(--circle-container-diameter) - var(--container-height)) / 2 * -1);--stars-color:#fff;--clouds-color:#F3FDFF;--back-clouds-color:#AACADF;--transition:.5s cubic-bezier(0,-0.02,0.4,1.25);--circle-transition:.3s cubic-bezier(0,-0.02,0.35,1.17);position:relative;z-index:1;font-size:8px}.theme-switch,.theme-switch *,.theme-switch :after,.theme-switch :before{box-sizing:border-box;margin:0;padding:0;font-size:var(--toggle-size)}.theme-switch__container{width:var(--container-width);height:var(--container-height);background-color:var(--container-light-bg);border-radius:var(--container-radius);overflow:hidden;cursor:pointer;box-shadow:0 -.062em .062em rgba(0,0,0,.25),0 .062em .125em rgba(255,255,255,.94);transition:var(--transition);position:relative;z-index:2}.theme-switch__container:before{content:"";position:absolute;z-index:1;inset:0;box-shadow:inset 0 .05em .187em rgba(0,0,0,.25),inset 0 .05em .187em rgba(0,0,0,.25);border-radius:var(--container-radius)}.theme-switch__circle-container{width:var(--circle-container-diameter);height:var(--circle-container-diameter);background-color:transparent;position:absolute;left:var(--circle-container-offset);top:var(--circle-container-offset);border-radius:var(--container-radius);box-shadow:none;display:flex;transition:var(--circle-transition);pointer-events:none}.theme-switch__sun-moon-container{pointer-events:auto;position:relative;z-index:2;width:var(--sun-moon-diameter);height:var(--sun-moon-diameter);margin:auto;border-radius:var(--container-radius);background-color:var(--sun-bg);box-shadow:inset .062em .062em .062em 0 rgba(254,255,239,.61),inset 0 -.062em .062em 0 #a1872a;filter:drop-shadow(.062em .125em .125em rgba(0,0,0,.25)) drop-shadow(0 .062em .125em rgba(0,0,0,.25));overflow:hidden;transition:var(--transition)}.theme-switch__moon{transform:translateX(100%);width:100%;height:100%;background-color:var(--moon-bg);border-radius:inherit;box-shadow:inset .062em .062em .062em 0 rgba(254,255,239,.61),inset 0 -.062em .062em 0 #969696;transition:var(--transition);position:relative}.theme-switch__spot{position:absolute;top:.75em;left:.312em;width:.75em;height:.75em;border-radius:var(--container-radius);background-color:var(--spot-color);box-shadow:inset 0 .0312em .062em rgba(0,0,0,.25)}.theme-switch__spot:nth-of-type(2){width:.375em;height:.375em;top:.937em;left:1.375em}.theme-switch__spot:nth-last-of-type(3){width:.25em;height:.25em;top:.312em;left:.812em}.theme-switch__clouds{width:1.25em;height:1.25em;background-color:var(--clouds-color);border-radius:var(--container-radius);position:absolute;bottom:-.625em;left:.312em;box-shadow:.937em .312em var(--clouds-color),-.312em -.312em var(--back-clouds-color),1.437em .375em var(--clouds-color),.5em -.125em var(--back-clouds-color),2.187em 0 var(--clouds-color),1.25em -.062em var(--back-clouds-color),2.937em .312em var(--clouds-color),2em -.312em var(--back-clouds-color),3.625em -.062em var(--clouds-color),2.625em 0 var(--back-clouds-color),4.5em -.312em var(--clouds-color),3.375em -.437em var(--back-clouds-color),4.625em -1.75em 0 .437em var(--clouds-color),4em -.625em var(--back-clouds-color),4.125em -2.125em 0 .437em var(--back-clouds-color);transition:.5s cubic-bezier(0,-.02,.4,1.25)}.theme-switch__stars-container{position:absolute;color:var(--stars-color);top:-100%;left:.312em;width:2.75em;height:auto;transition:var(--transition)}.theme-switch[aria-pressed=true] .theme-switch__container{background-color:var(--container-night-bg)}.theme-switch[aria-pressed=true] .theme-switch__circle-container{left:calc(100% - var(--circle-container-offset) - var(--circle-container-diameter))}.theme-switch[aria-pressed=true] .theme-switch__circle-container:hover{left:calc(100% - var(--circle-container-offset) - var(--circle-container-diameter) - .187em)}.theme-switch__circle-container:hover{left:calc(var(--circle-container-offset) + .187em)}.theme-switch[aria-pressed=true] .theme-switch__moon{transform:translate(0)}.theme-switch[aria-pressed=true] .theme-switch__clouds{bottom:-4.062em}.theme-switch[aria-pressed=true] .theme-switch__stars-container{top:50%;transform:translateY(-50%)}.switch{font-size:17px;position:relative;display:inline-block;width:3.5em;height:2em}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;box-shadow:inset 2px 5px 10px rgba(0,0,0,.3);border-radius:5px}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{content:"";height:1.4em;width:.1em;border-radius:0;left:.3em;bottom:.3em;background-color:white}input:checked+.slider{background-color:#171717;box-shadow:inset 2px 5px 10px rgb(0,0,0)}input:checked+.slider:before{transform:translateX(2.8em) rotate(1turn)}@media (max-width:640px){.switch{font-size:15px}}@media (max-width:480px){.switch{font-size:13px}}@keyframes twinkle{0%{opacity:1}50%{opacity:.3}to{opacity:1}}.animate-twinkle{animation:twinkle 2s infinite}.sun-moon{transition:transform .4s ease-in-out}.rays div{animation:rays 2s infinite}@keyframes rays{0%{transform:scale(1);opacity:.1}50%{transform:scale(1.2);opacity:.15}to{transform:scale(1);opacity:.1}}