:root {
  --sb-bg: #eaf1f7;
  --sb-bg-2: #dfe9f1;
  --sb-surface: rgba(255,255,255,.72);
  --sb-surface-2: rgba(255,255,255,.88);
  --sb-line: rgba(111,135,153,.22);
  --sb-line-strong: rgba(20,32,43,.16);
  --sb-text: #14202b;
  --sb-muted: #6f8799;
  --sb-accent: #8fd3ff;
  --sb-accent-2: #ff6a3d;
  --sb-white: #f9fcff;
  --sb-shadow-1: 0 24px 60px rgba(111,135,153,.18);
  --sb-shadow-2: 0 8px 24px rgba(20,32,43,.08);
  --sb-shadow-3: 0 14px 40px rgba(20,32,43,.16);
  --sb-cut: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px));
  --sb-cut-sm: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
  --sb-container: 1280px;
}

.sb-home, .sb-archive, .sb-page, .sb-home *, .sb-archive *, .sb-page * { box-sizing: border-box; }
.sb-home, .sb-archive, .sb-page { color: var(--sb-text); }
.sb-home a, .sb-archive a, .sb-page a { color: inherit; text-decoration: none; }
.sb-home img, .sb-archive img, .sb-page img { display: block; max-width: 100%; }

.sb-container { width: min(var(--sb-container), calc(100% - 32px)); margin-inline: auto; }
.sb-section { padding: 88px 0; position: relative; }
.sb-section-tight { padding-top: 0; }
.sb-grid { display: grid; gap: 24px; }
.sb-grid-hero, .sb-hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 36px; }
.sb-flex-between { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.sb-no-scrollbar { scrollbar-width: none; }
.sb-no-scrollbar::-webkit-scrollbar { display: none; }

.sb-cut-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.76);
  background: var(--sb-surface);
  backdrop-filter: blur(16px);
  clip-path: var(--sb-cut);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), var(--sb-shadow-1), var(--sb-shadow-2);
}
.sb-cut-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.72), transparent 38%, rgba(143,211,255,.18) 78%, transparent);
  pointer-events: none;
}
.sb-cut-card > * { position: relative; z-index: 1; }

.sb-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border: 1px solid rgba(143,211,255,.42);
  background: rgba(255,255,255,.84);
  color: #556a79;
  font-size: 11px;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  clip-path: var(--sb-cut-sm);
}
.sb-chip.is-muted { border-color: rgba(111,135,153,.22); color: var(--sb-muted); }
.sb-chip-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }

.sb-button, .sb-button-secondary, .sb-icon-button, .sb-nav a, .sb-style-card, .sb-fit-tab, .sb-faq-button {
  transition: transform .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease, color .22s ease, opacity .22s ease;
}
.sb-button:hover, .sb-button-secondary:hover, .sb-icon-button:hover, .sb-nav a:hover, .sb-style-card:hover, .sb-fit-tab:hover, .sb-faq-button:hover {
  transform: translateY(-2px);
}
.sb-button, .sb-button-secondary, .sb-icon-button, .sb-input {
  border: 1px solid var(--sb-line-strong);
  clip-path: var(--sb-cut-sm);
}
.sb-button {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:14px 24px; background:var(--sb-text); color:#fff;
  font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:.16em;
  box-shadow: var(--sb-shadow-3);
}
.sb-button-secondary {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:14px 24px; background:rgba(255,255,255,.82); color:var(--sb-text);
  font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:.16em;
}
.sb-icon-button { display:grid; place-items:center; width:46px; height:46px; background:rgba(255,255,255,.82); color:var(--sb-text); }
.sb-arrow, .sb-icon-arrow { display:inline-block; transform:translateY(-1px); }

.sb-topbar {
  position: sticky; top: 0; z-index: 40;
  border-bottom: 1px solid rgba(255,255,255,.46);
  background: rgba(255,255,255,.56);
  backdrop-filter: blur(14px);
}
.sb-trust-row { border-bottom: 1px solid rgba(111,135,153,.16); background: rgba(255,255,255,.38); }
.sb-trust-row-inner {
  display:flex; flex-wrap:wrap; justify-content:center; gap:10px 22px;
  padding:10px 0; color:#617887; font-size:11px; letter-spacing:.22em; text-transform:uppercase;
}
.sb-trust-row-inner span { display:inline-flex; align-items:center; gap:8px; }
.sb-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 0; position:relative; }
.sb-brand { display:flex; align-items:center; gap:14px; }
.sb-brand-mark {
  width:46px; height:46px; display:grid; place-items:center;
  border:1px solid rgba(20,32,43,.14); background:rgba(255,255,255,.84);
  clip-path: var(--sb-cut-sm); font-size:18px; font-weight:700;
}
.sb-brand-text small { display:block; font-size:11px; letter-spacing:.3em; text-transform:uppercase; color:var(--sb-muted); margin-bottom:4px; }
.sb-brand-text strong { display:block; font-size:18px; line-height:1.1; letter-spacing:-.02em; }
.sb-nav { display:flex; align-items:center; gap:8px; }
.sb-nav a {
  display:inline-flex; align-items:center; padding:10px 16px;
  border:1px solid transparent; color:#425565; font-size:14px; clip-path:var(--sb-cut-sm);
}
.sb-nav a:hover { border-color: rgba(111,135,153,.28); background: rgba(255,255,255,.68); }
.sb-header-actions { display:flex; align-items:center; gap:12px; }
.sb-header-actions .sb-button-secondary { padding:12px 18px; font-size:12px; }
.sb-mobile-menu-button { display:none; }

