.sancan-container{width:100%;max-width:1100px;padding:20px;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;min-height:100vh;padding-top:90px}.page-header{text-align:center;margin-bottom:28px;display:flex;flex-direction:column;align-items:center}.page-logo{width:400px;height:140px;object-fit:contain;margin-bottom:0;transition:transform 0.35s cubic-bezier(.175,.885,.32,1.275)}.page-logo:hover{transform:scale(1.05) rotate(-2deg)}.page-header h1{font-size:2.4rem;font-weight:700;margin-top:0}.page-header h1 .highlight{color:var(--accent-orange)}.page-header .subhead{font-size:1.1rem;color:var(--text-secondary);margin-top:6px}.hero-btn-wrapper{width:100%;max-width:600px;margin:0 auto 18px auto}.hero-btn{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;padding:24px 32px;border-radius:80px;font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--accent-orange),var(--accent-mango));color:#2D2A24!important;border:none;box-shadow:0 12px 32px rgb(255 138 92 / .3);cursor:pointer;transition:all 0.35s cubic-bezier(.175,.885,.32,1.275);text-decoration:none}.hero-btn:hover{transform:scale(1.03) rotate(-0.5deg);box-shadow:0 20px 48px rgb(255 138 92 / .4)}.hero-btn .btn-icon{font-size:2.4rem}.hero-btn .btn-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.hero-btn .btn-label small{font-size:.9rem;font-weight:400;opacity:.75}.sub-btn-wrapper{width:100%;max-width:600px;margin:0 auto 40px auto;display:flex;gap:14px;flex-wrap:wrap}.hero-btn-sm{flex:1 1 0%;min-width:0;padding:14px 18px;gap:10px;font-size:1.15rem;border-radius:60px;box-shadow:0 8px 22px rgb(255 138 92 / .22)}.hero-btn-sm:hover{transform:scale(1.04) rotate(-0.5deg);box-shadow:0 14px 30px rgb(255 138 92 / .32)}.hero-btn-sm .btn-icon{font-size:1.5rem}.hero-btn-sm .btn-label small{font-size:.75rem;opacity:.72}.map-section{width:100%;max-width:880px;margin:10px auto 30px auto}.map-section .map-title{text-align:center;font-size:1.4rem;font-weight:600;color:var(--text-secondary);margin-bottom:18px;display:flex;align-items:center;justify-content:center;gap:10px}.map-section .map-title i{color:var(--accent-orange)}.map-container{position:relative;width:100%;height:55vh;max-height:650px;background:var(--map-bg,rgb(255 248 240 / .55));border-radius:32px;border:1px solid var(--border-glass);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:var(--shadow-sm);overflow:hidden;z-index:5}.leaflet-container{background-color:transparent!important;font-family:inherit}[data-theme="dark"] .leaflet-tile-container img{filter:invert(1) hue-rotate(180deg) brightness(.65) contrast(1.15)}.leaflet-control-attribution{display:none!important}.custom-map-label{background:transparent!important;border:none!important;box-shadow:none!important;font-size:13px!important;font-weight:800!important;color:#4A3E31!important;text-shadow:0 0 6px #fff,0 0 4px #fff,0 0 2px #fff;text-align:center;white-space:normal!important;transition:all 0.2s ease}.custom-map-label.active-label{color:#E65A22!important;font-size:14px!important;text-shadow:0 0 6px #fff,0 0 3px #fff}[data-theme="dark"] .custom-map-label{color:#E3D8C8!important;text-shadow:0 0 6px #1F1B17,0 0 4px #1F1B17,0 0 2px #1F1B17}[data-theme="dark"] .custom-map-label.active-label{color:#FFA375!important}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{display:none!important}.map-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 24px;margin-top:16px;font-size:.9rem;color:var(--text-secondary)}.map-legend .legend-item{display:flex;align-items:center;gap:6px}.map-legend .legend-dot{display:inline-block;width:14px;height:14px;border-radius:50%}.map-legend .legend-dot.active-dot{box-shadow:0 0 0 2px rgb(255 138 92 / .25)}.info-guide-section{width:100%;max-width:880px;margin:20px auto 40px auto;padding:0 10px}.info-guide-section .guide-title{font-size:1.3rem;font-weight:700;color:var(--text-primary);margin-bottom:20px;display:flex;align-items:center;gap:8px;border-left:4px solid var(--accent-orange);padding-left:10px}.guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.guide-card{background:var(--card-bg);border:1px solid var(--border-glass);border-radius:16px;padding:16px;box-shadow:var(--shadow-sm);transition:transform 0.25s ease,box-shadow 0.25s ease}.guide-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.guide-card.active-card{cursor:pointer;border-color:var(--accent-orange);background:linear-gradient(135deg,rgb(255 138 92 / .06),rgb(255 255 255 / .9))}[data-theme="dark"] .guide-card.active-card{background:linear-gradient(135deg,rgb(255 138 92 / .12),rgb(35 30 26 / .9))}.guide-card h3{font-size:1.1rem;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.guide-card.active-card h3{color:var(--accent-orange)}.guide-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.guide-grid-wrapper{position:relative;overflow:hidden;max-height:220px;transition:max-height 0.5s cubic-bezier(.4,0,.2,1)}.guide-grid-wrapper.expanded-wrapper{max-height:none}.guide-card-wrapper.guide-card-hidden{display:none}.guide-fade-overlay{position:absolute;bottom:0;left:0;right:0;height:100px;background:linear-gradient(to bottom,transparent,var(--bg-primary,#FFF8F0));pointer-events:none;transition:opacity 0.4s ease;z-index:2}[data-theme="dark"] .guide-fade-overlay{background:linear-gradient(to bottom,transparent,var(--bg-primary,#1F1B17))}.guide-toggle-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:20px auto 0 auto;padding:10px 28px;border:1px solid var(--border-glass);border-radius:50px;background:var(--card-bg);color:var(--text-secondary);font-size:.95rem;font-weight:600;cursor:pointer;transition:all 0.3s ease;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.guide-toggle-btn:hover{color:var(--accent-orange);border-color:var(--accent-orange);background:rgb(255 138 92 / .06);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.guide-toggle-btn .toggle-icon{font-size:.8rem;transition:transform 0.3s ease}@media (max-width:768px){.guide-grid-wrapper{max-height:480px}.guide-fade-overlay{height:80px}}.hero-btn-sm{font-size:.95rem;padding:12px 14px;gap:8px}.hero-btn-sm .btn-icon{font-size:1.2rem}.hero-btn-sm .btn-label small{font-size:.68rem}.bottom-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 32px;margin:10px 0 40px 0;padding:18px 28px;background:var(--card-bg);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:60px;border:1px solid var(--border-glass);box-shadow:var(--shadow-sm)}.bottom-nav a{color:var(--text-primary);text-decoration:none;font-weight:600;font-size:1.05rem;display:flex;align-items:center;gap:8px;transition:all 0.25s ease;padding:6px 10px;border-radius:40px}.bottom-nav a i{color:var(--accent-orange)}.bottom-nav a:hover{color:var(--accent-orange);transform:translateY(-2px);background:rgb(255 138 92 / .08)}.footer-note{margin-top:20px;margin-bottom:30px;color:var(--text-secondary);font-size:.85rem;opacity:.7;text-align:center}@media (max-width:768px){.sancan-container{padding-top:75px}.page-header h1{font-size:1.8rem}.hero-btn{font-size:1.4rem;padding:18px 20px}.map-container{height:45vh}.guide-grid{grid-template-columns:1fr}.bottom-nav{gap:10px 18px;padding:14px 18px;border-radius:40px}.page-logo{width:200px;height:100px;margin-top:10px}}.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}#real-kl-map{position:relative;overflow:hidden}.map-gesture-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgb(0 0 0 / .55);backdrop-filter:blur(4px);z-index:9999;display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:opacity 0.3s ease}.map-gesture-overlay.is-active{opacity:1}.map-gesture-overlay .gesture-text{color:#fff;font-size:15px;font-weight:500;background:rgb(255 138 92 / .95);padding:10px 20px;border-radius:30px;box-shadow:0 4px 15px rgb(0 0 0 / .25);letter-spacing:.5px;transform:translateY(10px);transition:transform 0.3s cubic-bezier(.175,.885,.32,1.275)}.map-gesture-overlay.is-active .gesture-text{transform:translateY(0)}