.portfolio-section{background:var(--bg-light)}.portfolio-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;display:grid}.portfolio-card{background:var(--bg-white);border:1px solid var(--border-color);transition:var(--transition);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.portfolio-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.portfolio-hero{aspect-ratio:3/2;background:var(--bg-light);position:relative}.portfolio-hero-image{object-fit:cover}.portfolio-result{color:#fff;font-family:var(--font-poppins), sans-serif;letter-spacing:.5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a1a1ad9;border-radius:50px;padding:6px 14px;font-size:12px;font-weight:600;position:absolute;bottom:12px;left:12px}.portfolio-thumbs{gap:6px;padding:10px 12px 0;display:flex}.portfolio-thumb{aspect-ratio:4/3;cursor:pointer;background:var(--bg-light);opacity:.7;transition:var(--transition);border:2px solid #0000;border-radius:8px;flex:1;padding:0;position:relative;overflow:hidden}.portfolio-thumb img{object-fit:cover}.portfolio-thumb:hover{opacity:1}.portfolio-thumb.active{border-color:var(--accent-color);opacity:1}.portfolio-content{flex-direction:column;flex:1;padding:20px 24px 28px;display:flex}.portfolio-service{color:var(--accent-color);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px;font-size:12px;font-weight:600}.portfolio-address{margin-bottom:2px;font-size:22px}.portfolio-suburb{color:var(--text-light);margin-bottom:14px;font-size:14px}.portfolio-meta{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.portfolio-chip{color:var(--text-dark);background:var(--bg-light);border:1px solid var(--border-color);white-space:nowrap;border-radius:50px;padding:4px 12px;font-size:12px;font-weight:500}.portfolio-description{color:var(--text-light);font-size:15px;line-height:1.65}.portfolio-cta{text-align:center;margin-top:50px}.portfolio-cta p{color:var(--text-light);margin-bottom:20px;font-size:18px}@media (max-width:968px){.portfolio-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}}@media (max-width:480px){.portfolio-content{padding:16px 18px 22px}.portfolio-address{font-size:20px}}
