/* CNC — a continuous diagonal composition, with independently staggered components. */
#idst-cnc-motion{--cnc-progress:0;--cnc-shift:0px;--cnc-white:#f7f7f4;position:relative;display:block!important;width:100%;max-width:none;margin:0!important;padding:0!important;background:#92929c;color:var(--cnc-white);isolation:isolate}
#idst-cnc-motion :where(.e-con,.e-con-inner){max-width:none;gap:0;padding:0}
#idst-cnc-motion p{margin:0}
#idst-cnc-motion .elementor-widget{margin:0!important}
#idst-cnc-motion .idst-cnc-stage{position:relative;display:block;width:100%;padding:0;overflow:hidden;background:radial-gradient(ellipse at 49% 36%,#b9b9c2 0,#a6a6b0 33%,#92939d 74%,#848690 100%);isolation:isolate}
#idst-cnc-motion[data-motion="active"]{height:390svh;min-height:2400px;overflow:visible}
#idst-cnc-motion[data-motion="active"] .idst-cnc-stage{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;touch-action:pan-y}
#idst-cnc-motion .idst-cnc-stage:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(107deg,#c3c1c81a 6%,transparent 32%,#595c7014 66%,transparent 89%)}

#idst-cnc-motion .idst-cnc-title{position:absolute;left:5.3%;top:18%;width:40%;z-index:5;pointer-events:none;transform:translate3d(0,calc(var(--cnc-shift)*-.35),0);opacity:1;visibility:visible;filter:blur(0);transition:opacity .5s ease-out,filter .5s ease-out,visibility 0s linear 0s}
#idst-cnc-motion[data-motion="active"][data-intro="hidden"] .idst-cnc-title{opacity:0;visibility:hidden;filter:blur(6px);transition:opacity .5s ease-out,filter .5s ease-out,visibility 0s linear .5s}
#idst-cnc-motion .idst-cnc-kicker{font-family:"DM Sans",sans-serif;font-size:11px;line-height:1.5;letter-spacing:.21em;font-weight:500;color:var(--cnc-white);margin-bottom:24px!important}
#idst-cnc-motion .idst-cnc-heading .elementor-heading-title{font-family:"DM Sans",sans-serif;font-size:clamp(46px,4vw,78px);font-weight:400;letter-spacing:-.9px;line-height:1.03;color:var(--cnc-white);word-break:keep-all;margin:0}
#idst-cnc-motion .idst-cnc-subtitle{font-family:"Noto Sans KR",sans-serif;font-size:16px;font-weight:400;line-height:1.8;letter-spacing:-.15px;color:#f3f3f5;margin-top:26px!important;max-width:370px;word-break:keep-all}

#idst-cnc-motion .idst-cnc-intro-en{font-family:"DM Sans",sans-serif;font-weight:400;font-size:14px;line-height:1.8;letter-spacing:-.15px;color:#f1f0f4;max-width:370px;margin-top:12px!important;word-break:normal;text-wrap:pretty}

#idst-cnc-motion .idst-cnc-assembly{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;z-index:3;transform:translate3d(calc(var(--cnc-shift)*var(--travel-x,0)),calc(var(--cnc-shift)*var(--travel-y,0)),0);will-change:transform}
#idst-cnc-motion .is-part-1{--travel-y:-2.35;--travel-x:-.055;--spin:14deg;z-index:4}
#idst-cnc-motion .is-part-2{--travel-y:-2.10;--travel-x:.035;--spin:-8deg;z-index:2}
#idst-cnc-motion .is-part-3{--travel-y:-2.08;--travel-x:-.09;--spin:-14deg;z-index:3}
#idst-cnc-motion .is-part-4{--travel-y:-1.92;--travel-x:.105;--spin:11deg;z-index:4}
#idst-cnc-motion .is-part-5{--travel-y:-1.80;--travel-x:-.045;--spin:18deg;z-index:3}
#idst-cnc-motion .is-part-6{--travel-y:-1.57;--travel-x:.035;--spin:-8deg;z-index:4}
#idst-cnc-motion .idst-cnc-photo{position:absolute;filter:drop-shadow(14px 25px 21px #38394428);transform:rotate(calc(var(--base-rotation,0deg) + var(--spin)*var(--cnc-progress)));transform-origin:center;pointer-events:none}
#idst-cnc-motion .idst-cnc-photo img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;-webkit-user-drag:none;user-select:none}
#idst-cnc-motion .idst-cnc-photo .elementor-widget-container{height:100%;width:100%}
/* Scroll owns these transforms; Elementor's default .4s transition adds input lag. */
#idst-cnc-motion :is(.idst-cnc-assembly,.idst-cnc-photo,.idst-cnc-wordmark),#idst-cnc-motion .idst-cnc-stage:after{transition:none}
#idst-cnc-motion .is-part-1 .idst-cnc-photo{left:36.81%;top:31.982%;width:16.38%;height:36.036%;--base-rotation:-30deg}
#idst-cnc-motion .is-part-2 .idst-cnc-photo{left:56%;top:8%;width:16%;height:30%;--base-rotation:-57deg}
#idst-cnc-motion .is-part-3 .idst-cnc-photo{left:51.6%;top:84.4%;width:20.8%;height:39.2%;--base-rotation:22deg}
#idst-cnc-motion .is-part-4 .idst-cnc-photo{left:21.675%;top:136.64%;width:13.65%;height:18.72%;--base-rotation:-24deg}
#idst-cnc-motion .is-part-5 .idst-cnc-photo{left:42.97%;top:166.11%;width:21.06%;height:39.78%;--base-rotation:-32deg}
#idst-cnc-motion .is-part-6 .idst-cnc-photo{left:58.19%;top:186.28%;width:22.62%;height:37.44%;--base-rotation:12deg}

