.projects-page{background:#f5f8fc;color:#132f50;overflow-wrap:anywhere}
.projects-hero{position:relative;overflow:hidden;padding:30px 0 54px;background:radial-gradient(ellipse at 86% 20%,#1974b84d,transparent 48%),linear-gradient(115deg,#061d42,#0b3c70);color:#fff}
.projects-hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid #ffffff12;border-radius:50%;right:-150px;top:50px;box-shadow:0 0 0 70px #ffffff04,0 0 0 140px #ffffff03;pointer-events:none}
.projects-hero .container{position:relative;z-index:1}
.projects-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#c1d4e9;margin-bottom:38px}
.projects-breadcrumb a:hover{color:#fff}
.projects-eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:1.7px;color:#92caff;margin-bottom:15px}
.projects-hero h1{font-size:clamp(32px,4.2vw,56px);line-height:1.18;letter-spacing:-1.6px;margin:0 0 22px;color:#fff;max-width:850px}
.projects-hero h1 span{color:#91ceff}
.projects-hero>.container>p{max-width:660px;font-size:16px;line-height:1.85;color:#d1e0f1;margin:0}
.projects-hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:28px 0}
.projects-consult{font-size:14px;font-weight:600;color:#fff;text-decoration:underline;text-underline-offset:5px}
.projects-benefits{display:flex;flex-wrap:wrap;gap:12px 25px;list-style:none;margin:0;padding:0;font-size:12px;color:#c9dcf0}
.projects-benefits li:before{content:"✓";color:#78d9c4;margin-right:8px}
.projects-catalogue{padding:48px 0 64px;scroll-margin-top:100px}
.projects-list-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:25px}
.projects-list-heading .overline{font-size:10px;letter-spacing:1.4px}
.projects-list-heading h2{font-size:clamp(23px,2.3vw,30px);letter-spacing:-.7px;line-height:1.35;margin:8px 0 0}
.projects-list-heading>p{font-size:13px;color:#52667f;flex-shrink:0;margin:0 0 3px}
.projects-filters{display:flex;flex-wrap:wrap;gap:9px;border-bottom:1px solid #dce5f0;padding-bottom:24px;margin-bottom:28px}
.projects-filters a{padding:9px 17px;border:1px solid #dce5f0;border-radius:999px;background:#fff;font-size:13px;font-weight:600;transition:background .2s,color .2s}
.projects-filters a[aria-current],.projects-filters a:hover{background:#0a3970;border-color:#0a3970;color:#fff}
.projects-category-description{max-width:800px;line-height:1.8;margin-bottom:24px;color:#52667f}
.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:start}
.project-tile{min-width:0;background:#fff;border:1px solid #dce5f0;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px #123c6810;transition:transform .25s,box-shadow .25s,border-color .25s}
.project-tile:hover,.project-tile:focus-within{transform:translateY(-5px);box-shadow:0 18px 36px #123c6824;border-color:#a6c9ef}
.project-browser{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#edf2f8;padding:11px 13px;border-bottom:1px solid #e1e8f0;color:#5b6d83;font-size:10px}
.project-browser>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-browser-dots{display:flex;gap:4px;flex-shrink:0}
.project-browser-dots i{width:7px;height:7px;border-radius:50%;background:#f2a399}
.project-browser-dots i:nth-child(2){background:#eccb7f}.project-browser-dots i:nth-child(3){background:#88c9a6}
.project-preview{display:block;position:relative;height:230px;overflow:hidden;background:#eaf1f9}
.project-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .65s}
.project-tile:hover .project-preview img,.project-tile:focus-within .project-preview img{transform:scale(1.035)}
.project-preview-caption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;padding:28px 18px 15px;background:linear-gradient(transparent,#061d42e6);color:#fff;font-size:12px;font-weight:600;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}
.project-tile:hover .project-preview-caption,.project-tile:focus-within .project-preview-caption{opacity:1;transform:none}
.project-no-image{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;height:100%;background:linear-gradient(135deg,#ecf4ff,#dcebf8);font-size:13px;color:#466380}
.project-no-image>span{font-size:42px;font-weight:700;color:#4384bb}
.project-tile-body{padding:21px}
.project-type{display:inline-block;font-size:10px;letter-spacing:.3px;font-weight:700;color:#0864aa;background:#edf6ff;padding:4px 9px;border-radius:5px}
.project-tile h3{font-size:19px;line-height:1.45;letter-spacing:-.3px;margin:12px 0 9px}
.project-tile h3 a:hover{color:#0871de}
.project-summary{font-size:13px;line-height:1.75;color:#566981;margin:0 0 14px;white-space:pre-line}
.project-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;border-top:1px solid #e8edf5;font-size:12px;font-weight:700}
.project-demo{display:inline-flex;align-items:center;gap:15px;background:#eaf4ff;color:#075caa;border:1px solid #d4e8ff;border-radius:8px;padding:9px 13px;transition:background .2s,color .2s}
.project-tile:hover .project-demo,.project-tile:focus-within .project-demo{background:#075caa;color:#fff}
.project-advice{color:#586d85}.project-advice:hover{color:#075caa}
.project-expand{border:0;background:transparent;color:#075caa;font:inherit;font-size:12px;font-weight:600;padding:0 0 14px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.project-expand[hidden]{display:none}
.has-expand:not(.is-expanded) .project-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.projects-empty{text-align:center;border:1px dashed #bed0e4;background:#fff;border-radius:20px;padding:45px 24px}
.projects-empty-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:18px;background:#eef6ff;color:#1673ba;font-size:24px;font-weight:700}
.projects-empty h3{font-size:23px;margin:0 0 12px}.projects-empty p{max-width:550px;margin:0 auto 24px;font-size:14px;line-height:1.8;color:#566981}
.projects-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:52px;padding:34px 38px;background:linear-gradient(115deg,#092954,#104d82);border-radius:20px;color:#fff}
.projects-cta h2{font-size:clamp(22px,2.3vw,29px);line-height:1.4;margin:0 0 9px;color:#fff}.projects-cta p{font-size:13px;color:#c9dcf0;margin:0}.projects-cta .btn{flex-shrink:0}.projects-cta .projects-eyebrow{font-size:10px;margin-bottom:10px}
@media(hover:hover) and (pointer:fine){.project-expand{display:none}.project-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.project-tile:hover .project-summary,.project-tile:focus-within .project-summary{display:block;-webkit-line-clamp:unset;overflow:visible}}
@media(max-width:1000px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.projects-hero{padding:23px 0 36px}.projects-breadcrumb{margin-bottom:28px}.projects-eyebrow{font-size:9px;letter-spacing:1px}.projects-hero h1{letter-spacing:-1px}.projects-hero>.container>p{font-size:14px}.projects-hero-actions{gap:18px}.projects-benefits{gap:10px 16px;font-size:11px}.projects-catalogue{padding-top:32px}.projects-list-heading{align-items:flex-start;flex-direction:column;gap:10px}.projects-grid{grid-template-columns:minmax(0,1fr);gap:22px}.project-preview{height:240px}.projects-cta{padding:26px 22px}.projects-empty{padding:30px 18px}.projects-filters a{font-size:12px;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.project-tile,.project-preview img,.project-preview-caption,.project-demo,.projects-filters a{transition:none}.project-tile:hover,.project-tile:focus-within,.project-tile:hover .project-preview img,.project-tile:focus-within .project-preview img{transform:none}}