.fp {color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.fp {scroll-padding-top:env(safe-area-inset-top,0px)}
.fp {margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}
.fp img {max-width:100%}
.fp [hidden]:not([hidden=until-found i]) {display:none!important}
.fp {
  --paper: #f3ede4;
  --paper-2: #e9e1d4;
  --ink: #1d1611;
  --ink-2: rgba(29, 22, 17, .72);
  --ink-3: rgba(29, 22, 17, .52);
  --hair: rgba(29, 22, 17, .14);
  --hair-2: rgba(29, 22, 17, .28);
  --clay: #9c4f2d;
  --clay-dark: #6a2a14;
  --clay-light: #d68c63;
  --clay-ink: #8a4527;
  --cream: #fbf3ea;
  --cream-2: rgba(251, 243, 234, .82);
  --cream-3: rgba(251, 243, 234, .62);
  --display: var(--typography--display, serif);
  --body: var(--typography--text, sans-serif);
  --mono: var(--typography--label, monospace);
  --ease: cubic-bezier(.22, 1, .36, 1);
  color-scheme: light;
}
.fp, .fp { height: 100%; }
.fp { background: var(--paper); color: var(--ink); font-family: var(--body); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
.fp * { box-sizing: border-box; }
.fp [hidden] { display: none !important; }
.fp button, .fp input { font: inherit; color: inherit; }
.fp :focus-visible { outline: 1px solid currentColor; outline-offset: 3px; }
.fp .app { min-height: 100%; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding: 8px; padding-left: max(8px, env(safe-area-inset-left, 0px)); padding-right: max(8px, env(safe-area-inset-right, 0px)); }
.fp .stage { position: sticky; top: 8px; height: calc(100vh - 16px); min-height: 560px; border-radius: 12px; overflow: hidden; isolation: isolate; touch-action: pan-y; cursor: grab; background: var(--clay); color: var(--cream); }
.fp .stage::before { content: ""; position: absolute; inset: -30%; z-index: -1; pointer-events: none; will-change: transform;
  background:
    radial-gradient(38% 46% at 22% 26%, rgba(214, 140, 99, .9) 0%, rgba(214, 140, 99, 0) 62%),
    radial-gradient(44% 52% at 80% 16%, var(--clay-dark) 0%, rgba(106, 42, 20, 0) 64%),
    radial-gradient(48% 56% at 70% 80%, #c47a59 0%, rgba(196, 122, 89, 0) 60%),
    radial-gradient(56% 58% at 24% 86%, #7a3319 0%, rgba(122, 51, 25, 0) 66%),
    var(--clay);
  filter: blur(36px); animation: fp-drift 26s ease-in-out infinite alternate; }
@keyframes fp-drift {
  0% { transform: translate3d(-4%, -2%, 0) rotate(0deg) scale(1.04); }
  50% { transform: translate3d(3%, 4%, 0) rotate(7deg) scale(1.12); }
  100% { transform: translate3d(-2%, 5%, 0) rotate(-5deg) scale(1.07); }
}
.fp .stage.is-dragging { cursor: grabbing; }
.fp .panel { display: flex; flex-direction: column; min-width: 0; min-height: calc(100vh - 16px); padding-block: 56px 48px; padding-inline: clamp(32px, 7vw, 128px); }
.fp .panel > * { width: 100%; max-width: 540px; }
.fp .panel > .step.result { max-width: 600px; }
.fp .brand { position: absolute; top: 26px; left: 30px; right: 26px; display: flex; justify-content: space-between; align-items: center; z-index: 4; pointer-events: none; }
.fp .wordmark { display: block; width: 112px; height: auto; color: var(--cream); }
.fp .drag-hint { position: absolute; left: 0; right: 0; bottom: 24px; text-align: center; font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--cream-3); z-index: 3; pointer-events: none; opacity: 0; transition: opacity 1.2s var(--ease); }
.fp .fallback { position: absolute; inset: 0; display: none; place-items: center; padding: 40px; text-align: center; color: var(--cream-2); font-size: 14px; }
.fp .stage.no-gl .fallback { display: grid; }
.fp #gl { position: absolute; inset: 0; transition: opacity .35s var(--ease); }
.fp #gl canvas { display: block; width: 100%; height: 100%; }
.fp svg#leaders { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 2; overflow: visible; }
.fp .hots { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.fp .hot { position: absolute; left: 0; top: 0; width: 30px; height: 30px; margin: -15px 0 0 -15px; border: 0; background: none; padding: 0; cursor: pointer; pointer-events: auto; display: grid; place-items: center; transition: opacity .5s var(--ease); }
.fp .hot::before { content: ""; width: 9px; height: 9px; border-radius: 50%; border: 1px solid var(--cream); background: rgba(255, 246, 238, .08); transition: background .4s var(--ease), transform .4s var(--ease), box-shadow .4s var(--ease); }
.fp .hot[aria-pressed="true"]::before { background: rgba(255, 250, 245, .75); border-color: rgba(255, 250, 245, .9); transform: scale(1.2); box-shadow: 0 0 0 4px rgba(255, 255, 255, .12), 0 0 12px 2px rgba(255, 240, 228, .25); }
.fp .hot.is-static { pointer-events: none; }
.fp .hot, .fp .lbl, .fp svg#leaders line { opacity: 0; }
.fp .lbl { position: absolute; left: 0; top: 0; font-family: var(--mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--cream-3); line-height: 1.35; transition: color .4s var(--ease), opacity .5s var(--ease); pointer-events: auto; cursor: pointer; }
.fp .lbl.is-on { color: #fff; }
.fp .lbl.is-static { pointer-events: none; }
.fp .progress { display: flex; align-items: center; gap: 18px; font-family: var(--body); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.fp .bar { flex: 1; height: 4px; border-radius: 2px; background: var(--hair); position: relative; overflow: hidden; }
.fp .bar i { position: absolute; inset: 0 auto 0 0; background: var(--ink); transition: width .8s var(--ease); }
.fp .is-q .actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.fp .is-q .actions .btn { width: 100%; }
.fp .is-q .actions .hint { order: -1; }
.fp .btn.is-outline { background: transparent; color: var(--ink); border-color: var(--hair-2); }
.fp .btn.is-outline:not([disabled]):hover { background: #151513; border-color: #151513; color: #f1ece1; }
.fp .back { border: 0; background: none; padding: 4px 0; font-family: var(--body); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); cursor: pointer; transition: color .3s var(--ease); }
.fp .back:hover { color: var(--ink); }
.fp .step { flex: 1; display: flex; flex-direction: column; justify-content: flex-start; padding-block: 40px 32px; gap: 26px; animation: fp-rise .7s var(--ease) both; }
.fp .step:not(.is-q):not(.result) { justify-content: center; }
.fp .app.is-first .step { animation: none; }
.fp .app.is-first .step .eyebrow, .fp .app.is-first .step h1, .fp .app.is-first .step .lede, .fp .app.is-first .step .actions, .fp .app.is-first .step .hint { animation: fp-settle 1.4s cubic-bezier(.16, 1, .3, 1) both; }
.fp .app.is-first .step .eyebrow { animation-delay: .5s; }
.fp .app.is-first .step h1 { animation-delay: .68s; }
.fp .app.is-first .step .lede { animation-delay: .86s; }
.fp .app.is-first .step .actions { animation-delay: 1.04s; }
.fp .app.is-first .step .hint { animation-delay: 1.2s; }
@keyframes fp-settle { from { opacity: 0; transform: translate3d(0, 18px, 0); filter: blur(6px); } }
.fp .is-off, .fp .is-off::before, .fp .is-off::after, .fp .is-off *, .fp .is-off *::before, .fp .is-off *::after { animation-play-state: paused !important; }
@keyframes fp-rise { from { opacity: 0; transform: translate3d(0, 12px, 0); } }
.fp .stack { display: grid; gap: 12px; }
.fp .eyebrow { display: flex; align-items: center; gap: 12px; font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); }
.fp h1, .fp h2, .fp h3, .fp h4 { font-family: var(--display); font-weight: 400; text-transform: uppercase; margin: 0; text-wrap: balance; color: var(--ink); letter-spacing: 0; }
.fp h1 { font-size: clamp(30px, 3.2vw, 50px); line-height: 1; }
.fp .step h1 { font-family: var(--display); font-size: clamp(32px, 3.3vw, 50px); line-height: 1; letter-spacing: -.005em; }
.fp h2 { font-size: clamp(28px, 2.6vw, 40px); line-height: 1.05; }
.fp h3 { font-size: 18px; line-height: 1.2; letter-spacing: .01em; }
.fp .lede { color: var(--ink-2); max-width: 42ch; margin: 0; font-size: 17px; line-height: 1.6; }
.fp .options { display: grid; border-top: 1px solid var(--hair); }
.fp .opt { display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 8px; text-align: left; border: 0; border-bottom: 1px solid var(--hair); background: none; padding: 13px 0; cursor: pointer; transition: opacity .3s var(--ease); }
.fp .opt .n { font-family: var(--body); font-size: 12px; color: var(--ink-3); letter-spacing: .08em; }
.fp .opt > .n, .fp .opt > :nth-child(2) { align-self: baseline; }
.fp .opt .t { font-family: var(--body); font-size: 19px; line-height: 1.3; }
.fp .opt .s { display: block; font-family: var(--body); font-size: 14px; text-transform: none; color: var(--ink-3); margin-top: 2px; letter-spacing: 0; }
.fp .opt .mark { width: 20px; height: 20px; border-radius: 50%; border: 1px solid var(--hair-2); display: grid; place-items: center; transition: background .3s var(--ease), border-color .3s var(--ease); }
.fp .opt .mark::after { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--paper); opacity: 0; transition: opacity .3s var(--ease); }
.fp .opt[aria-pressed="true"] .mark, .fp .opt[aria-checked="true"] .mark { background: var(--ink); border-color: var(--ink); }
.fp .opt[aria-pressed="true"] .mark::after, .fp .opt[aria-checked="true"] .mark::after { opacity: 1; }
.fp .options:hover .opt:not(:hover):not([aria-checked="true"]):not([aria-pressed="true"]) { opacity: .55; }
.fp .opt.is-square .mark, .fp .opt.is-square .mark::after { border-radius: 3px; }
.fp .days { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.fp .day { border: 1px solid var(--hair); border-radius: 10px; background: none; padding: 28px 12px; text-align: center; cursor: pointer; transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease); }
.fp .day b { display: block; font-family: var(--display); font-weight: 400; font-size: 38px; line-height: 1; }
.fp .day span { display: block; font-family: var(--body); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); margin-top: 10px; }
.fp .day:hover { border-color: var(--hair-2); }
.fp .day[aria-checked="true"] { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.fp .day[aria-checked="true"] span { color: rgba(243, 237, 228, .7); }
.fp .actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 32px; }
.fp .btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 30px; border-radius: 4px; border: 1px solid var(--ink); background: var(--ink); color: var(--paper); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; text-decoration: none; transition: background-color .3s cubic-bezier(.22, 1, .36, 1), color .3s cubic-bezier(.22, 1, .36, 1), border-color .3s cubic-bezier(.22, 1, .36, 1), transform .2s cubic-bezier(.22, 1, .36, 1); }
.fp .btn:not([disabled]):hover { background: #a75c3a; border-color: #a75c3a; color: #f1ece1; }
.fp .btn:not([disabled]):active { transform: scale(.98); }
.fp .btn-l { display: block; overflow: hidden; line-height: 1.3; }
.fp .btn-r { display: block; text-shadow: 0 1.3em currentColor; transition: transform .65s cubic-bezier(.16, 1, .3, 1); }
.fp .btn:not([disabled]):hover .btn-r { transform: translate3d(0, -1.3em, 0); }
.fp .link { border: 0; background: none; padding: 6px 0; color: var(--ink); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid var(--hair-2); cursor: pointer; transition: border-color .3s var(--ease); }
.fp .link:hover { border-color: var(--ink); }
.fp .hint { font-family: var(--body); font-size: 14px; letter-spacing: 0; color: var(--ink-3); }
.fp form.lead { display: grid; gap: 14px; }
.fp .field { display: grid; gap: 8px; }
.fp .field label .req { margin-left: 3px; color: var(--clay-ink); }
.fp .field label { font-family: var(--body); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.fp .field input { height: 54px; padding: 0 16px; border-radius: 6px; border: 1px solid var(--hair-2); background: #fbf8f3; color: var(--ink); outline: none; transition: border-color .3s var(--ease); }
.fp .field input:focus { border-color: var(--ink); }
.fp .field .sel, .fp .field textarea { width: 100%; padding: 14px 16px; border-radius: 6px; border: 1px solid var(--hair-2); background-color: #fbf8f3; color: var(--ink); font: inherit; font-size: 15px; outline: none; transition: border-color .3s var(--ease); }
.fp .field .sel { height: 54px; padding-right: 34px; -webkit-appearance: none; appearance: none; cursor: pointer; background: #fbf8f3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231d1611' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 14px center; }
.fp .field textarea { resize: vertical; min-height: 72px; line-height: 1.5; }
.fp .field .sel:focus, .fp .field textarea:focus { border-color: var(--ink); }
.fp .field .opt-l { margin-left: 6px; text-transform: none; letter-spacing: 0; color: var(--ink-3); opacity: .8; }
.fp .field input[aria-invalid="true"] { border-color: var(--clay); box-shadow: inset 0 0 0 1px var(--clay); }
.fp .two { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.fp .phone { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 8px; }
.fp .phone select { height: 54px; padding: 0 30px 0 14px; border-radius: 6px; border: 1px solid var(--hair-2); background: #fbf8f3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231d1611' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 12px center; color: var(--ink); font: inherit; font-size: 15px; -webkit-appearance: none; appearance: none; outline: none; cursor: pointer; transition: border-color .3s var(--ease); }
.fp .phone select:focus { border-color: var(--ink); }
.fp .phone input { min-width: 0; }
.fp .consent { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.55; color: var(--ink-2); margin-top: 6px; cursor: pointer; }
.fp .consent input { flex: none; width: 16px; height: 16px; margin: 3px 0 0; accent-color: var(--ink); }
.fp .err { min-height: 20px; font-size: 14px; color: var(--clay-ink); margin: 0; }
.fp .result { gap: 64px; justify-content: flex-start; padding-block: 56px 32px; }
.fp .block { display: grid; gap: 20px; min-width: 0; }
.fp .block > .hint { padding-bottom: 14px; border-bottom: 1px solid var(--hair); }
.fp .focus-list { display: grid; margin: 0; padding: 0; list-style: none; }
.fp .focus-list li { display: grid; grid-template-columns: 52px 1fr; gap: 8px; padding: 18px 0; border-bottom: 1px solid var(--hair); }
.fp .focus-list .n { font-family: var(--body); font-size: 12px; color: var(--clay-ink); padding-top: 4px; }
.fp .focus-list b { display: block; font-family: var(--display); font-weight: 400; font-size: 18px; text-transform: uppercase; letter-spacing: .01em; margin-bottom: 4px; }
.fp .focus-list span { color: var(--ink-2); font-size: 15px; }
.fp .glass { background: var(--paper-2); }
.fp .next { display: grid; grid-template-columns: auto 1fr; gap: 28px; align-items: center; padding: 26px 28px; border-radius: 12px; }
.fp .next .date { display: grid; justify-items: center; padding-right: 28px; border-right: 1px solid var(--hair-2); }
.fp .next .date span { font-family: var(--body); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); }
.fp .next .date b { font-family: var(--display); font-weight: 400; font-size: 50px; line-height: 1; margin: 6px 0; }
.fp .next p { margin: 6px 0 0; color: var(--ink-2); font-size: 15px; }
.fp .tl { display: grid; gap: 18px; }
.fp .tl-phases { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 6px; }
.fp .tl-phase { grid-column: span 3; padding: 14px 12px 16px; border-radius: 10px; min-width: 0; }
.fp .tl-phase .k { font-family: var(--body); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.fp .tl-phase h4 { margin: 8px 0 6px; font-family: var(--display); font-weight: 400; font-size: clamp(12px, .92vw, 15px); text-transform: uppercase; letter-spacing: 0; }
.fp .tl-phase p { margin: 0; font-size: 13px; line-height: 1.5; color: var(--ink-2); }
.fp .tl-track { position: relative; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); border-top: 1px solid var(--hair-2); padding-top: 12px; margin-top: 8px; }
.fp .tl-week { font-family: var(--body); font-size: 12px; letter-spacing: .08em; color: var(--ink-3); text-align: center; }
.fp .tl-dot { position: absolute; top: -5px; width: 9px; height: 9px; margin-left: -4.5px; border-radius: 50%; background: var(--ink); }
.fp .tl-dot.is-next { background: var(--clay); box-shadow: 0 0 0 5px rgba(156, 79, 45, .18); }
.fp .tl-ms { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; padding-top: 6px; }
.fp .ms { display: grid; gap: 4px; align-content: start; min-width: 0; padding-top: 14px; border-top: 1px solid var(--hair); }
.fp .ms .wk { font-family: var(--body); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--clay-ink); }
.fp .ms b { display: block; font-weight: 500; font-size: 14px; line-height: 1.35; }
.fp .ms .dt { display: block; font-family: var(--body); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.fp .ms .ph { display: none; font-family: var(--body); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--clay-ink); margin-bottom: 4px; }
.fp .week { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 6px; }
.fp .wd { border-radius: 10px; padding: 14px 12px 16px; min-height: 128px; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.fp .wd .d { font-family: var(--body); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.fp .wd .st { font-family: var(--display); font-size: 15px; line-height: 1.15; text-transform: uppercase; }
.fp .wd .ds { font-size: 12px; line-height: 1.4; color: var(--ink-2); }
.fp .wd.is-train { background: var(--ink); color: var(--paper); }
.fp .wd.is-train .d, .fp .wd.is-train .ds { color: rgba(243, 237, 228, .66); }
.fp .wd.is-rest { background: none; box-shadow: inset 0 0 0 1px var(--hair); }
.fp .wd.is-rest .st { color: var(--ink-3); }
.fp .pass { display: grid; grid-template-columns: 132px 1fr; gap: 24px; align-items: center; padding: 22px; border-radius: 12px; }
.fp .pass .card { aspect-ratio: 1.6; border-radius: 8px; position: relative; overflow: hidden; box-shadow: 0 16px 30px -16px rgba(29, 22, 17, .55); }
.fp .pass .card.garde { background: radial-gradient(120% 90% at 20% 10%, #4a463d 0%, #24231f 55%, #1b1a17 100%); }
.fp .pass .card.prive { background: radial-gradient(120% 90% at 20% 10%, #f0a274 0%, #b8562e 50%, #6e2a14 100%); }
.fp .pass .card span { position: absolute; left: 10px; bottom: 8px; font-family: var(--display); font-size: 12px; text-transform: uppercase; color: var(--cream); }
.fp .pass .card i { position: absolute; left: 10px; top: 8px; font-style: normal; font-family: var(--display); font-size: 8px; letter-spacing: .4em; color: var(--cream); }
.fp .pass p { margin: 6px 0 0; color: var(--ink-2); font-size: 15px; }
.fp .note { font-size: 14px; color: var(--ink-3); max-width: 60ch; margin: 0; }
.fp .foot { margin-top: auto; padding-top: 32px; font-family: var(--body); font-size: 13px; letter-spacing: 0; color: var(--ink-3); }
.fp .proc { gap: 44px; }
.fp .proc-meter { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 18px; }
.fp .proc-meter .hint { font-variant-numeric: tabular-nums; min-width: 4ch; color: var(--ink); }
.fp .proc-list { display: grid; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--hair); }
.fp .proc-list li { display: grid; grid-template-columns: 52px 1fr; align-items: start; padding: 20px 0; border-bottom: 1px solid var(--hair); opacity: .32; transition: opacity .6s var(--ease); }
.fp .proc-list li.is-active, .fp .proc-list li.is-done { opacity: 1; }
.fp .proc-list b { display: block; font-family: var(--display); font-weight: 400; font-size: 18px; text-transform: uppercase; letter-spacing: .01em; }
.fp .proc-list li > span:last-child > span { display: block; color: var(--ink-2); font-size: 15px; margin-top: 4px; }
.fp .ic { position: relative; width: 18px; height: 18px; margin-top: 3px; border-radius: 50%; border: 1px solid var(--hair-2); }
.fp .is-active .ic { border-color: var(--hair); border-top-color: var(--ink); animation: fp-spin .9s linear infinite; }
.fp .is-done .ic { background: var(--ink); border-color: var(--ink); animation: none; }
.fp .is-done .ic::after { content: ""; position: absolute; left: 6px; top: 3px; width: 4px; height: 8px; border: solid var(--paper); border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); }
@keyframes fp-spin { to { transform: rotate(360deg); } }
.fp .btn[disabled] { opacity: .3; cursor: not-allowed; }
.fp .opt[aria-disabled="true"] { opacity: .38; }
.fp .opt.is-rank .mark::after { content: attr(data-rank); width: auto; height: auto; border-radius: 0; background: none; color: var(--paper); font-family: var(--body); font-size: 13px; line-height: 1; }
.fp .ranges { display: grid; gap: 28px; }
.fp .range { display: grid; gap: 2px; }
.fp .range-top { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; }
.fp .range-top label { font-family: var(--body); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.fp .range-val { font-family: var(--body); font-size: 16px; letter-spacing: .06em; line-height: 1; white-space: nowrap; text-transform: uppercase; }
.fp .range input { -webkit-appearance: none; appearance: none; width: 100%; height: 26px; margin: 0; background: transparent; cursor: pointer; touch-action: pan-y; --p: 50%; }
.fp .range input:focus-visible { outline: none; }
.fp .range input::-webkit-slider-runnable-track { height: 4px; border-radius: 4px; background: linear-gradient(to right, var(--ink) var(--p), var(--hair-2) var(--p)); }
.fp .range input::-webkit-slider-thumb { -webkit-appearance: none; width: 14px; height: 14px; margin-top: -5px; border-radius: 50%; background: var(--ink); border: 0; box-shadow: 0 0 0 5px rgba(29, 22, 17, .07); transition: box-shadow .3s var(--ease); }
.fp .range input:focus-visible::-webkit-slider-thumb, .fp .range input:active::-webkit-slider-thumb { box-shadow: 0 0 0 7px rgba(29, 22, 17, .12); }
.fp .range input::-moz-range-track { height: 4px; border-radius: 4px; background: var(--hair-2); border: 0; }
.fp .range input::-moz-range-progress { height: 4px; border-radius: 4px; background: var(--ink); }
.fp .range input::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--ink); border: 0; box-shadow: 0 0 0 5px rgba(29, 22, 17, .07); }
.fp .range-ticks { position: relative; height: 14px; font-family: var(--body); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.fp .range-ticks span { position: absolute; top: 0; left: calc(7px + (100% - 14px) * var(--t)); transform: translateX(-50%); white-space: nowrap; transition: color .3s var(--ease); }
.fp .range-ticks span:first-child { transform: translateX(-7px); }
.fp .range-ticks span:last-child { transform: translateX(calc(-100% + 7px)); }
.fp .range-ticks span.is-on { color: var(--ink); }
.fp .tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.fp .tile { display: grid; gap: 6px; text-align: left; padding: 22px 20px; border: 1px solid var(--hair); border-radius: 10px; background: none; cursor: pointer; transition: background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease); }
.fp .tile b { font-family: var(--body); font-weight: 400; font-size: 18px; }
.fp .tile span { font-size: 14px; color: var(--ink-3); }
.fp .tile:hover { border-color: var(--hair-2); }
.fp .tile { position: relative; padding-right: 48px; }
.fp .tmark { position: absolute; top: 18px; right: 18px; width: 18px; height: 18px; border-radius: 5px; border: 1px solid var(--hair-2); display: grid; place-items: center; transition: background .3s var(--ease), border-color .3s var(--ease); }
.fp .tmark::after { content: ""; width: 6px; height: 6px; border-radius: 2px; background: var(--ink); opacity: 0; transition: opacity .3s var(--ease); }
.fp .tile[aria-pressed="true"] .tmark { background: var(--paper); border-color: var(--paper); }
.fp .tile[aria-pressed="true"] .tmark::after { opacity: 1; }
.fp .tile[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.fp .tile[aria-pressed="true"] span { color: rgba(243, 237, 228, .68); }
.fp .proc-screen { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 24px; color: var(--cream); overflow: hidden; isolation: isolate; background: var(--clay); opacity: 0; transition: opacity .9s var(--ease); }
.fp .proc-screen::before { content: ""; position: absolute; inset: -30%; z-index: -1;
  background:
    radial-gradient(38% 46% at 22% 26%, rgba(214, 140, 99, .9) 0%, rgba(214, 140, 99, 0) 62%),
    radial-gradient(44% 52% at 80% 16%, var(--clay-dark) 0%, rgba(106, 42, 20, 0) 64%),
    radial-gradient(48% 56% at 70% 80%, #c47a59 0%, rgba(196, 122, 89, 0) 60%),
    radial-gradient(56% 58% at 24% 86%, #7a3319 0%, rgba(122, 51, 25, 0) 66%),
    var(--clay);
  filter: blur(36px); animation: fp-drift 26s ease-in-out infinite alternate; }
.fp .proc-screen.is-on { opacity: 1; }
.fp .proc-screen:not(.is-on) { pointer-events: none; }
.fp .proc-inner { display: grid; justify-items: center; gap: 44px; text-align: center; }
.fp .proc-mark { width: clamp(72px, 9vw, 104px); height: auto; overflow: visible; }
.fp .proc-base { fill: rgba(251, 243, 234, .16); }
.fp .proc-fill { fill: var(--cream); }
.fp .proc-type { margin: 0; min-height: 1.6em; max-width: 86vw; font-family: var(--mono); font-size: 14px; letter-spacing: .1em; text-transform: uppercase; color: var(--cream); text-align: center; }
.fp .caret { display: inline-block; width: .55em; height: 1.05em; margin-left: .2em; vertical-align: -.15em; background: var(--cream); animation: fp-blink 1s steps(1) infinite; }
@keyframes fp-blink { 50% { opacity: 0; } }
.fp .readout { position: absolute; bottom: 28px; left: 30px; z-index: 4; width: min(250px, 36%); font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--cream); pointer-events: none; opacity: 0; transform: translate3d(0, 6px, 0); transition: opacity .6s var(--ease), transform .6s var(--ease); }
.fp .stage:has(.readout.is-on) .drag-hint { opacity: 0 !important; }
.fp .readout.is-on { opacity: 1; transform: none; }
.fp .ro-h { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 10px; margin-bottom: 6px; border-bottom: 1px solid rgba(251, 243, 234, .3); color: var(--cream-3); }
.fp .ro-h b { font-weight: 400; color: var(--cream); }
.fp .readout:not(.is-done) .ro-h b::after { content: "_"; animation: fp-blink 1s steps(1) infinite; }
.fp .ro-row { display: flex; align-items: baseline; gap: 8px; padding: 4px 0; line-height: 1.4; }
.fp .ro-k { flex: none; color: var(--cream-3); }
.fp .ro-row i { flex: 1; min-width: 12px; border-bottom: 1px dotted rgba(251, 243, 234, .35); transform: translateY(-4px); }
.fp .ro-v { max-width: 72%; text-align: right; white-space: pre-wrap; }
.fp .rx-page { animation: fp-pagein .9s var(--ease) both; padding-bottom: max(8px, env(safe-area-inset-bottom, 0px)); }
@keyframes fp-pagein { from { opacity: 0; } }
.fp .rx-hero { position: relative; height: 100svh; min-height: 640px; padding: 8px; padding-left: max(8px, env(safe-area-inset-left, 0px)); padding-right: max(8px, env(safe-area-inset-right, 0px)); }
.fp .stage.is-hero { position: relative; top: 0; height: 100%; min-height: 0; max-height: none; border-radius: 12px; }
.fp .stage.is-hero::after { content: ""; position: absolute; inset: auto 0 0 0; height: 45%; z-index: 0; pointer-events: none; background: linear-gradient(to top, rgba(74, 28, 12, .55), rgba(74, 28, 12, 0)); }
.fp .evo { position: absolute; z-index: 4; bottom: clamp(24px, 4vh, 44px); left: 50%; transform: translateX(-50%); width: 236px; display: none; gap: 10px; font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--cream-3); pointer-events: none; }
.fp .stage.is-hero .evo { display: grid; }
.fp .evo-h { display: flex; justify-content: space-between; gap: 12px; white-space: nowrap; }
.fp .evo-h b { font-weight: 400; color: var(--cream); }
.fp .evo-ph { color: var(--cream); }
.fp .evo-bar { height: 2px; border-radius: 2px; background: rgba(251, 243, 234, .25); overflow: hidden; }
.fp .evo-bar i { display: block; height: 100%; width: 100%; background: var(--cream); transform: scaleX(.02); transform-origin: left center; }
.fp .evo-roll { display: inline-grid; overflow: hidden; vertical-align: bottom; }
.fp .evo-roll > span { grid-area: 1 / 1; transition: transform .5s cubic-bezier(.16, 1, .3, 1), opacity .5s cubic-bezier(.16, 1, .3, 1); }
.fp .evo-roll > span.is-below, .fp .evo-roll > span.to-below { transform: translate3d(0, 100%, 0); opacity: 0; }
.fp .evo-roll > span.is-above, .fp .evo-roll > span.to-above { transform: translate3d(0, -100%, 0); opacity: 0; }
.fp .evo-ph.evo-roll { justify-items: end; }
.fp .stage.is-hero .readout { top: 22px; bottom: auto; left: auto; right: 30px; width: min(320px, 28%); }
.fp .rx-hero-copy { position: absolute; z-index: 5; left: calc(8px + clamp(24px, 4vw, 64px)); bottom: calc(8px + clamp(32px, 7vh, 80px)); width: min(640px, calc(100% - 64px)); color: var(--cream); pointer-events: none; display: grid; gap: 22px; }
.fp .rx-hero-copy .eyebrow { color: var(--cream); }
.fp .rx-hero-copy h1 { font-family: var(--display); color: var(--cream); font-size: clamp(40px, 4.2vw, 68px); line-height: .92; letter-spacing: -.005em; }
.fp .rx-hero-copy h1 .ln { display: inline-block; white-space: nowrap; }
.fp .rx-hero-copy p { margin: 0; color: var(--cream-2); font-size: 18px; line-height: 1.55; max-width: 40ch; }
.fp .rx-scroll { position: absolute; z-index: 5; right: calc(8px + clamp(24px, 3vw, 48px)); bottom: calc(8px + clamp(28px, 5vh, 56px)); display: flex; align-items: center; gap: 12px; font-family: var(--body); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--cream-2); pointer-events: none; }
.fp .rx-scroll i { display: block; width: 1px; height: 44px; background: linear-gradient(var(--cream), rgba(251, 243, 234, 0)); animation: fp-cue 2.4s var(--ease) infinite; transform-origin: top; }
@keyframes fp-cue { 0% { transform: scaleY(0); } 60% { transform: scaleY(1); opacity: 1; } 100% { transform: scaleY(1); opacity: 0; } }
.fp .rp { padding-block: clamp(96px, 14vh, 168px); padding-left: max(20px, env(safe-area-inset-left, 0px)); padding-right: max(20px, env(safe-area-inset-right, 0px)); }
.fp .rp + .rp:not(.rp-dark):not(.close) { padding-top: 0; }
.fp .rp.rp-dark + .rp:not(.rp-dark):not(.close) { padding-top: clamp(96px, 14vh, 168px); }
.fp .rp-wrap { max-width: 1240px; margin: 0 auto; padding-inline: clamp(0px, 3vw, 48px); }
.fp .g12 { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; }
.fp .rp-index { display: flex; justify-content: space-between; gap: 16px; padding-top: 16px; border-top: 1px solid var(--hair-2); font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); margin-bottom: clamp(36px, 5vh, 64px); }
.fp .rp-embed { border-radius: 12px; overflow: hidden; background: #111; }
.fp .rp-embed iframe { display: block; width: 100%; height: 100%; border: 0; }
.fp .rp-sched { height: min(78vh, 760px); min-height: 560px; }
.fp .rp-tour { aspect-ratio: 16 / 9; }
.fp .rp-sched-head { row-gap: 16px; align-items: end; margin: clamp(56px, 8vh, 88px) 0 28px; padding-top: 28px; border-top: 1px solid rgba(243, 237, 228, .22); }
.fp .rp-sub { grid-column: 1 / span 7; margin: 0; font-family: var(--display); font-weight: 400; font-size: clamp(28px, 2.6vw, 40px); line-height: 1.05; text-transform: uppercase; color: var(--paper); }
.fp .rp-sched-head .rp-lede { grid-column: 9 / span 4; }
.fp .rp-dark .rp-sched { border: 1px solid rgba(243, 237, 228, .12); }
.fp .tour-sec { --in: clamp(24px, 4vw, 64px); position: relative; isolation: isolate; overflow: hidden; margin: 8px; border-radius: 12px; height: calc(100svh - 16px); min-height: 600px; background: #0f0f0d; color: var(--cream); }
.fp .tour-sec .rp-tour { position: absolute; inset: 0; aspect-ratio: auto; border-radius: 0; }
.fp .tour-sec:fullscreen { margin: 0; border-radius: 0; height: 100vh; }
.fp .tour-scrim { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(to top, rgba(10, 8, 7, .7) 0%, rgba(10, 8, 7, 0) 45%), linear-gradient(to left, rgba(10, 8, 7, .45) 0%, rgba(10, 8, 7, 0) 40%); transition: opacity .8s var(--ease); }
.fp .tour-sec.is-started .tour-scrim { opacity: .55; }
.fp .tour-copy { position: absolute; z-index: 2; left: var(--in); bottom: clamp(32px, 7vh, 80px); width: min(560px, calc(100% - 2 * var(--in))); display: grid; gap: 16px; pointer-events: none; transition: opacity .7s var(--ease), transform .9s cubic-bezier(.16, 1, .3, 1); }
.fp .tour-sec.is-started .tour-copy { opacity: 0; transform: translate3d(0, 12px, 0); }
.fp .tour-idx { font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: rgba(251, 243, 234, .7); }
.fp .tour-title { margin: 0; font-family: var(--display); font-weight: 400; font-size: clamp(40px, 5vw, 80px); line-height: .95; text-transform: uppercase; color: var(--cream); }
.fp .tour-copy p { margin: 0; max-width: 40ch; font-size: 17px; line-height: 1.55; color: rgba(251, 243, 234, .82); }
.fp .tour-tag { position: absolute; left: var(--in); top: var(--in); z-index: 4; display: flex; gap: 10px; align-items: baseline; padding: 9px 14px; border-radius: 999px; background: rgba(15, 15, 13, .45); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid rgba(255, 255, 255, .14); color: var(--cream); font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; pointer-events: none; opacity: 0; transform: translate3d(0, -4px, 0); transition: opacity .5s var(--ease), transform .5s var(--ease); }
.fp .tour-list { position: absolute; z-index: 3; right: var(--in); bottom: clamp(32px, 7vh, 80px); width: 300px; display: grid; padding: 20px 22px 8px; border-radius: 16px; border: 1px solid rgba(255, 255, 255, .16); background: rgba(20, 18, 16, .34); -webkit-backdrop-filter: blur(20px) saturate(130%); backdrop-filter: blur(20px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
.fp .tour-k { padding-bottom: 12px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #e7b08c; }
.fp .tour-stop { display: grid; gap: 3px; padding: 13px 0 13px 16px; border: 0; border-top: 1px solid rgba(255, 255, 255, .14); background: none; text-align: left; cursor: pointer; position: relative; color: var(--cream); }
.fp .tour-stop::before { content: ""; position: absolute; left: 0; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: rgba(255, 255, 255, .35); transition: background .3s var(--ease), transform .3s var(--ease); }
.fp .tour-stop span { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: rgba(251, 243, 234, .6); }
.fp .tour-stop b { font-weight: 400; font-size: 17px; color: var(--cream); transition: color .3s var(--ease); }
.fp .tour-stop:hover b, .fp .tour-stop.is-on b { color: #f0b48e; }
.fp .tour-stop.is-on::before { background: #f0b48e; transform: scale(1.4); }
.fp .tour-sec .vp-bar { left: var(--in); right: calc(var(--in) + 300px + 24px); bottom: var(--in); }
.fp .vp { position: relative; isolation: isolate; }
.fp .vp video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.fp .vp-main { opacity: 0; transition: opacity .6s var(--ease); }
.fp .vp.is-started .vp-main { opacity: 1; }
.fp .vp-loop { transition: opacity .6s var(--ease), transform 1.2s cubic-bezier(.16, 1, .3, 1); }
.fp .vp:not(.is-started):hover .vp-loop { transform: scale(1.025); }
.fp .vp.is-started .vp-loop { opacity: 0; pointer-events: none; }
.fp .vp-play { position: absolute; left: 50%; top: 50%; z-index: 3; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 14px; padding: 12px 22px 12px 12px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .12); -webkit-backdrop-filter: blur(18px) saturate(140%); backdrop-filter: blur(18px) saturate(140%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 20px 40px -20px rgba(0, 0, 0, .5); color: #fff; cursor: pointer; font-family: var(--body); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; transition: background .4s var(--ease), transform .6s cubic-bezier(.16, 1, .3, 1), opacity .5s var(--ease); }
.fp .vp-play svg { width: 48px; height: 48px; padding: 12px 11px 12px 13px; border-radius: 50%; background: rgba(255, 255, 255, .9); color: #151513; }
.fp .vp-play:hover { background: rgba(255, 255, 255, .2); transform: translate(-50%, -50%) scale(1.03); }
.fp .vp.is-started .vp-play { opacity: 0; pointer-events: none; transform: translate(-50%, -50%) scale(.96); }
.fp .vp-bar { position: absolute; left: 12px; right: 12px; bottom: 12px; z-index: 3; display: flex; align-items: center; gap: 14px; padding: 8px 14px 8px 8px; border-radius: 18px; border: 1px solid rgba(255, 255, 255, .18); background: rgba(20, 18, 16, .38); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); color: #fff; opacity: 0; transform: translate3d(0, 6px, 0); pointer-events: none; transition: opacity .5s var(--ease), transform .5s var(--ease); }
.fp .vp.is-started.is-awake .vp-bar, .fp .vp.is-started.is-paused .vp-bar { opacity: 1; transform: none; pointer-events: auto; }
.fp .vp-btn { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; cursor: pointer; transition: background .3s var(--ease); }
.fp .vp-btn:hover { background: rgba(255, 255, 255, .26); }
.fp .vp-btn svg { width: 16px; height: 16px; }
.fp .vp-pp .i-play, .fp .vp.is-paused .vp-pp .i-pause { display: none; }
.fp .vp.is-paused .vp-pp .i-play { display: block; }
.fp .vp-track { position: relative; flex: 1; height: 40px; cursor: pointer; touch-action: none; }
.fp .vp-track::before { content: ""; position: absolute; left: 0; right: 0; top: 12px; height: 3px; border-radius: 3px; background: rgba(255, 255, 255, .25); }
.fp .vp-fill { position: absolute; left: 0; right: 0; top: 12px; height: 3px; border-radius: 3px; background: #fff; transform: scaleX(0); transform-origin: left; }
.fp .vp-track i { position: absolute; top: 10px; width: 2px; height: 7px; margin-left: -1px; border-radius: 1px; background: rgba(255, 255, 255, .55); }
.fp .vp-chap { position: absolute; top: 20px; height: 18px; padding: 0 0 0 5px; border: 0; background: none; color: rgba(255, 255, 255, .55); font-family: var(--mono); font-size: 10px; letter-spacing: .04em; text-transform: uppercase; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; transition: color .3s var(--ease); }
.fp .vp-chap:hover, .fp .vp-chap.is-on { color: #fff; }
.fp .vp-time { flex: none; min-width: 34px; font-family: var(--mono); font-size: 12px; letter-spacing: .06em; font-variant-numeric: tabular-nums; }
.fp .tour-tag { z-index: 4; }
.fp .tour-tag.is-on { opacity: 1; transform: none; }
.fp .tour-tag b { font-weight: 400; }
.fp .tour-tag span { color: #e7b08c; }
.fp .rp-head { row-gap: 20px; align-items: end; margin-bottom: clamp(48px, 7vh, 80px); }
.fp .rp-title { grid-column: 1 / span 7; font-family: var(--display); font-weight: 400; font-size: clamp(40px, 4.8vw, 76px); line-height: .96; letter-spacing: -.005em; text-transform: uppercase; margin: 0; }
.fp .rp-lede { grid-column: 9 / span 4; margin: 0; font-size: 17px; line-height: 1.6; color: var(--ink-2); }
.fp .mh { font-family: var(--display); font-weight: 400; font-size: 18px; line-height: 1.2; letter-spacing: .01em; text-transform: uppercase; margin: 0; }
.fp .gc { display: grid; }
.fp .gc-row { display: grid; grid-template-columns: 236px repeat(12, minmax(0, 1fr)); align-items: center; height: 64px; border-top: 1px solid var(--hair); }
.fp .gc-head { height: 32px; border-top: 0; }
.fp .gc-head .gc-l { font-family: var(--body); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.fp .gc-head .w { grid-row: 1; text-align: center; font-family: var(--body); font-size: 12px; letter-spacing: .04em; color: var(--ink-3); }
.fp .gc-group { padding: 28px 0 10px; border-top: 1px solid var(--hair-2); font-family: var(--body); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--clay-ink); }
.fp .gc-group + .gc-row { border-top: 0; }
.fp .gc-legend { display: flex; flex-wrap: wrap; gap: 10px 28px; margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--hair); font-family: var(--body); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.fp .gc-legend span { display: inline-flex; align-items: center; gap: 10px; }
.fp .gc-legend i { flex: none; display: block; width: 9px; height: 9px; border-radius: 50%; background: #8a7a6b; }
.fp .gc-legend i.is-bar { width: 28px; height: 6px; border-radius: 3px; background: linear-gradient(to right, #ddd0c1, #a8836a); }
.fp .gc-legend i.is-first { background: var(--clay); box-shadow: 0 0 0 4px rgba(156, 79, 45, .14); }
.fp .gc-l { grid-column: 1; grid-row: 1; display: grid; gap: 3px; padding-right: 16px; min-width: 0; }
.fp .gc-l b { font-family: var(--body); font-weight: 400; font-size: 16px; line-height: 1.25; letter-spacing: 0; white-space: nowrap; }
.fp .gc-l span { font-family: var(--body); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.fp .gc-bar { grid-row: 1; height: 8px; margin: 0 2px; border-radius: 4px; background: var(--c); }
.fp .gc-dot { grid-row: 1; justify-self: center; width: 9px; height: 9px; border-radius: 50%; background: #8a7a6b; }
.fp .gc-dot.is-first { background: var(--clay); box-shadow: 0 0 0 5px rgba(156, 79, 45, .14); }
.fp .gc-first { margin: 0 0 28px; font-family: var(--body); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.fp .gc-first b { font-weight: 400; color: var(--clay-ink); }
.fp .mono-s { font-family: var(--body); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.fp .rp-text { margin: 0; font-size: 16px; line-height: 1.6; color: var(--ink-2); }
.fp .rp-rows { border-top: 1px solid var(--hair); }
.fp .rp-row { padding: 28px 0; border-bottom: 1px solid var(--hair); align-items: baseline; }
.fp .rp-row .n { grid-column: 1 / span 1; color: var(--clay-ink); }
.fp .rp-row .mh { grid-column: 2 / span 4; }
.fp .rp-row .rp-text { grid-column: 7 / span 6; max-width: 52ch; }
.fp .rp-tl { row-gap: 56px; }
.fp .rp-first { grid-column: 1 / span 4; align-self: start; display: grid; gap: 16px; padding: 28px; border-radius: 12px; background: var(--ink); color: var(--paper); }
.fp .rp-first .mono-s { color: rgba(243, 237, 228, .6); }
.fp .rp-first .date { font-family: var(--body); font-size: clamp(28px, 2.6vw, 38px); line-height: 1.1; text-transform: uppercase; }
.fp .rp-first .mh { color: var(--paper); }
.fp .rp-first .rp-text { color: rgba(243, 237, 228, .72); font-size: 15px; }
.fp .rp-phases { grid-column: 5 / span 8; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--hair-2); }
.fp .rp-phase { display: grid; gap: 10px; align-content: start; padding: 20px 18px 0 0; }
.fp .rp-phase + .rp-phase { padding-left: 18px; border-left: 1px solid var(--hair); }
.fp .rp-phase .mono-s { color: var(--ink-3); }
.fp .rp-phase .rp-text { font-size: 14px; }
.fp .rp-track { grid-column: 1 / -1; }
.fp .rp-weeks { position: relative; height: 1px; background: var(--hair-2); }
.fp .rp-weeks span { display: none; }
.fp .rp-weeks i { position: absolute; top: -5px; width: 9px; height: 9px; margin-left: -4.5px; border-radius: 50%; background: var(--ink); }
.fp .rp-weeks i.is-first { background: var(--clay); box-shadow: 0 0 0 5px rgba(156, 79, 45, .18); }
.fp .rp-ms { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: 24px; border-top: 1px solid var(--hair-2); }
.fp .rp-m { position: relative; display: grid; gap: 6px; align-content: start; padding-top: 28px; }
.fp .rp-m::before { content: ""; position: absolute; left: 0; top: -5px; width: 9px; height: 9px; border-radius: 50%; background: var(--ink); }
.fp .rp-m:first-child::before { background: var(--clay); box-shadow: 0 0 0 5px rgba(156, 79, 45, .18); }
.fp .rp-m .mono-s { color: var(--clay-ink); }
.fp .rp-m b { font-weight: 400; font-size: 16px; line-height: 1.35; }
.fp .rp-m .dt { font-family: var(--body); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); }
.fp .rp-dark { background: #0f0f0d; color: var(--paper); border-radius: 12px; margin: 0 8px; }
.fp .rp-dark .rp-index { border-top-color: rgba(243, 237, 228, .22); color: rgba(243, 237, 228, .55); }
.fp .rp-dark .rp-title { color: var(--paper); }
.fp .rp-dark .rp-lede { color: rgba(243, 237, 228, .68); }
.fp .rp-dark .rp-text { color: rgba(243, 237, 228, .72); }
.fp .rp-dark .rp-list { border-top-color: rgba(243, 237, 228, .18); }
.fp .rp-dark .rp-list li { border-bottom-color: rgba(243, 237, 228, .18); color: var(--paper); }
.fp .rp-dark .rp-list li::before { color: #d99a74; }
.fp .rp-dark .link { color: var(--paper); border-bottom-color: rgba(243, 237, 228, .4); }
.fp .rp-dark .link:hover { border-bottom-color: var(--paper); }
.fp .rp-dark .rp-card.garde { border-color: rgba(241, 236, 225, .24); }
.fp .rp-week { display: flex; gap: 8px; }
.fp .rp-day { flex: 1 1 0; transition: flex-grow .7s cubic-bezier(.16, 1, .3, 1); position: relative; isolation: isolate; overflow: hidden; border-radius: 10px; padding: 18px 16px 20px; min-height: 300px; display: flex; flex-direction: column; justify-content: space-between; gap: 8px; min-width: 0; background: #2a201a center / cover no-repeat; color: var(--cream); }
.fp .rp-day::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(to bottom, rgba(18, 12, 9, .7) 0%, rgba(18, 12, 9, 0) 32%), linear-gradient(to top, rgba(18, 12, 9, .92) 0%, rgba(18, 12, 9, .45) 55%, rgba(18, 12, 9, .25) 100%); }
.fp .rp-day .rp-dd { align-self: flex-start; }
.fp button.rp-day { border: 0; font: inherit; text-align: left; cursor: pointer; }
.fp .rp-go { position: absolute; top: 14px; right: 14px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: rgba(251, 243, 234, .14); border: 1px solid rgba(251, 243, 234, .3); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); opacity: .7; transition: opacity .4s var(--ease), background .4s var(--ease); }
.fp .rp-go svg { width: 12px; height: 12px; margin-left: 2px; color: var(--cream); }
.fp .rp-day:hover .rp-go, .fp .rp-day:focus-visible .rp-go { opacity: 1; background: rgba(251, 243, 234, .26); }
.fp .rp-day .bot { display: grid; gap: 6px; text-align: left; }
.fp .rp-day .ds { display: grid; grid-template-rows: 0fr; opacity: 0; transform: translate3d(0, 6px, 0); transition: grid-template-rows .6s cubic-bezier(.16, 1, .3, 1), opacity .5s var(--ease), transform .6s cubic-bezier(.16, 1, .3, 1); }
.fp .rp-day .ds > span { overflow: hidden; min-width: 0; }
@media (hover: hover) and (min-width: 901px) {
.fp .rp-week:hover .rp-day { flex-grow: .8; }
.fp .rp-week .rp-day:hover { flex-grow: 2.4; }
.fp .rp-day:hover .ds { grid-template-rows: 1fr; opacity: 1; transform: none; transition-delay: .12s; }
}
.fp .rp-day .mono-s { color: rgba(251, 243, 234, .82); }
.fp .rp-day .kind { color: rgba(251, 243, 234, .62); }
.fp .rp-day .mh { font-size: 17px; color: var(--cream); }
.fp .rp-day .ds { font-size: 13px; line-height: 1.45; color: rgba(251, 243, 234, .74); }
.fp .rp-day.is-train { box-shadow: inset 0 0 0 1px rgba(251, 243, 234, .28); }
.fp .rp-day.is-rest { filter: grayscale(.6); }
.fp .rp-day.is-rest::before { background: linear-gradient(to top, rgba(18, 12, 9, .92), rgba(18, 12, 9, .7)); }
.fp .rp-ic { display: inline-flex; align-items: center; justify-content: flex-start; color: var(--clay-ink); }
.fp .rp-ic svg { width: 26px; height: 26px; stroke-width: 1.5; }
.fp .rp-inc { grid-template-columns: minmax(0, 1fr); align-items: start; align-content: start; }
.fp .rp-card, .fp .rp-card.rv.in { transform: perspective(70rem) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); transition: transform .45s cubic-bezier(.16, 1, .3, 1), box-shadow .6s var(--ease), opacity 1s var(--ease); }
.fp .rp-card.rv:not(.in) { transform: perspective(70rem) translate3d(0, 28px, 0); }
.fp .rp-card:hover, .fp .rp-card.rv.in:hover { transform: perspective(70rem) translate3d(0, -14px, 0) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) scale(1.015); box-shadow: 0 44px 70px -38px rgba(29, 22, 17, .5), 0 18px 32px -20px rgba(29, 22, 17, .35); }
.fp .rp-card .light { position: absolute; inset: 0; z-index: 2; border-radius: inherit; pointer-events: none; opacity: 0; }
.fp .rp-card .light.is-sweep { opacity: 1; background: linear-gradient(105deg, rgba(255, 240, 222, 0) 35%, rgba(255, 240, 222, .16) 50%, rgba(255, 240, 222, 0) 65%) no-repeat; background-size: 300% 100%; background-position: 100% 0; animation: fp-sweep 2.8s var(--ease) .2s forwards; }
@keyframes fp-sweep { to { background-position: 0% 0; } }
@property --edge { syntax: '<angle>'; inherits: false; initial-value: 0deg; }
.fp .rp-card .edge { position: absolute; inset: 0; z-index: 2; padding: 1px; border-radius: inherit; pointer-events: none; background: conic-gradient(from var(--edge), rgba(240, 196, 164, 0) 0deg, rgba(240, 196, 164, .42) 45deg, rgba(240, 196, 164, 0) 100deg, rgba(240, 196, 164, 0) 360deg); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0); animation: fp-edge 18s linear infinite; }
@keyframes fp-edge { to { --edge: 360deg; } }
.fp .rp-measure { border-top: 1px solid var(--hair-2); }
.fp .rp-mi { grid-column: span 4; display: grid; gap: 12px; align-content: start; padding-top: 24px; }
.fp .rp-mi .n { color: var(--clay-ink); }
.fp .rp-incl { margin-top: clamp(48px, 7vh, 72px); row-gap: 0; }
.fp .rp-inc { grid-column: span 4; display: grid; gap: 12px; padding: 24px 0 0; border-top: 1px solid var(--hair); }
.fp .rp-inc .mono-s { color: var(--clay-ink); }
.fp .rp-inc b { font-weight: 400; font-size: 16px; }
.fp .rp-card { grid-column: 1 / span 5; aspect-ratio: 1.6; border-radius: 14px; position: relative; overflow: hidden; box-shadow: 0 40px 80px -40px rgba(29, 22, 17, .7); }
.fp .rp-card { border: 1px solid rgba(241, 236, 225, .18); background-size: 180% 180%; background-position: 0% 15%; }
.fp .rp-card::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .13; background-image: radial-gradient(rgba(255, 255, 255, .6) .4px, transparent .8px); background-size: 3px 3px; mix-blend-mode: soft-light; }
.fp .rp-card.garde { background-image: radial-gradient(at 15% 15%, #4e4c40 0%, rgba(0, 0, 0, 0) 55%), radial-gradient(at 95% 80%, #393327 0%, rgba(0, 0, 0, 0) 60%), linear-gradient(135deg, #0b0d0c, #252a27 65%, #101412); animation: fp-card-gradient 8s ease-in-out infinite; }
.fp .rp-card.prive { background-image: radial-gradient(at 15% 15%, #ff9957 0%, rgba(0, 0, 0, 0) 52%), radial-gradient(at 95% 80%, #892610 0%, rgba(0, 0, 0, 0) 60%), linear-gradient(135deg, #432316, #cd5523 65%, #5e271a); animation: fp-card-gradient 11s ease-in-out -5s infinite reverse; }
.fp .rp-card::after { content: ""; position: absolute; inset: 0; z-index: 3; padding: 1px; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .5s var(--ease);
  background: radial-gradient(240px circle at var(--mx, 30%) var(--my, 0%), rgba(255, 248, 238, .95), rgba(255, 248, 238, .28) 40%, rgba(255, 248, 238, 0) 72%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0); }
.fp .rp-card:hover::after { opacity: 1; }
@keyframes fp-card-gradient { 0%, 100% { background-position: 0% 15%; } 50% { background-position: 100% 85%; } }
.fp .rp-card-logo svg { display: block; width: clamp(84px, 8vw, 116px); height: auto; color: var(--cream); }
.fp .rp-card i { position: absolute; left: 7%; top: 9%; font-style: normal; font-family: var(--display); font-size: clamp(12px, 1.2vw, 16px); letter-spacing: .5em; color: var(--cream); }
.fp .rp-card em { position: absolute; right: 7%; top: 9%; font-style: normal; font-family: var(--body); font-size: 13px; letter-spacing: .12em; color: var(--cream-2); }
.fp .rp-card span { position: absolute; left: 7%; bottom: 9%; font-family: var(--display); font-size: clamp(26px, 3vw, 44px); text-transform: uppercase; color: var(--cream); }
.fp .close .rp-title { grid-column: auto; }
.fp .rp-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--hair); }
.fp .rp-list li { display: flex; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--hair); font-size: 16px; }
.fp .rp-list li::before { content: "—"; font-family: var(--body); color: var(--clay-ink); }
.fp .close { position: relative; overflow: hidden; isolation: isolate; border-radius: 12px; margin: 0 8px; color: var(--cream); text-align: center; }
.fp .close::before { content: ""; position: absolute; inset: -30%; z-index: -1; will-change: transform;
  background:
    radial-gradient(38% 46% at 22% 26%, rgba(214, 140, 99, .9) 0%, rgba(214, 140, 99, 0) 62%),
    radial-gradient(44% 52% at 80% 16%, var(--clay-dark) 0%, rgba(106, 42, 20, 0) 64%),
    radial-gradient(56% 58% at 24% 86%, #7a3319 0%, rgba(122, 51, 25, 0) 66%),
    var(--clay);
  filter: blur(36px); animation: fp-drift 26s ease-in-out infinite alternate; }
.fp .close-grid { align-items: center; row-gap: 48px; text-align: left; }
.fp .close-copy { grid-column: 7 / span 6; display: grid; justify-items: start; gap: 24px; }
.fp .rp-card.offer { background-image: radial-gradient(at 15% 15%, #4e4c40 0%, rgba(0, 0, 0, 0) 55%), radial-gradient(at 95% 80%, #393327 0%, rgba(0, 0, 0, 0) 60%), linear-gradient(135deg, #0b0d0c, #252a27 65%, #101412); border-color: rgba(241, 236, 225, .24); animation: fp-card-gradient 8s ease-in-out infinite; }
.fp .rp-card.offer em { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.fp .rp-card.offer span { bottom: 17%; font-size: clamp(40px, 5vw, 72px); }
.fp .rp-card small { position: absolute; left: 7%; bottom: 9%; font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--cream-2); }
.fp .close-perks { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.fp .close-perks li { padding: 8px 14px; border: 1px solid rgba(251, 243, 234, .32); border-radius: 999px; font-size: 14px; color: var(--cream); }
.fp .close .mono-s { color: var(--cream-2); }
.fp .close .rp-title { color: var(--cream); font-size: clamp(44px, 5vw, 80px); }
.fp .close p { margin: 0; color: var(--cream-2); font-size: 18px; line-height: 1.6; max-width: 46ch; }
.fp .close .btn { background: var(--cream); border-color: var(--cream); color: var(--ink); }
.fp .close .btn:not([disabled]):hover { background: #151513; border-color: #151513; color: #f1ece1; }
.fp .close .link { color: var(--cream); border-color: rgba(251, 243, 234, .4); }
.fp .close .link:hover { border-color: var(--cream); }
.fp .close .actions { justify-content: flex-start; }
.fp .rv { opacity: 0; transform: translate3d(0, 28px, 0); transition: opacity 1s var(--ease), transform 1.2s var(--ease); }
.fp .rv.in { opacity: 1; transform: none; }
@media (max-width: 900px) {
.fp .rx-hero { min-height: 560px; }
.fp .rp-sub, .fp .rp-sched-head .rp-lede { grid-column: 1 / -1; }
.fp .vp-play { padding: 8px 16px 8px 8px; gap: 10px; font-size: 12px; }
.fp .vp-play svg { width: 40px; height: 40px; padding: 10px 9px 10px 11px; }
.fp .tour-sec { height: auto; min-height: 0; display: flex; flex-direction: column; }
.fp .tour-sec .rp-tour { position: relative; inset: auto; height: 72svh; min-height: 440px; }
.fp .tour-sec.is-started .vp-main { object-fit: contain; background: #000; }
.fp .tour-scrim { bottom: auto; height: 72svh; min-height: 440px; }
.fp .tour-copy { --in: 20px; top: auto; bottom: auto; top: calc(max(72svh, 440px) - 190px); }
.fp .tour-title { font-size: clamp(36px, 10vw, 52px); }
.fp .tour-copy p { font-size: 15px; }
.fp .tour-tag { --in: 12px; padding: 7px 11px; gap: 8px; }
.fp .tour-list { position: relative; right: auto; top: auto; bottom: auto; transform: none; width: auto; margin: 0; padding: 22px 20px 12px; border: 0; border-radius: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; }
.fp .tour-sec .vp-bar { left: 8px; right: 8px; bottom: 8px; gap: 10px; }
.fp .vp-chap { display: none; }
.fp .vp-chap.is-on { display: block; left: 0 !important; width: auto !important; padding: 0; }
.fp .tour-tag { left: 10px; top: 10px; padding: 7px 11px; gap: 8px; }
.fp .gc-row { grid-template-columns: 136px repeat(12, minmax(0, 1fr)); height: auto; min-height: 60px; padding: 10px 0; }
.fp .gc-head { min-height: 32px; padding: 0; }
.fp .gc-l b { white-space: normal; font-size: 14px; }
.fp .gc-l { padding-right: 10px; }
.fp .gc-l b { font-size: 14px; }
.fp .gc-bar { height: 6px; margin: 0 1px; }
.fp .gc-dot { width: 7px; height: 7px; }
.fp .gc-head .w:not(.is-key) { visibility: hidden; }
.fp .gc-head .w { text-align: left; padding-left: 2px; }
.fp .rx-hero-copy { left: 28px; right: 28px; width: auto; bottom: 84px; gap: 14px; }
.fp .rx-hero-copy h1 { font-size: clamp(28px, 8.4vw, 56px); }
.fp .rx-hero-copy p { font-size: 16px; }
.fp .stage.is-hero .drag-hint { display: none; }
.fp .rx-scroll { left: 50%; right: auto; bottom: calc(8px + 14px); transform: translateX(-50%); flex-direction: column; gap: 6px; }
.fp .rx-scroll i { height: 26px; }
.fp .stage.is-hero .readout { top: 64px; left: 20px; right: auto; width: min(56%, 220px); }
.fp .stage.is-hero .readout::before { display: none; }
.fp .stage.is-hero .lbl, .fp .stage.is-hero #leaders { display: none; }
.fp .stage.is-hero .evo { top: calc(var(--ro-b, 270px) + 40px); bottom: auto; left: 20px; right: auto; transform: none; width: min(42%, 160px); gap: 8px; }
.fp .stage.is-hero .evo-h { flex-direction: column; gap: 4px; }
.fp .stage.is-hero .evo-ph.evo-roll { justify-items: start; }
.fp .rp { padding-block: 88px; }
.fp .rp-title, .fp .rp-lede { grid-column: 1 / -1; }
.fp .rp-row { row-gap: 8px; }
.fp .rp-row .n { grid-column: 1 / span 2; }
.fp .rp-row .mh, .fp .rp-row .rp-text { grid-column: 3 / -1; }
.fp .rp-first, .fp .rp-phases { grid-column: 1 / -1; }
.fp .rp-phases { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 24px; }
.fp .rp-phase:nth-child(3) { padding-left: 0; border-left: 0; }
.fp .rp-weeks { display: none; }
.fp .rp-ms { grid-template-columns: minmax(0, 1fr); border-top: 0; border-left: 1px solid var(--hair-2); margin-left: 4px; }
.fp .rp-m { padding: 0 0 22px 20px; }
.fp .rp-m::before { left: -5px; top: 4px; }
.fp .rp-week { flex-direction: column; gap: 6px; }
.fp .rp-day .ds { grid-template-rows: 1fr; opacity: 1; transform: none; }
.fp .rp-day { min-height: 124px; padding: 16px; }
.fp .rp-day::before { background: linear-gradient(to right, rgba(18, 12, 9, .92) 0%, rgba(18, 12, 9, .72) 55%, rgba(18, 12, 9, .55) 100%); }
.fp .rp-mi, .fp .rp-inc { grid-column: 1 / -1; }
.fp .rp-mi, .fp .rp-inc { padding: 24px 0 28px; gap: 10px; }
.fp .rp-mi + .rp-mi { border-top: 1px solid var(--hair); }
.fp .rp-incl { margin-top: 0; }
.fp .rp-card, .fp .close-copy { grid-column: 1 / -1; }
.fp .rp-card { max-width: 380px; }
}
@media (min-width: 901px) {
.fp .app > .stage:not(.is-hero) { grid-column: 1 / -1; grid-row: 1; justify-self: start; width: 50%; transition: width 1s cubic-bezier(.65, 0, .35, 1); }
.fp .app.is-intro > .stage:not(.is-hero) { width: 100%; }
.fp .app > .panel { grid-column: 2; grid-row: 1; position: relative; z-index: 5; }
.fp .app.is-intro .drag-hint { right: 50%; }
.fp .app.is-folding .panel .step { animation-delay: .7s; }
.fp .app.is-folding .panel .progress { animation: fp-rise .7s var(--ease) .7s both; }
.fp .app.is-intro .panel .eyebrow, .fp .app.is-intro .panel .hint { color: rgba(251, 243, 234, .72); }
.fp .app.is-intro .panel h1 { color: var(--cream); }
.fp .app.is-intro .panel .lede { color: rgba(251, 243, 234, .82); }
.fp .app.is-intro .panel .btn { background: var(--cream); border-color: var(--cream); color: var(--ink); }
.fp .app.is-intro .panel .btn:not([disabled]):hover { background: #151513; border-color: #151513; color: #f1ece1; }
.fp .app.is-intro .panel .link { color: var(--cream); border-bottom-color: rgba(251, 243, 234, .45); }
.fp .app.is-intro .panel .link:hover { border-bottom-color: var(--cream); }
}
@media (max-width: 900px) {
.fp .app { grid-template-columns: minmax(0, 1fr); }
.fp .stage { position: relative; top: 0; height: 58vh; min-height: 420px; max-height: 560px; }
.fp .stage:not(.is-hero) { position: sticky; top: 8px; z-index: 6; box-shadow: 0 0 0 8px var(--paper); height: 38vh; height: 38svh; min-height: 240px; max-height: 420px; transition: height .5s var(--ease); }
.fp .stage[data-step="zones"]:not(.is-hero) { height: 44vh; height: 44svh; min-height: 300px; max-height: 440px; }
html:has(.fp .app:not([hidden])) { scroll-padding-top: calc(min(44svh, 440px) + 24px); scroll-padding-bottom: 120px; }
.fp .stage:not(.is-hero) .lbl, .fp .stage:not(.is-hero) #leaders { display: none; }
.fp .panel { min-height: 0; padding-block: 24px 24px; padding-inline: 16px; }
.fp .step { padding-block: 16px 0; gap: 18px; }
.fp .lede { font-size: 15px; line-height: 1.5; }
.fp .opt { grid-template-columns: 36px 1fr auto; padding: 11px 0; }
.fp .opt[aria-pressed="false"] .s { display: none; }
.fp .ranges { gap: 20px; }
.fp form.lead { gap: 12px; }
.fp .field input, .fp .phone select, .fp .field .sel { height: 48px; }
.fp .is-q .actions { position: sticky; bottom: 0; z-index: 3; grid-template-columns: 104px minmax(0, 1fr); gap: 10px; margin-inline: -16px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); background: var(--paper); box-shadow: 0 -1px 0 var(--hair); }
.fp .is-q .actions .hint { order: -2; grid-column: 1 / -1; }
.fp .is-q .actions [data-back] { order: -1; }
.fp .is-q .actions [data-back]:only-child { grid-column: 1 / -1; }
.fp .result { gap: 48px; padding-block: 32px 16px; }
.fp .brand { top: 18px; left: 20px; right: 16px; }
.fp .readout { bottom: 12px; left: 16px; width: min(56%, 220px); letter-spacing: .04em; }
.fp .readout::before { content: ""; position: absolute; inset: -48px -48px -12px -16px; z-index: -1; background: radial-gradient(120% 100% at 0% 100%, rgba(74, 28, 12, .5), rgba(74, 28, 12, 0) 75%); }
.fp .ro-h { padding-bottom: 5px; margin-bottom: 3px; }
.fp .ro-row { gap: 6px; padding: 1px 0; line-height: 1.35; }
.fp .ro-row i { display: none; }
.fp .ro-v { flex: 1; min-width: 0; max-width: none; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fp .lbl { font-size: 12px; }
.fp .opt .t { font-size: 17px; }
.fp .week { grid-template-columns: minmax(0, 1fr); gap: 4px; }
.fp .wd { min-height: 0; display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 12px; row-gap: 2px; padding: 12px 14px; }
.fp .wd .d { grid-row: span 2; padding-top: 3px; }
.fp .tl-phases, .fp .tl-track { display: none; }
.fp .tl-ms { grid-template-columns: minmax(0, 1fr); gap: 0; border-left: 1px solid var(--hair-2); margin-left: 4px; padding-top: 0; }
.fp .ms { border-top: 0; padding: 0 0 20px 20px; position: relative; }
.fp .ms::before { content: ""; position: absolute; left: -5px; top: 3px; width: 9px; height: 9px; border-radius: 50%; background: var(--ink); }
.fp .ms.is-next::before { background: var(--clay); }
.fp .ms .ph { display: block; }
}
@media (max-width: 520px) {
.fp .tiles { gap: 8px; }
.fp .tile { padding: 14px 34px 14px 14px; gap: 4px; }
.fp .tmark { top: 14px; right: 12px; width: 16px; height: 16px; }
.fp .tile b { font-size: 15px; line-height: 1.3; }
.fp .tile span { font-size: 12px; line-height: 1.4; }
.fp .days { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fp .two { grid-template-columns: minmax(0, 1fr); }
.fp .pass { grid-template-columns: minmax(0, 1fr); }
.fp .pass .card { max-width: 200px; }
.fp .next { grid-template-columns: minmax(0, 1fr); gap: 14px; }
.fp .next .date { justify-items: start; border-right: 0; padding-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
.fp .rp-card, .fp .rp-card:hover, .fp .rp-card.rv.in, .fp .rp-card.rv.in:hover { transform: none; transition: none; }
.fp .rp-card .edge, .fp .rp-card .light.is-sweep, .fp .rp-card.garde, .fp .rp-card.prive, .fp .rp-card.offer { animation: none; }
.fp .stage::before, .fp .step, .fp .app.is-first .step *, .fp .is-active .ic, .fp .close::before, .fp .rx-page, .fp .rx-scroll i, .fp .proc-screen::before { animation: none; }
.fp .proc-screen { transition: none; }
.fp .caret { animation: none; }
.fp .rv { opacity: 1; transform: none; transition: none; }
.fp .bar i, .fp .hot::before, .fp .opt .mark, .fp #gl, .fp .opt, .fp .btn-r, .fp .vp-loop { transition: none; }
}
.fp { --fp-top: var(--av-nav-bottom, 80px); position: relative; }
.fp .brand { display: none; }
.fp .app { padding-top: calc(var(--fp-top) + 8px); }
.fp .stage:not(.is-hero) { top: calc(var(--fp-top) + 8px); height: calc(100vh - var(--fp-top) - 16px); }
.fp .panel { min-height: calc(100vh - var(--fp-top) - 16px); }
.fp .rx-hero { height: 100svh; padding-top: calc(var(--fp-top) + 8px); }
.fp .tour-sec { scroll-margin-top: calc(var(--fp-top) + 8px); }
@media (min-width: 901px) { .fp .tour-sec { height: calc(100svh - var(--fp-top) - 16px); } }
.fp-native { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 900px) {
  .fp .is-q .actions .btn { white-space: nowrap; font-size: 12px; letter-spacing: .04em; padding-inline: 12px; }
  .fp .stage:not(.is-hero) { top: calc(var(--fp-top) + 8px); height: 38svh; }
  .fp .panel { min-height: 0; }
}