#idst-cnc-motion .idst-cnc-caption{position:absolute;display:block;max-width:315px;width:19%;z-index:6;color:var(--cnc-white)}
#idst-cnc-motion .is-part-1 .idst-cnc-caption{left:7%;top:63%;width:19%}
#idst-cnc-motion .is-part-2 .idst-cnc-caption{left:78%;top:25%;width:16%}
#idst-cnc-motion .is-part-3 .idst-cnc-caption{left:76%;top:92%;width:17%}
#idst-cnc-motion .is-part-4 .idst-cnc-caption{left:54%;top:131%;width:23%;max-width:345px}
#idst-cnc-motion .is-part-5 .idst-cnc-caption{left:9%;top:174.5%;width:24%;max-width:330px}
#idst-cnc-motion .is-part-6 .idst-cnc-caption{left:37%;top:190%;width:22%;max-width:335px}
#idst-cnc-motion .idst-cnc-label .elementor-heading-title{font-family:"Noto Sans KR",sans-serif;font-weight:500;font-size:25px;line-height:1.3;letter-spacing:-.9px;color:var(--cnc-white);margin:0 0 9px;word-break:keep-all;white-space:nowrap}
#idst-cnc-motion .idst-cnc-detail{font-family:"Noto Sans KR",sans-serif;font-weight:400;font-size:16px;line-height:1.8;letter-spacing:-.15px;color:#f0eff3;word-break:keep-all}
#idst-cnc-motion .idst-cnc-detail .ko{display:block;white-space:nowrap}
#idst-cnc-motion .idst-cnc-detail .en{display:block;font-family:"DM Sans",sans-serif;font-weight:400;font-size:12px;line-height:1.8;letter-spacing:-.15px;color:#f6f6f8;margin-bottom:14px}
#idst-cnc-motion .idst-cnc-english{font-family:"DM Sans",sans-serif;font-weight:400;font-size:14px;line-height:1.8;letter-spacing:-.15px;color:#f1f0f4;margin-top:10px!important;word-break:normal;text-wrap:pretty}
#idst-cnc-motion .idst-cnc-leader{position:absolute;inset:0;width:100%;height:100%;z-index:5;pointer-events:none;opacity:.65}
#idst-cnc-motion .idst-cnc-leader .elementor-widget-container,#idst-cnc-motion .idst-cnc-leader svg{display:block;width:100%;height:100%;overflow:visible}
#idst-cnc-motion .idst-cnc-leader path{fill:none;stroke:#f9f9fa;stroke-width:.65;vector-effect:non-scaling-stroke}
#idst-cnc-motion .idst-cnc-leader circle{fill:#fff;stroke:none}
#idst-cnc-motion .idst-cnc-leader svg:not([data-ready="true"]){visibility:hidden}

