.sb-mobile-whatsapp { display: none; }
#sanbo-site[data-page="products"] .catalog-card-media { position: relative; }
#sanbo-site[data-page="products"] .catalog-card-media > img.sb-catalog-scene {
  position: absolute;
  inset: 0 12px 22px;
  margin: auto;
  width: calc(100% - 24px);
  height: auto;
  max-height: calc(100% - 22px);
  aspect-ratio: 4 / 3;
  object-fit: cover;
  mask-image: none;
  border-radius: 14px;
  opacity: 0;
  pointer-events: none;
}
#sanbo-site[data-page="products"] .sb-catalog-preview.sb-catalog-preview-ready .catalog-card-media > img { opacity: 0; }
#sanbo-site[data-page="products"] .sb-catalog-preview.sb-catalog-preview-ready .catalog-card-media > .sb-catalog-scene { opacity: 1; }
@media (prefers-reduced-motion: no-preference) {
  #sanbo-site[data-page="products"] .catalog-card-media > img { transition: opacity .18s ease; }
}
@media (max-width: 800px) {
  .sb-mobile-whatsapp {
    position: fixed;
    z-index: 120;
    right: max(16px, env(safe-area-inset-right));
    bottom: max(16px, calc(env(safe-area-inset-bottom) + 8px));
    display: grid;
    width: 50px;
    height: 50px;
    place-items: center;
    border: 1px solid #adb7bf;
    border-radius: 50%;
    background: repeating-linear-gradient(100deg, #fff0 0 2px, #fff0 2px 3px, #ffffff12 3px 4px),
      radial-gradient(circle at center, #39434a 0 42%, #55616b 59%, #bdc5cb 76%, #e2e6e9 92%);
    color: #25d366;
    box-shadow: inset 0 1px 2px #ffffff9c, inset 0 -1px 2px #11182066, 0 5px 15px #25313b44;
  }
  .sb-mobile-whatsapp svg { width: 27px; height: 27px; }
  .sb-mobile-whatsapp:focus-visible { outline: 3px solid #465760; outline-offset: 3px; }
}
#sanbo-site[data-page="product"] .sb-typical {
  margin-block: 22px 0;
  padding: clamp(16px, 2.1vw, 28px);
}
#sanbo-site[data-page="product"] .sb-typical h2 {
  font-size: clamp(20px, 2vw, 25px);
  font-weight: 650;
  letter-spacing: -.025em;
}
.sb-spec-facts { margin: 12px 0 0; }
.sb-spec-facts > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.65fr);
  gap: 6px 16px;
  padding-block: 9px;
  border-bottom: 1px solid #e4e6e9;
}
.sb-spec-facts dt { color: #48545d; font-size: .79rem; font-weight: 600; }
.sb-spec-facts dd { margin: 0; color: #252d33; font-size: .9rem; font-weight: 450; overflow-wrap: anywhere; }
#sanbo-site .sb-spec-table {
  width: 100%;
  margin: 18px 0 0;
  border: 0;
  border-spacing: 0;
  table-layout: fixed;
  text-align: start;
}
.sb-spec-table caption { padding: 0 0 7px; text-align: start; font-size: .88rem; font-weight: 650; }
.sb-spec-table caption span { color: #515e68; font-weight: 450; }
#sanbo-site .sb-spec-table :is(th, td) {
  padding: 9px clamp(5px, 1vw, 12px);
  border: 0;
  border-bottom: 1px solid #e4e6e9;
  text-align: start;
  vertical-align: middle;
  line-height: 1.4;
}
.sb-spec-table thead { background: #eef0f2; color: #3b4852; font-size: .72rem; }
.sb-spec-table thead th { font-weight: 650; overflow-wrap: anywhere; }
.sb-spec-table thead th:first-child { width: 4.3rem; }
.sb-spec-axes { display: block; margin-top: 1px; color: #53616c; font-size: .69rem; font-weight: 450; }
.sb-spec-table tbody th { color: #53616c; font-size: .75rem; font-weight: 500; }
#sanbo-site .sb-spec-table td { color: #202931; font-size: clamp(.72rem, 1.2vw, .93rem); font-weight: 500; font-variant-numeric: tabular-nums; }
.sb-spec-dimension { white-space: nowrap; }
#sanbo-site .sb-typical .sb-spec-note { margin-block: 14px 0; color: #515d65; font-size: .8rem; line-height: 1.5; }
@media (max-width: 420px) {
  .sb-spec-facts > div { grid-template-columns: 1fr; gap: 2px; }
  .sb-spec-table thead th:first-child { width: 2.9rem; }
}
.sb-product-scene figure { overflow: hidden; margin: 17px 0 0; }
.sb-product-scene img { display: block; width: 100%; height: auto; }
.sb-product-scene figcaption { padding: 12px 18px; color: #4c555e; font-size: 13px; }

#sanbo-site .sb-blog-wrap {
  --blog-ink: #172027;
  --blog-muted: #4d5a63;
  --blog-accent: #235365;
  width: min(calc(100% - 48px), 1220px);
  margin-inline: auto;
  padding-block: clamp(48px, 6vw, 90px);
  color: var(--blog-ink);
  font-family: system-ui, sans-serif;
}
.sb-blog-preview, #sanbo-site[data-page="blog"], #sanbo-site[data-page="blog-article"] { background: #f3f3f5; }
#sanbo-site:is([data-page="blog"], [data-page="blog-article"]) > .sb-blog-wrap {
  padding-top: calc(var(--sb-language-header, 132px) + clamp(18px, 3vw, 42px));
}
#sanbo-site .sb-blog-intro { max-width: 53rem; margin: 0 0 clamp(25px, 4vw, 46px); }
#sanbo-site .sb-blog-kicker { margin: 0 0 8px; color: var(--blog-accent); font-size: .72rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
#sanbo-site :is(.sb-blog-intro h1, .sb-blog-wrap > h2) {
  margin: 0 0 12px;
  color: var(--blog-ink);
  font: 650 clamp(2.05rem, 4.4vw, 3.75rem)/1.08 system-ui, sans-serif;
  letter-spacing: -.046em;
  text-wrap: balance;
}
#sanbo-site .sb-blog-lead { max-width: 58ch; margin: 0; color: var(--blog-muted); font-size: clamp(1rem, 1.8vw, 1.18rem); line-height: 1.55; }
.sb-blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(15px, 2vw, 24px); margin-block: 20px; }
.sb-blog-card { min-width: 0; border-radius: 24px; background: #fff; box-shadow: 0 4px 16px #141b2210; }
#sanbo-site .sb-blog-card-link { display: flex; flex-direction: column; height: 100%; border-radius: inherit; color: inherit; text-decoration: none; }
.sb-blog-card-photo { aspect-ratio: 5 / 3; overflow: hidden; border-radius: 24px 24px 0 0; background: #dfe4e7; }
.sb-blog-card-photo img, .sb-blog-hero img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sb-blog-card-photo img { transition: transform .28s ease; }
#sanbo-site .sb-blog-card-link:focus-visible { outline: 2px solid var(--blog-accent); outline-offset: 4px; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .sb-blog-card-link:hover img { transform: scale(1.035); }
}
.sb-blog-card-copy { flex: 1; display: flex; flex-direction: column; padding: clamp(17px, 2.1vw, 26px); }
#sanbo-site .sb-blog-card h2 { margin: 0 0 9px; color: var(--blog-ink); font: 650 clamp(1.18rem, 1.9vw, 1.52rem)/1.2 system-ui, sans-serif; letter-spacing: -.025em; text-wrap: balance; }
#sanbo-site .sb-blog-summary { margin: 0 0 16px; color: var(--blog-muted); font-size: .94rem; line-height: 1.55; }
#sanbo-site .sb-blog-read { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; margin: auto 0 0; color: var(--blog-accent); font-size: .88rem; font-weight: 650; text-decoration: none; }
#sanbo-site .sb-blog-read:is(:hover, :focus-visible), .sb-blog-card-link:hover .sb-blog-read { text-decoration: underline; text-underline-offset: 3px; }
#sanbo-site .sb-blog-intro > .sb-blog-read { margin-bottom: 18px; }
#sanbo-site[data-page="blog"] .sb-blog-intro { margin-bottom: clamp(18px, 2.6vw, 32px); }
#sanbo-site[data-page="blog"] .sb-blog-kicker,
#sanbo-site[data-page="blog-article"] .sb-blog-related .sb-blog-kicker {
  margin-bottom: 4px;
  font-size: 11px;
  line-height: 1.25;
}
#sanbo-site[data-page="blog"] .sb-blog-intro h1 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3.4vw, 48px);
}
#sanbo-site[data-page="blog"] .sb-blog-lead {
  font-size: clamp(14px, 1.25vw, 16px);
  line-height: 1.4;
}
#sanbo-site:is([data-page="blog"], [data-page="blog-article"]) .sb-blog-card-copy { padding: clamp(13px, 1.5vw, 20px); }
#sanbo-site:is([data-page="blog"], [data-page="blog-article"]) .sb-blog-card h2 {
  margin-bottom: 6px;
  font-size: clamp(18px, 1.55vw, 22px);
  line-height: 1.17;
}
#sanbo-site:is([data-page="blog"], [data-page="blog-article"]) .sb-blog-card .sb-blog-summary {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.4;
}
#sanbo-site:is([data-page="blog"], [data-page="blog-article"]) .sb-blog-card .sb-blog-read { font-size: 12px; line-height: 1.25; }
#sanbo-site[data-page="blog-article"] .sb-blog-intro h1 {
  margin-bottom: 10px;
  font-size: clamp(32px, 3.8vw, 54px);
  line-height: 1.12;
  overflow-wrap: anywhere;
}
#sanbo-site[data-page="blog-article"] .sb-blog-lead {
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.5;
}
.sb-blog-hero { margin: 0 0 clamp(24px, 4vw, 44px); }
.sb-blog-hero img { aspect-ratio: 16 / 8; max-height: 530px; border-radius: 24px; }
#sanbo-site .sb-blog-hero figcaption { margin: 8px 1px 0; color: var(--blog-muted); font-size: .76rem; }
.sb-blog-reading { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 2fr); align-items: start; gap: clamp(18px, 4vw, 56px); }
#sanbo-site .sb-blog-contents { position: sticky; top: calc(var(--sb-language-header, 132px) + 16px); padding: 16px; border-radius: 18px; background: #e9edf0; }
#sanbo-site .sb-blog-contents :is(.sb-blog-contents-title, summary) { margin: 0; color: var(--blog-ink); font-size: 13px; font-weight: 700; line-height: 1.35; }
#sanbo-site .sb-blog-contents summary { display: none; }
#sanbo-site .sb-blog-contents ol { margin: 5px 0 0; padding-inline-start: 18px; color: var(--blog-muted); }
#sanbo-site .sb-blog-contents li { font-size: 13px; line-height: 1.35; }
#sanbo-site .sb-blog-contents a { display: block; padding-block: 2px; color: var(--blog-accent); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
#sanbo-site .sb-blog-contents a[aria-current="location"] {
  color: var(--blog-ink);
  background: #d4e1e7;
  border-radius: 4px;
  box-shadow: 0 0 0 3px #d4e1e7;
  text-decoration-thickness: 2px;
}
.sb-blog-body { min-width: 0; max-width: 48rem; padding: clamp(20px, 4vw, 45px); border-radius: 24px; background: #fff; }
.sb-blog-body section { scroll-margin-top: calc(var(--sb-language-header, 132px) + var(--wp-admin--admin-bar--height, 0px) + 24px); }
.sb-blog-body section + section {
  border-top: 1px solid #e3e6e8;
  margin-top: clamp(16px, 2vw, 20px);
  padding-top: clamp(16px, 2vw, 20px);
}
#sanbo-site .sb-blog-body h2, #sanbo-site .sb-blog-related h2[id] {
  margin: 0 0 8px;
  color: var(--blog-ink);
  font: 650 clamp(18px, 1.8vw, 23px)/1.24 system-ui, sans-serif;
  letter-spacing: -.025em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
#sanbo-site .sb-blog-body p {
  margin: 0 0 10px;
  color: var(--blog-muted);
  font-size: clamp(15px, 1.4vw, 16px);
  line-height: 1.45;
  overflow-wrap: anywhere;
}
#sanbo-site .sb-blog-body section > p:last-child { margin-bottom: 0; }
#sanbo-site .sb-blog-body > a { margin-top: 12px; }
.sb-blog-related { margin-top: clamp(32px, 6vw, 70px); }
@media (max-width: 900px) {
  .sb-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .sb-blog-reading { grid-template-columns: minmax(0, 1fr); }
  #sanbo-site .sb-blog-contents { top: calc(var(--sb-language-header, 132px) + 8px); z-index: 2; padding: 0 16px; }
  #sanbo-site .sb-blog-contents:has(details[open]) { border-radius: 18px 18px 0 0; }
  #sanbo-site .sb-blog-contents-title { display: none; }
  #sanbo-site .sb-blog-contents summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 44px;
    cursor: pointer;
    list-style: none;
  }
  #sanbo-site .sb-blog-contents .sb-blog-current-chapter {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  #sanbo-site .sb-blog-contents :is(details[open] .sb-blog-current-chapter, .sb-blog-current-chapter:empty) {
    display: none;
  }
  #sanbo-site .sb-blog-contents details:not([open]) summary:has(.sb-blog-current-chapter:not(:empty)) .sb-blog-contents-label {
    position: absolute;
    clip-path: inset(50%);
  }
  #sanbo-site .sb-blog-contents summary::-webkit-details-marker { display: none; }
  #sanbo-site .sb-blog-contents summary::before {
    content: "";
    position: absolute;
    inset: auto 16px 0;
    z-index: 1;
    height: 2px;
    border-radius: 2px;
    background: var(--blog-accent);
    transform: scaleX(var(--sb-blog-progress, 0));
    transform-origin: left center;
    pointer-events: none;
  }
  #sanbo-site .sb-blog-contents summary::after {
    content: "";
    flex: none;
    width: 7px;
    height: 7px;
    margin-inline-end: 3px;
    border: solid currentColor;
    border-width: 0 1px 1px 0;
    transform: rotate(45deg);
  }
  #sanbo-site .sb-blog-contents details[open] summary::after { transform: rotate(225deg); }
  #sanbo-site .sb-blog-contents ol {
    position: absolute;
    inset: calc(100% - 1px) 0 auto;
    max-height: min(50dvh, 24rem);
    margin: 0;
    padding: 3px 16px 10px 34px;
    overflow: auto;
    overscroll-behavior: contain;
    background: #e9edf0;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 10px 18px #17202720;
  }
  #sanbo-site .sb-blog-contents a { display: flex; align-items: center; min-height: 28px; }
  .sb-blog-body section { scroll-margin-top: calc(var(--sb-language-header, 132px) + 64px); }
}
@media (max-width: 600px) {
  #sanbo-site .sb-blog-wrap { width: calc(100% - 32px); }
  .sb-blog-grid { grid-template-columns: 1fr; }
  .sb-blog-hero img { aspect-ratio: 5 / 3; }
}


