:root{--bg: #faf9f6;--bg-subtle: #f3f1ec;--surface: #ffffff;--surface-hover: #f7f6f2;--surface-border: #e6e2d9;--text-main: #141413;--text-body: #3b3a36;--text-muted: #6b6860;--text-subtle: #96938a;--accent: #1e3a2b;--accent-warm: #c15f3e;--accent-soft: rgba(30, 58, 43, .08);--font-serif: "Instrument Serif", Georgia, "Times New Roman", serif;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--line-grid: rgba(20, 20, 19, .06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg)}body{background-color:var(--bg);color:var(--text-body);font-family:var(--font-sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background-image:linear-gradient(to right,var(--line-grid) 1px,transparent 1px),linear-gradient(to bottom,var(--line-grid) 1px,transparent 1px);background-size:48px 48px}::selection{background:#141413;color:#faf9f6}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#d6d2c8;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b5b0a3}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-sans);border:none;background:none}.container{max-width:1040px;margin:0 auto;padding:0 32px}.section{position:relative;padding:100px 0}.sec-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:48px;padding-bottom:16px;border-bottom:1px solid var(--surface-border)}.sec-header-left{display:flex;align-items:baseline;gap:16px}.sec-num{font-family:var(--font-mono);font-size:.8rem;font-weight:500;color:var(--accent-warm);letter-spacing:.05em}.sec-title{font-family:var(--font-serif);font-size:2.25rem;font-weight:400;letter-spacing:-.01em;color:var(--text-main);line-height:1.1}.sec-tagline{font-family:var(--font-mono);font-size:.75rem;color:var(--text-subtle);letter-spacing:.04em;text-transform:uppercase}@media (max-width: 768px){.container{padding:0 20px}.section{padding:64px 0}.sec-header{flex-direction:column;gap:8px;margin-bottom:32px}.sec-title{font-size:1.85rem}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px 40px;background:#faf9f6e6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--surface-border);transition:all .2s ease}.nav__logo{display:flex;align-items:center;gap:10px;text-decoration:none}.nav__logo-mark{font-family:var(--font-serif);font-size:1.35rem;font-weight:700;color:var(--text-main);background:var(--bg-subtle);border:1px solid var(--surface-border);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.nav__logo-name{font-family:var(--font-sans);font-size:.9rem;font-weight:700;color:var(--text-main);letter-spacing:-.01em}.nav__logo-name span{font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--text-subtle);margin-left:6px}.nav__links{display:flex;align-items:center;gap:28px;list-style:none}.nav__link{font-family:var(--font-mono);font-size:.76rem;font-weight:500;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;transition:color .15s ease}.nav__link:hover{color:var(--text-main)}.nav__cta{font-family:var(--font-mono);font-size:.76rem;font-weight:600;color:var(--text-main);background:var(--surface);border:1px solid var(--surface-border);padding:6px 14px;border-radius:3px;letter-spacing:.03em;transition:all .15s ease}.nav__cta:hover{background:var(--text-main);color:#faf9f6;border-color:var(--text-main)}.nav__burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px}.nav__burger span{display:block;width:20px;height:1.5px;background:var(--text-main);border-radius:2px;transition:all .2s}@media (max-width: 768px){.nav{padding:14px 20px}.nav__burger{display:flex}.nav__links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--surface-border);padding:12px 0}.nav__links--open{display:flex}.nav__links li{width:100%}.nav__link,.nav__cta{display:block;padding:12px 24px;width:100%;border:none;border-radius:0}}.interactive-editor{background:var(--surface);border:1px solid var(--surface-border);border-radius:8px;overflow:hidden;box-shadow:0 6px 28px #1414130f;margin-top:36px;position:relative;max-height:600px;display:flex;flex-direction:column;transition:all .3s ease}.interactive-editor--fullscreen{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;max-width:100vw!important;max-height:100vh!important;margin:0!important;border:none!important;border-radius:0!important;box-shadow:none!important;z-index:99999!important;display:flex!important;flex-direction:column!important}.interactive-editor--fullscreen .interactive-editor__body{flex:1!important;height:calc(100vh - 52px)!important;max-height:calc(100vh - 52px)!important;min-height:0!important}.interactive-editor--fullscreen .editor-canvas-container{max-height:none!important;height:100%!important;flex:1!important}.interactive-editor--fullscreen .editor-inspector{max-height:none!important;height:100%!important}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;background:var(--bg-subtle);border-bottom:1px solid var(--surface-border);flex-wrap:wrap;gap:12px}.editor-header__left{display:flex;align-items:center;gap:12px}.editor-header__status-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--accent-warm);background:#c15f3e1a;padding:3px 8px;border-radius:3px;letter-spacing:.05em}.editor-header__status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-warm)}.editor-header__title{font-size:.82rem;font-weight:600;color:var(--text-main)}.editor-header__right{display:flex;align-items:center;gap:10px}.editor-header__zoom-group{display:flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--surface-border);padding:2px 6px;border-radius:4px}.editor-header__btn-icon{font-family:var(--font-mono);font-size:.95rem;font-weight:600;color:var(--text-muted);width:20px;text-align:center;padding:0;line-height:1}.editor-header__btn-icon:hover{color:var(--text-main)}.editor-header__zoom-text{font-family:var(--font-mono);font-size:.72rem;color:var(--text-main);min-width:44px;text-align:center}.editor-header__action-btn{font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--text-muted);background:var(--surface);border:1px solid var(--surface-border);padding:6px 12px;border-radius:4px;transition:all .15s ease}.editor-header__action-btn:hover{color:var(--text-main);border-color:var(--text-muted)}.editor-header__action-btn.active{background:var(--accent-warm);color:#fff;border-color:var(--accent-warm)}.editor-header__export-btn{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:#faf9f6;background:var(--text-main);padding:7px 15px;border-radius:4px;transition:all .15s ease}.editor-header__export-btn:hover{background:#2b2a27;transform:translateY(-1px)}.interactive-editor__body{display:grid;grid-template-columns:88px 1fr 310px;flex:1;min-height:0;max-height:548px;background:var(--surface)}.editor-toolbar{background:var(--bg-subtle);border-right:1px solid var(--surface-border);display:flex;flex-direction:column;justify-content:space-between;padding:12px 8px}.editor-toolbar__section{display:flex;flex-direction:column;gap:7px}.editor-toolbar__heading{font-family:var(--font-mono);font-size:.62rem;font-weight:700;color:var(--text-subtle);letter-spacing:.08em;padding-left:2px;margin-bottom:2px}.editor-tool-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:9px 4px;border-radius:4px;color:var(--text-body);background:var(--surface);border:1px solid var(--surface-border);transition:all .15s ease}.editor-tool-btn span{font-family:var(--font-mono);font-size:.62rem;font-weight:600;text-align:center}.editor-tool-btn:hover{border-color:var(--text-main);color:var(--text-main);transform:translateY(-1px)}.editor-tool-btn--ai{background:#c15f3e0f;border-color:#c15f3e4d;color:var(--accent-warm)}.editor-tool-btn--ai:hover{background:#c15f3e26;border-color:var(--accent-warm)}.editor-canvas-container{background:#ede9e0;display:flex;flex-direction:column;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;min-width:0;min-height:0;height:100%}.editor-canvas-viewport{flex:1;overflow:auto;min-width:0;min-height:0;padding:60px 80px;display:grid;place-content:center}.editor-sheet-scaler{position:relative;min-width:0;min-height:0}.editor-sheet{background:#fff;box-shadow:0 8px 32px #1414131f;border:1px solid rgba(20,20,19,.08);border-radius:2px;width:100%}.editor-svg{display:block;width:100%;height:auto}.canvas-el{cursor:grab;touch-action:none}.canvas-el:active{cursor:grabbing}.resize-handle{cursor:nwse-resize;touch-action:none}.editor-inspector{background:var(--bg-subtle);border-left:1px solid var(--surface-border);padding:16px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;max-height:600px}.interactive-editor--fullscreen .editor-inspector{max-height:none}.editor-inspector__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--surface-border)}.editor-inspector__title{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--text-main);letter-spacing:.05em}.editor-inspector__header-actions{display:flex;align-items:center;gap:5px}.editor-inspector__action-small{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);background:var(--surface);border:1px solid var(--surface-border);padding:2px 5px;border-radius:3px}.editor-inspector__action-small:hover{color:var(--text-main)}.editor-inspector__delete-btn{font-family:var(--font-mono);font-size:.65rem;color:#c15f3e;font-weight:700;background:#c15f3e14;border:1px solid rgba(193,95,62,.2);padding:2px 6px;border-radius:3px}.editor-inspector__delete-btn:hover{background:#c15f3e29}.editor-inspector__btn-secondary{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--text-main);background:var(--surface);border:1px solid var(--surface-border);padding:7px 10px;border-radius:4px;text-align:center;margin-bottom:6px;transition:all .15s ease}.editor-inspector__btn-secondary:hover{border-color:var(--text-muted);background:var(--surface-hover)}.editor-inspector__empty{text-align:center;padding:30px 10px;color:var(--text-subtle)}.editor-inspector__empty-icon{font-size:1.8rem;display:block;margin-bottom:8px}.editor-inspector__empty-title{font-size:.85rem;font-weight:600;color:var(--text-main);margin-bottom:6px}.editor-inspector__empty-desc{font-size:.78rem;line-height:1.5}.editor-inspector__cep-box{background:var(--surface);border:1px solid var(--surface-border);border-radius:4px;padding:12px;font-size:.76rem;line-height:1.45;color:var(--text-body)}.editor-inspector__cep-box .editor-inspector__title{display:block;margin-bottom:6px;color:var(--text-main)}.editor-inspector__section{display:flex;flex-direction:column;gap:7px}.section-label-row{display:flex;align-items:center;justify-content:space-between}.section-value-tag{font-family:var(--font-mono);font-size:.68rem;font-weight:600;color:var(--accent-warm)}.editor-inspector__section-label{font-family:var(--font-mono);font-size:.65rem;font-weight:700;color:var(--text-subtle);letter-spacing:.05em}.editor-inspector__grid-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.editor-inspector__field{display:flex;flex-direction:column;gap:4px;min-width:0}.editor-inspector__field label{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-inspector__field input,.editor-inspector__field select,.editor-inspector__field textarea{width:100%;box-sizing:border-box;background:var(--surface);border:1px solid var(--surface-border);border-radius:3px;padding:6px 8px;font-size:.82rem;color:var(--text-main);font-family:var(--font-sans);outline:none}.editor-inspector__field input[type=range]{padding:2px 0;accent-color:var(--accent-warm)}.editor-inspector__link-btn{font-family:var(--font-mono);font-size:.65rem;color:var(--accent-warm);background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}.editor-inspector__link-btn:hover{color:var(--text-main)}.editor-inspector__field input:focus,.editor-inspector__field select:focus,.editor-inspector__field textarea:focus{border-color:var(--text-main)}.color-input-wrapper{display:flex;align-items:center;gap:6px}.color-input-wrapper input[type=color]{width:32px;height:30px;padding:1px;cursor:pointer}.color-hex-text{font-family:var(--font-mono);font-size:.75rem!important;flex:1}.editor-inspector__colors{display:flex;gap:6px;flex-wrap:wrap}.color-dot{width:22px;height:22px;border-radius:50%;border:2px solid transparent;transition:transform .15s ease}.color-dot:hover{transform:scale(1.1)}.color-dot.active{border-color:#141413;box-shadow:0 0 0 1px #fff inset;transform:scale(1.08)}.editor-notification{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#141413;color:#faf9f6;font-family:var(--font-mono);font-size:.75rem;padding:8px 16px;border-radius:20px;display:flex;align-items:center;gap:8px;box-shadow:0 4px 16px #0000002e;z-index:1000}.notif-dot{width:6px;height:6px;border-radius:50%;background:#4ade80}@media (max-width: 950px){.interactive-editor__body{grid-template-columns:1fr}.editor-toolbar{flex-direction:row;border-right:none;border-bottom:1px solid var(--surface-border)}.editor-toolbar__section{flex-direction:row}.editor-inspector{border-left:none;border-top:1px solid var(--surface-border)}}.hero{padding-top:130px;padding-bottom:70px;position:relative}.hero__container{display:flex;flex-direction:column}.hero__dateline{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--surface-border);margin-bottom:32px;flex-wrap:wrap;gap:12px}.hero__status-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:4px 10px;border-radius:3px;letter-spacing:.05em}.hero__status-dot{width:6px;height:6px;border-radius:50%;background:#2e7d32;box-shadow:0 0 0 3px #2e7d3233}.hero__meta-location{font-family:var(--font-mono);font-size:.75rem;color:var(--text-subtle);letter-spacing:.04em}.hero__headline-wrap{margin-bottom:36px;max-width:900px}.hero__name{font-family:var(--font-serif);font-size:clamp(3.2rem,7vw,5.4rem);font-weight:400;letter-spacing:-.025em;color:var(--text-main);line-height:.98;margin-bottom:20px}.hero__lead{font-size:clamp(1.1rem,2.2vw,1.35rem);color:var(--text-body);line-height:1.55;font-weight:400;max-width:820px}.hero__lead em{font-family:var(--font-serif);font-style:italic;font-size:1.15em;color:var(--text-main)}.hero__specs-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:16px 20px;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;margin-bottom:32px}.hero__spec-col{display:flex;flex-direction:column;gap:2px}.spec-label{font-family:var(--font-mono);font-size:.68rem;color:var(--text-subtle);letter-spacing:.06em;font-weight:500}.spec-value{font-size:.82rem;font-weight:600;color:var(--text-main)}.hero__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:60px}.hero__btn-primary{background:var(--text-main);color:#faf9f6;font-size:.85rem;font-weight:600;padding:11px 22px;border-radius:4px;transition:all .15s ease}.hero__btn-primary:hover{background:#2b2a27;transform:translateY(-1px)}.hero__btn-secondary{background:var(--surface);color:var(--text-main);border:1px solid var(--surface-border);font-size:.85rem;font-weight:600;padding:11px 22px;border-radius:4px;transition:all .15s ease}.hero__btn-secondary:hover{background:var(--bg-subtle);border-color:var(--text-muted)}.hero__link{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--text-muted);transition:color .15s ease}.hero__link:hover{color:var(--accent-warm)}.hero__showcase{margin-top:16px}.hero__showcase-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:-28px;flex-wrap:wrap;gap:8px}.showcase-tag{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--accent-warm);letter-spacing:.08em}.showcase-caption{font-size:.8rem;color:var(--text-subtle);font-style:italic}@media (max-width: 850px){.hero__specs-bar{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.hero{padding-top:100px}.hero__specs-bar{grid-template-columns:1fr}.hero__actions{flex-direction:column;align-items:stretch}.hero__btn-primary,.hero__btn-secondary{text-align:center}}.about__layout{display:grid;grid-template-columns:1fr 300px;gap:56px;align-items:start}.about__bio{font-size:1.15rem;color:var(--text-body);line-height:1.75;margin-bottom:32px}.about__highlights{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--surface-border);padding-top:24px}.about__highlight-item{display:flex;align-items:baseline;gap:12px;font-size:.9rem;color:var(--text-body)}.about__highlight-bullet{font-family:var(--font-mono);font-size:.75rem;color:var(--accent-warm)}.about__right{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;padding:24px;gap:20px}.about__contact-card{display:flex;flex-direction:column;gap:10px}.about__card-title{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--text-subtle);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.about__link{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted);transition:color .15s ease;word-break:break-all}.about__link:hover{color:var(--accent-warm)}.about__stats-grid{display:grid;grid-template-columns:1fr;gap:16px;border-top:1px solid var(--surface-border);padding-top:18px}.about__stat-item{display:flex;flex-direction:column;gap:2px}.about__stat-num{font-family:var(--font-serif);font-size:1.7rem;font-weight:400;color:var(--text-main);line-height:1}.about__stat-desc{font-family:var(--font-mono);font-size:.72rem;color:var(--text-subtle)}@media (max-width: 800px){.about__layout{grid-template-columns:1fr;gap:36px}}.skills__table{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;overflow:hidden}.skills__row{display:grid;grid-template-columns:220px 1fr;padding:20px 24px;border-bottom:1px solid var(--surface-border);align-items:center;transition:background .15s ease}.skills__row:last-child{border-bottom:none}.skills__row:hover{background:var(--surface-hover)}.skills__category{font-family:var(--font-mono);font-size:.78rem;font-weight:600;color:var(--text-main);letter-spacing:.04em;text-transform:uppercase}.skills__items{display:flex;flex-wrap:wrap;gap:8px}.skills__item{font-size:.82rem;font-weight:500;color:var(--text-body);background:var(--bg-subtle);border:1px solid var(--surface-border);padding:4px 10px;border-radius:3px;transition:all .15s ease}.skills__item:hover{background:var(--text-main);color:#faf9f6;border-color:var(--text-main)}@media (max-width: 700px){.skills__row{grid-template-columns:1fr;gap:10px;padding:16px}}.exp__entry{border:1px solid var(--surface-border);border-radius:6px;background:var(--surface);overflow:hidden}.exp__top{display:flex;align-items:flex-start;justify-content:space-between;padding:28px 32px;border-bottom:1px solid var(--surface-border);background:var(--bg-subtle);flex-wrap:wrap;gap:16px}.exp__company{font-family:var(--font-serif);font-size:1.6rem;font-weight:400;color:var(--text-main);line-height:1.1;margin-bottom:4px}.exp__role{font-family:var(--font-mono);font-size:.8rem;color:var(--accent-warm);font-weight:600;letter-spacing:.04em}.exp__period{font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted);background:var(--surface);border:1px solid var(--surface-border);padding:4px 10px;border-radius:3px;white-space:nowrap}.exp__bullets{display:flex;flex-direction:column}.exp__item{border-bottom:1px solid var(--surface-border);cursor:pointer;transition:background .15s ease}.exp__item:last-child{border-bottom:none}.exp__item:hover,.exp__item--open{background:var(--surface-hover)}.exp__item-header{display:flex;align-items:center;gap:16px;padding:20px 32px}.exp__item-num{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--accent-warm);min-width:24px}.exp__item-title{font-size:.95rem;font-weight:600;color:var(--text-main);flex:1}.exp__item-toggle{font-family:var(--font-mono);font-size:1.1rem;color:var(--text-subtle);transition:color .15s ease}.exp__item--open .exp__item-toggle{color:var(--text-main)}.exp__item-body{overflow:hidden;padding:0 32px 22px 72px}.exp__item-body p{font-size:.9rem;color:var(--text-body);line-height:1.7}@media (max-width: 600px){.exp__top,.exp__item-header{padding:16px 20px}.exp__item-body{padding:0 20px 18px 52px}}.projects__list{display:flex;flex-direction:column;gap:20px}.proj-row{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:24px 28px;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;transition:all .15s ease}.proj-row:hover{background:var(--surface-hover);border-color:#d8d3c7;transform:translateY(-1px)}.proj-row__num{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--accent-warm);letter-spacing:.08em;padding-top:4px}.proj-row__body{display:flex;flex-direction:column;gap:12px}.proj-row__top{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}.proj-row__name{font-family:var(--font-serif);font-size:1.35rem;font-weight:400;color:var(--text-main);letter-spacing:-.01em}.proj-row__type{font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-subtle);border:1px solid var(--surface-border);padding:3px 8px;border-radius:3px}.proj-row__bullets{list-style:none;display:flex;flex-direction:column;gap:6px}.proj-row__bullets li{font-size:.88rem;color:var(--text-body);line-height:1.6;padding-left:14px;position:relative}.proj-row__bullets li:before{content:"—";position:absolute;left:0;color:var(--accent-warm);font-family:var(--font-mono);font-size:.75rem}@media (max-width: 600px){.proj-row{grid-template-columns:1fr;padding:18px;gap:12px}}.github__header-right{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.github__all-link{font-family:var(--font-mono);font-size:.78rem;color:var(--accent-warm);font-weight:600;transition:opacity .15s ease}.github__all-link:hover{opacity:.75}.github__list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;overflow:hidden}.repo-row{display:flex;flex-direction:column;gap:8px;padding:20px 24px;border-bottom:1px solid var(--surface-border);transition:background .15s ease;cursor:pointer;text-decoration:none}.repo-row:last-child{border-bottom:none}.repo-row:hover{background:var(--surface-hover)}.repo-row__main{display:flex;flex-direction:column;gap:6px}.repo-row__top{display:flex;align-items:center;gap:12px}.repo-row__name{font-family:var(--font-sans);font-size:.95rem;font-weight:700;color:var(--text-main);letter-spacing:-.01em}.repo-row__badges{display:flex;gap:8px}.repo-row__badge{font-family:var(--font-mono);font-size:.7rem;color:var(--text-subtle);font-weight:600}.repo-row__arrow{margin-left:auto;color:var(--text-subtle);font-size:.85rem;transition:color .15s,transform .15s}.repo-row:hover .repo-row__arrow{color:var(--text-main);transform:translate(2px,-2px)}.repo-row__desc{font-size:.85rem;color:var(--text-body);line-height:1.6}.repo-row__meta{display:flex;align-items:center;gap:16px;margin-top:4px}.repo-row__lang{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);font-weight:600;letter-spacing:.04em}.repo-row__topics{display:flex;gap:6px;flex-wrap:wrap}.repo-row__topic{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);background:var(--bg-subtle);border:1px solid var(--surface-border);padding:2px 7px;border-radius:3px}.edu__list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;overflow:hidden}.edu__row{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:22px 28px;border-bottom:1px solid var(--surface-border);transition:background .15s ease}.edu__row:last-child{border-bottom:none}.edu__row:hover{background:var(--surface-hover)}.edu__degree{font-family:var(--font-serif);font-size:1.25rem;font-weight:400;color:var(--text-main);line-height:1.2;margin-bottom:4px}.edu__school{font-size:.85rem;color:var(--text-muted)}.edu__score{font-family:var(--font-mono);font-size:.85rem;font-weight:600;color:var(--accent-warm);white-space:nowrap;flex-shrink:0;background:var(--bg-subtle);border:1px solid var(--surface-border);padding:4px 10px;border-radius:3px}.contact__layout{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:start}.contact__intro{font-size:1.05rem;color:var(--text-body);line-height:1.7;margin-bottom:24px}.contact__details{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}.contact__detail-link{font-family:var(--font-mono);font-size:.82rem;color:var(--text-muted);transition:color .15s ease}.contact__detail-link:hover{color:var(--accent-warm)}.contact__download{display:inline-block;font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--text-main);background:var(--surface);border:1px solid var(--surface-border);padding:10px 18px;border-radius:4px;transition:all .15s ease}.contact__download:hover{background:var(--text-main);color:#faf9f6}.contact__form{display:flex;flex-direction:column;gap:16px;background:var(--surface);border:1px solid var(--surface-border);border-radius:6px;padding:28px}.contact__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact__field{display:flex;flex-direction:column;gap:6px}.contact__field label{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--text-subtle);letter-spacing:.06em;text-transform:uppercase}.contact__field input,.contact__field textarea{background:var(--bg-subtle);border:1px solid var(--surface-border);border-radius:4px;padding:11px 14px;color:var(--text-main);font-size:.9rem;font-family:var(--font-sans);outline:none;resize:vertical;transition:border-color .15s ease}.contact__field input::placeholder,.contact__field textarea::placeholder{color:var(--text-subtle)}.contact__field input:focus,.contact__field textarea:focus{border-color:var(--text-main);background:#fff}.contact__submit{align-self:flex-start;background:var(--text-main);color:#faf9f6;font-size:.85rem;font-weight:600;padding:12px 26px;border-radius:4px;border:none;transition:all .15s ease}.contact__submit:hover{background:#2b2a27;transform:translateY(-1px)}.contact__submit--sent{background:#1e3a2b;color:#fff}.contact__submit--error{background:#8a2a2a;color:#fff}.footer{padding:48px 0;border-top:1px solid var(--surface-border);background:var(--bg-subtle);margin-top:80px}.footer__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer__brand{display:flex;flex-direction:column;gap:2px}.footer__title{font-family:var(--font-serif);font-size:1.2rem;color:var(--text-main)}.footer__sub{font-family:var(--font-mono);font-size:.72rem;color:var(--text-subtle)}.footer__meta{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}@media (max-width: 768px){.contact__layout{grid-template-columns:1fr;gap:32px}.contact__row{grid-template-columns:1fr}}.footer{position:relative;z-index:1;text-align:center;padding:32px 24px;border-top:1px solid rgba(79,155,255,.08);font-size:.8rem;color:#334155;letter-spacing:.04em}
