* { margin:0; padding:0; box-sizing:border-box; }
  body { font-family: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color:#1a1a1a; background:#fff; font-size:16px; line-height:1.6; }
  a { color:#0A4B7F; text-decoration:none; }
  a:hover { text-decoration:underline; }
  .ribbon { background:#0A4B7F; color:#fff; font-size:13px; position:relative; }
  .ribbon-in { max-width:1360px; margin:0 auto; padding:7px 20px; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
  .ribbon a { color:#fff; }
  header.site { }
  .header-in { max-width:1360px; margin:0 auto; padding:14px 20px; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
  .logo { font-size:26px; font-weight:800; letter-spacing:2px; color:#0A4B7F; }
  nav.main { display:flex; gap:22px; flex-wrap:wrap; font-size:15px; }
  nav.main a { color:#1a1a1a; }
  .basket-btn { background:#EC2227; color:#fff; border:none; padding:9px 16px; border-radius:6px; font-size:14px; font-weight:600; cursor:pointer; }
  .basket-btn .basket-count { background:#fff; color:#EC2227; border-radius:10px; padding:0 7px; margin-left:6px; font-weight:700; }
  .basket-icon { display:none; }
  .menu-toggle { display:none; }
  .mobile-menu { display:none; }
  .wrap { max-width:1140px; margin:0 auto; padding:24px 20px 48px; }
  .crumbs { font-size:13px; color:#666; margin-bottom:18px; }
  .crumbs a { color:#666; }
  .product { display:grid; grid-template-columns: 1fr 1fr; gap:36px; }
  @media (max-width: 820px) { .product { grid-template-columns: 1fr; } }
  .main-img { border:1px solid #e5e5e5; border-radius:8px; overflow:hidden; aspect-ratio:1/1; background:#fafafa; }
  .main-img img { width:100%; height:100%; object-fit:cover; display:block; }
  .caption { font-size:13px; color:#666; margin-top:8px; text-align:center; }
  .thumbs { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:12px; }
  .thumbs button { border:2px solid #e5e5e5; border-radius:6px; padding:0; background:#fff; cursor:pointer; overflow:hidden; aspect-ratio:1/1; opacity:.45; transition:opacity .15s ease; }
  .thumbs button:hover { opacity:.8; }
  .thumbs button.active { opacity:1; }
  .thumbs img { width:100%; height:100%; object-fit:cover; display:block; }
  h1 { font-size:30px; line-height:1.25; margin-bottom:6px; }
  .meta { font-size:14px; color:#555; margin-bottom:14px; }
  .meta b { color:#1a1a1a; }
  .intro { margin-bottom:18px; }
  .quick { border:1px solid #e5e5e5; border-radius:8px; padding:6px 18px; margin-bottom:18px; background:#fff; }
  .quick li { list-style:none; padding:8px 0; font-size:15px; border-bottom:1px solid #eee; display:flex; gap:14px; }
  .quick li:last-child { border-bottom:none; }
  .quick li b { min-width:118px; flex-shrink:0; color:#555; font-weight:600; }
  .note { background:#EEF4FA; border:1px solid #BCD3E8; border-radius:8px; padding:12px 16px; font-size:14px; margin-bottom:18px; }
  .note.made-note { display:flex; gap:10px; background:none; border:none; border-radius:0; padding:0; color:#444; line-height:1.55; margin-bottom:20px; }
  .note.made-note svg { flex-shrink:0; margin-top:1px; }
  .cta-row { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:18px; }
  .btn-add { background:#EC2227; color:#fff; border:none; padding:13px 26px; border-radius:6px; font-size:16px; font-weight:700; cursor:pointer; }
  .btn-send { background:#fff; color:#0A4B7F; border:2px solid #0A4B7F; padding:11px 24px; border-radius:6px; font-size:16px; font-weight:700; cursor:pointer; }
  .trust { font-size:14px; color:#444; padding-left:0; }
  .trust li { list-style:none; padding:3px 0 3px 26px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A4B7F' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") no-repeat left center; background-size:15px 15px; }
  section.block { margin-top:44px; }
  section.block h2 { font-size:22px; margin-bottom:14px; }
  section.block p { margin-bottom:12px; }
  table.spec, table.size { width:100%; border-collapse:collapse; font-size:15px; }
  table.spec th, table.spec td, table.size th, table.size td { border:1px solid #e5e5e5; padding:9px 12px; text-align:left; }
  table.spec th { background:#fafafa; width:220px; }
  table.size th { background:#f3f4f6; color:#1a1a1a; text-align:center; }
  table.size td { text-align:center; }
  table.size td:first-child { font-weight:700; }
  .cards { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
  @media (max-width: 820px) { .cards { grid-template-columns:repeat(2,1fr); } }
  .card { border:1px solid #e5e5e5; border-radius:8px; padding:16px; }
  .card svg.ic { width:26px; height:26px; display:block; margin-bottom:10px; }
  .card h3 { font-size:16px; margin-bottom:6px; }
  .card p { font-size:14px; color:#444; }
  .steps { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
  @media (max-width: 820px) { .steps { grid-template-columns:repeat(2,1fr); } }
  .step { border:1px solid #e5e5e5; border-radius:8px; padding:16px; }
  .step .shead { display:flex; justify-content:space-between; align-items:flex-start; }
  .step svg.ic { width:23px; height:23px; }
  .step .n { font-size:22px; font-weight:800; color:#EC2227; }
  .step h3 { font-size:15px; margin:4px 0; }
  .step p { font-size:13px; color:#444; }
  .related { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
  @media (max-width: 820px) { .related { grid-template-columns:repeat(2,1fr); } }
  .rel { border:1px solid #e5e5e5; border-radius:8px; overflow:hidden; }
  .rel img { width:100%; aspect-ratio:1/1; object-fit:cover; display:block; }
  .rel .in { padding:12px 14px; }
  .rel h3 { font-size:16px; }
  .rel p { font-size:13px; color:#555; }
  form.inq { border:1px solid #e5e5e5; border-radius:8px; padding:20px; background:#fafafa; }
  form.inq .row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  @media (max-width: 820px) { form.inq .row { grid-template-columns:1fr; } }
  form.inq label { display:block; font-size:14px; font-weight:600; margin-bottom:4px; }
  form.inq input, form.inq textarea { width:100%; border:1px solid #ccc; border-radius:6px; padding:9px 11px; font-size:15px; margin-bottom:12px; font-family:inherit; }
  .demo-tag { display:inline-block; background:#fef3c7; border:1px solid #f59e0b; color:#92400e; font-size:12px; font-weight:700; border-radius:4px; padding:2px 8px; margin-left:8px; vertical-align:middle; }
  footer.site { margin-top:56px; background:#fafafa; }
  .footer-in { max-width:1360px; margin:0 auto; padding:28px 20px; display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; font-size:14px; color:#444; }
  .footer-in h4 { color:#1a1a1a; margin-bottom:8px; font-size:15px; }
  .footer-in li { list-style:none; padding:2px 0; }
  .bottom { padding:14px 20px; text-align:center; font-size:13px; color:#666; }
  #toast { position:fixed; bottom:22px; left:50%; transform:translateX(-50%); background:#0A4B7F; color:#fff; padding:12px 22px; border-radius:8px; font-size:15px; display:none; box-shadow:0 4px 18px rgba(0,0,0,.25); }

  .tabs-nav { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px; }
  .tabs-nav button { background:#f3f4f6; color:#1a1a1a; border:none; padding:10px 20px; border-radius:999px; font-size:15px; font-weight:600; cursor:pointer; font-family:inherit; }
  .tabs-nav button.active { background:#0A4B7F; color:#fff; }
  .tab-panel { display:none; }
  .tab-panel.active { display:block; }
  .tab-panel h3.tab-title { font-size:20px; margin:0 0 12px; }
  .tab-panel h4 { font-size:17px; margin:16px 0 6px; }
  .tab-panel p { margin-bottom:12px; }

  .fineprint { font-size:13px; color:#666; margin-top:8px; }
  .note.warn { background:#FEF2F2; border-color:#F5C6C6; }
  form.inq { position:relative; }
  .rel a { color:inherit; }
  .rel img { height:auto; }
  .logo { text-decoration:none; }

  /* Mobile header - siatex.com pattern: hamburger at the left end of the
     ribbon, logo left in the header row, basket icon with a red count
     badge at the right; the menu slides in from the left, full screen. */
  @media (max-width: 820px) {
    .ribbon-in { justify-content:flex-end; padding:7px 16px 7px 72px; flex-wrap:nowrap; }
    .ribbon-tag { display:none; }
    .menu-toggle { display:flex; position:absolute; left:0; top:0; height:100%; width:56px; background:#0A4B7F; border:none; flex-direction:column; align-items:center; justify-content:center; gap:5px; cursor:pointer; z-index:10000; padding:0; }
    .menu-toggle .bar { width:26px; height:2px; background:#fff; display:block; transition:transform .2s ease, opacity .2s ease; }
    body.menu-open .menu-toggle { position:fixed; left:auto; right:10px; top:10px; height:40px; width:44px; background:transparent; }
    body.menu-open .menu-toggle .bar:nth-child(1) { transform:translateY(7px) rotate(45deg); }
    body.menu-open .menu-toggle .bar:nth-child(2) { opacity:0; }
    body.menu-open .menu-toggle .bar:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
    .header-in { flex-wrap:nowrap; padding:10px 16px; gap:12px; }
    .logo { font-size:22px; }
    nav.main { display:none; }
    .basket-btn { position:relative; background:transparent; color:#0A4B7F; padding:6px; border-radius:0; }
    .basket-btn .basket-label { display:none; }
    .basket-icon { display:block; width:27px; height:27px; }
    .basket-btn .basket-count { position:absolute; top:-5px; right:-7px; background:#EC2227; color:#fff; border-radius:50%; min-width:20px; height:20px; line-height:20px; text-align:center; font-size:12px; font-weight:700; padding:0 5px; margin:0; }
    .mobile-menu { display:block; position:fixed; inset:0; background:rgba(0,0,0,.97); z-index:9998; transform:translateX(-105%); transition:transform .25s ease; padding:74px 22px 24px; overflow-y:auto; }
    .mobile-menu.open { transform:translateX(0); }
    .mobile-menu nav a { display:block; color:#fff; font-size:18px; padding:13px 4px; border-bottom:1px solid rgba(255,255,255,.14); }
    .mobile-menu nav a:hover { text-decoration:none; }
    .mobile-menu .mm-foot { margin-top:26px; }
    .mobile-menu .mm-foot a { color:#BCD3E8; font-size:15px; }
    body.menu-open { overflow:hidden; }
  }

  /* Two-column layout (approved design): sticky Quick Links sidebar on
     the LEFT, content column on the right; on narrow screens the columns
     stack with the content first. */
  .cols { display:grid; grid-template-columns:300px minmax(0,1fr); gap:36px; margin-top:38px; }
  .col-main section.block:first-child { margin-top:0; }
  .col-main .cards { grid-template-columns:repeat(2,1fr); }
  .col-main .steps { grid-template-columns:repeat(2,1fr); }
  .col-main .related { grid-template-columns:repeat(3,1fr); }
  .sidebar-inner { position:sticky; top:16px; display:flex; flex-direction:column; gap:16px; }
  .side-box { border:1px solid #e5e5e5; border-radius:8px; padding:16px 18px; background:#fff; }
  .side-box h3 { font-size:16px; margin-bottom:10px; color:#0A4B7F; }
  .qlinks { list-style:none; }
  .qlinks li { padding:5px 0; border-bottom:1px solid #f0f0f0; font-size:15px; }
  .qlinks li:last-child { border-bottom:none; }
  .qlinks a { color:#1a1a1a; }
  .qlinks a:hover { color:#0A4B7F; }
  @media (max-width: 980px) {
    .cols { grid-template-columns:1fr; }
    .col-main { order:1; }
    .sidebar { order:2; }
    .sidebar-inner { position:static; }
    .col-main .related { grid-template-columns:repeat(2,1fr); }
  }

  /* Mega menu under Products (v1.4.9) */
  header.site { position:relative; z-index:120; }
  nav.main .has-mega { position:relative; }
  nav.main .mega { position:absolute; left:50%; transform:translateX(-50%); top:calc(100% + 12px); width:880px; max-width:92vw; background:#fff; border:1px solid #e2e2e2; box-shadow:0 18px 40px rgba(0,0,0,.15); padding:16px 20px; display:none; grid-template-columns:repeat(4, 1fr); gap:4px 22px; z-index:300; }
  nav.main .mega::before { content:""; position:absolute; top:-12px; left:0; right:0; height:12px; }
  nav.main .has-mega:hover .mega, nav.main .has-mega:focus-within .mega { display:grid; }
  nav.main .mega a { font-size:14px; padding:5px 2px; color:#333; white-space:nowrap; }
  nav.main .mega a:hover { color:#0A4B7F; text-decoration:none; }
  .mobile-menu .mm-cats { display:grid; grid-template-columns:1fr 1fr; gap:2px 14px; padding:4px 0 10px 14px; }
  .mobile-menu .mm-cats a { font-size:14px; padding:4px 0; }
