/*cnc2 base start*/
:root{
  --c-bg:#FAF9F7;
  --c-card:#FFFFFF;
  --c-iron:#22262B;
  --c-iron-2:#1B1E23;
  --c-copper:#B45309;
  --c-copper-2:#93430A;
  --c-ink:#23262B;
  --c-mut:#5D5A53;
  --c-line:#E5E1D8;
  --c-line-dark:rgba(255,255,255,.14);
  --r:0.4rem;
  --shell:min(144rem,calc(100% - 8rem));
  --tr:.45s cubic-bezier(.22,.61,.36,1);
}
html{font-size:clamp(9px,0.6945vw,11px);scroll-behavior:smooth;scroll-padding-top:9rem;}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'HarmonyOS Sans',-apple-system,'Segoe UI',Arial,sans-serif;background:var(--c-bg);color:var(--c-ink);font-size:1.6rem;line-height:1.7;-webkit-font-smoothing:antialiased;}
body.is-locked{overflow:hidden;}
img{display:block;width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
button,input,textarea{font:inherit;color:inherit;}
.index_shell{width:var(--shell);margin:0 auto;}
h1,h2,h3,h4{font-weight:700;line-height:1.16;letter-spacing:-0.014em;}
.index_head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2rem 8rem;align-items:end;padding-bottom:2.8rem;border-bottom:1px solid var(--c-line);margin-bottom:5rem;}
.index_head h2{font-size:3.6rem;}
.index_head p{color:var(--c-mut);font-size:1.55rem;}
.index_btn{display:inline-flex;align-items:center;justify-content:center;min-height:4.8rem;padding:0 3rem;border-radius:var(--r);font-size:1.5rem;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:background var(--tr),color var(--tr),border-color var(--tr);}
.index_btn--solid{background:var(--c-copper);color:#fff;border:1px solid var(--c-copper);}
.index_btn--solid:hover{background:var(--c-copper-2);border-color:var(--c-copper-2);}
.index_btn--line{border:1px solid var(--c-ink);color:var(--c-ink);background:transparent;}
.index_btn--line:hover{border-color:var(--c-copper);color:var(--c-copper);}
.index_corners{position:relative;padding:1.2rem;background:
  linear-gradient(var(--c-copper),var(--c-copper)) left top/2.6rem 2px no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) left top/2px 2.6rem no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) right top/2.6rem 2px no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) right top/2px 2.6rem no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) left bottom/2.6rem 2px no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) left bottom/2px 2.6rem no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) right bottom/2.6rem 2px no-repeat,
  linear-gradient(var(--c-copper),var(--c-copper)) right bottom/2px 2.6rem no-repeat;}
.index_reveal{opacity:0;transform:scale(.97);transition:opacity .7s ease,transform .7s ease;}
.index_reveal.is-on{opacity:1;transform:scale(1);}
/*cnc2 base end*/

