.profile-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:62px;align-items:center;padding:50px 0 48px}
.profile-intro h1{font-size:clamp(36px,4vw,56px);line-height:1.32;letter-spacing:-.055em;margin:8px 0 25px}
.profile-intro h1>span{background:linear-gradient(transparent 57%,var(--yellow) 57%,var(--yellow) 94%,transparent 94%)}
.profile-lead{font-size:18px;margin-bottom:13px}.profile-about{font-size:14px;color:#635e54;line-height:1.95;max-width:480px}
.profile-tags{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0 27px}.profile-tags>span{font-size:11px;border:1px solid;border-radius:5px;padding:4px 9px;background:var(--paper)}
.profile-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.profile-actions .button{font-size:13px}.profile-actions .text-link{font-size:13px}
.profile-footnote{display:block;font:10px/1.8 ui-monospace,monospace;letter-spacing:.04em;margin-top:22px;color:#635e54}
.badge-stage{height:510px;min-width:0;position:relative;isolation:isolate;border:2px solid;border-radius:22px;background-color:#f7f3e9;background-image:radial-gradient(#c1ced7 1px,transparent 1px);background-size:18px 18px;box-shadow:5px 5px 0;overflow:hidden}
.badge-stage:before{content:"";position:absolute;width:215px;height:215px;border-radius:50%;background:var(--blue);opacity:.4;left:15%;top:117px;z-index:-1}
.badge-stage:after{content:"✳";position:absolute;color:var(--yellow);text-shadow:1px 1px 0 var(--ink),-1px -1px 0 var(--ink);font-size:100px;right:9px;bottom:5px;z-index:-1;line-height:1}
.badge-stage-label{position:absolute;top:17px;left:17px;font-size:8px;letter-spacing:.025em;color:#635e54;max-width:38%}
.badge-anchor{position:absolute;top:13px;left:50%;transform:translateX(-50%);width:28px;height:28px;line-height:25px;text-align:center;border:2px solid;border-radius:50%;background:var(--yellow);font-size:20px;z-index:2}
.badge-rope{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.badge-rope path{fill:none;stroke-linecap:round}.rope-outline{stroke:var(--ink);stroke-width:12}.rope-color{stroke:var(--blue);stroke-width:8}.rope-stitch{stroke:var(--paper);stroke-width:1.5;stroke-dasharray:3 5}
.profile-badge{position:absolute;left:50%;top:80px;width:244px;border:2px solid;border-radius:13px;background:var(--paper);transform:translateX(-50%);transform-origin:50% 12px;box-shadow:5px 6px 0 var(--ink);user-select:none;-webkit-user-select:none;touch-action:none;will-change:transform;padding:24px 17px 15px}
.profile-badge.is-interactive{cursor:grab}.profile-badge.is-dragging{cursor:grabbing;box-shadow:7px 10px 0 var(--ink)}
.badge-hole{display:block;position:absolute;left:50%;top:7px;transform:translateX(-50%);width:36px;height:10px;border:2px solid;border-radius:5px;background:#c7c1b2}
.badge-top{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid;padding-bottom:10px;margin-bottom:14px;font:750 10px/1.4 ui-monospace,monospace;letter-spacing:.07em}
.badge-player{background:var(--yellow);border:1px solid;border-radius:4px;padding:2px 6px;font-size:12px}
.badge-person{display:grid;grid-template-columns:88px 1fr;gap:14px}.badge-portrait{border:1.5px solid;border-radius:7px;background:var(--blue);position:relative;height:96px;padding:8px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.badge-portrait:before{content:"";position:absolute;right:-8px;bottom:32px;width:27px;height:27px;background:var(--yellow);border:1px solid;transform:rotate(15deg)}
.badge-portrait>span{font-size:44px;font-weight:950;line-height:1.15;letter-spacing:-.1em}.badge-portrait>i{font:750 7px/1.45 ui-monospace,monospace;letter-spacing:.015em;z-index:1}
.badge-fields{display:flex;flex-direction:column;padding-top:3px}.badge-field-label{font:700 8px/1.4 ui-monospace,monospace;letter-spacing:.07em;color:#635e54;display:block}.badge-fields strong{font-size:24px;line-height:1.3;margin:2px 0 12px}.badge-fields b{font-size:11px;line-height:1.55;margin-top:3px}
.badge-motto{font-weight:850;font-size:15px;line-height:1.45;margin:10px 0 8px;letter-spacing:-.02em}.badge-skills{display:flex;gap:5px;flex-wrap:wrap}.badge-skills>span{font-size:8px;line-height:1.5;padding:3px 5px;border:1px solid;border-radius:3px;background:#fff4c0}
.badge-bottom{border-top:1px dashed #aaa393;margin-top:13px;padding-top:9px;display:flex;justify-content:space-between;align-items:center}.badge-barcode{display:block;width:130px;height:18px;margin-top:5px;background:repeating-linear-gradient(90deg,var(--ink) 0,var(--ink) 2px,transparent 2px,transparent 5px,var(--ink) 5px,var(--ink) 6px,transparent 6px,transparent 9px)}
.badge-stamp{border:1.5px solid;border-radius:50%;background:var(--yellow);width:37px;height:37px;display:grid;align-content:center;text-align:center;font-size:9px;line-height:1.3;font-weight:800;transform:rotate(-12deg)}
.badge-stage-bottom{position:absolute;left:15px;right:15px;bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.badge-stage-bottom>p{font-size:9px;color:#514c43;max-width:70%;background:#f7f3e9}.badge-stage-bottom button{font-size:10px;min-height:34px;background:var(--paper);border:1px solid;border-radius:5px;padding:5px 9px}
.quest-section{margin:12px 0 65px;scroll-margin-top:30px}.quest-section .section-head{margin-bottom:23px}.quest-section .section-head h2{font-size:29px}.quest-section .section-head .text-link{font-size:12px}
.quest-track-head{display:grid;grid-template-columns:1fr 1fr;gap:54px;margin-bottom:12px}.quest-track-head>span{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800}.quest-track-head>span:nth-child(2){padding-left:6px}
.quest-dot{display:inline-block;width:12px;height:12px;border:1.5px solid;border-radius:50%}.main-dot{background:var(--yellow)}.side-dot{background:var(--blue)}
.quest-timeline{position:relative}.quest-timeline:before{content:"";position:absolute;left:50%;top:12px;bottom:22px;border-left:2px dashed #bdb5a4;transform:translateX(-50%)}
.quest-period{position:relative;padding-top:40px;margin-bottom:20px}.quest-period-date{position:absolute;left:50%;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;white-space:nowrap;background:var(--cream);z-index:1;padding:0 10px}.quest-period-date .mono{font-size:11px}.quest-period-date>span:last-child{font-size:9px;color:#635e54}
.quest-period-items{display:grid;grid-template-columns:1fr 1fr;gap:54px}.quest-card{position:relative;border:1.5px solid;border-radius:11px;background:var(--paper);padding:17px 20px 14px;box-shadow:3px 3px 0;min-width:0}
.quest-card:after{content:"";position:absolute;top:22px;width:29px;border-top:1.5px solid;right:-30px}.quest-card.side:after{right:auto;left:-30px}.quest-card.main{border-top:6px solid var(--yellow)}.quest-card.side{border-top:6px solid var(--blue)}
.quest-card-meta{display:flex;gap:10px;justify-content:space-between;align-items:center;font-size:9px;color:#635e54;margin-bottom:9px}.quest-card-meta>span:last-child{border:1px solid #d6cdbb;border-radius:3px;padding:1px 5px}.quest-card h3{font-size:18px;margin-bottom:8px}.quest-card p{font-size:12px;line-height:1.9;color:#635e54}.quest-card a{display:inline-flex;align-items:center;min-height:34px;font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:4px;margin-top:5px}
.quest-caption{font-size:10px;color:#635e54;margin-top:19px}
@media(max-width:1000px){.profile-hero{gap:30px;grid-template-columns:1.1fr 1fr}.profile-intro h1{font-size:39px}.profile-lead{font-size:16px}.profile-badge{width:226px;padding-inline:14px}.badge-person{grid-template-columns:80px 1fr;gap:10px}.badge-portrait{height:96px}.badge-skills>span{font-size:7px}.badge-stage-label{font-size:7px}}
@media(max-width:700px){.profile-hero{grid-template-columns:1fr;gap:30px;padding-top:35px;padding-bottom:40px}.profile-intro h1{font-size:36px}.profile-about{font-size:13px}.profile-lead{font-size:16px}.profile-tags{margin:19px 0 23px}.badge-stage{width:min(100%,420px);justify-self:center;height:490px}.badge-stage-label{font-size:8px}.profile-badge{width:234px}.quest-section{margin-bottom:45px}.quest-section .section-head{align-items:flex-start;gap:14px;flex-wrap:wrap}.quest-section .section-head h2{font-size:25px}.quest-track-head{display:none}.quest-timeline:before{left:8px}.quest-period{padding:0 0 0 29px;margin-bottom:25px}.quest-period-date{position:relative;left:auto;top:auto;transform:none;align-items:flex-start;flex-direction:row;gap:9px;justify-content:flex-start;padding:0 0 12px}.quest-period-date:before{content:"";position:absolute;width:11px;height:11px;border:1.5px solid;border-radius:50%;background:var(--yellow);left:-26px;top:4px}.quest-period-items{grid-template-columns:1fr;gap:16px}.quest-card{padding:15px 16px 11px}.quest-card:after,.quest-card.side:after{left:-23px;right:auto;width:21px;top:17px}.quest-card h3{font-size:17px}.quest-card p{font-size:12px}.quest-card-meta{font-size:10px}.quest-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.profile-badge{will-change:auto}}
