.trip{--ink:#0b1b2b;--deep:#12283f;--paper:#fdfcf9;--paper2:#f2efe7;--accent:#d69a2e;--cool:#2c7c8c;--mark:#a94a2b;--alert:#a94a2b;--line:rgba(11,27,43,0.14);--lineL:rgba(253,252,249,0.18);--text-lede:#334;--text-2:#3a4552;--text-3:#5a6470;--text-4:#6a7480;--day-alt:#f8f5ee;--key-bg:#fbf1ec;--warn-bg:#f6e4dd;--drive-bg:#eaf0f2;--drive-line:rgba(44,124,140,0.35);--drive-ink:#1e5f6c;--long-bg:#f6e4dd;--long-line:rgba(169,74,43,0.35);--long-ink:#8a3a1f;--hero-shade:linear-gradient(180deg,rgba(18,40,63,0.72),rgba(18,40,63,0.3) 42%,rgba(11,27,43,0.9));--caption-shade:rgba(11,27,43,0.82);--shadow:rgba(11,27,43,0.22);--serif:var(--font-trip-serif),Georgia,serif;--sans:var(--font-trip-sans),system-ui,-apple-system,sans-serif;--mono:var(--font-trip-mono),ui-monospace,monospace;position:relative;z-index:2;isolation:isolate;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}.trip.trip-theme-forest{--ink:#102018;--deep:#183a2a;--paper:#fbfbf6;--paper2:#ebefe4;--accent:#b7d08c;--cool:#2f6b4b;--mark:#2c5a40;--alert:#a4622a;--line:rgba(16,32,24,0.14);--lineL:rgba(251,251,246,0.18);--text-lede:#26352c;--text-2:#36453c;--text-3:#56655b;--text-4:#66756b;--day-alt:#f2f5ec;--key-bg:#edf3e7;--warn-bg:#f7ecdf;--drive-bg:#e6efe4;--drive-line:rgba(47,107,75,0.35);--drive-ink:#255a3d;--long-bg:#f7ecdf;--long-line:rgba(164,98,42,0.35);--long-ink:#84501f;--hero-shade:linear-gradient(180deg,rgba(20,46,33,0.74),rgba(20,46,33,0.28) 42%,rgba(12,28,20,0.92));--caption-shade:rgba(12,28,20,0.82);--shadow:rgba(12,28,20,0.24)}.trip.trip-theme-coast{--ink:#0b1d24;--deep:#0e3442;--paper:#fbfbf8;--paper2:#e8efee;--accent:#7fd3cc;--cool:#1d6f78;--mark:#b8322a;--alert:#b8322a;--line:rgba(11,29,36,0.14);--lineL:rgba(251,251,248,0.18);--text-lede:#263840;--text-2:#344a52;--text-3:#546a72;--text-4:#647a82;--day-alt:#f1f6f5;--key-bg:#fbeeeb;--warn-bg:#f8e6e1;--drive-bg:#e3f0ef;--drive-line:rgba(29,111,120,0.35);--drive-ink:#1a5d65;--long-bg:#f8e6e1;--long-line:rgba(184,50,42,0.35);--long-ink:#8d2a22;--hero-shade:linear-gradient(180deg,rgba(14,52,66,0.72),rgba(14,52,66,0.22) 42%,rgba(8,26,33,0.9));--caption-shade:rgba(8,26,33,0.82);--shadow:rgba(8,26,33,0.24)}.trip img{display:block;width:100%;height:100%;object-fit:cover}.trip a{color:inherit}.trip .wrap{max-width:1080px;margin:0 auto;padding:0 22px}.trip .back{position:absolute;top:22px;left:0;right:0;z-index:3}.trip .back a{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(253,252,249,.72);border:1px solid var(--lineL);border-radius:100px;padding:8px 15px;backdrop-filter:blur(6px);transition:.16s}.trip .back a:hover{color:var(--paper);border-color:var(--accent)}.trip .back a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.trip .hero{position:relative;min-height:76vh;display:flex;align-items:flex-end;background:var(--deep);overflow:hidden}.trip .hero-img{position:absolute;inset:0}.trip .hero-img img{filter:saturate(1.05) contrast(1.03)}.trip .hero-img:after{content:"";position:absolute;inset:0;background:var(--hero-shade)}.trip .hero-in{position:relative;width:100%;padding:78px 22px 52px}.trip .eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.trip .hero h1{font-family:var(--serif);font-weight:400;color:var(--paper);font-size:clamp(3rem,10.5vw,7.2rem);line-height:.88;margin:.18em 0 .12em;letter-spacing:-.015em}.trip .hero h1 em{font-style:italic;color:var(--accent)}.trip .hero-sub{color:rgba(253,252,249,.82);max-width:46ch;font-size:1.02rem}.trip .facts{display:flex;flex-wrap:wrap;margin-top:24px;border-top:1px solid var(--lineL)}.trip .fact{padding:14px 26px 4px 0;margin-right:26px;border-right:1px solid var(--lineL)}.trip .fact:last-child{border-right:0}.trip .fact b{display:block;font-family:var(--mono);font-size:1.02rem;color:var(--paper);font-weight:500}.trip .fact span{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(253,252,249,.55)}.trip .nav{position:sticky;top:0;z-index:40;background:var(--deep);box-shadow:0 6px 26px var(--shadow)}.trip .nav-in{display:flex;gap:8px;overflow-x:auto;padding:13px 22px;max-width:1080px;margin:0 auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.trip .dbtn{flex:0 0 auto;background:transparent;border:1px solid rgba(253,252,249,.28);border-radius:4px;color:rgba(253,252,249,.78);cursor:pointer;padding:9px 15px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;transition:.15s;white-space:nowrap}.trip .dbtn b{font-weight:600;color:var(--paper)}.trip .dbtn:hover{border-color:var(--accent);color:var(--paper)}.trip .dbtn.hi{background:var(--accent);border-color:var(--accent)}.trip .dbtn.hi,.trip .dbtn.hi b{color:var(--deep)}.trip .dbtn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.trip .controls{background:var(--paper2);border-bottom:1px solid var(--line);padding:15px 0}.trip .ctrl-in{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}.trip .chips{display:flex;gap:7px;flex-wrap:wrap}.trip .chip{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:7px 13px;border:1px solid var(--line);border-radius:100px;background:transparent;cursor:pointer;color:var(--ink);transition:.16s}.trip .chip:hover{border-color:var(--ink)}.trip .chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.trip .chip:focus-visible{outline:2px solid var(--cool);outline-offset:2px}.trip .pace{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}.trip .sw{position:relative;width:46px;height:24px;border-radius:100px;border:1px solid var(--line);background:var(--paper);cursor:pointer;padding:0}.trip .sw:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--accent);transition:transform .2s}.trip .sw[aria-pressed=true]:after{transform:translateX(22px);background:var(--cool)}.trip .sw:focus-visible{outline:2px solid var(--cool);outline-offset:2px}.trip .day{border-bottom:1px solid var(--line);padding:64px 0 60px;scroll-margin-top:70px}.trip .day:nth-child(2n){background:linear-gradient(180deg,var(--paper),var(--day-alt))}.trip .dnum{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mark)}.trip .day h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,5.4vw,3.5rem);line-height:1;margin:6px 0 8px;letter-spacing:-.01em}.trip .dlede{max-width:62ch;color:var(--text-lede);font-size:1.02rem;margin:0}.trip .badges{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 26px}.trip .badge{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:6px 11px;border-radius:3px;background:var(--paper2);border:1px solid var(--line);color:#445}.trip .badge.drive{background:var(--drive-bg);border-color:var(--drive-line);color:var(--drive-ink)}.trip .badge.early{background:#f6eada;border-color:rgba(214,154,46,.45);color:#7a5511}.trip .badge.long{background:var(--long-bg);border-color:var(--long-line);color:var(--long-ink)}.trip .badge.flight{background:var(--mark);border-color:var(--mark);color:#fff}.trip .gal{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;height:288px;margin-bottom:34px;border-radius:2px;overflow:hidden}.trip .gal figure{margin:0;position:relative;overflow:hidden;background:var(--paper2)}.trip .gal img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}.trip .gal figure:hover img{transform:scale(1.05)}.trip .gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 9px;background:linear-gradient(180deg,transparent,var(--caption-shade));color:var(--paper);font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase}.trip .cols{display:grid;grid-template-columns:1fr 320px;gap:44px;align-items:start}.trip .tl{margin:0;padding:0;list-style:none}.trip .stop{display:grid;grid-template-columns:66px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line);transition:opacity .2s}.trip .stop:first-child{border-top:0;padding-top:0}.trip .stop.dim{opacity:.24}.trip .stop.hidden{display:none}.trip .stop.key{background:var(--key-bg);margin:0 -14px;padding-left:14px;padding-right:14px;border-left:3px solid var(--mark)}.trip .tm{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--cool);padding-top:3px}.trip .stop h3{margin:0 0 5px;font-size:1.06rem;font-weight:650;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.trip .stop p{margin:0;color:var(--text-2);font-size:.955rem}.trip .tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.trip .tag{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:2px}.trip .tag.walk{background:#e7f0ea;color:#2a5c3c}.trip .tag.photo{background:#f6eada;color:#7a5511}.trip .tag.food{background:#f1e8f0;color:#63356b}.trip .tag.opt{background:var(--paper2);color:var(--text-3);border:1px dashed var(--line)}.trip .tag.fly{background:var(--mark);color:#fff}.trip .tick{width:15px;height:15px;accent-color:var(--mark);margin:0;cursor:pointer;flex:0 0 auto;position:relative;top:2px}.trip .stop.done h3 span.ttl{text-decoration:line-through;text-decoration-thickness:1px;opacity:.5}.trip .side{position:sticky;top:84px;display:flex;flex-direction:column;gap:16px}.trip .side:has(.card+.card){position:static}.trip .card{background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:18px}.trip .card.lunch{border-left:3px solid var(--mark)}.trip .card h4{margin:0 0 3px;font-family:var(--mono);font-size:9.5px;letter-spacing:.17em;text-transform:uppercase;color:var(--mark)}.trip .card .nm{font-family:var(--serif);font-size:1.42rem;line-height:1.12;margin:5px 0 7px}.trip .card p{margin:0 0 9px;font-size:.9rem;color:var(--text-2)}.trip .hrs{font-family:var(--mono);font-size:10.5px;color:var(--text-3);border-top:1px solid var(--line);padding-top:9px}.trip .hrs b{color:var(--ink)}.trip .warn{background:var(--warn-bg);border-left:3px solid var(--alert);padding:9px 11px;font-size:.85rem;margin:10px 0;border-radius:2px}.trip .alt{font-size:.85rem;color:var(--text-3);margin-top:9px}.trip .btn{display:block;text-align:center;text-decoration:none;background:var(--deep);color:var(--paper);font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:13px;border-radius:3px;transition:.16s}.trip .btn:hover{background:var(--mark)}.trip .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.trip .prac{background:var(--deep);color:var(--paper);padding:78px 0 88px}.trip .prac h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,5vw,3rem);margin:8px 0 34px;line-height:1}.trip .pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:1px;background:var(--lineL);border:1px solid var(--lineL)}.trip .pcell{background:var(--deep);padding:22px}.trip .pcell h5{margin:0 0 8px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.trip .pcell p{margin:0;font-size:.9rem;color:rgba(253,252,249,.8)}.trip .dtable{width:100%;border-collapse:collapse;margin-top:34px;font-family:var(--mono);font-size:12px}.trip .dtable td,.trip .dtable th{text-align:left;padding:9px 12px;border-bottom:1px solid var(--lineL)}.trip .dtable th{color:var(--accent);font-weight:500;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}.trip .dtable td{color:rgba(253,252,249,.86)}.trip .dtable tr:hover td{background:rgba(253,252,249,.05)}.trip .dtable caption{text-align:left;padding:26px 0 8px}.trip footer{padding:34px 0 46px;font-family:var(--mono);font-size:10.5px;color:var(--text-4);text-align:center}.trip footer a{color:var(--mark);border-bottom:1px solid color-mix(in srgb,var(--mark) 40%,transparent)}.trip footer a:hover{color:var(--ink)}@media (max-width:880px){.trip .cols{grid-template-columns:1fr;gap:28px}.trip .side{position:static}.trip .gal{grid-template-columns:1fr 1fr;grid-template-rows:150px 110px;height:auto}.trip .gal figure:first-child{grid-column:1/-1}}@media (max-width:560px){.trip .stop{grid-template-columns:52px 1fr;gap:12px}.trip .day{padding:44px 0 42px}.trip .nav-in{padding:11px 14px}}@media (prefers-reduced-motion:reduce){.trip *{transition:none!important}}