._container_5azv5_1{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--page-x)}._section_5azv5_15{padding-block:var(--section-y)}._srOnly_5azv5_23{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}._footer_671i5_1{border-top:1px solid var(--c-line);padding-block:var(--sp-7);color:var(--c-ink-3);font-size:var(--fs-sm)}._inner_671i5_15{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)}._links_671i5_31{display:flex;gap:var(--sp-5)}._links_671i5_31 a:hover{color:var(--c-ink)}._copy_671i5_49{font-variant-numeric:tabular-nums}._base_yiab4_1{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);border-radius:var(--r-pill);font-weight:600;letter-spacing:-.015em;white-space:nowrap;transition:background-color var(--t-base),color var(--t-base),border-color var(--t-base),transform var(--t-fast),box-shadow var(--t-base)}._base_yiab4_1:active{transform:translateY(1px)}._base_yiab4_1 svg{transition:transform var(--t-base)}._base_yiab4_1:hover svg{transform:translate(2px)}._md_yiab4_61{height:44px;padding-inline:var(--sp-5);font-size:var(--fs-sm)}._lg_yiab4_73{height:54px;padding-inline:var(--sp-6);font-size:var(--fs-body)}._primary_yiab4_87{background:var(--c-ink);color:var(--c-bg)}._primary_yiab4_87:hover{background:#2a2a31;box-shadow:var(--shadow-md)}._inverse_yiab4_107{background:var(--c-bg);color:var(--c-ink)}._inverse_yiab4_107:hover{background:#eeeef1;box-shadow:0 8px 24px #00000047}._outline_yiab4_127{background:transparent;color:var(--c-ink);border:1px solid var(--c-line-strong)}._outline_yiab4_127:hover{border-color:var(--c-ink);background:var(--c-bg-subtle)}._outlineDark_yiab4_149{background:transparent;color:var(--c-on-dark);border:1px solid var(--c-on-dark-line)}._outlineDark_yiab4_149:hover{border-color:var(--c-on-dark);background:#ffffff0f}._ghost_yiab4_171{background:transparent;color:var(--c-ink-2);padding-inline:var(--sp-3)}._ghost_yiab4_171:hover{color:var(--c-ink)}._ghostDark_yiab4_191{background:transparent;color:var(--c-on-dark-2);padding-inline:var(--sp-3)}._ghostDark_yiab4_191:hover{color:var(--c-on-dark)}._header_yg6b7_1{position:fixed;inset:0 0 auto;z-index:100;transition:background-color var(--t-base),border-color var(--t-base),backdrop-filter var(--t-base);border-bottom:1px solid transparent}._inner_yg6b7_23{display:flex;align-items:center;gap:var(--sp-5);height:76px}._logo_yg6b7_37{font-size:1.375rem;font-weight:800;letter-spacing:-.04em;margin-right:auto}._nav_yg6b7_51{display:flex;align-items:center;gap:var(--sp-2)}._navLink_yg6b7_63{position:relative;padding:var(--sp-2) var(--sp-3);font-size:var(--fs-sm);font-weight:500;color:var(--c-ink-3);border-radius:var(--r-sm);transition:color var(--t-base)}._navLink_yg6b7_63:hover{color:var(--c-ink)}._navLink_yg6b7_63:after{content:"";position:absolute;left:var(--sp-3);right:var(--sp-3);bottom:2px;height:1.5px;background:currentColor;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform var(--t-base)}._navLink_yg6b7_63[data-active=true]{color:var(--c-ink)}._navLink_yg6b7_63[data-active=true]:after{transform:scaleX(1)}._cta_yg6b7_135{margin-left:var(--sp-3)}._onDark_yg6b7_145,._onDark_yg6b7_145 ._logo_yg6b7_37{color:var(--c-on-dark)}._onDark_yg6b7_145 ._navLink_yg6b7_63{color:var(--c-on-dark-2)}._onDark_yg6b7_145 ._navLink_yg6b7_63:hover,._onDark_yg6b7_145 ._navLink_yg6b7_63[data-active=true]{color:var(--c-on-dark)}._solid_yg6b7_181{background:#ffffffd1;backdrop-filter:saturate(180%) blur(14px);border-bottom-color:var(--c-line)}._menuButton_yg6b7_195{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:var(--r-sm);color:inherit}._panel_yg6b7_215{display:none}@media(max-width:820px){._inner_yg6b7_23{height:66px}._nav_yg6b7_51,._cta_yg6b7_135{display:none}._menuButton_yg6b7_195{display:inline-flex}._panel_yg6b7_215{display:block;position:fixed;inset:66px 0 auto;background:var(--c-bg);border-bottom:1px solid var(--c-line);padding:var(--sp-4) var(--page-x) var(--sp-6);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity var(--t-base),transform var(--t-base);box-shadow:var(--shadow-md)}._panelOpen_yg6b7_283{opacity:1;transform:none;pointer-events:auto}._panelLink_yg6b7_295{display:flex;width:100%;align-items:center;justify-content:space-between;padding:var(--sp-4) 0;font-size:var(--fs-body-lg);font-weight:600;color:var(--c-ink);border-bottom:1px solid var(--c-line)}._panelCta_yg6b7_319{margin-top:var(--sp-5);width:100%}}._reveal_qwgcb_1{opacity:0;transform:translateY(16px);transition:opacity var(--t-slow),transform var(--t-slow)}._shown_qwgcb_17{opacity:1;transform:none}._heading_1pckb_1{margin-bottom:var(--sp-7)}._index_1pckb_9{display:block;font-size:var(--fs-xs);font-weight:600;letter-spacing:.14em;color:var(--c-ink-4);margin-bottom:var(--sp-3);font-variant-numeric:tabular-nums}._title_1pckb_29{font-size:var(--fs-h2)}._description_1pckb_37{color:var(--c-ink-3);font-size:var(--fs-body-lg);line-height:var(--lh-snug);white-space:pre-line;max-width:46ch}._split_1pckb_55{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--sp-5)}._split_1pckb_55 ._description_1pckb_37{padding-bottom:6px}._dark_1pckb_79 ._index_1pckb_9{color:var(--c-on-dark-2)}._dark_1pckb_79 ._title_1pckb_29{color:var(--c-on-dark)}._dark_1pckb_79 ._description_1pckb_37{color:var(--c-on-dark-2)}@media(max-width:720px){._heading_1pckb_1{margin-bottom:var(--sp-6)}._split_1pckb_55{flex-direction:column;align-items:flex-start}}._about_bw4t3_1{background:var(--c-bg)}._grid_bw4t3_9{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-8);align-items:start}._lead_bw4t3_23{font-size:var(--fs-h3);font-weight:700;line-height:1.5;letter-spacing:-.025em;white-space:pre-line;margin-bottom:var(--sp-5)}._body_bw4t3_41 p{color:var(--c-ink-3);line-height:var(--lh-normal)}._body_bw4t3_41 p+p{margin-top:var(--sp-4)}._keywords_bw4t3_59{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-6)}._keyword_bw4t3_59{padding:6px 14px;border-radius:var(--r-pill);border:1px solid var(--c-line);background:var(--c-bg-subtle);color:var(--c-ink-2);font-size:var(--fs-sm);font-weight:500}._quote_bw4t3_93{margin-top:var(--sp-7);padding-left:var(--sp-5);border-left:2px solid var(--c-ink)}._quoteMark_bw4t3_105{display:block;font-size:1.75rem;line-height:1;color:var(--c-ink-4);margin-bottom:var(--sp-2)}._quoteText_bw4t3_121{font-size:var(--fs-body-lg);font-weight:600;line-height:1.6;white-space:pre-line}._portraitWrap_bw4t3_137{position:relative;width:150px}._portrait_bw4t3_137{position:relative;aspect-ratio:4 / 5;border-radius:var(--r-lg);overflow:hidden;background:var(--c-bg-sunken)}._portrait_bw4t3_137 img{width:100%;height:100%;object-fit:cover}._placeholder_bw4t3_175{display:grid;place-content:center;gap:var(--sp-2);justify-items:center;height:100%;background:linear-gradient(135deg,#ececed,#e2e2e6);color:var(--c-ink-4);font-size:var(--fs-sm);text-align:center;padding:var(--sp-5)}._placeholderIcon_bw4t3_203{width:46px;height:46px;border-radius:50%;border:1.5px dashed var(--c-ink-4);display:grid;place-items:center}._script_bw4t3_223{margin-top:var(--sp-3);font-family:var(--font-script);font-size:1.15rem;line-height:1.2;color:var(--c-ink-3);white-space:pre-line}@media(max-width:900px){._grid_bw4t3_9{grid-template-columns:1fr;gap:var(--sp-6)}._portraitWrap_bw4t3_137{order:-1}}._contact_15m4v_1{background:var(--c-bg);position:relative;overflow:hidden}._heading_15m4v_13{font-size:var(--fs-h1);margin-bottom:var(--sp-4)}._index_15m4v_23{display:block;font-size:var(--fs-xs);font-weight:600;letter-spacing:.14em;color:var(--c-ink-4);margin-bottom:var(--sp-3)}._description_15m4v_41{color:var(--c-ink-3);font-size:var(--fs-body-lg);white-space:pre-line;margin-bottom:var(--sp-7)}._cards_15m4v_55{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--sp-4);max-width:720px}._card_15m4v_55{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-5);border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-surface);transition:transform var(--t-base),border-color var(--t-base),box-shadow var(--t-base)}._card_15m4v_55:hover{transform:translateY(-3px);border-color:var(--c-line-strong);box-shadow:var(--shadow-md)}._icon_15m4v_109{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:var(--r-md);background:var(--c-bg-subtle);color:var(--c-ink)}._label_15m4v_131{display:block;font-size:var(--fs-sm);font-weight:700;margin-bottom:2px}._value_15m4v_145{display:block;font-size:var(--fs-sm);color:var(--c-ink-3);word-break:break-all}._closing_15m4v_159{margin-top:var(--sp-8);text-align:right}._script_15m4v_169{font-family:var(--font-script);font-size:clamp(1.75rem,1.2rem + 2vw,2.75rem);line-height:1.1;color:var(--c-ink)}._closingSub_15m4v_183{color:var(--c-ink-3);font-size:var(--fs-sm);margin-top:var(--sp-2)}@media(max-width:720px){._closing_15m4v_159{text-align:left}}._experience_ho3ws_1{background:var(--c-bg-subtle)}._list_ho3ws_9{position:relative;padding-left:var(--sp-5)}._list_ho3ws_9:before{content:"";position:absolute;left:4px;top:10px;bottom:10px;width:1px;background:var(--c-line-strong)}._item_ho3ws_41{position:relative;display:grid;grid-template-columns:190px minmax(0,1fr);gap:var(--sp-6);padding-block:var(--sp-5)}._item_ho3ws_41:before{content:"";position:absolute;left:calc(var(--sp-5) * -1);top:calc(var(--sp-5) + 9px);width:9px;height:9px;border-radius:50%;background:var(--c-bg-subtle);border:2px solid var(--c-line-strong);transform:translate(.5px);transition:background-color var(--t-base),border-color var(--t-base)}._item_ho3ws_41:hover:before{background:var(--c-ink);border-color:var(--c-ink)}._period_ho3ws_99{color:var(--c-ink-3);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;padding-top:2px}._title_ho3ws_110{font-size:var(--fs-body-lg);font-weight:700;letter-spacing:-.02em;margin-bottom:6px}._description_ho3ws_124{color:var(--c-ink-3);font-size:var(--fs-sm);line-height:var(--lh-normal);word-break:keep-all;overflow-wrap:anywhere}._award_ho3ws_134{display:flex;align-items:flex-start;gap:var(--sp-4);margin-top:var(--sp-4);padding:14px 18px;border:1px solid #e6d8b8;border-left:3px solid #b68a33;border-radius:var(--r-sm);background:#fffbf2}._awardLabel_ho3ws_146{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding-top:2px;color:#7a5615;font-size:var(--fs-xs);font-weight:700}._awardBody_ho3ws_157{min-width:0}._awardTitle_ho3ws_161{color:#634811;font-size:var(--fs-sm);font-weight:700;word-break:keep-all;overflow-wrap:anywhere}._awardMeta_ho3ws_169{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:5px;font-size:var(--fs-xs);color:#75664a}._tags_ho3ws_179{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--sp-3)}._tag_ho3ws_179{padding:3px 10px;border-radius:var(--r-pill);border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-ink-3);font-size:var(--fs-xs)}@media(max-width:720px){._award_ho3ws_134{flex-direction:column;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4)}._item_ho3ws_41{grid-template-columns:1fr;gap:var(--sp-2)}}._visual_1lfrx_1{width:100%;height:auto}._float_1lfrx_11{animation:_floatY_1lfrx_1 5.5s var(--ease) infinite}._floatSlow_1lfrx_19{animation:_floatY_1lfrx_1 7s var(--ease) infinite reverse}@keyframes _floatY_1lfrx_1{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}._hero_163qa_1{position:relative;background:var(--c-dark);color:var(--c-on-dark);padding-top:140px;padding-bottom:var(--sp-8);overflow:hidden}._hero_163qa_1:before{content:"";position:absolute;top:-220px;right:-120px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(120,130,255,.16),transparent 68%);pointer-events:none}._inner_163qa_45{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:var(--sp-8);min-height:min(78vh,640px)}._eyebrow_163qa_63{display:inline-flex;align-items:center;gap:var(--sp-2);height:30px;padding-inline:12px;margin-bottom:var(--sp-5);border:1px solid var(--c-on-dark-line);border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:500;color:var(--c-on-dark-2)}._dot_163qa_91{width:6px;height:6px;border-radius:50%;background:#4ade80}._headline_163qa_105{font-size:var(--fs-display);letter-spacing:-.035em;word-break:keep-all;margin-bottom:var(--sp-5)}._headline_163qa_105 span{display:block}._description_163qa_127{color:var(--c-on-dark-2);font-size:var(--fs-body-lg);line-height:1.75;white-space:pre-line;max-width:44ch;margin-bottom:var(--sp-6)}._actions_163qa_145{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-8)}._stats_163qa_163{display:flex;flex-wrap:wrap;gap:var(--sp-7);padding-top:var(--sp-6);border-top:1px solid var(--c-on-dark-line)}._statValue_163qa_179{display:block;font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem);font-weight:700;letter-spacing:-.03em;line-height:1.2}._statLabel_163qa_195{font-size:var(--fs-xs);color:var(--c-on-dark-2)}._visual_163qa_207{position:relative}._script_163qa_215{position:absolute;left:-8px;bottom:6px;font-family:var(--font-script);font-size:clamp(1.5rem,1.1rem + 1.5vw,2.1rem);line-height:1.15;color:var(--c-on-dark-2);white-space:pre-line;transform:rotate(-6deg);pointer-events:none}._scroll_163qa_241{position:absolute;right:var(--page-x);bottom:var(--sp-6);display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--c-on-dark-2);font-size:var(--fs-xs)}._scrollRing_163qa_265{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--c-on-dark-line);border-radius:50%;animation:_bob_163qa_1 2.4s var(--ease) infinite}@keyframes _bob_163qa_1{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@media(max-width:980px){._inner_163qa_45{grid-template-columns:1fr;gap:var(--sp-7);min-height:0}._visual_163qa_207{max-width:520px}._script_163qa_215{position:static;transform:none;margin-top:var(--sp-4)}._scroll_163qa_241{display:none}}@media(max-width:560px){._hero_163qa_1{padding-top:108px}._stats_163qa_163{gap:var(--sp-5) var(--sp-6)}}._thumb_1wzri_1{display:block;width:100%;height:100%;object-fit:cover}._card_6zzzq_1{display:flex;flex-direction:column;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--sp-4);height:100%;transition:transform var(--t-base),box-shadow var(--t-base),border-color var(--t-base)}._card_6zzzq_1:hover{transform:translateY(-4px);border-color:var(--c-line-strong);box-shadow:var(--shadow-lg)}._media_6zzzq_41{position:relative;aspect-ratio:16 / 10;border-radius:var(--r-md);overflow:hidden;background:var(--c-bg-sunken)}._badge_6zzzq_57{position:absolute;top:var(--sp-3);left:var(--sp-3);display:inline-flex;align-items:center;gap:6px;height:26px;padding-inline:10px;border-radius:var(--r-pill);background:#ffffffeb;color:var(--c-ink);font-size:var(--fs-xs);font-weight:600}._badgeDot_6zzzq_89{width:6px;height:6px;border-radius:50%;background:#16a34a}._awardBadge_6zzzq_103{position:absolute;top:var(--sp-3);right:var(--sp-3);display:inline-flex;align-items:center;gap:5px;height:26px;padding-inline:10px;border-radius:var(--r-pill);background:#101013d1;color:#fff;font-size:var(--fs-xs);font-weight:600;backdrop-filter:blur(6px)}._body_6zzzq_137{display:flex;flex-direction:column;flex:1;padding:var(--sp-5) var(--sp-2) var(--sp-2)}._title_6zzzq_151{font-size:var(--fs-h3);margin-bottom:var(--sp-2)}._tags_6zzzq_161{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--sp-3)}._tag_6zzzq_161{padding:4px 10px;border-radius:var(--r-pill);background:var(--c-bg-subtle);color:var(--c-ink-2);font-size:var(--fs-xs);font-weight:500}._footer_6zzzq_193{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);margin-top:auto}._subtitle_6zzzq_209{color:var(--c-ink-3);font-size:var(--fs-sm);line-height:var(--lh-snug)}._arrow_6zzzq_221{flex-shrink:0;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--c-line-strong);color:var(--c-ink-2);transition:background-color var(--t-base),color var(--t-base),border-color var(--t-base)}._card_6zzzq_1:hover ._arrow_6zzzq_221{background:var(--c-ink);border-color:var(--c-ink);color:var(--c-bg)}._projects_11irm_1{background:var(--c-bg)}._filters_11irm_9{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-6)}._filter_11irm_9{height:38px;padding-inline:var(--sp-4);border-radius:var(--r-pill);border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-ink-3);font-size:var(--fs-sm);font-weight:500;transition:background-color var(--t-base),color var(--t-base),border-color var(--t-base)}._filter_11irm_9:hover{border-color:var(--c-line-strong);color:var(--c-ink)}._filter_11irm_9[aria-pressed=true]{background:var(--c-ink);border-color:var(--c-ink);color:var(--c-bg)}._grid_11irm_75{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:var(--sp-5)}._empty_11irm_87{padding:var(--sp-8) 0;color:var(--c-ink-3);text-align:center}@media(max-width:720px){._filters_11irm_9{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--page-x) * -1);padding-inline:var(--page-x);scrollbar-width:none}._filters_11irm_9::-webkit-scrollbar{display:none}._filter_11irm_9{flex-shrink:0}}._skills_1xt2c_1{background:var(--c-bg-subtle)}._row_1xt2c_9{display:grid;grid-template-columns:180px minmax(0,1fr);gap:var(--sp-6);align-items:start;padding-block:var(--sp-6);border-top:1px solid var(--c-line)}._row_1xt2c_9:last-child{border-bottom:1px solid var(--c-line)}._category_1xt2c_35{font-size:var(--fs-body-lg);font-weight:700;letter-spacing:-.02em;padding-top:var(--sp-2)}._items_1xt2c_49{display:flex;flex-wrap:wrap;gap:var(--sp-4)}._item_1xt2c_49{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);width:88px;text-align:center}._tile_1xt2c_79{display:grid;place-items:center;width:52px;height:52px;border-radius:var(--r-md);background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--shadow-sm);font-size:var(--fs-sm);font-weight:700;letter-spacing:-.02em;color:var(--c-ink);transition:transform var(--t-base),border-color var(--t-base),color var(--t-base)}._tileText_1xt2c_117{color:var(--c-ink-3)}._item_1xt2c_49:hover ._tile_1xt2c_79{transform:translateY(-3px);border-color:var(--c-line-strong);box-shadow:var(--shadow-md)}._name_1xt2c_137{font-size:var(--fs-xs);color:var(--c-ink-3);line-height:1.35;word-break:keep-all}@media(max-width:720px){._row_1xt2c_9{grid-template-columns:1fr;gap:var(--sp-4);padding-block:var(--sp-5)}._category_1xt2c_35{padding-top:0}._items_1xt2c_49{gap:var(--sp-3)}._item_1xt2c_49{width:76px}._tile_1xt2c_79{width:46px;height:46px;font-size:var(--fs-xs)}}._page_o4zwn_1{min-height:70vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-top:120px;padding-bottom:var(--sp-9)}._code_o4zwn_21{font-size:clamp(3.5rem,2rem + 6vw,6rem);font-weight:800;letter-spacing:-.05em;line-height:1;color:var(--c-bg-sunken);margin-bottom:var(--sp-4)}._title_o4zwn_39{font-size:var(--fs-h2);margin-bottom:var(--sp-3)}._description_o4zwn_49{color:var(--c-ink-3);margin-bottom:var(--sp-6)}._frame_oxvt7_1{position:relative;display:block;width:100%;aspect-ratio:16 / 9;border-radius:var(--r-lg);overflow:hidden;background:var(--c-dark);border:1px solid var(--c-line);box-shadow:var(--shadow-lg)}._poster_oxvt7_25{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow),opacity var(--t-base)}._frame_oxvt7_1:hover ._poster_oxvt7_25{transform:scale(1.02);opacity:.86}._iframe_oxvt7_53{width:100%;height:100%;border:0}._play_oxvt7_65{position:absolute;inset:0;margin:auto;display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#fffffff2;color:var(--c-ink);padding-left:4px;box-shadow:0 8px 28px #00000059;transition:transform var(--t-base)}._frame_oxvt7_1:hover ._play_oxvt7_65{transform:scale(1.06)}._label_oxvt7_105{position:absolute;left:var(--sp-4);bottom:var(--sp-4);padding:6px 14px;border-radius:var(--r-pill);background:#0000008c;color:#fff;font-size:var(--fs-xs);font-weight:600;backdrop-filter:blur(6px)}._page_1nq46_1{padding-top:116px;padding-bottom:var(--sp-9)}._back_1nq46_11{display:inline-flex;align-items:center;gap:6px;color:var(--c-ink-3);font-size:var(--fs-sm);font-weight:500;margin-bottom:var(--sp-6);transition:color var(--t-base)}._back_1nq46_11:hover{color:var(--c-ink)}._top_1nq46_43{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--sp-8);align-items:start;padding-bottom:var(--sp-8)}._title_1nq46_59{font-size:var(--fs-h1);margin-bottom:var(--sp-3)}._tagline_1nq46_69{color:var(--c-ink-2);font-size:var(--fs-body-lg);font-weight:600;margin-bottom:var(--sp-5)}._award_1nq46_83{display:inline-flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-5);padding:8px 16px;border-radius:var(--r-pill);background:var(--c-dark);color:var(--c-on-dark);font-size:var(--fs-sm);font-weight:600;line-height:1.35;transition:background-color var(--t-base)}a._award_1nq46_83:hover{background:#2a2a31}._description_1nq46_121{color:var(--c-ink-3);line-height:var(--lh-normal);margin-bottom:var(--sp-5)}._description_1nq46_121>p{margin:0;word-break:keep-all;overflow-wrap:anywhere}._description_1nq46_121>p+p{margin-top:1em}._tags_1nq46_153{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--sp-6)}._tag_1nq46_69{padding:5px 12px;border-radius:var(--r-pill);background:var(--c-bg-subtle);border:1px solid var(--c-line);color:var(--c-ink-2);font-size:var(--fs-xs);font-weight:500}._actions_1nq46_187{display:flex;flex-wrap:wrap;gap:var(--sp-3)}._note_1nq46_199{display:flex;gap:var(--sp-2);margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--c-bg-subtle);border:1px solid var(--c-line);color:var(--c-ink-3);font-size:var(--fs-xs);line-height:var(--lh-snug)}._gallery_1nq46_227{position:sticky;top:100px}._frame_1nq46_237{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--c-line);background:var(--c-surface);box-shadow:var(--shadow-lg)}._frameBar_1nq46_253{display:flex;align-items:center;gap:6px;padding:10px var(--sp-4);background:var(--c-bg-subtle);border-bottom:1px solid var(--c-line)}._frameDot_1nq46_271{width:9px;height:9px;border-radius:50%;background:var(--c-line-strong)}._frameImage_1nq46_293{display:block;width:100%;height:auto;aspect-ratio:var(--frame-ratio, 16 / 9);object-fit:contain;background:#0b0b0d}._caption_1nq46_311{margin-top:var(--sp-3);color:var(--c-ink-3);font-size:var(--fs-xs);text-align:center}._thumbs_1nq46_325{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--sp-2);margin-top:var(--sp-3)}._thumb_1nq46_325{border-radius:var(--r-sm);overflow:hidden;border:1.5px solid transparent;background:#0b0b0d;transition:border-color var(--t-base),opacity var(--t-base);opacity:.62}._thumb_1nq46_325 img{width:100%;height:auto;aspect-ratio:var(--frame-ratio, 16 / 10);object-fit:contain}._thumb_1nq46_325:hover{opacity:1}._thumbActive_1nq46_383{border-color:var(--c-ink);opacity:1}._section_1nq46_395{padding-block:var(--sp-7);border-top:1px solid var(--c-line)}._sectionTitle_1nq46_405{font-size:var(--fs-h3);margin-bottom:var(--sp-5)}._demo_1nq46_415{max-width:880px}._meta_1nq46_423{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--sp-5)}._metaLabel_1nq46_435{font-size:var(--fs-xs);color:var(--c-ink-4);font-weight:600;letter-spacing:.08em;margin-bottom:6px}._metaValue_1nq46_451{font-size:var(--fs-sm);color:var(--c-ink);line-height:var(--lh-snug)}._features_1nq46_463{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--sp-4)}._feature_1nq46_463{padding:var(--sp-5);border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-surface)}._featureTitle_1nq46_489{font-size:var(--fs-body);font-weight:700;margin-bottom:6px;word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance}._featureText_1nq46_507{color:var(--c-ink-3);font-size:var(--fs-sm);line-height:var(--lh-normal);word-break:keep-all;overflow-wrap:anywhere;text-wrap:pretty}._featureText_1nq46_507>p{margin:0}._featureText_1nq46_507>p+p{margin-top:var(--sp-2)}._problem_1nq46_543{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-bg-subtle)}._problem_1nq46_543+._problem_1nq46_543{margin-top:var(--sp-4)}._problemIndex_1nq46_571{font-size:1.5rem;font-weight:800;color:var(--c-ink-4);font-variant-numeric:tabular-nums;letter-spacing:-.03em}._problemTitle_1nq46_587{font-size:var(--fs-body-lg);font-weight:700;margin-bottom:var(--sp-4)}._step_1nq46_599+._step_1nq46_599{margin-top:var(--sp-4)}._stepLabel_1nq46_607{display:inline-block;padding:3px 10px;margin-bottom:6px;border-radius:var(--r-pill);background:var(--c-surface);border:1px solid var(--c-line);font-size:var(--fs-xs);font-weight:600;color:var(--c-ink-2)}._stepLabel_1nq46_607+p{padding-inline:11px}._stepText_1nq46_641{color:var(--c-ink-2);font-size:var(--fs-sm);line-height:var(--lh-normal)}._stack_1nq46_655{display:grid;gap:var(--sp-3)}._stackItem_1nq46_665{display:grid;grid-template-columns:200px minmax(0,1fr);gap:var(--sp-4);padding-block:var(--sp-3);border-bottom:1px dashed var(--c-line)}._stackName_1nq46_681{font-weight:700;font-size:var(--fs-sm)}._stackReason_1nq46_691{color:var(--c-ink-3);font-size:var(--fs-sm);line-height:var(--lh-snug)}._pager_1nq46_705{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);margin-top:var(--sp-7)}._pagerItem_1nq46_719{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border:1px solid var(--c-line);border-radius:var(--r-lg);color:var(--c-ink);transition:border-color var(--t-base),box-shadow var(--t-base),transform var(--t-base)}._pagerItem_1nq46_719:hover{border-color:var(--c-line-strong);box-shadow:var(--shadow-md)}._pagerItem_1nq46_719:hover svg{transform:translate(-3px)}._pagerNext_1nq46_767{justify-content:flex-end;text-align:right}._pagerNext_1nq46_767:hover svg{transform:translate(3px)}._pagerItem_1nq46_719 svg{flex-shrink:0;color:var(--c-ink-3);transition:transform var(--t-base)}._pagerLabel_1nq46_797{display:block;font-size:var(--fs-xs);color:var(--c-ink-4);margin-bottom:4px}._pagerTitle_1nq46_811{display:block;font-size:var(--fs-h3)}@media(max-width:980px){._top_1nq46_43{grid-template-columns:1fr;gap:var(--sp-6)}._gallery_1nq46_227{position:static;order:-1}}@media(max-width:720px){._page_1nq46_1{padding-top:96px}._problem_1nq46_543{grid-template-columns:1fr;gap:var(--sp-3);padding:var(--sp-5)}._stackItem_1nq46_665{grid-template-columns:1fr;gap:4px}._thumbs_1nq46_325{grid-template-columns:repeat(3,1fr)}._pager_1nq46_705{grid-template-columns:1fr}._pagerItem_1nq46_719{padding:var(--sp-4) var(--sp-5)}._pagerTitle_1nq46_811{font-size:var(--fs-body-lg)}}:root{--c-bg: #ffffff;--c-bg-subtle: #f4f4f5;--c-bg-sunken: #ececee;--c-surface: #ffffff;--c-ink: #101013;--c-ink-2: #3f3f46;--c-ink-3: #71717a;--c-ink-4: #a1a1aa;--c-line: #e5e5e8;--c-line-strong: #d4d4d8;--c-dark: #131316;--c-dark-2: #1c1c21;--c-on-dark: #fafafa;--c-on-dark-2: #a1a1aa;--c-on-dark-line: #2e2e35;--c-accent: #4338ca;--c-accent-soft: #eef0ff;--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--font-script: "Caveat", "Segoe Script", "Brush Script MT", cursive;--fs-display: clamp(2rem, 1.3rem + 2.8vw, 3.25rem);--fs-h1: clamp(2rem, 1.35rem + 2.6vw, 3.25rem);--fs-h2: clamp(1.75rem, 1.3rem + 1.8vw, 2.5rem);--fs-h3: clamp(1.15rem, 1.02rem + .5vw, 1.375rem);--fs-body-lg: clamp(1rem, .96rem + .2vw, 1.125rem);--fs-body: 1rem;--fs-sm: .875rem;--fs-xs: .8125rem;--lh-tight: 1.24;--lh-snug: 1.4;--lh-normal: 1.7;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--sp-9: 96px;--sp-10: 128px;--section-y: clamp(72px, 9vw, 140px);--page-x: clamp(20px, 5vw, 64px);--maxw: 1200px;--r-sm: 10px;--r-md: 16px;--r-lg: 24px;--r-xl: 32px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(16, 16, 19, .04), 0 1px 3px rgba(16, 16, 19, .06);--shadow-md: 0 4px 12px rgba(16, 16, 19, .06), 0 12px 28px rgba(16, 16, 19, .05);--shadow-lg: 0 12px 32px rgba(16, 16, 19, .08), 0 32px 64px rgba(16, 16, 19, .06);--ease: cubic-bezier(.22, .61, .36, 1);--t-fast: .14s var(--ease);--t-base: .24s var(--ease);--t-slow: .52s var(--ease)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100dvh;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-normal);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video{display:block;max-width:100%}h1,h2,h3,h4{line-height:var(--lh-tight);letter-spacing:-.028em;font-weight:700;text-wrap:balance}p{text-wrap:pretty}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}ul,ol{list-style:none;padding:0}:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px;border-radius:4px}::selection{background:var(--c-ink);color:var(--c-bg)}[id]{scroll-margin-top:96px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
