header{position:relative}header>nav,header .header-links{z-index:20}header>nav{top:64px;left:32px;position:fixed;writing-mode:vertical-lr;text-orientation:mixed}header>nav a.active{color:var(--color-accent-text);font-weight:700;text-decoration:underline;text-underline-offset:4px}header .header-links{bottom:64px;left:32px;position:fixed;writing-mode:vertical-lr;text-orientation:mixed}header .hamburger{display:none;position:fixed;top:24px;left:20px;z-index:1100;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:var(--color-bg-light);border:1px solid rgba(0,0,0,.15);border-radius:8px}header .hamburger__bar{display:block;width:22px;height:2px;background:var(--color-dark);transition:transform .2s ease,opacity .2s ease}header .hamburger[aria-expanded=true] .hamburger__bar:nth-child(1){transform:translateY(7px) rotate(45deg)}header .hamburger[aria-expanded=true] .hamburger__bar:nth-child(2){opacity:0}header .hamburger[aria-expanded=true] .hamburger__bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}header .mobile-menu{display:none}@media (max-width: 600px){header>nav{display:none}header .header-links{display:none}header .mode{display:none}header .hamburger{display:flex}header .mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:none;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;padding:2rem;background:var(--color-bg-light)}header .mobile-menu--open{display:flex}header .mobile-menu__nav{display:flex;flex-direction:column;align-items:center;gap:1.5rem;writing-mode:horizontal-tb}header .mobile-menu__nav a{font-size:1.75rem}header .mobile-menu__nav a.active{color:var(--color-accent-text);font-weight:700;text-decoration:underline;text-underline-offset:4px}header .mobile-menu__socials{display:flex;flex-direction:column;align-items:center;gap:1rem}}body.dark header .hamburger{background:var(--color-bg-dark);border-color:#fff3}body.dark header .hamburger .hamburger__bar{background:var(--color-light)}body.dark .mobile-menu{background:var(--color-bg-dark)}.mode-switch{display:flex;align-items:center;gap:.75rem;background:transparent;border:none;padding:0;font:inherit;font-weight:600;color:inherit;cursor:pointer}.mode-switch__track{position:relative;width:44px;height:24px;border-radius:999px;background:#00000040;transition:background .2s ease}.mode-switch__thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--color-light);box-shadow:0 1px 3px #0000004d;transition:transform .2s ease}.mode-switch[aria-checked=true] .mode-switch__track{background:var(--color-accent-dark)}.mode-switch[aria-checked=true] .mode-switch__thumb{transform:translate(20px)}body.dark .mode-switch__track{background:#ffffff40}.mobile-footer{display:none}@media (max-width: 600px){.mobile-footer{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem var(--side-margin) 2.5rem;text-align:center;border-top:1px solid rgba(0,0,0,.1)}.mobile-footer__contact,.mobile-footer__socials{display:flex;flex-direction:column;align-items:center;gap:.5rem}.mobile-footer a{font-size:1rem}.mobile-footer a:has(~a:hover){color:#000}.mobile-footer a:hover~a{color:#000}}body.dark .mobile-footer{border-top-color:#ffffff26}body.dark .mobile-footer a:has(~a:hover){color:var(--color-light)}body.dark .mobile-footer a:hover~a{color:var(--color-light)}@font-face{font-family:Montserrat;src:url(/assets/Montserrat-VariableFont_wght-i02rBV5P.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Hindi;src:url(/assets/Hind-Light-DI_6lw_T.ttf) format("truetype");font-weight:300;font-display:swap}@font-face{font-family:Hindi;src:url(/assets/Hind-Regular-BdU3Z_FQ.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Hindi;src:url(/assets/Hind-Medium-BujynShJ.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Hindi;src:url(/assets/Hind-SemiBold-BcHBlbb0.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Hindi;src:url(/assets/Hind-Bold-D5-xmoe6.ttf) format("truetype");font-weight:700;font-display:swap}:root{font-family:Hindi,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:var(--color-dark);background-color:var(--color-bg-light);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-accent: #00bfff;--color-accent-dark: #0088cc;--color-accent-text: #005478;--color-dark: #1a1a1a;--color-light: #ffffff;--color-bg-light: #f3f3f3;--color-bg-dark: #2c2c2c;--color-muted: #818181;--color-error: #8f2919;--color-success: #085a39;--gutter: 1.5rem;--side-margin: 120px;--max-width: calc(100vw - 2 * var(--side-margin))}#root{margin:0 auto;text-align:center}*{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:0;left:1rem;z-index:2000;padding:.75rem 1.25rem;background:var(--color-dark);color:var(--color-light);border-radius:8px;transform:translateY(-150%);transition:transform .2s ease}.skip-link:focus{transform:translateY(.75rem);outline:3px solid var(--color-accent-dark);outline-offset:2px}a{transition:all .1s ease-out;font-weight:500;color:#000;text-decoration:inherit;margin:.3rem 0;padding:.2rem}a:has(~a:hover){color:var(--color-muted)}a:hover{color:var(--color-accent-text)}a:hover~a{color:var(--color-muted)}body{margin:0;min-height:100vh;background-color:var(--color-bg-light);color:var(--color-dark)}body.dark{background-color:var(--color-bg-dark);color:var(--color-light);--color-accent-text: var(--color-accent)}body.dark a{color:var(--color-light)}h1{line-height:.8;font-size:clamp(2.5rem,10vw,6rem);margin:.2em 0}h2{font-size:2rem;margin:.2em 0}h3{font-size:2rem;margin:0 2rem 0 0;color:var(--color-accent-text)}p{font-size:1rem}h1,h2,h3{font-family:Montserrat;font-weight:600;text-align:left}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--color-dark);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--color-accent-text)}button:focus,button:focus-visible{outline:3px solid var(--color-accent-text);outline-offset:2px}.form-hint{margin:.5rem 0 0;font-size:.9rem;text-align:left}.contact-form{display:grid;gap:1rem;width:min(100%,700px);margin-top:1.5rem;padding:1.5rem 0;text-align:left}.contact-intro{display:flex;flex-direction:column;justify-content:center;gap:1.25rem;text-align:left}.contact-intro p{font-size:1.15rem;line-height:1.7;max-width:46ch}.form-group{display:grid;gap:.45rem}.form-group label{font-family:Montserrat;font-size:.95rem;font-weight:600;color:var(--color-dark)}.form-group input,.form-group textarea{width:100%;border:none;border-bottom:2px solid rgba(26,26,26,.15);border-radius:0;padding:.9rem .25rem;font:inherit;color:var(--color-dark);background-color:transparent;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:2px solid var(--color-accent-text);outline-offset:2px;border-bottom-color:var(--color-accent-text)}.form-group textarea{resize:vertical;min-height:140px}.form-group span{color:var(--color-error);font-size:.9rem}.contact-form button{width:fit-content;padding:.8rem 1.4rem;background:var(--color-accent-dark);color:var(--color-light);font-weight:600;border:none;border-radius:8px}.success-message{margin:0;color:var(--color-success);font-weight:600}.tech-stack{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.25rem}.tech-stack__item{display:inline-flex;align-items:center;gap:.5rem;justify-content:center;padding:.7rem 1rem;background-color:var(--color-accent-dark);color:var(--color-light);font-weight:600;font-family:inherit;font-size:inherit;box-shadow:0 8px 20px #00bfff33;border-radius:8px;border:none;cursor:pointer;opacity:0;transform:translateY(18px);transition:transform .15s ease-out,box-shadow .15s ease-out}.tech-stack__item:hover{transform:translateY(-2px);box-shadow:0 10px 24px #00bfff4d}.tech-stack__stars{display:inline-flex;gap:1px;font-size:.8rem;letter-spacing:1px;color:var(--color-light)}.tech-stack__star{opacity:.35}.tech-stack__star--filled{opacity:1}#skills{min-height:60vh}.skill-modal{position:relative;width:260px;height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1.5rem;background-color:var(--color-accent-dark);border-radius:12px;box-shadow:0 12px 30px #0000004d;text-align:center}.skill-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;z-index:1000}.skill-modal__close{position:absolute;top:.6rem;right:.6rem;background:transparent;border:none;color:var(--color-light);font-size:1.5rem;line-height:1;cursor:pointer}.skill-modal__title{margin:0;font-size:1.4rem;font-weight:700;color:var(--color-light)}.skill-modal__description{margin:0;font-weight:600;color:var(--color-light)}body.dark .contact-form .form-group label,body.dark .contact-form input,body.dark .contact-form textarea{color:var(--color-light)}body.dark .contact-form input,body.dark .contact-form textarea{background-color:transparent;border-bottom-color:#ffffff40}nav a{font-size:1.5rem}.word{display:inline-block;margin-right:.15em}#main{position:relative;overflow:hidden;height:100vh}.main-text{display:flex;align-items:flex-end;flex-direction:row;flex-wrap:wrap;position:relative;z-index:2;height:100%;align-content:flex-end}.main-text .main-subheading{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:1rem}.main-text p{font-size:clamp(1rem,2vw,1.5rem);margin:0 2vw 0 0;color:var(--color-accent-text)}.main-image{width:100%;max-width:33vw;z-index:1;height:auto;max-height:90vh}.timeline-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;flex-wrap:nowrap;width:calc(100vw - 135px);overflow:hidden}.timeline-item{position:relative;padding:0 10% 0 4rem;margin-bottom:1rem;display:flex;flex-direction:column;align-items:flex-start;flex:1 0 60%;max-height:70vh;text-align:justify;counter-increment:timeline-counter}.timeline-item-date{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;margin-top:0rem}.timeline-item span{background:var(--color-accent-dark);color:var(--color-light);padding:0 5px}.timeline-item:before{content:counter(timeline-counter) "|";position:absolute;left:0;top:0;font-size:4rem;color:var(--color-accent-text);line-height:4rem}.container{width:min(100%,var(--max-width));margin:0 auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter)}.row{display:contents}@media (max-width: 600px){:root{--side-margin: 24px}#main{min-height:auto;padding-top:40px;padding-bottom:40px}.main-heading{font-size:3.4rem;text-align:left;overflow-wrap:anywhere;writing-mode:sideways-lr;display:flex;flex-direction:column}.main-subheading p{font-size:1rem}.main-image{max-width:55vw}.main-image-container{position:absolute;right:24px;height:100vh;width:auto}#story{min-height:auto;padding-top:60px;padding-bottom:60px}.timeline-list{flex-direction:column;flex-wrap:wrap;width:100%;overflow:visible;gap:2rem}.timeline-item{flex:none;max-height:none;padding:0}.timeline-item:before{position:relative;font-size:3rem}.timeline-item h3{font-size:2rem}#skills{min-height:auto;padding-top:60px;padding-bottom:60px}.tech-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#contact{min-height:auto;padding-bottom:60px}#contact .contact-intro{order:-1}.contact-form{padding:1.5rem 0}}.col{grid-column-start:auto;grid-column-end:span 12}@media (min-width: 768px){.col-sm-6{grid-column-end:span 6}}@media (min-width: 768px){.col-sm-8{grid-column-end:span 8}}@media (min-width: 768px){.col-sm-4{grid-column-end:span 4}}@media (min-width: 768px){.col-sm-3{grid-column-end:span 3}}@media (min-width: 768px){.col-sm-5{grid-column-end:span 5}}@media (min-width: 768px){.col-offset-sm-2{grid-column-start:8}}@media (min-width: 1024px){.col-lg-7{grid-column-end:span 7}}@media (min-width: 1024px){.col-lg-5{grid-column-end:span 5}}@media (min-width: 1024px){.col-lg-4{grid-column-end:span 4}}@media (min-width: 1024px){.col-lg-3{grid-column-end:span 3}}
