@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--ink:#17203b;--blue:#294dff;--yellow:#ffe34d;--coral:#ff9278;--paper:#f8faff}
*{box-sizing:border-box}
body{margin:0;min-width:0;color:var(--ink);font:16px/1.55 'DM Sans',sans-serif;background-color:var(--paper);background-image:linear-gradient(#c6d1eb55 1px,transparent 1px),linear-gradient(90deg,#c6d1eb55 1px,transparent 1px);background-size:26px 26px;overflow-wrap:break-word}
img{max-width:100%;height:auto}
header{max-width:1260px;margin:auto;padding:22px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.brand{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.brand .fysk-logo{display:block;width:68px;height:auto;flex:none}
.brand span{font:700 11px/1.5 'DM Sans',sans-serif;letter-spacing:1.2px}
.edition{font-size:12px;font-weight:700;letter-spacing:2px;text-align:right}
main{max-width:1200px;padding:20px 32px 60px;margin:auto;min-width:0}
h1,h2,h3{font-family:'Space Grotesk',sans-serif;line-height:1.05;letter-spacing:-1.6px;margin:0;overflow-wrap:break-word}
h1{font-size:clamp(42px,6.4vw,78px)}h2{font-size:clamp(34px,4vw,54px)}h3{font-size:25px;letter-spacing:-.6px}
p{margin:15px 0}
.intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;align-items:center;min-height:540px}
.eyebrow{display:inline-block;max-width:100%;background:var(--yellow);border:2px solid var(--ink);padding:6px 12px;transform:rotate(-2deg);font-size:13px;font-weight:700;letter-spacing:.6px;margin-bottom:24px;box-shadow:3px 3px 0 var(--ink)}
.quiz-edition{font:700 clamp(20px,2.4vw,28px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-.5px;margin:18px 0 0}
.intro .lead{font-size:21px;max-width:550px;margin:25px 0 14px}.mascot{width:100%;max-width:480px;filter:drop-shadow(6px 9px 0 #19204016)}
.micro{font-size:14px;color:#4c5571}
.primary,.secondary{font:700 17px/1.3 'DM Sans',sans-serif;border:2px solid var(--ink);padding:15px 25px;min-height:48px;max-width:100%;border-radius:10px;cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s;text-align:center;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;touch-action:manipulation}
.primary{color:white;background:var(--blue)}.secondary{background:white;color:var(--ink)}
@media(hover:hover){button:hover:not(:disabled),a.primary:hover,a.secondary:hover{transform:translate(-1px,-2px);box-shadow:5px 6px 0 var(--ink)}}
button:active:not(:disabled),a.primary:active,a.secondary:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
button:focus-visible,a:focus-visible{outline:4px solid #ee622f;outline-offset:5px}button:disabled{opacity:.45;cursor:not-allowed}.intro .primary{margin:12px 0}
.round-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin:5px 0 22px;gap:15px}
.round-count{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.progress{display:flex;gap:8px}.step{height:10px;width:42px;background:white;border:2px solid var(--ink);border-radius:4px}.step.done{background:var(--blue)}.step.current{background:var(--yellow)}
.question-intro{margin-bottom:24px}.question-intro p{color:#505b75;margin:12px 0}
.cards,.reveals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.choice{appearance:none;position:relative;min-width:0;text-align:left;color:var(--ink);background:white;border:2px solid var(--ink);border-radius:16px;box-shadow:5px 5px 0 var(--ink);padding:0;cursor:pointer;overflow:hidden;transition:transform .15s,box-shadow .15s;font:inherit;touch-action:manipulation}
.card-top{background:#e9edff;border-bottom:2px solid var(--ink);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:8px}.choice:nth-child(2) .card-top{background:#fff3a4}.choice:nth-child(3) .card-top{background:#ffdacd}.letter{font:700 30px 'Space Grotesk',sans-serif}.stamp{font-size:12px;letter-spacing:1px;font-weight:700;transform:rotate(3deg);border:1.5px solid var(--ink);padding:4px 6px}
.card-body{padding:23px;font-size:18px;line-height:1.55;min-height:262px}.choice.selected{border-color:var(--blue);box-shadow:5px 5px 0 var(--blue)}.choice.selected .letter:after{content:' ✓';font-size:20px}
.lockbar{position:sticky;bottom:max(14px,env(safe-area-inset-bottom));background:var(--ink);color:white;border-radius:14px;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:30px;box-shadow:0 8px 30px #15213b25;z-index:2}.lockbar>div{min-width:0}.lockbar .primary{background:var(--yellow);color:var(--ink);box-shadow:3px 3px 0 white;border-color:white;white-space:nowrap;flex-shrink:0}.lockbar strong{font-size:17px}
.reveal-banner{display:flex;align-items:center;gap:24px;padding:24px;border:2px solid var(--ink);border-radius:16px;background:var(--yellow);box-shadow:5px 5px 0 var(--ink);margin:24px 0}.reveal-banner>div{min-width:0}.reveal-banner img{width:100px;flex-shrink:0}.reveal-banner h2{font-size:34px}.reveal-banner p{margin-bottom:0}
.reveal-card{min-width:0;border:2px solid var(--ink);background:white;border-radius:14px;padding:24px;display:flex;flex-direction:column;align-items:flex-start}.tag{font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:13px;color:var(--blue)}.reveal-card.fake{background:#ffeadf}.reveal-card p{font-size:16px}.reveal-card>.career{margin-top:auto;padding-top:4px}
.company-logo{display:flex;align-items:center;justify-content:center;width:100%;height:80px;flex:none;background:white;border:1px solid #dce1ee;border-radius:8px;padding:12px;overflow:hidden}.company-logo.on-dark{background:#202020;border-color:#202020}.company-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.company-logo.icon img{width:56px;height:56px}.company-logo.stacked img{height:60px;width:auto}.reveal-card>.company-logo{margin:0 0 18px}
.career{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;min-height:44px;display:inline-flex;align-items:center}
.nextline{display:flex;justify-content:space-between;align-items:center;margin:28px 0;gap:20px}.nextline .primary{flex-shrink:0}
.scorecard{text-align:center;max-width:770px;margin:10px auto 35px;background:var(--yellow);border:3px solid var(--ink);border-radius:22px;padding:35px;box-shadow:8px 8px 0 var(--ink)}.scorecard>img{width:155px}.score{font:700 82px/1 'Space Grotesk',sans-serif;margin:18px 0}.scorecard h1{font-size:40px}
.result-title{margin:55px 0 20px}.jobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.job{min-width:0;display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:18px;background:white;border:2px solid var(--ink);border-radius:12px;padding:20px}.job .company-logo{height:76px;padding:10px}.job .company-logo.icon img{width:48px;height:48px}.job .company-logo.stacked img{height:54px}.job-description{min-width:0}.job h3{font-size:21px}.job small{display:block;color:#677086;font-size:13px;margin-top:5px}.job .career{margin-top:6px;font-size:15px}
.intro-cta{border:2px solid var(--ink);border-radius:14px;background:#e9edff;padding:30px 24px;margin:32px auto 0;max-width:780px;text-align:center}.intro-cta p{max-width:640px;margin:16px auto 22px}.intro-cta h3{font-size:28px}.match-button{margin:0 auto;max-width:100%;white-space:normal}.result-actions{display:flex;gap:16px;justify-content:center;margin:24px 0 0}.explore-button{min-width:220px}
footer{text-align:center;padding:18px 24px 35px;font-size:13px;color:#68728b}.fine{font-size:13px;color:#68728b;margin-top:28px}.enter{animation:enter .25s ease-out}h1[tabindex='-1']:focus,h2[tabindex='-1']:focus{outline:none}
@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:20;contain:strict}.confetti i{position:absolute;top:-18px;left:var(--left);display:block;width:8px;height:13px;background:var(--color);border-radius:1px;opacity:0;animation:confetti-fall 2700ms var(--delay) cubic-bezier(.2,.55,.75,1) both}
@keyframes confetti-fall{0%{opacity:0;transform:translate3d(0,-20px,0) rotate(0)}8%{opacity:1}82%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift),105vh,0) rotate(var(--spin))}}
@media(max-width:960px){.cards,.reveals{grid-template-columns:1fr}.card-body{min-height:0}.reveal-card>.company-logo{max-width:240px}.job{grid-template-columns:100px minmax(0,1fr);gap:14px;padding:18px}.job .company-logo{height:70px;padding:8px}}
@media(max-width:760px){header{padding:16px 20px}.edition{display:none}.brand .fysk-logo{width:60px}.brand span{font-size:10px}main{padding:12px 20px 40px}.intro{grid-template-columns:1fr;min-height:0;gap:5px}.intro-art{grid-row:1;text-align:center}.mascot{width:180px}.intro h1{font-size:46px}.intro .eyebrow{margin-bottom:18px}.intro .lead{font-size:19px}.card-body{font-size:17px;padding:18px}.card-top{padding:10px 18px}.letter{font-size:25px}.lockbar{padding:14px;bottom:max(10px,env(safe-area-inset-bottom));gap:12px}.lockbar .primary{padding:13px 17px;font-size:15px}.reveal-banner{gap:14px;padding:20px}.reveal-banner img{width:65px}.reveal-banner h2{font-size:28px}.scorecard{padding:25px 20px}.scorecard h1{font-size:34px}.nextline{align-items:flex-start}.step{width:28px}.result-actions{flex-wrap:wrap}.intro-cta{padding:26px 20px}}
@media(max-width:640px){.jobs{grid-template-columns:1fr}.job{grid-template-columns:112px minmax(0,1fr);padding:18px}.intro-cta h3{font-size:26px}}
@media(max-width:400px){header{padding:14px 16px}.brand .fysk-logo{width:54px}main{padding:12px 16px 36px}.intro h1{font-size:42px}.eyebrow{font-size:12px;letter-spacing:.3px;padding:6px 9px}.round-top{gap:10px;align-items:start}.round-count{font-size:12px;letter-spacing:.6px}.progress{gap:5px;padding-top:4px}.step{width:19px}.lockbar strong{font-size:14px}.lockbar .primary{font-size:14px;padding:12px 14px}.reveal-banner{padding:16px;gap:10px}.reveal-banner img{width:52px}.reveal-banner h2{font-size:24px;letter-spacing:-.7px}.reveal-card{padding:20px}.nextline{flex-direction:column}.nextline .primary{align-self:flex-end}.job{grid-template-columns:88px minmax(0,1fr);gap:12px;padding:15px}.job .company-logo{height:66px;padding:7px}.job h3{font-size:20px}.job .career{font-size:14px}.scorecard{padding:24px 16px;box-shadow:5px 5px 0 var(--ink)}.scorecard h1{font-size:30px}.scorecard>img{width:132px}.intro-cta{padding:24px 16px}.match-button{font-size:16px;padding:14px 16px}.explore-button{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.confetti{display:none!important}}

/* Launch polish: readable logos and a faster mobile start. */
.company-logo img{width:190px;height:44px;max-width:100%;object-fit:contain}
.company-logo.wide-wordmark img{width:260px}
.company-logo.horizontal-lockup img{width:220px}
.reveal-banner .answer-summary{font-size:14px;font-weight:700;letter-spacing:.2px;margin:12px 0 0}
.reveal-banner .answer-summary+p{margin-top:8px}
.job{grid-template-columns:minmax(0,1fr);gap:14px}
.job .company-logo{height:72px;padding:12px}
.job .company-logo img{height:44px}
.job .company-logo.icon img{width:48px;height:48px}
@media(max-width:960px){.reveal-card>.company-logo{max-width:300px}}
@media(max-width:760px){
  .intro{gap:12px}
  .intro-art{grid-row:auto;text-align:center}
  .intro-art .mascot{width:128px}
  .intro .eyebrow{font-size:11px;letter-spacing:.3px;margin-bottom:16px}
  .intro .lead{font-size:18px;margin:18px 0 10px}
  .intro .quiz-edition{margin-top:12px}
  .intro .primary{margin-top:8px}
}
@media(max-width:400px){.job{gap:12px}.job .company-logo{height:68px;padding:10px}}
