/*
Theme Name: Series Motion
Theme URI: https://www.seriesmotionindustry.com/
Author: Series Motion Industry
Description: Lightweight custom B2B theme for Series Motion Industry.
Version: 0.6.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: seriesmotion
*/

:root {
  --sm-blue:#22228f;
  --sm-blue-2:#2e52a1;
  --sm-ink:#171717;
  --sm-muted:#8c8c91;
  --sm-line:#e3e3e6;
  --sm-bg:#f5f5f7;
  --sm-white:#fff;
  --sm-content:1220px;
  --sm-shadow:0 5px 18px rgba(19,23,51,.1);
}
* { box-sizing:border-box; }
html,body { overflow-x:clip; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--sm-ink); background:#fff; font-family:Arial,"Helvetica Neue",sans-serif; font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; }
body.nav-open,body.search-open { overflow:hidden; }
a { color:var(--sm-blue); }
button,input,textarea,select { font:inherit; }
img { display:block; max-width:100%; height:auto; }
h1,h2,h3,p { margin-top:0; }
.sm-container { width:min(calc(100% - 64px),var(--sm-content)); margin-inline:auto; }
.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.screen-reader-text:focus { top:10px; left:10px; z-index:10000; width:auto; height:auto; padding:12px 16px; clip:auto; background:#fff; }

/* Header */
.site-header { position:sticky; top:0; z-index:100; height:80px; background:#fff; box-shadow:0 2px 10px rgba(20,24,47,.08); }
.site-header.is-scrolled { box-shadow:0 6px 20px rgba(20,24,47,.13); }
.site-header__inner { height:80px; display:grid; grid-template-columns:240px minmax(0,1fr) 80px; align-items:center; }
.site-brand { width:200px; text-decoration:none; }
.site-brand img { width:200px; height:auto; }
.site-nav { justify-self:end; }
.site-nav ul { margin:0; padding:0; list-style:none; }
.site-nav__list { display:flex; align-items:center; }
.site-nav__list>li { position:relative; }
.site-nav__list>li>a { display:block; padding:29px 19px 27px; color:#222; font-size:18px; line-height:24px; text-decoration:none; }
.site-nav__list>li>a:hover,.site-nav__list>li>a:focus-visible { color:var(--sm-blue); }
.submenu-toggle { display:none; }
.sub-menu { position:absolute; top:100%; left:0; min-width:220px; padding:14px!important; visibility:hidden; border-top:3px solid var(--sm-blue); background:#fff; box-shadow:var(--sm-shadow); opacity:0; transform:translateY(8px); transition:.2s ease; }
.sub-menu a { display:block; padding:9px 12px; color:#333; text-decoration:none; }
.sub-menu a:hover { color:var(--sm-blue); background:#f5f5f7; }
.menu-item-has-children:hover>.sub-menu,.menu-item-has-children:focus-within>.sub-menu { visibility:visible; opacity:1; transform:none; }
.sm-mega-trigger { position:static!important; }
.sm-mega-menu { position:absolute; top:100%; right:0; left:0; display:grid; grid-template-columns:280px 1fr; gap:38px; padding:34px max(32px,calc((100vw - var(--sm-content))/2)); visibility:hidden; border-top:3px solid var(--sm-blue); background:#fff; box-shadow:var(--sm-shadow); opacity:0; transform:translateY(8px); transition:.2s ease; }
.sm-mega-trigger:hover>.sm-mega-menu,.sm-mega-trigger:focus-within>.sm-mega-menu { visibility:visible; opacity:1; transform:none; }
.sm-mega-menu__intro { padding-right:30px; border-right:1px solid var(--sm-line); }
.sm-mega-menu__intro strong { display:block; margin:8px 0 20px; font-size:1.45rem; line-height:1.25; }
.sm-mega-menu__intro a { font-size:.9rem; text-decoration:none; }
.sm-mega-menu__grid { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 30px; }
.sm-mega-menu__grid>li>a { color:#222; font-weight:600; text-decoration:none; }
.sm-mega-menu__grid>li>ul { margin-top:5px; }
.sm-mega-menu__grid>li>ul a { display:block; padding:2px 0; color:#888; font-size:.82rem; text-decoration:none; }
.header-search { position:relative; width:80px; height:80px; display:grid; place-items:center; padding:0; border:0; background:var(--sm-blue); cursor:pointer; }
.header-search span { width:20px; height:20px; border:1.5px solid #fff; border-radius:50%; }
.header-search span::after { position:absolute; width:9px; height:1.5px; margin:17px 0 0 -1px; content:""; background:#fff; transform:rotate(48deg); transform-origin:left; }
.header-search:focus-visible { z-index:1; outline:3px solid #f1a23a; outline-offset:-4px; }
.nav-toggle { display:none; width:44px; height:44px; padding:10px; border:0; background:transparent; cursor:pointer; }
.nav-toggle>span { display:block; width:23px; height:2px; margin:5px auto; background:#222; transition:.2s ease; }

/* Global search */
.site-search { position:fixed; inset:0; z-index:500; }
.site-search__backdrop { position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:rgba(11,14,35,.66); opacity:0; cursor:pointer; transition:opacity .22s ease; }
.site-search__panel { position:relative; padding:52px 0 46px; background:#fff; box-shadow:0 24px 60px rgba(8,10,31,.25); opacity:0; transform:translateY(-18px); transition:opacity .22s ease,transform .22s ease; }
.site-search.is-open .site-search__backdrop,.site-search.is-open .site-search__panel { opacity:1; transform:none; }
.site-search__head { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; margin-bottom:35px; }
.site-search__head span,.site-search__quick>span { display:block; margin-bottom:7px; color:var(--sm-blue); font-size:12px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.site-search__head h2 { margin:0; font-size:32px; font-weight:500; line-height:1.2; }
.site-search__close { position:relative; flex:0 0 44px; width:44px; height:44px; padding:0; border:1px solid var(--sm-line); background:#fff; cursor:pointer; }
.site-search__close span::before,.site-search__close span::after { position:absolute; top:21px; left:12px; width:20px; height:1px; content:""; background:#222; transform:rotate(45deg); }
.site-search__close span::after { transform:rotate(-45deg); }
.site-search__close:hover,.site-search__close:focus-visible { border-color:var(--sm-blue); background:#f6f6fb; outline:0; }
.site-search__form { display:grid; grid-template-columns:minmax(0,1fr) auto; border-bottom:2px solid #222; }
.site-search__form input { min-width:0; padding:18px 0; border:0; background:transparent; color:#171717; font-size:25px; outline:0; }
.site-search__form input::placeholder { color:#aaaab0; }
.site-search__form button { display:flex; align-items:center; gap:28px; padding:0 24px; border:0; color:#fff; background:var(--sm-blue); font-weight:700; cursor:pointer; }
.site-search__form button:hover,.site-search__form button:focus-visible { background:#17177a; outline:3px solid rgba(34,34,143,.22); outline-offset:2px; }
.site-search__quick { display:flex; gap:28px; align-items:flex-start; margin-top:28px; }
.site-search__quick>span { flex:0 0 auto; margin:4px 0 0; }
.site-search__quick>div { display:flex; gap:8px; flex-wrap:wrap; }
.site-search__quick a { padding:7px 12px; border:1px solid var(--sm-line); color:#555; font-size:12px; text-decoration:none; }
.site-search__quick a:hover,.site-search__quick a:focus-visible { color:var(--sm-blue); border-color:var(--sm-blue); background:#f7f7fc; outline:0; }

/* Shared */
.sm-section { padding:80px 0; }
.sm-button { display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:0 28px; min-height:46px; color:#fff; background:var(--sm-blue); font-size:14px; text-decoration:none; }
.sm-button--round { min-height:45px; border-radius:24px; }
.sm-text-link { display:inline-flex; gap:35px; align-items:center; padding-bottom:9px; border-bottom:1px solid var(--sm-blue); color:var(--sm-blue); text-decoration:none; }
.sm-breadcrumbs { padding:13px 0; background:#f7f7f8; color:#888; font-size:.82rem; }
.sm-breadcrumbs a { color:var(--sm-blue); text-decoration:none; }
.center-heading { margin-bottom:48px; text-align:center; }
.center-heading span { color:var(--sm-blue); font-size:18px; }
.center-heading h2 { margin:0; font-size:44px; line-height:1.15; }

/* Home hero */
.home-hero { position:relative; height:450px; overflow:hidden; background:#eef2f8; }
.home-hero__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.home-hero__inner { position:relative; height:100%; display:flex; align-items:center; }
.home-hero__content { width:50%; }
.home-hero h1 { margin-bottom:3px; color:var(--sm-blue); font-size:36px; font-weight:500; line-height:1.2; }
.home-hero p { margin-bottom:34px; color:#686868; font-size:24px; }
.home-hero__dots { position:absolute; right:20px; bottom:34px; display:flex; gap:15px; align-items:center; }
.home-hero__dots i { width:9px; height:9px; border-radius:50%; background:#fff; }
.home-hero__dots i.is-active { width:27px; border-radius:8px; background:var(--sm-blue); }

/* Products */
.home-products { padding-top:78px; padding-bottom:72px; }
.product-intro { display:grid; grid-template-columns:1fr 1fr; gap:88px; margin-bottom:56px; }
.product-intro h2 { max-width:520px; margin-bottom:28px; font-size:48px; line-height:1.2; }
.product-intro p { margin-bottom:0; color:#a1a1a5; font-size:16px; line-height:1.8; }
.product-intro .product-intro__lead { margin-bottom:16px; color:#242424; font-size:25px; line-height:1.25; }
.category-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:30px; }
.category-card { min-width:0; border:1px solid var(--sm-line); background:#fff; }
.category-card a { display:block; color:#fff; text-align:center; text-decoration:none; }
.category-card img { width:100%; aspect-ratio:1.48/1; object-fit:contain; background:#fff; transition:transform .25s ease; }
.category-card span { min-height:48px; display:flex; align-items:center; justify-content:center; padding:8px; overflow:hidden; background:var(--sm-blue); font-size:15px; line-height:1.15; }
.category-card a:hover img { transform:scale(1.035); }

/* Configure and inquiry */
.configure-section { position:relative; height:470px; overflow:hidden; }
.configure-section__image { position:absolute; inset:0; }
.configure-section__image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.configure-section__inner { position:relative; height:100%; display:flex; align-items:center; justify-content:flex-end; }
.configure-section__panel { width:550px; padding:65px 50px; color:#fff; background:var(--sm-blue); }
.configure-section__panel h2 { max-width:420px; margin-bottom:20px; font-size:40px; line-height:1.05; text-transform:uppercase; }
.configure-section__panel p { max-width:430px; margin-bottom:28px; }
.configure-links { display:grid; gap:14px; }
.configure-links a { min-height:46px; display:flex; align-items:center; justify-content:center; padding:10px; color:var(--sm-blue); background:#fff; text-decoration:none; }
.inquiry-strip { padding:42px 0; background:#fff; }
.inquiry-strip .sm-container { position:relative; height:72px; display:grid; place-items:center; background:var(--sm-blue); }
.inquiry-strip .sm-container::before,.inquiry-strip .sm-container::after { position:absolute; top:0; bottom:0; width:110px; content:""; background:#9b9b9b; }
.inquiry-strip .sm-container::before { right:100%; }
.inquiry-strip .sm-container::after { left:100%; }
.inquiry-strip a { color:#fff; text-decoration:none; }

/* Applications */
.applications-section { padding-top:12px; background:#f4f4f6; }
.application-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.application-card { min-height:350px; display:flex; flex-direction:column; padding:62px 25px 38px; color:#fff; background:var(--sm-blue); }
.application-card--2 { background:#31539d; }
.application-card--3 { background:#343434; }
.application-card--4 { background:#77787c; }
.application-card h3 { margin-bottom:18px; overflow:hidden; font-size:27px; font-weight:400; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
.application-card p { display:-webkit-box; margin-bottom:30px; overflow:hidden; font-size:16px; line-height:1.7; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.application-card a { margin-top:auto; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.45); color:#fff; font-size:18px; text-decoration:none; }
.application-card a span { float:right; }

/* Articles */
.technique-section { background:#fff; }
.article-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.article-card { background:#f4f4f4; }
.article-card a { display:block; color:#333; text-decoration:none; }
.article-card img { width:100%; aspect-ratio:1.65/1; object-fit:cover; }
.article-card div { padding:30px 20px 34px; }
.article-card h3 { margin-bottom:14px; overflow:hidden; font-size:18px; font-weight:400; text-overflow:ellipsis; white-space:nowrap; }
.article-card p { display:-webkit-box; margin:0; overflow:hidden; color:#999; font-size:14px; line-height:1.7; -webkit-box-orient:vertical; -webkit-line-clamp:2; }

/* Footer */
.site-footer { color:#5d5d62; background:#ededee; }
.site-footer__grid { display:grid; grid-template-columns:1fr .55fr 1.25fr; gap:60px; padding-top:62px; padding-bottom:55px; }
.site-footer__grid>div+div { padding-left:55px; border-left:1px dashed #c6c6c9; }
.site-footer h2 { margin-bottom:14px; color:#171717; font-size:22px; font-weight:400; }
.site-footer__brand p { font-size:14px; }
.footer-inquiry { display:inline-flex; margin-top:10px; color:var(--sm-blue); text-decoration:none; }
.footer-links { margin:0; padding:0; list-style:none; }
.footer-links a { color:#555; font-size:14px; text-decoration:none; }
.site-footer__contact p,.site-footer__contact address { display:grid; grid-template-columns:125px 1fr; gap:8px; margin:0 0 12px; font-size:14px; font-style:normal; }
.site-footer__contact span { color:#888; }
.site-footer__contact a { color:#5d5d62; text-decoration:none; }
.site-footer__bottom { border-top:1px solid #d8d8da; }
.site-footer__bottom .sm-container { min-height:54px; display:flex; align-items:center; justify-content:space-between; }
.site-footer__bottom p { margin:0; font-size:12px; }

/* Conversion tools */
.contact-rail { position:fixed; top:50%; right:18px; z-index:90; display:grid; gap:2px; transform:translateY(-50%); filter:drop-shadow(0 8px 18px rgba(14,17,45,.14)); }
.contact-rail>a,.contact-rail>button { position:relative; width:50px; height:50px; display:grid; place-items:center; padding:0; border:0; color:#fff; background:#2f3036; text-decoration:none; cursor:pointer; transition:background-color .2s ease,transform .2s ease; }
.contact-rail>a:hover,.contact-rail>a:focus-visible,.contact-rail>button:hover,.contact-rail>button:focus-visible { z-index:2; background:var(--sm-blue); outline:2px solid #fff; outline-offset:-4px; transform:translateX(-3px); }
.contact-rail__inquiry { background:var(--sm-blue)!important; }
.contact-rail svg { width:20px; height:20px; fill:currentColor; }
.contact-rail>a>span { position:absolute; top:0; right:calc(100% + 8px); min-width:92px; height:50px; display:flex; align-items:center; justify-content:center; padding:0 13px; visibility:hidden; color:#fff; background:#202126; font-size:12px; font-weight:700; white-space:nowrap; opacity:0; transform:translateX(6px); transition:.2s ease; }
.contact-rail>a:hover>span,.contact-rail>a:focus-visible>span { visibility:visible; opacity:1; transform:none; }
.back-to-top { visibility:hidden; opacity:0; pointer-events:none; }
.back-to-top.is-visible { visibility:visible; opacity:1; pointer-events:auto; }

/* Search and error states */
.search-results-page { padding:65px 0 90px; background:#f5f5f7; }
.search-results-form { max-width:840px; margin-bottom:42px; }
.search-results-form>label { display:block; margin-bottom:9px; color:#555; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.search-results-form>div { display:grid; grid-template-columns:minmax(0,1fr) auto; }
.search-results-form input { min-width:0; padding:14px 16px; border:1px solid #d5d5da; border-right:0; background:#fff; outline:0; }
.search-results-form input:focus { border-color:var(--sm-blue); box-shadow:inset 0 0 0 1px var(--sm-blue); }
.search-results-form button { border:0; cursor:pointer; }
.search-results-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.search-result-card { min-width:0; overflow:hidden; border:1px solid var(--sm-line); background:#fff; }
.search-result-card>a { height:100%; display:flex; flex-direction:column; color:inherit; text-decoration:none; }
.search-result-card__media { overflow:hidden; background:#fafafa; }
.search-result-card__media img { width:100%; aspect-ratio:1.45/1; object-fit:contain; transition:transform .25s ease; }
.search-result-card:hover .search-result-card__media img { transform:scale(1.035); }
.search-result-card__body { flex:1; display:flex; flex-direction:column; padding:24px; }
.search-result-card__body>span { margin-bottom:8px; color:var(--sm-blue); font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.search-result-card h2 { margin-bottom:10px; font-size:20px; font-weight:500; line-height:1.3; }
.search-result-card p { margin-bottom:18px; color:#7c7c82; font-size:14px; }
.search-result-card strong { margin-top:auto; color:var(--sm-blue); font-size:13px; }
.search-empty { padding:65px 40px; border:1px solid var(--sm-line); background:#fff; text-align:center; }
.search-empty>span { display:block; color:#d9d9df; font-size:76px; font-weight:700; line-height:1; }
.search-empty h2 { margin:10px 0; font-size:28px; font-weight:500; }
.search-empty p { max-width:620px; margin:0 auto 28px; color:#777; }
.search-empty>div,.not-found-page__actions { display:flex; gap:28px; align-items:center; justify-content:center; flex-wrap:wrap; }
.not-found-page { min-height:620px; display:grid; align-items:center; padding:80px 0; background:linear-gradient(120deg,#f4f5f9 0,#fff 58%,#ededf7 100%); text-align:center; }
.not-found-page .sm-container>span { display:block; color:rgba(34,34,143,.12); font-size:140px; font-weight:700; line-height:.8; }
.not-found-page .sm-eyebrow { margin:26px 0 8px; color:var(--sm-blue); font-size:13px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.not-found-page h1 { margin-bottom:12px; font-size:44px; font-weight:500; }
.not-found-page .sm-container>p:not(.sm-eyebrow) { color:#777; }
.not-found-page .search-results-form { margin:28px auto 26px; }

/* Existing inner content baseline */
.sm-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.sm-card { border:1px solid var(--sm-line); background:#fff; }
.sm-card__body { padding:24px; }
.sm-card a { color:inherit; text-decoration:none; }
.sm-single,.sm-archive { padding:70px 0; }
.sm-product-layout { display:grid; grid-template-columns:1fr 1fr; gap:55px; }
.entry-content img { max-width:100%; }

/* Phase 5 product catalog */
.product-page-head { position:relative; min-height:270px; display:grid; align-items:center; overflow:hidden; color:#fff; background:#24278a; }
.product-page-head>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; opacity:.72; }
.product-page-head::after { position:absolute; inset:0; content:""; background:linear-gradient(90deg,rgba(18,24,86,.82),rgba(29,44,136,.22) 64%,rgba(29,44,136,.06)); }
.product-page-head .sm-container { position:relative; z-index:1; }
.product-page-head h1,.product-page-head__title { margin:0 0 13px; font-size:44px; font-weight:500; line-height:1.1; }
.product-page-head p { display:flex; gap:10px; align-items:center; margin:0; font-size:13px; }
.product-page-head p a { color:#fff; text-decoration:none; }
.product-page-head p span { color:rgba(255,255,255,.6); }
.product-page-head .sm-container>div { max-width:650px; margin-top:16px; color:rgba(255,255,255,.78); font-size:14px; }
.product-section-title { margin-bottom:34px; }
.product-section-title span,.product-catalog-intro span,.product-category-content__head>span { display:block; margin-bottom:8px; color:var(--sm-blue); font-size:13px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.product-section-title h2,.product-catalog-intro h2,.product-category-content__head h2 { margin:0; font-size:36px; font-weight:500; line-height:1.18; }

.product-catalog-overview { padding:76px 0 82px; background:#fff; }
.product-catalog-intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; align-items:end; margin-bottom:42px; }
.product-catalog-intro p { max-width:650px; margin:0; color:#77777d; line-height:1.8; }
.product-family-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.product-family-grid article { min-width:0; border:1px solid var(--sm-line); background:#fff; transition:box-shadow .22s ease,transform .22s ease; }
.product-family-grid article:hover { box-shadow:var(--sm-shadow); transform:translateY(-3px); }
.product-family-grid a { display:block; color:inherit; text-decoration:none; }
.product-family-grid img { width:100%; aspect-ratio:1.5/1; object-fit:contain; background:#fafafa; }
.product-family-grid article div { padding:22px 22px 24px; }
.product-family-grid h2 { margin-bottom:9px; font-size:20px; font-weight:500; }
.product-family-grid p { min-height:44px; display:-webkit-box; margin-bottom:18px; overflow:hidden; color:#888; font-size:14px; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.product-family-grid span { color:var(--sm-blue); font-size:13px; font-weight:700; }
.product-featured-list { padding:72px 0 90px; background:var(--sm-bg); }
.product-list-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.product-list-card { min-width:0; overflow:hidden; border:1px solid var(--sm-line); background:#fff; }
.product-list-card>a { height:100%; display:flex; flex-direction:column; color:inherit; text-decoration:none; }
.product-list-card__media { overflow:hidden; background:#fafafa; }
.product-list-card__media img { width:100%; aspect-ratio:1.36/1; object-fit:contain; transition:transform .25s ease; }
.product-list-card:hover .product-list-card__media img { transform:scale(1.035); }
.product-list-card__body { flex:1; display:flex; flex-direction:column; padding:24px 24px 27px; }
.product-list-card__body>span { margin-bottom:9px; color:var(--sm-blue); font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.product-list-card h2 { margin-bottom:11px; font-size:20px; font-weight:500; line-height:1.25; }
.product-list-card p { display:-webkit-box; margin-bottom:20px; overflow:hidden; color:#85858a; font-size:14px; line-height:1.7; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.product-list-card strong { margin-top:auto; color:var(--sm-blue); font-size:13px; }
.navigation.pagination { margin-top:36px; }
.nav-links { display:flex; gap:8px; }
.nav-links .page-numbers { min-width:38px; min-height:38px; display:grid; place-items:center; padding:4px 9px; border:1px solid var(--sm-line); color:#555; text-decoration:none; }
.nav-links .current { color:#fff; border-color:var(--sm-blue); background:var(--sm-blue); }

.product-category-layout,.product-detail { padding:66px 0 90px; background:#f5f5f6; }
.product-category-layout__grid,.product-detail-shell { display:grid; grid-template-columns:245px minmax(0,1fr); gap:40px; align-items:start; }
.product-sidebar { position:sticky; top:105px; min-width:0; }
.product-sidebar>h2 { margin:0; padding:17px 20px; color:#fff; background:var(--sm-blue); font-size:20px; font-weight:500; }
.product-sidebar ul { margin:0; padding:0; list-style:none; border:1px solid var(--sm-line); border-top:0; background:#fff; }
.product-sidebar li+li { border-top:1px solid #ededee; }
.product-sidebar li a { display:flex; gap:11px; align-items:center; padding:12px 15px; color:#555; font-size:13px; line-height:1.25; text-decoration:none; }
.product-sidebar li a span { color:#b5b5bb; font-size:7px; }
.product-sidebar li.is-current a,.product-sidebar li a:hover { color:var(--sm-blue); background:#f4f4fb; }
.product-sidebar li.is-current a span { color:var(--sm-blue); }
.product-sidebar__contact { margin-top:24px; padding:20px; color:#fff; background:linear-gradient(150deg,#343ba0,#20227d); }
.product-sidebar__contact h3 { margin-bottom:18px; font-size:21px; font-weight:500; }
.product-sidebar__contact p { margin-bottom:14px; color:rgba(255,255,255,.65); font-size:11px; text-transform:uppercase; }
.product-sidebar__contact a { display:block; margin-top:3px; color:#fff; font-size:13px; text-transform:none; text-decoration:none; word-break:break-word; }
.product-category-content { min-width:0; padding:38px; background:#fff; }
.product-category-content__head { margin-bottom:34px; padding-bottom:27px; border-bottom:1px solid var(--sm-line); }
.product-category-content__head p { max-width:720px; margin:13px 0 0; color:#7d7d82; }
.product-list-grid--category { grid-template-columns:repeat(2,minmax(0,1fr)); }
.product-empty { padding:55px 30px; text-align:center; background:#f7f7f8; }
.product-empty h3 { margin-bottom:10px; font-size:24px; font-weight:500; }
.product-empty p { color:#777; }

.product-detail-main { min-width:0; }
.product-summary { display:grid; grid-template-columns:1.08fr .92fr; min-height:455px; background:#fff; box-shadow:0 4px 18px rgba(20,24,47,.06); }
.product-summary__image { display:grid; place-items:center; min-width:0; padding:34px; background:#fafafa; }
.product-summary__image img { width:100%; max-height:360px; object-fit:contain; }
.product-summary__content { display:flex; flex-direction:column; justify-content:center; padding:42px 42px 42px 36px; }
.product-kicker { align-self:flex-start; margin-bottom:11px; color:var(--sm-blue); font-size:12px; font-weight:700; letter-spacing:.06em; text-decoration:none; text-transform:uppercase; }
.product-summary h1 { margin-bottom:12px; font-size:34px; font-weight:500; line-height:1.15; }
.product-model { margin-bottom:19px; color:#7c7c81; font-size:13px; }
.product-model strong { margin-left:8px; color:var(--sm-blue); font-size:16px; }
.product-summary__description { margin-bottom:22px; color:#727277; font-size:14px; line-height:1.75; }
.product-summary dl { margin:0 0 28px; }
.product-summary dl div { display:grid; grid-template-columns:120px 1fr; gap:10px; padding:7px 0; border-bottom:1px solid #eee; font-size:12px; }
.product-summary dt { color:#999; }
.product-summary dd { margin:0; color:#444; }
.product-summary__actions { display:flex; gap:21px; align-items:center; flex-wrap:wrap; }
.product-download-link { color:var(--sm-blue); font-size:13px; text-decoration:none; }
.product-detail-nav { position:sticky; top:80px; z-index:30; display:flex; margin:24px 0; padding:0 24px; border:1px solid var(--sm-line); background:#fff; box-shadow:0 3px 10px rgba(20,24,47,.05); }
.product-detail-nav a { padding:17px 20px; color:#555; font-size:13px; font-weight:700; text-decoration:none; }
.product-detail-nav a:hover { color:var(--sm-blue); }
.product-content-section { margin-top:24px; padding:45px 42px 48px; scroll-margin-top:155px; background:#fff; }
.product-content-section--muted { background:#ececef; }
.product-overview-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:55px; }
.product-richtext { color:#66666b; line-height:1.8; }
.product-richtext p:last-child { margin-bottom:0; }
.product-overview-grid h3 { margin:0 0 13px; font-size:17px; font-weight:500; }
.product-overview-grid h3:not(:first-child) { margin-top:26px; }
.product-overview-grid ul { margin:0; padding:0; list-style:none; }
.product-overview-grid li { position:relative; padding:6px 0 6px 19px; color:#666; font-size:14px; }
.product-overview-grid li::before { position:absolute; top:14px; left:0; width:7px; height:7px; border:2px solid var(--sm-blue); border-radius:50%; content:""; }
.product-spec-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.product-spec-cards>section { min-width:0; padding:26px; background:#fff; }
.product-spec-cards h3 { margin-bottom:18px; color:var(--sm-blue); font-size:18px; font-weight:500; }
.product-spec-cards dl { margin:0; }
.product-spec-cards dl div { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:10px 0; border-top:1px solid #ededee; font-size:13px; }
.product-spec-cards dt { color:#777; }
.product-spec-cards dd { margin:0; color:#242424; font-weight:600; text-align:right; }
.product-spec-cards small { color:#888; font-weight:400; }
.product-drawing-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.product-drawing-grid a { min-height:245px; display:grid; place-items:center; overflow:hidden; border:1px solid var(--sm-line); background:#fafafa; }
.product-drawing-grid img { width:100%; max-height:430px; object-fit:contain; }
.product-source-note { margin:18px 0 0; color:#929297; font-size:12px; }
.product-model-group+ .product-model-group { margin-top:34px; }
.product-model-group>h3 { margin-bottom:14px; font-size:19px; font-weight:500; }
.product-table-wrap { width:100%; overflow-x:auto; border:1px solid var(--sm-line); -webkit-overflow-scrolling:touch; }
.product-table-wrap table { width:100%; min-width:850px; border-collapse:collapse; background:#fff; font-size:12px; white-space:nowrap; }
.product-table-wrap th,.product-table-wrap td { padding:11px 12px; border-right:1px solid #e7e7e9; border-bottom:1px solid #e7e7e9; text-align:center; }
.product-table-wrap thead th { color:#fff; background:var(--sm-blue); font-weight:600; }
.product-table-wrap thead small { display:block; color:rgba(255,255,255,.7); font-size:9px; font-weight:400; }
.product-table-wrap tbody th { position:sticky; left:0; z-index:2; color:var(--sm-blue); background:#f6f6fa; text-align:left; }
.product-table-wrap tbody tr:hover td,.product-table-wrap tbody tr:hover th { background:#f0f0f8; }
.product-download-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.product-download-grid>a { display:grid; grid-template-columns:42px 1fr; gap:3px 13px; padding:20px; border:1px solid var(--sm-line); color:inherit; text-decoration:none; }
.product-download-grid>a>span { grid-row:1/3; display:grid; place-items:center; color:#fff; background:var(--sm-blue); font-size:9px; font-style:normal; }
.product-download-grid strong { font-size:13px; line-height:1.3; }
.product-download-grid em { color:#888; font-size:11px; font-style:normal; }
.product-customization { display:flex; gap:30px; align-items:center; justify-content:space-between; margin-top:28px; padding:28px 30px; color:#fff; background:linear-gradient(100deg,#22228f,#31539d); }
.product-customization span { color:rgba(255,255,255,.65); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.product-customization h3 { margin:4px 0 7px; font-size:22px; font-weight:500; }
.product-customization p { max-width:570px; margin:0; color:rgba(255,255,255,.75); font-size:13px; }
.product-customization .sm-button { flex:0 0 auto; color:var(--sm-blue); background:#fff; }

/* Phase 6 content, contact and inquiries */
.inner-page-head { position:relative; min-height:310px; display:grid; align-items:center; overflow:hidden; color:#fff; background:#24278a; }
.inner-page-head>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.62; }
.inner-page-head::after { position:absolute; inset:0; content:""; background:linear-gradient(90deg,rgba(21,26,91,.88),rgba(35,39,134,.35) 68%,rgba(35,39,134,.12)); }
.inner-page-head .sm-container { position:relative; z-index:1; }
.inner-page-head span { display:block; margin-bottom:10px; color:rgba(255,255,255,.7); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.inner-page-head h1 { max-width:850px; margin-bottom:15px; font-size:46px; font-weight:500; line-height:1.1; }
.inner-page-head p { max-width:720px; margin:0; color:rgba(255,255,255,.8); }
.content-archive { padding:76px 0 92px; }
.archive-intro { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:end; margin-bottom:43px; }
.archive-intro>div>span,.company-profile__intro span,.company-profile__strength span,.history-intro span,.contact-overview__intro>span,.contact-form-section__head>span { display:block; margin-bottom:8px; color:var(--sm-blue); font-size:12px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.archive-intro h2,.company-profile__intro h2,.company-profile__strength h2,.history-intro h2,.contact-overview__intro h2,.contact-form-section__head h2 { margin:0; font-size:36px; font-weight:500; line-height:1.18; }
.archive-intro>p,.archive-intro>div:last-child { margin:0; color:#74747a; line-height:1.8; }
.application-list-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.application-list-card { min-width:0; overflow:hidden; background:#f4f4f5; }
.application-list-card a { display:grid; grid-template-columns:1.02fr .98fr; height:100%; color:inherit; text-decoration:none; }
.application-list-card img { width:100%; height:100%; min-height:330px; object-fit:cover; }
.application-list-card div { display:flex; flex-direction:column; padding:32px 28px; }
.application-list-card div>span { color:var(--sm-blue); font-size:12px; font-weight:700; }
.application-list-card h2 { margin:25px 0 13px; font-size:25px; font-weight:500; line-height:1.2; }
.application-list-card p { color:#777; font-size:14px; }
.application-list-card strong { margin-top:auto; color:var(--sm-blue); font-size:13px; }
.application-detail { padding:72px 0 90px; background:#f5f5f6; }
.application-detail__hero { display:grid; grid-template-columns:1.1fr .9fr; background:#fff; }
.application-detail__hero>img { width:100%; height:100%; min-height:460px; object-fit:cover; }
.application-detail__hero>div { align-self:center; padding:50px; }
.application-detail__hero span,.application-detail__cta span { color:var(--sm-blue); font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.application-detail__hero h2 { margin:10px 0 20px; font-size:34px; font-weight:500; }
.application-detail__hero p { color:#6f6f74; line-height:1.8; }
.application-detail__facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:24px; background:#ddd; }
.application-detail__facts section { padding:34px; background:#fff; }
.application-detail__facts section>span { color:var(--sm-blue); font-size:12px; font-weight:700; }
.application-detail__facts h2 { margin:20px 0 14px; font-size:21px; font-weight:500; }
.application-detail__facts p,.application-detail__facts li { color:#727277; font-size:14px; line-height:1.75; }
.application-detail__facts ul { margin:0; padding-left:18px; }
.related-products { margin-top:60px; }
.application-detail__cta { display:flex; justify-content:space-between; gap:30px; align-items:center; margin-top:55px; padding:35px 42px; color:#fff; background:var(--sm-blue); }
.application-detail__cta span { color:rgba(255,255,255,.65); }
.application-detail__cta h2 { margin:5px 0 0; font-size:27px; font-weight:500; }
.application-detail__cta .sm-button { color:var(--sm-blue); background:#fff; }
.technique-list-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.technique-list-card { min-width:0; border:1px solid var(--sm-line); background:#fff; }
.technique-list-card a { display:flex; flex-direction:column; height:100%; color:inherit; text-decoration:none; }
.technique-list-card img { width:100%; aspect-ratio:1.55/1; object-fit:cover; }
.technique-list-card div { flex:1; display:flex; flex-direction:column; padding:25px; }
.technique-list-card div>span { color:#999; font-size:11px; }
.technique-list-card h2 { margin:14px 0 13px; font-size:20px; font-weight:500; line-height:1.35; }
.technique-list-card p { color:#7a7a80; font-size:14px; line-height:1.7; }
.technique-list-card strong { margin-top:auto; color:var(--sm-blue); font-size:13px; }
.technique-detail__head { padding:85px 0; color:#fff; background:linear-gradient(120deg,#21228c,#31539d); }
.technique-detail__head span { color:rgba(255,255,255,.65); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.technique-detail__head h1 { max-width:980px; margin:15px 0 20px; font-size:48px; font-weight:500; line-height:1.14; }
.technique-detail__head p { margin:0; color:rgba(255,255,255,.65); font-size:13px; }
.technique-detail__layout { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:48px; padding-top:70px; padding-bottom:80px; }
.technique-detail__image { width:100%; max-height:520px; object-fit:cover; }
.technique-detail__content { padding-top:35px; color:#5e5e63; font-size:17px; line-height:1.9; }
.technique-detail__content h2 { margin-top:42px; color:#222; font-size:29px; font-weight:500; }
.technique-detail__content h3 { margin-top:30px; color:#222; font-size:21px; font-weight:500; }
.technique-detail__content li { margin-bottom:8px; }
.technique-detail__layout aside { position:sticky; top:105px; align-self:start; }
.technique-detail__layout aside>div { margin-bottom:18px; padding:25px; border:1px solid var(--sm-line); }
.technique-detail__layout aside>div>span { color:var(--sm-blue); font-size:12px; font-weight:700; text-transform:uppercase; }
.technique-detail__layout dl { margin:20px 0 0; font-size:13px; }
.technique-detail__layout dt { margin-top:14px; color:#999; }
.technique-detail__layout dd { margin:2px 0 0; color:#333; }
.technique-detail__layout aside .sm-button { width:100%; }
.technique-related { padding:70px 0 85px; background:var(--sm-bg); }
.about-nav { border-bottom:1px solid var(--sm-line); background:#fff; }
.about-nav .sm-container { display:flex; }
.about-nav a { padding:20px 26px; border-bottom:3px solid transparent; color:#555; font-size:14px; text-decoration:none; }
.about-nav a.is-current { color:var(--sm-blue); border-bottom-color:var(--sm-blue); }
.company-profile__intro { padding:80px 0; }
.company-profile__intro .sm-container { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.company-profile__intro h2 { margin-bottom:25px; }
.company-profile__intro p { color:#6e6e73; line-height:1.9; }
.company-profile__intro img { width:100%; }
.company-profile__values { padding:1px 0; background:#ddd; }
.company-profile__values .sm-container { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; }
.company-profile__values article { padding:42px 35px; background:#f4f4f5; }
.company-profile__values strong { color:var(--sm-blue); font-size:13px; }
.company-profile__values h3 { margin:18px 0 12px; font-size:22px; font-weight:500; }
.company-profile__values p { margin:0; color:#777; font-size:14px; }
.company-profile__strength { padding:72px 0; }
.company-profile__strength .sm-container,.history-intro .sm-container { display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.company-profile__strength p { color:#74747a; line-height:1.9; }
.history-intro { padding:72px 0; }
.history-intro p { color:#727277; line-height:1.9; }
.history-timeline { padding:0 0 90px; }
.history-timeline article { position:relative; display:grid; grid-template-columns:170px 1fr; gap:40px; padding:35px 0; border-top:1px solid var(--sm-line); }
.history-timeline time { color:var(--sm-blue); font-size:36px; font-weight:700; }
.history-timeline h2 { margin-bottom:10px; font-size:24px; font-weight:500; }
.history-timeline p { margin:0; color:#777; }
.patent-page { padding:75px 0 90px; }
.patent-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.patent-grid article { padding:24px; border:1px solid var(--sm-line); }
.patent-grid article>div { aspect-ratio:1.35/1; display:flex; flex-direction:column; align-items:center; justify-content:center; margin-bottom:22px; color:#fff; background:linear-gradient(145deg,#22228f,#526eb5); text-align:center; }
.patent-grid article>div span { color:rgba(255,255,255,.65); font-size:11px; text-transform:uppercase; }
.patent-grid article>div strong { margin-top:8px; font-size:18px; }
.patent-grid h2 { font-size:19px; font-weight:500; }
.patent-grid dl { display:grid; grid-template-columns:90px 1fr; margin:0; font-size:12px; }
.patent-grid dt { color:#999; }
.patent-grid dd { margin:0; }
.standard-page { padding:70px 0; }
.contact-overview { padding:75px 0 45px; }
.contact-overview__intro { max-width:720px; margin-bottom:35px; }
.contact-overview__intro h2 { margin-bottom:17px; }
.contact-overview__intro p { color:#74747a; }
.contact-card-grid { display:grid; grid-template-columns:.75fr 1fr 1.4fr; gap:1px; background:#ddd; }
.contact-card-grid article { min-width:0; padding:28px; background:#f4f4f5; }
.contact-card-grid span { display:block; margin-bottom:11px; color:#999; font-size:11px; text-transform:uppercase; }
.contact-card-grid a,.contact-card-grid p { margin:0; color:#222; font-size:15px; text-decoration:none; word-break:break-word; }
.contact-form-section { padding:45px 0 90px; }
.contact-form-section__head { margin-bottom:30px; }
.contact-form-section__head p { color:#888; }
.inquiry-form { padding:38px; border:1px solid var(--sm-line); background:#fff; box-shadow:0 6px 22px rgba(20,24,47,.06); }
.inquiry-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.inquiry-form label { display:block; }
.inquiry-form label>span { display:block; margin-bottom:7px; color:#555; font-size:12px; font-weight:700; }
.inquiry-form input,.inquiry-form textarea { width:100%; padding:13px 14px; border:1px solid #d9d9dd; border-radius:0; background:#fafafa; color:#222; outline:0; }
.inquiry-form input:focus,.inquiry-form textarea:focus { border-color:var(--sm-blue); box-shadow:0 0 0 2px rgba(34,34,143,.1); }
.inquiry-form__message { grid-column:1/-1; }
.inquiry-form__footer { display:flex; justify-content:space-between; gap:30px; align-items:center; margin-top:24px; }
.inquiry-form__footer p { max-width:650px; margin:0; color:#929297; font-size:12px; }
.inquiry-form__footer button { border:0; cursor:pointer; }
.inquiry-form__trap { position:absolute!important; width:1px; height:1px; overflow:hidden; opacity:0; pointer-events:none; }
.inquiry-notice { margin-bottom:22px; padding:16px 18px; border-left:4px solid #bd3e3e; background:#fff1f1; }
.inquiry-notice--success { border-left-color:#26865a; background:#effaf5; }
.product-inline-inquiry { background:#f5f5f6; }

@media (max-width:1100px) {
  .site-header__inner { grid-template-columns:210px minmax(0,1fr) 70px; }
  .site-nav__list>li>a { padding-inline:12px; font-size:16px; }
  .header-search { width:70px; }
  .category-grid { gap:20px; }
  .product-intro { gap:55px; }
  .site-footer__grid { gap:35px; }
  .site-footer__grid>div+div { padding-left:35px; }
  .product-category-layout__grid,.product-detail-shell { grid-template-columns:220px minmax(0,1fr); gap:25px; }
  .product-category-content { padding:28px; }
  .product-summary { grid-template-columns:1fr; }
  .product-summary__image { min-height:390px; }
  .product-summary__content { padding:35px; }
  .product-content-section { padding-inline:32px; }
}

@media (max-width:860px) {
  .sm-container { width:min(calc(100% - 40px),var(--sm-content)); }
  .site-header,.site-header__inner { height:62px; }
  .site-header__inner { grid-template-areas:"brand search toggle"; grid-template-columns:1fr 40px 40px; gap:4px; }
  .site-brand { grid-area:brand; }
  .site-brand,.site-brand img { width:140px; }
  .header-search { grid-area:search; width:40px; height:62px; background:#fff; }
  .header-search span { border-color:#222; }
  .header-search span::after { background:#222; }
  .site-search__panel { padding:34px 0; }
  .site-search__head { margin-bottom:24px; }
  .site-search__head h2 { font-size:27px; }
  .site-search__form input { font-size:20px; }
  .site-search__quick { display:block; }
  .site-search__quick>span { margin-bottom:10px; }
  .nav-toggle { position:relative; z-index:102; grid-area:toggle; display:block; }
  .nav-toggle[aria-expanded="true"]>span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"]>span:nth-child(2) { opacity:0; }
  .nav-toggle[aria-expanded="true"]>span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  .site-nav { position:fixed; top:0; right:0; bottom:0; width:min(88vw,420px); padding:82px 26px 30px; overflow-y:auto; visibility:hidden; background:#fff; box-shadow:-20px 0 50px rgba(12,15,28,.18); opacity:0; transform:translateX(100%); transition:.25s ease; }
  .site-nav.is-open { visibility:visible; opacity:1; transform:none; }
  .site-nav__list { display:block; }
  .site-nav__list>li { border-bottom:1px solid var(--sm-line); }
  .site-nav__list>li>a { padding:15px 0; font-size:18px; }
  .submenu-toggle { position:absolute; top:9px; right:0; width:38px; height:38px; display:block; border:0; background:transparent; }
  .submenu-toggle span::before,.submenu-toggle span::after { position:absolute; top:18px; left:12px; width:14px; height:1px; content:""; background:var(--sm-blue); }
  .submenu-toggle span::after { transform:rotate(90deg); }
  .submenu-toggle[aria-expanded="true"] span::after { transform:none; }
  .sub-menu,.sm-mega-menu { position:static; width:auto; display:none; visibility:visible; padding:0 0 15px 14px!important; border:0; box-shadow:none; opacity:1; transform:none; }
  .sub-menu.is-open,.sm-mega-menu.is-open { display:block; }
  .sm-mega-menu { grid-template-columns:1fr; gap:12px; }
  .sm-mega-menu__intro { display:none; }
  .sm-mega-menu__grid { grid-template-columns:1fr!important; gap:8px; }
  .sm-mega-menu__grid>li>ul { display:none; }
  .product-intro { grid-template-columns:1fr; gap:24px; }
  .category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .application-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .article-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .article-grid>*:last-child { grid-column:1/-1; width:calc(50% - 15px); }
  .site-footer__grid { grid-template-columns:1fr 1fr; }
  .site-footer__contact { grid-column:1/-1; }
  .site-footer__grid>.site-footer__contact { padding-left:0; border-left:0; }
  .product-page-head { min-height:230px; }
  .product-page-head h1,.product-page-head__title { font-size:38px; }
  .product-family-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-category-layout__grid,.product-detail-shell { grid-template-columns:1fr; }
  .product-sidebar { position:static; }
  .product-sidebar nav { max-height:250px; overflow:auto; }
  .product-sidebar__contact { display:none; }
  .product-detail-nav { top:62px; overflow-x:auto; padding-inline:12px; white-space:nowrap; }
  .product-overview-grid { gap:32px; }
  .product-download-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .application-list-card a { grid-template-columns:1fr; }
  .application-list-card img { min-height:250px; max-height:330px; }
  .technique-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .application-detail__hero { grid-template-columns:1fr; }
  .application-detail__facts { grid-template-columns:1fr; }
  .technique-detail__layout { grid-template-columns:1fr; }
  .technique-detail__layout aside { position:static; }
  .company-profile__intro .sm-container { grid-template-columns:1fr; }
  .patent-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .search-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .contact-rail { right:10px; }
}

@media (max-width:560px) {
  body { padding-bottom:58px; }
  .sm-container { width:calc(100% - 24px); }
  .home-hero { height:158px; }
  .home-hero__image { object-position:center; }
  .home-hero__content { width:66%; }
  .home-hero h1 { margin-bottom:12px; font-size:30px; white-space:nowrap; }
  .home-hero p { display:none; }
  .home-hero .sm-button { min-height:34px; padding:0 20px; font-size:12px; }
  .home-hero__dots { right:26px; bottom:21px; gap:10px; }
  .home-hero__dots i { width:7px; height:7px; }
  .home-hero__dots i.is-active { width:22px; }
  .sm-section { padding:50px 0; }
  .home-products { padding-top:24px; }
  .product-intro { margin-bottom:26px; }
  .product-intro h2 { margin-bottom:10px; font-size:21px; }
  .product-intro .sm-text-link { display:none; }
  .product-intro .product-intro__lead { margin-bottom:12px; font-size:14px; line-height:1.6; }
  .product-intro p { font-size:14px; line-height:2; }
  .category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; padding-inline:10px; }
  .category-card span { min-height:43px; padding:7px 4px; font-size:14px; white-space:nowrap; text-overflow:ellipsis; }
  .category-card { overflow:hidden; }
  .category-card span { width:100%; display:block; overflow:hidden; line-height:29px; }
  .configure-section { height:430px; }
  .configure-section__image { height:210px; }
  .configure-section__image img { object-position:38% center; }
  .configure-section__inner { align-items:flex-end; width:100%; }
  .configure-section__panel { width:100%; padding:26px 22px; }
  .configure-section__panel h2 { margin-bottom:10px; font-size:28px; }
  .configure-section__panel p { margin-bottom:18px; font-size:13px; }
  .configure-links { gap:8px; }
  .configure-links a { min-height:38px; font-size:13px; }
  .inquiry-strip { padding:24px 0; }
  .inquiry-strip .sm-container { height:54px; }
  .center-heading { margin-bottom:25px; }
  .center-heading span { font-size:13px; }
  .center-heading h2 { font-size:30px; }
  .applications-section { padding-top:20px; }
  .application-grid { grid-template-columns:1fr; }
  .application-card { min-height:245px; padding:35px 22px 25px; }
  .application-card h3 { font-size:24px; }
  .article-grid { grid-template-columns:1fr; gap:20px; }
  .article-grid>*:last-child { grid-column:auto; width:auto; }
  .article-card div { padding:20px 16px 24px; }
  .site-footer__grid { grid-template-columns:1fr; gap:28px; padding-block:40px; }
  .site-footer__grid>div+div { padding:25px 0 0; border-top:1px dashed #c6c6c9; border-left:0; }
  .site-footer__contact { grid-column:auto; }
  .site-footer__contact p,.site-footer__contact address { grid-template-columns:100px 1fr; }
  .site-footer__bottom .sm-container { min-height:68px; flex-direction:column; align-items:flex-start; justify-content:center; }
  .contact-rail { top:auto; right:0; bottom:0; left:0; z-index:200; grid-template-columns:repeat(3,1fr); gap:1px; padding-bottom:env(safe-area-inset-bottom); background:#fff; box-shadow:0 -4px 18px rgba(18,20,45,.14); filter:none; transform:none; }
  .contact-rail>a,.contact-rail>button { width:100%; height:58px; display:flex; gap:8px; background:#303138; }
  .contact-rail>a>span { position:static; min-width:0; height:auto; display:block; visibility:visible; padding:0; background:transparent; font-size:11px; opacity:1; transform:none; }
  .contact-rail>a:hover,.contact-rail>a:focus-visible { transform:none; }
  .contact-rail>a:nth-child(3),.contact-rail .back-to-top { display:none; }
  .site-search__panel { padding:24px 0 28px; }
  .site-search__head { align-items:center; gap:14px; }
  .site-search__head h2 { font-size:21px; }
  .site-search__head>div>span { font-size:10px; }
  .site-search__form { grid-template-columns:1fr; border-bottom:0; }
  .site-search__form input { padding:14px 12px; border:1px solid var(--sm-line); font-size:16px; }
  .site-search__form button { min-height:44px; justify-content:center; }
  .site-search__quick { margin-top:20px; }
  .site-search__quick>div { max-height:94px; overflow:hidden; }
  .search-results-page { padding:42px 0 60px; }
  .search-results-grid { grid-template-columns:1fr; }
  .search-results-form>div { grid-template-columns:1fr; }
  .search-results-form input { min-height:48px; border-right:1px solid #d5d5da; }
  .search-results-form button { width:100%; }
  .search-empty { padding:42px 20px; }
  .not-found-page { min-height:540px; padding:55px 0; }
  .not-found-page .sm-container>span { font-size:96px; }
  .not-found-page h1 { font-size:31px; }
  .sm-grid,.sm-product-layout { grid-template-columns:1fr; }
  .product-page-head { min-height:185px; }
  .product-page-head h1,.product-page-head__title { margin-bottom:9px; font-size:29px; }
  .product-page-head .sm-container>div { display:none; }
  .product-catalog-overview,.product-featured-list,.product-category-layout,.product-detail { padding:42px 0 55px; }
  .product-catalog-intro { grid-template-columns:1fr; gap:17px; margin-bottom:28px; }
  .product-catalog-intro p { font-size:14px; }
  .product-section-title h2,.product-catalog-intro h2,.product-category-content__head h2 { font-size:28px; }
  .product-family-grid,.product-list-grid,.product-list-grid--category { grid-template-columns:1fr; }
  .product-family-grid article div,.product-list-card__body { padding:19px; }
  .product-category-content { padding:22px 18px 28px; }
  .product-sidebar>h2 { display:none; }
  .product-sidebar nav { max-height:none; overflow-x:auto; border-bottom:1px solid var(--sm-line); background:#fff; -webkit-overflow-scrolling:touch; }
  .product-sidebar ul { width:max-content; display:flex; border:0; }
  .product-sidebar li+li { border-top:0; border-left:1px solid var(--sm-line); }
  .product-sidebar li a { min-height:46px; padding:10px 15px; white-space:nowrap; }
  .product-sidebar li a span { display:none; }
  .product-summary { min-height:0; }
  .product-summary__image { min-height:265px; padding:20px; }
  .product-summary__content { padding:28px 20px 31px; }
  .product-summary h1 { font-size:27px; }
  .product-summary dl div { grid-template-columns:100px 1fr; }
  .product-detail-nav { margin:14px 0; padding:0; }
  .product-detail-nav a { padding:14px 13px; }
  .product-content-section { margin-top:14px; padding:30px 19px 34px; scroll-margin-top:125px; }
  .product-overview-grid,.product-spec-cards,.product-drawing-grid,.product-download-grid { grid-template-columns:1fr; gap:16px; }
  .product-spec-cards>section { padding:20px 17px; }
  .product-drawing-grid a { min-height:180px; }
  .product-table-wrap { margin-inline:-19px; width:calc(100% + 38px); border-right:0; border-left:0; }
  .product-table-wrap table { min-width:780px; }
  .product-customization { align-items:flex-start; flex-direction:column; padding:24px 21px; }
  .product-customization .sm-button { width:100%; }
  .inner-page-head { min-height:235px; }
  .inner-page-head h1 { font-size:31px; }
  .content-archive,.application-detail,.patent-page { padding:45px 0 58px; }
  .archive-intro,.company-profile__strength .sm-container,.history-intro .sm-container { grid-template-columns:1fr; gap:18px; }
  .archive-intro h2,.company-profile__intro h2,.company-profile__strength h2,.history-intro h2,.contact-overview__intro h2,.contact-form-section__head h2 { font-size:28px; }
  .application-list-grid,.technique-list-grid,.patent-grid { grid-template-columns:1fr; }
  .application-list-card img { min-height:220px; }
  .application-list-card div { padding:25px 21px; }
  .application-detail__hero>img { min-height:260px; }
  .application-detail__hero>div { padding:30px 22px; }
  .application-detail__hero h2 { font-size:27px; }
  .application-detail__facts section { padding:27px 22px; }
  .application-detail__cta { align-items:flex-start; flex-direction:column; padding:27px 22px; }
  .application-detail__cta .sm-button { width:100%; }
  .technique-detail__head { padding:55px 0; }
  .technique-detail__head h1 { font-size:32px; }
  .technique-detail__layout { gap:28px; padding-top:40px; padding-bottom:55px; }
  .technique-detail__content { font-size:15px; }
  .about-nav { overflow-x:auto; }
  .about-nav .sm-container { width:max-content; }
  .about-nav a { padding:16px 20px; white-space:nowrap; }
  .company-profile__intro { padding:50px 0; }
  .company-profile__intro .sm-container { gap:30px; }
  .company-profile__values .sm-container { grid-template-columns:1fr; }
  .company-profile__values article { padding:30px 23px; }
  .history-timeline article { grid-template-columns:1fr; gap:10px; }
  .history-timeline time { font-size:30px; }
  .contact-overview { padding:50px 0 30px; }
  .contact-card-grid { grid-template-columns:1fr; }
  .contact-form-section { padding:30px 0 60px; }
  .inquiry-form { padding:25px 18px; }
  .inquiry-form__grid { grid-template-columns:1fr; }
  .inquiry-form__message { grid-column:auto; }
  .inquiry-form__footer { align-items:flex-start; flex-direction:column; }
  .inquiry-form__footer button { width:100%; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
}