/*cnc2 header start*/
.index_header{position:sticky;top:0;z-index:60;background:rgba(250,249,247,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--c-line);}
.index_header-in{width:var(--shell);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:4rem;height:8rem;}
.index_brand{display:inline-flex;align-items:center;gap:1.2rem;}
.index_brand-mark{display:inline-flex;align-items:center;justify-content:center;width:3.8rem;height:3.8rem;border-radius:var(--r);background:var(--c-copper);color:#fff;font-weight:900;font-size:1.6rem;letter-spacing:.02em;}
.index_brand-name{font-weight:900;font-size:2rem;letter-spacing:.08em;}
.index_nav{display:flex;gap:3.6rem;}
.index_nav a{font-size:1.5rem;font-weight:500;color:var(--c-mut);transition:color var(--tr);}
.index_nav a:hover{color:var(--c-copper);}
.index_header-cta{display:flex;align-items:center;gap:1.6rem;}
.index_burger{display:none;flex-direction:column;gap:.5rem;background:none;border:0;padding:.6rem;cursor:pointer;}
.index_burger span{width:2.4rem;height:2px;background:var(--c-ink);transition:transform var(--tr),opacity var(--tr);}
.index_burger.is-open span:nth-child(1){transform:translateY(.7rem) rotate(45deg);}
.index_burger.is-open span:nth-child(2){opacity:0;}
.index_burger.is-open span:nth-child(3){transform:translateY(-.7rem) rotate(-45deg);}
/*cnc2 header end*/

/*cnc2 hero start*/
.index_hero{padding:9rem 0 0;}
.index_hero-head{max-width:88rem;margin:0 auto;text-align:center;}
.index_hero-head h1{font-size:5.8rem;letter-spacing:-0.02em;}
.index_hero-head p{margin-top:2.4rem;font-size:1.7rem;color:var(--c-mut);}
.index_hero-actions{margin-top:3.6rem;display:flex;justify-content:center;gap:1.6rem;flex-wrap:wrap;}
.index_hero-media{margin-top:6rem;}
.index_hero-media img{border-radius:var(--r);}
.index_hero-data{display:grid;grid-template-columns:repeat(4,1fr);gap:4rem;padding:3.4rem 0 4rem;margin-top:1.2rem;border-top:1px solid var(--c-line);}
.index_hero-data li strong{display:block;font-size:3rem;font-weight:900;letter-spacing:-0.01em;font-variant-numeric:tabular-nums;}
.index_hero-data li span{display:block;margin-top:.6rem;font-size:1.4rem;color:var(--c-mut);}
/*cnc2 hero end*/

/*cnc2 machines start*/
.index_machines{padding:10rem 0;}
.index_machine-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3.2rem;}
.index_machine{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color var(--tr),box-shadow var(--tr);}
.index_machine:hover{border-color:var(--c-copper);box-shadow:0 1.6rem 4rem rgba(34,38,43,.08);}
.index_machine figure{overflow:hidden;}
.index_machine figure img{transition:transform .6s ease;}
.index_machine:hover figure img{transform:scale(1.03);}
.index_machine-body{padding:2.8rem 3.2rem 2.4rem;flex:1;}
.index_machine-model{font-size:1.35rem;font-weight:700;color:var(--c-copper);letter-spacing:.08em;font-variant-numeric:tabular-nums;}
.index_machine-body h3{font-size:2.3rem;margin-top:.8rem;}
.index_machine-body p:last-child{margin-top:1.2rem;color:var(--c-mut);font-size:1.5rem;}
.index_machine-spec{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--c-line);}
.index_machine-spec>div{padding:1.8rem 3.2rem;}
.index_machine-spec>div+div{border-left:1px solid var(--c-line);}
.index_machine-spec dt{font-size:1.2rem;color:var(--c-mut);letter-spacing:.04em;}
.index_machine-spec dd{margin-top:.4rem;font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;}
/*cnc2 machines end*/

/*cnc2 build start*/
.index_build{padding:10rem 0;background:var(--c-card);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);}
.index_build-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7rem;align-items:start;}
.index_build-copy h2{font-size:3.6rem;}
.index_build-copy>p{margin-top:1.8rem;color:var(--c-mut);font-size:1.55rem;}
.index_build-list{margin-top:4rem;display:grid;gap:0;}
.index_build-list li{padding:2.4rem 0;border-top:1px solid var(--c-line);}
.index_build-list li:last-child{border-bottom:1px solid var(--c-line);}
.index_build-list h3{font-size:1.8rem;}
.index_build-list p{margin-top:.8rem;color:var(--c-mut);font-size:1.5rem;}
.index_build-media{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;position:sticky;top:11rem;}
.index_build-media-main{grid-column:1/-1;}
.index_build-media img{border-radius:var(--r);}
/*cnc2 build end*/

/*cnc2 tolerance start*/
.index_tol{background:var(--c-iron);color:#fff;padding:8.5rem 0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:4.8rem 4.8rem;}
.index_tol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4rem;}
.index_tol-item{border-left:2px solid var(--c-copper);padding-left:3rem;}
.index_tol-item strong{display:block;font-size:5.2rem;font-weight:900;letter-spacing:-0.02em;font-variant-numeric:tabular-nums;line-height:1.05;}
.index_tol-item span{display:block;margin-top:1.4rem;font-size:1.5rem;color:rgba(255,255,255,.62);}
.index_tol-note{margin-top:5.5rem;padding-top:2.8rem;border-top:1px solid var(--c-line-dark);color:rgba(255,255,255,.62);font-size:1.5rem;max-width:96rem;}
/*cnc2 tolerance end*/

/*cnc2 parts start*/
.index_parts{padding:10rem 0;}
.index_part-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.2rem;}
.index_part{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r);overflow:hidden;transition:border-color var(--tr),box-shadow var(--tr);}
.index_part:hover{border-color:var(--c-copper);box-shadow:0 1.6rem 4rem rgba(34,38,43,.08);}
.index_part figure{overflow:hidden;}
.index_part figure img{aspect-ratio:1/1;object-fit:cover;transition:transform .6s ease;}
.index_part:hover figure img{transform:scale(1.04);}
.index_part h3{font-size:1.9rem;padding:2.2rem 2.6rem 0;}
.index_part p{padding:0 2.6rem 2.4rem;margin-top:.7rem;color:var(--c-mut);font-size:1.45rem;}
/*cnc2 parts end*/

