.projects-hero{position:relative;padding:100px 0;background:#1f2937;color:#fff;overflow:hidden}.projects-hero::after{content:"";position:absolute;width:420px;height:420px;right:-160px;top:-180px;border-radius:50%;background:rgb(255 255 255 / .05);pointer-events:none}.projects-hero .container{position:relative;z-index:1}.projects-hero h1{margin:12px 0 20px;color:#fff;font-size:clamp(3rem, 6vw, 4.5rem);font-weight:700;line-height:1.05;letter-spacing:-.025em}.projects-hero p{max-width:700px;margin:0;color:rgb(255 255 255 / .85);font-size:1.25rem;line-height:1.7}.eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.15em;line-height:1.4;text-transform:uppercase}.projects-hero .eyebrow,.projects-cta .eyebrow{color:rgb(255 255 255 / .65)}.projects-intro{background:#fff;padding-top:6rem;padding-bottom:6rem}.projects-intro .about-grid{align-items:start}.projects-intro .about-statement{position:relative}.projects-intro .about-statement::before{content:"";display:block;width:42px;height:4px;margin-bottom:1.5rem;background:var(--accent);border-radius:2px}.projects-intro .about-statement h2{max-width:520px}.projects-intro .about-copy{max-width:680px}.project-gallery-section{position:relative;overflow:hidden;background:#dfe8f0;border-top:1px solid #cbd7e2;border-bottom:1px solid #cbd7e2;padding-top:6rem;padding-bottom:6rem}.project-gallery-section::before{content:"";position:absolute;width:600px;height:600px;right:-350px;top:100px;border-radius:50%;background:rgb(255 255 255 / .3);pointer-events:none}.project-gallery-section .container{position:relative;z-index:1}.project-gallery-section .section-heading{max-width:760px;margin-bottom:3rem}.project-gallery{position:relative;width:100%;max-width:1120px;margin:0 auto}.project-gallery-image{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#111820;border:1px solid rgb(0 0 0 / .1);border-radius:var(--radius-lg);box-shadow:0 25px 60px rgb(20 30 40 / .18),0 5px 15px rgb(20 30 40 / .1)}.project-gallery-image::before{content:"";position:absolute;z-index:5;left:0;right:0;top:0;height:4px;background:var(--accent)}.project-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity 0.6s ease,visibility 0.6s ease,transform 0.8s ease}.project-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}.project-slide img{display:block;width:100%;height:100%;object-fit:contain;background:#151c24}.project-gallery-info{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:1.25rem;margin-top:1.75rem}.project-gallery-details{min-height:145px;display:flex;align-items:center;justify-content:center;text-align:center}.project-gallery-detail{display:none;max-width:700px;animation:projectDetailIn 0.45s ease}.project-gallery-detail.is-active{display:block}@keyframes projectDetailIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.project-gallery-category{display:inline-block;margin-bottom:.6rem;padding:.4rem .85rem;border-radius:6px;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 3px 8px rgb(0 0 0 / .08)}.project-gallery-detail h3{margin:0 0 .65rem;color:var(--heading);font-size:clamp(1.45rem, 3vw, 2rem)}.project-gallery-detail p{max-width:640px;margin:0 auto;line-height:1.7;color:var(--text-muted)}.project-gallery-arrow{display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:1px solid #c5d0da;border-radius:50%;background:#fff;color:var(--heading);font-size:1.25rem;cursor:pointer;box-shadow:0 5px 15px rgb(20 30 40 / .08);transition:background 0.2s ease,color 0.2s ease,border-color 0.2s ease,transform 0.2s ease,box-shadow 0.2s ease}.project-gallery-arrow:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px rgb(20 30 40 / .14)}.project-gallery-arrow:active{transform:translateY(0)}.project-gallery-indicators{display:flex;align-items:center;justify-content:center;gap:.55rem;margin-top:.75rem}.project-gallery-indicator{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#aebbc7;cursor:pointer;transition:width 0.25s ease,background 0.25s ease}.project-gallery-indicator.is-active{width:26px;border-radius:4px;background:var(--accent)}.selected-projects{background:#f3f1ed;padding-top:6rem;padding-bottom:6rem;border-bottom:1px solid #dedbd5}.selected-projects .section-heading{max-width:760px}.project-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:3.5rem}.project-card{position:relative;min-height:310px;overflow:hidden;padding:2.25rem;border:1px solid #d6d2cb;border-radius:var(--radius-lg);background:#fff;box-shadow:0 6px 20px rgb(30 35 40 / .06);transition:transform 0.25s ease,box-shadow 0.25s ease,border-color 0.25s ease}.project-card-number{position:absolute;top:-.8rem;right:1.25rem;font-size:8rem;font-weight:800;line-height:1;color:rgb(30 40 50 / .055);pointer-events:none;transition:color 0.25s ease,transform 0.25s ease}.project-card::before{content:"";position:absolute;top:0;left:0;width:0;height:4px;background:var(--accent);transition:width 0.3s ease}.project-card:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:0 20px 45px rgb(30 35 40 / .13)}.project-card:hover::before{width:100%}.project-card:hover .project-card-number{color:rgb(30 40 50 / .085);transform:translateY(-3px)}.project-card h3{position:relative;z-index:1;max-width:420px;margin:3.25rem 0 1rem;font-size:clamp(1.35rem, 2vw, 1.7rem);color:var(--heading)}.project-card p{position:relative;z-index:1;max-width:520px;margin:0;line-height:1.7;color:var(--text-muted)}.project-tags{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.75rem}.project-tags span{display:inline-flex;align-items:center;min-height:30px;padding:.3rem .7rem;border:1px solid #dce5eb;border-radius:7px;background:linear-gradient(180deg,#f5f7f9 0%,#edf1f4 100%);color:#3b6f99;font-size:.7rem;font-weight:650;line-height:1.2;letter-spacing:.015em;white-space:nowrap;box-shadow:0 1px 2px rgb(20 30 40 / .04);transition:background 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease,transform 0.2s ease}.project-tags span:hover{border-color:#c7d6e1;background:#e8eef3;box-shadow:0 3px 8px rgb(20 30 40 / .07);transform:translateY(-1px)}.project-technologies{position:relative;overflow:hidden;text-align:center;background:linear-gradient(135deg,#17222d 0%,#293b4b 100%);padding-top:6rem;padding-bottom:6rem}.project-technologies .section-heading{max-width:760px;margin-left:auto;margin-right:auto}.project-technologies .eyebrow{color:var(--accent)}.project-technologies h2{color:#fff}.project-technologies .section-heading p{color:rgb(255 255 255 / .7)}.technology-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;max-width:900px;margin:3rem auto 0}.technology-list span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1.15rem;border:1px solid rgb(255 255 255 / .22);border-radius:6px;background:rgb(255 255 255 / .08);color:#fff;font-size:.82rem;font-weight:600;transition:background 0.2s ease,border-color 0.2s ease,transform 0.2s ease}.technology-list span:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.projects-cta{position:relative;overflow:hidden;text-align:center;background:linear-gradient(135deg,#eef4f8 0%,#e3edf4 100%);border-top:1px solid #cbd7e0;padding-top:6rem;padding-bottom:6rem}.projects-cta .container{max-width:760px}.projects-cta .eyebrow{color:var(--accent)}.projects-cta h2{margin-top:.75rem}.projects-cta p{max-width:650px;margin:1rem auto 2rem;color:var(--text-muted);line-height:1.7}@media (max-width:800px){.projects-intro,.project-gallery-section,.selected-projects,.project-technologies,.projects-cta{padding-top:4.5rem;padding-bottom:4.5rem}.project-cards{grid-template-columns:1fr}.project-card{min-height:0}}@media (max-width:600px){.projects-hero::after{width:280px;height:280px;right:-150px;top:-120px}.project-gallery-info{grid-template-columns:42px 1fr 42px;gap:.5rem}.project-gallery-arrow{width:42px;height:42px}.project-gallery-details{min-height:170px}.project-card{padding:1.75rem}.project-card-number{font-size:6rem}.technology-list{gap:.5rem}.technology-list span{min-height:40px;padding:.55rem .9rem}}@media (prefers-reduced-motion:reduce){.project-slide,.project-gallery-detail,.project-gallery-arrow,.project-gallery-indicator,.project-card,.project-card-number,.project-card::before,.project-tags span,.technology-list span{transition:none;animation:none}}