@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap";
:root{--ink:#111820;--white:#fff;--sand:#d6d2c4;--bronze:#bc8a5f;--mist:#e9eef2;--radius:6px}*{box-sizing:border-box}html{scroll-behavior:smooth}@keyframes fernweh-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.entrance{animation:.58s cubic-bezier(.2,.65,.3,1) both fernweh-enter}.entrance-1{animation-delay:40ms}.entrance-2{animation-delay:.1s}.entrance-3{animation-delay:.16s}.entrance-4{animation-delay:.22s}.entrance-5{animation-delay:.28s}.entrance-6{animation-delay:.34s}:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}body{background:var(--mist);color:var(--ink);margin:0;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{min-height:100svh;padding-top:env(safe-area-inset-top)}.sidebar{background:var(--ink);width:248px;color:var(--white);z-index:5;flex-direction:column;padding:34px 24px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;margin-bottom:76px;display:flex}.brand-mark{border:1px solid var(--bronze);width:38px;height:38px;color:var(--sand);place-items:center;font-family:Playfair Display,Georgia,serif;font-size:24px;display:grid}.brand-copy{letter-spacing:2px;flex-direction:column;gap:3px;display:flex}.brand-copy strong{font-size:13px;font-weight:600}.brand-copy small{color:var(--sand);letter-spacing:1.7px;font-size:8px}.sidebar-label,.eyebrow,.section-meta,.panel-label,.trip-dates>span,.breadcrumb,.private-pill,.country-code,.overview-item>span{letter-spacing:1.5px;font-size:9px;font-weight:700}.sidebar-label{color:var(--sand);margin:0 0 17px 8px}.side-nav{gap:7px;display:grid}.nav-link{border-radius:var(--radius);color:var(--sand);align-items:center;gap:13px;padding:13px 12px;font-size:12px;transition:background .2s,color .2s,transform .2s;display:flex}.nav-link:hover,.nav-link.active{background:var(--mist);color:var(--ink)}.nav-link:hover{transform:translate(2px)}.sidebar-bottom{color:var(--sand);align-items:center;gap:9px;margin-top:auto;font-size:10px;display:flex}.main-area{min-height:100vh;margin-left:248px}.topbar{border-bottom:1px solid var(--sand);background:var(--white);justify-content:space-between;align-items:center;height:76px;padding:0 5.2%;display:flex}.breadcrumb{color:var(--ink);margin:0;font-size:8px}.breadcrumb span{color:var(--bronze);padding:0 9px}.private-pill{border:1px solid var(--sand);color:var(--ink);border-radius:var(--radius);align-items:center;gap:7px;padding:7px 9px;font-size:8px;display:inline-flex}.content{max-width:1120px;margin:auto;padding:58px 5.2% 30px}.welcome-row{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px;display:flex}.eyebrow{color:var(--bronze);margin:0 0 12px}h1,h2,p{margin-top:0}h1{letter-spacing:-1px;color:var(--ink);margin:0 0 12px;font-family:Playfair Display,Georgia,serif;font-size:clamp(38px,4.5vw,56px);font-weight:500;line-height:1.06}.intro{color:var(--ink);margin:0;font-size:13px;line-height:1.7}.trip-dates{border-left:1px solid var(--sand);flex-direction:column;gap:9px;min-width:230px;margin-bottom:4px;padding:7px 0 7px 22px;display:flex}.trip-dates>span{color:var(--bronze);font-size:8px}.trip-dates strong{letter-spacing:.3px;color:var(--ink);font-size:11px}.trip-dates strong b{color:var(--bronze);padding:0 4px}.trip-dates small{color:var(--ink);font-size:10px}.countdown-panel{background:var(--ink);color:var(--white);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:20px;padding:25px 29px;display:flex}.panel-label{color:var(--sand);margin:0 0 10px;font-size:8px}.countdown-value{color:var(--white);margin:0;font-family:Playfair Display,Georgia,serif;font-size:42px;line-height:1}.countdown-value span{color:var(--sand);margin-left:9px;font-family:DM Sans,sans-serif;font-size:11px}.text-link{color:var(--sand);border-bottom:1px solid var(--bronze);align-items:center;gap:8px;padding-bottom:7px;font-size:11px;transition:color .2s,gap .2s;display:inline-flex}.text-link:hover{color:var(--bronze);gap:12px}.route-stop{transition:background .18s}.route-stop:hover{background:#f8f7f3}.check-row{transition:background .18s}.check-row:hover{background:#f8f7f3}.access-primary{transition:background .18s,border-color .18s,transform .18s}.access-primary:not(:disabled):hover{background:#c99a72;border-color:#c99a72}.access-primary:not(:disabled):active{transform:scale(.98)}.overview-row{border-bottom:1px solid var(--sand);background:var(--white);grid-template-columns:repeat(3,1fr);margin:0 0 50px;display:grid}.overview-item{border-right:1px solid var(--sand);flex-direction:column;gap:8px;padding:21px 24px;display:flex}.overview-item:last-child{border-right:0}.overview-item>span{color:var(--bronze);font-size:8px}.overview-item strong{font-family:Playfair Display,Georgia,serif;font-size:27px;font-weight:500}.overview-item strong small{font-family:DM Sans,sans-serif;font-size:10px;font-weight:400}.section-block{margin-bottom:48px;scroll-margin-top:25px}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:17px;display:flex}.section-heading .eyebrow{margin-bottom:7px}.section-heading h2{color:var(--ink);margin:0;font-family:Playfair Display,Georgia,serif;font-size:27px;font-weight:500}.section-meta{color:var(--ink);padding-bottom:4px;font-size:8px}.route-list{background:var(--white);border:1px solid var(--sand);border-radius:var(--radius);margin:0;padding:8px 0;list-style:none}.route-stop{align-items:center;gap:17px;min-height:54px;padding:7px 23px;display:flex}.route-stop:first-child{animation:.45s 80ms both fernweh-enter}.route-stop:nth-child(2){animation:.45s .13s both fernweh-enter}.route-stop:nth-child(3){animation:.45s .18s both fernweh-enter}.route-stop:nth-child(4){animation:.45s .23s both fernweh-enter}.route-stop:nth-child(5){animation:.45s .28s both fernweh-enter}.route-stop:nth-child(6){animation:.45s .33s both fernweh-enter}.route-stop:nth-child(7){animation:.45s .38s both fernweh-enter}.route-stop:nth-child(8){animation:.45s .43s both fernweh-enter}.route-stop:nth-child(9){animation:.45s .48s both fernweh-enter}.route-marker{border:1px solid var(--sand);width:34px;height:34px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:18px;line-height:1;display:grid;overflow:hidden}.route-marker.endpoint{border-color:var(--bronze);color:var(--bronze)}.destination-info{flex-direction:column;gap:3px;display:flex}.destination-info strong{color:var(--ink);font-size:12px;font-weight:600}.destination-info small{color:var(--ink);font-size:9px}.country-code{color:var(--bronze);margin-left:auto;font-size:8px}.section-note{color:var(--ink);margin:12px 0 0;font-size:10px}.progress-count{color:var(--ink);font-size:10px}.prep-layout{background:var(--white);border:1px solid var(--sand);border-radius:var(--radius);grid-template-columns:190px 1fr;gap:28px;padding:24px;display:grid}.prep-progress{border-right:1px solid var(--sand);flex-direction:column;align-items:flex-start;gap:7px;padding:8px 24px 8px 4px;display:flex}.prep-progress strong{font-family:Playfair Display,Georgia,serif;font-size:38px;font-weight:500}.prep-progress>span{font-size:10px}.progress-track{background:var(--mist);width:100%;height:4px;margin-top:12px}.progress-track span{background:var(--bronze);height:100%;transition:width .65s cubic-bezier(.2,.65,.3,1);display:block}.prep-list{min-width:0}.check-row{border-bottom:1px solid var(--mist);cursor:pointer;align-items:center;gap:12px;min-height:45px;display:flex}.check-row:last-of-type{border-bottom:0}.check-row input{opacity:0;width:1px;height:1px;position:absolute}.custom-check{border:1px solid var(--sand);border-radius:3px;flex:none;place-items:center;width:17px;height:17px;display:grid}.check-row input:checked+.custom-check{background:var(--ink);border-color:var(--ink)}.check-row input:checked+.custom-check:after{content:"✓";color:var(--white);font-size:11px}.check-row input:focus-visible+.custom-check{outline:2px solid var(--bronze);outline-offset:2px}.check-text{color:var(--ink);font-size:11px}.check-text.done{color:var(--sand);text-decoration:line-through}.local-note{color:var(--ink);margin:13px 0 0;font-size:9px;line-height:1.5}.footer{border-top:1px solid var(--sand);color:var(--ink);letter-spacing:1.5px;justify-content:space-between;padding:21px 0 8px;font-size:8px;display:flex}.footer span:first-child{font-weight:700}.mobile-nav{display:none}@media (max-width:1050px){.sidebar{width:215px}.main-area{margin-left:215px}.content{padding-left:4%;padding-right:4%}}@media (max-width:760px){.sidebar{display:none}.main-area{padding-bottom:calc(69px + env(safe-area-inset-bottom));margin-left:0}.topbar{height:60px;padding:0 20px}.content{padding:38px 20px 24px}.welcome-row{margin-bottom:25px;display:block}h1{font-size:43px}.trip-dates{border-left:0;border-top:1px solid var(--sand);min-width:0;margin-top:22px;padding:14px 0 0}.countdown-panel{padding:22px 20px}.countdown-value{font-size:36px}.countdown-value span{margin:8px 0 0;display:block}.overview-row{margin-bottom:40px}.overview-item{padding:17px 13px}.overview-item strong{font-size:23px}.section-heading h2{font-size:24px}.section-meta{font-size:7px}.route-stop{gap:13px;padding:7px 15px}.prep-layout{grid-template-columns:1fr;gap:16px;padding:18px}.prep-progress{border-right:0;border-bottom:1px solid var(--sand);padding:0 0 17px}.progress-track{margin-top:5px}.footer{gap:12px;font-size:7px}.mobile-nav{height:calc(69px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:var(--ink);z-index:10;border-top:1px solid var(--bronze);justify-content:space-around;align-items:center;display:flex;position:fixed;inset:auto 0 0}.mobile-link{min-width:0;min-height:48px;color:var(--white);-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:8px;transition:color .2s,transform .2s;display:flex}.mobile-link.active{color:var(--bronze);transform:translateY(-2px)}.mobile-link:active{transform:scale(.94)}.mobile-link svg{transition:transform .2s}.mobile-link.active svg{transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.access-screen{min-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));background:var(--ink);color:var(--white);place-items:center;display:grid}.access-panel{flex-direction:column;gap:34px;width:min(100%,340px);display:flex}.access-brand{color:var(--white);letter-spacing:3px;justify-content:center;align-items:center;gap:13px;font-size:13px;font-weight:600;display:flex}.access-mark{border:1px solid var(--bronze);width:42px;height:42px;color:var(--sand);letter-spacing:0;place-items:center;font-family:Playfair Display,Georgia,serif;font-size:26px;font-weight:500;display:grid}.access-form,.access-actions{gap:12px;display:grid}.access-input{border:1px solid var(--sand);border-radius:var(--radius);background:var(--white);width:100%;min-height:50px;color:var(--ink);outline:0;padding:0 15px;font-size:14px}.access-input:focus{border-color:var(--bronze);outline:1px solid var(--bronze)}.access-primary{border:1px solid var(--bronze);border-radius:var(--radius);background:var(--bronze);min-height:49px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:0 16px;font-size:12px;font-weight:700;display:flex}.access-primary:disabled{opacity:.6;cursor:wait}.access-switch{min-height:38px;color:var(--sand);cursor:pointer;background:0 0;border:0;font-size:11px}.access-error{color:var(--sand);text-align:center;margin:0;font-size:11px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
