/*
 * GSOL commerce design system.
 *
 * Ported from GSOL-WordPress-Integration-v45/gsol-commerce-preview.html.
 * The preview scoped everything under #gsolCommercePreview; here the scope is
 * body.gsol-commerce, which keeps the design ahead of Storefront's own rules
 * and still reaches the overlays WordPress prints outside the page wrapper.
 */

/* Self-hosted: the preview pulled Manrope from Google Fonts on every view. */
@font-face {
  font-family: Manrope;
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('../fonts/manrope-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: Manrope;
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('../fonts/manrope-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: Manrope;
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('../fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


body.gsol-commerce {
  --gsol-ink: #101820;
  --gsol-ink-soft: #25313a;
  --gsol-cyan: #00a9ce;
  --gsol-cyan-dark: #007f9d;
  --gsol-mint: #dff4ee;
  --gsol-lime: #d8ef6f;
  --gsol-red: #d43c2f;
  --gsol-green: #17834f;
  --gsol-paper: #f5f7f8;
  --gsol-white: #ffffff;
  --gsol-border: #dbe1e5;
  --gsol-muted: #61717d;
  --gsol-warm: #f2eadf;
  --gsol-yellow: #f4c84a;
  --gsol-shadow: 0 10px 28px rgba(16, 24, 32, 0.09);
  width: 100%;
  margin: 0;
  background: var(--gsol-paper);
  color: var(--gsol-ink);
  font-family: Manrope, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5;
}
body.gsol-commerce, body.gsol-commerce * { box-sizing: border-box; letter-spacing: 0 !important; }
body.gsol-commerce button, body.gsol-commerce input, body.gsol-commerce select, body.gsol-commerce textarea { font: inherit; }
body.gsol-commerce button, body.gsol-commerce a { -webkit-tap-highlight-color: transparent; }
body.gsol-commerce button { cursor: pointer; }
body.gsol-commerce a { color: inherit; text-decoration: none; cursor: pointer; }
body.gsol-commerce img { display: block; max-width: 100%; }
body.gsol-commerce h1, body.gsol-commerce h2, body.gsol-commerce h3, body.gsol-commerce p { margin-top: 0; }
body.gsol-commerce h1, body.gsol-commerce h2, body.gsol-commerce h3 { line-height: 1.14; }
body.gsol-commerce .gsol-shell { width: min(100% - 40px, 1320px); margin: 0 auto; }
/* The preview swapped pages by toggling .is-active on one of six stacked
   sections. Here each page is its own request, so the wrapper stays only as
   a styling hook — the rules keyed to [data-page] below depend on it. */
body.gsol-commerce .gsol-page { display: block; }
body.gsol-commerce .gsol-screen-reader { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
body.gsol-commerce .gsol-icon { width: 18px; height: 18px; stroke-width: 2; flex: 0 0 auto; }

body.gsol-commerce .gsol-promo {
  min-height: 34px; display: flex; align-items: center; justify-content: center; gap: 22px;
  padding: 7px 20px; background: var(--gsol-ink); color: #fff; font-size: 12px; font-weight: 700;
}
body.gsol-commerce .gsol-promo span { display: inline-flex; align-items: center; gap: 7px; }
body.gsol-commerce .gsol-promo .gsol-icon { width: 14px; height: 14px; color: var(--gsol-lime); }
body.gsol-commerce .gsol-main-header { position: relative; z-index: 40; background: #fff; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-header-row { min-height: 78px; display: grid; grid-template-columns: 170px minmax(280px, 650px) auto; align-items: center; gap: 26px; }
body.gsol-commerce .gsol-brand { display: inline-flex; align-items: center; gap: 10px; width: max-content; }
body.gsol-commerce .gsol-brand-mark { display: grid; place-items: center; width: 38px; height: 38px; background: var(--gsol-cyan); color: var(--gsol-ink); border-radius: 5px; font-size: 19px; font-weight: 800; }
body.gsol-commerce .gsol-brand-name { display: flex; flex-direction: column; line-height: 1; }
body.gsol-commerce .gsol-brand-name strong { font-size: 24px; font-weight: 800; }
body.gsol-commerce .gsol-brand-name small { margin-top: 4px; color: var(--gsol-muted); font-size: 9px; font-weight: 700; text-transform: uppercase; }
body.gsol-commerce .gsol-search-wrap { position: relative; }
body.gsol-commerce .gsol-search { display: grid; grid-template-columns: auto 1fr auto; align-items: center; height: 46px; border: 1px solid #aeb9c1; border-radius: 6px; background: #fff; overflow: hidden; }
body.gsol-commerce .gsol-search:focus-within { border-color: var(--gsol-cyan-dark); box-shadow: 0 0 0 3px rgba(0,169,206,.14); }
body.gsol-commerce .gsol-search > .gsol-icon { margin-left: 14px; color: var(--gsol-muted); }
body.gsol-commerce .gsol-search input { min-width: 0; height: 44px; padding: 0 12px; border: 0; outline: 0; color: var(--gsol-ink); background: transparent; }
body.gsol-commerce .gsol-search button { height: 36px; margin-right: 4px; padding: 0 16px; border: 0; border-radius: 4px; background: var(--gsol-cyan); color: var(--gsol-ink); font-size: 13px; font-weight: 800; }
body.gsol-commerce .gsol-search-results { position: absolute; top: 52px; left: 0; right: 0; display: none; padding: 8px; background: #fff; border: 1px solid var(--gsol-border); border-radius: 6px; box-shadow: var(--gsol-shadow); z-index: 80; }
body.gsol-commerce .gsol-search-results.is-open { display: block; }
body.gsol-commerce .gsol-search-heading { padding: 7px 9px; color: var(--gsol-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-search-result { display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 10px; width: 100%; padding: 8px; border: 0; border-radius: 4px; background: #fff; text-align: left; }
body.gsol-commerce .gsol-search-result:hover { background: var(--gsol-paper); }
body.gsol-commerce .gsol-search-result img { width: 48px; height: 48px; object-fit: contain; }
body.gsol-commerce .gsol-search-result b { display: block; font-size: 12px; }
body.gsol-commerce .gsol-search-result small { color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-search-result strong { color: var(--gsol-cyan-dark); font-size: 13px; }
body.gsol-commerce .gsol-header-actions { display: flex; justify-content: flex-end; gap: 4px; }
body.gsol-commerce .gsol-header-action { position: relative; display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 6px 10px; border: 0; border-radius: 4px; background: transparent; color: var(--gsol-ink-soft); font-size: 12px; font-weight: 700; }
body.gsol-commerce .gsol-header-action:hover { background: var(--gsol-paper); }
body.gsol-commerce .gsol-cart-count { position: absolute; top: 0; left: 25px; display: grid; place-items: center; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 9px; background: var(--gsol-red); color: #fff; font-size: 9px; }
body.gsol-commerce .gsol-departments { background: #fff; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-departments-row { min-height: 48px; display: flex; align-items: center; gap: 6px; }
body.gsol-commerce .gsol-all-products { display: inline-flex; align-items: center; gap: 8px; align-self: stretch; padding: 0 18px; border: 0; background: var(--gsol-cyan); color: var(--gsol-ink); font-size: 13px; font-weight: 800; }
/* Owner, 2026-08-17: GSOL Gaming sits in the row like every other entry. The
   neighbours are <button> elements and inherit the dark ink; a plain <a>
   inherits the link colour instead and came out washed out next to them, so
   the anchors are given the same ink and weight. The only thing that sets
   GSOL Gaming apart is that it has no dropdown - it goes straight to the
   shelf. */
body.gsol-commerce a.gsol-nav-link { color: var(--gsol-ink); }
body.gsol-commerce .gsol-nav-link { display: inline-flex; align-items: center; min-height: 38px; padding: 0 12px; border-radius: 4px; font-size: 12px; font-weight: 700; white-space: nowrap; }
body.gsol-commerce .gsol-nav-link:hover { background: var(--gsol-paper); color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-nav-link.is-sale { margin-left: auto; color: var(--gsol-red); }
body.gsol-commerce .gsol-support-link { display: inline-flex; align-items: center; gap: 7px; padding-left: 12px; font-size: 12px; font-weight: 800; }
body.gsol-commerce .gsol-support-link .gsol-icon { color: var(--gsol-green); }
body.gsol-commerce .gsol-mega { position: absolute; left: 50%; top: 100%; width: min(1280px, calc(100vw - 40px)); transform: translateX(-50%); display: none; grid-template-columns: repeat(4, 1fr) 230px; gap: 0; padding: 20px; background: #fff; border: 1px solid var(--gsol-border); border-radius: 0 0 8px 8px; box-shadow: var(--gsol-shadow); }
body.gsol-commerce .gsol-main-header.is-mega-open .gsol-mega { display: grid; }
body.gsol-commerce .gsol-mega section { padding: 0 16px; border-right: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-mega section h3 { margin-bottom: 9px; font-size: 13px; }
body.gsol-commerce .gsol-mega section a { display: block; padding: 5px 0; color: var(--gsol-muted); font-size: 12px; }
body.gsol-commerce .gsol-mega section a:hover { color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-mega-cta { display: flex; flex-direction: column; justify-content: space-between; padding: 16px; background: var(--gsol-ink); color: #fff; border-radius: 6px; }
body.gsol-commerce .gsol-mega-cta .gsol-icon { color: var(--gsol-lime); }
body.gsol-commerce .gsol-mega-cta strong { font-size: 17px; line-height: 1.2; }
body.gsol-commerce .gsol-mega-cta small { color: #c8d1d7; font-size: 11px; }
body.gsol-commerce .gsol-mobile-toggle { display: none; }

body.gsol-commerce .gsol-hero { position: relative; min-height: 520px; display: flex; align-items: center; overflow: hidden; background: #27323a url('../img/gsol-hero-1600.webp') center center / cover no-repeat; color: #fff; }
body.gsol-commerce .gsol-hero:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,16,21,.9) 0%, rgba(10,16,21,.7) 38%, rgba(10,16,21,.08) 70%); }
body.gsol-commerce .gsol-hero-copy { position: relative; z-index: 2; width: 53%; max-width: 650px; padding: 66px 0 80px; }
body.gsol-commerce .gsol-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; color: var(--gsol-lime); font-size: 12px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-eyebrow:before { content: ""; width: 24px; height: 2px; background: currentColor; }
body.gsol-commerce .gsol-hero h1 { max-width: 610px; margin-bottom: 17px; color: #fff; font-size: 50px; font-weight: 800; }
body.gsol-commerce .gsol-hero p { max-width: 550px; margin-bottom: 26px; color: #d5dde2; font-size: 17px; }
body.gsol-commerce .gsol-actions { display: flex; flex-wrap: wrap; gap: 10px; }
body.gsol-commerce .gsol-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 18px; border: 1px solid transparent; border-radius: 5px; background: var(--gsol-cyan); color: var(--gsol-ink); font-size: 13px; font-weight: 800; }
body.gsol-commerce .gsol-button:hover { background: var(--gsol-cyan-dark); color: #fff; }
body.gsol-commerce .gsol-button.is-dark { background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-button.is-dark:hover { background: var(--gsol-ink-soft); }
body.gsol-commerce .gsol-button.is-light { border-color: rgba(255,255,255,.65); background: rgba(16,24,32,.35); color: #fff; }
body.gsol-commerce .gsol-button.is-light:hover { background: #fff; color: var(--gsol-ink); }
body.gsol-commerce .gsol-button.is-outline { border-color: #9cabb5; background: transparent; color: var(--gsol-ink); }
body.gsol-commerce .gsol-button.is-outline:hover { border-color: var(--gsol-ink); background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-hero-proof { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; background: rgba(255,255,255,.96); color: var(--gsol-ink); border-top: 1px solid rgba(255,255,255,.65); }
body.gsol-commerce .gsol-proof-row { min-height: 68px; display: grid; grid-template-columns: repeat(4,1fr); }
body.gsol-commerce .gsol-proof { display: flex; align-items: center; gap: 10px; padding: 10px 20px; border-right: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-proof:last-child { border-right: 0; }
body.gsol-commerce .gsol-proof .gsol-icon { color: var(--gsol-green); }
body.gsol-commerce .gsol-proof b { display: block; font-size: 12px; }
body.gsol-commerce .gsol-proof small { color: var(--gsol-muted); font-size: 10px; }

body.gsol-commerce .gsol-section { padding: 52px 0; }
body.gsol-commerce .gsol-section.is-white { background: #fff; }
body.gsol-commerce .gsol-section.is-warm { background: var(--gsol-warm); }
body.gsol-commerce .gsol-section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
body.gsol-commerce .gsol-section-head h2 { margin-bottom: 5px; font-size: 28px; }
body.gsol-commerce .gsol-section-head p { margin-bottom: 0; color: var(--gsol-muted); font-size: 13px; }
body.gsol-commerce .gsol-text-link { display: inline-flex; align-items: center; gap: 6px; border: 0; background: transparent; color: var(--gsol-cyan-dark); font-size: 13px; font-weight: 800; }
body.gsol-commerce .gsol-category-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
body.gsol-commerce .gsol-category { min-height: 118px; display: flex; flex-direction: column; justify-content: space-between; padding: 16px; border: 1px solid var(--gsol-border); border-radius: 6px; background: #fff; }
body.gsol-commerce .gsol-category:hover { border-color: var(--gsol-cyan); box-shadow: 0 8px 18px rgba(16,24,32,.08); }
body.gsol-commerce .gsol-category .gsol-icon { width: 26px; height: 26px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-category b { display: block; font-size: 13px; }
body.gsol-commerce .gsol-category small { color: var(--gsol-muted); font-size: 10px; }
body.gsol-commerce .gsol-mode-tabs { display: inline-flex; gap: 3px; padding: 3px; border: 1px solid var(--gsol-border); border-radius: 6px; background: #fff; }
body.gsol-commerce .gsol-mode-tab { min-height: 34px; padding: 0 13px; border: 0; border-radius: 4px; background: transparent; color: var(--gsol-muted); font-size: 12px; font-weight: 700; }
body.gsol-commerce .gsol-mode-tab.is-active { background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
body.gsol-commerce .gsol-product-card { position: relative; min-width: 0; display: flex; flex-direction: column; padding: 12px; border: 1px solid var(--gsol-border); border-radius: 6px; background: #fff; }
body.gsol-commerce .gsol-product-card:hover { border-color: #91a0aa; box-shadow: var(--gsol-shadow); }
body.gsol-commerce .gsol-product-media { position: relative; aspect-ratio: 1 / 1; display: grid; place-items: center; overflow: hidden; background: #fafbfb; }
body.gsol-commerce .gsol-product-media img { width: 90%; height: 90%; object-fit: contain; transition: transform .2s ease; }
body.gsol-commerce .gsol-product-card:hover .gsol-product-media img { transform: scale(1.035); }
body.gsol-commerce .gsol-badge { position: absolute; z-index: 2; top: 9px; left: 9px; display: inline-flex; align-items: center; min-height: 22px; padding: 0 7px; border-radius: 3px; background: var(--gsol-ink); color: #fff; font-size: 9px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-badge.is-choice { background: var(--gsol-cyan); color: var(--gsol-ink); }
body.gsol-commerce .gsol-badge.is-sale { background: var(--gsol-red); }
body.gsol-commerce .gsol-favorite { position: absolute; z-index: 2; top: 7px; right: 7px; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid var(--gsol-border); border-radius: 50%; background: #fff; color: var(--gsol-muted); }
body.gsol-commerce .gsol-favorite:hover, body.gsol-commerce .gsol-favorite.is-active { color: var(--gsol-red); }
body.gsol-commerce .gsol-favorite.is-active { border-color: color-mix(in srgb, var(--gsol-red) 35%, var(--gsol-border)); background: #fff5f4; }
body.gsol-commerce .gsol-favorite.is-active .gsol-icon { fill: currentColor; }
body.gsol-commerce .gsol-product-info { display: flex; flex: 1; flex-direction: column; padding-top: 12px; }
body.gsol-commerce .gsol-product-family { margin-bottom: 5px; color: var(--gsol-cyan-dark); font-size: 9px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-product-title { min-height: 39px; margin-bottom: 10px; font-size: 13px; font-weight: 700; line-height: 1.45; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
body.gsol-commerce .gsol-specs { display: grid; gap: 5px; margin: 0 0 14px; padding: 0; list-style: none; }
body.gsol-commerce .gsol-specs li { display: grid; grid-template-columns: 42px 1fr; gap: 6px; min-width: 0; font-size: 10px; }
body.gsol-commerce .gsol-specs span { color: var(--gsol-muted); }
body.gsol-commerce .gsol-specs b { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.gsol-commerce .gsol-availability { display: flex; align-items: center; gap: 6px; margin-top: auto; color: var(--gsol-green); font-size: 10px; font-weight: 700; }
body.gsol-commerce .gsol-availability:before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
body.gsol-commerce .gsol-price-row { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-top: 8px; }
body.gsol-commerce .gsol-price b { display: block; font-size: 22px; line-height: 1; }
body.gsol-commerce .gsol-price small { color: var(--gsol-muted); font-size: 9px; }
body.gsol-commerce .gsol-card-cart { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 5px; background: var(--gsol-cyan); color: var(--gsol-ink); }
body.gsol-commerce .gsol-card-cart:hover { background: var(--gsol-ink); color: #fff; }

body.gsol-commerce .gsol-business-band { position: relative; min-height: 380px; display: flex; align-items: center; overflow: hidden; background: #e8e9e8 url('../img/gsol-business-1536.webp') center / cover no-repeat; }
body.gsol-commerce .gsol-business-band:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,255,255,.06) 40%, rgba(255,255,255,.94) 67%, rgba(255,255,255,.98) 100%); }
body.gsol-commerce .gsol-business-copy { position: relative; z-index: 2; width: 43%; margin-left: auto; padding: 56px 0; }
body.gsol-commerce .gsol-business-copy .gsol-eyebrow { color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-business-copy h2 { margin-bottom: 15px; font-size: 32px; }
body.gsol-commerce .gsol-business-copy p { margin-bottom: 22px; color: var(--gsol-muted); }
body.gsol-commerce .gsol-service-list { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--gsol-border); border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-service { min-height: 150px; padding: 24px; border-right: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-service:last-child { border-right: 0; }
body.gsol-commerce .gsol-service .gsol-icon { margin-bottom: 18px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-service h3 { margin-bottom: 7px; font-size: 16px; }
body.gsol-commerce .gsol-service p { margin-bottom: 0; color: var(--gsol-muted); font-size: 12px; }
body.gsol-commerce .gsol-final-cta { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 30px; padding: 42px 0; }
body.gsol-commerce .gsol-final-cta h2 { margin-bottom: 7px; font-size: 25px; }
body.gsol-commerce .gsol-final-cta p { margin-bottom: 0; color: var(--gsol-muted); }

body.gsol-commerce .gsol-breadcrumbs { padding: 15px 0; color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-breadcrumbs span { margin: 0 7px; }
body.gsol-commerce .gsol-shop-head { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 20px; padding: 22px 0 26px; }
body.gsol-commerce .gsol-shop-head h1 { margin-bottom: 7px; font-size: 34px; }
body.gsol-commerce .gsol-shop-head p { max-width: 710px; margin-bottom: 0; color: var(--gsol-muted); }
body.gsol-commerce .gsol-shop-head strong { font-size: 12px; color: var(--gsol-muted); }
body.gsol-commerce .gsol-shop-tools { position: sticky; top: 0; z-index: 20; padding: 11px 0; background: rgba(245,247,248,.96); border-top: 1px solid var(--gsol-border); border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-shop-tools-row { display: flex; align-items: center; gap: 8px; }
body.gsol-commerce .gsol-tier-filters { display: flex; align-items: center; gap: 8px; }
body.gsol-commerce .gsol-filter-toggle { display: none; }
body.gsol-commerce .gsol-filter-chip { min-height: 34px; padding: 0 12px; border: 1px solid var(--gsol-border); border-radius: 4px; background: #fff; color: var(--gsol-ink-soft); font-size: 11px; font-weight: 700; }
body.gsol-commerce .gsol-filter-chip.is-active { border-color: var(--gsol-ink); background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-sort { margin-left: auto; height: 36px; padding: 0 34px 0 11px; border: 1px solid var(--gsol-border); border-radius: 4px; background: #fff; color: var(--gsol-ink); font-size: 11px; }
body.gsol-commerce .gsol-catalog-layout { display: grid; grid-template-columns: 272px 1fr; gap: 22px; padding: 24px 0 54px; }
body.gsol-commerce .gsol-filter-panel { align-self: start; background: #fff; border: 1px solid var(--gsol-border); border-radius: 6px; }
body.gsol-commerce .gsol-filter-head { display: flex; align-items: center; justify-content: space-between; padding: 14px; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-filter-head h2 { margin: 0; font-size: 14px; }
body.gsol-commerce .gsol-filter-head button { border: 0; background: transparent; color: var(--gsol-cyan-dark); font-size: 10px; font-weight: 700; }
body.gsol-commerce .gsol-filter-group { padding: 14px; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-filter-group:last-child { border-bottom: 0; }
body.gsol-commerce .gsol-filter-group h3 { margin-bottom: 10px; font-size: 11px; text-transform: uppercase; }
body.gsol-commerce .gsol-check { display: flex; align-items: center; gap: 8px; margin: 8px 0; color: var(--gsol-ink-soft); font-size: 11px; cursor: pointer; }
body.gsol-commerce .gsol-check input { accent-color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-check small { margin-left: auto; color: var(--gsol-muted); }
body.gsol-commerce .gsol-check.is-unavailable { opacity: .4; }
body.gsol-commerce .gsol-check.is-unavailable input { cursor: not-allowed; }
body.gsol-commerce .gsol-filter-head span { display: block; margin-top: 2px; color: var(--gsol-muted); font-size: 9px; }
body.gsol-commerce .gsol-filter-section { border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-filter-section:last-child { border-bottom: 0; }
body.gsol-commerce .gsol-filter-section-toggle { width: 100%; min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 14px; border: 0; background: #fff; color: var(--gsol-ink); text-align: left; font-size: 10px; font-weight: 850; text-transform: uppercase; }
body.gsol-commerce .gsol-filter-section-toggle .gsol-icon { width: 14px; height: 14px; transition: transform .18s ease; }
body.gsol-commerce .gsol-filter-section.is-open .gsol-filter-section-toggle .gsol-icon { transform: rotate(180deg); }
body.gsol-commerce .gsol-filter-section-body { display: none; padding: 0 14px 12px; }
body.gsol-commerce .gsol-filter-section.is-open .gsol-filter-section-body { display: block; }
body.gsol-commerce .gsol-filter-more { width: 100%; padding: 6px 0 1px; border: 0; background: transparent; color: var(--gsol-cyan-dark); text-align: left; font-size: 10px; font-weight: 800; }
body.gsol-commerce .gsol-filter-apply { display: none; position: sticky; bottom: 0; width: 100%; min-height: 46px; border: 0; background: var(--gsol-cyan); color: #08212c; font-weight: 850; }
body.gsol-commerce .gsol-active-filters { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; min-width: 0; }
body.gsol-commerce .gsol-active-filter.is-removable { padding-right: 6px; border-color: rgba(0,174,218,.38); background: #f0fbfd; color: #096f8b; }
body.gsol-commerce .gsol-active-filter.is-removable button { width: 18px; height: 18px; display: grid; place-items: center; padding: 0; border: 0; background: transparent; color: inherit; }
body.gsol-commerce .gsol-active-filter.is-removable .gsol-icon { width: 12px; height: 12px; }
body.gsol-commerce .gsol-catalog-switch { display: flex; align-items: stretch; gap: 0; margin: 18px 0 22px; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-catalog-switch button { position: relative; min-width: 220px; display: flex; align-items: center; gap: 10px; padding: 12px 16px 14px; border: 0; background: transparent; color: var(--gsol-muted); text-align: left; }
body.gsol-commerce .gsol-catalog-switch button:after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: transparent; }
body.gsol-commerce .gsol-catalog-switch button.is-active { color: var(--gsol-ink); }
body.gsol-commerce .gsol-catalog-switch button.is-active:after { background: var(--gsol-cyan); }
body.gsol-commerce .gsol-catalog-switch .gsol-icon { width: 21px; height: 21px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-catalog-switch strong { display: block; font-size: 13px; }
body.gsol-commerce .gsol-catalog-switch small { display: block; margin-top: 2px; font-size: 9px; font-weight: 500; }
body.gsol-commerce .gsol-laptop-standard { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 30px; padding: 24px 0 28px; }
body.gsol-commerce .gsol-laptop-standard[hidden], body.gsol-commerce .gsol-gaming-standard[hidden] { display: none; }
body.gsol-commerce .gsol-laptop-standard h1 { max-width: 760px; margin: 7px 0 9px; font-size: 34px; }
body.gsol-commerce .gsol-laptop-standard p { max-width: 760px; margin: 0; color: var(--gsol-muted); font-size: 13px; line-height: 1.65; }
body.gsol-commerce .gsol-laptop-proof { display: grid; grid-template-columns: repeat(2, minmax(120px,1fr)); gap: 8px; }
body.gsol-commerce .gsol-laptop-proof span { min-width: 140px; padding: 11px 12px; border: 1px solid var(--gsol-border); border-radius: 6px; background: #fff; }
body.gsol-commerce .gsol-laptop-proof b, body.gsol-commerce .gsol-laptop-proof small { display: block; }
body.gsol-commerce .gsol-laptop-proof b { color: var(--gsol-ink); font-size: 11px; }
body.gsol-commerce .gsol-laptop-proof small { margin-top: 2px; color: var(--gsol-muted); font-size: 9px; }
body.gsol-commerce .gsol-tier-filters[hidden] { display: none; }
body.gsol-commerce .gsol-product-card.is-laptop .gsol-product-media img { object-fit: contain; padding: 9px; }
body.gsol-commerce .gsol-product-card.is-laptop .gsol-product-family { color: #405f70; }
body.gsol-commerce .gsol-catalog-main .gsol-product-grid { grid-template-columns: repeat(3,1fr); }
body.gsol-commerce .gsol-catalog-status { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-active-filter { display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px; border: 1px solid var(--gsol-border); border-radius: 3px; background: #fff; color: var(--gsol-ink); }
body.gsol-commerce .gsol-pagination { display: flex; justify-content: center; gap: 5px; margin-top: 26px; }
body.gsol-commerce .gsol-pagination button { width: 36px; height: 36px; border: 1px solid var(--gsol-border); border-radius: 4px; background: #fff; font-size: 11px; }
body.gsol-commerce .gsol-pagination button.is-active { border-color: var(--gsol-ink); background: var(--gsol-ink); color: #fff; }

body.gsol-commerce .gsol-product-page { background: #fff; }
body.gsol-commerce .gsol-pdp-main { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px, .82fr); gap: 42px; padding: 24px 0 42px; }
body.gsol-commerce .gsol-gallery { display: grid; grid-template-columns: 70px 1fr; gap: 12px; min-width: 0; }
body.gsol-commerce .gsol-thumbs { display: grid; align-content: start; gap: 8px; }
body.gsol-commerce .gsol-thumb { width: 68px; height: 68px; display: grid; place-items: center; border: 1px solid var(--gsol-border); border-radius: 5px; background: #fff; }
body.gsol-commerce .gsol-thumb.is-active { border: 2px solid var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-thumb img { width: 58px; height: 58px; object-fit: contain; }
body.gsol-commerce .gsol-gallery-main { position: relative; min-height: 520px; display: grid; place-items: center; background: #f8f9f9; border-radius: 6px; overflow: hidden; }
body.gsol-commerce .gsol-gallery-main img { width: 82%; height: 82%; object-fit: contain; transition: transform .25s ease; }
body.gsol-commerce .gsol-gallery-main.is-zoomed img { transform: scale(1.34); }
body.gsol-commerce .gsol-zoom { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--gsol-border); border-radius: 50%; background: #fff; color: var(--gsol-ink); }
body.gsol-commerce .gsol-pdp-summary { align-self: start; }
body.gsol-commerce .gsol-pdp-labels { display: flex; gap: 6px; margin-bottom: 10px; }
body.gsol-commerce .gsol-inline-badge { display: inline-flex; min-height: 23px; align-items: center; padding: 0 8px; border-radius: 3px; background: var(--gsol-mint); color: var(--gsol-green); font-size: 9px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-inline-badge.is-premium { background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-pdp-summary h1 { margin-bottom: 12px; font-size: 30px; }
body.gsol-commerce .gsol-pdp-code { display: flex; gap: 12px; margin-bottom: 18px; color: var(--gsol-muted); font-size: 10px; }
body.gsol-commerce .gsol-pdp-price { display: flex; align-items: end; gap: 14px; margin-bottom: 5px; }
body.gsol-commerce .gsol-pdp-price strong { font-size: 34px; line-height: 1; }
body.gsol-commerce .gsol-pdp-price span { color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-finance { margin-bottom: 18px; color: var(--gsol-cyan-dark); font-size: 11px; font-weight: 700; }
body.gsol-commerce .gsol-delivery-box { display: grid; gap: 9px; margin-bottom: 18px; padding: 14px; border-top: 1px solid var(--gsol-border); border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-delivery-row { display: grid; grid-template-columns: 22px 1fr; gap: 8px; font-size: 11px; }
body.gsol-commerce .gsol-delivery-row .gsol-icon { width: 17px; height: 17px; color: var(--gsol-green); }
body.gsol-commerce .gsol-delivery-row b { display: block; }
body.gsol-commerce .gsol-delivery-row small { color: var(--gsol-muted); }
body.gsol-commerce .gsol-purchase-row { display: grid; grid-template-columns: 70px 1fr; gap: 9px; margin-bottom: 9px; }
body.gsol-commerce .gsol-qty { display: grid; grid-template-columns: 22px 1fr 22px; align-items: center; border: 1px solid var(--gsol-border); border-radius: 5px; overflow: hidden; }
body.gsol-commerce .gsol-qty button { height: 42px; border: 0; background: #fff; }
body.gsol-commerce .gsol-qty span { text-align: center; font-weight: 700; }
body.gsol-commerce .gsol-purchase-row .gsol-button { width: 100%; }
body.gsol-commerce .gsol-pdp-secondary { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body.gsol-commerce .gsol-pdp-secondary .gsol-button { padding: 0 10px; }
body.gsol-commerce .gsol-pdp-assurance { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 20px; background: var(--gsol-border); border: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-assurance-item { min-height: 72px; padding: 10px; background: #fff; font-size: 10px; }
body.gsol-commerce .gsol-assurance-item .gsol-icon { width: 16px; height: 16px; margin-bottom: 6px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-assurance-item b { display: block; }
body.gsol-commerce .gsol-assurance-item small { color: var(--gsol-muted); }
body.gsol-commerce .gsol-pdp-tabs { border-top: 1px solid var(--gsol-border); border-bottom: 1px solid var(--gsol-border); background: var(--gsol-paper); }
body.gsol-commerce .gsol-pdp-tabs-row { display: flex; gap: 26px; }
body.gsol-commerce .gsol-pdp-tab { min-height: 52px; padding: 0 2px; border: 0; border-bottom: 3px solid transparent; background: transparent; color: var(--gsol-muted); font-size: 12px; font-weight: 700; }
body.gsol-commerce .gsol-pdp-tab.is-active { border-bottom-color: var(--gsol-cyan-dark); color: var(--gsol-ink); }
body.gsol-commerce .gsol-tab-panel { display: none; padding: 40px 0 16px; }
body.gsol-commerce .gsol-tab-panel.is-active { display: block; }
body.gsol-commerce .gsol-fit-strip { display: grid; grid-template-columns: 220px repeat(3,1fr); border-top: 1px solid var(--gsol-border); border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-fit-intro, body.gsol-commerce .gsol-fit-item { min-height: 120px; padding: 20px; border-right: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-fit-item:last-child { border-right: 0; }
body.gsol-commerce .gsol-fit-intro h2 { margin-bottom: 6px; font-size: 20px; }
body.gsol-commerce .gsol-fit-intro p, body.gsol-commerce .gsol-fit-item p { margin-bottom: 0; color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-fit-item .gsol-icon { margin-bottom: 12px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-fit-item b { display: block; margin-bottom: 5px; font-size: 13px; }
body.gsol-commerce .gsol-components-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 42px 0 15px; }
body.gsol-commerce .gsol-components-head h2 { margin-bottom: 5px; font-size: 24px; }
body.gsol-commerce .gsol-components-head p { margin-bottom: 0; color: var(--gsol-muted); font-size: 12px; }
body.gsol-commerce .gsol-component-list { border-top: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-component { display: grid; grid-template-columns: 150px 1fr auto; align-items: center; gap: 14px; min-height: 68px; padding: 10px 0; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-component-type { display: flex; align-items: center; gap: 9px; color: var(--gsol-muted); font-size: 11px; font-weight: 700; }
body.gsol-commerce .gsol-component-type .gsol-icon { width: 17px; height: 17px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-component-name { min-width: 0; font-size: 12px; font-weight: 700; }
body.gsol-commerce .gsol-change-component { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 11px; border: 1px solid var(--gsol-border); border-radius: 4px; background: #fff; color: var(--gsol-ink); font-size: 10px; font-weight: 700; }
body.gsol-commerce .gsol-change-component:hover { border-color: var(--gsol-cyan-dark); color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-customize-band { margin: 44px 0 52px; padding: 30px; background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-customize-band-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 26px; }
body.gsol-commerce .gsol-customize-band .gsol-eyebrow { color: var(--gsol-lime); }
body.gsol-commerce .gsol-customize-band h2 { margin-bottom: 8px; color: #fff; font-size: 25px; }
body.gsol-commerce .gsol-customize-band p { max-width: 720px; margin-bottom: 0; color: #cbd5db; font-size: 12px; }
body.gsol-commerce .gsol-customize-actions { display: flex; gap: 8px; }
body.gsol-commerce .gsol-spec-table { width: 100%; border-collapse: collapse; font-size: 12px; }
body.gsol-commerce .gsol-spec-table th, body.gsol-commerce .gsol-spec-table td { padding: 13px; border-bottom: 1px solid var(--gsol-border); text-align: left; }
body.gsol-commerce .gsol-spec-table th { width: 220px; color: var(--gsol-muted); font-weight: 600; }

body.gsol-commerce .gsol-about-hero { position: relative; min-height: 520px; display: flex; align-items: end; background: #283239 url('../img/gsol-founder-final-1600.webp') center top / cover no-repeat; color: #fff; }
body.gsol-commerce .gsol-about-hero:after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(10,16,21,.9), rgba(10,16,21,.08) 78%); }
body.gsol-commerce .gsol-ai-image-label {
  position: absolute;
  z-index: 3;
  top: 22px;
  right: 22px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 4px;
  background: rgba(8,28,38,.58);
  color: #fff;
  box-shadow: 0 6px 18px rgba(5,18,25,.18), inset 0 1px 0 rgba(255,255,255,.12);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}
body.gsol-commerce .gsol-ai-image-label .gsol-icon { width: 14px; height: 14px; }
body.gsol-commerce .gsol-about-copy { position: relative; z-index: 2; max-width: 900px; padding: 70px 0 52px; }
body.gsol-commerce .gsol-about-copy h1 { margin-bottom: 13px; color: #fff; font-size: 46px; }
body.gsol-commerce .gsol-about-copy p { max-width: 760px; margin-bottom: 0; color: #e0e5e8; font-size: 16px; }
body.gsol-commerce .gsol-about-intro { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; padding: 58px 0; }
body.gsol-commerce .gsol-about-intro h2 { font-size: 29px; }
body.gsol-commerce .gsol-about-intro p { color: var(--gsol-muted); }
body.gsol-commerce .gsol-capabilities { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--gsol-border); border-left: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-capability { min-height: 190px; padding: 24px; border-right: 1px solid var(--gsol-border); border-bottom: 1px solid var(--gsol-border); background: #fff; }
body.gsol-commerce .gsol-capability .gsol-icon { margin-bottom: 26px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-capability h3 { margin-bottom: 8px; font-size: 16px; }
body.gsol-commerce .gsol-capability p { margin-bottom: 0; color: var(--gsol-muted); font-size: 12px; }
body.gsol-commerce .gsol-process { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-step { min-height: 155px; padding: 22px 22px 22px 0; border-right: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-step + .gsol-step { padding-left: 22px; }
body.gsol-commerce .gsol-step:last-child { border-right: 0; }
body.gsol-commerce .gsol-step b { display: block; margin-bottom: 20px; color: var(--gsol-cyan-dark); font-size: 12px; }
body.gsol-commerce .gsol-step h3 { margin-bottom: 7px; font-size: 15px; }
body.gsol-commerce .gsol-step p { margin-bottom: 0; color: var(--gsol-muted); font-size: 11px; }

body.gsol-commerce .gsol-cart-page { min-height: 560px; padding: 30px 0 60px; background: #fff; }
body.gsol-commerce .gsol-cart-layout { display: grid; grid-template-columns: 1fr 360px; gap: 28px; }
body.gsol-commerce .gsol-cart-list h1 { margin-bottom: 22px; font-size: 32px; }
body.gsol-commerce .gsol-cart-item { display: grid; grid-template-columns: 110px 1fr auto; gap: 16px; padding: 18px 0; border-top: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-cart-item img { width: 110px; height: 110px; object-fit: contain; background: var(--gsol-paper); }
body.gsol-commerce .gsol-cart-item h3 { margin-bottom: 7px; font-size: 14px; }
body.gsol-commerce .gsol-cart-item p { margin-bottom: 10px; color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-cart-item strong { font-size: 18px; white-space: nowrap; }
body.gsol-commerce .gsol-cart-remove { border: 0; background: transparent; color: var(--gsol-red); font-size: 10px; }
body.gsol-commerce .gsol-order-box { align-self: start; padding: 20px; background: var(--gsol-paper); border: 1px solid var(--gsol-border); border-radius: 6px; }
body.gsol-commerce .gsol-order-box h2 { margin-bottom: 18px; font-size: 19px; }
body.gsol-commerce .gsol-order-line { display: flex; justify-content: space-between; gap: 16px; padding: 9px 0; border-bottom: 1px solid var(--gsol-border); font-size: 11px; }
body.gsol-commerce .gsol-order-total { display: flex; justify-content: space-between; gap: 16px; padding: 16px 0; font-size: 15px; font-weight: 800; }
body.gsol-commerce .gsol-order-box .gsol-button { width: 100%; }
body.gsol-commerce .gsol-empty-cart { padding: 70px 0; text-align: center; }
body.gsol-commerce .gsol-empty-cart .gsol-icon { width: 42px; height: 42px; margin: 0 auto 16px; color: var(--gsol-muted); }
body.gsol-commerce .gsol-empty-cart h2 { margin-bottom: 8px; font-size: 24px; }
body.gsol-commerce .gsol-empty-cart p { margin-bottom: 20px; color: var(--gsol-muted); }

body.gsol-commerce .gsol-footer { background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-footer-top { display: grid; grid-template-columns: 1.3fr repeat(3,1fr); gap: 34px; padding: 44px 0; }
body.gsol-commerce .gsol-footer-brand p { margin: 14px 0 18px; color: #aebbc3; font-size: 12px; }
body.gsol-commerce .gsol-footer-contact { display: flex; align-items: center; gap: 8px; color: var(--gsol-lime); font-size: 15px; font-weight: 800; }
body.gsol-commerce .gsol-footer h3 { margin-bottom: 13px; color: #fff; font-size: 12px; }
body.gsol-commerce .gsol-footer-links a { display: block; margin: 8px 0; color: #aebbc3; font-size: 11px; }
body.gsol-commerce .gsol-footer-links a:hover { color: #fff; }
body.gsol-commerce .gsol-footer-policy { border-top: 1px solid rgba(255,255,255,.12); }
body.gsol-commerce .gsol-ai-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 48px;
  list-style: none;
  cursor: pointer;
  color: #dbe6eb;
  font-size: 11px;
  font-weight: 800;
}
body.gsol-commerce .gsol-ai-disclosure summary::-webkit-details-marker { display: none; }
body.gsol-commerce .gsol-ai-disclosure-summary {
  display: inline-flex;
  align-items: center;
  gap: 9px;
}
body.gsol-commerce .gsol-ai-disclosure summary .gsol-icon { width: 16px; height: 16px; }
body.gsol-commerce .gsol-ai-disclosure-chevron { transition: transform .2s ease; }
body.gsol-commerce .gsol-ai-disclosure[open] .gsol-ai-disclosure-chevron { transform: rotate(180deg); }
body.gsol-commerce .gsol-ai-disclosure-content {
  max-width: 1050px;
  padding: 0 0 24px;
  color: #aebbc3;
}
body.gsol-commerce .gsol-ai-disclosure-content h2 {
  margin: 6px 0 12px;
  color: #fff;
  font-size: 16px;
  line-height: 1.35;
}
body.gsol-commerce .gsol-ai-disclosure-content p {
  margin: 0 0 10px;
  font-size: 10px;
  line-height: 1.65;
}
body.gsol-commerce .gsol-footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding: 15px 0; border-top: 1px solid rgba(255,255,255,.12); color: #81909a; font-size: 9px; }

/* Legal centre and consent controls. */
body.gsol-commerce .gsol-footer-legal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  padding: 17px 0;
  border-top: 1px solid rgba(57,103,121,.14);
}
body.gsol-commerce .gsol-footer-legal > span {
  width: 100%;
  color: var(--gsol-ink);
  font-size: 12px;
  font-weight: 800;
}
body.gsol-commerce .gsol-footer-legal a,
body.gsol-commerce .gsol-footer-legal button {
  min-height: 30px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #4f6976;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(79,105,118,.28);
  text-underline-offset: 3px;
}
body.gsol-commerce .gsol-footer-legal a:hover,
body.gsol-commerce .gsol-footer-legal button:hover { color: var(--gsol-cyan-dark); }

body.gsol-commerce .gsol-legal-page { background: #f5f8fa; }
body.gsol-commerce .gsol-legal-hero {
  padding: 52px 0 46px;
  border-bottom: 1px solid var(--gsol-border);
  background: linear-gradient(120deg, #082636 0%, #123f53 62%, #23687d 100%);
  color: #fff;
}
body.gsol-commerce .gsol-legal-hero .gsol-eyebrow { color: #70daf0; }
body.gsol-commerce .gsol-legal-hero h1 { max-width: 820px; margin: 10px 0 12px; color: #fff; font-size: clamp(30px, 4vw, 48px); }
body.gsol-commerce .gsol-legal-hero p { max-width: 780px; margin: 0 0 14px; color: #d7e4e9; font-size: 16px; line-height: 1.65; }
body.gsol-commerce .gsol-legal-hero small { color: #9fc0cc; font-size: 11px; }
body.gsol-commerce .gsol-legal-layout {
  display: grid;
  grid-template-columns: 245px minmax(0, 1fr);
  gap: 48px;
  padding-top: 42px;
  padding-bottom: 70px;
}
body.gsol-commerce .gsol-legal-nav { position: sticky; top: 24px; align-self: start; }
body.gsol-commerce .gsol-legal-nav a,
body.gsol-commerce .gsol-legal-nav button {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 42px;
  padding: 9px 12px;
  border: 0;
  border-left: 2px solid transparent;
  background: transparent;
  color: #58707c;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  text-align: left;
}
body.gsol-commerce .gsol-legal-nav a:hover,
body.gsol-commerce .gsol-legal-nav button:hover,
body.gsol-commerce .gsol-legal-nav a.is-active {
  border-left-color: var(--gsol-cyan);
  background: #eaf5f8;
  color: var(--gsol-ink);
}
body.gsol-commerce .gsol-legal-nav .gsol-icon { width: 15px; height: 15px; }
body.gsol-commerce .gsol-legal-content { min-width: 0; }
body.gsol-commerce .gsol-legal-content section { padding: 0 0 34px; margin: 0 0 34px; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-legal-content h2 { margin: 0 0 15px; color: var(--gsol-ink); font-size: 23px; line-height: 1.3; }
body.gsol-commerce .gsol-legal-content p,
body.gsol-commerce .gsol-legal-content li { color: #4f6672; font-size: 14px; line-height: 1.75; }
body.gsol-commerce .gsol-legal-content ul,
body.gsol-commerce .gsol-legal-content ol { margin: 12px 0 16px 22px; }
body.gsol-commerce .gsol-legal-content a { color: #007f9f; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
body.gsol-commerce .gsol-legal-index { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
body.gsol-commerce .gsol-legal-index a {
  display: grid;
  grid-template-columns: 34px 1fr 18px;
  align-items: center;
  gap: 12px;
  min-height: 78px;
  padding: 15px 17px;
  border: 1px solid var(--gsol-border);
  border-radius: 7px;
  background: #fff;
  color: var(--gsol-ink);
  text-decoration: none;
  box-shadow: 0 8px 22px rgba(32,72,88,.05);
}
body.gsol-commerce .gsol-legal-index a:hover { border-color: #79cfe0; transform: translateY(-1px); }
body.gsol-commerce .gsol-legal-index .gsol-icon:first-child { width: 25px; height: 25px; color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-legal-index .gsol-icon:last-child { width: 16px; height: 16px; }
body.gsol-commerce .gsol-legal-identity { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin: 0 0 20px; background: var(--gsol-border); border: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-legal-identity > div { padding: 12px 14px; background: #fff; }
body.gsol-commerce .gsol-legal-identity dt { margin-bottom: 3px; color: #70828b; font-size: 10px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-legal-identity dd { margin: 0; color: var(--gsol-ink); font-size: 13px; line-height: 1.5; }
body.gsol-commerce .gsol-legal-table-wrap { overflow-x: auto; border: 1px solid var(--gsol-border); background: #fff; }
body.gsol-commerce .gsol-legal-content table { width: 100%; min-width: 680px; margin: 0; border-collapse: collapse; }
body.gsol-commerce .gsol-legal-content th,
body.gsol-commerce .gsol-legal-content td { padding: 12px 14px; border-bottom: 1px solid var(--gsol-border); color: #4f6672; font-size: 12px; line-height: 1.55; text-align: left; vertical-align: top; }
body.gsol-commerce .gsol-legal-content th { background: #edf5f7; color: var(--gsol-ink); font-weight: 800; }
body.gsol-commerce .gsol-legal-sample { margin-top: 18px; padding: 17px; border-left: 3px solid var(--gsol-cyan); background: #ecf7f9; }
body.gsol-commerce .gsol-legal-sample p { margin: 7px 0 0; }
body.gsol-commerce .gsol-legal-document-footer { display: flex; justify-content: space-between; gap: 20px; color: #72858e; font-size: 11px; }

body.gsol-commerce .gsol-cookie-panel {
  position: fixed;
  z-index: 140;
  right: 22px;
  bottom: 22px;
  width: min(660px, calc(100vw - 44px));
  padding: 20px;
  border: 1px solid rgba(61,133,158,.28);
  border-radius: 8px;
  background: rgba(250,253,254,.98);
  color: var(--gsol-ink);
  box-shadow: 0 24px 70px rgba(10,39,52,.24);
  transform: translateY(18px);
  opacity: 0;
  transition: opacity .2s ease, transform .2s ease;
}
body.gsol-commerce .gsol-cookie-panel.is-open { transform: translateY(0); opacity: 1; }
body.gsol-commerce .gsol-cookie-copy strong { display: block; margin-bottom: 5px; font-size: 17px; }
body.gsol-commerce .gsol-cookie-copy p { margin: 0 0 7px; color: #55707c; font-size: 12px; line-height: 1.55; }
body.gsol-commerce .gsol-cookie-copy a { color: #007f9f; font-size: 11px; font-weight: 800; }
body.gsol-commerce .gsol-cookie-settings { display: grid; gap: 1px; margin-top: 14px; border: 1px solid var(--gsol-border); background: var(--gsol-border); }
body.gsol-commerce .gsol-cookie-settings label { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 10px 12px; background: #fff; }
body.gsol-commerce .gsol-cookie-settings b,
body.gsol-commerce .gsol-cookie-settings small { display: block; }
body.gsol-commerce .gsol-cookie-settings b { font-size: 12px; }
body.gsol-commerce .gsol-cookie-settings small { margin-top: 2px; color: #71848d; font-size: 10px; }
body.gsol-commerce .gsol-cookie-settings input { width: 20px; height: 20px; accent-color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-cookie-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 15px; }
body.gsol-commerce .gsol-cookie-actions .gsol-button { min-height: 40px; border-radius: 14px; font-size: 11px; }
body.gsol-commerce .gsol-cookie-secondary { min-height: 40px; padding: 0 13px; border: 1px solid var(--gsol-border); border-radius: 14px; background: #fff; color: #375866; font-size: 11px; font-weight: 800; }

body.gsol-commerce .gsol-ai-consent { padding: 14px 16px 16px; border-top: 1px solid var(--gsol-border); background: #f2f8fa; }
body.gsol-commerce .gsol-ai-consent strong { display: block; margin-bottom: 5px; font-size: 13px; }
body.gsol-commerce .gsol-ai-consent p { margin: 0 0 8px; color: #58707c; font-size: 10px; line-height: 1.55; }
body.gsol-commerce .gsol-ai-consent a { display: inline-block; margin-bottom: 11px; color: #007f9f; font-size: 10px; font-weight: 800; }
body.gsol-commerce .gsol-ai-consent .gsol-button { width: 100%; min-height: 42px; font-size: 11px; }
body.gsol-commerce .gsol-form-privacy { margin: 4px 0 0; color: #6a7e88; font-size: 10px; line-height: 1.55; }
body.gsol-commerce .gsol-form-privacy a { color: #007f9f; font-weight: 800; }
body.gsol-commerce .gsol-shipping-clarifier { display: block; margin-top: 4px; max-width: 330px; color: #657a84; font-size: 10px; line-height: 1.4; }
body.gsol-commerce .gsol-checkout-windows { display: block; margin-top: 8px; color: #607680; font-size: 11px; line-height: 1.5; }

/* ── Checkout ──────────────────────────────────────────────────────────────
   The same shape as the cart: the work on the left, the summary box on the
   right where the total and the order button stay in view while the form is
   filled in. Storefront's own checkout styling is left behind entirely. */
body.gsol-commerce .gsol-checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 28px; align-items: start; }
/* Grid tracks are min-content wide by default, so one long unbreakable string
   in the form — an Econt office line, a supplier product name — widened the
   left column, pushed the summary box off the right edge of the screen and
   squeezed it until the product names wrapped one letter per line. */
body.gsol-commerce .gsol-checkout-main,
body.gsol-commerce .gsol-checkout-box { min-width: 0; }
body.gsol-commerce .gsol-checkout-main * { max-width: 100%; }
body.gsol-commerce .gsol-checkout-main h1 { margin-bottom: 22px; font-size: 32px; }
body.gsol-commerce .gsol-checkout-main h3 { margin: 0 0 14px; font-size: 17px; }
/* Storefront lays the checkout out itself above 768px: #customer_details
   floats left at 52.9% and #order_review right at 41.2%. Both are placed by
   this theme instead, so those rules have to be switched off — and because
   Storefront targets them by id, the override needs the id too, or the
   summary box ends up a 138px column with the product names wrapping one
   letter per line. */
body.gsol-commerce .gsol-checkout #customer_details,
body.gsol-commerce .gsol-checkout .col2-set { width: 100%; float: none; }
body.gsol-commerce .gsol-checkout #order_review_heading,
body.gsol-commerce .gsol-checkout #order_review { width: 100%; float: none; margin: 0; padding: 0; }
body.gsol-commerce .gsol-checkout-details { display: grid; grid-template-columns: 1fr; gap: 0; }
body.gsol-commerce .gsol-checkout-details .col-1,
body.gsol-commerce .gsol-checkout-details .col-2 { width: 100%; float: none; padding: 0; }
body.gsol-commerce .gsol-checkout-details .col-2:empty { display: none; }

/* Two columns of fields inside the billing block, so a nine-field address is
   not a nine-row ladder. Wide rows stay wide. */
body.gsol-commerce .gsol-checkout .woocommerce-billing-fields__field-wrapper,
body.gsol-commerce .gsol-checkout .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
body.gsol-commerce .gsol-checkout .form-row { width: auto; margin: 0 0 14px; padding: 0; float: none; }
body.gsol-commerce .gsol-checkout .form-row-wide,
body.gsol-commerce .gsol-checkout .gsol-invoice-choice,
body.gsol-commerce .gsol-checkout .gsol-company-field { grid-column: 1 / -1; }
body.gsol-commerce .gsol-checkout .form-row label { display: block; margin-bottom: 5px; color: #375866; font-size: 12px; font-weight: 700; }
body.gsol-commerce .gsol-checkout .form-row label .required { color: var(--gsol-red); text-decoration: none; border: 0; }
body.gsol-commerce .gsol-checkout .form-row .optional { color: var(--gsol-muted); font-weight: 400; }
body.gsol-commerce .gsol-checkout .input-text,
body.gsol-commerce .gsol-checkout select,
body.gsol-commerce .gsol-checkout .select2-selection--single {
  width: 100%; height: 44px; padding: 0 13px; box-sizing: border-box;
  border: 1px solid var(--gsol-border); border-radius: 6px; background: #fff;
  color: var(--gsol-ink); font-size: 13px;
}
body.gsol-commerce .gsol-checkout textarea.input-text { height: 88px; padding: 11px 13px; resize: vertical; }
body.gsol-commerce .gsol-checkout .input-text:focus,
body.gsol-commerce .gsol-checkout select:focus { outline: 0; border-color: var(--gsol-cyan-dark); box-shadow: 0 0 0 3px rgba(0, 127, 159, .12); }
body.gsol-commerce .gsol-checkout .select2-container .select2-selection--single { height: 44px; }
body.gsol-commerce .gsol-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 42px; padding-left: 0; }
body.gsol-commerce .gsol-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { height: 42px; }

/* The summary box: the cart's box, plus the order table and payment inside. */
body.gsol-commerce .gsol-checkout-box { position: sticky; top: 18px; padding: 22px; }
body.gsol-commerce .gsol-checkout-box h2 { margin-bottom: 16px; font-size: 19px; }
body.gsol-commerce .gsol-checkout-box table.shop_table { width: 100%; margin: 0; border: 0; border-collapse: collapse; background: transparent; font-size: 12px; }
body.gsol-commerce .gsol-checkout-box table.shop_table th,
body.gsol-commerce .gsol-checkout-box table.shop_table td { padding: 9px 0; border: 0; border-bottom: 1px solid var(--gsol-border); background: transparent; vertical-align: top; }
body.gsol-commerce .gsol-checkout-box table.shop_table thead th { color: var(--gsol-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
/* Left by default, and only the cells that actually hold a figure are pushed
   right. Right-aligning every cell caught the courier list too: Econt splits
   the shipping row into a title row and a second, class-less cell holding the
   methods, so "Еконт - До Офис" and its office picker lined up against the
   right edge and ran out of the box. */
body.gsol-commerce .gsol-checkout-box table.shop_table th,
body.gsol-commerce .gsol-checkout-box table.shop_table td { text-align: left; }
body.gsol-commerce .gsol-checkout-box table.shop_table td.product-total,
body.gsol-commerce .gsol-checkout-box table.shop_table .cart-subtotal td,
body.gsol-commerce .gsol-checkout-box table.shop_table .order-total td,
body.gsol-commerce .gsol-checkout-box table.shop_table thead th:last-child { text-align: right; }
body.gsol-commerce .gsol-checkout-box table.shop_table td.product-name { line-height: 1.45; padding-right: 10px; }
body.gsol-commerce .gsol-checkout-box table.shop_table td.product-total { white-space: nowrap; }
body.gsol-commerce .gsol-checkout-box tfoot .order-total th,
body.gsol-commerce .gsol-checkout-box tfoot .order-total td { padding: 15px 0; border-bottom: 0; font-size: 15px; font-weight: 800; }
body.gsol-commerce .gsol-checkout-box tfoot .order-total small { display: block; font-size: 10px; font-weight: 400; color: var(--gsol-muted); }

/* The shipping row carries a list of couriers, not a figure, so it gets the
   full width of the box with its label above it. Left in WooCommerce's
   label-then-value pair it was a right-aligned column 100px wide, and the
   Econt options ran off the edge. */
/* The row itself has to leave the table model too. Blocking only the cells
   makes the browser wrap each one in an anonymous cell, so the pair still
   splits the row in half and the courier list keeps half the width. */
body.gsol-commerce .gsol-checkout-box table.shop_table tr.woocommerce-shipping-totals { display: block; width: 100%; }
body.gsol-commerce .gsol-checkout-box table.shop_table .woocommerce-shipping-totals th,
body.gsol-commerce .gsol-checkout-box table.shop_table .woocommerce-shipping-totals td { display: block; width: 100%; text-align: left; }
body.gsol-commerce .gsol-checkout-box table.shop_table .woocommerce-shipping-totals th { padding-bottom: 2px; border-bottom: 0; }
body.gsol-commerce .gsol-checkout-box ul#shipping_method { margin: 0; padding: 0; list-style: none; text-align: left; }
body.gsol-commerce .gsol-checkout-box ul#shipping_method li { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 8px; padding: 0; text-align: left; }
body.gsol-commerce .gsol-checkout-box ul#shipping_method li input { margin: 3px 0 0; flex: 0 0 auto; }
body.gsol-commerce .gsol-checkout-box ul#shipping_method li label { margin: 0; font-size: 12px; font-weight: 600; line-height: 1.4; }
/* Econt's office picker is a full-width control, not a value in a column. */
body.gsol-commerce .gsol-checkout-box .woo-bg-econt-office-locator,
body.gsol-commerce .gsol-checkout-box [class*="woo-bg"] input[type="text"],
body.gsol-commerce .gsol-checkout-box [class*="woo-bg"] select { width: 100%; max-width: 100%; box-sizing: border-box; }
body.gsol-commerce .gsol-checkout-box [class*="woo-bg"] { text-align: left; }
body.gsol-commerce .gsol-checkout-box .woocommerce-shipping-destination,
body.gsol-commerce .gsol-checkout-box .shipping-calculator-button { font-size: 11px; }

body.gsol-commerce .gsol-checkout-box .gsol-checkout-note { margin: 0 0 14px; padding: 12px 13px; border-radius: 8px; background: #eaf5f8; color: #2b4a57; font-size: 12px; line-height: 1.55; }
body.gsol-commerce .gsol-checkout-box .gsol-checkout-note strong { color: #16323d; }
body.gsol-commerce .gsol-checkout-box .woocommerce-privacy-policy-text { margin: 0 0 12px; }
body.gsol-commerce .gsol-checkout-box .woocommerce-privacy-policy-text p { margin: 0; color: #6a7e88; font-size: 11px; line-height: 1.5; }
body.gsol-commerce .gsol-checkout-box #payment { margin-top: 6px; padding: 0; border: 0; border-radius: 0; background: transparent; }
body.gsol-commerce .gsol-checkout-box #payment ul.payment_methods { margin: 0 0 12px; padding: 12px 0 0; border: 0; border-top: 1px solid var(--gsol-border); list-style: none; }
body.gsol-commerce .gsol-checkout-box #payment ul.payment_methods li { margin: 0 0 8px; padding: 0; background: transparent; }
body.gsol-commerce .gsol-checkout-box #payment ul.payment_methods label { display: inline; font-size: 13px; font-weight: 700; color: #21414f; }
body.gsol-commerce .gsol-checkout-box #payment .payment_box { margin: 6px 0 0; padding: 10px 12px; border-radius: 6px; background: #eef6f8; color: #4a636e; font-size: 11px; line-height: 1.5; }
body.gsol-commerce .gsol-checkout-box #payment .payment_box::before { display: none; }
body.gsol-commerce .gsol-checkout-box .woocommerce-terms-and-conditions-wrapper { margin: 0 0 14px; font-size: 11px; line-height: 1.55; color: #58707c; }
/* The link sat in the same colour and weight as the sentence around it, so
   the only clickable words on the checkbox read as ordinary text. */
body.gsol-commerce .gsol-checkout-box .woocommerce-terms-and-conditions-wrapper a,
body.gsol-commerce .gsol-checkout-box .woocommerce-privacy-policy-text a {
  color: var(--gsol-cyan-dark); font-weight: 800;
  /* The theme turns underlines off for every link, and that rule is meant to
     stand. Drawing the line as a border gets the same result without an
     exception that would have to be shouted with !important. */
  border-bottom: 1px solid currentColor; padding-bottom: 1px;
}
body.gsol-commerce .gsol-checkout-box .woocommerce-terms-and-conditions-wrapper a:hover,
body.gsol-commerce .gsol-checkout-box .woocommerce-privacy-policy-text a:hover { color: var(--gsol-ink); }
body.gsol-commerce .gsol-checkout-box .woocommerce-terms-and-conditions-checkbox-text { font-weight: 700; }
body.gsol-commerce .gsol-checkout-box .form-row.place-order { margin: 0; padding: 0; }
body.gsol-commerce .gsol-checkout-box #place_order {
  width: 100%; min-height: 52px; border: 0; border-radius: 26px;
  background: var(--gsol-ink); color: #fff; font-size: 14px; font-weight: 800; cursor: pointer;
}
body.gsol-commerce .gsol-checkout-box #place_order:hover { background: var(--gsol-cyan-dark); }

/* Storefront draws a full-width bar behind the coupon/login prompts. */
body.gsol-commerce .gsol-checkout + .woocommerce-info,
body.gsol-commerce .woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info { border-radius: 6px; font-size: 12px; }

@media (max-width: 980px) {
  body.gsol-commerce .gsol-checkout-layout { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-checkout-box { position: static; }
  body.gsol-commerce .gsol-checkout-main h1 { font-size: 27px; }
}
@media (max-width: 560px) {
  body.gsol-commerce .gsol-checkout .woocommerce-billing-fields__field-wrapper,
  body.gsol-commerce .gsol-checkout .woocommerce-shipping-fields__field-wrapper { grid-template-columns: 1fr; }
}

/* ── Моят профил ───────────────────────────────────────────────────────────
   Storefront draws this page and nothing else does: dark grey buttons with
   square corners and borderless inputs, in a shop whose every other control
   is round and cyan. Same treatment as the checkout — its own layout, its own
   controls, Storefront's left behind. */
body.gsol-commerce.woocommerce-account .u-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; align-items: start; }
/* Storefront floats these two at 41% and 48% from a rule carrying an id -
   .col2-set#customer_login .col-1 - which outranks anything built from
   classes alone. A floated block with no width left standing shrinks to fit
   its content, which is why the two cards came out 266px and 341px wide with
   a hole between them. */
body.gsol-commerce.woocommerce-account #customer_login .col-1,
body.gsol-commerce.woocommerce-account #customer_login .col-2,
body.gsol-commerce.woocommerce-account .addresses .col-1,
body.gsol-commerce.woocommerce-account .addresses .col-2,
body.gsol-commerce.woocommerce-account .u-column1,
body.gsol-commerce.woocommerce-account .u-column2 { width: 100%; float: none; padding: 0; }
body.gsol-commerce.woocommerce-account #customer_login.u-columns { float: none; }

/* The remember tick and the submit button share one row in WooCommerce's
   markup and ran into each other. */
body.gsol-commerce.woocommerce-account .woocommerce-form-login .form-row { display: flex; flex-direction: column; align-items: stretch; gap: 14px; }
body.gsol-commerce.woocommerce-account .woocommerce-form-login .form-row button:not(.show-password-input),
body.gsol-commerce.woocommerce-account .woocommerce-form-register button:not(.show-password-input) { width: 100%; }

/* The show/hide eye is a button too, and it sits inside the same row - left in
   the rule above it stretched across the password field and hid it. */
body.gsol-commerce.woocommerce-account button.show-password-input {
  position: absolute; top: 0; right: 0; width: 44px; min-height: 44px; height: 44px;
  padding: 0; border: 0; border-radius: 0 6px 6px 0; background: transparent;
  color: #6a8290; line-height: 44px; cursor: pointer;
}
body.gsol-commerce.woocommerce-account button.show-password-input:hover { background: transparent; color: var(--gsol-cyan-dark); }
body.gsol-commerce.woocommerce-account .password-input input { padding-right: 46px; }
body.gsol-commerce.woocommerce-account .u-columns > div > h2 { margin: 0 0 16px; font-size: 22px; }
body.gsol-commerce.woocommerce-account .woocommerce-form {
  padding: 24px; border: 1px solid var(--gsol-border); border-radius: 8px;
  background: var(--gsol-paper);
}
body.gsol-commerce.woocommerce-account .woocommerce-form p { margin: 0 0 14px; }
body.gsol-commerce.woocommerce-account label { display: block; margin-bottom: 5px; color: #375866; font-size: 12px; font-weight: 700; }
body.gsol-commerce.woocommerce-account .required { color: var(--gsol-red); text-decoration: none; border: 0; }
body.gsol-commerce.woocommerce-account input[type="text"],
body.gsol-commerce.woocommerce-account input[type="email"],
body.gsol-commerce.woocommerce-account input[type="password"],
body.gsol-commerce.woocommerce-account input[type="tel"],
body.gsol-commerce.woocommerce-account select,
body.gsol-commerce.woocommerce-account textarea {
  width: 100%; height: 44px; padding: 0 13px; box-sizing: border-box;
  border: 1px solid var(--gsol-border); border-radius: 6px; background: #fff;
  color: var(--gsol-ink); font-size: 13px;
}
body.gsol-commerce.woocommerce-account textarea { height: 96px; padding: 11px 13px; }
body.gsol-commerce.woocommerce-account input:focus,
body.gsol-commerce.woocommerce-account select:focus,
body.gsol-commerce.woocommerce-account textarea:focus { outline: 0; border-color: var(--gsol-cyan-dark); box-shadow: 0 0 0 3px rgba(0, 127, 159, .12); }
/* The password field carries a show/hide eye that WooCommerce positions over
   the input, so the wrapper has to be the positioning context. */
body.gsol-commerce.woocommerce-account .woocommerce-form__input-wrapper,
body.gsol-commerce.woocommerce-account .password-input { position: relative; display: block; }

body.gsol-commerce.woocommerce-account .woocommerce-Button,
body.gsol-commerce.woocommerce-account button[type="submit"],
body.gsol-commerce.woocommerce-account input[type="submit"],
body.gsol-commerce.woocommerce-account .woocommerce-Button--next,
body.gsol-commerce.woocommerce-account a.button {
  display: inline-block; min-height: 46px; padding: 0 26px; border: 0; border-radius: 23px;
  background: var(--gsol-ink); color: #fff; font-size: 13px; font-weight: 800;
  line-height: 46px; text-align: center; text-decoration: none; cursor: pointer;
}
body.gsol-commerce.woocommerce-account .woocommerce-Button:hover,
body.gsol-commerce.woocommerce-account button[type="submit"]:hover,
body.gsol-commerce.woocommerce-account input[type="submit"]:hover,
body.gsol-commerce.woocommerce-account a.button:hover { background: var(--gsol-cyan-dark); color: #fff; }
body.gsol-commerce.woocommerce-account .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; font-weight: 400; font-size: 12px; }
body.gsol-commerce.woocommerce-account .woocommerce-form-login__rememberme input { width: auto; height: auto; accent-color: #007f9f; }
body.gsol-commerce.woocommerce-account .woocommerce-LostPassword { margin: 12px 0 0; font-size: 12px; }
body.gsol-commerce.woocommerce-account .woocommerce-privacy-policy-text p { color: #6a7e88; font-size: 11px; line-height: 1.55; }

/* The logged-in side: navigation column plus content. */
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0 0 4px; }
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block; padding: 11px 14px; border-radius: 6px; color: #375866;
  font-size: 13px; font-weight: 700; text-decoration: none;
}
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-navigation a:hover { background: var(--gsol-paper); }
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: var(--gsol-ink); color: #fff; }
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-content table.shop_table { width: 100%; border-collapse: collapse; border: 1px solid var(--gsol-border); border-radius: 8px; font-size: 13px; }
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-content table.shop_table th,
body.gsol-commerce.woocommerce-account .woocommerce-MyAccount-content table.shop_table td { padding: 11px 13px; border-bottom: 1px solid var(--gsol-border); text-align: left; }

@media (max-width: 760px) {
  body.gsol-commerce.woocommerce-account .u-columns { grid-template-columns: 1fr; }
}

/* Delivery: the summary keeps Econt's own markup untouched, so the only
   thing here is the note that replaces the hidden address fields. */
body.gsol-commerce .gsol-delivery-note { margin: 4px 0 18px; padding: 13px 15px; border-radius: 8px; background: #eaf5f8; color: #2b4a57; font-size: 12px; line-height: 1.55; }
body.gsol-commerce .gsol-delivery-note strong { color: #16323d; }
/* A field Econt has taken over should look taken over, not broken. */
body.gsol-commerce .gsol-checkout input:disabled { background: #eef3f5; color: #7d949e; cursor: not-allowed; }

/* The shipping row put the courier label and Econt's office picker side by
   side, which left the picker a sliver: a name like "Пловдив Беломорски
   (Пловдив ул. Марковски път №1 Storagebox)" came down one word per line. The
   label takes its own line and the picker gets the full width under it. */
body.gsol-commerce .gsol-checkout-box ul#shipping_method li { display: block; }
body.gsol-commerce .gsol-checkout-box ul#shipping_method li > label { display: inline; margin-left: 8px; }
/* `width: 100%` next to `margin-left: 24px` made the block 24px wider than the
   cell it sits in, so its right edge — and with it the picker's arrow button —
   hung outside the summary column and got cut off. A block element already
   fills the space its margins leave, so the width is left to the browser. */
body.gsol-commerce .gsol-checkout-box .woo-bg--econt-delivery,
body.gsol-commerce .gsol-checkout-box .woo-bg-additional-fields { display: block; width: auto; margin: 9px 0 0 24px; }
body.gsol-commerce .gsol-checkout-box .multiselect { width: 100%; }

/* Econt's office picker is a vue-multiselect, and it inherits the width of
   the summary column it sits in — 380px minus padding. Office names are long
   ("Пловдив Район Южен ул. Кукленско Шосе №11"), so every option wrapped to
   one word per line and the list came out as an unreadable red ribbon. The
   dropdown is given room of its own and opens leftwards, since it lives in
   the right-hand column. */
body.gsol-commerce .gsol-checkout-box .multiselect { min-height: 42px; font-size: 13px; }
body.gsol-commerce .gsol-checkout-box .multiselect__tags {
  min-height: 42px; padding: 9px 34px 0 12px; border: 1px solid var(--gsol-border);
  border-radius: 6px; background: #fff; font-size: 13px;
}
body.gsol-commerce .gsol-checkout-box .multiselect__single,
body.gsol-commerce .gsol-checkout-box .multiselect__placeholder {
  margin: 0; padding: 0; color: var(--gsol-ink); font-size: 13px; line-height: 1.4;
  white-space: normal; word-break: normal;
}
body.gsol-commerce .gsol-checkout-box .multiselect__placeholder { color: #8aa0aa; }
body.gsol-commerce .gsol-checkout-box .multiselect__input {
  width: 100% !important; min-width: 0; padding: 0; border: 0; background: transparent;
  font-size: 13px; line-height: 1.4;
}
body.gsol-commerce .gsol-checkout-box .multiselect__content-wrapper {
  position: absolute; z-index: 40; right: 0; left: auto;
  width: auto; min-width: 340px; max-width: min(440px, 92vw);
  max-height: 300px; overflow-y: auto;
  border: 1px solid var(--gsol-border); border-radius: 8px; background: #fff;
  box-shadow: 0 16px 38px rgba(16, 24, 32, .16);
}
body.gsol-commerce .gsol-checkout-box .multiselect__content { width: 100%; padding: 5px; list-style: none; }
body.gsol-commerce .gsol-checkout-box .multiselect__element { display: block; }
body.gsol-commerce .gsol-checkout-box .multiselect__option {
  display: block; min-height: 0; padding: 9px 11px; border-radius: 6px;
  color: var(--gsol-ink); font-size: 12.5px; font-weight: 400; line-height: 1.45;
  white-space: normal; word-break: normal; text-transform: none;
}
/* The row under the cursor came out dark navy behind near-black text — the
   plugin ships its own highlight colours and the checkout inherits a third set
   from elsewhere, so the winner changes with load order. The pair below is
   forced, because an unreadable office name is a lost order. */
body.gsol-commerce .gsol-checkout-box .multiselect__option--highlight,
body.gsol-commerce .gsol-checkout-box .multiselect__option--selected,
body.gsol-commerce .gsol-checkout-box .multiselect__option--selected.multiselect__option--highlight {
  background: #eaf5f8 !important; color: var(--gsol-ink) !important; font-weight: 700;
}
body.gsol-commerce .gsol-checkout-box .multiselect__option--highlight::after,
body.gsol-commerce .gsol-checkout-box .multiselect__option--selected::after { display: none; }
/* The plugin sets `#shipping_method .woo-bg--econt-delivery .multiselect__select
   { height: 100% }`, which carries an id and so outranked the height set here —
   the arrow button stretched over the whole control. vue-multiselect then places
   the caret with `top: 65%` on a ::before, a percentage that drifts further off
   centre the taller the box grows, and an office name like "Пловдив Беломорски
   (Пловдив ул. Марковски път №1 Storagebox)" wraps to two lines. The result was
   a caret stranded low in a box that read as separate from the field. The button
   becomes a flex box that centres the caret at any height, and the id in the
   selector below is what lets it win. */
body.gsol-commerce .gsol-checkout-box #shipping_method .multiselect__select,
body.gsol-commerce .gsol-checkout-box .multiselect__select {
  display: flex; align-items: center; justify-content: center;
  top: 1px; right: 1px; bottom: 1px; width: 34px; height: auto; padding: 0;
  background: transparent; border-radius: 0 6px 6px 0;
}
body.gsol-commerce .gsol-checkout-box .multiselect__select::before {
  position: static; top: auto; right: auto; margin: 0;
  border-color: #6a7e88 transparent transparent; border-width: 5px 5px 0;
}
/* The search input is absolutely positioned across the full control, so it ran
   under the arrow and swallowed clicks meant for it. */
body.gsol-commerce .gsol-checkout-box .multiselect__input {
  width: calc(100% - 46px) !important;
}

/* City autocomplete, fed from Econt's own city list. */
body.gsol-commerce .gsol-city-field { position: relative; }
body.gsol-commerce .gsol-city-list {
  position: absolute; z-index: 30; top: 100%; left: 0; right: 0;
  max-height: 260px; margin: 4px 0 0; padding: 5px; overflow-y: auto;
  list-style: none; border: 1px solid var(--gsol-border); border-radius: 8px;
  background: #fff; box-shadow: 0 14px 34px rgba(16, 24, 32, .14);
}
body.gsol-commerce .gsol-city-item { padding: 9px 11px; border-radius: 6px; cursor: pointer; }
body.gsol-commerce .gsol-city-item:hover,
body.gsol-commerce .gsol-city-item.is-active { background: #eaf5f8; }
body.gsol-commerce .gsol-city-item b { display: block; font-size: 13px; color: var(--gsol-ink); }
body.gsol-commerce .gsol-city-item span { display: block; margin-top: 1px; color: #6a7e88; font-size: 11px; }

/* Company invoice block. The tick reads as a heading for the fields it opens,
   so it gets a rule above it and the fields are indented under it — otherwise
   six extra inputs appear in the middle of a delivery address with nothing
   saying why. Hidden by default: most customers are private buyers and should
   not have to scroll past a company form to reach the order button. */
body.gsol-commerce .woocommerce-billing-fields .gsol-invoice-choice {
  margin: 18px 0 14px;
  padding-top: 16px;
  border-top: 1px solid var(--gsol-border);
  clear: both;
}
body.gsol-commerce .gsol-invoice-choice > label { font-size: 13px; font-weight: 800; color: #21414f; }
body.gsol-commerce .gsol-company-field { display: none; }
body.gsol-commerce form.checkout.gsol-company-open .gsol-company-field { display: block; }
body.gsol-commerce form.checkout.gsol-company-open .gsol-company-field { padding-left: 26px; border-left: 2px solid #d7e7ec; }
body.gsol-commerce .gsol-company-field label { font-size: 12px; }
body.gsol-commerce .gsol-company-field input { font-size: 13px; }
/* The fields are declared optional so a private customer is never stopped by
   them, but once the tick is on they are required and validation says so. A
   column of inputs each labelled "(по избор)" that then refuses to submit is
   the worst of both, so the marker follows the tick. */
body.gsol-commerce .gsol-company-field label .optional { display: none; }
body.gsol-commerce form.checkout.gsol-company-open .gsol-company-field label::after { content: " *"; color: var(--gsol-red); font-weight: 700; }
body.gsol-commerce form.checkout.gsol-company-open #billing_vat_number_field label::after { content: " (ако фирмата е по ДДС)"; color: var(--gsol-muted); font-weight: 400; }

@media (max-width: 820px) {
  body.gsol-commerce .gsol-legal-hero { padding: 38px 0 32px; }
  body.gsol-commerce .gsol-legal-hero h1 { font-size: 31px; }
  body.gsol-commerce .gsol-legal-hero p { font-size: 14px; }
  body.gsol-commerce .gsol-legal-layout { display: block; padding-top: 22px; padding-bottom: 45px; }
  body.gsol-commerce .gsol-legal-nav { position: static; display: flex; gap: 7px; margin-bottom: 28px; overflow-x: auto; padding-bottom: 6px; }
  body.gsol-commerce .gsol-legal-nav a,
  body.gsol-commerce .gsol-legal-nav button { width: auto; min-width: max-content; min-height: 38px; border: 1px solid var(--gsol-border); border-left-width: 1px; border-radius: 5px; background: #fff; }
  body.gsol-commerce .gsol-legal-index { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-legal-identity { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-legal-content h2 { font-size: 20px; }
  body.gsol-commerce .gsol-legal-content p,
  body.gsol-commerce .gsol-legal-content li { font-size: 13px; line-height: 1.7; }
  body.gsol-commerce .gsol-legal-document-footer { flex-direction: column; gap: 7px; }
  body.gsol-commerce .gsol-footer-legal { gap: 7px 14px; }
  body.gsol-commerce .gsol-cookie-panel { right: 10px; bottom: calc(72px + env(safe-area-inset-bottom)); width: calc(100vw - 20px); padding: 16px; }
  body.gsol-commerce .gsol-cookie-actions { display: grid; grid-template-columns: 1fr 1fr; }
  body.gsol-commerce .gsol-cookie-actions > * { width: 100%; }
}

body.gsol-commerce .gsol-drawer-backdrop { position: fixed; inset: 0; z-index: 1000; display: none; background: rgba(7,13,17,.6); }
body.gsol-commerce .gsol-drawer-backdrop.is-open { display: block; }
body.gsol-commerce .gsol-inquiry { position: fixed; z-index: 1010; top: 0; right: 0; bottom: 0; width: min(520px, 100%); display: flex; flex-direction: column; transform: translateX(100%); transition: transform .22s ease; background: #fff; box-shadow: -20px 0 50px rgba(16,24,32,.22); }
body.gsol-commerce .gsol-inquiry.is-open { transform: translateX(0); }
body.gsol-commerce .gsol-inquiry-head { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 22px; border-bottom: 1px solid var(--gsol-border); }
body.gsol-commerce .gsol-inquiry-head h2 { margin-bottom: 5px; font-size: 21px; }
body.gsol-commerce .gsol-inquiry-head p { margin-bottom: 0; color: var(--gsol-muted); font-size: 11px; }
/* `padding: 0` is load-bearing. Storefront gives every <button> a padding in
   em, and with `box-sizing: border-box` a horizontal padding wider than the
   38px width pushes the box out to its min-content width — 44px. A 50% radius
   on a 44x38 box is an ellipse, so the round icon buttons came out as squashed
   ovals. The close button on the AI panel was the visible one. */
body.gsol-commerce .gsol-icon-button { display: grid; place-items: center; width: 38px; min-width: 38px; height: 38px; padding: 0; flex: 0 0 auto; border: 1px solid var(--gsol-border); border-radius: 50%; background: #fff; color: var(--gsol-ink); }
body.gsol-commerce .gsol-inquiry-body { flex: 1; overflow-y: auto; padding: 22px; }
body.gsol-commerce .gsol-selected-product { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 12px; margin-bottom: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--gsol-border); align-items: start; }
/* Two columns only when there is something to put in the first one. The
   buttons that opened this panel passed no picture, so the machine's name was
   left holding the 56px thumbnail column and broke one word per line. */
body.gsol-commerce .gsol-selected-product:not(:has(img)) { grid-template-columns: minmax(0, 1fr); }
body.gsol-commerce .gsol-selected-product img { width: 56px; height: 56px; object-fit: contain; border-radius: 6px; background: var(--gsol-paper); }
body.gsol-commerce .gsol-selected-product b { display: block; font-size: 13px; line-height: 1.4; }
body.gsol-commerce .gsol-selected-product small { display: block; margin-top: 5px; color: var(--gsol-muted); font-size: 11px; line-height: 1.45; }
body.gsol-commerce .gsol-field { margin-bottom: 15px; }
body.gsol-commerce .gsol-field > label, body.gsol-commerce .gsol-field > span { display: block; margin-bottom: 6px; font-size: 10px; font-weight: 800; text-transform: uppercase; }
body.gsol-commerce .gsol-field input:not([type="radio"]), body.gsol-commerce .gsol-field select, body.gsol-commerce .gsol-field textarea { width: 100%; min-height: 42px; padding: 10px 11px; border: 1px solid #aeb9c1; border-radius: 4px; background: #fff; color: var(--gsol-ink); outline: 0; }
body.gsol-commerce .gsol-field textarea { min-height: 92px; resize: vertical; }
body.gsol-commerce .gsol-field input:not([type="radio"]):focus, body.gsol-commerce .gsol-field select:focus, body.gsol-commerce .gsol-field textarea:focus { border-color: var(--gsol-cyan-dark); box-shadow: 0 0 0 3px rgba(0,169,206,.12); }
body.gsol-commerce .gsol-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
body.gsol-commerce .gsol-contact-methods { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body.gsol-commerce .gsol-contact-method { display: flex; align-items: center; gap: 9px; min-height: 46px; padding: 0 13px; border: 1px solid var(--gsol-border); border-radius: 6px; font-size: 11px; cursor: pointer; }
body.gsol-commerce .gsol-contact-method input[type="radio"] { flex: 0 0 auto; width: 16px; height: 16px; min-height: 0; margin: 0; padding: 0; accent-color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-contact-method .gsol-icon { flex: 0 0 auto; width: 16px; height: 16px; margin: 0; }
body.gsol-commerce .gsol-contact-method:has(input:checked) { border-color: var(--gsol-cyan-dark); background: #edf9fb; }
body.gsol-commerce .gsol-inquiry-foot { padding: 16px 22px; border-top: 1px solid var(--gsol-border); background: #fff; }
body.gsol-commerce .gsol-inquiry-foot .gsol-button { width: 100%; }
body.gsol-commerce .gsol-form-note { margin: 8px 0 0; color: var(--gsol-muted); font-size: 9px; text-align: center; }
body.gsol-commerce .gsol-success { display: none; padding: 40px 20px; text-align: center; }
body.gsol-commerce .gsol-success.is-open { display: block; }
body.gsol-commerce .gsol-success .gsol-icon { width: 44px; height: 44px; margin: 0 auto 15px; color: var(--gsol-green); }
body.gsol-commerce .gsol-success h3 { font-size: 21px; }
body.gsol-commerce .gsol-success p { color: var(--gsol-muted); font-size: 11px; }
body.gsol-commerce .gsol-form-content.is-hidden { display: none; }
body.gsol-commerce .gsol-cart-toast { position: fixed; z-index: 1020; right: 20px; bottom: 20px; display: flex; align-items: center; gap: 9px; padding: 13px 16px; transform: translateY(100px); opacity: 0; transition: .2s ease; border-radius: 5px; background: var(--gsol-ink); color: #fff; box-shadow: var(--gsol-shadow); font-size: 11px; }
body.gsol-commerce .gsol-cart-toast.is-open { transform: translateY(0); opacity: 1; }
body.gsol-commerce .gsol-cart-toast .gsol-icon { color: var(--gsol-lime); }
body.gsol-commerce .gsol-mobile-bar { display: none; }

@media (max-width: 1100px) {
  body.gsol-commerce .gsol-header-row { grid-template-columns: 155px 1fr auto; gap: 14px; }
  body.gsol-commerce .gsol-header-action span { display: none; }
  body.gsol-commerce .gsol-nav-link:nth-of-type(4), body.gsol-commerce .gsol-nav-link:nth-of-type(5) { display: none; }
  body.gsol-commerce .gsol-category-grid { grid-template-columns: repeat(3,1fr); }
  body.gsol-commerce .gsol-product-grid { grid-template-columns: repeat(3,1fr); }
  body.gsol-commerce .gsol-catalog-main .gsol-product-grid { grid-template-columns: repeat(2,1fr); }
  body.gsol-commerce .gsol-pdp-main { grid-template-columns: 1fr 390px; gap: 24px; }
  body.gsol-commerce .gsol-gallery-main { min-height: 440px; }
  body.gsol-commerce .gsol-mega { grid-template-columns: repeat(3,1fr); }
  body.gsol-commerce .gsol-mega section:nth-of-type(4), body.gsol-commerce .gsol-mega-cta { display: none; }
}

@media (max-width: 820px) {
  body.gsol-commerce { font-size: 14px; }
  body.gsol-commerce .gsol-shell { width: min(100% - 28px, 1320px); }
  body.gsol-commerce .gsol-promo { justify-content: flex-start; overflow-x: auto; white-space: nowrap; }
  body.gsol-commerce .gsol-promo span:nth-child(3) { display: none; }
  body.gsol-commerce .gsol-header-row { min-height: 66px; grid-template-columns: auto 1fr auto; }
  body.gsol-commerce .gsol-mobile-toggle { display: grid; place-items: center; width: 38px; height: 38px; border: 0; background: transparent; }
  body.gsol-commerce .gsol-brand-name small { display: none; }
  body.gsol-commerce .gsol-search-wrap { grid-column: 1 / -1; order: 4; margin-bottom: 12px; }
  body.gsol-commerce .gsol-header-actions .gsol-header-action:first-child { display: none; }
  body.gsol-commerce .gsol-departments { display: none; }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-departments { display: block; position: absolute; top: 100%; left: 0; right: 0; max-height: 65vh; overflow-y: auto; box-shadow: var(--gsol-shadow); }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-departments-row { flex-direction: column; align-items: stretch; padding: 10px 14px; }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-all-products, body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-nav-link, body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-support-link { min-height: 44px; justify-content: flex-start; margin: 0; padding: 0 12px; }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-all-products { align-self: auto; }
  body.gsol-commerce .gsol-mega {
    position: fixed;
    z-index: 83;
    top: auto;
    right: 12px;
    bottom: calc(70px + env(safe-area-inset-bottom));
    left: 12px;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    width: auto;
    max-height: min(66dvh, 540px);
    padding: 10px;
    overflow-y: auto;
    transform: translateY(18px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    border-radius: 8px;
    box-shadow: 0 -16px 44px rgba(18,62,79,.22), inset 0 1px 0 #fff;
    transition: transform .22s ease, opacity .18s ease, visibility 0s linear .22s;
  }
  body.gsol-commerce .gsol-main-header.is-mega-open .gsol-mega {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }
  body.gsol-commerce .gsol-mega section,
  body.gsol-commerce .gsol-mega section:nth-of-type(4) {
    display: block;
    padding: 12px 14px;
    border-right: 0;
    border-bottom: 1px solid var(--gsol-border);
  }
  body.gsol-commerce .gsol-mega section:nth-of-type(odd) { border-right: 1px solid var(--gsol-border); }
  body.gsol-commerce .gsol-mega section:nth-last-of-type(-n+2) { border-bottom: 0; }
  body.gsol-commerce .gsol-mega section h3 { font-size: 14px; }
  body.gsol-commerce .gsol-mega section a { min-height: 34px; padding: 7px 0; font-size: 12px; }
  body.gsol-commerce .gsol-mega-cta { display: none; }
  body.gsol-commerce .gsol-hero { min-height: 570px; align-items: flex-start; background-position: 62% center; }
  body.gsol-commerce .gsol-hero:after { background: linear-gradient(90deg, rgba(10,16,21,.9), rgba(10,16,21,.5) 72%, rgba(10,16,21,.12)); }
  body.gsol-commerce .gsol-hero-copy { width: 76%; padding: 54px 0 150px; }
  body.gsol-commerce .gsol-hero h1 { font-size: 38px; }
  body.gsol-commerce .gsol-hero p { font-size: 15px; }
  body.gsol-commerce .gsol-proof-row { grid-template-columns: repeat(2,1fr); }
  body.gsol-commerce .gsol-proof:nth-child(2) { border-right: 0; }
  body.gsol-commerce .gsol-proof:nth-child(-n+2) { border-bottom: 1px solid var(--gsol-border); }
  body.gsol-commerce .gsol-section { padding: 42px 0; }
  body.gsol-commerce .gsol-product-grid { grid-template-columns: repeat(2,1fr); }
  body.gsol-commerce .gsol-business-band { min-height: 500px; align-items: end; background-position: 38% center; }
  body.gsol-commerce .gsol-business-band:after { background: linear-gradient(0deg, rgba(255,255,255,.98), rgba(255,255,255,.9) 42%, rgba(255,255,255,.08) 74%); }
  body.gsol-commerce .gsol-business-copy { width: 100%; padding: 220px 0 38px; }
  body.gsol-commerce .gsol-service-list { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-service { border-right: 0; border-bottom: 1px solid var(--gsol-border); }
  body.gsol-commerce .gsol-service:last-child { border-bottom: 0; }
  body.gsol-commerce .gsol-final-cta { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-shop-tools-row { overflow-x: auto; }
  body.gsol-commerce .gsol-filter-toggle { display: inline-flex; }
  body.gsol-commerce .gsol-catalog-layout { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-filter-panel { position: fixed; z-index: 1010; left: 0; right: 0; bottom: 0; max-height: 78vh; overflow-y: auto; transform: translateY(105%); transition: transform .2s ease; border-radius: 8px 8px 0 0; box-shadow: 0 -20px 50px rgba(16,24,32,.2); }
  body.gsol-commerce .gsol-filter-panel.is-open { transform: translateY(0); }
  body.gsol-commerce .gsol-filter-apply { display: block; }
  body.gsol-commerce .gsol-pdp-main { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-pdp-summary { padding-bottom: 15px; }
  body.gsol-commerce .gsol-fit-strip { grid-template-columns: 1fr 1fr; }
  body.gsol-commerce .gsol-fit-intro { grid-column: 1 / -1; }
  body.gsol-commerce .gsol-fit-intro, body.gsol-commerce .gsol-fit-item { border-bottom: 1px solid var(--gsol-border); }
  body.gsol-commerce .gsol-component { grid-template-columns: 125px 1fr; }
  body.gsol-commerce .gsol-change-component { grid-column: 2; justify-self: start; }
  body.gsol-commerce .gsol-customize-band-inner { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-about-hero { min-height: 460px; background-position: 65% top; }
  body.gsol-commerce .gsol-about-copy h1 { font-size: 38px; }
  body.gsol-commerce .gsol-about-intro { grid-template-columns: 1fr; gap: 12px; }
  body.gsol-commerce .gsol-capabilities { grid-template-columns: repeat(2,1fr); }
  body.gsol-commerce .gsol-process { grid-template-columns: repeat(2,1fr); }
  body.gsol-commerce .gsol-step:nth-child(2) { border-right: 0; }
  body.gsol-commerce .gsol-cart-layout { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-footer-top { grid-template-columns: 1fr 1fr; }
  body.gsol-commerce .gsol-mobile-bar {
    position: fixed;
    z-index: 82;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    min-height: calc(62px + env(safe-area-inset-bottom));
    padding-bottom: env(safe-area-inset-bottom);
    transform: translateY(calc(100% + 12px));
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    border-top: 1px solid rgba(255,255,255,.1);
    background: var(--gsol-ink);
    color: #fff;
    box-shadow: 0 -10px 28px rgba(16,50,64,.12);
    transition: transform .28s cubic-bezier(.22,.8,.24,1), opacity .2s ease, visibility 0s linear .28s;
  }
  body.gsol-commerce .gsol-mobile-bar.is-visible {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }
  body.gsol-commerce .gsol-mobile-bar button {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    min-height: 62px;
    padding: 7px 3px 6px;
    border: 0;
    background: transparent;
    color: #d5dde2;
    font-size: 9px;
    transition: color .18s ease, background-color .18s ease;
  }
  body.gsol-commerce .gsol-mobile-bar button.is-active { color: #008fb5; }
  body.gsol-commerce .gsol-mobile-bar button.is-active:after {
    content: "";
    position: absolute;
    top: 0;
    left: 32%;
    right: 32%;
    height: 3px;
    border-radius: 0 0 3px 3px;
    background: #04b7dc;
  }
  body.gsol-commerce .gsol-mobile-bar .gsol-icon { width: 20px; height: 20px; }
  body.gsol-commerce .gsol-footer { padding-bottom: calc(62px + env(safe-area-inset-bottom)); }
  body.gsol-commerce.has-mobile-dock .gsol-ai-launcher { opacity: 0; pointer-events: none; animation: none; }
}

@media (max-width: 540px) {
  body.gsol-commerce .gsol-shell { width: min(100% - 22px, 1320px); }
  body.gsol-commerce .gsol-mega { grid-template-columns: 1fr; max-height: 64dvh; }
  body.gsol-commerce .gsol-mega section,
  body.gsol-commerce .gsol-mega section:nth-of-type(odd),
  body.gsol-commerce .gsol-mega section:nth-last-of-type(-n+2) { border-right: 0; border-bottom: 1px solid var(--gsol-border); }
  body.gsol-commerce .gsol-mega section:last-of-type { border-bottom: 0; }
  body.gsol-commerce .gsol-promo { font-size: 10px; }
  body.gsol-commerce .gsol-brand-name strong { font-size: 21px; }
  body.gsol-commerce .gsol-hero { min-height: 610px; background-position: 67% center; }
  body.gsol-commerce .gsol-hero-copy { width: 92%; padding-top: 40px; }
  body.gsol-commerce .gsol-hero h1 { font-size: 32px; }
  body.gsol-commerce .gsol-actions { flex-direction: column; align-items: stretch; }
  body.gsol-commerce .gsol-actions .gsol-button { width: 100%; }
  body.gsol-commerce .gsol-proof { padding: 8px 10px; }
  body.gsol-commerce .gsol-section-head { align-items: start; flex-direction: column; }
  body.gsol-commerce .gsol-section-head h2 { font-size: 24px; }
  body.gsol-commerce .gsol-category-grid { grid-template-columns: repeat(2,1fr); }
  body.gsol-commerce .gsol-product-grid, body.gsol-commerce .gsol-catalog-main .gsol-product-grid { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-product-card { display: grid; grid-template-columns: 120px 1fr; gap: 12px; }
  body.gsol-commerce .gsol-product-media { align-self: start; }
  body.gsol-commerce .gsol-product-info { padding-top: 0; }
  body.gsol-commerce .gsol-business-copy h2 { font-size: 27px; }
  body.gsol-commerce .gsol-shop-head { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-shop-head h1 { font-size: 29px; }
  body.gsol-commerce .gsol-filter-chip:nth-of-type(n+4) { display: none; }
  body.gsol-commerce .gsol-sort { flex: 0 0 132px; }
  body.gsol-commerce .gsol-catalog-switch { overflow-x: auto; }
  body.gsol-commerce .gsol-catalog-switch button { min-width: 190px; }
  body.gsol-commerce .gsol-laptop-standard { grid-template-columns: 1fr; gap: 18px; }
  body.gsol-commerce .gsol-laptop-proof { grid-template-columns: repeat(2, minmax(0,1fr)); }
  body.gsol-commerce .gsol-gallery { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-thumbs { grid-template-columns: repeat(4,58px); order: 2; }
  body.gsol-commerce .gsol-thumb { width: 58px; height: 58px; }
  body.gsol-commerce .gsol-gallery-main { min-height: 360px; }
  body.gsol-commerce .gsol-pdp-summary h1 { font-size: 25px; }
  body.gsol-commerce .gsol-pdp-secondary, body.gsol-commerce .gsol-pdp-assurance { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-pdp-tabs-row { gap: 15px; overflow-x: auto; }
  body.gsol-commerce .gsol-pdp-tab { white-space: nowrap; }
  body.gsol-commerce .gsol-fit-strip { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-fit-intro { grid-column: auto; }
  body.gsol-commerce .gsol-component { grid-template-columns: 1fr; gap: 5px; }
  body.gsol-commerce .gsol-change-component { grid-column: auto; }
  body.gsol-commerce .gsol-customize-band { padding: 22px; }
  body.gsol-commerce .gsol-customize-actions { flex-direction: column; }
  body.gsol-commerce .gsol-about-copy h1 { font-size: 31px; }
  body.gsol-commerce .gsol-capabilities, body.gsol-commerce .gsol-process { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-step, body.gsol-commerce .gsol-step + .gsol-step { padding: 20px 0; border-right: 0; }
  body.gsol-commerce .gsol-cart-item { grid-template-columns: 82px 1fr; }
  body.gsol-commerce .gsol-cart-item img { width: 82px; height: 82px; }
  body.gsol-commerce .gsol-cart-item > strong { grid-column: 2; }
  body.gsol-commerce .gsol-footer-top { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-footer-bottom { flex-direction: column; }
  body.gsol-commerce .gsol-field-grid { grid-template-columns: 1fr; }
}


/* Liquid Glass control system */
body.gsol-commerce .gsol-button,
body.gsol-commerce .gsol-search button,
body.gsol-commerce .gsol-all-products,
body.gsol-commerce .gsol-card-cart {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.56) 0%, rgba(255,255,255,.08) 36%, rgba(255,255,255,.18) 58%, transparent 72%),
    linear-gradient(115deg, #04b7dc 0%, #55d4e6 48%, #d7ef71 100%);
  color: var(--gsol-ink);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    inset 0 -1px 0 rgba(0,91,118,.18),
    0 8px 20px rgba(0,127,157,.18),
    0 2px 5px rgba(16,24,32,.08);
  -webkit-backdrop-filter: blur(18px) saturate(165%);
  backdrop-filter: blur(18px) saturate(165%);
  text-shadow: 0 1px 0 rgba(255,255,255,.28);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease;
}
body.gsol-commerce .gsol-button::before,
body.gsol-commerce .gsol-search button::before,
body.gsol-commerce .gsol-all-products::before,
body.gsol-commerce .gsol-card-cart::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 1px 2px auto;
  height: 48%;
  border-radius: 8px 8px 55% 55%;
  background: linear-gradient(180deg, rgba(255,255,255,.66), rgba(255,255,255,.04));
  pointer-events: none;
}
@keyframes gsolButtonGlint {
  0% { left: -48%; opacity: 0; }
  14% { opacity: .78; }
  72% { opacity: .42; }
  100% { left: 138%; opacity: 0; }
}
body.gsol-commerce .gsol-button::after,
body.gsol-commerce .gsol-search button::after,
body.gsol-commerce .gsol-all-products::after,
body.gsol-commerce .gsol-card-cart::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -70%;
  bottom: -70%;
  left: -48%;
  width: 28%;
  transform: rotate(18deg);
  opacity: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.66), transparent);
  pointer-events: none;
  will-change: left, opacity;
}
body.gsol-commerce .gsol-button:hover,
body.gsol-commerce .gsol-search button:hover,
body.gsol-commerce .gsol-all-products:hover,
body.gsol-commerce .gsol-card-cart:hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.92);
  color: var(--gsol-ink);
  filter: saturate(1.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 -1px 0 rgba(0,91,118,.2),
    0 13px 28px rgba(0,127,157,.23),
    0 3px 7px rgba(16,24,32,.1);
}
body.gsol-commerce .gsol-button:hover::after,
body.gsol-commerce .gsol-search button:hover::after,
body.gsol-commerce .gsol-all-products:hover::after,
body.gsol-commerce .gsol-card-cart:hover::after,
body.gsol-commerce .gsol-button:focus-visible::after,
body.gsol-commerce .gsol-search button:focus-visible::after,
body.gsol-commerce .gsol-all-products:focus-visible::after,
body.gsol-commerce .gsol-card-cart:focus-visible::after {
  animation: gsolButtonGlint .68s cubic-bezier(.2,.72,.2,1) 1;
}
body.gsol-commerce .gsol-button:active,
body.gsol-commerce .gsol-search button:active,
body.gsol-commerce .gsol-all-products:active,
body.gsol-commerce .gsol-card-cart:active {
  transform: translateY(0) scale(.985);
  box-shadow: inset 0 2px 6px rgba(16,24,32,.16), 0 3px 8px rgba(16,24,32,.1);
}
body.gsol-commerce .gsol-button:focus-visible,
body.gsol-commerce .gsol-search button:focus-visible,
body.gsol-commerce .gsol-all-products:focus-visible,
body.gsol-commerce .gsol-card-cart:focus-visible {
  outline: 3px solid rgba(0,169,206,.28);
  outline-offset: 3px;
}
body.gsol-commerce .gsol-button .gsol-icon,
body.gsol-commerce .gsol-card-cart .gsol-icon,
body.gsol-commerce .gsol-all-products .gsol-icon {
  transition: transform .22s ease;
}
body.gsol-commerce .gsol-button:hover .gsol-icon,
body.gsol-commerce .gsol-card-cart:hover .gsol-icon,
body.gsol-commerce .gsol-all-products:hover .gsol-icon { transform: scale(1.08); }

body.gsol-commerce .gsol-button.is-dark {
  border-color: rgba(255,255,255,.24);
  background:
    linear-gradient(135deg, rgba(255,255,255,.22), transparent 38%, rgba(0,169,206,.12) 72%),
    linear-gradient(115deg, #101820 0%, #1d3542 62%, #0b7995 140%);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.34);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(0,0,0,.24),
    0 10px 23px rgba(16,24,32,.2);
}
body.gsol-commerce .gsol-button.is-dark:hover {
  border-color: rgba(118,224,241,.54);
  background:
    linear-gradient(135deg, rgba(255,255,255,.25), transparent 42%, rgba(216,239,111,.12)),
    linear-gradient(115deg, #13212a, #234b5c 72%, #087f9c 130%);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32), 0 14px 29px rgba(16,24,32,.25);
}
body.gsol-commerce .gsol-button.is-light {
  border-color: rgba(255,255,255,.55);
  background:
    linear-gradient(135deg, rgba(255,255,255,.26), rgba(255,255,255,.04) 45%, rgba(0,169,206,.12)),
    rgba(10,20,27,.42);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.35);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 10px 24px rgba(0,0,0,.15);
}
body.gsol-commerce .gsol-button.is-light:hover {
  border-color: rgba(255,255,255,.85);
  background:
    linear-gradient(135deg, rgba(255,255,255,.36), rgba(255,255,255,.1) 48%, rgba(112,220,236,.16)),
    rgba(10,20,27,.5);
  color: #fff;
}
body.gsol-commerce .gsol-button.is-outline {
  border-color: rgba(90,114,127,.3);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.54) 45%, rgba(213,243,248,.52)),
    rgba(255,255,255,.58);
  color: var(--gsol-ink);
  text-shadow: 0 1px 0 rgba(255,255,255,.7);
  box-shadow: inset 0 1px 0 #fff, 0 8px 18px rgba(16,24,32,.09);
}
body.gsol-commerce .gsol-button.is-outline:hover {
  border-color: rgba(0,169,206,.5);
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(220,247,250,.68) 48%, rgba(216,239,111,.35)),
    rgba(255,255,255,.66);
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 12px 24px rgba(0,127,157,.14);
}

body.gsol-commerce .gsol-card-cart {
  width: 42px;
  height: 42px;
  border-radius: 12px;
}
body.gsol-commerce .gsol-search button { border-radius: 8px; }
body.gsol-commerce .gsol-all-products { border-radius: 0 9px 9px 0; }

body.gsol-commerce .gsol-mode-tabs {
  border-color: rgba(119,141,153,.26);
  background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(226,242,246,.58));
  box-shadow: inset 0 1px 0 #fff, 0 7px 18px rgba(16,24,32,.07);
  -webkit-backdrop-filter: blur(16px) saturate(145%);
  backdrop-filter: blur(16px) saturate(145%);
}
body.gsol-commerce .gsol-mode-tab,
body.gsol-commerce .gsol-filter-chip,
body.gsol-commerce .gsol-pagination button,
body.gsol-commerce .gsol-change-component {
  position: relative;
  border-color: rgba(116,138,150,.28);
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(236,246,248,.66));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 4px 12px rgba(16,24,32,.05);
  -webkit-backdrop-filter: blur(12px) saturate(135%);
  backdrop-filter: blur(12px) saturate(135%);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
body.gsol-commerce .gsol-mode-tab:hover,
body.gsol-commerce .gsol-filter-chip:hover,
body.gsol-commerce .gsol-pagination button:hover,
body.gsol-commerce .gsol-change-component:hover {
  transform: translateY(-1px);
  border-color: rgba(0,169,206,.48);
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 8px 17px rgba(0,127,157,.1);
}
body.gsol-commerce .gsol-mode-tab.is-active,
body.gsol-commerce .gsol-filter-chip.is-active,
body.gsol-commerce .gsol-pagination button.is-active {
  border-color: rgba(255,255,255,.26);
  background:
    linear-gradient(135deg, rgba(255,255,255,.2), transparent 45%, rgba(0,169,206,.18)),
    linear-gradient(115deg, #101820, #244a59);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.28);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 8px 18px rgba(16,24,32,.17);
}

body.gsol-commerce .gsol-header-action,
body.gsol-commerce .gsol-icon-button,
body.gsol-commerce .gsol-zoom,
body.gsol-commerce .gsol-favorite,
body.gsol-commerce .gsol-qty button {
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
body.gsol-commerce .gsol-header-action:hover,
body.gsol-commerce .gsol-icon-button:hover,
body.gsol-commerce .gsol-zoom:hover,
body.gsol-commerce .gsol-favorite:hover,
body.gsol-commerce .gsol-qty button:hover {
  transform: translateY(-1px);
  border-color: rgba(0,169,206,.42);
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(214,244,249,.68));
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 7px 16px rgba(0,127,157,.11);
}


/* Priority business service */
body.gsol-commerce .gsol-nav-link.is-business {
  color: #075fc7;
  background: linear-gradient(135deg, rgba(225,245,255,.86), rgba(176,224,255,.46));
  box-shadow: inset 0 1px 0 #fff;
}
body.gsol-commerce .gsol-nav-link.is-business:hover {
  color: #fff;
  background: linear-gradient(120deg, #075fce, #0b8eea);
}
body.gsol-commerce .gsol-business-band.is-priority {
  min-height: 455px;
  border-top: 1px solid rgba(57,139,213,.24);
  border-bottom: 1px solid rgba(57,139,213,.24);
  background-position: 34% center;
}
body.gsol-commerce .gsol-business-band.is-priority:after {
  background: linear-gradient(90deg, rgba(4,21,35,.05) 28%, rgba(232,246,255,.78) 57%, rgba(255,255,255,.99) 79%);
}
body.gsol-commerce .gsol-business-band.is-priority .gsol-business-copy {
  width: 48%;
  padding: 54px 0;
}
body.gsol-commerce .gsol-service-kicker {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 28px;
  margin-bottom: 14px;
  padding: 0 10px;
  border: 1px solid rgba(65,151,226,.32);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(187,229,255,.62));
  color: #075daf;
  box-shadow: inset 0 1px 0 #fff, 0 7px 17px rgba(0,91,190,.11);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-service-kicker .gsol-icon { width: 15px; height: 15px; }
body.gsol-commerce .gsol-business-band.is-priority .gsol-eyebrow { margin-bottom: 9px; }
body.gsol-commerce .gsol-business-band.is-priority h2 {
  max-width: 610px;
  margin-bottom: 13px;
  color: #0b1a27;
  font-size: 38px;
}
body.gsol-commerce .gsol-business-band.is-priority p {
  max-width: 610px;
  margin-bottom: 16px;
  color: #405766;
}
body.gsol-commerce .gsol-service-points {
  display: grid;
  gap: 7px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}
body.gsol-commerce .gsol-service-points li {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #183443;
  font-size: 12px;
  font-weight: 700;
}
body.gsol-commerce .gsol-service-points .gsol-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  color: #0874d8;
}
@media (max-width: 820px) {
  body.gsol-commerce .gsol-business-band.is-priority {
    min-height: 620px;
    background-position: 38% top;
  }
  body.gsol-commerce .gsol-business-band.is-priority:after {
    background: linear-gradient(0deg, rgba(255,255,255,.99) 0%, rgba(241,250,255,.96) 48%, rgba(255,255,255,.08) 78%);
  }
  body.gsol-commerce .gsol-business-band.is-priority .gsol-business-copy {
    width: 100%;
    padding: 255px 0 38px;
  }
}
@media (max-width: 540px) {
  body.gsol-commerce .gsol-business-band.is-priority { min-height: 680px; }
  body.gsol-commerce .gsol-business-band.is-priority .gsol-business-copy { padding-top: 245px; }
  body.gsol-commerce .gsol-business-band.is-priority h2 { font-size: 29px; }
  body.gsol-commerce .gsol-service-points li { align-items: flex-start; }
}


/* GSOL AI assistant */
body.gsol-commerce .gsol-ai-launcher {
  position: fixed;
  z-index: 1002;
  right: 22px;
  bottom: 22px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 18px 0 10px;
  overflow: hidden;
  border: 1px solid rgba(211,241,255,.82);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.38), transparent 42%, rgba(86,207,255,.24)),
    linear-gradient(120deg, #075fce, #0b88ed 58%, #18afe5);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 14px 32px rgba(0,77,169,.3);
  text-shadow: 0 1px 2px rgba(0,39,94,.5);
  transition: transform .2s ease, box-shadow .2s ease;
}
body.gsol-commerce .gsol-ai-launcher:hover {
  transform: translateY(-2px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 18px 38px rgba(0,77,169,.36);
}
body.gsol-commerce .gsol-ai-launcher-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.52);
  border-radius: 10px;
  background: rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38);
}
body.gsol-commerce .gsol-ai-launcher-icon:after {
  content: "";
  position: absolute;
  top: -2px;
  right: -2px;
  width: 9px;
  height: 9px;
  border: 2px solid #0b78d7;
  border-radius: 50%;
  background: #54e59a;
}
body.gsol-commerce .gsol-ai-launcher strong { display: block; font-size: 12px; }
body.gsol-commerce .gsol-ai-launcher small { display: block; color: #d9f4ff; font-size: 9px; }

body.gsol-commerce .gsol-ai-panel {
  position: fixed;
  z-index: 1004;
  right: 22px;
  bottom: 88px;
  width: min(390px, calc(100% - 28px));
  overflow: hidden;
  transform: translateY(18px) scale(.98);
  transform-origin: right bottom;
  opacity: 0;
  pointer-events: none;
  border: 1px solid rgba(105,177,232,.36);
  border-radius: 14px;
  background: rgba(250,253,255,.98);
  color: var(--gsol-ink);
  box-shadow: 0 28px 70px rgba(10,39,69,.28), inset 0 1px 0 #fff;
  transition: transform .22s ease, opacity .22s ease;
}
body.gsol-commerce .gsol-ai-panel.is-open {
  transform: translateY(0) scale(1);
  opacity: 1;
  pointer-events: auto;
}
body.gsol-commerce .gsol-ai-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px;
  border-bottom: 1px solid rgba(114,174,218,.25);
  background:
    linear-gradient(135deg, rgba(255,255,255,.3), transparent 48%),
    linear-gradient(120deg, #0759bd, #0b84e8 64%, #16a8e1);
  color: #fff;
}
body.gsol-commerce .gsol-ai-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  border: 1px solid rgba(255,255,255,.46);
  border-radius: 10px;
  background: rgba(255,255,255,.17);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.36);
}
body.gsol-commerce .gsol-ai-avatar img { width: 26px; height: 26px; object-fit: contain; }
body.gsol-commerce .gsol-ai-title { min-width: 0; flex: 1; }
body.gsol-commerce .gsol-ai-title strong { display: block; font-size: 13px; }
body.gsol-commerce .gsol-ai-title small { display: flex; align-items: center; gap: 6px; color: #d9f3ff; font-size: 9px; }
body.gsol-commerce .gsol-ai-title small:before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #55e59a;
  box-shadow: 0 0 0 3px rgba(85,229,154,.14);
}
body.gsol-commerce .gsol-ai-head .gsol-icon-button {
  border-color: rgba(255,255,255,.3);
  background: rgba(255,255,255,.12);
  color: #fff;
}
body.gsol-commerce .gsol-ai-messages {
  display: grid;
  gap: 10px;
  min-height: 220px;
  padding: 15px;
  background:
    linear-gradient(rgba(241,248,252,.94), rgba(250,253,255,.98)),
    radial-gradient(circle at 10% 10%, rgba(12,132,232,.12), transparent 35%);
}
body.gsol-commerce .gsol-ai-message {
  max-width: 88%;
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 11px;
  line-height: 1.55;
}
body.gsol-commerce .gsol-ai-message.is-assistant {
  justify-self: start;
  border: 1px solid rgba(94,158,204,.2);
  border-top-left-radius: 3px;
  background: #fff;
  color: #253c4b;
  box-shadow: 0 6px 15px rgba(25,58,82,.07);
}
body.gsol-commerce .gsol-ai-message.is-user {
  justify-self: end;
  border: 1px solid rgba(189,229,255,.46);
  border-bottom-right-radius: 3px;
  background: linear-gradient(120deg, #086bd8, #0b91e8);
  color: #fff;
  box-shadow: 0 7px 16px rgba(0,91,190,.16);
}
body.gsol-commerce .gsol-ai-quick {
  display: flex;
  gap: 6px;
  padding: 0 15px 12px;
  overflow-x: auto;
  background: #f8fbfd;
}
body.gsol-commerce .gsol-ai-quick button {
  min-height: 30px;
  flex: 0 0 auto;
  padding: 0 9px;
  border: 1px solid rgba(41,126,194,.24);
  border-radius: 7px;
  background: linear-gradient(135deg, #fff, #eaf7ff);
  color: #075daf;
  font-size: 9px;
  box-shadow: inset 0 1px 0 #fff;
}
body.gsol-commerce .gsol-ai-form {
  display: grid;
  grid-template-columns: 1fr 42px;
  gap: 8px;
  padding: 12px;
  border-top: 1px solid rgba(111,164,202,.2);
  background: #fff;
}
body.gsol-commerce .gsol-ai-form input {
  width: 100%;
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  border: 1px solid rgba(78,137,180,.3);
  border-radius: 9px;
  background: #f7fbfd;
  color: var(--gsol-ink);
  outline: 0;
}
body.gsol-commerce .gsol-ai-form input:focus { border-color: #0a84e8; box-shadow: 0 0 0 3px rgba(10,132,232,.12); }
body.gsol-commerce .gsol-ai-send {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(213,242,255,.7);
  border-radius: 10px;
  background: linear-gradient(120deg, #0763cf, #0b91e8);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 7px 16px rgba(0,91,190,.2);
}
@media (max-width: 820px) {
  body.gsol-commerce .gsol-ai-launcher { right: 12px; bottom: 70px; }
  body.gsol-commerce .gsol-ai-panel { right: 14px; bottom: 134px; }
}
@media (max-width: 540px) {
  body.gsol-commerce .gsol-ai-launcher { min-width: 52px; padding: 0 8px; }
  body.gsol-commerce .gsol-ai-launcher > span:last-child { display: none; }
  body.gsol-commerce .gsol-ai-panel { right: 10px; bottom: 130px; width: calc(100% - 20px); }
  body.gsol-commerce .gsol-ai-message { max-width: 94%; }
}


/* Sales assurance and client segments */
body.gsol-commerce .gsol-promo {
  min-height: 40px;
  border-bottom: 1px solid rgba(147,211,255,.28);
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), transparent 42%),
    linear-gradient(110deg, #073d84, #075eb9 50%, #087fc8);
  color: #eaf7ff;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.08);
}
body.gsol-commerce .gsol-promo span { color: #eaf7ff; }
body.gsol-commerce .gsol-promo span + span { border-left: 1px solid rgba(255,255,255,.15); padding-left: 20px; }
body.gsol-commerce .gsol-promo .is-gift {
  min-height: 26px;
  padding: 0 11px;
  border: 1px solid rgba(255,239,183,.58);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff4bf, #e8c565);
  color: #33270b;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 5px 14px rgba(24,58,96,.16);
  text-transform: uppercase;
}
body.gsol-commerce .gsol-promo .is-gift .gsol-icon { color: #755b12; }

body.gsol-commerce .gsol-product-gift {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  margin-top: 7px;
  color: #075daf;
  font-size: 9px;
  font-weight: 800;
}
body.gsol-commerce .gsol-product-gift .gsol-icon { width: 13px; height: 13px; }
body.gsol-commerce .gsol-product-gift b,
body.gsol-commerce .gsol-product-gift small { display: block; }
body.gsol-commerce .gsol-product-gift small { margin-top: 1px; color: #667b85; font-size: 7px; font-weight: 600; }

body.gsol-commerce .gsol-windows-gift {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 12px;
  margin-bottom: 16px;
  padding: 13px;
  border: 1px solid rgba(88,169,231,.34);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(220,244,255,.72) 56%, rgba(171,224,255,.42)),
    #eef9ff;
  box-shadow: inset 0 1px 0 #fff, 0 9px 21px rgba(0,91,190,.1);
}
body.gsol-commerce .gsol-windows-gift > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(210,241,255,.66);
  border-radius: 10px;
  background: linear-gradient(135deg, #075fce, #0b91e8);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48), 0 7px 16px rgba(0,91,190,.18);
}
body.gsol-commerce .gsol-windows-gift small {
  display: block;
  margin-bottom: 2px;
  color: #075daf;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-windows-gift strong { display: block; margin-bottom: 2px; color: #102d40; font-size: 12px; }
body.gsol-commerce .gsol-windows-gift p { margin: 0; color: #587080; font-size: 9px; }

body.gsol-commerce .gsol-clients-band {
  padding: 54px 0;
  border-top: 1px solid rgba(64,148,213,.2);
  border-bottom: 1px solid rgba(64,148,213,.2);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(225,243,253,.76)),
    #edf8fe;
}
body.gsol-commerce .gsol-clients-head {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 70px;
  align-items: end;
  margin-bottom: 28px;
}
body.gsol-commerce .gsol-clients-head h2 { margin-bottom: 0; font-size: 31px; }
body.gsol-commerce .gsol-clients-head p { margin-bottom: 0; color: #557080; }
body.gsol-commerce .gsol-client-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  border-top: 1px solid rgba(60,135,192,.26);
  border-bottom: 1px solid rgba(60,135,192,.26);
}
body.gsol-commerce .gsol-client-segment {
  min-height: 210px;
  padding: 27px 26px;
  border-right: 1px solid rgba(60,135,192,.26);
}
body.gsol-commerce .gsol-client-segment:last-child { border-right: 0; }
body.gsol-commerce .gsol-client-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 22px;
  border: 1px solid rgba(202,237,255,.66);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.42), transparent 46%),
    linear-gradient(120deg, #075fce, #0b91e8);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 9px 19px rgba(0,91,190,.17);
}
body.gsol-commerce .gsol-client-segment small {
  display: block;
  margin-bottom: 5px;
  color: #0872cb;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-client-segment h3 { margin-bottom: 9px; color: #102d40; font-size: 18px; }
body.gsol-commerce .gsol-client-segment p { margin-bottom: 0; color: #557080; font-size: 11px; }
@media (max-width: 820px) {
  body.gsol-commerce .gsol-promo span + span { padding-left: 14px; }
  body.gsol-commerce .gsol-clients-head { grid-template-columns: 1fr; gap: 10px; }
  body.gsol-commerce .gsol-client-grid { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-client-segment { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(60,135,192,.26); }
  body.gsol-commerce .gsol-client-segment:last-child { border-bottom: 0; }
}
@media (max-width: 540px) {
  body.gsol-commerce .gsol-promo { padding-inline: 11px; }
  body.gsol-commerce .gsol-windows-gift { grid-template-columns: 38px 1fr; }
  body.gsol-commerce .gsol-windows-gift > span { width: 38px; height: 38px; }
  body.gsol-commerce .gsol-clients-band { padding: 42px 0; }
  body.gsol-commerce .gsol-clients-head h2 { font-size: 27px; }
  body.gsol-commerce .gsol-client-segment { padding: 23px 0; }
}


/* Gaming Zone standards */
body.gsol-commerce .gsol-gaming-standard {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 34px;
  margin: 12px 0 30px;
  padding: 38px;
  border: 1px solid rgba(148,213,255,.34);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.1), transparent 38%, rgba(57,190,241,.16)),
    linear-gradient(115deg, #073c7e 0%, #075da9 54%, #087cac 100%);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 18px 38px rgba(8,49,89,.18);
}
body.gsol-commerce .gsol-gaming-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-right: 18px;
}
body.gsol-commerce .gsol-gaming-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  min-height: 26px;
  margin-bottom: 17px;
  padding: 0 10px;
  border: 1px solid rgba(171,226,255,.32);
  border-radius: 7px;
  background: rgba(44,184,235,.18);
  color: #75dcff;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-gaming-standard h1 {
  max-width: 620px;
  margin-bottom: 13px;
  color: #fff;
  font-size: 34px;
}
body.gsol-commerce .gsol-gaming-standard p {
  max-width: 610px;
  margin-bottom: 19px;
  color: #d3e8f4;
  font-size: 13px;
}
body.gsol-commerce .gsol-gaming-quality {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 11px;
}
body.gsol-commerce .gsol-gaming-quality .gsol-icon {
  width: 20px;
  height: 20px;
  color: #64dcff;
}
body.gsol-commerce .gsol-gaming-quality strong { display: block; }
body.gsol-commerce .gsol-gaming-quality small { display: block; color: #b8d5e5; font-size: 9px; }

body.gsol-commerce .gsol-gaming-tiers { display: grid; gap: 10px; align-content: center; }
body.gsol-commerce .gsol-tier {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 5px 18px;
  min-height: 112px;
  padding: 18px 20px;
  text-align: left;
  border: 1px solid rgba(171,222,255,.27);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.14), transparent 46%, rgba(65,201,255,.1)),
    rgba(7,72,123,.42);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
body.gsol-commerce .gsol-tier:hover,
body.gsol-commerce .gsol-tier.is-active {
  transform: translateX(-3px);
  border-color: rgba(105,216,255,.76);
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), transparent 48%, rgba(90,219,255,.16)),
    rgba(5,111,176,.7);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 10px 22px rgba(0,42,86,.16);
}
body.gsol-commerce .gsol-tier-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-size: 16px; font-weight: 800; }
body.gsol-commerce .gsol-tier-badge {
  min-height: 21px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 6px;
  background: linear-gradient(135deg, #d6f3ff, #5ed6ff);
  color: #064d8c;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-tier.is-premium .gsol-tier-badge {
  background: linear-gradient(135deg, #fff1bc, #e3bf5f);
  color: #503b06;
}
body.gsol-commerce .gsol-tier-description {
  grid-column: 1;
  color: #c3dce9;
  font-size: 10px;
}
body.gsol-commerce .gsol-tier-action {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #75dcff;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}
body.gsol-commerce .gsol-tier-action .gsol-icon { width: 15px; height: 15px; }
body.gsol-commerce .gsol-tier-kicker {
  grid-column: 1;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}
body.gsol-commerce .gsol-tier-common {
  display: grid;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 9px;
  margin: 3px 0 0;
  padding: 11px 13px;
  border: 1px solid rgba(171,222,255,.22);
  border-radius: 7px;
  background: rgba(255,255,255,.08);
  color: #d6ebf5;
  font-size: 9px;
  line-height: 1.5;
}
body.gsol-commerce .gsol-tier-common .gsol-icon { width: 19px; height: 19px; color: #75dcff; }
@media (max-width: 820px) {
  body.gsol-commerce .gsol-gaming-standard { grid-template-columns: 1fr; padding: 28px; }
  body.gsol-commerce .gsol-gaming-intro { padding-right: 0; }
}
@media (max-width: 540px) {
  body.gsol-commerce .gsol-gaming-standard { gap: 24px; padding: 22px; }
  body.gsol-commerce .gsol-gaming-standard h1 { font-size: 28px; }
  body.gsol-commerce .gsol-tier { grid-template-columns: 1fr; padding: 16px; }
  body.gsol-commerce .gsol-tier-action { grid-column: 1; grid-row: auto; margin-top: 4px; }
  body.gsol-commerce .gsol-tier:hover, body.gsol-commerce .gsol-tier.is-active { transform: translateY(-2px); }
}


/* Apple-blue Liquid Glass direction */
body.gsol-commerce {
  --gsol-cyan: #0a84ff;
  --gsol-cyan-dark: #006fce;
  --gsol-lime: #77d7ff;
}

@keyframes gsolAiShine {
  0%, 72% { transform: translateX(-180%) rotate(18deg); opacity: 0; }
  76% { opacity: .72; }
  88% { transform: translateX(420%) rotate(18deg); opacity: 0; }
  100% { transform: translateX(420%) rotate(18deg); opacity: 0; }
}

body.gsol-commerce .gsol-promo {
  min-height: 36px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(105deg, #202c34, #162128);
  color: #e9f0f4;
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.16);
}
body.gsol-commerce .gsol-promo span { color: #e9f0f4; }
body.gsol-commerce .gsol-promo span + span {
  padding-left: 20px;
  border-left: 1px solid rgba(255,255,255,.11);
}
body.gsol-commerce .gsol-promo .gsol-icon { color: #a9d9ef; }

body.gsol-commerce .gsol-brand-mark {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(210,237,255,.62);
  border-radius: 11px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.34), transparent 46%, rgba(132,207,255,.18)),
    rgba(10,132,255,.84);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.58),
    inset 0 -1px 0 rgba(0,63,142,.22),
    0 7px 17px rgba(0,102,215,.18);
  -webkit-backdrop-filter: blur(16px) saturate(150%);
  backdrop-filter: blur(16px) saturate(150%);
}
body.gsol-commerce .gsol-brand-mark img {
  width: 29px;
  height: 29px;
  object-fit: contain;
  filter: drop-shadow(0 1px 2px rgba(0,39,94,.3));
}

body.gsol-commerce .gsol-button,
body.gsol-commerce .gsol-search button,
body.gsol-commerce .gsol-all-products,
body.gsol-commerce .gsol-card-cart {
  border-color: rgba(222,243,255,.65);
  background:
    linear-gradient(135deg, rgba(255,255,255,.48) 0%, rgba(255,255,255,.1) 34%, rgba(110,196,255,.18) 63%, rgba(255,255,255,.08) 100%),
    rgba(10,132,255,.78);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,54,122,.38);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    inset 0 -1px 0 rgba(0,62,143,.2),
    0 9px 22px rgba(0,96,210,.18),
    0 2px 5px rgba(16,24,32,.06);
  -webkit-backdrop-filter: blur(18px) saturate(155%);
  backdrop-filter: blur(18px) saturate(155%);
  filter: none;
}
body.gsol-commerce .gsol-button:hover,
body.gsol-commerce .gsol-search button:hover,
body.gsol-commerce .gsol-all-products:hover,
body.gsol-commerce .gsol-card-cart:hover {
  border-color: rgba(239,250,255,.9);
  background:
    linear-gradient(135deg, rgba(255,255,255,.57), rgba(255,255,255,.13) 38%, rgba(131,210,255,.22) 70%),
    rgba(10,132,255,.86);
  color: #fff;
  filter: none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -1px 0 rgba(0,62,143,.18),
    0 14px 28px rgba(0,105,220,.25),
    0 3px 7px rgba(16,24,32,.07);
}
body.gsol-commerce .gsol-button:focus-visible,
body.gsol-commerce .gsol-search button:focus-visible,
body.gsol-commerce .gsol-all-products:focus-visible,
body.gsol-commerce .gsol-card-cart:focus-visible {
  outline-color: rgba(10,132,255,.28);
}
body.gsol-commerce .gsol-hero .gsol-actions .gsol-button:first-child,
body.gsol-commerce .gsol-purchase-row .gsol-button,
body.gsol-commerce .gsol-ai-launcher {
  animation: gsolGlassBreathe 4.6s ease-in-out infinite;
}

body.gsol-commerce .gsol-button.is-dark {
  border-color: rgba(205,235,255,.42);
  background:
    linear-gradient(135deg, rgba(255,255,255,.3), transparent 43%, rgba(96,188,255,.18)),
    rgba(0,100,210,.8);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,40,94,.45);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -1px 0 rgba(0,50,120,.24),
    0 10px 24px rgba(0,87,188,.2);
}
body.gsol-commerce .gsol-button.is-dark:hover {
  border-color: rgba(229,247,255,.74);
  background:
    linear-gradient(135deg, rgba(255,255,255,.36), transparent 44%, rgba(120,205,255,.2)),
    rgba(0,112,224,.86);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.54), 0 14px 29px rgba(0,92,197,.26);
}
body.gsol-commerce .gsol-button.is-light {
  border-color: rgba(255,255,255,.52);
  background:
    linear-gradient(135deg, rgba(255,255,255,.22), rgba(255,255,255,.06) 45%, rgba(114,201,255,.14)),
    rgba(15,83,151,.36);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,32,74,.42);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 9px 21px rgba(0,47,99,.14);
}
body.gsol-commerce .gsol-button.is-light:hover {
  border-color: rgba(255,255,255,.78);
  background:
    linear-gradient(135deg, rgba(255,255,255,.3), rgba(255,255,255,.09) 46%, rgba(128,211,255,.17)),
    rgba(16,103,190,.46);
  color: #fff;
}
body.gsol-commerce .gsol-button.is-outline {
  border-color: rgba(41,129,210,.25);
  background:
    linear-gradient(135deg, rgba(255,255,255,.84), rgba(242,249,253,.58) 52%, rgba(208,235,251,.38)),
    rgba(255,255,255,.55);
  color: #145c9d;
  text-shadow: 0 1px 0 rgba(255,255,255,.82);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 7px 17px rgba(0,84,155,.07);
  -webkit-backdrop-filter: blur(16px) saturate(145%);
  backdrop-filter: blur(16px) saturate(145%);
}
body.gsol-commerce .gsol-button.is-outline:hover {
  border-color: rgba(10,132,255,.4);
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(228,245,255,.68) 54%, rgba(192,226,248,.42)),
    rgba(255,255,255,.68);
  color: #0b5799;
  box-shadow: inset 0 1px 0 #fff, 0 11px 22px rgba(0,95,175,.11);
}

body.gsol-commerce .gsol-mode-tabs {
  border-color: rgba(46,117,174,.17);
  background: linear-gradient(135deg, rgba(255,255,255,.8), rgba(225,241,250,.48));
  box-shadow: inset 0 1px 0 #fff, 0 6px 15px rgba(0,69,119,.05);
}
body.gsol-commerce .gsol-mode-tab.is-active,
body.gsol-commerce .gsol-filter-chip.is-active,
body.gsol-commerce .gsol-pagination button.is-active {
  border-color: rgba(210,239,255,.38);
  background:
    linear-gradient(135deg, rgba(255,255,255,.28), transparent 45%, rgba(111,200,255,.17)),
    rgba(10,120,235,.78);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,50,112,.34);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44), 0 8px 18px rgba(0,91,190,.14);
  -webkit-backdrop-filter: blur(14px) saturate(150%);
  backdrop-filter: blur(14px) saturate(150%);
}
body.gsol-commerce .gsol-mode-tab:hover,
body.gsol-commerce .gsol-filter-chip:hover,
body.gsol-commerce .gsol-pagination button:hover,
body.gsol-commerce .gsol-change-component:hover {
  border-color: rgba(10,132,255,.27);
  color: #174f7e;
  box-shadow: inset 0 1px 0 #fff, 0 7px 15px rgba(0,91,162,.07);
}

body.gsol-commerce .gsol-nav-link.is-business {
  color: #125b98;
  background: linear-gradient(135deg, rgba(247,252,255,.76), rgba(205,232,249,.34));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.86);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
body.gsol-commerce .gsol-nav-link.is-business:hover {
  color: #fff;
  background: rgba(10,132,255,.76);
}

body.gsol-commerce .gsol-service-kicker {
  border-color: rgba(10,132,255,.2);
  background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(214,238,252,.52));
  color: #135e9c;
  box-shadow: inset 0 1px 0 #fff, 0 6px 15px rgba(0,85,153,.07);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
body.gsol-commerce .gsol-service-points .gsol-icon { color: #0a84d9; }

body.gsol-commerce .gsol-ai-launcher {
  overflow: hidden;
  border-color: rgba(220,243,255,.64);
  background:
    linear-gradient(135deg, rgba(255,255,255,.42), transparent 42%, rgba(120,205,255,.2)),
    rgba(10,132,255,.8);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 13px 30px rgba(0,92,200,.24);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
}
body.gsol-commerce .gsol-ai-launcher::before {
  content: "";
  position: absolute;
  top: -70%;
  bottom: -70%;
  left: -20%;
  width: 24%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.62), transparent);
  animation: gsolAiShine 5.4s ease-in-out infinite;
  pointer-events: none;
}
body.gsol-commerce .gsol-ai-launcher:hover {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.66), 0 17px 36px rgba(0,92,200,.3);
}
body.gsol-commerce .gsol-ai-launcher-icon:after {
  border-color: rgba(10,103,206,.86);
  background: #79dcff;
}
body.gsol-commerce .gsol-ai-head {
  background:
    linear-gradient(135deg, rgba(255,255,255,.28), transparent 50%, rgba(112,201,255,.16)),
    rgba(8,113,222,.84);
  -webkit-backdrop-filter: blur(18px) saturate(155%);
  backdrop-filter: blur(18px) saturate(155%);
}
body.gsol-commerce .gsol-ai-message.is-user {
  border-color: rgba(210,239,255,.4);
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), transparent 52%),
    rgba(10,132,255,.82);
  box-shadow: 0 7px 17px rgba(0,91,190,.12);
}
body.gsol-commerce .gsol-ai-quick button { border-color: rgba(10,132,255,.19); color: #145d9c; }
body.gsol-commerce .gsol-ai-form input:focus { border-color: #0a84ff; box-shadow: 0 0 0 3px rgba(10,132,255,.1); }
body.gsol-commerce .gsol-ai-send {
  border-color: rgba(218,242,255,.54);
  background:
    linear-gradient(135deg, rgba(255,255,255,.3), transparent 50%),
    rgba(10,132,255,.82);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44), 0 7px 16px rgba(0,91,190,.14);
}

body.gsol-commerce .gsol-windows-gift {
  border-color: rgba(169,144,73,.22);
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(249,246,233,.74) 58%, rgba(236,227,194,.42)),
    #faf8ee;
  box-shadow: inset 0 1px 0 #fff, 0 8px 18px rgba(87,73,34,.07);
}
body.gsol-commerce .gsol-windows-gift > span {
  border-color: rgba(255,242,190,.5);
  background: linear-gradient(135deg, #9e833c, #c1a656);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 6px 14px rgba(96,75,22,.12);
}
body.gsol-commerce .gsol-windows-gift small,
body.gsol-commerce .gsol-product-gift { color: #7d651d; }

body.gsol-commerce .gsol-clients-band {
  border-color: rgba(64,119,158,.13);
  background: linear-gradient(135deg, rgba(255,255,255,.97), rgba(236,244,249,.75)), #f4f8fa;
}
body.gsol-commerce .gsol-client-grid,
body.gsol-commerce .gsol-client-segment { border-color: rgba(64,119,158,.16); }
body.gsol-commerce .gsol-client-icon {
  border-color: rgba(218,242,255,.52);
  background:
    linear-gradient(135deg, rgba(255,255,255,.34), transparent 48%, rgba(112,200,255,.16)),
    rgba(10,132,255,.75);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48), 0 8px 17px rgba(0,91,190,.12);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
body.gsol-commerce .gsol-client-segment small { color: #1568aa; }

body.gsol-commerce .gsol-gaming-standard {
  border-color: rgba(127,180,219,.22);
  background:
    linear-gradient(135deg, rgba(255,255,255,.09), transparent 40%, rgba(78,161,222,.1)),
    linear-gradient(115deg, #263541, #2d4658 58%, #345a70);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13), 0 15px 32px rgba(20,43,59,.14);
}
body.gsol-commerce .gsol-gaming-label {
  border-color: rgba(151,215,255,.22);
  background: rgba(10,132,255,.13);
  color: #92d5ff;
}
body.gsol-commerce .gsol-gaming-standard p { color: #d5e3eb; }
body.gsol-commerce .gsol-gaming-quality .gsol-icon,
body.gsol-commerce .gsol-tier-action { color: #8fd4ff; }
body.gsol-commerce .gsol-gaming-quality small,
body.gsol-commerce .gsol-tier-description { color: #bfd2de; }
body.gsol-commerce .gsol-tier {
  border-color: rgba(178,217,242,.18);
  background:
    linear-gradient(135deg, rgba(255,255,255,.1), transparent 48%, rgba(76,164,225,.08)),
    rgba(28,55,73,.45);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
}
body.gsol-commerce .gsol-tier:hover,
body.gsol-commerce .gsol-tier.is-active {
  border-color: rgba(101,190,249,.48);
  background:
    linear-gradient(135deg, rgba(255,255,255,.15), transparent 50%, rgba(88,178,238,.12)),
    rgba(12,101,164,.52);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 9px 19px rgba(0,45,82,.13);
}
body.gsol-commerce .gsol-tier-badge {
  border-color: rgba(255,255,255,.2);
  background: linear-gradient(135deg, #e2f3fe, #93d3fa);
  color: #115786;
}
body.gsol-commerce .gsol-tier.is-premium .gsol-tier-badge {
  background: linear-gradient(135deg, #eee2ba, #c6ad64);
  color: #544517;
}
/* Bright liquid glass balance */
body.gsol-commerce {
  --gsol-paper: #f7fafb;
  --gsol-warm: #f1f6f8;
}
@keyframes gsolGlassBreathe {
  0%, 100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.76), 0 9px 20px rgba(30,105,132,.16); filter: brightness(1); }
  50% { box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 12px 27px rgba(45,126,154,.22); filter: brightness(1.025); }
}

body.gsol-commerce .gsol-promo {
  border-bottom-color: rgba(74,112,130,.14);
  background: linear-gradient(105deg, rgba(250,253,254,.98), rgba(232,242,246,.96));
  color: #344c59;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.82);
}
body.gsol-commerce .gsol-promo span { color: #344c59; }
body.gsol-commerce .gsol-promo span + span { border-left-color: rgba(70,108,125,.16); }
body.gsol-commerce .gsol-promo .gsol-icon { color: #3488a2; }
body.gsol-commerce .gsol-main-header { box-shadow: 0 5px 18px rgba(28,67,84,.045); }
body.gsol-commerce .gsol-hero:after {
  background: linear-gradient(90deg, rgba(23,48,62,.78) 0%, rgba(28,61,78,.58) 39%, rgba(24,54,70,.08) 73%);
}
body.gsol-commerce .gsol-hero p { color: #edf5f7; }
body.gsol-commerce .gsol-about-hero:after {
  background: linear-gradient(0deg, rgba(20,47,61,.76), rgba(20,47,61,.04) 78%);
}
body.gsol-commerce .gsol-mega-cta {
  border: 1px solid rgba(74,139,163,.18);
  background: linear-gradient(135deg, #f4fbfd, #e3f1f5);
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff;
}
body.gsol-commerce .gsol-customize-band {
  border: 1px solid rgba(67,132,156,.18);
  border-radius: 8px;
  background: linear-gradient(120deg, #f2f9fb, #dfedf2);
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 12px 28px rgba(30,79,98,.07);
}
body.gsol-commerce .gsol-customize-band h2 { color: var(--gsol-ink); }
body.gsol-commerce .gsol-customize-band p { color: #526b79; }

body.gsol-commerce .gsol-button,
body.gsol-commerce .gsol-search button,
body.gsol-commerce .gsol-all-products,
body.gsol-commerce .gsol-card-cart,
body.gsol-commerce .gsol-ai-send {
  border: 1px solid rgba(225,247,252,.74);
  border-radius: 15px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.46) 0%, rgba(255,255,255,.1) 44%, rgba(255,255,255,.02) 49%),
    linear-gradient(115deg, #2f7890 0%, #4192a9 54%, #61afc0 100%);
  color: #fff;
  text-shadow: 0 1px 2px rgba(15,57,72,.46);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -2px 0 rgba(20,82,101,.2),
    0 8px 18px rgba(33,104,129,.16),
    0 2px 4px rgba(28,58,70,.07);
  -webkit-backdrop-filter: blur(18px) saturate(132%);
  backdrop-filter: blur(18px) saturate(132%);
  filter: none;
}
body.gsol-commerce .gsol-button::before,
body.gsol-commerce .gsol-search button::before,
body.gsol-commerce .gsol-all-products::before,
body.gsol-commerce .gsol-card-cart::before {
  inset: 1px 3px auto;
  height: 44%;
  border-radius: 12px 12px 50% 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.56), rgba(255,255,255,.04));
}
body.gsol-commerce .gsol-button:hover,
body.gsol-commerce .gsol-search button:hover,
body.gsol-commerce .gsol-all-products:hover,
body.gsol-commerce .gsol-card-cart:hover,
body.gsol-commerce .gsol-ai-send:hover {
  border-color: rgba(239,252,255,.94);
  background:
    linear-gradient(180deg, rgba(255,255,255,.54), rgba(255,255,255,.1) 45%, rgba(255,255,255,.02) 50%),
    linear-gradient(115deg, #38849b 0%, #4da1b7 54%, #70bdce 100%);
  color: #fff;
  filter: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -2px 0 rgba(20,82,101,.16), 0 13px 25px rgba(42,117,143,.21);
}
body.gsol-commerce .gsol-button.is-dark {
  border-color: rgba(218,242,248,.58);
  background:
    linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,.06) 46%, transparent 50%),
    linear-gradient(115deg, #315f70, #3e8298 58%, #58a1b6);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62), inset 0 -2px 0 rgba(21,66,81,.2), 0 9px 20px rgba(31,82,101,.16);
}
body.gsol-commerce .gsol-button.is-dark:hover {
  border-color: rgba(238,251,254,.88);
  background:
    linear-gradient(180deg, rgba(255,255,255,.47), rgba(255,255,255,.07) 46%, transparent 50%),
    linear-gradient(115deg, #397184, #4993aa 58%, #68b2c5);
  color: #fff;
}
body.gsol-commerce .gsol-button.is-light {
  border-color: rgba(255,255,255,.72);
  background:
    linear-gradient(180deg, rgba(255,255,255,.34), rgba(255,255,255,.06) 47%, transparent 51%),
    rgba(75,123,143,.46);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 8px 18px rgba(21,54,68,.12);
}
body.gsol-commerce .gsol-button.is-light:hover {
  background: linear-gradient(180deg, rgba(255,255,255,.42), rgba(255,255,255,.11) 48%), rgba(91,145,166,.54);
  color: #fff;
}
body.gsol-commerce .gsol-button.is-outline {
  border-color: rgba(91,145,165,.26);
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.56) 50%, rgba(229,241,245,.72) 51%),
    rgba(246,251,252,.82);
  color: #315b6c;
  text-shadow: 0 1px 0 #fff;
  box-shadow: inset 0 1px 0 #fff, 0 7px 16px rgba(41,93,111,.08);
}
body.gsol-commerce .gsol-button.is-outline:hover {
  border-color: rgba(66,143,170,.38);
  background: linear-gradient(180deg, #fff, #edf6f8 52%, #e4f0f4 53%);
  color: #244e60;
  box-shadow: inset 0 1px 0 #fff, 0 11px 22px rgba(41,105,128,.12);
}
body.gsol-commerce .gsol-search button { border-radius: 13px; }
body.gsol-commerce .gsol-card-cart { border-radius: 13px; }
body.gsol-commerce .gsol-all-products {
  align-self: center;
  min-height: 52px;
  margin: 5px 12px 5px 0;
  border-radius: 15px;
}

body.gsol-commerce .gsol-mode-tab,
body.gsol-commerce .gsol-filter-chip,
body.gsol-commerce .gsol-pagination button,
body.gsol-commerce .gsol-change-component {
  border-radius: 11px;
}
body.gsol-commerce .gsol-mode-tab.is-active,
body.gsol-commerce .gsol-filter-chip.is-active,
body.gsol-commerce .gsol-pagination button.is-active {
  border-color: rgba(221,245,250,.7);
  background:
    linear-gradient(180deg, rgba(255,255,255,.4), rgba(255,255,255,.05) 48%, transparent 51%),
    linear-gradient(115deg, #38768c, #4b93a8 58%, #67adbe);
  color: #fff;
  text-shadow: 0 1px 2px rgba(20,63,79,.36);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.66), 0 7px 16px rgba(38,103,127,.13);
}

body.gsol-commerce .gsol-gaming-standard {
  border-color: rgba(69,132,155,.16);
  background: linear-gradient(125deg, rgba(255,255,255,.98), rgba(228,240,244,.9));
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 14px 30px rgba(34,83,101,.08);
}
body.gsol-commerce .gsol-gaming-label {
  border-color: rgba(66,145,172,.2);
  background: rgba(102,176,199,.13);
  color: #2d7892;
}
body.gsol-commerce .gsol-gaming-standard p,
body.gsol-commerce .gsol-gaming-quality small,
body.gsol-commerce .gsol-tier-description { color: #5b707c; }
body.gsol-commerce .gsol-gaming-quality .gsol-icon,
body.gsol-commerce .gsol-tier-action { color: #2f849f; }
body.gsol-commerce .gsol-tier {
  border-color: rgba(73,133,154,.18);
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(229,240,244,.72));
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff;
}
body.gsol-commerce .gsol-tier:hover,
body.gsol-commerce .gsol-tier.is-active {
  border-color: rgba(71,151,180,.38);
  background: linear-gradient(135deg, #f9fdfe, #dcecf1);
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 9px 19px rgba(44,106,129,.1);
}

body.gsol-commerce .gsol-ai-launcher {
  border-color: rgba(224,246,251,.76);
  border-radius: 16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.48), rgba(255,255,255,.07) 46%, transparent 50%),
    linear-gradient(115deg, #347c94, #4b9db4 56%, #69b6c8);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 12px 26px rgba(35,105,130,.18);
}
body.gsol-commerce .gsol-ai-head {
  background:
    linear-gradient(180deg, rgba(255,255,255,.32), transparent 49%),
    linear-gradient(115deg, #397f96, #57a6ba);
}
body.gsol-commerce .gsol-ai-launcher-icon:after,
body.gsol-commerce .gsol-ai-title strong:after {
  border-color: rgba(8,56,39,.72);
  background: #36e28f;
  box-shadow: 0 0 0 3px rgba(54,226,143,.16), 0 0 13px rgba(54,226,143,.78);
}
body.gsol-commerce .gsol-ai-title strong:after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-left: 8px;
  border: 1px solid rgba(8,56,39,.72);
  border-radius: 50%;
  vertical-align: 1px;
}

body.gsol-commerce .gsol-footer {
  border-top: 1px solid rgba(61,119,141,.16);
  background: linear-gradient(125deg, #f5f9fa, #e7f0f3);
  color: var(--gsol-ink);
}
body.gsol-commerce .gsol-footer-brand p,
body.gsol-commerce .gsol-footer-links a { color: #607480; }
body.gsol-commerce .gsol-footer h3,
body.gsol-commerce .gsol-footer .gsol-brand-name strong { color: var(--gsol-ink); }
body.gsol-commerce .gsol-footer-links a:hover,
body.gsol-commerce .gsol-footer-contact { color: #287d98; }
body.gsol-commerce .gsol-footer-policy { border-top-color: rgba(57,103,121,.14); }
body.gsol-commerce .gsol-ai-disclosure summary { color: #287d98; }
body.gsol-commerce .gsol-ai-disclosure-content { color: #607480; }
body.gsol-commerce .gsol-ai-disclosure-content h2 { color: var(--gsol-ink); }
body.gsol-commerce .gsol-footer-bottom {
  border-top-color: rgba(57,103,121,.14);
  color: #788b95;
}
body.gsol-commerce .gsol-mobile-bar {
  border-top-color: rgba(75,130,151,.2);
  background: rgba(236,245,248,.96);
  color: var(--gsol-ink);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
body.gsol-commerce .gsol-mobile-bar button { color: #476574; }
body.gsol-commerce .gsol-mobile-bar button.is-active { color: #008fb5; background: rgba(4,183,220,.055); }

/* Rounded tabbed button reference */
body.gsol-commerce .gsol-button,
body.gsol-commerce .gsol-search button,
body.gsol-commerce .gsol-all-products,
body.gsol-commerce .gsol-card-cart,
body.gsol-commerce .gsol-ai-send {
  border-radius: 17px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.58) 0%, rgba(255,255,255,.14) 44%, rgba(255,255,255,.03) 49%),
    linear-gradient(115deg, #438fa5 0%, #5bacbc 56%, #81c8ce 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -2px 0 rgba(28,102,117,.16), 0 8px 18px rgba(49,123,144,.14), 0 2px 4px rgba(28,58,70,.06);
}
body.gsol-commerce .gsol-button { min-height: 50px; padding: 5px 14px; }
body.gsol-commerce .gsol-button:hover,
body.gsol-commerce .gsol-search button:hover,
body.gsol-commerce .gsol-all-products:hover,
body.gsol-commerce .gsol-card-cart:hover,
body.gsol-commerce .gsol-ai-send:hover {
  background:
    linear-gradient(180deg, rgba(255,255,255,.65), rgba(255,255,255,.15) 45%, rgba(255,255,255,.03) 50%),
    linear-gradient(115deg, #4d9caf 0%, #6bbac6 56%, #94d3d7 100%);
  box-shadow: inset 0 1px 0 #fff, inset 0 -2px 0 rgba(28,102,117,.12), 0 13px 25px rgba(52,130,151,.19);
}
body.gsol-commerce .gsol-button > .gsol-icon,
body.gsol-commerce .gsol-all-products > .gsol-icon {
  box-sizing: content-box;
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
  padding: 8px;
  border: 1px solid rgba(235,252,255,.68);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(255,255,255,.36), rgba(38,121,143,.2));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.64), 0 3px 8px rgba(26,83,100,.11);
}
body.gsol-commerce .gsol-button > .gsol-icon:first-child { margin-left: -8px; }
body.gsol-commerce .gsol-button > .gsol-icon:last-child { margin-right: -8px; }
body.gsol-commerce .gsol-all-products {
  min-height: 56px;
  padding: 6px 18px 6px 8px;
  border-radius: 17px;
}
body.gsol-commerce .gsol-all-products > .gsol-icon {
  width: 19px;
  height: 19px;
  padding: 9px 9px 9px 12px;
  border-radius: 0;
  clip-path: polygon(20% 0, 100% 0, 100% 100%, 20% 100%, 0 50%);
  background: linear-gradient(145deg, rgba(255,255,255,.48), rgba(42,125,146,.22));
}
body.gsol-commerce .gsol-button.is-dark {
  background:
    linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,.1) 45%, transparent 50%),
    linear-gradient(115deg, #3f8298, #58a6b7 58%, #79c0ca);
}
body.gsol-commerce .gsol-button.is-dark:hover {
  background:
    linear-gradient(180deg, rgba(255,255,255,.6), rgba(255,255,255,.12) 45%, transparent 50%),
    linear-gradient(115deg, #4a91a6, #68b5c3 58%, #8bcdd3);
}
body.gsol-commerce .gsol-button.is-light {
  border-color: rgba(255,255,255,.88);
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.68) 49%, rgba(224,240,245,.72) 50%),
    rgba(244,250,252,.88);
  color: #315a69;
  text-shadow: 0 1px 0 #fff;
}
body.gsol-commerce .gsol-button.is-light:hover {
  background: linear-gradient(180deg, #fff, rgba(244,252,253,.8) 50%, rgba(218,238,243,.84) 51%);
  color: #244e5d;
}
body.gsol-commerce .gsol-button.is-light > .gsol-icon,
body.gsol-commerce .gsol-button.is-outline > .gsol-icon {
  border-color: rgba(77,151,174,.22);
  background: linear-gradient(145deg, #fff, rgba(185,224,232,.66));
  color: #347e94;
}
body.gsol-commerce .gsol-mode-tab.is-active,
body.gsol-commerce .gsol-filter-chip.is-active,
body.gsol-commerce .gsol-pagination button.is-active {
  background:
    linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,.08) 48%, transparent 51%),
    linear-gradient(115deg, #4f92a5, #68afbc 58%, #83c5ca);
}
body.gsol-commerce .gsol-ai-launcher {
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.1) 46%, transparent 50%),
    linear-gradient(115deg, #448fa5, #60afbd 56%, #83cbd0);
}

/* Visible GSOL services and campaigns */
body.gsol-commerce .gsol-value-section { padding-top: 38px; }
body.gsol-commerce .gsol-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
body.gsol-commerce .gsol-value-item {
  min-height: 118px;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(73,126,146,.18);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff, #f5fafb);
  color: var(--gsol-ink);
  box-shadow: 0 6px 16px rgba(35,80,97,.055);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
body.gsol-commerce .gsol-value-item:hover {
  transform: translateY(-2px);
  border-color: rgba(67,145,171,.32);
  box-shadow: 0 11px 24px rgba(38,99,121,.1);
}
body.gsol-commerce .gsol-value-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(74,151,178,.28);
  border-radius: 8px;
  background: linear-gradient(145deg, #fff, #e5f2f5);
  color: #347f99;
  box-shadow: inset 0 1px 0 #fff;
}
body.gsol-commerce .gsol-value-icon .gsol-icon { width: 25px; height: 25px; }
body.gsol-commerce .gsol-value-copy h3 { margin-bottom: 4px; font-size: 13px; }
body.gsol-commerce .gsol-value-copy p { margin: 0 0 7px; color: #667a85; font-size: 10.5px; line-height: 1.35; }
body.gsol-commerce .gsol-value-copy span { color: #2c7d98; font-size: 9.5px; font-weight: 800; text-transform: uppercase; }

body.gsol-commerce .gsol-campaign-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
body.gsol-commerce .gsol-campaign {
  position: relative;
  min-height: 218px;
  overflow: hidden;
  border: 1px solid rgba(74,126,145,.16);
  border-radius: 8px;
  background: #dfeff3;
  box-shadow: 0 8px 20px rgba(34,79,96,.08);
  isolation: isolate;
}
body.gsol-commerce .gsol-campaign > img {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}
body.gsol-commerce .gsol-campaign:hover > img { transform: scale(1.025); }
body.gsol-commerce .gsol-campaign:after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(15,38,50,.82), rgba(15,38,50,.3) 78%, rgba(15,38,50,.08));
}
body.gsol-commerce .gsol-campaign.is-product:after {
  background: linear-gradient(90deg, rgba(241,249,251,.98) 0%, rgba(232,245,248,.94) 58%, rgba(224,241,246,.3) 100%);
}
body.gsol-commerce .gsol-campaign.is-product > img {
  left: 45%;
  width: 58%;
  object-fit: contain;
  object-position: center bottom;
}
body.gsol-commerce .gsol-campaign-copy {
  position: relative;
  z-index: 2;
  width: 76%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 218px;
  padding: 20px;
  color: #fff;
}
body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-copy { width: 67%; color: var(--gsol-ink); }
body.gsol-commerce .gsol-campaign-tag {
  margin-bottom: 10px;
  color: #9ee3ef;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-tag { color: #2a7f9a; }
body.gsol-commerce .gsol-campaign h3 { margin-bottom: 7px; color: inherit; font-size: 18px; line-height: 1.12; }
body.gsol-commerce .gsol-campaign p { margin: 0 0 16px; color: rgba(255,255,255,.85); font-size: 10.5px; line-height: 1.38; }
body.gsol-commerce .gsol-campaign.is-product p { color: #5b7480; }
body.gsol-commerce .gsol-campaign-action {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 12px;
  background: rgba(255,255,255,.88);
  color: #2b6478;
  box-shadow: inset 0 1px 0 #fff, 0 6px 13px rgba(12,38,50,.12);
  font-size: 9.5px;
  font-weight: 800;
  white-space: nowrap;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
body.gsol-commerce .gsol-campaign-action:hover { background: #fff; transform: translateY(-1px); }
body.gsol-commerce .gsol-campaign-action .gsol-icon { width: 13px; height: 13px; }

@media (max-width: 980px) {
  body.gsol-commerce .gsol-value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gsol-commerce .gsol-campaign-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  body.gsol-commerce .gsol-value-grid,
  body.gsol-commerce .gsol-campaign-grid { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-value-item { min-height: 104px; padding: 13px; }
  body.gsol-commerce .gsol-campaign { min-height: 205px; }
  body.gsol-commerce .gsol-campaign-copy { min-height: 205px; }
}

/* GSOL marketing brand lockup */
body.gsol-commerce .gsol-main-header .gsol-brand {
  min-width: 250px;
  gap: 11px;
}
body.gsol-commerce .gsol-main-header .gsol-brand-mark {
  position: relative;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  overflow: hidden;
  border-color: rgba(214,242,255,.82);
  border-radius: 14px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.48), transparent 43%, rgba(136,224,235,.22)),
    linear-gradient(135deg, #3479ad, #419bc1 58%, #5fc2ca);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82), inset 0 -2px 0 rgba(14,73,109,.18), 0 8px 18px rgba(39,112,147,.18);
}
body.gsol-commerce .gsol-main-header .gsol-brand-mark:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 5px;
  right: 5px;
  height: 42%;
  border-radius: 10px 10px 50% 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.46), transparent);
  pointer-events: none;
}
body.gsol-commerce .gsol-main-header .gsol-brand-mark img {
  position: relative;
  z-index: 2;
  width: 33px;
  height: 33px;
  filter: brightness(1.08) contrast(1.05) drop-shadow(0 2px 3px rgba(8,48,79,.26));
}
body.gsol-commerce .gsol-main-header .gsol-brand-name { min-width: 0; }
body.gsol-commerce .gsol-main-header .gsol-brand-name strong {
  display: block;
  width: max-content;
  background: linear-gradient(90deg, #153e68, #1e7197 64%, #49aeb8);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: 25px;
  font-weight: 900;
  line-height: .94;
}
body.gsol-commerce .gsol-main-header .gsol-brand-domain {
  display: inline-block;
  margin-left: 2px;
  color: #367c98;
  -webkit-text-fill-color: #367c98;
  font-size: .54em;
  font-weight: 900;
  vertical-align: .08em;
}
body.gsol-commerce .gsol-main-header .gsol-brand-tagline {
  display: block;
  margin-top: 5px;
  color: #34738d;
  font-size: 8.5px;
  font-weight: 800;
  line-height: 1.08;
  text-transform: uppercase;
  white-space: nowrap;
}
@media (max-width: 980px) {
  body.gsol-commerce .gsol-main-header .gsol-brand { min-width: 205px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-name strong { font-size: 23px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-tagline { max-width: 145px; font-size: 7.5px; white-space: normal; }
}
@media (max-width: 600px) {
  body.gsol-commerce .gsol-main-header .gsol-brand { min-width: 0; gap: 8px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-mark { width: 42px; height: 42px; flex-basis: 42px; border-radius: 12px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-mark img { width: 29px; height: 29px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-name strong { font-size: 20px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-tagline { max-width: 125px; margin-top: 3px; font-size: 7px; }
}

/* Balanced labels with compact arrows */
body.gsol-commerce .gsol-button,
body.gsol-commerce .gsol-search button,
body.gsol-commerce .gsol-all-products,
body.gsol-commerce .gsol-card-cart,
body.gsol-commerce .gsol-ai-send {
  letter-spacing: 0;
  line-height: 1.15;
}
body.gsol-commerce .gsol-button {
  gap: 8px;
  padding: 5px 14px;
  font-size: 13px;
  white-space: nowrap;
}
body.gsol-commerce .gsol-actions .gsol-button { flex: 0 0 auto; }
body.gsol-commerce .gsol-hero .gsol-button { min-width: max-content; }
body.gsol-commerce .gsol-search button {
  padding-inline: 15px;
  font-size: 13px;
  white-space: nowrap;
}
body.gsol-commerce .gsol-all-products {
  gap: 8px;
  min-height: 52px;
  padding: 5px 17px 5px 8px;
  font-size: 13px;
  white-space: nowrap;
}
body.gsol-commerce .gsol-button > .gsol-icon,
body.gsol-commerce .gsol-all-products > .gsol-icon {
  width: 14px;
  height: 14px;
  padding: 6px;
}
body.gsol-commerce .gsol-button > .gsol-icon:first-child { margin-left: -5px; }
body.gsol-commerce .gsol-button > .gsol-icon:last-child { margin-right: -5px; }
body.gsol-commerce .gsol-button > [data-lucide="arrow-right"],
body.gsol-commerce .gsol-campaign-action [data-lucide="arrow-right"],
body.gsol-commerce .gsol-text-link [data-lucide="arrow-right"] {
  box-sizing: content-box;
  width: 11px;
  height: 11px;
  padding: 4px;
  margin-right: -3px;
  border-radius: 7px;
}
body.gsol-commerce .gsol-all-products > .gsol-icon {
  width: 16px;
  height: 16px;
  padding: 7px 7px 7px 9px;
}
body.gsol-commerce .gsol-mode-tab { font-size: 12px; }
body.gsol-commerce .gsol-filter-chip { font-size: 11px; }
body.gsol-commerce .gsol-change-component { font-size: 10px; }
body.gsol-commerce .gsol-pagination button { font-size: 11px; }
body.gsol-commerce .gsol-nav-link { font-size: 11px; }
body.gsol-commerce .gsol-ai-launcher strong { font-size: 11px; white-space: nowrap; }

@media (max-width: 480px) {
  body.gsol-commerce .gsol-button { min-height: 46px; font-size: 12px; white-space: normal; }
  body.gsol-commerce .gsol-actions .gsol-button { max-width: 100%; min-width: 0; }
  body.gsol-commerce .gsol-button > .gsol-icon { width: 13px; height: 13px; padding: 5px; }
  body.gsol-commerce .gsol-button > [data-lucide="arrow-right"] { width: 10px; height: 10px; padding: 3px; }
  body.gsol-commerce .gsol-ai-launcher strong { font-size: 10.5px; }
}

/* GSOL Help */
body.gsol-commerce .gsol-help-page { background: #f4f7f8; }
body.gsol-commerce .gsol-help-hero {
  border-bottom: 1px solid #d8e2e7;
  background: linear-gradient(118deg, #edf5f7 0%, #f9fbfb 58%, #e5f0f3 100%);
}
body.gsol-commerce .gsol-help-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 54px;
  align-items: center;
  padding-top: 54px;
  padding-bottom: 50px;
}
body.gsol-commerce .gsol-help-intro h1 {
  max-width: 720px;
  margin: 7px 0 12px;
  color: var(--gsol-ink);
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1.03;
  letter-spacing: 0;
}
body.gsol-commerce .gsol-help-intro > p {
  max-width: 690px;
  margin: 0;
  color: #526975;
  font-size: 16px;
  line-height: 1.7;
}
body.gsol-commerce .gsol-help-search {
  display: flex;
  align-items: center;
  gap: 11px;
  max-width: 690px;
  height: 52px;
  margin-top: 24px;
  padding: 0 16px;
  border: 1px solid #b8cbd4;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(37,77,92,.06);
}
body.gsol-commerce .gsol-help-search .gsol-icon { width: 20px; height: 20px; color: #32849c; }
body.gsol-commerce .gsol-help-search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--gsol-ink);
  font: inherit;
  font-size: 14px;
}
body.gsol-commerce .gsol-help-search input::placeholder { color: #7d8e97; }
body.gsol-commerce .gsol-help-direct {
  padding-left: 28px;
  border-left: 1px solid #c8d8de;
}
body.gsol-commerce .gsol-help-direct > span {
  display: block;
  margin-bottom: 8px;
  color: #2b7f98;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
body.gsol-commerce .gsol-help-direct h2 { margin: 0 0 9px; color: var(--gsol-ink); font-size: 23px; }
body.gsol-commerce .gsol-help-direct p { margin: 0 0 18px; color: #607580; font-size: 12px; line-height: 1.65; }
body.gsol-commerce .gsol-help-direct-links { display: grid; gap: 9px; }
body.gsol-commerce .gsol-help-direct-links a,
body.gsol-commerce .gsol-help-direct-links button {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  min-height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--gsol-ink);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}
body.gsol-commerce .gsol-help-direct-links .gsol-icon { width: 17px; height: 17px; color: #2f8ca6; }
body.gsol-commerce .gsol-help-direct-links a:hover,
body.gsol-commerce .gsol-help-direct-links button:hover { color: #247e99; }
body.gsol-commerce .gsol-help-content { padding-top: 38px; padding-bottom: 54px; }
body.gsol-commerce .gsol-help-category-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}
body.gsol-commerce .gsol-help-category-head h2 { margin: 0 0 4px; color: var(--gsol-ink); font-size: 24px; }
body.gsol-commerce .gsol-help-category-head p,
body.gsol-commerce .gsol-help-result-count { margin: 0; color: #667a85; font-size: 11px; }
body.gsol-commerce .gsol-help-categories {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 40px;
}
body.gsol-commerce .gsol-help-category {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 58px;
  padding: 10px 12px;
  border: 1px solid #d1dce1;
  border-radius: 6px;
  background: #fff;
  color: #334b57;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
  text-align: left;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
body.gsol-commerce .gsol-help-category:hover {
  border-color: #81aebd;
  background: #f8fcfd;
  color: var(--gsol-ink);
  transform: translateY(-1px);
}
body.gsol-commerce .gsol-help-category.is-active {
  border-color: #3a8fa7;
  background: #e8f3f6;
  color: #185f75;
  box-shadow: inset 3px 0 0 #3a8fa7;
}
body.gsol-commerce .gsol-help-category .gsol-icon {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
  color: #3c8da4;
}
body.gsol-commerce .gsol-help-layout {
  display: grid;
  grid-template-columns: minmax(210px, .34fr) minmax(0, 1fr);
  gap: 42px;
  align-items: start;
}
body.gsol-commerce .gsol-help-side {
  position: sticky;
  top: 18px;
  padding-top: 3px;
}
body.gsol-commerce .gsol-help-side span {
  display: block;
  margin-bottom: 9px;
  color: #33849c;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
body.gsol-commerce .gsol-help-side h2 { margin: 0 0 12px; color: var(--gsol-ink); font-size: 27px; line-height: 1.16; }
body.gsol-commerce .gsol-help-side p { margin: 0 0 20px; color: #627680; font-size: 12px; line-height: 1.65; }
body.gsol-commerce .gsol-help-side strong { display: block; margin-bottom: 5px; color: var(--gsol-ink); font-size: 11px; }
body.gsol-commerce .gsol-help-side a { color: #287f99; font-size: 12px; font-weight: 800; }
body.gsol-commerce .gsol-help-group { margin-bottom: 30px; }
body.gsol-commerce .gsol-help-group[hidden],
body.gsol-commerce .gsol-help-item[hidden],
body.gsol-commerce #gsolHelpEmpty[hidden] { display: none !important; }
body.gsol-commerce .gsol-help-group-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 9px;
  padding: 0 2px;
  color: var(--gsol-ink);
  font-size: 18px;
}
body.gsol-commerce .gsol-help-group-title .gsol-icon { width: 19px; height: 19px; color: #318ba5; }
body.gsol-commerce .gsol-help-list {
  overflow: hidden;
  border: 1px solid #d6e0e4;
  border-radius: 7px;
  background: #fff;
}
body.gsol-commerce .gsol-help-item + .gsol-help-item { border-top: 1px solid #e0e7ea; }
body.gsol-commerce .gsol-help-question {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  align-items: center;
  width: 100%;
  min-height: 58px;
  padding: 16px 18px;
  border: 0;
  background: #fff;
  color: var(--gsol-ink);
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
}
body.gsol-commerce .gsol-help-question:hover { background: #f7fafb; color: #226f86; }
body.gsol-commerce .gsol-help-question .gsol-icon {
  width: 17px;
  height: 17px;
  color: #5b7e8d;
  transition: transform .18s ease;
}
body.gsol-commerce .gsol-help-item.is-open .gsol-help-question { background: #edf6f8; color: #185f75; }
body.gsol-commerce .gsol-help-item.is-open .gsol-help-question .gsol-icon { transform: rotate(180deg); }
body.gsol-commerce .gsol-help-answer {
  display: none;
  padding: 0 48px 19px 18px;
  background: #edf6f8;
  color: #4f6570;
  font-size: 12px;
  line-height: 1.7;
}
body.gsol-commerce .gsol-help-item.is-open .gsol-help-answer { display: block; }
body.gsol-commerce .gsol-help-answer p { margin: 0 0 9px; }
body.gsol-commerce .gsol-help-answer p:last-child { margin-bottom: 0; }
body.gsol-commerce .gsol-help-answer ul { margin: 8px 0 0; padding-left: 18px; }
body.gsol-commerce .gsol-help-answer li { margin: 5px 0; }
body.gsol-commerce .gsol-help-answer strong { color: #263d48; }
body.gsol-commerce .gsol-help-empty {
  padding: 40px 20px;
  border-top: 1px solid #d9e3e7;
  border-bottom: 1px solid #d9e3e7;
  text-align: center;
}
body.gsol-commerce .gsol-help-empty .gsol-icon { width: 28px; height: 28px; color: #5a91a3; }
body.gsol-commerce .gsol-help-empty h3 { margin: 10px 0 5px; color: var(--gsol-ink); }
body.gsol-commerce .gsol-help-empty p { margin: 0; color: #667b85; font-size: 12px; }
body.gsol-commerce .gsol-help-cta {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: center;
  margin-top: 40px;
  padding: 30px 34px;
  border: 1px solid #b8d1d9;
  border-radius: 7px;
  background: linear-gradient(110deg, #e3f0f3, #f8fbfb);
}
body.gsol-commerce .gsol-help-cta h2 { margin: 0 0 5px; color: var(--gsol-ink); font-size: 23px; }
body.gsol-commerce .gsol-help-cta p { margin: 0; color: #60747e; font-size: 12px; }
body.gsol-commerce .gsol-help-cta .gsol-actions { margin: 0; flex-wrap: wrap; justify-content: flex-end; }
@media (max-width: 1040px) {
  body.gsol-commerce .gsol-help-categories { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.gsol-commerce .gsol-help-hero-inner { gap: 34px; }
}
@media (max-width: 760px) {
  body.gsol-commerce .gsol-help-hero-inner,
  body.gsol-commerce .gsol-help-layout,
  body.gsol-commerce .gsol-help-cta { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-help-hero-inner { gap: 28px; padding-top: 38px; padding-bottom: 36px; }
  body.gsol-commerce .gsol-help-direct { padding: 22px 0 0; border-top: 1px solid #c8d8de; border-left: 0; }
  body.gsol-commerce .gsol-help-side { position: static; }
  body.gsol-commerce .gsol-help-categories { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gsol-commerce .gsol-help-cta .gsol-actions { justify-content: flex-start; }
}
@media (max-width: 430px) {
  body.gsol-commerce .gsol-help-intro h1 { font-size: 36px; }
  body.gsol-commerce .gsol-help-categories { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-help-category { min-height: 50px; }
  body.gsol-commerce .gsol-help-category-head { align-items: start; flex-direction: column; gap: 7px; }
  body.gsol-commerce .gsol-help-question { padding: 15px 14px; font-size: 12px; }
  body.gsol-commerce .gsol-help-answer { padding: 0 34px 17px 14px; }
  body.gsol-commerce .gsol-help-cta { padding: 24px 18px; }
}


/* Clean transparent GSOL logo */
body.gsol-commerce .gsol-brand-mark,
body.gsol-commerce .gsol-main-header .gsol-brand-mark {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
body.gsol-commerce .gsol-brand-mark:after,
body.gsol-commerce .gsol-main-header .gsol-brand-mark:after { display: none; }
body.gsol-commerce .gsol-brand-mark img,
body.gsol-commerce .gsol-main-header .gsol-brand-mark img {
  position: static;
  width: 56px;
  height: 56px;
  object-fit: contain;
  filter: none;
}
body.gsol-commerce .gsol-main-header .gsol-brand {
  min-width: 275px;
  gap: 10px;
}
body.gsol-commerce .gsol-main-header .gsol-brand-name strong { font-size: 27px; }
body.gsol-commerce .gsol-header-row {
  min-height: 86px;
  grid-template-columns: 275px minmax(280px, 650px) auto;
}
body.gsol-commerce .gsol-footer .gsol-brand-mark {
  width: 48px;
  height: 48px;
  flex-basis: 48px;
}
body.gsol-commerce .gsol-footer .gsol-brand-mark img { width: 46px; height: 46px; }

@media (max-width: 1100px) and (min-width: 821px) {
  body.gsol-commerce .gsol-header-row { grid-template-columns: 220px minmax(240px, 1fr) auto; gap: 14px; }
  body.gsol-commerce .gsol-main-header .gsol-brand { min-width: 220px; gap: 8px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-mark { width: 50px; height: 50px; flex-basis: 50px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-mark img { width: 48px; height: 48px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-name strong { font-size: 23px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-tagline { max-width: 155px; font-size: 7.5px; white-space: normal; }
}
@media (max-width: 820px) {
  body.gsol-commerce .gsol-header-row { min-height: 72px; grid-template-columns: auto 1fr auto; }
  body.gsol-commerce .gsol-main-header .gsol-brand { min-width: 0; gap: 7px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-mark { width: 44px; height: 44px; flex-basis: 44px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-mark img { width: 42px; height: 42px; }
  body.gsol-commerce .gsol-main-header .gsol-brand-name strong { font-size: 21px; }
}


/* GSOL cyan palette and mobile text audit */
body.gsol-commerce {
  --gsol-cyan: #04b7dc;
  --gsol-cyan-dark: #008fb5;
  --gsol-mint: #e5f8fc;
  --gsol-paper: #f5f8fa;
  --gsol-border: #d7e3e8;
}

body.gsol-commerce .gsol-button:not(.is-dark):not(.is-light):not(.is-outline),
body.gsol-commerce .gsol-search button,
body.gsol-commerce .gsol-all-products,
body.gsol-commerce .gsol-card-cart,
body.gsol-commerce .gsol-ai-send {
  border-color: #5ed3ea;
  background:
    linear-gradient(180deg, rgba(255,255,255,.25), transparent 48%),
    linear-gradient(120deg, #04b7dc, #08bce0 58%, #2bc6e4);
  color: #062b3a;
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 7px 17px rgba(0,142,181,.18);
}
body.gsol-commerce .gsol-button:not(.is-dark):not(.is-light):not(.is-outline):hover,
body.gsol-commerce .gsol-search button:hover,
body.gsol-commerce .gsol-all-products:hover,
body.gsol-commerce .gsol-card-cart:hover,
body.gsol-commerce .gsol-ai-send:hover {
  border-color: #21c3e4;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), transparent 48%),
    linear-gradient(120deg, #009fc7, #04b7dc 58%, #21c4e2);
  color: #041f2b;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48), 0 10px 22px rgba(0,142,181,.23);
}

body.gsol-commerce .gsol-ai-launcher {
  border-color: #5bd1e8;
  background:
    linear-gradient(180deg, rgba(255,255,255,.2), transparent 50%),
    linear-gradient(120deg, #04b7dc, #09bde0);
  color: #061f2c;
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 13px 28px rgba(0,145,182,.25);
}
body.gsol-commerce .gsol-ai-launcher:hover {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.58), 0 17px 34px rgba(0,145,182,.31);
}
body.gsol-commerce .gsol-ai-launcher-icon {
  border-color: #07384a;
  border-radius: 50%;
  background: #07384a;
  color: #fff;
  box-shadow: none;
}
body.gsol-commerce .gsol-ai-launcher-icon:after,
body.gsol-commerce .gsol-ai-title strong:after {
  border-color: #075737;
  background: #38e18f;
  box-shadow: 0 0 0 3px rgba(56,225,143,.18), 0 0 12px rgba(56,225,143,.68);
}
body.gsol-commerce .gsol-ai-head {
  border-bottom-color: rgba(0,143,181,.22);
  background:
    linear-gradient(180deg, rgba(255,255,255,.2), transparent 50%),
    linear-gradient(120deg, #029fc9, #04b7dc 62%, #2bc6e4);
  color: #062432;
}
body.gsol-commerce .gsol-ai-head .gsol-icon-button {
  border-color: rgba(6,48,65,.22);
  background: rgba(255,255,255,.25);
  color: #062432;
}
body.gsol-commerce .gsol-ai-avatar {
  border-color: rgba(6,48,65,.22);
  background: rgba(255,255,255,.28);
}

body.gsol-commerce .gsol-text-link,
body.gsol-commerce .gsol-category .gsol-icon,
body.gsol-commerce .gsol-product-family,
body.gsol-commerce .gsol-change-component,
body.gsol-commerce .gsol-component-type .gsol-icon,
body.gsol-commerce .gsol-filter-head button,
body.gsol-commerce .gsol-footer-contact,
body.gsol-commerce .gsol-footer-links a:hover,
body.gsol-commerce .gsol-value-copy span,
body.gsol-commerce .gsol-help-direct-links .gsol-icon,
body.gsol-commerce .gsol-help-side span,
body.gsol-commerce .gsol-help-side a,
body.gsol-commerce .gsol-help-group-title .gsol-icon,
body.gsol-commerce .gsol-tier-action {
  color: var(--gsol-cyan-dark);
}
body.gsol-commerce .gsol-badge.is-choice,
body.gsol-commerce .gsol-mode-tab.is-active,
body.gsol-commerce .gsol-filter-chip.is-active,
body.gsol-commerce .gsol-pdp-tab.is-active {
  border-color: var(--gsol-cyan);
}
body.gsol-commerce .gsol-badge.is-choice {
  background: var(--gsol-cyan);
  color: #062b3a;
}
body.gsol-commerce .gsol-mode-tab.is-active {
  background: #063448;
  color: #fff;
}
body.gsol-commerce .gsol-help-category.is-active {
  border-color: var(--gsol-cyan);
  background: #e5f8fc;
  color: #006f90;
  box-shadow: inset 3px 0 0 var(--gsol-cyan);
}
body.gsol-commerce .gsol-help-category .gsol-icon,
body.gsol-commerce .gsol-help-direct > span,
body.gsol-commerce .gsol-help-direct-links a:hover,
body.gsol-commerce .gsol-help-direct-links button:hover,
body.gsol-commerce .gsol-campaign-tag,
body.gsol-commerce .gsol-gaming-quality .gsol-icon {
  color: #008fb5;
}
body.gsol-commerce .gsol-campaign:not(.is-product) .gsol-campaign-tag,
body.gsol-commerce .gsol-hero .gsol-eyebrow,
body.gsol-commerce .gsol-customize-band .gsol-eyebrow {
  color: #72dcf1;
}
body.gsol-commerce .gsol-help-item.is-open .gsol-help-question,
body.gsol-commerce .gsol-help-answer {
  background: #e8f8fc;
  color: #075d78;
}
body.gsol-commerce .gsol-help-question:hover { color: #007b9d; }
body.gsol-commerce .gsol-value-icon {
  border-color: rgba(4,183,220,.3);
  background: linear-gradient(145deg, #fff, #e6f8fc);
  color: #008fb5;
}
body.gsol-commerce .gsol-tier:hover,
body.gsol-commerce .gsol-tier.is-active {
  border-color: rgba(4,183,220,.42);
  background: linear-gradient(135deg, #f9fdfe, #e3f6fb);
  box-shadow: inset 0 1px 0 #fff, 0 9px 19px rgba(0,143,181,.12);
}
body.gsol-commerce .gsol-tier-kicker { color: #0a526a; }
body.gsol-commerce .gsol-tier-common {
  border-color: rgba(4,143,181,.18);
  background: rgba(255,255,255,.7);
  color: #496975;
}
body.gsol-commerce .gsol-tier-common .gsol-icon { color: #008fb5; }

/* Compact, readable GSOL standards panel */
body.gsol-commerce .gsol-gaming-standard {
  grid-template-columns: .82fr 1.18fr;
  gap: 22px;
  margin: 10px 0 24px;
  padding: 24px;
}
body.gsol-commerce .gsol-gaming-intro { padding-right: 8px; }
body.gsol-commerce .gsol-gaming-label { min-height: 23px; margin-bottom: 11px; font-size: 8px; }
body.gsol-commerce .gsol-gaming-standard h1 {
  margin-bottom: 9px;
  color: var(--gsol-ink);
  font-size: 27px;
  line-height: 1.16;
}
body.gsol-commerce .gsol-gaming-standard .gsol-gaming-intro > p {
  margin-bottom: 13px;
  color: #526c78;
  font-size: 11px;
  line-height: 1.55;
}
body.gsol-commerce .gsol-gaming-quality { gap: 8px; color: var(--gsol-ink); font-size: 10px; }
body.gsol-commerce .gsol-gaming-tiers { gap: 7px; }
body.gsol-commerce .gsol-tier {
  min-height: 86px;
  gap: 2px 14px;
  padding: 12px 15px;
}
body.gsol-commerce .gsol-tier-title { gap: 6px; font-size: 14px; }
body.gsol-commerce .gsol-tier-kicker { font-size: 9px; }
body.gsol-commerce .gsol-tier-description { font-size: 9px; line-height: 1.42; }
body.gsol-commerce .gsol-tier-action { font-size: 9px; }
body.gsol-commerce .gsol-tier-common { grid-template-columns: 23px 1fr; gap: 7px; padding: 8px 10px; font-size: 8px; }
body.gsol-commerce .gsol-tier-common .gsol-icon { width: 16px; height: 16px; }

body.gsol-commerce .gsol-all-products > .gsol-icon {
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 0;
  clip-path: none;
  background: transparent;
  box-shadow: none;
}

body.gsol-commerce .gsol-card-line {
  display: grid;
  gap: 2px;
  margin: 10px 0 8px;
  padding: 8px 10px;
  border-left: 3px solid #7eacbc;
  border-radius: 0 5px 5px 0;
  background: #f0f7f9;
}
body.gsol-commerce .gsol-card-line span {
  color: #27667b;
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
}
body.gsol-commerce .gsol-card-line strong {
  color: #153d4c;
  font-size: 9px;
  line-height: 1.35;
}
body.gsol-commerce .gsol-card-line--choice { border-left-color: var(--gsol-cyan); background: #e8f9fc; }
body.gsol-commerce .gsol-card-line--premium { border-left-color: #0a4158; background: #e9f1f4; }

body.gsol-commerce .gsol-pdp-line-standard {
  position: relative;
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 11px;
  margin: 14px 0 16px;
  padding: 14px;
  border: 1px solid rgba(4,143,181,.22);
  border-left: 4px solid #7eacbc;
  border-radius: 7px;
  background: linear-gradient(135deg, #f8fcfd, #edf6f8);
  box-shadow: inset 0 1px 0 #fff, 0 8px 18px rgba(24,83,103,.07);
}
body.gsol-commerce .gsol-pdp-line-standard.is-choice { border-left-color: var(--gsol-cyan); background: linear-gradient(135deg, #f7fdfe, #e4f8fc); }
body.gsol-commerce .gsol-pdp-line-standard.is-premium { border-left-color: #07384a; background: linear-gradient(135deg, #f4fafc, #e5f0f4); }
body.gsol-commerce .gsol-pdp-line-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: #fff;
  color: #008fb5;
  box-shadow: inset 0 0 0 1px rgba(4,143,181,.18);
}
body.gsol-commerce .gsol-pdp-line-icon .gsol-icon { width: 20px; height: 20px; }
body.gsol-commerce .gsol-pdp-line-copy small,
body.gsol-commerce .gsol-pdp-line-copy strong,
body.gsol-commerce .gsol-pdp-line-copy span { display: block; }
body.gsol-commerce .gsol-pdp-line-copy small { margin-bottom: 2px; color: #0089ad; font-size: 8px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-pdp-line-copy strong { color: #0b3343; font-size: 13px; line-height: 1.3; }
body.gsol-commerce .gsol-pdp-line-copy span { margin-top: 4px; color: #526d78; font-size: 9px; line-height: 1.48; }
body.gsol-commerce .gsol-pdp-tab.is-active { color: #007f9f; }
body.gsol-commerce .gsol-search:focus-within,
body.gsol-commerce .gsol-field input:focus,
body.gsol-commerce .gsol-field select:focus,
body.gsol-commerce .gsol-field textarea:focus {
  border-color: var(--gsol-cyan);
  box-shadow: 0 0 0 3px rgba(4,183,220,.15);
}
body.gsol-commerce .gsol-brand-name strong,
body.gsol-commerce .gsol-main-header .gsol-brand-name strong {
  background: none;
  color: #0b3d59;
  -webkit-text-fill-color: #0b3d59;
}
body.gsol-commerce .gsol-main-header .gsol-brand-domain,
body.gsol-commerce .gsol-main-header .gsol-brand-tagline { color: #0086aa; -webkit-text-fill-color: #0086aa; }
body.gsol-commerce .gsol-campaign > img {
  color: transparent;
  font-size: 0;
}

@media (max-width: 600px) {
  body.gsol-commerce {
    font-size: 15px;
    line-height: 1.62;
  }
  body.gsol-commerce .gsol-shell { width: calc(100% - 32px); }
  body.gsol-commerce :where(h1, h2, h3, p, a, button, span, small, strong, li, td, th, label) {
    max-width: 100%;
    overflow-wrap: break-word;
  }
  body.gsol-commerce :where(p, li) { line-height: 1.62; }
  body.gsol-commerce .gsol-section { padding: 42px 0; }
  body.gsol-commerce .gsol-eyebrow {
    margin-bottom: 12px;
    font-size: 11px;
    line-height: 1.4;
  }
  body.gsol-commerce .gsol-eyebrow:before { width: 18px; flex: 0 0 18px; }

  body.gsol-commerce .gsol-promo {
    gap: 14px;
    padding: 8px 16px;
    font-size: 10px;
    line-height: 1.35;
  }
  body.gsol-commerce .gsol-promo span + span { padding-left: 14px; }
  body.gsol-commerce .gsol-header-row { row-gap: 8px; }
  body.gsol-commerce .gsol-search { height: 48px; }
  body.gsol-commerce .gsol-search input { min-width: 0; font-size: 14px; }
  body.gsol-commerce .gsol-search button { min-width: 68px; padding: 0 12px; font-size: 12px; }

  body.gsol-commerce .gsol-hero {
    min-height: 690px;
    background-position: 64% center;
  }
  body.gsol-commerce .gsol-hero-copy {
    width: 100%;
    max-width: none;
    padding: 48px 0 175px;
  }
  body.gsol-commerce .gsol-hero h1 {
    margin-bottom: 16px;
    font-size: 34px;
    line-height: 1.1;
  }
  body.gsol-commerce .gsol-hero p {
    margin-bottom: 24px;
    font-size: 15px;
    line-height: 1.62;
  }
  body.gsol-commerce .gsol-actions {
    width: 100%;
    gap: 10px;
  }
  body.gsol-commerce .gsol-actions .gsol-button {
    width: 100%;
    min-width: 0;
  }
  body.gsol-commerce .gsol-button {
    min-height: 48px;
    padding: 8px 16px;
    font-size: 13px;
    line-height: 1.3;
    white-space: normal;
  }
  body.gsol-commerce .gsol-proof-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gsol-commerce .gsol-proof {
    min-width: 0;
    padding: 11px 10px;
    border-bottom: 1px solid var(--gsol-border);
  }
  body.gsol-commerce .gsol-proof b { font-size: 11px; line-height: 1.35; }
  body.gsol-commerce .gsol-proof small { font-size: 9.5px; line-height: 1.35; }

  body.gsol-commerce .gsol-section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
  }
  body.gsol-commerce .gsol-section-head h2 {
    margin-bottom: 7px;
    font-size: 26px;
    line-height: 1.17;
  }
  body.gsol-commerce .gsol-section-head p { font-size: 14px; line-height: 1.58; }
  body.gsol-commerce .gsol-mode-tabs {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body.gsol-commerce .gsol-mode-tab {
    min-width: 0;
    min-height: 42px;
    padding: 6px 8px;
    font-size: 11px;
    line-height: 1.25;
    white-space: normal;
  }

  body.gsol-commerce .gsol-category-grid { gap: 10px; }
  body.gsol-commerce .gsol-category {
    min-height: 128px;
    min-width: 0;
    padding: 15px;
    gap: 16px;
  }
  body.gsol-commerce .gsol-category b { font-size: 14px; line-height: 1.35; }
  body.gsol-commerce .gsol-category small { font-size: 11px; line-height: 1.4; }

  body.gsol-commerce .gsol-product-card {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 14px;
  }
  body.gsol-commerce .gsol-product-media {
    width: 100%;
    aspect-ratio: 4 / 3;
  }
  body.gsol-commerce .gsol-product-info { padding-top: 15px; }
  body.gsol-commerce .gsol-product-family { font-size: 10px; }
  body.gsol-commerce .gsol-product-title {
    min-height: 0;
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 1.48;
    -webkit-line-clamp: 3;
  }
  body.gsol-commerce .gsol-specs { gap: 7px; }
  body.gsol-commerce .gsol-specs li {
    grid-template-columns: 46px minmax(0, 1fr);
    font-size: 12px;
    line-height: 1.4;
  }
  body.gsol-commerce .gsol-specs b {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }
  body.gsol-commerce .gsol-availability,
  body.gsol-commerce .gsol-product-gift { font-size: 11px; line-height: 1.4; }
  body.gsol-commerce .gsol-price b { font-size: 24px; }
  body.gsol-commerce .gsol-price small { font-size: 10px; }

  body.gsol-commerce .gsol-business-band,
  body.gsol-commerce .gsol-business-band.is-priority {
    min-height: 700px;
    align-items: flex-end;
    background-position: 42% top;
  }
  body.gsol-commerce .gsol-business-band:after,
  body.gsol-commerce .gsol-business-band.is-priority:after {
    background: linear-gradient(0deg, rgba(255,255,255,.99) 0%, rgba(245,251,253,.97) 54%, rgba(255,255,255,.1) 82%);
  }
  body.gsol-commerce .gsol-business-copy,
  body.gsol-commerce .gsol-business-band.is-priority .gsol-business-copy {
    width: 100%;
    padding: 265px 0 40px;
  }
  body.gsol-commerce .gsol-business-copy h2,
  body.gsol-commerce .gsol-business-band.is-priority h2 {
    margin-bottom: 14px;
    font-size: 29px;
    line-height: 1.16;
  }
  body.gsol-commerce .gsol-business-copy p { margin-bottom: 18px; font-size: 14px; line-height: 1.62; }
  body.gsol-commerce .gsol-service-points { gap: 9px; }
  body.gsol-commerce .gsol-service-points li { align-items: flex-start; font-size: 12px; line-height: 1.5; }

  body.gsol-commerce .gsol-value-grid { grid-template-columns: 1fr; gap: 10px; }
  body.gsol-commerce .gsol-value-item {
    min-height: 0;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    padding: 16px;
  }
  body.gsol-commerce .gsol-value-icon { width: 48px; height: 48px; }
  body.gsol-commerce .gsol-value-copy h3 { font-size: 15px; line-height: 1.35; }
  body.gsol-commerce .gsol-value-copy p { font-size: 12.5px; line-height: 1.55; }
  body.gsol-commerce .gsol-value-copy span { font-size: 10px; line-height: 1.35; }

  body.gsol-commerce .gsol-campaign-grid { grid-template-columns: 1fr; gap: 14px; }
  body.gsol-commerce .gsol-campaign { min-height: 270px; }
  body.gsol-commerce .gsol-campaign-copy,
  body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-copy {
    width: 90%;
    min-height: 270px;
    padding: 24px 20px;
  }
  body.gsol-commerce .gsol-campaign-tag { margin-bottom: 11px; font-size: 10.5px; line-height: 1.35; }
  body.gsol-commerce .gsol-campaign h3 { margin-bottom: 10px; font-size: 23px; line-height: 1.2; }
  body.gsol-commerce .gsol-campaign p { margin-bottom: 18px; font-size: 13.5px; line-height: 1.55; }
  body.gsol-commerce .gsol-campaign-action {
    min-height: 44px;
    padding: 8px 15px;
    font-size: 12px;
    line-height: 1.3;
    white-space: normal;
  }
  body.gsol-commerce .gsol-campaign.is-product > img {
    left: 38%;
    width: 68%;
    opacity: .82;
  }

  body.gsol-commerce .gsol-final-cta,
  body.gsol-commerce .gsol-help-cta {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 30px 0;
  }
  body.gsol-commerce .gsol-final-cta h2,
  body.gsol-commerce .gsol-help-cta h2 { font-size: 24px; line-height: 1.2; }
  body.gsol-commerce .gsol-final-cta p,
  body.gsol-commerce .gsol-help-cta p { font-size: 14px; line-height: 1.6; }
  body.gsol-commerce .gsol-help-cta { padding: 25px 18px; }
  body.gsol-commerce .gsol-help-cta .gsol-actions { justify-content: stretch; }

  body.gsol-commerce .gsol-shop-head h1,
  body.gsol-commerce .gsol-cart-list h1 { font-size: 30px; line-height: 1.16; }
  body.gsol-commerce .gsol-shop-head p { font-size: 14px; line-height: 1.6; }
  body.gsol-commerce .gsol-filter-toolbar { gap: 8px; }
  body.gsol-commerce .gsol-filter-chip { min-height: 40px; font-size: 11px; }
  body.gsol-commerce .gsol-sort { min-width: 0; flex: 1 1 140px; font-size: 12px; }

  body.gsol-commerce .gsol-pdp-main { gap: 24px; }
  body.gsol-commerce .gsol-pdp-summary h1 { font-size: 27px; line-height: 1.2; }
  body.gsol-commerce .gsol-pdp-code { flex-wrap: wrap; gap: 7px; font-size: 10px; }
  body.gsol-commerce .gsol-pdp-price strong { font-size: 32px; }
  body.gsol-commerce .gsol-delivery-row { font-size: 12px; line-height: 1.5; }
  body.gsol-commerce .gsol-pdp-tabs-row { scrollbar-width: thin; }
  body.gsol-commerce .gsol-pdp-tab { min-height: 48px; font-size: 12px; }
  body.gsol-commerce .gsol-fit-intro h2,
  body.gsol-commerce .gsol-components-head h2 { font-size: 23px; }
  body.gsol-commerce .gsol-fit-intro p,
  body.gsol-commerce .gsol-fit-item p,
  body.gsol-commerce .gsol-components-head p { font-size: 13px; line-height: 1.6; }
  body.gsol-commerce .gsol-fit-item b { font-size: 14px; }
  body.gsol-commerce .gsol-component {
    gap: 8px;
    padding: 15px 0;
  }
  body.gsol-commerce .gsol-component-type,
  body.gsol-commerce .gsol-component-name { font-size: 13px; line-height: 1.5; }
  body.gsol-commerce .gsol-change-component {
    justify-content: center;
    min-height: 44px;
    font-size: 12px;
  }
  body.gsol-commerce .gsol-customize-band h2 { font-size: 25px; line-height: 1.22; }
  body.gsol-commerce .gsol-customize-band p { font-size: 13px; line-height: 1.6; }
  body.gsol-commerce .gsol-spec-table { font-size: 12px; }
  body.gsol-commerce .gsol-spec-table th,
  body.gsol-commerce .gsol-spec-table td { padding: 13px 10px; }

  body.gsol-commerce .gsol-about-hero { min-height: 470px; }
  body.gsol-commerce .gsol-ai-image-label { top: 14px; right: 14px; padding: 7px 9px; font-size: 9px; }
  body.gsol-commerce .gsol-about-copy { width: 100%; }
  body.gsol-commerce .gsol-about-copy h1 { font-size: 34px; line-height: 1.14; }
  body.gsol-commerce .gsol-about-copy p { font-size: 15px; line-height: 1.65; }
  body.gsol-commerce .gsol-about-intro h2,
  body.gsol-commerce .gsol-clients-head h2 { font-size: 27px; line-height: 1.2; }
  body.gsol-commerce .gsol-about-intro p,
  body.gsol-commerce .gsol-capability p,
  body.gsol-commerce .gsol-client-segment p,
  body.gsol-commerce .gsol-step p { font-size: 13.5px; line-height: 1.65; }
  body.gsol-commerce .gsol-capability h3,
  body.gsol-commerce .gsol-client-segment h3,
  body.gsol-commerce .gsol-step h3 { font-size: 17px; line-height: 1.3; }

  body.gsol-commerce .gsol-help-hero-inner { padding-top: 38px; padding-bottom: 36px; }
  body.gsol-commerce .gsol-help-intro h1 { font-size: 36px; line-height: 1.12; }
  body.gsol-commerce .gsol-help-intro > p { font-size: 14.5px; line-height: 1.65; }
  body.gsol-commerce .gsol-help-search { height: auto; min-height: 52px; }
  body.gsol-commerce .gsol-help-search input { min-width: 0; font-size: 14px; }
  body.gsol-commerce .gsol-help-direct h2 { font-size: 24px; line-height: 1.2; }
  body.gsol-commerce .gsol-help-direct p,
  body.gsol-commerce .gsol-help-side p { font-size: 13.5px; line-height: 1.65; }
  body.gsol-commerce .gsol-help-direct-links a,
  body.gsol-commerce .gsol-help-direct-links button {
    min-height: 44px;
    font-size: 12px;
    overflow-wrap: anywhere;
  }
  body.gsol-commerce .gsol-help-category-head h2 { font-size: 25px; }
  body.gsol-commerce .gsol-help-category-head p { font-size: 13px; line-height: 1.55; }
  body.gsol-commerce .gsol-help-category {
    min-height: 54px;
    font-size: 12px;
    line-height: 1.35;
  }
  body.gsol-commerce .gsol-help-side h2 { font-size: 25px; }
  body.gsol-commerce .gsol-help-group-title { font-size: 19px; line-height: 1.3; }
  body.gsol-commerce .gsol-help-question {
    min-height: 58px;
    padding: 16px 14px;
    font-size: 13.5px;
    line-height: 1.5;
  }
  body.gsol-commerce .gsol-help-answer {
    padding: 0 36px 18px 14px;
    font-size: 13.5px;
    line-height: 1.68;
  }

  body.gsol-commerce .gsol-cart-item {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
  }
  body.gsol-commerce .gsol-cart-item h3 { font-size: 14px; line-height: 1.45; }
  body.gsol-commerce .gsol-cart-item p { font-size: 12px; line-height: 1.5; }
  body.gsol-commerce .gsol-order-box h2 { font-size: 20px; }
  body.gsol-commerce .gsol-order-line { font-size: 12px; }

  body.gsol-commerce .gsol-footer-top { gap: 26px; padding: 38px 0; }
  body.gsol-commerce .gsol-footer-brand p { font-size: 13px; line-height: 1.6; }
  body.gsol-commerce .gsol-footer h3 { font-size: 14px; }
  body.gsol-commerce .gsol-footer-links a {
    margin: 10px 0;
    font-size: 13px;
    line-height: 1.5;
    overflow-wrap: anywhere;
  }
  body.gsol-commerce .gsol-ai-disclosure summary { min-height: 54px; font-size: 13px; }
  body.gsol-commerce .gsol-ai-disclosure-content h2 { font-size: 17px; }
  body.gsol-commerce .gsol-ai-disclosure-content p { font-size: 12px; line-height: 1.65; }
  body.gsol-commerce .gsol-footer-bottom { gap: 7px; font-size: 10px; line-height: 1.45; }

  body.gsol-commerce .gsol-field input,
  body.gsol-commerce .gsol-field select,
  body.gsol-commerce .gsol-field textarea { font-size: 16px; }
  body.gsol-commerce .gsol-field > label,
  body.gsol-commerce .gsol-field > span { font-size: 11px; }
  body.gsol-commerce .gsol-contact-method { font-size: 12px; }
  body.gsol-commerce .gsol-inquiry-head h2 { font-size: 23px; }
  body.gsol-commerce .gsol-inquiry-head p,
  body.gsol-commerce .gsol-form-note { font-size: 11px; line-height: 1.5; }

  body.gsol-commerce .gsol-ai-launcher {
    right: 12px;
    bottom: 70px;
    min-height: 52px;
    max-width: calc(100% - 24px);
    padding: 0 15px 0 8px;
  }
  body.gsol-commerce .gsol-ai-launcher strong { font-size: 12px; line-height: 1.25; white-space: normal; }
  body.gsol-commerce .gsol-ai-panel {
    right: 10px;
    bottom: calc(72px + env(safe-area-inset-bottom));
    width: calc(100% - 20px);
    max-height: calc(100dvh - 90px);
  }
  body.gsol-commerce .gsol-ai-message { font-size: 12.5px; line-height: 1.58; }
  body.gsol-commerce .gsol-mobile-bar button { font-size: 10px; line-height: 1.2; }
}

@media (max-width: 390px) {
  body.gsol-commerce .gsol-shell { width: calc(100% - 26px); }
  body.gsol-commerce .gsol-category-grid { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-proof-row { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-hero { min-height: 850px; }
  body.gsol-commerce .gsol-hero-copy { padding-bottom: 300px; }
  body.gsol-commerce .gsol-help-categories { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-price-row { align-items: flex-start; flex-wrap: wrap; }
  body.gsol-commerce .gsol-ai-launcher strong { font-size: 11px; }
}



/* Expanded GSOL services */
body.gsol-commerce .gsol-value-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.gsol-commerce .gsol-campaign-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 24px;
}
body.gsol-commerce .gsol-campaign,
body.gsol-commerce .gsol-campaign-copy { min-height: 270px; }
body.gsol-commerce .gsol-campaign-copy {
  width: 78%;
  justify-content: flex-end;
  padding: 24px;
}
body.gsol-commerce .gsol-campaign h3 { font-size: 22px; line-height: 1.16; }
body.gsol-commerce .gsol-campaign p { font-size: 12px; line-height: 1.5; }
body.gsol-commerce .gsol-campaign > img,
body.gsol-commerce .gsol-campaign.is-product > img {
  inset: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 1;
}
body.gsol-commerce .gsol-campaign.is-product:after {
  background: linear-gradient(90deg, rgba(9,25,34,.9), rgba(9,31,42,.52) 66%, rgba(9,31,42,.1));
}
body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-copy {
  width: 78%;
  min-height: 270px;
  color: #fff;
}
body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-tag { color: #9ee3ef; }
body.gsol-commerce .gsol-campaign.is-product p { color: rgba(255,255,255,.86); }

body.gsol-commerce .gsol-capabilities { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.gsol-commerce .gsol-capability {
  min-height: 245px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
body.gsol-commerce .gsol-capability .gsol-icon { margin-bottom: 20px; }
body.gsol-commerce .gsol-capability p { margin-bottom: 18px; font-size: 12.5px; line-height: 1.58; }
body.gsol-commerce .gsol-capability-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--gsol-cyan-dark);
  cursor: pointer;
  font-size: 11px;
  font-weight: 900;
  text-align: left;
}
body.gsol-commerce .gsol-capability-action:hover { color: #07546d; }
body.gsol-commerce .gsol-capability-action .gsol-icon { width: 13px; height: 13px; margin: 0; }

body.gsol-commerce .gsol-about-promise {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 64px;
  align-items: center;
  margin-top: 42px;
  padding: 38px 0;
  border-top: 1px solid var(--gsol-border);
}
body.gsol-commerce .gsol-about-promise h2 { margin: 0; font-size: 30px; line-height: 1.2; }
body.gsol-commerce .gsol-about-promise-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
body.gsol-commerce .gsol-about-promise-list li {
  min-height: 120px;
  padding: 0 20px;
  border-left: 1px solid var(--gsol-border);
  color: #5d7480;
  font-size: 12px;
  line-height: 1.55;
}
body.gsol-commerce .gsol-about-promise-list b {
  display: block;
  margin-bottom: 8px;
  color: var(--gsol-ink);
  font-size: 14px;
}
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-band {
  min-height: 390px;
  background: #142d38;
}
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-band:before {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  background: url('../img/gsol-consultation-1600.webp') center / cover no-repeat;
}
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-band:after {
  inset: 0;
  width: 100%;
  background: linear-gradient(90deg, rgba(5,24,34,.9) 0%, rgba(5,24,34,.76) 24%, rgba(5,24,34,.26) 48%, rgba(5,24,34,.04) 68%);
}
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy {
  width: min(560px, 39%);
  margin: 0 auto 0 0;
  padding: 48px 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy h2 { color: #fff; line-height: 1.16; text-shadow: 0 2px 18px rgba(0,0,0,.28); }
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy p { color: #d6e5eb; line-height: 1.55; }
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy .gsol-eyebrow { color: #6dddf4; }
body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy .gsol-button.is-outline { border-color: rgba(255,255,255,.72); background: rgba(248,253,255,.9); color: #234b5b; }

@media (max-width: 1180px) {
  body.gsol-commerce .gsol-value-grid,
  body.gsol-commerce .gsol-capabilities { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gsol-commerce .gsol-campaign-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  body.gsol-commerce .gsol-value-grid,
  body.gsol-commerce .gsol-campaign-grid,
  body.gsol-commerce .gsol-capabilities { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-campaign,
  body.gsol-commerce .gsol-campaign-copy,
  body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-copy { min-height: 300px; }
  body.gsol-commerce .gsol-campaign-copy,
  body.gsol-commerce .gsol-campaign.is-product .gsol-campaign-copy {
    width: 88%;
    justify-content: flex-end;
    padding: 24px 20px;
  }
  body.gsol-commerce .gsol-capability { min-height: 215px; }
  body.gsol-commerce .gsol-about-promise { grid-template-columns: 1fr; gap: 24px; padding: 30px 0; }
  body.gsol-commerce .gsol-about-promise h2 { font-size: 25px; }
  body.gsol-commerce .gsol-about-promise-list { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-about-promise-list li {
    min-height: 0;
    padding: 16px 0;
    border-left: 0;
    border-top: 1px solid var(--gsol-border);
    font-size: 13px;
  }
  body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-band {
    min-height: 570px;
    padding-top: 0;
    align-items: flex-end;
    background: #142d38;
  }
  body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-band:before {
    inset: 0;
    width: 100%;
    height: 100%;
    background-position: 58% center;
  }
  body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-band:after {
    inset: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(5,24,34,.96) 0%, rgba(5,24,34,.82) 42%, rgba(5,24,34,.08) 78%);
  }
  body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy {
    width: 100%;
    margin: 0;
    padding: 300px 0 34px;
    background: transparent;
  }
  body.gsol-commerce .gsol-page[data-page="about"] .gsol-business-copy h2 { font-size: 25px; }
}

/* Product navigation dropdowns */
body.gsol-commerce .gsol-departments,
body.gsol-commerce .gsol-departments-row { overflow: visible; }
body.gsol-commerce .gsol-departments-row { position: relative; gap: 2px; }
body.gsol-commerce .gsol-nav-dropdown {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  flex: 0 0 auto;
}
body.gsol-commerce .gsol-nav-trigger {
  gap: 5px;
  width: 100%;
  border: 0;
  background: transparent;
  color: var(--gsol-ink-soft);
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
}
body.gsol-commerce .gsol-nav-trigger > .gsol-icon {
  width: 12px;
  height: 12px;
  margin-left: 1px;
  transition: transform .18s ease;
}
body.gsol-commerce .gsol-nav-dropdown.is-open .gsol-nav-trigger,
body.gsol-commerce .gsol-nav-dropdown:focus-within .gsol-nav-trigger {
  background: #f2f8fa;
  color: var(--gsol-cyan-dark);
  box-shadow: inset 0 -2px 0 var(--gsol-cyan);
}
body.gsol-commerce .gsol-nav-dropdown.is-open .gsol-nav-trigger > .gsol-icon,
body.gsol-commerce .gsol-nav-dropdown:focus-within .gsol-nav-trigger > .gsol-icon { transform: rotate(180deg); }
body.gsol-commerce .gsol-nav-menu {
  position: absolute;
  z-index: 1005;
  top: 100%;
  left: 0;
  display: none;
  width: 292px;
  padding: 10px 12px 12px;
  border: 1px solid var(--gsol-border);
  border-top: 2px solid var(--gsol-cyan);
  border-radius: 0 0 8px 8px;
  background: rgba(255,255,255,.985);
  box-shadow: 0 18px 38px rgba(16,47,61,.16);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
  backdrop-filter: blur(16px) saturate(125%);
}
body.gsol-commerce .gsol-nav-dropdown.is-open > .gsol-nav-menu,
body.gsol-commerce .gsol-nav-dropdown:focus-within > .gsol-nav-menu { display: block; }
body.gsol-commerce .gsol-nav-dropdown:not(.is-open):focus-within > .gsol-nav-menu { display: none; }
body.gsol-commerce .gsol-nav-dropdown.is-align-right > .gsol-nav-menu { right: 0; left: auto; }
body.gsol-commerce .gsol-nav-menu > a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 43px;
  padding: 9px 12px;
  border-radius: 6px;
  color: #263d49;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}
body.gsol-commerce .gsol-nav-menu > a:not(.gsol-nav-menu-all):before {
  content: "";
  width: 5px;
  height: 5px;
  flex: 0 0 auto;
  margin-right: 10px;
  border-radius: 50%;
  background: #a9bdc6;
}
body.gsol-commerce .gsol-nav-menu > a:hover,
body.gsol-commerce .gsol-nav-menu > a:focus-visible {
  background: #eaf8fb;
  color: #007f9f;
  outline: 0;
}
body.gsol-commerce .gsol-nav-menu > a:hover:before,
body.gsol-commerce .gsol-nav-menu > a:focus-visible:before { background: var(--gsol-cyan); }
body.gsol-commerce .gsol-nav-menu-all {
  justify-content: space-between;
  margin-top: 7px;
  padding-top: 12px !important;
  border-top: 1px solid var(--gsol-border);
  color: var(--gsol-cyan-dark) !important;
  font-weight: 900 !important;
}
body.gsol-commerce .gsol-nav-menu-all .gsol-icon { width: 15px; height: 15px; }

@media (hover: hover) and (min-width: 821px) {
  body.gsol-commerce .gsol-nav-dropdown:hover > .gsol-nav-menu { display: block; }
  body.gsol-commerce .gsol-nav-dropdown:hover .gsol-nav-trigger {
    background: #f2f8fa;
    color: var(--gsol-cyan-dark);
    box-shadow: inset 0 -2px 0 var(--gsol-cyan);
  }
  body.gsol-commerce .gsol-nav-dropdown:hover .gsol-nav-trigger > .gsol-icon { transform: rotate(180deg); }
}

@media (max-width: 1180px) and (min-width: 821px) {
  body.gsol-commerce .gsol-departments-row { gap: 0; }
  body.gsol-commerce .gsol-nav-link { padding-inline: 8px; }
  body.gsol-commerce .gsol-nav-trigger { font-size: 10px; }
  body.gsol-commerce .gsol-nav-dropdown.is-compact-hide { display: none; }
  body.gsol-commerce .gsol-support-link { font-size: 10px; }
}

@media (max-width: 820px) {
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-departments {
    max-height: 76dvh;
    overflow-y: auto;
    background: #fff;
  }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-departments-row { gap: 2px; }
  body.gsol-commerce .gsol-nav-dropdown {
    display: block;
    width: 100%;
  }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-nav-trigger {
    justify-content: space-between;
    width: 100%;
    min-height: 46px;
    padding: 0 12px;
    border-radius: 6px;
    font-size: 12px;
  }
  body.gsol-commerce .gsol-nav-menu,
  body.gsol-commerce .gsol-nav-dropdown.is-align-right > .gsol-nav-menu {
    position: static;
    width: 100%;
    margin: 2px 0 7px;
    padding: 6px;
    border: 1px solid #d8e7ec;
    border-radius: 7px;
    background: #f5f9fa;
    box-shadow: none;
  }
  body.gsol-commerce .gsol-nav-menu > a {
    min-height: 42px;
    padding: 8px 12px;
    font-size: 12px;
  }
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-nav-link.is-business,
  body.gsol-commerce .gsol-main-header.is-mobile-open .gsol-nav-link.is-sale { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  body.gsol-commerce *, body.gsol-commerce *:before, body.gsol-commerce *:after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
/* About profile navigation and addressable service sections */
body.gsol-commerce .gsol-profile-section-head { display: grid; grid-template-columns: 1fr 1.15fr; gap: 52px; align-items: end; margin: 4px 0 22px; padding-top: 12px; }
body.gsol-commerce .gsol-profile-section-head h2 { margin: 0; font-size: 29px; line-height: 1.2; }
body.gsol-commerce .gsol-profile-section-head p { margin: 0; color: var(--gsol-muted); font-size: 13px; line-height: 1.65; }
body.gsol-commerce .gsol-profile-index { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-bottom: 28px; }
body.gsol-commerce .gsol-profile-index button { --gsol-index-accent: #08add8; display: flex; align-items: center; gap: 9px; min-height: 48px; padding: 10px 12px; border: 1px solid #d5e3e9; border-radius: 6px; background: #f7fbfc; color: var(--gsol-ink); cursor: pointer; font-size: 11px; font-weight: 800; text-align: left; transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease; }
body.gsol-commerce .gsol-profile-index button[data-section="it-support"] { --gsol-index-accent: #167bb5; }
body.gsol-commerce .gsol-profile-index button[data-section="infrastructure"] { --gsol-index-accent: #486fa8; }
body.gsol-commerce .gsol-profile-index button[data-section="backup"] { --gsol-index-accent: #14a879; }
body.gsol-commerce .gsol-profile-index button[data-section="security"] { --gsol-index-accent: #b97918; }
body.gsol-commerce .gsol-profile-index button[data-section="web"] { --gsol-index-accent: #158a79; }
body.gsol-commerce .gsol-profile-index button[data-section="network"] { --gsol-index-accent: #337fa2; }
body.gsol-commerce .gsol-profile-index button[data-section="service"] { --gsol-index-accent: #bf5d4b; }
body.gsol-commerce .gsol-profile-index button[data-section="print"] { --gsol-index-accent: #6a6c9d; }
body.gsol-commerce .gsol-profile-index button:hover { border-color: var(--gsol-index-accent); background: color-mix(in srgb, var(--gsol-index-accent) 9%, #fff); color: #274653; transform: translateY(-1px); }
body.gsol-commerce .gsol-profile-index button.is-current { border-color: var(--gsol-index-accent); background: color-mix(in srgb, var(--gsol-index-accent) 12%, #fff); color: #183d4a; box-shadow: inset 3px 0 0 var(--gsol-index-accent); }
body.gsol-commerce .gsol-profile-index .gsol-icon { flex: 0 0 auto; width: 17px; height: 17px; color: var(--gsol-index-accent); }
body.gsol-commerce .gsol-capabilities { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; border: 0; }
body.gsol-commerce .gsol-capability { min-height: 285px; border: 1px solid var(--gsol-border); border-radius: 6px; scroll-margin-top: 155px; transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
body.gsol-commerce .gsol-capability.is-store { grid-column: 1 / -1; min-height: 250px; background: linear-gradient(105deg, #f2fbfe 0%, #fff 68%); }
body.gsol-commerce .gsol-capability.is-targeted { border-color: #08add8; box-shadow: 0 0 0 3px rgba(8,173,216,.14), 0 18px 38px rgba(18,55,72,.12); transform: translateY(-2px); }
body.gsol-commerce .gsol-capability-kicker { display: block; margin-bottom: 8px; color: #087ca2; font-size: 10px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-capability-points { display: grid; gap: 7px; margin: 0 0 18px; padding: 0; list-style: none; }
body.gsol-commerce .gsol-capability-points li { position: relative; padding-left: 16px; color: #516a76; font-size: 11.5px; line-height: 1.45; }
body.gsol-commerce .gsol-capability-points li:before { content: ""; position: absolute; left: 0; top: .55em; width: 6px; height: 6px; border-radius: 50%; background: #09add8; }
body.gsol-commerce .gsol-standard-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; width: 100%; margin: 2px 0 20px; }
body.gsol-commerce .gsol-standard-list span { padding: 11px 12px; border-left: 3px solid #08add8; background: rgba(255,255,255,.78); color: #536b77; font-size: 10.5px; line-height: 1.4; }
body.gsol-commerce .gsol-standard-list b { display: block; margin-bottom: 3px; color: var(--gsol-ink); font-size: 12px; }
@media (max-width: 920px) {
  body.gsol-commerce .gsol-profile-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.gsol-commerce .gsol-profile-section-head { grid-template-columns: 1fr; gap: 10px; }
}
@media (max-width: 700px) {
  body.gsol-commerce .gsol-profile-index { display: flex; gap: 8px; margin-right: -16px; padding-right: 16px; overflow-x: auto; scroll-snap-type: x proximity; }
  body.gsol-commerce .gsol-profile-index button { flex: 0 0 176px; scroll-snap-align: start; }
  body.gsol-commerce .gsol-capabilities { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-capability.is-store { grid-column: auto; }
  body.gsol-commerce .gsol-standard-list { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-capability { min-height: 0; }
}
body.gsol-commerce .gsol-capability.is-backup {
  grid-column: 1 / -1;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #c9e1e9;
  background: #fff;
  box-shadow: 0 22px 50px rgba(22, 68, 86, .09);
}
body.gsol-commerce .gsol-backup-hero {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(460px, 1.08fr);
  min-height: 390px;
  width: 100%;
  background: linear-gradient(110deg, #f0faff 0%, #fff 66%);
}
body.gsol-commerce .gsol-backup-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 42px;
}
body.gsol-commerce .gsol-backup-copy .gsol-icon { width: 30px; height: 30px; margin: 0 0 18px; color: #079fc8; }
body.gsol-commerce .gsol-backup-copy h3 { max-width: 600px; margin: 0 0 14px; font-size: 30px; line-height: 1.12; }
body.gsol-commerce .gsol-backup-copy > p { max-width: 610px; margin: 0 0 20px; color: #4f6976; font-size: 14px; line-height: 1.62; }
body.gsol-commerce .gsol-backup-audience { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px; }
body.gsol-commerce .gsol-backup-audience span { padding: 7px 10px; border: 1px solid #cfe8f0; border-radius: 4px; background: rgba(255,255,255,.8); color: #315665; font-size: 10.5px; font-weight: 800; }
body.gsol-commerce .gsol-backup-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
body.gsol-commerce .gsol-backup-primary {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid #08add8;
  border-radius: 5px;
  background: linear-gradient(135deg, #09b9e3, #0798c4);
  box-shadow: 0 10px 22px rgba(8, 173, 216, .2);
  color: #062c3a;
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
}
body.gsol-commerce .gsol-backup-primary:hover { transform: translateY(-1px); box-shadow: 0 14px 28px rgba(8, 173, 216, .27); }
body.gsol-commerce .gsol-backup-primary .gsol-icon { width: 15px; height: 15px; margin: 0; color: currentColor; }
body.gsol-commerce .gsol-backup-phone { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; color: #315665; font-size: 11.5px; font-weight: 900; }
body.gsol-commerce .gsol-backup-phone .gsol-icon { width: 15px; height: 15px; margin: 0; color: #0a9bc4; }
body.gsol-commerce .gsol-backup-visual { position: relative; min-height: 390px; margin: 0; overflow: hidden; background: #eaf5f8; }
body.gsol-commerce .gsol-backup-visual:after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 42%, rgba(5,29,39,.82) 100%), linear-gradient(90deg, rgba(240,250,255,.2), transparent 32%); pointer-events: none; }
body.gsol-commerce .gsol-backup-visual img { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; object-fit: cover; object-position: 52% center; }
body.gsol-commerce .gsol-backup-visual figcaption {
  position: absolute;
  z-index: 1;
  right: 18px;
  bottom: 18px;
  display: flex;
  align-items: center;
  gap: 9px;
  max-width: 240px;
  padding: 11px 13px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 5px;
  background: rgba(248,253,255,.9);
  box-shadow: 0 10px 26px rgba(8,38,52,.16);
  color: #183c49;
  font-size: 10.5px;
  font-weight: 850;
  line-height: 1.35;
  backdrop-filter: blur(12px);
}
body.gsol-commerce .gsol-backup-visual figcaption .gsol-icon { flex: 0 0 auto; width: 18px; height: 18px; margin: 0; color: #0aaf79; }
body.gsol-commerce .gsol-backup-visual figcaption { top: 16px; right: 16px; bottom: auto; left: auto; }
body.gsol-commerce .gsol-backup-image-copy { position: absolute; z-index: 2; right: 22px; bottom: 22px; left: 22px; color: #fff; }
body.gsol-commerce .gsol-backup-image-copy span { display: flex; align-items: center; gap: 9px; margin-bottom: 8px; color: #b7f5df; font-size: 9.5px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-backup-image-copy span:before { content: ""; width: 25px; height: 3px; background: #14b77f; }
body.gsol-commerce .gsol-backup-image-copy strong { display: block; max-width: 560px; color: #fff; font-size: 25px; line-height: 1.14; text-shadow: 0 2px 18px rgba(0,0,0,.38); }
body.gsol-commerce .gsol-recovery-flow {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  border-top: 1px solid #d9e8ed;
  border-bottom: 1px solid #d9e8ed;
  background: #f8fbfc;
}
body.gsol-commerce .gsol-recovery-step { position: relative; display: grid; grid-template-columns: 42px 1fr; gap: 12px; align-items: center; min-height: 100px; padding: 18px 24px; }
body.gsol-commerce .gsol-recovery-step + .gsol-recovery-step { border-left: 1px solid #d9e8ed; }
body.gsol-commerce .gsol-recovery-step:after { content: ""; position: absolute; z-index: 2; top: 50%; right: -7px; width: 12px; height: 12px; border-top: 2px solid #8fb3c1; border-right: 2px solid #8fb3c1; background: #f8fbfc; transform: translateY(-50%) rotate(45deg); }
body.gsol-commerce .gsol-recovery-step:last-child:after { display: none; }
body.gsol-commerce .gsol-recovery-icon { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #d1e5ec; border-radius: 50%; background: #fff; }
body.gsol-commerce .gsol-recovery-icon .gsol-icon { width: 20px; height: 20px; margin: 0; }
body.gsol-commerce .gsol-recovery-step.is-attack .gsol-recovery-icon { border-color: #f2c9c5; background: #fff5f3; color: #c54539; }
body.gsol-commerce .gsol-recovery-step.is-protected .gsol-recovery-icon { border-color: #bde4ef; background: #ecfaff; color: #078fb8; }
body.gsol-commerce .gsol-recovery-step.is-restored .gsol-recovery-icon { border-color: #bfe7d7; background: #effbf6; color: #11845d; }
body.gsol-commerce .gsol-recovery-step small { display: block; margin-bottom: 3px; color: #6a7f88; font-size: 9px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-recovery-step strong { display: block; color: var(--gsol-ink); font-size: 13px; line-height: 1.3; }
body.gsol-commerce .gsol-recovery-step p { margin: 4px 0 0; color: #607681; font-size: 10.5px; line-height: 1.4; }
body.gsol-commerce .gsol-case-note { display: grid; grid-template-columns: minmax(230px, .65fr) minmax(0, 1.35fr); gap: 30px; width: 100%; padding: 30px 42px 34px; background: #fff; }
body.gsol-commerce .gsol-case-heading span { display: block; margin-bottom: 9px; color: #087ca2; font-size: 10px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-case-heading strong { display: block; max-width: 420px; color: var(--gsol-ink); font-size: 21px; line-height: 1.25; }
body.gsol-commerce .gsol-case-details > p { max-width: 760px; margin: 0 0 20px; color: #526b77; font-size: 12.5px; line-height: 1.6; }
body.gsol-commerce .gsol-case-results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #d9e8ed; border-bottom: 1px solid #d9e8ed; }
body.gsol-commerce .gsol-case-result { display: flex; gap: 9px; align-items: center; min-height: 62px; padding: 10px 14px; color: #264653; font-size: 10.5px; font-weight: 850; line-height: 1.35; }
body.gsol-commerce .gsol-case-result + .gsol-case-result { border-left: 1px solid #d9e8ed; }
body.gsol-commerce .gsol-case-result .gsol-icon { flex: 0 0 auto; width: 17px; height: 17px; margin: 0; color: #0b9f70; }
body.gsol-commerce .gsol-backup-footnote { display: flex; align-items: center; gap: 8px; margin-top: 14px; color: #6a7f88; font-size: 10.5px; line-height: 1.45; }
body.gsol-commerce .gsol-backup-footnote .gsol-icon { width: 15px; height: 15px; margin: 0; color: #079fc8; }
body.gsol-commerce .gsol-capability.is-backup { border-top: 4px solid #14a879; }
body.gsol-commerce .gsol-capability.is-backup.is-targeted { border-color: #14a879; box-shadow: 0 0 0 4px rgba(20,168,121,.16), 0 24px 52px rgba(18,55,72,.16); }
@media (max-width: 1040px) {
  body.gsol-commerce .gsol-backup-hero { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-backup-visual { min-height: 330px; }
  body.gsol-commerce .gsol-backup-visual img { min-height: 330px; }
}
@media (max-width: 700px) {
  body.gsol-commerce .gsol-capability.is-backup { grid-column: auto; }
  body.gsol-commerce .gsol-backup-copy { padding: 28px 20px; }
  body.gsol-commerce .gsol-backup-copy h3 { font-size: 25px; }
  body.gsol-commerce .gsol-backup-copy > p { font-size: 13px; }
  body.gsol-commerce .gsol-backup-primary { width: 100%; justify-content: center; }
  body.gsol-commerce .gsol-backup-visual, body.gsol-commerce .gsol-backup-visual img { min-height: 270px; }
  body.gsol-commerce .gsol-backup-visual img { object-position: 45% center; }
  body.gsol-commerce .gsol-backup-visual figcaption { right: 12px; bottom: 12px; left: 12px; max-width: none; }
  body.gsol-commerce .gsol-backup-visual figcaption { top: 10px; right: 10px; bottom: auto; left: auto; max-width: calc(100% - 20px); }
  body.gsol-commerce .gsol-backup-image-copy { right: 16px; bottom: 16px; left: 16px; }
  body.gsol-commerce .gsol-backup-image-copy strong { font-size: 21px; }
  body.gsol-commerce .gsol-recovery-flow { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-recovery-step { min-height: 88px; padding: 14px 20px; }
  body.gsol-commerce .gsol-recovery-step + .gsol-recovery-step { border-top: 1px solid #d9e8ed; border-left: 0; }
  body.gsol-commerce .gsol-recovery-step:after { top: auto; right: auto; bottom: -7px; left: 35px; transform: rotate(135deg); }
  body.gsol-commerce .gsol-case-note { grid-template-columns: 1fr; gap: 16px; padding: 25px 20px 28px; }
  body.gsol-commerce .gsol-case-heading strong { font-size: 19px; }
  body.gsol-commerce .gsol-case-results { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-case-result + .gsol-case-result { border-top: 1px solid #d9e8ed; border-left: 0; }
}

/* Full-width service stories: one clear outcome per row */
body.gsol-commerce .gsol-service-showcase {
  --gsol-service-accent: #08add8;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(360px, .92fr) minmax(0, 1.08fr);
  grid-template-areas: "media content";
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #cfdee4;
  border-top: 4px solid var(--gsol-service-accent);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(24, 67, 84, .08);
}
body.gsol-commerce .gsol-service-showcase[data-about-section="store"] { --gsol-service-accent: #08add8; }
body.gsol-commerce .gsol-service-showcase[data-about-section="it-support"] { --gsol-service-accent: #167bb5; }
body.gsol-commerce .gsol-service-showcase[data-about-section="infrastructure"] { --gsol-service-accent: #486fa8; }
body.gsol-commerce .gsol-service-showcase[data-about-section="security"] { --gsol-service-accent: #b97918; }
body.gsol-commerce .gsol-service-showcase[data-about-section="web"] { --gsol-service-accent: #158a79; }
body.gsol-commerce .gsol-service-showcase[data-about-section="network"] { --gsol-service-accent: #337fa2; }
body.gsol-commerce .gsol-service-showcase[data-about-section="service"] { --gsol-service-accent: #bf5d4b; }
body.gsol-commerce .gsol-service-showcase[data-about-section="print"] { --gsol-service-accent: #6a6c9d; }
body.gsol-commerce .gsol-service-showcase.is-reverse { grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr); grid-template-areas: "content media"; }
body.gsol-commerce .gsol-service-media { grid-area: media; position: relative; min-height: 360px; margin: 0; overflow: hidden; background: #eaf4f7; }
body.gsol-commerce .gsol-service-media:after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(4,23,31,.04) 20%, rgba(4,23,31,.86) 100%); pointer-events: none; }
body.gsol-commerce .gsol-service-media img { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; object-fit: cover; object-position: center; transition: transform .55s ease; }
body.gsol-commerce .gsol-service-showcase:hover .gsol-service-media img { transform: scale(1.018); }
body.gsol-commerce .gsol-service-media figcaption {
  position: absolute;
  z-index: 1;
  top: 14px;
  right: 14px;
  bottom: auto;
  left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  max-width: calc(100% - 28px);
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 5px;
  background: rgba(248,253,255,.9);
  box-shadow: 0 10px 24px rgba(4,30,42,.16);
  color: #153b49;
  font-size: 10.5px;
  font-weight: 900;
  line-height: 1.35;
  backdrop-filter: blur(12px);
}
body.gsol-commerce .gsol-service-media figcaption .gsol-icon { flex: 0 0 auto; width: 17px; height: 17px; margin: 0; color: var(--gsol-service-accent); }
body.gsol-commerce .gsol-service-image-copy { position: absolute; z-index: 2; right: 24px; bottom: 24px; left: 24px; color: #fff; }
body.gsol-commerce .gsol-service-image-copy span { display: flex; align-items: center; gap: 9px; margin-bottom: 9px; color: #fff; font-size: 10px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-service-image-copy span:before { content: ""; width: 27px; height: 3px; border-radius: 2px; background: var(--gsol-service-accent); box-shadow: 0 0 16px color-mix(in srgb, var(--gsol-service-accent) 70%, transparent); }
body.gsol-commerce .gsol-service-image-copy h3 { max-width: 610px; margin: 0; color: #fff; font-size: 27px; line-height: 1.13; text-shadow: 0 2px 18px rgba(0,0,0,.38); }
body.gsol-commerce .gsol-service-content { grid-area: content; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 32px 38px; background: linear-gradient(115deg, #fff 0%, #f5fbfd 100%); }
body.gsol-commerce .gsol-service-content > .gsol-icon { width: 27px; height: 27px; margin: 0 0 16px; color: #079fc8; }
body.gsol-commerce .gsol-service-content h3 { max-width: 670px; margin: 0 0 12px; font-size: 28px; line-height: 1.14; }
body.gsol-commerce .gsol-service-content-label { display: flex; align-items: center; gap: 8px; margin-bottom: 11px; color: var(--gsol-service-accent); font-size: 9.5px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-service-content-label:before { content: ""; width: 16px; height: 2px; background: currentColor; }
body.gsol-commerce .gsol-service-content > p { max-width: 700px; margin: 0 0 20px; color: #526b77; font-size: 13.5px; line-height: 1.62; }
body.gsol-commerce .gsol-service-scan { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; margin: 0 0 18px; border-top: 1px solid #d8e7ec; border-bottom: 1px solid #d8e7ec; }
body.gsol-commerce .gsol-service-scan > span { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 8px; align-items: center; min-height: 67px; padding: 10px 12px; }
body.gsol-commerce .gsol-service-scan > span > span { display: block; min-width: 0; }
body.gsol-commerce .gsol-service-scan > span + span { border-left: 1px solid #d8e7ec; }
body.gsol-commerce .gsol-service-scan .gsol-icon { width: 19px; height: 19px; margin: 0; color: var(--gsol-service-accent); }
body.gsol-commerce .gsol-service-scan small { display: block; margin-bottom: 2px; color: #72848c; font-size: 8.5px; font-weight: 900; text-transform: uppercase; }
body.gsol-commerce .gsol-service-scan strong { display: block; color: #1c3c48; font-size: 10.5px; line-height: 1.3; }
body.gsol-commerce .gsol-service-promise { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 19px; color: #315765; font-size: 11px; font-weight: 800; line-height: 1.45; }
body.gsol-commerce .gsol-service-promise .gsol-icon { flex: 0 0 auto; width: 16px; height: 16px; margin: 1px 0 0; color: #0a9f70; }
body.gsol-commerce .gsol-service-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
body.gsol-commerce .gsol-service-actions .gsol-button { min-height: 44px; }
body.gsol-commerce .gsol-service-actions .gsol-service-phone { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; color: #315665; font-size: 11.5px; font-weight: 900; }
body.gsol-commerce .gsol-service-actions .gsol-service-phone .gsol-icon { width: 15px; height: 15px; color: #079fc8; }
body.gsol-commerce .gsol-service-showcase.is-store .gsol-service-content { background: linear-gradient(115deg, #fff 0%, #effaff 100%); }
body.gsol-commerce .gsol-service-showcase.is-store .gsol-service-media img { object-position: 58% center; }
body.gsol-commerce .gsol-service-showcase[data-about-section="it-support"] .gsol-service-media img { object-position: 55% center; }
body.gsol-commerce .gsol-service-showcase[data-about-section="infrastructure"] .gsol-service-media img { object-position: center; }
body.gsol-commerce .gsol-service-showcase[data-about-section="security"] .gsol-service-media img { object-position: center; }
body.gsol-commerce .gsol-service-showcase[data-about-section="web"] .gsol-service-media img { object-position: center; }
body.gsol-commerce .gsol-service-showcase[data-about-section="service"] .gsol-service-media img { object-position: 56% center; }
body.gsol-commerce .gsol-service-showcase.is-targeted { border-color: var(--gsol-service-accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--gsol-service-accent) 18%, transparent), 0 24px 52px rgba(18,55,72,.16); }
body.gsol-commerce .gsol-service-showcase.is-targeted .gsol-service-image-copy h3 { text-decoration: underline; text-decoration-color: var(--gsol-service-accent); text-decoration-thickness: 3px; text-underline-offset: 7px; }
body.gsol-commerce .gsol-nav-menu > a.is-current { background: #eaf8fc; color: #087ca2; box-shadow: inset 3px 0 0 #08add8; }
@media (max-width: 1040px) {
  body.gsol-commerce .gsol-service-showcase,
  body.gsol-commerce .gsol-service-showcase.is-reverse { grid-template-columns: 1fr; grid-template-areas: "media" "content"; }
  body.gsol-commerce .gsol-service-media { min-height: 300px; }
}
@media (max-width: 700px) {
  body.gsol-commerce .gsol-service-showcase { grid-column: auto; min-height: 0; }
  body.gsol-commerce .gsol-service-media { min-height: 235px; }
  body.gsol-commerce .gsol-service-content { padding: 27px 20px 30px; }
  body.gsol-commerce .gsol-service-image-copy { right: 17px; bottom: 17px; left: 17px; }
  body.gsol-commerce .gsol-service-image-copy h3 { font-size: 22px; }
  body.gsol-commerce .gsol-service-media figcaption { top: 10px; right: 10px; max-width: calc(100% - 20px); padding: 8px 10px; font-size: 9.5px; }
  body.gsol-commerce .gsol-service-content > p { font-size: 13px; }
  body.gsol-commerce .gsol-service-scan { grid-template-columns: 1fr; }
  body.gsol-commerce .gsol-service-scan > span { min-height: 56px; padding: 9px 10px; }
  body.gsol-commerce .gsol-service-scan > span + span { border-top: 1px solid #d8e7ec; border-left: 0; }
  body.gsol-commerce .gsol-service-actions { width: 100%; }
  body.gsol-commerce .gsol-service-actions .gsol-button { width: 100%; justify-content: center; }
}

/* ==========================================================================
   Storefront compatibility.

   Storefront wraps the header, the content and the footer in .col-full, which
   caps them at ~1063px, adds side padding and clears floats with generated
   ::before/::after cells. The design manages its own width through .gsol-shell
   and needs full-bleed sections, so the wrapper has to become transparent —
   and the clearfix pseudo-elements have to go, because inside a grid or flex
   container they are laid out as real cells and eat the first item.
   ========================================================================== */

body.gsol-commerce .col-full {
  max-width: none;
  width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body.gsol-commerce .col-full::before,
body.gsol-commerce .col-full::after,
body.gsol-commerce ul.products::before,
body.gsol-commerce ul.products::after,
body.gsol-commerce .gsol-product-grid::before,
body.gsol-commerce .gsol-product-grid::after,
body.gsol-commerce .site-content::before,
body.gsol-commerce .site-content::after { content: none !important; display: none !important; }

body.gsol-commerce #content.site-content { padding: 0; margin: 0; }
body.gsol-commerce .site-header { padding: 0; border: 0; margin: 0; background: #fff; }
body.gsol-commerce .site-header .gsol-shell { padding-left: 20px; padding-right: 20px; }
body.gsol-commerce .site-footer { padding: 0; margin: 0; background: transparent; color: inherit; }
body.gsol-commerce .site-main { margin: 0; }
body.gsol-commerce #page { overflow-x: clip; }

/* Storefront's own header/footer scaffolding this theme does not render. */
body.gsol-commerce .storefront-handheld-footer-bar,
body.gsol-commerce .site-header-cart,
body.gsol-commerce .storefront-breadcrumb { display: none; }

/* The masthead is a plain wrapper here; the design paints inside it. */
body.gsol-commerce .site-header .gsol-header-row { margin: 0 auto; }

/* WooCommerce pages the design does not restyle (cart, checkout, account)
   still need the shop's width and typography rather than Storefront's. */
/* woocommerce-cart and friends are body classes, not ancestors — with a
   descendant combinator these rules matched nothing and the cart ran edge to
   edge. */
/* Scoped to the content wrapper: the header and the footer have their own
   .col-full, and constraining those boxed the masthead. */
body.gsol-commerce.woocommerce-cart #content .col-full,
body.gsol-commerce.woocommerce-checkout #content .col-full,
body.gsol-commerce.woocommerce-account #content .col-full,
body.gsol-commerce.woocommerce-page:not(.woocommerce-shop):not(.single-product) #content .col-full {
  width: min(100% - 40px, 1320px);
  margin: 0 auto;
  padding: 32px 0 56px;
  box-sizing: border-box;
}
body.gsol-commerce.woocommerce-cart .site-main,
body.gsol-commerce.woocommerce-checkout .site-main,
body.gsol-commerce.woocommerce-account .site-main { margin: 0; }
body.gsol-commerce.woocommerce-cart .entry-header:empty,
body.gsol-commerce.woocommerce-cart .entry-header .entry-title:empty { display: none; }

/* Body scroll lock while a drawer or the AI panel is open. */
body.gsol-commerce.gsol-locked { overflow: hidden; }

/* The design's gallery is a two-column grid: a 70px thumbnail rail, then the
   main image. Most catalogue products carry a single photo and get no rail, so
   without this the main image inherits the rail's column and renders 70px
   wide. */
body.gsol-commerce .gsol-gallery:not(:has(.gsol-thumbs)) { grid-template-columns: 1fr; }

body.gsol-commerce .gsol-catalog-form { display: contents; }
body.gsol-commerce #gsolCatalogResults.is-loading { opacity: .45; transition: opacity .12s; }
body.gsol-commerce .gsol-pagination-gap { color: var(--gsol-muted); padding: 0 4px; }
body.gsol-commerce .gsol-catalog-layout.is-plain { grid-template-columns: 1fr; }

body.gsol-commerce .gsol-empty {
  grid-column: 1 / -1; display: grid; justify-items: center; gap: 10px;
  padding: 54px 20px; background: #fff; border: 1px solid var(--gsol-border); border-radius: 8px; text-align: center;
}
body.gsol-commerce .gsol-empty .gsol-icon { width: 30px; height: 30px; color: var(--gsol-muted); }
body.gsol-commerce .gsol-empty h3 { margin: 0; font-size: 18px; }
body.gsol-commerce .gsol-empty p { margin: 0; max-width: 460px; color: var(--gsol-muted); font-size: 14px; }

/* Removable chips above the grid. */
body.gsol-commerce button.gsol-active-filter { border: 0; cursor: pointer; font: inherit; }

/* The hidden attribute must actually hide.
   The design sets display on .gsol-product-grid, .gsol-selected-product and
   .gsol-cart-count, and any such rule outranks the browser's default
   [hidden]{display:none}. Without this the home page showed all three product
   modes at once and the empty cart badge never went away. */
body.gsol-commerce [hidden] { display: none !important; }

/* Product suggestions inside an AI reply.
   The advisor plugin ships these rules in its own stylesheet, which this theme
   drops because it supplies the panel itself. Without them the suggestions
   render as one unbroken run of text. Colours follow the design's palette
   rather than the plugin's. */
body.gsol-commerce .gsol-ai-results { display: grid; gap: 7px; margin-top: 10px; }
body.gsol-commerce .gsol-ai-results a {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 10px 11px; border-radius: 7px;
  background: var(--gsol-white); border: 1px solid var(--gsol-border);
  color: var(--gsol-ink); text-decoration: none;
}
body.gsol-commerce .gsol-ai-results a:hover { border-color: var(--gsol-cyan-dark); background: var(--gsol-cyan-l, #e6f8fe); }
body.gsol-commerce .gsol-ai-results a span { font-size: 11.5px; font-weight: 700; line-height: 1.3; }
body.gsol-commerce .gsol-ai-results a b { flex: 0 0 auto; color: var(--gsol-cyan-dark); font-size: 12.5px; white-space: nowrap; }
body.gsol-commerce .gsol-ai-message strong { display: block; margin-bottom: 2px; }

/* Narrow viewports: the supplier feed writes values this design never saw.
   "KINGSTON NV3 M.2-2280 PCIe 4.0 NVMe 1000GB" and SKUs like
   GSOL-E90EA444F91E are single unbreakable-looking tokens, and a fixed 220px
   label column leaves them a hundred pixels on a phone. */
@media (max-width: 600px) {
  body.gsol-commerce .gsol-spec-table,
  body.gsol-commerce .gsol-spec-table tbody,
  body.gsol-commerce .gsol-spec-table tr { display: block; width: 100%; }
  body.gsol-commerce .gsol-spec-table th,
  body.gsol-commerce .gsol-spec-table td { display: block; width: auto; border-bottom: 0; padding: 10px 0 0; }
  body.gsol-commerce .gsol-spec-table td { padding: 2px 0 12px; border-bottom: 1px solid var(--gsol-border); }
}
body.gsol-commerce .gsol-spec-table td,
body.gsol-commerce .gsol-component-name,
body.gsol-commerce .gsol-specs b,
body.gsol-commerce .gsol-pdp-code,
body.gsol-commerce .gsol-product-title { overflow-wrap: anywhere; }

/* Nothing may push the page sideways, whatever a feed sends. */
body.gsol-commerce { overflow-x: hidden; }

/* Controls the preview built as <button> because it was a single-page mock.
   Here they are real links, so the design's selectors have to accept both. */
body.gsol-commerce .gsol-catalog-switch a {
  position: relative; min-width: 220px; display: flex; align-items: center; gap: 10px;
  padding: 12px 16px 14px; border: 0; background: transparent;
  color: var(--gsol-muted); font-size: 13px; font-weight: 700; text-align: left;
}
body.gsol-commerce .gsol-catalog-switch a:after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: transparent;
}
body.gsol-commerce .gsol-catalog-switch a.is-active { color: var(--gsol-ink); }
body.gsol-commerce .gsol-catalog-switch a.is-active:after { background: var(--gsol-cyan); }
body.gsol-commerce .gsol-tier { text-align: left; }
@media (max-width: 700px) { body.gsol-commerce .gsol-catalog-switch a { min-width: 190px; } }

/* Storefront paints every <button> with white text for its own filled buttons.
   The design gives most of its controls an explicit colour, but not the
   pagination — which left white numbers on a white chip. */
body.gsol-commerce .gsol-pagination button { color: var(--gsol-ink); }
body.gsol-commerce .gsol-pagination button.is-active { color: #fff; }
body.gsol-commerce .gsol-filter-head button,
body.gsol-commerce .gsol-filter-title,
body.gsol-commerce .gsol-help-question,
body.gsol-commerce .gsol-mode-tab,
body.gsol-commerce .gsol-filter-chip,
body.gsol-commerce .gsol-change-component,
body.gsol-commerce .gsol-active-filter { color: var(--gsol-ink); }
body.gsol-commerce .gsol-mode-tab.is-active,
body.gsol-commerce .gsol-filter-chip.is-active { color: #fff; }
body.gsol-commerce .gsol-filter-head button { background: none; border: 0; font-size: 12px; text-decoration: underline; }

/* Storefront's .site-footer a:not(.button):not(.components-button) is (0,3,1)
   and outranks the design's .gsol-footer-links a. Match its weight so the
   footer keeps the design's own colours and hover states. */
body.gsol-commerce .site-footer .gsol-footer-links a:not(.button),
body.gsol-commerce .site-footer .gsol-footer-brand p { color: #607480; }
body.gsol-commerce .site-footer .gsol-footer-links a:not(.button):hover,
body.gsol-commerce .site-footer .gsol-footer-contact:not(.button),
body.gsol-commerce .site-footer .gsol-ai-disclosure summary { color: #287d98; }
body.gsol-commerce .site-footer .gsol-footer h3,
body.gsol-commerce .site-footer .gsol-brand-name strong { color: var(--gsol-ink); }
body.gsol-commerce .site-footer .gsol-footer-bottom span { color: #7a8b95; }

/* 403 configurations paginate to 17 pages; a fixed 36px square wraps "17"
   onto two lines. Keep the square for single digits, let it grow past that. */
body.gsol-commerce .gsol-pagination button {
  width: auto; min-width: 36px; padding: 0 9px; white-space: nowrap;
}

/* ==========================================================================
   Element equivalence.

   The preview was a single-page mock, so everything clickable was a
   <button>. On a real site the same controls are links — the service
   index, the catalogue tabs, the tier cards, the hero call to action —
   and the design's rules, written against `button`, stopped applying.

   These are the design's own declarations, mirrored onto the other
   element type. Generated from the block above; regenerate rather than
   hand-edit.
   ========================================================================== */

body.gsol-commerce a { font: inherit; }
body.gsol-commerce a { -webkit-tap-highlight-color: transparent; }
body.gsol-commerce button { -webkit-tap-highlight-color: transparent; }
body.gsol-commerce a { cursor: pointer; }
body.gsol-commerce button { color: inherit; text-decoration: none; cursor: pointer; }
body.gsol-commerce .gsol-search a { height: 36px; margin-right: 4px; padding: 0 16px; border: 0; border-radius: 4px; background: var(--gsol-cyan); color: var(--gsol-ink); font-size: 13px; font-weight: 800; }
body.gsol-commerce .gsol-mega section button { display: block; padding: 5px 0; color: var(--gsol-muted); font-size: 12px; }
body.gsol-commerce .gsol-mega section button:hover { color: var(--gsol-cyan-dark); }
body.gsol-commerce .gsol-filter-head a { border: 0; background: transparent; color: var(--gsol-cyan-dark); font-size: 10px; font-weight: 700; }
body.gsol-commerce .gsol-active-filter.is-removable a { width: 18px; height: 18px; display: grid; place-items: center; padding: 0; border: 0; background: transparent; color: inherit; }
body.gsol-commerce .gsol-catalog-switch a { position: relative; min-width: 220px; display: flex; align-items: center; gap: 10px; padding: 12px 16px 14px; border: 0; background: transparent; color: var(--gsol-muted); text-align: left; }
body.gsol-commerce .gsol-catalog-switch a:after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: transparent; }
body.gsol-commerce .gsol-catalog-switch a.is-active { color: var(--gsol-ink); }
body.gsol-commerce .gsol-catalog-switch a.is-active:after { background: var(--gsol-cyan); }
body.gsol-commerce .gsol-pagination a { width: 36px; height: 36px; border: 1px solid var(--gsol-border); border-radius: 4px; background: #fff; font-size: 11px; }
body.gsol-commerce .gsol-pagination a.is-active { border-color: var(--gsol-ink); background: var(--gsol-ink); color: #fff; }
body.gsol-commerce .gsol-qty a { height: 42px; border: 0; background: #fff; }
body.gsol-commerce .gsol-footer-links button { display: block; margin: 8px 0; color: #aebbc3; font-size: 11px; }
body.gsol-commerce .gsol-footer-links button:hover { color: #fff; }
body.gsol-commerce .gsol-mega section button { min-height: 34px; padding: 7px 0; font-size: 12px; }
body.gsol-commerce .gsol-mobile-bar a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    min-height: 62px;
    padding: 7px 3px 6px;
    border: 0;
    background: transparent;
    color: #d5dde2;
    font-size: 9px;
    transition: color .18s ease, background-color .18s ease;
  }
body.gsol-commerce .gsol-mobile-bar a.is-active { color: #008fb5; }
body.gsol-commerce .gsol-mobile-bar a.is-active:after {
    content: "";
    position: absolute;
    top: 0;
    left: 32%;
    right: 32%;
    height: 3px;
    border-radius: 0 0 3px 3px;
    background: #04b7dc;
  }
body.gsol-commerce .gsol-catalog-switch a { min-width: 190px; }
body.gsol-commerce .gsol-search a {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.56) 0%, rgba(255,255,255,.08) 36%, rgba(255,255,255,.18) 58%, transparent 72%),
    linear-gradient(115deg, #04b7dc 0%, #55d4e6 48%, #d7ef71 100%);
  color: var(--gsol-ink);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    inset 0 -1px 0 rgba(0,91,118,.18),
    0 8px 20px rgba(0,127,157,.18),
    0 2px 5px rgba(16,24,32,.08);
  -webkit-backdrop-filter: blur(18px) saturate(165%);
  backdrop-filter: blur(18px) saturate(165%);
  text-shadow: 0 1px 0 rgba(255,255,255,.28);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease;
}
body.gsol-commerce .gsol-search a::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 1px 2px auto;
  height: 48%;
  border-radius: 8px 8px 55% 55%;
  background: linear-gradient(180deg, rgba(255,255,255,.66), rgba(255,255,255,.04));
  pointer-events: none;
}
body.gsol-commerce .gsol-search a::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -70%;
  bottom: -70%;
  left: -48%;
  width: 28%;
  transform: rotate(18deg);
  opacity: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.66), transparent);
  pointer-events: none;
  will-change: left, opacity;
}
body.gsol-commerce .gsol-search a:hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.92);
  color: var(--gsol-ink);
  filter: saturate(1.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 -1px 0 rgba(0,91,118,.2),
    0 13px 28px rgba(0,127,157,.23),
    0 3px 7px rgba(16,24,32,.1);
}
body.gsol-commerce .gsol-search a:hover::after {
  animation: gsolButtonGlint .68s cubic-bezier(.2,.72,.2,1) 1;
}
body.gsol-commerce .gsol-search a:focus-visible::after {
  animation: gsolButtonGlint .68s cubic-bezier(.2,.72,.2,1) 1;
}
body.gsol-commerce .gsol-search a:active {
  transform: translateY(0) scale(.985);
  box-shadow: inset 0 2px 6px rgba(16,24,32,.16), 0 3px 8px rgba(16,24,32,.1);
}
body.gsol-commerce .gsol-search a:focus-visible {
  outline: 3px solid rgba(0,169,206,.28);
  outline-offset: 3px;
}
body.gsol-commerce .gsol-search a { border-radius: 8px; }
body.gsol-commerce .gsol-pagination a {
  position: relative;
  border-color: rgba(116,138,150,.28);
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(236,246,248,.66));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 4px 12px rgba(16,24,32,.05);
  -webkit-backdrop-filter: blur(12px) saturate(135%);
  backdrop-filter: blur(12px) saturate(135%);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
body.gsol-commerce .gsol-pagination a:hover {
  transform: translateY(-1px);
  border-color: rgba(0,169,206,.48);
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 8px 17px rgba(0,127,157,.1);
}
body.gsol-commerce .gsol-pagination a.is-active {
  border-color: rgba(255,255,255,.26);
  background:
    linear-gradient(135deg, rgba(255,255,255,.2), transparent 45%, rgba(0,169,206,.18)),
    linear-gradient(115deg, #101820, #244a59);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.28);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 8px 18px rgba(16,24,32,.17);
}
body.gsol-commerce .gsol-qty a {
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
body.gsol-commerce .gsol-qty a:hover {
  transform: translateY(-1px);
  border-color: rgba(0,169,206,.42);
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(214,244,249,.68));
  color: var(--gsol-ink);
  box-shadow: inset 0 1px 0 #fff, 0 7px 16px rgba(0,127,157,.11);
}
body.gsol-commerce .gsol-ai-quick a {
  min-height: 30px;
  flex: 0 0 auto;
  padding: 0 9px;
  border: 1px solid rgba(41,126,194,.24);
  border-radius: 7px;
  background: linear-gradient(135deg, #fff, #eaf7ff);
  color: #075daf;
  font-size: 9px;
  box-shadow: inset 0 1px 0 #fff;
}
body.gsol-commerce .gsol-search a {
  border-color: rgba(222,243,255,.65);
  background:
    linear-gradient(135deg, rgba(255,255,255,.48) 0%, rgba(255,255,255,.1) 34%, rgba(110,196,255,.18) 63%, rgba(255,255,255,.08) 100%),
    rgba(10,132,255,.78);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,54,122,.38);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    inset 0 -1px 0 rgba(0,62,143,.2),
    0 9px 22px rgba(0,96,210,.18),
    0 2px 5px rgba(16,24,32,.06);
  -webkit-backdrop-filter: blur(18px) saturate(155%);
  backdrop-filter: blur(18px) saturate(155%);
  filter: none;
}
body.gsol-commerce .gsol-search a:hover {
  border-color: rgba(239,250,255,.9);
  background:
    linear-gradient(135deg, rgba(255,255,255,.57), rgba(255,255,255,.13) 38%, rgba(131,210,255,.22) 70%),
    rgba(10,132,255,.86);
  color: #fff;
  filter: none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -1px 0 rgba(0,62,143,.18),
    0 14px 28px rgba(0,105,220,.25),
    0 3px 7px rgba(16,24,32,.07);
}
body.gsol-commerce .gsol-search a:focus-visible {
  outline-color: rgba(10,132,255,.28);
}
body.gsol-commerce .gsol-pagination a.is-active {
  border-color: rgba(210,239,255,.38);
  background:
    linear-gradient(135deg, rgba(255,255,255,.28), transparent 45%, rgba(111,200,255,.17)),
    rgba(10,120,235,.78);
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,50,112,.34);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44), 0 8px 18px rgba(0,91,190,.14);
  -webkit-backdrop-filter: blur(14px) saturate(150%);
  backdrop-filter: blur(14px) saturate(150%);
}
body.gsol-commerce .gsol-pagination a:hover {
  border-color: rgba(10,132,255,.27);
  color: #174f7e;
  box-shadow: inset 0 1px 0 #fff, 0 7px 15px rgba(0,91,162,.07);
}
body.gsol-commerce .gsol-ai-quick a { border-color: rgba(10,132,255,.19); color: #145d9c; }
body.gsol-commerce .gsol-search a {
  border: 1px solid rgba(225,247,252,.74);
  border-radius: 15px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.46) 0%, rgba(255,255,255,.1) 44%, rgba(255,255,255,.02) 49%),
    linear-gradient(115deg, #2f7890 0%, #4192a9 54%, #61afc0 100%);
  color: #fff;
  text-shadow: 0 1px 2px rgba(15,57,72,.46);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -2px 0 rgba(20,82,101,.2),
    0 8px 18px rgba(33,104,129,.16),
    0 2px 4px rgba(28,58,70,.07);
  -webkit-backdrop-filter: blur(18px) saturate(132%);
  backdrop-filter: blur(18px) saturate(132%);
  filter: none;
}
body.gsol-commerce .gsol-search a::before {
  inset: 1px 3px auto;
  height: 44%;
  border-radius: 12px 12px 50% 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.56), rgba(255,255,255,.04));
}
body.gsol-commerce .gsol-search a:hover {
  border-color: rgba(239,252,255,.94);
  background:
    linear-gradient(180deg, rgba(255,255,255,.54), rgba(255,255,255,.1) 45%, rgba(255,255,255,.02) 50%),
    linear-gradient(115deg, #38849b 0%, #4da1b7 54%, #70bdce 100%);
  color: #fff;
  filter: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -2px 0 rgba(20,82,101,.16), 0 13px 25px rgba(42,117,143,.21);
}
body.gsol-commerce .gsol-search a { border-radius: 13px; }
body.gsol-commerce .gsol-pagination a {
  border-radius: 11px;
}
body.gsol-commerce .gsol-pagination a.is-active {
  border-color: rgba(221,245,250,.7);
  background:
    linear-gradient(180deg, rgba(255,255,255,.4), rgba(255,255,255,.05) 48%, transparent 51%),
    linear-gradient(115deg, #38768c, #4b93a8 58%, #67adbe);
  color: #fff;
  text-shadow: 0 1px 2px rgba(20,63,79,.36);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.66), 0 7px 16px rgba(38,103,127,.13);
}
body.gsol-commerce .gsol-footer-links button { color: #607480; }
body.gsol-commerce .gsol-footer-links button:hover { color: #287d98; }
body.gsol-commerce .gsol-mobile-bar a { color: #476574; }
body.gsol-commerce .gsol-mobile-bar a.is-active { color: #008fb5; background: rgba(4,183,220,.055); }
body.gsol-commerce .gsol-search a {
  border-radius: 17px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.58) 0%, rgba(255,255,255,.14) 44%, rgba(255,255,255,.03) 49%),
    linear-gradient(115deg, #438fa5 0%, #5bacbc 56%, #81c8ce 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -2px 0 rgba(28,102,117,.16), 0 8px 18px rgba(49,123,144,.14), 0 2px 4px rgba(28,58,70,.06);
}
body.gsol-commerce .gsol-search a:hover {
  background:
    linear-gradient(180deg, rgba(255,255,255,.65), rgba(255,255,255,.15) 45%, rgba(255,255,255,.03) 50%),
    linear-gradient(115deg, #4d9caf 0%, #6bbac6 56%, #94d3d7 100%);
  box-shadow: inset 0 1px 0 #fff, inset 0 -2px 0 rgba(28,102,117,.12), 0 13px 25px rgba(52,130,151,.19);
}
body.gsol-commerce .gsol-pagination a.is-active {
  background:
    linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,.08) 48%, transparent 51%),
    linear-gradient(115deg, #4f92a5, #68afbc 58%, #83c5ca);
}
body.gsol-commerce .gsol-search a {
  letter-spacing: 0;
  line-height: 1.15;
}
body.gsol-commerce .gsol-search a {
  padding-inline: 15px;
  font-size: 13px;
  white-space: nowrap;
}
body.gsol-commerce .gsol-pagination a { font-size: 11px; }
body.gsol-commerce .gsol-help-direct-links button {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  min-height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--gsol-ink);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}
body.gsol-commerce .gsol-help-direct-links a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  min-height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--gsol-ink);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}
body.gsol-commerce .gsol-help-direct-links button:hover { color: #247e99; }
body.gsol-commerce .gsol-help-direct-links a:hover { color: #247e99; }
body.gsol-commerce .gsol-help-side button { color: #287f99; font-size: 12px; font-weight: 800; }
body.gsol-commerce .gsol-search a {
  border-color: #5ed3ea;
  background:
    linear-gradient(180deg, rgba(255,255,255,.25), transparent 48%),
    linear-gradient(120deg, #04b7dc, #08bce0 58%, #2bc6e4);
  color: #062b3a;
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 7px 17px rgba(0,142,181,.18);
}
body.gsol-commerce .gsol-search a:hover {
  border-color: #21c3e4;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), transparent 48%),
    linear-gradient(120deg, #009fc7, #04b7dc 58%, #21c4e2);
  color: #041f2b;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48), 0 10px 22px rgba(0,142,181,.23);
}
body.gsol-commerce .gsol-filter-head a {
  color: var(--gsol-cyan-dark);
}
body.gsol-commerce .gsol-footer-links button:hover {
  color: var(--gsol-cyan-dark);
}
body.gsol-commerce .gsol-help-side button {
  color: var(--gsol-cyan-dark);
}
body.gsol-commerce .gsol-help-direct-links button:hover {
  color: #008fb5;
}
body.gsol-commerce .gsol-help-direct-links a:hover {
  color: #008fb5;
}
body.gsol-commerce .gsol-search a { min-width: 68px; padding: 0 12px; font-size: 12px; }
body.gsol-commerce .gsol-help-direct-links button {
    min-height: 44px;
    font-size: 12px;
    overflow-wrap: anywhere;
  }
body.gsol-commerce .gsol-help-direct-links a {
    min-height: 44px;
    font-size: 12px;
    overflow-wrap: anywhere;
  }
body.gsol-commerce .gsol-footer-links button {
    margin: 10px 0;
    font-size: 13px;
    line-height: 1.5;
    overflow-wrap: anywhere;
  }
body.gsol-commerce .gsol-mobile-bar a { font-size: 10px; line-height: 1.2; }
body.gsol-commerce .gsol-nav-menu > button {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 43px;
  padding: 9px 12px;
  border-radius: 6px;
  color: #263d49;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}
body.gsol-commerce .gsol-nav-menu > button:not(.gsol-nav-menu-all):before {
  content: "";
  width: 5px;
  height: 5px;
  flex: 0 0 auto;
  margin-right: 10px;
  border-radius: 50%;
  background: #a9bdc6;
}
body.gsol-commerce .gsol-nav-menu > button:hover {
  background: #eaf8fb;
  color: #007f9f;
  outline: 0;
}
body.gsol-commerce .gsol-nav-menu > button:focus-visible {
  background: #eaf8fb;
  color: #007f9f;
  outline: 0;
}
body.gsol-commerce .gsol-nav-menu > button:hover:before { background: var(--gsol-cyan); }
body.gsol-commerce .gsol-nav-menu > button:focus-visible:before { background: var(--gsol-cyan); }
body.gsol-commerce .gsol-nav-menu > button {
    min-height: 42px;
    padding: 8px 12px;
    font-size: 12px;
  }
body.gsol-commerce .gsol-profile-index a { --gsol-index-accent: #08add8; display: flex; align-items: center; gap: 9px; min-height: 48px; padding: 10px 12px; border: 1px solid #d5e3e9; border-radius: 6px; background: #f7fbfc; color: var(--gsol-ink); cursor: pointer; font-size: 11px; font-weight: 800; text-align: left; transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease; }
body.gsol-commerce .gsol-profile-index a[data-section="it-support"] { --gsol-index-accent: #167bb5; }
body.gsol-commerce .gsol-profile-index a[data-section="infrastructure"] { --gsol-index-accent: #486fa8; }
body.gsol-commerce .gsol-profile-index a[data-section="backup"] { --gsol-index-accent: #14a879; }
body.gsol-commerce .gsol-profile-index a[data-section="security"] { --gsol-index-accent: #b97918; }
body.gsol-commerce .gsol-profile-index a[data-section="web"] { --gsol-index-accent: #158a79; }
body.gsol-commerce .gsol-profile-index a[data-section="network"] { --gsol-index-accent: #337fa2; }
body.gsol-commerce .gsol-profile-index a[data-section="service"] { --gsol-index-accent: #bf5d4b; }
body.gsol-commerce .gsol-profile-index a[data-section="print"] { --gsol-index-accent: #6a6c9d; }
body.gsol-commerce .gsol-profile-index a:hover { border-color: var(--gsol-index-accent); background: color-mix(in srgb, var(--gsol-index-accent) 9%, #fff); color: #274653; transform: translateY(-1px); }
body.gsol-commerce .gsol-profile-index a.is-current { border-color: var(--gsol-index-accent); background: color-mix(in srgb, var(--gsol-index-accent) 12%, #fff); color: #183d4a; box-shadow: inset 3px 0 0 var(--gsol-index-accent); }
body.gsol-commerce .gsol-profile-index a { flex: 0 0 176px; scroll-snap-align: start; }
body.gsol-commerce .gsol-nav-menu > button.is-current { background: #eaf8fc; color: #087ca2; box-shadow: inset 3px 0 0 #08add8; }

/* The admin bar is 32px of fixed chrome above everything. The drawer, the AI
   panel and the filter sheet are all `top: 0`, so for a logged-in user their
   headers were sliding underneath it. Visitors never see this; the shop owner
   sees it constantly. */
body.admin-bar.gsol-commerce .gsol-inquiry,
body.admin-bar.gsol-commerce .gsol-ai-panel,
body.admin-bar.gsol-commerce .gsol-filter-panel.is-open,
body.admin-bar.gsol-commerce .gsol-drawer-backdrop { top: 32px; }
@media (max-width: 782px) {
  body.admin-bar.gsol-commerce .gsol-inquiry,
  body.admin-bar.gsol-commerce .gsol-ai-panel,
  body.admin-bar.gsol-commerce .gsol-filter-panel.is-open,
  body.admin-bar.gsol-commerce .gsol-drawer-backdrop { top: 46px; }
}

/* Cart pieces the design specified but the mock never rendered live. */
body.gsol-commerce .gsol-cart-item-actions { display: flex; align-items: center; gap: 12px; margin-top: 10px; flex-wrap: wrap; }
body.gsol-commerce .gsol-cart-item-actions .quantity input { width: 68px; height: 34px; padding: 0 8px; border: 1px solid var(--gsol-border); border-radius: 6px; text-align: center; }
body.gsol-commerce .gsol-cart-tools { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
body.gsol-commerce .gsol-cart-tools .coupon { display: flex; gap: 8px; flex: 1 1 auto; }
body.gsol-commerce .gsol-cart-tools input[type="text"] { min-width: 0; flex: 1 1 160px; height: 40px; padding: 0 12px; border: 1px solid var(--gsol-border); border-radius: 6px; }
body.gsol-commerce .gsol-cart-list .woocommerce-cart-form { margin: 0; }

/* Storefront underlines every link. The design's buttons, cards and cart rows
   are links here, and an underline through a filled button is not a style the
   design ever had. */
/* Storefront underlines every link inside .entry-content. Each of these pages
   is design-rendered markup, not prose, so the underline is off by default and
   comes back only where there is genuine running text: the FAQ answers and the
   AI disclosure. A chain of :not() exclusions was tried first and lost to
   itself — seven :not(.class) outweighed the very rules meant to win. */
body.gsol-commerce a,
body.gsol-commerce .hentry .entry-content a { text-decoration: none; }
body.gsol-commerce .gsol-help-answer a,
body.gsol-commerce .gsol-ai-disclosure-content a,
body.gsol-commerce .gsol-pdp-description a { text-decoration: underline; }
body.gsol-commerce .gsol-cart-item h3 a,
body.gsol-commerce .gsol-cart-remove,
body.gsol-commerce .gsol-order-box .gsol-button { text-decoration: none; }
body.gsol-commerce .gsol-cart-remove { color: var(--gsol-red); font-size: 12px; font-weight: 700; }
body.gsol-commerce .gsol-cart-remove:hover { text-decoration: underline; }

/* WooCommerce pages keep Storefront's article scaffolding; with the cart title
   removed it left a tall empty header block above the design's own heading. */
body.gsol-commerce.woocommerce-cart .entry-header { display: none; }
body.gsol-commerce.woocommerce-cart .woocommerce-notices-wrapper:empty { display: none; }
body.gsol-commerce.woocommerce-cart .type-page,
body.gsol-commerce.woocommerce-cart .entry-content { margin: 0; padding: 0; }

/* Storefront underlines links inside .entry-content, which is where the cart
   and checkout live. */
body.gsol-commerce .entry-content .gsol-cart-item h3 a,
body.gsol-commerce .entry-content .gsol-button,
body.gsol-commerce .entry-content .gsol-cart-remove,
body.gsol-commerce .entry-content a[class*="gsol-"] { text-decoration: none; }
body.gsol-commerce .gsol-cart-item h3 a:hover { color: var(--gsol-cyan-dark); }

/* ---------------------------------------------------------------------------
   Pagination: one box per page, whatever tag WordPress used.

   `paginate_links()` renders the pages you can go to as <a>, but the page you
   are ON as <span class="current">, and the ellipsis as <span class="dots">.
   Every rule above styles `.gsol-pagination a`, so the current page had no
   border, no size and no centring — it sat as bare text, half a line below the
   row of buttons, which is exactly how "4" looked between 3 and 5.

   The geometry below is applied to every child of the row, so the boxes line up
   no matter which tag a given item happens to be.
   --------------------------------------------------------------------------- */
body.gsol-commerce .gsol-pagination { align-items: center; }
body.gsol-commerce .gsol-pagination > a,
body.gsol-commerce .gsol-pagination > span,
body.gsol-commerce .gsol-pagination > button {
  display: inline-flex; align-items: center; justify-content: center;
  box-sizing: border-box; width: 36px; height: 36px; padding: 0;
  font-size: 11px; font-weight: 700; line-height: 1; text-decoration: none;
}
/* The ellipsis is a marker, not a target: no box, no hover, no pointer. */
body.gsol-commerce .gsol-pagination > .gsol-pagination-gap {
  width: auto; min-width: 22px; padding: 0 2px;
  border: 0; background: none; box-shadow: none;
  color: var(--gsol-muted); font-weight: 400; cursor: default;
}
/* The current page, matching the active anchor's treatment so the row reads as
   one control rather than a button strip with a hole in it. */
body.gsol-commerce .gsol-pagination > span.is-active {
  border: 1px solid rgba(255,255,255,.26); border-radius: 11px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,.08) 48%, transparent 51%),
    linear-gradient(115deg, #4f92a5, #68afbc 58%, #83c5ca);
  color: #fff;
  text-shadow: 0 1px 2px rgba(20,63,79,.36);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.66), 0 7px 16px rgba(38,103,127,.13);
  cursor: default;
}

/* ---------------------------------------------------------------------------
   Standards panel: +2-3px on the text, nothing else.

   The block above ("Compact, readable GSOL standards panel") left the panel's
   copy at 8-11px against a 15px page. Only the font sizes move here — layout,
   colours, spacing, borders and gradients are all left exactly as they were.
   --------------------------------------------------------------------------- */
body.gsol-commerce .gsol-catalog-switch strong { font-size: 15px; }
body.gsol-commerce .gsol-catalog-switch small { font-size: 11px; }

body.gsol-commerce .gsol-gaming-label { font-size: 10px; }
body.gsol-commerce .gsol-gaming-standard .gsol-gaming-intro > p { font-size: 13.5px; }
body.gsol-commerce .gsol-gaming-quality { font-size: 12px; }
body.gsol-commerce .gsol-gaming-quality small { font-size: 11px; }

body.gsol-commerce .gsol-tier-title { font-size: 16px; }
body.gsol-commerce .gsol-tier-badge { font-size: 9px; }
body.gsol-commerce .gsol-tier-kicker { font-size: 11px; }
body.gsol-commerce .gsol-tier-description { font-size: 11.5px; }
body.gsol-commerce .gsol-tier-action { font-size: 11px; }
body.gsol-commerce .gsol-tier-common { font-size: 10.5px; }

/* ---------------------------------------------------------------------------
   Two closing lines inside an AI answer: the quiet footnote under a list of
   products, and the handover to a person when the shop has no verified answer.
   Both are said after the answer, so they read as a note rather than as more
   of the answer itself.
   --------------------------------------------------------------------------- */
body.gsol-commerce .gsol-ai-more,
body.gsol-commerce .gsol-ai-call {
  margin: 9px 0 0;
  font-size: 12px;
  line-height: 1.5;
  color: #5c7280;
}
body.gsol-commerce .gsol-ai-call {
  margin-top: 10px;
  padding: 9px 11px;
  border-radius: 8px;
  border: 1px solid rgba(0, 169, 206, .22);
  background: #eaf8fc;
  color: #21414f;
}
body.gsol-commerce .gsol-ai-call a {
  color: #087ca2;
  text-decoration: none;
  white-space: nowrap;
}
body.gsol-commerce .gsol-ai-call a:hover { text-decoration: underline; }

/* ---------------------------------------------------------------------------
   Бърза поръчка: пълноширок бутон под количката, и тикчето за условията.
   The quick path is a second, equal way to buy rather than a footnote, so it
   gets its own full-width button under the cart row instead of being tucked in
   among the secondary links.
   --------------------------------------------------------------------------- */
body.gsol-commerce .gsol-button.is-quick {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  width: 100%; margin-top: 9px;
  border: 1px solid rgba(0, 169, 206, .45);
  background: #eaf8fc;
  color: #08627f;
}
body.gsol-commerce .gsol-button.is-quick:hover {
  border-color: rgba(0, 169, 206, .75);
  background: #ddf3fa;
}
body.gsol-commerce .gsol-terms {
  display: flex; align-items: flex-start; gap: 9px;
  margin: 4px 0 2px;
  font-size: 12px; line-height: 1.5; color: #46555f;
}
body.gsol-commerce .gsol-terms input { margin-top: 2px; flex: 0 0 auto; }
body.gsol-commerce .gsol-terms a { color: #087ca2; }

/* Полето за ЕГН се показва само при „фактура на физическо лице", по същия
   начин, по който фирмените полета чакат избора „на фирма". */
body.gsol-commerce .gsol-person-field { display: none; }
body.gsol-commerce form.checkout.gsol-person-open .gsol-person-field {
  display: block;
  padding-left: 26px;
  border-left: 2px solid #d7e7ec;
}
body.gsol-commerce .gsol-checkout .gsol-person-field { grid-column: 1 / -1; }

/* ---------------------------------------------------------------------------
   Съгласието за бисквитки и AI бутонът се караха за един и същи ъгъл.
   Панелът стоеше на z-index 140, бутонът на 1002 — и бутонът покриваше
   „Настройки" и „Приемам", тоест точно това, което клиентът трябва да натисне,
   преди да види сайта. Съгласието е врата, а не украса: докато е отворено, то
   е най-отгоре и нищо не стои пред него.
   --------------------------------------------------------------------------- */
body.gsol-commerce .gsol-cookie-panel { z-index: 1010; }

/* А бутонът се дръпва, вместо да чака зад панела: разговорът с консултанта
   няма смисъл, преди човекът да е решил за бисквитките. */
body.gsol-commerce:has(.gsol-cookie-panel.is-open) .gsol-ai-launcher {
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}
