@font-face{font-family:Ferry Recursive;src:url(/ferry/fonts/Recursive-Variable.woff2)format("woff2");font-weight:300 1000;font-display:swap}.fy-site{--fy-night:#08060b;--fy-night-2:#110b14;--fy-glass:#ffffff0b;--fy-glass-strong:#ffffff13;--fy-edge:#ffffff17;--fy-ink:#f6eff5;--fy-soft:#b3a3b4;--fy-faint:#9a8b9c;--fy-magenta:#ff2d95;--fy-magenta-soft:#ff2d9524;--fy-glow:#ff2d9573;--fy-paper:#fbf6fa;--fy-paper-ink:#2a0d20;--fy-paper-soft:#8a6a7e;--fy-relay:#b79cff;--fy-magenta-deep:#b8106a;--fy-magenta-button:linear-gradient(180deg, #d6177b, var(--fy-magenta-deep));--fy-sans:"Ferry Recursive", system-ui, sans-serif;--fy-mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;background:radial-gradient(1100px 700px at 85% -10%, #ff2d9521, transparent 60%), radial-gradient(900px 600px at -10% 30%, #b79cff12, transparent 60%), var(--fy-night);color:var(--fy-ink);font:400 17px/1.65 var(--fy-sans);isolation:isolate;min-height:100vh}.fy-site *{box-sizing:border-box}.fy-site main{background:0 0;min-height:auto;overflow:clip}.fy-site a{color:inherit;transition:color .2s,background .2s,border-color .2s,box-shadow .2s}.fy-site a:hover{color:var(--fy-magenta)}.fy-site :focus-visible{outline-offset:4px;border-radius:6px;outline:2px solid #ff7ab8}.fy-site ::selection{background:var(--fy-magenta-deep);color:#fff}.fy-site h1,.fy-site h2,.fy-site h3,.fy-site p,.fy-site figure,.fy-site ul,.fy-site ol,.fy-site dl,.fy-site dd{margin:0}.fy-site h1,.fy-site h2,.fy-site h3{letter-spacing:-.03em;font-weight:750;line-height:1.08}.fy-site h2{font-size:clamp(30px,3.6vw,48px)}.fy-site code,.fy-mono{font-family:var(--fy-mono);font-size:.88em}.fy-shell{width:min(1180px,100% - 96px);margin-inline:auto}.fy-eyebrow{font:600 12px/1.6 var(--fy-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--fy-magenta)}.fy-muted{color:var(--fy-soft)}.fy-skip{z-index:100;background:var(--fy-magenta-deep);color:#fff;border-radius:10px;padding:12px 22px;position:fixed;top:12px;left:16px;transform:translateY(-200%)}.fy-skip:focus{transform:translateY(0)}.fy-header{z-index:20;border-bottom:1px solid var(--fy-edge);-webkit-backdrop-filter:blur(16px)saturate(150%);backdrop-filter:blur(16px)saturate(150%);background:#08060bc7;justify-content:space-between;align-items:center;gap:24px;padding:16px 48px;display:flex;position:sticky;top:0}.fy-brand{align-items:center;gap:12px;text-decoration:none;display:flex}.fy-brand img{box-shadow:0 0 0 1px #ff2d9559, 0 0 18px -4px var(--fy-glow);border-radius:10px}.fy-brand span{letter-spacing:-.02em;font-size:20px;font-weight:800;line-height:1.1;display:grid}.fy-brand small{letter-spacing:.08em;color:var(--fy-faint);text-transform:uppercase;font-size:11px;font-weight:500}.fy-header nav{align-items:center;gap:26px;font-size:15px;display:flex}.fy-header nav a{color:var(--fy-soft);text-decoration:none}.fy-header nav a:hover{color:var(--fy-ink)}.fy-header nav .fy-nav-cta{color:var(--fy-ink);background:var(--fy-magenta-soft);border:1px solid #ff2d9580;border-radius:999px;padding:8px 16px}.fy-header nav .fy-nav-cta:hover{background:var(--fy-magenta-deep);color:#fff}.fy-footer{border:0;border-top:1px solid var(--fy-edge);max-width:none;min-height:0;color:var(--fy-soft);font:400 15px/1.6 var(--fy-sans);letter-spacing:normal;text-transform:none;grid-template-columns:1fr auto;align-items:end;gap:18px 40px;margin:96px 0 0;padding:40px 48px 48px;display:grid}.fy-footer p{color:var(--fy-faint);margin-top:6px}.fy-footer nav{flex-wrap:wrap;gap:22px;display:flex}.fy-footer a{text-decoration:none}.fy-footer small{color:var(--fy-faint);grid-column:1/-1}.fy-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.fy-button{background:var(--fy-magenta-button);color:#fff;min-height:50px;font:700 16px/1.2 var(--fy-sans);box-shadow:0 10px 30px -10px var(--fy-glow);cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:12px 24px;text-decoration:none;display:inline-flex}.fy-site .fy-button,.fy-site .fy-button:hover{color:#fff}.fy-site .fy-button:hover{box-shadow:0 12px 36px -8px var(--fy-glow), 0 0 0 1px #ff2d9599}.fy-site .fy-button.fy-quiet{background:var(--fy-glass-strong);border-color:var(--fy-edge);box-shadow:none;color:var(--fy-ink)}.fy-site .fy-button.fy-quiet:hover{color:var(--fy-ink);border-color:#ff2d9580}.fy-button[aria-disabled=true]{opacity:.55;pointer-events:none;box-shadow:none}.fy-text-link{color:var(--fy-soft);text-underline-offset:4px;-webkit-text-decoration:underline #ffffff40;text-decoration:underline #ffffff40}.fy-card{border:1px solid var(--fy-edge);background:linear-gradient(180deg, var(--fy-glass-strong), var(--fy-glass));border-radius:20px;padding:28px}.fy-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:40px;padding:72px 0 40px;display:grid;position:relative}.fy-hero h1{font-size:clamp(44px,6vw,82px)}.fy-hero h1 span{color:var(--fy-magenta);text-shadow:0 0 28px var(--fy-glow)}.fy-hero-copy>p:not(.fy-eyebrow){max-width:34em;color:var(--fy-soft);margin:22px 0 30px;font-size:19px}.fy-hero-copy .fy-eyebrow{margin-bottom:18px}.fy-hero-note{color:var(--fy-faint);margin-top:22px;font-size:14px}.fy-hero-art{aspect-ratio:1;max-height:620px;position:relative}.fy-hero-art img{object-fit:cover;object-position:30% 50%;--fy-fade-x:linear-gradient(to right, transparent, #000 16%, #000 84%, transparent);--fy-fade-y:linear-gradient(to bottom, transparent, #000 14%, #000 80%, transparent);width:100%;height:100%;-webkit-mask-image:var(--fy-fade-x), var(--fy-fade-y);-webkit-mask-composite:source-in;-webkit-mask-image:var(--fy-fade-x), var(--fy-fade-y);mask-image:var(--fy-fade-x), var(--fy-fade-y);position:absolute;inset:0;-webkit-mask-composite:source-in;mask-composite:intersect}.fy-ticket{background:var(--fy-paper);width:min(320px,58%);color:var(--fy-paper-ink);border-radius:14px;padding:0 0 16px;position:absolute;top:14%;right:-8px;overflow:hidden;transform:rotate(4deg);box-shadow:0 24px 60px -18px #000c,0 0 0 1px #fff9}.fy-ticket:before{content:"SHARE TICKET · FERRY";background:var(--fy-magenta-deep);color:#fff;font:700 11px/1.4 var(--fy-sans);letter-spacing:.16em;padding:9px 18px;display:block}.fy-ticket strong{padding:14px 18px 2px;font-size:18px;display:block}.fy-ticket span{color:var(--fy-paper-soft);padding:0 18px;font-size:14px;display:block}.fy-ticket code{color:var(--fy-paper-ink);white-space:nowrap;text-overflow:ellipsis;border:1px dashed #d9bfd0;border-radius:8px;margin:12px 18px 0;padding:8px 10px;font-size:12px;display:block;overflow:hidden}.fy-strip{border-block:1px solid var(--fy-edge);color:var(--fy-soft);letter-spacing:.02em;flex-wrap:wrap;justify-content:center;gap:12px 30px;padding:22px 0;font-size:15px;font-weight:600;display:flex}.fy-strip span:before{content:"◆";color:var(--fy-magenta);vertical-align:2px;margin-right:10px;font-size:10px}.fy-section{padding-top:110px}.fy-section-head{max-width:46em;margin-bottom:40px}.fy-section-head h2{margin-top:10px}.fy-section-head p:not(.fy-eyebrow){color:var(--fy-soft);margin-top:16px;font-size:18px}.fy-steps{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:0;list-style:none;display:grid}.fy-steps li{counter-increment:step}.fy-steps li:before{content:counter(step, decimal-leading-zero);color:var(--fy-magenta);font:700 14px/1 var(--fy-mono);margin-bottom:18px;display:block}.fy-steps h3{margin-bottom:10px;font-size:22px}.fy-steps p{color:var(--fy-soft)}.fy-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.fy-split h3{margin-bottom:10px;font-size:22px}.fy-split p+p{margin-top:12px}.fy-split p{color:var(--fy-soft)}.fy-badge{border-radius:999px;margin-bottom:14px;padding:3px 10px;font-size:13px;font-weight:700;display:inline-block}.fy-badge.fy-direct{color:#7ee8b8;background:#50dca024}.fy-badge.fy-relay{color:var(--fy-relay);background:#b79cff24}.fy-downloads{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.fy-platform{flex-direction:column;gap:10px;display:flex}.fy-platform h3{font-size:22px}.fy-platform p{color:var(--fy-soft);flex:1}.fy-platform .fy-actions{margin-top:8px}.fy-platform .fy-button{min-height:44px;padding:10px 18px;font-size:15px}.fy-platform small{color:var(--fy-faint);font-size:13px}.fy-trust{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start;gap:40px;display:grid}.fy-trust>div>p:not(.fy-eyebrow){color:var(--fy-soft);margin-top:16px;font-size:18px}.fy-links{gap:12px;display:grid}.fy-links a{border:1px solid var(--fy-edge);background:var(--fy-glass);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;font-weight:700;text-decoration:none;display:flex}.fy-links a small{color:var(--fy-faint);font-size:13px;font-weight:500;display:block}.fy-links a:hover{color:var(--fy-ink);border-color:#ff2d9580}.fy-panel-page{place-items:start center;padding:64px 0 0;display:grid}.fy-panel{width:min(640px,100%)}.fy-panel h1{margin:10px 0 14px;font-size:clamp(32px,4.4vw,46px)}.fy-panel>p{color:var(--fy-soft);font-size:18px}.fy-panel .fy-card{gap:16px;margin-top:26px;display:grid}.fy-panel .fy-card h2{letter-spacing:-.01em;font-size:20px}.fy-panel .fy-card p{color:var(--fy-soft)}.fy-panel .fy-button{width:100%}.fy-or{color:var(--fy-faint);align-items:center;gap:14px;font-size:14px;display:flex}.fy-or:before,.fy-or:after{content:"";background:var(--fy-edge);flex:1;height:1px}.fy-note{color:var(--fy-faint);margin-top:22px;font-size:14px}.fy-alert{color:#ffb3b3;background:#ff6b6b14;border:1px solid #ff6b6b66;border-radius:14px;padding:16px 18px}.fy-facts{gap:8px;margin:0;font-size:14px;display:grid}.fy-facts div{grid-template-columns:120px minmax(0,1fr);gap:12px;display:grid}.fy-facts dt{color:var(--fy-faint)}.fy-facts dd{overflow-wrap:anywhere;font-family:var(--fy-mono);color:var(--fy-ink);margin:0;font-size:13px}.fy-steps-list{color:var(--fy-soft);gap:10px;margin:0;padding-left:22px;list-style:decimal;display:grid}.fy-note a,.fy-contact p a{text-underline-offset:3px;-webkit-text-decoration:underline #ff2d9599;text-decoration:underline #ff2d9599}.fy-document{padding-top:64px}.fy-document-heading{max-width:46em}.fy-document-heading h1{margin:10px 0 18px;font-size:clamp(38px,5vw,60px)}.fy-document-heading>p:not(.fy-eyebrow){color:var(--fy-soft);font-size:19px}.fy-document-meta{color:var(--fy-faint);flex-wrap:wrap;gap:10px 26px;margin-top:22px;font-size:14px;display:flex}.fy-document-layout{grid-template-columns:240px minmax(0,1fr);gap:56px;margin-top:56px;display:grid}.fy-document-nav{align-self:start;position:sticky;top:100px}.fy-document-nav nav{gap:4px;margin-top:12px;font-size:14px;display:grid}.fy-document-nav a{color:var(--fy-soft);gap:10px;padding:6px 0;text-decoration:none;display:flex}.fy-document-nav a span{color:var(--fy-faint);font-family:var(--fy-mono)}.fy-document-body{max-width:760px}.fy-summary{background:var(--fy-magenta-soft);border:1px solid #ff2d9559;border-radius:18px;margin-bottom:44px;padding:22px 24px}.fy-summary p{margin-top:8px}.fy-document-body section{border-top:1px solid var(--fy-edge);padding:34px 0;scroll-margin-top:100px}.fy-document-body h2{margin-bottom:16px;font-size:26px}.fy-document-body p,.fy-document-body li{color:var(--fy-soft)}.fy-document-body p+p,.fy-document-body p+ul,.fy-document-body ul+p{margin-top:14px}.fy-document-body ul{gap:8px;padding-left:22px;list-style:outside;display:grid}.fy-document-body ul li::marker{color:var(--fy-magenta)}.fy-document-body strong{color:var(--fy-ink)}.fy-document-body a,.fy-faq a{color:var(--fy-ink);text-underline-offset:3px;-webkit-text-decoration:underline #ff2d9599;text-decoration:underline #ff2d9599}.fy-back-top{color:var(--fy-faint);margin-top:24px;font-size:14px;text-decoration:none;display:inline-block}.fy-faq{gap:12px;margin-top:30px;display:grid}.fy-faq details{border:1px solid var(--fy-edge);background:var(--fy-glass);border-radius:16px;padding:18px 22px}.fy-faq summary{cursor:pointer;font-weight:700}.fy-faq details p{color:var(--fy-soft);margin-top:12px}.fy-contact{margin-top:30px}.fy-contact a{font-size:20px;font-weight:700}.fy-contact p{color:var(--fy-soft);margin-top:10px}@media (max-width:960px){.fy-shell{width:calc(100% - 40px)}.fy-header{padding:14px 20px}.fy-header nav{gap:16px}.fy-header nav a:not(.fy-nav-cta):not(.fy-nav-keep){display:none}.fy-hero{grid-template-columns:minmax(0,1fr);padding-top:40px}.fy-hero-art{order:-1;justify-self:center;width:min(100%,560px)}.fy-ticket{top:10%;right:0}.fy-steps,.fy-split,.fy-downloads,.fy-trust{grid-template-columns:minmax(0,1fr)}.fy-document-layout{grid-template-columns:minmax(0,1fr);gap:0;margin-top:36px}.fy-document-nav{display:none}.fy-footer{grid-template-columns:minmax(0,1fr);padding:32px 20px 40px}.fy-section{padding-top:80px}.fy-facts div{grid-template-columns:minmax(0,1fr);gap:2px}}@media (max-width:480px){.fy-site{font-size:16px}.fy-ticket{width:62%}.fy-ticket strong{padding-top:10px;font-size:16px}.fy-ticket code{display:none}.fy-card{padding:22px}.fy-brand small{display:none}}@media (prefers-reduced-motion:reduce){.fy-site *{transition:none!important}}
