#logo,.page{max-width:100%}#menu,.arrow-down{transform:translate(0,-50%)}header,main{position:fixed}#menu li,footer .left{float:left}#logo,.background,.bottomleft,.bottomright,.topleft,.topright{position:absolute}.background .title,h1,h2{text-transform:uppercase}#skill_2d_after,#skill_2d_before,#skill_menu{overflow:hidden}#other_photo,#skill_view{position:relative;overflow-x:auto;overflow-y:hidden}#copyright.show,#privacy,#privacy.start.show,.padded{padding:2em}#privacy,#privacy.start.show{max-height:150em}.fa-solid{font-family:'Font Awesome 6 Free';font-style:normal;font-variant:normal;font-weight:900;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;line-height:1;text-rendering:auto}.fa-envelope::before{content:"\f0e0"}.fa-phone::before{content:"\f095"}.fa-arrow-right::before{content:"\f061"}.fa-arrow-down::before{content:"\f063"}#logo_extra,#menu.start,.nocss{display:none}.css{display:block!important}.css.js{display:none!important}*{box-sizing:border-box;margin:0;padding:0;border:0}#skill_web_demo div,.circle{border-radius:50%}body,input,textarea{font-family:Quicksand,sans-serif;font-size:calc(12px + .5vw);overflow:hidden;color:#555}#menu li:hover a:active,#menu li:hover a:hover,#menu li:hover a:link,#menu li:hover a:visited,#toggle_copyright.pointer:hover,#toggle_privacy.pointer:hover,h1,h2{color:#000}body:disabled,input:disabled,textarea:disabled{color:#777;background-color:#d1cfcf}#about_photo_outline,footer .background,header{background-color:#e7e6e6}h1,h2{font-weight:300;font-size:180%;border-bottom:.08em solid #d9d9d9;margin:.4em 0;padding-bottom:.3em}b,h3{font-weight:600;font-size:100%;color:#333}#privacy li,#privacy p,code{font-size:86%}p{line-height:1.5;margin:.72em 0}p a:active,p a:hover,p a:link,p a:visited{color:#000;text-decoration:underline}.arrow{font-size:200%;margin:.5em;opacity:0;transition:opacity .5s}.arrow.show{opacity:1}.arrow.arrow-page{font-size:300%}@media only screen and (min-width:768px) and (max-width:1460px){.arrow-page{color:#ccc}}.arrow-down{animation:1s ease-in-out infinite alternate keyArrowDown}@keyframes keyArrowDown{from{transform:translate(0,-50%)}to{transform:translate(0,0)}}.arrow-right{transform:translate(-50%,0);animation:1s ease-in-out infinite alternate keyArrowRight}@keyframes keyArrowRight{from{transform:translate(-50%,0)}to{transform:translate(0,0)}}li{margin:.5em 0 .5em 1em}.background,nav{user-select:none}#logo_extra.start,#menu.anim,#skill_ann_svg,img{display:block}#about_side,#menu ul,.row{display:flex}code,code b,code i,code s,code u{font-weight:300;font-style:normal;text-decoration:none}code{font-family:'Source Code Pro',monospace}code .tab{padding-left:3em}code u{color:#007}code b{color:#440}code s{color:#700}code i{color:#070}@media only screen and (min-width:480px){code{font-size:100%}}.attop{margin-top:0}.atbottom{margin-bottom:0}.topleft{top:0;left:0}.topright{top:0;right:0}.bottomleft{bottom:0;left:0}.bottomright{bottom:0;right:0}.transparent{opacity:.5}header{display:block;height:6em;top:0;width:100%}header.start{height:100vh}header.anim{animation:.6s ease-in-out forwards keyTopbarSmall}@keyframes keyTopbarSmall{from{height:100vh}to{height:6em}}@keyframes keyTopbarLarge{from{height:100vh}to{height:4em}}#logo{display:grid;width:20em;top:30%;padding-left:4em;left:50%;transform:translate(-50%,-50%)}#logo.start{width:40em;top:50%;padding-left:0}#logo.anim{animation:.6s ease-in-out forwards keyLogoSmall}@keyframes keyLogoSmall{from{width:40em;top:50%;transform:translate(-50%,-50%);padding-left:0}to{width:20em;top:30%;transform:translate(-50%,-50%);padding-left:4em}}@keyframes keyLogoLarge{from{width:40em;left:50%;transform:translate(-50%,-50%);padding-left:0}to{width:20em;left:0;transform:translate(0,-50%);padding-left:.6em}}#logo_extra,#logo_main{grid-row:1;grid-column:1}#logo_main_svg{width:100%;height:100%}#logo_extra.anim{animation:.6s ease-in-out forwards keyFadeOut}@keyframes keyFadeOut{from{opacity:1}to{opacity:0}}.page{width:70em;margin:auto}header .page{position:relative;height:100%}#menu{position:relative;top:70%;width:100%}#menu ul{justify-content:space-around;width:100%}#menu li{list-style-type:none;margin:0 1em}#menu li a:active,#menu li a:hover,#menu li a:link,#menu li a:visited,#skill_menu li a:active,#skill_menu li a:hover,#skill_menu li a:link,#skill_menu li a:visited{text-decoration:none}#menu li a:hover,#menu li a:link,#menu li a:visited{color:#555}#menu li a:active{color:#222}#menu li.current a:active,#menu li.current a:hover,#menu li.current a:link,#menu li.current a:visited{border-bottom:.144em solid #c9c9c9}#menu li:nth-child(2){animation-delay:.1s}#menu li:nth-child(3){animation-delay:.2s}#menu li:nth-child(4){animation-delay:.3s}#menu.start li,.about_list.anim li{animation:.5s forwards keyFadeIn}#menu.start li{opacity:0}.pointer{cursor:pointer}@keyframes keyFadeIn{from{opacity:0}to{opacity:1}}main{top:6em;bottom:0;width:100%;overflow-x:hidden;overflow-y:auto;background-color:#d1cfcf;scrollbar-color:#bdbbbb #e7e6e6}section{clear:both;position:relative}footer::after,section::after{content:"";display:block;clear:both}section.main{min-height:calc(100vh - 6em)}@media only screen and (min-width:640px){header{height:4em}header.anim{animation:.6s ease-in-out forwards keyTopbarLarge}#logo{top:50%;left:0;transform:translate(0,-50%);padding-left:.6em}#logo.start{left:50%;transform:translate(-50%,-50%)}#logo.anim{animation:.6s ease-in-out forwards keyLogoLarge}#menu,#menu ul{top:50%;width:auto}#menu{float:left;margin-left:20em;padding-bottom:.2em}#menu ul{display:block}main{top:4em}section.main{min-height:calc(100vh - 4em)}}footer{position:relative;padding:.2em 2em}footer .right{float:right}.background{background-color:#fff;left:0;right:0;top:0;bottom:0;z-index:-1}.background .title{font-family:'Tilt Warp',sans-serif;font-size:13px;position:absolute;fill:#f3f3f3}.background .title.top{top:0;width:100%}.background .title.bottom{bottom:0;width:100%}.background .title.left{left:0;height:100%}.background .title.right{right:0;height:100%}.stroke{text-shadow:-1px -1px 1px #fff,1px -1px 1px #fff,-1px 1px 1px #fff,1px 1px 1px #fff}#skill_menu li a:hover,#skill_menu li a:link,#skill_menu li a:visited,.dark{color:#aaa}.dark h1,.dark h2{color:#fff;border-bottom:.1em solid #7f7f7f}#skill_menu li a:active,.dark .arrow,.dark b,.dark h3{color:#ccc}.dark p a:active,.dark p a:hover,.dark p a:link,.dark p a:visited{color:#eee;text-decoration:underline}.dark code u{color:#9ad}.dark code b{color:#cc9}.dark code s{color:#c77}.dark code i{color:#7c7}.dark .background{background-color:#2c3541}.dark .title{fill:#232a34}.dark .stroke{text-shadow:-1px -1px 1px #2c3541,1px -1px 1px #2c3541,-1px 1px 1px #2c3541,1px 1px 1px #2c3541}.dark-light .background{background-color:#272f3a}.dark-light .stroke{text-shadow:-1px -1px 1px #272f3a,1px -1px 1px #272f3a,-1px 1px 1px #272f3a,1px 1px 1px #272f3a}.dark-dark .background{background-color:#232a34}.dark-dark .stroke{text-shadow:-1px -1px 1px #232a34,1px -1px 1px #232a34,-1px 1px 1px #232a34,1px 1px 1px #232a34}#about,#contact_content,.column{display:flex;flex-flow:column nowrap}.row{flex-flow:row nowrap}#about_side{position:relative;flex-flow:row nowrap;gap:2em}#about_photo{width:16em;max-width:50%}#about_photo::after{content:"";display:none;padding-bottom:100%}#about_photo_outline{width:100%;padding:.5em}#about_photo_outline img{width:100%;height:auto}#about_view,#other_photo .photo{position:relative}#skill_ann_canvas,#skill_ann_canvas_a,#skill_ann_canvas_b,#skill_ann_canvas_c,#skill_ann_canvas_d,#skill_ann_canvas_e,#skill_ann_canvas_f,#skill_ann_canvas_g,#skill_ann_canvas_x,#skill_ann_canvas_y,#skill_ann_example,#skill_java_tree,#skill_web_demo,#skill_web_demo div{position:absolute}#about_service{justify-content:center}#about_service_head{margin-top:2em}#about_service_list{margin-bottom:4em}.nogrow{flex-grow:0;flex-shrink:0}.grow{flex-grow:1;flex-shrink:1}.about_list.start li{opacity:0}.about_list.start li:nth-child(2){animation-delay:.75s}.about_list.start li:nth-child(3){animation-delay:1.5s}#skill_menu{position:relative;max-width:0;padding:2em 0;transition:max-width .5s,padding .5s}#skill_menu li{list-style:none}#skill_menu li:hover a:active,#skill_menu li:hover a:hover,#skill_menu li:hover a:link,#skill_menu li:hover a:visited{color:#ddd}#skill_menu li::before{content:'-';position:absolute;left:0}#skill_menu li.current::before{content:'>'}#skill_menu nav{gap:2em;position:relative}#skill_view{scrollbar-color:#191f27 #2c3541;scroll-snap-type:x mandatory}#skill_pages{height:100%}section.skill{position:relative;flex:none;float:left;width:100%;height:100%;scroll-snap-align:center}.skill_icons{gap:1em}.skill_icons img,.skill_icons svg{height:6em}#skill_java_tree{left:50%;top:60%;width:75%;font-size:16px;transform:translate(-50%,-60%)}#skill_java_tree .line{stroke:#1e242d;stroke-width:3px;stroke-dasharray:0 50 0 50}#skill_java_tree .circle{stroke:#1e242d;stroke-width:2px;stroke-dasharray:315;stroke-dashoffset:315;fill:#272f3a;fill-opacity:0}#skill_java_tree .text{fill:#161b22;text-anchor:middle;font-weight:600;fill-opacity:0}#skill_java_tree.anim .line .item_1{animation:15s forwards keyAboutStructureLine1}#skill_java_tree.anim .line .item_2{animation:15s forwards keyAboutStructureLine2}#skill_java_tree.anim .line .item_3{animation:15s forwards keyAboutStructureLine3}#skill_java_tree.anim .line .item_4{animation:15s forwards keyAboutStructureLine4}#skill_java_tree.anim .line .item_5{animation:15s forwards keyAboutStructureLine5}#skill_java_tree.anim .line .item_6{animation:15s forwards keyAboutStructureLine6}#skill_java_tree.anim .circle .item_1{animation:15s forwards keyAboutStructureCircle1}#skill_java_tree.anim .circle .item_2{animation:15s forwards keyAboutStructureCircle2}#skill_java_tree.anim .circle .item_3{animation:15s forwards keyAboutStructureCircle3}#skill_java_tree.anim .circle .item_4{animation:15s forwards keyAboutStructureCircle4}#skill_java_tree.anim .circle .item_5{animation:15s forwards keyAboutStructureCircle5}#skill_java_tree.anim .circle .item_6{animation:15s forwards keyAboutStructureCircle6}#skill_java_tree.anim .circle .item_7{animation:15s forwards keyAboutStructureCircle7}#skill_java_tree.anim .text .item_1{animation:15s forwards keyAboutStructureText1}#skill_java_tree.anim .text .item_2{animation:15s forwards keyAboutStructureText2}#skill_java_tree.anim .text .item_3{animation:15s forwards keyAboutStructureText3}#skill_java_tree.anim .text .item_4{animation:15s forwards keyAboutStructureText4}#skill_java_tree.anim .text .item_5{animation:15s forwards keyAboutStructureText5}#skill_java_tree.anim .text .item_6{animation:15s forwards keyAboutStructureText6}#skill_java_tree.anim .text .item_7{animation:15s forwards keyAboutStructureText7}@keyframes keyAboutStructureLine1{0%,19%{transform:translate(175px,150px) rotate(-60deg);stroke-dasharray:0 50 0 50}29%,48%{transform:translate(175px,150px) rotate(-60deg);stroke-dasharray:0 0 100 0}53%,77%{transform:translate(150px,150px) rotate(-45deg)}82%{transform:translate(125px,150px) rotate(-34deg)}100%,87%{transform:translate(75px,200px) rotate(-60deg);stroke-dasharray:0 0 100 0}}@keyframes keyAboutStructureLine2{0%,19%{transform:translate(225px,150px) rotate(60deg);stroke-dasharray:0 50 0 50}29%,48%{transform:translate(225px,150px) rotate(60deg);stroke-dasharray:0 0 100 0}53%,77%{transform:translate(250px,150px) rotate(45deg)}82%{transform:translate(275px,150px) rotate(34deg)}100%,87%{transform:translate(325px,200px) rotate(60deg);stroke-dasharray:0 0 100 0}}@keyframes keyAboutStructureLine3{0%,48%{transform:translate(225px,150px) rotate(60deg);stroke-dasharray:0 50 0 50}53%{transform:translate(200px,150px) rotate(90deg);stroke-dasharray:0 25 50 25}58%,77%{transform:translate(200px,150px) rotate(90deg);stroke-dasharray:0 0 100 0}82%{transform:translate(175px,150px) rotate(120deg)}100%,87%{transform:translate(125px,200px) rotate(60deg);stroke-dasharray:0 0 100 0}}@keyframes keyAboutStructureLine4{0%,77%{transform:translate(250px,150px) rotate(45deg);stroke-dasharray:0 50 0 50}82%{transform:translate(225px,150px) rotate(60deg);stroke-dasharray:0 25 50 25}100%,87%{transform:translate(275px,200px) rotate(120deg);stroke-dasharray:0 0 100 0}}@keyframes keyAboutStructureLine5{0%,82%{transform:translate(150px,100px) rotate(-45deg);stroke-dasharray:0 50 0 50}100%,92%{transform:translate(150px,100px) rotate(-45deg);stroke-dasharray:0 0 100 0}}@keyframes keyAboutStructureLine6{0%,82%{transform:translate(250px,100px) rotate(45deg);stroke-dasharray:0 50 0 50}100%,92%{transform:translate(250px,100px) rotate(45deg);stroke-dasharray:0 0 100 0}}@keyframes keyAboutStructureCircle1{0%,19%{transform:translate(0,0);stroke-dashoffset:315;fill-opacity:0}24%,48%{transform:translate(-50px,50px);stroke-dashoffset:0;fill-opacity:1}53%,77%{transform:translate(-100px,50px)}82%{transform:translate(-150px,50px)}100%,87%{transform:translate(-150px,100px);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureCircle2{0%,82%{transform:translate(0,-50px);stroke-dashoffset:315;fill-opacity:0}100%,87%{transform:translate(-100px,0);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureCircle3{0%,48%{transform:translate(50px,50px);stroke-dashoffset:315;fill-opacity:0}53%,77%{transform:translate(0,50px);stroke-dashoffset:0;fill-opacity:1}82%{transform:translate(-50px,50px)}100%,87%{transform:translate(-50px,100px);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureCircle4{0%{transform:translate(0,0);stroke-dashoffset:315;fill-opacity:0}19%,5%{transform:translate(0,0);stroke-dashoffset:0;fill-opacity:1}24%,82%{transform:translate(0,-50px)}100%,87%{transform:translate(0,-100px);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureCircle5{0%,77%{transform:translate(100px,50px);stroke-dashoffset:315;fill-opacity:0}82%{transform:translate(50px,50px);stroke-dashoffset:0;fill-opacity:1}100%,87%{transform:translate(50px,100px);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureCircle6{0%,82%{transform:translate(0,-50px);stroke-dashoffset:315;fill-opacity:0}100%,87%{transform:translate(100px,0);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureCircle7{0%,19%{transform:translate(0,0);stroke-dashoffset:315;fill-opacity:0}24%,48%{transform:translate(50px,50px);stroke-dashoffset:0;fill-opacity:1}53%,77%{transform:translate(100px,50px)}82%{transform:translate(150px,50px)}100%,87%{transform:translate(150px,100px);stroke-dashoffset:0;fill-opacity:1}}@keyframes keyAboutStructureText1{0%{transform:translate(0,-25px);fill-opacity:0}5%,7%{transform:translate(0,0);fill-opacity:1}12%,14%{transform:translate(-8px,0)}19%{transform:translate(-16px,0)}24%,48%{transform:translate(-50px,50px)}53%,77%{transform:translate(-100px,50px)}82%{transform:translate(-150px,50px)}100%,87%{transform:translate(-150px,100px);fill-opacity:1}}@keyframes keyAboutStructureText2{0%,7%{transform:translate(8px,-25px);fill-opacity:0}12%,14%{transform:translate(8px,0);fill-opacity:1}19%{transform:translate(0,0)}24%,26%,36%,38%,48%{transform:translate(0,-50px)}31%,43%,53%,55%,65%,67%,77%{transform:translate(-8px,-50px)}60%,72%,82%{transform:translate(-16px,-50px)}100%,87%{transform:translate(-100px,0);fill-opacity:1}}@keyframes keyAboutStructureText3{0%,14%{transform:translate(16px,-25px);fill-opacity:0}19%{transform:translate(16px,0);fill-opacity:1}24%,31%{transform:translate(50px,50px)}36%,43%{transform:translate(42px,50px)}48%{transform:translate(34px,50px)}53%,77%{transform:translate(0,50px)}82%{transform:translate(-50px,50px)}100%,87%{transform:translate(-50px,100px);fill-opacity:1}}@keyframes keyAboutStructureText4{0%,26%{transform:translate(8px,-75px);fill-opacity:0}31%{transform:translate(8px,-50px);fill-opacity:1}36%,43%{transform:translate(58px,50px)}48%{transform:translate(50px,50px)}53%,55%,65%,67%,77%{transform:translate(8px,-50px)}60%,72%,82%{transform:translate(0,-50px)}100%,87%{transform:translate(0,-100px);fill-opacity:1}}@keyframes keyAboutStructureText5{0%,38%{transform:translate(8px,-75px);fill-opacity:0}43%{transform:translate(8px,-50px);fill-opacity:1}48%{transform:translate(66px,50px)}53%,60%{transform:translate(100px,50px)}65%,72%{transform:translate(92px,50px)}77%{transform:translate(84px,50px)}82%{transform:translate(50px,50px)}100%,87%{transform:translate(50px,100px);fill-opacity:1}}@keyframes keyAboutStructureText6{0%,55%{transform:translate(16px,-75px);fill-opacity:0}60%{transform:translate(16px,-50px);fill-opacity:1}65%,72%{transform:translate(108px,50px)}77%{transform:translate(100px,50px)}82%{transform:translate(16px,-50px)}100%,87%{transform:translate(100px,0);fill-opacity:1}}@keyframes keyAboutStructureText7{0%,67%{transform:translate(16px,-75px);fill-opacity:0}72%{transform:translate(16px,-50px);fill-opacity:1}77%{transform:translate(116px,50px)}82%{transform:translate(150px,50px)}100%,87%{transform:translate(150px,100px);fill-opacity:1}}#skill_web_demo{width:60%;left:50%;top:50%;transform:translate(-50%,-50%)}#skill_web_demo .background{left:.5em;right:.5em;top:.5em;bottom:.5em;background-color:#272f3a}#skill_web_demo .border{left:-.5em;right:-.5em;top:-.5em;bottom:-.5em;border:1.5em solid #272f3a}#skill_web_demo .layer{width:100%;height:100%;left:50%;top:50%;opacity:0}#skill_web_demo .layer .item{width:52%;height:52%;transform:translate(-50%,-50%)}#skill_web_demo .layer_1 .item,#skill_web_demo .layer_2 .item{border:1em solid #191f27}#skill_web_demo .layer_3 .item,#skill_web_demo .layer_4 .item{border:1em solid #1e242d}#skill_web_demo .layer_5 .item,#skill_web_demo .layer_6 .item{border:1em solid #232a34}#skill_web_demo .layer_7 .item,#skill_web_demo .layer_8 .item{border:1em solid #272f3a}#skill_web_demo .item_1{top:26%;left:50%}#skill_web_demo .item_2{top:50%;left:74%}#skill_web_demo .item_3{top:74%;left:50%}#skill_web_demo .item_4{top:50%;left:26%}#skill_web_demo::after{content:"";display:block;padding-bottom:100%}#skill_web_demo.anim .background{animation:4s forwards keyWebBackground}#skill_web_demo.anim .layer_1{animation:4s forwards keyWebLayer1}#skill_web_demo.anim .layer_2{animation:4s forwards keyWebLayer2}#skill_web_demo.anim .layer_3{animation:4s forwards keyWebLayer3}#skill_web_demo.anim .layer_4{animation:4s forwards keyWebLayer4}#skill_web_demo.anim .layer_5{animation:4s forwards keyWebLayer5}#skill_web_demo.anim .layer_6{animation:4s forwards keyWebLayer6}#skill_web_demo.anim .layer_7{animation:4s forwards keyWebLayer7}#skill_web_demo.anim .layer_8{animation:4s forwards keyWebLayer8}@keyframes keyWebBackground{0%{background-color:#272f3a}10%{background-color:#232a34}20%{background-color:#1e242d}30%{background-color:#191f27}100%,40%{background-color:#161b22}}@keyframes keyWebLayer1{0%{transform:translate(-50%,-50%) rotate(105deg);opacity:0}20%{opacity:0}30%{opacity:1}100%{transform:translate(-50%,-50%) rotate(60deg);opacity:1}}@keyframes keyWebLayer2{0%{transform:translate(-50%,-50%) rotate(-45deg);opacity:0}20%{opacity:0}30%{opacity:1}100%{transform:translate(-50%,-50%) rotate(0);opacity:1}}@keyframes keyWebLayer3{0%{transform:translate(-50%,-50%) rotate(95deg);opacity:0}10%{opacity:0}20%{opacity:1}100%{transform:translate(-50%,-50%) rotate(55deg);opacity:1}}@keyframes keyWebLayer4{0%{transform:translate(-50%,-50%) rotate(-35deg);opacity:0}10%{opacity:0}20%{opacity:1}100%{transform:translate(-50%,-50%) rotate(5deg);opacity:1}}@keyframes keyWebLayer5{0%{transform:translate(-50%,-50%) rotate(85deg);opacity:0}10%{opacity:1}100%{transform:translate(-50%,-50%) rotate(50deg);opacity:1}}@keyframes keyWebLayer6{0%{transform:translate(-50%,-50%) rotate(-25deg);opacity:0}10%{opacity:1}100%{transform:translate(-50%,-50%) rotate(10deg);opacity:1}}@keyframes keyWebLayer7{0%{transform:translate(-50%,-50%) rotate(75deg);opacity:1}100%{transform:translate(-50%,-50%) rotate(45deg);opacity:1}}@keyframes keyWebLayer8{0%{transform:translate(-50%,-50%) rotate(-15deg);opacity:1}100%{transform:translate(-50%,-50%) rotate(15deg);opacity:1}}#skill_shader_canvas{width:16em;height:16em}#skill_ann_example{bottom:0;width:100%}#skill_ann_canvas{bottom:2em;left:2em;top:2em;right:2em;z-index:-1;opacity:0}#skill_ann_canvas.anim{animation:2s ease-in-out forwards keyFadeIn}#skill_ann_canvas_a,#skill_ann_canvas_b,#skill_ann_canvas_c,#skill_ann_canvas_d,#skill_ann_canvas_x,#skill_ann_canvas_y{width:4.203761%;height:16.82692%}#skill_ann_canvas_e,#skill_ann_canvas_f{width:10.81731%;height:43.26923%;left:46.15385%}#skill_ann_canvas_g{width:24.03846%;height:96.15385%;left:75.72115%}#skill_ann_canvas_x,#skill_ann_canvas_y{left:.240385%}#skill_ann_canvas_a,#skill_ann_canvas_b,#skill_ann_canvas_c,#skill_ann_canvas_d{left:23.19712%}#skill_ann_canvas_a,#skill_ann_canvas_e,#skill_ann_canvas_g{top:1.923077%}#skill_ann_canvas_x{top:15.14423%}#skill_ann_canvas_b{top:28.36538%}#skill_ann_canvas_y{top:68.02885%}#skill_ann_canvas_c,#skill_ann_canvas_f{top:54.80769%}#skill_ann_canvas_d{top:81.25%}#other_photo .photo .overlay,#skill_2d_before{position:absolute;left:0;right:0;top:0;bottom:0}#skill_ann_svg .connection{stroke:#85898f;stroke-width:2px;stroke-dasharray:7 3;fill:none;opacity:0}#skill_ann_svg .connection.anim,#skill_ann_svg .rect.anim,#skill_ann_svg .text.anim{animation:1s ease-in-out forwards keyFadeIn}#skill_ann_svg .rect{stroke:#85898f;stroke-width:1.5px;fill:none;opacity:0}#skill_ann_svg .rect .medium{stroke-width:2.5px}#skill_ann_svg .rect .large{stroke-width:3.5px}#skill_ann_svg .text{fill:#85898f;font-weight:600;text-anchor:middle;opacity:0}#skill_ann_svg .circle{stroke:#565a60;stroke-width:1px}#skill_ann_svg .circle .inner{fill:#884}#skill_ann_svg .circle .outer{fill:#485}#skill_ann_svg .circle .error{stroke:#565a60}#skill_ann_svg .circle.anim .error{animation:2s ease-in-out forwards keyFadeAnnCircleRed}@keyframes keyFadeAnnCircleRed{from{stroke:#565a60}to{stroke:#833}}#skill_2d_after{margin:2em}#skill_2d_after img{width:20em;height:15em;border:.2em solid #aaa}#skill_2d_after p{padding:.5em 1em;margin-bottom:0}#skill_2d_before{width:50%;border-right:.1em solid #aaa}#skill_2d_before.start{width:100%}#skill_2d_before.anim{animation:10s ease-in-out forwards keySkill2d}@keyframes keySkill2d{0%{width:100%}30%{width:5%}55%{width:95%}100%{width:0%}}#other_photo{scrollbar-color:#d1cfcf #f3f3f3}#other_photo .photo img{width:auto;height:20em;object-fit:cover}#other_photo .photo .overlay{background:rgba(255,255,255,.8)}#other_photo .photo.anim .overlay{animation:3s ease-in-out forwards keyPhotoOverlay}@keyframes keyPhotoOverlay{0%{background:rgba(255,255,255,.8);opacity:1}60%{background:rgba(255,255,255,0);opacity:1}100%{background:rgba(255,255,255,0);opacity:0}}@media only screen and (min-width:768px){#about,#contact_content{flex-flow:row nowrap}#about_side{order:1;flex-flow:column nowrap}#about_photo{max-width:100%}#skill_menu{max-width:19em;padding:2em}}#contact_information{display:grid;grid-template-columns:2em 1fr;grid-template-rows:1.5em 1fr}#contact_form input,#contact_form textarea{width:100%;height:auto;padding:.5em 1em;margin:.6em 0;border:.25em solid #191f27;border-radius:.5em}#contact_form input:focus,#contact_form textarea:focus{outline:#7f7f7f solid .25em}#contact_form textarea{overflow:auto}#contact_form input[type=submit]{cursor:pointer;background-color:#e7e6e6}#contact_form input[type=submit]:disabled{cursor:auto;background-color:#d1cfcf}#copyright,#privacy.start{max-height:0;padding:0 2em;overflow:hidden}#copyright.show{max-height:80em}#copyright_browser td{padding:.1em 0}#copyright_browser td:nth-child(2){padding-left:1em;font-size:80%;opacity:.7}