@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--primary:#ff385c;--primary-active:#e00b41;--primary-disabled:#ffd1da;--canvas:#fff;--surface:#fff;--surface-soft:#f7f7f7;--surface-strong:#f2f2f2;--ink:#222;--body:#3f3f3f;--muted:#6a6a6a;--hairline:#ddd;--hairline-soft:#ebebeb;--shadow:#00000005 0 0 0 1px,#0000000a 0 2px 6px,#0000001a 0 4px 8px;--radius-sm:8px;--radius-md:14px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--canvas)}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Circular,-apple-system,system-ui,Roboto,Helvetica Neue,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}a,button,input{-webkit-tap-highlight-color:transparent}:is(a:focus-visible,button:focus-visible,input:focus-visible){outline-offset:3px;outline:3px solid #ff385c52}.site-background{display:none}.skip-link{z-index:30;color:#fff;border-radius:var(--radius-sm);background:var(--primary);padding:10px 14px;transition:transform .2s;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-frame{width:min(100%,1080px);min-height:100vh;margin:0 auto;padding:36px 28px 128px}.app-header{border-bottom:1px solid var(--hairline-soft);justify-content:space-between;align-items:center;min-height:72px;margin-bottom:28px;display:flex}.app-header span{color:var(--muted);font-size:.82rem;font-weight:500}.app-header h1{letter-spacing:-.04em;text-wrap:balance;margin:2px 0 0;font-size:clamp(1.75rem,4vw,2.15rem);font-weight:600;line-height:1.15}.avatar{color:#fff;background:var(--primary);border-radius:50%;place-items:center;width:44px;height:44px;transition:background .2s,transform .2s;display:grid}.avatar:hover{background:var(--primary-active);transform:scale(1.03)}.hero-card{color:#fff;border-radius:var(--radius-md);background:var(--surface-strong);align-items:flex-end;min-height:470px;padding:40px;display:flex;position:relative;overflow:hidden}.hero-card>img{object-fit:cover;transition:transform .7s}.hero-card:hover>img{transform:scale(1.02)}.hero-shade{background:linear-gradient(#0000000a 25%,#000000bd 100%);position:absolute;inset:0}.hero-copy{z-index:2;max-width:600px;position:relative}.live-pill{color:#222;width:max-content;box-shadow:var(--shadow);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:.75rem;font-weight:600;display:flex}.hero-card h2{letter-spacing:-.065em;text-wrap:balance;max-width:520px;margin:18px 0 12px;font-size:clamp(2.35rem,7vw,4.4rem);font-weight:600;line-height:.95}.hero-card p{color:#ffffffe6;text-wrap:pretty;max-width:500px;margin:0 0 24px;font-size:1rem;line-height:1.5}.primary-button{color:#fff;border-radius:var(--radius-sm);background:var(--primary);align-items:center;gap:8px;width:max-content;min-height:48px;padding:12px 20px;font-size:.94rem;font-weight:600;transition:background .2s,transform .2s;display:flex}.primary-button:hover{background:var(--primary-active)}.primary-button:active{transform:scale(.98)}.section-block{margin-top:64px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin:0 0 18px;display:flex}.section-heading h2,.checklist-card h2{letter-spacing:-.035em;text-wrap:balance;margin:2px 0 0;font-size:1.4rem;font-weight:600;line-height:1.2}.section-heading>a{color:var(--primary);font-size:.88rem;font-weight:600}.section-heading>a:hover{text-decoration:underline}.section-kicker,.day-theme{color:var(--muted);letter-spacing:.02em;font-size:.74rem;font-weight:600}.map-card{border-radius:var(--radius-md);background:var(--surface-soft);height:420px;display:block;position:relative;overflow:hidden}.map-card img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.map-card:hover img{transform:scale(1.015)}.map-chip{color:#222;box-shadow:var(--shadow);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:10px 14px;font-size:.78rem;font-weight:600;display:flex;position:absolute;bottom:16px;left:16px}.action-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.action-card{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;align-items:flex-start;min-height:132px;padding:20px;transition:box-shadow .2s,transform .2s;display:flex}.action-card:first-child{grid-column:span 2}.action-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.action-card:active{transform:scale(.99)}.action-icon{width:40px;height:40px;color:var(--primary);background:var(--surface-soft);border-radius:50%;place-items:center;margin-bottom:auto;display:grid}.action-card strong{margin-top:18px;font-size:.98rem;font-weight:600}.action-card small{color:var(--muted);margin-top:3px;font-size:.82rem}.flight-snapshot{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);margin-top:64px;padding:24px}.flight-line{letter-spacing:-.04em;font-variant-numeric:tabular-nums;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;font-size:1.8rem;font-weight:600;display:grid}.flight-line div{color:var(--primary);align-items:center;gap:8px;display:flex}.flight-line i{background:var(--hairline);flex:1;height:1px}.flight-meta{border-top:1px solid var(--hairline-soft);justify-content:space-between;align-items:end;margin-top:18px;padding-top:17px;display:flex}.flight-meta div{flex-direction:column;gap:3px;display:flex}.flight-meta small{color:var(--muted);font-size:.78rem}.flight-meta strong{font-variant-numeric:tabular-nums}.flight-meta a{color:var(--primary);align-items:center;gap:4px;font-size:.86rem;font-weight:600;display:flex}.program-overview{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:1.08fr .92fr;min-height:390px;display:grid;overflow:hidden}.program-map{background:var(--surface-soft);min-height:390px;position:relative;overflow:hidden}.program-map img{object-fit:cover}.program-map>span{color:#222;box-shadow:var(--shadow);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:10px 13px;font-size:.75rem;font-weight:600;display:flex;position:absolute;bottom:16px;left:16px}.program-overview-copy{flex-direction:column;justify-content:center;padding:36px;display:flex}.program-overview-copy h2{letter-spacing:-.05em;text-wrap:balance;margin:8px 0 13px;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:600;line-height:1.04}.program-overview-copy>p{color:var(--body);text-wrap:pretty;margin:0;font-size:.94rem;line-height:1.55}.program-stats{border-top:1px solid var(--hairline-soft);grid-template-columns:repeat(3,1fr);margin-top:28px;padding-top:20px;display:grid}.program-stats span{color:var(--muted);flex-direction:column;font-size:.7rem;display:flex}.program-stats strong{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:600}.day-jump{z-index:5;border:1px solid var(--hairline);width:max-content;max-width:100%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border-radius:999px;gap:4px;margin:22px auto 0;padding:6px;display:flex;position:sticky;top:12px;overflow:auto}.day-jump a{border-radius:999px;justify-content:center;align-items:center;gap:7px;min-width:66px;min-height:44px;padding:8px 14px;transition:background .2s,color .2s;display:flex}.day-jump a:hover{color:var(--primary);background:var(--surface-soft)}.day-jump span{color:var(--muted);font-size:.65rem;font-weight:600}.day-jump strong{font-variant-numeric:tabular-nums;font-size:.94rem;font-weight:600}.itinerary-days{gap:32px;margin-top:28px;display:grid}.itinerary-day{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);scroll-margin-top:96px;overflow:hidden}.day-hero{color:#fff;min-height:390px;position:relative;overflow:hidden}.day-hero>img{object-fit:cover;transition:transform .5s}.itinerary-day:hover .day-hero>img{transform:scale(1.01)}.day-hero-shade{background:linear-gradient(#0000000d 18%,#000000bd 100%);position:absolute;inset:0}.day-date{color:#222;border-radius:var(--radius-md);width:70px;height:78px;box-shadow:var(--shadow);background:#fff;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:18px;left:18px}.day-date span,.day-date small{letter-spacing:.04em;font-size:.58rem;font-weight:600}.day-date strong{font-variant-numeric:tabular-nums;font-size:1.85rem;font-weight:600;line-height:1}.day-hero-copy{position:absolute;bottom:26px;left:28px;right:28px}.day-hero-copy>span{letter-spacing:.03em;font-size:.7rem;font-weight:600}.day-hero-copy h2{letter-spacing:-.05em;text-wrap:balance;max-width:620px;margin:5px 0 8px;font-size:clamp(1.9rem,5vw,2.8rem);font-weight:600;line-height:1.02}.day-hero-copy>p{color:#ffffffe6;text-wrap:pretty;max-width:590px;margin:0;font-size:.94rem;line-height:1.5}.day-hero-copy>div{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.day-hero-copy small{color:#222;box-shadow:var(--shadow);background:#fff;border-radius:999px;align-items:center;gap:5px;padding:7px 10px;font-size:.68rem;font-weight:600;display:flex}.day-detail-grid{grid-template-columns:minmax(0,1.45fr) minmax(245px,.72fr);gap:36px;padding:30px;display:grid}.schedule-list{margin:0;padding:0;list-style:none}.schedule-list li{grid-template-columns:34px 55px 1fr;gap:12px;min-height:94px;display:grid;position:relative}.schedule-list li:not(:last-child) .schedule-marker:after{content:"";background:var(--hairline);width:1px;position:absolute;top:31px;bottom:-5px;left:16px}.schedule-marker{position:relative}.schedule-marker>span{z-index:1;color:#fff;background:var(--primary);border-radius:50%;place-items:center;width:33px;height:33px;font-size:.7rem;font-weight:600;display:grid;position:relative}.schedule-list time{color:var(--primary);font-variant-numeric:tabular-nums;padding-top:7px;font-size:.8rem;font-weight:600}.schedule-copy{padding:4px 0 24px}.schedule-copy strong{letter-spacing:-.01em;font-size:.96rem;font-weight:600;display:block}.schedule-copy p{color:var(--body);text-wrap:pretty;margin:5px 0 8px;font-size:.82rem;line-height:1.5}.schedule-copy small{width:max-content;color:var(--muted);background:var(--surface-soft);border-radius:6px;padding:4px 7px;font-size:.66rem;font-weight:500;display:block}.day-aside{flex-direction:column;gap:12px;display:flex}.day-side-image{border-radius:var(--radius-md);background:var(--surface-soft);min-height:190px;position:relative;overflow:hidden}.day-side-image img{object-fit:cover}.hike-card{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface-soft);padding:18px}.hike-title{align-items:flex-start;gap:10px;display:flex}.hike-title>svg{color:var(--primary);flex:none}.hike-title div{gap:2px;display:grid}.hike-title span{color:var(--primary);letter-spacing:.02em;font-size:.66rem;font-weight:600}.hike-title strong{font-size:.9rem;font-weight:600;line-height:1.25}.hike-stats{border-block:1px solid var(--hairline);grid-template-columns:repeat(3,1fr);margin-top:15px;padding:12px 0;display:grid}.hike-stats span{color:var(--muted);flex-direction:column;font-size:.6rem;display:flex}.hike-stats strong{color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:2px;font-size:.76rem;font-weight:600}.hike-card>p{color:var(--body);margin:13px 0;font-size:.75rem;line-height:1.5}.hike-links{flex-wrap:wrap;gap:7px;display:flex}.hike-links a{min-height:36px;color:var(--primary);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:5px;padding:8px 10px;font-size:.68rem;font-weight:600;display:flex}.hike-links a:hover{text-decoration:underline}.day-tip{border-radius:var(--radius-md);background:var(--surface-soft);align-items:flex-start;gap:11px;padding:17px;display:flex}.day-tip>svg{color:var(--primary);flex:none;margin-top:2px}.day-tip span{color:var(--primary);letter-spacing:.02em;font-size:.66rem;font-weight:600}.day-tip p{color:var(--body);margin:4px 0 0;font-size:.76rem;line-height:1.5}.day-actions{gap:8px;display:grid}.day-actions a{border:1px solid var(--ink);border-radius:var(--radius-sm);align-items:center;gap:8px;min-height:46px;padding:12px 14px;font-size:.76rem;font-weight:600;transition:background .2s,transform .2s;display:flex}.day-actions a:first-child{color:#fff;border-color:var(--primary);background:var(--primary)}.day-actions a:hover{box-shadow:var(--shadow)}.day-actions a:first-child:hover{background:var(--primary-active)}.day-actions a:active{transform:scale(.99)}.day-actions a svg:last-child{opacity:.7;margin-left:auto}.place-grid{grid-template-columns:repeat(2,1fr);gap:36px 16px;display:grid}.place-card{min-width:0;display:block}.place-photo{aspect-ratio:1.12;border-radius:var(--radius-md);background:var(--surface-soft);position:relative;overflow:hidden}.place-photo img{object-fit:cover;transition:transform .35s}.place-card:hover .place-photo img{transform:scale(1.025)}.place-photo>span{color:#222;box-shadow:var(--shadow);background:#fff;border-radius:999px;padding:6px 10px;font-size:.68rem;font-weight:600;position:absolute;top:12px;left:12px}.place-photo>i{color:#222;width:34px;height:34px;box-shadow:var(--shadow);background:#fff;border-radius:50%;place-items:center;font-style:normal;display:grid;position:absolute;top:12px;right:12px}.place-copy{padding:12px 2px 0}.place-copy h2{letter-spacing:-.015em;margin:0;font-size:1rem;font-weight:600;line-height:1.3}.place-copy p{color:var(--muted);margin:3px 0 0;font-size:.82rem}.place-card:hover .place-copy h2{text-decoration:underline}.food-intro{color:#fff;border-radius:var(--radius-md);background:var(--primary);margin-bottom:24px;padding:34px}.food-intro>span{opacity:.86;font-size:.72rem;font-weight:600}.food-intro h2{letter-spacing:-.045em;text-wrap:balance;max-width:700px;margin:8px 0 0;font-size:clamp(1.7rem,4.5vw,2.55rem);font-weight:600;line-height:1.08}.restaurant-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.restaurant-card{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:112px 1fr;min-height:170px;transition:box-shadow .2s,transform .2s;display:grid;overflow:hidden}.restaurant-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.restaurant-card:active{transform:scale(.99)}.food-art{min-height:100%;color:var(--ink);background:var(--surface-soft);flex-direction:column;justify-content:space-between;padding:15px;display:flex}.food-art>span{font-size:2rem}.food-art small{color:#fff;background:var(--primary);border-radius:6px;width:max-content;padding:4px 7px;font-size:.67rem;font-weight:600}.restaurant-copy{flex-direction:column;padding:18px 16px;display:flex}.restaurant-copy>span{color:var(--primary);letter-spacing:.02em;font-size:.68rem;font-weight:600}.restaurant-copy h2{letter-spacing:-.02em;margin:4px 0 7px;font-size:1rem;font-weight:600;line-height:1.25}.restaurant-copy p{color:var(--body);margin:0;font-size:.78rem;line-height:1.45}.restaurant-copy i{color:var(--primary);align-items:center;gap:4px;margin-top:auto;padding-top:12px;font-size:.76rem;font-style:normal;font-weight:600;display:flex}.boarding-pass{color:var(--ink);border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.airline{color:#fff;background:var(--primary);justify-content:space-between;padding:18px 22px;display:flex}.airline strong{letter-spacing:.05em;font-size:.78rem;font-weight:600}.airline span{opacity:.9;font-size:.78rem}.airport-route{letter-spacing:-.05em;font-variant-numeric:tabular-nums;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:30px 22px 24px;font-size:2.25rem;font-weight:600;display:grid}.airport-route div{color:var(--primary);align-items:center;gap:8px;display:flex}.airport-route i{background:var(--hairline);flex:1;height:1px}.flight-pair{grid-template-columns:1fr 1fr;gap:12px;padding:0 22px 22px;display:grid}.flight-pair>div{border-radius:var(--radius-sm);background:var(--surface-soft);gap:3px;padding:15px;display:grid}.flight-pair svg{color:var(--primary)}.flight-pair span,.flight-pair small{color:var(--muted);font-size:.74rem}.flight-pair strong{font-variant-numeric:tabular-nums;font-size:.94rem;font-weight:600}.travel-actions{gap:10px;margin-top:16px;display:grid}.travel-actions>a,.travel-actions>div{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);align-items:center;gap:13px;min-height:78px;padding:14px;transition:box-shadow .2s,transform .2s;display:flex}.travel-actions>a:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.travel-actions>*>svg:last-child{color:var(--muted);margin-left:auto}.travel-icon{width:48px;height:48px;color:var(--primary);background:var(--surface-soft);border-radius:50%;flex:none;place-items:center;display:grid}.travel-actions div div{flex-direction:column;gap:3px;display:flex}.travel-actions strong{font-size:.9rem;font-weight:600}.travel-actions small{color:var(--muted);font-size:.78rem}.checklist-card{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface);margin-top:16px;padding:24px;display:grid}.checklist-card h2{margin-bottom:15px}.checklist-card label{border-top:1px solid var(--hairline-soft);align-items:center;gap:10px;min-height:48px;padding:11px 0;font-size:.88rem;display:flex}.checklist-card input{width:20px;height:20px;accent-color:var(--primary)}.credits{color:var(--muted);margin:28px 4px 0;font-size:.72rem;line-height:1.55}.tab-bar{z-index:10;left:50%;bottom:max(18px,env(safe-area-inset-bottom));border:1px solid var(--hairline);width:min(100% - 32px,620px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);background:#ffffffe6;border-radius:999px;grid-template-columns:repeat(5,1fr);padding:7px 9px;display:grid;position:fixed;transform:translate(-50%)}.tab-bar a{min-height:48px;color:var(--muted);border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:5px 2px;font-size:.62rem;font-weight:500;transition:color .2s,background .2s,transform .2s;display:flex}.tab-bar a:hover{color:var(--ink);background:var(--surface-soft)}.tab-bar a.active{color:var(--primary)}.tab-bar a:active{transform:scale(.96)}@media (max-width:744px){.app-frame{padding:22px 16px 118px}.app-header{min-height:64px;margin-bottom:22px}.avatar{width:42px;height:42px}.hero-card{min-height:470px;padding:26px 22px}.hero-card h2{font-size:clamp(2.25rem,12vw,3.6rem)}.map-card{height:340px}.section-block,.flight-snapshot{margin-top:48px}.action-grid{grid-template-columns:1fr}.action-card:first-child{grid-column:auto}.program-overview{grid-template-columns:1fr}.program-map{min-height:290px}.program-overview-copy{padding:26px 22px}.day-jump{margin-top:16px}.itinerary-days{gap:22px}.day-hero{min-height:410px}.day-hero-copy{bottom:20px;left:20px;right:20px}.day-hero-copy>p{font-size:.86rem}.day-detail-grid{grid-template-columns:1fr;gap:10px;padding:24px 18px}.day-aside{padding-top:2px}.day-side-image{min-height:230px}.place-grid{grid-template-columns:1fr;gap:30px}.place-photo{aspect-ratio:1.15}.restaurant-grid,.flight-pair{grid-template-columns:1fr}}@media (max-width:410px){.hero-card{min-height:440px}.program-stats{gap:8px}.schedule-list li{grid-template-columns:32px 48px 1fr;gap:9px}.restaurant-card{grid-template-columns:96px 1fr}.tab-bar{width:calc(100% - 20px)}.tab-bar a{font-size:.56rem}}@media (prefers-color-scheme:dark){:root{--canvas:#111;--surface:#1c1c1c;--surface-soft:#242424;--surface-strong:#2b2b2b;--ink:#f5f5f5;--body:#dedede;--muted:#aaa;--hairline:#3a3a3a;--hairline-soft:#303030;--shadow:#00000038 0 0 0 1px,#0003 0 2px 6px,#00000052 0 4px 8px}.day-jump,.tab-bar{background:#1c1c1ce6}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
