:root{--primary-blue:#0a6dca;--accent-teal:#63e6be;--nav-h:68px;--safe-w:1200px}*{box-sizing:border-box;margin:0;padding:0}body{background-image:url('/圖片/DSC_2287.webp');background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;font-family:'Noto Sans TC',sans-serif;overflow-x:hidden}.main-navbar{position:fixed;inset:0 0 auto 0;height:var(--nav-h);z-index:9999;background:rgba(10,109,202,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px rgba(0,0,0,.25);padding:.2rem 1.2rem;transition:.3s}.main-navbar.scrolled{background:rgba(10,109,202,.95);box-shadow:0 4px 16px rgba(0,0,0,.4)}.nav-container{max-width:var(--safe-w);margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between}.nav-left .logo{height:46px;display:block}.nav-right{display:flex;gap:1.1rem}.nav-right a{color:#fff;font-weight:800;text-decoration:none;transition:color .2s}.nav-right a:hover{color:var(--accent-teal)}@media (max-width:580px){.nav-left .logo{height:40px}.nav-right a{font-size:.9rem;margin-left:.8rem}}.main-content{max-width:var(--safe-w);margin:0 auto;padding:80px 16px 40px}.hero-section{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.05));backdrop-filter:blur(15px);border-radius:1.5rem;margin:1.5rem auto 3rem;max-width:800px;box-shadow:0 8px 32px rgba(0,0,0,.15);border:1px solid rgba(255,255,255,.2)}.hero-section h1{font-size:2.8rem;font-weight:700;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5);margin-bottom:1rem}.hero-section .subtitle{font-size:1.3rem;line-height:1.6;color:#f1f1f1;text-shadow:0 1px 4px rgba(0,0,0,.7)}.booking-container{background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border-radius:2rem;padding:2.5rem;margin:2rem auto;max-width:900px;box-shadow:0 12px 40px rgba(0,0,0,.15);border:1px solid rgba(255,255,255,.3)}.booking-form{display:grid;gap:2rem}.form-section{background:rgba(10,109,202,.05);padding:1.5rem;border-radius:1rem;border:1px solid rgba(10,109,202,.1)}.form-section h3{color:var(--primary-blue);font-size:1.4rem;margin-bottom:1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:500;margin-bottom:.5rem;color:#333;font-size:.95rem}.form-group input,.form-group select{padding:.8rem;border:2px solid rgba(10,109,202,.2);border-radius:.5rem;font-size:1rem;transition:.3s;background:rgba(255,255,255,.8)}.form-group input:focus,.form-group select:focus{outline:0;border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(10,109,202,.1)}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem}.schedule-option{background:rgba(255,255,255,.9);border:2px solid rgba(10,109,202,.2);border-radius:1rem;padding:1.5rem;cursor:pointer;transition:.3s;position:relative}.schedule-option:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(10,109,202,.15)}.schedule-option.selected{border-color:var(--primary-blue);background:rgba(10,109,202,.1)}.schedule-option input[type=radio]{position:absolute;opacity:0}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.ferry-company{font-weight:600;color:var(--primary-blue);font-size:1.1rem}.price{font-size:1.3rem;font-weight:700;color:#e74c3c}.schedule-details{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-bottom:.8rem}.arrival,.departure{text-align:center}.time{font-size:1.2rem;font-weight:600;color:#333}.location{font-size:.9rem;color:#666;margin-top:.2rem}.journey-arrow{display:flex;align-items:center;justify-content:center;color:var(--primary-blue);font-size:1.5rem}.duration{text-align:center;font-size:.85rem;color:#888}.availability{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.availability.available{color:#27ae60}.availability.limited{color:#f39c12}.availability.full{color:#e74c3c}.ticket-counter{display:flex;align-items:center;gap:1rem;background:rgba(255,255,255,.8);padding:1rem;border-radius:.8rem;border:1px solid rgba(10,109,202,.2)}.counter-controls{display:flex;align-items:center;gap:.5rem}.counter-btn{width:35px;height:35px;border:none;background:var(--primary-blue);color:#fff;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:.2s;display:flex;align-items:center;justify-content:center}.counter-btn:hover{background:#085a9c;transform:scale(1.1)}.counter-value{font-size:1.2rem;font-weight:600;min-width:30px;text-align:center}.price-summary{background:linear-gradient(135deg,var(--primary-blue),#0a8fd7);color:#fff;padding:1.5rem;border-radius:1rem;margin-top:2rem}.price-breakdown{display:flex;justify-content:space-between;margin-bottom:.5rem}.total-price{font-size:1.8rem;font-weight:700;text-align:center;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.3)}.purchase-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;padding:1.2rem 2rem;font-size:1.3rem;font-weight:600;border-radius:1rem;cursor:pointer;transition:.3s;margin-top:1.5rem;width:100%;text-transform:uppercase;letter-spacing:1px}.purchase-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(39,174,96,.3)}.purchase-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}#visitor-count{display:inline-block;padding:.5rem 1.2rem;background:rgba(0,0,0,.4);color:#fff;font-size:1rem;font-weight:500;border-radius:999px;backdrop-filter:blur(6px);box-shadow:0 4px 12px rgba(0,0,0,.2);margin:2rem auto 2.5rem;text-align:center;animation:1s ease-out fadeIn}#visitor-count:hover{background:rgba(0,0,0,.6);transform:scale(1.05);transition:.3s}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.hero-section{padding:2rem 1.5rem}.hero-section h1{font-size:2rem}.booking-container{padding:1.5rem;margin:1rem}.form-row,.schedule-grid{grid-template-columns:1fr}}@media (max-width:480px){.hero-section h1{font-size:1.6rem}.hero-section .subtitle{font-size:1rem}.booking-container{padding:1rem}}