.projects-section{color:#171b25;background-color:#fdfaf6;background-image:linear-gradient(90deg,#e8e5df 1px,#0000 1px),linear-gradient(#e8e5df 1px,#0000 1px);background-size:40px 40px;width:100%;padding:3rem 1rem;scroll-margin-top:5rem;position:relative;overflow:hidden}.projects-section:before{content:"";pointer-events:none;background:#fffcf3d1;position:absolute;inset:0}.projects-section.is-work-page{min-height:100vh;padding-top:8.5rem}.projects-anchor{position:absolute;top:0}.projects-container{z-index:1;width:100%;max-width:90rem;margin:0 auto;position:relative}.projects-kicker{text-align:center;color:#ff4d00;margin-bottom:.5rem;font-size:1rem;font-weight:500}.projects-title{text-align:center;color:#000;margin-bottom:1.5rem;letter-spacing:0!important;font-family:whyte,whyte Fallback!important;font-size:2.25rem!important;font-weight:900!important;line-height:1!important}.projects-intro{text-align:center;color:#52525b;max-width:42rem;margin:0 auto 5rem;padding:0 1rem;font-size:.95rem;line-height:1.8}.hover-link-preview{color:#27272a;cursor:pointer;font-family:whyte,whyte Fallback;font-size:inherit;line-height:inherit;background:0 0;border:0;padding:0;font-weight:700;transition:color .3s;display:inline-block;position:relative}.hover-link-preview:hover,.hover-link-preview.is-active{color:#ff4d00}.hover-link-preview:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .3s;position:absolute;bottom:.05em;left:0;right:0;transform:scaleX(0)}.hover-link-preview:hover:after,.hover-link-preview.is-active:after{transform-origin:0;transform:scaleX(1)}.preview-card{z-index:1000;pointer-events:none;opacity:0;will-change:transform,opacity;transition:opacity .25s,transform .25s cubic-bezier(.34,1.56,.64,1);position:fixed;transform:translateY(10px)scale(.95)}.preview-card.visible{opacity:1;transform:translateY(0)scale(1)}.preview-card-inner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a1a1a;border-radius:16px;width:296px;padding:8px;overflow:hidden;box-shadow:0 25px 50px -12px #000000c7,0 0 0 1px #ffffff1a,0 0 60px #ff6b6b1a}.preview-card img{object-fit:cover;border-radius:10px;width:280px;height:160px;display:block}.preview-card-title{color:#fff;padding:12px 8px 4px;font-size:.85rem;font-weight:800;line-height:1.3}.preview-card-subtitle{color:#a1a1aa;padding:0 8px 8px;font-size:.75rem;line-height:1.5}.projects-grid{grid-template-columns:1fr;align-items:start;gap:2rem;padding-top:2.5rem;display:grid}.featured-project-card{isolation:isolate;color:#1a1a1a;will-change:transform;border-radius:2.5rem;height:fit-content;text-decoration:none;transition:box-shadow .3s;display:block;position:relative;overflow:visible;box-shadow:0 10px 30px #0f172a1f}.featured-project-card:hover{box-shadow:0 26px 55px #0f172a29}.project-thread{z-index:-1;background:#d4d4d8;width:1px;height:3rem;transition:height .5s;position:absolute;top:-3rem;left:50%;transform:translate(-50%)}.project-thread span{background:#d4d4d8;border-radius:999px;width:.75rem;height:.75rem;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.featured-project-card:hover .project-thread{height:4rem}.featured-project-content{z-index:1;border-radius:inherit;background:inherit;flex-direction:column;height:fit-content;padding:1.65rem 2rem .65rem;display:flex;position:relative;overflow:hidden}.featured-project-content.is-dark-card{color:#fff}.featured-project-topline{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.35rem;display:flex}.featured-project-rule{opacity:.6;background:currentColor;width:3rem;height:2px;margin-top:.75rem}.featured-project-year{border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:999px;padding:.25rem 1rem;font-size:.875rem;font-weight:800;line-height:1.5}.featured-project-copy{margin-bottom:.65rem}.featured-project-category{letter-spacing:.2em;text-transform:uppercase;opacity:.62;margin-bottom:.75rem;font-family:whyte,whyte Fallback;font-size:.75rem;font-weight:800}.featured-project-copy h3{letter-spacing:0;text-transform:uppercase;overflow-wrap:anywhere;margin-bottom:1rem;font-family:whyte,whyte Fallback;font-size:clamp(2.25rem,6vw,3.25rem);font-weight:900;line-height:.88}.featured-project-desc{color:currentColor;letter-spacing:.16em;text-transform:uppercase;align-items:center;width:fit-content;padding:.45rem 0;font-family:whyte,whyte Fallback;font-size:.75rem;font-weight:800;line-height:1.4;display:inline-flex}.featured-project-preview{background:#fffcf338;border-radius:2rem;height:clamp(15.5rem,18vw,18rem);min-height:15.5rem;margin:0 -1.35rem;transition:transform .5s;position:relative;overflow:hidden}.featured-project-card:hover .featured-project-preview{transform:scale(1.02)}.featured-project-image{box-sizing:border-box;object-fit:cover;object-position:center bottom;width:100%;height:100%;padding:0;position:absolute;inset:0}.featured-project-tags{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:absolute;bottom:1rem;right:1rem}.featured-project-tags a,.featured-project-tech li{color:#1a1a1a;letter-spacing:.14em;text-transform:uppercase;background:#fffcf3;border-radius:999px;font-size:.625rem;font-weight:800;box-shadow:0 8px 18px #0f172a14}.featured-project-tags a{padding:.5rem 1rem;text-decoration:none;transition:background-color .3s,color .3s,transform .3s}.featured-project-tags a:hover{color:#fff;background:#ff4d00;transform:translateY(-2px)}.featured-project-tech{flex-wrap:wrap;gap:.5rem;margin-top:.875rem;padding:0;list-style:none;display:flex}.featured-project-tech li{flex:1 1 calc(100%/min(var(--tech-count),3) - .5rem);text-align:center;white-space:nowrap;justify-content:center;align-items:center;padding:.45rem .8rem;display:inline-flex}.projects-more-wrap{justify-content:center;margin-top:5rem;display:flex}.projects-more-btn{color:#3f3f46;cursor:pointer;background:0 0;border:1px solid #3f3f46;border-radius:999px;justify-content:center;align-items:center;padding:.8rem 2.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .3s,border-color .3s,color .3s,transform .3s;display:inline-flex}.projects-more-btn:hover{color:#fff;background:#1a1a1a;border-color:#1a1a1a;transform:translateY(-2px)}@media (min-width:768px){.projects-section{padding:4rem 3rem}.projects-title{font-size:3rem!important}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem}.featured-project-card.is-lowered{margin-top:4rem}}@media (min-width:1280px){.projects-section{padding-left:5%;padding-right:5%}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7rem 4rem}.featured-project-card.is-lowered{margin-top:8.5rem}}@media (max-width:640px){.projects-section{padding-top:3rem;padding-bottom:3rem}.projects-title{font-size:2.25rem!important}.projects-intro{margin-bottom:3.5rem;padding-left:0;padding-right:0}.projects-grid{gap:5.75rem;padding-top:4rem}.featured-project-card+.featured-project-card{margin-top:0}.featured-project-card{border-radius:1.75rem}.featured-project-content{padding:1.25rem 1.5rem .55rem}.featured-project-copy h3{font-size:clamp(1.9rem,11vw,2.75rem)}.featured-project-preview{border-radius:1.4rem;height:clamp(13rem,58vw,16rem);min-height:13rem;margin-left:-1.1rem;margin-right:-1.1rem}.featured-project-image{object-fit:contain;object-position:center bottom}.featured-project-tags{gap:.4rem;bottom:.75rem;right:.75rem}.featured-project-tags a{padding:.42rem .75rem;font-size:.56rem}.featured-project-tech{flex-wrap:wrap}.featured-project-tech li{padding-left:.55rem;padding-right:.55rem;font-size:.56rem}}@media (max-width:380px){.projects-section{padding-left:.75rem;padding-right:.75rem}.featured-project-content{padding-left:1.1rem;padding-right:1.1rem}.featured-project-preview{margin-left:-.85rem;margin-right:-.85rem}}.dark .projects-section{color:#fff;background-color:#0a0a0a;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(#ffffff0f 1px,#0000 1px)}.dark .projects-section:before{background:#0a0a0a}.dark .projects-title{color:#fff}.dark .projects-intro{color:#d4d4d8}.dark .hover-link-preview{color:#e4e4e7}.dark .hover-link-preview:hover,.dark .hover-link-preview.is-active{color:#ff4d00}.dark .project-thread,.dark .project-thread span{background:#3f3f46}.dark .featured-project-card{box-shadow:0 18px 50px #00000052}.dark .projects-more-btn{color:#fff;border-color:#fff}.dark .projects-more-btn:hover{color:#000;background:#fffcf3;border-color:#fffcf3}
