*{box-sizing:border-box}html,*{scrollbar-width:thin;scrollbar-color:rgba(144,210,109,.35) rgba(25,26,23,.5)}::-webkit-scrollbar{width:10px;height:8px}::-webkit-scrollbar-track{background:#111210}::-webkit-scrollbar-thumb{background:#90d26d40;border-radius:100px;border:2px solid rgba(17,18,16,1)}::-webkit-scrollbar-thumb:hover{background:#90d26d8c}html{min-height:100%;background:#111210;color:#f5f3ec;scroll-behavior:smooth}section[id],footer[id]{scroll-margin-top:6rem}body{margin:0;min-height:100%;min-width:320px;overflow-x:hidden;background:linear-gradient(180deg,rgba(10,10,9,.38),transparent 26rem),#111210;color:#f5f3ec;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;text-rendering:optimizeLegibility}#root{min-height:100vh;background:inherit}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#90d26d;color:#111210}.skip-link{position:fixed;top:1rem;left:1rem;z-index:20;transform:translateY(-140%);border:1px solid rgba(245,243,236,.14);border-radius:8px;background:#191a17;color:#f5f3ec;padding:.65rem .85rem}.skip-link:focus{transform:translateY(0)}.page-width{width:calc(100% - 2rem);max-width:1180px;margin-inline:auto}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;width:min(1180px,calc(100% - 1rem));margin:.5rem auto 0;padding:.55rem;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#0f100ee6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:box-shadow .18s ease,border-color .18s ease,background .18s ease}.site-header[data-elevated=true]{border-color:#f5f3ec24;box-shadow:0 16px 42px #0000004d;background:#191a17f2}.brand,.nav-links,.header-actions,.footer-actions,.project-stack{display:flex;align-items:center}.brand{gap:.65rem;font-size:.92rem;font-weight:700;letter-spacing:0}.brand-mark{display:grid;width:2.35rem;height:2.35rem;place-items:center;border-radius:8px;background:#f5f3ec;color:#111210;font-size:.82rem}.nav-links{justify-content:center;gap:.25rem}.nav-links a{border-radius:8px;color:#b9b3a7;font-size:.9rem;padding:.65rem .8rem;transition:background .15s ease,color .15s ease}.nav-links a:hover,.nav-links a:focus-visible{background:#22241f;color:#f5f3ec}.header-actions{justify-content:flex-end;gap:.2rem}.language-switch{display:inline-flex;align-items:center;gap:.15rem;margin-right:.3rem;border:1px solid rgba(245,243,236,.14);border-radius:8px;padding:.15rem;background:#1112108c}.language-switch button{min-width:2.15rem;height:2rem;border:0;border-radius:6px;background:transparent;color:#b9b3a7;cursor:pointer;font-size:.76rem;font-weight:800}.language-switch button:hover,.language-switch button:focus-visible,.language-switch button[aria-pressed=true]{background:#22241f;color:#f5f3ec}.language-switch button[aria-pressed=true]{color:#90d26d}.header-icon-link,.menu-toggle{display:grid;width:2.35rem;height:2.35rem;place-items:center;border-radius:8px;color:#b9b3a7;transition:background .15s ease,color .15s ease,transform .15s ease}.header-icon-link:hover,.header-icon-link:focus-visible,.menu-toggle:hover,.menu-toggle:focus-visible{background:#22241f;color:#f5f3ec}.header-icon-link:hover{transform:translateY(-1px)}.header-icon-link svg,.menu-toggle svg{width:1.25rem;height:1.25rem;stroke-width:2}.menu-toggle{display:none;border:1px solid rgba(245,243,236,.14);background:#191a17b8;cursor:pointer;font:inherit}.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.65rem;border:1px solid rgba(245,243,236,.14);border-radius:8px;padding:.72rem .92rem;font-size:.92rem;font-weight:700;transition:transform .16s ease,background .16s ease,border-color .16s ease}.button:hover{transform:translateY(-1px);border-color:#90d26da6}.button svg{width:1rem;height:1rem;stroke-width:1.9}.button.primary{border-color:#90d26dbf;background:#90d26d;color:#10140d}.button.secondary{background:#191a17;color:#f5f3ec}.my-credentials{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(2rem,7vw,7rem);align-items:center;min-height:min(72vh,46rem);padding-block:clamp(4rem,8vw,7rem) clamp(3rem,6vw,5rem)}.about-me-text,.my-photo,.project-detail,.preview-frame{min-width:0}.small-label{margin:0 0 1rem;color:#ffb25f;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.about-me-title,.about-me-subtitle,.work-title,.process-title,.skills-title,.project-detail-title,.process-item-title,.skill-title,.testimonials-title,.footer-title,.loading-title{margin:0;letter-spacing:0;line-height:1.02}.about-me-title{max-width:22ch;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:800;letter-spacing:-.02em}.about-me-subtitle{max-width:28ch;margin-top:1.2rem;color:#d7d5ce;font-size:clamp(1.5rem,3vw,2.4rem);font-weight:500;line-height:1.3}.loading-title{max-width:12ch;font-size:clamp(2.7rem,5.8vw,5.4rem);font-weight:800}.about-me-summary{max-width:42rem;margin:1.6rem 0 0;color:#c0bbaf;font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.6;overflow-wrap:break-word}.quick-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:2.1rem 0 0;border:1px solid rgba(245,243,236,.14);border-radius:8px;background:#191a17bf}.quick-facts div{padding:1rem}.quick-facts div+div{border-left:1px solid rgba(245,243,236,.14)}.quick-facts dt{color:#817c72;font-size:.76rem;font-weight:800;text-transform:uppercase}.quick-facts dd{margin:.35rem 0 0;color:#f5f3ec;font-weight:700}.my-photo{align-self:stretch;display:grid;min-height:30rem;place-items:center}.photo-area{position:relative;display:grid;width:min(28rem,100%);aspect-ratio:1;place-items:center}.photo-frame{position:relative;width:76%;aspect-ratio:1;overflow:hidden;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 45% 18%,rgba(255,255,255,.16),transparent 28%),#181a16;box-shadow:0 28px 90px #0000004d}.photo-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.28));pointer-events:none}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 34%;filter:saturate(.9) contrast(1.03)}.preview-topbar{display:flex;align-items:center;gap:.45rem;min-height:2.65rem;padding-inline:.85rem;border-bottom:1px solid rgba(245,243,236,.14)}.preview-topbar span{width:.62rem;height:.62rem;border-radius:50%}.preview-topbar span:nth-child(1){background:#ff7f6e}.preview-topbar span:nth-child(2){background:#ffb25f}.preview-topbar span:nth-child(3){background:#90d26d}.project-stack span{border:1px solid rgba(245,243,236,.14);border-radius:999px;color:#b9b3a7;font-size:.78rem;font-weight:700;padding:.38rem .55rem}.short-about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,3rem);padding-block:3rem;border-top:1px solid rgba(245,243,236,.14);border-bottom:1px solid rgba(245,243,236,.14)}.short-about p{margin:0;color:#b9b3a7;font-size:clamp(1rem,1.65vw,1.35rem);font-weight:600;line-height:1.24}.work-section,.process-section,.skills-section,.testimonials-section,.site-footer{padding-block:clamp(3rem,6vw,5rem)}.section-heading{display:grid;grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;margin-bottom:clamp(1.6rem,4vw,3rem)}.work-title,.process-title,.footer-title{max-width:22ch;font-size:clamp(1.45rem,2.8vw,2.7rem);font-weight:800}.skills-title{max-width:16ch;font-size:clamp(1.45rem,2.8vw,2.7rem);font-weight:800}.balanced-heading{width:min(66%,28rem);margin-inline:auto;text-align:center}.project-stage{display:grid;grid-template-columns:minmax(12rem,.28fr) minmax(0,1fr) minmax(17rem,.34fr);gap:1rem;align-items:stretch}.project-tabs{display:grid;align-content:start;gap:.55rem;position:sticky;top:5.8rem;height:max-content}.project-tab{display:grid;gap:.25rem;width:100%;border:1px solid rgba(245,243,236,.14);border-radius:8px;background:#191a17b3;color:#b9b3a7;cursor:pointer;padding:.85rem;text-align:left;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.project-tab:hover,.project-tab[aria-selected=true]{border-color:#90d26da6;background:#191a17;color:#f5f3ec}.project-tab[aria-selected=true]{transform:translate(.35rem)}.project-tab strong{font-size:.96rem}.project-tab span{color:#817c72;font-size:.78rem;font-weight:700;text-transform:uppercase}.preview-frame,.project-detail,.skill-grid article,.testimonial-card,.process-item{border:1px solid rgba(245,243,236,.14);border-radius:8px;background:#191a17d9}.preview-topbar p{margin:0 0 0 auto;color:#817c72;font-size:.78rem;font-weight:700;text-transform:uppercase}.project-preview-layout{display:grid;height:100%}.preview-frame{--preview-height: clamp(38rem, calc(100svh - 8rem) , 58rem);display:flex;flex-direction:column;height:var(--preview-height);overflow:hidden;box-shadow:0 22px 70px #0000004d}.preview-screen{--live-demo-scrollbar-gutter: 18px;position:relative;flex:1;min-height:0;padding:0;overflow:hidden}.live-demo-frame{display:block;width:calc(100% + var(--live-demo-scrollbar-gutter));max-width:none;height:100%;border:0;background:#050607}.preview-screen--orbit{height:auto}.preview-screen--orbit .live-demo-frame{width:100%;height:100%}.project-preview-image{width:100%;height:100%;object-fit:cover;background:#22241f}.project-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.access-note,.access-copy{color:#b9b3a7;font-size:.92rem}.access-note{display:inline-flex;align-items:center;gap:.5rem}.access-note svg{width:1rem;height:1rem}.static-preview{min-height:0;height:100%}.preview-frame{min-height:clamp(560px,72vh,820px);height:100%}.static-preview .access-note{position:absolute;left:1rem;right:1rem;bottom:1rem;border:1px solid rgba(245,243,236,.14);border-radius:8px;background:#191a17f2;padding:.85rem 1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.project-detail{display:flex;flex-direction:column;gap:1rem;padding:clamp(1.2rem,2vw,1.6rem)}.project-priority{margin:0;color:#ffb25f;font-size:.78rem;font-weight:700;text-transform:uppercase}.project-detail-title{font-size:clamp(1.55rem,2.35vw,2.25rem);font-weight:800;text-align:center}.project-detail p{margin:0;color:#b9b3a7}.access-copy{margin-top:-.35rem}.project-points{display:grid;gap:.58rem;margin:0;padding:0;list-style:none}.project-points li{position:relative;color:#f5f3ec;padding-left:1rem}.project-points li:before{content:"";position:absolute;top:.65em;left:0;width:.38rem;height:.38rem;border-radius:50%;background:#90d26d}.project-stack{flex-wrap:wrap;gap:.45rem;margin-top:auto}.process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.process-item{padding:clamp(1.2rem,2.4vw,1.7rem)}.process-item span{display:inline-grid;width:2.4rem;height:2.4rem;place-items:center;margin-bottom:1.7rem;border:1px solid rgba(245,243,236,.14);border-radius:50%;color:#90d26d;font-size:.78rem;font-weight:700}.process-item-title,.skill-title{font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:700}.process-item p,.skill-grid p{margin:1rem 0 0;color:#b9b3a7}.skill-grid,.testimonial-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.skill-grid article{padding:1.05rem}.testimonials-section{border-top:1px solid rgba(245,243,236,.14)}.testimonials-heading{display:grid;justify-items:center;gap:.8rem;margin-bottom:clamp(2rem,5vw,4.2rem);text-align:center}.testimonials-heading .small-label{margin:0}.testimonials-title{font-size:clamp(2rem,4vw,3.4rem);font-weight:800}.avatar-stack{display:flex;align-items:center;justify-content:center}.avatar-stack img{width:3rem;height:3rem;border:2px solid rgb(25,26,23);border-radius:50%;box-shadow:0 8px 24px #0000004d}.avatar-stack img{object-fit:cover}.avatar-stack img+img{margin-left:-.85rem}.testimonial-note{max-width:62rem;margin:-1rem auto 2rem;color:#b9b3a7;font-size:clamp(1rem,1.55vw,1.2rem);font-weight:680;text-align:center}.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.testimonial-card{display:flex;min-height:24rem;flex-direction:column;gap:1.25rem;padding:1.25rem}.testimonial-card p{margin:0;color:#f5f3ec;font-size:.96rem;line-height:1.65}.testimonial-person{display:grid;grid-template-columns:auto 1fr auto;gap:.85rem;align-items:center;min-width:0}.testimonial-person img{width:3.25rem;height:3.25rem;border:1px solid rgba(245,243,236,.14);border-radius:50%;object-fit:cover;box-shadow:0 10px 24px #0000004d}.testimonial-person div{display:grid;gap:.2rem;min-width:0}.testimonial-person strong{overflow:hidden;color:#f5f3ec;font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.testimonial-person span{color:#817c72;font-size:.9rem}.testimonial-link{display:grid;width:2.45rem;height:2.45rem;place-items:center;border:1px solid rgba(245,243,236,.14);border-radius:50%;color:#f5f3ec;background:#22241f;transition:transform .18s ease,border-color .18s ease,color .18s ease}.testimonial-link:hover{transform:translateY(-1px);border-color:#90d26d99;color:#90d26d}.testimonial-link svg{width:1rem;height:1rem}.site-footer{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;border-top:1px solid rgba(245,243,236,.14)}.footer-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.loading-state{display:grid;min-height:100vh;align-content:center;gap:1rem}.loading-state p:last-child{margin:0;color:#b9b3a7}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media(max-width:1040px){.project-stage,.site-footer{grid-template-columns:1fr;gap:3rem;min-height:auto;padding-block:4rem}.project-detail-title{text-align:left}.project-tabs{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.process-list,.testimonial-grid{grid-template-columns:1fr}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-actions{justify-content:flex-start}}@media(max-width:760px){.page-width{width:calc(100% - 2rem)}.site-header{grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.45rem}.brand{min-width:0}.brand span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-toggle{display:grid;justify-self:end}.site-header .nav-links,.site-header .header-actions{display:none}.site-header[data-menu-open=true] .nav-links,.site-header[data-menu-open=true] .header-actions{display:flex;order:3;grid-column:1 / -1;flex-wrap:wrap;justify-content:flex-start;gap:.2rem;padding-top:.55rem;border-top:1px solid rgba(245,243,236,.1)}.site-header[data-menu-open=true] .header-actions{order:4;justify-content:space-between}.short-about,.skill-grid{grid-template-columns:1fr}.project-tabs{display:flex;overflow-x:auto;padding:.25rem 0 .5rem;margin-top:-.25rem;scroll-snap-type:x mandatory}.project-tab{min-width:min(16rem,78vw);scroll-snap-align:start}.project-tab[aria-selected=true]{transform:translateY(-.15rem)}.project-preview-image{height:100%}.skill-grid article{padding:.85rem}.skill-grid p{margin-top:.45rem}.balanced-heading{width:100%}}@media(max-width:700px){.section-heading{grid-template-columns:1fr}.my-credentials{grid-template-columns:1fr;gap:3rem;min-height:auto;padding-block:4rem}.my-photo{min-height:auto;order:-1}.quick-facts{grid-template-columns:1fr}.quick-facts div+div{border-top:1px solid rgba(245,243,236,.14);border-left:0}.my-credentials{display:flex;flex-direction:column;gap:1.5rem;padding-top:2rem}.my-photo{order:-1;width:100%}.photo-area{width:min(18rem,78vw);margin-inline:auto}.photo-frame{width:82%}.about-me-title,.about-me-subtitle{overflow-wrap:break-word;text-wrap:balance}.about-me-title,.loading-title{max-width:100%;font-size:clamp(2rem,9vw,3rem)}.about-me-subtitle{max-width:20ch;font-size:clamp(1.35rem,7vw,2rem)}.about-me-summary{max-width:100%;line-height:1.5}}
