.projects-hero{background-color:var(--color-bg);padding:clamp(2.5rem,4vw,3.5rem) clamp(16px,5vw,80px) clamp(2rem,4vw,3.5rem);position:relative;overflow:hidden}.projects-hero__shell{z-index:2;width:min(1060px,100%);margin:0 auto;position:relative}.projects-hero__inner{z-index:2;text-align:center;flex-direction:column;align-items:center;min-width:0;display:flex;position:relative}.projects-hero__badge{color:#76642f;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);background:#fffcf5b8;border:1px solid #8a744061;border-radius:999px;align-items:center;gap:.65rem;margin-bottom:2rem;padding:.68rem 1.25rem;font-size:.82rem;font-weight:600;line-height:1;display:inline-flex}.projects-hero__badge-star{font-size:.8rem;line-height:1}.projects-hero__h1{color:#171411;font-family:var(--font-display);letter-spacing:-.055em;text-wrap:balance;max-width:56rem;margin:0 auto 1.5rem;font-size:clamp(2.75rem,5.1vw,4.75rem);font-weight:400;line-height:1.06}.projects-hero__h2{color:#1c1712e0;font-family:var(--font-body);letter-spacing:var(--ls-body);text-wrap:balance;max-width:42rem;margin:0 auto 1.35rem;font-size:clamp(1.12rem,1.55vw,1.32rem);font-weight:500;line-height:1.5}.projects-hero__line{padding-bottom:.08em;display:block;overflow:hidden}.projects-hero__h1 .projects-hero__line{padding-bottom:.12em}.projects-hero__body{flex-direction:column;align-items:center;gap:1.15rem;max-width:42rem;margin:0 auto;display:flex}.projects-hero__text{color:#1c1712b8;font-family:var(--font-body);letter-spacing:var(--ls-body);margin:0;font-size:clamp(1rem,1.15vw,1.1rem);font-weight:400;line-height:1.55}.projects-hero__bg{pointer-events:none;position:absolute}.projects-hero__ring{border:1px solid #c8b07c14;border-radius:999px;top:50%;left:50%;transform:translate(-50%,-50%)}.projects-hero__ring--outer{width:min(88vw,980px);height:min(88vw,980px)}.projects-hero__ring--inner{border-color:#c8b07c0f;width:min(58vw,640px);height:min(58vw,640px)}.projects-hero__dots{opacity:.22;background-image:radial-gradient(#bfa06047 1px,#0000 1px);background-size:11px 11px;-webkit-mask-image:radial-gradient(circle,#000 32%,#0000 100%);mask-image:radial-gradient(circle,#000 32%,#0000 100%)}.projects-hero__dots--tr{width:140px;height:140px;top:18%;right:8%}.projects-hero__dots--tl{width:120px;height:120px;top:22%;left:8%}.projects-hero__glow{filter:blur(1px);opacity:.65;background:#fff8e48c;border-radius:999px;width:12px;height:12px;box-shadow:0 0 10px #fff4d659}.projects-hero__glow--tr{top:26%;right:12%}@media (min-width:1025px){.projects-hero{padding-inline:clamp(48px,5vw,80px)}.projects-hero__shell{width:min(1480px,100% - 96px)}.projects-hero__h1{font-size:clamp(2.65rem,4.9vw,4.6rem)}}@media (max-width:1024px){.projects-hero{padding-top:clamp(2rem,3.5vw,3rem);padding-bottom:clamp(2rem,4vw,3.5rem);padding-inline:clamp(24px,4vw,48px)}.projects-hero__h1{max-width:100%;font-size:clamp(2.65rem,5.2vw,4.5rem)}.projects-hero__h2,.projects-hero__body{max-width:100%}.projects-hero__ring--outer{width:min(95vw,900px);height:min(95vw,900px)}.projects-hero__ring--inner{width:min(65vw,580px);height:min(65vw,580px)}.projects-hero__dots--tr{opacity:.18;width:120px;height:120px;right:3%}.projects-hero__dots--tl{opacity:.16;width:100px;height:100px;left:3%}.projects-hero__glow{opacity:.5}}@media (max-width:768px){.projects-hero{padding-top:clamp(1.75rem,4vw,2.5rem);padding-bottom:clamp(1.75rem,4vw,3rem);padding-inline:clamp(24px,6vw,32px)}.projects-hero__badge{margin-bottom:1.65rem}.projects-hero__h1{margin-bottom:1.35rem;font-size:clamp(2.65rem,9vw,4.1rem);line-height:1.02}.projects-hero__h2{margin-bottom:1.25rem;font-size:clamp(1.08rem,3.2vw,1.28rem)}.projects-hero__ring--outer{opacity:.7;width:120vw;height:120vw}.projects-hero__ring--inner{opacity:.65;width:85vw;height:85vw}.projects-hero__dots--tl{opacity:.12}.projects-hero__glow--tr{opacity:.4}}@media (max-width:480px){.projects-hero{padding-top:clamp(1.5rem,5vw,2rem);padding-bottom:clamp(1.5rem,4vw,2.5rem);padding-inline:24px}.projects-hero__badge{margin-bottom:1.45rem;padding:.62rem 1.05rem;font-size:.74rem}.projects-hero__h1{margin-bottom:1.2rem;font-size:clamp(2.55rem,12vw,3.65rem);line-height:1.04}.projects-hero__h2{margin-bottom:1.15rem;font-size:clamp(1.05rem,3.8vw,1.22rem)}.projects-hero__body{gap:1rem}.projects-hero__ring--outer,.projects-hero__ring--inner{opacity:.55}.projects-hero__dots--tr,.projects-hero__dots--tl{opacity:.1}.projects-hero__glow--tr{display:none}}@media (max-width:375px){.projects-hero{padding-inline:20px}.projects-hero__h1{font-size:clamp(2.3rem,11.5vw,3.2rem)}.projects-hero__h2{font-size:clamp(1.02rem,3.6vw,1.18rem)}}
.project-modal{z-index:200;justify-content:center;align-items:center;padding:clamp(1rem,3vw,2rem);display:flex;position:fixed;inset:0}.project-modal__backdrop{cursor:pointer;background:#1714119e;border:none;margin:0;padding:0;position:absolute;inset:0}.project-modal__panel{z-index:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#ffffff59 transparent;color:#fff;background:#636035;border-radius:1.35rem;flex-direction:column;width:min(920px,100%);max-height:min(92vh,900px);display:flex;position:relative;overflow:hidden auto;box-shadow:0 28px 80px #17141159}.project-modal__close{z-index:3;color:#fff;cursor:pointer;background:#524c2ebf;border:1px solid #ffffff38;border-radius:999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;margin:0;padding:0;transition:background .25s;display:flex;position:absolute;top:.85rem;right:.85rem}.project-modal__close:hover{background:#34301ce6}.project-modal__close:focus-visible{outline-offset:2px;outline:2px solid #ffffffe6}.project-modal__carousel{background:#524c2e;flex-shrink:0;position:relative}.project-modal__slide-trigger{cursor:zoom-in;text-align:left;background:0 0;border:none;width:100%;margin:0;padding:0;display:block;position:relative}.project-modal__slide-trigger:hover .project-modal__slide-hint,.project-modal__slide-trigger:focus-visible .project-modal__slide-hint{opacity:1}.project-modal__slide-trigger:focus-visible{outline-offset:-2px;outline:2px solid #ffffffd9}.project-modal__slide-hint{z-index:2;color:#ffffffeb;font-family:var(--font-body);letter-spacing:.02em;opacity:0;pointer-events:none;background:#1c1712b8;border-radius:999px;padding:.38rem .72rem;font-size:.75rem;font-weight:600;transition:opacity .2s;position:absolute;bottom:.85rem;right:.85rem}.project-modal__slide{aspect-ratio:16/10;width:100%;max-height:clamp(200px,38vh,380px);position:relative;overflow:hidden}.project-modal__slide-inner{position:absolute;inset:0}.project-modal__image{object-fit:cover}.project-modal__nav{z-index:2;color:#fff;cursor:pointer;background:#524c2ed1;border:1px solid #fff3;border-radius:999px;justify-content:center;align-items:center;width:2.65rem;height:2.65rem;margin:0;padding:0;transition:background .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.project-modal__nav:hover{background:#34301ceb}.project-modal__nav:focus-visible{outline-offset:2px;outline:2px solid #ffffffe6}.project-modal__nav--prev{left:.85rem}.project-modal__nav--next{right:.85rem}.project-modal__dots{z-index:2;gap:.45rem;display:flex;position:absolute;bottom:.85rem;left:50%;transform:translate(-50%)}.project-modal__dot{cursor:pointer;background:#ffffff59;border:none;border-radius:999px;width:.5rem;height:.5rem;margin:0;padding:0;transition:transform .2s,background .2s}.project-modal__dot.is-active{background:#fff;transform:scale(1.2)}.project-modal__dot:focus-visible{outline-offset:2px;outline:2px solid #fff}.project-modal__body{flex-direction:column;flex:none;gap:.9rem;padding:clamp(1.25rem,2.5vw,1.75rem) clamp(1.25rem,3vw,2rem) clamp(1.5rem,3vw,2rem);display:flex;overflow:visible}.project-modal__header{padding-right:2.5rem}.project-modal__client{font-family:var(--font-display);letter-spacing:-.04em;color:#fff;margin:0 0 .35rem;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:400;line-height:1.08}.project-modal__sector{font-family:var(--font-body);color:#ffffffc7;letter-spacing:var(--ls-body);margin:0;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.4}.project-modal__desc{font-family:var(--font-body);letter-spacing:var(--ls-body);color:#ffffffe6;margin:0;font-size:clamp(.92rem,1.1vw,1.02rem);line-height:1.58}.project-modal__tags{flex-wrap:wrap;gap:.45rem .6rem;margin:0;padding:0;list-style:none;display:flex}.project-modal__tags li{font-family:var(--font-body);letter-spacing:.02em;color:#fffffff2;background:#ffffff1a;border:1px solid #ffffff3d;border-radius:999px;padding:.38rem .72rem;font-size:.78rem;font-weight:500;line-height:1.3}@media (max-width:640px){.project-modal{align-items:flex-end;padding:.75rem}.project-modal__panel{border-radius:1.15rem 1.15rem .85rem .85rem;max-height:94vh}.project-modal__nav{width:2.35rem;height:2.35rem}.project-modal__nav--prev{left:.55rem}.project-modal__nav--next{right:.55rem}}.project-gallery-lightbox{z-index:210;justify-content:center;align-items:center;padding:clamp(.75rem,2vw,1.5rem);display:flex;position:fixed;inset:0}.project-gallery-lightbox__backdrop{cursor:pointer;background:#0c0a08e0;border:none;margin:0;padding:0;position:absolute;inset:0}.project-gallery-lightbox__panel{z-index:1;flex-direction:column;gap:.85rem;width:min(1100px,100%);max-height:min(94vh,960px);display:flex;position:relative}.project-gallery-lightbox__close{z-index:3;color:#fff;cursor:pointer;background:#1c1712d1;border:1px solid #ffffff38;border-radius:999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;margin:0;padding:0;transition:background .2s;display:flex;position:absolute;top:0;right:0}.project-gallery-lightbox__close:hover{background:#2a231cf2}.project-gallery-lightbox__close:focus-visible{outline-offset:2px;outline:2px solid #ffffffe6}.project-gallery-lightbox__title{color:#ffffffeb;font-family:var(--font-body);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:1rem;margin:0;padding-right:3rem;font-size:.9rem;font-weight:500;display:flex}.project-gallery-lightbox__counter{color:#ffffff9e;flex-shrink:0;font-size:.82rem}.project-gallery-lightbox__stage{aspect-ratio:16/10;background:#1c1712;border-radius:1rem;flex:1;width:100%;min-height:0;max-height:min(78vh,760px);position:relative;overflow:hidden}.project-gallery-lightbox__slide{position:absolute;inset:0}.project-gallery-lightbox__image{object-fit:contain}.project-gallery-lightbox__nav{z-index:2;color:#fff;cursor:pointer;background:#1c1712c7;border:1px solid #fff3;border-radius:999px;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;margin:0;padding:0;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.project-gallery-lightbox__nav:hover{background:#2a231cf2}.project-gallery-lightbox__nav:focus-visible{outline-offset:2px;outline:2px solid #ffffffe6}.project-gallery-lightbox__nav--prev{left:.85rem}.project-gallery-lightbox__nav--next{right:.85rem}.project-gallery-lightbox__dots{justify-content:center;gap:.45rem;display:flex}.project-gallery-lightbox__dot{cursor:pointer;background:#ffffff59;border:none;border-radius:999px;width:.5rem;height:.5rem;margin:0;padding:0;transition:transform .2s,background .2s}.project-gallery-lightbox__dot.is-active{background:#fff;transform:scale(1.2)}.project-gallery-lightbox__dot:focus-visible{outline-offset:2px;outline:2px solid #fff}@media (max-width:640px){.project-modal__slide-hint{opacity:1}.project-gallery-lightbox__stage{border-radius:.85rem;max-height:62vh}.project-gallery-lightbox__nav{width:2.35rem;height:2.35rem}.project-gallery-lightbox__nav--prev{left:.55rem}.project-gallery-lightbox__nav--next{right:.55rem}}
.projects-grid{background-color:var(--color-bg);padding:clamp(1.5rem,3vw,2.5rem) clamp(16px,5vw,80px) clamp(3.5rem,6vw,5.5rem)}.projects-grid__shell{width:min(1060px,100%);margin:0 auto}.projects-grid__filters{flex-wrap:wrap;justify-content:center;gap:.5rem .55rem;margin:0 0 clamp(1.75rem,3vw,2.5rem);display:flex}.projects-grid__filter{color:#524c2e;font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;background:#fffcf5a6;border:1px solid #6c643e52;border-radius:999px;margin:0;padding:.62rem 1.1rem;font-size:clamp(.78rem,.95vw,.88rem);font-weight:500;line-height:1.2;transition:background .25s,color .25s,border-color .25s,transform .2s}.projects-grid__filter:hover{background:#fffcf5f2;border-color:#6c643e8c}.projects-grid__filter.is-active{color:#fff;background:#636035;border-color:#636035}.projects-grid__filter:focus-visible{outline-offset:2px;outline:2px solid #6c643e}.projects-grid__empty{text-align:center;font-family:var(--font-body);color:var(--color-text-muted);letter-spacing:var(--ls-body);margin:0;padding:2.5rem 1rem;font-size:1rem}.projects-grid__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem);margin:0;padding:0;list-style:none;display:grid}.project-card{min-width:0}.project-card__trigger{color:#fff;text-align:left;cursor:pointer;background:#636035;border:none;border-radius:1.25rem;flex-direction:column;width:100%;margin:0;padding:0;transition:transform .35s,box-shadow .35s;display:flex;overflow:hidden}.project-card__trigger:hover{transform:translateY(-3px);box-shadow:0 18px 40px #34301c38}.project-card__trigger:focus-visible{outline-offset:3px;outline:2px solid #ffffffd9}.project-card__media{aspect-ratio:16/10;background:#524c2e;width:100%;position:relative;overflow:hidden}.project-card__image{object-fit:cover}.project-card__body{flex-direction:column;gap:.85rem;padding:clamp(1.15rem,2vw,1.45rem) clamp(1.15rem,2.2vw,1.5rem) clamp(1.25rem,2.2vw,1.55rem);display:flex}.project-card__header{flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;display:flex}.project-card__client{font-family:var(--font-display);letter-spacing:-.03em;color:#fff;margin:0;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:400;line-height:1.15}.project-card__sep{color:#ffffff73;-webkit-user-select:none;user-select:none;font-weight:300}.project-card__sector{font-family:var(--font-body);color:#ffffffc7;letter-spacing:var(--ls-body);margin:0;font-size:clamp(.78rem,.95vw,.88rem);font-weight:400;line-height:1.35}.project-card__desc{font-family:var(--font-body);letter-spacing:var(--ls-body);color:#ffffffe0;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:clamp(.82rem,.95vw,.92rem);font-weight:400;line-height:1.55;display:-webkit-box;overflow:hidden}.project-card__tags{flex-wrap:wrap;gap:.4rem .55rem;margin:0;padding:0;list-style:none;display:flex}.project-card__tags li{font-family:var(--font-body);letter-spacing:.02em;color:#ffffffeb;background:#ffffff14;border:1px solid #ffffff38;border-radius:999px;padding:.32rem .62rem;font-size:.72rem;font-weight:500;line-height:1.3}.project-card__hint{font-family:var(--font-display);letter-spacing:-.02em;text-transform:none;color:#ffffff9e;align-items:center;gap:.4rem;margin-top:.15rem;font-size:.95rem;font-weight:400;display:inline-flex}.project-card__hint-icon{opacity:.85;flex-shrink:0;transition:transform .28s}.project-card__trigger:hover .project-card__hint-icon{transform:translate(4px)}.project-media__placeholder{background:linear-gradient(145deg,#524c2e 0%,#636035 48%,#6c643e 100%);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.project-media__placeholder-icon{color:#ffffff47;font-size:1.75rem;line-height:1}@media (min-width:1025px){.projects-grid{padding-inline:clamp(48px,5vw,80px)}.projects-grid__shell{width:min(1480px,100% - 96px)}}@media (max-width:1024px){.projects-grid{padding-inline:clamp(24px,4vw,48px)}.projects-grid__list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.projects-grid__filters{justify-content:flex-start;margin-bottom:1.5rem}.projects-grid__filter{padding:.55rem .9rem;font-size:.78rem}.projects-grid__list{grid-template-columns:minmax(0,1fr)}.project-card__trigger{border-radius:1rem}.project-card__header{flex-direction:column;align-items:flex-start;gap:.2rem}.project-card__sep{display:none}}@media (max-width:480px){.projects-grid{padding-inline:24px}}
