:root {
    color-scheme: light;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.5;
    color: #17324d;
    background: #f5f8fb;
}

* { box-sizing: border-box; }
body { margin: 0; }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding: 1rem clamp(1rem, 5vw, 4rem); background: #fff; border-bottom: 1px solid #dbe5ee; }
.site-header nav { display:flex; gap:1rem; flex-wrap:wrap; }.site-header nav a,.brand { font-weight:700; text-decoration:none; }.brand { margin: 0; font-size: 1.1rem; color:#17324d; }
.page { min-height: calc(100vh - 8rem); display: grid; place-items: center; padding: 2rem 1rem; }
.boot-card { width: min(42rem, 100%); padding: clamp(2rem, 6vw, 4rem); background: #fff; border-radius: 1rem; box-shadow: 0 1rem 3rem rgb(23 50 77 / 10%); }
.status { display: inline-block; margin: 0 0 1rem; padding: .35rem .75rem; color: #075d3a; background: #dff8ec; border-radius: 999px; font-weight: 700; }
h1 { margin: 0 0 1rem; line-height: 1.15; }
p { margin: 0; max-width: 58ch; }
.site-footer { padding: 1rem; text-align: center; color: #526b80; }

a { color: #0a5ea8; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible { outline:3px solid #f5a623; outline-offset:2px; }
button, .button { display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: .5rem; padding: .65rem 1rem; background: #0a5ea8; color: #fff; font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; }
.secondary { background: #526b80; }
.admin-header { display: flex; align-items: center; gap: 1.5rem; padding: .9rem clamp(1rem, 4vw, 3rem); background: #17324d; color: #fff; }
.admin-header a { color: #fff; text-decoration: none; }.admin-header nav { display: flex; flex: 1; gap: 1rem; flex-wrap: wrap; }.admin-brand { font-weight: 800; }.admin-header form { margin: 0; }.admin-header .link-button { color: #fff; }
.admin-page { width: min(90rem, 100%); margin: 0 auto; padding: 2rem clamp(1rem, 4vw, 3rem) 4rem; }
.page-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1.5rem; }.page-heading h1 { margin-bottom: .35rem; }.eyebrow { color: #526b80; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; font-size: .8rem; }
.panel { margin: 0 0 1.5rem; padding: 1.25rem; background: #fff; border: 1px solid #dbe5ee; border-radius: .75rem; box-shadow: 0 .35rem 1rem rgb(23 50 77 / 6%); }.panel h2 { margin-top: 0; }
.stats { display: grid; grid-template-columns: repeat(auto-fit,minmax(10rem,1fr)); gap: 1rem; margin-bottom: 1.5rem; }.stats article { padding: 1.2rem; background: #fff; border: 1px solid #dbe5ee; border-radius: .75rem; }.stats strong,.stats span { display: block; }.stats strong { font-size: 1.8rem; }
.table-wrap { overflow-x: auto; }table { width: 100%; border-collapse: collapse; }th,td { padding: .75rem; border-bottom: 1px solid #e4ebf1; text-align: left; vertical-align: top; }th { color: #526b80; font-size: .85rem; }.actions { display: flex; align-items: center; gap: .7rem; white-space: nowrap; }.actions form { margin: 0; }.link-button { padding: 0; background: transparent; color: #0a5ea8; font-weight: 600; }.danger { color: #a11b1b; }
.badge { display: inline-block; padding: .2rem .55rem; border-radius: 999px; font-size: .8rem; font-weight: 700; }.badge.active { color: #075d3a; background: #dff8ec; }.badge.hidden { color: #654800; background: #fff2c2; }
.flash { max-width: none; margin: 0 0 1.25rem; padding: .85rem 1rem; border-radius: .5rem; }.flash-success { color: #075d3a; background: #dff8ec; }.flash-error { color: #7d1717; background: #fde4e4; }
.range-tabs { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 1.5rem; }.range-tabs a { padding: .5rem .8rem; border: 1px solid #b8c7d3; border-radius: .4rem; background: #fff; text-decoration: none; }.range-tabs .current { color: #fff; background: #17324d; border-color: #17324d; }.analytics-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 1.5rem; }.analytics-summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }.analytics-summary h2 { margin-bottom: .25rem; }.chart-wrap { position: relative; min-height: 18rem; }.chart-wrap canvas { width: 100%; height: 18rem; }.chart-wrap p { padding-top: 6rem; margin: auto; text-align: center; }
.admin-form { display: grid; gap: 1rem; }.admin-form label,.filters label { display: grid; gap: .35rem; font-weight: 650; }.admin-form input,.admin-form select,.admin-form textarea,.filters input,.filters select { width: 100%; padding: .65rem .7rem; border: 1px solid #b8c7d3; border-radius: .4rem; background: #fff; color: #17324d; font: inherit; }.admin-form textarea { resize: vertical; }.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }.form-grid .wide { grid-column: 1/-1; }.field-error { color: #a11b1b; font-size: .85rem; font-weight: 600; }.check { display: flex!important; grid-template-columns: auto 1fr; align-items: center; }.check input { width: auto; }.checks { display: flex; gap: 1.5rem; flex-wrap: wrap; }.filters { display: grid; grid-template-columns: minmax(12rem,2fr) repeat(3,minmax(8rem,1fr)) auto auto; align-items: end; gap: .75rem; }.pagination { display: flex; gap: .4rem; }.pagination a { padding: .4rem .7rem; background: #fff; border: 1px solid #b8c7d3; border-radius: .35rem; text-decoration: none; }.pagination .current { background: #17324d; color: #fff; }
.upload-form,.spec-buttons,.row-actions { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }.upload-form { margin-top: 1rem; }.file-button input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }.image-placeholder { min-height: 12rem; margin-top: 1rem; display: grid; place-items: center; border: 2px dashed #b8c7d3; border-radius: .75rem; color: #526b80; background: #f8fafc; }.image-gallery { display: grid; grid-template-columns: repeat(auto-fill,minmax(12rem,1fr)); gap: 1rem; margin: 1rem 0; }.image-card { overflow: hidden; border: 1px solid #dbe5ee; border-radius: .6rem; background: #fff; }.image-card img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: contain; background: #f8fafc; }.image-card-meta { display: grid; gap: .6rem; padding: .75rem; }.specification-form { margin-top: 1rem; }.spec-row { display: grid; grid-template-columns: minmax(10rem,1fr) minmax(10rem,1fr) auto; gap: .75rem; align-items: end; margin-bottom: .75rem; }.spec-row label { display: grid; gap: .35rem; font-weight: 650; }.spec-row input { width: 100%; padding: .65rem .7rem; border: 1px solid #b8c7d3; border-radius: .4rem; font: inherit; }
.catalog-shell { width:min(90rem,100%); margin:0 auto; padding:1.25rem clamp(1rem,4vw,3rem) 4rem; }.page:has(.catalog-shell) { display:block; padding:0; }.breadcrumbs ol { display:flex; gap:.5rem; flex-wrap:wrap; padding:0; margin:0 0 1.5rem; list-style:none; color:#526b80; }.breadcrumbs li+li::before { content:"/"; margin-right:.5rem; }.catalog-heading { margin-bottom:1.5rem; }.catalog-heading h1 { font-size:clamp(2rem,5vw,3.3rem); }.catalog-heading p { max-width:65ch; }.catalog-filters { display:grid; grid-template-columns:minmax(14rem,2fr) repeat(2,minmax(10rem,1fr)) auto auto; gap:.8rem; align-items:end; padding:1rem; background:#fff; border:1px solid #dbe5ee; border-radius:.8rem; }.catalog-filters label { display:grid; gap:.35rem; font-weight:650; }.catalog-filters input,.catalog-filters select { width:100%; padding:.7rem; border:1px solid #9db1c2; border-radius:.45rem; background:#fff; color:#17324d; font:inherit; }.filter-reset { min-height:2.9rem; display:inline-flex; align-items:center; padding:.6rem; }.result-count { margin:1.5rem 0 .75rem; color:#526b80; }.product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.2rem; }.product-card { min-width:0; display:flex; flex-direction:column; overflow:hidden; background:#fff; border:1px solid #dbe5ee; border-radius:.8rem; box-shadow:0 .35rem 1rem rgb(23 50 77 / 6%); }.product-card__media { aspect-ratio:4/3; background:#eef3f7; }.product-card__media img { display:block; width:100%; height:100%; object-fit:contain; }.product-card__placeholder { height:100%; display:grid; place-items:center; color:#71879a; font-weight:800; background:linear-gradient(135deg,#eef3f7,#fff); }.product-card__body { height:100%; display:flex; flex-direction:column; align-items:flex-start; gap:.55rem; padding:1rem; }.product-card__body p,.product-card__body h2 { margin:0; }.product-card__body h2 { font-size:1.15rem; overflow-wrap:anywhere; }.product-card__taxonomy,.product-card__code { color:#526b80; font-size:.85rem; }.product-card__description { display:-webkit-box; overflow:hidden; -webkit-line-clamp:3; -webkit-box-orient:vertical; font-size:.92rem; }.product-card__price { margin-top:auto!important; font-size:1.15rem; font-weight:800; }.product-card .button { margin-top:auto; }.button.disabled { background:#d7e0e7; color:#40576b; cursor:not-allowed; }.catalog-badge { padding:.2rem .55rem; border-radius:999px; color:#075d3a; background:#dff8ec; font-size:.75rem; font-weight:800; }.catalog-empty { padding:2.5rem; text-align:center; background:#fff; border:1px dashed #9db1c2; border-radius:.8rem; }.catalog-empty p { margin:.5rem auto 1rem; }.catalog-pagination { display:flex; justify-content:center; gap:.45rem; flex-wrap:wrap; margin-top:2rem; }.catalog-pagination a { min-width:2.7rem; min-height:2.7rem; display:inline-flex; align-items:center; justify-content:center; padding:.5rem .75rem; background:#fff; border:1px solid #9db1c2; border-radius:.4rem; text-decoration:none; }.catalog-pagination .current { color:#fff; background:#17324d; border-color:#17324d; }
@media (max-width:1050px) { .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.catalog-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-filters label:first-child { grid-column:1/-1; } }
@media (max-width: 760px) { .admin-header { align-items: flex-start; flex-wrap: wrap; }.admin-header nav { order: 3; flex-basis: 100%; }.page-heading { align-items: flex-start; flex-direction: column; }.form-grid,.filters,.spec-row,.analytics-grid { grid-template-columns: 1fr; }.analytics-summary { align-items: flex-start; flex-direction: column; }.actions { flex-wrap: wrap; }.admin-page { padding-top: 1.25rem; }.site-header { align-items:flex-start; flex-direction:column; }.product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-filters { grid-template-columns:1fr; }.catalog-filters label:first-child { grid-column:auto; } }
@media (max-width:520px) { .product-grid { grid-template-columns:1fr; }.product-card { max-width:28rem; width:100%; margin-inline:auto; } }
.product-detail { width:min(90rem,100%); margin:0 auto; padding:1.25rem clamp(1rem,4vw,3rem) 4rem; }.page:has(.product-detail) { display:block; padding:0; }.product-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr); gap:clamp(1.5rem,4vw,4rem); align-items:start; }.product-gallery,.product-summary { min-width:0; }.product-gallery__main,.product-gallery__placeholder { aspect-ratio:4/3; display:grid; place-items:center; overflow:hidden; border:1px solid #dbe5ee; border-radius:1rem; background:#fff; }.product-gallery__main img { display:block; width:100%; height:100%; object-fit:contain; }.product-gallery__placeholder { color:#71879a; font-size:1.4rem; font-weight:800; background:linear-gradient(135deg,#eef3f7,#fff); }.product-gallery__thumbs { display:flex; gap:.65rem; overflow-x:auto; padding:.75rem .2rem .2rem; }.product-gallery__thumb { flex:0 0 5rem; width:5rem; height:4rem; padding:.2rem; border:2px solid transparent; border-radius:.5rem; background:#fff; }.product-gallery__thumb.is-active { border-color:#0a5ea8; }.product-gallery__thumb img { width:100%; height:100%; object-fit:contain; }.product-summary__taxonomy,.product-summary__code { color:#526b80; }.product-summary h1 { margin:.5rem 0 1rem; font-size:clamp(2rem,4vw,3.2rem); overflow-wrap:anywhere; }.product-summary__intro { margin-top:1.2rem; font-size:1.05rem; overflow-wrap:anywhere; }.product-summary__price { margin-top:1.5rem; font-size:1.7rem; font-weight:850; }.product-summary__price-note { margin-top:1.5rem; font-weight:750; }.product-inquiry { margin-top:1.5rem; padding:1.25rem; border-radius:.8rem; background:#eaf4fc; }.product-inquiry h2 { margin:0 0 .45rem; font-size:1.2rem; }.product-inquiry .button { margin-top:1rem; }.product-section { margin-top:clamp(2.5rem,6vw,5rem); padding-top:1.5rem; border-top:1px solid #dbe5ee; }.product-section h2 { margin:0 0 1.25rem; }.product-description div { max-width:75ch; overflow-wrap:anywhere; }.specification-list { margin:0; border:1px solid #dbe5ee; border-radius:.75rem; overflow:hidden; background:#fff; }.specification-list div { display:grid; grid-template-columns:minmax(10rem,.7fr) minmax(0,1.3fr); }.specification-list div+div { border-top:1px solid #e4ebf1; }.specification-list dt,.specification-list dd { min-width:0; margin:0; padding:.85rem 1rem; overflow-wrap:anywhere; }.specification-list dt { font-weight:750; background:#f5f8fb; }
@media (max-width:760px) { .product-hero { grid-template-columns:1fr; }.specification-list div { grid-template-columns:1fr; }.specification-list dd { padding-top:.4rem; } }

/* Phase 9 public design system. Scoped to keep the administration interface stable. */
:root {
    --color-primary: #004a99;
    --color-primary-hover: #003f80;
    --color-accent: #aec8fa;
    --color-accent-soft: #edf4ff;
    --color-background: #ffffff;
    --color-surface: #ffffff;
    --color-surface-muted: #f7f9fc;
    --color-text: #111111;
    --color-text-muted: #5f6872;
    --color-border: #e0e0e0;
    --color-error: #b42318;
    --radius-sm: 4px;
    --radius-md: 8px;
    --shadow-subtle: 0 6px 24px rgb(17 17 17 / 7%);
    --space-1: .25rem;
    --space-2: .5rem;
    --space-3: .75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 5rem;
    --container: 80rem;
}

.public-site { min-width:320px; color:var(--color-text); background:var(--color-background); font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.public-site img { max-width:100%; }
.public-site .page { min-height:60vh; display:block; padding:0; }
.public-site a { color:var(--color-primary); text-underline-offset:.2em; }
.public-site a:hover { color:var(--color-primary-hover); }
.public-site :is(a,button,input,select,textarea):focus-visible { outline:3px solid var(--color-accent); outline-offset:3px; }
.public-site h1,.public-site h2,.public-site h3 { color:var(--color-text); letter-spacing:-.025em; }
.public-site h1 { font-size:clamp(2.15rem,5vw,3.75rem); }
.public-site p { max-width:68ch; }
.public-site { overflow-x:clip; }
.public-container { width:min(var(--container),calc(100% - 2rem)); margin-inline:auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; z-index:100; top:.75rem; left:.75rem; padding:.7rem 1rem; border-radius:var(--radius-sm); color:#fff!important; background:var(--color-primary); transform:translateY(-200%); }
.skip-link:focus { transform:translateY(0); }

.public-site .site-header { position:relative; z-index:20; padding:0; border-bottom:1px solid var(--color-border); background:#fff; transition:border-color .2s ease,box-shadow .2s ease; }
.public-site .site-header.is-scrolled { border-color:transparent; box-shadow:0 5px 18px rgb(17 17 17 / 7%); }
.site-header__inner { width:min(var(--container),calc(100% - 2rem)); min-height:5rem; margin-inline:auto; display:flex; align-items:center; justify-content:space-between; gap:var(--space-5); }
.public-site .brand { display:inline-flex; align-items:center; gap:.7rem; color:var(--color-primary); font-size:1rem; font-weight:850; letter-spacing:.06em; }
.brand__mark { width:2.4rem; height:2.4rem; display:grid; place-items:center; border-radius:var(--radius-sm); color:#fff; background:var(--color-primary); font-size:.78rem; letter-spacing:.04em; }
.primary-nav { align-self:stretch; display:flex; align-items:stretch; gap:var(--space-6); }
.primary-nav a { position:relative; display:flex; align-items:center; color:var(--color-text); font-weight:700; text-decoration:none; transition:color .18s ease; }
.primary-nav a::after { content:""; position:absolute; inset:auto 0 -1px; height:3px; background:var(--color-primary); transform:scaleX(0); transition:transform .18s ease; }
.primary-nav a:hover,.primary-nav a[aria-current="page"] { color:var(--color-primary); }
.primary-nav a:hover::after,.primary-nav a[aria-current="page"]::after { transform:scaleX(1); }
.nav-toggle { display:none; width:2.75rem; height:2.75rem; padding:.65rem; border:1px solid var(--color-border); border-radius:var(--radius-sm); background:#fff; }
.nav-toggle__icon,.nav-toggle__icon span { display:block; }
.nav-toggle__icon { width:100%; }
.nav-toggle__icon span { height:2px; margin:4px 0; background:var(--color-primary); transition:.18s ease; }

.public-site .site-footer { padding:0; text-align:left; color:rgb(255 255 255 / 78%); background:#072b50; }
.site-footer__inner { width:min(var(--container),calc(100% - 2rem)); margin-inline:auto; padding:var(--space-6) 0; display:grid; grid-template-columns:2fr 1fr; gap:var(--space-6); }
.site-footer__inner p { margin-top:.7rem; }
.site-footer__inner nav { display:grid; align-content:start; justify-items:start; gap:.5rem; }
.site-footer__inner h2 { margin:0 0 .4rem; color:#fff; font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; }
.site-footer__inner a { color:#fff; text-decoration:none; }
.footer-brand { font-size:1.15rem; font-weight:850; letter-spacing:.08em; }
.site-footer__bottom { padding:1rem max(1rem,calc((100% - var(--container))/2)); border-top:1px solid rgb(255 255 255 / 15%); }

.public-site .button { min-height:2.75rem; gap:.4rem; padding:.7rem 1.15rem; border:1px solid transparent; border-radius:var(--radius-sm); font-weight:750; transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease; }
.public-site .button:hover { transform:translateY(-2px) scale(1.005); box-shadow:0 7px 16px rgb(17 17 17 / 12%); }
.public-site .button:active { transform:translateY(0) scale(1); box-shadow:0 2px 6px rgb(17 17 17 / 9%); }
.button--primary { color:#fff!important; background:var(--color-primary); }
.button--primary:hover { background:var(--color-primary-hover); }
.button--secondary { color:var(--color-primary)!important; background:var(--color-accent); }
.button--secondary:hover { color:#fff!important; background:var(--color-primary-hover); }
.button--outline { color:var(--color-primary)!important; border-color:var(--color-primary)!important; background:#fff!important; }
.button--outline:hover { color:#fff!important; background:var(--color-primary)!important; }
.button--ghost { color:var(--color-primary)!important; background:transparent!important; }
.button--ghost:hover { background:var(--color-accent-soft)!important; }
.public-site :is(button,.button):disabled,.public-site .button[aria-disabled="true"] { opacity:.55; cursor:not-allowed; transform:none; }

.breadcrumbs { padding-top:1.5rem; }
.public-site .breadcrumbs ol { gap:.45rem; margin:0 0 2.25rem; color:var(--color-text-muted); font-size:.88rem; }
.public-site .breadcrumbs li+li::before { content:"›"; color:#9299a1; }
.breadcrumbs a { color:var(--color-text-muted); text-decoration:none; }
.breadcrumbs [aria-current="page"] { color:var(--color-text); font-weight:650; }
.page-intro { padding-bottom:2rem; }
.page-intro h1 { margin:.35rem 0 .75rem; }
.page-intro>p:last-child { color:var(--color-text-muted); font-size:1.05rem; }
.public-site .eyebrow { margin:0; color:var(--color-primary); font-size:.76rem; font-weight:800; letter-spacing:.12em; }

.public-site .catalog-shell,.public-site .product-detail { padding:0 0 var(--space-8); }
.public-site .catalog-filters { grid-template-columns:minmax(15rem,2fr) repeat(2,minmax(10rem,1fr)) auto auto; gap:var(--space-4); padding:var(--space-5); border-color:var(--color-border); border-radius:var(--radius-md); background:var(--color-surface-muted); box-shadow:none; }
.field { display:grid; gap:.4rem; color:var(--color-text); font-size:.85rem; font-weight:700; }
.public-site :is(input,select,textarea) { min-height:2.75rem; padding:.65rem .75rem; border:1px solid #b8bdc4; border-radius:var(--radius-sm); color:var(--color-text); background:#fff; font:inherit; transition:border-color .18s ease,box-shadow .18s ease; }
.public-site textarea { min-height:8rem; resize:vertical; }
.public-site :is(input,select,textarea):focus { border-color:var(--color-primary); box-shadow:0 0 0 3px rgb(0 74 153 / 10%); }
.public-site :is(input,select,textarea):hover:not(:disabled) { border-color:#859db5; }
.public-site :is(input,select,textarea):disabled { color:#777; background:#eceff2; cursor:not-allowed; }
.public-site [aria-invalid="true"] { border-color:var(--color-error); }
.field--search input { padding-left:2.5rem; background:#fff no-repeat .8rem 50%/1rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f6872' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E"); }
.catalog-results-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin:2.5rem 0 1rem; }
.catalog-results-heading h2 { margin:0; font-size:clamp(1.4rem,3vw,2rem); }
.public-site .result-count { margin:0; color:var(--color-text-muted); white-space:nowrap; }
.public-site .product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.25rem; }
.public-site .product-card { border-color:var(--color-border); border-radius:var(--radius-md); box-shadow:var(--shadow-subtle); transition:transform .2s ease,box-shadow .2s ease; }
.public-site .product-card:hover { transform:translateY(-5px); box-shadow:0 15px 34px rgb(17 17 17 / 13%); }
.public-site .product-card__media { aspect-ratio:4/3; display:block; overflow:hidden; padding:1rem; background:#fff; }
.public-site .product-card__media img { transition:transform .3s ease; }
.public-site .product-card:hover .product-card__media img { transform:scale(1.03); }
.public-site .product-card:hover .product-card__footer .button { transform:translateY(-1px); }
.public-site .product-card__body { gap:.6rem; padding:1.1rem; border-top:1px solid var(--color-border); }
.product-card__meta { min-height:1.45rem; width:100%; display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.product-card__brand { color:var(--color-primary); font-size:.76rem; font-weight:800; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.public-site .product-card__body h2 { font-size:1.08rem; line-height:1.35; }
.product-card__body h2 a { color:var(--color-text); text-decoration:none; }
.public-site .product-card__code { color:var(--color-text-muted); }
.public-site .product-card__description { color:var(--color-text-muted); }
.product-card__footer { width:100%; margin-top:auto; padding-top:.6rem; display:grid; gap:.8rem; }
.public-site .product-card__price { color:var(--color-text); font-size:1.12rem; }
.product-card__footer .button { width:100%; }
.badge--accent { color:var(--color-primary); background:var(--color-accent-soft); }
.public-site .image-placeholder { width:100%; height:100%; margin:0; min-height:0; display:grid; place-items:center; align-content:center; gap:.5rem; border:0; border-radius:0; color:#6d7781; background:linear-gradient(145deg,#f4f7fa,#eaf1f8); }
.public-site .image-placeholder span:first-child { color:var(--color-accent); font-size:2rem; line-height:1; }
.public-site .image-placeholder span:last-child { font-size:.82rem; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }
.public-site .empty-state { padding:clamp(2.5rem,7vw,5rem) 1.5rem; text-align:center; border:1px dashed #aeb6bf; border-radius:var(--radius-md); background:var(--color-surface-muted); }
.empty-state__icon { color:var(--color-accent); font-size:3rem; }
.empty-state h2 { margin:.5rem 0; }
.empty-state p { margin:0 auto 1.25rem; color:var(--color-text-muted); }
.public-site .pagination { justify-content:center; align-items:center; gap:.45rem; margin-top:2.5rem; }
.public-site .pagination a { min-width:2.75rem; min-height:2.75rem; display:inline-flex; align-items:center; justify-content:center; padding:.45rem .7rem; border:1px solid var(--color-border); border-radius:var(--radius-sm); color:var(--color-primary); background:#fff; text-decoration:none; transition:color .18s ease,border-color .18s ease,background .18s ease,transform .18s ease; }
.public-site .pagination a:hover { border-color:var(--color-primary); background:var(--color-accent-soft); transform:translateY(-1px); }
.public-site .pagination .current { color:#fff; border-color:var(--color-primary); background:var(--color-primary); }
.public-site .pagination .is-disabled { color:#8e969e; background:#f3f4f5; pointer-events:none; }

.public-site .product-hero { grid-template-columns:minmax(0,1.08fr) minmax(20rem,.92fr); gap:clamp(2rem,6vw,5rem); }
.public-site .product-gallery__main,.public-site .product-gallery__placeholder { border-color:var(--color-border); border-radius:var(--radius-md); background:#fff; }
.public-site .product-gallery__main { padding:clamp(1rem,3vw,2rem); }
.public-site .product-gallery__thumbs { scrollbar-width:thin; }
.public-site .product-gallery__thumb { flex-basis:5.25rem; width:5.25rem; height:4.5rem; border-color:var(--color-border); border-radius:var(--radius-sm); transition:border-color .18s ease,transform .18s ease; }
.public-site .product-gallery__thumb:hover,.public-site .product-gallery__thumb.is-active { border-color:var(--color-primary); }
.public-site .product-gallery__thumb:hover { transform:scale(1.025); }
.product-gallery__main img.is-changing { animation:gallery-image-in .2s ease-out; }
.product-summary { padding-top:.5rem; }
.product-summary__brand { display:inline-block; margin-bottom:.75rem; font-size:.82rem; font-weight:850; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }
.public-site .product-summary h1 { margin:0 0 .75rem; font-size:clamp(2rem,4vw,3.35rem); }
.product-summary__category { margin-bottom:1.25rem!important; }
.product-summary__category a { color:var(--color-text-muted); }
.public-site .product-summary__code { padding-top:1.1rem; border-top:1px solid var(--color-border); color:var(--color-text-muted); }
.public-site .product-summary__intro { color:var(--color-text-muted); line-height:1.7; }
.public-site .product-summary__price { margin:1.75rem 0 .2rem; color:var(--color-text); font-size:clamp(1.55rem,3vw,2rem); }
.product-summary__price-caption { margin-bottom:1.25rem!important; color:var(--color-text-muted); font-size:.86rem; }
.content-section { margin-top:clamp(3.5rem,8vw,6rem); }
.section-heading { margin-bottom:1.4rem; }
.section-heading h2 { margin:.3rem 0 0; font-size:clamp(1.65rem,3vw,2.35rem); }
.prose { max-width:75ch; color:#343a40; line-height:1.8; overflow-wrap:anywhere; }
.public-site .specification-list { border-color:var(--color-border); border-radius:var(--radius-md); }
.public-site .specification-list div { grid-template-columns:minmax(12rem,.7fr) minmax(0,1.3fr); }
.public-site .specification-list div:nth-child(even) { background:var(--color-surface-muted); }
.public-site .specification-list dt,.public-site .specification-list dd { padding:1rem 1.25rem; }
.public-site .specification-list dt { color:#343a40; background:transparent; }
.public-site .specification-list dd { color:var(--color-text); }
.cta-panel { margin-top:clamp(3.5rem,8vw,6rem); padding:clamp(1.5rem,4vw,2.5rem); display:flex; align-items:center; justify-content:space-between; gap:2rem; border-radius:var(--radius-md); color:#fff; background:var(--color-primary); }
.cta-panel h2 { margin:.35rem 0 .6rem; color:#fff; font-size:clamp(1.55rem,3vw,2.25rem); }
.cta-panel .eyebrow { color:var(--accent,#aec8fa); }
.cta-panel p { color:rgb(255 255 255 / 82%); }

.contact-page { padding-bottom:var(--space-8); }
.contact-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr); gap:clamp(1.5rem,5vw,4rem); align-items:start; }
.contact-card,.contact-aside { border:1px solid var(--color-border); border-radius:var(--radius-md); background:#fff; box-shadow:var(--shadow-subtle); }
.contact-card { padding:clamp(1.25rem,4vw,2.5rem); }
.contact-card h2,.contact-aside h2 { margin:0 0 1rem; }
.contact-form { display:grid; gap:1.15rem; margin-top:1.5rem; }
.contact-form .button { justify-self:start; }
.required-note { color:var(--color-text-muted); font-size:.88rem; }
.product-context { display:grid; gap:.25rem; margin:0 0 1.25rem; padding:1rem; border-left:4px solid var(--color-accent); border-radius:var(--radius-sm); background:var(--color-accent-soft); }
.product-context span { color:var(--color-text-muted); }
.field-error { color:var(--color-error); font-size:.86rem; font-weight:650; }
.form-notice { display:grid; gap:.2rem; margin:0 0 1.5rem; padding:1rem 1.15rem; border:1px solid; border-radius:var(--radius-sm); }
.form-notice--success { color:#175c35; border-color:#8ac7a3; background:#eef9f2; }
.form-notice--error { color:var(--color-error); border-color:#e1a4a4; background:#fff2f2; }
.contact-aside { padding:clamp(1.25rem,3vw,2rem); background:var(--color-surface-muted); }
.contact-aside p:not(.eyebrow) { color:var(--color-text-muted); line-height:1.7; }
.contact-aside a { font-weight:750; }
.honeypot { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; white-space:nowrap!important; }

.home-page { overflow:hidden; }
.home-hero { border-bottom:1px solid var(--color-border); }
.home-hero__grid { width:min(86rem,calc(100% - 2rem)); min-height:30rem; display:grid; grid-template-columns:minmax(0,.88fr) minmax(30rem,1.12fr); align-items:center; gap:var(--space-5); }
.home-hero__copy { align-self:center; padding:var(--space-7) clamp(2rem,6vw,5rem) var(--space-7) 0; }
.home-hero__copy h1 { max-width:13ch; margin:.55rem 0 1.1rem; font-size:clamp(2.6rem,4.3vw,4.7rem); }
.home-hero__copy>p:not(.eyebrow) { color:var(--color-text-muted); font-size:clamp(1rem,1.4vw,1.15rem); line-height:1.7; }
.home-actions { margin-top:1.75rem; display:flex; flex-wrap:wrap; gap:.75rem; }
.home-hero__visual { min-height:28rem; align-self:stretch; margin-block:var(--space-4); overflow:hidden; border-radius:var(--radius-md); background:var(--color-surface-muted); }
.home-hero__visual img { width:100%; height:100%; display:block; object-fit:cover; object-position:center 42%; }
.trust-strip { border-bottom:1px solid var(--color-border); background:var(--color-accent-soft); }
.trust-strip__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.trust-strip article { min-width:0; padding:1.15rem clamp(.8rem,2vw,1.5rem); display:flex; align-items:center; gap:.8rem; }
.trust-strip article+article { border-left:1px solid #d5e3f5; }
.line-icon { width:2.35rem; height:2.35rem; flex:0 0 auto; display:grid; place-items:center; color:var(--color-primary); }
.line-icon svg { width:100%; height:100%; }
.trust-strip h2 { margin:0; font-size:.92rem; letter-spacing:0; }
.trust-strip p { margin-top:.15rem; color:var(--color-text-muted); font-size:.72rem; line-height:1.35; }
.home-section { padding-block:var(--space-6); }
.home-section+.home-section { border-top:1px solid #edf0f2; }
.home-section>h2,.home-section__heading h2 { margin:.35rem 0 0; font-size:clamp(1.75rem,3vw,2.6rem); }
.home-section__heading { margin-bottom:var(--space-5); display:flex; align-items:end; justify-content:space-between; gap:var(--space-4); }
.home-section__heading>a { font-weight:750; text-decoration:none; }
.home-products .product-card__description { display:none; }
.home-empty { padding:1.4rem; border:1px solid var(--color-border); border-radius:var(--radius-md); color:var(--color-text-muted); background:var(--color-surface-muted); }
.home-why { display:grid; grid-template-columns:minmax(0,.9fr) minmax(22rem,1.1fr); gap:clamp(2rem,7vw,7rem); align-items:center; }
.home-why__copy h2 { max-width:15ch; margin:.4rem 0 1rem; font-size:clamp(2rem,3.5vw,3.3rem); }
.home-why__copy { padding-block:var(--space-4); }
.home-why__copy>p:not(.eyebrow) { color:var(--color-text-muted); line-height:1.7; }
.home-why__copy ul { margin:1.25rem 0 1.5rem; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; list-style:none; }
.home-why__copy li::before { content:"✓"; margin-right:.55rem; color:var(--color-primary); font-weight:900; }
.home-why__visual { min-height:22rem; overflow:hidden; border-radius:var(--radius-md); background:var(--color-surface-muted); }
.home-why__visual img { width:100%; height:100%; min-height:22rem; display:block; object-fit:cover; object-position:center; }
.service-cards { margin-top:var(--space-5); display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-4); }
.home-services { position:relative; background:var(--color-surface-muted); box-shadow:0 0 0 100vmax var(--color-surface-muted); clip-path:inset(0 -100vmax); }
.home-services::before,.home-services::after { content:""; position:absolute; left:-100vmax; right:-100vmax; height:1px; background:var(--color-border); }
.home-services::before { top:0; }
.home-services::after { bottom:0; }
.service-cards article { padding:1.35rem; border:1px solid var(--color-border); border-radius:var(--radius-md); box-shadow:var(--shadow-subtle); transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.service-cards article:hover { border-color:#c1d3e6; box-shadow:0 12px 26px rgb(17 17 17 / 10%); transform:translateY(-4px); }
.service-cards article .line-icon { transition:transform .2s ease; }
.service-cards article:hover .line-icon { transform:translateY(-2px) scale(1.04); }
.service-cards h3 { margin:.8rem 0 .35rem; }
.service-cards p { color:var(--color-text-muted); font-size:.86rem; line-height:1.55; }
.home-brands { text-align:center; }
.home-brands { padding-block:var(--space-6); }
.brand-list { margin-top:var(--space-5); display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:var(--space-3); }
.brand-list a { min-width:8.5rem; padding:.8rem 1.25rem; border:1px solid var(--color-border); border-radius:var(--radius-sm); color:#4b535b; background:#fff; box-shadow:0 3px 12px rgb(17 17 17 / 5%); font-size:clamp(1rem,1.6vw,1.25rem); font-weight:850; text-align:center; text-decoration:none; transition:border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease; }
.brand-list a:hover,.brand-list a:focus-visible { border-color:var(--color-accent); color:var(--color-primary); background:var(--color-accent-soft); box-shadow:0 7px 18px rgb(17 17 17 / 9%); transform:translateY(-2px) scale(1.03); }
.home-process ol { margin:var(--space-5) 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; }
.home-process li { position:relative; padding-right:clamp(1rem,4vw,3rem); display:grid; grid-template-columns:auto 1fr; gap:1rem; }
.home-process li+li { padding-left:clamp(1rem,4vw,3rem); }
.home-process li+li::before { content:""; position:absolute; top:0; bottom:0; left:0; width:1px; background:var(--color-border); transform:scaleY(0); transform-origin:top; transition:transform .32s ease-out .12s; }
.home-process.is-revealed li+li::before { transform:scaleY(1); }
.home-process.is-revealed li:nth-child(2)::before { transition-delay:.26s; }
.home-process.is-revealed li:nth-child(3)::before { transition-delay:.4s; }
.home-process li>span { min-width:2.8rem; color:var(--color-primary); font-size:2rem; font-weight:900; letter-spacing:-.05em; line-height:1; }
.home-process h3 { margin:0 0 .35rem; font-size:1rem; }
.home-process p { color:var(--color-text-muted); font-size:.85rem; }
.home-cta { color:#fff; background:var(--color-primary); }
.home-cta>.public-container { min-height:9rem; padding-block:var(--space-6); display:flex; align-items:center; justify-content:space-between; gap:var(--space-6); }
.home-cta h2 { margin:0 0 .5rem; color:#fff; font-size:clamp(1.55rem,3vw,2.35rem); }
.home-cta p { color:rgb(255 255 255 / 82%); }
.home-cta .button { flex:0 0 auto; }
@keyframes entrance-up {
    from { opacity:0; transform:translateY(22px); }
    to { opacity:1; transform:translateY(0); }
}
@keyframes hero-visual-in {
    from { opacity:0; transform:translateX(18px) scale(1.025); }
    to { opacity:1; transform:scale(1); }
}
@keyframes gallery-image-in {
    from { opacity:.25; transform:scale(.99); }
    to { opacity:1; transform:scale(1); }
}
.home-hero__copy > :is(.eyebrow,h1,p,.home-actions) { animation:entrance-up .58s cubic-bezier(.22,.7,.25,1) both; }
.home-hero__copy > h1 { animation-delay:.08s; }
.home-hero__copy > p:not(.eyebrow) { animation-delay:.16s; }
.home-hero__copy > .home-actions { animation-delay:.24s; }
.home-hero__visual { animation:hero-visual-in .74s cubic-bezier(.22,.7,.25,1) .3s both; }
.trust-strip article { animation:entrance-up .4s ease-out both; }
.trust-strip article:nth-child(1) { animation-delay:.34s; }
.trust-strip article:nth-child(2) { animation-delay:.39s; }
.trust-strip article:nth-child(3) { animation-delay:.44s; }
.trust-strip article:nth-child(4) { animation-delay:.49s; }
.product-hero .product-gallery { animation:hero-visual-in .62s ease-out both; }
.product-hero .product-summary { animation:entrance-up .55s ease-out .08s both; }
.contact-page > .page-intro { animation:entrance-up .5s ease-out both; }
.contact-page .contact-card { animation:entrance-up .55s ease-out .08s both; }
.contact-page .contact-aside { animation:entrance-up .55s ease-out .16s both; }
.form-notice { animation:entrance-up .36s ease-out both; }

.reveal-ready .motion-group .motion-item { opacity:0; transform:translateY(24px) scale(.985); transition:opacity .5s ease-out,transform .5s cubic-bezier(.22,.7,.25,1); transition-delay:calc(var(--motion-order,0) * 70ms); }
.reveal-ready .motion-group.is-revealed .motion-item { opacity:1; transform:translateY(0) scale(1); }
.reveal-ready .motion-group .product-card.motion-item { transition:opacity .5s ease-out,transform .5s cubic-bezier(.22,.7,.25,1),box-shadow .2s ease; }
.reveal-ready .motion-group .service-cards article.motion-item { transition:opacity .5s ease-out,transform .5s cubic-bezier(.22,.7,.25,1),border-color .2s ease,box-shadow .2s ease; }
.reveal-ready .motion-group .brand-list a.motion-item { transition:opacity .5s ease-out,transform .5s cubic-bezier(.22,.7,.25,1),border-color .2s ease,color .2s ease,background .2s ease,box-shadow .2s ease; }
.reveal-ready .motion-group :is(.product-card.motion-item,.service-cards article.motion-item,.brand-list a.motion-item) { transition-delay:calc(var(--motion-order,0) * 70ms); }
.reveal-ready .home-why .home-why__copy { transform:translateX(-26px); }
.reveal-ready .home-why .home-why__visual { transform:translateX(26px) scale(.985); }
.reveal-ready .home-why.is-revealed :is(.home-why__copy,.home-why__visual) { transform:translateX(0) scale(1); }
.reveal-ready .home-cta .motion-item:first-child,.reveal-ready .cta-panel .motion-item:first-child { transform:translateX(-24px); }
.reveal-ready .home-cta .motion-item:last-child,.reveal-ready .cta-panel .motion-item:last-child { transform:translateX(24px); }
.reveal-ready :is(.home-cta,.cta-panel).is-revealed .motion-item { transform:translateX(0); }
.error-state { width:min(38rem,calc(100% - 2rem)); margin:clamp(3rem,10vw,8rem) auto; padding:clamp(2rem,6vw,4rem); text-align:center; border:1px solid var(--color-border); border-radius:var(--radius-md); box-shadow:var(--shadow-subtle); }
.error-state__code { margin-inline:auto!important; color:var(--color-accent); font-size:4rem; font-weight:900; line-height:1; }
.error-state h1 { margin:.7rem 0; }
.error-state p { margin-inline:auto; color:var(--color-text-muted); }
.error-state .button { margin-top:1.5rem; }

@media (max-width:1050px) {
    .public-site .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .public-site .catalog-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .public-site .catalog-filters .field--search { grid-column:1/-1; }
    .home-hero__grid { grid-template-columns:1fr 1fr; }
    .service-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
    .site-header__inner { min-height:4.5rem; }
    .nav-toggle { display:block; }
    .primary-nav { position:absolute; top:calc(100% + 1px); left:0; right:0; display:none; padding:.5rem 1rem 1rem; border-bottom:1px solid var(--color-border); background:#fff; box-shadow:var(--shadow-subtle); }
    .nav-toggle[aria-expanded="true"] + .primary-nav { display:grid; }
    .primary-nav a { min-height:2.9rem; padding:.4rem .5rem; border-radius:var(--radius-sm); }
    .primary-nav a::after { inset:auto .5rem 0; }
    .site-footer__inner { grid-template-columns:1fr; }
    .public-site .catalog-filters { grid-template-columns:1fr; }
    .public-site .catalog-filters .field--search { grid-column:auto; }
    .public-site .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .public-site .product-hero { grid-template-columns:1fr; }
    .product-summary { padding-top:0; }
    .public-site .specification-list div { grid-template-columns:minmax(8rem,.8fr) minmax(0,1.2fr); }
    .cta-panel { align-items:flex-start; flex-direction:column; }
    .contact-layout { grid-template-columns:1fr; }
    .home-hero__grid { width:min(var(--container),calc(100% - 2rem)); grid-template-columns:1fr; gap:0; }
    .home-hero__copy { width:100%; margin-inline:auto; padding:var(--space-7) 0; }
    .home-hero__copy h1 { font-size:clamp(2.35rem,11vw,3.5rem); }
    .home-hero__visual { min-height:16rem; margin:0 0 var(--space-4); aspect-ratio:4/3; border-radius:6px; }
    .trust-strip__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .trust-strip article:nth-child(3) { border-left:0; }
    .trust-strip article:nth-child(n+3) { border-top:1px solid #d5e3f5; }
    .home-why { grid-template-columns:1fr; }
    .home-why__visual,.home-why__visual img { min-height:0; aspect-ratio:3/2; }
    .home-process ol { grid-template-columns:1fr; gap:1.25rem; }
    .home-process li+li { padding-top:1.25rem; padding-left:0; border:0; }
    .home-process li+li::before { top:0; right:0; bottom:auto; width:auto; height:1px; transform:scaleX(0); transform-origin:left; }
    .home-process.is-revealed li+li::before { transform:scaleX(1); }
    .home-cta>.public-container { align-items:flex-start; flex-direction:column; }
}
@media (min-width:1051px) {
    .public-site:has(.home-page) .site-header__inner { width:min(86rem,calc(100% - 2rem)); }
}
@media (max-width:520px) {
    .brand__text { font-size:.9rem; }
    .public-site .breadcrumbs ol { margin-bottom:1.6rem; }
    .page-intro { padding-bottom:1.5rem; }
    .public-site .product-grid { grid-template-columns:1fr; }
    .public-site .product-card { max-width:none; }
    .catalog-results-heading { align-items:flex-start; flex-direction:column; }
    .public-site .pagination { gap:.3rem; }
    .public-site .pagination a { min-width:2.55rem; min-height:2.55rem; padding:.35rem .55rem; }
    .pagination__direction { font-size:.82rem; }
    .public-site .specification-list div { grid-template-columns:1fr; }
    .public-site .specification-list dt { padding-bottom:.2rem; }
    .public-site .specification-list dd { padding-top:.2rem; }
    .home-actions { align-items:stretch; flex-direction:column; }
    .home-actions .button { width:100%; }
    .trust-strip article { align-items:flex-start; padding:.9rem .65rem; }
    .trust-strip .line-icon { width:1.8rem; height:1.8rem; }
    .trust-strip p { display:none; }
    .service-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
    .service-cards article { padding:1rem; }
    .service-cards p { font-size:.78rem; }
    .home-why__copy ul { grid-template-columns:1fr; }
    .home-section__heading { align-items:flex-start; flex-direction:column; }
    .home-hero__copy > :is(.eyebrow,h1,p,.home-actions),.trust-strip article { animation-duration:.42s; }
    .home-hero__visual { animation-duration:.56s; transform-origin:center; }
    .reveal-ready .motion-group .motion-item { transform:translateY(14px) scale(.99); transition-duration:.4s; transition-delay:calc(var(--motion-order,0) * 45ms); }
    .reveal-ready .home-why :is(.home-why__copy,.home-why__visual),.reveal-ready :is(.home-cta,.cta-panel) .motion-item { transform:translateY(14px) scale(.99); }
    .reveal-ready :is(.home-why,.home-cta,.cta-panel).is-revealed .motion-item { transform:translateY(0) scale(1); }
}
@media (prefers-reduced-motion:reduce) {
    .public-site * { scroll-behavior:auto!important; animation:none!important; transition-duration:.01ms!important; transition-delay:0ms!important; }
    .reveal-ready .motion-group .motion-item { opacity:1; transform:none; }
    .public-site :is(.product-card,.product-card__media img,.service-cards article,.service-cards .line-icon,.brand-list a,.product-gallery__thumb,.button):hover { transform:none; }
    .home-process li+li::before { transform:none; }
}