#sanbo-site[data-page="product"] .detail-overview.sb-detail-ready {
  --sb-media-height: clamp(680px, 48vw, 700px);
  grid-template-areas: "gallery summary";
  grid-template-rows: auto;
  gap: 10px clamp(24px, 4.2vw, 64px);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "Microsoft YaHei", sans-serif;
}
.sb-detail-stack {
  grid-area: summary;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  block-size: var(--sb-media-height);
  overflow: auto;
  scrollbar-width: thin;
  padding: 0 4px 4px;
  margin-inline: -4px;
}
.sb-detail-stack > * { flex: 0 0 auto; }
#sanbo-site[data-page="product"] .sb-detail-ready .detail-info { padding-top: 3px; }
#sanbo-site[data-page="product"] .sb-detail-ready .sb-typical {
  grid-area: specs;
  margin: 0;
  padding-inline: clamp(14px, 1.55vw, 21px);
}
#sanbo-site[data-page="product"] .sb-typical h2,
#sanbo-site[data-page="product"] .sb-detail-ready .detail-facts h2,
#sanbo-site[data-page="product"] #product-content :is(.detail-section > h2, .detail-section-head h2, .detail-inquiry h2) {
  font-size: clamp(18px, 1.6vw, 21px);
  font-weight: 650;
  line-height: 1.18;
  letter-spacing: -.025em;
}
#sanbo-site[data-page="product"] .sb-detail-ready .detail-facts {
  flex: 1 0 auto;
  padding-inline: clamp(14px, 1.55vw, 21px);
}
html[data-sb-language] #sanbo-site[data-page="product"] .detail-facts dl > div {
  grid-template-columns: minmax(0, 1fr) minmax(0, 2.8fr);
  gap: 10px;
}
#sanbo-site[data-page="product"] .detail-gallery.sb-has-scenes {
  display: block;
  align-self: start;
  padding: 0;
  block-size: var(--sb-media-height);
  background: #e8ecef;
}
#sanbo-site[data-page="product"] .sb-has-scenes .detail-stage {
  position: relative;
  display: block;
  isolation: isolate;
  width: 100%;
  height: 100%;
  max-height: none;
  padding: 0;
  aspect-ratio: auto;
  overflow: hidden;
}
#sanbo-site[data-page="product"] .sb-has-scenes .detail-stage::before {
  position: absolute;
  inset: 0;
  content: "";
  background: var(--sb-gallery-image) center / cover;
  filter: blur(30px);
  opacity: .46;
  transform: scale(1.16);
}
#sanbo-site[data-page="product"] .sb-has-scenes .detail-stage:has(.sb-gallery-scene:not([hidden]))::before {
  filter: blur(20px);
  opacity: .78;
}
#sanbo-site[data-page="product"] .sb-has-scenes .detail-stage img {
  position: absolute;
  inset: 0;
  margin: auto;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: auto;
  object-fit: contain;
  mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent),
    linear-gradient(transparent, #000 2%, #000 98%, transparent);
}
#sanbo-site[data-page="product"] .sb-has-scenes [hidden] { display: none; }
#sanbo-site[data-page="product"] .sb-has-scenes .sb-gallery-scene-caption {
  position: absolute;
  left: 12px;
  bottom: 12px;
  margin: 0;
  border-radius: 6px;
  padding: 4px 8px;
  color: #fff;
  background: #16232bdc;
  font-size: 11px;
  line-height: 1.25;
}
#sanbo-site[data-page="product"] .sb-gallery-controls {
  position: absolute;
  top: 12px;
  right: 12px;
  display: grid;
  justify-items: end;
  gap: 6px;
  max-width: calc(100% - 24px);
}
#sanbo-site[data-page="product"] .sb-gallery-switch {
  display: flex;
  gap: 3px;
  padding: 3px;
  border: 1px solid #ffffff80;
  border-radius: 12px;
  background: #f6f7f8f5;
}
#sanbo-site[data-page="product"] .sb-gallery-controls button {
  min-height: 35px;
  min-width: 36px;
  padding: 5px 9px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #293641;
  font: 600 12px/1.2 system-ui, sans-serif;
  cursor: pointer;
}
#sanbo-site[data-page="product"] .sb-gallery-controls button:hover { background: #e2e7eb; }
#sanbo-site[data-page="product"] .sb-gallery-controls button[aria-pressed="true"] { color: #fff; background: #24313b; }
#sanbo-site[data-page="product"] .sb-gallery-controls button:focus-visible { outline: 2px solid #2c6178; outline-offset: 1px; }
#sanbo-site[data-page="product"] .sb-gallery-hit-area {
  position: absolute;
  inset: 0;
  width: 100%;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
  box-shadow: none;
}
#sanbo-site[data-page="product"] .sb-gallery-hit-area:focus-visible { outline: 2px solid #2c6178; outline-offset: -5px; }
#sanbo-site[data-page="product"] .sb-has-scenes .sb-gallery-pending {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 55px 18px 20px;
  color: #485761;
  text-align: center;
  font: 500 13px/1.35 system-ui, sans-serif;
}
#sanbo-site[data-page="product"] .sb-has-scenes .sb-gallery-pending[hidden] { display: none; }
#sanbo-site[data-page="product"] #product-content {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "Microsoft YaHei", sans-serif;
}
#sanbo-site[data-page="product"] #product-content :is(.detail-faq p, .detail-faq details > a, .detail-inquiry p, .detail-text-link) {
  font-size: clamp(13px, 1.06vw, 14px);
  line-height: 1.34;
}
#sanbo-site[data-page="product"] #product-content .detail-faq summary {
  min-height: 46px;
  padding-block: 10px;
  font-size: clamp(14px, 1.2vw, 16px);
  font-weight: 600;
  line-height: 1.3;
}
#sanbo-site[data-page="product"] #product-content .detail-faq p { max-width: 85ch; padding-bottom: 13px; }
#sanbo-site[data-page="product"] .detail-faq details > a { display: inline-block; margin: 0 12px 14px 0; text-underline-offset: 3px; }
#sanbo-site[data-page="product"] #product-content .detail-inquiry .catalog-purchase {
  min-height: 36px;
  padding: 6px 15px;
  font-size: 13px;
  line-height: 1.25;
}
html[data-sb-language] #sanbo-site[data-page="product"] .detail-related-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
#sanbo-site[data-page="product"] .detail-related-grid .catalog-card { min-height: clamp(250px, 24vw, 380px); }
#sanbo-site[data-page="product"] .detail-related-grid .catalog-card-copy { padding: clamp(14px, 1.5vw, 22px) clamp(14px, 1.5vw, 22px) 0; }
html[data-sb-language] #sanbo-site[data-page="product"] .detail-related-grid .catalog-card h3 {
  font-size: clamp(14px, 1.15vw, 17px);
  font-weight: 600;
  line-height: 1.3;
}
#sanbo-site[data-page="product"] .detail-related-grid .catalog-card-media {
  min-height: 0;
  padding: 4px 12px 23px;
}
#sanbo-site[data-page="product"] .detail-related-grid .catalog-card-media img { width: min(100%, 228px); }
@media (max-width: 1099px) {
  html[data-sb-language] #sanbo-site[data-page="product"] .detail-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 899px) {
  #sanbo-site[data-page="product"] .detail-overview.sb-detail-ready {
    grid-template-areas: "info" "gallery" "specs" "facts";
    grid-template-rows: auto;
  }
  .sb-detail-stack { display: contents; }
  #sanbo-site[data-page="product"] .detail-gallery.sb-has-scenes { block-size: auto; aspect-ratio: 1.12; }
}
@media (max-width: 420px) {
  html[data-sb-language] #sanbo-site[data-page="product"] .detail-facts dl > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
  }
}
@media (max-width: 460px) {
  html[data-sb-language] #sanbo-site[data-page="product"] .detail-related-grid { grid-template-columns: minmax(0, 1fr); }
}
#sanbo-site .sb-blog-illustration {
  margin: clamp(17px, 2.5vw, 25px) 0;
}
#sanbo-site .sb-blog-illustration img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 8 / 5;
  object-fit: cover;
  border-radius: 14px;
  background: #eef0f1;
}
#sanbo-site .sb-blog-illustration figcaption {
  margin-top: 7px;
  color: #56626c;
  font-size: .78rem;
  line-height: 1.45;
}

