.hub-page{background:var(--bg);min-height:100dvh;color:var(--fg)}.hub-subnav{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;max-width:1180px;margin:auto;padding:12px 24px;font-size:13px;display:flex}.hub-subnav nav{gap:22px;display:flex}.hub-subnav a{min-height:32px;color:var(--muted);align-items:center;font-weight:600;display:inline-flex}.hub-subnav a:hover{color:var(--accent)}.hub-subnav .hub-preview-link{color:var(--accent);gap:8px}.hub{max-width:1180px;font-family:var(--font-body), sans-serif;color:var(--fg);margin:auto;padding:46px 24px 88px}.hub a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.hub h1,.hub h2,.hub h3{color:var(--fg)}.hub h1{font-family:var(--font-display);letter-spacing:-1.6px;text-wrap:balance;max-width:780px;margin:14px 0 22px;font-size:clamp(34px,4.6vw,58px);font-weight:700;line-height:1.12}.hub h2{font-family:var(--font-display);margin:12px 0;font-size:28px;font-weight:700;line-height:1.2}.hub h3{font-size:18px;font-weight:700}.hub p{margin:12px 0;line-height:1.65}.hub .intro{max-width:650px;color:var(--muted);font-size:18px}.hub .eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--coral);font-size:11px;font-weight:750}.hub .grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:24px;margin:28px 0;display:grid}.hub .card{border:1px solid var(--line);background:var(--card);border-radius:24px;min-width:0;padding:28px}.hub .soft{background:var(--accent-soft)}.hub .notice{background:var(--warn-soft);color:var(--fg);border:1px solid color-mix(in srgb, var(--warn) 20%, transparent);border-radius:14px;padding:15px 18px;font-size:14px;line-height:1.65}.hub .muted{color:var(--muted);font-size:14px}.hub button,.hub .button{background:var(--accent);min-height:48px;color:var(--accent-fg);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:14px;font-weight:650;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex}.hub button:hover,.hub .button:hover{transform:translateY(-1px)}.hub button.secondary,.hub .button.secondary{background:var(--card);color:var(--fg);border-color:var(--line)}.hub button:disabled{opacity:.5;cursor:not-allowed;transform:none}.hub .actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.hub label{margin:16px 0 6px;font-size:14px;display:block}.hub input:not([type=checkbox]),.hub textarea,.hub select{background:var(--card);border:1px solid var(--line);width:100%;color:var(--fg);font:inherit;border-radius:12px;padding:13px 16px;display:block}.hub input::placeholder,.hub textarea::placeholder{color:var(--muted);opacity:1}.hub textarea{min-height:110px}.hub .check{align-items:flex-start;gap:10px;line-height:1.5;display:flex}.hub .check input{accent-color:var(--accent);flex-shrink:0;margin-top:4px}.hub ol{padding-left:24px}.hub li{margin:14px 0;line-height:1.6}.hub .day{border-top:1px solid var(--line);grid-template-columns:58px 1fr;gap:14px;padding:18px 0;font-size:14px;line-height:1.7;display:grid}.hub .day strong{color:var(--accent)}.hub .pill{background:var(--accent-soft);color:var(--fg);border-radius:30px;align-items:center;margin-right:6px;padding:6px 11px;font-size:12px;display:inline-flex}.hub .error{border-left:3px solid var(--danger);background:var(--danger-soft);margin:16px 0;padding:14px}.hub details{margin:16px 0}.hub summary{cursor:pointer;padding:10px 0;font-weight:650}.hub pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:450px;font-size:12px;overflow:auto}.hub :focus-visible{outline:3px solid var(--coral);outline-offset:4px}.hub-intro{grid-template-columns:1fr auto;align-items:end;gap:32px;margin-bottom:38px;display:grid}.hub-intro p{max-width:610px}.hub-intro .hub-intro-note{max-width:215px;color:var(--muted);border-left:1px solid var(--line);margin-bottom:20px;padding-left:22px;font-size:13px}.hub-feature{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:28px;grid-template-columns:1.08fr 1fr;display:grid;overflow:hidden}.hub-feature-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:34px 38px;display:flex}.hub-feature-copy h2{letter-spacing:-.7px;max-width:470px;margin:18px 0 8px;font-size:clamp(29px,3vw,40px)}.hub-feature-copy p{color:var(--muted);font-size:15px}.hub-byline{align-items:center;gap:11px;margin-top:18px;display:flex}.hub-avatar{border:1px solid var(--line);background:var(--accent-soft);width:38px;height:38px;font-family:var(--font-display);color:var(--accent);border-radius:50%;place-items:center;font-size:18px;display:grid}.hub-byline small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.hub-byline strong{font-size:13px}.hub-route-art{isolation:isolate;background:#d8e8e5;min-height:380px;position:relative;overflow:hidden}.hub-route-art>svg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hub-art-tag{color:#294d43;background:#fff9ee;border:1px solid #cbd8cb;border-radius:30px;padding:7px 13px;font-size:11px;font-weight:650;position:absolute;top:22px;left:24px}.hub-art-compi{align-items:center;gap:7px;display:flex;position:absolute;bottom:24px;left:22px}.hub-art-compi span{color:#294d43;font-family:var(--font-hand-face), cursive;font-size:19px;line-height:1.1;transform:rotate(-5deg)}.hub-art-caption{color:#496a61;font-size:10px;position:absolute;bottom:17px;right:20px}.hub-route-art-compact{border-radius:18px;min-height:230px;margin-bottom:20px}.hub-section-head{justify-content:space-between;align-items:center;gap:24px;margin:48px 0 20px;display:flex}.hub-section-head h2{margin:0;font-size:25px}.hub-section-head p{color:var(--muted);margin:0;font-size:13px}.hub-search{width:100%;max-width:360px;position:relative}.hub-search label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.hub .hub-search input{padding-left:40px;font-size:13px}.hub-search>svg{width:18px;height:18px;color:var(--muted);position:absolute;top:15px;left:15px}.hub-how{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px;padding:30px 0;display:grid}.hub-how>div{grid-template-columns:32px 1fr;gap:12px;display:grid}.hub-how .hub-step{font-family:var(--font-display);color:var(--coral);font-size:23px}.hub-how h3{margin:2px 0 5px;font-size:14px}.hub-how p{color:var(--muted);margin:0;font-size:13px}.hub-local-note{border:1px dashed var(--line);color:var(--muted);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin:22px 0;padding:15px 19px;font-size:12px;display:flex}.hub-local-note a{white-space:nowrap;font-weight:650}.hub-detail-top{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.hub-detail-top a{font-size:13px}.hub-detail-hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:36px;margin:14px 0 38px;display:grid}.hub-detail-hero .hub-route-art{border-radius:24px;min-height:360px}.hub-detail-hero h1{font-size:clamp(32px,3.7vw,48px)}.hub-detail-hero .intro{font-size:16px}.hub-detail-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:30px;display:grid}.hub-detail-grid .card{padding:28px 30px}.hub-detail-aside{position:sticky;top:88px}.hub-detail-aside h2{font-size:24px}.hub-detail-aside .actions{display:grid}.hub-detail-aside .actions button,.hub-detail-aside .actions a{width:100%}.hub .hub-detail-aside p{color:var(--muted);font-size:13px}.hub-author-box{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.hub-author-box a{font-size:13px}.hub-status{color:var(--warn);background:var(--warn-soft);border-radius:50px;align-items:center;gap:6px;padding:6px 11px;font-size:11px;font-weight:650;display:inline-flex}.hub-status:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}@media (max-width:800px){.hub-intro{grid-template-columns:1fr}.hub-intro .hub-intro-note{display:none}.hub-feature{grid-template-columns:1fr 1fr}.hub-feature-copy{padding:26px}.hub-detail-hero{grid-template-columns:1fr}.hub-detail-hero .hub-route-art{min-height:300px}.hub-detail-grid{grid-template-columns:1fr}.hub-detail-aside{grid-row:1;position:static}.hub-how{gap:16px}}@media (max-width:600px){.hub{padding:30px 18px 56px}.hub-subnav{flex-wrap:wrap;gap:8px;padding:10px 18px}.hub-subnav nav{gap:18px}.hub-subnav .hub-preview-link{font-size:11px}.hub h1{letter-spacing:-1px;font-size:37px}.hub .card{padding:22px}.hub-intro{margin-bottom:24px}.hub-feature{border-radius:22px;grid-template-columns:1fr}.hub-route-art{min-height:280px}.hub-feature-copy{padding:24px}.hub-feature-copy h2{font-size:32px}.hub-section-head{flex-direction:column;align-items:flex-start;gap:16px;margin-top:34px}.hub-search{max-width:none}.hub-how{grid-template-columns:1fr;gap:22px;padding-top:24px}.hub-local-note{flex-direction:column;align-items:flex-start;gap:7px}.hub-detail-top{align-items:flex-start}.hub-detail-hero{gap:20px;margin-bottom:24px}.hub-detail-hero h1{font-size:36px}.hub-detail-hero .hub-route-art{min-height:260px}.hub-detail-grid .card{padding:22px}.hub-detail-grid{gap:20px}.hub .day{grid-template-columns:49px 1fr;gap:10px}}.hub-generic-art{background:var(--accent-soft);min-height:300px;color:var(--accent);flex-direction:column;justify-content:center;align-items:center;gap:15px;padding:28px;display:flex}.hub-generic-art span{font-family:var(--font-display);text-align:center;font-size:27px}.hub-generic-art small{color:var(--muted);font-size:12px}.hub-search{gap:8px;max-width:440px;display:flex}.hub .hub-search input{min-width:0;padding-left:16px}.hub .hub-search button{min-height:44px;padding:10px 16px}.hub-art-compi img{border-radius:13px}.hub-stop+.hub-stop{margin-top:1.25rem}.hub-stop>p:first-child{margin-bottom:.35rem}.hub-stays{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem}.hub-stay+.hub-stay{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}
