.jf{--paper:#fbf8f4;--paper-2:#f4efe7;--paper-3:#eae3d8;--ink:#0b0f14;--ink-2:#12171e;--navy:#061224;--navy-2:#0a1b36;--surface:#fff;--line:#e7e0d4;--line-strong:#d5ccbc;--fg-1:#15181d;--fg-2:#4b5058;--fg-3:#767b84;--fg-4:#a3a7ae;--d-fg-1:#f3eee4;--d-fg-2:#b7b2a6;--d-fg-3:#7e7a70;--d-line:#f3eee41f;--d-line-2:#f3eee438;--gold:#d4a842;--gold-2:#c49a38;--gold-soft:#fbf3dc;--gold-deep:#8a6a1e;--gold-on-dark:#e3c068;--jf-accent:var(--gold);--jf-accent-bright:var(--gold-2);--jf-accent-soft:var(--gold-soft);--jf-accent-deep:var(--gold-deep);--jf-font-display:var(--font-instrument-serif,"Instrument Serif", Georgia, serif);--jf-font-sans:var(--font-sans,Inter, ui-sans-serif, system-ui, sans-serif);--jf-font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--jf-maxw:1080px;--jf-measure:660px;--jf-shadow-sm:0 1px 2px #1e190f0f, 0 2px 8px #1e190f0d;--jf-shadow-lg:0 24px 60px -24px #1e190f47, 0 4px 14px #1e190f14;--jf-ease-out:cubic-bezier(.22,1,.36,1);--jf-dur:.2s;background:var(--paper);color:var(--fg-1);font-family:var(--jf-font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;font-size:17px;line-height:1.6}.jf *{box-sizing:border-box;margin:0;padding:0}.jf img,.jf video{max-width:100%;display:block}.jf a{color:inherit;text-decoration:none}.jf p,.jf li,.jf h1,.jf h2,.jf h3,.jf figcaption{text-wrap:pretty}.jf button{font-family:inherit}.jf :focus-visible{outline:2px solid var(--gold);outline-offset:3px}.jf .wrap{max-width:var(--jf-maxw);margin:0 auto;padding:0 32px}.jf .measure{max-width:var(--jf-measure)}.jf .eyebrow{font-family:var(--jf-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);align-items:center;gap:10px;font-size:12px;font-weight:500;display:inline-flex}.jf .eyebrow:before{content:"";background:var(--gold);width:20px;height:1px}.jf .eyebrow.on-dark{color:var(--gold-on-dark)}.jf .eyebrow.on-dark:before{background:var(--gold-on-dark)}.jf .mono{font-family:var(--jf-font-mono);letter-spacing:.06em;color:var(--fg-3);font-size:12px}.jf h1,.jf h2,.jf h3{font-family:var(--jf-font-display);letter-spacing:-.01em;font-weight:400;line-height:1.08}.jf h2.sec-title{max-width:18em;margin-top:16px;font-size:clamp(30px,3.6vw,46px)}.jf h3{font-size:clamp(24px,2.6vw,32px)}.jf .lead{color:var(--fg-2);max-width:var(--jf-measure);margin-top:18px;font-size:18.5px}.jf .lead b,.jf p b{color:var(--fg-1);font-weight:600}.jf .btn{cursor:pointer;white-space:nowrap;transition:background var(--jf-dur), border-color var(--jf-dur), color var(--jf-dur), transform var(--jf-dur);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:14px 24px;font-size:15px;font-weight:600;display:inline-flex}.jf .btn-primary{background:var(--gold);color:var(--ink);border-color:var(--gold);box-shadow:var(--jf-shadow-sm)}.jf .btn-primary:hover{background:var(--gold-2);border-color:var(--gold-2)}.jf .btn-primary:active{transform:translateY(1px)}.jf .btn-ghost{color:var(--fg-1);border-color:var(--line-strong);background:0 0}.jf .btn-ghost:hover{border-color:var(--fg-3)}.jf .btn-ghost.on-dark{color:var(--d-fg-1);border-color:var(--d-line-2)}.jf .btn-ghost.on-dark:hover{border-color:var(--d-fg-2)}.jf .cta-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.jf .cta-note{font-family:var(--jf-font-mono);letter-spacing:.04em;color:var(--fg-3);margin-top:14px;font-size:12px}.jf .cta-note.on-dark{color:var(--d-fg-3)}.jf .nav{z-index:80;color:var(--d-fg-1);transition:border-color var(--jf-dur);background:#0b0f14;border-bottom:1px solid #0000;position:sticky;top:0}.jf .nav.scrolled{-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--d-line);background:#0b0f14e0}.jf .nav-inner{justify-content:space-between;align-items:center;gap:20px;height:68px;display:flex}.jf .brand{font-family:var(--jf-font-display);letter-spacing:0;white-space:nowrap;font-size:24px}.jf .nav-right,.jf .nav-links{align-items:center;gap:22px;display:flex}.jf .nav-links a{opacity:.78;transition:opacity var(--jf-dur), border-color var(--jf-dur);border-bottom:1px solid #0000;padding-bottom:2px;font-size:14.5px}.jf .nav-links a.active{opacity:1;border-bottom-color:var(--gold-on-dark)}.jf.js .reveal{opacity:0;transition:opacity .45s var(--jf-ease-out), transform .45s var(--jf-ease-out);transform:translateY(8px)}.jf.js .reveal.in{opacity:1;transform:none}.jf .nav-links a:hover{opacity:1}.jf .nav .btn{padding:10px 18px;font-size:14px}.jf .lang{border:1px solid var(--d-line-2);font-family:var(--jf-font-mono);border-radius:999px;align-items:center;font-size:11.5px;display:inline-flex;overflow:hidden}.jf .lang button{cursor:pointer;color:inherit;opacity:.55;letter-spacing:.04em;transition:opacity var(--jf-dur), background var(--jf-dur);background:0 0;border:none;padding:6px 11px}.jf .lang button.active{opacity:1;background:var(--gold);color:var(--ink)}.jf .lang.on-paper{border-color:var(--line-strong)}.jf .section{padding:64px 0}.jf .section+.section{border-top:1px solid var(--line)}.jf .section-2{background:var(--paper-2)}.jf .hero{background:var(--navy);color:var(--d-fg-1)}.jf .hero-inner{grid-template-columns:1.05fr 1fr;align-items:center;gap:56px;padding:72px 0 76px;display:grid}.jf .hero-status{font-family:var(--jf-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-on-dark);align-items:center;gap:8px;font-size:12px;display:inline-flex}.jf .hero-status:before{content:"";background:var(--gold);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d4a8422e}.jf .hero h1{letter-spacing:-.012em;color:var(--d-fg-1);max-width:15em;margin-top:22px;font-size:clamp(32px,4.1vw,50px);line-height:1.08}.jf .hero h1 em{color:var(--gold-on-dark);font-style:italic}.jf .hero .sub{color:var(--d-fg-2);max-width:30em;margin-top:22px;font-size:clamp(17px,1.9vw,19.5px)}.jf .hero .cta-row{margin-top:34px}.jf .hero-media{min-width:0}.jf .byline{border-top:1px solid var(--d-line);align-items:center;gap:14px;margin-top:34px;padding-top:22px;display:flex}.jf .byline img{object-fit:cover;border:1px solid var(--d-line-2);background:#000;border-radius:50%;flex-shrink:0;width:56px;height:56px}.jf .byline .who{flex-direction:column;gap:2px;line-height:1.3;display:flex}.jf .byline .who b{font-family:var(--jf-font-display);color:var(--d-fg-1);letter-spacing:0;font-size:21px;font-weight:400}.jf .byline .who span{color:var(--d-fg-2);font-size:14px}.jf .plate.on-dark{background:var(--ink-2);border-color:var(--d-line)}.jf .plate.on-dark .vid{border-color:#f3eee429}.jf .plate.on-dark .media-cap{color:var(--d-fg-3)}.jf .hero-loop .vid img,.jf .hero-loop .vid video{object-fit:cover;width:100%;height:100%;display:block}@keyframes jf-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.jf .hero .hero-status{animation:jf-up .6s var(--jf-ease-out) 50ms both}.jf .hero h1{animation:jf-up .7s var(--jf-ease-out) .15s both}.jf .hero .sub{animation:jf-up .7s var(--jf-ease-out) .25s both}.jf .hero .cta-row,.jf .hero .cta-note,.jf .hero .byline{animation:jf-up .7s var(--jf-ease-out) .35s both}.jf .hero-media{animation:jf-up .9s var(--jf-ease-out) .2s both}.jf .stats{border-bottom:1px solid var(--line);background:var(--paper)}.jf .stats-inner{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.jf .stat{border-left:1px solid var(--line);padding:26px 28px 24px}.jf .stat:first-child{border-left:none;padding-left:0}.jf .stat .num{font-family:var(--jf-font-display);color:var(--fg-1);font-variant-numeric:tabular-nums;font-size:34px;line-height:1}.jf .stat .num small{color:var(--fg-3);margin-left:2px;font-size:.6em}.jf .stat .lbl{color:var(--fg-2);margin-top:8px;font-size:16.5px}.jf .stat .src{font-family:var(--jf-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin-top:8px;font-size:11.5px}.jf .stats-note{color:var(--fg-3);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:14px 0 20px;font-size:14px;display:flex}.jf .stats-note a{color:var(--gold-deep);border-bottom:1px solid #8a6a1e59}.jf .stats-note a:hover{border-bottom-color:var(--gold-deep)}.jf .plate{background:var(--paper-2);border:1px solid var(--line);border-radius:18px;padding:12px}.jf .plate.on-paper-2{background:var(--surface)}.jf .vid{aspect-ratio:16/9;border:1px solid var(--line-strong);background:#0e0c09;border-radius:10px;position:relative;overflow:hidden}.jf .vid video{background:#000;width:100%;height:100%}.jf .vid-btn{cursor:pointer;background:0 0;border:none;width:100%;height:100%;padding:0;display:block;position:relative}.jf .vid-btn img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--jf-ease-out)}.jf .vid-btn:hover img{transform:scale(1.015)}.jf .vid-btn .play{width:76px;height:76px;color:var(--d-fg-1);transition:transform var(--jf-dur), background var(--jf-dur);background:#0b0f14c7;border:1px solid #f3eee473;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.jf .vid-btn:hover .play{background:#0b0f14eb;transform:translate(-50%,-50%)scale(1.06)}.jf .vid-btn .dur{font-family:var(--jf-font-mono);color:var(--d-fg-1);letter-spacing:.04em;background:#0b0f14b8;border-radius:6px;padding:5px 9px;font-size:12px;position:absolute;bottom:12px;right:14px}.jf .media-cap{color:var(--fg-3);flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:12px 4px 2px;font-size:13.5px;line-height:1.45;display:flex}.jf .media-cap span:last-child:not(:first-child){font-family:var(--jf-font-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:11.5px}.jf .shot img{border:1px solid var(--line-strong);border-radius:10px;width:100%;height:auto}.jf .shots-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.jf .phones{justify-content:center;align-items:flex-start;gap:16px;display:flex}.jf .phone{border:1px solid var(--line-strong);background:#000;border-radius:26px;width:min(100%,210px);overflow:hidden}.jf .phone img{width:100%;height:auto}.jf .media-stack{gap:22px;margin-top:30px;display:grid}.jf .media-row{grid-template-columns:2fr 1fr 1fr;align-items:start;gap:14px;margin-top:26px;display:grid}.jf .media-row .stack{display:contents}.jf .media-single{max-width:640px;margin-top:26px}.jf .phones.small .phone{border-radius:20px;width:min(100%,150px)}.jf .seam-grid{grid-template-columns:1fr 1.25fr;align-items:center;gap:36px;display:grid}.jf .lead-grid{grid-template-columns:1fr 1.15fr;align-items:start;gap:40px;display:grid}.jf .disclosure{color:var(--fg-2);border-left:2px solid var(--gold);max-width:var(--jf-measure);margin-top:22px;padding-left:16px;font-size:16.5px}.jf .disclosure b{color:var(--fg-1);font-weight:600}.jf .task{border-top:1px solid var(--line);padding:40px 0 44px}.jf .task:first-of-type{margin-top:44px}.jf .task-meta{font-family:var(--jf-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);flex-wrap:wrap;align-items:baseline;gap:10px 26px;font-size:12px;display:flex}.jf .task-meta .ix{color:var(--gold-deep);font-weight:600}.jf .task-meta .gain{color:var(--fg-1);font-weight:600}.jf .task h3{max-width:20em;margin-top:16px}.jf .task-head{grid-template-columns:1fr auto;align-items:end;gap:20px 40px;display:grid}.jf .task-gain{text-align:right;padding-bottom:4px}.jf .task-gain .fig{font-family:var(--jf-font-display);color:var(--fg-1);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(40px,4.6vw,56px);line-height:1}.jf .task-gain .unit{color:var(--fg-2);margin-top:6px;font-size:14.5px}.jf .task-gain .vol{font-family:var(--jf-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin-top:8px;font-size:11.5px}.jf .ba{grid-template-columns:1fr 1fr;gap:16px;margin-top:26px;display:grid}.jf .ba>div{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px 22px 22px}.jf .ba .lbl{color:var(--fg-3);flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.jf .ba .lbl .tag{font-family:var(--jf-font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:12px}.jf .ba .lbl .desc{color:var(--fg-3);font-size:14px}.jf .ba .lbl .desc:before{content:"·";color:var(--fg-4);margin-right:8px}.jf .ba .lbl .mark{border-radius:50%;flex-shrink:0;justify-content:center;align-self:center;align-items:center;width:20px;height:20px;font-size:11px;display:inline-flex}.jf .ba .before .mark{background:var(--paper-3);color:var(--fg-3)}.jf .ba .now .mark{background:var(--gold-soft);color:var(--gold-deep)}.jf .ba .now .lbl .tag{color:var(--gold-deep)}.jf .ba p{color:var(--fg-2);margin-top:12px;font-size:16.5px;line-height:1.6}.jf .how{color:var(--fg-3);border-left:2px solid var(--gold);max-width:46em;margin-top:22px;padding-left:14px;font-size:15px}.jf .how b{color:var(--fg-2);font-weight:600}.jf .seam{border-top:1px solid var(--line);margin-top:20px;padding-top:52px}.jf .seam p{color:var(--fg-2);max-width:var(--jf-measure);margin-top:16px}.jf .seam .plate{margin-top:0}.jf .bound-list{border-top:1px solid var(--line-strong);grid-template-columns:1fr 1fr;gap:0 40px;margin-top:32px;list-style:none;display:grid}.jf .bound-list li{border-bottom:1px solid var(--line);grid-template-columns:44px 1fr;align-items:baseline;gap:16px;padding:18px 0;display:grid}.jf .bound-list .n{font-family:var(--jf-font-mono);color:var(--gold-deep);letter-spacing:.08em;font-size:12px}.jf .bound-list b{font-size:17.5px;font-weight:600}.jf .bound-list span.d{color:var(--fg-2);margin-top:4px;font-size:16.5px;display:block}.jf .bound-close{max-width:var(--jf-measure);color:var(--fg-2);margin-top:30px;font-size:17px}.jf .bound-close b{color:var(--fg-1);font-weight:600}.jf .steps{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px;display:grid}.jf .step{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px 24px 26px}.jf .step .when{font-family:var(--jf-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);font-size:12px}.jf .step h3{margin-top:14px;font-size:26px}.jf .step p{color:var(--fg-2);margin-top:10px;font-size:16.5px}.jf .fit{max-width:var(--jf-measure);color:var(--fg-2);margin-top:30px}.jf .fit b{color:var(--fg-1);font-weight:600}.jf .about-grid{grid-template-columns:1fr;gap:0;display:grid}.jf .about p{color:var(--fg-2);max-width:var(--jf-measure);margin-top:16px}.jf .about p b{color:var(--fg-1);font-weight:600}.jf .about .sig{font-family:var(--jf-font-display);color:var(--fg-1);margin-top:26px;font-size:26px;font-style:italic}.jf .about-photos{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px;display:grid}.jf .about-photos figure{margin:0}.jf .about-photos img{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--line-strong);filter:saturate(.92);border-radius:10px;width:100%}.jf .about-photos figcaption{font-family:var(--jf-font-mono);letter-spacing:.06em;color:var(--fg-3);margin-top:10px;font-size:12px}.jf .final{background:var(--ink);color:var(--d-fg-1);text-align:center;padding:104px 0 96px}.jf .final h2{max-width:16em;color:var(--d-fg-1);margin:18px auto 0;font-size:clamp(30px,4.2vw,50px)}.jf .final .sub{color:var(--d-fg-2);max-width:30em;margin:18px auto 0;font-size:18px}.jf .final .cta-row{justify-content:center;margin-top:36px}.jf .foot{background:var(--ink);color:var(--d-fg-2);border-top:1px solid var(--d-line);padding:40px 0 44px;font-size:14px}.jf .foot-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 28px;display:flex}.jf .foot-id{flex-direction:column;gap:4px;display:flex}.jf .foot-id .name{font-family:var(--jf-font-display);color:var(--d-fg-1);font-size:20px}.jf .foot-id .meta{font-family:var(--jf-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--d-fg-3);font-size:11.5px}.jf .foot-links{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.jf .foot-links a{transition:color var(--jf-dur)}.jf .foot-links a:hover{color:var(--d-fg-1)}.jf .foot-rec{border-top:1px solid var(--d-line);color:var(--d-fg-3);margin-top:26px;padding-top:18px;font-size:13px}.jf .foot-rec a{color:var(--d-fg-2);border-bottom:1px solid var(--d-line-2)}.jf .mobile-cta{display:none}@media (max-width:920px){.jf .hero-inner{grid-template-columns:1fr;gap:34px;padding:40px 0 52px}.jf .byline{margin-top:26px}.jf .stats-inner{grid-template-columns:1fr}.jf .stat{border-left:none;border-top:1px solid var(--line);padding:18px 0}.jf .stat:first-child{border-top:none}.jf .ba,.jf .steps,.jf .shots-2{grid-template-columns:1fr}.jf .about-photos{grid-template-columns:1fr 1fr}.jf .about-photos figure:last-child{grid-column:span 2}}@media (max-width:860px){.jf{padding-bottom:76px}.jf .wrap{padding:0 20px}.jf .section{padding:68px 0}.jf .task{padding:48px 0 52px}.jf .nav-links,.jf .nav .desktop-cta{display:none}.jf .mobile-cta{z-index:90;padding:12px 16px calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--d-line);background:#0b0f14f0;display:block;position:fixed;bottom:0;left:0;right:0}.jf .mobile-cta .btn{width:100%;padding:15px 22px;display:flex}.jf .mobile-cta{transition:transform .3s var(--jf-ease-out)}.jf .mobile-cta.hide{transform:translateY(110%)}.jf .phones{flex-wrap:wrap}.jf .media-row,.jf .seam-grid,.jf .lead-grid{grid-template-columns:1fr}.jf .media-row .stack{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;margin:0 -20px;padding-bottom:6px;padding-left:20px;padding-right:20px;display:flex;overflow-x:auto}.jf .media-row .stack::-webkit-scrollbar{display:none}.jf .media-row .stack>*{scroll-snap-align:start;flex:0 0 82%}.jf .task-head{grid-template-columns:1fr;align-items:start;gap:14px}.jf .ba>div{padding:16px 18px 18px}.jf .ba p{font-size:16px}.jf .bound-list{grid-template-columns:1fr}.jf .media-row .stack .phones{flex-wrap:nowrap}.jf .media-row .stack .phones.small .phone{width:calc(50% - 8px)}.jf .task-gain{text-align:left;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 12px;padding-bottom:0;display:grid}.jf .task-gain .fig{grid-row:span 2;font-size:40px}.jf .task-gain .unit,.jf .task-gain .vol{margin-top:0}}@media (max-width:480px){.jf .about-photos{scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;margin:30px -20px 0;padding:0 20px 6px;display:flex;overflow-x:auto}.jf .about-photos::-webkit-scrollbar{display:none}.jf .about-photos figure{scroll-snap-align:start;flex:0 0 72%}.jf .about-photos figure:last-child{grid-column:auto}.jf .cta-row .btn{width:100%}}@media (prefers-reduced-motion:reduce){.jf .hero .hero-status,.jf .hero h1,.jf .hero .sub,.jf .hero .cta-row,.jf .hero .cta-note,.jf .hero .byline,.jf .hero-media{animation:none}.jf .btn,.jf .vid-btn img,.jf .vid-btn .play{transition:none}.jf.js .reveal{opacity:1;transition:none;transform:none}}.jf .bm-btn-primary{color:var(--ink)}.jf .bm-btn-primary:hover:not(:disabled){background:var(--gold-2);transform:none}.bm-overlay{z-index:999;-webkit-backdrop-filter:blur(6px);animation:bm-fade-in .18s var(--jf-ease-out) both;background:#13110e99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.bm-panel{background:var(--paper);border:1px solid var(--line-strong);box-shadow:var(--jf-shadow-lg);width:100%;max-width:540px;max-height:90dvh;animation:bm-slide-up .22s var(--jf-ease-out) both;border-radius:20px;flex-direction:column;display:flex;overflow:hidden}@keyframes bm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes bm-slide-up{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:none}}.bm-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:22px 24px 18px;display:flex}.bm-title{font-family:var(--jf-font-display);color:var(--fg-1);letter-spacing:-.01em;font-size:1.25rem;font-weight:400}.bm-dur{color:var(--fg-3);margin-top:4px;font-size:.8rem}.bm-close{cursor:pointer;color:var(--fg-3);transition:color var(--jf-dur), background var(--jf-dur);background:0 0;border:none;border-radius:8px;flex-shrink:0;margin-top:2px;padding:4px}.bm-close:hover{color:var(--fg-1);background:var(--paper-2)}.bm-body{flex-direction:column;flex:1;gap:0;padding:20px 24px 24px;display:flex;overflow-y:auto}.bm-center{text-align:center;color:var(--fg-3);flex-direction:column;align-items:center;gap:16px;padding:40px 0;display:flex}.bm-spinner{border:2.5px solid var(--line-strong);border-top-color:var(--jf-accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite bm-spin}@keyframes bm-spin{to{transform:rotate(360deg)}}.bm-slots-layout{flex:1;grid-template-columns:auto 1fr;gap:16px;display:grid}.bm-day-list{flex-direction:column;gap:4px;max-height:340px;padding-right:4px;display:flex;overflow-y:auto}.bm-day-btn{border:1px solid var(--line);color:var(--fg-2);cursor:pointer;text-align:left;white-space:nowrap;transition:background var(--jf-dur), border-color var(--jf-dur), color var(--jf-dur);background:0 0;border-radius:10px;padding:8px 14px;font-size:.82rem}.bm-day-btn:hover{background:var(--paper-2)}.bm-day-btn.active{background:var(--jf-accent-soft);border-color:var(--jf-accent);color:var(--jf-accent-deep);font-weight:500}.bm-time-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));align-content:start;gap:8px;max-height:340px;display:grid;overflow-y:auto}.bm-slot{border:1px solid var(--line);color:var(--fg-1);cursor:pointer;transition:background var(--jf-dur), border-color var(--jf-dur), color var(--jf-dur);text-align:center;background:0 0;border-radius:10px;padding:10px 6px;font-size:.88rem}.bm-slot:hover{background:var(--paper-2);border-color:var(--line-strong)}.bm-slot.active{background:var(--jf-accent-soft);border-color:var(--jf-accent);color:var(--jf-accent-deep);font-weight:600}.bm-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:20px;display:flex}.bm-selected-label{color:var(--fg-2);flex:1;min-width:0;font-size:.82rem}.bm-btn-primary{background:var(--jf-accent);color:#fff;cursor:pointer;transition:background var(--jf-dur), transform var(--jf-dur);border:none;border-radius:10px;justify-content:center;align-items:center;padding:11px 24px;font-size:.88rem;font-weight:500;text-decoration:none;display:inline-flex}.bm-btn-primary:hover:not(:disabled){background:var(--jf-accent-bright);transform:translateY(-1px)}.bm-btn-primary:disabled{opacity:.6;cursor:not-allowed}.bm-btn-primary.bm-btn-full{width:100%}.bm-btn-ghost{border:1px solid var(--line-strong);color:var(--fg-2);cursor:pointer;transition:background var(--jf-dur);background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:10px 20px;font-size:.88rem;display:inline-flex}.bm-btn-ghost:hover{background:var(--paper-2)}.bm-form-body{gap:14px}.bm-back-btn{cursor:pointer;color:var(--fg-3);transition:color var(--jf-dur);background:0 0;border:none;align-items:center;gap:5px;margin-bottom:4px;padding:0;font-size:.82rem;display:inline-flex}.bm-back-btn:hover{color:var(--fg-1)}.bm-slot-pill{background:var(--jf-accent-soft);border:1px solid var(--jf-accent);color:var(--jf-accent-deep);border-radius:8px;margin-bottom:4px;padding:5px 12px;font-size:.82rem;font-weight:500;display:inline-block}.bm-field{flex-direction:column;gap:5px;display:flex}.bm-label{color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:500}.bm-input{background:var(--surface);border:1px solid var(--line-strong);color:var(--fg-1);width:100%;font-size:.92rem;font-family:var(--jf-font-sans);transition:border-color var(--jf-dur), box-shadow var(--jf-dur);border-radius:10px;outline:none;padding:11px 14px}.bm-input:focus{border-color:var(--jf-accent);box-shadow:0 0 0 3px #c97a221f}.bm-textarea{resize:vertical;min-height:80px}.bm-error{color:#c0392b;font-size:.82rem}.bm-done-body{text-align:center;align-items:center;gap:14px;padding-top:32px}.bm-check{margin-bottom:4px}.bm-done-title{font-family:var(--jf-font-display);color:var(--fg-1);font-size:1.6rem;font-weight:400}.bm-done-body-text{color:var(--fg-2);max-width:300px;font-size:.92rem}.bm-done-slot{color:var(--fg-3);background:var(--paper-2);border-radius:8px;padding:6px 14px;font-size:.85rem}.bm-done-actions{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}@media (max-width:540px){.bm-panel{border-radius:16px 16px 0 0;max-height:92dvh;margin-top:auto}.bm-overlay{align-items:flex-end;padding:0}.bm-slots-layout{grid-template-columns:1fr}.bm-day-list{flex-direction:row;max-height:none;padding-bottom:4px;padding-right:0;overflow-x:auto}.bm-time-grid{max-height:220px}.bm-footer{flex-direction:column;align-items:stretch}.bm-selected-label{text-align:center}}.jf .hero-see{color:var(--gold-on-dark);transition:border-color var(--jf-dur);border-bottom:1px solid #e3c06866;margin-top:16px;padding-bottom:2px;font-size:15.5px;display:inline-block}.jf .hero-see:hover{border-bottom-color:var(--gold-on-dark)}.jf .hero .hero-see{animation:jf-up .7s var(--jf-ease-out) .3s both}.jf .nav-links a.nav-sys{color:var(--gold-on-dark);opacity:1}.jf .fit-more{margin-top:14px;font-size:15.5px}.jf .fit-more a{color:var(--gold-deep);border-bottom:1px solid #8a6a1e59;padding-bottom:2px}.jf .fit-more a:hover{border-bottom-color:var(--gold-deep)}.jf .voice{background:var(--paper);border-top:1px solid var(--line);padding:96px 0}.jf .voice-inner{grid-template-columns:220px 1fr;align-items:start;gap:48px;display:grid}.jf .voice-who{position:sticky;top:96px}.jf .voice-who img{object-fit:cover;border:1px solid var(--line-strong);background:var(--paper-2);border-radius:50%;width:112px;height:112px}.jf .voice-who .name{font-family:var(--jf-font-display);margin-top:18px;font-size:26px;line-height:1.1}.jf .voice-who .role{color:var(--fg-2);text-wrap:balance;margin-top:6px;font-size:15px}.jf .voice-quote{max-width:46em;margin:0}.jf .voice-quote .q{font-family:var(--jf-font-display);letter-spacing:-.005em;text-wrap:balance;margin-top:18px;font-size:clamp(22px,2.3vw,30px);line-height:1.3}.jf .voice-quote .q:before{content:"“";color:var(--gold-deep);margin-right:2px}.jf .voice-quote p+p{color:var(--fg-2);text-wrap:pretty;margin-top:16px;font-size:17px}.jf .voice-quote p:last-of-type:after{content:"”";color:var(--gold-deep);margin-left:2px}.jf .voice-quote .note{font-family:var(--jf-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin-top:22px;font-size:11.5px}@media (max-width:960px){.jf .voice-inner{grid-template-columns:1fr;gap:28px}.jf .voice-who{grid-template-columns:72px 1fr;align-items:center;column-gap:16px;display:grid;position:static}.jf .voice-who img{grid-row:1/3;width:72px;height:72px}.jf .voice-who .name{margin-top:0;font-size:22px}.jf .voice-who .role{margin-top:2px}}@media (max-width:719px){.jf .voice{padding:72px 0}.jf .voice-quote .q{font-size:clamp(20px,5.6vw,24px)}.jf .nav-links a.nav-sys{display:none}}