html[data-sb-language] #sanbo-site[data-page="product"] .sb-detail-ready #detail-title {
  font-size: clamp(23px, 2vw, 33px);
  font-weight: 650;
  letter-spacing: -.035em;
  line-height: 1.08;
}
html[data-sb-language] #sanbo-site[data-page="product"] .sb-detail-ready .detail-model { margin-bottom: 5px; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-detail-ready .detail-description {
  margin-block: 6px 9px;
  font-size: clamp(13px, 1.06vw, 14px);
  line-height: 1.34;
}
html[data-sb-language] #sanbo-site[data-page="product"] .detail-info .catalog-purchase {
  min-height: 36px;
  padding-inline: 15px;
  font-size: 13px;
  line-height: 1.25;
  padding-block: 6px;
}
html[data-sb-language] #sanbo-site[data-page="product"] .sb-detail-ready :is(.sb-typical, .detail-facts) {
  padding-block: clamp(12px, 1vw, 16px);
}
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-facts {
  margin-top: 5px;
  line-height: 1.32;
}
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-facts > div { padding-block: 5px; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-facts dt { font-size: .75rem; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-facts dd { font-size: .81rem; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-table { margin-top: 9px; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-table caption { padding-bottom: 5px; font-size: .8rem; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-table :is(th, td) { padding-block: 5px; line-height: 1.25; }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-spec-table td { font-size: clamp(.72rem, 1.07vw, .83rem); }
html[data-sb-language] #sanbo-site[data-page="product"] .sb-typical .sb-spec-note {
  margin-top: 7px;
  font-size: .75rem;
  line-height: 1.33;
}
html[data-sb-language] #sanbo-site[data-page="product"] .sb-detail-ready .detail-facts dl { margin-top: 5px; }
html[data-sb-language] #sanbo-site[data-page="product"] .detail-facts dl > div {
  padding-block: 5px;
  font-size: clamp(12px, .95vw, 12.5px);
  line-height: 1.32;
}

@media (min-width: 900px) {
  #sanbo-site[data-page="product"] .sb-detail-stack { gap: 13px; }
  #sanbo-site[data-page="product"] .sb-detail-stack :is(.sb-typical, .detail-facts) {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
  }
  #sanbo-site[data-page="product"] .sb-detail-stack .sb-typical:has(.sb-spec-table) { flex-grow: 2; }
  #sanbo-site[data-page="product"] .sb-typical > .sb-spec-table { flex: 1 0 auto; }
  #sanbo-site[data-page="product"] .sb-detail-stack :is(.detail-facts > dl, .sb-typical:not(:has(.sb-spec-table)) > dl) {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
  }
  #sanbo-site[data-page="product"] .sb-detail-stack :is(.detail-facts > dl, .sb-typical:not(:has(.sb-spec-table)) > dl) > div {
    flex: 1 0 auto;
    align-content: center;
  }
  #sanbo-site[data-page="product"] .sb-detail-stack .sb-typical .sb-spec-note { margin-top: 10px; }
}


