/* GIN V18 — clean Swiss / experimental portfolio */
:root{--ink:#080808;--mint:#00f5a0;--display:"Anton",Impact,sans-serif;--body:"Manrope",Arial,sans-serif;--g:clamp(18px,4.5vw,82px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font:400 15px/1.7 var(--body);overflow-x:clip}body.v18-open{overflow:hidden}p{font-size:15px;line-height:1.75}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input{font:inherit}button{cursor:pointer}h1,h2,h3{margin:0}.mint{color:var(--mint)}.v18-shell{width:min(calc(100% - var(--g)*2),1480px);margin-inline:auto}.v18-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.v18-skip{position:fixed;top:-80px;background:var(--mint);padding:10px;z-index:200}.v18-skip:focus{top:10px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.v18-head{height:70px;position:sticky;top:0;z-index:110;background:white;border-bottom:1px solid #ddd;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 var(--g)}.v18-brand img{height:55px;width:auto;max-width:190px}.v18-head>span{font:800 9px var(--body);letter-spacing:.09em}.v18-menu-button{display:flex;gap:25px;align-items:center;padding:7px 8px 7px 17px;border:1px solid black;background:white;font:800 11px var(--body);transition:.2s}.v18-menu-button b{background:black;color:white;padding:7px;font-size:18px}.v18-menu-button:hover,.v18-menu-button[aria-expanded=true]{background:black;color:white}.v18-menu-button:hover b,.v18-menu-button[aria-expanded=true] b{background:var(--mint);color:black}.v18-nav{position:fixed;inset:70px 0 0;background:#080808;color:white;z-index:109;padding:25px var(--g);overflow:auto}.v18-nav[hidden]{display:none!important}.v18-nav>span,.v18-nav>p{font:800 10px var(--body);letter-spacing:.12em}.v18-nav a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #555;font:400 clamp(45px,6vw,97px)/1.12 var(--display);padding:10px 0;transition:.2s}.v18-nav a small{font:800 11px var(--body)}.v18-nav a:hover{color:var(--mint);padding-left:12px}
.v18-micro,.v18-overline{border-top:1px solid #aaa;padding-top:13px;display:flex;justify-content:space-between;gap:18px;font:800 10px var(--body);letter-spacing:.08em}.v18-hero{min-height:calc(100svh - 70px);display:flex;flex-direction:column;justify-content:space-between;background:#080808;color:white;padding:22px var(--g)}.v18-hero .v18-overline{border-color:#555}.v18-hero-content{position:relative;min-height:490px;padding-top:45px}.v18-hero-content>small{font:800 11px var(--body);color:var(--mint)}.v18-hero h1{font:400 clamp(85px,19vw,325px)/.88 var(--display);letter-spacing:-.035em;position:relative;z-index:2;white-space:nowrap;margin:20px 0 30px}.v18-hero-symbol{position:absolute;top:21%;right:7%;width:clamp(155px,22vw,380px);aspect-ratio:1;display:grid;place-items:center;pointer-events:none;z-index:3}.v18-hero-symbol img{width:65%;filter:brightness(0) invert(1);transform:rotate(-10deg)}.v18-hero-symbol i{position:absolute;inset:-9%;border:1px solid #777;border-radius:50%;transform:rotate(40deg) rotateX(70deg)}.v18-hero-strap{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #555;padding-top:18px;position:relative;z-index:4}.v18-hero-strap strong{font:800 clamp(14px,1.7vw,25px)/1.2 var(--body)}.v18-hero-strap p{max-width:460px;color:#ccc}.v18-hero-bottom{border-top:1px solid #555;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;font:800 10px var(--body)}.v18-pill{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;border:1px solid var(--mint);padding:14px 18px;background:var(--mint);color:black;font:800 11px var(--body);transition:.25s}.v18-pill:hover{background:black;color:var(--mint)}.v18-pill.outlined{background:white;color:black;border-color:black}.v18-pill.outlined:hover{background:black;color:white}
.v18-manifest,.v18-showcase,.v18-journal-tease,.v18-archive,.v18-career,.v18-blog{padding-block:clamp(75px,8vw,130px)}.v18-manifest h2{font:400 clamp(68px,11vw,180px)/.98 var(--display);margin:50px 0}.v18-manifest h2 span{color:#777}.v18-stats{display:grid;grid-template-columns:repeat(3,1fr) 1.2fr;gap:20px;border-top:1px solid #ccc;padding-top:20px}.v18-stats strong{display:block;font:400 clamp(38px,5vw,82px)/1.2 var(--display)}.v18-stats small{font:800 10px var(--body)}.v18-stats p{color:#555}.v18-section-title{display:flex;justify-content:space-between;align-items:end;gap:25px;margin:35px 0 55px}.v18-section-title h2,.v18-universe h2,.v18-journal-tease h2{font:400 clamp(68px,10vw,160px)/.98 var(--display)}.v18-round{display:grid;place-items:center;background:var(--mint);border-radius:50%;width:78px;height:78px;font-size:39px}.v18-round:hover{background:black;color:white}
.v18-art-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(43px,5.5vw,85px) clamp(13px,2.5vw,35px);align-items:start}.v18-project{grid-column:span 6;min-width:0}.v18-project:nth-child(8n+1){grid-column:2/span 5}.v18-project:nth-child(8n+2){grid-column:8/span 5;margin-top:75px}.v18-project:nth-child(8n+3){grid-column:1/span 6}.v18-project:nth-child(8n+4){grid-column:8/span 4;margin-top:55px}.v18-project:nth-child(8n+5){grid-column:3/span 4}.v18-project:nth-child(8n+6){grid-column:8/span 5;margin-top:65px}.v18-project:nth-child(8n+7){grid-column:1/span 5}.v18-project:nth-child(8n+8){grid-column:7/span 5;margin-top:45px}.v18-project[hidden]{display:none!important}.v18-project-art{position:relative;aspect-ratio:4/3;background:#e7e7e7;overflow:hidden}.v18-project-art>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.v18-project:hover img{transform:scale(1.045)}.v18-view{display:flex;align-items:center;gap:18px;position:absolute;bottom:12px;right:12px;background:white;padding:8px;font:800 10px var(--body);opacity:0;transform:translateY(9px);transition:.25s}.v18-view b{background:var(--mint);padding:5px 8px;font-size:19px}.v18-project:hover .v18-view{opacity:1;transform:none}.v18-project-meta{display:grid;grid-template-columns:1fr 25px;gap:5px;padding-top:12px}.v18-project-meta small{font:800 9px var(--body);color:#666}.v18-project-meta strong{grid-column:1;font:800 clamp(17px,1.7vw,27px)/1.3 var(--body)}.v18-project-meta b{grid-column:2;grid-row:1/3;font-size:23px}.v18-project:hover .v18-project-meta strong{color:#00865b}.v18-cover{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:clamp(15px,2vw,30px);background:#111;color:white;position:relative;overflow:hidden}.v18-project:nth-child(3n+2) .v18-cover{background:#e7e7e7;color:black}.v18-cover>div{display:flex;justify-content:space-between;gap:10px;font:800 9px var(--body);z-index:1}.v18-cover strong{font:400 clamp(36px,5vw,90px)/.98 var(--display);overflow-wrap:anywhere;position:relative;z-index:1}.v18-cover>span{font:800 10px var(--body);z-index:1}.v18-cover i{position:absolute;right:-35%;top:10%;width:100%;aspect-ratio:1;border:1px solid #8885;border-radius:50%}
.v18-last{border-top:1px solid #ccc;margin-top:65px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;font:800 10px var(--body)}.v18-universe{background:#080808;color:white;padding-block:clamp(70px,8vw,120px)}.v18-universe .v18-micro{border-color:#555}.v18-universe h2{margin:60px 0}.v18-system{display:grid;grid-template-columns:.82fr 1.18fr;gap:7vw;align-items:center}.v18-orbit{width:min(100%,470px);aspect-ratio:1;border:1px solid #666;border-radius:50%;display:grid;place-items:center;position:relative}.v18-orbit strong{font:400 clamp(90px,11vw,185px) var(--display)}.v18-orbit i{position:absolute;inset:17%;border:1px solid #999;border-radius:50%;transform:rotate(35deg) scaleX(.58)}.v18-orbit b{position:absolute;top:10%;right:0;font-size:35px;color:var(--mint)}.v18-system a{display:grid;grid-template-columns:35px 1fr 25px;align-items:center;gap:15px;padding:25px 8px;border-top:1px solid #555;transition:.2s}.v18-system a:last-child{border-bottom:1px solid #555}.v18-system a small{font:800 10px var(--body)}.v18-system h3{font:400 clamp(29px,3vw,50px) var(--display)}.v18-system p{color:#aaa;margin:8px 0 0}.v18-system a:hover{background:var(--mint);color:black}.v18-system a:hover p{color:#333}.v18-journal-tease h2{margin:40px 0}.v18-journal-row{border-top:1px solid #ccc;display:grid;grid-template-columns:200px 1fr 25px;gap:16px;align-items:center;padding:24px 0}.v18-journal-row small{font:800 10px var(--body)}.v18-journal-row strong{font:800 clamp(20px,2.2vw,31px) var(--body)}.v18-journal-row:hover{color:#00875c}.v18-journal-tease>.v18-pill{margin-top:35px}
.v18-intro{padding-block:clamp(55px,6vw,100px)}.v18-intro h1{font:400 clamp(87px,16vw,260px)/.90 var(--display);margin:45px 0}.v18-intro p{max-width:650px;font-size:18px}.v18-archive{padding-top:0}.v18-filterbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;border-block:1px solid #ccc;margin-bottom:45px;padding:15px 0}.v18-filterbar strong{font:800 10px var(--body)}.v18-filters{display:flex;flex-wrap:wrap;gap:6px}.v18-filters button{border:1px solid #aaa;background:white;padding:9px 12px;font:800 10px var(--body)}.v18-filters button:hover,.v18-filters button[aria-pressed=true]{background:black;color:var(--mint)}.v18-filterbar input,.v18-blogbar input{border:0;border-bottom:1px solid black;padding:9px;background:white;color:black;font:700 11px var(--body)}
.v18-about{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding-bottom:100px}.v18-about-mark{min-height:500px;background:#080808;color:white;padding:24px;position:relative;display:grid;place-items:center}.v18-about-mark img{max-width:60%;filter:brightness(0) invert(1);transition:transform .5s}.v18-about-mark:hover img{transform:rotate(8deg)}.v18-about-mark span,.v18-about-mark small{position:absolute;font:800 10px var(--body)}.v18-about-mark span{top:22px;left:22px}.v18-about-mark small{bottom:22px;right:22px;color:var(--mint)}.v18-about h2{font:400 clamp(70px,7vw,128px)/1 var(--display);margin:25px 0}.v18-link{display:inline-block;border-bottom:1px solid black;margin-top:20px;padding-bottom:8px;font:800 11px var(--body)}.v18-career>div:not(.v18-micro){display:grid;grid-template-columns:40px 1fr 1fr 25px;gap:20px;align-items:center;padding:35px 0;border-bottom:1px solid #ccc}.v18-career h3{font:400 clamp(43px,5vw,85px) var(--display)}.v18-career small{font:800 10px var(--body)}.v18-blog{padding-top:0}.v18-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:5vw;align-items:center}.v18-feature img{width:100%;aspect-ratio:16/10;object-fit:cover}.v18-feature h2{font:400 clamp(44px,4.6vw,80px)/1.1 var(--display);margin:15px 0}.v18-feature span,.v18-feature b{font:800 10px var(--body)}.v18-blogbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:80px 0 35px;border-top:1px solid #ccc;padding-top:18px}.v18-blogbar strong{font:800 10px var(--body)}.v18-postgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 25px}.v18-post img{width:100%;aspect-ratio:16/9;object-fit:cover}.v18-post small,.v18-post b{display:block;font:800 10px var(--body);margin-top:15px}.v18-post h3{font:800 clamp(20px,2.2vw,33px)/1.3 var(--body);margin:12px 0}.v18-post p{color:#555}.v18-contact-page{background:#080808;color:white;min-height:75vh;padding:100px 0}.v18-contact-page h1{font:400 clamp(120px,22vw,370px)/.9 var(--display);margin:70px 0}.v18-contact-page a{font:800 clamp(20px,3vw,47px) var(--body);border-bottom:1px solid #aaa}
.v18-foot{background:#080808;color:white;padding:28px var(--g) 23px}.v18-overline{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #777;padding-top:15px;font:800 10px var(--body)}.v18-footer-statement{border-bottom:1px solid #555;padding:clamp(80px,8vw,130px) 0}.v18-footer-statement>span{display:block;font:400 clamp(90px,16vw,265px)/.9 var(--display)}.v18-contact{display:inline-flex;gap:45px;align-items:center;border:1px solid white;padding:9px 10px 9px 20px;margin-top:35px;font:800 16px var(--body);transition:.2s}.v18-contact b{background:var(--mint);color:black;padding:6px 13px;font-size:26px}.v18-contact:hover{background:var(--mint);color:black}.v18-contact:hover b{background:black;color:var(--mint)}.v18-foot-cols{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:5vw;border-bottom:1px solid #555;padding:40px 0}.v18-foot-cols img{width:200px;filter:brightness(0) invert(1)}.v18-foot-cols strong{display:block;margin-bottom:20px;font:800 11px var(--body)}.v18-foot-cols a{display:block;font:600 13px var(--body);margin-bottom:10px}.v18-foot-cols a:hover{color:var(--mint)}.v18-foot-cols p{color:#bbb}.v18-legal{display:flex;justify-content:space-between;gap:15px;font:800 10px var(--body);padding-top:20px}
body.case-page .case-main{background:white!important;color:#080808!important}body.case-page .case-intro{max-width:1480px;margin:auto;padding:70px var(--g) 45px!important}body.case-page .case-intro h1{font:400 clamp(59px,8vw,135px)/1 var(--display)!important}body.case-page .case-reading{max-width:1350px;margin:auto;padding:70px var(--g)!important}body.case-page .case-chapter h2{font:400 clamp(37px,4vw,68px)/1.1 var(--display)!important}body.case-page .case-chapter p,body.case-page .case-chapter li{font:400 15px/1.85 var(--body)!important}body.case-page .case-next{background:#080808!important;color:white!important}
@media(max-width:1000px){.v18-stats{grid-template-columns:repeat(3,1fr)}.v18-stats p{grid-column:1/-1}.v18-universe .v18-system{gap:30px}}
@media(max-width:760px){.v18-head{height:64px}.v18-nav{top:64px}.v18-head>span{display:none}.v18-brand img{height:44px}.v18-hero{min-height:auto}.v18-hero-content{min-height:390px}.v18-hero h1{font-size:clamp(70px,18.5vw,150px);margin-top:55px}.v18-hero-symbol{width:180px;top:28%;right:0}.v18-hero-strap{align-items:start}.v18-hero-strap strong{font-size:14px}.v18-hero-strap p{font-size:13px}.v18-hero-bottom>span,.v18-hero .v18-overline span:nth-child(2){display:none}.v18-manifest h2{font-size:clamp(60px,11vw,100px)}.v18-stats strong{font-size:clamp(38px,7vw,60px)}.v18-section-title h2,.v18-universe h2,.v18-journal-tease h2{font-size:clamp(65px,12vw,110px)}.v18-art-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 12px}.v18-art-grid .v18-project:nth-child(n){grid-column:auto;margin-top:0}.v18-art-grid .v18-project:nth-child(5n+1){grid-column:span 2}.v18-view{opacity:1;transform:none;font-size:0;padding:5px}.v18-view b{font-size:17px}.v18-project-meta strong{font-size:clamp(17px,3.8vw,26px)}.v18-project-meta small{font-size:8px}.v18-system{grid-template-columns:1fr}.v18-orbit{max-width:270px;margin:auto}.v18-journal-row{grid-template-columns:1fr 25px}.v18-journal-row small{grid-column:1/-1}.v18-intro h1{font-size:clamp(82px,16vw,155px)}.v18-about{grid-template-columns:1fr}.v18-about-mark{min-height:380px}.v18-career>div:not(.v18-micro){grid-template-columns:35px 1fr 25px}.v18-career p{grid-column:2}.v18-feature{grid-template-columns:1fr}.v18-postgrid{grid-template-columns:repeat(2,1fr)}.v18-foot-cols{grid-template-columns:1fr 1fr}.v18-foot-cols>div:first-child{grid-column:1/-1}}
@media(max-width:430px){.v18-menu-button{gap:12px}.v18-hero-content{min-height:410px}.v18-hero h1{font-size:clamp(63px,18.3vw,95px)}.v18-hero-symbol{width:125px;top:33%}.v18-hero-strap{display:block}.v18-hero-strap p{max-width:100%}.v18-manifest h2{font-size:clamp(51px,12vw,77px)}.v18-stats{grid-template-columns:1fr 1fr}.v18-stats strong{font-size:clamp(34px,9vw,55px)}.v18-art-grid{gap:30px 10px}.v18-project-meta strong{font-size:16px}.v18-blogbar{display:block}.v18-postgrid{grid-template-columns:1fr}.v18-foot-cols{grid-template-columns:1fr}.v18-foot-cols>div:first-child{grid-column:auto}.v18-footer-statement>span{font-size:clamp(68px,17vw,110px)}.v18-legal span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* GINX 2026 — an original Gin Nguyễn portfolio interpretation of a high-contrast creative direction blueprint.
   Existing project artwork, about characters, links and editorial content remain the original Gin assets. */
body.ginx-theme{--mint:#ccff00!important;--gin-accent:#ccff00!important;--gin-story-green:#ccff00!important;--gfv-green:#ccff00!important;--ginx-bg:#030014;--ginx-surface:#0e0b26;--ginx-rule:rgba(255,255,255,.16);--ginx-muted:rgba(255,255,255,.66);background:#030014;color:#fff;font-family:"Space Grotesk","Manrope",system-ui,sans-serif}
body.ginx-theme::selection,body.ginx-theme ::selection{background:#ccff00;color:#030014}
body.ginx-theme :is(.v18-head,.v18-nav){font-family:"IBM Plex Mono",monospace}
body.ginx-theme .v18-head{height:80px;background:rgba(3,0,20,.94)!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.16)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
body.ginx-theme .v18-head>span{color:rgba(255,255,255,.65)!important;font-size:10px;letter-spacing:.16em}
body.ginx-theme .v18-brand img{filter:brightness(0) invert(1);max-height:58px}
body.ginx-theme .v18-menu-button{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.45)!important;font:600 11px "IBM Plex Mono",monospace!important;letter-spacing:.14em!important;border-radius:2px!important;min-height:44px;padding:5px 6px 5px 16px!important;transition:border-color .2s,color .2s!important}
body.ginx-theme .v18-menu-button b{background:#ccff00!important;color:#030014!important;border-radius:1px!important;min-width:33px;min-height:33px}
body.ginx-theme .v18-menu-button:hover{border-color:#ccff00!important;color:#ccff00!important}
body.ginx-theme .ginx-header-actions{display:flex;align-items:center;gap:10px}
body.ginx-theme .ginx-header-links{display:flex;align-items:center;gap:clamp(12px,2.1vw,34px);margin-right:clamp(12px,1.5vw,26px)}
body.ginx-theme .ginx-header-links a{font:600 10px/1.2 "IBM Plex Mono",monospace;letter-spacing:.12em;color:#bdbcc8;transition:color .2s}
body.ginx-theme .ginx-header-links a:hover,body.ginx-theme .ginx-header-links a[aria-current="page"]{color:#ccff00}
body.ginx-theme .ginx-commission{background:#ccff00;border:1px solid #ccff00;padding:13px 18px;color:#030014;font:600 10px/1 "IBM Plex Mono",monospace;letter-spacing:.1em;cursor:pointer;transition:background .25s,color .25s}
body.ginx-theme .ginx-commission:hover{background:transparent;color:#ccff00}
body.ginx-theme .v18-nav{position:fixed;inset:0 0 0 auto;top:0!important;z-index:1002!important;width:min(100%,640px);max-width:100%;height:100dvh;background:#24242a!important;border-left:1px solid rgba(255,255,255,.13);color:white!important;padding:104px clamp(26px,5vw,70px) 40px!important;overflow:auto;box-shadow:-40px 0 90px rgba(0,0,0,.4);transform:translateX(0);transition:transform .55s cubic-bezier(.19,1,.22,1),opacity .4s}
body.ginx-theme .v18-nav[hidden]{display:none!important}
body.ginx-theme .v18-nav.ginx-exiting{transform:translateX(100%);opacity:.25;pointer-events:none}
body.ginx-theme .v18-nav>span{color:#ccff00;font:600 11px "IBM Plex Mono",monospace;letter-spacing:.14em}
body.ginx-theme .v18-nav>a{font:400 clamp(45px,6.5vw,87px)/1 "Anton",Impact,sans-serif!important;border-color:rgba(255,255,255,.22)!important;letter-spacing:.005em!important}
body.ginx-theme .v18-nav>a:hover{color:#ccff00!important;background:transparent!important}
body.ginx-theme .v18-nav>a small{color:#94949b!important}
body.ginx-theme .v18-nav>p{color:#aaa!important}
body.ginx-theme .ginx-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.66);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
body.ginx-theme .ginx-drawer-head{position:absolute;left:clamp(26px,5vw,70px);right:clamp(26px,5vw,70px);top:22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:16px}
body.ginx-theme .ginx-drawer-close{font:600 12px "IBM Plex Mono",monospace;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);padding:11px 14px}
body.ginx-theme .ginx-drawer-close:hover{background:#ccff00;color:#030014}
body.ginx-theme .ginx-contact-pane[hidden],body.ginx-theme .ginx-menu-pane[hidden]{display:none!important}
body.ginx-theme .ginx-contact-pane h2{font:400 clamp(52px,8vw,90px)/.95 "Anton",Impact,sans-serif;margin:16px 0 30px}
body.ginx-theme .ginx-contact-pane form{display:grid;gap:18px}
body.ginx-theme .ginx-contact-pane label{display:grid;gap:7px;font:600 10px "IBM Plex Mono",monospace;color:#c5c5ce;letter-spacing:.1em}
body.ginx-theme .ginx-contact-pane :is(input,textarea,select){width:100%;background:transparent!important;border:0;border-bottom:1px solid #86868c;border-radius:0;color:white;padding:12px 0;font:500 15px "Space Grotesk",sans-serif;outline-offset:4px}
body.ginx-theme .ginx-contact-pane :is(input,textarea,select):focus{border-color:#ccff00;outline:none}
body.ginx-theme .ginx-contact-pane select option{background:#24242a;color:#fff}
body.ginx-theme .ginx-contact-pane textarea{min-height:110px;resize:vertical}
body.ginx-theme .ginx-send{background:#ccff00;color:#030014;border:1px solid #ccff00;font:600 13px "IBM Plex Mono",monospace;padding:18px;cursor:pointer}
body.ginx-theme .ginx-send:hover{background:transparent;color:#ccff00}
body.ginx-theme .ginx-form-note{font:400 11px/1.6 "Space Grotesk",sans-serif;color:#b3b3c2!important}
body.ginx-theme .ginx-hero{min-height:max(710px,calc(100svh - 80px));position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 55% 66%,#101339 0%,#07051b 48%,#030014 80%);color:#fff;padding:25px var(--g) 75px;display:flex;flex-direction:column;justify-content:space-between}
body.ginx-theme .ginx-atmosphere{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
body.ginx-theme .ginx-glow{position:absolute;inset:-25%;background:radial-gradient(circle at 50% 55%,rgba(39,66,140,.22),transparent 52%);filter:blur(10px)}
body.ginx-theme #ginx-canvas-host{position:absolute;inset:0;pointer-events:none}
body.ginx-theme #ginx-canvas-host canvas{display:block;width:100%;height:100%}
body.ginx-theme .ginx-topline,body.ginx-theme .ginx-bottomline{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:15px;font:500 10px/1.35 "IBM Plex Mono",monospace;letter-spacing:.12em;color:rgba(255,255,255,.7)}
body.ginx-theme .ginx-topline{border-top:1px solid rgba(255,255,255,.27);padding-top:15px}
body.ginx-theme .ginx-star{color:#ccff00;font-size:24px;line-height:1}
body.ginx-theme .ginx-stage{position:relative;z-index:2;width:100%;max-width:1660px;margin:0 auto;display:flex;align-items:center;min-height:clamp(550px,68vh,800px)}
body.ginx-theme .ginx-copy{position:relative;z-index:4;width:100%;padding:70px 0 110px;pointer-events:none}
body.ginx-theme .ginx-copy a{pointer-events:auto}
body.ginx-theme .ginx-eyebrow{display:flex;align-items:center;gap:10px;font:600 11px/1.5 "IBM Plex Mono",monospace;letter-spacing:.1em;color:#d8d8e5}
body.ginx-theme .ginx-status-dot{width:8px;height:8px;background:#ccff00;box-shadow:0 0 12px #ccff00;border-radius:50%;flex:none}
body.ginx-theme .ginx-copy h1{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:20px 0 25px;max-width:100%;text-transform:uppercase;letter-spacing:-.014em}
body.ginx-theme .ginx-copy .ginx-outline{font:400 clamp(42px,7vw,110px)/.96 "Anton",Impact,sans-serif;color:transparent;-webkit-text-stroke:1.1px rgba(255,255,255,.89);text-shadow:none;white-space:nowrap}
body.ginx-theme .ginx-copy .ginx-word{display:block;min-height:1em;font:400 clamp(74px,15.5vw,245px)/.94 "Anton",Impact,sans-serif;color:#ccff00!important;text-shadow:0 0 50px rgba(204,255,0,.06);white-space:nowrap}
body.ginx-theme .ginx-bio{max-width:520px;min-height:70px;font:400 clamp(14px,1.18vw,18px)/1.65 "Space Grotesk",sans-serif;color:rgba(255,255,255,.82);text-wrap:pretty}
body.ginx-theme .ginx-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:17px 30px;margin-top:33px}
body.ginx-theme .ginx-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 19px;background:#ccff00;color:#030014!important;font:600 12px "IBM Plex Mono",monospace;letter-spacing:.04em;transition:background .2s,color .2s,transform .2s}
body.ginx-theme .ginx-button:hover{background:white;color:#030014!important;transform:translateY(-3px)}
body.ginx-theme .ginx-text-link{color:white!important;border-bottom:1px solid rgba(255,255,255,.6);font:600 11px "IBM Plex Mono",monospace;letter-spacing:.03em;padding:7px 0}
body.ginx-theme .ginx-text-link:hover{color:#ccff00!important;border-color:#ccff00}
body.ginx-theme .ginx-portrait{position:absolute;z-index:2;right:clamp(-75px,1vw,20px);bottom:-30px;width:clamp(360px,48vw,755px);margin:0;pointer-events:none}
body.ginx-theme .ginx-portrait img{width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 25px 65px rgba(0,0,0,.6));transition:transform .75s cubic-bezier(.2,.9,.2,1);transform-origin:center bottom;pointer-events:auto}
body.ginx-theme .ginx-portrait img:hover{transform:scale(1.04)}
body.ginx-theme .ginx-portrait figcaption{position:absolute;bottom:16%;right:6%;font:600 10px "IBM Plex Mono",monospace;color:white;background:rgba(3,0,20,.75);padding:8px 13px;letter-spacing:.12em}
body.ginx-theme .ginx-portrait figcaption span{color:#ccff00}
body.ginx-theme .ginx-bottomline{border-top:1px solid rgba(255,255,255,.25);padding-top:20px}
body.ginx-theme .ginx-bottomline a:hover{color:#ccff00}
body.ginx-theme .ginx-marquee{position:absolute;z-index:1;pointer-events:none;bottom:-36px;left:0;right:0;overflow:hidden;opacity:.32;white-space:nowrap}
body.ginx-theme .ginx-marquee div{display:block;width:max-content;animation:ginx-marquee 31s linear infinite;font:400 clamp(95px,14vw,250px)/1 "Anton",Impact,sans-serif;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.4)}
body.ginx-theme .ginx-marquee span{-webkit-text-stroke:1px rgba(204,255,0,.6)}
@keyframes ginx-marquee{from{transform:translateX(0)}to{transform:translateX(-45%)}}
body.ginx-theme .v18-manifest,body.ginx-theme .v18-showcase,body.ginx-theme .v18-journal-tease{background:#030014!important;color:#fff!important}
body.ginx-theme .v18-universe{background:#10102a!important;color:#fff!important}
body.ginx-theme .v18-manifest .v18-micro,body.ginx-theme .v18-showcase .v18-micro,body.ginx-theme .v18-journal-tease .v18-micro,body.ginx-theme .v18-universe .v18-micro{border-color:rgba(255,255,255,.25)!important;color:#afb0c2!important}
body.ginx-theme .v18-manifest h2 span,body.ginx-theme .v18-section-title h2 .mint{color:#ccff00!important}
body.ginx-theme .v18-manifest h2,body.ginx-theme .v18-journal-tease h2,body.ginx-theme .v18-universe h2,body.ginx-theme .v18-section-title h2{color:white!important}
body.ginx-theme .v18-stats{border-color:rgba(255,255,255,.22)}
body.ginx-theme .v18-stats p,body.ginx-theme .v18-stats small{color:#bec0ca!important}
body.ginx-theme .v18-stats strong{color:#ccff00!important}
body.ginx-theme .v18-project-meta :is(strong,small,b){color:white!important}
body.ginx-theme .v18-project:hover .v18-project-meta strong{color:#ccff00!important}
body.ginx-theme .v18-project-art{background:#131229;overflow:hidden}
body.ginx-theme .v18-project-art img{transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s;filter:saturate(.88)}
body.ginx-theme .v18-project:hover .v18-project-art img{transform:scale(1.07);filter:saturate(1.05)}
body.ginx-theme .v18-project-art .v18-view{background:#ccff00!important;color:#030014!important}
body.ginx-theme .v18-last{border-color:rgba(255,255,255,.3)!important}
body.ginx-theme .v18-last span{color:#bbc0c9!important}
body.ginx-theme .v18-round{background:#ccff00!important;color:#030014!important}
body.ginx-theme .v18-pill.outlined{background:transparent!important;border-color:rgba(255,255,255,.65)!important;color:#fff!important}
body.ginx-theme .v18-pill.outlined:hover{background:#ccff00!important;border-color:#ccff00!important;color:#030014!important}
body.ginx-theme .v18-system :is(a,p,h3),body.ginx-theme .v18-system>a,body.ginx-theme .v18-system a h3{color:white!important}
body.ginx-theme .v18-system a{border-color:rgba(255,255,255,.24)!important}
body.ginx-theme .v18-system a:hover{background:#ccff00!important;color:#030014!important}
body.ginx-theme .v18-system a:hover :is(h3,p,small,b){color:#030014!important}
body.ginx-theme .v18-orbit{border-color:#ccff00!important}
body.ginx-theme .v18-journal-row{border-color:rgba(255,255,255,.25)!important;color:white!important}
body.ginx-theme .v18-journal-row:hover{color:#ccff00!important}
body.ginx-theme :is(.v18-intro,.v18-archive,.v18-blog,.v18-career,.v18-about){background:#030014!important;color:white!important}
body.ginx-theme .v18-intro :is(h1,p,span),body.ginx-theme .v18-archive :is(h2,h3,p),body.ginx-theme .v18-blog :is(h1,h2,h3,p){color:inherit}
body.ginx-theme .v18-filterbar{border-color:rgba(255,255,255,.25);color:white!important}
body.ginx-theme .v18-filters button{background:transparent;color:#eee!important;border-color:#777}
body.ginx-theme .v18-filters button[aria-pressed="true"],body.ginx-theme .v18-filters button:hover{color:#030014!important;background:#ccff00!important;border-color:#ccff00!important}
body.ginx-theme .v18-archive .v18-project-meta :is(strong,small){color:white!important}
body.ginx-theme .v18-archive .v18-project-meta strong:hover{color:#ccff00!important}
body.ginx-theme .v18-post{background:#100e26!important;color:#fff!important}
body.ginx-theme .v18-post :is(strong,small,p){color:inherit!important}
body.ginx-theme .gin-story{background:#030014!important;color:#f5f4fc!important}
body.ginx-theme .gin-story :is(.gin-story-hero,.gin-story-chapter,.gin-story-cases){background:#030014!important;color:#f7f5ff!important}
body.ginx-theme .gin-story :is(.gin-story-facts,.gin-story-lab){background:#10102a!important;color:#f7f5ff!important}
body.ginx-theme .gin-story :is(h1,h2,h3,p,.gin-story-hero-body,.gin-story-hero-lede,.gin-story-prose p){color:#f7f5ff}
body.ginx-theme .gin-story :is(.gin-story-overline,.gin-story-case,.gin-story-discipline a){border-color:rgba(255,255,255,.26)!important}
body.ginx-theme .gin-story .gin-story-case{background:#12112b!important;color:white!important}
body.ginx-theme .gin-story .gin-story-case :is(p,strong){color:white!important}
body.ginx-theme .gin-story .mint,body.ginx-theme .gin-story .gin-story-green{color:#ccff00!important;-webkit-text-fill-color:#ccff00!important}
body.ginx-theme footer.gin-footer-v26{--gfv-green:#ccff00!important;background:#090915!important;color:#fff}
body.ginx-theme footer.gin-footer-v26 .ginf-accent,body.ginx-theme footer.gin-footer-v26 .ginf-dot{color:#ccff00!important}
body.ginx-theme footer.gin-footer-v26 .ginf-status::before{background:#ccff00!important}
body.ginx-theme footer.gin-footer-v26 .ginf-cta-icon{background:#ccff00!important}
body.ginx-theme .ginx-resume{max-width:1250px;margin:auto;padding:80px var(--g) 130px;color:white}
body.ginx-theme .ginx-resume h1{font:400 clamp(74px,14vw,200px)/.9 "Anton",Impact,sans-serif;margin:50px 0;color:#fff}
body.ginx-theme .ginx-resume h1 em{font-style:normal;color:#ccff00}
body.ginx-theme .ginx-resume .ginx-resume-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:70px}
body.ginx-theme .ginx-resume h2{font:400 36px "Anton",Impact,sans-serif;border-top:1px solid #767486;padding-top:24px;margin-bottom:24px}
body.ginx-theme .ginx-resume p,body.ginx-theme .ginx-resume li{font:400 16px/1.8 "Space Grotesk",sans-serif;color:#c9c7d4}
body.ginx-theme .ginx-resume li{margin-bottom:9px}
body.ginx-theme .ginx-resume a{color:#ccff00;text-decoration:underline;text-underline-offset:4px}
body.ginx-theme .ginx-resume .ginx-stats{display:flex;flex-wrap:wrap;gap:25px;margin:45px 0;color:#ccff00;font:400 clamp(34px,5vw,66px) "Anton",sans-serif}
body.ginx-theme .ginx-resume .ginx-stats span{display:grid;gap:0}
body.ginx-theme .ginx-resume .ginx-stats small{font:500 11px "IBM Plex Mono",monospace;color:#c5c2d1}
@media(max-width:1000px){body.ginx-theme .ginx-header-links{display:none}body.ginx-theme .ginx-stage{min-height:670px}body.ginx-theme .ginx-copy .ginx-word{font-size:clamp(78px,16vw,166px)}body.ginx-theme .ginx-portrait{right:-65px;width:55vw;opacity:.84}}
@media(max-width:760px){body.ginx-theme .v18-head{height:64px}body.ginx-theme .ginx-commission{padding:12px 10px;font-size:9px}body.ginx-theme .ginx-hero{min-height:780px;padding:19px var(--g) 83px}body.ginx-theme .ginx-topline>span:nth-child(2),body.ginx-theme .ginx-bottomline>span:last-child{display:none}body.ginx-theme .ginx-stage{min-height:640px;align-items:flex-start}body.ginx-theme .ginx-copy{padding:48px 0 240px}body.ginx-theme .ginx-eyebrow{font-size:9px;max-width:290px}body.ginx-theme .ginx-copy .ginx-outline{font-size:clamp(34px,8.4vw,60px)}body.ginx-theme .ginx-copy .ginx-word{font-size:clamp(68px,17vw,124px)}body.ginx-theme .ginx-bio{font-size:13px;max-width:min(85%,390px);min-height:0;line-height:1.6;background:rgba(3,0,20,.25)}body.ginx-theme .ginx-portrait{right:-62px;bottom:-7px;width:clamp(300px,83vw,490px);opacity:.86}body.ginx-theme .ginx-portrait figcaption{display:none}body.ginx-theme .ginx-hero-actions{gap:15px;margin-top:22px}body.ginx-theme .ginx-button{font-size:10px;padding:15px 13px;gap:16px}body.ginx-theme .ginx-text-link{font-size:9px}body.ginx-theme .ginx-bottomline{font-size:9px}body.ginx-theme .ginx-resume .ginx-resume-grid{grid-template-columns:1fr;gap:22px}}
@media(max-width:420px){body.ginx-theme .ginx-hero{min-height:740px}body.ginx-theme .ginx-stage{min-height:610px}body.ginx-theme .ginx-copy .ginx-word{font-size:clamp(62px,16vw,85px)}body.ginx-theme .ginx-copy .ginx-outline{font-size:clamp(31px,7.8vw,45px)}body.ginx-theme .ginx-bio{max-width:95%;font-size:12px}body.ginx-theme .ginx-portrait{width:330px;right:-85px;opacity:.66}body.ginx-theme .ginx-hero-actions{max-width:290px}body.ginx-theme .v18-brand img{max-height:45px}}
@media(prefers-reduced-motion:reduce){body.ginx-theme .ginx-marquee div{animation:none!important}body.ginx-theme :is(.ginx-portrait img,.v18-project-art img,.v18-nav){transition:none!important}}


/* Drawer typography and entrance for the custom GINX navigation panes. */
body.ginx-theme .v18-nav .ginx-menu-pane{display:block}
body.ginx-theme .v18-nav .ginx-menu-pane>span,body.ginx-theme .v18-nav .ginx-contact-pane>p{display:block;color:#ccff00!important;font:600 11px/1.5 "IBM Plex Mono",monospace;letter-spacing:.14em;margin:5px 0 23px}
body.ginx-theme .v18-nav .ginx-menu-pane>a{display:flex!important;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:11px 0!important;border-bottom:1px solid rgba(255,255,255,.25)!important;background:transparent!important;color:#fff!important;font:400 clamp(44px,6vw,79px)/1.1 "Anton",Impact,sans-serif!important;letter-spacing:.008em;transition:color .18s,padding .18s}
body.ginx-theme .v18-nav .ginx-menu-pane>a small{font:600 11px "IBM Plex Mono",monospace;color:#9fa0ae!important}
body.ginx-theme .v18-nav .ginx-menu-pane>a:hover{padding-left:12px!important;color:#ccff00!important}
body.ginx-theme .v18-nav .ginx-menu-pane>p{margin:36px 0 0;color:#aaa!important;font:500 11px "IBM Plex Mono",monospace;letter-spacing:.1em}
@keyframes ginx-drawer-enter{from{transform:translateX(100%);opacity:.2}to{transform:translateX(0);opacity:1}}
body.ginx-theme .v18-nav:not([hidden]):not(.ginx-exiting){animation:ginx-drawer-enter .55s cubic-bezier(.19,1,.22,1) both}
body.ginx-theme :is(.v18-archive,.v18-blog) input{background:#141229!important;color:#fff!important;border:1px solid rgba(255,255,255,.4)!important}
body.ginx-theme :is(.v18-archive,.v18-blog) input::placeholder{color:#9e9caf}
body.ginx-theme .v18-micro,body.ginx-theme .v18-overline{color:#c1c0d0}
body.ginx-theme .v18-stats>div{min-width:0}
body.ginx-theme .ginx-copy .ginx-word{font-variant-ligatures:none}
@media(max-width:760px){body.ginx-theme .v18-nav{padding-top:95px!important}body.ginx-theme .v18-nav .ginx-menu-pane>a{font-size:clamp(42px,11vw,68px)!important}body.ginx-theme .ginx-header-actions{gap:7px}body.ginx-theme .ginx-drawer-head{top:18px}}
@media(prefers-reduced-motion:reduce){body.ginx-theme .v18-nav:not([hidden]):not(.ginx-exiting){animation:none!important}}