#idst-cnc-motion .idst-cnc-wordmark{position:absolute;left:1%;bottom:-16px;width:98%;z-index:1;opacity:clamp(0,calc((var(--cnc-progress) - .90)*4.2),.42);transform:translate3d(0,calc((1 - var(--cnc-progress))*100px),0);pointer-events:none}
#idst-cnc-motion .idst-cnc-wordmark .elementor-heading-title{font-family:Arial,sans-serif;font-weight:700;white-space:nowrap;font-size:14.25vw;line-height:.9;letter-spacing:0;text-align:center;color:#f5f4f8;-webkit-text-stroke:.006em currentColor}
#idst-cnc-motion .idst-cnc-stage:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:clamp(25px,4vw,72px);z-index:8;background:#fff;border-radius:48px 48px 0 0;transform:translateY(calc((1 - clamp(0,(var(--cnc-progress) - .86)*7.15,1))*105%));pointer-events:none}
#idst-cnc-motion.is-dragging,#idst-cnc-motion.is-dragging *{cursor:grabbing!important;user-select:none}
@media(hover:hover) and (pointer:fine){#idst-cnc-motion[data-motion="active"] .idst-cnc-stage{cursor:grab}#idst-cnc-motion a{cursor:pointer}}

body.page-id-23587 #pxl-main{overflow:visible!important}
body.page-id-23587 #pxl-wapper{overflow:clip}
body.page-id-23587 #pxl-header-elementor{position:absolute;top:0;left:0;width:100%;z-index:1001;background:transparent!important}
/* Match the native header origin below the WordPress toolbar. */
body.page-id-23587.admin-bar #pxl-header-elementor{top:32px}
@media(max-width:782px){body.page-id-23587.admin-bar #pxl-header-elementor{top:46px}}
body.page-id-23587 #pxl-header-elementor .pxl-header-elementor-main .elementor-top-section{background-color:transparent!important}
body.page-id-23587.idst-cnc-hero-range #pxl-header-elementor .pxl-header-elementor-sticky{visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:translateY(-150%)!important}
@media(max-width:1199px){
 #idst-cnc-motion{width:calc(100% + 30px);margin-left:-15px!important}
 body.page-id-23587 #pxl-header-mobile img[src*="logo-black"]{filter:brightness(0) invert(1)}
 body.page-id-23587.idst-cnc-hero-range #pxl-header-elementor #pxl-header-mobile.pxl-header-mobile-fixed{position:static!important;animation:none!important}
 body.page-id-23587.idst-cnc-hero-range #pxl-header-mobile .pxl-header-sticky{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
 body.page-id-23587:not(.idst-cnc-hero-range) #pxl-header-mobile.pxl-header-mobile-fixed{background:#111!important}
}
@media(min-width:768px) and (max-width:1199px){
 #idst-cnc-motion .idst-cnc-title{top:18%;width:45%}
 #idst-cnc-motion .idst-cnc-heading .elementor-heading-title{font-size:6.15vw}
 #idst-cnc-motion .is-part-1 .idst-cnc-photo{left:38.718%;width:18.564%}
 #idst-cnc-motion .is-part-2 .idst-cnc-photo{left:56%;width:22%}
 #idst-cnc-motion .is-part-1 .idst-cnc-caption{left:6%;width:25%}
 #idst-cnc-motion .is-part-2 .idst-cnc-caption,#idst-cnc-motion .is-part-3 .idst-cnc-caption{left:73%;width:20%}
 #idst-cnc-motion .is-part-4 .idst-cnc-caption{left:54%;width:31%}
 #idst-cnc-motion .is-part-5 .idst-cnc-caption{left:7%;width:30%}
 #idst-cnc-motion .is-part-6 .idst-cnc-caption{left:10%;width:32%}
}

/* Portrait has its own rhythm; text stays clear of the right-hand contact dock. */
@media(max-width:767px){
 #idst-cnc-motion[data-motion="active"]{height:460svh;min-height:2700px}
 #idst-cnc-motion[data-motion="active"] .idst-cnc-stage{height:100svh;min-height:680px}
 #idst-cnc-motion .idst-cnc-title{left:7%;top:14%;width:85%;opacity:1}
 #idst-cnc-motion .idst-cnc-kicker{font-size:9px;margin-bottom:16px!important;letter-spacing:.18em}
 #idst-cnc-motion .idst-cnc-heading .elementor-heading-title{font-size:clamp(38px,10.5vw,64px);line-height:1.03;letter-spacing:-.9px}
 #idst-cnc-motion .idst-cnc-subtitle{font-size:16px;line-height:1.65;max-width:285px;margin-top:15px!important}
 #idst-cnc-motion .idst-cnc-caption{max-width:260px}
 #idst-cnc-motion .idst-cnc-label .elementor-heading-title{font-size:clamp(18px,5.6vw,22px);line-height:1.3;margin-bottom:9px}
 #idst-cnc-motion .idst-cnc-detail{font-size:16px;line-height:1.8}
 #idst-cnc-motion .idst-cnc-detail .en{font-size:12px;line-height:1.8;margin-bottom:12px}
 #idst-cnc-motion .idst-cnc-english{font-size:14px;line-height:1.8;margin-top:10px!important}
 #idst-cnc-motion .is-part-1{--travel-y:-3.35;--travel-x:-.015;--spin:10deg}
 #idst-cnc-motion .is-part-2{--travel-y:-3.50;--travel-x:.015;--spin:-8deg}
 #idst-cnc-motion .is-part-3{--travel-y:-2.70;--travel-x:-.025;--spin:-12deg}
 #idst-cnc-motion .is-part-4{--travel-y:-2.40;--travel-x:-.015;--spin:12deg}
 #idst-cnc-motion .is-part-5{--travel-y:-2.10;--travel-x:.02;--spin:15deg}
 #idst-cnc-motion .is-part-6{--travel-y:-1.65;--travel-x:-.025;--spin:-8deg}
 #idst-cnc-motion .is-part-1 .idst-cnc-photo{left:59.62%;top:69.123%;width:32.76%;height:26.754%;--base-rotation:-29deg}
 #idst-cnc-motion .is-part-2 .idst-cnc-photo{left:5%;top:42%;width:47%;height:28%;--base-rotation:-44deg}
 #idst-cnc-motion .is-part-3 .idst-cnc-photo{left:15%;top:111.2%;width:56%;height:33.6%;--base-rotation:17deg}
 #idst-cnc-motion .is-part-4 .idst-cnc-photo{left:68.3%;top:165.2%;width:23.4%;height:15.6%;--base-rotation:-24deg}
 #idst-cnc-motion .is-part-5 .idst-cnc-photo{left:-.3%;top:180.4%;width:54.6%;height:31.2%;--base-rotation:-31deg}
 #idst-cnc-motion .is-part-6 .idst-cnc-photo{left:32.7%;top:183.84%;width:54.6%;height:34.32%;--base-rotation:12deg}
 #idst-cnc-motion .is-part-1 .idst-cnc-caption{left:7%;top:80%;width:44%;max-width:215px}
 #idst-cnc-motion .is-part-2 .idst-cnc-caption{left:48%;top:50%;width:40%;max-width:215px}
 #idst-cnc-motion .is-part-3 .idst-cnc-caption{left:12%;top:144%;width:72%;max-width:340px}
 #idst-cnc-motion .is-part-4 .idst-cnc-caption{left:7%;top:164%;width:44%;max-width:215px}
 #idst-cnc-motion .is-part-5 .idst-cnc-caption{left:50%;top:181%;width:40%;max-width:205px}
 #idst-cnc-motion .is-part-6 .idst-cnc-caption{left:12.5%;top:215%;width:72%;max-width:340px}
 #idst-cnc-motion .idst-cnc-leader{display:none}
 #idst-cnc-motion .idst-cnc-wordmark .elementor-heading-title{font-size:14.15vw}
 #idst-cnc-motion .idst-cnc-wordmark{bottom:9%;padding:0!important;opacity:clamp(0,calc((var(--cnc-progress) - .975)*16),.4)}
 #idst-cnc-motion .idst-cnc-stage:after{border-radius:26px 26px 0 0}
}

/* Compact portrait keeps the same reading order with less vertical room. */
@media(max-width:767px) and (max-height:740px){
 #idst-cnc-motion .is-part-1 .idst-cnc-photo{top:74.123%}
 #idst-cnc-motion .is-part-2 .idst-cnc-photo{top:47%}
 #idst-cnc-motion .is-part-3 .idst-cnc-caption{top:143%}
 #idst-cnc-motion .is-part-6 .idst-cnc-photo{top:187.84%}
}

/* No-motion and editor mode keep every native widget visible and editable. */
#idst-cnc-motion:not([data-motion="active"]){height:auto;min-height:0}
#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-stage{height:auto;min-height:0;padding:150px 6vw 70px;display:flex;flex-wrap:wrap;flex-direction:row;gap:50px 4%}
#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-title{position:relative;left:auto;top:auto;transform:none;opacity:1;width:100%}
#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-assembly{position:relative;inset:auto;width:48%;height:auto;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;transform:none;will-change:auto}
#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-photo{position:relative;left:auto;top:auto;width:100%;height:270px;transform:none}
#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-caption{position:relative;left:auto;top:auto;width:100%;max-width:310px;opacity:1}
#idst-cnc-motion:not([data-motion="active"]) :is(.idst-cnc-leader,.idst-cnc-wordmark){display:none}
@media(max-width:767px){#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-assembly{width:100%}#idst-cnc-motion:not([data-motion="active"]) .idst-cnc-photo{height:220px}}


/* CNC process section revision — 2026-10-11 */
/* ID SOLUTECH: CNC engineering drawing, contained within its native card. */
.idst-cnc-industry-wireframe {
  position: relative;
  width: 100%;
  height: 214px;
  min-width: 0;
  overflow: hidden;
  pointer-events: none;
  contain: layout paint;
  color: #f1f3f4;
}
.idst-cnc-industry-wireframe canvas {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  border: 0;
}
@media (max-width: 1024px) {
  .idst-cnc-industry-wireframe { height: 198px; }
}
@media (max-width: 767px) {
  .idst-cnc-industry-wireframe { height: 194px; }
}


/* CNC process carousel: match the panel and photograph, including their top/bottom edges. */
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--inner {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item-lef {
  width: 100%; max-width: none; min-width: 0;
  height: 550px; min-height: 550px; box-sizing: border-box;
  padding: 46px 34px 88px;
}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item-lef > i {font-size:50px;line-height:1;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .wrap-content {margin-top:22px;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--title {line-height:1.3;margin-bottom:24px;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--description {margin:0;word-break:keep-all;color:#c2c2c2;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--description span[lang="en"] {display:block;margin-top:16px;font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.65;color:#b9bcbb;word-break:normal;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--image {width:100%;max-width:none;height:550px;min-height:550px;margin:0;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--image img {display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-swiper-bottom {left:0;top:auto;bottom:32px;width:calc((100% - 28px) * .622642);height:24px;justify-content:center;}
body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-swiper-dots {margin:0;}
.page-id-23587 .elementor-element-3d239d2 > .elementor-element-77131bc {position:absolute;top:46px;right:42px;width:40px;z-index:2;}
.page-id-23587 .elementor-element-3d239d2 > .elementor-element-c0d3f11 {width:100%;flex:0 0 auto;}
@media (max-width:767px) {
  body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--inner {display:flex;flex-direction:column-reverse;gap:24px;}
  body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item-lef {height:auto;min-height:550px;padding:42px 28px 88px;}
  body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--image {height:360px;min-height:360px;}
  body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-swiper-bottom {width:100%;bottom:32px;}
  .page-id-23587 .elementor-element-3d239d2 > .elementor-element-77131bc {top:32px;right:24px;width:32px;}
}

body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .wrap-content, body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .content {width:100%;max-width:100%;min-width:0;}
@media (min-width:768px) and (max-width:1350px) { body.page-id-23587 .elementor-element-01631ae .pxl-image-carousel6 .pxl-item--description {font-size:14px;line-height:1.7;} }

.idst-cnc-machining {
  position: relative;
  width: 100%;
  min-width: 0;
  height: clamp(420px, 43vw, 650px);
  overflow: hidden;
  contain: layout paint;
  background: #fff;
  pointer-events: none;
}
.idst-cnc-machining canvas {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  outline: 0;
}
@media (max-width: 767px) {
  .idst-cnc-machining { height: clamp(380px, 110vw, 520px); }
}

/* CNC drill collaboration and manufacturing gallery — 2026-10-11. */
/* Keep document overflow on the theme's viewport; clipping html makes body a
   non-scrolling sticky ancestor. The wrapper and gallery clip their own overflow. */
/* Cancel the header's outer Bootstrap gutter and matching inner padding.
   Content keeps its position, without a 15px document-wide horizontal overflow. */
body.page-id-23587 .pxl-header-content>.row{margin-left:0;margin-right:0;}
body.page-id-23587 .pxl-header-content>.row>.col-12{padding-left:0;padding-right:0;}
body.page-id-23587 :is(.pxl-menu-wrap,.pxl-menu-popup-wrap,.pxl-background){max-width:100%;}
body.page-id-23587 .idst-cnc-collaboration,body.page-id-23587 .idst-cnc-gallery{width:calc(100% - 64px);max-width:1820px;margin:0 auto 100px;position:relative;display:flex;flex-direction:row;gap:0;background:#fff;color:#111;--widgets-spacing:0px 0px;}
.idst-cnc-collaboration *,.idst-cnc-gallery *{box-sizing:border-box;}
.idst-cnc-collaboration p,.idst-cnc-gallery p{margin:0 0 14px;word-break:keep-all;}
.idst-cnc-collaboration p[lang=en],.idst-cnc-gallery p[lang=en]{word-break:normal;}
body.page-id-23587 .idst-cnc-collaboration{border:1px solid #d9d9d9;align-items:stretch;overflow:visible;}
body.page-id-23587 .idst-cnc-collab-left,body.page-id-23587 .idst-cnc-collab-right{width:50%;min-width:0;gap:0;padding:76px clamp(48px,5.5vw,105px) 62px;}
body.page-id-23587 .idst-cnc-collab-right{border-left:1px solid #d9d9d9;padding-left:clamp(52px,5vw,96px);padding-right:clamp(36px,4vw,76px);}
.idst-cnc-eyebrow p{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:2.1px;font-weight:500;line-height:1.6;color:#555;margin-bottom:20px;}
.idst-cnc-collab-title .elementor-heading-title{font-size:clamp(31px,2.4vw,43px);font-weight:500;line-height:1.35;letter-spacing:-.8px;margin:0 0 26px;word-break:keep-all;}
.idst-cnc-collab-copy p{font-size:16px;line-height:1.85;color:#727272;}
.idst-cnc-collab-english p{font-size:14px;line-height:1.8;color:#888;}
body.page-id-23587 .idst-cnc-collab-checks{margin:24px 0 0;}
.idst-cnc-collab-checks .elementor-icon-list-text{font-size:15px;line-height:1.7;}
.idst-cnc-collab-checks span[lang=en]{font-size:13px;color:#737373;}
body.page-id-23587 .idst-cnc-collab-contact{margin-top:45px;gap:10px;}
.idst-cnc-contact-label p{font-size:16px;color:#111;font-weight:500;margin:0;}
.idst-cnc-contact-label span{font-size:13px;font-weight:400;}
.idst-cnc-contact-details p{font-size:14px;line-height:1.9;color:#777;margin:0;}
.idst-cnc-machining-title .elementor-heading-title{font-size:25px;line-height:1.4;letter-spacing:-.5px;margin:0 0 20px;word-break:keep-all;}
.idst-cnc-machining-copy p{font-size:15px;line-height:1.8;}
.idst-cnc-machining-en p{font-size:14px;line-height:1.8;color:#888;}
body.page-id-23587 .idst-cnc-machining-widget{margin-top:32px;width:100%;}
body.page-id-23587 .idst-cnc-machining{height:500px;min-height:0;max-height:none;}
body.page-id-23587 .idst-cnc-divider-drill{position:absolute!important;left:50%;top:50%;width:71px;max-width:71px;z-index:2;transform:translate(-50%,-50%) translateY(var(--drill-shift,0px));pointer-events:none;background:#fff;}
.idst-cnc-divider-drill img{width:71px;height:358px;max-width:none;display:block;}
body.page-id-23587 .idst-cnc-gallery{border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;align-items:stretch;overflow:hidden;}
body.page-id-23587 .idst-cnc-gallery-intro{width:40%;min-width:0;gap:0;padding:42px clamp(34px,3.8vw,72px) 56px;flex-shrink:0;}
.idst-cnc-gallery-sketch svg{display:block;width:100%;height:auto;max-height:230px;margin:0 auto 34px;}
.idst-cnc-gallery-title .elementor-heading-title{font-size:clamp(32px,2.5vw,46px);line-height:1.35;margin:0 0 28px;letter-spacing:-.8px;word-break:keep-all;}
.idst-cnc-gallery-copy p{font-size:16px;line-height:1.85;}
.idst-cnc-gallery-english p{font-size:14px;line-height:1.8;color:#888;}
.idst-cnc-gallery-navigation{display:flex;justify-content:flex-end;gap:38px;margin-top:32px;}
.idst-cnc-gallery-navigation button{width:42px;height:36px;background:none;border:0;border-radius:0;padding:6px 0;cursor:pointer;color:#111;box-shadow:none;}
.idst-cnc-gallery-navigation svg{width:36px;height:22px;stroke:currentColor;stroke-width:.9;fill:none;}
.idst-cnc-gallery-navigation button:disabled{opacity:.25;cursor:default;}
.idst-cnc-gallery-navigation button:focus-visible{outline:1px solid #555;outline-offset:6px;}
body.page-id-23587 .idst-cnc-gallery-window{width:60%;min-width:0;display:block;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;scroll-snap-type:none;scroll-behavior:auto!important;cursor:grab;padding:0;}
.idst-cnc-gallery-window::-webkit-scrollbar{display:none;}
body.page-id-23587 .idst-cnc-gallery-track{display:flex;flex-direction:row;flex-wrap:nowrap;gap:0;width:max-content;min-width:100%;align-items:stretch;padding:0;}
body.page-id-23587 .idst-cnc-gallery-card{width:430px;flex:0 0 430px;gap:0;display:flex;flex-direction:column;border-left:1px solid #d9d9d9;scroll-snap-align:start;padding:70px 38px 38px;min-width:0;}
.idst-cnc-gallery-card-label p{font-family:'DM Sans',sans-serif;text-transform:uppercase;font-size:11px;letter-spacing:1.4px;line-height:1.6;color:#666;margin-bottom:22px;}
.idst-cnc-gallery-card-title .elementor-heading-title{font-size:24px;line-height:1.45;letter-spacing:-.6px;word-break:keep-all;min-height:70px;margin:0 0 17px;}
.idst-cnc-gallery-card-copy p{font-size:15px;line-height:1.85;margin:0 0 16px;min-height:139px;}
.idst-cnc-gallery-card-english p{font-size:13px;line-height:1.8;color:#888;min-height:94px;margin:0 0 24px;}
.idst-cnc-gallery-more .elementor-button{background:transparent!important;border:0!important;padding:0!important;color:#111!important;border-radius:0;font-size:12px!important;letter-spacing:1px;line-height:24px;font-weight:600;box-shadow:none!important;}
.idst-cnc-gallery-more .elementor-button-content-wrapper{gap:18px;align-items:center;}
.idst-cnc-gallery-more .elementor-button-icon{font-size:20px;}
body.page-id-23587 .idst-cnc-gallery-photo{margin-top:36px;}
.idst-cnc-gallery-photo img{display:block;width:100%;height:auto;aspect-ratio:15/17;object-fit:cover;}
body.page-id-23587 .idst-cnc-gallery-window.is-gallery-moving,body.page-id-23587 .idst-cnc-gallery-window.is-dragging{scroll-snap-type:none;}
body.page-id-23587 .idst-cnc-gallery-window.is-pointer-pending,body.page-id-23587 .idst-cnc-gallery-window.is-pointer-pending *{user-select:none;-webkit-user-select:none;}
body.page-id-23587 .idst-cnc-gallery-window.is-dragging,body.page-id-23587 .idst-cnc-gallery-window.is-dragging *{cursor:grabbing!important;}
@media(hover:none),(pointer:coarse){body.page-id-23587 .idst-cnc-gallery-window{scroll-snap-type:x proximity;cursor:auto;}}
.idst-cnc-gallery-window img{-webkit-user-drag:none;}
@media(max-width:1350px){body.page-id-23587 .idst-cnc-collab-left{padding:58px 56px 50px;}body.page-id-23587 .idst-cnc-collab-right{padding:58px 36px 40px 50px;}body.page-id-23587 .idst-cnc-gallery-intro{width:38%;padding:38px 32px;}body.page-id-23587 .idst-cnc-gallery-window{width:62%;}body.page-id-23587 .idst-cnc-gallery-card{width:370px;flex-basis:370px;padding:60px 30px 30px;}.idst-cnc-gallery-card-title .elementor-heading-title{font-size:22px;}.idst-cnc-gallery-card-copy p{min-height:167px;}}
@media(max-width:1024px){body.page-id-23587 .idst-cnc-collaboration,body.page-id-23587 .idst-cnc-gallery{width:calc(100% - 40px);margin-bottom:64px;}body.page-id-23587 .idst-cnc-collaboration{flex-direction:column;}body.page-id-23587 .idst-cnc-collab-left,body.page-id-23587 .idst-cnc-collab-right{width:100%;padding:48px 50px;}body.page-id-23587 .idst-cnc-collab-right{border-left:0;border-top:1px solid #ddd;padding-right:90px;}body.page-id-23587 .idst-cnc-divider-drill{left:auto;right:24px;top:auto;bottom:150px;width:40px;max-width:40px;transform:translateY(var(--drill-shift,0px));}.idst-cnc-divider-drill img{width:40px;height:auto;}body.page-id-23587 .idst-cnc-machining{height:440px;}body.page-id-23587 .idst-cnc-gallery{flex-direction:column;}body.page-id-23587 .idst-cnc-gallery-intro{width:100%;padding:38px 34px 36px;}.idst-cnc-gallery-sketch svg{max-height:190px;}.idst-cnc-gallery-title .elementor-heading-title{font-size:34px;}.idst-cnc-gallery-navigation{margin-top:24px;}body.page-id-23587 .idst-cnc-gallery-window{width:100%;border-top:1px solid #ddd;}body.page-id-23587 .idst-cnc-gallery-card{width:390px;flex-basis:390px;padding:40px 32px 32px;}}
@media(max-width:600px){body.page-id-23587 .idst-cnc-collaboration,body.page-id-23587 .idst-cnc-gallery{width:calc(100% - 32px);margin-bottom:50px;}body.page-id-23587 .idst-cnc-collab-left,body.page-id-23587 .idst-cnc-collab-right{padding:34px 24px;}body.page-id-23587 .idst-cnc-collab-right{padding-right:44px;}.idst-cnc-eyebrow p{font-size:9px;letter-spacing:1.3px;}.idst-cnc-collab-title .elementor-heading-title{font-size:29px;}.idst-cnc-collab-copy p{font-size:15px;}.idst-cnc-collab-english p{font-size:13px;}.idst-cnc-collab-checks .elementor-icon-list-text{font-size:13px;}.idst-cnc-collab-checks span[lang=en]{font-size:11px;}.idst-cnc-contact-label span{display:block;}.idst-cnc-machining-title .elementor-heading-title{font-size:22px;}body.page-id-23587 .idst-cnc-machining{height:350px;}body.page-id-23587 .idst-cnc-divider-drill{width:24px;max-width:24px;right:10px;bottom:125px;}.idst-cnc-divider-drill img{width:24px;}body.page-id-23587 .idst-cnc-gallery-intro{padding:26px 24px 32px;}.idst-cnc-gallery-title .elementor-heading-title{font-size:29px;}.idst-cnc-gallery-copy p{font-size:15px;}.idst-cnc-gallery-english p{font-size:13px;}body.page-id-23587 .idst-cnc-gallery-card{width:calc(100vw - 58px);flex-basis:calc(100vw - 58px);padding:32px 24px;}.idst-cnc-gallery-card-title .elementor-heading-title{font-size:22px;}.idst-cnc-gallery-card-copy p{min-height:167px;}.idst-cnc-gallery-photo img{aspect-ratio:15/17;}.idst-cnc-gallery-sketch svg{margin-bottom:24px;}}
@media(prefers-reduced-motion:reduce){.idst-cnc-divider-drill{transform:translate(-50%,-50%)!important;}@media(max-width:1024px){.idst-cnc-divider-drill{transform:none!important;}}}
/* Native page gutters already provide 15px per side on narrow screens. */
@media(max-width:600px){body.page-id-23587 .idst-cnc-collaboration,body.page-id-23587 .idst-cnc-gallery{width:100%;}}

/* CNC FAQ — native Elementor content with a decorative engineering drawing. */
/* Preserve the original black section, centered introduction and two native columns. */
body.page-id-23587 #cnc-faq.idst-cnc-faq{
  position:relative;isolation:isolate;overflow:hidden;background:#111111;color:#fff;
}
#cnc-faq > .elementor-container{position:relative;z-index:1}
#cnc-faq .idst-cnc-faq-heading,#cnc-faq .idst-cnc-faq-intro,
#cnc-faq .idst-cnc-faq-accordion{position:relative;z-index:1}
#cnc-faq .idst-cnc-faq-heading :is(h2,h3,.pxl-item--title){color:#fff;word-break:keep-all}
#cnc-faq .idst-cnc-faq-intro{color:#c2c2c2}
#cnc-faq .idst-cnc-faq-intro p{word-break:keep-all}
#cnc-faq .idst-cnc-faq-intro p[lang="en"]{font-size:14px;line-height:1.8;color:#999;margin-top:9px}
#cnc-faq .pxl-accordion .pxl--item{background:transparent;border-color:#343434}
#cnc-faq .pxl-accordion--title{color:#fff;word-break:keep-all}
#cnc-faq .pxl-accordion--content{color:#c2c2c2;word-break:keep-all}
#cnc-faq .idst-cnc-faq-answer-ko{margin:0;font-size:15px;line-height:1.85}
#cnc-faq .idst-cnc-faq-answer-en{margin:15px 0 0;font-size:13px;line-height:1.8;color:#999;word-break:normal}
#cnc-faq .idst-cnc-faq-answer-subject{display:block;margin-bottom:5px;font-size:10px;line-height:1.5;letter-spacing:1.4px;text-transform:uppercase;color:#b4b4b4}
#cnc-faq .pxl-accordion--title:focus-visible{outline:1px solid #a1a1a1;outline-offset:4px}
#cnc-faq .idst-cnc-faq-background{
  position:absolute!important;z-index:0;left:min(-35px,calc(625px - 50vw));top:-210px;
  width:1080px!important;max-width:none!important;height:580px;
  margin:0!important;pointer-events:none;opacity:.32;
  -webkit-mask-image:linear-gradient(90deg,#000 25%,rgba(0,0,0,.7) 70%,transparent);
  mask-image:linear-gradient(90deg,#000 25%,rgba(0,0,0,.7) 70%,transparent);
}
#cnc-faq .idst-cnc-faq-background .elementor-widget-container{height:100%}
#cnc-faq .idst-cnc-faq-drawing{position:relative;width:100%;height:100%;overflow:hidden;pointer-events:none}
#cnc-faq .idst-cnc-faq-drawing > :is(canvas,svg){position:absolute;inset:0;display:block;width:100%;height:100%;background:transparent;pointer-events:none;filter:brightness(0) invert(1)}
#cnc-faq .idst-cnc-faq-drawing > svg[hidden]{display:none}
@media(max-width:1199px){
  #cnc-faq .idst-cnc-faq-background{left:-50px;top:-150px;width:800px!important;height:440px;opacity:.24}
  #cnc-faq .pxl-accordion--title{font-size:18px}
}
@media(max-width:767px){
  #cnc-faq .idst-cnc-faq-background{left:-55px;top:-155px;width:660px!important;height:400px;opacity:.2}
  #cnc-faq .idst-cnc-faq-intro p[lang="en"]{font-size:12px}
  #cnc-faq .pxl-accordion--title{font-size:17px;line-height:1.65}
  #cnc-faq .idst-cnc-faq-answer-ko{font-size:14px}
  #cnc-faq .idst-cnc-faq-answer-en{font-size:12px}
}

/* CNC product gallery: preserve the contacts gallery layout and interaction. */
body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout,
body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout > *,
body.page-id-23587 #cnc-product-gallery #cnc-product-details {
  min-width: 0;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport {
  --idst-gallery-height: clamp(570px, 37vw, 720px);
  --idst-gallery-gap: 12px;
  box-sizing: border-box;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: var(--idst-gallery-gap) !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: var(--idst-gallery-height) !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain;
  touch-action: pan-x pan-y pinch-zoom;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport::-webkit-scrollbar {
  display: none;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport:not(:has(> .idst-cnc-product-column)) {
  display: grid !important;
  grid-template-columns: none !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: column !important;
  grid-auto-columns: calc((100% - 18px) / 4) !important;
  gap: 6px !important;
  align-items: stretch !important;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport:not(:has(> .idst-cnc-product-column)) > .idst-cnc-product-photo {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: #fff !important;
  overflow: hidden;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport.is-dragging,
body.page-id-23587 #cnc-product-gallery #cnc-product-viewport.is-dragging * {
  cursor: grabbing !important;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column {
  --idst-column-ratio: 1.75;
  --idst-column-gap-count: 1;
  --idst-column-top: 0.10;
  --idst-column-bottom: 0.12;
  --idst-column-width: calc((var(--idst-gallery-height) * (1 - var(--idst-column-top) - var(--idst-column-bottom)) - var(--idst-column-gap-count) * var(--idst-gallery-gap)) / var(--idst-column-ratio));
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  flex: 0 0 var(--idst-column-width) !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: var(--idst-gallery-gap) !important;
  width: var(--idst-column-width) !important;
  max-width: 82% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: calc(var(--idst-gallery-height) * var(--idst-column-top)) 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(2) {
  --idst-column-ratio: 2.375;
  --idst-column-gap-count: 2;
  --idst-column-top: 0;
  --idst-column-bottom: 0.02;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(3) {
  --idst-column-ratio: 1.479166666667;
  --idst-column-top: 0.14;
  --idst-column-bottom: 0.16;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(4) {
  --idst-column-ratio: 1.563067608476;
  --idst-column-top: 0.08;
  --idst-column-bottom: 0;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(5) {
  --idst-column-ratio: 2.272;
  --idst-column-gap-count: 2;
  --idst-column-top: 0;
  --idst-column-bottom: 0.06;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(6) {
  --idst-column-ratio: 1.4795;
  --idst-column-top: 0.12;
  --idst-column-bottom: 0.12;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(7) {
  --idst-column-ratio: 2.625;
  --idst-column-gap-count: 2;
  --idst-column-top: 0.02;
  --idst-column-bottom: 0;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(8) {
  --idst-column-ratio: 1.528125;
  --idst-column-top: 0.10;
  --idst-column-bottom: 0.04;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(9) {
  --idst-column-ratio: 1.442347238543;
  --idst-column-top: 0.04;
  --idst-column-bottom: 0.16;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(10) {
  --idst-column-ratio: 2.119166666667;
  --idst-column-gap-count: 2;
  --idst-column-top: 0;
  --idst-column-bottom: 0.02;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport > .idst-cnc-product-column:nth-child(11) {
  --idst-column-ratio: 1.667;
  --idst-column-top: 0.12;
  --idst-column-bottom: 0.04;
}

body.page-id-23587 #cnc-product-gallery .idst-cnc-product-column > .idst-cnc-product-photo {
  box-sizing: border-box;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden;
  cursor: inherit;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}

body.page-id-23587 #cnc-product-gallery .idst-cnc-product-photo > .elementor-widget-image,
body.page-id-23587 #cnc-product-gallery .idst-cnc-product-photo .elementor-widget-container {
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.page-id-23587 #cnc-product-gallery .idst-cnc-product-photo img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}

body.page-id-23587 #cnc-product-gallery .idst-cnc-product-photo:focus-visible {
  outline: 1px solid #777;
  outline-offset: -1px;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-viewport:not(:has(> .idst-cnc-product-column)) > .idst-cnc-product-photo .elementor-widget-image,
body.page-id-23587 #cnc-product-gallery #cnc-product-viewport:not(:has(> .idst-cnc-product-column)) > .idst-cnc-product-photo .elementor-widget-container,
body.page-id-23587 #cnc-product-gallery #cnc-product-viewport:not(:has(> .idst-cnc-product-column)) > .idst-cnc-product-photo img {
  height: 100% !important;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-details {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto !important;
  align-items: start !important;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-details .idst-cnc-product-panel {
  display: flex !important;
  grid-area: 1 / 1 !important;
  align-self: start !important;
  min-width: 0;
  visibility: hidden;
  pointer-events: none;
}

body.page-id-23587 #cnc-product-gallery #cnc-product-details .idst-cnc-product-panel.is-active {
  visibility: visible;
  pointer-events: auto;
}

body.page-id-23587.elementor-editor-active #cnc-product-gallery #cnc-product-details,
body.page-id-23587 #cnc-product-gallery.is-editor-mode #cnc-product-details {
  display: flex !important;
  flex-direction: column !important;
}

body.page-id-23587.elementor-editor-active #cnc-product-gallery #cnc-product-details .idst-cnc-product-panel,
body.page-id-23587 #cnc-product-gallery.is-editor-mode #cnc-product-details .idst-cnc-product-panel {
  display: flex !important;
  visibility: visible;
  pointer-events: auto;
}

@media (max-width: 1024px) {
  body.page-id-23587 #cnc-product-gallery #cnc-product-viewport {
    --idst-gallery-height: 570px;
  }
}

@media (max-width: 767px) {
  body.page-id-23587 #cnc-product-gallery #cnc-product-viewport {
    --idst-gallery-height: 456px;
    --idst-gallery-gap: 8px;
  }

  body.page-id-23587 #cnc-product-gallery #cnc-product-viewport:not(:has(> .idst-cnc-product-column)) {
    grid-auto-columns: calc((100% - 8px) / 2.2) !important;
  }
}


/* CNC gallery: complete line geometry and bottom specification action. */
body.page-id-23587 #cnc-product-gallery .idst-cnc-details-wrap { position:relative; min-width:0; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications {
  position:relative; inset:auto; flex:none; width:244px; margin:12px 0 0 7px !important; z-index:2;
}
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications a {
  box-sizing:border-box; display:flex; align-items:center; justify-content:center;
  width:244px; min-height:54px; height:54px; padding:0 30px; line-height:54px;
  font-size:13px; letter-spacing:0; white-space:nowrap;
}
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications .btn-icon-right { margin-left:18px; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications .btn-icon-left { display:none !important; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications .pxl--btn-text { line-height:inherit; transform:none; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications .btn-icon-right { flex:0 0 30px; width:30px; transform:none; opacity:1; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications .btn-icon-right svg { width:30px; height:12px; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications a:focus-visible { outline:2px solid #596d79; outline-offset:7px; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {
  position:relative; width:100%; height:240px; margin:0; background:#fff; overflow:hidden;
  contain:layout paint; cursor:grab; touch-action:pan-y; user-select:none;
}
body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing.is-rotating { cursor:grabbing; }
body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing > canvas,
body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing > svg { display:block; width:100%; height:100%; background:#fff; }
@media(min-width:1025px) {
  body.page-id-23587 #cnc-product-gallery {
    --gallery-room:calc(100svh - 154px); padding-top:28px; padding-bottom:28px;
  }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout { height:var(--gallery-room); min-height:510px; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-summary { height:100%; min-height:0; }
  body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev { flex:1; min-height:140px; width:100%; }
  body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev > .elementor-widget-container { height:100%; }
  body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing { height:100%; min-height:140px; }
  body.page-id-23587 #cnc-product-gallery #cnc-product-viewport { --idst-gallery-height:var(--gallery-room); }
}
@media(min-width:1025px) and (max-height:850px) {
  body.page-id-23587 #cnc-product-gallery { padding-top:20px; padding-bottom:20px; --gallery-room:calc(100svh - 138px); }
  body.page-id-23587 #cnc-product-gallery .elementor-element-b63156c { margin-bottom:10px; }
  body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b .pxl-item--title { font-size:32px; }
  body.page-id-23587 #cnc-product-gallery .elementor-element-284001d { margin-bottom:16px; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) { margin-bottom:10px; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3) .pxl-text-editor { font-size:14px; line-height:1.7; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) { margin-bottom:10px; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) .pxl-text-editor { font-size:12px; line-height:1.65; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con { padding-top:7px; padding-bottom:7px; }
}
@media(max-width:767px) {
  body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications { width:244px; }
  body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications a { width:244px; padding:0 30px; font-size:13px; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-selected-title { padding-right:0; }
  body.page-id-23587 #cnc-product-gallery .idst-cnc-selected-title h3 { font-size:20px; }
  body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing { height:210px; }
}

/* Keep the gallery clear of the existing sticky header; compact short PC screens. */
body.page-id-23587 #cnc-product-gallery { scroll-margin-top:98px; }
@media(min-width:1025px) and (max-height:850px) {
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d p,
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) p { margin-bottom:0; }
}
@media(max-width:1024px) { body.page-id-23587 #cnc-product-gallery { scroll-margin-top:80px; } }

/* Elementor stores native widget margins on inner containers. */
@media(min-width:1025px) and (max-height:850px) {
 body.page-id-23587 #cnc-product-gallery .elementor-element-b63156c > .elementor-widget-container,
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d > .elementor-widget-container,
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) > .elementor-widget-container,
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) > .elementor-widget-container { margin-bottom:0; }
}
@media(min-width:1025px) {
 body.page-id-23587.admin-bar #cnc-product-gallery { --gallery-room:calc(100svh - 186px); }
}
@media(min-width:1025px) and (max-height:850px) {
 body.page-id-23587.admin-bar #cnc-product-gallery { --gallery-room:calc(100svh - 170px); }
}

/* Match dark dimension text with the white drafting surface. */
body.page-id-23587 #cnc-product-gallery .idst-cnc-dimension-labels { position:absolute; inset:0; pointer-events:none; background:transparent; }
body.page-id-23587 #cnc-product-gallery .idst-cnc-dimension-label { position:absolute; color:#435967; font:600 12px/1.1 Arial,sans-serif; white-space:nowrap; transform:translate(-50%,-50%); background:rgba(255,255,255,.94); padding:2px 3px; border-radius:2px; }
body.page-id-23587 #cnc-product-gallery .idst-cnc-selected-title h3 { word-break:keep-all; }
@media(min-width:1025px) and (max-height:850px) {
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b .pxl-item--title {font-size:30px;line-height:1.2;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d {margin-bottom:8px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) {margin-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3) p {font-size:14px;line-height:1.7;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) p {font-size:12px;line-height:1.65;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con {padding-top:4px;padding-bottom:4px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev,
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {min-height:120px;}
}

/* One-screen gallery with a larger, separated drafting area. */
@media(min-width:1025px) {
 body.page-id-23587 #cnc-product-gallery {--gallery-admin:0px;--gallery-room:calc(100svh - 142px - var(--gallery-admin));padding-top:22px;padding-bottom:22px;}
 body.page-id-23587.admin-bar #cnc-product-gallery {--gallery-admin:32px;--gallery-room:calc(100svh - 142px - var(--gallery-admin));}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout {min-height:0;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-summary > .elementor-widget > .elementor-widget-container,
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget > .elementor-widget-container {margin:0;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-summary p {margin:0;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-b63156c {margin-bottom:8px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b {margin-bottom:4px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b .pxl-item--title {line-height:1.2;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d {margin-bottom:12px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d p {font-size:17px;line-height:26px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) {margin-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) p {font-size:13px;line-height:1.6;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3),
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) {margin-bottom:8px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3) p {font-size:15.5px;line-height:1.7;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) p {font-size:13px;line-height:1.65;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con {padding-top:4px;padding-bottom:4px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev {flex:1 1 0;min-height:240px;margin-top:14px;margin-bottom:14px;}
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {min-height:240px;}
}
@media(min-width:1025px) and (max-height:850px), (min-width:1025px) and (max-width:1399px) and (max-height:950px) {
 body.page-id-23587 #cnc-product-gallery,
 body.page-id-23587.admin-bar #cnc-product-gallery {--gallery-room:calc(100svh - 122px - var(--gallery-admin));padding-top:12px;padding-bottom:12px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout {grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);}
 body.page-id-23587 #cnc-product-gallery .elementor-element-b63156c {margin-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b {margin-bottom:3px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b .pxl-item--title {font-size:30px;line-height:36px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d {margin-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d p {font-size:16px;line-height:22.4px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-selected-title h3 {font-size:22px;line-height:1.3;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) {margin-bottom:4px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) p {font-size:12.5px;line-height:18px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3),
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) {margin-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3) p {font-size:14px;line-height:1.6;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) p {font-size:12px;line-height:1.55;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con {grid-template-columns:86px minmax(0,1fr);padding-top:1px;padding-bottom:1px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con p {font-size:13px;line-height:19.5px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev {min-height:180px;margin-top:10px;margin-bottom:10px;}
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {min-height:180px;}
}
@media(max-width:1024px) {
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev {margin-top:16px;margin-bottom:16px;}
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {height:260px;}
}

/* Remove theme inline-baseline space without reducing the drawing surface. */
@media(min-width:1025px) {
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-summary .pxl-text-editor > .pxl-item--inner {display:block;}
}
@media(min-width:1025px) and (max-height:850px), (min-width:1025px) and (max-width:1399px) and (max-height:950px) {
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel h3 {font-size:22px;line-height:1.3;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con > .elementor-widget:first-child p {font-size:11px;white-space:nowrap;}
}

@media(min-width:1025px) and (max-width:1150px) and (max-height:760px) {
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev,
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {min-height:160px;}
}

/* Give the section boundary and each text group its own breathing room. */
@media(min-width:1025px) {
 body.page-id-23587 #cnc-product-gallery,
 body.page-id-23587.admin-bar #cnc-product-gallery {--gallery-top:72px;--gallery-bottom:40px;--gallery-room:calc(100svh - 98px - var(--gallery-admin) - var(--gallery-top) - var(--gallery-bottom));padding-top:var(--gallery-top);padding-bottom:var(--gallery-bottom);}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout {grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);}
 body.page-id-23587 #cnc-product-gallery .elementor-element-b63156c {margin-bottom:14px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b {margin-bottom:10px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d {margin-bottom:26px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:first-child {margin-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2) {margin-bottom:14px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3) {margin-bottom:14px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) {margin-bottom:20px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con {padding-top:8px;padding-bottom:8px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev {min-height:0;margin-top:18px;margin-bottom:18px;}
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-drawing {min-height:0;}
}
@media(min-width:1025px) and (max-height:999px) {
 body.page-id-23587 #cnc-product-gallery,
 body.page-id-23587.admin-bar #cnc-product-gallery {--gallery-top:48px;--gallery-bottom:28px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-b63156c {margin-bottom:10px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b {margin-bottom:8px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d {margin-bottom:20px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:first-child {margin-bottom:4px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2),
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3) {margin-bottom:12px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) {margin-bottom:16px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con {padding-top:6px;padding-bottom:6px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev {margin-top:14px;margin-bottom:14px;}
}
@media(min-width:1025px) and (max-height:850px) {
 body.page-id-23587 #cnc-product-gallery,
 body.page-id-23587.admin-bar #cnc-product-gallery {--gallery-top:40px;--gallery-bottom:20px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-284001d {margin-bottom:14px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(2),
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(3),
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .elementor-widget:nth-child(4) {margin-bottom:10px;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-panel > .e-con {padding-top:3px;padding-bottom:3px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncprev {margin-top:12px;margin-bottom:12px;}
 body.page-id-23587 #cnc-product-gallery .elementor-element-cncspec {margin-top:0;}
}

/* Requested PC split: three eighths text, five eighths product photographs. */
@media(min-width:1025px) {
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout {grid-template-columns:minmax(0,3fr) minmax(0,5fr);}
}

/* Full PC viewport: the scrolling header is not part of this section's height. */
@media(min-width:1025px) {
 body.page-id-23587 #cnc-product-gallery,
 body.page-id-23587.admin-bar #cnc-product-gallery {--gallery-room:calc(100svh - var(--gallery-admin) - var(--gallery-top) - var(--gallery-bottom));box-sizing:border-box;height:calc(100svh - var(--gallery-admin));min-height:0;scroll-margin-top:0;}
 body.page-id-23587 #cnc-product-gallery .idst-cnc-product-layout {grid-template-columns:minmax(0,1fr) minmax(0,3fr);}
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications {max-width:calc(100% - 14px);}
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications a {max-width:100%;}
}
@media(min-width:1025px) and (max-width:1399px) {
 body.page-id-23587 #cnc-product-gallery .elementor-element-aaf650b .pxl-item--title {font-size:clamp(22px,2.1vw,28px);line-height:1.25;}
}
@media(min-width:1025px) and (max-width:1199px) {
 body.page-id-23587 #cnc-product-gallery #cnc-gallery-specifications a {padding-right:18px;padding-left:18px;}
}
