.rp-project-carousel {
    --pc-blue:#4074a4;
    box-sizing:border-box;
    width:100%;
    /* Transformed slides must not enlarge the page's scrollable area. */
    overflow:hidden;
    padding:82px 3.125%;
    background:#eef4f7;
    color:#000;
    font-family:Montserrat,sans-serif;
}
.rp-project-carousel *, .rp-project-carousel *::before, .rp-project-carousel *::after {box-sizing:border-box;}
.rp-project-carousel [hidden] {display:none !important;}
.rp-project-carousel__panel {display:grid;grid-template-columns:minmax(0,550fr) minmax(0,1062fr);gap:114px;align-items:center;max-width:1800px;margin:auto;padding:34px 29px 24px 45px;border-radius:15px;background:#fff;min-height:388px;}
.rp-project-carousel__copy {min-width:0;}
.rp-project-carousel__copy h2 {margin:0 0 36px;font-size:26px;font-weight:600;line-height:1.1;color:#000;}
.rp-project-carousel__copy h2 strong {color:#0976f2;font-weight:800;}
.rp-project-carousel__description {max-width:518px;font-size:18px;line-height:1.2;}
.rp-project-carousel__description p {margin:0 0 22px;font-size:inherit;line-height:inherit;}
.rp-project-carousel__description p:last-child {margin-bottom:26px;}
.rp-project-carousel__cta {display:flex;align-items:center;justify-content:center;width:100%;max-width:387px;min-height:46px;padding:10px 12px;border-radius:5px;background:#deefff;color:var(--pc-blue);font-size:18px;font-weight:700;line-height:1.2;text-decoration:none;text-align:center;}
.rp-project-carousel__cta:hover {background:#cde4fa;}
.rp-project-carousel__gallery {position:relative;min-width:0;}
.rp-project-carousel__stage {position:relative;aspect-ratio:1004 / 290;margin:0 29px;}
.rp-project-carousel__slide {position:absolute;display:block;top:50%;left:50%;width:38.63%;aspect-ratio:388 / 290;transform:translate(-50%,-50%);border-radius:14px;text-decoration:none;transition:opacity .2s;overflow:hidden;}
.rp-project-carousel__slide > img {display:block;width:100%;height:100%;object-fit:cover;}
.rp-project-carousel__slide.is-current {z-index:2;box-shadow:0 0 15px #00000026;}
.rp-project-carousel__slide.is-prev, .rp-project-carousel__slide.is-next {width:28.36%;opacity:.6;}
.rp-project-carousel__slide.is-prev {left:0;transform:translateY(-50%);}
.rp-project-carousel__slide.is-next {left:auto;right:0;transform:translateY(-50%);}
.rp-project-carousel__meta {position:absolute;left:10px;right:10px;bottom:9px;display:flex;flex-wrap:wrap;gap:12px;pointer-events:none;}
.rp-project-carousel__meta > span {padding:10px 12px;border-radius:5px;background:#deefff;color:var(--pc-blue);font-size:13px;font-weight:700;line-height:1.1;}
.rp-project-carousel__stock {position:absolute;top:16px;left:16px;padding:12px;border-radius:6px;background:#279040;color:#fff;font-size:15px;font-weight:700;line-height:1.2;box-shadow:0 0 52px #00000040;}
.rp-project-carousel__slide:not(.is-current) .rp-project-carousel__meta,
.rp-project-carousel__slide:not(.is-current) .rp-project-carousel__stock {display:none;}
.rp-project-carousel__arrow {position:absolute;top:calc(50% - 22px);transform:translateY(-50%);padding:0;border:0;background:none;cursor:pointer;z-index:3;line-height:0;}
.rp-project-carousel__arrow--prev {left:0;}
.rp-project-carousel__arrow--next {right:0;}
.rp-project-carousel__arrow img {display:block;max-width:none;}
.rp-project-carousel__dots {display:flex;justify-content:center;min-height:44px;margin-top:8px;}
.rp-project-carousel__dots button {display:flex;align-items:center;justify-content:center;width:31px;min-height:44px;padding:0;border:0;background:none;cursor:pointer;}
.rp-project-carousel__dots img {display:block;max-width:none;}
.rp-project-carousel__status {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.rp-project-carousel a:focus-visible,.rp-project-carousel button:focus-visible {outline:2px solid var(--pc-blue);outline-offset:3px;}
.rp-project-carousel__empty {text-align:center;padding:30px;}
.rp-project-carousel__stage {touch-action:pan-y;}
.rp-project-carousel__stage.is-animating {clip-path:inset(-24px 0);}
.rp-project-carousel__stage.is-animating .rp-project-carousel__slide {will-change:transform,opacity;transition:none;pointer-events:none;}
.rp-project-carousel__slide.is-leaving {pointer-events:none;}
@media (min-width:1201px) and (max-width:1600px) {
    .rp-project-carousel__panel {gap:40px;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);padding-left:30px;}
    .rp-project-carousel__copy h2 {font-size:24px;margin-bottom:24px;}
    .rp-project-carousel__description {font-size:16px;}
    .rp-project-carousel__meta {gap:6px;left:7px;right:7px;bottom:7px;}
    .rp-project-carousel__meta > span {font-size:10px;padding:7px;}
    .rp-project-carousel__stock {font-size:12px;top:12px;left:12px;padding:9px;}
}
@media (max-width:1200px) {
    .rp-project-carousel {padding:77px 4.3%;}
    .rp-project-carousel__panel {display:block;padding:34px 24px 14px;min-height:0;}
    .rp-project-carousel__copy {text-align:center;}
    .rp-project-carousel__copy h2 {margin:0 auto 34px;max-width:835px;}
    .rp-project-carousel__description {max-width:835px;margin:auto;}
    .rp-project-carousel__description p:last-child {margin-bottom:34px;}
    .rp-project-carousel__description br {display:none;}
    .rp-project-carousel__cta {margin:0 auto 42px;}
    .rp-project-carousel__meta {left:8px;right:8px;bottom:7px;gap:10px;}
    .rp-project-carousel__meta > span {font-size:11px;padding:8px 10px;}
    .rp-project-carousel__stock {top:13px;left:13px;font-size:13px;padding:10px;}
    .rp-project-carousel__dots button {width:26px;}
}
@media (min-width:601px) and (max-width:800px) {
    .rp-project-carousel__meta {gap:4px;}
    .rp-project-carousel__meta > span {font-size:9px;padding:6px;}
}
@media (max-width:600px) {
    .rp-project-carousel {padding:73px 15px 80px;}
    .rp-project-carousel__panel {padding:50px 20px 28px;}
    .rp-project-carousel__copy h2 {font-size:22px;line-height:1.1;margin-bottom:32px;}
    .rp-project-carousel__description {font-size:16px;}
    .rp-project-carousel__description p {margin-bottom:20px;}
    .rp-project-carousel__description p:last-child {margin-bottom:34px;}
    .rp-project-carousel__cta {max-width:315px;margin-bottom:27px;}
    .rp-project-carousel__stage {margin:0;aspect-ratio:324 / 242;}
    .rp-project-carousel__slide.is-current {width:100%;border-radius:12px;}
    .rp-project-carousel__slide.is-prev,.rp-project-carousel__slide.is-next,
    .rp-project-carousel__arrow {display:none;}
    .rp-project-carousel__dots {margin-top:9px;}
}
@media (prefers-reduced-motion:reduce) {.rp-project-carousel__slide {transition:none;}}
