.portfolio-section{box-sizing:border-box;flex-direction:column;justify-content:center;min-height:95vh;margin-top:2rem;padding:3rem 0;display:flex;position:relative;overflow:hidden}#portfolio-container{z-index:2;box-sizing:border-box;width:100%;max-width:1100px;margin-inline:auto;padding-inline:1rem}#portfolio-title{text-align:center;flex-direction:column;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}#portfolio-title h1{margin:0;font-size:2.2rem;font-weight:800}#portfolio-text{color:var(--text-gray);text-align:center;max-width:600px}#filterArea{-webkit-backdrop-filter:blur(.2rem);backdrop-filter:blur(.2rem);border:1px solid var(--border-dark);box-sizing:border-box;background-color:#0000004d;border-radius:.75rem;flex-direction:column;align-items:center;width:100%;padding:1.5rem;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 1rem #0009}#filterTitle{text-align:center;color:#fff;margin-top:.5rem;margin-bottom:1rem;padding:0;font-weight:700}.filters{flex-wrap:wrap;justify-content:center;gap:.75rem;max-width:100%;display:flex}.filters h3{color:var(--text-gray);text-align:center;width:100%;margin:1rem 0;font-weight:700}.text-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex;position:relative}.text-checkbox input{opacity:0;pointer-events:none;position:absolute}.text-checkbox span{border:3px solid var(--border-dark);border-color:var(--primary);color:var(--text-white);white-space:nowrap;border-radius:999px;padding:.45rem .9rem;font-size:.85rem;font-weight:600;transition:all .2s}.text-checkbox:hover span{background-color:var(--primary-hover);box-shadow:0 0 20px var(--primary);border-color:var(--primary-hover);transform:scale(1.1)}.text-checkbox input:checked+span{background:var(--primary);border-color:var(--primary);color:var(--text-white);opacity:1}.projects-grid{box-sizing:border-box;flex-wrap:wrap;justify-content:center;gap:1.5rem;max-width:100%;margin-top:2rem;display:flex}.projects-grid>*{box-sizing:border-box;flex:0 0 100%;max-width:100%}@media (min-width:600px){.projects-grid>*{flex:0 0 calc(50% - 1.5rem);max-width:calc(50% - 1.5rem)}}@media (min-width:1024px){.projects-grid>*{flex:0 0 calc(33.333% - 1.5rem);max-width:calc(33.333% - 1.5rem)}}
