@import"https://fonts.googleapis.com/css2?family=Google+Sans:ital,opsz,wght,GRAD@0,17..18,400..700,-25..100;1,17..18,400..700,-25..100&display=swap";@font-face{font-family:RocketRaccoon;src:url(/assets/RocketRaccoon-Bm5bf0Lj.otf) format("opentype"),url(/assets/RocketRaccoon-CX3v63Uy.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Granika;src:url(/assets/Granika-BRameQxo.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:transparent;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:10000;color:#2f2f2f;text-decoration:inherit}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:transparent}h1{font-size:3.2em;line-height:1.1}.section-title{font-family:Google Sans,sans-serif;font-optical-sizing:auto;font-weight:700;font-style:normal;font-variation-settings:"GRAD" 100;color:#333;font-size:.65rem;letter-spacing:.1em;line-height:1.2;margin-top:0;margin-bottom:.55rem;text-align:left;text-transform:uppercase}.section-subheader{font-family:RocketRaccoon,sans-serif;font-size:clamp(2.7rem,4.75vw,5rem);font-weight:400;color:#333;letter-spacing:-.075em;line-height:.83;margin:0 0 2.5rem;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:#1a1a1a;cursor:pointer;transition:border-color .25s}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:transparent}button{background-color:#f9f9f9}}.about-card-wrapper,.work-card-wrapper,.project-card-wrapper,.contact-card-wrapper{width:100%;display:flex;box-sizing:border-box}.navbar{position:fixed;top:20px;left:50%;transform:translate(-50%) scale(1);width:400px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:#ffffffd8;border-radius:30px;border:1px solid rgba(255,255,255,.25);box-shadow:0 2px 20px #00000035;padding:0;z-index:1000;overflow:hidden;transition:transform .35s cubic-bezier(.25,1,.5,1),top .35s cubic-bezier(.25,1,.5,1),background-color .35s ease,box-shadow .35s ease}.nav-container{max-width:1200px;margin:0 auto;padding:.2rem 1rem;display:flex;justify-content:center;align-items:center}.nav-item{display:flex;justify-content:center;align-items:center}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:1.5rem;justify-content:center}.nav-link{text-decoration:none;color:#333;font-weight:600;font-size:13px;padding:.5rem;border-radius:8px;transition:all .3s ease;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.nav-link:hover{color:#595959;background-color:#9191911a;border-radius:20px;padding:.5rem 1rem}.nav-icon{width:20px;height:20px;display:block;color:currentColor;transition:transform .2s cubic-bezier(.175,.885,.32,1.275)}.nav-link:hover .nav-icon{transform:scale(1.18)}.nav-link:before{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;transition:all .3s ease;transform:translate(-50%)}.nav-link:hover:before{width:80%}.nav-toggle{display:none;flex-direction:column;cursor:pointer;gap:4px}.logo{font-family:RocketRaccoon;font-size:29px;color:#333;margin:4px 0 0;display:flex;justify-content:center;align-items:center;transition:font-size .35s cubic-bezier(.25,1,.5,1),margin .35s cubic-bezier(.25,1,.5,1)}.navbar.shrink{transform:translate(-50%) scale(.85);top:12px;background-color:#ffffff73;box-shadow:0 4px 24px #0000001f}@media screen and (max-width:520px){.navbar{width:calc(100% - 1.5rem);max-width:420px;padding:0}.nav-container{padding:.2rem .4rem}.nav-menu{gap:.6rem;justify-content:center;width:100%;align-items:center}.nav-link,.nav-link:hover{padding:.4rem .5rem}.nav-icon{width:18px;height:18px}.nav-link:hover .nav-icon{transform:scale(1.12)}.logo{font-size:18px;margin-top:2px}.navbar.shrink{transform:translate(-50%) scale(.9);top:10px}}html{scroll-behavior:smooth}.home-section{width:100%;min-height:100vh;padding:6rem 1.25rem 3rem;margin:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;position:relative;overflow:hidden;background:#b9e6f8}.home-container{max-width:960px;width:100%;margin:0 auto;display:grid;grid-template-columns:1.25fr 1fr;gap:3rem;align-items:center;box-sizing:border-box}.home-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left;position:relative;z-index:11}.home-section h1{margin:0;padding:0;line-height:1;max-width:100%;word-wrap:break-word}.home-title{color:#333;margin-bottom:.75rem}.home-subtitle{font-family:Google Sans,sans-serif;font-size:1rem;font-weight:500;color:#2f2f2f;margin:0;letter-spacing:.03em;line-height:1.5}.home-role-line,.home-typing-text,.photography-highlight-link{font-family:Google Sans,sans-serif}.home-intro{margin:0 0 .55rem;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.1em;line-height:1.5}.home-role-line{font-size:.65rem;font-weight:700;letter-spacing:.1em;line-height:1.5}.photography-highlight-link{color:inherit;text-decoration:none;position:relative;transition:color .3s ease;font-weight:850;display:inline-block}.photography-highlight-link:after{content:"";position:absolute;width:100%;transform:scaleX(0);height:2px;bottom:-2px;left:0;background-color:currentColor;transform-origin:bottom right;transition:transform .25s ease-out}.photography-highlight-link:hover{color:#000}.photography-highlight-link:hover:after{transform:scaleX(1);transform-origin:bottom left}.skill-highlight{font-weight:850;color:#111;display:inline-block;transition:color .3s ease}.typing-cursor{width:5px;height:1em;background-color:#2f2f2f;margin-left:2px;display:inline-block;vertical-align:-2px;animation:cursor-blink 1s step-end infinite}.home-cta{display:inline-flex;align-items:center;gap:.55rem;margin-top:2rem;padding:.7rem 1rem;border:2px solid #2f2f2f;border-radius:10px;background:#fff;box-shadow:4px 4px #2f2f2f;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .16s cubic-bezier(.23,1,.32,1),box-shadow .16s cubic-bezier(.23,1,.32,1)}.home-cta:hover{transform:translate(2px,2px);box-shadow:2px 2px #2f2f2f}.home-cta:active{transform:translate(4px,4px) scale(.98);box-shadow:0 0 #2f2f2f}.lanyard{position:absolute;z-index:10;top:0;left:0;width:100%;height:100vh;pointer-events:none}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}@media(max-width:820px){.home-section{padding:7rem 1.25rem 3rem}.home-container{display:flex;flex-direction:column;align-items:center;gap:2rem}.home-info{align-items:center;text-align:center;position:absolute;bottom:10%}.home-title{text-align:center}.home-subtitle{text-align:center;max-width:500px}.desktop-only-subtitle{display:none}}.lanyard-wrapper{position:relative;z-index:0;width:100%;height:100vh;display:flex;justify-content:center;align-items:center;pointer-events:auto;transform:scale(1);transform-origin:center}body.dragging-lanyard,body.dragging-lanyard *{user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.about-section{width:100%;padding:6rem 1.25rem 3rem;box-sizing:border-box;background:#fffdf6}.about-container{max-width:1120px;margin:0 auto}.about-content{display:grid;grid-template-columns:1.5fr 1fr;gap:1.5rem;margin-top:1rem}.about-card{border:2px solid #2f2f2f;border-radius:22px;background:#fffce1;box-shadow:7px 7px #2f2f2f;padding:2.25rem 2.5rem;color:#000;box-sizing:border-box;position:relative;overflow:hidden;display:flex;flex-direction:column}.about-card-wrapper:nth-child(2) .about-card{background:#b9e6f8}.about-bio h3,.about-skills h3{font-size:1.25rem;font-weight:800;color:#111;margin:0 0 .75rem}.about-bio p{font-size:14px;font-weight:600;color:#000000a6;line-height:1.6;margin:0}.skills-grid{display:flex;flex-wrap:wrap;gap:.5rem}.skill-badge{font-size:11px;font-weight:800;color:#0000008c;background:#fffdf6b8;border:1.5px solid #2f2f2f;padding:.35rem .65rem;border-radius:12px}.about-links{margin-top:1.5rem;display:flex}.about-github-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-radius:12px;font-weight:700;font-size:12px;text-decoration:none;background:#000000d9;color:#fff;border:0;box-sizing:border-box;cursor:pointer}.github-icon{width:18px;height:18px;display:block}@media(max-width:820px){.about-content{grid-template-columns:1fr;gap:1.25rem}.about-card{padding:1.5rem}}.work-section{width:100%;padding:6rem 1.25rem 3rem;box-sizing:border-box;background:#b9e6f8}.work-container{max-width:1120px;margin:0 auto}.work-content{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1rem;color:#000}.work-card{border:2px solid #2f2f2f;border-radius:18px;background:#d8c8ff;box-shadow:6px 6px #2f2f2f;padding:3rem 2.5rem;min-height:240px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:3rem;box-sizing:border-box;width:100%;position:relative;overflow:hidden}.work-card-wrapper:nth-child(2) .work-card{background:#ffe17d}.work-card-wrapper:nth-child(3) .work-card{background:#b8e5c4}.work-details{flex:1.1;display:flex;flex-direction:row;align-items:center;gap:1.25rem}.work-logo{width:60px;height:60px;border-radius:12px;object-fit:contain;background:#fffdf6;border:1.5px solid #2f2f2f;padding:6px;box-sizing:border-box}.work-info-meta{display:flex;flex-direction:column;gap:.2rem}.work-role{font-size:1.35rem;font-weight:800;color:#111;margin:0}.work-company{font-size:1.05rem;font-weight:700;color:#000000b3;margin:0}.work-duration{font-size:13px;font-weight:600;color:#00000080;margin:0}.work-meta{flex:1.8;display:flex;flex-direction:column;gap:.85rem}.work-description{font-size:14px;font-weight:600;color:#000000bf;line-height:1.5;margin:0}.work-highlights{margin:0;padding-left:1.15rem;font-size:13px;font-weight:600;color:#0009;line-height:1.6}.work-highlights li{margin-bottom:.35rem}.work-highlights li:last-child{margin-bottom:0}.work-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.work-tag{font-size:11px;font-weight:800;color:#0000008c;background:#fffdf6b8;border:1.5px solid #2f2f2f;padding:.35rem .65rem;border-radius:12px}@media(max-width:820px){.work-card{flex-direction:column;align-items:stretch;gap:1.5rem;padding:1.5rem}}.projects-section{width:100%;padding:6rem 1.25rem 3rem;box-sizing:border-box;background:#fffdf6}.projects-container{max-width:1400px;margin:0 auto}.projects-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:1rem;color:#000}.project-card-wrapper{width:100%;opacity:1!important}.project-card{opacity:1!important;visibility:visible!important;border:2px solid #2f2f2f;border-radius:22px;background:#ffc89b;box-shadow:6px 6px #2f2f2f;padding:0;min-height:240px;display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;width:100%;height:100%;position:relative;overflow:hidden;will-change:transform,opacity}.project-card-wrapper:nth-child(2) .project-card{background:#b9e6f8}.project-card-wrapper:nth-child(3) .project-card{background:#b8e5c4}.project-details{flex:2;margin-bottom:0}.project-card-content{display:flex;flex:1;flex-direction:column;align-items:stretch;gap:1.5rem;padding:2rem 2.5rem 2.5rem}.project-title{font-size:1.35rem;font-weight:800;color:#111;margin:0 0 .6rem}.project-counter{margin:0 0 .5rem;font-size:11px;font-weight:800;letter-spacing:.08em;color:#00000073}.project-media-frame,.project-media-placeholder{display:block;width:100%;height:210px;margin:1.2rem 1.2rem 0;width:calc(100% - 2.4rem);border:2px solid #2f2f2f;border-radius:12px;overflow:hidden}.project-media-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#79bbff70,#74d7e74d),#fffdf6;color:#00000085;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.project-media{display:block;width:100%;height:100%;background:#00000014;object-fit:cover}.project-description{font-size:14px;font-weight:600;color:#000000a6;line-height:1.6;margin:0}.project-meta{display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;margin-top:auto}.project-tags{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.5rem;margin-bottom:0}.project-tag{font-size:11px;font-weight:800;color:#0000008c;background:#fffdf6b8;border:1.5px solid #2f2f2f;padding:.35rem .65rem;border-radius:12px}.project-links{display:flex;gap:.75rem;width:100%}.project-link{flex:1;display:inline-block;padding:.65rem .9rem;border-radius:12px;font-weight:700;font-size:12px;text-decoration:none;text-align:center;box-sizing:border-box;transition:border-color .2s,color .2s}.project-link-demo,.project-link-code{background:#000000d9;color:#fff;border:0}@media(max-width:820px){.projects-content{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{min-height:unset}.project-card-content{gap:1.5rem;padding:1.5rem}.project-media-frame,.project-media-placeholder{height:170px}}@media(max-width:560px){.projects-content{grid-template-columns:1fr}}.contact-section{position:relative;width:100%;padding:clamp(5rem,10vw,9rem) max(8vw,2rem);box-sizing:border-box;background:#2f2f2f;overflow:hidden}.contact-section .section-title{color:#fffdf6}.contact-section .section-subheader{color:#fffdf6;font-size:clamp(4rem,8.5vw,8.5rem);margin-bottom:0}.contact-container{max-width:1120px;margin:0 auto;position:relative;z-index:1}.contact-content{margin-top:clamp(2.8rem,5vw,4.5rem);color:#fffdf6}.contact-info{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);column-gap:3rem;row-gap:2.6rem;box-sizing:border-box;position:relative}.contact-details{grid-column:1}.contact-info h3{font-family:RocketRaccoon,sans-serif;font-size:2.1rem;font-weight:400;letter-spacing:-.05em;color:#fffdf6;margin:0 0 .7rem}.contact-info p{font-size:.86rem;font-weight:500;color:#fffdf6cc;line-height:1.6;margin:0}.contact-social{grid-column:1 / -1;list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.8rem}.contact-social-link{display:inline-flex;align-items:center;gap:.48rem;padding:.65rem .8rem;border:1px solid rgba(255,253,246,.45);border-radius:999px;color:#fffdf6;text-decoration:none;background:transparent}.contact-social-label{font-size:.75rem;font-weight:700;color:#fffdf6}@media(max-width:820px){.contact-info{grid-template-columns:1fr;gap:2rem}.contact-details,.contact-social{grid-column:auto}.contact-social{min-width:unset}}.footer{width:100%;padding:2.5rem 1.25rem 2rem;margin-top:auto;box-sizing:border-box;background:#fffdf6}.footer-container{max-width:1120px;margin:0 auto;border-radius:18px;background-color:#fffdf6;border:2px solid #2f2f2f;box-shadow:5px 5px #2f2f2f;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-sizing:border-box;position:relative;overflow:hidden}.footer-nav{display:flex;justify-content:center}.footer-menu{display:flex;gap:1.25rem;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:center}.footer-item{display:flex;align-items:center;justify-content:center}.footer-link{text-decoration:none;color:#333;font-weight:600;font-size:13px;padding:.5rem .75rem;border-radius:10px;display:grid;gap:.15rem;min-width:220px;text-align:center;background:transparent}.footer-link-label{font-size:13px;font-weight:800;color:#333}.footer-link-value{font-size:12px;font-weight:600;color:#0009}.footer-meta{display:flex;flex-direction:column;gap:.25rem;align-items:center;justify-content:center;text-align:center}.footer-logo{font-family:RocketRaccoon;font-size:26px;color:#333;margin:0;line-height:1}.footer-copy{margin:0;font-size:12px;color:#0000008c}.footer-back-to-top{color:#333;font-size:.72rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}@media screen and (max-width:520px){.footer{padding:2rem 1.25rem 1.5rem}.footer-container{align-items:flex-start;flex-direction:column}}.photography-page{min-height:100vh;background:#fffdf6;color:#2f2f2f}.photography-container{width:min(100%,1120px);margin:0 auto}.gallery-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.56fr);gap:2rem;align-items:end}.photography-kicker{margin:0 0 .55rem;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.1em}.gallery-heading h2{margin:0;color:#2f2f2f;font-family:RocketRaccoon,sans-serif;font-weight:400;letter-spacing:-.08em;line-height:.78}.gallery-heading-copy>p{margin:0;color:#696964;font-family:Google Sans,sans-serif;font-size:.94rem;font-weight:500;line-height:1.65}.instagram-btn{display:inline-flex;align-items:center;gap:.55rem;margin-top:1.35rem;padding:.7rem 1rem;border:2px solid #2f2f2f;border-radius:10px;background:#fff;box-shadow:4px 4px #2f2f2f;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .16s cubic-bezier(.23,1,.32,1),box-shadow .16s cubic-bezier(.23,1,.32,1)}.instagram-btn:hover{transform:translate(2px,2px);box-shadow:2px 2px #2f2f2f}.instagram-btn:active{transform:translate(4px,4px) scale(.98);box-shadow:0 0 #2f2f2f}.instagram-btn svg,.lightbox-close svg,.lightbox-controls svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.photography-gallery{padding:clamp(6rem,10vw,8rem) max(8vw,2rem) clamp(5rem,9vw,8.5rem);background:#fffdf6}.gallery-heading h2{font-size:clamp(3.4rem,6.5vw,6.7rem)}.gallery-heading-copy>p{max-width:310px;margin-bottom:.4rem}.photo-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:3.7rem 0 2rem;padding:.7rem 0;border-top:1px solid rgba(47,47,47,.18);border-bottom:1px solid rgba(47,47,47,.18)}.photo-filter-buttons{display:flex;flex-wrap:wrap;gap:.45rem}.photo-filter-buttons button{padding:.5rem .72rem;border:1px solid #2f2f2f;border-radius:999px;background:transparent;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:.67rem;font-weight:600;cursor:pointer;transition:background .18s cubic-bezier(.23,1,.32,1),color .18s cubic-bezier(.23,1,.32,1)}.photo-filter-buttons button:hover,.photo-filter-buttons button.is-active{background:#2f2f2f;color:#fffdf6}.photo-filter-bar>span{color:#696964;font-family:Google Sans,sans-serif;font-size:.68rem;font-style:italic}.photography-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:clamp(1rem,2vw,1.8rem)}.photo-card{position:relative;padding:.75rem .75rem .9rem;border:1.7px solid #2f2f2f;border-radius:17px;box-shadow:4px 5px #2f2f2f;transition:transform .2s cubic-bezier(.23,1,.32,1),box-shadow .2s cubic-bezier(.23,1,.32,1)}.photo-card:hover{transform:translateY(-5px) rotate(0)!important;box-shadow:7px 9px #2f2f2f}.photo-card-1{background:#fffce1;transform:rotate(-1.2deg)}.photo-card-2{margin-top:3.2rem;background:#d8c8ff;transform:rotate(.9deg)}.photo-card-3{background:#b8e5c4;transform:rotate(-.5deg)}.photo-card-4{margin-top:-1rem;background:#ffb1c7;transform:rotate(1deg)}.photo-open-button{position:relative;display:block;width:100%;padding:0;overflow:hidden;border:1.5px solid #2f2f2f;border-radius:11px;background:#2f2f2f;cursor:zoom-in}.photo-open-button:before{position:absolute;z-index:1;inset:0;content:"";background:linear-gradient(110deg,#dedbd2 25%,#f5f1e8,#dedbd2 65%);background-size:250% 100%;opacity:1;animation:photo-loading-shimmer 1.2s ease-in-out infinite;transition:opacity .18s ease-out}.photo-open-button.is-loaded:before{opacity:0;animation:none}.photo-img{position:relative;z-index:0;display:block;width:100%;aspect-ratio:.82;object-fit:cover;filter:saturate(.84) contrast(.94);transition:transform .35s cubic-bezier(.23,1,.32,1),filter .35s cubic-bezier(.23,1,.32,1)}.photo-card:nth-child(2) .photo-img,.photo-card:nth-child(5) .photo-img{aspect-ratio:1.1}.photo-card:hover .photo-img{transform:scale(1.045);filter:saturate(1)}.photo-open-icon{position:absolute;z-index:2;top:.55rem;right:.55rem;display:grid;width:31px;height:31px;place-items:center;border:1px solid #2f2f2f;border-radius:50%;background:#fffdf6;color:#2f2f2f;font-size:1rem;font-weight:700;opacity:0;transform:translateY(-6px);transition:opacity .18s cubic-bezier(.23,1,.32,1),transform .18s cubic-bezier(.23,1,.32,1)}.photo-card:hover .photo-open-icon{opacity:1;transform:translateY(0)}@keyframes photo-loading-shimmer{to{background-position:-150% 0}}@media(prefers-reduced-motion:reduce){.photo-open-button:before{animation:none}}.photo-category-tag{display:inline-block;margin:.8rem 0 .35rem;padding:.27rem .48rem;border:1.2px solid #2f2f2f;border-radius:4px;background:#fffdf6;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:.54rem;font-weight:700;letter-spacing:.06em}.photo-card-caption{display:flex;align-items:end;justify-content:space-between;gap:.5rem}.photo-card-caption h3{margin:0 0 .13rem;color:#2f2f2f;font-family:Google Sans,sans-serif;font-size:1rem;font-weight:700;letter-spacing:-.035em}.photo-card-caption p{margin:0;color:#696964;font-family:Google Sans,sans-serif;font-size:.62rem;font-weight:600}.photo-card-caption>span{font-family:monospace;font-size:.72rem;font-weight:500}.lightbox-backdrop{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:1rem;background:#2f2f2fbf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.lightbox-content{position:relative;width:min(100%,900px);max-height:94vh;overflow:auto;padding:1rem;border:2px solid #2f2f2f;border-radius:20px;background:#fffdf6;box-shadow:10px 10px #2f2f2f80}.lightbox-img{display:block;width:100%;max-height:68vh;border-radius:12px;background:#2f2f2f;object-fit:contain}.lightbox-close,.lightbox-controls button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid #2f2f2f;border-radius:50%;background:#fffce1;color:#2f2f2f;cursor:pointer}.lightbox-close{position:absolute;z-index:2;top:1.65rem;right:1.65rem;box-shadow:2px 2px #2f2f2f}.lightbox-details{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:1rem .25rem .2rem}.lightbox-details p{margin:0 0 .35rem;font-family:Google Sans,sans-serif;font-size:.58rem;font-weight:700;letter-spacing:.07em}.lightbox-details h2{margin:0 0 .18rem;font-family:Google Sans,sans-serif;font-size:2rem;font-weight:800;letter-spacing:-.06em;line-height:.82}.lightbox-details>div>span{color:#696964;font-family:Google Sans,sans-serif;font-size:.67rem}.lightbox-controls{display:flex;align-items:center;gap:.55rem}.lightbox-controls>span{color:#2f2f2f!important;font-size:.66rem!important;font-weight:700}@media(max-width:760px){.gallery-heading{grid-template-columns:1fr}.photography-gallery{padding:6rem 6vw 4.7rem}.photography-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.photo-card-2{margin-top:2rem}.photo-card-4{margin-top:0}}@media(max-width:440px){.photo-filter-bar{align-items:start;flex-direction:column;margin-top:2.7rem}.photography-grid{grid-template-columns:1fr}.photo-card-2,.photo-card-4{margin-top:0}.photo-card .photo-img,.photo-card:nth-child(2) .photo-img,.photo-card:nth-child(5) .photo-img{aspect-ratio:1.12}.lightbox-details{align-items:start;flex-direction:column}}.marquee-banner{display:grid;gap:.1rem;overflow:hidden;padding:.65rem 0;background:#2f2f2f;color:#fffdf6}.marquee-banner-row{width:100%;overflow:hidden}.marquee-banner-track{display:flex;width:max-content;font-family:RocketRaccoon,sans-serif;font-size:clamp(1.15rem,2.1vw,2.25rem);font-weight:400;letter-spacing:-.04em;line-height:.9;white-space:nowrap}.marquee-banner-track span{display:block;padding-right:1rem}#root{width:100%;min-height:100vh;margin:0;padding:0;display:flex;flex-direction:column}.app-main{flex:1}section[id]{scroll-margin-top:110px}
