/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{.start{inset-inline-start:var(--spacing)}}:root{--bg:#080d12;--bg-soft:#0b1218;--panel:#101820;--panel-high:#15212a;--line:#24323b;--line-soft:#86a0ab29;--text:#e8efef;--muted:#95a5ab;--teal:#68b5a7;--teal-soft:#9ccfc5;--orange:#d78650;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{background:var(--bg);color:var(--text);font-family:var(--sans);margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--teal);outline-offset:4px}::selection{color:var(--bg);background:var(--teal-soft)}.shell{width:min(1180px,100% - 48px);margin-inline:auto}.skip-link{z-index:100;color:var(--bg);background:var(--teal);border-radius:4px;padding:10px 16px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:16px}.site-header{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#080d12e6;border-bottom:1px solid #94acb421;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;height:78px;display:flex}.brand{letter-spacing:.01em;align-items:center;gap:12px;font-size:.86rem;font-weight:650;display:inline-flex}.brand-mark{border:1px solid var(--teal);width:37px;height:37px;color:var(--teal-soft);font:700 .78rem var(--mono);clip-path:polygon(0 0,84% 0,100% 16%,100% 100%,16% 100%,0 84%);place-items:center;display:grid}.brand small{color:var(--muted);font:400 .61rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-top:-2px;display:block}.desktop-nav{align-items:center;gap:34px;display:flex}.desktop-nav a{color:#aebbc0;font:500 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;transition:color .2s;position:relative}.desktop-nav a:after{content:"";background:var(--teal);height:1px;transition:right .2s;position:absolute;bottom:-9px;left:0;right:100%}.desktop-nav a:hover{color:var(--text)}.desktop-nav a:hover:after{right:0}.menu-button{color:var(--text);cursor:pointer;background:0 0;border:0;padding:7px;display:none}.mobile-nav{display:none}.hero{grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);align-items:center;gap:clamp(50px,7vw,100px);min-height:calc(100vh - 78px);padding-block:84px 76px;display:grid}.eyebrow{color:var(--teal-soft);font:600 .7rem var(--mono);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 22px;display:flex}.eyebrow>span{background:var(--teal);width:22px;height:1px;box-shadow:7px 0 0 var(--teal)}.hero h1{letter-spacing:-.055em;text-wrap:balance;max-width:740px;margin:0;font-size:clamp(3rem,6.2vw,6rem);font-weight:620;line-height:.97}.hero-lead{color:#c9d5d7;max-width:720px;margin:30px 0 0;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.65}.hero-detail{max-width:660px;color:var(--muted);margin:14px 0 0;font-size:.96rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.button{border:1px solid var(--line);min-height:47px;font:600 .77rem var(--mono);letter-spacing:.04em;justify-content:center;align-items:center;gap:10px;padding:0 19px;transition:color .2s,background .2s,border-color .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#07110f;background:var(--teal);border-color:var(--teal)}.button-primary:hover{background:#7fc6ba}.button-secondary:hover{color:var(--teal-soft);border-color:var(--teal)}.hero-meta{flex-wrap:wrap;gap:24px;margin-top:42px;display:flex}.hero-meta span{color:#7f9197;font:500 .64rem var(--mono);letter-spacing:.08em}.hero-meta b{color:var(--orange);margin-right:7px;font-weight:500}.hero-visual{border:1px solid var(--line);clip-path:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,34px 100%,0 calc(100% - 34px));background:#0a1117;min-height:540px;position:relative;overflow:hidden}.visual-grid,.project-grid{opacity:.42;background-image:linear-gradient(var(--line-soft) 1px, transparent 1px), linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);background-size:38px 38px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 95%);mask-image:linear-gradient(#000,#0000 95%)}.hero-visual:before{content:"";background:radial-gradient(circle at 58% 46%,#529e911f,#0000 35%);position:absolute;inset:0}.terrain{border:1px solid #67b5a773;border-radius:50%;height:120px;position:absolute;left:8%;right:8%;transform:rotate(-9deg)skew(22deg)}.terrain:before,.terrain:after{content:"";border:1px solid #67b5a752;border-radius:50%;position:absolute;inset:15px 28px}.terrain:after{border-color:#d786506b;inset:33px 62px}.terrain-one{top:31%}.terrain-two{top:41%;left:14%;right:2%;transform:rotate(-5deg)skew(28deg)scale(.92)}.terrain-three{top:51%;left:1%;right:18%;transform:rotate(-13deg)skew(16deg)scale(.83)}.axis{color:#62747b;font:500 .56rem var(--mono);letter-spacing:.07em;position:absolute}.axis-x{border-top:1px solid #d786504d;bottom:22%;left:8%;right:8%}.axis-x span{position:absolute;top:6px;right:0}.axis-y{border-left:1px solid #d786504d;top:12%;bottom:14%;left:14%}.axis-y span{writing-mode:vertical-rl;position:absolute;top:0;left:7px}.node{z-index:2;color:#a9b9bc;font:500 .55rem var(--mono);letter-spacing:.08em;background:#101a20;border:1px solid #33444c;align-items:center;gap:6px;padding:5px 8px;display:flex;position:absolute}.node i{background:var(--teal);border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #67b5a71f}.node-a{top:19%;left:13%}.node-b{top:11%;right:18%}.node-c{bottom:27%;right:9%}.node-line{z-index:1;transform-origin:0;background:#67b5a78c;height:1px;position:absolute}.line-a{width:48%;top:23%;left:23%;transform:rotate(-13deg)}.line-b{width:37%;top:22%;right:9%;transform:rotate(64deg)}.visual-caption{font:500 .58rem var(--mono);letter-spacing:.09em;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:23px;left:28px;right:28px}.visual-caption span{color:var(--teal-soft)}.visual-caption b{color:#5e7077;font-weight:500}.section{padding-block:126px}.section-tinted{background:var(--bg-soft);border-block:1px solid #89a2ab1a}.section-heading{grid-template-columns:270px 1fr;align-items:start;margin-bottom:52px;display:grid}.section-heading p{color:var(--teal-soft);font:600 .7rem var(--mono);letter-spacing:.13em;text-transform:uppercase;margin:7px 0 0}.section-heading p span{width:55px;color:var(--orange);margin-right:14px;display:inline-block}.section-heading h2{letter-spacing:-.04em;text-wrap:balance;max-width:740px;margin:0;font-size:clamp(2rem,4vw,3.65rem);font-weight:580;line-height:1.15}.section-intro{color:#b5c2c5;max-width:830px;margin:0 0 48px 270px;font-size:clamp(1.08rem,2vw,1.32rem);line-height:1.8}.section-note{max-width:700px;color:var(--muted);margin:-30px 0 50px 270px}.pillar-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-left:270px;display:grid}.pillar-card{background:var(--panel);border:1px solid var(--line);min-height:235px;padding:28px;transition:border-color .2s,transform .2s;position:relative}.pillar-card:hover{border-color:#3b565b;transform:translateY(-3px)}.card-index{color:var(--orange);font:500 .62rem var(--mono);display:block}.pillar-card h3{margin:60px 0 9px;font-size:1.05rem;font-weight:620}.pillar-card p{color:var(--muted);margin:0;font-size:.89rem}.skills-stack{gap:14px;display:grid}.skill-group{background:var(--panel);border:1px solid var(--line);grid-template-columns:270px 1fr;display:grid}.skill-group-title{border-right:1px solid var(--line);align-items:flex-start;gap:18px;padding:28px 25px;display:flex}.skill-code{height:47px;color:var(--teal-soft);font:700 .66rem var(--mono);border:1px solid #3d5c5a;flex:0 0 47px;place-items:center;display:grid}.skill-code.tone-1{color:#bdc7cb;border-color:#46545a}.skill-code.tone-2{color:#e0a47d;border-color:#704d38}.skill-group-title h3{margin:0 0 5px;font-size:1.03rem}.skill-group-title p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.5}.skill-list{grid-template-columns:1fr 1fr;display:grid}.skill-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:28px 1fr;gap:10px;min-height:112px;padding:24px 22px;display:grid}.skill-item:nth-child(2n){border-right:0}.skill-item:nth-last-child(-n+2){border-bottom:0}.skill-item>span{color:#596a71;font:500 .58rem var(--mono);padding-top:3px}.skill-item h4{margin:0 0 6px;font-size:.94rem;font-weight:610}.skill-item p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.55}.projects-grid{gap:28px;margin-left:270px;display:grid}.project-card{border:1px solid var(--line);background:var(--panel);grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);display:grid}.project-visual{border-right:1px solid var(--line);background:#0b1319;min-height:395px;position:relative;overflow:hidden}.project-type,.project-number{z-index:3;font:600 .56rem var(--mono);letter-spacing:.08em;position:absolute;top:20px}.project-type{color:var(--teal-soft);left:20px}.project-number{color:var(--orange);right:20px}.project-shape{border:1px solid #68b5a78c;height:38%;position:absolute;top:29%;left:15%;right:15%;transform:rotate(-8deg)skew(15deg);box-shadow:13px 13px 0 -1px #0b1319,13px 13px #68b5a740,26px 26px 0 -1px #0b1319,26px 26px #d7865040}.project-image{object-fit:cover;filter:saturate(.78)contrast(1.04)brightness(.78)}.project-visual-2 .project-shape{border-radius:50%;transform:rotate(11deg)skew(-8deg)}.project-visual-3 .project-shape{clip-path:polygon(0 20%,60% 0,100% 35%,81% 100%,20% 86%);transform:rotate(7deg)}.project-content{padding:clamp(28px,4vw,48px)}.project-status{color:var(--orange);font:500 .61rem var(--mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 12px;display:flex}.project-status span{background:var(--orange);border-radius:50%;width:6px;height:6px}.project-content h3{letter-spacing:-.025em;margin:0 0 28px;font-size:clamp(1.35rem,2.5vw,2rem);font-weight:600}.project-content dl,.project-content dd{margin:0}.project-content dl>div{grid-template-columns:45px 1fr;gap:15px;margin-top:16px;display:grid}.project-content dt{color:var(--teal-soft);font:600 .66rem var(--mono);letter-spacing:.08em}.project-content dd{color:var(--muted);font-size:.87rem;line-height:1.65}.tag-list{flex-wrap:wrap;gap:7px;margin-top:26px;display:flex}.tag-list span{color:#9db0b5;font:500 .58rem var(--mono);border:1px solid #304049;padding:4px 8px}.project-link{color:var(--teal-soft);font:600 .72rem var(--mono);align-items:center;gap:8px;margin-top:29px;display:inline-flex}.project-link.is-disabled{color:#66777d}.learning-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-left:270px;display:grid}.learning-card{border:1px solid var(--line);background:var(--panel);min-height:245px;padding:27px;transition:border-color .2s,transform .2s;display:block}a.learning-card:hover{border-color:var(--teal);transform:translateY(-3px)}.learning-top{color:var(--teal-soft);font:500 .61rem var(--mono);letter-spacing:.08em;justify-content:space-between;display:flex}.learning-top b{color:var(--orange);font-weight:500}.learning-card h3{margin:49px 0 9px;font-size:1.12rem}.learning-card p{max-width:420px;color:var(--muted);margin:0;font-size:.86rem}.learning-action{color:#64767c;font:500 .66rem var(--mono);align-items:center;gap:7px;margin-top:25px;display:flex}.contact{grid-template-columns:1fr 1fr;gap:clamp(60px,10vw,140px);padding-block:130px;display:grid}.contact h2{letter-spacing:-.045em;max-width:640px;margin:0;font-size:clamp(2.1rem,4.5vw,4rem);font-weight:580;line-height:1.12}.contact h2+p{max-width:610px;color:var(--muted);margin:24px 0 0}.contact-links{border-top:1px solid var(--line)}.contact-links a,.contact-placeholder{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:79px;transition:color .2s,padding .2s;display:flex}.contact-links a:hover{color:var(--teal-soft);padding-left:8px}.contact-links span{font-size:.82rem;font-weight:650}.contact-links small{color:#6f8187;font:400 .66rem var(--mono);display:block}.contact-placeholder{color:#83939a}.site-footer{border-top:1px solid var(--line)}.site-footer .shell{color:#65767c;min-height:96px;font:500 .62rem var(--mono);justify-content:space-between;align-items:center;gap:20px;display:flex}.site-footer p{margin:0}.site-footer a{color:#9caeb3}@media (width<=980px){.hero{grid-template-columns:1fr}.hero-visual{min-height:460px}.section-heading{grid-template-columns:190px 1fr}.section-intro,.section-note,.pillar-grid,.projects-grid,.learning-grid{margin-left:190px}.skill-group{grid-template-columns:220px 1fr}.skill-group-title{flex-direction:column}.project-card{grid-template-columns:1fr}.project-visual{border-right:0;border-bottom:1px solid var(--line);min-height:300px}.contact{grid-template-columns:1fr}.contact-links{max-width:720px}}@media (width<=740px){.shell{width:min(100% - 32px,640px)}.nav-inner{height:68px}.desktop-nav{display:none}.menu-button{display:block}.mobile-nav{background:var(--bg-soft);border-top:1px solid #0000;grid-template-rows:repeat(5,0fr);padding-inline:16px;transition:grid-template-rows .25s,padding .25s,border-color .25s;display:grid;overflow:hidden}.mobile-nav.is-open{border-color:var(--line);grid-template-rows:repeat(5,1fr);padding-block:9px 16px}.mobile-nav a{color:#b9c5c8;min-height:0;font:600 .78rem var(--mono);align-items:center;gap:16px;padding-inline:8px;display:flex;overflow:hidden}.mobile-nav.is-open a{min-height:48px}.mobile-nav a span{color:var(--orange);font-size:.58rem}.hero{grid-template-columns:1fr;gap:56px;min-height:auto;padding-block:72px 55px}.hero h1{font-size:clamp(2.8rem,14vw,4.4rem)}.hero-visual{min-height:390px}.hero-meta{gap:13px 19px}.section{padding-block:90px}.section-heading{grid-template-columns:1fr;gap:19px;margin-bottom:34px}.section-heading p{margin:0}.section-intro,.section-note,.pillar-grid,.projects-grid,.learning-grid{margin-left:0}.section-intro{margin-bottom:34px}.section-note{margin-top:-17px;margin-bottom:34px}.pillar-grid{grid-template-columns:1fr}.pillar-card{min-height:200px}.pillar-card h3{margin-top:43px}.skill-group{grid-template-columns:1fr}.skill-group-title{border-right:0;border-bottom:1px solid var(--line);flex-direction:row}.skill-list{grid-template-columns:1fr}.skill-item,.skill-item:nth-child(2n),.skill-item:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.skill-item:last-child{border-bottom:0}.projects-grid{gap:20px}.project-visual{min-height:270px}.project-content{padding:28px 22px}.project-content dl>div{grid-template-columns:1fr;gap:5px}.learning-grid{grid-template-columns:1fr}.learning-card{min-height:220px}.contact{padding-block:95px}.site-footer .shell{flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding-block:24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
