.realisations-shell{width:min(1220px,calc(100% - 48px));margin-inline:auto}
.realisations-page,.realisation-detail{color:#202020;background:#fff}
.realisations-shell>.windows-breadcrumbs{margin:28px 0;flex-wrap:wrap}
.realisations-hero{position:relative;display:grid;place-items:center;min-height:300px;isolation:isolate;overflow:hidden;background:#282828}
.realisations-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.realisations-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,.3));z-index:-1}
.realisations-hero h1{margin:0;padding:40px 24px;color:#fff;font-size:clamp(36px,5vw,62px);font-weight:650;text-transform:uppercase;text-align:center;line-height:1.12}
.realisations-intro{padding:44px 0 34px}.realisations-intro h2{margin:0 0 22px;font-size:27px;text-transform:uppercase;font-weight:650}.realisations-intro p{margin:0;color:#555;font-size:16px;line-height:1.7}
.realisations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
.realisation-card{min-width:0;background:#fff}.realisation-card__image{display:block;position:relative;overflow:hidden;aspect-ratio:1.52;background:#f4f4f4}
.realisation-card__image>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.realisation-card__image:hover>img,.realisation-card__image:focus-visible>img{transform:scale(1.045)}
.realisation-card__overlay{position:absolute;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:rgba(255,255,255,.95);color:#202020;font-size:13px;font-weight:600;text-transform:uppercase;transform:translateY(100%);transition:transform .2s}
.realisation-card__overlay>span{color:var(--orange);font-size:24px}.realisation-card__image:hover .realisation-card__overlay,.realisation-card__image:focus-visible .realisation-card__overlay{transform:translateY(0)}
.realisation-card__copy{padding:18px 0 4px}.realisation-card h3{margin:0;font-size:18px;line-height:1.35;font-weight:650;text-transform:uppercase}.realisation-card h3 a:hover{color:var(--orange)}.realisation-card p{margin:11px 0 0;color:#666;font-size:14px;line-height:1.65}
.realisations-pagination{display:flex;justify-content:center;gap:8px;margin:42px 0 65px}.realisations-pagination .page-numbers{display:grid;place-items:center;min-width:43px;height:43px;padding:5px 12px;border:1px solid #ddd;font-size:15px}.realisations-pagination .current,.realisations-pagination a:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.realisations-empty{padding:30px 0 80px}.realisation-detail{padding-bottom:65px}.realisation-detail__heading{padding:12px 0 32px}.realisation-detail h1{max-width:1050px;font-size:clamp(30px,3.5vw,46px);line-height:1.2;font-weight:600;margin:0}.realisation-detail__heading:after{content:"";display:block;width:52px;height:3px;background:var(--orange);margin-top:24px}
.realisation-detail__content{font-size:16px;line-height:1.8;color:#4b4b4b}.realisation-detail__content p{margin:0 0 20px}.realisation-detail__content a{color:var(--orange)}
.realisation-detail__content .gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:38px 0!important}.realisation-detail__content .gallery-item{float:none!important;width:auto!important;max-width:none!important;margin:0!important}.realisation-detail__content .gallery-icon{margin:0}.realisation-detail__content .gallery-icon a{display:block;overflow:hidden;aspect-ratio:1.5;background:#f6f6f6}.realisation-detail__content .gallery img{width:100%;height:100%;object-fit:contain;border:0!important;transition:transform .25s}.realisation-detail__content .gallery a:hover img{transform:scale(1.025)}.realisation-detail__content .gallery br{display:none}.realisation-detail__content .gallery-caption{font-size:13px}.realisation-back{display:inline-flex;gap:12px;align-items:center;margin-top:30px;font-weight:600}.realisation-back:hover{color:var(--orange)}
.realisation-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:50px 70px;border:0;background:rgba(15,15,15,.97);color:#fff}.realisation-lightbox::backdrop{background:rgba(0,0,0,.85)}.realisation-lightbox[open]{display:grid;place-items:center}.realisation-lightbox figure{margin:0;max-width:100%;text-align:center}.realisation-lightbox figure img{display:block;max-width:100%;width:auto;max-height:calc(100dvh - 150px);object-fit:contain;margin:auto}.realisation-lightbox figcaption{padding:14px 0 0;font-size:14px}.realisation-lightbox button{position:absolute;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #666;border-radius:50%;background:#222;color:#fff;font-size:25px;cursor:pointer}.realisation-lightbox__close{top:15px;right:18px}.realisation-lightbox__previous{left:15px;top:calc(50% - 22px)}.realisation-lightbox__next{right:15px;top:calc(50% - 22px)}.realisation-lightbox button:hover{background:var(--orange)}
.realisations-page a:focus-visible,.realisation-detail a:focus-visible,.realisation-lightbox button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@media(max-width:850px){.realisations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.realisation-detail__content .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.realisations-hero{min-height:250px}}
@media(max-width:560px){.realisations-shell{width:calc(100% - 32px)}.realisations-grid{grid-template-columns:1fr;gap:30px}.realisations-intro{padding:30px 0}.realisations-intro h2{font-size:23px}.realisations-hero{min-height:210px}.realisation-detail__content .gallery{grid-template-columns:1fr;gap:15px}.realisation-lightbox{padding:65px 14px}.realisation-lightbox__previous,.realisation-lightbox__next{top:auto;bottom:18px}.realisation-lightbox figure img{max-height:calc(100dvh - 185px)}}
@media(prefers-reduced-motion:reduce){.realisation-card__image>img,.realisation-card__overlay,.realisation-detail__content .gallery img{transition:none}}
