.portfolio-hero{padding:110px 0 78px;background:linear-gradient(135deg,#12362a,#245a43);color:#fff}.portfolio-hero h1{max-width:900px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,6vw,5.4rem);line-height:.98;margin:.35rem 0 1rem}.portfolio-hero p:last-child{max-width:760px;color:#e6efe9;font-size:1.12rem}.portfolio-section{background:#f6f7f5}.portfolio-tools{display:grid;grid-template-columns:1fr 280px;gap:14px;margin-bottom:1rem}.portfolio-tools input,.portfolio-tools select{width:100%;padding:14px 16px;border:1px solid #cfd7d2;border-radius:9px;background:#fff;font:inherit}.portfolio-results{min-height:26px;margin-bottom:1rem;color:#52645a;font-weight:800}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.portfolio-card{background:#fff;border:1px solid #dfe6e1;border-radius:17px;overflow:hidden;box-shadow:0 12px 34px rgba(20,45,34,.09);display:flex;flex-direction:column;transition:.2s}.portfolio-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(20,45,34,.14)}.portfolio-card__image{position:relative;display:block}.portfolio-card__image img{width:100%;height:270px;object-fit:cover;background:#eef2ef}.portfolio-card__badge{position:absolute;left:.8rem;top:.8rem;background:rgba(20,56,45,.9);color:#fff;border-radius:999px;padding:.42rem .7rem;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.portfolio-card__count{position:absolute;right:.8rem;bottom:.8rem;background:rgba(0,0,0,.7);color:#fff;border-radius:999px;padding:.4rem .65rem;font-size:.78rem;font-weight:850}.portfolio-card__body{padding:1.15rem;display:flex;flex-direction:column;flex:1}.portfolio-card__location{margin:0;color:#607267;font-weight:850;font-size:.86rem}.portfolio-card h2{font-size:1.35rem;line-height:1.17;color:#173d2d;margin:.4rem 0}.portfolio-card__summary{margin:.2rem 0 .8rem;color:#55615a}.portfolio-card__services{display:flex;flex-wrap:wrap;gap:.4rem;margin:.25rem 0 1rem}.portfolio-card__services span{background:#edf2ee;color:#285c43;border-radius:999px;padding:.38rem .58rem;font-size:.76rem;font-weight:800}.portfolio-card__link{margin-top:auto;color:#174d35;font-weight:950}.portfolio-empty{grid-column:1/-1;background:#fff;border:1px solid #dfe6e1;border-radius:16px;padding:60px 25px;text-align:center}.portfolio-cta{background:#eee8dc;padding:48px 0}.portfolio-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.portfolio-cta h2{font-family:Georgia,"Times New Roman",serif;margin:.2rem 0;color:#173d2d}.project-detail-shell{background:#f6f7f5;padding:55px 0 90px}.project-detail-container{max-width:1080px}.project-back{display:inline-block;margin-bottom:22px;color:#285c43;font-weight:850}.project-detail-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 60px rgba(20,45,34,.1)}.project-detail-header{padding:clamp(26px,5vw,58px)}.project-detail-kicker{text-transform:uppercase;letter-spacing:.08em;color:#7b8e52;font-weight:950;margin:0 0 .55rem}.project-detail-header h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,5.8vw,4.8rem);line-height:1;margin:.25rem 0 1rem;color:#153b2d}.project-detail-meta{display:flex;flex-wrap:wrap;gap:.6rem 1rem;color:#5d6d63;font-weight:800}.project-detail-summary{font-size:1.14rem;line-height:1.65;max-width:850px;margin:1.25rem 0 0}.project-hero-image{width:100%;max-height:650px;object-fit:cover;background:#edf2ee}.project-detail-body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);gap:2.3rem;padding:clamp(26px,5vw,58px)}.project-story{font-size:1.06rem;line-height:1.8}.project-story h2,.project-sidebar h2,.project-gallery h2{font-family:Georgia,"Times New Roman",serif;color:#173d2d}.project-story p:first-child{margin-top:0}.project-sidebar{display:grid;align-content:start;gap:1rem}.project-facts{border:1px solid #dfe6e1;background:#fafbf9;border-radius:13px;padding:1.2rem}.project-facts h2{margin-top:0}.project-facts dl{margin:0;display:grid;gap:.8rem}.project-facts dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:#65746b;font-weight:900}.project-facts dd{margin:.2rem 0 0;color:#173d2d;font-weight:850}.project-services{display:flex;flex-wrap:wrap;gap:.45rem}.project-services span{background:#e9f0eb;color:#285c43;border-radius:999px;padding:.45rem .65rem;font-size:.8rem;font-weight:850}.linked-blog-card{border-radius:13px;padding:1.2rem;background:#173d2d;color:#fff}.linked-blog-card h2{color:#fff;margin-top:0}.linked-blog-card p{color:#e6efe9}.linked-blog-card a{display:inline-block;color:#fff;font-weight:950;border-bottom:2px solid #c99556}.project-gallery{padding:0 clamp(26px,5vw,58px) clamp(30px,5vw,58px)}.project-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.project-gallery-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer;border-radius:13px;overflow:hidden}.project-gallery-button img{width:100%;height:250px;object-fit:cover;transition:.2s}.project-gallery-button:hover img{transform:scale(1.025)}.project-detail-lightbox{position:fixed;inset:0;z-index:7000;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;padding:2rem}.project-detail-lightbox.open{display:flex}.project-detail-lightbox img{max-width:min(1200px,92vw);max-height:84vh;object-fit:contain;border-radius:10px}.project-detail-lightbox button{position:absolute;border:0;border-radius:999px;width:50px;height:50px;background:rgba(20,56,45,.9);color:#fff;font-size:1.8rem;cursor:pointer}.project-detail-lightbox .close{right:1rem;top:1rem}.project-detail-lightbox .prev{left:1rem}.project-detail-lightbox .next{right:1rem}.project-detail-lightbox .count{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);background:rgba(20,56,45,.9);color:#fff;border-radius:999px;padding:.45rem .8rem;font-weight:900}.project-not-found{background:#fff;border-radius:16px;padding:70px 25px;text-align:center}.project-loading{background:#fff;border-radius:16px;padding:60px 25px;text-align:center}@media(max-width:940px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}.project-detail-body{grid-template-columns:1fr}.project-gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.portfolio-tools{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:1fr}.portfolio-hero{padding:80px 0 55px}.portfolio-cta .container{display:block}.portfolio-cta .btn{margin-top:18px}.project-gallery-grid{grid-template-columns:1fr}.project-gallery-button img{height:260px}.project-detail-shell{padding-top:35px}}
