:root {
    --cncpdl-green: #6eb51c;
    --cncpdl-green-dark: #57920d;
    --cncpdl-ink: #10110f;
    --cncpdl-muted: #52554f;
    --cncpdl-line: #dedfd9;
    --cncpdl-soft: #f6f7f4;
    --cncpdl-wrap: 1440px;
    --cncpdl-gutter: clamp(30px, 3.8vw, 55px);
}

.cncpdl-product-page .cnc-page-shell { padding: 0; }
.cncpdl-detail { overflow: clip; color: var(--cncpdl-ink); background: #fff; font-family: "CNC Text", Arial, sans-serif; }
.cncpdl-detail *, .cncpdl-detail *::before, .cncpdl-detail *::after { box-sizing: border-box; }
.cncpdl-wrap { width: min(100%, var(--cncpdl-wrap)); margin-inline: auto; padding-inline: var(--cncpdl-gutter); }
.cncpdl-detail h1, .cncpdl-detail h2 { margin: 0; font-family: "CNC Display", Arial, sans-serif; color: var(--cncpdl-ink); letter-spacing: -.038em; }
.cncpdl-kicker, .cncpdl-number { color: var(--cncpdl-green-dark); font-family: "CNC Mono", Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .025em; }
.cncpdl-breadcrumb { min-height: 58px; display: flex; align-items: center; gap: 11px; border-bottom: 1px solid var(--cncpdl-line); color: #757970; font-size: 10px; letter-spacing: .035em; text-transform: uppercase; white-space: nowrap; overflow-x: auto; }
.cncpdl-breadcrumb a:hover { color: var(--cncpdl-green-dark); }

.cncpdl-hero { border-bottom: 1px solid #eff0ec; background: #f8f9f6; }
.cncpdl-hero__grid { min-height: 842px; display: grid; grid-template-columns: minmax(585px, .9fr) minmax(0, 1.1fr); gap: 0; align-items: center; }
.cncpdl-hero__copy { position: relative; z-index: 1; align-self: start; padding-block: 140px 78px; }
.cncpdl-hero h1 { width: max-content; max-width: none; margin-top: 46px; font-size: clamp(60px, 5vw, 72px); font-weight: 600; line-height: 1.03; }
.cncpdl-hero__summary { max-width: 580px; margin: 50px 0 0; color: var(--cncpdl-muted); font-size: 17px; line-height: 1.75; }
.cncpdl-hero__facts { margin-top: 130px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; }
.cncpdl-hero__facts > div { min-width: 0; display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 16px; align-items: center; }
.cncpdl-hero__fact-icon { width: 58px; height: 64px; object-fit: contain; }
.cncpdl-hero__facts p { margin: 0; }
.cncpdl-hero__facts strong { display: block; font-size: 14px; line-height: 1.45; }
.cncpdl-hero__facts span { display: block; margin-top: 3px; color: var(--cncpdl-muted); font-size: 12px; }
.cncpdl-hero__media { min-width: 0; height: 842px; display: grid; place-items: center; align-self: stretch; }
.cncpdl-hero__image { width: 200%; height: auto; max-width: none; object-fit: contain; transform: translateX(10%); }

.cncpdl-benefits { padding-block: 94px 104px; border-bottom: 1px solid #eceee8; }
.cncpdl-benefits__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(70px, 9vw, 145px); row-gap: 90px; }
.cncpdl-benefits article { min-width: 0; display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 30px; align-items: center; }
.cncpdl-benefit__icon { width: 108px; height: 116px; object-fit: contain; }
.cncpdl-benefits h2 { font-size: clamp(26px, 2.2vw, 34px); font-weight: 600; line-height: 1.18; }
.cncpdl-benefits p { max-width: 410px; margin: 22px 0 0; color: var(--cncpdl-muted); font-size: 15px; line-height: 1.75; }

.cncpdl-workarea { padding-block: 82px; background: var(--cncpdl-soft); }
.cncpdl-split { display: grid; align-items: center; }
.cncpdl-split--workarea { grid-template-columns: minmax(390px, .62fr) minmax(0, 1.38fr); gap: 50px; }
.cncpdl-numbered-copy .cncpdl-number { margin: 0 0 25px; font-size: 18px; }
.cncpdl-numbered-copy h2 { font-size: clamp(42px, 4vw, 58px); font-weight: 600; line-height: 1.08; }
.cncpdl-workarea .cncpdl-numbered-copy h2 { font-size: clamp(42px, 3.35vw, 48px); }
.cncpdl-numbered-copy > p:not(.cncpdl-number) { max-width: 440px; margin: 30px 0 0; color: var(--cncpdl-muted); font-size: 16px; line-height: 1.8; }
.cncpdl-rule { width: 34px; height: 3px; margin-top: 32px; display: block; background: var(--cncpdl-green); }
.cncpdl-workarea__media { min-width: 0; }
.cncpdl-workarea__image { width: 100%; height: auto; display: block; }

.cncpdl-access { padding-block: 92px 80px; }
.cncpdl-access__grid { display: grid; grid-template-columns: minmax(400px, .62fr) minmax(0, 1.38fr); gap: 50px; align-items: start; }
.cncpdl-access .cncpdl-numbered-copy h2 { font-size: clamp(38px, 3.05vw, 44px); }
.cncpdl-access__options { min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.cncpdl-access__options figure { margin: 0; min-width: 0; border: 1px solid var(--cncpdl-line); background: #fff; }
.cncpdl-access__diagram { width: 100%; height: auto; display: block; }
.cncpdl-access__options > p { grid-column: 1 / -1; margin: 12px 0 0; color: var(--cncpdl-muted); font-size: 11px; }

.cncpdl-power { position: relative; min-height: 550px; display: grid; align-items: center; overflow: hidden; background: #080a08; color: #fff; }
.cncpdl-power__media { position: absolute; inset: 0; }
.cncpdl-power__media::after { content: ""; position: absolute; inset: 0; background: rgba(4, 5, 4, .52); }
.cncpdl-power__image { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cncpdl-power__grid { position: relative; z-index: 1; display: grid; grid-template-columns: .72fr 1.28fr; gap: 90px; align-items: center; padding-block: 76px; }
.cncpdl-numbered-copy--dark h2 { color: #fff; }
.cncpdl-numbered-copy--dark > p:not(.cncpdl-number) { color: rgba(255,255,255,.78); }
.cncpdl-power__range { align-self: center; color: #fff; }
.cncpdl-power__range p { margin: 0; font-size: 25px; line-height: 1.4; }
.cncpdl-power__range p + p { margin-top: 58px; font-size: 21px; font-weight: 700; }
.cncpdl-power__range strong, .cncpdl-power__range span { display: block; }
.cncpdl-power__range strong { color: var(--cncpdl-green); font-size: 34px; }

.cncpdl-section-heading { margin-bottom: 34px; }
.cncpdl-section-heading h2 { font-size: clamp(32px, 3vw, 44px); font-weight: 600; line-height: 1.1; }
.cncpdl-section-heading span { width: 30px; height: 3px; margin-top: 16px; display: block; background: var(--cncpdl-green); }
.cncpdl-applications { padding-block: 78px 90px; }
.cncpdl-applications__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 46px 52px; }
.cncpdl-applications figure { min-width: 0; margin: 0; text-align: center; }
.cncpdl-applications img { width: 100%; aspect-ratio: 1.18; display: block; object-fit: cover; border-radius: 3px; }
.cncpdl-applications figcaption { margin-top: 22px; font-size: 18px; font-weight: 600; line-height: 1.3; }

.cncpdl-materials { padding-block: 64px 58px; background: var(--cncpdl-soft); }
.cncpdl-materials__image { width: 100%; height: auto; display: block; border-radius: 3px; }
.cncpdl-materials__labels { margin-top: 30px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.cncpdl-materials__labels > span { min-width: 0; display: flex; align-items: center; gap: 14px; font-size: 14px; font-weight: 600; }
.cncpdl-dot { width: 18px; height: 18px; flex: 0 0 auto; display: inline-block; border-radius: 50%; }
.cncpdl-dot--carbon { background: #111; }
.cncpdl-dot--stainless { background: #91948e; }
.cncpdl-dot--aluminum { background: #c7c9c4; }
.cncpdl-dot--sheet { background: #dedfdb; }

.cncpdl-system { padding-block: 80px 88px; }
.cncpdl-system__grid { display: grid; grid-template-columns: minmax(0, .96fr) minmax(320px, 1.04fr); gap: 90px; align-items: center; }
.cncpdl-system__control { width: 100%; max-height: 620px; display: block; object-fit: cover; object-position: center; }
.cncpdl-system__features { min-width: 0; display: grid; gap: 30px; }
.cncpdl-system__features article { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 18px; align-items: start; }
.cncpdl-system__features .dashicons { width: 36px; height: 36px; color: #181a17; font-size: 32px; line-height: 36px; }
.cncpdl-system__features strong { display: block; font-size: 16px; line-height: 1.35; }
.cncpdl-system__features p { max-width: 420px; margin: 7px 0 0; color: var(--cncpdl-muted); font-size: 13px; line-height: 1.55; }

.cncpdl-quality { padding-block: 58px 64px; background: var(--cncpdl-soft); }
.cncpdl-quality__image { width: 100%; height: auto; display: block; border-radius: 3px; }
.cncpdl-quality__icons { margin-top: 26px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.cncpdl-quality__icons > span { min-width: 0; min-height: 116px; padding: 12px 10px; display: grid; place-items: center; align-content: center; gap: 11px; border-right: 1px solid #e2e3de; text-align: center; }
.cncpdl-quality__icons > span:last-child { border-right: 0; }
.cncpdl-quality__icons .dashicons { width: 34px; height: 34px; color: #171916; font-size: 30px; line-height: 34px; }
.cncpdl-quality__icons > span:nth-child(3) .dashicons { color: var(--cncpdl-green); }
.cncpdl-quality__icons strong { font-size: 12px; line-height: 1.35; }

.cncpdl-specs { padding-block: 72px 76px; background: #f3f4f1; }
.cncpdl-specs__table { border: 1px solid #d8dad3; background: rgba(255,255,255,.48); }
.cncpdl-specs__table > div { min-height: 60px; padding: 16px 28px; display: grid; grid-template-columns: minmax(250px, .75fr) minmax(0, 1.25fr); gap: 28px; align-items: center; border-bottom: 1px solid #d8dad3; }
.cncpdl-specs__table > div:last-child { border-bottom: 0; }
.cncpdl-specs__table strong, .cncpdl-specs__table span { font-size: 13px; line-height: 1.5; }
.cncpdl-specs__table span { color: var(--cncpdl-muted); }
.cncpdl-specs__note { margin: 20px 0 0; color: var(--cncpdl-muted); font-size: 12px; }

.cncpdl-inquiry { padding-block: 72px 80px; scroll-margin-top: 76px; }
.cncpdl-inquiry__grid { display: grid; grid-template-columns: minmax(280px, 300px) minmax(430px, 1fr) minmax(380px, 430px); gap: 42px; align-items: start; }
.cncpdl-inquiry__intro h2 { margin-top: 20px; font-size: clamp(34px, 2.65vw, 38px); font-weight: 600; line-height: 1.08; }
.cncpdl-inquiry__intro > p:last-child { max-width: 340px; margin: 28px 0 0; color: var(--cncpdl-muted); font-size: 14px; line-height: 1.75; }
.cncpdl-inquiry__media { height: 520px; overflow: hidden; background: #090b09; }
.cncpdl-inquiry__image { width: 100%; height: 100%; display: block; object-fit: cover; object-position: 54% center; }
.cncpdl-inquiry__form .cnc-rfq-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 22px; }
.cncpdl-inquiry__form .cnc-rfq-form > input[type="hidden"], .cncpdl-inquiry__form .cnc-rfq-form > div[aria-hidden="true"], .cncpdl-inquiry__form .cnc-rfq-form > span[hidden] { display: none; }
.cncpdl-inquiry__form .cnc-rfq-form > label { min-width: 0; display: grid; gap: 7px; color: var(--cncpdl-ink); font-size: 11px; font-weight: 700; }
.cncpdl-inquiry__form .cnc-rfq-form > label:nth-of-type(7) { grid-column: 1 / -1; }
.cncpdl-inquiry__form .cnc-rfq-form input:not([type="hidden"]), .cncpdl-inquiry__form .cnc-rfq-form textarea { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #c8cbc3; border-radius: 0; background: #fff; color: var(--cncpdl-ink); }
.cncpdl-inquiry__form .cnc-rfq-form textarea { min-height: 130px; resize: vertical; }
.cncpdl-inquiry__form .cnc-rfq-form button[type="submit"] { min-width: 145px; min-height: 44px; padding: 12px 24px; grid-column: 1; justify-self: start; border: 0; border-radius: 0; background: var(--cncpdl-green); color: var(--cncpdl-ink); font-family: "CNC Mono", Arial, sans-serif; font-size: 11px; font-weight: 700; text-transform: uppercase; cursor: pointer; }
.cncpdl-inquiry__form .cnc-rfq-error-summary, .cncpdl-inquiry__form .cnc-field-error { grid-column: 1 / -1; color: #b42318; font-size: 11px; }
.cncpdl-inquiry-unavailable { padding: 24px; border: 1px solid var(--cncpdl-line); background: var(--cncpdl-soft); }

@media (max-width: 1050px) {
    .cncpdl-hero__grid { grid-template-columns: minmax(350px, .85fr) minmax(0, 1.15fr); }
    .cncpdl-hero h1 { font-size: 58px; }
    .cncpdl-benefits article { grid-template-columns: 92px 1fr; }
    .cncpdl-benefit__icon { width: 88px; height: 96px; }
    .cncpdl-inquiry__grid { grid-template-columns: minmax(230px, .6fr) minmax(430px, 1.1fr); }
    .cncpdl-inquiry__media { display: none; }
}

@media (max-width: 820px) {
    .cncpdl-hero__grid, .cncpdl-split--workarea, .cncpdl-access__grid, .cncpdl-power__grid, .cncpdl-system__grid, .cncpdl-inquiry__grid { grid-template-columns: minmax(0, 1fr); }
    .cncpdl-numbered-copy, .cncpdl-access__options, .cncpdl-access__options figure { min-width: 0; max-width: 100%; }
    .cncpdl-hero__grid { min-height: 0; padding-top: 62px; }
    .cncpdl-hero__copy { padding-block: 34px 0; }
    .cncpdl-hero__media { height: 510px; }
    .cncpdl-benefits__grid { column-gap: 34px; row-gap: 62px; }
    .cncpdl-benefits article { grid-template-columns: 78px 1fr; gap: 18px; }
    .cncpdl-benefit__icon { width: 76px; height: 84px; }
    .cncpdl-access__options { margin-top: 12px; }
    .cncpdl-power__grid { gap: 50px; }
    .cncpdl-power__range { padding-left: 0; }
    .cncpdl-power__range p + p { margin-top: 28px; }
    .cncpdl-applications__grid { gap: 38px 28px; }
    .cncpdl-system__control { max-height: none; }
    .cncpdl-inquiry__media { display: block; height: 430px; }
}

@media (max-width: 600px) {
    :root { --cncpdl-gutter: 20px; }
    .cncpdl-breadcrumb { min-height: 48px; }
    .cncpdl-hero h1 { width: auto; max-width: 100%; margin-top: 20px; font-size: 43px; overflow-wrap: normal; }
    .cncpdl-detail h1, .cncpdl-detail h2 { overflow-wrap: anywhere; hyphens: auto; }
    .cncpdl-hero__summary { margin-top: 24px; font-size: 15px; }
    .cncpdl-hero__facts { margin-top: 34px; grid-template-columns: 1fr; gap: 20px; }
    .cncpdl-hero__media { height: 320px; }
    .cncpdl-benefits { padding-block: 62px; }
    .cncpdl-benefits__grid { grid-template-columns: 1fr; row-gap: 46px; }
    .cncpdl-benefits article { grid-template-columns: 72px 1fr; }
    .cncpdl-benefits h2 { font-size: 26px; }
    .cncpdl-workarea, .cncpdl-access, .cncpdl-applications, .cncpdl-system, .cncpdl-specs, .cncpdl-inquiry { padding-block: 62px; }
    .cncpdl-numbered-copy h2 { font-size: 40px; }
    .cncpdl-access__options { grid-template-columns: 1fr; }
    .cncpdl-applications__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 16px; }
    .cncpdl-applications figcaption { font-size: 15px; }
    .cncpdl-materials__labels { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
    .cncpdl-materials__labels > span { gap: 9px; font-size: 12px; }
    .cncpdl-dot { width: 14px; height: 14px; }
    .cncpdl-system__features { gap: 24px; }
    .cncpdl-system__features article { grid-template-columns: 34px 1fr; gap: 14px; }
    .cncpdl-system__features .dashicons { width: 30px; height: 30px; font-size: 27px; line-height: 30px; }
    .cncpdl-quality__icons { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
    .cncpdl-quality__icons > span { min-height: 102px; border-right: 1px solid #e2e3de; border-bottom: 1px solid #e2e3de; }
    .cncpdl-quality__icons > span:nth-child(3n) { border-right: 0; }
    .cncpdl-quality__icons > span:nth-last-child(-n+3) { border-bottom: 0; }
    .cncpdl-specs__table > div { grid-template-columns: 1fr; gap: 6px; padding: 15px 18px; }
    .cncpdl-inquiry__form .cnc-rfq-form { grid-template-columns: 1fr; }
    .cncpdl-inquiry__form .cnc-rfq-form > label:nth-of-type(7), .cncpdl-inquiry__form .cnc-rfq-form button[type="submit"] { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .cncpdl-detail *, .cncpdl-detail *::before, .cncpdl-detail *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
