:root{--ink:#11110f;--paper:#f4f0e6;--sand:#d8cebb;--lava:#ff5a2c;--acid:#dfff3f;--blue:#86aeb8;--violet:#7a67ff;--line:rgba(17,17,15,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}main{overflow:hidden}.page-progress{position:fixed;z-index:100;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.1)}.page-progress i{height:100%;display:block;background:linear-gradient(90deg,var(--lava),var(--acid));transition:width .08s linear}.hero{min-height:96svh;background:var(--ink);color:var(--paper);padding:0 max(24px,5vw);position:relative}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 24%,rgba(122,103,255,.22),transparent 27%),radial-gradient(circle at 92% 66%,rgba(255,90,44,.16),transparent 24%);pointer-events:none}.topbar{min-height:84px;padding:14px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(241,238,230,.18);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.08em}.brand-mark{width:20px;height:20px;border:2px solid currentColor;border-radius:50%;position:relative;display:inline-block}.brand-mark:after{content:"";position:absolute;width:6px;height:6px;background:var(--lava);border-radius:50%;right:-4px;top:-3px}.top-links{display:flex;flex-wrap:wrap;gap:22px 28px}.nav-link{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;display:flex;gap:12px;transition:color .2s}.nav-link:hover{color:var(--acid)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;min-height:calc(96svh - 84px);align-items:center;gap:6vw;position:relative}.eyebrow{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:10px}.eyebrow>span{width:30px;height:2px;background:var(--lava)}.eyebrow.dark>span{background:var(--ink)}.hero h1{font-size:clamp(4.5rem,8.4vw,9.2rem);line-height:.79;letter-spacing:-.082em;margin:.28em 0 .26em;max-width:900px;font-weight:800}.hero h1 em,.priorities h2 em,.manifesto em,.dining-head h2 em{color:var(--lava);font-family:Georgia,serif;font-weight:400}.intro{max-width:520px;font-size:clamp(1rem,1.45vw,1.3rem);line-height:1.55;color:rgba(241,238,230,.68)}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:34px}.primary{background:var(--acid);color:var(--ink);padding:18px 22px;min-width:190px;display:flex;justify-content:space-between;font-weight:800;transition:transform .25s,background .25s;border:0;cursor:pointer}.primary:hover{transform:translateY(-4px);background:var(--paper)}.hero-actions p{margin:0;display:grid}.hero-actions strong{font-size:1.35rem}.hero-actions p span{font-size:.7rem;color:rgba(241,238,230,.55);text-transform:uppercase;letter-spacing:.08em}.hero-demo{border:1px solid rgba(244,240,230,.22);background:rgba(244,240,230,.06);backdrop-filter:blur(18px);box-shadow:0 40px 100px rgba(0,0,0,.35);padding:14px}.demo-top{display:flex;justify-content:space-between;font-size:.58rem;letter-spacing:.16em;padding:4px 4px 14px;color:rgba(244,240,230,.55)}.demo-top i{color:var(--acid);font-style:normal}.demo-days{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(244,240,230,.18)}.demo-days button{border:0;border-right:1px solid rgba(244,240,230,.18);background:transparent;color:rgba(244,240,230,.52);padding:11px;cursor:pointer;font-size:.65rem}.demo-days button:last-child{border:0}.demo-days button[aria-selected="true"]{background:var(--acid);color:var(--ink);font-weight:800}.demo-scene{height:270px;position:relative;overflow:hidden;padding:28px;animation:rise .4s ease both;background:linear-gradient(145deg,#29272f,#17171c);isolation:isolate}.demo-sun{position:absolute;width:112px;aspect-ratio:1;border-radius:50%;background:var(--lava);right:12%;top:14%;box-shadow:0 0 55px rgba(255,90,44,.25);animation:float 5s ease-in-out infinite}.demo-mountain{position:absolute;left:-5%;right:-5%;bottom:-2px;height:47%;clip-path:polygon(0 100%,0 82%,14% 61%,27% 71%,42% 37%,52% 68%,68% 24%,82% 63%,100% 44%,100% 100%)}.demo-mountain.back{background:var(--violet);opacity:.48;bottom:15%}.demo-mountain.front{background:var(--paper)}.demo-scene>span,.demo-scene>h2,.demo-scene>p{position:relative;z-index:2}.demo-scene>span{font-size:.6rem;text-transform:uppercase;letter-spacing:.16em;color:var(--acid)}.demo-scene>h2{font-family:Georgia,serif;font-weight:400;font-size:2.65rem;line-height:.95;margin:13px 0 8px;max-width:280px}.demo-scene>p{font-size:.7rem;color:rgba(244,240,230,.58)}.demo-route{background:var(--paper);color:var(--ink);padding:4px 18px}.demo-route>div{display:grid;grid-template-columns:25px 82px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.7rem}.demo-route>div:last-child{border:0}.demo-route b{color:var(--lava);font-size:.55rem}.demo-route time{font-weight:800}.demo-cta{display:flex;justify-content:space-between;background:var(--lava);color:var(--ink);padding:15px 18px;font-size:.72rem;font-weight:800}.ticker{background:var(--acid);color:var(--ink);overflow:hidden;border-bottom:1px solid var(--ink)}.ticker>div{display:flex;align-items:center;gap:30px;white-space:nowrap;padding:13px 0;width:max-content;animation:marquee 22s linear infinite}.ticker span{font-size:.68rem;font-weight:800;letter-spacing:.16em}.ticker i{font-style:normal;color:var(--lava)}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes float{50%{transform:translateY(10px)}}
.manifesto{min-height:230px;display:grid;grid-template-columns:.25fr 1.6fr .55fr .55fr;align-items:center;padding:40px max(24px,7vw);gap:30px;border-bottom:1px solid var(--line)}.manifesto>span{font-size:.7rem}.manifesto p{font-size:clamp(1.8rem,3.2vw,3.4rem);line-height:1.08;margin:0;letter-spacing:-.04em}.manifesto>div{border-left:1px solid var(--line);padding-left:30px;display:grid}.manifesto strong{font-size:2.6rem;letter-spacing:-.06em}.manifesto small{color:#706d65}
.arrival{padding:90px max(24px,7vw);border-bottom:1px solid var(--line)}.arrival-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:50px}.arrival-card{background:var(--paper);padding:26px 22px}.arrival-card b{display:block;font-size:1rem;margin-bottom:10px}.arrival-card p{margin:0;font-size:.85rem;line-height:1.5;color:#706d65}.arrival-note{margin-top:26px;padding:26px 28px;border:1px solid var(--line);display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:center}.arrival-note span{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--ink)}.arrival-note p{margin:0;font-size:.92rem;line-height:1.6;color:#5f5b54}
.route-section{padding:110px max(24px,7vw)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-head h2,.prep h2{font-size:clamp(2.8rem,5vw,5.6rem);letter-spacing:-.065em;line-height:.95;margin:22px 0 0}.section-head>p{max-width:410px;color:#706d65;line-height:1.55}.day-tabs{display:grid;grid-template-columns:repeat(4,1fr);margin-top:72px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.day-tabs button{border:0;border-right:1px solid var(--line);background:transparent;padding:22px;display:flex;justify-content:space-between;cursor:pointer;color:#79756b;transition:.25s}.day-tabs button:last-child{border-right:0}.day-tabs button[aria-selected="true"]{background:var(--ink);color:var(--paper)}.day-tabs button:hover{color:var(--lava)}.day-tabs b{font-size:1rem}.day-tabs span{font-size:.65rem}.day-panel{display:grid;grid-template-columns:.72fr 1.28fr;min-height:600px;animation:rise .45s ease both}@keyframes rise{from{opacity:0;transform:translateY(16px)}}.day-summary{background:var(--sand);padding:48px;position:relative}.day-summary>p{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}.day-summary h3{font-family:Georgia,serif;font-size:clamp(2.6rem,4.3vw,5rem);line-height:.96;font-weight:400;margin:35px 0 15px}.day-summary>span{color:#6b655a}.route-line{margin-top:100px;padding-top:18px;border-top:1px solid rgba(23,23,20,.25);font-size:.82rem;line-height:1.45;display:flex;gap:12px}.route-line i{width:9px;height:9px;background:var(--lava);border-radius:50%;flex:none;margin-top:4px;display:inline-block}.day-summary>strong{position:absolute;bottom:42px;font-size:1.6rem}.timeline{background:#e6e1d6;padding:20px 50px}.stop{display:grid;grid-template-columns:34px 105px 1fr 34px;gap:18px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line);position:relative}.stop:last-child{border:0}.stop:before{content:"";position:absolute;left:-50px;top:0;bottom:0;width:4px;background:transparent}.stop.work:before{background:var(--acid)}.stop.food:before{background:var(--blue)}.stop-index{font-size:.62rem;color:#8d887e}.stop time{font-size:.76rem;font-weight:800}.stop-copy h4{font-size:1.1rem;margin:0 0 8px}.stop-copy p{font-size:.87rem;line-height:1.55;color:#706d65;margin:0;max-width:530px}.stop>a{width:32px;height:32px;border:1px solid var(--ink);display:grid;place-items:center;transition:.2s}.stop>a:hover{background:var(--ink);color:var(--paper);transform:rotate(8deg)}.stop-type{font-size:.55rem;letter-spacing:.08em;writing-mode:vertical-rl;color:#777166}
.dining-section{background:var(--ink);color:var(--paper);padding:110px max(24px,7vw)}.dining-head{align-items:center}.dining-head h2{font-size:clamp(3.2rem,6vw,7rem);line-height:.88;letter-spacing:-.07em;margin:28px 0}.budget-seal{width:150px;aspect-ratio:1;border:1px solid rgba(241,238,230,.3);border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(7deg)}.budget-seal strong{font-size:1.7rem}.budget-seal span{font-size:.62rem;text-transform:uppercase;letter-spacing:.13em;color:var(--acid)}.dining-intro{max-width:620px;color:rgba(241,238,230,.6);line-height:1.6;margin:15px 0 55px}.food-tabs{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(241,238,230,.2)}.food-tabs button{padding:18px;border:0;border-right:1px solid rgba(241,238,230,.2);background:transparent;color:rgba(241,238,230,.55);cursor:pointer;transition:.2s}.food-tabs button:last-child{border:0}.food-tabs button[aria-selected="true"]{background:var(--acid);color:var(--ink);font-weight:800}.meal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;animation:rise .4s ease both}.meal-card{background:var(--paper);color:var(--ink);padding:28px}.meal-label{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}.meal-label span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.meal-label time{font-size:1.25rem;font-weight:800}.restaurant{padding-top:24px}.choice-tag{font-size:.55rem;letter-spacing:.14em;background:var(--lava);padding:7px 9px;display:inline-block;margin-bottom:16px;font-weight:800}.restaurant-title{display:flex;justify-content:space-between;gap:20px;align-items:start}.restaurant-title h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.8rem,3vw,3rem);line-height:1;margin:0 0 7px}.restaurant-title p{margin:0;color:#736e65;font-size:.76rem}.restaurant-title>strong{white-space:nowrap;background:var(--sand);padding:7px;font-size:.72rem}.restaurant-note{line-height:1.5;color:#5f5b54;font-size:.9rem}.order{font-size:.8rem;line-height:1.5;border-left:3px solid var(--acid);padding-left:12px}.order span{display:block;font-size:.55rem;letter-spacing:.12em;font-weight:800;margin-bottom:3px}.restaurant-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:24px;border:1px solid var(--ink)}.restaurant-actions a{padding:14px;display:flex;justify-content:space-between;font-size:.75rem;font-weight:800;transition:.2s}.restaurant-actions a:first-child{border-right:1px solid var(--ink)}.restaurant-actions a:hover{background:var(--ink);color:var(--paper)}.meal-card details{margin-top:25px;border-top:1px solid var(--line)}.meal-card summary{padding:20px 0 0;cursor:pointer;list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-weight:800}.meal-card summary::-webkit-details-marker{display:none}.meal-card summary span{font-size:.55rem;letter-spacing:.1em;color:var(--lava)}.meal-card summary b{font-size:1.25rem;transition:transform .2s}.meal-card details[open] summary b{transform:rotate(45deg)}.meal-card details .restaurant{animation:rise .3s ease}.ferry-note{background:var(--blue);color:var(--ink);padding:28px;display:flex;flex-direction:column;justify-content:center}.ferry-note span{font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.ferry-note p{font-family:Georgia,serif;font-size:1.7rem;line-height:1.2;margin:18px 0 0}.fish-rule{margin-top:20px;padding:25px;border:1px solid rgba(241,238,230,.2);display:grid;grid-template-columns:180px 1fr;gap:25px;align-items:center}.fish-rule b{color:var(--acid)}.fish-rule p{margin:0;color:rgba(241,238,230,.6);font-size:.85rem;line-height:1.5}
.priorities{background:var(--ink);color:var(--paper);padding:110px max(24px,7vw);display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.priorities h2{font-size:clamp(3.2rem,6vw,7rem);line-height:.88;letter-spacing:-.07em;margin:28px 0}.priorities ol{padding:0;margin:0;list-style:none}.priorities li{display:grid;grid-template-columns:40px 1fr auto;gap:20px;align-items:center;padding:23px 0;border-bottom:1px solid rgba(241,238,230,.17);transition:padding .25s}.priorities li:hover{padding-left:12px}.priorities li>b{font-size:.65rem;color:var(--lava)}.priorities li span{display:grid}.priorities li strong{font-size:1.25rem}.priorities li small{color:rgba(241,238,230,.45);margin-top:4px}.priorities li i{font-style:normal;font-size:.65rem;color:var(--acid);text-transform:uppercase;letter-spacing:.1em}
.prep{padding:110px max(24px,7vw)}.prep-head{display:flex;justify-content:space-between;align-items:center}.progress-ring{--progress:0deg;width:130px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--lava) var(--progress),var(--sand) 0);display:grid;place-items:center;transition:background .4s;position:relative}.progress-ring:before{content:"";position:absolute;width:100px;aspect-ratio:1;background:var(--paper);border-radius:50%}.progress-ring span{z-index:1;font-size:1.4rem;font-weight:800;display:grid;text-align:center}.progress-ring small{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:#716d65}.checklist{margin-top:65px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.checklist label{min-height:116px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:36px 34px 1fr;gap:14px;align-items:center;padding:20px;cursor:pointer;transition:background .25s}.checklist label:nth-child(odd){border-right:1px solid var(--line)}.checklist label:hover{background:#e8e3d8}.checklist input{position:absolute;opacity:0}.custom-check{width:30px;height:30px;border:1px solid var(--ink);display:grid;place-items:center}.checklist label.done{color:#8c877d}.checklist label.done .custom-check{background:var(--acid);color:var(--ink);border-color:var(--acid)}.checklist label>b{font-size:.62rem}.checklist p{margin:0;line-height:1.4}.plan-b{margin:0 max(24px,7vw) 110px;background:var(--lava);color:var(--ink);padding:30px 36px;display:grid;grid-template-columns:130px 1fr;align-items:center}.plan-b span{font-size:.7rem;font-weight:800;letter-spacing:.14em}.plan-b p{font-size:1.12rem;line-height:1.5;margin:0;max-width:900px}footer{background:var(--sand);min-height:160px;padding:40px max(24px,7vw);display:flex;align-items:center;justify-content:space-between;font-size:.75rem;flex-wrap:wrap;gap:16px}footer p{color:#706d65}
@media(max-width:800px){.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding:70px 0}.hero h1{font-size:clamp(4rem,17vw,7rem)}.hero-actions{flex-wrap:wrap}.hero-demo{margin-top:20px}.manifesto{grid-template-columns:1fr 1fr}.manifesto>span{display:none}.manifesto p{grid-column:1/-1}.section-head{display:block}.section-head>p{margin-top:24px}.route-section,.priorities,.prep,.dining-section,.arrival{padding-top:76px;padding-bottom:76px}.arrival-grid{grid-template-columns:1fr 1fr}.arrival-note{grid-template-columns:1fr;gap:10px}.day-tabs button{padding:18px 12px}.day-tabs button span{display:none}.day-panel{grid-template-columns:1fr}.day-summary{min-height:400px}.route-line{margin-top:65px}.timeline{padding:12px 26px}.stop{grid-template-columns:30px 78px 1fr 30px;gap:8px}.stop:before{left:-26px}.meal-grid{grid-template-columns:1fr}.budget-seal{margin:35px 0 0}.priorities{grid-template-columns:1fr}.checklist{grid-template-columns:1fr}.checklist label:nth-child(odd){border-right:0}.plan-b{grid-template-columns:1fr;gap:10px;margin-bottom:60px}footer{gap:25px;flex-wrap:wrap;padding-bottom:calc(110px + env(safe-area-inset-bottom))}}
@media(max-width:480px){.topbar{min-height:68px}.top-links .nav-link:last-child{display:none}.hero-grid{padding:48px 0 42px}.hero h1{font-size:3.8rem}.intro{font-size:.96rem}.hero-actions{gap:20px}.hero-actions .primary{width:100%}.hero-demo{padding:9px;margin-top:38px}.demo-scene{height:230px;padding:22px}.demo-scene>h2{font-size:2.2rem}.demo-route>div{grid-template-columns:22px 68px 1fr}.manifesto{padding-top:55px;padding-bottom:55px}.manifesto>div{padding-left:16px}.route-section,.dining-section,.arrival{padding-left:18px;padding-right:18px}.arrival-grid{grid-template-columns:1fr}.day-tabs{margin-top:45px}.day-tabs button{padding:15px 8px}.day-tabs b{font-size:.78rem}.day-summary{padding:34px 28px;min-height:355px}.day-summary>strong{bottom:30px}.timeline{padding:8px 18px}.stop{grid-template-columns:58px 1fr 30px;padding:24px 0;gap:8px}.stop-index{display:none}.stop time{grid-column:1}.stop-copy{grid-column:2}.stop>a,.stop-type{grid-column:3;grid-row:1}.food-tabs button{padding:14px 7px;font-size:.72rem}.meal-card{padding:22px 18px}.restaurant-title h3{font-size:2rem}.restaurant-actions a{padding:13px 10px}.fish-rule{grid-template-columns:1fr;gap:8px}.priorities li{grid-template-columns:28px 1fr}.priorities li i{display:none}.prep-head{align-items:end}.progress-ring{width:94px}.progress-ring:before{width:70px}.progress-ring span{font-size:1rem}.checklist label{padding:18px 4px;grid-template-columns:34px 26px 1fr}.plan-b{margin-left:18px;margin-right:18px;padding:24px}footer{align-items:flex-start;flex-direction:column}}
.mobile-dock{display:none}@media(max-width:800px){.mobile-dock{position:fixed;z-index:90;left:18px;right:18px;bottom:calc(16px + env(safe-area-inset-bottom));background:rgba(17,17,15,.92);color:var(--paper);backdrop-filter:blur(18px);border:1px solid rgba(244,240,230,.2);display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 18px 55px rgba(0,0,0,.3)}.mobile-dock a{padding:11px 8px;display:grid;justify-items:center;gap:3px;font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}.mobile-dock a span{font-size:1rem;color:var(--acid)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
