/* KrepTech Catalog — frontend styles based on the approved HTML template v0.1.72. */
.kreptech-catalog {
  --kc-blue-950: var(--blue-950, #0b263d);
  --kc-blue-900: var(--blue-900, #123b5d);
  --kc-blue-800: var(--blue-800, #14598b);
  --kc-blue-700: var(--blue-700, #176aa2);
  --kc-blue-050: var(--blue-050, #eef6fb);
  --kc-orange: var(--orange, #f28a00);
  --kc-orange-dark: var(--orange-dark, #d87400);
  --kc-ink: var(--ink, #1e2b35);
  --kc-text: var(--text, #344653);
  --kc-muted: var(--muted, #667987);
  --kc-line: var(--line, #dfe6ea);
  --kc-line-strong: var(--line-strong, #cad5dc);
  --kc-shadow: var(--shadow, 0 10px 28px rgba(17,57,88,.09));
}
.kc-catalog-section { padding-top: 28px; }
.catalog-layout { display:grid; grid-template-columns:285px minmax(0,1fr); gap:30px; align-items:start; }
.catalog-sidebar { position:relative; border:1px solid #cbd5dc; background:#fff; }
.sidebar-head { min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; background:var(--kc-blue-900); color:#fff; font-weight:800; }
.sidebar-toggle { display:none; border:0; background:transparent; color:#fff; font-size:22px; cursor:pointer; }
.sidebar-tree { padding:0; }
.sidebar-all-categories,.sidebar-tree-group summary,.catalog-tree-section,.sidebar-tree-group ul ul a { font-size:14px; font-weight:600; line-height:1.35; }
.sidebar-all-categories { min-height:44px; display:flex; align-items:center; padding:9px 14px; border-bottom:1px solid var(--kc-line); color:var(--kc-blue-950); background:#fff; }
.sidebar-all-categories:hover,.sidebar-all-categories.active { color:var(--kc-blue-800); background:var(--kc-blue-050); box-shadow:inset 3px 0 0 var(--kc-orange); }
.sidebar-tree-group { border-bottom:1px solid var(--kc-line); }
.sidebar-tree-group summary { min-height:46px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 14px; color:var(--kc-blue-950); background:#fff; cursor:pointer; list-style:none; }
.sidebar-tree-group summary::-webkit-details-marker { display:none; }
.sidebar-tree-group summary::after { content:"+"; color:var(--kc-blue-700); font-size:17px; font-weight:500; }
.sidebar-tree-group summary:hover { color:var(--kc-blue-800); background:#f7f9fa; }
.sidebar-tree-group[open] summary { color:var(--kc-blue-900); background:var(--kc-blue-050); box-shadow:inset 3px 0 0 var(--kc-orange); }
.sidebar-tree-group[open] summary::after { content:"−"; }
.sidebar-tree-group > ul { list-style:none; margin:0; padding:0; background:#fff; }
.sidebar-tree-group > ul > li { padding:0; border-top:1px solid #edf1f3; }
.catalog-tree-section { min-height:40px; display:flex; align-items:center; padding:9px 14px 9px 22px; color:var(--kc-blue-900); }
.catalog-tree-section:hover,.catalog-tree-section.active { color:var(--kc-orange-dark); background:#fafbfc; }
.sidebar-tree-group ul ul { list-style:none; margin:0; padding:0 14px 10px 34px; display:grid; gap:0; }
.sidebar-tree-group ul ul li { border-left:1px solid #d8e0e5; }
.sidebar-tree-group ul ul a { display:block; padding:6px 0 6px 12px; color:#5f7180; }
.sidebar-tree-group ul ul a:hover,.sidebar-tree-group ul ul a.active { color:var(--kc-orange-dark); border-left-color:var(--kc-orange); }
.kc-sidebar-filters { margin-top:10px; border-top:8px solid #edf2f5; background:#fbfcfd; box-shadow:inset 0 1px 0 var(--kc-line-strong); }
.kc-sidebar-filters__head { min-height:46px; display:flex; align-items:center; padding:9px 16px; border-bottom:1px solid var(--kc-line-strong); background:#f4f7f9; }
.kc-sidebar-filters__head span { color:var(--kc-blue-950); font-size:14px; font-weight:850; line-height:1.2; }
.kc-sidebar-filters__scroll { overflow:visible; }
.kc-filter-group { padding:17px 16px 16px; }
.kc-filter-group + .kc-filter-group { border-top:1px solid var(--kc-line); }
.kc-filter-title { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0; color:var(--kc-blue-950); font-size:14px; font-weight:800; line-height:1.35; list-style:none; cursor:pointer; }
.kc-filter-title::-webkit-details-marker { display:none; }
.kc-filter-title::after { content:"+"; color:var(--kc-blue-700); font-size:16px; font-weight:600; }
.kc-filter-group[open] .kc-filter-title::after { content:"−"; }
.kc-filter-options { margin-top:11px; display:grid; gap:3px; max-height:238px; overflow-y:auto; overscroll-behavior:contain; padding-right:4px; }
.kc-filter-options::-webkit-scrollbar { width:7px; }
.kc-filter-options::-webkit-scrollbar-track { background:#f2f5f7; }
.kc-filter-options::-webkit-scrollbar-thumb { background:#c5d0d7; border:2px solid #f2f5f7; border-radius:8px; }
.kc-filter-options::-webkit-scrollbar-thumb:hover { background:#9eafb9; }
.kc-filter-option { min-height:34px; display:flex; align-items:center; gap:9px; margin:0; padding:5px 3px; color:var(--kc-text); font-size:13px; line-height:1.3; cursor:pointer; }
.kc-filter-option:hover { color:var(--kc-blue-800); background:#f2f6f8; }
.kc-filter-option input { width:16px; height:16px; margin:0; flex:0 0 auto; accent-color:var(--kc-blue-700); }
.kc-filter-reset { display:block; padding:12px 16px 15px; border-top:1px solid var(--kc-line); color:var(--kc-blue-700); font-size:12px; font-weight:750; }
.kc-filter-reset:hover { color:var(--kc-orange-dark); }
.kc-filter-preview { position:absolute; z-index:25; top:var(--kc-preview-top, 50%); left:calc(100% + 12px); width:158px; padding:10px 11px; background:var(--kc-blue-950); color:#fff; box-shadow:0 8px 24px rgba(10,38,61,.2); }
.kc-filter-preview[hidden] { display:none !important; }
.kc-filter-preview::before { content:""; position:absolute; left:-7px; top:20px; width:0; height:0; border-top:7px solid transparent; border-bottom:7px solid transparent; border-right:7px solid var(--kc-blue-950); }
.kc-filter-preview__count { margin-bottom:8px; font-size:12px; line-height:1.3; }
.kc-filter-preview__count strong { margin-left:3px; font-size:17px; }
.kc-filter-preview__apply { width:100%; min-height:32px; border:1px solid #fff; background:#fff; color:var(--kc-blue-950); font-weight:800; cursor:pointer; }
.kc-filter-preview__apply:hover { background:var(--kc-orange); border-color:var(--kc-orange); color:#fff; }
.kc-filter-preview__apply:disabled { opacity:.6; cursor:wait; }
.kc-filter-preview.is-loading .kc-filter-preview__count { opacity:.8; }
.catalog-toolbar { min-height:44px; margin:0 0 18px; padding-bottom:10px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--kc-line); }
.catalog-count { color:var(--kc-muted); font-size:13px; white-space:nowrap; }
.toolbar-controls { display:flex; align-items:center; justify-content:flex-end; gap:7px; flex-wrap:wrap; font-size:13px; }
.toolbar-controls select,.kc-search input { height:34px; min-height:34px; border:1px solid var(--kc-line-strong); background:#fff; color:var(--kc-ink); padding:0 9px; font-size:13px; line-height:1.2; }
.toolbar-controls select { padding-right:30px; }
.kc-search input { width:188px; }
.kc-filter-submit { min-height:34px; padding:0 12px; border:1px solid var(--kc-blue-700); background:#fff; color:var(--kc-blue-700); font-size:13px; line-height:1; font-weight:700; cursor:pointer; }
.kc-filter-submit:hover { background:var(--kc-blue-800); border-color:var(--kc-blue-800); color:#fff; }
.kc-view-switcher { display:inline-flex; align-items:center; border:1px solid var(--kc-line-strong); background:#fff; }
.kc-view-button { width:34px; height:32px; display:grid; place-items:center; border:0; background:#fff; color:#82919c; padding:0; cursor:pointer; font-size:0; line-height:0; }
.kc-view-button svg { display:block; width:16px; height:16px; flex:none; }
.kc-view-button + .kc-view-button { border-left:1px solid var(--kc-line-strong); }
.kc-view-button:hover { color:var(--kc-blue-800); background:#f6f9fb; }
.kc-view-button.is-active { color:#fff; background:var(--kc-blue-800); }
.kc-view-button:focus-visible { outline:2px solid var(--kc-orange); outline-offset:2px; position:relative; z-index:1; }
.product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.catalog-main .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.product-card { min-width:0; background:#fff; border:1px solid var(--kc-line); padding:18px; display:flex; flex-direction:column; position:relative; }
.product-card:hover { box-shadow:var(--kc-shadow); z-index:1; }
.product-image { height:190px; display:grid; place-items:center; background:#fff; }
.product-image img { max-height:170px; max-width:90%; width:auto; height:auto; object-fit:contain; }
.product-code { margin-top:8px; color:var(--kc-muted); font-size:12px; text-transform:uppercase; letter-spacing:.05em; }
.product-card h3 { margin:6px 0 10px; color:var(--kc-blue-950); font-size:17px; line-height:1.3; }
.product-card h3 a { color:inherit; }
.product-specs { margin:0 0 18px; padding:0; list-style:none; color:#556574; font-size:13px; }
.product-specs li { display:flex; justify-content:space-between; gap:12px; padding:6px 0; border-bottom:1px dotted var(--kc-line-strong); }
.product-specs span:last-child { color:var(--kc-ink); font-weight:650; text-align:right; }
.product-footer { margin-top:auto; display:flex; align-items:center; justify-content:flex-start; gap:12px; }
.product-details-button { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 16px; border:1px solid var(--kc-blue-700); background:#fff; color:var(--kc-blue-700); font-size:14px; font-weight:750; line-height:1; transition:.2s ease; }
.product-details-button:hover { border-color:var(--kc-blue-800); background:var(--kc-blue-800); color:#fff; transform:translateY(-1px); }
/* Professional list view; selection is persisted in localStorage. */
.catalog-main .product-grid.is-list-view { display:grid; grid-template-columns:1fr; gap:10px; }
.catalog-main .product-grid.is-list-view .product-card { display:grid; grid-template-columns:190px minmax(0,1fr) auto; grid-template-areas:"image code action" "image title action" "image specs action"; column-gap:22px; row-gap:0; min-height:190px; padding:16px 18px; border:1px solid var(--kc-line); }
.catalog-main .product-grid.is-list-view .product-card:hover { box-shadow:0 6px 18px rgba(17,57,88,.08); }
.catalog-main .product-grid.is-list-view .product-image { grid-area:image; height:156px; align-self:center; border-right:1px solid #edf1f3; padding-right:18px; }
.catalog-main .product-grid.is-list-view .product-image img { max-width:100%; max-height:146px; }
.catalog-main .product-grid.is-list-view .product-code { grid-area:code; align-self:end; margin:2px 0 0; }
.catalog-main .product-grid.is-list-view h3 { grid-area:title; margin:5px 0 8px; font-size:18px; align-self:start; }
.catalog-main .product-grid.is-list-view .product-specs { grid-area:specs; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; margin:0; align-self:start; }
.catalog-main .product-grid.is-list-view .product-specs li { min-width:0; }
.catalog-main .product-grid.is-list-view .product-footer { grid-area:action; min-width:132px; margin:0; align-self:center; justify-self:end; padding-left:16px; }
.catalog-main .product-grid.is-list-view .product-details-button { min-width:126px; }

.kc-empty { padding:46px 24px; border:1px solid var(--kc-line); background:#fff; text-align:center; }
.kc-empty h2 { margin:0 0 8px; color:var(--kc-blue-950); }
.kc-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:6px; margin-top:28px; }
.kc-pagination__page,.kc-pagination__nav { min-width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--kc-line-strong); background:#fff; color:var(--kc-blue-800); }
.kc-pagination__nav { min-width:40px; font-size:17px; }
.kc-pagination__page:hover,.kc-pagination__nav:hover,.kc-pagination__page.active { background:var(--kc-blue-800); color:#fff; border-color:var(--kc-blue-800); }
.kc-pagination__page.active { font-weight:800; }
.kc-pagination__dots { min-width:24px; text-align:center; color:var(--kc-muted); font-weight:700; }

/* Product page */
.kc-product-section { padding-top:34px; }
.product-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); gap:44px; align-items:start; }
.product-gallery { display:grid; grid-template-columns:86px minmax(0,1fr); gap:16px; }
.gallery-thumbs { display:grid; gap:10px; align-content:start; }
.gallery-thumb { width:86px; height:76px; border:1px solid var(--kc-line); background:#fff; padding:5px; cursor:pointer; }
.gallery-thumb.active { border-color:var(--kc-orange); box-shadow:inset 0 0 0 1px var(--kc-orange); }
.gallery-thumb img { width:100%; height:100%; object-fit:contain; }
.gallery-main { min-height:460px; width:100%; box-sizing:border-box; position:relative; border:1px solid var(--kc-line); background:#fff; display:grid; place-items:center; padding:28px; cursor:zoom-in; color:var(--kc-blue-800); font:inherit; }
.gallery-main:hover { border-color:#b8c7d0; }
.gallery-main:focus-visible { outline:2px solid var(--kc-orange); outline-offset:2px; }
.gallery-main img { max-width:100%; max-height:420px; width:auto; height:auto; object-fit:contain; pointer-events:none; }
.kc-gallery-zoom { position:absolute; right:12px; bottom:12px; width:36px; height:36px; display:grid; place-items:center; background:rgba(255,255,255,.94); border:1px solid var(--kc-line-strong); box-shadow:0 3px 12px rgba(17,57,88,.1); pointer-events:none; }
.kc-gallery-zoom svg { display:block; }
html.kc-lightbox-open { overflow:hidden; }
.kc-lightbox[hidden] { display:none !important; }
.kc-lightbox { position:fixed; z-index:99999; inset:0; display:grid; place-items:center; padding:28px; }
.kc-lightbox__backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; padding:0; background:rgba(7,22,34,.86); cursor:zoom-out; }
.kc-lightbox__dialog { position:relative; z-index:1; display:grid; place-items:center; max-width:min(94vw,1500px); max-height:92vh; min-width:240px; min-height:180px; padding:18px; background:#fff; box-shadow:0 20px 70px rgba(0,0,0,.35); }
.kc-lightbox__dialog img { display:block; max-width:calc(94vw - 36px); max-height:calc(92vh - 36px); width:auto; height:auto; object-fit:contain; }
.kc-lightbox__close { position:absolute; z-index:2; top:8px; right:8px; width:38px; height:38px; display:grid; place-items:center; border:1px solid #cbd5dc; background:rgba(255,255,255,.96); color:var(--kc-blue-950); font-size:26px; line-height:1; cursor:pointer; }
.kc-lightbox__close:hover { background:var(--kc-blue-950); border-color:var(--kc-blue-950); color:#fff; }
.kc-lightbox__close:focus-visible { outline:2px solid var(--kc-orange); outline-offset:2px; }
.product-summary .eyebrow { margin:0 0 9px; color:var(--kc-orange-dark); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.product-summary h1 { margin:0; color:var(--kc-blue-950); font-size:clamp(27px,2.25vw,34px); line-height:1.16; }
.product-subline { margin:16px 0 14px; display:flex; flex-wrap:wrap; gap:18px; color:var(--kc-muted); font-size:14px; line-height:1.45; }
.product-subline span { display:inline-flex; align-items:baseline; gap:4px; }
.product-subline strong { color:var(--kc-blue-900); font-weight:800; }
.spec-table-wrap { width:100%; max-width:100%; overflow-x:visible; border:1px solid var(--kc-line); }
.spec-table { width:100%; min-width:0; table-layout:auto; border-collapse:collapse; font-size:14px; }
.spec-table th { background:var(--kc-blue-900); color:#fff; text-align:left; padding:12px 14px; border-right:1px solid rgba(255,255,255,.18); }
.spec-table td { padding:11px 14px; border-top:1px solid var(--kc-line); border-right:1px solid var(--kc-line); }
.spec-table th,.spec-table td { overflow-wrap:anywhere; word-break:normal; }
.spec-table tbody tr:nth-child(even) { background:#f7f9fa; }
.summary-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.summary-note { margin-top:16px; padding:13px 14px; background:var(--kc-blue-050); border-left:3px solid var(--kc-blue-700); color:#4b5e6d; font-size:13px; }
.product-content { margin-top:54px; }
.tabs { display:flex; overflow-x:auto; border-bottom:1px solid var(--kc-line-strong); }
.tab-button { min-height:48px; border:0; border-top:3px solid transparent; background:#f5f7f8; color:var(--kc-blue-900); padding:0 22px; font-weight:750; white-space:nowrap; cursor:pointer; }
.tab-button + .tab-button { border-left:1px solid var(--kc-line); }
.tab-button.active { background:#fff; border-top-color:var(--kc-orange); color:var(--kc-blue-950); }
.tab-panel { display:none; padding:28px 0 0; }
.tab-panel.active { display:block; }
.document-list { display:grid; border-top:1px solid var(--kc-line); }
.document-link { min-height:58px; display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:12px; border-bottom:1px solid var(--kc-line); color:var(--kc-blue-900); padding:6px 10px; }
.document-link small { display:block; color:var(--kc-muted); }
.document-link:hover { color:var(--kc-orange-dark); background:#fafcfd; }
.document-type { font-size:11px; font-weight:800; }
.related-products-title { margin:0 0 18px; color:var(--kc-blue-950); font-size:28px; line-height:1.2; }
.kc-related .product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }

@media (max-width:1040px) {
  .catalog-layout { grid-template-columns:1fr; gap:20px; }
  .sidebar-toggle { display:block; }
  .catalog-sidebar .sidebar-tree,.catalog-sidebar .kc-sidebar-filters { display:none; }
  .catalog-sidebar.open .sidebar-tree,.catalog-sidebar.open .kc-sidebar-filters { display:block; }
  .kc-filter-preview { position:static; width:auto; margin:0 14px 14px; }
  .kc-filter-preview::before { display:none; }
  .kc-filter-preview__count { margin-bottom:7px; }
  .catalog-main .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .catalog-main .product-grid.is-list-view .product-card { grid-template-columns:150px minmax(0,1fr) auto; column-gap:16px; }
  .catalog-main .product-grid.is-list-view .product-image { height:136px; padding-right:14px; }
  .catalog-main .product-grid.is-list-view .product-image img { max-height:126px; }
  .catalog-main .product-grid.is-list-view .product-specs { grid-template-columns:1fr; }
  .product-layout { grid-template-columns:1fr; gap:30px; }
  .kc-related .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .catalog-toolbar { align-items:flex-start; flex-direction:column; padding-bottom:14px; }
  .toolbar-controls { width:100%; justify-content:flex-start; }
  .kc-search { flex:1 1 100%; }
  .kc-search input { width:100%; }
  .catalog-main .product-grid,.kc-related .product-grid { grid-template-columns:1fr; }
  .catalog-main .product-grid.is-list-view .product-card { grid-template-columns:112px minmax(0,1fr); grid-template-areas:"image code" "image title" "image specs" "action action"; min-height:0; row-gap:2px; }
  .catalog-main .product-grid.is-list-view .product-image { height:112px; padding-right:12px; }
  .catalog-main .product-grid.is-list-view .product-image img { max-height:102px; }
  .catalog-main .product-grid.is-list-view .product-footer { justify-self:start; padding:10px 0 0; }
  .catalog-main .product-grid.is-list-view .product-details-button { min-width:0; }
  .kc-view-switcher { margin-left:auto; }
  .product-gallery { grid-template-columns:1fr; }
  .gallery-thumbs { grid-template-columns:repeat(4,70px); order:2; overflow-x:auto; }
  .gallery-thumb { width:70px; height:64px; }
  .gallery-main { min-height:340px; }
}
@media (max-width:560px) {
  .product-card { padding:15px; }
  .product-image { height:170px; }
  .product-summary h1 { font-size:27px; }
  .related-products-title { font-size:26px; }
  .product-details-button { width:100%; }
  .toolbar-controls select,.kc-filter-submit { width:100%; }
  .kc-view-switcher { width:auto; }
  .kc-view-button { width:42px; }
}

/* Dynamic attribute filters. */
.kc-filter-option span{min-width:0;flex:1 1 auto}
.kc-filter-option small{margin-left:auto;color:var(--kc-muted);font-size:11px;line-height:1}
.kc-filter-option:hover small{color:inherit}
.kc-category-description{margin:0 0 18px;padding:14px 16px;border:1px solid var(--kc-line);background:#fff;color:var(--kc-muted);font-size:14px}
.kc-category-description p{margin:0}

/* Technical tables and drawings. */
.kc-technical-table-title{margin:24px 0 10px;font-size:18px}.kc-technical-table-title:first-child{margin-top:0}.spec-table-wrap.is-scrollable{overflow-x:auto}.spec-table-wrap.is-scrollable .kc-technical-table{min-width:640px}.kc-drawings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.kc-drawings-grid a{display:flex;align-items:center;justify-content:center;min-height:180px;padding:16px;background:#fff;border:1px solid var(--border,#dfe4ea)}.kc-drawings-grid img{max-width:100%;height:auto;max-height:520px;object-fit:contain}@media(max-width:720px){.kc-drawings-grid{grid-template-columns:1fr}}
.sidebar-root-category{display:block;padding:8px 10px;color:inherit;text-decoration:none}.sidebar-root-category:hover,.sidebar-root-category.active{color:var(--brand-orange,#e96d1f)}.sidebar-tree-group>summary .sidebar-root-category{display:inline;padding:0}.sidebar-tree-group>summary a{text-decoration:none}

/* Full catalogue breadcrumbs: hide only the theme breadcrumb on catalogue taxonomy routes. */
body.kc-custom-breadcrumbs > .breadcrumbs:not(.kc-breadcrumbs) { display:none; }
.kc-breadcrumbs ol { min-width:0; }
.kc-breadcrumbs li { min-width:0; }

/* Responsive lightbox. */
@media(max-width:720px){.kc-lightbox{padding:12px}.kc-lightbox__dialog{max-width:100%;max-height:96vh;padding:10px}.kc-lightbox__dialog img{max-width:calc(100vw - 44px);max-height:calc(96vh - 20px)}.kc-gallery-zoom{right:8px;bottom:8px}}


/* Product gallery states and compact product summary. */
.product-gallery.is-single-gallery,
.product-gallery.is-placeholder-gallery { grid-template-columns:minmax(0,1fr); }
.product-gallery.is-single-gallery .gallery-main { grid-column:1 / -1; }
.product-gallery.is-single-gallery:not(.is-placeholder-gallery) .gallery-main img { width:100%; height:400px; max-width:100%; max-height:400px; object-fit:contain; }
.gallery-main.is-placeholder { min-height:480px; padding:40px; background:linear-gradient(180deg,#fff 0%,#f7fafc 100%); }
.gallery-main.is-placeholder img { width:100%; max-width:min(78%,520px); max-height:300px; }
.product-summary .spec-table-wrap { margin-top:12px; }
.product-summary .summary-actions { margin-top:22px; }
.kc-key-specs { margin-top:20px; }
.kc-key-specs h2 { margin:0 0 10px; color:var(--kc-blue-950); font-size:15px; line-height:1.3; font-weight:800; }
.kc-key-specs .spec-table-wrap { margin-top:0; }
.product-summary > .product-subline + .kc-key-specs { margin-top:20px; }
.product-summary > .product-subline + .summary-actions { margin-top:24px; }
@media (max-width:1040px) { .gallery-main.is-placeholder { min-height:360px; } }
@media (max-width:720px) {
  .product-subline { gap:10px 14px; font-size:13px; }
  .gallery-main.is-placeholder { min-height:300px; padding:26px; }
  .gallery-main.is-placeholder img { max-width:min(82%,360px); max-height:220px; }
  .product-gallery.is-single-gallery:not(.is-placeholder-gallery) .gallery-main img { height:280px; max-height:280px; }
}

/* v0.3.1 — keep only the intentional toolbar divider; remove stray outer catalogue lines. */
.kreptech-catalog .catalog-main{border-left:0!important;box-shadow:none}
.kreptech-catalog .catalog-main::before,.kreptech-catalog .catalog-main::after{content:none!important;display:none!important}
.kreptech-catalog .catalog-main > .product-grid{border-top:0!important;border-bottom:0!important;border-left:0!important;box-shadow:none}
.kreptech-catalog .catalog-main > .product-grid::before,.kreptech-catalog .catalog-main > .product-grid::after{content:none!important;display:none!important}
