.project-hero{color:#fff;background-image:url(/images/641665781_813467021781953_1497435344193608616_n.webp);background-position:50% 48%;background-size:cover;width:100%;min-height:558px;position:relative;overflow:hidden}.project-hero__overlay{z-index:1;background:#000000b8;position:absolute;inset:0}.project-hero__container{z-index:2;flex-direction:column;align-items:flex-start;width:100%;max-width:1440px;min-height:464px;margin-top:112px;padding:104px 40px 70px 93px;display:flex;position:relative}.project-hero h1{font-family:var(--font-cormorant), serif;letter-spacing:-1px;color:#fff;margin:0;font-size:72px;font-weight:700;line-height:.96}.project-hero p{max-width:590px;font-family:var(--font-montserrat), sans-serif;color:#fff;margin:48px 0 0;font-size:19px;font-weight:800;line-height:1.42}.project-hero__features{align-items:center;gap:58px;margin-top:58px;display:flex}.project-hero__feature{font-family:var(--font-montserrat), sans-serif;color:#fff;white-space:nowrap;align-items:center;gap:18px;font-size:18px;font-weight:800;line-height:1;display:inline-flex}.project-hero__icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.project-hero__icon svg{flex-shrink:0;display:block}.project-hero__feature:first-child .project-hero__icon svg{width:40px;height:40px}.project-hero__feature:nth-child(2) .project-hero__icon svg{width:40px;height:46px}.project-hero__feature:nth-child(3) .project-hero__icon svg{width:48px;height:20px}@media (max-width:1200px){.project-hero__container{padding-left:60px}.project-hero h1{font-size:60px}.project-hero__features{gap:38px}}@media (max-width:900px){.project-hero{min-height:520px}.project-hero__container{min-height:520px;padding:90px 35px 60px}.project-hero h1{font-size:50px;line-height:1.05}.project-hero p{margin-top:34px;font-size:16px}.project-hero__features{flex-direction:column;align-items:flex-start;gap:24px;margin-top:42px}}@media (max-width:520px){.project-hero{min-height:500px}.project-hero__container{min-height:500px;padding:75px 24px 50px}.project-hero h1{font-size:42px;line-height:1.08}.project-hero p{margin-top:28px;font-size:15px;line-height:1.55}.project-hero__features{gap:22px;margin-top:35px}.project-hero__feature{gap:14px;font-size:14px}}
.projects{color:#000;background:#f4f4f4;width:100%;padding:96px 89px 80px;overflow:hidden}.projects__container{width:100%;max-width:1395px;margin:0 auto}.projects__header{max-width:900px;margin:0 0 64px}.projects__eyebrow{font-family:var(--font-montserrat), sans-serif;color:#a91e2b;margin:0 0 24px;font-size:29px;font-weight:900;line-height:1}.projects__header h2{font-family:var(--font-montserrat), sans-serif;color:#000;margin:0 0 22px;font-size:48px;font-weight:900;line-height:1.05}.projects__header p:not(.projects__eyebrow){max-width:760px;font-family:var(--font-montserrat), sans-serif;color:#000;margin:0;font-size:20px;font-weight:600;line-height:1.45}.projects__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;display:grid}.projects__item{aspect-ratio:1;cursor:pointer;background:#d9d9d9;border:1px solid #00000047;border-radius:10px;width:100%;padding:0;position:relative;overflow:hidden}.projects__image{object-fit:cover;transition:transform .35s}.projects__item:hover .projects__image{transform:scale(1.05)}.projects__overlay{pointer-events:none;background:#0000000d;transition:background .3s;position:absolute;inset:0}.projects__item:hover .projects__overlay{background:#00000026}.projects__zoom-icon{z-index:2;opacity:0;pointer-events:none;transition:all .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.8)}.projects__item:hover .projects__zoom-icon{opacity:1;transform:translate(-50%,-50%)scale(1)}.lightbox{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000f2;justify-content:center;align-items:center;padding:80px 96px 40px;display:flex;position:fixed;inset:0}.lightbox__close{z-index:10001;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:fixed;top:28px;right:28px}.lightbox__nav{z-index:10001;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:56px;height:56px;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.lightbox__nav--prev{left:28px}.lightbox__nav--next{right:28px}.lightbox__content{flex-direction:column;gap:16px;width:min(1200px,100%);display:flex}.lightbox__image-container{background:#111;border-radius:10px;width:100%;height:min(76vh,820px);position:relative;overflow:hidden}.lightbox__image{object-fit:contain}.lightbox__caption{color:#ffffffe6;font-family:var(--font-montserrat), sans-serif;justify-content:space-between;gap:20px;display:flex}.lightbox__caption p{margin:0;font-size:14px;font-weight:500}.lightbox__caption span{color:#ffffffa6;flex-shrink:0;font-size:13px}@media (max-width:1450px){.projects{padding-left:70px;padding-right:70px}.projects__grid{gap:24px}}@media (max-width:1200px){.projects{padding:80px 50px}.projects__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.projects__header h2{font-size:42px}}@media (max-width:900px){.projects{padding:68px 34px}.projects__header{margin-bottom:48px}.projects__eyebrow{font-size:24px}.projects__header h2{font-size:36px}.projects__header p:not(.projects__eyebrow){font-size:18px}.projects__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.lightbox{padding:76px 20px 32px}.lightbox__image-container{height:72vh}.lightbox__close{width:42px;height:42px;top:18px;right:18px}.lightbox__nav{width:42px;height:42px}.lightbox__nav--prev{left:14px}.lightbox__nav--next{right:14px}}@media (max-width:600px){.projects{padding:54px 22px}.projects__header{margin-bottom:34px}.projects__eyebrow{margin-bottom:18px;font-size:20px}.projects__header h2{margin-bottom:18px;font-size:30px}.projects__header p:not(.projects__eyebrow){font-size:16px}.projects__grid{grid-template-columns:1fr;gap:20px}.lightbox{padding:72px 14px 28px}.lightbox__image-container{height:68vh}.lightbox__caption{align-items:flex-start}.lightbox__caption p{font-size:12px}.lightbox__caption span{font-size:11px}}@media (max-height:600px) and (orientation:landscape){.lightbox{padding:52px 72px 20px}.lightbox__image-container{height:74vh}.lightbox__close{top:12px;right:12px}.lightbox__nav{width:36px;height:36px}}
