.frg-projects-section{--fps-blue:#0874ed;--fps-line:#d8dfea;--fps-slot:#eaf0f6;--fps-button:#086cf3;--fps-copy:#7d879b;--fps-navy:#07143e;display:block;width:min(1480px,calc(100% - 120px));margin:0 auto;padding:43px 0 54px;color:var(--fps-navy);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.frg-projects-section,.frg-projects-section *{box-sizing:border-box}
.frg-projects-section button,.frg-projects-section a{font:inherit}
.frg-projects-section button:focus-visible,.frg-projects-section a:focus-visible{outline:3px solid var(--fps-blue);outline-offset:3px}
.frg-projects-section .fps-eyebrow{margin:0;color:#1176d2;font-size:24px;line-height:1.3;letter-spacing:1.5px;font-weight:700;text-align:left;text-transform:uppercase}
.frg-projects-section .fps-layout{display:grid;grid-template-columns:72px clamp(280px,22.5vw,360px) minmax(0,1fr);column-gap:clamp(18px,2vw,32px);align-items:start;margin-top:64px}
.frg-projects-section .fps-timeline{position:relative;display:flex;flex-direction:column;align-self:center;justify-content:space-between;gap:0;min-height:0;margin:0;padding:0}
.frg-projects-section .fps-step,.frg-projects-section .fps-step:hover,.frg-projects-section .fps-step:active{background-color:transparent!important;box-shadow:none!important}
.frg-projects-section .fps-step{position:relative;z-index:1;display:flex;align-items:center;width:58px;min-height:30px;padding:0;border:0;background:transparent;color:#8792a7;font-size:16px;font-weight:700;text-align:left;cursor:pointer;transition:color .28s ease}
.frg-projects-section .fps-step-number{width:20px;opacity:0;transform:translateX(6px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.frg-projects-section .fps-step.is-active .fps-step-number{opacity:1;transform:translateX(0)}
.frg-projects-section .fps-step-dot{display:block;width:var(--fps-indicator-size,14px);height:var(--fps-indicator-size,14px);margin-left:10px;border:2px solid #8792a7;border-radius:50%;background:#fff;transition:width .32s ease,height .32s ease,margin .32s ease,border-color .32s ease,background .32s ease,box-shadow .32s ease,transform .25s ease}
.frg-projects-section .fps-step.is-active,.frg-projects-section .fps-step.is-done{color:var(--fps-blue)}
.frg-projects-section .fps-step.is-active .fps-step-dot,.frg-projects-section .fps-step.is-done .fps-step-dot{width:calc(var(--fps-indicator-size,14px) + 4px);height:calc(var(--fps-indicator-size,14px) + 4px);margin-left:8px;border-color:var(--fps-blue);background:var(--fps-blue)}
.frg-projects-section .fps-step.is-active .fps-step-dot{box-shadow:0 0 0 5px rgba(8,116,237,.13)}
.frg-projects-section .fps-step:not(.is-active):hover .fps-step-dot,.frg-projects-section .fps-step:not(.is-active):focus-visible .fps-step-dot{border-color:var(--fps-blue);background:#eaf3ff;box-shadow:0 0 0 4px rgba(8,116,237,.12);transform:scale(1.14)}
.frg-projects-section .fps-progress-track,.frg-projects-section .fps-progress-line{position:absolute;z-index:0;display:block;pointer-events:none;border-radius:99px}
.frg-projects-section .fps-progress-track{background:var(--fps-line)}
.frg-projects-section .fps-progress-line{background:var(--fps-blue);transform-origin:top left;transition:transform .52s cubic-bezier(.2,.8,.2,1)}
.frg-projects-section .fps-copy{max-width:320px;margin-top:32px}
.frg-projects-section .fps-project-title{margin:0;color:var(--fps-navy);font-size:clamp(40px,3.35vw,52px);line-height:1.05;letter-spacing:-1.5px;font-weight:700;white-space:pre-line}
.frg-projects-section .fps-title-rule{display:block;width:45px;height:3px;margin-top:19px;background:var(--fps-blue)}
.frg-projects-section .fps-description{margin:20px 0 0;color:var(--fps-copy);font-size:18px;line-height:1.52}
.frg-projects-section .fps-project-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;width:fit-content;max-width:100%;min-height:44px;margin-top:16px;padding:0 16px;border-radius:7px;background:var(--fps-button);color:#fff;font-size:16px;line-height:1.2;text-decoration:none;box-shadow:0 2px 5px rgba(0,70,160,.12);transition:background .2s ease,transform .2s ease}
.frg-projects-section .fps-project-link:hover{background:#005bd8;color:#fff;transform:translateY(-2px)}
.frg-projects-section .fps-project-link[hidden]{display:none}
.frg-projects-section .fps-project-link span{font-size:22px;line-height:1}
.frg-projects-section .fps-gallery{min-width:0}
.frg-projects-section .fps-main-image{position:relative;display:block;width:100%;aspect-ratio:1.89;overflow:hidden;padding:0;border:0;border-radius:10px;background:var(--fps-slot);appearance:none;cursor:zoom-in;text-align:left}
.frg-projects-section .fps-main-image:disabled{cursor:default}
.frg-projects-section .fps-main-media{position:absolute;inset:0;display:block;width:100%;height:100%}
.frg-projects-section .fps-main-media img,.frg-projects-section .fps-main-media iframe{display:block;width:100%;height:100%;border:0}
.frg-projects-section .fps-main-media img{object-fit:cover;transition:transform .35s ease}
.frg-projects-section .fps-main-image:hover .fps-main-media img{transform:scale(1.04)}
.frg-projects-section .fps-main-image.is-video{cursor:pointer}
.frg-projects-section .fps-video-play{position:absolute;z-index:4;top:50%;left:50%;display:grid;place-items:center;width:76px;height:76px;padding:0;border:0!important;border-radius:50%;background:transparent!important;color:var(--fps-video-play-color,#0874ed);box-shadow:none;transform:translate(-50%,-50%);cursor:pointer;transition:color .2s ease,transform .2s ease}
.frg-projects-section .fps-video-play svg{display:block;width:100%;height:100%;fill:currentColor}
.frg-projects-section .fps-video-play:hover{color:var(--fps-video-play-hover-color,#005bd8);background:transparent!important;transform:translate(-50%,-50%) scale(1.06)}
.frg-projects-section .fps-main-image.is-video .fps-expand-icon{display:none}

.frg-projects-section .fps-expand-icon{position:absolute;z-index:2;top:50%;left:50%;display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:#0866c3;color:#fff;box-shadow:0 8px 26px rgba(0,0,0,.2);opacity:0;transform:translate(-50%,-50%) scale(.7);transition:opacity .3s ease,transform .38s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.frg-projects-section .fps-expand-icon svg{width:57px;height:50px;fill:currentColor}
.frg-projects-section .fps-main-image:hover .fps-expand-icon,.frg-projects-section .fps-main-image:focus-visible .fps-expand-icon{opacity:1;transform:translate(-50%,-50%) scale(1)}
.frg-projects-section .fps-main-image:disabled .fps-expand-icon{display:none}
.frg-projects-section .fps-thumbnail-viewport{width:100%;margin-top:18px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}
.frg-projects-section .fps-thumbnail-viewport::-webkit-scrollbar{display:none}
.frg-projects-section .fps-thumbnail-track{display:flex;gap:16px}
.frg-projects-section .fps-thumbnail{position:relative;display:block;flex:0 0 calc((100% - 3 * 16px) / 4);min-width:0;aspect-ratio:1.28;overflow:hidden;padding:0;border:2px solid transparent;border-radius:8px;background:var(--fps-slot);cursor:pointer;scroll-snap-align:start}
.frg-projects-section .fps-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.frg-projects-section .fps-video-thumb-icon{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:38px;height:38px;background:transparent;color:var(--fps-video-play-color,#0874ed);transform:translate(-50%,-50%);pointer-events:none}
.frg-projects-section .fps-video-thumb-icon svg{display:block;width:100%;height:100%;fill:currentColor}
.frg-projects-section .fps-thumbnail:hover img{transform:scale(1.04)}
.frg-projects-section .fps-thumbnail.is-active{border:3px solid var(--fps-blue)}
.frg-projects-section .fps-empty-thumb{display:block;width:100%;height:100%;background:var(--fps-slot)}
.frg-projects-section .fps-copy.is-changing,.frg-projects-section .fps-gallery.is-changing{animation:fps-project-enter .38s cubic-bezier(.2,.7,.25,1) both}
@keyframes fps-project-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
.frg-projects-section .fps-preview{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:25px;border:0;background:transparent;color:#fff;overflow:visible}
.frg-projects-section .fps-preview[open]{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:18px;place-items:center}
.frg-projects-section .fps-preview::backdrop{background:rgba(9,17,32,.42);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.frg-projects-section .fps-preview-stage{display:flex;justify-content:center;align-items:center;gap:12px;width:100%;min-height:0;touch-action:pan-y}
.frg-projects-section .fps-preview-media{position:relative;width:min(78vw,1300px);max-height:74vh;aspect-ratio:1.89;overflow:hidden;border-radius:12px;background:var(--fps-slot);box-shadow:0 16px 60px rgba(0,0,0,.26)}
.frg-projects-section .fps-preview-media img{display:block;width:100%;height:100%;object-fit:contain}
.frg-projects-section .fps-preview-media iframe{display:block;width:100%;height:100%;border:0}
.frg-projects-section .fps-preview-arrow{flex:0 0 46px;width:46px;height:58px;border:0;background:transparent;color:#fff;font-size:56px;line-height:1;cursor:pointer}
.frg-projects-section .fps-preview-arrow:hover{color:#c9e3ff}
.frg-projects-section .fps-preview-thumbs{display:flex;gap:10px;max-width:min(90vw,900px);padding:4px 2px 10px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.65) transparent}
.frg-projects-section .fps-preview-thumb{position:relative;flex:0 0 112px;width:112px;aspect-ratio:1.65;overflow:hidden;padding:0;border:2px solid rgba(255,255,255,.55);border-radius:8px;background:var(--fps-slot);opacity:.72;cursor:pointer}
.frg-projects-section .fps-preview-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.frg-projects-section .fps-preview-thumb[aria-current=true]{opacity:1;border-color:#fff;box-shadow:0 0 0 2px var(--fps-blue)}
.frg-projects-section .fps-preview-close{position:fixed;top:18px;right:22px;display:grid;place-items:center;width:46px;height:46px;padding:0;border:0!important;border-radius:0;background:transparent!important;color:#fff;font-size:38px;font-weight:300;line-height:1;text-shadow:0 1px 8px rgba(0,0,0,.55);box-shadow:none!important;appearance:none;cursor:pointer;transition:color .2s ease,transform .2s ease}
.frg-projects-section .fps-preview-close:hover{background:transparent!important;color:#d8eaff;transform:scale(1.08)}
@media(max-width:1180px){.frg-projects-section{width:calc(100% - 72px)}.frg-projects-section .fps-project-title{font-size:42px}.frg-projects-section .fps-description{font-size:17px}}
@media(max-width:950px){.frg-projects-section{width:calc(100% - 48px);padding-top:30px}.frg-projects-section .fps-eyebrow{font-size:21px}.frg-projects-section .fps-layout{display:block;margin-top:26px}.frg-projects-section .fps-timeline{flex-direction:row;justify-content:space-between;align-self:auto;width:80%;height:46px;margin:0 auto 30px;padding:0;gap:0}.frg-projects-section .fps-step{flex-direction:column;justify-content:center;align-items:center;gap:4px;width:46px;min-height:46px;font-size:13px;text-align:center}.frg-projects-section .fps-step-number{width:auto;line-height:14px}.frg-projects-section .fps-step-dot,.frg-projects-section .fps-step.is-active .fps-step-dot,.frg-projects-section .fps-step.is-done .fps-step-dot{width:12px;height:12px;margin:0;align-self:center}.frg-projects-section .fps-step.is-active .fps-step-dot{box-shadow:0 0 0 4px rgba(8,116,237,.13)}.frg-projects-section .fps-copy{max-width:620px;margin-top:0}.frg-projects-section .fps-project-title{font-size:clamp(42px,6vw,52px);white-space:normal}.frg-projects-section .fps-description{max-width:560px;font-size:18px}.frg-projects-section .fps-gallery{margin-top:38px}}
@media(max-width:560px){.frg-projects-section{width:calc(100% - 36px)}.frg-projects-section .fps-eyebrow{font-size:18px;letter-spacing:1px}.frg-projects-section .fps-layout{margin-top:20px}.frg-projects-section .fps-timeline{width:80%;margin-bottom:25px}.frg-projects-section .fps-step{width:42px}.frg-projects-section .fps-project-title{font-size:40px}.frg-projects-section .fps-description{margin-top:23px;font-size:16px;line-height:1.52}.frg-projects-section .fps-project-link{min-height:42px;margin-top:20px;padding:0 14px;gap:11px;font-size:15px}.frg-projects-section .fps-gallery{margin-top:32px}.frg-projects-section .fps-main-image{aspect-ratio:16/9}.frg-projects-section .fps-video-play{width:60px;height:60px}.frg-projects-section .fps-thumbnail-viewport{margin-top:10px}.frg-projects-section .fps-thumbnail-track{gap:8px}.frg-projects-section .fps-thumbnail{flex-basis:calc((100% - 8px)/2);border-radius:5px}.frg-projects-section .fps-expand-icon{width:58px;height:58px}.frg-projects-section .fps-expand-icon svg{width:42px;height:38px}.frg-projects-section .fps-preview{padding:14px 8px}.frg-projects-section .fps-preview[open]{gap:10px}.frg-projects-section .fps-preview-stage{gap:2px}.frg-projects-section .fps-preview-media{width:calc(100vw - 76px);max-height:66vh}.frg-projects-section .fps-preview-arrow{flex-basis:32px;width:32px;font-size:38px}.frg-projects-section .fps-preview-thumbs{max-width:94vw;gap:7px}.frg-projects-section .fps-preview-thumb{flex-basis:72px;width:72px}.frg-projects-section .fps-preview-close{top:10px;right:10px;width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.frg-projects-section *, .frg-projects-section *::before,.frg-projects-section *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