/*cnc2 factory start*/
.index_factory{padding:10rem 0;background:var(--c-card);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);}
.index_factory-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:7rem;align-items:center;}
.index_factory-media img{border-radius:var(--r);}
.index_factory-copy h2{font-size:3.6rem;}
.index_factory-copy>p{margin-top:1.8rem;color:var(--c-mut);font-size:1.55rem;}
.index_factory-list{margin:3.2rem 0 4rem;display:grid;gap:1.6rem;}
.index_factory-list li{padding-left:2.4rem;position:relative;font-size:1.5rem;color:var(--c-mut);}
.index_factory-list li::before{content:'';position:absolute;left:0;top:1rem;width:1rem;height:2px;background:var(--c-copper);}
.index_factory-list strong{color:var(--c-ink);}
/*cnc2 factory end*/

/*cnc2 process start*/
.index_process{padding:10rem 0;}
.index_steps{display:grid;grid-template-columns:repeat(5,1fr);gap:3.2rem;}
.index_steps li{border-top:2px solid var(--c-iron);padding-top:2.2rem;position:relative;}
.index_steps li::before{content:'';position:absolute;top:-2px;left:0;width:4.8rem;height:2px;background:var(--c-copper);}
.index_step-no{font-size:1.3rem;font-weight:900;color:var(--c-copper);letter-spacing:.1em;font-variant-numeric:tabular-nums;}
.index_steps h3{font-size:1.8rem;margin-top:1rem;}
.index_steps p{margin-top:1rem;font-size:1.4rem;color:var(--c-mut);}
/*cnc2 process end-*/

/*cnc2 cases start*/
.index_cases{padding:0 0 10rem;}
.index_case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.2rem;}
.index_case{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color var(--tr),box-shadow var(--tr);}
.index_case:hover{border-color:var(--c-copper);box-shadow:0 1.6rem 4rem rgba(34,38,43,.08);}
.index_case figure{overflow:hidden;}
.index_case figure img{transition:transform .6s ease;}
.index_case:hover figure img{transform:scale(1.04);}
.index_case-body{padding:2.6rem 3rem 3rem;}
.index_case-meta{font-size:1.3rem;font-weight:700;color:var(--c-copper);letter-spacing:.05em;}
.index_case-body h3{font-size:2rem;margin-top:1rem;}
.index_case-body p:last-child{margin-top:1.2rem;color:var(--c-mut);font-size:1.45rem;}
/*cnc2 cases end*/

/*cnc2 faq start*/
.index_faq{padding:10rem 0;background:var(--c-card);border-top:1px solid var(--c-line);}
.index_faq-list{border-top:1px solid var(--c-line);}
.index_faq-item{border-bottom:1px solid var(--c-line);}
.index_faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:3rem;padding:2.6rem 0;font-size:1.8rem;font-weight:700;cursor:pointer;list-style:none;transition:color var(--tr);}
.index_faq-item summary::-webkit-details-marker{display:none;}
.index_faq-item summary::after{content:'+';flex:0 0 auto;width:3.6rem;height:3.6rem;border:1px solid var(--c-line);border-radius:var(--r);display:inline-flex;align-items:center;justify-content:center;font-size:2rem;font-weight:400;color:var(--c-mut);transition:transform var(--tr),color var(--tr),border-color var(--tr);}
.index_faq-item[open] summary{color:var(--c-copper);}
.index_faq-item[open] summary::after{transform:rotate(45deg);color:var(--c-copper);border-color:var(--c-copper);}
.index_faq-item p{padding:0 12rem 2.8rem 0;color:var(--c-mut);font-size:1.5rem;max-width:104rem;}
/*cnc2 faq end*/

