.projects-hero{background:#0c0d0c;height:100vh;position:relative;overflow:hidden}.projects-hero-img{object-fit:cover;object-position:center;z-index:0;will-change:transform, opacity;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.projects-hero-overlay{z-index:1;background:linear-gradient(90deg,#060806a6 0%,#06080659 32%,#06080614 58%,#06080600 78%),linear-gradient(#080a0866 0%,#080a081f 24%,#080a0814 48%,#080a0880 78%,#080a08ad 100%);flex-direction:column;justify-content:flex-end;height:100%;display:flex;position:relative}.projects-hero-content{color:#fff;max-width:640px;padding:0 80px 100px}.projects-hero-eyebrow{font-family:var(--font-body);letter-spacing:4px;text-transform:uppercase;color:var(--primary-green);align-items:center;gap:14px;margin-bottom:26px;font-size:12px;font-weight:600;display:flex}.projects-hero-eyebrow-line{background:var(--primary-green);width:40px;height:1px;display:inline-block}.projects-hero-content h1{font-family:var(--font-heading);letter-spacing:-.01em;color:#fff;margin-bottom:22px;font-size:4.4rem;font-weight:500;line-height:1.05}.projects-hero-content p{font-family:var(--font-body);letter-spacing:.01em;color:#ffffffd1;max-width:420px;font-size:1.05rem;font-weight:300;line-height:1.6}.projects-hero-scroll-cue{z-index:2;color:#ffffffbf;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.projects-hero-scroll-label{font-family:var(--font-body);letter-spacing:3px;text-transform:uppercase;font-size:10px;font-weight:500}.projects-hero-scroll-line{transform-origin:top;background:linear-gradient(#ffffffe6,#0000);width:1px;height:36px;animation:2.2s ease-in-out infinite projectsHeroScrollPulse}@keyframes projectsHeroScrollPulse{0%,to{opacity:.35;transform:scaleY(.55)}50%{opacity:1;transform:scaleY(1)}}@media (max-width:900px){.projects-hero-content{padding:0 48px 90px}.projects-hero-content h1{font-size:3.2rem}}@media (max-width:500px){.projects-hero{height:92vh}.projects-hero-content{max-width:100%;padding:0 26px 70px}.projects-hero-eyebrow{letter-spacing:3px;font-size:10px}.projects-hero-content h1{font-size:2.5rem}.projects-hero-content p{max-width:100%;font-size:.95rem}.projects-hero-scroll-cue{display:none}}
.proj-section{background:var(--bg-light);max-width:1400px;margin:0 auto;padding:130px 70px 140px}.proj-header{text-align:center;max-width:620px;margin:0 auto 64px}.proj-eyebrow{font-family:var(--font-body);letter-spacing:4px;text-transform:uppercase;color:var(--primary-green);justify-content:center;align-items:center;gap:14px;margin-bottom:24px;font-size:12px;font-weight:600;display:flex}.proj-eyebrow-line{background:var(--primary-green);width:40px;height:1px;display:inline-block}.proj-title{font-family:var(--font-heading);letter-spacing:.01em;color:var(--text-dark);margin-bottom:16px;font-size:2.6rem;font-weight:400}.proj-subtext{font-family:var(--font-body);color:var(--gray-dark);margin-bottom:36px;font-size:.95rem;font-weight:300;line-height:1.7}.proj-filter-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.proj-filter-btn{color:var(--text-dark);font-family:var(--font-body);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #00000040;border-radius:2px;padding:11px 22px;font-size:11px;font-weight:600;transition:background .35s,border-color .35s,color .35s}.proj-filter-btn.active,.proj-filter-btn:hover{background:var(--primary-green);border-color:var(--primary-green);color:#fff}.proj-grid{grid-template-columns:repeat(2,1fr);gap:48px 32px;margin-bottom:64px;display:grid}.proj-card{flex-direction:column;display:flex}.proj-carousel{border:1px solid #ffffff80;width:100%;padding-top:66%;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff9,0 16px 32px #0000000f}.proj-carousel-img{background-position:50%;background-size:cover;transition:transform .8s;position:absolute;inset:0}.proj-card:hover .proj-carousel-img{transform:scale(1.05)}.proj-carousel-placeholder{background:var(--gray-light);color:var(--gray-dark);font-family:var(--font-body);justify-content:center;align-items:center;font-size:.85rem;display:flex;position:absolute;inset:0}.proj-carousel-sheen{pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(135deg,#ffffff4d 0%,#ffffff0f 28%,#fff0 55%);position:absolute;inset:0}.carousel-btn{z-index:2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#fff;cursor:pointer;background:#080a0859;border:1px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;line-height:1;transition:background .3s,border-color .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-btn.prev{left:14px}.carousel-btn.next{right:14px}.carousel-btn:hover{background:var(--primary-green);border-color:var(--primary-green)}.proj-content{padding-top:20px}.proj-content h3{font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;color:var(--text-dark);margin-bottom:10px;font-size:11px;font-weight:600}.proj-content p{font-family:var(--font-body);color:var(--gray-dark);max-width:440px;font-size:.88rem;font-weight:300;line-height:1.65}.proj-pagination{justify-content:center;align-items:center;gap:8px;display:flex}.proj-page-arrow{width:36px;height:36px;color:var(--text-dark);cursor:pointer;background:0 0;border:1px solid #0003;border-radius:50%;justify-content:center;align-items:center;transition:border-color .25s,color .25s;display:flex}.proj-page-arrow:hover:not(:disabled){border-color:var(--primary-green);color:var(--primary-green)}.proj-page-arrow:disabled{opacity:.3;cursor:default}.proj-page-num{width:36px;height:36px;color:var(--gray-dark);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:.85rem;transition:color .25s,background .25s}.proj-page-num:hover{color:var(--text-dark)}.proj-page-num.active{background:var(--primary-green);color:#fff}@media (max-width:900px){.proj-section{padding:100px 40px 110px}.proj-title{font-size:2.1rem}.proj-grid{gap:40px 24px}}@media (max-width:768px){.proj-grid{grid-template-columns:1fr}}@media (max-width:500px){.proj-section{padding:80px 24px}.proj-header{margin-bottom:44px}.proj-eyebrow{letter-spacing:3px;font-size:10px}.proj-title{font-size:1.7rem}.proj-filter-buttons{gap:8px}.proj-filter-btn{padding:9px 16px;font-size:10px}.proj-grid{gap:40px}}
