/* Preview only: open product presentation inspired by Hylsexperten. */
.st-preview { background:transparent; color:#394855; padding:1rem 0 4rem; }
.st-preview > .grid-container { width:100%; }
.st-preview-notice { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem; padding:.6rem 0; border-bottom:1px solid #e9ebed; color:#737c83; font-size:.7rem; }
.st-preview-notice a,.st-preview-header p a { text-decoration:underline; text-underline-offset:3px; color:inherit; }
.st-preview-header { padding:1.5rem 0 2rem; max-width:60rem; }
.st-preview-header .woocommerce-breadcrumb { margin-bottom:1rem; font-size:.65rem; }
.st-preview-header h1 { font-size:clamp(1.8rem,3vw,2.65rem); font-weight:600; line-height:1.15; letter-spacing:-.025em; margin:0 0 1rem; visibility:visible!important; }
.st-preview-header p { max-width:50rem; margin:0; font-size:.9rem; line-height:1.65; }
.st-preview-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:clamp(1.5rem,3vw,3rem); align-items:start; }
.st-preview-sidebar { padding:0!important; margin:0!important; min-width:0; }
.st-preview-sidebar .widget-title,.st-preview-sidebar .st-product-filters h2 { font-size:.8rem; font-weight:600; letter-spacing:.02em; margin-bottom:1rem; }
.st-preview-sidebar .st-category-tree { margin-bottom:1.5rem; }
.st-preview-sidebar .st-category-tree li > a { font-size:.8rem; }
.st-preview-sidebar .st-category-count { background:#f1f3f4; color:#394855; padding:.3rem .45rem; }
.st-preview-sidebar .st-product-filters { padding-top:1.5rem; }
.st-preview-sidebar .st-filter-grid { gap:1.15rem; }
.st-preview-sidebar .st-product-filters label,.st-preview-sidebar .st-product-filters legend { font-size:.75rem; font-weight:400; }
.st-preview-sidebar .st-product-filters input,.st-preview-sidebar .st-product-filters select { font-size:.8rem; min-height:42px; border-color:#d2d7db; }
.st-preview-sidebar .st-filter-help { font-size:.7rem; line-height:1.6; color:#788087; }
.st-preview-results { min-width:0; }
.st-preview-categories { display:flex; flex-wrap:wrap; gap:.5rem; margin:0 0 1.5rem; }
.st-preview-categories a { padding:.5rem .9rem; border:1px solid #d8dcdf; border-radius:100px; color:#394855; font-size:.75rem; line-height:1.3; background:transparent; transition:border-color .15s,background .15s; }
.st-preview-categories a:hover { background:#fff9df; border-color:#e1bc2b; }
.st-preview-count { font-size:.7rem; color:#788087; border-bottom:1px solid #eceeef; padding-bottom:.85rem; margin:0 0 1rem; }
.st-preview-products { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr)); column-gap:1.5rem; row-gap:2.5rem; list-style:none; margin:0!important; padding:0; }
.st-preview-card { display:flex; flex-direction:column; background:transparent; border:0; border-radius:0; min-width:0; margin:0; }
.st-preview-image { display:flex; align-items:center; justify-content:center; background:transparent; aspect-ratio:1/1; padding:.75rem; overflow:hidden; margin-bottom:.8rem; }
.st-preview-image img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .2s ease; }
.st-preview-image:hover img { transform:scale(1.04); }
.st-preview-card-body { display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:0; }
.st-preview-card .st-preview-product-title { font-size:.82rem; font-weight:400; line-height:1.5; margin:0 0 .5rem; }
.st-preview-card .st-preview-product-title a { color:#394855; }
.st-preview-card .st-preview-product-title a:hover { text-decoration:underline; text-underline-offset:3px; }
.st-preview-brand { font-size:.65rem; color:#7c858d; margin:0 0 .35rem; text-transform:uppercase; letter-spacing:.06em; }
.st-preview-spec { font-size:.72rem; margin:0 0 .6rem; }
.st-preview-product-link { font-size:.75rem; font-weight:500; color:#394855; padding:.5rem 0; margin-top:auto; min-height:36px; }
.st-preview-product-link span { margin-left:.35rem; }
.st-preview-product-link:hover { text-decoration:underline; text-underline-offset:4px; }
.st-preview-information { margin-top:3rem; padding-top:2rem; border-top:1px solid #e4e7e9; max-width:55rem; }
.st-preview-information h2 { font-size:1.5rem; }
.st-preview-information p { font-size:.9rem; line-height:1.8; }
.st-preview a:focus-visible { outline:2px solid #394855; outline-offset:4px; }
@media(max-width:1200px) { .st-preview-products { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:950px) { .st-preview-layout { grid-template-columns:190px minmax(0,1fr); } .st-preview-products { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .st-preview-layout { grid-template-columns:1fr; } .st-preview-header { padding-bottom:1.5rem; } .st-preview-sidebar { border-bottom:1px solid #e4e7e9; } .st-preview-products { column-gap:1rem; row-gap:2rem; } }
@media(prefers-reduced-motion:reduce) { .st-preview-image img { transition:none; } }

.st-preview-category-section { padding-top:1.5rem; margin-bottom:3rem; border-top:1px solid #dfe3e6; scroll-margin-top:140px; }
.st-preview-section-title { display:flex; align-items:baseline; justify-content:space-between; gap:.75rem; flex-wrap:wrap; margin-bottom:1rem; }
.st-preview-section-title h2 { font-size:1.6rem; font-weight:600; margin:0; letter-spacing:-.02em; }
.st-preview-section-title h2 a { color:inherit; }
.st-preview-section-total { font-size:.75rem; color:#68747d; }
.st-preview-section-description { max-width:52rem; font-size:.85rem; line-height:1.75; margin-bottom:1.25rem; }
.st-preview-section-description p { font-size:inherit; line-height:inherit; margin-bottom:.75rem; }
.st-preview-subcategories { margin-bottom:1.5rem; }
.st-preview-subcategories a { display:inline-flex; align-items:center; gap:.5rem; }
.st-preview-subcategories a span:not([aria-hidden]) { font-size:.65rem; color:#737e87; }
.st-preview-section-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem; margin-top:1.25rem; padding-top:1rem; border-top:1px solid #eceeef; font-size:.75rem; color:#68747d; }
.st-preview-view-all { display:inline-flex; align-items:center; gap:1rem; padding:.65rem 1rem; border:1px solid #b5bec4; border-radius:100px; color:#394855; font-size:.8rem; font-weight:500; }
.st-preview-view-all:hover { background:#fcd12a; border-color:#fcd12a; }
/* Single-product categories use the space for image and category information. */
.st-preview-single-category { display:grid; grid-template-columns:minmax(150px,26%) minmax(0,1fr); gap:2rem; align-items:center; padding-block:1.75rem; margin-bottom:1rem; }
.st-preview-single-image { display:flex; align-items:center; justify-content:center; min-width:0; }
.st-preview-single-image img { display:block; width:100%; height:230px; object-fit:contain; }
.st-preview-single-content { min-width:0; }
.st-preview-single-content .st-preview-section-title { margin-bottom:.8rem; }
.st-preview-single-content .st-preview-section-description { margin-bottom:1rem; }
.st-preview-single-product-name { font-size:.95rem; font-weight:500; margin:0 0 .75rem; }
/* Theme-wide link hover colors must not turn the label yellow too. */
.st-preview a.st-preview-view-all:hover,
.st-preview a.st-preview-view-all:focus-visible,
.st-preview a.st-preview-view-all:active { background:#fcd12a !important; border-color:#fcd12a !important; color:#394855 !important; }
.st-preview a.st-preview-view-all:hover span,
.st-preview a.st-preview-view-all:focus-visible span,
.st-preview a.st-preview-view-all:active span { color:#394855 !important; }
@media(max-width:600px) {
    .st-preview-single-category { grid-template-columns:1fr; gap:1rem; }
    .st-preview-single-image img { height:190px; }
}
/* Full-width catalog trial with a compact filter toolbar. */
.st-preview .st-preview-layout { display:block; }
.st-preview-top-filters { margin-bottom:1.5rem; }
.st-preview-top-filters .st-product-filters { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.75rem 1.25rem; margin:0; padding:1rem 0; border-block:1px solid #e4e7e9; }
.st-preview-top-filters .st-filter-grid { grid-column:1; grid-row:1; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.st-preview-top-filters .st-filter-actions { grid-column:2; grid-row:1; display:flex; align-items:end; gap:.5rem; margin:0; }
.st-preview-top-filters .st-filter-actions .button_group_item { width:auto; padding:.65rem .9rem; min-height:44px; font-size:.8rem; }
.st-preview-top-filters label,.st-preview-top-filters legend { font-size:.75rem; font-weight:500; }
.st-preview-top-filters select,.st-preview-top-filters input { font-size:.8rem; height:44px; border-color:#cbd1d5; border-radius:6px; }
.st-preview-more-filters { grid-column:1/-1; grid-row:2; }
.st-preview-more-filters summary { cursor:pointer; font-size:.8rem; padding:.25rem 0; width:fit-content; }
.st-preview-more-filters summary span { font-size:.7rem; color:#68747d; margin-left:.5rem; }
.st-preview-range-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; max-width:720px; margin-top:1rem; }
.st-preview-top-filters .st-filter-help { font-size:.7rem; }
.st-preview-top-filters .st-filter-error,.st-preview-top-filters .st-filter-result-count { grid-column:1/-1; margin:0; }
.st-preview-active-filters { display:flex; flex-wrap:wrap; gap:.5rem; }
.st-preview-active-filters a { display:inline-flex; align-items:center; gap:.65rem; margin-top:.75rem; padding:.35rem .7rem; border-radius:100px; background:#f1f3f4; font-size:.75rem; color:#394855; }
.st-preview-active-filters a:hover { background:#fff3c4; color:#394855; }
.st-preview-description { font-size:.9rem; line-height:1.65; }
.st-preview-description summary { cursor:pointer; }
.st-preview-description summary span { display:inline-block; text-decoration:underline; text-underline-offset:3px; }
.st-preview-description[open] summary { margin-bottom:.8rem; }
.st-preview-description p + p { margin-top:.75rem; }
.st-preview-product-category { font-size:.7rem; color:#68747d; margin:0 0 .4rem; }
.st-preview-categories a { display:inline-flex; align-items:center; gap:.5rem; }
@media(max-width:1000px) {
 .st-preview-top-filters .st-product-filters { grid-template-columns:1fr; }
 .st-preview-top-filters .st-filter-actions { grid-column:1; grid-row:3; }
}
@media(max-width:600px) {
 .st-preview-top-filters .st-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
 .st-preview-top-filters .st-filter-grid > div:first-child { grid-column:1/-1; }
 .st-preview-range-grid { grid-template-columns:1fr; gap:1rem; }
 .st-preview-more-filters summary span { display:none; }
}
/* Compact category sections; preserve reading order and full category text. */
.st-preview-category-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem 2.5rem; }
.st-preview-category-groups > .st-preview-category-section { grid-column:1/-1; min-width:0; margin:0; padding:1.25rem 0 0; border-top:1px solid #e4e7e9; }
.st-preview-category-groups > .st-preview-category-small { grid-column:auto; }
.st-preview-category-small .st-preview-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.st-preview-category-groups .st-preview-section-title { margin-bottom:.65rem; }
.st-preview-category-groups .st-preview-section-description { font-size:.85rem; line-height:1.6; color:#394855; margin-bottom:.85rem; }
.st-preview-category-groups .st-preview-section-description p:last-child { margin-bottom:0; }
.st-preview .st-preview-image { aspect-ratio:auto; height:240px; padding:.5rem; margin-bottom:.65rem; }
.st-preview-card .st-preview-product-title { font-size:1rem; font-weight:600; line-height:1.4; }
.st-preview .st-preview-product-link { font-size:.875rem; }
.st-preview .st-preview-spec { font-size:.825rem; }
.st-preview-category-groups .st-preview-section-footer { border:0; padding:0; margin-top:1rem; justify-content:flex-start; }
.st-preview-category-groups .st-preview-subcategories { margin-bottom:1rem; }
@media(max-width:800px) {
 .st-preview-category-groups { grid-template-columns:1fr; gap:1.5rem; }
 .st-preview-category-groups > .st-preview-category-small { grid-column:1/-1; }
 .st-preview .st-preview-image { height:220px; }
}

/* Keep category copy in normal flow; reserve image space independently of intrinsic size. */
.st-preview-category-groups > .st-preview-category-section { display:block; }
.st-preview .st-preview-products { align-items:start; }
.st-preview .st-preview-card { display:block; min-width:0; }
.st-preview .st-preview-image {
 display:block; position:relative; box-sizing:border-box;
 width:100%; height:auto; min-height:0; max-height:none; aspect-ratio:1 / 1;
 padding:0; margin:0 0 .85rem; overflow:hidden; flex:none;
}
.st-preview .st-preview-image img {
 position:absolute !important; inset:0 !important;
 display:block !important; box-sizing:border-box;
 width:100% !important; height:100% !important;
 max-width:100% !important; max-height:100% !important; min-height:0 !important;
 object-fit:contain !important; object-position:center;
 margin:0 !important; padding:3rem !important; background-color:#fff; transform:none !important;
}
.st-preview .st-preview-card-body { position:static; }


/* Descriptions belong directly beneath the product or subcategory name. */
.st-preview .st-preview-image,
.st-preview .st-preview-image img { border-radius:12px; }
.st-preview .st-preview-card-description { font-size:.78rem; line-height:1.6; font-weight:400; color:#52616c; margin:0 0 .7rem; }
.st-preview .st-preview-card-description p { font-size:inherit; line-height:inherit; margin:0 0 .45rem; }
.st-preview-subcategory-descriptions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem 1.5rem; margin:0 0 1.25rem; }
.st-preview-subcategory-item > a { display:inline-block; font-size:.85rem; font-weight:600; color:#394855; margin-bottom:.3rem; }
.st-preview-subcategory-item > a:hover { text-decoration:underline; }
.st-preview-category-small .st-preview-subcategory-descriptions { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:800px) { .st-preview-subcategory-descriptions { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:500px) { .st-preview-subcategory-descriptions,.st-preview-category-small .st-preview-subcategory-descriptions { grid-template-columns:1fr; } }

.st-preview .st-auto-filter .st-filter-submit { display:none; }
.st-preview .st-product-filters[aria-busy="true"] { opacity:.65; cursor:progress; }

/* Match the reset button to the actual select height, including theme padding. */
.st-preview-top-filters .st-filter-grid select {
 box-sizing:border-box; height:44px !important; min-height:44px !important;
 padding-block:0 !important; margin-bottom:0 !important; line-height:normal;
}
.st-preview-top-filters .st-filter-actions { align-self:end; align-items:center; }
.st-preview-top-filters .st-filter-actions .st-filter-reset {
 box-sizing:border-box; height:44px !important; min-height:44px !important;
 padding-block:0 !important; margin:0 !important; display:flex; align-items:center;
}

/* Distinct navigation buttons for the next category level. */
.st-preview-subcategory-label { margin:0 0 .55rem; font-size:.8rem; font-weight:600; color:#394855; }
.st-preview .st-preview-subcategories { gap:.6rem; margin-bottom:1.25rem; }
.st-preview .st-preview-subcategories a {
 display:inline-flex; align-items:center; justify-content:space-between; gap:.85rem;
 min-height:36px; padding:.4rem .85rem;
 border:1px solid #394855; border-radius:999px; background:#394855;
 color:#fff; font-size:.8rem; font-weight:500; line-height:1.35;
 text-decoration:none; transition:background-color .15s,border-color .15s;
}
.st-preview .st-preview-subcategories a span[aria-hidden] {
 display:inline-flex; align-items:center; justify-content:center; flex:0 0 26px;
 width:26px; height:26px; border-radius:50%; background:transparent; color:#fff;
 font-size:1rem; line-height:1;
}
.st-preview .st-preview-subcategories a:hover,
.st-preview .st-preview-subcategories a:focus-visible { background:#293744; border-color:#293744; color:#fff !important; }
.st-preview .st-preview-subcategories a:hover span[aria-hidden],
.st-preview .st-preview-subcategories a:focus-visible span[aria-hidden] { color:#fff !important; }
@media(prefers-reduced-motion:reduce) { .st-preview .st-preview-subcategories a { transition:none; } }

.st-preview .st-preview-quote-button { display:inline-flex; align-items:center; justify-content:center; margin:.35rem 0 .5rem; padding:.45rem .85rem; min-height:36px; border:1px solid #fcd12a; border-radius:8px; background:#fcd12a; color:#394855; font:inherit; font-size:.78rem; font-weight:600; cursor:pointer; }
.st-preview .st-preview-quote-button[hidden] { display:none; }
.st-preview .st-preview-quote-button:hover { background:#e8bf1c; border-color:#e8bf1c; color:#394855; }
.st-preview .st-preview-quote-button:focus-visible,.st-preview-quote-close:focus-visible { outline:3px solid #394855; outline-offset:3px; }
html.st-quote-open { overflow:hidden; }
dialog.st-preview-quote { box-sizing:border-box; position:fixed; inset:0; width:min(900px,calc(100% - 2rem)); max-height:calc(100dvh - 2rem); margin:auto; padding:2rem; border:0; border-radius:16px; background:#fff; color:#394855; overflow:auto; }
dialog.st-preview-quote::backdrop { background:rgb(25 35 44 / .65); }
.st-preview-quote h2 { margin:0 3rem 1.25rem 0; font-size:1.6rem; }
.st-preview-quote-close { position:absolute; top:.65rem; right:.65rem; width:44px; height:44px; border:0; border-radius:50%; background:#eef1f3; color:#394855; font-size:1.8rem; cursor:pointer; }
.st-preview-quote-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:2rem; align-items:start; }
.st-preview-quote-image { display:block; width:100%; height:240px; object-fit:contain; }
.st-preview-quote-name { font-size:1rem; margin:1rem 0; }
.st-preview-quote-frame { width:100%; height:560px; border:0; }
@media(max-width:650px) { dialog.st-preview-quote { padding:1.25rem; } .st-preview-quote-layout { grid-template-columns:1fr; gap:.5rem; } .st-preview-quote-product { display:flex; align-items:center; gap:1rem; } .st-preview-quote-image { width:80px; height:80px; flex:none; } .st-preview-quote-name { font-size:.9rem; } }

@keyframes st-quote-slide-up { from { opacity:0; transform:translateY(40px); } to { opacity:1; transform:translateY(0); } }
@keyframes st-quote-slide-down { from { opacity:1; transform:translateY(0); } to { opacity:0; transform:translateY(40px); } }
@keyframes st-quote-backdrop-in { from { background:rgb(25 35 44 / 0); } to { background:rgb(25 35 44 / .65); } }
@keyframes st-quote-backdrop-out { from { background:rgb(25 35 44 / .65); } to { background:rgb(25 35 44 / 0); } }
dialog.st-preview-quote[open] { animation:st-quote-slide-up 280ms cubic-bezier(.2,.8,.2,1) both; }
dialog.st-preview-quote[open]::backdrop { animation:st-quote-backdrop-in 280ms ease both; }
dialog.st-preview-quote[open].is-closing { animation:st-quote-slide-down 220ms ease-in both; pointer-events:none; }
dialog.st-preview-quote[open].is-closing::backdrop { animation:st-quote-backdrop-out 220ms ease-in both; }
@media(prefers-reduced-motion:reduce) {
 dialog.st-preview-quote[open],dialog.st-preview-quote[open]::backdrop { animation:none !important; }
}

/* Use the theme container for both header and preview content. */
.st-catalog-preview .top-headers-wrapper .site-header.default .site-header-wrapper { padding-inline:0; }
@media(min-width:1024px) {
 .st-catalog-preview .top-headers-wrapper .site-header.default .site-header-wrapper .menu-wrapper { gap:.75rem; }
 .st-catalog-preview .top-headers-wrapper .site-header.default .site-header-wrapper .site-tools { margin-left:0 !important; padding-left:1rem !important; gap:0; }
 .st-catalog-preview .site-header.default .site-tools .right-navigation > ul > li { margin-inline:0; }
}
/* Product-led quote dialog; the existing Upsales form remains unchanged. */
dialog.st-preview-quote { width:min(940px,calc(100% - 2rem)); padding:0; border-radius:20px; box-shadow:0 24px 90px rgb(15 27 38 / .28); }
.st-preview-quote .st-preview-quote-layout { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:0; align-items:stretch; }
.st-preview-quote .st-preview-quote-product { display:flex; flex-direction:column; align-items:stretch; gap:0; min-width:0; padding:2rem; background:#eef1f3; border-top:5px solid #fcd12a; }
.st-preview-quote-eyebrow { font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; font-weight:600; margin:0 0 1.25rem; }
.st-preview-quote-photo { background:#fff; padding:1rem; border-radius:14px; margin-bottom:1.25rem; }
.st-preview-quote .st-preview-quote-image { width:100% !important; height:200px !important; object-fit:contain; margin:0; }
.st-preview-quote-label { color:#64727d; font-size:.7rem; margin:0 0 .35rem; }
.st-preview-quote .st-preview-quote-name { font-size:1.1rem; font-weight:600; line-height:1.4; margin:0 0 .75rem; }
.st-preview-quote-note { font-size:.78rem; line-height:1.65; margin:0 0 1.5rem; color:#52616c; }
.st-preview-quote-contact { margin-top:auto; padding-top:1rem; border-top:1px solid #d5dde2; }
.st-preview-quote-contact > span { display:block; font-size:.7rem; margin-bottom:.3rem; }
.st-preview-quote-contact a { color:#394855; font-size:.95rem; font-weight:600; }
.st-preview-quote-contact a:hover { text-decoration:underline; }
.st-preview-quote-form-panel { min-width:0; padding:3rem 1.75rem 1.25rem; background:#fff; }
.st-preview-quote .st-preview-quote-frame { display:block; height:560px; width:100%; border:0; margin:0; }
.st-preview-quote .st-preview-quote-close { z-index:2; top:.75rem; right:.75rem; width:36px; height:36px; font-size:1.4rem; transition:background-color .15s; }
.st-preview-quote-close:hover { background:#fcd12a; }
@media(max-width:650px) {
 dialog.st-preview-quote { width:calc(100% - 1rem); border-radius:14px; }
 .st-preview-quote .st-preview-quote-layout { grid-template-columns:1fr; }
 .st-preview-quote .st-preview-quote-product { display:grid; grid-template-columns:80px minmax(0,1fr); gap:.75rem; padding:1.25rem; }
 .st-preview-quote-eyebrow { grid-column:1/-1; margin:0; padding-right:2rem; }
 .st-preview-quote-photo { margin:0; padding:.4rem; align-self:start; }
 .st-preview-quote .st-preview-quote-image { height:80px !important; }
 .st-preview-quote .st-preview-quote-name { font-size:.9rem; margin:0; }
 .st-preview-quote-note { display:none; }
 .st-preview-quote-contact { grid-column:1/-1; padding-top:.65rem; }
 .st-preview-quote-form-panel { padding:1rem; }
}
/* Keep product images readable in narrow mobile cards. */
@media(max-width:600px) {
 .st-preview .st-preview-image img { padding:1rem !important; }
}

/* Preserve the category/shop contact form independently of the former hero. */
.st-catalog-intro-with-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,440px); gap:2rem; align-items:start; margin-bottom:1.5rem; }
.st-catalog-contact { min-width:0; padding:1rem; background:#fff; border-radius:12px; margin-top:1.5rem; scroll-margin-top:120px; }
.st-catalog-contact h2 { font-size:1.1rem; font-weight:600; margin:0 0 1rem; }
.st-catalog-contact iframe { display:block; width:100%; max-width:100%; border:0; }
.st-catalog-contact input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.st-catalog-contact textarea,.st-catalog-contact select { width:100%; box-sizing:border-box; }
.st-catalog-contact button[type=submit],.st-catalog-contact input[type=submit] { background:#ffd326; color:#394855; border:0; border-radius:6px; padding:.75rem 1.25rem; font-weight:600; }
.st-catalog-contact button[type=submit]:hover { background:#edc21a; color:#394855; }
@media(max-width:800px) { .st-catalog-intro-with-form { grid-template-columns:1fr; gap:0; } .st-catalog-contact { margin-top:0; padding:1rem; } }

/* Compact embedded Upsales form: one card, two field columns on wider screens. */
.st-catalog-contact #up-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px !important; padding:0 !important; margin:0; width:100%; max-width:none; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
.st-catalog-contact #up-form > div { min-width:0; margin:0; }
.st-catalog-contact #up-form > div:first-of-type,.st-catalog-contact #up-form > .submit-button { grid-column:1/-1; }
.st-catalog-contact #up-form input:not([type=hidden]):not([type=checkbox]):not([type=radio]) { height:44px; min-height:44px; margin:0; padding-block:8px; font-size:16px; }
.st-catalog-contact #up-form .iti { width:100%; }
.st-catalog-contact #up-form button[type=submit] { min-height:44px; margin:0; padding:8px 18px; font-size:14px; width:auto; }
@media(max-width:480px) { .st-catalog-contact #up-form { grid-template-columns:1fr; } }
