body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.personal-website{background:linear-gradient(135deg,#c7eaff,#6dcbff);min-height:100vh;overflow:hidden;position:relative;text-align:center;width:100%}.personal-website:before{background:linear-gradient(357deg,#254669 2.49%,#07203e 102.25%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity 10s ease-in-out;z-index:1}.personal-website.night-time:before{opacity:1}.ocean-container{height:20vh;position:absolute;transform:translateY(-130%);width:100%;z-index:2}.ocean{background:linear-gradient(180deg,#7ddeea,#0c73d1ad);overflow:hidden;position:relative;text-align:center}.ocean:before{background:linear-gradient(180deg,#00cce3 2.61%,#00315fad);content:"";inset:0;pointer-events:none;position:absolute;transition:opacity 10s ease-in-out;z-index:3}.ocean.night-ocean:before{opacity:1}.squiggly-line{fill:none;stroke:#0087ca;stroke-width:.2;stroke-linecap:round;stroke-dasharray:20;animation:squiggle-animation 12s linear infinite;z-index:4}@keyframes squiggle-animation{0%{stroke-dashoffset:0}to{stroke-dashoffset:-100}}.relative{position:relative}.header-text{position:absolute;z-index:100;z-index:3}.personal-website-header{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;z-index:100;z-index:3}.text-color-day{color:#000;transition:color 10s ease-in}.text-color-night{color:#fff;transition:color 10s ease-in}.time-toggle-container{align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:center;min-height:40px;padding:8px 12px;position:absolute;right:0;top:0;z-index:1000}.time-toggle-container:hover{transform:scale(1.45);transition:all 2.5s ease}.sun-moon-toggle{cursor:pointer;height:60px;transition:transform .3s ease-in-out;width:60px}@media (max-width:2560px){.sun-moon-toggle{height:58px;width:58px}}@media (max-width:1920px){.sun-moon-toggle{height:56px;width:56px}}@media (max-width:1440px){.sun-moon-toggle{height:54px;width:54px}}@media (max-width:1200px){.sun-moon-toggle{height:52px;width:52px}}@media (max-width:1024px){.sun-moon-toggle{height:50px;width:50px}}@media (max-width:768px){.sun-moon-toggle{height:45px;width:45px}}@media (max-width:480px){.sun-moon-toggle{height:40px;width:40px}}@media (max-width:768px){.personal-website{height:100vh;min-height:100vh}.personal-website-header{justify-content:center;min-height:55vh;padding:1rem}.personal-website-header h1{font-size:clamp(1.5rem,6vmin,3rem);margin-bottom:.5rem}.personal-website-header p{font-size:clamp(.875rem,2.5vmin,1.25rem);margin-bottom:1rem}.time-toggle-button{font-size:12px!important;height:4rem!important;padding:8px 16px!important;width:10rem!important}.ocean-container{bottom:0;height:20vh;position:absolute;transform:none;width:100%}.sun-moon{height:160px;width:160px}}@media (max-width:480px){.personal-website{height:100vh;min-height:100vh}.personal-website-header{justify-content:center;min-height:50vh;padding:1rem .75rem .75rem}.personal-website-header h1{font-size:clamp(1.25rem,5vmin,2.5rem);margin-bottom:.5rem}.personal-website-header p{font-size:clamp(.75rem,2vmin,1rem);margin-bottom:.75rem}.time-toggle-button{font-size:11px!important;height:3.5rem!important;padding:6px 14px!important;width:9rem!important}.ocean-container{bottom:0;height:11vh;position:absolute;transform:none;width:100%}.sun-moon{height:150px;width:150px}.ferry{bottom:-5%!important;height:12em!important;right:2%!important;width:12em!important}}.sun-moon-toggle:hover{transform:scale(1.1)}.sun-moon-toggle #center{transform-origin:center;transition:transform 10s ease-out,fill 10s ease-out}.sun-moon-toggle #mask-center,.sun-moon-toggle #mask-rays{transform-origin:center;transition:transform 10s ease-out}.sun-moon-toggle #rays{stroke-linecap:round;transition:stroke 10s ease-out,stroke-width 10s ease-out,opacity 10s ease-out}.sun-moon-toggle.day #center{fill:#000;transform:rotate(-35deg)}.sun-moon-toggle.day #rays{stroke:#000;stroke-width:2px;opacity:0}.sun-moon-toggle.day #mask-rays{transform:scale(.5)}.sun-moon-toggle.day #mask-center{transform:translateX(-18px)}.sun-moon-toggle.night #center{fill:#fff;transform:rotate(-35deg) scale(1)}.sun-moon-toggle.night #rays{stroke:#fff;stroke-width:3px;opacity:1}.sun-moon-toggle.night #mask-rays{transform:scale(1)}.sun-moon-toggle.night #mask-center{transform:translateX(-40px)}.sun-moon{animation:moon-animation 50s ease-in-out infinite;cursor:pointer;position:absolute;right:0;top:0;transition:opacity 2s ease-in-out,transform .3s ease-in-out;z-index:2}.sun-moon:hover{transform:scale(1.15)}.sun-moon.visible{opacity:1;transition:opacity 4s ease-in;transition-delay:1.2s}.sun-moon.hidden{opacity:0;transition:opacity 5s ease-out;transition-delay:0s}@keyframes moon-animation{0%{transform:translatex(-340%)}to{transform:translatex(120%)}}.time-toggle-button{background:linear-gradient(357deg,#254669 2.49%,#07203e 102.25%);border:none;border-radius:15px;cursor:pointer;font-size:14px;font-weight:600;height:5rem;letter-spacing:1px;padding:10px 20px;position:relative;text-transform:uppercase;width:13rem;z-index:30}.time-toggle-button:before{background:linear-gradient(135deg,#c7eaff,#6dcbff);border-radius:15px;content:"";inset:0;opacity:0;position:absolute;transition:opacity 10s ease-in-out;z-index:1}.time-toggle-button.night:before{border-radius:15px;opacity:1}.time-toggle-button:hover{box-shadow:0 8px 25px #0000004d;transform:translateY(-2px)}.view-map-button{padding:0 2rem;white-space:nowrap;width:auto}.view-map-button.day{color:#fff}.view-map-button.night{color:#000}.personal-website-header h1{font-size:clamp(2rem,8vmin,4rem);font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.personal-website-header p{font-size:clamp(1rem,3vmin,1.5rem);font-weight:300;line-height:1.5;max-width:600px;opacity:.9}.button-text-container{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:25}.button-text{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity 5s ease-in-out,color 5s ease-in-out;white-space:nowrap}.button-text.visible{opacity:1;transition-delay:5s}.button-text.hidden{opacity:0;transition-delay:0s}.map{background-color:#f3e8d2;height:75vh;overflow-x:scroll;overflow-y:scroll}.map,.subway-container{position:relative;width:100%}.subway-container{height:200vh;padding:50px 0}.subway-main-line{display:block;height:1114px;left:0;overflow:visible;position:relative;width:100%}.station{align-items:center;animation:fadeInStation .8s ease-out forwards;cursor:pointer;display:flex;opacity:0;position:absolute;transform:translate(-50%,-50%);z-index:10}.station-circle{background-color:#fff;border:4px solid #f18401;border-radius:50%;height:24px;position:relative;transition:all .3s ease;width:24px;z-index:10}.station-circle:hover{border-width:6px;transform:scale(1.2)}.station-label{background:#fffffff2;border-radius:6px;bottom:-.5rem;box-shadow:0 2px 8px #0000001a;color:#333;font-family:Arial,sans-serif;font-size:16px;font-weight:700;left:1.5rem;margin-left:20px;margin-right:auto;max-width:200px;overflow:hidden;padding:8px 12px;right:auto;transition:all .3s ease;white-space:nowrap}.station-label,.station-label:hover{position:absolute;z-index:10}.station-info-wrapper{position:relative}.station-hover-card{background:#fffffffa;border-radius:8px;bottom:-.5rem;box-shadow:0 4px 16px #00000026;font-family:Arial,sans-serif;max-width:400px;padding:16px;transform:scale(.95);transition:opacity .3s ease,transform .3s ease;z-index:1000}.station:hover .station-hover-card{opacity:1;pointer-events:auto;transform:scale(1)}.station:hover .station-label{opacity:1;pointer-events:auto}.hover-card-header{border-bottom:6px solid #f18401;gap:12px;margin-bottom:12px;padding-bottom:12px}.company-icon{font-size:24px}.hover-card-company-name{color:#333;font-size:18px;margin:0 0 4px}.hover-card-timeframe{font-size:13px}.hover-card-positions{margin-bottom:12px}.hover-card-position{border-left:3px solid #f18401;margin-bottom:8px;padding-left:12px}.position-title{color:#333;font-size:14px;margin:0 0 2px}.position-timeframe{font-size:12px}.hover-card-details{color:#555;font-size:13px;margin-top:12px;padding-top:12px}.sub-station .station-circle{border-width:3px;height:12px;transition:none;width:12px}.sub-station .station-label{font-size:14px;padding:6px 10px;transition:none}.branch-horizontal-simple{animation:drawHorizontalSimple 1.5s ease-out forwards;background:linear-gradient(90deg,gold,orange);border-radius:3px;height:6px;position:absolute;width:0;z-index:5}.branch-vertical-simple{animation:drawVerticalSimple 1.2s ease-out forwards;animation-delay:1.5s;background:linear-gradient(180deg,gold,orange);border-radius:3px;height:0;position:absolute;width:6px;z-index:5}@keyframes drawHorizontalSimple{0%{width:0}to{width:calc(50% + 300px)}}@keyframes drawVerticalSimple{0%{height:0}to{height:300px;height:var(--vertical-height,300px)}}@keyframes drawBranchPath{to{stroke-dashoffset:0}}.sub-station{align-items:center;animation:fadeInSubStation .6s ease-out forwards;cursor:pointer;display:flex;opacity:0;position:absolute;transform:translate(-50%,-50%);transition:none}.sub-station-circle{background-color:#fff;border:3px solid gold;border-radius:50%;height:16px;transition:none;width:16px;z-index:10}.sub-station-label{background:#fffffff2;border-radius:4px;box-shadow:0 2px 6px #0000001a;color:#666;font-family:Arial,sans-serif;font-size:14px;margin-left:15px;padding:6px 10px;transition:none;white-space:nowrap}@keyframes fadeInStation{0%{opacity:0;transform:translate(-50%,calc(-50% - 20px))}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes fadeInSubStation{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.station-hover-card{background:#fff;border-radius:12px;bottom:-1rem;box-shadow:0 8px 24px #00000026;left:1.5rem;max-width:350px;min-width:250px;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity .2s ease-in-out;z-index:3001}.station-hover-card:hover,.station:hover .station-hover-card{opacity:1;pointer-events:auto}.branch-click-card{opacity:1!important;pointer-events:auto!important}.branch-hover-card{max-width:450px;min-width:300px}.card-close-button{align-items:center;background:#fff;border:2px solid #e5e5e5;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.3rem;font-weight:700;height:28px;justify-content:center;line-height:1;padding:0;position:absolute;right:.5rem;top:.5rem;transition:all .2s ease;width:28px;z-index:10}.card-close-button:hover{background:#f44336;border-color:#f44336;color:#fff;transform:scale(1.1) rotate(90deg)}.hover-card-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.company-icon{align-items:center;background:#f5f5f5;border-radius:8px;display:flex;flex-shrink:0;height:48px;justify-content:center;overflow:hidden;width:48px}.company-icon img{height:100%;object-fit:cover;width:100%}.branch-project-image{background:#f5f5f5;border-radius:8px;height:200px;margin-bottom:1rem;overflow:hidden;position:relative;user-select:none;-webkit-user-select:none}.branch-project-image,.branch-project-image img{-webkit-tap-highlight-color:transparent;cursor:pointer;pointer-events:auto;width:100%}.branch-project-image img{height:100%;object-fit:cover}.image-zoom-overlay{align-items:center;background:#0000;display:flex;height:100vh;justify-content:center;left:0;opacity:0;padding:0;pointer-events:none;position:fixed;top:0;transition:opacity .4s ease-out,background .4s ease-out;width:100vw;z-index:20000}.image-zoom-overlay.active{background:#000000f2;opacity:1;pointer-events:auto}.image-zoom-container{height:90vh;opacity:0;position:relative;transform:scale(.7);transition:transform .5s cubic-bezier(.34,1.56,.64,1),opacity .4s ease-out;width:90vw}.image-zoom-overlay.active .image-zoom-container{opacity:1;transform:scale(1)}.image-zoom-container img{border-radius:8px;box-shadow:0 20px 60px #00000080;height:100%;object-fit:contain;width:100%}.image-zoom-close{align-items:center;background:#fff;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:1.5rem;font-weight:700;height:48px;justify-content:center;opacity:0;position:fixed;right:2rem;top:2rem;transform:scale(.5) rotate(-90deg);transition:all .3s ease;width:48px;z-index:20001}.image-zoom-overlay.active .image-zoom-close{opacity:1;transform:scale(1) rotate(0deg);transition-delay:.2s}.image-zoom-close:hover{background:#f44336;color:#fff;transform:scale(1.15) rotate(90deg)!important}.jetblue-transition-container{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.jetblue-new-image,.jetblue-old-image{border-radius:8px;box-shadow:0 20px 60px #00000080;height:100%;object-fit:contain;width:100%}.jetblue-new-image{animation:fadeInJetblue 3s ease-in-out forwards;animation-delay:.5s;opacity:0;position:relative;z-index:1}.jetblue-old-image{animation:fadeOutJetblue 3s ease-in-out forwards;animation-delay:.5s;left:0;opacity:1;position:absolute;top:0;z-index:2}@keyframes fadeOutJetblue{0%{opacity:1}to{opacity:0}}@keyframes fadeInJetblue{0%{opacity:0}to{opacity:1}}.hover-card-title{flex:1 1;min-width:0}.hover-card-company-name{color:#1a1a1a;font-size:1.1rem;font-weight:700;margin:0 0 .25rem}.hover-card-timeframe{color:#666;font-size:.85rem;margin:0}.hover-card-positions{border-bottom:1px solid #e5e5e5;margin-bottom:.75rem;padding-bottom:1rem;padding-top:.75rem}.hover-card-position{margin-bottom:.5rem}.hover-card-position:last-child{margin-bottom:0}.position-title{color:#2a2a2a;font-size:.95rem;font-weight:600;margin:0 0 .15rem}.position-timeframe{color:#666;font-size:.8rem;margin:0}.hover-card-details{color:#444;font-size:.9rem;line-height:1.5;padding-top:.75rem}.branch-modal-overlay{align-items:center;animation:fadeInModal .3s ease-out forwards;background:#000000b3;display:flex;height:100vh;justify-content:center;left:0;opacity:0;padding:2rem;position:fixed;top:0;width:100vw;z-index:10000}.branch-modal-container{-ms-overflow-style:none;animation:scaleInModal .3s ease-out forwards;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:85vh;max-width:600px;overflow:hidden;position:relative;scrollbar-width:none;transform:scale(.9)}.branch-modal-container::-webkit-scrollbar{display:none}.branch-modal-close{align-items:center;background:#fff;border:2px solid #e5e5e5;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.5rem;font-weight:700;height:36px;justify-content:center;line-height:1;padding:0;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:36px;z-index:10}.branch-modal-close:hover{background:#f44336;border-color:#f44336;color:#fff;transform:scale(1.1) rotate(90deg)}.branch-modal-container .station-hover-card{border-radius:0;box-shadow:none;max-width:none;min-width:auto;opacity:1;pointer-events:auto;position:static;width:100%}.branch-modal-container .branch-hover-card{max-width:none;min-width:auto;width:100%}.branch-modal-container .branch-project-image{height:min(45vh,320px);pointer-events:auto;z-index:1}.branch-modal-container .branch-project-image img{pointer-events:auto}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}@keyframes scaleInModal{0%{transform:scale(.9)}to{transform:scale(1)}}@media (max-width:768px){.station-hover-card:hover,.station:hover .station-hover-card{opacity:0!important;pointer-events:none!important}.station-hover-card{max-width:280px;min-width:200px}.branch-hover-card{max-width:350px;min-width:250px}.branch-project-image{height:150px}.branch-modal-overlay{align-items:stretch;justify-content:stretch;padding:0}.branch-modal-container{animation:slideUpModal .3s ease-out forwards;border-radius:0;display:flex;flex-direction:column;height:100%;max-height:100%;max-width:100%;overflow-x:hidden;overflow-y:auto;transform:none;width:100%}.branch-modal-container .branch-project-image{flex-shrink:0;height:min(40vh,300px);pointer-events:auto;z-index:1}.branch-modal-container .branch-project-image img{pointer-events:auto}.branch-modal-close{background:#fffffff2;border:2px solid #00000026;box-shadow:0 2px 8px #00000026;color:#333;font-size:1.8rem;height:40px;position:absolute;right:.75rem;top:.75rem;width:40px;z-index:10001}@keyframes slideUpModal{0%{transform:translateY(100%)}to{transform:translateY(0)}}.image-zoom-overlay{z-index:20000}.image-zoom-container{height:100vh;max-height:100vh;max-width:100vw;width:100vw}.image-zoom-close{font-size:1.8rem;height:44px;right:1rem;top:1rem;width:44px;z-index:20001}.image-zoom-container img{border-radius:0}}.map-page{background-color:#f3e8d2;height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:100vw}.back-button{background-color:#049760;border:none;border-radius:8px;box-shadow:0 2px 8px #00000026;color:#fff;cursor:pointer;font-family:Arial,sans-serif;font-size:16px;font-weight:700;padding:12px 24px;position:fixed;right:20px;top:20px;transition:all .3s ease;z-index:1000}.back-button:hover{background-color:#037a4d;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.back-button:active{transform:translateY(0)}.map-page .map{overflow:hidden}.map-page .map,.map-page .subway-container{height:100vh;margin:0;padding:0;width:100vw}.map-page .subway-container{position:relative;z-index:500}.legend{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #00000026;min-width:200px;overflow:hidden;position:fixed;right:20px;top:80px;transition:all .3s ease;z-index:1000}.legend.collapsed{min-width:120px}.legend.expanded{min-width:200px}.legend-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background-color .2s ease;user-select:none;-webkit-user-select:none}.legend-header:hover{background-color:#f5f5f5}.legend-title{color:#333;font-family:Arial,sans-serif;font-size:16px;font-weight:700;margin:0}.legend-expand-icon{color:#666;font-size:20px;font-weight:700;line-height:1;transition:transform .3s ease}.legend.collapsed .legend-expand-icon,.legend.expanded .legend-expand-icon{transform:rotate(0deg)}.legend-content{animation:slideDown .3s ease;padding:0 20px 16px}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:500px;opacity:1}}.legend-item{align-items:center;display:flex;margin-bottom:10px}.legend-item:last-child{margin-bottom:0}.legend-circle{border-radius:50%;flex-shrink:0;margin-right:12px}.job-circle{background-color:#fff;border:4px solid #f18401;height:14px;width:14px}.project-circle{background-color:#000;border:3px solid #000;height:12px;width:12px}.legend-label{color:#333;font-family:Arial,sans-serif;font-size:14px}.legend-divider{background-color:#ddd;height:1px;margin:12px 0}.legend-toggle{align-items:center;cursor:pointer;display:flex;margin-top:8px}.legend-toggle input[type=checkbox]{cursor:pointer;height:16px;margin-right:8px;width:16px}.multi-mode-indicator{background-color:#049760;border-radius:4px;color:#fff;font-family:Arial,sans-serif;font-size:12px;font-weight:700;margin-top:8px;padding:6px 10px;text-align:center}.mobile-bottom-bar,.mobile-legend-overlay{display:none}@media (max-width:768px){.desktop-only{display:none!important}.mobile-bottom-bar{background-color:#fff;border-top:1px solid #ddd;bottom:0;box-shadow:0 -2px 8px #00000026;display:flex;gap:0;left:0;padding:0;position:fixed;right:0;width:100%;z-index:1000}.mobile-back-button{background-color:#049760;border:none;border-right:1px solid #ddd;color:#fff}.mobile-back-button,.mobile-legend-button{cursor:pointer;flex:1 1;font-family:Arial,sans-serif;font-size:16px;font-weight:700;padding:16px 20px;transition:background-color .2s ease}.mobile-legend-button{background-color:#fff;border:none;color:#333}.mobile-back-button:active{background-color:#037a4d}.mobile-legend-button:active{background-color:#f5f5f5}.mobile-legend-overlay{align-items:flex-end;animation:fadeIn .3s ease;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.mobile-legend-content{animation:slideUp .3s ease;background-color:#fff;border-radius:16px 16px 0 0;box-shadow:0 -2px 16px #0003;max-height:80vh;max-width:100%;overflow-y:auto;padding:20px;width:100%}.mobile-legend-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.mobile-legend-close{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;transition:background-color .2s ease;width:40px}.mobile-legend-close:hover{background-color:#f5f5f5}.mobile-legend-close:active{background-color:#e0e0e0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.map-page .map{padding-bottom:60px}}.statue-of-liberty-body{fill:#c4c4c4;transition:fill 50s ease-in;&.night{fill:#959595;transition:fill 50s ease-in}}.statue-of-liberty-island{fill:#5aba7b;transition:fill 50s ease-in;&.night{fill:#4c9d68;transition:fill 50s ease-in}}.statue-of-liberty{bottom:18%;height:35em;left:10%;position:absolute;width:35em;z-index:2}@media (max-width:2560px){.statue-of-liberty{bottom:14%;height:33em;left:9.5%;width:33em}}@media (max-width:1920px){.statue-of-liberty{bottom:12%;height:31em;left:8%;width:31em}}@media (max-width:1440px){.statue-of-liberty{bottom:10%;height:29em;left:7%;width:29em}}@media (max-width:1200px){.statue-of-liberty{bottom:8%;height:27em;left:6%;width:27em}}@media (max-width:1024px){.statue-of-liberty{bottom:6%;height:25em;left:5%;width:25em}}@media (max-width:768px){.statue-of-liberty{bottom:6%;height:14em;left:-3%;width:14em}}@media (max-width:480px){.statue-of-liberty{bottom:8%;height:12em;left:-5%;width:12em}}.building-light{animation:building-light-animation 3s ease infinite forwards}@keyframes building-light-animation{0%{fill:#eeea27}25%{fill:#f8f281}50%{fill:#f4f3e3}75%{fill:#f8f281}to{fill:#eeea27}}.buildings{bottom:22%;height:34em;position:absolute;right:0;width:35em;z-index:3}@media (max-width:2560px){.buildings{bottom:17%;height:32em;width:33em}}@media (max-width:1920px){.buildings{bottom:15%;height:30em;width:31em}}@media (max-width:1440px){.buildings{bottom:13%;height:28em;width:29em}}@media (max-width:1200px){.buildings{bottom:11%;height:26em;width:27em}}@media (max-width:1024px){.buildings{bottom:9%;height:24em;width:25em}}@media (max-width:768px){.buildings{bottom:6%;height:14em;right:-3%;width:15em}}@media (max-width:480px){.buildings{bottom:8%;height:12em;right:-5%;width:13em}}.freedom-tower-outside{fill:#4db7d8;transition:fill 10s ease-in;&.night{fill:#2a6375;transition:fill 10s ease-in}}.freedom-tower-inside{fill:#a0d9e6;transition:fill 10s ease-in;&.night{fill:#547178;transition:fill 10s ease-in}}.freedom-tower-line{stroke:#bbe1ec;transition:stroke 10s ease-in;&.night{stroke:#bdff00;transition:stroke 10s ease-in}}.freedom-tower-atenna{stroke:#000;transition:stroke 10s ease-in;&.night{stroke:#052db3;transition:stroke 10s ease-in}}.small-red-building-top{fill:#9a9da0;transition:fill 10s ease-in;&.night{fill:#3c3d3f;transition:fill 10s ease-in}}.small-red-building-bricks{fill:#c63030;transition:fill 10s ease-in;&.night{fill:#790808;transition:fill 10s ease-in}}.black-yellow-windows{fill:#030000;transition:fill 10s ease-in;&.night{fill:#fff31e;transition:fill 10s ease-in}}.church-building{fill:#f9e0a6;transition:fill 10s ease-in;&.night{fill:#8c7f5f;transition:fill 10s ease-in}}.church-building-windows{fill:#694c26;transition:fill 10s ease-in;&.night{fill:#fff31e;transition:fill 10s ease-in}}.background-buildings{fill:#b0c8cc;transition:fill 10s ease-in;&.night{fill:#5f6465;transition:fill 10s ease-in}}.midsized-grey-building{fill:#9d9ea0;transition:fill 10s ease-in;&.night{fill:#3c3d3f;transition:fill 10s ease-in}}.midsized-grey-building-windows{fill:#535456;transition:fill 10s ease-in;&.night{fill:#fff31e;transition:fill 10s ease-in}}.empire-state-building{fill:#f2e8e0;transition:fill 10s ease-in;&.night{fill:#47433f;transition:fill 10s ease-in}}.polygon-building{fill:#8bb3d1;transition:fill 10s ease-in;&.night{fill:#4a5e6c;transition:fill 10s ease-in}}.tetris-building{fill:#8d8097;transition:fill 10s ease-in;&.night{fill:#6c5f75;transition:fill 10s ease-in}}.ferry{animation:ferry-animation 50s ease-in-out infinite;bottom:-2%;cursor:pointer;height:35em;position:absolute;right:10%;width:35em;z-index:4}@media (max-width:2560px){.ferry{bottom:-9.5%;height:33em;right:9.5%;width:33em}}@media (max-width:1920px){.ferry{bottom:-8%;height:31em;right:8%;width:31em}}@media (max-width:1440px){.ferry{bottom:-7%;height:29em;right:7%;width:29em}}@media (max-width:1200px){.ferry{bottom:-6%;height:27em;right:6%;width:27em}}@media (max-width:1024px){.ferry{bottom:-5%;height:25em;right:5%;width:25em}}@media (max-width:768px){.ferry{bottom:1%;height:14em;right:3%;width:14em}}@media (max-width:480px){.ferry{bottom:2%;height:12em;right:2%;width:12em}}.ferry:hover{transform:scale(2)}@keyframes ferry-animation{0%{transform:translatex(150%)}to{transform:translatex(-300%)}}.ferry-purple{stroke:#0f264e;transition:stroke 10s ease-in;&.night{stroke:#0a1830;transition:stroke 10s ease-in}}.ferry-navy{fill:#3d4764;transition:fill 10s ease-in;&.night{fill:#2a3144;transition:fill 10s ease-in}}.mobile-warning-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:9999}.mobile-warning-content{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #ffffff1a;border-radius:20px;box-shadow:0 20px 40px #0000004d;max-width:400px;padding:40px;text-align:center;width:100%}.sad-face{display:block;font-size:4rem;margin-bottom:20px}.mobile-warning-content h2{color:#fff;font-size:1.8rem;font-weight:700;margin-bottom:15px;text-shadow:2px 2px 4px #0000004d}.mobile-warning-content p{color:#ffffffe6;font-size:1rem;line-height:1.6;margin-bottom:30px}.warning-actions{display:flex;justify-content:center}.continue-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.continue-button:hover{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 8px 20px #0003;transform:translateY(-2px)}.continue-button:active{transform:translateY(0)}@media (max-width:480px){.mobile-warning-content{margin:10px;padding:30px 20px}.sad-face{font-size:3rem}.mobile-warning-content h2{font-size:1.5rem}.mobile-warning-content p{font-size:.9rem}}.login-popup-overlay{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#000;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:10000}.login-popup-content{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #ffffff1a;border-radius:20px;box-shadow:0 20px 40px #0006;max-width:400px;padding:40px;text-align:center;width:100%}.lock-icon{display:block;font-size:4rem;margin-bottom:20px}.login-popup-content h2{color:#fff;font-size:1.8rem;font-weight:700;margin-bottom:15px;text-shadow:2px 2px 4px #0000004d}.login-popup-content p{color:#ffffffe6;font-size:1rem;line-height:1.6;margin-bottom:30px}.login-form{display:flex;flex-direction:column;gap:15px}.login-form input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:25px;color:#fff;font-size:1rem;font-weight:500;padding:15px 20px;text-align:center;transition:all .3s ease}.login-form input::placeholder{color:#ffffffb3}.login-form input:focus{background:#ffffff40;border-color:#ffffff80;box-shadow:0 0 20px #fff3;outline:none}.login-form input.error{animation:shake .5s ease-in-out;border-color:#ff6b6b}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.error-message{background:#ff6b6b33;border:1px solid #ff6b6b66;border-radius:15px;color:#ff6b6b;font-size:.9rem;font-weight:600;padding:8px 16px}.login-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:25px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;letter-spacing:1px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.login-button:hover{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 8px 20px #0000004d;transform:translateY(-2px)}.login-button:active{transform:translateY(0)}@media (max-width:480px){.login-popup-content{margin:10px;padding:30px 20px}.lock-icon{font-size:3rem}.login-popup-content h2{font-size:1.5rem}.login-popup-content p{font-size:.9rem}.login-button,.login-form input{font-size:.95rem;padding:12px 18px}}
/*# sourceMappingURL=main.19e1e63b.css.map*/