@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#1d1a28;background:#f4f0e9;min-width:320px;margin:0;font-family:Manrope,sans-serif}button,a{font:inherit}button{cursor:pointer}:root{--ink:#0c1628;--navy:#101d36;--blue:#1965f3;--cyan:#a7f4f0;--cream:#f7f5ef;--muted:#637087;--line:#dce2ea;--lime:#ddf36c}.site-shell{background:var(--cream);color:var(--ink);overflow:hidden}.topbar{border-bottom:1px solid var(--line);z-index:10;background:var(--cream);align-items:center;height:80px;padding:0 6vw;display:flex;position:relative}.brand{color:var(--ink);letter-spacing:2px;cursor:pointer;background:0 0;border:0;padding:0;font-size:19px;font-weight:800}.brand span{color:var(--blue)}.nav-links{gap:27px;margin:auto;display:flex}.nav-links button{color:#697388;letter-spacing:1.1px;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 0;font-size:10px;font-weight:800}.nav-links button:hover,.nav-links .active{color:var(--ink);border-color:var(--blue)}.availability{color:var(--ink);letter-spacing:.4px;text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #ccd5e0;padding:10px 13px;font-size:10px;font-weight:800}.availability i{background:#42bd71;border-radius:50%;width:7px;height:7px;margin:0 7px 1px 0;display:inline-block}.menu-toggle{display:none}.hero-section{grid-template-columns:1fr 1fr;align-items:center;gap:4vw;min-height:calc(100vh - 80px);padding:4vw 9vw;display:grid}.eyebrow,.section-label{letter-spacing:1.2px;color:#5e6b7f;text-transform:uppercase;margin:0;font:600 10px/1.5 DM Mono,monospace}.eyebrow span{color:var(--blue);font-size:13px}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.065em}h1{max-width:650px;margin:22px 0 26px;font-size:clamp(54px,6.6vw,96px);line-height:.96}h1 em,h2 em{color:var(--blue);font-family:Playfair Display,serif;font-weight:600}.hero-description{max-width:470px;color:var(--muted);font-size:15px;line-height:1.85}.hero-actions{align-items:center;gap:25px;margin-top:34px;display:flex}.primary-button{background:var(--blue);color:#fff;cursor:pointer;border:0;padding:16px 19px;font-size:11px;font-weight:800;transition:all .25s;box-shadow:0 10px 22px #1965f338}.primary-button:hover{background:#0e52d4;transform:translateY(-3px)}.primary-button span,.line-button span,.email-link span{vertical-align:-1px;margin-left:18px;font-size:17px}.text-button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:12px 0;font-size:11px;font-weight:800}.text-button span{color:var(--blue);margin-left:7px;font-size:18px}.hero-meta{color:#758094;letter-spacing:1px;align-items:center;gap:10px;margin-top:55px;font:9px DM Mono,monospace;display:flex}.hero-meta b{background:var(--blue);border-radius:50%;width:4px;height:4px}.hero-visual{height:min(590px,62vw);min-height:450px;position:relative}.hero-grid{opacity:.72;background-image:linear-gradient(#dbe6fb 1px,#0000 1px),linear-gradient(90deg,#dbe6fb 1px,#0000 1px);background-size:30px 30px;position:absolute;inset:5% 0 0 8%}.hero-shape{position:absolute}.shape-one{background:var(--cyan);clip-path:polygon(14% 0,100% 8%,86% 100%,0 87%);width:69%;height:78%;bottom:0;right:4%}.shape-two{background:var(--lime);border-radius:50%;width:135px;height:135px;top:8%;left:5%}.portrait-wrap{clip-path:polygon(0 9%,91% 0,100% 86%,9% 100%);filter:grayscale()contrast(1.05);width:62%;height:80%;position:absolute;bottom:4%;right:10%;overflow:hidden}.portrait-wrap img{object-fit:cover;object-position:center;width:100%;height:100%}.portrait-overlay{mix-blend-mode:multiply;background:linear-gradient(140deg,#1965f359,#0000 55%);position:absolute;inset:0}.code-card{background:var(--navy);color:#fff;box-shadow:12px 12px 0 var(--blue);padding:17px 19px;position:absolute;top:23%;left:0;transform:rotate(-4deg)}.code-card small{color:var(--cyan);margin-bottom:9px;font:9px DM Mono,monospace;display:block}.code-card strong{font-size:15px;line-height:1.16}.experience-card{background:#fff;align-items:center;gap:10px;padding:11px 14px;display:flex;position:absolute;bottom:1%;right:1%;box-shadow:0 8px 20px #14253e1f}.experience-card strong{color:var(--blue);letter-spacing:-2px;font-size:34px}.experience-card span{letter-spacing:.8px;font:8px/1.35 DM Mono,monospace}.side-label{color:#718099;letter-spacing:1.4px;font:8px DM Mono,monospace;position:absolute;top:31%;right:-11%;transform:rotate(90deg)}.ticker{background:var(--navy);color:#fff;white-space:nowrap;padding:16px 0;overflow:hidden;transform:rotate(-1deg)scale(1.015)}.ticker div{letter-spacing:2px;font:700 11px DM Mono,monospace;animation:25s linear infinite marquee;display:inline-block}.ticker b{color:var(--lime);margin:0 20px}.section-pad{padding:125px 9vw}.section-label{color:var(--blue)}.about-grid{grid-template-columns:1.2fr .8fr;align-items:end;gap:9vw;margin:40px 0 78px;display:grid}.about-grid h2,.skills-intro h2,.projects-heading h2,.contact-grid h2{margin:0;font-size:clamp(42px,5.4vw,74px);line-height:1.02}.about-copy p{color:var(--muted);font-size:14px;line-height:1.8}.line-button{border:0;border-bottom:1px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;margin-top:10px;padding:0 0 8px;font-size:11px;font-weight:800}.stat-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.stat-row div{border-right:1px solid var(--line);padding:25px 28px}.stat-row div:first-child{padding-left:0}.stat-row div:last-child{border:0}.stat-row strong{color:var(--blue);letter-spacing:-4px;font-size:52px;line-height:1;display:block}.stat-row strong span{color:var(--ink)}.stat-row p{color:#657187;letter-spacing:.5px;margin:14px 0 0;font:9px/1.55 DM Mono,monospace}.skills-section{background:#e9f4ff;grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.skills-intro>p:last-child{color:#617086;max-width:310px;margin-top:29px;font-size:14px;line-height:1.8}.skill-list{border-top:1px solid #c7d9eb}.skill-row{border-bottom:1px solid #c7d9eb;grid-template-columns:47px 1fr 1.1fr 25px;align-items:center;gap:14px;min-height:93px;display:grid}.skill-row>span{color:var(--blue);font:10px DM Mono,monospace}.skill-row h3{letter-spacing:-1px;margin:0;font-size:22px}.skill-row p{color:#647086;margin:0;font-size:12px;line-height:1.6}.skill-row i{color:var(--blue);font-size:21px;font-style:normal}.projects-heading{justify-content:space-between;align-items:end;gap:4vw;margin-bottom:48px;display:flex}.projects-heading>p{max-width:280px;color:var(--muted);margin:0;font-size:13px;line-height:1.75}.project-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.project-card{border:1px solid var(--line);background:#fff;transition:transform .25s,box-shadow .25s}.project-card:hover{transform:translateY(-7px);box-shadow:0 18px 30px #1225421f}.project-art{height:230px;padding:18px;position:relative;overflow:hidden}.project-art>span{color:#0c162873;font:10px DM Mono,monospace}.orange .project-art{background:#ffd35e}.lime .project-art{background:var(--lime)}.purple .project-art{background:#c9bbff}.project-window{background:#fffdf8;width:68%;height:61%;padding:12px;position:absolute;bottom:10%;right:9%;transform:rotate(-5deg);box-shadow:11px 12px #0c16282e}.project-window i{background:#ff765a;border-radius:50%;width:5px;height:5px;margin-right:3px;display:inline-block}.project-window i:nth-child(2){background:#ffca53}.project-window i:nth-child(3){background:#75d788}.project-window b{letter-spacing:-1.5px;margin-top:28px;font-size:21px;display:block}.project-window small{color:#607088;font-size:8px}.project-copy{padding:22px}.project-copy>p:first-child{color:var(--blue);text-transform:uppercase;letter-spacing:.7px;font:9px DM Mono,monospace}.project-copy h3{letter-spacing:-1.5px;margin:8px 0 14px;font-size:25px}.project-copy div{flex-wrap:wrap;gap:5px;display:flex}.project-copy div span{color:#59677c;border:1px solid #d8e0e9;padding:5px 7px;font:8px DM Mono,monospace}.project-description{color:#68758a;margin:17px 0 0;font-size:12px;line-height:1.7}.project-link{border:0;border-bottom:2px solid var(--blue);color:var(--ink);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:14px;margin-top:22px;padding:0 0 7px;font-size:10px;font-weight:800;transition:color .2s,gap .2s,border-color .2s;display:inline-flex}.project-link span{color:var(--blue);font-size:17px;line-height:.7;transition:transform .2s}.project-link:hover{color:var(--blue);border-color:var(--ink);gap:20px}.project-link:hover span{transform:translate(2px,-2px)}.project-link:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.contact-section{background:var(--blue);color:#fff;position:relative;overflow:hidden}.contact-section:after{content:"";border:1px solid #ffffff47;border-radius:50%;width:460px;height:460px;position:absolute;bottom:-260px;right:-100px;box-shadow:0 0 0 55px #ffffff0d,0 0 0 110px #ffffff0a}.contact-section .section-label,.contact-section .eyebrow{color:var(--cyan)}.contact-grid{z-index:1;grid-template-columns:1.25fr .75fr;align-items:end;gap:10vw;margin-top:45px;display:grid;position:relative}.contact-grid h2{margin:17px 0 35px}.contact-grid h2 em{color:var(--lime)}.email-link{color:#fff;border-bottom:2px solid #fff;padding-bottom:8px;font-size:15px;font-weight:800;text-decoration:none}.phone-link{color:var(--cyan);letter-spacing:.5px;margin-top:18px;font:600 12px DM Mono,monospace;text-decoration:none;display:table}.phone-link:hover{color:var(--lime)}.contact-note{border-top:1px solid #ffffff6b;padding:25px 0}.contact-note span{color:var(--cyan);font:10px DM Mono,monospace}.contact-note p{max-width:270px;margin:17px 0 23px;font-size:14px;line-height:1.75}.contact-note button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff9;padding:12px 14px;font-size:10px;font-weight:800}.contact-note button span{margin-left:12px;font-size:15px}footer{background:var(--navy);color:#aeb9ce;justify-content:space-between;align-items:center;min-height:94px;padding:0 6vw;display:flex}footer p{margin:0;font:9px DM Mono,monospace}footer .brand{color:#fff}footer div{gap:8px;display:flex}footer a{color:#fff;border:1px solid #5f6d86;border-radius:50%;place-items:center;width:28px;height:28px;font:9px DM Mono,monospace;text-decoration:none;display:grid}@keyframes marquee{to{transform:translate(-50%)}}@media (width<=800px){.topbar{height:68px;padding:0 7vw}.nav-links{z-index:4;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;gap:3px;padding:15px 7vw 20px;display:none;position:absolute;top:68px;left:0;right:0}.nav-links.open{display:flex}.nav-links button{text-align:left;width:max-content}.availability{display:none}.menu-toggle{background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;margin-left:auto;display:flex}.menu-toggle span{background:var(--ink);width:20px;height:2px}.hero-section{grid-template-columns:1fr;min-height:auto;padding:13vw 7vw 8vw}.hero-visual{width:100%;height:480px;min-height:0}.hero-meta{margin-top:35px}.side-label{right:-12%}.section-pad{padding:86px 7vw}.about-grid,.skills-section,.contact-grid{grid-template-columns:1fr;gap:30px}.about-grid{margin:30px 0 53px}.stat-row{grid-template-columns:1fr 1fr}.stat-row div{border-bottom:1px solid var(--line);padding:22px!important}.stat-row div:first-child{padding-left:0!important}.stat-row div:last-child{border-bottom:0}.stat-row div:nth-child(2){border-right:0}.skills-section{display:grid}.projects-heading{display:block}.projects-heading>p{margin-top:22px}.project-grid{grid-template-columns:1fr;gap:18px}.project-art{height:245px}.contact-section:after{width:350px;height:350px}.contact-note{padding-bottom:0}}@media (width<=450px){h1{font-size:52px}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-visual{height:390px}.code-card{top:14%}.experience-card{right:0}.portrait-wrap{width:66%;height:75%}.shape-one{height:72%}.side-label{display:none}.stat-row strong{font-size:39px}.skill-row{grid-template-columns:32px 1fr 20px;padding:18px 0}.skill-row p{display:none}.project-art{height:210px}.contact-grid h2,.about-grid h2,.skills-intro h2,.projects-heading h2{font-size:43px}footer{flex-wrap:wrap;gap:18px;min-height:130px;padding:25px 7vw}footer p{order:3;width:100%}}.contact-form{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a235429;border:1px solid #ffffff57;gap:15px;padding:24px;display:grid}.contact-form label{color:#c9f8f0;letter-spacing:.9px;text-transform:uppercase;gap:7px;font:700 9px DM Mono,monospace;display:grid}.contact-form input,.contact-form textarea{resize:vertical;color:#fff;background:0 0;border:0;border-bottom:1px solid #ffffff73;border-radius:0;outline:0;width:100%;padding:10px 0;font:13px Manrope,sans-serif}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ffffffa3}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--lime)}.contact-form>button,.modal-contact{color:var(--ink);background:var(--lime);border:0;justify-self:start;padding:13px 15px;font-size:10px;font-weight:800}.form-message{color:#d5fff4;margin:0;font-size:12px;line-height:1.6}.form-popup-backdrop{z-index:40;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#071121a8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.form-popup{width:min(390px,100%);color:var(--ink);background:var(--cream);text-align:center;padding:42px 34px 32px;position:relative;box-shadow:0 30px 70px #050d1b59}.form-popup>span{width:48px;height:48px;color:var(--ink);background:var(--lime);border-radius:50%;place-items:center;margin:0 auto 18px;font-size:24px;font-weight:800;display:grid}.form-popup.error>span{color:#fff;background:#e75858}.form-popup h2{margin:0;font-size:36px}.form-popup p{color:var(--muted);margin:14px auto 25px;font-size:13px;line-height:1.7}.form-popup-close{width:32px;height:32px;color:var(--ink);background:#e8edf2;border:0;font-size:22px;line-height:1;position:absolute;top:12px;right:13px}.form-popup-button{color:var(--ink);background:var(--lime);text-transform:uppercase;border:0;padding:13px 25px;font-size:10px;font-weight:800}.project-modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#071121a8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.project-modal{width:min(510px,100%);color:var(--ink);background:var(--cream);padding:45px;position:relative;box-shadow:0 30px 70px #050d1b59}.project-modal>p:first-of-type{color:var(--blue);letter-spacing:.9px;text-transform:uppercase;margin:0 0 12px;font:10px DM Mono,monospace}.project-modal h2{margin:0;font-size:clamp(42px,7vw,64px)}.modal-tags{flex-wrap:wrap;gap:6px;margin:22px 0;display:flex}.modal-tags span{border:1px solid var(--line);color:#53637a;padding:5px 7px;font:9px DM Mono,monospace}.modal-description{max-width:420px;color:var(--muted);margin:0 0 28px;font-size:14px;line-height:1.75}.modal-close{width:34px;height:34px;color:var(--ink);background:#e8edf2;border:0;font-size:24px;line-height:1;position:absolute;top:13px;right:14px}.modal-close:hover,.contact-form>button:hover,.modal-contact:hover{filter:brightness(.95)}@media (width<=800px){.contact-form{max-width:570px}}@media (width<=450px){.contact-form{padding:19px}.project-modal{padding:38px 24px 28px}}.site-shell:before{content:"";pointer-events:none;z-index:20;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f5efe6}.hero-section{position:relative}.hero-section:after{content:"";pointer-events:none;border:1px solid #dce8fc;border-radius:50%;width:42vw;max-width:630px;height:42vw;max-height:630px;position:absolute;top:-25vw;right:-18vw;box-shadow:0 0 0 60px #e0efff66,0 0 0 120px #e0efff2e}.hero-copy,.hero-visual{z-index:1;position:relative}.stack-proof{color:#7c8798;align-items:center;gap:7px;margin-top:18px;font:9px DM Mono,monospace;display:flex}.stack-proof span{margin-right:3px}.stack-proof b{color:#45546b;border:1px solid #dbe1e8;border-radius:3px;padding:5px 7px;font-weight:500}.hero-grid{-webkit-mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000);mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000)}.shape-one{background:linear-gradient(145deg,#c8f6f0,#94e5eb);box-shadow:inset 15px 15px 35px #ffffff59}.shape-two{background:radial-gradient(circle at 30% 30%, #f6ffb5, var(--lime));animation:5s ease-in-out infinite alternate drift;box-shadow:0 12px 30px #a2b91933}.portrait-wrap{box-shadow:20px 24px 40px #14304a2e}.portrait-wrap img{transition:transform .6s}.hero-visual:hover .portrait-wrap img{transform:scale(1.04)}.visual-stamp{border:1px dashed var(--blue);width:75px;height:75px;color:var(--blue);background:#f7f5efd9;border-radius:50%;place-items:center;animation:14s linear infinite spin;display:grid;position:absolute;bottom:8%;left:9%}.visual-stamp span{letter-spacing:1px;font:7px DM Mono,monospace;transform:rotate(-26deg)}.project-card{grid-column:span 2}.project-card:first-child,.project-card:nth-child(2){grid-column:span 3}.project-art:after{content:"";border:1px solid #0c16282e;border-radius:50%;width:170px;height:170px;position:absolute;top:-65px;left:-50px}.project-art>span,.project-window{z-index:1;position:relative}.project-window{position:absolute}.project-window b{margin-top:19px}.browser-dots i{background:#ff765a;border-radius:50%;width:5px;height:5px;margin-right:3px;display:inline-block}.browser-dots i:nth-child(2){background:#ffca53}.browser-dots i:nth-child(3){background:#75d788}.mock-content{grid-template-columns:1fr 1fr;gap:4px;margin-top:11px;display:grid}.mock-content u{background:#dfe7f5;grid-column:span 2;height:5px;text-decoration:none;display:block}.mock-content u:nth-child(2){width:65%}.mock-content u:nth-child(3){width:83%}.mock-content mark{background:var(--blue);width:32px;height:17px;margin-top:2px;display:block}.orange .mock-content mark{background:#f06442}.lime .mock-content mark{background:#5a9334}.purple .mock-content mark{background:#6c52c7}@keyframes drift{to{transform:translateY(-12px)rotate(12deg)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=800px){.hero-section:after{width:65vw;height:65vw;top:-28vw;right:-30vw}.project-grid{grid-template-columns:1fr}.project-card,.project-card:first-child,.project-card:nth-child(2){grid-column:auto}}.hero-section{grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:7vw;padding-top:5vw;padding-bottom:5vw}.hero-section:after{display:none}.hero-copy{padding:18px 0}.hero-copy .eyebrow{background:#fff;border:1px solid #d8e2ee;border-radius:99px;align-items:center;width:max-content;padding:7px 10px;display:inline-flex}.hero-copy h1{max-width:620px;margin-top:25px}.hero-description{max-width:435px}.hero-meta{margin-top:40px}.hero-visual{background:var(--navy);border-radius:24px;height:clamp(470px,46vw,610px);min-height:0;overflow:hidden;box-shadow:0 26px 55px #1329462e}.hero-grid{opacity:.18;background-image:linear-gradient(#a7f4f0cc 1px,#0000 1px),linear-gradient(90deg,#a7f4f0cc 1px,#0000 1px);inset:0;-webkit-mask-image:none;mask-image:none}.shape-one{clip-path:polygon(26% 0,100% 11%,87% 100%,0 86%);width:80%;height:75%;box-shadow:none;background:linear-gradient(145deg,#1763ef 0%,#3a89ff 54%,#a7f4f0 55% 100%);bottom:-14%;right:-11%}.shape-two{background:var(--lime);width:98px;height:98px;box-shadow:none;animation:none;top:14%;left:8%}.portrait-wrap{clip-path:none;filter:contrast(1.03)saturate(1.04);width:58%;height:89%;box-shadow:none;border-radius:180px 180px 0 0;bottom:0;right:5%}.portrait-wrap img{object-position:54% center}.portrait-overlay{background:linear-gradient(#101d360a,#101d362e)}.code-card{z-index:3;box-shadow:none;background:#0c1a31eb;border:1px solid #a7f4f059;padding:15px 17px;top:auto;bottom:19%;left:7%;transform:none}.experience-card{z-index:4;border-left:4px solid var(--lime);padding:13px 15px;bottom:8%;right:0}.visual-stamp{z-index:3;width:67px;height:67px;color:var(--cyan);border-color:var(--cyan);background:0 0;bottom:7%;left:8%}.profile-caption{z-index:3;color:#fff;flex-direction:column;gap:5px;display:flex;position:absolute;top:7%;left:7%}.profile-caption span{letter-spacing:1.4px;font-size:11px;font-weight:800}.profile-caption small{color:var(--cyan);letter-spacing:1px;font:8px DM Mono,monospace}.side-label{display:none}.stack-proof{margin-top:21px}.stack-proof b{background:#fff}.ticker{margin-top:0;padding:18px 0;transform:none}.about-section{padding-top:135px;padding-bottom:135px}.skills-section{padding-top:115px;padding-bottom:115px}.projects-section{padding-top:135px}.project-grid{grid-template-columns:repeat(3,1fr)}.project-card,.project-card:first-child,.project-card:nth-child(2){grid-column:auto}.project-card{border-radius:14px;overflow:hidden}.project-art{height:250px}.project-window{width:70%;height:64%}.projects-heading{align-items:flex-end}.contact-section{padding-top:115px;padding-bottom:115px}@media (width<=1000px){.hero-section{grid-template-columns:1fr 1fr;gap:4vw;padding-left:7vw;padding-right:7vw}.hero-visual{height:500px}.code-card,.profile-caption{left:5%}.project-grid{gap:16px}.project-copy{padding:18px}.project-copy h3{font-size:22px}}@media (width<=800px){.hero-section{grid-template-columns:1fr;gap:42px;padding:11vw 7vw 12vw}.hero-copy{padding:0}.hero-visual{max-width:570px;height:500px}.profile-caption,.code-card{left:7%}.project-grid{grid-template-columns:1fr}.project-card,.project-card:first-child,.project-card:nth-child(2){grid-column:auto}.project-art{height:270px}}@media (width<=450px){.hero-visual{border-radius:18px;height:415px}.portrait-wrap{width:63%;height:82%}.profile-caption{top:6%}.experience-card{bottom:9%;right:0}.code-card{bottom:22%}.visual-stamp{width:56px;height:56px;bottom:7%}.stack-proof{flex-wrap:wrap}.hero-meta{margin-top:33px}.project-art{height:225px}}.project-card.has-screenshot .project-art{aspect-ratio:2.2;background:#eaf2ff;height:auto;padding:0}.maira .project-art{background:#edf1f8}.reeni .project-art{background:#21060e}.project-screenshot{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}@media (width<=800px){.project-card.has-screenshot .project-art{aspect-ratio:2.2}}
