header{z-index:10;flex-direction:row;justify-content:space-between;align-items:center;width:100%;height:70px;display:flex;position:absolute}.navListLeft{color:#fff;flex-direction:row;align-items:center;gap:40px;padding-left:20px;display:flex}.navListContainer{flex-direction:row;align-items:center;gap:20px;height:70px;padding-right:20px;display:flex}.navListName{font-family:brush script MT,cursive;font-size:30px;font-weight:300}.navListName:hover{cursor:pointer}.navListPosition{letter-spacing:-3px;font-family:fantasy;font-size:40px;font-weight:600}.navListItem{text-align:center;letter-spacing:.15em;border-radius:10px;align-content:center;height:30px;font-size:13px;font-weight:500}.navListItem a,.navListItem a:visited,.navListItemDropItem a,.navListItemDropItem a:visited,.navListLeft a,.navListLeft a:visited{color:#fff;padding-left:10px;padding-right:10px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:.9rem;text-decoration:none}.navListItem:hover{background-color:#e4ab8a26}.navListItemDrop{border-radius:0 10px 10px;display:none}.navListItem:hover .navListItemDrop{background-color:#e4ab8a26;display:block;position:absolute;transform:translateY(4px)}.navListItemDropItem a{padding-left:5px}.navListItemDropItem{text-align:left;border-radius:0;align-content:center;height:40px}.navListItemDropItem:first-child{border-top-right-radius:10px}.navListItemDropItem:last-child{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.navListItem#codeLink{border-bottom-right-radius:0;border-bottom-left-radius:0}.navListItemDropItem:hover{background-color:#e4ab8a26}footer{color:#fff;background-color:#47454562;flex-direction:column;justify-content:center;gap:20px;height:fit-content;padding:1%;font-family:Fredoka;display:flex}.contactLinkContainer{flex:row;justify-content:space-between;padding:20px;display:flex}.contactLink img{width:40px;height:40px;display:block}.header{text-align:center;padding-top:10px;padding-bottom:20px;font-size:40px}@font-face{font-family:Bodoni MT;src:url(/assets/fonts/Bodoni.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}html,body{font-family:var(--heading-font);margin:0;padding:0}a:link,a:visited,a:hover,a:active{text-decoration:none}body{background-color:#3e3630}html{scroll-behavior:smooth}#greetingDivider{opacity:0;background-color:#c9a86a;width:40px;height:2px;margin:8px auto 6px;transition:opacity .7s .25s,transform .7s cubic-bezier(.25,.46,.45,.94) .25s;transform:translateY(30px)}#backgroundContainer.inView #greetingDivider{opacity:1;transform:translateY(0)}#homepgHeaderText{opacity:0;transition:opacity .3s .35s}#lineTop,#lineBottom{opacity:.75;background:#fff;height:2px;transition:all .6s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:0;right:0}#homepgHeader.inView #lineTop{top:0}#homepgHeader.inView #lineBottom{top:100%}#homepgHeader.inView #homepgHeaderText{opacity:1}#infoParagraph{color:#f7f5f2;opacity:0;max-width:420px;font-family:system-ui;font-size:20px;line-height:2.2}#infoParagraph.inView{animation:.8s ease-out forwards leftToRight,1.5s ease-out forwards fadeIn}#greeting{color:#f7f5f2;opacity:0;font-family:Cormorant Garamond,serif;font-size:52px;font-weight:400;line-height:1.1;transition:opacity .7s .15s,transform .7s cubic-bezier(.25,.46,.45,.94) .15s;transform:translateY(30px)}#backgroundContainer.inView #greeting{opacity:1;transform:translateY(0)}#greetingText{color:#ffffffd1;opacity:0;max-width:700px;margin:0 auto;font-family:Instrument Sans,sans-serif;font-size:18px;line-height:2;transition:opacity .7s .35s,transform .7s cubic-bezier(.25,.46,.45,.94) .35s;transform:translateY(30px)}#backgroundContainer.inView #greetingText{opacity:1;transform:translateY(0)}#headshot{object-fit:cover;z-index:3;opacity:0;border-radius:50%;width:320px;height:320px;margin-top:0;transition:opacity .7s,transform .7s cubic-bezier(.25,.46,.45,.94);position:relative;transform:translateY(30px)scale(.96);box-shadow:0 18px 45px #00000038,0 0 0 1px #ffffff14}#backgroundContainer.inView #headshot{opacity:1;transform:translateY(0)scale(1)}.language.inView,.course.inView{animation:1s cubic-bezier(.25,.46,.45,.94) forwards slidein}.language:nth-child(2).inView{animation-delay:.1s}.language:nth-child(3).inView{animation-delay:.2s}.language:nth-child(4).inView{animation-delay:.3s}.language:nth-child(5).inView{animation-delay:.4s}.course:first-child.inView{animation-delay:.5s}.course:nth-child(2).inView{animation-delay:.6s}.course:nth-child(3).inView{animation-delay:.7s}.course:nth-child(4).inView{animation-delay:.8s}.course:nth-child(5).inView{animation-delay:.9s}.timelineItem.inView{animation:.8s cubic-bezier(.25,.46,.45,.94) forwards fadeUpTimeline}@keyframes leftToRight{0%{transform:translate(-200%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}@keyframes slidein{0%{opacity:0;transform:translate(-60px)translateY(10px)}to{opacity:1;transform:translate(0)translateY(0)}}@keyframes fadeUpTimeline{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDownArrow{0%{opacity:0;transform:translate(-50%)translateY(-25px)}to{opacity:1;transform:translate(-50%)translateY(0)}}#portfolio{background-position:50%;background-size:cover;justify-content:space-between;align-items:center;width:100%;min-height:100vh;display:flex;position:relative}#portfolio:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(#3e363000 0%,#3e36301f 35%,#3e363073 65%,#3e3630c7 85%,#3e3630 100%);height:320px;position:absolute;bottom:0;left:0;right:0}#homepgContainer{width:50%;margin-left:5%}#homepgHeader{color:#f7f5f2;width:fit-content;font-family:Cormorant Garamond,serif;font-size:120px;position:relative}#infoParagraphContainer{width:50%}#infoParagraphHeader{align-items:center;width:fit-content;margin-left:auto;margin-right:auto;display:flex}#infoParagraphLine{opacity:.75;background-color:#fff;width:2px;height:160px;margin-right:15px}#infoParagraphMask{width:fit-content;height:fit-content;overflow:hidden}#downArrow{color:#f7f5f2;z-index:3;opacity:0;font-size:40px;line-height:1;text-decoration:none;position:absolute;bottom:40px;left:50%;transform:translate(-50%)translateY(25px)}#downArrow.animate{animation:2s ease-out forwards fadeDownArrow}#aboutme{background-color:#000000a5}#aboutme header{margin-bottom:50px;position:relative}#backgroundContainer{z-index:2;background-color:#3e3630;flex-direction:column;align-items:center;gap:24px;padding:100px 30px;display:flex;position:relative}.title{text-align:center;color:#fefff7;margin-bottom:60px;font-family:Bodoni MT,Bodoni Moda,serif;font-size:50px}.subtitleTechStack{text-align:center;color:#fefff7;margin-bottom:60px;font-family:Bodoni MT,Bodoni Moda,serif;font-size:30px}#experience{margin:0}#languageContainer,#frameworksContainer{flex-wrap:wrap;justify-content:center;gap:150px;margin-bottom:60px;display:flex}.language{opacity:0;color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:20px;transition:transform .25s;display:flex}.language:hover{transform:translateY(-6px)scale(1.06)}.language img{width:40px;height:40px}#courseContainer{color:#fff;flex-direction:column;margin:0 100px;display:flex}#courseTitle{margin-bottom:60px}#courses{text-align:center;justify-content:space-between;align-items:center;margin:50px 10px;display:flex}.course{opacity:0;border:2px solid #000;border-radius:50px;padding:8px 10px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:12px;transition:background-color .25s,color .25s,border-color .25s}.course:hover{color:#3e3630;background-color:#c9a86a;border-color:#c9a86a}#qualificationContainer{flex-direction:column;gap:200px;margin:25px 0;display:flex}.aboutMeInfoContainer{color:#ede9e9;justify-content:space-between;align-items:center;gap:50px;margin:100px;display:flex}.aboutMeInfoImage{cursor:pointer;border-radius:20px;width:30rem;height:22rem;margin:0 30px;transition:transform .2s}.aboutMeInfoImage:hover{transform:scale(1.05)}.aboutMeInfoTitle{margin-bottom:20px;font-size:28px}.aboutMeInfoText{margin-bottom:15px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:15px;line-height:30px}#timelineSection{margin:100px 0}#timeline{max-width:700px;margin:40px auto;padding:0 40px;position:relative}#timeline:before{content:"";background-color:#797979;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timelineItem{opacity:0;justify-content:flex-end;margin-bottom:60px;padding-right:calc(50% + 30px);display:flex;position:relative}.timelineItem:nth-child(2n){justify-content:flex-start;padding-left:calc(50% + 30px);padding-right:0}.timelineDot{background-color:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.timelineContent{background:#fff;border-radius:12px;max-width:280px;padding:16px 20px;box-shadow:0 4px 12px #0000001a}.timelineYear{color:#5a4413;margin-bottom:4px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:12px}.timelineTitle{margin-bottom:8px;font-size:18px;font-weight:700}.timelineText{color:#555;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:13px;line-height:22px}#galleryContainer{width:100%;margin:100px 0}#galleryGrid{grid-template-rows:auto auto;grid-template-columns:.4fr .4fr .4fr;justify-content:center;gap:80px;margin:20px 80px;display:grid}#galleryGrid img{aspect-ratio:1;object-fit:cover;cursor:pointer;border-radius:12px;width:100%;transition:transform .2s}#galleryGrid img:hover{transform:scale(1.05)}#codePage{color:#fff;min-height:100vh;overflow:hidden}#codeMain{flex-direction:column;justify-content:center;gap:100px;padding:100px 0 140px;display:flex}.projectCarousel{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:720px;display:flex;overflow:hidden}.codeSection{z-index:20;color:#fff;text-align:center;width:100%;margin-bottom:20px;padding:8px 0;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:clamp(32px,4vw,48px);font-weight:700;position:relative}.projectStage{z-index:1;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:430px;position:relative}.projectStage.dragging{cursor:grabbing}.project{box-sizing:border-box;color:#333;transform-origin:50%;pointer-events:none;will-change:transform, opacity, filter;border:1px solid #ffffff40;border-radius:20px;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;width:400px;height:400px;text-decoration:none;transition:transform .45s cubic-bezier(.25,.8,.25,1),opacity .45s,filter .45s,box-shadow .45s;display:flex;position:absolute;overflow:hidden}.project.active{pointer-events:auto;box-shadow:0 25px 60px #0006,0 0 0 1px #ffffff29}.project.active:hover{box-shadow:0 30px 70px #00000080,0 0 30px #ffffff14}.project img{object-fit:contain;pointer-events:none;flex:1;width:100%;min-height:0}.projectTitle{box-sizing:border-box;color:#fff;text-align:center;text-shadow:0 2px 8px #00000040;width:100%;margin:0;padding:14px 8px;font-family:Fredoka,sans-serif;font-size:30px}.carouselControls{z-index:20;align-items:center;gap:18px;margin-top:30px;display:flex;position:relative}.carouselArrow{color:#fff;cursor:pointer;background:#ffffff0f;border:2px solid #ffffffbf;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:0;font-size:20px;transition:background-color .2s,transform .2s,border-color .2s;display:flex}.carouselArrow:hover{background-color:#ffffff29;border-color:#fff;transform:scale(1.08)}.carouselArrow:active{transform:scale(.94)}.carouselDots{align-items:center;gap:9px;display:flex}.carouselDot{cursor:pointer;background:#ffffff59;border:none;border-radius:50%;width:9px;height:9px;padding:0;transition:background-color .25s,transform .25s}.carouselDot:hover{background:#ffffffb3}.carouselDot.active{background:#fff;transform:scale(1.5)}#calculator{background-color:#f3d3d8}#todolist{background-color:#c2b19e}#tictactoe{background-color:#c5d8f3}#flappybird{background-color:#d8ebd8}#wordle{background-color:#eedef6}#studyspace{background-color:#edd3b2fe}#bigProjectSection,#upcomingProjectSection{flex-direction:column;gap:40px;display:flex}#bigProjectContainer{flex-direction:column;gap:100px;display:flex}.bigProject{justify-content:center;align-items:center;gap:60px;width:min(1200px,90%);margin:0 auto;display:flex}.bigProjectBox{box-sizing:border-box;color:#252525;text-align:center;background:linear-gradient(145deg,#fff,#e1dde2);border-radius:20px;justify-content:center;align-items:center;width:min(550px,50%);min-height:360px;font-family:Fredoka,sans-serif;font-size:42px;font-weight:600;display:flex;box-shadow:0 20px 45px #00000040}.bigProjectInfo{color:#ffffffe0;max-width:500px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:18px;line-height:1.8}.projectVideo{box-sizing:border-box;object-fit:cover;border-radius:20px;width:min(550px,50%);height:360px;box-shadow:0 20px 45px #00000040}@media (width<=900px){#codeMain{gap:70px;padding-top:80px}.projectCarousel{min-height:600px}.projectStage{height:340px}.project{width:310px;height:310px}.projectTitle{font-size:24px}.bigProject{flex-direction:column;gap:30px}.bigProject:nth-child(2n){flex-direction:column-reverse}.bigProjectBox{width:100%;min-height:280px}.bigProjectInfo{max-width:100%}.projectVideo{width:100%;height:280px}}@media (width<=550px){.projectCarousel{min-height:520px}.projectStage{height:290px}.project{width:260px;height:260px}.projectTitle{padding:10px 6px;font-size:20px}.carouselControls{margin-top:20px}.bigProject{width:88%}.bigProjectBox{min-height:220px;font-size:32px}.bigProjectInfo{font-size:15px}.projectVideo{width:100%;height:220px}}#contactPage{min-height:100vh;padding-top:70px}#contactContainer{min-height:70vh;margin:0 60px 30px}#contactTitle{color:#fff;margin:30px 0 20px 60px;font-family:Bodoni MT,Bodoni Moda,serif;font-size:100px}#contactSubHeading{color:#fff;margin:0 0 40px 60px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:15px}#contactGrid{grid-template-columns:1fr 1fr;gap:24px;display:grid}#contactLeft{flex-direction:column;gap:50px;display:flex}#contactInfo{background-color:#fff;border-radius:12px;padding:20px}.contactRow{border-bottom:1px solid #000;align-items:center;gap:12px;padding:10px 0;display:flex}.contactRow:last-child{border-bottom:none}.contactIcon{background:#928565;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:flex}.contactLabel{color:#999;margin-bottom:2px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:11px}.contactValue{color:#222;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:14px;font-weight:500}#contactQuote{text-align:center;box-sizing:border-box;background:#fff;border-left:4px solid #5a4413;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;height:200px;padding:2rem 2.5rem;display:flex}#quoteText{color:#5a4413;margin:0 0 12px;font-family:Times New Roman,Times,serif;font-size:22px;font-style:italic;line-height:1.6}#quoteAuthor{color:#999;letter-spacing:1px;margin:0;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:12px}#contactForm{background-color:#fff;border-radius:12px;flex-direction:column;gap:12px;padding:20px;display:flex}#formTitle{color:#222;margin:0 0 4px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:20px;font-weight:500}#contactForm input{box-sizing:border-box;border:1px solid #00000026;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:13px}#inputMessage{resize:none;height:100px}#inputSubmit{color:#f5e6c8;cursor:pointer;background:#5a4413;border:none;border-radius:8px;align-self:flex-start;margin-bottom:20px;padding:10px 24px;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:13px;font-weight:500}#inputSubmit:hover{background:#6e551e}#inputSuccess{color:green;font-family:Verdana,Geneva,Tahoma,sans-serif;font-size:13px;display:none}
