.elementor-4308 .elementor-element.elementor-element-4f43855{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4308 .elementor-element.elementor-element-cc5d1d4 > .elementor-container{max-width:1400px;}.elementor-4308 .elementor-element.elementor-element-cc5d1d4{padding:31px 0px 87px 0px;overflow:visible;}.elementor-bc-flex-widget .elementor-4308 .elementor-element.elementor-element-6b30906.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-4308 .elementor-element.elementor-element-6b30906.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-4308 .elementor-element.elementor-element-6b30906 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:0px;}.elementor-4308 .elementor-element.elementor-element-6b30906 > .elementor-element-populated{padding:0px 15px 0px 15px;}.elementor-4308 .elementor-element.elementor-element-fc8b089{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;padding:0px 0px 0px 0px;}.elementor-4308 .elementor-element.elementor-element-fc8b089 .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:40px;font-weight:700;line-height:50px;color:var( --e-global-color-secondary );}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-labels-inline .elementor-field-group > label{padding-left:14px;}body:not(.rtl) .elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-labels-inline .elementor-field-group > label{padding-right:14px;}body .elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-labels-above .elementor-field-group > label{padding-bottom:14px;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-field-type-html{padding-bottom:0px;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-button[type="submit"]{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-4308 .elementor-element.elementor-element-642aed8{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-4308 .elementor-element.elementor-element-8cfbb4a > .elementor-element-populated{padding:0px 15px 0px 115px;}.elementor-4308 .elementor-element.elementor-element-7958b49:not(.elementor-motion-effects-element-type-background), .elementor-4308 .elementor-element.elementor-element-7958b49 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F8F8;}.elementor-4308 .elementor-element.elementor-element-7958b49{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 50px 105px 50px;overflow:visible;}.elementor-4308 .elementor-element.elementor-element-7958b49 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-4308 .elementor-element.elementor-element-92c6a26 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-4308 .elementor-element.elementor-element-a40dbad{padding:0px 0px 50px 0px;}.elementor-4308 .elementor-element.elementor-element-a40dbad .elementskit-section-title-wraper .elementskit-section-title{color:var( --e-global-color-secondary );font-family:"Work Sans", Sans-serif;font-size:50px;font-weight:700;line-height:59px;}.elementor-4308 .elementor-element.elementor-element-a40dbad .elementskit-section-title-wraper .elementskit-section-title > span{color:var( --e-global-color-text );}.elementor-4308 .elementor-element.elementor-element-a40dbad .elementskit-section-title-wraper .elementskit-section-title:hover > span{color:#000000;}.elementor-4308 .elementor-element.elementor-element-a40dbad .elementskit-section-title-wraper .elementskit-section-subtitle{color:#50545E;font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;line-height:28px;}.elementor-4308 .elementor-element.elementor-element-e4eef10.ekit-equal-height-enable,
					.elementor-4308 .elementor-element.elementor-element-e4eef10.ekit-equal-height-enable > div,
					.elementor-4308 .elementor-element.elementor-element-e4eef10.ekit-equal-height-enable .ekit-wid-con,
					.elementor-4308 .elementor-element.elementor-element-e4eef10.ekit-equal-height-enable .ekit-wid-con .elementskit-infobox{height:100%;}.elementor-4308 .elementor-element.elementor-element-e4eef10 .elementskit-infobox{background-color:#00000000;padding:0px 0px 5px 0px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#f5f5f5;border-radius:0px 0px 0px 0px;}.elementor-4308 .elementor-element.elementor-element-e4eef10{padding:0px 0px 5px 0px;}.elementor-4308 .elementor-element.elementor-element-e4eef10 .elementskit-infobox .elementskit-info-box-title{margin:0px 0px 5px 0px;padding:0px 0px 0px 0px;color:var( --e-global-color-secondary );font-family:"Roboto", Sans-serif;font-size:16px;font-weight:700;line-height:21px;}.elementor-4308 .elementor-element.elementor-element-e4eef10 .elementskit-infobox .box-body > p{color:var( --e-global-color-secondary );font-family:"Work Sans", Sans-serif;font-size:26px;font-weight:700;line-height:30px;}.elementor-4308 .elementor-element.elementor-element-cf9e1de.ekit-equal-height-enable,
					.elementor-4308 .elementor-element.elementor-element-cf9e1de.ekit-equal-height-enable > div,
					.elementor-4308 .elementor-element.elementor-element-cf9e1de.ekit-equal-height-enable .ekit-wid-con,
					.elementor-4308 .elementor-element.elementor-element-cf9e1de.ekit-equal-height-enable .ekit-wid-con .elementskit-infobox{height:100%;}.elementor-4308 .elementor-element.elementor-element-cf9e1de .elementskit-infobox{background-color:#00000000;padding:0px 0px 0px 0px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#f5f5f5;border-radius:0px 0px 0px 0px;}.elementor-4308 .elementor-element.elementor-element-cf9e1de{padding:0px 0px 10px 0px;}.elementor-4308 .elementor-element.elementor-element-cf9e1de .elementskit-infobox .elementskit-info-box-title{margin:0px 0px 5px 0px;padding:0px 0px 0px 0px;color:var( --e-global-color-secondary );font-family:"Roboto", Sans-serif;font-size:16px;font-weight:700;line-height:21px;}.elementor-4308 .elementor-element.elementor-element-cf9e1de .elementskit-infobox .box-body > p{color:var( --e-global-color-secondary );font-family:"Work Sans", Sans-serif;font-size:26px;font-weight:700;line-height:30px;}.elementor-4308 .elementor-element.elementor-element-67b21d9 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:16px;font-weight:700;line-height:21px;color:var( --e-global-color-secondary );}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-429a99c > a{color:#6A6874;background-color:#FFFFFF;box-shadow:0px 1px 2px 0px rgba(0, 13.000000000000028, 49.00000000000001, 0.06274509803921569);}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-429a99c > a svg path{stroke:#6A6874;fill:#6A6874;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-429a99c > a:hover{color:#FFFFFF;background-color:#6EC1E4;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-429a99c > a:hover svg path{stroke:#FFFFFF;fill:#FFFFFF;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-578e611 > a{color:#6A6874;background-color:#FFFFFF;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-578e611 > a svg path{stroke:#6A6874;fill:#6A6874;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-578e611 > a:hover{color:#FFFFFF;background-color:#6EC1E4;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-578e611 > a:hover svg path{stroke:#FFFFFF;fill:#FFFFFF;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-c001364 > a{color:#222222;background-color:#FFFFFF;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-c001364 > a svg path{stroke:#222222;fill:#222222;}.elementor-4308 .elementor-element.elementor-element-130c475 .elementor-repeater-item-c001364 > a:hover{background-color:#3b5998;}.elementor-4308 .elementor-element.elementor-element-130c475 > .elementor-widget-container{margin:-5px 0px 0px 0px;}.elementor-4308 .elementor-element.elementor-element-130c475 .ekit_social_media{text-align:left;}.elementor-4308 .elementor-element.elementor-element-130c475 .ekit_social_media > li > a{text-align:center;text-decoration:none;border-radius:0% 0% 0% 0%;width:44px;height:44px;line-height:40px;}.elementor-4308 .elementor-element.elementor-element-130c475 .ekit_social_media > li{display:inline-block;margin:0px 6px 5px 0px;}@media(min-width:768px){.elementor-4308 .elementor-element.elementor-element-4f43855{--width:1400%;}}@media(max-width:1024px){.elementor-4308 .elementor-element.elementor-element-cc5d1d4{padding:80px 0px 80px 0px;}.elementor-4308 .elementor-element.elementor-element-fc8b089 .elementor-heading-title{line-height:40px;}.elementor-4308 .elementor-element.elementor-element-8cfbb4a > .elementor-element-populated{padding:0px 15px 0px 15px;}.elementor-4308 .elementor-element.elementor-element-7958b49{padding:40px 30px 40px 30px;}}@media(max-width:767px){.elementor-4308 .elementor-element.elementor-element-6b30906 > .elementor-element-populated{margin:0px 0px 40px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-4308 .elementor-element.elementor-element-fc8b089 .elementor-heading-title{font-size:35px;}.elementor-4308 .elementor-element.elementor-element-a40dbad .elementskit-section-title-wraper .elementskit-section-title{font-size:45px;line-height:40px;}}/* Start custom CSS for html, class: .elementor-element-97ab052 */:root {
  --brand: #17a2b8;
  --brand-dark: #11798a;
  --brand-deep: #0d4f5a;
  --brand-soft: #eef9fb;
  --ink: #17343c;
  --text: #405a61;
  --muted: #71858a;
  --line: #d7e5e8;
  --soft: #f6f9fa;
  --white: #ffffff;
  --container: 1400px;
  --radius: 8px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  overflow-x: hidden;
  color: var(--ink);
  background: var(--white);
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Component-specific image sizing prevents theme/CMS styles from causing gaps or overflow. */
.hero-visual,
.application-image,
.solution-image,
.grade-product-image,
.factory-image,
.process-image {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.hero-visual {
  overflow: visible;
}

.hero-visual > .hero-background,
.application-image > img,
.solution-image > img,
.grade-product-image > img,
.factory-image > img,
.process-image > img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

a { color: inherit; text-decoration: none; }
h1, h2, h3, h4, p { margin-top: 0; }
figure { margin: 0; }

.container {
  width: min(calc(100% - 40px), var(--container));
  margin-inline: auto;
}

.section { padding: 88px 0; }
.section-soft { background: var(--soft); }
.section-brand-soft { background: var(--brand-soft); }
.section-dark { color: var(--white); background: var(--brand-deep); }

.eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  color: var(--brand-dark);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.eyebrow::before {
  width: 30px;
  height: 3px;
  content: "";
  background: var(--brand);
}

.section-dark .eyebrow { color: #92deea; }
.section-dark .eyebrow::before { background: #92deea; }

h1 {
  max-width: 810px;
  margin-bottom: 24px;
  font-size: clamp(42px, 5.5vw, 72px);
  line-height: 1.04;
  letter-spacing: -.045em;
}

h2 {
  margin-bottom: 18px;
  font-size: clamp(32px, 4vw, 50px);
  line-height: 1.12;
  letter-spacing: -.035em;
}

h3 {
  margin-bottom: 11px;
  font-size: 24px;
  line-height: 1.28;
}

h4 {
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 1.35;
}

.lead {
  max-width: 760px;
  margin-bottom: 30px;
  color: var(--text);
  font-size: clamp(18px, 2vw, 21px);
}

.section-head {
  max-width: 820px;
  margin-bottom: 42px;
}

.section-head.center {
  margin-inline: auto;
  text-align: center;
}

.section-head.center .eyebrow { justify-content: center; }
.section-head p { margin-bottom: 0; color: var(--muted); font-size: 17px; }
.section-dark .section-head p { color: #c7dade; }

.btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.btn {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: 5px;
  font-weight: 800;
}

.btn-primary { color: var(--white); background: var(--brand); }
.btn-primary:hover { background: var(--brand-dark); }
.btn-outline { color: var(--brand-dark); background: var(--white); border-color: var(--brand); }
.btn-outline:hover { background: var(--brand-soft); }
.btn-white { color: var(--brand-dark); background: var(--white); }

.hero {
  padding: 72px 0 66px;
  background: var(--brand-soft);
  border-bottom: 1px solid var(--line);
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(480px, .92fr);
  gap: 64px;
  align-items: center;
}

.hero-copy strong { color: var(--brand-dark); }

.hero-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  max-width: 730px;
  margin: 0 0 30px;
  padding: 0;
  list-style: none;
}

.hero-points li {
  position: relative;
  padding-left: 24px;
  color: var(--text);
  font-size: 14px;
  font-weight: 700;
}

.hero-points li::before {
  position: absolute;
  top: .65em;
  left: 0;
  width: 9px;
  height: 9px;
  content: "";
  background: var(--brand);
  border-radius: 50%;
  transform: translateY(-50%);
}

.hero-note {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 14px;
}

.hero-note a { color: var(--brand-dark); font-weight: 800; }

.hero-visual {
  position: relative;
  min-width: 0;
  max-width: 100%;
  height: 550px;
  overflow: visible;
  background: transparent;
}

.hero-application-frame {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 62px;
  width: 86%;
  max-width: 100%;
  overflow: hidden;
  background: #dce9eb;
  border: 1px solid var(--line);
  border-radius:0;
}

.hero-application-frame > .hero-background {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.hero-product-layer {
  position: absolute;
  right: -8%;
  bottom: 5px;
  z-index: 3;
  width: min(58%, 460px);
  max-width: 58%;
  pointer-events: none;
}

.hero-product-layer img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: contain !important;
}

.image-label {
  position: absolute;
  right: 10%;
  bottom: 0;
  left: 0;
  z-index: 2;
  min-height: 52px;
  padding: 14px 43% 14px 18px;
  color: var(--white);
  background: var(--brand-deep);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  line-height: 1.4;
  text-transform: uppercase;
}

.trust-strip {
  background: var(--white);
  border-bottom: 1px solid var(--line);
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.trust-item {
  padding: 26px 24px;
  border-right: 1px solid var(--line);
}

.trust-item:first-child { border-left: 1px solid var(--line); }
.trust-item strong { display: block; margin-bottom: 3px; color: var(--brand-dark); font-size: 20px; }
.trust-item span { color: var(--muted); font-size: 13px; }

.application-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.application-card {
  overflow: hidden;
  background: var(--white);
  border: 1px solid var(--line);
  border-top: 4px solid var(--brand);
}

.application-image {
  height: 235px;
  overflow: hidden;
  background: #e3ecee;
}

.application-copy { padding: 24px; }
.application-number { display: block; margin-bottom: 8px; color: var(--brand); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.application-copy p { margin-bottom: 0; color: var(--muted); font-size: 14px; }

.solution-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
  gap: 30px;
  align-items: stretch;
}

.solution-card {
  overflow: hidden;
  background: var(--white);
  border: 1px solid var(--line);
}

.solution-card.primary { border-top: 5px solid var(--brand); }
.solution-image { height: 340px; overflow: hidden; background: #e3ecee; }
.solution-body { padding: 30px; }
.solution-body p { color: var(--muted); }

.tag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}

.tag {
  display: inline-flex;
  min-height: 29px;
  align-items: center;
  padding: 4px 9px;
  color: var(--brand-dark);
  background: var(--brand-soft);
  border: 1px solid #cce6ea;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.feature-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.feature-list li {
  position: relative;
  padding-left: 18px;
  color: var(--text);
  font-size: 14px;
  font-weight: 700;
}

.feature-list li::before {
  position: absolute;
  top: .7em;
  left: 0;
  width: 6px;
  height: 6px;
  content: "";
  background: var(--brand);
  border-radius: 50%;
  transform: translateY(-50%);
}

.grade-section {
  padding: 88px 0;
  background: var(--white);
}

.grade-block + .grade-block { margin-top: 56px; }

.grade-head {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
  gap: 42px;
  align-items: end;
  margin-bottom: 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--line);
}

.grade-head h3 {
  margin-bottom: 0;
  font-size: clamp(27px, 3vw, 36px);
}

.grade-head p {
  max-width: 760px;
  margin: 0 0 2px auto;
  color: var(--muted);
  font-size: 15px;
}

.grade-kicker {
  display: block;
  margin-bottom: 8px;
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.grade-layout {
  display: grid;
  grid-template-columns: 315px minmax(0, 1fr);
  gap: 18px;
  align-items: stretch;
  min-width: 0;
  max-width: 100%;
}

.grade-summary {
  display: flex;
  min-width: 0;
  max-width: 100%;
  flex-direction: column;
  gap: 20px;
  padding: 28px;
  color: var(--white);
  background: var(--brand-deep);
}

.grade-summary p { margin-bottom: 0; color: #c7dade; font-size: 14px; }

.grade-product-image {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 230px;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  background: #0a4550;
  border: 1px solid rgba(255,255,255,.24);
}

.grade-product-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.grade-summary ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.grade-summary li {
  position: relative;
  padding-left: 17px;
  color: #e5f1f3;
  font-size: 13px;
  font-weight: 700;
}

.grade-summary li::before {
  position: absolute;
  top: .7em;
  left: 0;
  width: 7px;
  height: 7px;
  content: "";
  background: #8ddce7;
  border-radius: 50%;
  transform: translateY(-50%);
}

.table-wrap {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  background: var(--white);
  border: 1px solid var(--line);
  -webkit-overflow-scrolling: touch;
}

table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  font-size: 14px;
}

th, td {
  padding: 14px 16px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  text-align: center;
  vertical-align: middle;
}

th:last-child, td:last-child { border-right: 0; }
tbody tr:last-child td { border-bottom: 0; }

thead th {
  color: var(--white);
  background: var(--brand-dark);
  font-weight: 800;
}

tbody td:first-child {
  width: 31%;
  color: var(--ink);
  background: var(--soft);
  font-weight: 800;
  text-align: left;
}

tbody td:nth-child(2) {
  width: 12%;
  color: var(--text);
  background: var(--brand-soft);
  font-weight: 700;
}

.table-note {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.model-guide {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.model-card {
  padding: 18px;
  background: var(--brand-soft);
  border: 1px solid #cee6ea;
}

.model-card strong { display: block; margin-bottom: 5px; color: var(--brand-dark); font-size: 15px; }
.model-card span { color: var(--muted); font-size: 12px; }

.performance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.performance-card {
  padding: 24px;
  background: var(--white);
  border: 1px solid var(--line);
  border-top: 3px solid var(--brand);
}

.performance-card .number {
  display: block;
  margin-bottom: 10px;
  color: var(--brand);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
}

.performance-card p { margin-bottom: 0; color: var(--muted); font-size: 14px; }

.factory-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 28px;
  align-items: start;
}

.factory-image {
  position: relative;
  width: 100%;
  height: 650px;
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
}

.factory-image > img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.factory-copy { padding: 12px 0 12px 16px; }
.factory-copy > p { color: #c7dade; font-size: 17px; }

.factory-capabilities {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 26px;
}

.factory-capability {
  padding: 18px;
  background: #123f48;
  border: 1px solid #315f67;
}

.factory-capability strong { display: block; margin-bottom: 5px; color: var(--white); font-size: 15px; }
.factory-capability span { color: #b9d0d5; font-size: 13px; }

.process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}

.process-card {
  overflow: hidden;
  background: var(--white);
  border: 1px solid var(--line);
}

.process-image { height: 215px; overflow: hidden; background: #e3ecee; }
.process-copy { padding: 22px; }
.process-step { display: block; margin-bottom: 8px; color: var(--brand); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.process-copy p { margin-bottom: 0; color: var(--muted); font-size: 14px; }

.supply-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
}

.supply-card {
  padding: 25px;
  background: var(--white);
  border: 1px solid var(--line);
}

.supply-card p { margin-bottom: 0; color: var(--muted); font-size: 14px; }

.project-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border: 1px solid var(--line);
}

.project-step {
  position: relative;
  padding: 28px;
  background: var(--white);
  border-right: 1px solid var(--line);
}

.project-step:last-child { border-right: 0; }
.project-step strong { display: block; margin-bottom: 10px; color: var(--brand); font-size: 13px; letter-spacing: .08em; }
.project-step p { margin-bottom: 0; color: var(--muted); font-size: 14px; }

.faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

details {
  background: var(--white);
  border: 1px solid var(--line);
}

summary {
  position: relative;
  padding: 20px 48px 20px 22px;
  cursor: pointer;
  font-weight: 800;
  list-style: none;
}

summary::-webkit-details-marker { display: none; }
summary::after {
  position: absolute;
  top: 18px;
  right: 20px;
  color: var(--brand);
  content: "+";
  font-size: 22px;
  line-height: 1;
}

details[open] summary::after { content: "−"; }
details p { margin: 0; padding: 0 22px 22px; color: var(--muted); font-size: 14px; }

.cta-band {
  padding: 62px 0;
  color: var(--white);
  background: var(--brand);
}

.cta-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 36px;
  align-items: center;
}

.cta-band h2 { max-width: 850px; margin-bottom: 12px; }
.cta-band p { max-width: 760px; margin-bottom: 0; color: #e8fbfe; }

.inquiry-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 18px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.inquiry-list li {
  position: relative;
  padding-left: 17px;
  color: #e8fbfe;
  font-size: 13px;
  font-weight: 700;
}

.inquiry-list li::before {
  position: absolute;
  top: .7em;
  left: 0;
  width: 6px;
  height: 6px;
  content: "";
  background: var(--white);
  border-radius: 50%;
  transform: translateY(-50%);
}

@media (max-width: 1160px) {
  .hero-grid { grid-template-columns: 1fr 440px; gap: 40px; }
  .application-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .model-guide { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .performance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-step:nth-child(2) { border-right: 0; }
  .project-step:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 900px) {
  .section { padding: 70px 0; }
  .hero { padding: 56px 0; }

  .hero-grid,
  .solution-grid,
  .grade-head,
  .grade-layout,
  .factory-grid,
  .cta-grid {
    grid-template-columns: 1fr;
  }

  .hero-visual { height: 470px; }

  .hero-application-frame {
    left: 0;
    right: auto;
    bottom: 58px;
    width: 88%;
  }

  .hero-product-layer {
    right: -5%;
    left: auto;
    bottom: 8px;
    width: min(50%, 300px);
    max-width: 50%;
  }

  .image-label {
    right: 8%;
    left: 0;
    min-height: 50px;
    padding-right: 43%;
  }

  .trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .trust-item:nth-child(2) { border-right: 0; }
  .trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .grade-head p { margin-left: 0; }
  .grade-product-image { height: 300px; }
  .factory-image { height: 480px; min-height: 0; }
  .factory-copy { padding-left: 0; }
  .supply-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .faq-grid { grid-template-columns: 1fr; }
  .cta-grid .btn { justify-self: start; }
}

@media (max-width: 640px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .section { padding: 58px 0; }
  .hero { padding: 46px 0; }
  h1 { font-size: 42px; }
  h2 { font-size: 34px; }

  .hero-points,
  .application-grid,
  .feature-list,
  .performance-grid,
  .factory-capabilities,
  .process-grid,
  .supply-grid,
  .project-grid,
  .inquiry-list {
    grid-template-columns: 1fr;
  }

  .hero-visual { height: 340px; }

  .hero-application-frame {
    top: 0;
    right: auto;
    left: 0;
    bottom: 52px;
    width: 88%;
  }

  .hero-product-layer {
    right: -4%;
    left: auto;
    bottom: 8px;
    width: min(52%, 220px);
    max-width: 52%;
  }

  .image-label {
    right: 7%;
    left: 0;
    min-height: 46px;
    padding: 10px 45% 10px 10px;
    font-size: 9px;
    line-height: 1.35;
  }

  .trust-grid { grid-template-columns: 1fr; }

  .trust-item,
  .trust-item:first-child {
    border-right: 0;
    border-left: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }

  .trust-item:last-child { border-bottom: 0; }
  .application-image { height: 220px; }
  .solution-image { height: 270px; }
  .model-guide { grid-template-columns: 1fr; }
  .grade-product-image { height: 240px; }
  .factory-image { height: 340px; min-height: 0; }
  .process-image { height: 210px; }

  .project-step,
  .project-step:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .project-step:last-child { border-bottom: 0; }
  .btn { width: 100%; }
  .cta-grid .btn { justify-self: stretch; }
}/* End custom CSS */