.cc-projects-portfolio{position:relative;overflow:hidden;padding:clamp(78px,7vw,112px) 0 clamp(92px,8vw,132px);background:radial-gradient(circle at 7% 8%,rgba(8,117,189,.035),transparent 23%),radial-gradient(circle at 94% 88%,rgba(173,12,80,.025),transparent 22%),#f7f9fa;color:var(--cc-navy)}.cc-projects-portfolio .cc-container{width:100%;max-width:none;margin-inline:auto;padding-inline:clamp(20px,4vw,70px)}.cc-projects-portfolio__header{width:min(780px,100%);margin:0 auto clamp(30px,3.5vw,46px);text-align:center}.cc-projects-portfolio__eyebrow{margin:0 0 12px;color:var(--cc-accent);font-size:.51rem;font-weight:700;letter-spacing:.12em;line-height:1.45;text-transform:uppercase}.cc-projects-portfolio__header h2{margin:0;color:var(--cc-navy);font-size:clamp(2rem,3.4vw,3.4rem);font-weight:600;letter-spacing:-.052em;line-height:1.04;text-wrap:balance}.cc-projects-portfolio__header h2 span{color:var(--cc-primary)}.cc-projects-portfolio__description{max-width:660px;margin:16px auto 0;color:var(--cc-grey-500);font-size:.73rem;font-weight:400;line-height:1.76}.cc-projects-portfolio__filters{display:flex;width:fit-content;max-width:100%;align-items:center;justify-content:center;gap:7px;margin:0 auto 12px;overflow-x:auto;border-radius:var(--cc-radius-pill);padding:5px;background:#ffffffd1;box-shadow:0 12px 32px #061d2b0e;scrollbar-width:none;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.cc-projects-portfolio__filters::-webkit-scrollbar{display:none}.cc-projects-portfolio__filter{display:inline-flex;min-height:37px;flex:0 0 auto;align-items:center;justify-content:center;gap:9px;border:0;border-radius:var(--cc-radius-pill);padding:7px 14px;background:transparent;color:var(--cc-grey-500);cursor:pointer;font-family:inherit;font-size:.58rem;font-weight:600;line-height:1;transition:background .3s var(--cc-ease),box-shadow .3s var(--cc-ease),color .3s var(--cc-ease),transform .3s var(--cc-ease)}.cc-projects-portfolio__filter small{display:grid;min-width:21px;height:21px;place-items:center;border-radius:50%;background:#0875bd14;color:var(--cc-primary);font-size:.43rem;font-weight:700;transition:background .3s var(--cc-ease),color .3s var(--cc-ease)}.cc-projects-portfolio__filter.is-active{background:var(--cc-navy);box-shadow:0 10px 24px #061d2b29;color:#fff}.cc-projects-portfolio__filter.is-active small{background:#ffffff26;color:#fff}.cc-projects-portfolio__filter:focus-visible{outline:2px solid var(--cc-primary);outline-offset:3px}.cc-projects-portfolio__status{margin:0 0 clamp(28px,3vw,42px);color:var(--cc-grey-500);font-size:.51rem;font-weight:500;letter-spacing:.03em;text-align:center}.cc-projects-portfolio__grid{display:grid;width:100%;align-items:start;gap:clamp(12px,1.35vw,20px);grid-template-columns:repeat(4,minmax(0,1fr))}.cc-projects-portfolio-card{position:relative;width:100%;min-width:0;aspect-ratio:1 / 1;overflow:hidden;border:0;border-radius:19px;background:#dfe7eb;box-shadow:0 15px 36px #061d2b11;opacity:0;transform:translateY(28px);transition:box-shadow .45s var(--cc-ease),opacity .72s var(--cc-ease),transform .72s var(--cc-ease);transition-delay:var(--cc-project-reveal-delay, 0ms);isolation:isolate}.cc-projects-portfolio.is-visible .cc-projects-portfolio-card{opacity:1;transform:translateY(0)}.cc-projects-portfolio-card[hidden]{display:none}.cc-projects-portfolio-card__link{position:relative;display:block;width:100%;height:100%;overflow:hidden;color:inherit;text-decoration:none}.cc-projects-portfolio-card__media{position:absolute;z-index:0;inset:0;overflow:hidden;margin:0}.cc-projects-portfolio-card__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.015);transform:scale(1.02);transition:filter .65s var(--cc-ease),transform .95s var(--cc-ease);-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.cc-projects-portfolio-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,#061d2b08 25%,#061d2b1f 55%,#061d2bb8);transition:background .5s var(--cc-ease),opacity .5s var(--cc-ease)}.cc-projects-portfolio-card__top{position:absolute;z-index:3;top:15px;right:15px;left:15px;display:flex;align-items:center;justify-content:space-between;gap:10px}.cc-projects-portfolio-card__service,.cc-projects-portfolio-card__year{display:inline-flex;min-height:27px;align-items:center;border-radius:var(--cc-radius-pill);padding:6px 10px;background:#061d2b5e;color:#ffffffe6;font-size:.43rem;font-weight:700;letter-spacing:.065em;line-height:1;text-transform:uppercase;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}.cc-projects-portfolio-card__year{min-width:44px;justify-content:center}.cc-projects-portfolio-card__content{position:absolute;z-index:4;right:14px;bottom:14px;left:14px;overflow:hidden;border-radius:16px;padding:17px;background:#ffffffe3;box-shadow:0 12px 30px #061d2b1f;transform:translateY(0);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);transition:background .4s var(--cc-ease),box-shadow .4s var(--cc-ease),transform .45s var(--cc-ease)}.cc-projects-portfolio-card__heading>p{margin:0 0 5px;color:var(--cc-accent);font-size:.44rem;font-weight:700;letter-spacing:.09em;line-height:1.4;text-transform:uppercase}.cc-projects-portfolio-card__heading h3{display:-webkit-box;overflow:hidden;margin:0;color:var(--cc-navy);font-size:clamp(.82rem,1vw,1rem);font-weight:600;letter-spacing:-.026em;line-height:1.28;-webkit-box-orient:vertical;-webkit-line-clamp:2}.cc-projects-portfolio-card__summary{display:-webkit-box;max-height:0;overflow:hidden;margin:0;color:var(--cc-grey-500);font-size:.56rem;line-height:1.55;opacity:0;transform:translateY(8px);-webkit-box-orient:vertical;-webkit-line-clamp:2;transition:max-height .4s var(--cc-ease),margin-top .35s var(--cc-ease),opacity .35s var(--cc-ease),transform .4s var(--cc-ease)}.cc-projects-portfolio-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px}.cc-projects-portfolio-card__footer>span:first-child{color:var(--cc-grey-500);font-size:.49rem;font-weight:500}.cc-projects-portfolio-card__arrow{display:grid;width:31px;height:31px;flex:0 0 31px;place-items:center;border-radius:50%;background:var(--cc-primary);color:#fff;transition:background .3s var(--cc-ease),transform .3s var(--cc-ease)}.cc-projects-portfolio-card__arrow svg{width:14px;height:14px}@media(hover:hover){.cc-projects-portfolio__filter:hover:not(.is-active){background:#0875bd12;color:var(--cc-navy);transform:translateY(-1px)}.cc-projects-portfolio-card:hover{box-shadow:0 24px 52px #061d2b21;transform:translateY(-5px)}.cc-projects-portfolio-card:hover .cc-projects-portfolio-card__media img{filter:saturate(1) contrast(1.025);transform:scale(1.065)}.cc-projects-portfolio-card:hover .cc-projects-portfolio-card__shade{background:linear-gradient(180deg,#061d2b03 20%,#061d2b14 51%,#061d2b9e)}.cc-projects-portfolio-card:hover .cc-projects-portfolio-card__content{background:#fffffff2;box-shadow:0 17px 38px #061d2b29;transform:translateY(-4px)}.cc-projects-portfolio-card:hover .cc-projects-portfolio-card__summary{max-height:45px;margin-top:9px;opacity:1;transform:translateY(0)}.cc-projects-portfolio-card:hover .cc-projects-portfolio-card__arrow{background:var(--cc-accent);transform:translate(3px)}}.cc-projects-portfolio-card__link:focus-visible{outline:2px solid var(--cc-primary);outline-offset:-4px}.cc-projects-portfolio__empty{display:grid;width:min(760px,100%);align-items:center;gap:19px;grid-template-columns:50px minmax(0,1fr) auto;margin:22px auto 0;border-radius:20px;padding:clamp(22px,3vw,34px);background:#fff;box-shadow:0 16px 40px #061d2b0e}.cc-projects-portfolio__empty[hidden]{display:none}.cc-projects-portfolio__empty-icon{display:grid;width:50px;height:50px;place-items:center;border-radius:15px;background:#0875bd14;color:var(--cc-primary)}.cc-projects-portfolio__empty-icon svg{width:22px;height:22px}.cc-projects-portfolio__empty h3{margin:0;color:var(--cc-navy);font-size:.95rem;font-weight:600}.cc-projects-portfolio__empty p{margin:6px 0 0;color:var(--cc-grey-500);font-size:.64rem;line-height:1.65}.cc-projects-portfolio__empty a{display:inline-flex;min-height:39px;align-items:center;border-radius:var(--cc-radius-pill);padding:8px 15px;background:var(--cc-navy);color:#fff;font-size:.57rem;font-weight:600;text-decoration:none}@media(max-width:1180px){.cc-projects-portfolio__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.cc-projects-portfolio__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-projects-portfolio__empty{grid-template-columns:48px minmax(0,1fr)}.cc-projects-portfolio__empty a{width:fit-content;grid-column:2}}@media(max-width:560px){.cc-projects-portfolio{padding-block:70px}.cc-projects-portfolio .cc-container{padding-inline:16px}.cc-projects-portfolio__header{margin-bottom:27px}.cc-projects-portfolio__header h2{font-size:clamp(1.9rem,9vw,2.6rem)}.cc-projects-portfolio__description{font-size:.69rem}.cc-projects-portfolio__filters{width:100%;justify-content:flex-start}.cc-projects-portfolio__filter{padding-inline:12px}.cc-projects-portfolio__grid{grid-template-columns:1fr}.cc-projects-portfolio-card{border-radius:17px}.cc-projects-portfolio-card__content{right:11px;bottom:11px;left:11px;border-radius:14px}.cc-projects-portfolio-card__summary{max-height:45px;margin-top:8px;opacity:1;transform:none}.cc-projects-portfolio__empty{gap:15px;grid-template-columns:1fr}.cc-projects-portfolio__empty a{grid-column:auto}}@media(prefers-reduced-motion:reduce){.cc-projects-portfolio-card,.cc-projects-portfolio-card__media img,.cc-projects-portfolio-card__shade,.cc-projects-portfolio-card__content,.cc-projects-portfolio-card__summary,.cc-projects-portfolio-card__arrow,.cc-projects-portfolio__filter{opacity:1;transform:none;transition:none}}
