@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}}:root{color-scheme:light;--container-max:1160px;--content-max:680px;--nav-width:392px;--gap-1:8px;--gap-2:16px;--gap-3:24px;--gap-4:32px;--gap-6:48px;--gap-8:64px;--fg-strong:#111;--fg-body:#344054;--fg-muted:#667085;color:#111827;background:#fff;font-family:Inter,Pretendard,Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y mandatory}body{background:#fff;min-height:100dvh;margin:0}img{max-width:100%;display:block}.page{width:100%;margin:0;padding:0}.hero{scroll-snap-align:start;scroll-snap-stop:always;justify-content:center;align-items:center;min-height:100vh;padding:0 4vw;display:flex}.hero-inner{justify-content:space-between;align-items:center;gap:3rem;width:100%;max-width:1320px;min-height:100vh;display:flex}.hero-text{width:min(760px,100%)}.hero-text.is-problem-solving{width:min(620px,100%)}.hero-eyebrow{color:var(--fg-muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:600}.hero-title{margin:var(--gap-2) 0 0;color:var(--fg-strong);letter-spacing:-.03em;white-space:pre-line;word-break:keep-all;max-width:none;min-height:2.16em;font-size:clamp(48px,5.2vw,56px);font-weight:800;line-height:1.08}.hero-description{margin:var(--gap-3) 0 0;color:var(--fg-body);max-width:64ch;font-size:16px;line-height:1.6}.hero-text.is-problem-solving .hero-title{min-height:auto;font-size:clamp(34px,3.7vw,42px);line-height:1.12}.hero-text.is-problem-solving .hero-description{max-width:52ch;margin-top:1rem;font-size:15px}.hero-nav{justify-content:center;width:min(620px,100%);display:flex}.accordion-row{flex-wrap:nowrap;justify-content:center;align-items:center;gap:.9rem;padding:.5rem;display:flex;overflow-x:auto}.section-pill-nav{width:100%;max-width:var(--nav-width);gap:var(--gap-1);display:grid}.section-pill-item{color:#475467;width:100%;min-height:52px;padding:0 var(--gap-3);text-align:left;cursor:pointer;background:#fff;border:1px solid #e4e7ec;border-radius:999px;align-items:center;transition:background-color .22s,border-color .22s,color .22s;display:flex;position:relative}.section-pill-item:before{content:"";background:0 0;border-radius:999px;width:3px;transition:background-color .22s;position:absolute;top:10px;bottom:10px;left:12px}.section-pill-item:hover{background:#f9fafb;border-color:#d0d5dd}.section-pill-item.is-active{color:var(--fg-strong);background:#f2f4f7;border-color:#d0d5dd}.section-pill-item.is-active:before{background:#344054}.section-pill-item:focus-visible{outline-offset:2px;outline:2px solid #344054}.section-pill-label{font-size:15px;font-weight:600;line-height:1.3}.accordion-item{cursor:pointer;background:#111827;border:0;border-radius:1rem;width:62px;height:450px;padding:0;transition:width .7s ease-in-out;position:relative;overflow:hidden}.accordion-item.active{width:400px}.accordion-item:focus-visible{outline-offset:3px;outline:2px solid #111827}.accordion-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.accordion-overlay{background:#00000061;position:absolute;inset:0}.accordion-caption{color:#fff;white-space:nowrap;font-size:1.1rem;font-weight:700;transition:all .3s ease-in-out;position:absolute;bottom:6.3rem;left:50%;transform:translate(-50%)rotate(90deg)}.accordion-caption.active{bottom:1.45rem;left:50%;transform:translate(-50%)rotate(0)}.sections{gap:0;margin-top:0;display:grid}.global-gate{z-index:96;transition:transform .26s,opacity .26s,filter .26s;position:fixed;top:50%;right:.25rem;transform:translateY(-50%)}body.project-modal-open .global-gate,body.problem-solving-panel-open .global-gate,body.stack-modal-open .global-gate{opacity:.28;filter:blur(2px);pointer-events:none;transform:translateY(-50%)scale(.94)}.global-gate-line{background:linear-gradient(#94a3b852,#2563eb,#94a3b852);border-radius:999px;width:2px;position:absolute;top:10px;bottom:10px;right:8px}.global-gate-list{gap:.62rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.global-gate-item{justify-items:end;gap:.18rem;display:grid}.global-gate-main{grid-template-columns:96px 16px;align-items:center;gap:.45rem;display:grid}.global-gate-label{text-align:right;color:#94a3b8;margin:0;font-size:.75rem;font-weight:600;transition:color .22s,font-size .22s}.global-gate-label.is-active{color:#2563eb;font-size:.84rem;font-weight:700}.global-gate-dot{cursor:pointer;background:#fff;border:2px solid #94a3b8;border-radius:999px;width:16px;height:16px;transition:all .22s}.global-gate-dot.is-active{background:#2563eb;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb33}.global-gate-main:hover .global-gate-label{color:#475467}.global-gate-sublist{justify-items:end;gap:.14rem;width:96px;margin:0 calc(16px + .45rem) 0 0;padding:0;list-style:none;display:grid}.global-gate-subitem{cursor:pointer;color:#94a3b8;background:0 0;border:0;padding:0;font-size:.7rem;font-weight:600;line-height:1.2;transition:color .18s,font-size .18s}.global-gate-subitem.is-active{color:#2563eb;font-size:.75rem;font-weight:700}.section-block{scroll-snap-align:start;scroll-snap-stop:always;min-height:100vh;padding:0 var(--gap-3);opacity:.5;background:#fff;border:0;border-radius:0;transition:transform .32s,opacity .22s;display:block;overflow:visible;transform:translateY(24px)}.section-content{align-content:center;min-height:100dvh;padding:2.2rem 0;display:grid;overflow:visible}.section-block.is-active{opacity:1;transform:translateY(0)}.section-title{letter-spacing:-.03em;margin:0;font-size:clamp(52px,6vw,60px);font-weight:800;line-height:1.08}.section-subtitle{color:#1f2937;margin:.8rem 0 0;font-size:1.08rem;font-weight:700}.section-description{color:#4b5563;max-width:760px;margin:.7rem 0 0;font-size:16px;line-height:1.72}.about-section .section-content{align-content:center;padding-top:clamp(3rem,8vh,6rem);padding-bottom:clamp(3rem,8vh,6rem)}.about-minimal{width:min(1100px,100%);margin:1.35rem auto 0;padding:0}.about-minimal-top{background:#fff;border:1px solid #e5e7eb;border-radius:24px;grid-template-columns:minmax(180px,230px) minmax(0,1fr);align-items:start;gap:clamp(1.2rem,2.4vw,2.2rem);padding:clamp(1.25rem,2.8vw,2.15rem);display:grid}.about-minimal-photo-wrap{width:min(220px,100%);margin:0}.about-minimal-photo{aspect-ratio:4/5;object-fit:cover;object-position:center 18%;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:18px;width:100%;box-shadow:0 4px 14px #0f172a14}.about-minimal-copy{min-width:0;max-width:100%}.about-minimal-role{color:#1d4ed8;letter-spacing:.14em;margin:0;font-size:.72rem;font-weight:700}.about-minimal-title{color:#0f172a;letter-spacing:-.03em;margin:.5rem 0 0;font-size:clamp(3rem,5.2vw,3.55rem);font-weight:800;line-height:1.15}.about-minimal-title-mobile{display:none}.about-minimal-title-desktop{width:fit-content;max-width:100%}.about-minimal-title-line{display:block}.about-minimal-subtitle{color:#6b7280;white-space:pre-line;max-width:75ch;margin:.8rem 0 0;font-size:14.5px;line-height:1.72}.about-minimal-metrics{grid-template-columns:repeat(3,minmax(0,1fr));place-items:stretch start;width:90%;max-width:100%;margin-top:1.15rem;display:grid}.about-minimal-metric{text-align:left;min-width:0;padding:0 1rem}.about-minimal-metric:first-child{padding-left:0}.about-minimal-metric+.about-minimal-metric{border-left:1px solid #d1d5db}.about-minimal-metric-value{color:#111827;letter-spacing:-.02em;margin:0;font-size:clamp(1.35rem,1.9vw,1.58rem);font-weight:800;line-height:1.1}.about-minimal-metric-label{color:#6b7280;word-break:keep-all;margin:.28rem 0 0;font-size:.82rem;font-weight:500;line-height:1.55}.about-minimal-strengths{margin-top:1.1rem}.about-minimal-strength-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.about-minimal-strength-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:1rem;transition:transform .22s,border-color .22s,box-shadow .22s}.about-minimal-strength-card:hover{border-color:#cbd5e1;transform:translateY(-4px);box-shadow:0 10px 24px #0f172a14}.about-minimal-strength-index{color:#2563eb;letter-spacing:.12em;margin:0;font-size:.72rem;font-weight:700}.about-minimal-strength-title{color:#111827;letter-spacing:-.015em;margin:.42rem 0 0;font-size:1.02rem;font-weight:700}.about-minimal-strength-body{color:#4b5563;margin:.5rem 0 0;font-size:.95rem;line-height:1.7}.about-minimal-focus{margin-top:1rem;padding:.9rem .05rem 0}.about-minimal-focus-title{color:#374151;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:700}.about-minimal-keywords{flex-wrap:wrap;gap:.45rem;margin-top:.65rem;display:flex}.about-minimal-keyword{color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:.28rem .62rem;font-size:.83rem;font-weight:600;transition:color .18s,border-color .18s,background-color .18s}.about-minimal-keyword:hover{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.stack-section .section-content{flex-direction:column;justify-content:center;padding-top:clamp(2rem,5vh,3.5rem);padding-bottom:clamp(2rem,6vh,4rem);display:flex}.contact-section .section-content{flex-direction:column;justify-content:center;min-height:100dvh;padding:0;display:flex}.contact-section{padding:0}.contact-section.section-block{padding-inline:0}.contact-panel{background:#050816;border:0;border-radius:0;width:100%;min-height:100dvh;margin:0 auto;position:relative;overflow:hidden}.shader-background{position:absolute;inset:0}.shader-background canvas{width:100%;height:100%;display:block}.contact-panel-overlay{background:linear-gradient(#05081666,#05081685),radial-gradient(circle,#ffffff0a,#0000 48%);position:absolute;inset:0}.contact-panel-inner{z-index:1;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:clamp(1.6rem,4vw,3rem) clamp(1.25rem,4vw,3rem) clamp(2.4rem,5vh,4rem);display:flex;position:relative}.contact-panel-kicker{color:#93c5fd;letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.35rem;font-size:.78rem;font-weight:700}.contact-panel-copy{flex:auto;justify-content:center;align-items:flex-start;width:100%;padding-top:clamp(.5rem,2vh,1.5rem);padding-bottom:clamp(7rem,16vh,10rem);display:flex}.contact-panel-title{color:#f8fafc;letter-spacing:-.03em;word-break:keep-all;text-align:center;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(1.8rem,3.3vw,2.7rem);font-weight:650;line-height:1.3}.contact-panel-actions{justify-content:center;align-items:center;gap:.9rem;width:100%;padding-bottom:clamp(3.6rem,9vh,5.2rem);display:flex}.contact-panel-actions-spacer{display:none}.contact-icon-button{appearance:none;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.contact-icon-button-ring{color:#e2e8f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #bfdbfe2e;border-radius:999px;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;transition:transform .18s,background-color .18s,border-color .18s,color .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff14,0 14px 28px #0206172e}.contact-icon-button:hover .contact-icon-button-ring{background:#ffffff1f;border-color:#bfdbfe57;transform:translateY(-2px)}.contact-icon-button.is-copied .contact-icon-button-ring{color:#93c5fd;background:#93c5fd1f;border-color:#93c5fd6b}.contact-copy-toast{color:#fff;letter-spacing:-.01em;opacity:0;pointer-events:none;white-space:nowrap;background:#475569e6;border-radius:999px;padding:.72rem 1.05rem;font-size:.92rem;font-weight:600;line-height:1;transition:opacity .28s,transform .28s;position:absolute;bottom:clamp(2rem,6vh,3.2rem);left:50%;transform:translate(-50%)translateY(10px)}.contact-copy-toast.is-visible{opacity:1;transform:translate(-50%)translateY(0)}.problem-solving-section{opacity:1;transform:none}.problem-solving-section .section-content{flex-direction:column;justify-content:center;padding-top:clamp(1.1rem,2.8vh,2rem);padding-bottom:clamp(.5rem,1.8vh,1.25rem);display:flex}.problem-solving-panel{width:min(1380px,100%);margin:0 auto;display:block}.problem-solving-stage{grid-template-rows:auto 1fr;place-items:center;row-gap:clamp(.85rem,1.8vh,1.5rem);min-height:clamp(44rem,100vh - 2.6rem,56rem);padding-bottom:0;scroll-margin-top:0;display:grid}.problem-solving-heading{display:none}.problem-solving-orbit-header{text-align:center;justify-items:center;row-gap:clamp(.3rem,.9vh,.65rem);width:min(1280px,100% - 2rem);padding-top:clamp(.75rem,1.8vh,1.5rem);display:grid}.problem-solving-kicker{color:#2563eb;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:700}.problem-solving-title{color:#0f172a;letter-spacing:-.04em;text-align:center;margin:0;font-size:clamp(1.45rem,2.7vw,2.3rem);font-weight:800;line-height:1.12}.problem-solving-title-center{letter-spacing:-.06em;word-break:keep-all;white-space:nowrap;width:min(1280px,100%);font-size:clamp(2rem,3vw,3.35rem);line-height:1.08;position:static}.problem-solving-description{color:#4b5563;max-width:34ch;margin:.45rem 0 0;font-size:1rem;line-height:1.72}.problem-solving-orbit-note{color:#64748b;white-space:normal;margin:0;font-size:.88rem;line-height:1.5}.problem-solving-orbit-shell{background:0 0;border:0;border-radius:36px;place-items:center;width:min(1280px,100% - 1.5rem);min-height:clamp(28rem,58vh,40rem);display:grid;position:relative;overflow:hidden}.problem-solving-orbit-canvas{aspect-ratio:1;width:min(100%,clamp(20rem,54vh,34rem));margin:0 auto;position:relative}.problem-solving-orbit-ring{display:none}.problem-solving-orbit-core{z-index:10;place-items:center;width:clamp(7rem,27%,9rem);height:clamp(7rem,27%,9rem);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.problem-solving-core-glow{filter:blur(18px);background:radial-gradient(circle,#3b82f617,#3b82f608 40%,#0000 72%);border-radius:999px;width:clamp(11rem,43%,14.25rem);height:clamp(11rem,43%,14.25rem);position:absolute;inset:50%;transform:translate(-50%,-50%)}.problem-solving-core-mark{z-index:2;background:#ffffffe6;border:1px solid #dbeafee6;border-radius:999px;width:100%;height:100%;position:relative;box-shadow:0 14px 36px #2563eb14}.problem-solving-floating-panel{z-index:140;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;border:1px solid #e2e8f0eb;border-radius:36px;width:min(920px,100vw - 8rem);max-height:calc(100vh - 7rem);padding:2.2rem 2.5rem 2rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-46%);box-shadow:0 36px 90px #0f172a24,0 0 0 1px #ffffffc7}.problem-solving-panel-close{color:#475569;cursor:pointer;background:#f1f5f9f2;border:0;border-radius:999px;place-items:center;width:44px;height:44px;transition:background-color .18s,color .18s,transform .18s;display:grid;position:absolute;top:1.35rem;right:1.35rem}.problem-solving-panel-close:hover{color:#0f172a;background:#e2e8f0;transform:scale(1.04)}.problem-solving-floating-meta{flex-wrap:wrap;align-items:center;gap:.8rem;padding-right:4rem;display:flex}.problem-solving-floating-category{letter-spacing:.06em;color:#1d4ed8;background:#eff6ff;border-radius:999px;width:fit-content;padding:.55rem 1rem;font-size:.88rem;font-weight:700;display:inline-flex}.problem-solving-floating-date{color:#94a3b8;letter-spacing:.12em;text-transform:uppercase;font-size:.88rem;font-weight:800}.problem-solving-floating-links{border-top:1px solid #edf2f7;flex-wrap:wrap;gap:.7rem;margin-top:1.35rem;padding-top:1.2rem;display:flex}.problem-solving-floating-link{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #dbe4f0;border-radius:999px;padding:.56rem 1.08rem;font-size:.86rem;font-weight:700;line-height:1.4;transition:background-color .18s,border-color .18s,transform .18s}.problem-solving-floating-link:hover{background:#eff6ff;border-color:#bfdbfe;transform:translateY(-1px)}.problem-solving-floating-title{color:#0f172a;letter-spacing:-.04em;max-width:none;margin:1.35rem 0 0;font-size:clamp(1.7rem,2.2vw,2.45rem);font-weight:800;line-height:1.18}.problem-solving-floating-body{color:#334155;max-width:44rem;margin-top:1.4rem;font-size:1.14rem;line-height:1.94}.problem-solving-floating-body p{margin:0}.problem-solving-floating-body p+p{margin-top:1.1rem}.problem-solving-node{cursor:pointer;background:0 0;border:0;justify-items:center;gap:clamp(.55rem,1.7vh,.9rem);transition:transform .32s,opacity .32s;display:grid;position:absolute;top:50%;left:50%}.problem-solving-node:hover .problem-solving-node-dot{border-color:#60a5fa8f;transform:scale(1.05)}.problem-solving-node-energy{pointer-events:none;background:radial-gradient(circle,#3b82f629,#3b82f60a 58%,#0000 76%);border-radius:999px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.problem-solving-node-dot{z-index:2;color:#0f172a;background:#fffffff5;border:1px solid #cbd5e1f2;border-radius:999px;place-items:center;transition:transform .22s,background-color .22s,border-color .22s,color .22s;display:grid;position:relative;box-shadow:0 8px 24px #0f172a0f}.problem-solving-node-label{color:#334155;letter-spacing:-.02em;text-align:center;white-space:nowrap;max-width:clamp(5rem,24vw,8.25rem);margin:0;font-size:clamp(.82rem,1.1vw,.94rem);font-weight:800;line-height:1.3;position:static}.problem-solving-node.is-connected .problem-solving-node-dot{color:#1d4ed8;border-color:#60a5fa7a}.problem-solving-node.is-active .problem-solving-node-dot{color:#fff;background:#2563eb;border-color:#2563eb;transform:scale(1.1)}.problem-solving-node.is-active .problem-solving-node-label{color:#0f172a}.problem-solving-inline-highlight{color:#1d4ed8;letter-spacing:-.01em;background:#dbeafeb8;border-radius:.55rem;margin:0 .06rem;padding:.08rem .48rem .12rem;font-weight:600;display:inline}.stack-panel{gap:.9rem;width:min(1100px,100%);margin:0 auto;display:grid}.stack-heading{padding:.1rem 0}.stack-kicker{color:#2563eb;letter-spacing:.14em;margin:0;font-size:.74rem;font-weight:700}.stack-title{color:#0f172a;letter-spacing:-.02em;margin:.45rem 0 0;font-size:clamp(1.5rem,2.7vw,2rem);font-weight:800;line-height:1.24}.stack-stage{padding-right:118px;position:relative}.stack-mobile-accordion{gap:.8rem;display:grid}.stack-mobile-group{background:#fff;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden}.stack-mobile-toggle{cursor:pointer;background:#fff;border:0;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem;display:flex}.stack-mobile-toggle-label{color:#0f172a;letter-spacing:.06em;text-transform:uppercase;font-size:.98rem;font-weight:800}.stack-mobile-toggle-icon{color:#2563eb;font-size:1.35rem;font-weight:500;line-height:1}.stack-mobile-panel{background:#fbfdff;border-top:1px solid #eef2f7;padding:0 1rem 1rem;display:none}.stack-mobile-panel.is-expanded{display:block}.stack-groups{touch-action:pan-y;height:clamp(350px,54vh,560px);position:relative;overflow:hidden}.stack-group{align-content:start;gap:.75rem;transition:opacity .32s,transform .32s;display:grid;position:absolute;inset:0}.stack-group.is-before{opacity:0;pointer-events:none;transform:translate(-14%)}.stack-group.is-after{opacity:0;pointer-events:none;transform:translate(14%)}.stack-group.is-active{opacity:1;pointer-events:auto;transform:translate(0)}.stack-group-title{color:#334155;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.95rem;font-weight:800}.stack-gate{position:absolute;top:50%;right:0;transform:translateY(-50%)}.stack-gate-line{background:linear-gradient(#94a3b852,#2563eb,#94a3b852);width:2px;position:absolute;top:8px;bottom:8px;right:8px}.stack-gate-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.stack-gate-item{grid-template-columns:84px 16px;align-items:center;gap:.45rem;display:grid}.stack-gate-label{text-align:right;color:#94a3b8;margin:0;font-size:.76rem;font-weight:600;transition:color .22s,font-size .22s}.stack-gate-label.is-active{color:#2563eb;font-size:.84rem;font-weight:700}.stack-gate-dot{cursor:pointer;background:#fff;border:2px solid #94a3b8;border-radius:999px;width:16px;height:16px;transition:all .22s}.stack-gate-dot.is-active{background:#2563eb;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb2e}.stack-skill-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.stack-skill-item{margin:0}.stack-skill-button{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:14px;grid-template-rows:auto auto 1fr;align-content:start;row-gap:.4rem;width:100%;min-height:150px;padding:.9rem .75rem;transition:border-color .18s,transform .18s,background-color .18s;display:grid}.stack-skill-button:hover{background:#f8fbff;border-color:#bfdbfe;transform:translateY(-1px)}.stack-skill-icon{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:9px;place-items:center;width:2rem;height:2rem;font-size:.72rem;font-weight:800;display:inline-grid}.stack-skill-icon svg{width:1.15rem;height:1.15rem}.stack-skill-name{color:#111827;margin:0;font-size:.96rem;font-weight:700;line-height:1.35}.stack-skill-summary{color:#667085;margin:0;font-size:.83rem;line-height:1.58}.stack-modal-overlay{z-index:1200;background:#02061775;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.stack-modal{background:radial-gradient(circle at 0 0,#eff6ffe6,#eff6ff00 34%),linear-gradient(#fff,#f8fbff);border:1px solid #d9e2f2f2;border-radius:30px;width:min(760px,100vw - 2rem);min-height:max(50vh,520px);max-height:calc(100vh - 2rem);padding:1.8rem 1.9rem 2.8rem;position:relative;overflow:auto;box-shadow:0 36px 80px #0f172a2e,0 12px 28px #0f172a14}.stack-modal-close{color:#64748b;cursor:pointer;background:#ffffffe0;border:1px solid #d6deeb;border-radius:999px;place-items:center;width:44px;height:44px;padding:0;font-size:1.7rem;line-height:1;transition:background-color .18s,color .18s,border-color .18s;display:grid;position:absolute;top:18px;right:18px}.stack-modal-close:hover{color:#0f172a;background:#f8fafc;border-color:#bfd2f5}.stack-modal-label{color:#2563eb;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:700}.stack-modal-title{color:#0f172a;letter-spacing:-.03em;margin:.42rem 0 0;font-size:clamp(2.1rem,2.7vw,2.85rem);line-height:1.08}.stack-modal-hero{grid-template-columns:88px minmax(0,1fr);align-items:center;gap:1.1rem;padding-right:3.8rem;display:grid}.stack-modal-icon{color:#1d4ed8;background:linear-gradient(#eff6ff,#dbeafe);border:1px solid #dbeafe;border-radius:24px;justify-content:center;align-items:center;width:88px;height:88px;display:flex;box-shadow:inset 0 1px #ffffffc7,0 14px 28px #2563eb14}.stack-modal-icon svg{flex:none;width:2.75rem;height:2.75rem;display:block}.stack-modal-head{gap:.35rem;min-width:0;display:grid}.stack-modal-summary{color:#334155;letter-spacing:-.01em;word-break:keep-all;max-width:34ch;margin:.7rem 0 0;font-size:1.08rem;font-weight:600;line-height:1.72}.stack-modal-divider{background:linear-gradient(90deg,#2563eb38,#cbd5e1cc);height:1px;margin:1.35rem 0 1.15rem}.stack-modal-body{align-content:start;gap:.85rem;display:grid}.stack-modal-description{color:#475467;white-space:pre-line;word-break:keep-all;max-width:54ch;margin:0;font-size:1.18rem;line-height:1.96}.experience-section .section-content{align-content:start;height:auto;min-height:auto;padding-top:1.8rem;padding-bottom:clamp(5rem,10vh,8rem);overflow:visible}.projects-section .section-content{z-index:120;flex-direction:column;justify-content:center;min-height:100dvh;padding-top:clamp(2rem,5vh,3.5rem);padding-bottom:clamp(2rem,5vh,3.5rem);display:flex;position:relative;overflow:visible}.projects-section,.experience-section{scroll-snap-align:start;scroll-snap-stop:always;opacity:1;min-height:100dvh;transform:none}.projects-shell{width:100%;margin-top:1.1rem}.projects-static-shell{--projects-rail-gap:clamp(1rem, 2.1vw, 1.8rem);z-index:120;gap:clamp(.9rem,2.2vh,1.5rem);width:min(1100px,100%);margin:0 auto;display:grid;position:relative;transform:translateY(-6%)}.projects-static-header{text-align:center;place-items:center;margin-bottom:clamp(-.6rem,-.8vh,-.25rem);display:grid;transform:translateY(-4.8rem)}.projects-static-title{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.1}.projects-static-rail-wrap{width:100%;margin-top:2.8rem;padding:.4rem 0 .9rem;overflow:hidden}.projects-static-rail{gap:var(--projects-rail-gap);grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;width:100%;display:grid}.projects-static-marquee{will-change:transform;width:max-content;animation:42s linear infinite projects-marquee;display:flex}.projects-static-rail-wrap:hover .projects-static-marquee{animation-play-state:paused}.projects-static-rail{gap:var(--projects-rail-gap);width:fit-content;padding-right:var(--projects-rail-gap);flex:none;min-width:max-content;display:flex}.project-card-static{flex:none;width:clamp(228px,19vw,284px);height:clamp(304px,26vw,360px)}.project-card-static-button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0}.project-card-image-static{filter:grayscale(.06);transition:transform .42s,filter .42s}.project-card-arrow-static{color:#111827e6;opacity:.42;background:#ffffff3d}.project-card-static-button:hover .project-card-image-static{filter:grayscale(0);transform:scale(1.05)}.project-card-static-button:hover .project-card-arrow-static{color:#111827;opacity:1;background:#ffffffeb}.project-card-static-button:hover .project-card-arrow-glyph{transform:rotate(0)scale(1)}@keyframes projects-marquee{0%{transform:translate(0)}to{transform:translate(-33.3333%)}}.projects-radial-header{z-index:8;text-align:center;pointer-events:none;margin-bottom:1.1rem;transition:opacity .42s,transform .42s;position:sticky;top:.9rem}.projects-radial-title{color:#111827;letter-spacing:-.03em;margin:0;font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.2}.radial-gallery-shell{justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.radial-gallery-mask{width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0% 60%,#0000 100%);mask-image:linear-gradient(#000 0% 60%,#0000)}.projects-radial-gallery .radial-gallery-mask{-webkit-mask-image:linear-gradient(#000 0% 86%,#0000 100%);mask-image:linear-gradient(#000 0% 86%,#0000)}.radial-gallery-mask.is-centered{overflow:visible;-webkit-mask-image:none;mask-image:none}.radial-gallery-wheel{opacity:0;margin:0;padding:0;list-style:none;transition:opacity .42s;position:absolute;left:50%;transform:translate(-50%)}.radial-gallery-wheel.is-centered{left:50%}.radial-gallery-wheel.is-mounted{opacity:1}.radial-gallery-wheel.is-disabled{opacity:.5;pointer-events:none;filter:grayscale()}.radial-gallery-item{position:absolute;top:50%;left:50%}.radial-gallery-item-button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:1rem;outline:none;padding:0;display:block}.radial-gallery-item-frame{transition:transform .5s,filter .5s,opacity .5s}.radial-gallery-item-frame.is-hovered{transform:scale(1.12)translateY(-12px)}.radial-gallery-item-frame.is-dimmed{filter:blur(2px)grayscale();opacity:.4}.project-card{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:.95rem;width:clamp(180px,15vw,240px);height:clamp(250px,24vw,320px);position:relative;overflow:hidden;box-shadow:0 10px 22px #0f172a14,0 1px 2px #0f172a0d}.project-card-image{object-fit:cover;object-position:center 38%;filter:grayscale(.22);width:100%;height:100%;transition:transform .7s,filter .7s;position:absolute;inset:0}.project-card-image.is-active{filter:grayscale(0);transform:scale(1.09)}.project-card-overlay{background:linear-gradient(#0000,#0c121f14 42%,#0c121fe6);position:absolute;inset:0}.project-card-content{flex-direction:column;justify-content:space-between;padding:.85rem;display:flex;position:absolute;inset:0}.project-card-role{color:#111827;letter-spacing:.03em;background:#ffffffd6;border-radius:999px;align-self:flex-start;padding:.18rem .62rem;font-size:.72rem;font-weight:700}.project-card-footer{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.project-card-title{color:#f9fafb;letter-spacing:-.02em;margin:0;font-size:1.18rem;line-height:1.2}.project-card-arrow{color:#111827b8;opacity:.2;background:#ffffff1f;border-radius:999px;place-items:center;width:1.75rem;height:1.75rem;transition:background-color .3s,opacity .3s,color .3s;display:grid}.project-card-arrow-glyph{line-height:1;transition:transform .4s;display:block;transform:rotate(-35deg)scale(.92)}.project-card-arrow-static:before{content:"→";line-height:1;transition:transform .4s;display:block;transform:rotate(-35deg)scale(.92)}.project-card-arrow.is-active{color:#111827;opacity:1;background:#ffffffeb}.project-card-arrow-static:before{content:none}.project-modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(4px);background:#0f172a2e;place-items:center;padding:24px 16px;display:grid;position:fixed;inset:0}.project-modal{box-sizing:border-box;background:#fff;border:1px solid #eaecf0;border-radius:24px;grid-template-columns:minmax(360px,448px) minmax(0,1fr);align-items:start;column-gap:32px;width:min(1180px,100vw - 2rem);max-height:min(88vh,920px);padding:32px;display:grid;position:relative;overflow:auto;box-shadow:0 20px 40px #10182829,0 2px 8px #10182814}.project-modal-close{z-index:2;color:#111;cursor:pointer;background:#fff;border:1px solid #d0d5dd;border-radius:999px;place-items:center;width:40px;min-width:40px;height:40px;padding:0;font-size:22px;font-weight:700;line-height:1;display:grid;position:absolute;top:16px;right:16px}.project-modal-media{background:#f8f8f7;border:1px solid #eaecf0;border-radius:24px;place-items:center;width:100%;min-height:560px;display:grid;overflow:hidden}.project-modal-media img{object-fit:cover;object-position:center 38%;width:100%;height:100%}.project-modal-content{width:100%;min-width:0;padding:8px 0 0}.project-modal-role{color:#667085;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700}.project-modal-title{color:#111;letter-spacing:-.02em;margin:8px 0 0;font-size:32px;font-weight:700;line-height:1.2}.project-modal-period{color:#667085;margin:8px 0 0;font-size:14px;font-weight:400;line-height:1.5}.project-modal-subtitle{color:#111;max-width:680px;margin:16px 0 0;font-size:16px;font-weight:500;line-height:1.6}.project-modal-stack{flex-wrap:wrap;gap:8px;max-width:680px;margin-top:16px;display:flex}.project-modal-chip{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:500;line-height:1}.project-modal-section{max-width:680px;margin-top:24px}.project-modal-section-title{color:#111;margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.5}.project-modal-body{color:#344054;margin:0;font-size:15px;font-weight:400;line-height:1.65}.project-modal-inline-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.project-modal-inline-list li{color:#344054;margin:0;padding:0;font-size:15px;line-height:1.6}.project-modal-inline-list li:before{content:none}.project-modal-troubles{gap:20px;display:grid}.project-modal-trouble-item{margin:0}.project-modal-trouble-item h6{color:#111;margin:0 0 8px;font-size:15px;font-weight:600;line-height:1.5}.project-modal-trouble-item ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.project-modal-trouble-item li{grid-template-columns:52px minmax(0,1fr);align-items:start;column-gap:12px;margin:0;display:grid}.project-modal-trouble-item li strong{color:#475467;font-size:14px;font-weight:600;line-height:1.6}.project-modal-trouble-item li span{color:#344054;font-size:15px;line-height:1.6}.project-modal-bullets{gap:10px;margin:0;padding:0;list-style:none;display:grid}.project-modal-bullets li{color:#344054;margin:0;padding:0;font-size:15px;line-height:1.6}.project-modal-architecture-image{background:#0f172a;border:1px solid #e5e7eb;border-radius:18px;margin-top:1rem;overflow:hidden}.project-modal-architecture-image img{width:100%;height:auto;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.timeline-shell{width:100%;margin-top:1.2rem}.timeline-intro{margin-bottom:1rem}.timeline-intro-title{margin:0;font-size:clamp(1.2rem,2.8vw,2.3rem);line-height:1.2}.timeline-intro-desc{color:#6b7280;margin:.55rem 0 0;font-size:.95rem}.timeline-track{padding-bottom:clamp(12rem,24vh,18rem);position:relative}.timeline-row{justify-content:flex-start;gap:clamp(1.2rem,2vw,2rem);min-height:clamp(200px,32vh,330px);padding-top:clamp(2.6rem,6vh,4rem);display:flex}.timeline-row:first-child{padding-top:1.5rem}.timeline-sticky{z-index:2;align-self:flex-start;align-items:center;width:min(360px,36%);display:flex;position:sticky;top:7rem}.timeline-dot-wrap{background:#fff;border-radius:999px;place-items:center;width:2rem;height:2rem;display:grid;position:absolute;left:.5rem}.timeline-dot{background:#d1d5db;border:1px solid #9ca3af;border-radius:999px;width:.7rem;height:.7rem}.timeline-year{color:#9aa0a6;letter-spacing:-.02em;margin:0;font-weight:700;transition:color .22s,font-weight .22s}.timeline-year.active{color:#1f2937;font-weight:800}.timeline-year.desktop{padding-left:3.4rem;font-size:clamp(2.5rem,3.1vw,3rem);line-height:1.08;display:block}.timeline-year.mobile{display:none}.timeline-content{width:100%;padding-bottom:1.2rem;padding-left:4.2rem;padding-right:1.2rem;position:relative}.timeline-body{color:#374151;letter-spacing:-.005em;max-width:1080px;font-size:clamp(.9375rem,1.15vw,1rem);line-height:1.68}.timeline-body p{margin:0}.timeline-body p+p{margin-top:.65rem}.timeline-entry-group{gap:clamp(3.75rem,9vh,5.4rem);display:grid}.timeline-entry{gap:.65rem;display:grid}.timeline-entry-title{color:#111;letter-spacing:-.015em;margin:0;font-size:clamp(1.375rem,1.9vw,1.625rem);font-weight:600;line-height:1.28}.timeline-image-wrap{margin:.4rem 0 0}.timeline-image{object-fit:cover;border:1px solid #e5e7eb;border-radius:1rem;width:min(760px,100%);box-shadow:0 0 24px #222a350f,0 1px 1px #0000000d,0 0 0 1px #222a350a,0 16px 68px #2f303714}.timeline-image-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;width:min(1200px,100%);margin-top:.45rem;display:grid}.timeline-image-grid .timeline-image{object-position:top center;width:100%;max-height:360px}.timeline-media-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:.8rem;width:min(1200px,100%);margin-top:.6rem;display:grid}.timeline-media-item{align-content:start;gap:.5rem;display:grid}.timeline-media-grid .timeline-media{object-fit:contain;background:#fff;width:100%;height:clamp(320px,30vw,460px);max-height:none}.timeline-media-caption{color:#111827;letter-spacing:-.005em;text-align:center;margin:0;font-size:.98rem;font-weight:600;line-height:1.5}.timeline-line-bg{background:linear-gradient(#0000,#e5e7eb 16% 84%,#0000);width:3px;position:absolute;top:0;left:1.45rem}.timeline-line-progress{inset-inline:0;background:linear-gradient(#22d3ee,#3b82f6 45%,#8b5cf6);border-radius:999px;width:3px;position:absolute;top:0;box-shadow:0 0 12px #3b82f659}@media(max-width:1024px){.problem-solving-stage{min-height:auto;padding-bottom:.4rem}.hero{padding:0 1rem}.hero-inner{flex-direction:column;justify-content:center;align-items:stretch;gap:2rem;min-height:100vh}.hero-nav{justify-content:flex-start;width:100%}.about-minimal-top{grid-template-columns:minmax(200px,240px) minmax(0,1fr)}.global-gate-main{grid-template-columns:16px}.global-gate-label,.global-gate-sublist{display:none}.stack-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-stage{padding-right:34px}.contact-panel-grid{grid-template-columns:minmax(0,1fr);align-items:stretch}.contact-panel-copy{gap:1rem}.stack-gate-item{grid-template-columns:16px}.stack-gate-label{display:none}}@media(max-width:768px){.hero{display:none}.problem-solving-floating-panel{z-index:140;border-radius:26px;width:min(720px,100vw - 1rem);max-height:calc(100vh - 1.5rem);padding:1.25rem 1.05rem 1.05rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 28px 60px #0f172a24,0 0 0 1px #ffffffc7}.problem-solving-floating-meta{gap:.45rem;padding-right:2.9rem}.problem-solving-floating-title{max-width:none;font-size:1.26rem;line-height:1.3}.problem-solving-floating-body{font-size:.92rem;line-height:1.72}.page{width:100%;padding:0}.global-gate{right:.1rem}.section-block{min-height:100vh;padding:0 var(--gap-2)}.section-content{padding:var(--gap-3) 0 var(--gap-5,40px)}.hero-inner{gap:var(--gap-3);min-height:auto}.hero-title,.section-title{max-width:none;font-size:clamp(36px,9vw,40px)}.hero-description,.section-description{font-size:15px;line-height:1.62}.project-card{width:185px;height:250px}.project-modal{box-sizing:border-box;border-radius:20px;grid-template-rows:auto auto;grid-template-columns:1fr;row-gap:16px;width:min(700px,100vw - 1rem);max-height:min(88vh,900px);padding:16px}.project-modal-media{border-radius:16px;width:100%;min-height:240px}.project-modal-content{max-width:100%;padding:0 4px 8px}.project-modal-title{font-size:28px}.project-modal-subtitle,.project-modal-stack,.project-modal-section{max-width:100%}.project-modal-close{top:12px;right:12px}.projects-radial-title{font-size:1.35rem}.projects-static-title{font-size:1.5rem}.projects-static-rail{gap:.9rem;padding-right:.9rem}.project-card-static{width:220px;height:300px}.accordion-row{justify-content:flex-start}.accordion-item{width:52px;height:360px}.accordion-item.active{width:280px}.accordion-caption{font-size:.95rem;bottom:5rem}.timeline-root{height:auto}.timeline-row{gap:.65rem;min-height:170px;padding-top:1.8rem}.timeline-row:first-child{padding-top:1rem}.timeline-sticky{width:2.2rem;top:5.2rem}.timeline-year.desktop{display:none}.timeline-year.mobile{color:#9aa0a6;letter-spacing:-.02em;margin-bottom:.45rem;font-size:1.75rem;font-weight:700;display:block}.timeline-content{padding-left:2.7rem}.timeline-entry-title{font-size:1.25rem}.timeline-image-grid,.timeline-media-grid{grid-template-columns:1fr;width:100%}.timeline-media-grid .timeline-media{height:auto}.timeline-media-caption{text-align:left}.about-minimal{margin-top:1rem}.about-minimal-top{border-radius:18px;grid-template-columns:1fr;gap:1rem;padding:1rem}.about-minimal-photo-wrap{width:min(260px,100%);margin:0 auto}.about-minimal-copy{text-align:left}.about-minimal-role{text-align:center;font-size:.62rem}.about-minimal-title{word-break:keep-all;text-align:center;font-size:clamp(2.15rem,10vw,3rem);line-height:1.12}.about-minimal-title-desktop{display:none}.about-minimal-title-mobile{display:block}.about-minimal-subtitle{font-size:.95rem;line-height:1.74;display:none}.about-minimal-metrics{grid-template-columns:1fr;gap:0;margin-top:1.35rem;display:none}.about-minimal-metric{text-align:center;padding:.95rem 0}.about-minimal-metric+.about-minimal-metric{border-top:1px solid #d1d5db;border-left:0;padding-top:.95rem}.about-minimal-metric-value{font-size:clamp(1.85rem,8vw,2.4rem)}.about-minimal-metric-label{margin-top:.24rem;font-size:.98rem}.about-minimal-strength-grid{grid-template-columns:1fr}.stack-panel{margin-top:.8rem}.contact-panel{border-radius:0;min-height:100dvh}.contact-panel-title{font-size:clamp(2.1rem,8vw,3rem)}.contact-panel-inner{padding:1.35rem}.contact-panel-copy{padding-top:2.2rem;padding-bottom:3rem}.contact-panel-actions{padding-bottom:3.2rem}.stack-modal{border-radius:22px;width:min(700px,100vw - 2rem);min-height:max(48vh,460px);max-height:calc(100vh - 2rem);padding:1.2rem 1.1rem 2rem}.stack-modal-hero{grid-template-columns:68px minmax(0,1fr);gap:.9rem;padding-right:3.1rem}.stack-modal-icon{border-radius:20px;width:68px;height:68px}.stack-modal-icon svg{width:2.1rem;height:2.1rem}.stack-modal-title{font-size:1.85rem}.stack-modal-summary{max-width:none;font-size:1rem;line-height:1.7}.stack-modal-description{max-width:none;font-size:1.08rem;line-height:1.88}}@media(max-width:540px){.project-modal-overlay{background:#0f172a47;padding:6px}.project-modal{box-sizing:border-box;border-radius:18px;width:calc(100vw - 12px);max-height:calc(100vh - 1rem);padding:14px}.project-modal-media{border-radius:14px;min-height:200px}.project-modal-content{padding:0 2px 6px}.project-modal-title{font-size:24px;line-height:1.2}.project-modal-subtitle,.project-modal-body,.project-modal-bullets,.project-modal-inline-list,.project-modal-trouble-item ul{overflow-wrap:anywhere;word-break:keep-all}.project-modal-close{width:36px;min-width:36px;height:36px;top:10px;right:10px}.about-minimal-top{padding:.85rem}.about-minimal-title{font-size:clamp(1.9rem,9vw,2.45rem)}.contact-panel{width:100%;min-height:100dvh;margin-left:0}.contact-panel-title{max-width:13.5ch;font-size:clamp(1.75rem,8.6vw,2.25rem);line-height:1.22}.contact-panel-inner{padding:max(1.25rem,env(safe-area-inset-top)) 1rem calc(2.4rem + env(safe-area-inset-bottom));justify-content:flex-start}.contact-panel-kicker{margin:8vh 0 5vh}.contact-panel-copy{flex:none;align-items:center;min-height:auto;padding-top:0;padding-bottom:0}.contact-panel-actions{gap:.7rem;margin-top:0;padding-bottom:0}.contact-icon-button-ring{width:3rem;height:3rem}.contact-copy-toast{bottom:calc(1.8rem + env(safe-area-inset-bottom));padding:.68rem .92rem;font-size:.84rem}.contact-panel-actions-spacer{flex:0 0 50dvh;width:100%;display:block}.contact-panel-copy:after{content:"";height:0;display:block}.about-minimal-subtitle{font-size:.92rem}.problem-solving-title-center{white-space:normal;width:min(100%,420px);font-size:1.8rem}.problem-solving-orbit-note{white-space:normal;max-width:260px}.problem-solving-floating-panel{width:calc(100vw - .75rem);max-height:calc(100vh - 1rem);padding:1.05rem .9rem .95rem}.problem-solving-floating-meta{padding-right:2.8rem}.problem-solving-floating-title{font-size:1.14rem;line-height:1.34}.problem-solving-floating-body{font-size:.9rem;line-height:1.66}.problem-solving-orbit-note{max-width:260px;font-size:.82rem}.stack-groups{height:clamp(420px,58vh,600px)}.stack-skill-grid,.stack-skill-grid.is-mobile{grid-template-columns:1fr}.stack-skill-button{min-height:132px}.stack-mobile-toggle{padding:.95rem .9rem}.stack-mobile-panel{padding:0 .9rem .9rem}.stack-skill-name{font-size:.96rem}.stack-skill-summary{font-size:.83rem;line-height:1.58}.stack-modal{border-radius:18px;width:min(100%,100vw - 1.5rem);min-height:max(50vh,400px);max-height:calc(100vh - 1.25rem);margin:0 auto;padding:1rem .9rem 1.6rem}.stack-modal-hero{grid-template-columns:1fr;gap:.8rem;padding-right:2.7rem}.stack-modal-icon{border-radius:18px;width:58px;height:58px}.stack-modal-icon svg{width:1.8rem;height:1.8rem}.stack-modal-title{font-size:1.65rem}.stack-modal-summary{max-width:none;font-size:.96rem;line-height:1.66}.stack-modal-divider{margin:1rem 0 .9rem}.stack-modal-description{max-width:none;font-size:1rem;line-height:1.82}.stack-modal-close{width:38px;height:38px;font-size:1.45rem;top:10px;right:10px}}@media(max-width:430px){.contact-panel-inner{padding:max(1.1rem,env(safe-area-inset-top)) 1rem calc(2.6rem + env(safe-area-inset-bottom))}.contact-panel-kicker{margin:8vh 0 4.5vh}.contact-panel-title{max-width:13ch;font-size:clamp(1.95rem,9.4vw,2.35rem)}.contact-panel-actions{margin-top:0}.contact-copy-toast{bottom:calc(2rem + env(safe-area-inset-bottom))}.contact-panel-actions-spacer{flex-basis:50dvh}}html.standalone-route{scroll-behavior:auto;scroll-snap-type:none}body.standalone-route{background:radial-gradient(circle at top,#bfdbfe4d,#0000 34%),linear-gradient(#f8fbff,#fff 18%)}.standalone-page{min-height:100dvh}.standalone-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd1;border-bottom:1px solid #e2e8f0e6;justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,2.4vw,2rem);display:flex;position:sticky;top:0}.standalone-home-link{color:#111827;letter-spacing:-.02em;font-size:.95rem;font-weight:700;text-decoration:none}.standalone-label{color:#475467;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:700}.standalone-main{width:min(1440px,100%);margin:0 auto}.standalone-section.section-block{scroll-snap-align:none;scroll-snap-stop:normal;opacity:1;min-height:auto;padding-top:0;padding-bottom:0;transform:none}.standalone-section .section-content{min-height:calc(100dvh - 73px)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.projects-static-marquee{animation:none}.problem-solving-node,.problem-solving-node-dot{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
