/* Shared 0.8 product presentation. Neutral surfaces; blue for TT, red for DL. */
:root { --ql-ui-ink:#171b1f; --ql-ui-text:#444b53; --ql-ui-line:#d8dde2; --ql-ui-silver:#f0f2f4; --ql-ui-blue:#255f87; --ql-ui-red:#b52b37; }
body { background:#fff; }
.ql-commerce-page, .ql-refined { background:#fff; color:var(--ql-ui-ink); overflow-wrap:anywhere; }
.ql-commerce-page { padding:50px 0 80px; }
.ql-commerce-page>.ql-wrap, .ql-refined>.ql-wrap { max-width:1360px; padding-inline:40px; }
.ql-commerce-page .wp-block-column, .ql-refined .wp-block-column { min-width:0; margin:0; }
.ql-commerce-page p, .ql-commerce-page li, .ql-refined p, .ql-refined li { font-size:16px; line-height:1.85; }
.ql-commerce-page p { margin:0 0 20px; color:var(--ql-ui-text); }
.ql-commerce-page h1 { font-size:clamp(34px,4vw,56px); line-height:1.25; letter-spacing:-.03em; color:var(--ql-ui-ink); margin:0 0 22px; }
.ql-commerce-page h2 { font-size:clamp(25px,2.2vw,34px); line-height:1.4; color:var(--ql-ui-ink); margin:0 0 24px; }
.ql-commerce-page h3 { font-size:22px; line-height:1.4; color:var(--ql-ui-ink); margin:0 0 16px; }
.ql-commerce-page .ql-kicker, .ql-refined .ql-kicker, .ql-home .ql-section:not(.ql-hero) .ql-kicker { color:var(--ql-ui-blue); font-size:14px; font-weight:650; letter-spacing:.06em; margin:0 0 14px; }
.ql-editorial-intro { border-bottom:1px solid var(--ql-ui-line); padding:12px 0 34px; margin-bottom:40px; }
.ql-editorial-intro h1 { max-width:900px; }
.ql-editorial-intro .ql-section-intro { max-width:850px; margin-bottom:0; }
.ql-commerce-page .wp-block-buttons, .ql-inquiry-block .wp-block-buttons, .ql-family-card .wp-block-buttons, .ql-range-card .wp-block-buttons, .ql-brand-panel .wp-block-buttons, .ql-resource-card .wp-block-buttons { display:flex; flex-wrap:wrap; gap:10px; margin:0; }
.ql-commerce-page .wp-block-button, .ql-inquiry-block .wp-block-button, .ql-family-card .wp-block-button { margin:0; max-width:100%; }
.ql-commerce-page .wp-block-button__link, .ql-inquiry-block .wp-block-button__link, .ql-home .ql-brand-panel .wp-block-button__link, .ql-home .ql-range-card .wp-block-button__link, .ql-home .ql-resource-card .wp-block-button__link { display:inline-flex; justify-content:center; align-items:center; box-sizing:border-box; min-height:46px; padding:11px 18px; background:var(--ql-ui-ink); border:1px solid var(--ql-ui-ink); color:#fff; border-radius:0; font-family:inherit; font-size:15px; font-weight:650; line-height:1.5; text-decoration:none; }
.ql-commerce-page .is-style-outline .wp-block-button__link, .ql-inquiry-block .is-style-outline .wp-block-button__link, .ql-home .ql-brand-panel .is-style-outline .wp-block-button__link, .ql-home .ql-range-card .is-style-outline .wp-block-button__link, .ql-home .ql-resource-card .is-style-outline .wp-block-button__link { color:var(--ql-ui-ink); background:transparent; border-color:#aab4bd; }
.ql-commerce-page .wp-block-button__link:hover, .ql-refined .wp-block-button__link:hover { background:var(--ql-ui-blue); border-color:var(--ql-ui-blue); color:#fff; }
.ql-commerce-page a:focus-visible, .ql-refined a:focus-visible, .ql-home a:focus-visible, .ql-contact-dock a:focus-visible { outline:3px solid var(--ql-ui-blue); outline-offset:4px; }
.ql-authority { display:inline-block; padding:6px 12px; margin:0 0 22px; font-size:14px!important; font-weight:650; letter-spacing:.08em; border:1px solid #aeb6bf; color:#262c31; }
.ql-home .ql-hero .ql-authority { color:#fff; border-color:#b8c4cb; background:rgba(15,19,23,.22); margin:0 0 22px; }
.ql-home .ql-category-rail { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); }
.ql-home .ql-rail-en { display:none; }
.ql-home .ql-range-section { background:#fff; }
.ql-range-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:24px; margin:34px 0 0; }
.ql-range-grid>.wp-block-column { grid-column:span 2; }
.ql-range-grid>.wp-block-column:nth-child(-n+2) { grid-column:span 3; }
.ql-range-card { height:100%; border:1px solid var(--ql-ui-line); background:#fff; display:flex; flex-direction:column; transition:border-color .18s ease,box-shadow .18s ease; }
.ql-range-card:hover { border-color:#a3b3c0; box-shadow:0 10px 24px rgba(20,30,38,.07); }
.ql-range-image { margin:0; background:#e9edf0; }
.ql-range-image img { display:block; width:100%; height:auto; aspect-ratio:2.8/1; object-fit:cover; }
.ql-range-copy { padding:26px; flex:1; display:flex; flex-direction:column; }
.ql-range-card h3 { margin:0 0 12px; font-size:25px; color:var(--ql-ui-ink); }
.ql-range-desc { font-size:16px; color:var(--ql-ui-text); line-height:1.8; margin:0 0 16px; }
.ql-range-families { margin:0 0 22px; font-size:14px!important; color:#596672; line-height:1.7; }
.ql-range-card .wp-block-buttons { margin-top:auto; }
.ql-tooling-link { margin:26px 0 0; font-size:16px; }
.ql-tooling-link a { color:var(--ql-ui-ink); text-decoration:underline; text-underline-offset:5px; }
.ql-home .ql-brands-section { background:var(--ql-ui-silver); }
.ql-brand-panels { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:28px; margin:30px 0 0; }
.ql-brand-panel { display:flex; flex-direction:column; height:100%; background:#fff; border:1px solid #d3d9de; border-top:3px solid var(--ql-ui-blue); }
.ql-brand-panel-dl { border-top-color:var(--ql-ui-red); }
.ql-brand-photo { margin:0; height:200px; overflow:hidden; background:#edf0f2; }
.ql-brand-photo a { display:block; height:100%; }
.ql-brand-photo img { width:100%; height:100%; display:block; object-fit:cover; }
.ql-brand-panel-dl .ql-brand-photo img { object-position:center 52%; }
.ql-brand-panel-copy { padding:30px; display:flex; flex-direction:column; flex:1; }
.ql-brand-panel h3 { color:var(--ql-ui-ink); margin:0 0 16px; font-size:30px; line-height:1.35; }
.ql-brand-panel p { font-size:16px; color:var(--ql-ui-text); line-height:1.85; margin:0 0 22px; }
.ql-brand-panel .wp-block-buttons { margin-top:auto; }
.ql-brand-panel .ql-family-brand { font-size:14px; color:var(--ql-ui-blue); margin-bottom:12px; }
.ql-brand-panel-dl .ql-family-brand, .ql-duracarb-page .ql-kicker { color:var(--ql-ui-red); }
.ql-home .ql-about-renewed { background:#fff; color:var(--ql-ui-ink); border-top:0; }
.ql-home .ql-about-renewed h2 { color:var(--ql-ui-ink); }
.ql-home .ql-about-renewed p { color:var(--ql-ui-text); font-size:17px; }
.ql-home .ql-resources-home { background:#f6f7f8; }
.ql-home .ql-resources-home>.ql-wrap>.wp-block-buttons { margin-top:30px; }
.ql-refined .ql-process-hero-stage { position:relative; padding:38px 40px; background:linear-gradient(125deg,#edf0f3,#f9fafb 58%,#e3e8ec); border:1px solid #d9dfe4; border-top:3px solid #8fa3b2; }
.ql-refined .ql-process-hero { gap:40px; padding:0; border:0; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.ql-refined .ql-process-image { background:rgba(255,255,255,.76); border:0; box-shadow:0 16px 38px rgba(23,36,48,.07); aspect-ratio:440/281; }
.ql-refined .ql-process-image img { display:block; max-height:none; padding:0; object-fit:contain; }
.ql-refined .ql-process-tags { border-left:3px solid var(--ql-ui-blue); padding-left:14px; color:#35424c; font-size:14px; margin:0 0 28px; }
.ql-refined h1 { color:var(--ql-ui-ink); font-size:clamp(32px,3.6vw,52px); }
.ql-family-section { padding-top:12px; }
.ql-family-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:28px 0 0; }
.ql-family-card { height:100%; display:flex; flex-direction:column; background:#fff; border:1px solid #d5dce2; transition:border-color .18s ease,box-shadow .18s ease; }
.ql-family-card:hover { border-color:#8d9eac; box-shadow:0 12px 30px rgba(30,44,54,.08); }
.ql-family-image { margin:0; background:#f1f3f5; border-bottom:1px solid #e1e5e8; height:190px; }
.ql-family-image img { display:block; width:100%; height:100%; object-fit:contain; }
.ql-family-portrait { height:300px; background:#1b2327; }
.ql-family-copy { padding:24px; display:flex; flex:1; flex-direction:column; }
.ql-family-card .ql-family-brand { color:#41677f; font-size:14px; margin:0 0 12px; }
.ql-family-card h3 { font-size:25px; line-height:1.25; margin:0 0 8px; letter-spacing:-.025em; }
.ql-family-card .ql-family-model { font-size:14px; color:#5d6872; margin:0 0 22px; }
.ql-family-card .ql-family-use { color:#252b31; font-weight:650; font-size:16px; margin:0 0 10px; }
.ql-family-card .ql-family-desc { font-size:16px; color:#515c65; line-height:1.8; margin:0 0 24px; }
.ql-family-card .wp-block-buttons { margin-top:auto; }
.ql-family-card .wp-block-button__link { min-height:44px; padding:10px 13px; font-size:14px; }
.ql-family-card .ql-family-video { font-size:14px; margin:16px 0 0; }
.ql-family-video a { color:#345e7a; text-decoration:none; }
.ql-family-video a:hover { text-decoration:underline; }
.ql-refined .ql-process-section { margin-top:54px; }
.ql-process-applications { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:24px 0 0; }
.ql-refined .ql-process-card, .ql-commerce-page .ql-process-card { background:#f4f6f7; border:0; border-top:1px solid #cbd4dc; padding:26px; height:100%; box-sizing:border-box; }
.ql-process-card .ql-application-no { color:#50728a; font-size:14px; letter-spacing:.12em; margin:0 0 16px; font-weight:700; }
.ql-refined .ql-process-card h3 { font-size:20px; }
.ql-refined .ql-process-checks { padding:30px; height:100%; border:1px solid #dde2e6; background:#fff; }
.ql-refined .ql-process-selection { gap:24px; }
.ql-refined .ql-process-checks-secondary { background:#f1f3f5; border-color:#f1f3f5; }
.ql-refined .ql-process-checks h2 { font-size:24px; }
.ql-resource-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:26px 0 0; }
.ql-resource-card { display:grid; grid-template-columns:100px minmax(0,1fr); gap:26px; padding:28px; border:1px solid #d9dfe3; background:#fff; height:100%; box-sizing:border-box; }
.ql-mini-book { margin:0; align-self:start; }
.ql-mini-book img { display:block; width:100%; height:auto; box-shadow:4px 7px 14px rgba(0,0,0,.13); }
.ql-mini-book-copy h3 { font-size:21px; line-height:1.4; margin:0 0 14px; }
.ql-mini-book-copy p { font-size:16px; color:var(--ql-ui-text); margin:0 0 16px; }
.ql-mini-book-copy .ql-family-brand { font-size:14px; color:#65727c; }
.ql-inquiry-block { margin-top:54px; }
.ql-home .ql-inquiry-block { margin-top:0; }
.ql-inquiry-block>h2 { margin:0 0 26px; font-size:30px; }
.ql-inquiry-paths { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:0; }
.ql-inquiry-path { padding:34px; height:100%; display:flex; flex-direction:column; box-sizing:border-box; }
.ql-inquiry-known { background:#23282d; color:#fff; }
.ql-inquiry-selection { background:#edf0f3; border:1px solid #dce2e6; }
.ql-inquiry-path .ql-inquiry-label { font-size:14px; font-weight:650; letter-spacing:.1em; margin:0 0 18px; color:#46657c; }
.ql-inquiry-path h3 { color:#20262a; font-size:25px; line-height:1.5; margin:0 0 12px; }
.ql-inquiry-path p { font-size:16px; line-height:1.8; margin:0 0 26px; color:#4c5660; }
.ql-inquiry-known h3, .ql-inquiry-known .ql-inquiry-label { color:#fff; }
.ql-inquiry-known p { color:#d7dee3; }
.ql-inquiry-path .wp-block-buttons { margin-top:auto; }
.ql-inquiry-known .wp-block-button__link { background:#fff; color:#171b1f; border-color:#fff; }
.ql-inquiry-known .wp-block-button__link:hover { color:#fff; background:#345f7b; border-color:#8dacc1; }
.ql-home .ql-contact-renewed { background:#fff; }
.ql-commerce-page .ql-brands-block { margin-top:60px; }
.ql-commerce-page .ql-editorial-intro+.ql-brands-block { margin-top:0; }
.ql-tooling-feature { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; background:#edf0f2; margin-top:36px; }
.ql-tooling-image { margin:0; height:100%; }
.ql-tooling-image a { display:block; height:100%; }
.ql-tooling-image img { display:block; width:100%; height:100%; min-height:220px; object-fit:cover; }
.ql-tooling-copy { padding:32px; }
.ql-tooling-copy h2 { font-size:27px; margin-bottom:14px; }
.ql-brand-hero, .ql-about-feature { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:center; margin:0 0 50px; padding:24px 0 36px; border-bottom:1px solid #dce1e5; }
.ql-brand-hero-image, .ql-about-action-image { margin:0; background:#f0f3f5; }
.ql-brand-hero-image img, .ql-about-action-image img { display:block; width:100%; height:330px; object-fit:contain; }
.ql-duracarb-page .ql-brand-hero { border-top:3px solid var(--ql-ui-red); padding-top:36px; }
.ql-duracarb-page .ql-brand-hero-image img { object-fit:cover; }
.ql-duracarb-page .wp-block-button__link { background:var(--ql-ui-red); border-color:var(--ql-ui-red); color:#fff; }
.ql-duracarb-page .is-style-outline .wp-block-button__link { color:#8f2430; background:#fff; }
.ql-dl-book { display:grid; grid-template-columns:160px minmax(0,1fr); gap:40px; background:#f6f4f4; border:1px solid #e1d4d5; border-left:4px solid var(--ql-ui-red); padding:36px; margin-top:30px; scroll-margin-top:150px; }
.ql-dl-book-image { margin:0; }
.ql-dl-book-image img { display:block; width:100%; height:auto; box-shadow:4px 8px 18px rgba(0,0,0,.1); }
.ql-dl-book-copy { align-self:center; }
.ql-dl-book-copy .ql-kicker { color:var(--ql-ui-red); }
.ql-dl-book-copy h2 { font-size:28px; }
.ql-catalog-renewed .ql-library-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:0; }
.ql-catalog-renewed .ql-library-card { display:grid; grid-template-columns:100px minmax(0,1fr); gap:20px; height:100%; box-sizing:border-box; padding:22px; border:1px solid #d8dfe4; background:#fff; scroll-margin-top:150px; }
.ql-catalog-renewed .ql-library-cover { display:block; margin:0; }
.ql-catalog-renewed .ql-library-cover img { display:block; width:100%; height:auto; box-shadow:3px 5px 12px rgba(0,0,0,.14); }
.ql-catalog-renewed .ql-library-copy h3 { font-size:19px; margin:0 0 12px; }
.ql-catalog-renewed .ql-library-copy .ql-resource-label { font-size:14px; color:#61717d; margin:0 0 10px; }
.ql-catalog-renewed .ql-library-description { font-size:15px; line-height:1.8; margin-bottom:16px; }
.ql-catalog-renewed .ql-library-card .wp-block-button__link { font-size:14px; padding:10px 12px; }
.ql-catalog-renewed .ql-catalog-section { margin-bottom:48px; }
.ql-catalog-chapters { margin-top:18px; font-size:14px; }
.ql-catalog-chapters p { font-size:14px; margin:12px 0; }
.ql-catalog-chapters a { color:#324d63; }
.ql-catalog-chapters summary { cursor:pointer; font-size:14px; line-height:1.8; }
.ql-contact-page-wrap { background:#fff; }
.ql-contact-page-wrap .ql-contact-page-grid { gap:48px; margin-top:48px; }
.ql-contact-details-native { padding:0; }
.ql-contact-page-wrap .ql-contact-field-label { font-size:14px; color:#50575e; margin:24px 0 6px; }
.ql-contact-page-wrap .ql-contact-field-value { font-size:21px; color:#111; border-bottom:1px solid #dbe0e4; padding-bottom:22px; margin-bottom:18px; }
.ql-contact-page-wrap a { color:#111; }
.ql-contact-page-wrap .ql-contact-send { background:#f3f5f6; padding:30px; }
.ql-contact-page-wrap .ql-contact-small, .ql-contact-page-wrap .ql-line-pending { font-size:14px; line-height:1.8; margin-top:20px; }
.ql-contact-page-wrap .ql-line-pending { color:#626d76; border-top:1px solid #d6dde3; padding-top:18px; }
.ql-contact-inquiry-context { border-color:var(--ql-ui-blue); color:#243948; background:#f0f4f7; }
.ql-video-page .ql-video-intro { border-bottom:1px solid #d6dfe5; }
.ql-featured-videos { background:linear-gradient(110deg,#222930,#39444f); }
.ql-machining-card { transition:border-color .18s ease,box-shadow .18s ease; }
.ql-machining-card:hover { border-color:#8ba2b4; box-shadow:0 9px 24px rgba(23,33,43,.07); }
.ql-contact-dock { position:fixed; right:20px; bottom:22px; z-index:30; display:flex; background:#fff; border:1px solid #bcc8d1; box-shadow:0 6px 24px rgba(20,30,40,.13); }
.ql-contact-dock a { display:flex; align-items:center; justify-content:center; min-height:48px; padding:8px 17px; font-size:14px; font-weight:650; color:#171b1f; text-decoration:none; box-sizing:border-box; }
.ql-contact-dock a+a { border-left:1px solid #dde3e7; }
.ql-contact-dock a:last-child { background:#22292e; color:#fff; }
.ql-contact-dock a:hover { background:#eaf0f4; color:#183a52; }
.ql-contact-dock .ql-dock-line { background:#eff8f3; color:#145d35; }
.ql-home .ql-rail-original-photo { border-radius:0; overflow:visible; background:#fff; }
.ql-home .ql-rail-original-photo img { padding:0; object-fit:contain; }
.ql-home .ql-rail-card:hover .ql-rail-original-photo img { transform:none; }

/* Compact company details; reveal the full, uncut QR only on request. */
.ql-commerce-page.ql-contact-page-wrap { padding-top:32px; }
.ql-contact-page-wrap>.ql-wrap { max-width:1120px; }
.ql-contact-page-wrap .ql-editorial-intro { padding-bottom:20px; margin-bottom:0; }
.ql-contact-page-wrap .ql-editorial-intro h1 { font-size:36px; margin-bottom:12px; }
.ql-contact-page-wrap .ql-editorial-intro p { margin-bottom:0; }
.ql-contact-page-wrap .ql-contact-simple-grid { grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); align-items:start; gap:40px; margin-top:26px; }
.ql-contact-details-native h2 { font-size:22px; margin:0 0 12px; color:#111; }
.ql-contact-info-row { display:grid; grid-template-columns:92px minmax(0,1fr); align-items:baseline; gap:12px; border-bottom:1px solid #e1e4e6; padding:14px 0; }
.ql-contact-page-wrap .ql-contact-info-row .ql-contact-field-label { color:#111; font-size:16px; margin:0; }
.ql-contact-page-wrap .ql-contact-info-row .ql-contact-field-value { border:0; padding:0; margin:0; font-size:16px; overflow-wrap:anywhere; }
.ql-contact-page-wrap .ql-contact-line-panel { background:#fff; border:0; border-left:1px solid #e0e3e6; text-align:left; padding:0 0 0 28px; }
.ql-contact-line-panel .ql-kicker { color:#333; margin:0 0 8px; }
.ql-contact-line-panel h2 { font-size:20px; color:#111; margin:0 0 10px; }
.ql-contact-line-panel .ql-line-qr { width:188px; max-width:100%; margin:0 auto 6px; background:#fff; }
.ql-contact-line-panel .ql-line-qr img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; border-radius:0; }
.ql-contact-line-panel .wp-block-buttons { justify-content:flex-start; }
.ql-contact-page-wrap .ql-line-contact-button .wp-block-button__link { color:#fff; background:#202529; border-color:#202529; font-size:15px; padding:10px 20px; }
.ql-contact-page-wrap .ql-contact-line-panel .ql-contact-small { color:#41474d; font-size:15px; margin:0 0 18px; }
.ql-line-popover { position:relative; width:fit-content; margin:16px 0 0; }
.ql-line-popover summary { cursor:pointer; font-size:14px; line-height:1.7; color:#333; padding:5px 0; }
.ql-line-popover summary:focus-visible { outline:2px solid #416c8c; outline-offset:4px; }
.ql-line-qr-popover { position:absolute; z-index:45; left:0; top:100%; width:220px; box-sizing:border-box; padding:12px; background:#fff; border:1px solid #d5dce1; box-shadow:0 8px 22px rgba(20,27,32,.12); }
.ql-contact-page-wrap .ql-line-qr-popover .ql-qr-caption { color:#333; font-size:14px; text-align:center; margin:0; }
.ql-message-section { border-top:1px solid #dce1e5; margin-top:32px; padding-top:26px; }
.ql-message-heading { display:flex; align-items:baseline; gap:28px; flex-wrap:wrap; margin-bottom:12px; }
.ql-message-heading h2 { color:#111; font-size:23px; margin:0; }
.ql-message-heading p { color:#4c5359; margin:0; }
.ql-contact-page-wrap .ql-form-note { font-size:14px; color:#515a61; max-width:900px; margin:12px 0 0; }
.ql-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; }
.ql-form-grid label, .ql-draft-output { display:block; color:#111; font-size:16px; font-weight:600; }
.ql-form-grid label>span:not(.wpcf7-form-control-wrap) { color:#62686e; font-size:14px; font-weight:400; }
.ql-form-grid input, .ql-form-grid select, .ql-form-grid textarea, .ql-draft-output textarea { width:100%; box-sizing:border-box; border:1px solid #bec7ce; border-radius:0; background:#fff; color:#111; padding:9px 12px; font:inherit; font-weight:400; font-size:16px; line-height:1.5; margin-top:6px; }
.ql-form-grid input, .ql-form-grid select { min-height:44px; }
.ql-form-grid textarea, .ql-draft-output textarea { resize:vertical; min-height:112px; }
.ql-form-grid :is(input,select,textarea):focus { outline:2px solid #416c8c; outline-offset:2px; }
.ql-form-wide { grid-column:1/-1; }
.ql-form-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.ql-form-actions button, .ql-live-contact-form .wpcf7-submit { min-height:48px; border:1px solid #22272b; padding:12px 24px; background:#22272b; color:#fff; font:inherit; font-size:16px; font-weight:600; cursor:pointer; }
.ql-form-actions .ql-form-copy { background:#fff; color:#222; border-color:#bec7ce; }
.ql-form-actions button:hover, .ql-live-contact-form .wpcf7-submit:hover { background:#3a444c; color:#fff; }
.ql-form-actions button:disabled { opacity:.5; cursor:not-allowed; }
.ql-form-status { font-size:15px; color:#303b44; margin-top:18px; }
.ql-draft-output[hidden] { display:none; }
.ql-draft-output { margin-top:20px; }
.ql-live-contact-form .ql-form-grid p { margin:0; }
.ql-live-contact-form .ql-form-grid label { margin:0; }
.ql-live-contact-form .wpcf7-not-valid-tip { color:#ac2121; font-size:14px; }
.ql-live-contact-form .ql-form-consent { margin-top:24px; font-size:15px; }
.ql-live-contact-form .wpcf7-acceptance label { display:flex; align-items:start; gap:8px; }
@media(max-width:920px) {
  .ql-contact-page-wrap .ql-contact-simple-grid { grid-template-columns:minmax(0,1fr); }
  .ql-contact-page-wrap .ql-contact-line-panel { border:0; padding:0; }
}
@media(max-width:782px) {
  .ql-contact-page-wrap .ql-editorial-intro h1 { font-size:30px; }
  .ql-contact-page-wrap .ql-contact-simple-grid { gap:22px; }
  .ql-contact-info-row { grid-template-columns:76px minmax(0,1fr); gap:10px; padding:12px 0; }
  .ql-contact-page-wrap .ql-contact-info-row .ql-contact-field-value { font-size:16px; }
  .ql-contact-page-wrap .ql-contact-line-panel { border:0; padding:0; }
  .ql-contact-line-panel .ql-line-qr { width:188px; }
  .ql-message-section { margin-top:28px; padding-top:24px; }
  .ql-message-heading { gap:10px; }
  .ql-form-grid { grid-template-columns:1fr; gap:18px; }
}
.ql-footer { padding-bottom:96px; }
.ql-footer .ql-prototype-links { font-size:14px; color:#b5bec4; }
.ql-header .ql-nav { gap:19px; }
.ql-header .ql-nav a { white-space:nowrap; }
.ql-header .ql-social-links { gap:8px; }
.ql-wp-nav .wp-block-navigation__container { gap:18px; }
.ql-resource-page .ql-wrap { max-width:1440px; }
@media (max-width:1250px) {
  .ql-header .ql-mobile-toggle { display:block; }
  .ql-header .ql-nav { display:none; position:absolute; left:0; right:0; top:100%; padding:20px 30px; background:#fff; color:#202a31; border-bottom:1px solid #ccd5dc; box-shadow:0 14px 24px rgba(20,30,40,.08); }
  .ql-header .ql-nav.is-open { display:flex; align-items:stretch; flex-direction:column; gap:0; max-height:calc(100dvh - var(--ql-header-height,100px) - 60px); overflow:auto; }
  .ql-header .ql-nav>a { padding:13px 6px; min-height:44px; }
  .ql-header .ql-nav .ql-nav-cta { margin:10px 0; width:fit-content; padding:11px 18px; }
  .ql-header .ql-nav .ql-social-links { margin:12px 0; }
  .ql-catalog-renewed .ql-library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:1000px) {
  .ql-refined .ql-process-hero-stage { padding:30px; }
  .ql-refined .ql-process-hero { gap:26px; }
  .ql-family-grid { gap:16px; }
  .ql-family-copy { padding:22px 18px; }
  .ql-range-copy { padding:24px 20px; }
  .ql-resource-card { gap:20px; grid-template-columns:80px minmax(0,1fr); padding:24px; }
  .ql-brand-panels { gap:22px; }
}
@media (max-width:782px) {
  .ql-commerce-page { padding:28px 0 50px; }
  .ql-commerce-page>.ql-wrap, .ql-refined>.ql-wrap { padding-inline:22px; }
  .ql-editorial-intro { padding-top:0; margin-bottom:28px; }
  .ql-refined .ql-process-hero, .ql-family-grid, .ql-brand-panels, .ql-resource-cards, .ql-inquiry-paths, .ql-process-applications, .ql-tooling-feature, .ql-brand-hero, .ql-about-feature, .ql-refined .ql-process-selection { grid-template-columns:minmax(0,1fr); }
  .ql-refined .ql-process-hero-stage { padding:26px 22px; margin-inline:-6px; }
  .ql-refined .ql-process-image { aspect-ratio:440/281; }
  .ql-refined .ql-process-image img { max-height:none; }
  .ql-refined .ql-process-hero .wp-block-buttons { gap:10px; }
  .ql-refined .ql-process-section { margin-top:38px; }
  .ql-family-image { height:210px; }
  .ql-family-copy { padding:24px; }
  .ql-family-card .ql-family-desc { margin-bottom:22px; }
  .ql-refined .ql-process-checks { padding:24px; }
  .ql-refined .ql-process-selection { gap:20px; }
  .ql-refined .ql-process-checks h2 { font-size:23px; }
  .ql-range-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .ql-range-grid>.wp-block-column, .ql-range-grid>.wp-block-column:nth-child(-n+2) { grid-column:span 1; }
  .ql-range-grid>.wp-block-column:last-child { grid-column:span 2; }
  .ql-range-card h3 { font-size:22px; }
  .ql-range-image img { aspect-ratio:2/1; }
  .ql-home .ql-category-rail { grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; }
  .ql-home .ql-rail-card { padding:12px 5px; }
  .ql-home .ql-rail-title { font-size:14px; }
  .ql-home .ql-rail-image { width:64px; height:64px; max-width:100%; margin-inline:auto; }
  .ql-home .ql-rail-image img { width:100%; height:100%; }
  .ql-brand-panel-copy { padding:26px; }
  .ql-inquiry-block { margin-top:38px; }
  .ql-inquiry-path { padding:28px 24px; }
  .ql-inquiry-path h3 { font-size:24px; }
  .ql-resource-card { grid-template-columns:84px minmax(0,1fr); padding:24px; }
  .ql-brand-hero, .ql-about-feature { gap:26px; margin-bottom:32px; }
  .ql-brand-hero-image img, .ql-about-action-image img { height:240px; }
  .ql-catalog-renewed .ql-library-grid { grid-template-columns:minmax(0,1fr); }
  .ql-catalog-renewed .ql-library-card { grid-template-columns:105px minmax(0,1fr); padding:24px; }
  .ql-dl-book { grid-template-columns:100px minmax(0,1fr); gap:24px; padding:26px 22px; }
  .ql-dl-book-copy h2 { font-size:24px; }
  .ql-contact-page-wrap .ql-contact-page-grid { gap:22px; }
  .ql-contact-page-wrap .ql-contact-field-value { font-size:19px; }
  .ql-contact-dock { left:12px; right:12px; bottom:calc(10px + env(safe-area-inset-bottom)); }
  .ql-contact-dock a { flex:1; min-height:50px; padding:10px; font-size:15px; }
  .ql-footer { padding-bottom:108px; }
  .ql-footer-inner { gap:28px; }
}
@media (max-width:480px) {
  .ql-range-grid { grid-template-columns:minmax(0,1fr); }
  .ql-range-grid>.wp-block-column:last-child { grid-column:span 1; }
  .ql-range-image img { aspect-ratio:2.6/1; }
  .ql-home .ql-category-rail { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .ql-home .ql-rail-card { min-height:0; }
  .ql-dl-book { grid-template-columns:minmax(0,1fr); }
  .ql-dl-book-image { width:112px; }
  .ql-resource-card { grid-template-columns:70px minmax(0,1fr); gap:18px; padding:22px 18px; }
  .ql-catalog-renewed .ql-library-card { grid-template-columns:84px minmax(0,1fr); padding:20px; }
}
@media (prefers-reduced-motion:reduce) {
  .ql-family-card, .ql-range-card, .ql-machining-card { transition:none; }
}