.sb-hero, .sb-collection-hero { position:relative; overflow:clip; }
.sb-hero::before, .sb-collection-hero::before, .sb-hero::after, .sb-collection-hero::after {
  content:""; position:absolute; border-radius:999px; filter:blur(72px); pointer-events:none; z-index:0;
}
.sb-hero::before, .sb-collection-hero::before { width:540px; height:540px; background:rgba(255,255,255,.72); left:-8%; top:-4%; }
.sb-hero::after, .sb-collection-hero::after { width:520px; height:520px; background:rgba(143,211,255,.3); right:-8%; top:10%; }
.sb-hero .sb-container, .sb-collection-hero .sb-container { position:relative; z-index:1; }

.sb-hero-copy h1, .sb-section-title h2, .sb-fit-copy h2, .sb-faq-copy h2 {
  text-wrap: pretty;
}
.sb-hero-copy h1 {
  margin:22px 0 0; max-width:920px;
  font-size:clamp(48px,7vw,92px); line-height:.95; letter-spacing:-.05em; font-weight:650;
}
.sb-hero-copy p {
  margin:24px 0 0; max-width:760px; font-size:18px; line-height:1.8; color:#607787;
}
.sb-hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.sb-hero-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:34px; }
.sb-mini-card { padding:18px; }
.sb-mini-card strong { display:block; font-size:11px; color:#5f7584; letter-spacing:.22em; text-transform:uppercase; }
.sb-mini-card span { display:block; margin-top:10px; color:#344755; font-size:14px; line-height:1.65; }

.sb-hero-visual { position:relative; min-height:620px; }
.sb-board-aura, .sb-board-aura-2 { position:absolute; border-radius:999px; filter:blur(54px); }
.sb-board-aura { left:7%; top:12%; width:76%; height:72%; background:rgba(143,211,255,.36); }
.sb-board-aura-2 { right:8%; top:19%; width:52%; height:68%; background:rgba(255,255,255,.82); }
.sb-board {
  position:absolute; left:10%; top:6%; width:clamp(180px,35%,240px); height:78%;
  border-radius:999px; border:1px solid rgba(20,32,43,.14);
  background: linear-gradient(180deg, #d7e4ee 0%, #ffffff 24%, #9ccbe7 55%, #182733 100%);
  box-shadow: 0 24px 70px rgba(20,32,43,.22);
  transform: rotate(-8deg) translateZ(0);
  animation: sbFloatBoard 6s ease-in-out infinite;
}
.sb-board-inner {
  display:flex; flex-direction:column; justify-content:space-between;
  height:100%; margin:14px; border-radius:999px; padding:22px 18px; color:white;
  background: radial-gradient(circle at top, rgba(255,255,255,.88), transparent 28%), linear-gradient(180deg, rgba(255,255,255,.18), transparent 30%, rgba(255,255,255,.06) 100%);
  border:1px solid rgba(255,255,255,.34);
}
.sb-board-top, .sb-board-bottom, .sb-board-center small, .sb-board-center strong, .sb-board-center span {
  display:block; text-align:center; text-transform:uppercase;
}
.sb-board-top, .sb-board-bottom { font-size:11px; letter-spacing:.28em; color:rgba(255,255,255,.8); }
.sb-board-center small { font-size:11px; letter-spacing:.3em; color:rgba(255,255,255,.64); }
.sb-board-center strong { margin-top:10px; font-size:34px; letter-spacing:.18em; }
.sb-board-divider { width:1px; height:120px; background:rgba(255,255,255,.28); margin:18px auto; }
.sb-board-center span { font-size:11px; letter-spacing:.24em; color:rgba(255,255,255,.72); }
.sb-hero-side-card { position:absolute; right:0; bottom:20px; width:min(360px,92%); padding:26px; }
.sb-hero-side-card h3, .sb-hero-side-panel h3 { margin:8px 0 0; font-size:30px; line-height:1.08; letter-spacing:-.03em; }
.sb-hero-side-panel, .sb-subcat-card, .sb-guide-card, .sb-empty-state, .sb-filter-bar, .sb-product-card-snow, .sb-guide-table-card { padding:24px; }
.sb-hero-side-panel p, .sb-subcat-card p, .sb-guide-card p, .sb-empty-state p {
  margin-top:14px; color:var(--sb-muted); line-height:1.8;
}
.sb-icon-flare { font-size:24px; color:var(--sb-accent-2); }

.sb-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.sb-section-title h2, .sb-fit-copy h2, .sb-faq-copy h2 {
  margin:18px 0 0; font-size:clamp(34px,4.2vw,62px); line-height:.98; letter-spacing:-.045em; font-weight:650;
}
.sb-section-title p, .sb-fit-copy p, .sb-faq-copy p { margin:18px 0 0; max-width:680px; color:#607787; font-size:16px; line-height:1.8; }

.sb-referral-wrap { padding:34px clamp(22px,3vw,40px); }
.sb-referral-grid { grid-template-columns: 1fr 1.15fr; align-items:center; gap:28px; }
.sb-referral-copy small, .sb-card-meta, .sb-foot-label, .sb-style-meta, .sb-product-meta, .sb-process-number {
  display:block; font-size:11px; line-height:1.2; letter-spacing:.22em; text-transform:uppercase; color:#627988;
}
.sb-referral-copy strong {
  display:block; margin-top:14px; font-size:clamp(56px,8vw,96px); line-height:.92; letter-spacing:-.06em; font-weight:680;
}
.sb-referral-copy strong em { color:var(--sb-accent-2); font-style:normal; }
.sb-referral-copy p { max-width:560px; margin-top:16px; color:#607787; font-size:16px; line-height:1.8; }
.sb-referral-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.sb-step-card { padding:20px; }
.sb-step-top { display:flex; align-items:center; justify-content:space-between; }
.sb-step-badge { width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(20,32,43,.14); background:rgba(255,255,255,.9); font-size:12px; font-weight:700; letter-spacing:.22em; }
.sb-step-card h3 { margin:18px 0 0; font-size:20px; line-height:1.15; letter-spacing:-.02em; }
.sb-step-card p { margin:12px 0 0; color:#607787; font-size:14px; line-height:1.7; }

.sb-style-controls { display:flex; gap:10px; }
.sb-style-layout, .sb-fit-layout, .sb-faq-layout { display:grid; gap:24px; grid-template-columns:1.15fr .85fr; }
.sb-style-rail { padding:24px; }
.sb-style-track { display:grid; grid-template-columns:repeat(3,minmax(220px,1fr)); gap:16px; }
.sb-style-card {
  display:block; padding:20px; border:1px solid rgba(111,135,153,.16); background:rgba(255,255,255,.68); color:var(--sb-text);
  clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 14px 100%, 0 calc(100% - 14px));
}
.sb-style-card.is-active { border-color:rgba(143,211,255,.48); background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(143,211,255,.18)); }
.sb-style-card h3 { margin:12px 0 0; font-size:28px; line-height:1.06; letter-spacing:-.03em; }
.sb-style-tags, .sb-product-tags, .sb-review-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.sb-style-card p { margin:16px 0 0; color:#607787; font-size:14px; line-height:1.7; }
.sb-style-link { display:inline-flex; align-items:center; gap:8px; margin-top:16px; font-size:14px; font-weight:600; color:#425565; }
.sb-style-focus { padding:28px; display:flex; flex-direction:column; justify-content:space-between; }
.sb-style-focus h3 { margin:12px 0 0; font-size:48px; line-height:.98; letter-spacing:-.04em; }
.sb-style-focus p { margin:18px 0 0; color:#607787; font-size:16px; line-height:1.8; }
.sb-style-focus-note { margin-top:18px; padding:16px; border:1px solid rgba(111,135,153,.16); background:rgba(255,255,255,.68); color:#607787; font-size:14px; line-height:1.7; }

.sb-products-grid, .sb-collection-grid { display:grid; gap:18px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.sb-product-card, .sb-product-card-snow { padding:20px; height:100%; }
.sb-product-card.is-offset { transform: translateY(26px); }
.sb-product-visual-shell, .sb-product-media-shell {
  padding:18px; border:1px solid rgba(111,135,153,.16); border-radius:34px;
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(143,211,255,.18) 42%, rgba(20,32,43,.95));
  box-shadow:0 16px 40px rgba(20,32,43,.12);
}
.sb-product-board {
  width:80px; height:260px; margin:0 auto; display:grid; place-items:center; border-radius:999px; border:1px solid rgba(255,255,255,.3);
  background: radial-gradient(circle at top, rgba(255,255,255,.7), transparent 24%), linear-gradient(180deg, #e5eef4 0%, #f8fcff 22%, #96c8e4 58%, #16252f 100%);
  box-shadow:0 16px 40px rgba(20,32,43,.18);
}
.sb-product-board span { display:inline-block; transform:rotate(90deg); color:rgba(255,255,255,.8); font-size:11px; letter-spacing:.34em; text-transform:uppercase; white-space:nowrap; }
.sb-product-image { width:100%; height:320px; object-fit:cover; border-radius:18px; }
.sb-product-image-placeholder { min-height:320px; background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(143,211,255,.18) 42%, rgba(20,32,43,.95)); }
.sb-product-copy { margin-top:20px; }
.sb-product-copy h3 { margin:10px 0 0; font-size:28px; line-height:1.06; letter-spacing:-.03em; }
.sb-product-blurb { color:#607787; font-size:14px; line-height:1.7; margin-top:12px; }
.sb-price-row, .sb-product-copy .price { display:block; font-size:28px; line-height:1.1; font-weight:650; color:var(--sb-text); margin-top:12px; }
.sb-product-footer {
  display:flex; justify-content:space-between; align-items:flex-end; gap:16px; margin-top:20px; padding-top:18px;
  border-top:1px solid rgba(111,135,153,.16);
}

.sb-fit-copy, .sb-fit-diagram { padding: clamp(24px,2.6vw,40px); }
.sb-fit-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:26px; }
.sb-fit-tab {
  display:block; width:100%; padding:16px; text-align:left; border:1px solid rgba(111,135,153,.16); background:rgba(255,255,255,.8); color:var(--sb-text);
}
.sb-fit-tab.is-active { border-color:rgba(143,211,255,.48); background:rgba(143,211,255,.16); }
.sb-fit-tab strong { display:block; font-size:11px; color:#5f7584; letter-spacing:.22em; text-transform:uppercase; }
.sb-fit-tab span { display:block; margin-top:8px; font-size:18px; font-weight:600; }
.sb-fit-panel { margin-top:18px; padding:20px; border:1px solid rgba(111,135,153,.16); background:rgba(255,255,255,.86); }
.sb-fit-panel h3 { margin:8px 0 0; font-size:30px; line-height:1.06; }
.sb-fit-panel p { margin:14px 0 0; max-width:620px; color:#607787; font-size:14px; line-height:1.8; }

.sb-fit-diagram-shell {
  display:grid; place-items:center; min-height:430px; margin-top:18px; padding:24px;
  border:1px solid rgba(111,135,153,.16);
  background: radial-gradient(circle at top, rgba(255,255,255,.88), rgba(143,211,255,.12) 36%, rgba(255,255,255,.72) 66%);
}
.sb-fit-diagram-stage { position:relative; width:min(420px,100%); min-height:360px; }
.sb-fit-boot {
  position:absolute; left:50%; top:14px; width:112px; height:86%; transform:translateX(-50%);
  border-radius:999px; border:1px solid rgba(20,32,43,.14);
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(234,241,247,.86) 40%, rgba(214,229,239,.9) 100%);
  box-shadow:0 18px 40px rgba(111,135,153,.18);
}
.sb-fit-line { position:absolute; height:1px; background:rgba(111,135,153,.44); }
.sb-fit-label { position:absolute; font-size:11px; text-transform:uppercase; letter-spacing:.2em; color:#5f7584; }

.sb-process-grid, .sb-review-grid, .sb-subcat-grid, .sb-guide-grid { display:grid; gap:18px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.sb-process-card, .sb-review-card { padding:24px; }
.sb-process-card h3 { margin:12px 0 0; font-size:28px; line-height:1.06; letter-spacing:-.03em; }
.sb-process-card p, .sb-review-card p { margin:14px 0 0; color:#607787; font-size:14px; line-height:1.8; }
.sb-review-quote-mark { margin-top:16px; font-size:38px; line-height:1; color:#a6dfff; }
.sb-review-tags { margin-top:16px; }

.sb-faq-layout { grid-template-columns:.9fr 1.1fr; }
.sb-faq-list { display:grid; gap:14px; }
.sb-faq-item { padding:0; }
.sb-faq-button {
  display:flex; align-items:center; justify-content:space-between; gap:18px; width:100%; padding:22px 24px;
  border:0; background:transparent; color:var(--sb-text); text-align:left; cursor:pointer;
}
.sb-faq-button span:first-child { font-size:20px; line-height:1.35; font-weight:600; }
.sb-faq-plus { display:inline-grid; place-items:center; width:28px; height:28px; color:#5f7584; font-size:18px; font-weight:500; }
.sb-faq-answer { display:none; padding:0 24px 22px; border-top:1px solid rgba(111,135,153,.16); color:#607787; font-size:14px; line-height:1.85; }
.sb-faq-item.is-open .sb-faq-answer { display:block; }

.sb-breadcrumb-row { padding:0 0 20px; }
.sb-filter-zone { padding:20px 0 28px; }
.sb-filter-bar { display:flex; justify-content:space-between; gap:20px; align-items:center; }
.sb-filter-bar-left { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.sb-filter-copy { color:var(--sb-muted); font-size:14px; }
.sb-subcat-link { display:inline-block; margin-top:18px; font-weight:600; }
.sb-pagination-wrap { padding-top:28px; }
.sb-empty-state { text-align:center; }
.sb-empty-state h3 { margin:0; font-size:30px; letter-spacing:-.03em; }
.sb-guide-table-card h2 { margin:0 0 18px; font-size:32px; letter-spacing:-.03em; }
.sb-guide-table-scroll { overflow:auto; }
.sb-guide-table { width:100%; border-collapse:collapse; }
.sb-guide-table th, .sb-guide-table td { padding:14px 16px; border-top:1px solid rgba(111,135,153,.16); text-align:left; }
.sb-guide-table th { font-size:12px; text-transform:uppercase; letter-spacing:.2em; color:var(--sb-muted); }

.sb-footer {
  margin-top:20px; border-top:1px solid rgba(255,255,255,.46);
  background:rgba(255,255,255,.46); backdrop-filter:blur(14px);
}
.sb-footer-grid { display:grid; grid-template-columns:1.1fr .6fr .6fr .9fr; gap:32px; padding:56px 0; }
.sb-footer-brand h3 { margin:16px 0 0; max-width:420px; font-size:34px; line-height:1.05; letter-spacing:-.04em; }
.sb-footer-links h4, .sb-newsletter h4 { margin:0; font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:#627988; }
.sb-footer-links ul { list-style:none; padding:0; margin:18px 0 0; }
.sb-footer-links li + li { margin-top:12px; }
.sb-footer-links a { color:#405363; font-size:14px; }
.sb-newsletter-form { display:flex; gap:10px; margin-top:18px; }
.sb-input { width:100%; min-width:0; padding:14px 16px; background:rgba(255,255,255,.82); color:var(--sb-text); }
.sb-input::placeholder { color:#97a8b4; }

@keyframes sbFloatBoard {
  0%, 100% { transform: rotate(-8deg) translateY(0); }
  50% { transform: rotate(-6deg) translateY(-12px); }
}

@media (max-width: 1180px) {
  .sb-grid-hero, .sb-hero-grid, .sb-referral-grid, .sb-style-layout, .sb-fit-layout, .sb-faq-layout, .sb-footer-grid { grid-template-columns: 1fr; }
  .sb-products-grid, .sb-collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sb-review-grid, .sb-process-grid, .sb-referral-steps, .sb-subcat-grid, .sb-guide-grid { grid-template-columns: 1fr; }
  .sb-product-card.is-offset { transform: none; }
  .sb-hero-visual { min-height:560px; }
}
@media (max-width: 980px) {
  .sb-nav {
    display:none; position:absolute; left:16px; right:16px; top:calc(100% + 10px); flex-direction:column; align-items:stretch; gap:6px;
    padding:12px; background:rgba(255,255,255,.92); border:1px solid rgba(111,135,153,.16); box-shadow:var(--sb-shadow-1), var(--sb-shadow-2); clip-path:var(--sb-cut);
  }
  .sb-nav.is-open { display:flex; }
  .sb-mobile-menu-button {
    display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border:1px solid rgba(20,32,43,.14); background:rgba(255,255,255,.82); clip-path:var(--sb-cut-sm);
  }
  .sb-header-actions .sb-button-secondary { display:none; }
  .sb-hero-kpis, .sb-fit-tabs, .sb-process-grid, .sb-review-grid, .sb-products-grid, .sb-collection-grid { grid-template-columns: 1fr; }
  .sb-style-track { display:grid; grid-template-columns:repeat(6, minmax(260px, 1fr)); overflow-x:auto; padding-bottom:4px; }
}
@media (max-width: 720px) {
  .sb-container { width:min(var(--sb-container), calc(100% - 20px)); }
  .sb-section, .sb-collection-hero { padding:64px 0; }
  .sb-trust-row-inner { justify-content:flex-start; overflow-x:auto; white-space:nowrap; padding-inline:2px; }
  .sb-button, .sb-button-secondary { width:100%; }
  .sb-hero-actions, .sb-newsletter-form, .sb-section-head { flex-direction:column; align-items:stretch; display:flex; }
  .sb-hero-visual { min-height:460px; }
  .sb-board { left:6%; width:42%; }
  .sb-hero-side-card { width:88%; }
}


/* === Single product / cart / checkout extensions === */
.sb-single-product-page .woocommerce-notices-wrapper,
.sb-cart-page .woocommerce-notices-wrapper,
.sb-checkout-page .woocommerce-notices-wrapper { margin-bottom: 18px; }

.sb-single-grid {
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:24px;
  align-items:start;
}
.sb-single-gallery,
.sb-single-summary,
.sb-spec-card,
.sb-tabs-shell,
.sb-commerce-shell { padding: clamp(22px, 2.4vw, 34px); }

.sb-single-gallery-stage {
  margin-top: 18px;
  border: 1px solid rgba(111,135,153,.16);
  border-radius: 34px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(143,211,255,.16) 42%, rgba(20,32,43,.16));
}
.sb-single-gallery .woocommerce-product-gallery {
  margin: 0 !important;
  padding: 22px;
}
.sb-single-gallery .woocommerce-product-gallery__image img,
.sb-single-gallery .flex-control-thumbs img {
  border-radius: 20px;
}
.sb-single-gallery .flex-control-thumbs {
  display:grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top: 14px !important;
}
.sb-single-gallery .flex-control-thumbs li {
  list-style:none;
}
.sb-single-summary-top h1 {
  margin: 12px 0 0;
  font-size: clamp(40px, 5vw, 72px);
  line-height: .96;
  letter-spacing: -.05em;
}
.sb-single-excerpt,
.sb-single-excerpt p {
  margin-top: 16px;
  color:#607787;
  font-size:16px;
  line-height:1.85;
}
.sb-single-actions { margin-top: 22px; }
.sb-single-summary form.cart {
  display:grid;
  gap:14px;
}
.sb-single-summary form.cart .variations {
  width:100%;
  border-collapse: separate;
  border-spacing: 0 10px;
}
.sb-single-summary form.cart .variations td,
.sb-single-summary form.cart .variations th {
  padding:0;
  border:0;
  color:var(--sb-text);
}
.sb-single-summary form.cart .variations select,
.sb-single-summary form.cart .quantity input.qty,
.sb-commerce-shell select,
.sb-commerce-shell input[type="text"],
.sb-commerce-shell input[type="email"],
.sb-commerce-shell input[type="tel"],
.sb-commerce-shell input[type="password"],
.sb-commerce-shell textarea,
.sb-commerce-shell .select2-selection {
  width:100%;
  min-height: 50px;
  padding: 12px 14px;
  border:1px solid rgba(111,135,153,.22);
  background: rgba(255,255,255,.82);
  color:var(--sb-text);
  clip-path: var(--sb-cut-sm);
  border-radius: 0 !important;
  box-shadow:none !important;
}
.sb-commerce-shell .select2-selection {
  display:flex !important;
  align-items:center;
}
.sb-single-summary .single_add_to_cart_button,
.sb-commerce-shell .checkout-button,
.sb-commerce-shell #place_order,
.sb-commerce-shell .button,
.sb-commerce-shell button[name="apply_coupon"],
.sb-commerce-shell .actions .button {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 22px !important;
  border:1px solid var(--sb-line-strong) !important;
  background: var(--sb-text) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:600 !important;
  text-transform:uppercase;
  letter-spacing:.16em;
  clip-path: var(--sb-cut-sm);
  box-shadow: var(--sb-shadow-3);
  border-radius:0 !important;
}
.sb-commerce-shell button[name="apply_coupon"],
.sb-commerce-shell .actions .button:not(.checkout-button):not(#place_order) {
  background: rgba(255,255,255,.82) !important;
  color: var(--sb-text) !important;
  box-shadow:none;
}
.sb-single-summary .reset_variations {
  display:inline-flex;
  margin-top:6px;
  color:#5f7584;
  font-size:13px;
}
.sb-single-summary .price,
.sb-single-summary .woocommerce-Price-amount {
  font-size: 34px;
  line-height: 1.1;
  font-weight: 650;
  color: var(--sb-text);
}
.sb-single-summary .woocommerce-product-details__short-description p:last-child { margin-bottom:0; }
.sb-single-trust { margin-top: 20px; }
.sb-trust-box { padding: 20px; }
.sb-trust-box h3 { margin: 10px 0 0; font-size: 28px; line-height:1.06; letter-spacing:-.03em; }
.sb-trust-box p { margin: 12px 0 16px; color:#607787; font-size:14px; line-height:1.75; }

.sb-single-spec-grid {
  display:grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap:24px;
  margin-top:24px;
}
.sb-spec-card h3 {
  margin:10px 0 0;
  font-size:30px;
  line-height:1.06;
  letter-spacing:-.03em;
}
.sb-spec-list {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.sb-single-info-stack { margin-top: 18px; display:grid; gap:10px; }
.sb-single-info-stack details {
  border:1px solid rgba(111,135,153,.16);
  background: rgba(255,255,255,.68);
  padding: 16px 18px;
}
.sb-single-info-stack summary {
  cursor:pointer;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color:#425565;
}
.sb-single-info-stack p {
  margin: 12px 0 0;
  color:#607787;
  font-size:14px;
  line-height:1.8;
}
.sb-tabs-shell { margin-top: 24px; }
.sb-tabs-shell .woocommerce-tabs ul.tabs {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 20px !important;
  padding:0 !important;
  border:0 !important;
}
.sb-tabs-shell .woocommerce-tabs ul.tabs::before,
.sb-tabs-shell .woocommerce-tabs ul.tabs::after { display:none !important; }
.sb-tabs-shell .woocommerce-tabs ul.tabs li {
  border:1px solid rgba(111,135,153,.22) !important;
  background: rgba(255,255,255,.82) !important;
  clip-path: var(--sb-cut-sm);
  border-radius: 0 !important;
  margin:0 !important;
  padding:0 !important;
}
.sb-tabs-shell .woocommerce-tabs ul.tabs li a {
  padding:12px 16px !important;
  color:#425565 !important;
}
.sb-tabs-shell .woocommerce-tabs ul.tabs li.active {
  border-color: rgba(143,211,255,.48) !important;
  background: rgba(143,211,255,.16) !important;
}
.sb-tabs-shell .panel {
  margin:0 !important;
  color:#607787;
  font-size:14px;
  line-height:1.85;
}
.sb-tabs-shell .panel h2:first-child,
.sb-tabs-shell .panel > h2 {
  margin-top:0;
  color:var(--sb-text);
  font-size:28px;
  letter-spacing:-.03em;
}

.sb-commerce-hero { margin-bottom: 24px; }
.sb-commerce-shell .woocommerce {
  display:block;
}
.sb-commerce-shell .woocommerce-cart-form,
.sb-commerce-shell .cart-collaterals,
.sb-commerce-shell .woocommerce-checkout {
  position:relative;
  z-index:1;
}
.sb-commerce-shell .shop_table,
.sb-commerce-shell table.shop_table {
  width:100%;
  border-collapse:separate;
  border-spacing: 0;
  border:1px solid rgba(111,135,153,.16);
  overflow:hidden;
}
.sb-commerce-shell table.shop_table th,
.sb-commerce-shell table.shop_table td {
  padding:16px;
  border-top:1px solid rgba(111,135,153,.14);
  color:var(--sb-text);
}
.sb-commerce-shell table.shop_table thead th {
  border-top:0;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:#627988;
  background: rgba(255,255,255,.6);
}
.sb-commerce-shell table.shop_table td.product-name a,
.sb-commerce-shell .product-name a {
  font-weight:600;
}
.sb-commerce-shell .coupon {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.sb-commerce-shell .coupon .input-text {
  flex:1 1 220px;
}
.sb-commerce-shell .cart_totals,
.sb-commerce-shell #customer_details,
.sb-commerce-shell #order_review,
.sb-commerce-shell .woocommerce-additional-fields,
.sb-commerce-shell .woocommerce-billing-fields {
  border:1px solid rgba(111,135,153,.16);
  background: rgba(255,255,255,.62);
  padding:20px;
  margin-top:20px;
  clip-path: var(--sb-cut);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), var(--sb-shadow-1), var(--sb-shadow-2);
}
.sb-commerce-shell .cart-collaterals {
  margin-top: 24px;
}
.sb-commerce-shell .wc-proceed-to-checkout {
  margin-bottom:0 !important;
}
.sb-commerce-shell .cart_totals h2,
.sb-commerce-shell .woocommerce-billing-fields > h3,
.sb-commerce-shell .woocommerce-additional-fields > h3,
.sb-commerce-shell #order_review_heading {
  margin:0 0 16px;
  font-size:28px;
  line-height:1.06;
  letter-spacing:-.03em;
}
.sb-commerce-shell .woocommerce-checkout {
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:24px;
}
.sb-commerce-shell .form-row {
  margin-bottom:14px;
}
.sb-commerce-shell .form-row label {
  display:block;
  margin-bottom:8px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:#627988;
}
.sb-commerce-shell .woocommerce form .form-row .required {
  color: var(--sb-accent-2);
}
.sb-commerce-shell .woocommerce form .form-row input.input-text,
.sb-commerce-shell .woocommerce form .form-row textarea {
  border-radius:0;
}
.sb-commerce-shell .woocommerce-info,
.sb-commerce-shell .woocommerce-message,
.sb-commerce-shell .woocommerce-error {
  margin:0 0 16px !important;
  padding:16px 18px !important;
  border:1px solid rgba(111,135,153,.16) !important;
  background: rgba(255,255,255,.7) !important;
  color:var(--sb-text) !important;
}
.sb-commerce-shell .woocommerce-info::before,
.sb-commerce-shell .woocommerce-message::before,
.sb-commerce-shell .woocommerce-error::before {
  color: var(--sb-accent-2) !important;
}
.sb-commerce-shell .payment_methods {
  padding-left:0 !important;
  list-style:none;
}
.sb-commerce-shell .payment_methods li {
  border-top:1px solid rgba(111,135,153,.14);
  padding:14px 0;
}
.sb-commerce-shell .payment_box {
  background: rgba(255,255,255,.6) !important;
  color:#607787 !important;
}
.sb-commerce-shell .payment_box::before { display:none !important; }
.sb-commerce-shell .woocommerce-checkout-review-order-table .product-name {
  display:flex;
  flex-direction:column;
  gap:6px;
}
.sb-commerce-shell .product-thumbnail img {
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:14px;
}
.sb-commerce-shell .product-remove a.remove {
  color: var(--sb-accent-2) !important;
  font-size: 24px;
}
.sb-commerce-shell .quantity .qty {
  max-width: 88px;
}
.sb-commerce-shell .wc_payment_methods,
.sb-commerce-shell .place-order {
  margin-top: 12px !important;
}
.sb-commerce-shell .return-to-shop {
  margin-top:18px;
  text-align:center;
}
.sb-commerce-shell .button.wc-backward {
  background: rgba(255,255,255,.82) !important;
  color:var(--sb-text) !important;
  box-shadow:none;
}
.sb-single-product-page .related.products { display:none; }

@media (max-width: 1180px) {
  .sb-single-grid,
  .sb-single-spec-grid,
  .sb-commerce-shell .woocommerce-checkout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .sb-single-gallery .flex-control-thumbs {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .sb-commerce-shell .coupon {
    flex-direction:column;
  }
  .sb-commerce-shell table.shop_table,
  .sb-commerce-shell table.shop_table tbody,
  .sb-commerce-shell table.shop_table tr,
  .sb-commerce-shell table.shop_table td {
    display:block;
    width:100%;
  }
  .sb-commerce-shell table.shop_table thead {
    display:none;
  }
  .sb-commerce-shell table.shop_table tr {
    padding:14px 0;
    border-top:1px solid rgba(111,135,153,.16);
  }
  .sb-commerce-shell table.shop_table td {
    border-top:0;
    padding:10px 0;
  }
  .sb-commerce-shell table.shop_table td::before {
    content: attr(data-title);
    display:block;
    margin-bottom:6px;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.2em;
    color:#627988;
  }
}

/* V3: Account / Auth / Order Complete */
.sb-account-grid,
.sb-auth-grid,
.sb-order-complete-grid {
  display:grid;
  grid-template-columns: 1.12fr .88fr;
  gap:24px;
}

.sb-account-shell,
.sb-auth-shell,
.sb-order-complete-shell {
  padding: clamp(22px, 2.4vw, 34px);
}

.sb-account-side-stack {
  display:grid;
  gap:18px;
}

.sb-account-side-card {
  padding:24px;
}

.sb-account-side-card h3,
.sb-auth-logged-in h2 {
  margin:10px 0 0;
  font-size:30px;
  line-height:1.06;
  letter-spacing:-.03em;
}

.sb-account-side-card p,
.sb-auth-logged-in p {
  margin-top:14px;
  color:var(--sb-muted);
  line-height:1.8;
}

.sb-account-quick-links {
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}

.sb-account-shell .woocommerce,
.sb-auth-shell .woocommerce,
.sb-order-complete-shell .woocommerce {
  display:block;
}

.sb-account-shell .woocommerce::after,
.sb-auth-shell .woocommerce::after,
.sb-order-complete-shell .woocommerce::after {
  content:"";
  display:block;
  clear:both;
}

.sb-account-shell .woocommerce-MyAccount-navigation {
  float:none;
  width:100%;
  margin-bottom:18px;
}

.sb-account-shell .woocommerce-MyAccount-navigation ul {
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
}

.sb-account-shell .woocommerce-MyAccount-navigation li {
  margin:0;
}

.sb-account-shell .woocommerce-MyAccount-navigation a {
  display:block;
  padding:14px 16px;
  border:1px solid rgba(111,135,153,.18);
  background:rgba(255,255,255,.74);
  clip-path: var(--sb-cut-sm);
  color:var(--sb-text);
  font-size:13px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.sb-account-shell .woocommerce-MyAccount-navigation li.is-active a,
.sb-account-shell .woocommerce-MyAccount-navigation a:hover {
  border-color: rgba(143,211,255,.48);
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(143,211,255,.18));
}

.sb-account-shell .woocommerce-MyAccount-content {
  float:none;
  width:100%;
  padding:24px;
  border:1px solid rgba(111,135,153,.16);
  background:rgba(255,255,255,.74);
  margin-top:18px;
}

.sb-account-shell .woocommerce-MyAccount-content > :first-child,
.sb-auth-shell .woocommerce > :first-child,
.sb-order-complete-shell > :first-child {
  margin-top:0;
}

.sb-account-shell .woocommerce-MyAccount-content h2,
.sb-account-shell .woocommerce-MyAccount-content h3,
.sb-auth-shell h2,
.sb-order-complete-shell h2,
.sb-order-complete-shell h3 {
  letter-spacing:-.03em;
  line-height:1.08;
}

.sb-account-shell .woocommerce-MyAccount-content p,
.sb-auth-shell p,
.sb-order-complete-shell p {
  color: var(--sb-muted);
  line-height:1.8;
}

.sb-account-shell .woocommerce-Address,
.sb-account-shell .woocommerce-MyAccount-content fieldset,
.sb-account-shell .woocommerce-MyAccount-content .woocommerce-EditAccountForm,
.sb-account-shell .woocommerce-MyAccount-content .woocommerce-address-fields,
.sb-account-shell .woocommerce-MyAccount-content .woocommerce-orders-table,
.sb-account-shell .woocommerce-MyAccount-content .woocommerce-table,
.sb-order-complete-shell .woocommerce-order-details,
.sb-order-complete-shell .woocommerce-customer-details {
  margin-top:18px;
}

.sb-account-shell table,
.sb-order-complete-shell table {
  width:100%;
  border-collapse:collapse;
}

.sb-account-shell table th,
.sb-account-shell table td,
.sb-order-complete-shell table th,
.sb-order-complete-shell table td {
  padding:14px 16px;
  border-top:1px solid rgba(111,135,153,.16);
  text-align:left;
}

.sb-account-shell table thead th,
.sb-order-complete-shell table thead th {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:#627988;
}

.sb-account-shell .button,
.sb-auth-shell .button,
.sb-order-complete-shell .button,
.sb-account-shell button,
.sb-auth-shell button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 18px !important;
  border:1px solid var(--sb-line-strong) !important;
  clip-path: var(--sb-cut-sm);
  background: var(--sb-text) !important;
  color:#fff !important;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:12px !important;
  font-weight:600 !important;
  box-shadow: var(--sb-shadow-3);
}

.sb-account-shell .button:hover,
.sb-auth-shell .button:hover,
.sb-order-complete-shell .button:hover {
  transform: translateY(-2px);
}

.sb-account-shell .woocommerce-Button--secondary,
.sb-account-shell .button.view,
.sb-account-shell .button.download,
.sb-order-complete-shell .button.pay,
.sb-order-complete-shell .button.pay + .button {
  background: rgba(255,255,255,.82) !important;
  color: var(--sb-text) !important;
  box-shadow:none;
}

.sb-account-shell input[type="text"],
.sb-account-shell input[type="email"],
.sb-account-shell input[type="password"],
.sb-account-shell input[type="tel"],
.sb-account-shell select,
.sb-account-shell textarea,
.sb-auth-shell input[type="text"],
.sb-auth-shell input[type="email"],
.sb-auth-shell input[type="password"],
.sb-auth-shell input[type="tel"],
.sb-auth-shell select,
.sb-auth-shell textarea {
  width:100%;
  border:1px solid rgba(111,135,153,.2) !important;
  background: rgba(255,255,255,.86) !important;
  color:var(--sb-text) !important;
  padding:14px 16px !important;
  border-radius:0 !important;
}

.sb-account-shell label,
.sb-auth-shell label {
  display:block;
  margin-bottom:8px;
  color:#4d6272;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.18em;
}

.sb-account-shell .woocommerce-form-row,
.sb-account-shell .form-row,
.sb-auth-shell .woocommerce-form-row,
.sb-auth-shell .form-row {
  margin-bottom:16px;
}

.sb-auth-columns {
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:18px;
}

.sb-auth-column {
  padding:0;
}

.sb-auth-column-inner,
.sb-auth-single,
.sb-auth-logged-in {
  padding:24px;
}

.sb-auth-column-inner h2 {
  margin:10px 0 0;
  font-size:32px;
}

.sb-auth-submit-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}

.sb-auth-register-copy {
  color: var(--sb-muted);
  font-size:13px;
  line-height:1.7;
}

.sb-auth-shell .lost_password {
  margin-top:12px;
}

.sb-auth-shell .lost_password a,
.sb-account-shell a,
.sb-order-complete-shell a {
  color:#355063;
}

.sb-order-overview-list {
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
}

.sb-order-overview-list li {
  padding:18px;
  border:1px solid rgba(111,135,153,.16);
  background:rgba(255,255,255,.76);
}

.sb-order-overview-list strong {
  display:block;
  margin-top:8px;
  font-size:18px;
  line-height:1.4;
  color:var(--sb-text);
  word-break: break-word;
}

.sb-order-next-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}

.sb-order-complete-shell .woocommerce-notice,
.sb-order-complete-shell .woocommerce-message,
.sb-order-complete-shell .woocommerce-error,
.sb-auth-shell .woocommerce-error,
.sb-auth-shell .woocommerce-message,
.sb-account-shell .woocommerce-message,
.sb-account-shell .woocommerce-error {
  margin-bottom:18px !important;
  padding:14px 16px 14px 18px !important;
  border-left:3px solid var(--sb-accent) !important;
  background: rgba(255,255,255,.82) !important;
  color:#536877 !important;
}

.sb-account-shell .woocommerce-message::before,
.sb-account-shell .woocommerce-error::before,
.sb-auth-shell .woocommerce-error::before,
.sb-auth-shell .woocommerce-message::before,
.sb-order-complete-shell .woocommerce-message::before,
.sb-order-complete-shell .woocommerce-error::before,
.sb-order-complete-shell .woocommerce-notice::before { display:none !important; }

.sb-account-shell .woocommerce-form-login__rememberme {
  display:inline-flex;
  align-items:center;
  gap:10px;
}

.sb-account-shell .woocommerce-form-login__rememberme input,
.sb-auth-shell .woocommerce-form-login__rememberme input {
  width:auto;
}

@media (max-width: 1180px) {
  .sb-account-grid,
  .sb-auth-grid,
  .sb-order-complete-grid,
  .sb-auth-columns {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .sb-account-shell .woocommerce-MyAccount-navigation ul,
  .sb-order-overview-list,
  .sb-account-quick-links {
    grid-template-columns: 1fr;
  }

  .sb-account-shell .woocommerce-MyAccount-content,
  .sb-auth-column-inner,
  .sb-auth-single,
  .sb-auth-logged-in,
  .sb-account-side-card,
  .sb-order-complete-shell {
    padding:20px;
  }

  .sb-auth-submit-row,
  .sb-order-next-actions {
    flex-direction:column;
    align-items:stretch;
  }
}