/*cnc2 contact start*/
.index_contact{position:relative;padding:10rem 0;background:var(--c-iron-2);color:#fff;overflow:hidden;}
.index_contact-bg{position:absolute;inset:0;}
.index_contact-bg img{width:100%;height:100%;object-fit:cover;opacity:.4;}
.index_contact-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,rgba(27,30,35,.94) 30%,rgba(27,30,35,.72));}
.index_contact .index_shell{position:relative;z-index:1;}
.index_contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:7rem;align-items:start;}
.index_contact-copy h2{font-size:3.8rem;}
.index_contact-copy>p{margin-top:1.8rem;color:rgba(255,255,255,.72);font-size:1.55rem;}
.index_contact-info{margin-top:4rem;display:grid;gap:2rem;}
.index_contact-info li{border-top:1px solid var(--c-line-dark);padding-top:2rem;font-size:1.6rem;}
.index_contact-info li span{display:block;font-size:1.3rem;color:rgba(255,255,255,.55);letter-spacing:.05em;margin-bottom:.5rem;}
.index_contact-info a:hover{color:var(--c-copper);}
.index_form{background:var(--c-card);color:var(--c-ink);border-radius:var(--r);padding:4rem;display:grid;gap:2.2rem;}
.index_form-row{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem;}
.index_field label{display:block;font-size:1.35rem;font-weight:700;margin-bottom:.7rem;}
.index_field input,.index_field textarea{width:100%;border:1px solid var(--c-line);border-radius:var(--r);background:var(--c-bg);padding:1.3rem 1.5rem;font-size:1.5rem;transition:border-color var(--tr);}
.index_field input:focus,.index_field textarea:focus{outline:none;border-color:var(--c-copper);}
.index_field textarea{resize:vertical;min-height:11rem;}
.index_field ::placeholder{color:#A5A199;}
.index_form-submit{width:100%;}
.index_form-note{font-size:1.4rem;color:var(--c-copper-2);min-height:1.4em;margin-top:-.6rem;}
/*cnc2 contact end*/

/*cnc2 footer start*/
.index_footer{background:var(--c-iron-2);color:rgba(255,255,255,.72);border-top:1px solid var(--c-line-dark);}
.index_footer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:5rem;padding:7rem 0 5rem;}
.index_footer .index_brand-name{color:#fff;}
.index_footer-brand>p{margin-top:2rem;font-size:1.45rem;max-width:34rem;}
.index_footer-col h4{color:#fff;font-size:1.5rem;margin-bottom:1.8rem;}
.index_footer-col a{display:block;font-size:1.45rem;padding:.5rem 0;transition:color var(--tr);}
.index_footer-col a:hover{color:var(--c-copper);}
.index_footer-col p{font-size:1.45rem;padding:.5rem 0;}
.index_footer-base{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;border-top:1px solid var(--c-line-dark);padding:2.6rem 0;font-size:1.35rem;color:rgba(255,255,255,.5);}
/*cnc2 footer end*/

/*cnc2 responsive start*/
@media (max-width:1024px){
  :root{--shell:min(120rem,calc(100% - 6rem));}
  .index_nav{display:none;position:fixed;top:8rem;left:0;right:0;bottom:0;background:var(--c-bg);flex-direction:column;gap:0;padding:2rem 3rem;z-index:55;}
  .index_nav.is-open{display:flex;}
  .index_nav a{padding:1.8rem 0;border-bottom:1px solid var(--c-line);font-size:1.8rem;color:var(--c-ink);}
  .index_burger{display:flex;}
  .index_hero-head h1{font-size:4.6rem;}
  .index_hero-data{grid-template-columns:repeat(2,1fr);gap:2.8rem;}
  .index_head{grid-template-columns:1fr;align-items:start;}
  .index_machine-grid{grid-template-columns:1fr;}
  .index_build-grid{grid-template-columns:1fr;gap:5rem;}
  .index_build-media{position:static;}
  .index_tol-grid{grid-template-columns:1fr;gap:3.2rem;}
  .index_part-grid{grid-template-columns:repeat(2,1fr);}
  .index_factory-grid{grid-template-columns:1fr;gap:5rem;}
  .index_steps{grid-template-columns:repeat(2,1fr);gap:4rem 3.2rem;}
  .index_case-grid{grid-template-columns:1fr;}
  .index_contact-grid{grid-template-columns:1fr;gap:5rem;}
  .index_faq-item p{padding-right:6rem;}
  .index_footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:640px){
  :root{--shell:min(120rem,calc(100% - 4rem));}
  html{font-size:10px;}
  .index_hero{padding-top:6rem;}
  .index_hero-head h1{font-size:3.6rem;}
  .index_hero-media{margin-top:4rem;}
  .index_hero-data{grid-template-columns:1fr;gap:2.4rem;}
  .index_head h2,.index_build-copy h2,.index_factory-copy h2,.index_contact-copy h2{font-size:2.9rem;}
  .index_machines,.index_build,.index_parts,.index_factory,.index_process,.index_faq,.index_contact{padding:7rem 0;}
  .index_cases{padding-bottom:7rem;}
  .index_machine-spec{grid-template-columns:1fr;}
  .index_machine-spec>div+div{border-left:0;border-top:1px solid var(--c-line);}
  .index_machine-spec dd{white-space:normal;}
  .index_build-media{grid-template-columns:1fr;}
  .index_part-grid{grid-template-columns:1fr;}
  .index_steps{grid-template-columns:1fr;}
  .index_form{padding:3rem 2.4rem;}
  .index_form-row{grid-template-columns:1fr;}
  .index_faq-item p{padding-right:0;}
  .index_footer-grid{grid-template-columns:1fr;gap:3.6rem;}
  .index_corners{padding:1rem;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .index_reveal{opacity:1;transform:none;transition:none;}
  .index_machine figure img,.index_part figure img,.index_case figure img{transition:none;}
}
/*cnc2 responsive end*/
