/* PGF software ecosystem: isolated visual extension of the existing cards. */
.portfolio .projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:stretch}
.portfolio .project{min-height:326px;padding:31px 29px 29px;justify-content:flex-end;gap:0;isolation:isolate;transition:border-color .3s,transform .3s,box-shadow .3s}
.portfolio .project:before{content:'';inset:0;background:linear-gradient(180deg,transparent 5%,rgba(216,219,221,.15) 45%,rgba(216,219,221,.45) 100%);z-index:-1}
.portfolio .project:nth-child(3n+1){background:radial-gradient(circle at 76% 22%,#cfd2d4 0%,#d3d6d8 32%,#d5d8da 78%)}
.portfolio .project:nth-child(3n+2){background:radial-gradient(circle at 72% 18%,#cfd2d4 0%,#d3d6d8 31%,#d5d8da 76%)}
.portfolio .project:nth-child(3n){background:radial-gradient(circle at 78% 22%,#d0d3d5 0%,#d3d6d8 32%,#d6d9db 79%)}
.portfolio .project:hover{border-color:#ef7b38;transform:translateY(-6px);box-shadow:0 15px 35px #0004}
.portfolio .project .app-icon{position:absolute;left:30px;top:35px;width:104px;height:104px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(189,192,194,.055),rgba(189,192,194,.01));border:1px solid rgba(220,236,245,.16);border-radius:23px;box-shadow:inset 0 1px 1px #ffffff12,0 18px 35px #0003;transition:transform .3s}
.portfolio .project:hover .app-icon{transform:translateY(-3px)}
.portfolio .project .app-icon svg{width:68px;height:68px;stroke:#e7ecef;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round;fill:none}
.portfolio .project .app-icon svg .accent{stroke:#ef6216}
.portfolio .project .app-icon svg .accent-fill{fill:#ef6216;stroke:none}
.portfolio .project small{color:#a33b06;font-weight:700}
.portfolio .project h3{font:600 clamp(21px,2.1vw,29px)/1.17 Montserrat,Arial,sans-serif;letter-spacing:-.045em;margin:11px 0 12px;color:#35444e}
.portfolio .project h3.app-brand{line-height:1;margin:11px 0 12px}
.portfolio .project h3.app-brand img{display:block;width:min(270px,100%);height:auto;max-height:70px;object-fit:contain;object-position:left center}
.portfolio .project p{font-size:13px;line-height:1.64;margin:0;max-width:95%;color:#35444e}
@media(max-width:1060px){.portfolio .projects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.portfolio .projects{grid-template-columns:1fr}.portfolio .project{min-height:300px}.portfolio .project h3{font-size:26px}}

/* Equal visible logo height, accounting for transparent PNG margins. */
.portfolio .project h3.app-brand{position:relative;container-type:inline-size;height:36px;width:100%}
.portfolio .project h3.app-brand img{--logo-height:min(28px,8cqw);position:absolute;width:auto;max-width:none;max-height:none;object-fit:initial}
.portfolio .project h3.app-brand img[src="planet-home-logo.png"]{height:calc(var(--logo-height) * 1.32653061);left:calc(var(--logo-height) * -0.06122449);top:calc(50% - var(--logo-height) * 0.74489796)}
.portfolio .project h3.app-brand img[src="proforma-web-logo.png"]{height:calc(var(--logo-height) * 1.41735537);left:calc(var(--logo-height) * -0.17768595);top:calc(50% - var(--logo-height) * 0.73553719)}
.portfolio .project h3.app-brand img[src="cpt-home-logo.png"]{height:calc(var(--logo-height) * 1.29775281);left:calc(var(--logo-height) * -0.12359551);top:calc(50% - var(--logo-height) * 0.71910112)}
.portfolio .project h3.app-brand img[src="formedil-lab-logo.png"]{height:calc(var(--logo-height) * 1.38848921);left:calc(var(--logo-height) * -0.13669065);top:calc(50% - var(--logo-height) * 0.70503597)}

.portfolio .project h3.app-brand img[src="planet-inside-home-logo.png"]{height:calc(var(--logo-height) * 1.32758621);left:calc(var(--logo-height) * -2.22988506);top:calc(50% - var(--logo-height) * 0.74712644)}

/* Original School Manager, S.A. Turn and Planet Time logos. */
.portfolio .project h3.app-brand img[src="school-manager-home-logo.png"]{height:calc(var(--logo-height) * 1.27000000);left:calc(var(--logo-height) * -0.32500000);top:calc(50% - var(--logo-height) * 0.64000000)}
.portfolio .project h3.app-brand img[src="saturn-home-logo.png"]{height:calc(var(--logo-height) * 1.27941176);left:calc(var(--logo-height) * -1.02205882);top:calc(50% - var(--logo-height) * 0.64338235)}
.portfolio .project h3.app-brand img[src="planet-time-home-logo.png"]{height:calc(var(--logo-height) * 1.28413284);left:calc(var(--logo-height) * -0.60516605);top:calc(50% - var(--logo-height) * 0.64760148)}

.portfolio .project h3.app-brand img[src="geprox-home-logo.png"]{height:calc(var(--logo-height) * 1.27000000);left:calc(var(--logo-height) * -2.76000000);top:calc(50% - var(--logo-height) * 0.64000000)}
