.project-discovery,.projects-portfolio{position:relative;overflow:hidden;background:linear-gradient(180deg,#f7f9fc 0,#fff 30%,#fff 100%)}
.project-discovery:before,.projects-portfolio:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:#00278d0a;filter:blur(2px);top:-190px;right:-140px;pointer-events:none}
.project-discovery-heading{position:relative}.project-discovery-heading h2{max-width:760px;letter-spacing:-.045em}.project-discovery-heading p{font-size:14px;max-width:560px}
.project-filter-row{position:relative;gap:10px;margin-bottom:32px;padding-bottom:8px}.project-filter-row button{min-height:42px;padding:11px 20px;box-shadow:0 4px 16px #0616350a}
.project-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}.project-showcase-grid[aria-busy=true]{opacity:.55}
.project-showcase-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #dfe5ef;border-radius:22px;background:#fff;box-shadow:0 14px 44px #102b3d0d;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.project-showcase-card:hover{transform:translateY(-7px);border-color:#bdcae8;box-shadow:0 24px 58px #102b3d1c}
.project-showcase-media{position:relative;display:block;width:100%;padding:0;border:0;border-radius:0;aspect-ratio:1.42/1;overflow:hidden;background:#e9edf3;color:#fff}.project-showcase-media:hover{background:#e9edf3}.project-showcase-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.75,.2,1)}.project-showcase-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 44%,#06163599);transition:opacity .35s}.project-showcase-card:hover .project-showcase-media img{transform:scale(1.055)}
.project-status-badge{position:absolute;z-index:2;left:16px;bottom:16px;padding:7px 11px;border:1px solid #ffffff4d;border-radius:99px;background:#fff;color:#10203b;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.project-media-arrow{position:absolute;z-index:2;right:16px;bottom:15px;display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#00278d;color:#fff;transform:translateY(7px);opacity:0;transition:.3s}.project-media-arrow svg{width:18px}.project-showcase-card:hover .project-media-arrow,.project-showcase-media:focus-visible .project-media-arrow{transform:none;opacity:1}
.project-showcase-body{display:flex;flex:1;flex-direction:column;padding:25px 24px 23px}.project-category{align-self:flex-start;padding:6px 10px;border-radius:99px;background:#edf2ff;color:#00278d;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.project-showcase-body h3{margin:16px 0 8px;color:#111820;font-size:clamp(20px,2vw,25px);line-height:1.22;letter-spacing:-.03em}.project-location{display:flex;align-items:center;gap:7px;margin:0 0 13px;color:#00278d;font-size:12px;font-weight:600}.project-summary{display:-webkit-box;min-height:4.95em;margin:0;color:#64707c;font-size:12px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.project-card-actions{display:flex;gap:10px;margin-top:auto;padding-top:22px}.project-card-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:99px;padding:10px 15px;font:600 11px/1 Poppins,sans-serif;transition:.25s}.project-detail-button{flex:1;border:1px solid #00278d;background:#00278d;color:#fff}.project-detail-button:hover{background:#001d68}.project-enquiry-button{border:1px solid #ccd4e1;background:#fff;color:#14213a}.project-enquiry-button:hover{border-color:#00278d;background:#edf2ff;color:#00278d}
.project-result-message{margin:0 0 24px;padding:14px 18px;border-radius:12px;font-size:13px;font-weight:600}.project-result-message.success{background:#def6e8;color:#17653a}.project-result-message.error{background:#ffe8e8;color:#9b2525}
.project-detail-dialog,.project-enquiry-dialog{max-width:none;margin:auto;border:0;padding:0;color:#111820}.project-detail-dialog{width:min(1080px,calc(100% - 36px));border-radius:26px;background:#fff;box-shadow:0 40px 100px #06163566}.project-detail-dialog::backdrop,.project-enquiry-dialog::backdrop{background:#061635b3;backdrop-filter:blur(8px)}.project-detail-dialog[open]{animation:projectModalIn .4s cubic-bezier(.2,.8,.2,1)}.project-dialog-close{position:absolute;z-index:4;right:15px;top:15px;display:grid;width:42px;height:42px;place-items:center;padding:0;border:1px solid #ffffff66;border-radius:50%;background:#061635cc;color:#fff;font:300 27px/1 Arial}.project-dialog-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);max-height:min(760px,88vh)}.project-dialog-layout>figure{min-height:600px;margin:0;overflow:hidden;background:#e9edf3}.project-dialog-layout>figure img{width:100%;height:100%;object-fit:cover}.project-dialog-content{overflow:auto;padding:clamp(34px,5vw,64px)}.project-dialog-tags{display:flex;gap:8px;flex-wrap:wrap}.project-dialog-tags span{padding:6px 10px;border-radius:99px;background:#edf2ff;color:#00278d;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.project-dialog-content h2{margin:18px 0 7px;font-size:clamp(31px,4vw,48px);line-height:1.04;letter-spacing:-.045em}.project-dialog-location{margin:0 0 23px;color:#00278d;font-size:13px;font-weight:600}.project-dialog-description{margin:0;color:#596570;font-size:14px;line-height:1.8}.project-specification{margin-top:30px;padding-top:25px;border-top:1px solid #e1e5ec}.project-specification>span{color:#00278d;font-size:10px;font-weight:700;letter-spacing:.13em}.project-specification dl{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;margin:16px 0 0}.project-specification dl div{padding:11px 0;border-bottom:1px solid #edf0f4}.project-specification dt{color:#78838e;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.project-specification dd{margin:3px 0 0;font-size:12px;font-weight:600}.project-specification[hidden]{display:none}.project-dialog-enquiry{display:inline-flex;align-items:center;gap:18px;margin-top:30px;border-radius:99px;padding:14px 21px;background:#00278d;color:#fff}
.project-enquiry-dialog{height:100%;width:min(560px,100%);margin:0 0 0 auto;background:#061635;color:#fff;box-shadow:-30px 0 80px #0005}.project-enquiry-dialog[open]{animation:projectDrawerIn .4s cubic-bezier(.2,.8,.2,1)}.project-enquiry-head{display:flex;justify-content:space-between;gap:20px;padding:clamp(28px,5vw,52px) clamp(24px,5vw,48px) 22px}.project-enquiry-head>div>span{color:#aebee0;font-size:10px;font-weight:700;letter-spacing:.15em}.project-enquiry-head h2{margin:9px 0;font-size:clamp(29px,4vw,43px);line-height:1.08;letter-spacing:-.04em}.project-enquiry-head p{margin:0;color:#c9d3e7;font-size:13px}.project-enquiry-head button{flex:0 0 42px;height:42px;padding:0;border:1px solid #ffffff40;border-radius:50%;background:transparent;color:#fff;font-size:25px}.project-enquiry-form{display:grid;gap:16px;padding:8px clamp(24px,5vw,48px) 46px}.project-enquiry-form label{display:grid;gap:7px;color:#dce4f5;font-size:12px;font-weight:600}.project-enquiry-form input,.project-enquiry-form textarea{width:100%;border:1px solid #ffffff2d;border-radius:10px;padding:12px 13px;background:#fff;color:#111820;font:inherit}.project-enquiry-form textarea{resize:vertical}.project-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.project-enquiry-form>button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;margin-top:4px;border-radius:99px;background:#d9a83e;color:#111820}.project-enquiry-form>button:disabled{cursor:not-allowed;opacity:.5}.project-recaptcha-note{margin:0;padding:12px;border:1px solid #ffffff38;border-radius:10px;color:#dce4f5;font-size:12px}
@keyframes projectModalIn{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}@keyframes projectDrawerIn{from{transform:translateX(100%)}to{transform:none}}
@media(max-width:980px){.project-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-dialog-layout{grid-template-columns:1fr;overflow:auto}.project-dialog-layout>figure{min-height:0;aspect-ratio:16/8}.project-dialog-content{overflow:visible}.project-detail-dialog{max-height:90vh;overflow:auto}}
@media(max-width:640px){.project-discovery-heading{display:block}.project-discovery-heading>div:last-child{margin-top:22px}.project-showcase-grid{grid-template-columns:1fr;gap:20px}.project-showcase-card{border-radius:18px}.project-showcase-media{aspect-ratio:16/10}.project-showcase-body{padding:21px 19px}.project-summary{min-height:0}.project-media-arrow{opacity:1;transform:none}.project-detail-dialog{width:calc(100% - 20px);border-radius:20px}.project-dialog-layout>figure{aspect-ratio:16/10}.project-dialog-content{padding:27px 20px 30px}.project-specification dl{grid-template-columns:1fr}.project-form-row{grid-template-columns:1fr}.project-enquiry-dialog{width:100%}.project-enquiry-head{padding-top:25px}.project-enquiry-form{padding-bottom:32px}.g-recaptcha{max-width:100%;overflow:hidden;transform:scale(.88);transform-origin:left top;margin-bottom:-8px}}
@media(prefers-reduced-motion:reduce){.project-detail-dialog[open],.project-enquiry-dialog[open]{animation:none}.project-showcase-card,.project-showcase-media img{transition:none}}
