
:root{--navy:#1d2c3e;--cream:#f7f6f2;--paper:#fff;--warm:#eeece6;--green:#327a61;--gold:#b08b51;--muted:#66727b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Noto Sans TC",sans-serif;background:var(--cream);color:var(--navy)}a{color:inherit;text-decoration:none}button,select,input{font:inherit}button{cursor:pointer}header{position:sticky;top:0;z-index:10;background:rgba(247,246,242,.97);border-bottom:1px solid #e4e2db;backdrop-filter:blur(12px)}.nav{max-width:1200px;margin:auto;min-height:75px;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:20px}.brand{font-size:25px;font-weight:850;letter-spacing:1px}.brand small{display:block;font-size:11px;letter-spacing:2px;font-weight:500;color:var(--muted)}nav{display:flex;gap:24px;align-items:center}nav a:hover{color:var(--green)}main{max-width:1200px;margin:auto;padding:32px 24px 80px}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:700;color:var(--gold)}h1{font-size:clamp(30px,4vw,53px);line-height:1.25;margin:12px 0}h2{font-size:clamp(24px,3vw,35px);margin:0 0 10px}.lead{color:var(--muted);line-height:1.9}.intro{margin:18px 0 30px}.showcase{display:grid;grid-template-columns:1.08fr 1fr;gap:22px;margin-bottom:38px}.feature{min-height:480px;border-radius:24px;overflow:hidden;position:relative;background:linear-gradient(145deg,#65837d,#c4b69c)}.feature:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(10,28,35,.87) 100%);z-index:1}.feature .photo{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.feature-body{position:absolute;z-index:2;bottom:0;left:0;padding:34px;color:white}.feature-body h2{font-size:35px}.feature-body p{line-height:1.8;max-width:420px}.feature-body a{display:inline-block;background:#d8a65b;color:#172638;padding:12px 19px;border-radius:100px;font-weight:700}.side{display:flex;flex-direction:column;gap:14px}.side-title{font-size:23px;margin:0 0 2px}.side-card{display:grid;grid-template-columns:39% 1fr;min-height:129px;border-radius:18px;background:var(--warm);overflow:hidden}.side-card img{width:100%;height:100%;object-fit:cover}.side-card .body{padding:16px 18px}.side-card .body strong{display:block;font-size:19px;margin:4px 0}.side-card .body p{font-size:13px;color:var(--muted);margin:5px 0}.tag{font-size:12px;color:#9b793e}.btn{background:var(--green);border:0;border-radius:100px;padding:12px 20px;color:white;font-weight:750}.btn.secondary{background:white;border:1px solid #b7c8bf;color:var(--green)}.btn:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #d6ad63;outline-offset:2px}.section{margin-top:44px}.panel{background:white;border:1px solid #e8e7e1;border-radius:24px;padding:26px;box-shadow:0 8px 28px #152d3710}.fields{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:9px}.field select,.field input{width:100%;padding:13px;border:1px solid #d9ddd8;border-radius:12px;background:#fff;color:var(--navy)}.prefs{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 22px}.pref{border:1px solid #cfd6d0;border-radius:100px;background:white;padding:10px 14px;color:var(--navy)}.pref[aria-pressed=true]{background:#e2efe7;border-color:var(--green);color:#1d6348}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.notice{font-size:13px;color:var(--muted);line-height:1.8}.results{margin-top:20px}.results[hidden],.hidden[hidden]{display:none}.results h3{font-size:23px}.day{border-left:3px solid #d7e6db;margin:18px 0;padding:2px 0 2px 20px}.day h4{margin:0 0 10px}.stop{padding:13px 0;border-bottom:1px solid #eee}.stop b{display:block}.stop small{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}.attraction{background:#fff;border:1px solid #e9e6df;border-radius:19px;overflow:hidden;display:flex;flex-direction:column}.visual{height:155px;background:linear-gradient(135deg,#93aaa0,#d7c8ad);display:flex;align-items:end;padding:18px;color:white;position:relative}.visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#0006)}.visual span{position:relative;z-index:1;font-weight:800;font-size:21px}.attraction .info{padding:17px;display:flex;flex-direction:column;flex:1;gap:9px}.attraction .info p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.attraction .info .bottom{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.attraction .info button{font-size:13px;padding:9px 13px}.saved{margin-top:18px}.saved-item{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9e9e3;padding:12px 0;gap:10px}.saved-item button{border:1px solid #ccc;background:#fff;border-radius:12px;padding:6px 11px}.meta{font-size:12px;color:#64756d}.footer{background:#eae9e2;padding:25px;text-align:center;color:#58656d;font-size:12px;line-height:2}.empty{padding:20px;border:1px dashed #cbd3cc;border-radius:12px;color:var(--muted)}@media(max-width:900px){.showcase{grid-template-columns:1fr}.feature{min-height:410px}.fields{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.nav{align-items:flex-start;flex-direction:column;gap:12px}nav{gap:17px;font-size:14px}.feature{min-height:380px}.feature-body{padding:22px}.feature-body h2{font-size:29px}.side-card{grid-template-columns:37% 1fr}.side-card .body{padding:12px}.side-card .body strong{font-size:16px}.fields,.cards{grid-template-columns:1fr}.panel{padding:18px}main{padding:20px 16px 60px}}
