:root{--color-accent: #f59e0b;--color-bg: #07080e;--color-text: #f1f5f9;--color-text-muted: #64748b;--color-border: rgba(241, 245, 249, .08);--color-surface: rgba(12, 14, 24, .94)}html,body{margin:0;overflow:hidden;font-family:Space Grotesk,sans-serif;background-color:var(--color-bg)}.App{width:100vw;height:100vh}.dot-grid{display:flex;align-items:center;justify-content:center;height:100%;width:100%;position:relative}.dot-grid__wrap{width:100%;height:100%;position:relative}.dot-grid__canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.welcome-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--color-surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--color-border);border-radius:16px;padding:40px;max-width:600px;width:90%;max-height:85vh;overflow-y:auto;z-index:1000;animation:fadeInScale .6s ease-out;box-shadow:0 24px 64px #000000b3,0 0 0 1px #f1f5f90d}@keyframes fadeInScale{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.welcome-content{text-align:center}.welcome-title{font-size:2.5rem;font-weight:700;color:var(--color-accent);margin:0 0 8px;letter-spacing:1px}.welcome-subtitle{font-size:1.2rem;color:var(--color-text);margin:0 0 30px;font-weight:300;opacity:.7}.welcome-description{text-align:left;margin:0 0 32px}.welcome-description p{color:var(--color-text);line-height:1.7;margin:0 0 16px;font-size:1rem;opacity:.85}.welcome-description p:last-child{margin-bottom:0}.welcome-bullets{list-style:none;padding:0;margin:12px 0 0;text-align:left}.welcome-bullets li{color:var(--color-text);font-size:.95rem;line-height:1.8;padding-left:1.4rem;position:relative;opacity:.8}.welcome-bullets li:before{content:"•";position:absolute;left:0;color:var(--color-accent)}.start-journey-button{background:linear-gradient(135deg,#f59e0b,#d97706);color:#07080e;border:none;padding:16px 48px;font-size:1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #f59e0b59;letter-spacing:1.5px;font-family:Space Grotesk,sans-serif}.start-journey-button:hover{transform:translateY(-2px);box-shadow:0 8px 28px #f59e0b80;background:linear-gradient(135deg,#fbbf24,#f59e0b)}.start-journey-button:active{transform:translateY(0)}.welcome-card::-webkit-scrollbar{width:6px}.welcome-card::-webkit-scrollbar-track{background:transparent}.welcome-card::-webkit-scrollbar-thumb{background:#f59e0b4d;border-radius:3px}.welcome-card::-webkit-scrollbar-thumb:hover{background:#f59e0b80}@media(max-width:768px){.welcome-card{padding:24px;max-height:90vh}.welcome-title{font-size:2rem}.welcome-subtitle{font-size:1rem;margin-bottom:20px}.welcome-description{margin-bottom:24px}.welcome-description p{font-size:.95rem}.start-journey-button{padding:14px 36px;font-size:.95rem}}.experience-card{position:fixed;right:0;top:0;width:380px;height:100vh;background:var(--color-surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:1px solid var(--color-border);border-radius:0;padding:2rem;overflow-y:auto;animation:slideInRight .35s ease-out;z-index:1000;box-shadow:-12px 0 48px #0009;box-sizing:border-box}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.location-header{text-align:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--color-border)}.country-flag{width:48px;height:auto;border-radius:4px;box-shadow:0 2px 12px #00000080;margin-bottom:.75rem}.location-name{color:var(--color-accent);font-size:1.4rem;font-weight:600;margin:0;letter-spacing:.5px}.card-tabs{display:flex;gap:0;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.card-tab{flex:1;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:.82rem;font-weight:600;letter-spacing:1px;padding:.6rem 0;cursor:pointer;transition:all .2s;font-family:Space Grotesk,sans-serif;margin-bottom:-1px}.card-tab:hover{color:var(--color-text)}.card-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.section{margin-bottom:1.5rem;padding:1.25rem;border-radius:8px;background:#f1f5f905;border:1px solid var(--color-border)}.section:last-of-type{margin-bottom:1rem}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.section-header h3{color:var(--color-accent);font-size:1rem;font-weight:600;margin:0;letter-spacing:1.5px}.section-icon{font-size:1.2rem}.viaggio-section .travel-description{color:var(--color-text);line-height:1.7;margin-bottom:1rem;opacity:.85}.visit-info{color:var(--color-text-muted);font-size:.9rem;margin-bottom:.5rem}.visit-info strong{color:var(--color-accent)}.travel-highlights{list-style:none;padding:0;margin:1rem 0}.travel-highlights li{color:var(--color-text);padding-left:1.8rem;position:relative;margin-bottom:.6rem;line-height:1.5;opacity:.85}.travel-highlights li:before{content:"✈";position:absolute;left:0;color:var(--color-accent);font-size:1rem}.trip-type{color:var(--color-text-muted);font-style:italic;font-size:.9rem;margin-top:1rem}.lavoro-section .work-meta{margin-bottom:1rem}.lavoro-section .job-title{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0 0 .4rem}.lavoro-section .company{color:var(--color-accent);font-size:.95rem;font-weight:500;margin:0 0 .3rem}.lavoro-section .period{color:var(--color-text-muted);font-size:.82rem;margin:0}.lavoro-section .work-description{color:var(--color-text);line-height:1.6;margin:1rem 0;opacity:.82;font-size:.93rem}.lavoro-section .responsibilities h5{color:var(--color-text);font-size:.82rem;margin:1rem 0 .5rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;opacity:.6}.technologies{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0}.tech-badge{background:#f59e0b14;color:var(--color-accent);padding:.25rem .7rem;border-radius:4px;font-size:.78rem;border:1px solid rgba(245,158,11,.2);font-weight:600;letter-spacing:.3px}.work-video{margin:1rem 0;border-radius:8px;overflow:hidden;border:1px solid var(--color-border);background:#000}.work-video-player{width:100%;display:block;max-height:200px;object-fit:contain}.responsibilities ul{list-style:none;padding:0;margin:0}.responsibilities li{color:var(--color-text);padding-left:1.5rem;position:relative;margin-bottom:.5rem;line-height:1.5;font-size:.9rem;opacity:.8}.responsibilities li:before{content:"▹";position:absolute;left:0;color:var(--color-accent);font-size:1rem}.close-button{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--color-text-muted);font-size:1rem;cursor:pointer;line-height:1;transition:color .2s;padding:.25rem;z-index:10;display:flex;align-items:center;justify-content:center}.close-button:hover{color:var(--color-text)}.experience-card::-webkit-scrollbar{width:4px}.experience-card::-webkit-scrollbar-track{background:transparent}.experience-card::-webkit-scrollbar-thumb{background:#f1f5f91a;border-radius:2px}.experience-card::-webkit-scrollbar-thumb:hover{background:#f59e0b4d}.card-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border);display:flex;justify-content:center}.continue-button{background:linear-gradient(135deg,#f59e0b,#d97706);color:#07080e;border:none;padding:.75rem 2rem;border-radius:8px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #f59e0b40;font-family:Space Grotesk,sans-serif;letter-spacing:1px}.continue-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #f59e0b66;background:linear-gradient(135deg,#fbbf24,#f59e0b)}.continue-button:active{transform:translateY(0)}@media(max-width:768px){.experience-card{position:fixed;inset:auto 0 0;width:100%;height:auto;max-height:70vh;border-radius:16px 16px 0 0;border-left:none;border-top:1px solid var(--color-border);animation:slideUp .35s ease-out;box-shadow:0 -8px 40px #00000080}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.location-name{font-size:1.2rem}}.flight-controls{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);background:var(--color-surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--color-border);border-radius:16px;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem;align-items:center;z-index:100;box-shadow:0 8px 32px #00000080}.progress-indicator{display:flex;flex-direction:column;align-items:center;gap:.25rem}.current-location{color:var(--color-text);font-size:.85rem;font-weight:500;letter-spacing:.3px}.position-counter{color:var(--color-text-muted);font-size:.72rem}.control-buttons{display:flex;gap:.75rem;align-items:center}.control-buttons button{background:#f1f5f90a;border:1px solid var(--color-border);color:var(--color-text);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:.85rem}.control-buttons button:hover:not(:disabled){background:#f59e0b1f;border-color:#f59e0b66;color:var(--color-accent);transform:scale(1.1)}.control-buttons button:disabled{opacity:.25;cursor:not-allowed}.control-buttons .play-pause{width:48px;height:48px;background:#f59e0b1f;border-color:#f59e0b4d;color:var(--color-accent);font-size:.95rem}.control-buttons .play-pause:hover:not(:disabled){background:#f59e0b38;border-color:var(--color-accent)}.location-dots{display:flex;gap:.5rem}.location-dots .dot{width:6px;height:6px;border-radius:50%;background:#f1f5f926;border:none;cursor:pointer;transition:all .2s;padding:0}.location-dots .dot:hover:not(:disabled){background:#f59e0b66;transform:scale(1.3)}.location-dots .dot.active{background:var(--color-accent);transform:scale(1.4)}.location-dots .dot:disabled{cursor:not-allowed}@media(max-width:600px){.flight-controls{padding:.75rem 1rem;bottom:1rem}.current-location{font-size:.8rem}.control-buttons button{width:36px;height:36px}.control-buttons .play-pause{width:42px;height:42px}}.App{width:100%;height:100vh;margin:0;padding:0;background:#000}
