:root{--beat:500ms;--half:250ms;--quarter:125ms;--ease-out:cubic-bezier(.22,1,.36,1);--ease-io:cubic-bezier(.65,0,.35,1);--spring:linear(0,.006,.025 2.8%,.101 6.1%,.539 18.9%,.721 25.3%,.849 31.5%,.937 38.1%,.968 41.8%,.991 45.7%,1.006 50%,1.015 55%,1.017 63.9%,1.001 85%,1)}
html{--dir:1}html[dir="rtl"]{--dir:-1}
@media (prefers-reduced-motion: reduce){:root{--beat:0ms;--half:0ms;--quarter:0ms}.js-motion [data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}}
.cta,[data-aff]{position:relative;overflow:hidden;isolation:isolate;transition:transform var(--half) var(--ease-out),box-shadow var(--half) var(--ease-out)}
@media (hover:hover){.cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px #087f7833}.cta:hover .cta-arrow{transform:translateX(calc(4px * var(--dir)))}}
.cta:active{transform:scale(.97);transition-duration:var(--quarter)}
.cta-arrow{display:inline-block;margin-inline-start:.4em;transition:transform var(--half) var(--ease-out)}
.cta:focus-visible{outline:3px solid #f6c86b;outline-offset:3px}
.cta.is-glint::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(calc(100deg * var(--dir)),transparent 30%,#f6c86b88 50%,transparent 70%);transform:translateX(calc(-110% * var(--dir)));animation:ftp-glint calc(var(--beat)*2) var(--ease-io) 1 forwards}
@keyframes ftp-glint{to{transform:translateX(calc(110% * var(--dir)))}}
@media (prefers-reduced-motion:reduce){.cta,.cta-arrow{transition:background-color .2s}.cta:hover,.cta:active{transform:none}.cta.is-glint::after{display:none}}
.js-motion [data-reveal]{opacity:0;transform:translateY(14px) rotate(-.6deg)}
.js-motion [data-reveal].in{opacity:1;transform:none;transition:opacity var(--beat) var(--ease-out),transform var(--beat) var(--spring);transition-delay:calc(var(--i,0) * var(--quarter))}
.js-motion [data-reveal="heading"]{opacity:0;transform:none;position:relative}
.js-motion [data-reveal="heading"].in{opacity:1;animation:ftp-heading var(--beat) var(--ease-out) both}@keyframes ftp-heading{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 -8px 0)}}
.js-motion [data-reveal="heading"]::after{content:"";position:absolute;inset-inline-start:0;bottom:-4px;height:3px;width:0;background:#ed704f;transition:width var(--beat) var(--ease-out)}
.js-motion [data-reveal="heading"].in::after{width:48px}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.cta:hover .cta-arrow{transform:none}}
.js-motion [data-row]{opacity:0;transform:translateY(8px)}.js-motion [data-rows].in [data-row]{opacity:1;transform:none;transition:opacity var(--half) var(--ease-out),transform var(--half) var(--ease-out);transition-delay:calc(var(--row)*var(--quarter))}.fact-number{display:inline-block;min-width:3ch;font-variant-numeric:tabular-nums}
.trip-picker{display:flex;align-items:flex-start;gap:12px;margin:24px 0;position:relative;z-index:1;min-height:60px}.trip-pill{min-height:56px;border-radius:28px;padding:2px;background:conic-gradient(from var(--angle),#087f78,#f6c86b,#ed704f,#087f78);min-width:min(260px,65vw)}.trip-pill summary{box-sizing:border-box;cursor:pointer;border-radius:26px;background:#fffaf0;padding:14px 18px;min-height:52px;list-style:none}.trip-word{display:inline-block;min-height:24px}.trip-pill ul{position:absolute;background:#fffaf0;border:1px solid #087f78;border-radius:18px;padding:14px 30px;max-width:85vw;box-shadow:0 8px 20px #14564e22}.trip-pill li{margin:8px 0}.trip-go{padding:16px 8px;white-space:nowrap}.trip-pill:focus-within{outline:3px solid #f6c86b;outline-offset:3px}@property --angle{syntax:'<angle>';inherits:false;initial-value:0deg}.trip-pill.is-typing{animation:pill-spin 6s linear infinite}@keyframes pill-spin{to{--angle:360deg}}
@media(hover:hover){.destination-tile{transition:transform var(--beat),box-shadow var(--beat)}.destination-tile img{transition:transform var(--beat)}.destination-tile:hover{transform:translateY(-3px);box-shadow:0 14px 30px #14564e33}.destination-tile:hover img{transform:scale(1.04)}.destination-link{text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color var(--beat)}.destination-tile:hover .destination-link{text-decoration-color:currentColor}}.destination-tile figure{overflow:hidden}.destination-tile:active{transform:scale(.98)}
@media(max-width:600px){.trip-picker{gap:6px}.trip-pill{min-width:0;flex:1}}
@media(prefers-reduced-motion:reduce){.js-motion [data-row]{opacity:1!important;transform:none!important}.destination-tile,.destination-tile img{transform:none!important}.fact-number{min-width:3ch}}

.js-motion [data-rows].in .cta{animation:ftp-cta-pop var(--beat) var(--spring) both;animation-delay:1s}@keyframes ftp-cta-pop{from{transform:scale(.94)}to{transform:scale(1)}}
.route-stop{position:relative}.route-line{position:absolute;inset-inline-start:-17px;top:0;width:12px;height:120px;overflow:visible;pointer-events:none}.route-line path{stroke:#ed704f;stroke-width:2;stroke-dasharray:4 5;fill:none}.route-line circle{fill:#ed704f}.js-motion .route-line{opacity:0}.js-motion .route-stop.in .route-line{opacity:1;animation:route-draw 1s var(--ease-out) both}@keyframes route-draw{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
.ftp-sticky{display:none}@media(max-width:600px){body.ftp-sticky-space{padding-bottom:110px}.ftp-sticky{display:flex;align-items:center;gap:8px;position:fixed;z-index:50;inset-inline:0;bottom:0;box-sizing:border-box;max-height:110px;padding:12px;background:#fffaf0;box-shadow:0 -4px 20px #14564e33;transform:translateY(120%);visibility:hidden;transition:transform var(--beat) var(--spring),visibility var(--beat)}.ftp-sticky.shown{visibility:visible;transform:none}.ftp-sticky-label{font-size:12px;line-height:1.3;flex:1;max-width:38%}.ftp-sticky .cta{font-size:13px;padding:10px 14px}.ftp-sticky-close{background:transparent;border:0;font-size:24px;color:#14564e;padding:8px;cursor:pointer}}
@media(prefers-reduced-motion:reduce){.route-line{opacity:1!important}.ftp-sticky{transition:none!important}.ftp-sticky:not(.shown){transform:none;display:none}}

.trip-word{width:20ch;max-width:100%;white-space:nowrap;overflow:hidden;vertical-align:middle}.trip-pill summary{display:flex;align-items:center;justify-content:space-between;gap:4px}.trip-pill summary::-webkit-details-marker{display:none}.trip-pill{box-sizing:border-box}
.ftp-sticky{margin:0;border:0;border-radius:0}.ftp-sticky .cta{margin:0}.trip-pill ul{z-index:60}
.js-motion .route-stop.in{animation:ftp-route-heading var(--beat) var(--ease-out) both}@keyframes ftp-route-heading{from{opacity:0}to{opacity:1}}.route-stop .route-line{z-index:0;inset-inline-start:-17px;clip-path:none}
