.jp-bap-compare{--jp-bap-position:0.5;--jp-bap-overlay:#000000;--jp-bap-overlay-opacity:0;--jp-bap-handle-size:44px;--jp-bap-handle-color:#ffffff;position:relative;margin:0;}
.jp-bap-stage{position:relative;width:100%;overflow:hidden;border-radius:10px;background:color-mix(in srgb, currentColor 12%, transparent);}
.jp-bap-layer{position:relative;width:100%;}
.jp-bap-layer img{display:block;width:100%;height:auto;object-fit:contain;}
.jp-bap-compare img.jp-bap-img{width:100% !important;height:auto !important;max-width:100% !important;}
.jp-bap-layer-after{position:absolute;inset:0;transition:clip-path var(--jp-bap-duration) var(--jp-bap-easing), opacity var(--jp-bap-duration) var(--jp-bap-easing);}
.jp-bap-orientation-horizontal.jp-bap-mode-slider .jp-bap-layer-after, .jp-bap-orientation-horizontal.jp-bap-mode-fade .jp-bap-layer-after{clip-path:inset(0 calc((1 - var(--jp-bap-position)) * 100%) 0 0);}
.jp-bap-orientation-vertical.jp-bap-mode-slider .jp-bap-layer-after, .jp-bap-orientation-vertical.jp-bap-mode-fade .jp-bap-layer-after{clip-path:inset(calc((1 - var(--jp-bap-position)) * 100%) 0 0 0);}
.jp-bap-mode-fade .jp-bap-layer-after{clip-path:none;opacity:0;}
.jp-bap-mode-fade.is-after-visible .jp-bap-layer-after{opacity:1;}
@media (hover: hover) and (pointer: fine) {
.jp-bap-mode-fade:hover .jp-bap-layer-after{opacity:1;}
}
.jp-bap-mode-fade .jp-bap-range, .jp-bap-mode-fade .jp-bap-handle, .jp-bap-mode-side_by_side .jp-bap-range, .jp-bap-mode-side_by_side .jp-bap-handle{display:none;}
.jp-bap-mode-side_by_side .jp-bap-stage{display:grid;grid-template-columns:1fr 1fr;}
.jp-bap-mode-side_by_side .jp-bap-layer-after{position:relative;inset:auto;clip-path:none;}
.jp-bap-overlay{position:absolute;inset:0;background:var(--jp-bap-overlay);opacity:var(--jp-bap-overlay-opacity);pointer-events:none;}
.jp-bap-range{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:ew-resize;}
.jp-bap-orientation-vertical .jp-bap-range{cursor:ns-resize;}
.jp-bap-handle{position:absolute;width:var(--jp-bap-handle-size);height:var(--jp-bap-handle-size);border-radius:999px;background:rgba(0, 0, 0, 0.35);border:2px solid var(--jp-bap-handle-color);color:var(--jp-bap-handle-color);display:grid;place-items:center;padding:0;cursor:ew-resize;z-index:5;transition:left var(--jp-bap-duration) var(--jp-bap-easing), top var(--jp-bap-duration) var(--jp-bap-easing);}
.jp-bap-orientation-horizontal .jp-bap-handle{top:50%;left:calc(var(--jp-bap-position) * 100%);transform:translate(-50%, -50%);}
.jp-bap-orientation-vertical .jp-bap-handle{left:50%;top:calc(var(--jp-bap-position) * 100%);transform:translate(-50%, -50%);cursor:ns-resize;}
.jp-bap-term-children{margin:18px 0 24px;}
.jp-bap-term-children-title{margin:0 0 10px;font-size:18px;}
.jp-bap-term-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:12px;}
.jp-bap-subcat-groups{margin-top:18px;display:flex;flex-direction:column;gap:24px;}
.jp-bap-subcat-title{margin:0 0 10px;font-size:16px;}
.jp-bap-subcat-title a{color:#111;text-decoration:none;}
.jp-bap-subcat-title a:hover{text-decoration:underline;}
.jp-bap-subcat-cases{display:flex;flex-direction:column;gap:14px;}
.jp-bap-term-card{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(0, 0, 0, 0.12);border-radius:12px;background:#fff;text-decoration:none;}
.jp-bap-term-card-name{font-weight:700;color:#111;}
.jp-bap-term-card-count{color:rgba(0, 0, 0, 0.6);font-size:13px;}
.jp-bap-breadcrumbs{margin:0 0 8px;font-size:13px;color:rgba(0, 0, 0, 0.65);}
.jp-bap-breadcrumbs-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.jp-bap-breadcrumbs-link{color:rgba(0, 0, 0, 0.75);text-decoration:none;}
.jp-bap-breadcrumbs-link:hover{text-decoration:underline;}
.jp-bap-breadcrumbs-sep{color:rgba(0, 0, 0, 0.35);}
.jp-bap-breadcrumbs-current{color:rgba(0, 0, 0, 0.9);font-weight:600;}
.jp-bap-handle-bar{position:absolute;inset:0;border-radius:999px;pointer-events:none;}
.jp-bap-handle-icon{font-size:16px;line-height:1;}
.jp-bap-label{position:absolute;top:12px;padding:6px 10px;font-size:13px;border-radius:999px;background:rgba(0, 0, 0, 0.55);color:#fff;z-index:6;}
.jp-bap-label-before{left:12px;}
.jp-bap-label-after{right:12px;}
.jp-bap-watermark{position:absolute;z-index:4;pointer-events:none;padding:10px;display:grid;place-items:center;}
.jp-bap-watermark-text{font-size:14px;font-weight:600;letter-spacing:0.02em;color:rgba(255, 255, 255, 0.9);text-shadow:0 1px 2px rgba(0, 0, 0, 0.6);background:rgba(0, 0, 0, 0.25);padding:6px 10px;border-radius:999px;}
.jp-bap-watermark-img{max-width:120px;height:auto;display:block;}
.jp-bap-watermark-top_left{top:0;left:0;}
.jp-bap-watermark-top_right{top:0;right:0;}
.jp-bap-watermark-bottom_left{bottom:0;left:0;}
.jp-bap-watermark-bottom_right{bottom:0;right:0;}
.jp-bap-watermark-center{top:50%;left:50%;transform:translate(-50%, -50%);}
.jp-bap-caption{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-top:8px;color:#333;}
.jp-bap-gallery{width:100%;}
.jp-bap-items{display:grid;gap:16px;}
.jp-bap-cols-1 .jp-bap-items{grid-template-columns:repeat(1, minmax(0, 1fr));}
.jp-bap-cols-2 .jp-bap-items{grid-template-columns:repeat(2, minmax(0, 1fr));}
.jp-bap-cols-3 .jp-bap-items{grid-template-columns:repeat(3, minmax(0, 1fr));}
.jp-bap-cols-4 .jp-bap-items{grid-template-columns:repeat(4, minmax(0, 1fr));}
.jp-bap-cols-5 .jp-bap-items{grid-template-columns:repeat(5, minmax(0, 1fr));}
.jp-bap-cols-6 .jp-bap-items{grid-template-columns:repeat(6, minmax(0, 1fr));}
@media(max-width:900px){
.jp-bap-cols-4 .jp-bap-items, .jp-bap-cols-5 .jp-bap-items, .jp-bap-cols-6 .jp-bap-items{grid-template-columns:repeat(3, minmax(0, 1fr));}
}
@media(max-width:680px){
.jp-bap-items{grid-template-columns:repeat(1, minmax(0, 1fr));}
}
.jp-bap-gallery-masonry .jp-bap-items{display:block;column-count:3;column-gap:16px;}
.jp-bap-gallery-masonry .jp-bap-card{break-inside:avoid;margin:0 0 16px;}
@media(max-width:900px){
.jp-bap-gallery-masonry .jp-bap-items{column-count:2;}
}
@media(max-width:680px){
.jp-bap-gallery-masonry .jp-bap-items{column-count:1;}
}
.jp-bap-gallery-carousel .jp-bap-items{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:6px;}
.jp-bap-gallery-carousel .jp-bap-card{flex:0 0 min(360px, 85vw);scroll-snap-align:start;}
.jp-bap-card-link{text-decoration:none;color:inherit;display:block;}
.jp-bap-card-title{font-size:16px;line-height:1.35;margin:10px 0 0;}
.jp-bap-card-thumb{display:block;width:100%;height:auto;border-radius:10px;}
.jp-bap-card-details{margin-top:8px;font-size:13px;color:#333;display:flex;flex-wrap:wrap;gap:8px 12px;}
.jp-bap-card-detail{padding:4px 8px;border:1px solid #eee;border-radius:999px;background:#fff;}
.jp-bap-archive-embed{margin:0 0 10px;}
.jp-bap-archive-embed-link{display:block;text-decoration:none;color:inherit;}
.jp-bap-archive-thumb{display:block;width:100%;height:auto;border-radius:10px;object-fit:contain;}
.jp-bap-archive-details{display:flex;flex-wrap:wrap;gap:8px 12px;margin:10px 0 0;}
.jp-bap-archive-detail{padding:4px 8px;border:1px solid #eee;border-radius:999px;background:#fff;}
.jp-bap-archive-detail-label{font-size:12px;color:#555;margin:0;}
.jp-bap-archive-detail-value{font-size:12px;color:#111;margin:0;}
.jp-bap-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;}
.jp-bap-carousel-nav{display:flex;justify-content:flex-end;gap:8px;margin:0 0 12px;}
.jp-bap-carousel-btn{border:1px solid #ddd;background:#fff;padding:8px 12px;border-radius:10px;cursor:pointer;font-size:13px;}
.jp-bap-filter{border:1px solid #ddd;background:#fff;padding:8px 12px;border-radius:999px;cursor:pointer;font-size:13px;}
.jp-bap-filter.is-active{border-color:#111;}
.jp-bap-lightbox{position:fixed;inset:0;background:rgba(0, 0, 0, 0.72);z-index:999999;display:grid;place-items:center;padding:20px;}
.jp-bap-lightbox-dialog{width:min(1100px, 100%);max-height:min(90vh, 900px);overflow:auto;background:#fff;border-radius:14px;padding:14px;}
.jp-bap-lightbox-close{appearance:none;border:1px solid #ddd;background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;margin-bottom:10px;}
.jp-bap-case-title{margin:0 0 14px;}
.jp-bap-case-content{margin-top:16px;}
.jp-bap-case-details{margin:14px 0 0;}
.jp-bap-case-details-list{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));gap:10px;margin:0;}
@media(max-width:680px){
.jp-bap-case-details-list{grid-template-columns:repeat(1, minmax(0, 1fr));}
}
.jp-bap-case-detail{padding:10px 12px;border:1px solid #e6e6e6;border-radius:12px;background:#fff;}
.jp-bap-case-detail-label{font-size:13px;color:#111;font-weight:700;margin:0 0 4px;}
.jp-bap-case-detail-value{font-size:14px;color:#111;margin:0;}
.jp-bap-archive-item{margin:0 0 18px;padding:14px;border:1px solid #e6e6e6;border-radius:14px;background:#fff;}
.jp-bap-archive-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:start;}
@media(max-width:900px){
.jp-bap-archive-grid{grid-template-columns:1fr;}
}
.jp-bap-archive-title{margin:0 0 12px;font-size:18px;line-height:1.2;}
.jp-bap-archive-title a{text-decoration:none;color:inherit;}
.jp-bap-archive-details{display:grid;gap:10px;margin:0;}
.jp-bap-archive-detail{padding:10px 12px;border:1px solid #eee;border-radius:12px;background:#fff;}
.jp-bap-archive-detail-label{font-size:13px;font-weight:700;color:#111;margin:0 0 4px;}
.jp-bap-archive-detail-value{font-size:14px;color:#111;margin:0;}
.jp-bap-cta-wrap{margin:14px 0 0;text-align:var(--jp-bap-cta-align, left);}
.jp-bap-cta{display:inline-block;background:var(--jp-bap-cta-bg, #111);color:var(--jp-bap-cta-text, #fff) !important;padding:12px 16px;border-radius:12px;text-decoration:none;font-weight:700;}
.jp-bap-cta:hover{filter:brightness(0.92);color:var(--jp-bap-cta-text, #fff) !important;}
.jp-bap-hrefline{margin:10px 0 0;font-size:14px;color:#111;}
.jp-bap-hrefline-link{font-weight:700;text-decoration:underline;color:inherit;}
.jp-bap-hrefline-after{margin-left:6px;color:color-mix(in srgb, currentColor 70%, transparent);}
.jp-bap-compare:focus-visible{outline:2px solid currentColor;outline-offset:4px;}
.jp-bap-handle-chevrons{display:flex;align-items:center;justify-content:center;gap:2px;pointer-events:none;z-index:1;}
.jp-bap-handle-chevron{width:7px;height:7px;border-style:solid;border-color:currentColor;}
.jp-bap-handle-chevron-prev{border-width:0 0 2px 2px;transform:rotate(45deg);margin-right:2px;}
.jp-bap-handle-chevron-next{border-width:2px 2px 0 0;transform:rotate(45deg);margin-left:2px;}
.jp-bap-enlarge{position:absolute;right:10px;bottom:10px;z-index:7;appearance:none;border:0;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;background:rgba(0, 0, 0, 0.55);color:#fff;cursor:pointer;}
.jp-bap-lightbox .jp-bap-enlarge{display:none;}
.jp-bap-lightbox-nav{appearance:none;border:1px solid color-mix(in srgb, currentColor 18%, transparent);background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;margin:0 6px 10px 0;}
.jp-bap-crop-cover .jp-bap-stage{aspect-ratio:4 / 3;}
.jp-bap-crop-cover .jp-bap-layer{height:100%;}
.jp-bap-crop-cover .jp-bap-layer img, .jp-bap-crop-cover img.jp-bap-img{height:100% !important;object-fit:cover;}
.jp-bap-teaser{display:block;}
.jp-bap-teaser-link{display:block;text-decoration:none;color:inherit;}
.jp-bap-teaser-split{display:grid;grid-template-columns:1fr 1fr;gap:2px;border-radius:12px;overflow:hidden;background:color-mix(in srgb, currentColor 12%, transparent);}
.jp-bap-teaser-pane{position:relative;min-height:120px;}
.jp-bap-teaser-img{display:block;width:100%;height:auto;}
.jp-bap-crop-cover .jp-bap-teaser-pane{aspect-ratio:3 / 4;}
.jp-bap-crop-cover .jp-bap-teaser-img{height:100%;object-fit:cover;}
.jp-bap-teaser-label{position:absolute;left:8px;bottom:8px;font-size:11px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#fff;background:rgba(0, 0, 0, 0.5);padding:3px 7px;border-radius:999px;}
.jp-bap-teaser-title{margin:10px 0 0;font-size:16px;line-height:1.35;}
.jp-bap-cta-block{margin:16px 0 0;}
.jp-bap-disclaimer{margin:10px 0 0;font-size:13px;color:color-mix(in srgb, currentColor 70%, transparent);}
.jp-bap-case-details-list{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0;margin:0;border:1px solid color-mix(in srgb, currentColor 14%, transparent);border-radius:14px;overflow:hidden;background:color-mix(in srgb, currentColor 3%, transparent);}
.jp-bap-case-detail{display:grid;grid-template-columns:minmax(88px, 36%) 1fr;gap:10px;padding:10px 14px;border-bottom:1px solid color-mix(in srgb, currentColor 10%, transparent);background:transparent;border-radius:0;}
.jp-bap-case-detail:last-child{border-bottom:0;}
.jp-bap-faq{margin:22px 0 0;}
.jp-bap-faq-title{margin:0 0 10px;font-size:18px;}
.jp-bap-faq-item{border:1px solid color-mix(in srgb, currentColor 14%, transparent);border-radius:12px;padding:10px 12px;margin:0 0 8px;background:color-mix(in srgb, currentColor 3%, transparent);}
.jp-bap-faq-q{cursor:pointer;font-weight:700;}
.jp-bap-faq-a{margin-top:8px;font-size:14px;}
.jp-bap-related{margin:28px 0 0;}
.jp-bap-related-title{margin:0 0 12px;font-size:18px;}
.jp-bap-related-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));gap:12px;}
.jp-bap-empty{padding:28px 16px;text-align:center;border:1px dashed color-mix(in srgb, currentColor 18%, transparent);border-radius:16px;background:color-mix(in srgb, currentColor 3%, transparent);}
.jp-bap-empty-title{margin:0 0 6px;font-weight:700;}
.jp-bap-empty-copy{margin:0;color:color-mix(in srgb, currentColor 70%, transparent);}
.jp-bap-anim-fade-up .jp-bap-card, .jp-bap-anim-fade-up .jp-bap-teaser{animation:jp-bap-fade-up 0.45s ease both;}
.jp-bap-anim-zoom-in .jp-bap-card, .jp-bap-anim-zoom-in .jp-bap-teaser{animation:jp-bap-zoom-in 0.45s ease both;}
@keyframes jp-bap-fade-up {
from{opacity:0;transform:translateY(12px);}
to{opacity:1;transform:none;}
}
@keyframes jp-bap-zoom-in {
from{opacity:0;transform:scale(0.98);}
to{opacity:1;transform:none;}
}
@media (prefers-reduced-motion: reduce) {
.jp-bap-layer-after, .jp-bap-handle, .jp-bap-anim-fade-up .jp-bap-card, .jp-bap-anim-zoom-in .jp-bap-card, .jp-bap-anim-fade-up .jp-bap-teaser, .jp-bap-anim-zoom-in .jp-bap-teaser{animation:none !important;transition:none !important;}
}
@media(max-width:680px){
.jp-bap-case-details-list{grid-template-columns:1fr;}
}
.elementor-widget-jp_before_after_gallery .jp-bap-range, .elementor-widget-jp_before_after_single .jp-bap-range{opacity:0;margin:0;padding:0;background:transparent;border:0;-webkit-appearance:none;appearance:none;}
.elementor-widget-jp_before_after_gallery .jp-bap-handle, .elementor-widget-jp_before_after_single .jp-bap-handle{-webkit-appearance:none;appearance:none;box-shadow:none;}
.elementor-widget-jp_before_after_gallery .jp-bap-filter, .elementor-widget-jp_before_after_gallery .jp-bap-carousel-btn, .elementor-widget-jp_before_after_gallery .jp-bap-load-more, .elementor-widget-jp_before_after_single button.jp-bap-lightbox-close{-webkit-appearance:none;appearance:none;}
.jp-bap-elementor-placeholder{display:grid;place-items:center;min-height:180px;padding:28px 20px;border:1px dashed color-mix(in srgb, currentColor 22%, transparent);border-radius:16px;background:color-mix(in srgb, currentColor 4%, transparent);text-align:center;}
.jp-bap-elementor-placeholder-copy {
margin: 0;
max-width: 28em;
font-size: 14px;
line-height: 1.5;
color: color-mix(in srgb, currentColor 72%, transparent);
}