  /* Defense against horizontal scroll caused by any rogue element width.
     Use `clip` not `hidden` so position:sticky still works for the contact bar. */
  html,body{overflow-x:clip}
  @supports not (overflow:clip){html,body{overflow-x:hidden}}

  /* FAZ Cookie Manager — SW brand hover overrides.
     Plugin default is opacity:0.8 on hover, which barely registers on a red button.
     Replace with a proper color shift to #B3001D (--sw-accent-hover) for solid buttons
     and a fill-on-hover for outlined buttons. */
  .faz-btn:hover{opacity:1}
  .faz-btn-accept:hover{background-color:#B3001D!important;border-color:#B3001D!important;color:#FFFFFF!important}
  .faz-btn-reject:hover,
  .faz-btn-customize:hover{background-color:#DF0024!important;border-color:#DF0024!important;color:#FFFFFF!important}
  .faz-btn-preferences:hover{background-color:#DF0024!important;border-color:#DF0024!important;color:#FFFFFF!important}

  /* FAZ revisit-consent floating icon (bottom-left after banner closed) — SW red.
     Belt-and-suspenders: override BOTH the CSS variable and the resolved property,
     because FAZ's inline <style> block re-declares --faz-revisit-consent-background-color
     as #0056A7 (blue) on every page load. */
  .faz-btn-revisit-wrapper{
    --faz-revisit-consent-background-color:#DF0024!important;
    --faz-revisit-consent-color:#FFFFFF!important;
    background-color:#DF0024!important;
    background:#DF0024!important;
    color:#FFFFFF!important;
    transition:background-color .2s ease
  }
  .faz-btn-revisit-wrapper:hover{
    --faz-revisit-consent-background-color:#B3001D!important;
    background-color:#B3001D!important;
    background:#B3001D!important
  }
  .faz-btn-revisit-wrapper .faz-btn-revisit{color:#FFFFFF!important}
  .faz-btn-revisit-wrapper .faz-btn-revisit svg{fill:currentColor!important}

  :root{
    --sw-accent:#df0024;
    --sw-accent-hover:#b3001d;
    --sw-accent-soft:rgba(223,0,36,0.08);
    --sw-dark:#101820;
    --sw-dark-soft:#1e2935;
    --sw-ink:#1f2937;
    --sw-text:#445467;
    --sw-text-soft:#66778a;
    --sw-steel:#7a8794;
    --sw-surface:#ffffff;
    --sw-surface-alt:#f3f6f8;
    --sw-surface-alt-strong:#e9eef3;
    --sw-border:#d7dee6;
    --sw-border-strong:#b8c4d1;
    --sw-success:#0f6d47;
    --sw-warning-bg:#fff6e3;
    --sw-warning-border:#d97706;
    --sw-warning-text:#8b4a08;
    --sw-font-body:"Source Sans 3","Segoe UI",Tahoma,Arial,sans-serif;
    --sw-font-heading:"Barlow Semi Condensed","Franklin Gothic Medium","Arial Narrow","Segoe UI",sans-serif;
    --sw-shell-width:1280px;
    --sw-section-space:clamp(72px,8vw,112px);
    --sw-radius-sm:4px;
    --sw-radius-md:8px;
    --sw-radius-lg:12px;
    --sw-shadow-sm:0 14px 28px -24px rgba(16,24,32,0.46);
    --sw-shadow-md:0 28px 52px -34px rgba(16,24,32,0.34);
    /* Legacy aliases — kept defined so older inline `<style>` references still resolve.
       Do NOT use these in new CSS; use --sw-accent / --sw-surface-alt directly. */
    --sw-brand:var(--sw-accent);
    --sw-bg-alt:var(--sw-surface-alt);
  }

  /* ── Site-wide font defaults (Hello Elementor has no body font; Astra used to set this) ── */
  body{
    font-family:var(--sw-font-body);
    color:var(--sw-text);
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
  }

  h1,h2,h3,h4,h5,h6{
    font-family:var(--sw-font-heading);
    color:var(--sw-ink);
    font-weight:800;
    letter-spacing:-0.005em;
  }

  /* ── Remove the 10px gap between Hello Elementor header location and first content container ── */
  body.wp-theme-hello-elementor .page-content > .elementor > .e-con:first-child{
    --padding-top:0 !important;
    padding-block-start:0 !important;
  }

  /* ── Remove Elementor header template container spacing ── */
  .elementor-location-header .elementor-section-wrap > .elementor-section,
  .elementor-location-header > .elementor-section,
  .elementor-location-header > .e-con{
    padding:0 !important;
    margin:0 !important;
    gap:0 !important
  }

  .elementor-location-header .elementor-widget-html{
    margin:0 !important;
    padding:0 !important
  }

  .elementor-location-header .elementor-widget-wrap,
  .elementor-location-header .e-con-inner{
    padding:0 !important;
    gap:0 !important
  }

  .e-con:has(.sw-page){
    padding-bottom:0 !important;
    gap:0 !important
  }

  /* ── Elementor container reset — force full-width for product pages ── */
  .sw-page{
    margin-left:calc(-50vw + 50%) !important;
    margin-right:calc(-50vw + 50%) !important;
    width:100vw !important;
    max-width:100vw !important;
    overflow-x:hidden;
    background:linear-gradient(180deg,#ffffff 0%,#f7f9fb 100%);
    color:var(--sw-text) !important;
    font-family:var(--sw-font-body) !important;
    font-size:clamp(1rem,0.95rem + 0.25vw,1.125rem) !important;
    line-height:1.78 !important;
    font-weight:400;
    text-align:left !important;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    position:relative;
    z-index:1
  }

  .sw-page p,.sw-page li,.sw-page td,.sw-page th,.sw-page dd{
    font-family:var(--sw-font-body) !important;
    font-weight:400;
    line-height:1.78
  }

  .sw-page h1,.sw-page h2,.sw-page h3,.sw-page h4{
    font-family:var(--sw-font-heading) !important
  }

  .sw-page p{
    margin-bottom:1.1em
  }


  .sw-shell,.sw-container{
    max-width:var(--sw-shell-width);
    margin:0 auto;
    padding-left:clamp(20px,3vw,32px);
    padding-right:clamp(20px,3vw,32px)
  }

  .sw-section{
    padding:var(--sw-section-space) 0
  }

  .sw-section-alt{
    background:linear-gradient(180deg,#f4f7f9 0%,#edf2f5 100%);
    border-top:1px solid var(--sw-border);
    border-bottom:1px solid var(--sw-border)
  }



  .sw-section-head{
    max-width:860px;
    margin:0 auto 32px
  }

  .sw-section-head.is-left{
    margin-left:0;
    margin-right:0
  }

  .sw-hero-grid,.sw-two-up{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(28px,3.5vw,52px);
    align-items:start
  }

  .sw-three-up{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:clamp(20px,2.4vw,30px)
  }



  @media (min-width:992px){


  }

  .sw-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--sw-text-soft);
    font-family:var(--sw-font-heading);
    font-size:0.8rem;
    font-weight:700;
    letter-spacing:0.18em;
    text-transform:uppercase
  }

  .sw-eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background-color:var(--sw-accent)
  }

  .sw-title-main{
    margin:0 0 18px;
    color:var(--sw-dark);
    font-family:var(--sw-font-heading);
    font-size:clamp(2.7rem,5vw,4.9rem);
    font-weight:800;
    line-height:0.95;
    letter-spacing:-0.03em;
    text-transform:none;
    max-width:13ch
  }

  .sw-title-sub{
    margin:0 0 12px;
    color:var(--sw-dark);
    font-family:var(--sw-font-heading);
    font-size:clamp(1.3rem,2vw,1.6rem);
    font-weight:700;
    line-height:1.2;
    letter-spacing:-0.01em
  }

  .sw-section-title{
    margin:0 0 14px;
    color:var(--sw-dark);
    font-family:var(--sw-font-heading);
    font-size:clamp(2rem,3vw,3rem);
    font-weight:700;
    line-height:1;
    letter-spacing:-0.02em;
    text-align:center
  }

  .sw-section-desc{
    max-width:720px;
    margin:0 auto 42px;
    color:var(--sw-text);
    font-family:var(--sw-font-body);
    font-size:1.05rem;
    line-height:1.72;
    text-align:center
  }

  .sw-lead{
    max-width:58ch;
    margin:0;
    color:var(--sw-text);
    font-size:1.08rem;
    line-height:1.78
  }

  .sw-machine-card{
    background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    box-shadow:var(--sw-shadow-sm)
  }


  .sw-machine-card{
    position:relative;
    overflow:hidden;
    padding:30px;
    display:flex;
    flex-direction:column;
    height:100%;
    transition:transform 0.24s ease,box-shadow 0.24s ease,border-color 0.24s ease
  }

  .sw-machine-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg,var(--sw-dark) 0 70%,var(--sw-accent) 70% 100%)
  }

  .sw-machine-card:hover{
    transform:translateY(-4px);
    border-color:var(--sw-border-strong);
    box-shadow:var(--sw-shadow-md)
  }



  .sw-card-footer{
    margin-top:auto;
    padding-top:18px;
    display:flex;
    flex-wrap:wrap;
    gap:10px
  }

  .sw-btn-primary,.sw-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:14px 28px;
    border-radius:var(--sw-radius-sm);
    border:1px solid transparent;
    font-family:var(--sw-font-heading);
    font-size:0.95rem;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
    text-decoration:none;
    transition:transform 0.22s ease,background-color 0.22s ease,color 0.22s ease,border-color 0.22s ease,box-shadow 0.22s ease;
    cursor:pointer;
    box-sizing:border-box
  }

  .sw-btn-primary{
    background:linear-gradient(180deg,var(--sw-accent) 0%,#be0b23 100%) !important;
    color:#ffffff !important;
    border-color:var(--sw-accent) !important;
    box-shadow:0 20px 36px -24px rgba(223,0,36,0.55)
  }

  .sw-btn-primary:hover{
    background:linear-gradient(180deg,var(--sw-accent-hover) 0%,#940018 100%) !important;
    border-color:var(--sw-accent-hover) !important;
    transform:translateY(-2px);
    box-shadow:0 24px 44px -26px rgba(179,0,29,0.56)
  }

  .sw-btn-secondary{
    background-color:transparent !important;
    color:var(--sw-dark) !important;
    border-color:var(--sw-dark) !important
  }

  .sw-btn-secondary:hover,.sw-btn-secondary.active{
    background-color:var(--sw-dark) !important;
    color:#ffffff !important;
    border-color:var(--sw-dark) !important;
    transform:translateY(-2px)
  }





















  .sw-feature-list{
    list-style:none;
    padding:0;
    margin:24px 0 32px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 22px
  }

  .sw-feature-list li{
    position:relative;
    padding-left:18px;
    color:var(--sw-ink);
    font-size:1rem;
    font-weight:600;
    line-height:1.65
  }

  .sw-feature-list li::before{
    content:"";
    position:absolute;
    left:0;
    top:0.8em;
    width:10px;
    height:2px;
    background-color:var(--sw-accent);
    transform:translateY(-50%)
  }

  .sw-hero-copy{
    position:relative;
    z-index:1
  }

  .sw-hero-cta{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:28px
  }




  .sw-gallery-wrapper{
    position:relative;
    width:100%;
    max-width:860px;
    margin:0 auto 14px
  }

  .sw-gallery-main{
    position:relative;
    width:100%;
    aspect-ratio:4 / 3;
    overflow:hidden;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    background:linear-gradient(180deg,#edf2f6 0%,#dde6ec 100%);
    box-shadow:var(--sw-shadow-sm);
    cursor:pointer
  }

  .sw-gallery-main img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:opacity 0.24s ease
  }

  .sw-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,0.18);
    border-radius:var(--sw-radius-sm);
    background-color:rgba(16,24,32,0.76);
    color:#ffffff;
    font-size:18px;
    cursor:pointer;
    user-select:none;
    z-index:2;
    transition:background-color 0.22s ease,border-color 0.22s ease,transform 0.22s ease
  }

  .sw-arrow:hover{
    background-color:var(--sw-accent);
    border-color:var(--sw-accent);
    transform:translateY(-50%) translateX(0)
  }

  .sw-arrow-prev{
    left:16px
  }

  .sw-arrow-next{
    right:16px
  }

  .sw-gallery-thumbs{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    justify-items:center
  }

  .sw-gallery-thumb-item{
    overflow:hidden;
    aspect-ratio:1 / 1;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-sm);
    background-color:#ffffff;
    cursor:pointer;
    opacity:0.7;
    transition:opacity 0.22s ease,border-color 0.22s ease,transform 0.22s ease
  }

  .sw-gallery-thumb-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
  }

  .sw-gallery-thumb-item:hover,.sw-gallery-thumb-item.active{
    opacity:1;
    border-color:var(--sw-accent);
    transform:translateY(-2px)
  }

  .sw-gallery-caption{
    margin:12px 0 0;
    font-size:0.9rem;
    color:var(--sw-text-soft);
    line-height:1.5
  }

  .sw-spec .sw-container{
    max-width:1200px;
    margin:0 auto
  }


  .sw-spec .sw-section-title,.sw-spec .sw-section-desc{
    text-align:center
  }

  .sw-spec .sw-section-desc{
    margin-bottom:0
  }







  .sw-spec .sw-table-wrapper{
    width:100%;
    margin:0 auto 52px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    background-color:#ffffff;
    box-shadow:var(--sw-shadow-sm)
  }

  .sw-spec .sw-data-table{
    width:100%;
    min-width:620px;
    margin-bottom:0 !important;
    border-collapse:collapse;
    font-family:var(--sw-font-body);
    font-size:0.95rem
  }

  .sw-spec .sw-data-table th,.sw-spec .sw-data-table td{
    padding:15px 20px;
    border-bottom:1px solid var(--sw-border);
    color:var(--sw-text);
    text-align:left;
    vertical-align:top
  }

  .sw-spec .sw-data-table th{
    width:34%;
    color:var(--sw-dark);
    background-color:#edf2f6;
    font-family:var(--sw-font-heading);
    font-weight:700;
    letter-spacing:0.02em;
    white-space:nowrap
  }

  .sw-spec .sw-data-table thead th{
    width:auto;
    color:#ffffff;
    background-color:var(--sw-dark)
  }

  .sw-spec .sw-data-table tr:nth-child(even){
    background-color:#f8fafc
  }

  .sw-spec .sw-data-table tr:last-child td,.sw-spec .sw-data-table tr:last-child th{
    border-bottom:none
  }





  .sw-spec .sw-spec-cta{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:28px
  }



















  body .elementor-field-group{
    margin-bottom:22px !important
  }

  body .elementor-field-label{
    display:block !important;
    margin-bottom:8px !important;
    color:var(--sw-dark) !important;
    font-family:var(--sw-font-heading) !important;
    font-size:0.9rem !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    letter-spacing:0.02em
  }

  body .elementor-field-textual{
    width:100% !important;
    min-height:50px !important;
    padding:14px 16px !important;
    border:1px solid var(--sw-border) !important;
    border-radius:var(--sw-radius-sm) !important;
    background-color:#ffffff !important;
    color:var(--sw-text) !important;
    font-family:var(--sw-font-body) !important;
    font-size:1rem !important;
    line-height:1.5 !important;
    box-shadow:none !important;
    transition:border-color 0.2s ease,box-shadow 0.2s ease,background-color 0.2s ease !important
  }

  body .elementor-field-textual:focus{
    border-color:var(--sw-dark) !important;
    background-color:#ffffff !important;
    color:var(--sw-dark) !important;
    box-shadow:0 0 0 4px rgba(16,24,32,0.08) !important;
    outline:none !important
  }

  body .elementor-widget-form .elementor-button{
    width:100% !important;
    justify-content:center !important;
    padding:16px 32px !important;
    border:1px solid var(--sw-accent) !important;
    border-radius:var(--sw-radius-sm) !important;
    background:linear-gradient(180deg,var(--sw-accent) 0%,#be0b23 100%) !important;
    color:#ffffff !important;
    font-family:var(--sw-font-heading) !important;
    font-size:0.95rem !important;
    font-weight:700 !important;
    letter-spacing:0.08em !important;
    text-transform:uppercase !important;
    box-shadow:0 20px 36px -24px rgba(223,0,36,0.55) !important;
    transition:transform 0.22s ease,box-shadow 0.22s ease,background-color 0.22s ease !important
  }

  body .elementor-widget-form .elementor-button:hover{
    transform:translateY(-2px) !important;
    background:linear-gradient(180deg,var(--sw-accent-hover) 0%,#940018 100%) !important;
    box-shadow:0 24px 42px -26px rgba(179,0,29,0.56) !important
  }

  .dialog-message{
    padding:10px !important;
    border-radius:18px;
    background-color:var(--sw-surface)
  }

  .dialog-close-button{
    top:20px !important;
    right:20px !important;
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:var(--sw-radius-sm);
    background-color:var(--sw-surface-alt) !important;
    color:var(--sw-dark) !important;
    transition:background-color 0.22s ease,color 0.22s ease,transform 0.22s ease !important;
    z-index:9999 !important
  }

  .dialog-close-button:hover{
    background-color:var(--sw-dark) !important;
    color:#ffffff !important;
    transform:translateY(-1px)
  }

  .dialog-close-button i,.dialog-close-button svg{
    fill:currentColor !important;
    font-size:16px !important
  }

  html[lang="ar"],body.rtl{
    width:100%;
    overflow-x:hidden !important
  }

  .sw-grid-tablet-3{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }

  /* ═══════════════════════════════════════════════════════════════
    NEW COMPONENTS — B2B Industrial (2026-03)
    ═══════════════════════════════════════════════════════════════ */

  /* ── Breadcrumb ── */

  .sw-breadcrumb{
    margin-bottom:28px;
    font-size:0.82rem;
    color:var(--sw-text-soft)
  }

  .sw-breadcrumb a{
    color:var(--sw-text-soft);
    text-decoration:none
  }

  .sw-breadcrumb a:hover{
    color:var(--sw-dark)
  }

  .sw-breadcrumb .sw-breadcrumb-sep{
    margin:0 8px;
    opacity:.45
  }

  /* ══════════════════════════════════════════
    Hero Clean — product pages (white bg + product image)
    ══════════════════════════════════════════ */

  .sw-hero-clean{
    background:#ffffff;
    border-bottom:1px solid var(--sw-border);
    padding:clamp(40px,5vw,72px) 0
  }

  .sw-hero-clean .sw-hero-grid{
    align-items:center
  }

  .sw-hero-clean .sw-hero-img{
    display:flex;
    justify-content:center;
    align-items:center
  }

  .sw-hero-clean .sw-hero-img img{
    width:100%;
    max-width:560px;
    height:auto;
    aspect-ratio:1/1;
    object-fit:contain;
    background:var(--sw-surface-alt)
  }

  /* ══════════════════════════════════════════
    Hero Banner — category pages (factory photo + dark overlay)
    Background via CSS only, no img tag needed.
    ══════════════════════════════════════════ */

  .sw-hero-banner{
    position:relative;
    background:#1a1a1a url('https://www.shengweimachine.com/wp-content/uploads/2023/12/hero-background.webp') center/cover no-repeat;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(56px,7vw,96px) 0
  }

  .sw-hero-banner::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.65);
    z-index:0
  }

  .sw-hero-banner .sw-shell{
    position:relative;
    z-index:1
  }

  .sw-hero-banner .sw-hero-copy{
    max-width:720px
  }

  .sw-hero-banner .sw-title-main{
    color:#ffffff !important
  }

  .sw-hero-banner .sw-lead{
    color:rgba(255,255,255,.92) !important
  }

  .sw-hero-banner .sw-eyebrow{
    color:var(--sw-accent)
  }

  .sw-hero-banner .sw-btn-secondary{
    background-color:transparent !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.55) !important
  }

  .sw-hero-banner .sw-btn-secondary:hover{
    background-color:#fff !important;
    color:var(--sw-dark) !important;
    border-color:#fff !important
  }

  .sw-hero-banner .sw-breadcrumb a,
  .sw-hero-banner .sw-breadcrumb-sep{
    color:rgba(255,255,255,.5)
  }

  .sw-hero-banner .sw-breadcrumb span:last-child{
    color:rgba(255,255,255,.7)
  }

  /* ── Selector Table (compact product selector with thumbnails) ── */

  .sw-selector-table{
    width:100%;
    border-collapse:collapse;
    font-size:.92rem
  }

  .sw-selector-table thead th{
    background:var(--sw-dark);
    color:#fff;
    padding:12px 16px;
    text-align:left;
    font-family:var(--sw-font-heading);
    font-weight:700;
    font-size:.85rem;
    text-transform:uppercase;
    letter-spacing:.04em
  }

  .sw-selector-table tbody tr{
    border-bottom:1px solid var(--sw-border);
    transition:background .15s
  }

  .sw-selector-table tbody tr:hover{
    background:var(--sw-surface-alt)
  }

  .sw-selector-table td,
  .sw-selector-table tbody th{
    padding:14px 16px;
    vertical-align:middle
  }

  .sw-selector-table .sw-sel-thumb{
    width:120px;
    height:120px;
    object-fit:contain;
    border-radius:var(--sw-radius-sm);
    background:var(--sw-surface-alt);
    flex-shrink:0
  }

  .sw-selector-table .sw-sel-machine{
    display:flex;
    align-items:center;
    gap:14px
  }

  .sw-selector-table .sw-sel-name{
    font-family:var(--sw-font-heading);
    font-weight:700;
    font-size:.95rem;
    line-height:1.3
  }

  .sw-selector-table .sw-sel-model{
    font-size:.82rem;
    color:var(--sw-text-soft);
    margin-top:2px
  }

  .sw-selector-table .sw-sel-cta{
    font-weight:700;
    color:var(--sw-accent);
    text-decoration:none;
    white-space:nowrap
  }

  .sw-selector-table .sw-sel-cta:hover{
    text-decoration:underline
  }

  @media(max-width:768px){
    .sw-selector-table,
    .sw-selector-table thead,
    .sw-selector-table tbody,
    .sw-selector-table tr,
    .sw-selector-table td,
    .sw-selector-table tbody th{
      display:block
    }
    .sw-selector-table thead{
      display:none
    }
    .sw-selector-table tbody tr{
      padding:16px;
      border-bottom:1px solid var(--sw-border)
    }
    .sw-selector-table td,
    .sw-selector-table tbody th{
      padding:4px 0;
      text-align:left
    }
    .sw-selector-table td::before{
      content:attr(data-label);
      display:block;
      font-size:.78rem;
      font-weight:700;
      color:var(--sw-text-soft);
      text-transform:uppercase;
      letter-spacing:.04em;
      margin-bottom:2px
    }
    .sw-selector-table .sw-sel-machine{
      margin-bottom:8px
    }
  }

  /* ── Category Rich Card Grid (CAT-3 style: photo + title + mini spec table) ── */

  .sw-cat-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px
  }

  @media(max-width:1024px){
    .sw-cat-grid{
      grid-template-columns:repeat(2,1fr);
      gap:20px
    }
  }

  @media(max-width:640px){
    .sw-cat-grid{
      grid-template-columns:1fr;
      gap:18px
    }
  }

  .sw-cat-card{
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    overflow:hidden;
    text-decoration:none;
    color:inherit;
    transition:border-color .2s, box-shadow .2s, transform .2s
  }

  .sw-cat-card:hover{
    border-color:var(--sw-border-strong);
    box-shadow:var(--sw-shadow-md);
    transform:translateY(-2px)
  }

  .sw-cat-card__img{
    aspect-ratio:4/3;
    background:var(--sw-surface-alt);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:22px;
    border-bottom:1px solid var(--sw-border)
  }

  .sw-cat-card__img img{
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    object-fit:contain
  }

  .sw-cat-card__body{
    padding:20px 22px 4px;
    display:flex;
    flex-direction:column;
    gap:10px;
    flex:1
  }

  .sw-cat-card__title{
    font-family:var(--sw-font-heading);
    font-weight:700;
    font-size:1.08rem;
    line-height:1.3;
    color:var(--sw-text);
    margin:0
  }

  .sw-cat-card__model{
    font-family:var(--sw-font-heading);
    font-weight:700;
    font-size:.78rem;
    letter-spacing:.04em;
    color:var(--sw-accent);
    margin:0;
    text-transform:uppercase
  }

  .sw-cat-card__desc{
    font-size:.9rem;
    line-height:1.55;
    color:var(--sw-text);
    margin:0 0 6px
  }

  .sw-cat-card__specs{
    border-top:1px solid var(--sw-border);
    padding-top:14px;
    margin:auto 0 0;
    display:flex;
    flex-direction:column;
    gap:9px
  }

  .sw-cat-card__spec-row{
    display:grid;
    grid-template-columns:86px 1fr;
    gap:12px;
    align-items:baseline;
    margin:0
  }

  .sw-cat-card__spec-label{
    font-family:var(--sw-font-heading);
    font-weight:700;
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.06em;
    color:var(--sw-text-soft);
    margin:0
  }

  .sw-cat-card__spec-value{
    font-size:.86rem;
    color:var(--sw-text);
    line-height:1.45;
    margin:0
  }

  .sw-cat-card__footer{
    padding:14px 22px 18px;
    border-top:1px solid var(--sw-border);
    background:var(--sw-surface-alt);
    margin-top:18px;
    display:flex;
    justify-content:space-between;
    align-items:center
  }

  .sw-cat-card__view{
    font-family:var(--sw-font-heading);
    font-weight:700;
    font-size:.88rem;
    color:var(--sw-accent);
    letter-spacing:.02em
  }

  .sw-cat-card:hover .sw-cat-card__view{
    text-decoration:underline
  }

  /* ── Trust Strip ── */

  .sw-trust-strip-wrap{
    background:linear-gradient(180deg,var(--sw-dark) 0%,#141e28 100%);
    position:relative
  }

  .sw-trust-strip-wrap::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;
    height:3px;
    background:linear-gradient(90deg,var(--sw-accent) 0% 18%,rgba(255,255,255,.12) 18% 100%)
  }

  .sw-trust-strip{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    width:100%
  }

  .sw-trust-item{
    padding:30px 36px;
    border-right:1px solid rgba(255,255,255,.07);
    position:relative;
    transition:background .25s ease
  }
  .sw-trust-item:last-child{
    border-right:none
  }
  .sw-trust-item:hover{
    background:rgba(255,255,255,.1)
  }

  .sw-trust-item:hover .sw-trust-label{
    color:rgba(255,255,255,.55)
  }

  .sw-trust-item:hover .sw-trust-value{
    color:var(--sw-accent)
  }

  .sw-trust-label{
    margin:0 0 10px;
    font-family:var(--sw-font-heading);
    font-size:0.65rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:rgba(255,255,255,.4);
    transition:color .25s ease
  }

  .sw-trust-value{
    margin:0;
    font-family:var(--sw-font-heading);
    font-size:1.08rem;
    font-weight:700;
    letter-spacing:.01em;
    color:#ffffff;
    transition:color .25s ease
  }

  /* ── Stat Stack ── */

  .sw-stat-stack{
    display:flex;
    flex-direction:column;
    gap:1px;
    background:var(--sw-border)
  }

  .sw-stat-block{
    background:#ffffff;
    padding:26px 30px
  }

  .sw-stat-label{
    margin:0 0 4px;
    font-family:var(--sw-font-heading);
    font-size:0.68rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--sw-text-soft)
  }

  .sw-stat-number{
    margin:0;
    font-family:var(--sw-font-heading);
    font-size:2.6rem;
    font-weight:800;
    line-height:1;
    color:var(--sw-dark)
  }

  .sw-stat-number .sw-stat-unit{
    font-size:1rem;
    font-weight:600;
    color:var(--sw-text-soft)
  }

  .sw-stat-number.is-accent{
    color:var(--sw-accent)
  }

  /* ── Capability Grid ── */

  .sw-capability-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-capability-col{
    background:#ffffff;
    padding:34px 30px
  }

  .sw-capability-num{
    margin:0 0 6px;
    font-family:var(--sw-font-heading);
    font-size:0.68rem;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--sw-accent)
  }

  /* ── Process Step Icons (vacuum machine 7-step visual) ── */

  .sw-process-strip{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-bottom:48px;
    padding:32px 24px;
    background:var(--sw-dark);
    border-radius:var(--sw-radius-lg);
    overflow-x:auto
  }

  .sw-process-step-icon{
    flex:0 0 auto;
    text-align:center;
    min-width:100px;
    max-width:140px
  }

  .sw-process-step-icon img{
    display:block;
    width:100%;
    height:auto;
    margin:0 auto 8px;
    max-width:100px;
    background:#ffffff;
    border-radius:var(--sw-radius-md);
    padding:10px
  }

  .sw-process-step-icon p{
    margin:0;
    font-family:var(--sw-font-body);
    font-size:0.82rem;
    font-weight:600;
    color:rgba(255,255,255,.75);
    line-height:1.3
  }

  @media(max-width:768px){
    .sw-process-strip{
      gap:8px;
      padding:20px 16px
    }
    .sw-process-step-icon{
      min-width:80px;
      max-width:110px
    }
    .sw-process-step-icon img{
      max-width:72px
    }
    .sw-process-step-icon p{
      font-size:0.72rem
    }
  }

  /* ── Workflow Grid ── */

  .sw-workflow-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-workflow-step{
    background:#ffffff;
    padding:26px 22px
  }

  .sw-workflow-step img{
    display:block;
    width:100%;
    max-width:120px;
    height:auto;
    margin:0 0 12px;
    border-radius:var(--sw-radius-sm)
  }

  .sw-workflow-step:last-child{
    background:var(--sw-surface-alt)
  }

  .sw-workflow-num{
    margin:0 0 10px;
    font-family:var(--sw-font-heading);
    font-size:1.8rem;
    font-weight:800;
    line-height:1;
    color:var(--sw-border)
  }

  .sw-workflow-step:last-child .sw-workflow-num{
    color:var(--sw-accent)
  }

  .sw-workflow-title{
    margin:0 0 8px;
    font-family:var(--sw-font-heading);
    font-size:1rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-workflow-text{
    margin:0;
    font-size:0.86rem;
    line-height:1.68;
    color:var(--sw-text-soft)
  }

  /* ── Accordion (FAQ) ── */

  .sw-accordion{
    max-width:820px;
    border-top:1px solid var(--sw-border)
  }

  .sw-accordion details{
    border-bottom:1px solid var(--sw-border)
  }

  .sw-accordion summary{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 0;
    cursor:pointer;
    list-style:none;
    -webkit-list-style:none
  }

  .sw-accordion summary::-webkit-details-marker{
    display:none
  }

  .sw-accordion summary h3{
    margin:0;
    font-family:var(--sw-font-heading);
    font-size:1.02rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-accordion summary:hover h3{
    color:var(--sw-accent)
  }

  .sw-acc-icon{
    font-family:var(--sw-font-heading);
    font-size:1.3rem;
    font-weight:300;
    color:var(--sw-text-soft);
    flex-shrink:0;
    margin-left:20px;
    line-height:1;
    transition:transform .2s ease
  }

  .sw-acc-icon::before{
    content:'+';
    display:inline-block
  }

  details[open] .sw-acc-icon::before{
    content:'\2212'
  }

  .sw-accordion .sw-acc-body{
    padding:0 0 24px;
    font-size:0.97rem;
    line-height:1.8;
    color:var(--sw-text)
  }

  /* ── Industry Grid ── */

  .sw-industry-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-industry-link{
    display:block;
    background:#ffffff;
    padding:28px 22px;
    text-decoration:none;
    transition:background .15s ease
  }

  .sw-industry-link:hover{
    background:var(--sw-surface-alt)
  }

  .sw-industry-link h3{
    margin:0 0 8px;
    font-family:var(--sw-font-heading);
    font-size:1.02rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-industry-link p{
    margin:0;
    font-size:0.86rem;
    line-height:1.65;
    color:var(--sw-text-soft)
  }

  /* ── Comparison Grid ── */

  .sw-comparison-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-comparison-grid--3col{
    grid-template-columns:repeat(3,1fr)
  }

  .sw-comparison-col{
    background:#ffffff;
    padding:30px 28px
  }

  .sw-comparison-col.is-highlight{
    background:var(--sw-accent-soft)
  }

  /* General table wrapper — horizontal scroll on narrow viewports.
     Page-scoped .sw-spec rules still apply on top via specificity. */
  .sw-table-wrapper{
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch
  }
  .sw-table-wrapper .sw-data-table{
    min-width:620px
  }

  /* Workflow grid — photo variant: images fill the card width
     (vs the default icon-style 120px cap used by CAT-2 / collar). */
  .sw-workflow-grid--photo .sw-workflow-step img{
    max-width:100%;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    margin:0 0 16px;
    border-radius:var(--sw-radius-sm)
  }

  /* Dark-section theme for comparison grid (white-on-dark).
     Used by SW-CCS6 §9 spout-vs-alternatives. */
  .sw-section-dark .sw-section-head-left .sw-eyebrow{
    color:var(--sw-accent)
  }
  .sw-section-dark .sw-section-head-left .sw-section-title,
  .sw-section-dark .sw-section-head-left h2{
    color:#ffffff
  }
  .sw-section-dark .sw-section-head-left p{
    color:#c4ccd4
  }
  .sw-section-dark .sw-section-head-left a{
    color:#ff5e6c
  }
  .sw-section-dark .sw-comparison-grid{
    background:#3a4754;
    border-color:#3a4754
  }
  .sw-section-dark .sw-comparison-col{
    background:#1a242f;
    color:#dde2e7
  }
  .sw-section-dark .sw-comparison-col.is-highlight{
    background:#262f3b
  }
  .sw-section-dark .sw-comparison-col h3,
  .sw-section-dark .sw-comparison-col .sw-title-sub{
    color:#ffffff
  }
  .sw-section-dark .sw-comparison-col .sw-feature-list li{
    color:#dde2e7
  }
  .sw-section-dark .sw-comparison-col img{
    filter:brightness(0) invert(1);
    opacity:0.95
  }
  .sw-section-dark .sw-comparison-col a{
    color:#ff5e6c
  }

  /* ── Expert Guides ── */

  .sw-expert-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:clamp(18px,2vw,26px)
  }

  .sw-expert-card{
    display:block;
    padding:24px 22px;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-sm);
    background:#fff;
    color:inherit;
    text-decoration:none;
    transition:border-color .2s ease,transform .22s ease,box-shadow .22s ease
  }

  .sw-expert-card:hover{
    border-color:var(--sw-border-strong);
    transform:translateY(-2px);
    box-shadow:0 6px 20px -12px rgba(15,23,42,.18)
  }

  .sw-expert-card h3{
    margin:0 0 8px;
    font-family:var(--sw-font-heading);
    font-size:1rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-expert-card p{
    margin:0 0 14px;
    font-size:0.88rem;
    line-height:1.65;
    color:var(--sw-text-soft)
  }

  .sw-expert-card .sw-expert-link,
  .sw-expert-card a{
    display:inline-block;
    font-family:var(--sw-font-heading);
    font-size:0.82rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--sw-accent);
    text-decoration:none
  }

  .sw-expert-card:hover .sw-expert-link,
  .sw-expert-card a:hover{
    color:var(--sw-accent-hover)
  }

  /* ── Testimonials ── */

  .sw-testimonial-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-testimonial{
    background:#ffffff;
    padding:30px 28px
  }

  .sw-testimonial-quote{
    margin:0 0 18px;
    font-size:1rem;
    line-height:1.78;
    color:var(--sw-text);
    font-style:italic
  }

  .sw-testimonial-quote::before{
    content:'\201C';
    font-family:Georgia,serif;
    font-size:1.6rem;
    color:var(--sw-accent);
    margin-right:4px;
    vertical-align:-.15em
  }

  .sw-testimonial-name{
    margin:0 0 2px;
    font-family:var(--sw-font-heading);
    font-size:0.88rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-testimonial-role{
    margin:0;
    font-size:0.82rem;
    color:var(--sw-text-soft)
  }

  /* ── Why Choose (4-item grid) ── */

  .sw-why-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-why-item{
    background:#ffffff;
    padding:28px 24px
  }

  .sw-why-item h3{
    margin:0 0 10px;
    font-family:var(--sw-font-heading);
    font-size:1rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-why-item p{
    margin:0;
    font-size:0.88rem;
    line-height:1.68;
    color:var(--sw-text-soft)
  }

  /* ── Suitable Packaging Bag Types ── */

  .sw-bag-samples{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px
  }

  .sw-bag-sample-item{
    text-align:center
  }

  .sw-bag-sample-item img{
    width:100%;
    height:auto;
    border-radius:var(--sw-radius-md);
    border:1px solid var(--sw-border)
  }

  .sw-bag-sample-item p{
    margin:10px 0 0;
    font-family:var(--sw-font-heading);
    font-size:.88rem;
    font-weight:600;
    color:var(--sw-ink);
    letter-spacing:.02em
  }

  /* ── Bag Types (Dark Section with Line Drawings) ── */

  .sw-section-dark{
    background:var(--sw-dark);
    padding:var(--sw-section-space) 0
  }

  .sw-bag-types-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:24px
  }

  .sw-bag-type-item{
    text-align:center
  }

  .sw-bag-type-item img{
    width:100%;
    height:auto;
    max-width:160px
  }

  .sw-bag-type-item p{
    color:rgba(255,255,255,.7);
    font-size:.85rem;
    margin-top:10px
  }

  /* ── Gallery Grid ── */




  /* ── Machine Card Image ── */

  .sw-card-img{
    width:100%;
    aspect-ratio:4/3;
    margin-bottom:22px;
    border-radius:var(--sw-radius-md);
    overflow:hidden;
    background:var(--sw-surface-alt)
  }

  .sw-card-img img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block
  }

  .sw-machine-card .sw-card-img{
    background:#f4f6f8
  }

  .sw-card-model{
    position:absolute;
    top:12px;
    left:12px;
    padding:4px 10px;
    font-family:var(--sw-font-heading);
    font-size:0.75rem;
    font-weight:700;
    letter-spacing:.05em;
    color:#fff;
    background:rgba(0,0,0,.72);
    border-radius:var(--sw-radius-sm);
    z-index:1
  }

  .sw-card-tag{
    display:inline-block;
    margin-bottom:6px;
    padding:2px 8px;
    font-size:0.72rem;
    font-weight:600;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:var(--sw-text-soft);
    background:var(--sw-bg-alt);
    border-radius:var(--sw-radius-sm);
    border:1px solid var(--sw-border)
  }

  .sw-related-cta{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px
  }

  /* ── Video Section ── */

  .sw-video-wrapper{
    position:relative;
    width:100%;
    max-width:860px;
    margin:48px auto 0;
    border-radius:var(--sw-radius-lg);
    overflow:hidden
  }

  .sw-video-wrapper iframe{
    width:100%;
    aspect-ratio:16/9;
    height:auto
  }

  /* ── CTA Dark Section ── */

  .sw-cta-dark{
    background:var(--sw-dark);
    padding:clamp(72px,8vw,112px) 0
  }

  .sw-cta-dark .sw-cta-grid{
    display:grid;
    grid-template-columns:1fr auto;
    gap:clamp(24px,4vw,64px);
    align-items:center
  }

  .sw-cta-dark .sw-cta-buttons{
    display:flex;
    flex-direction:column;
    gap:12px;
    flex-shrink:0
  }

  .sw-cta-dark .sw-btn-secondary{
    background-color:transparent !important;
    color:#ffffff !important;
    border-color:rgba(255,255,255,.4) !important
  }

  .sw-cta-dark .sw-btn-secondary:hover{
    background-color:#ffffff !important;
    color:var(--sw-dark) !important;
    border-color:#ffffff !important
  }

  .sw-cta-dark .sw-section-title{
    color:#fff !important
  }

  .sw-cta-dark .sw-title-main{
    color:#fff !important
  }

  .sw-cta-dark .sw-eyebrow{
    color:rgba(255,255,255,.65) !important
  }

  .sw-cta-dark .sw-lead{
    color:rgba(255,255,255,.72) !important
  }

  .sw-cta-dark .sw-workflow-text{
    color:rgba(255,255,255,.55) !important
  }

  /* ── Options List ── */

  .sw-options-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
    margin:0;
    padding:0;
    list-style:none
  }

  .sw-options-list li{
    display:flex;
    align-items:baseline;
    gap:10px;
    font-size:0.95rem;
    color:var(--sw-text)
  }

  .sw-options-list li::before{
    content:'';
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--sw-accent);
    flex-shrink:0
  }

  /* ── Internal Link List ── */






  /* ── Section Header (left-aligned variant) ── */

  .sw-section-head-left{
    margin-bottom:44px
  }

  .sw-section-head-left .sw-section-title{
    text-align:left
  }

  .sw-section-head-left .sw-section-desc{
    text-align:left;
    margin-left:0
  }

  /* ── Model Visual Grid (bag width diagrams) ── */

  .sw-model-visual-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:clamp(20px,3vw,40px)
  }

  .sw-model-visual-item{
    text-align:center;
    padding:28px 20px;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    background:#ffffff;
    transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease
  }

  .sw-model-visual-item:hover{
    border-color:var(--sw-border-strong);
    transform:translateY(-4px);
    box-shadow:var(--sw-shadow-md)
  }

  .sw-model-visual-item img{
    width:100%;
    max-width:280px;
    height:auto;
    margin:0 auto 18px;
    display:block
  }

  .sw-model-visual-caption{
    margin:0;
    font-family:var(--sw-font-heading);
    font-size:0.9rem;
    font-weight:600;
    color:var(--sw-text);
    line-height:1.55
  }

  /* ── Equipment Grid (line component photos) ── */

  .sw-equipment-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:clamp(16px,2vw,24px)
  }

  .sw-equipment-item{
    text-align:center;
    padding:20px;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    background:#ffffff;
    transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease
  }

  .sw-equipment-item:hover{
    border-color:var(--sw-border-strong);
    transform:translateY(-4px);
    box-shadow:var(--sw-shadow-md)
  }

  .sw-equipment-item img{
    width:100%;
    height:auto;
    aspect-ratio:1/1;
    object-fit:contain;
    margin-bottom:16px;
    border-radius:var(--sw-radius-sm);
    background:var(--sw-surface-alt)
  }

  .sw-equipment-name{
    margin:0 0 6px;
    font-family:var(--sw-font-heading);
    font-size:0.95rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-equipment-desc{
    margin:0;
    font-size:0.84rem;
    line-height:1.6;
    color:var(--sw-text-soft)
  }

  /* ── Scenario Cards (application-specific configurations) ── */

  .sw-scenario-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:1px;
    background:var(--sw-border);
    border:1px solid var(--sw-border)
  }

  .sw-scenario-card{
    background:#ffffff;
    padding:30px 28px
  }

  .sw-scenario-card h3{
    margin:0 0 2px;
    font-family:var(--sw-font-heading);
    font-size:1.08rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-scenario-subtitle{
    margin:0 0 20px;
    font-size:0.86rem;
    color:var(--sw-text-soft);
    font-style:italic
  }

  .sw-scenario-config{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:8px 16px;
    margin:0
  }

  .sw-scenario-config dt{
    font-family:var(--sw-font-heading);
    font-size:0.68rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--sw-text-soft);
    padding-top:2px
  }

  .sw-scenario-config dd{
    margin:0;
    font-size:0.92rem;
    font-weight:600;
    color:var(--sw-dark)
  }

  /* ═══════════════════════════════════════════════════════════════
    END NEW COMPONENTS
    ═══════════════════════════════════════════════════════════════ */

  @media (max-width:992px){
    .sw-three-up{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .sw-two-up,.sw-hero-grid{
    grid-template-columns:1fr
  }

  .sw-hero-clean .sw-hero-grid{
    grid-template-columns:1fr
  }


  .sw-title-main{
    max-width:100%
  }



  .sw-grid-tablet-3{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }

  /* New components — tablet */
  .sw-trust-strip{
    grid-template-columns:1fr 1fr
  }

  .sw-hero-clean .sw-hero-img{
    order:2;
    max-width:100%;
    margin:0 auto
  }

  .sw-capability-grid{
    grid-template-columns:1fr
  }

  .sw-workflow-grid{
    grid-template-columns:repeat(2,1fr)
  }

  .sw-industry-grid{
    grid-template-columns:1fr 1fr
  }

  .sw-why-grid{
    grid-template-columns:1fr 1fr
  }

  .sw-testimonial-grid{
    grid-template-columns:1fr
  }

  .sw-expert-grid{
    grid-template-columns:1fr
  }

  .sw-comparison-grid,
  .sw-comparison-grid--3col{
    grid-template-columns:1fr
  }

  .sw-cta-dark .sw-cta-grid{
    grid-template-columns:1fr
  }

  .sw-options-list{
    grid-template-columns:1fr
  }

  .sw-bag-samples{
    grid-template-columns:repeat(2,1fr)
  }

  .sw-bag-types-grid{
    grid-template-columns:repeat(3,1fr)
  }

  .sw-equipment-grid{
    grid-template-columns:repeat(2,1fr)
  }

  .sw-scenario-grid{
    grid-template-columns:1fr 1fr
  }
  }

  @media (max-width:768px){
    .sw-section,.sw-section-alt,.sw-section-dark{
    padding-top:64px;
    padding-bottom:64px
  }


  .sw-title-main{
    font-size:clamp(2.3rem,10vw,3rem);
    max-width:100%
  }

  .sw-three-up,.sw-grid-tablet-3,.sw-feature-list{
    grid-template-columns:1fr
  }


  .sw-gallery-thumbs{
    grid-template-columns:repeat(4,minmax(0,1fr))
  }

  .sw-bag-samples{
    grid-template-columns:repeat(2,1fr)
  }

  .sw-bag-types-grid{
    grid-template-columns:repeat(3,1fr)
  }

  .sw-btn-primary,.sw-btn-secondary{
    width:100%
  }

  .sw-spec .sw-data-table th,.sw-spec .sw-data-table td{
    padding:11px 12px;
    font-size:0.85rem
  }

  .sw-spec .sw-data-table th{
    width:auto;
    white-space:normal
  }

  .sw-spec .sw-table-wrapper::after{
    content:"Scroll ->";
    display:block;
    padding:6px 10px;
    color:var(--sw-text-soft);
    font-size:11px;
    font-style:italic;
    text-align:right
  }

  /* New components — mobile */
  .sw-trust-strip{
    grid-template-columns:1fr
  }

  .sw-workflow-grid{
    grid-template-columns:1fr
  }

  .sw-industry-grid{
    grid-template-columns:1fr
  }

  .sw-why-grid{
    grid-template-columns:1fr
  }

  .sw-hero-clean{
    padding-top:40px;
    padding-bottom:40px
  }

  .sw-hero-cta{
    display:flex;
    flex-direction:column;
    gap:12px
  }

  .sw-hero-clean .sw-hero-img{
    max-width:100%
  }

  .sw-stat-number{
    font-size:2rem
  }

  .sw-model-visual-grid{
    grid-template-columns:1fr
  }

  .sw-equipment-grid{
    grid-template-columns:1fr 1fr
  }

  .sw-scenario-grid{
    grid-template-columns:1fr
  }
  }

  @media (max-width:480px){
    .sw-machine-card{
    padding-left:20px;
    padding-right:20px
  }

  .sw-gallery-thumbs{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }

  .sw-bag-samples{
    grid-template-columns:1fr 1fr
  }

  .sw-bag-types-grid{
    grid-template-columns:repeat(2,1fr)
  }

  .sw-equipment-grid{
    grid-template-columns:1fr
  }
  }

  /* ═══════════════════════════════════════════════
    KEY COMPONENTS GRID  (3-col, compact, lightbox-ready)
    ═══════════════════════════════════════════════ */
  .sw-components-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:clamp(16px,2vw,24px);
    margin-top:32px
  }

  .sw-component-card{
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-md);
    background:#ffffff;
    overflow:hidden;
    cursor:zoom-in;
    transition:border-color .2s,box-shadow .2s
  }

  .sw-component-card:hover{
    border-color:var(--sw-border-strong);
    box-shadow:0 6px 20px -8px rgba(16,24,32,0.18)
  }

  .sw-component-card__img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:contain;
    background:var(--sw-surface-alt);
    padding:16px;
    display:block
  }

  .sw-component-card__body{
    padding:14px 16px 18px
  }

  .sw-component-card__name{
    margin:0 0 4px;
    font-family:var(--sw-font-heading);
    font-size:0.9rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-component-card__desc{
    margin:0;
    font-size:0.82rem;
    line-height:1.55;
    color:var(--sw-text-soft)
  }

  /* ── Lightbox ── */
  .sw-lightbox{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(10,15,20,0.88);
    z-index:1000001;
    align-items:center;
    justify-content:center;
    cursor:zoom-out
  }

  .sw-lightbox.is-open{
    display:flex
  }

  /* 灯箱 / 手机菜单开启时隐藏 sticky 联系栏，避免遮挡 + 误触 */
  body:has(.sw-lightbox.is-open) .sw-sticky-bar,
  body:has(.sw-mobile-menu.is-open) .sw-sticky-bar{
    display:none !important
  }

  .sw-lightbox__img{
    max-width:95vw;
    max-height:92vh;
    min-width:min(480px,70vw);
    min-height:min(360px,55vh);
    width:auto;
    height:auto;
    object-fit:contain;
    border-radius:var(--sw-radius-md);
    box-shadow:0 32px 80px rgba(0,0,0,0.5)
  }

  .sw-lightbox__close{
    position:fixed;
    top:20px;
    right:28px;
    color:#ffffff;
    font-size:36px;
    line-height:1;
    cursor:pointer;
    opacity:0.8;
    transition:opacity .15s
  }

  .sw-lightbox__close:hover{
    opacity:1
  }

  .sw-lightbox__caption{
    position:fixed;
    bottom:24px;
    left:50%;
    transform:translateX(-50%);
    color:rgba(255,255,255,0.7);
    font-size:0.82rem;
    text-align:center;
    pointer-events:none
  }

  @media(max-width:768px){
    .sw-components-grid{
      grid-template-columns:repeat(2,1fr)
    }
  }

  @media(max-width:480px){
    .sw-components-grid{
      grid-template-columns:1fr
    }
  }


  .sw-hd{position:sticky;top:0;width:100vw;margin-left:calc(-50vw + 50%);z-index:9999;transition:transform .3s ease}
  .sw-hd--hidden{transform:translateY(-100%)}
  .sw-hd-bar{background:#ffffff;transition:box-shadow .3s ease}
  .sw-hd--compact .sw-hd-bar{box-shadow:0 2px 16px rgba(16,24,32,0.08)}
  .sw-hd-inner{max-width:var(--sw-shell-width);margin:0 auto;padding:0 clamp(20px,3vw,32px);display:flex;align-items:center;height:72px;transition:height .25s ease}
  .sw-hd--compact .sw-hd-inner{height:60px}
  .sw-hd-logo{display:flex;align-items:center;flex-shrink:0;margin-right:auto}
  .sw-hd-logo img{height:28px;width:auto;display:block;transition:height .25s ease}
  .sw-hd--compact .sw-hd-logo img{height:24px}
  .sw-hd-logo-icon{height:36px !important;width:36px !important;object-fit:contain}
  .sw-hd--compact .sw-hd-logo-icon{height:32px !important;width:32px !important}
  .sw-hd-nav{display:flex;align-items:center;align-self:stretch;gap:clamp(28px,3vw,44px)}
  .sw-hd-nav-link{font-family:var(--sw-font-heading);font-size:15px;font-weight:700;letter-spacing:0.3px;text-transform:uppercase;color:var(--sw-ink);text-decoration:none;padding:8px 0;display:inline-flex;align-items:center;gap:6px;position:relative;transition:color .2s ease;line-height:1;white-space:nowrap}
  .sw-hd-nav-link::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--sw-accent);transition:width .25s ease, left .25s ease}
  .sw-hd-nav-link:hover,.sw-hd-nav-link.is-active{color:var(--sw-accent)}
  .sw-hd-nav-link:hover::after,.sw-hd-nav-link.is-active::after{width:100%;left:0}
  .sw-hd-chevron{transition:transform .25s ease}
  .sw-hd-nav-link.is-active .sw-hd-chevron{transform:rotate(180deg)}
  .sw-hd-actions{display:flex;align-items:center;gap:16px;margin-left:auto}
  .sw-hd-cta{display:inline-flex;align-items:center;padding:10px 24px;background:var(--sw-accent);color:#ffffff !important;font-family:var(--sw-font-heading);font-size:14px;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;text-decoration:none;border-radius:var(--sw-radius-sm);transition:background .2s ease, transform .15s ease, box-shadow .2s ease;white-space:nowrap}
  .sw-hd-cta:hover{background:var(--sw-accent-hover);transform:translateY(-1px);box-shadow:0 4px 14px rgba(223,0,36,0.3)}
  .sw-hd-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;background:transparent !important;border:none !important;box-shadow:none !important;outline:none;cursor:pointer;padding:6px;margin-left:12px;border-radius:0;-webkit-appearance:none;appearance:none}
  .sw-hd-burger span{display:block;width:100%;height:2px;background:var(--sw-ink);border-radius:2px;transition:transform .25s ease, opacity .2s ease}

  .sw-mega{position:absolute;top:100%;left:0;width:100%;background:#ffffff;border-top:3px solid var(--sw-accent);box-shadow:0 24px 64px -12px rgba(16,24,32,0.18);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s ease, transform .25s ease, visibility .25s ease;z-index:9998}
  .sw-mega.is-open{opacity:1;visibility:visible;transform:translateY(0)}
  .sw-mega-wrap{max-width:1600px;margin:0 auto;padding:40px clamp(32px,4vw,60px) 32px;display:grid;grid-template-columns:1fr 1fr 1.4fr 1.4fr;gap:0}
  .sw-mega-col{padding:0 clamp(24px,3vw,40px);border-right:1px solid var(--sw-border)}
  .sw-mega-col:first-child{padding-left:0}
  .sw-mega-col:last-child{border-right:none;padding-right:0}
  .sw-mega-heading{display:inline-block;font-family:var(--sw-font-heading);font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--sw-ink);text-decoration:none;margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid var(--sw-accent);transition:color .2s}
  .sw-mega-heading:hover{color:var(--sw-accent)}
  .sw-mega-desc{font-size:13.5px;color:var(--sw-text-soft);margin:0 0 18px;line-height:1.5}
  .sw-mega-list{list-style:none;margin:0;padding:0}
  .sw-mega-list li{margin-bottom:2px}
  .sw-mega-list a{display:block;padding:9px 12px;text-decoration:none;border-radius:var(--sw-radius-sm);transition:background .15s ease}
  .sw-mega-list a:hover{background:var(--sw-accent-soft)}
  .sw-mega-list a strong{display:block;font-family:var(--sw-font-body);font-size:15px;font-weight:600;color:var(--sw-ink);line-height:1.4;transition:color .15s}
  .sw-mega-list a:hover strong{color:var(--sw-accent)}
  .sw-mega-list a span{display:block;font-size:13px;font-weight:400;color:var(--sw-text-soft);margin-top:2px;line-height:1.3}
  .sw-mega-2col{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
  .sw-mega-foot{display:inline-block;margin-top:18px;font-family:var(--sw-font-body);font-size:14px;font-weight:600;color:var(--sw-accent);text-decoration:none;transition:letter-spacing .2s}
  .sw-mega-foot:hover{letter-spacing:0.3px}

  .sw-hd-drop{position:relative;align-self:stretch;display:flex;align-items:center;contain:layout}
  .sw-hd-drop-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-6px);min-width:260px;background:#fff;border-top:3px solid var(--sw-accent);box-shadow:0 24px 64px -12px rgba(16,24,32,0.18);opacity:0;visibility:hidden;transition:opacity .25s ease,transform .25s ease,visibility .25s ease;z-index:9998;padding:8px 0}
  .sw-hd-drop-panel.is-open{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
  .sw-hd-drop-panel a{display:block;padding:12px 22px;font-family:var(--sw-font-heading);font-size:15px;font-weight:700;color:var(--sw-ink);text-decoration:none;text-transform:uppercase;letter-spacing:0.3px;transition:background .15s,color .15s;white-space:nowrap;border-left:3px solid transparent}
  .sw-hd-drop-panel a:hover{background:var(--sw-accent);color:#fff;border-left-color:var(--sw-dark)}
  .sw-hd-drop-panel .sw-hd-drop-divider{height:1px;background:var(--sw-border);margin:6px 22px}

  .sw-mobile-menu{position:fixed;bottom:0;left:0;width:100%;height:80vh;height:80dvh;background:#ffffff;z-index:99999;transform:translateY(100%);transition:transform .35s cubic-bezier(0.16,1,0.3,1);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 -8px 30px rgba(0,0,0,0.12);display:flex;flex-direction:column;border-radius:20px 20px 0 0;touch-action:pan-y}
  .sw-mobile-menu.is-open{transform:translateY(0)}
  .sw-mobile-top{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--sw-border);flex-shrink:0;position:relative}
  .sw-mobile-top::before{content:'';position:absolute;top:8px;left:50%;transform:translateX(-50%);width:36px;height:4px;border-radius:2px;background:var(--sw-border-strong)}
  .sw-mobile-top .sw-hd-logo img{height:36px;width:36px;object-fit:contain}
  .sw-mobile-top .sw-modal-close-btn{position:static;flex-shrink:0}
  .sw-mobile-nav{flex:1;padding:12px 0;display:flex;flex-direction:column}
  .sw-mobile-cat{margin:0;border-bottom:1px solid var(--sw-border)}
  .sw-mobile-cat summary{padding:16px 20px;font-family:var(--sw-font-heading);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--sw-dark);cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px}
  .sw-mobile-cat summary::-webkit-details-marker{display:none}
  .sw-mobile-count{font-size:11px;font-weight:600;color:var(--sw-text-soft);background:var(--sw-surface-alt);padding:2px 8px;border-radius:10px}
  .sw-mobile-cat summary::after{content:'';width:8px;height:8px;border-right:2px solid var(--sw-text-soft);border-bottom:2px solid var(--sw-text-soft);transform:rotate(45deg);margin-left:auto;flex-shrink:0;transition:transform .25s ease}
  .sw-mobile-cat[open] summary::after{transform:rotate(-135deg)}
  .sw-mobile-cat[open] summary{color:var(--sw-accent)}
  .sw-mobile-cat ul{list-style:none;margin:0;padding:8px 0}
  .sw-mobile-cat ul li a{display:block;padding:9px 16px;font-size:14px;color:var(--sw-text);text-decoration:none;transition:color .15s, background .15s}
  .sw-mobile-cat ul li a .sw-mobile-model{display:block;font-size:11px;font-weight:700;color:var(--sw-text-soft);font-family:var(--sw-font-heading);letter-spacing:0.5px;margin-bottom:1px}
  .sw-mobile-cat ul li a:hover{color:var(--sw-accent);background:var(--sw-accent-soft)}
  .sw-mobile-viewall{display:block;padding:10px 20px 16px;font-size:13px;font-weight:700;color:var(--sw-accent);text-decoration:none}
  .sw-mobile-link{display:block;padding:16px 20px;font-family:var(--sw-font-heading);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--sw-ink);text-decoration:none;border-bottom:1px solid var(--sw-border);transition:color .15s}
  .sw-mobile-link:hover{color:var(--sw-accent)}
  .sw-mobile-bottom{display:flex;align-items:center;gap:16px;padding:20px;margin-top:auto;border-top:1px solid var(--sw-border)}
  .sw-mobile-bottom .sw-hd-cta{flex:1;justify-content:center}
  .sw-mobile-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99998;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease, visibility .3s ease}
  .sw-mobile-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}

  @media(max-width:1024px){
  .sw-hd-nav{display:none !important}
  .sw-hd-actions .sw-hd-cta{display:none !important}
  .sw-hd-burger{display:flex !important}
  .sw-mega{display:none !important}
  .sw-hd-logo .sw-hd-logo-full{display:block;height:22px}
  .sw-hd-logo .sw-hd-logo-icon{display:none}
  .sw-hd--compact .sw-hd-logo .sw-hd-logo-full{height:20px}
  }
  @media(min-width:1025px){
  .sw-hd-logo .sw-hd-logo-icon{display:none}
  }
  @media(max-width:480px){
  .sw-mobile-menu{height:85dvh}
  }

  .sw-ft{background:#0a0a0a;color:#cbd5e1;font-family:var(--sw-font-body)}
  .sw-ft a{color:#cbd5e1;text-decoration:none;transition:color .15s}
  .sw-ft a:hover{color:#ffffff}

  .sw-ft-main{padding:clamp(48px,6vw,80px) 0}
  .sw-ft-inner{max-width:1600px;margin:0 auto;padding:0 clamp(32px,5vw,80px)}
  .sw-ft-main .sw-ft-inner{display:grid;grid-template-columns:1.5fr 1fr 0.7fr 1.3fr;gap:clamp(40px,5vw,80px)}
  .sw-ft-logo{display:inline-block;margin-bottom:24px}
  .sw-ft-logo img{height:30px;width:auto;filter:brightness(0) invert(1);transition:opacity .2s}
  .sw-ft-logo:hover img{opacity:0.8}
  .sw-ft-desc{font-size:15.5px;line-height:1.75;color:#8896a7;margin:0 0 28px}
  .sw-ft-social{display:flex;gap:14px}
  .sw-ft-social-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,0.08);color:#8896a7;transition:background .2s, color .2s}
  .sw-ft-social-link:hover{background:var(--sw-accent);color:#ffffff}
  .sw-ft-heading{font-family:var(--sw-font-heading);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#ffffff;margin:0 0 24px;padding-bottom:14px;border-bottom:2px solid var(--sw-accent)}
  .sw-ft-list{list-style:none;margin:0;padding:0}
  .sw-ft-list li{margin-bottom:12px}
  .sw-ft-list a{font-size:15.5px;line-height:1.5;display:inline-block;padding:2px 0}
  .sw-ft-list a:hover{color:#ffffff;padding-left:4px}
  .sw-ft-contact{list-style:none;margin:0;padding:0}
  .sw-ft-contact li{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px;font-size:15px;line-height:1.6}
  .sw-ft-contact svg{flex-shrink:0;margin-top:3px;color:#8896a7}
  .sw-ft-contact a:hover{color:#ffffff}
  .sw-ft-address span{color:#8896a7}
  .sw-ft-bottom{border-top:1px solid rgba(255,255,255,0.08);padding:20px 0}
  footer.sw-ft .sw-ft-bottom .sw-ft-inner{display:flex !important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px}
  footer.sw-ft .sw-ft-bottom .sw-ft-copy,footer.sw-ft .sw-ft-bottom .sw-ft-legal,footer.sw-ft .sw-ft-bottom .sw-ft-legal a,footer.sw-ft .sw-ft-bottom .sw-ft-sep{font-family:inherit;font-size:13px;line-height:1.5;color:#5a6a7a}
  footer.sw-ft .sw-ft-bottom .sw-ft-copy{margin:0}
  footer.sw-ft .sw-ft-bottom .sw-ft-legal{display:flex;flex-wrap:wrap;align-items:center}
  footer.sw-ft .sw-ft-bottom .sw-ft-legal a{text-decoration:none;transition:color .2s}
  footer.sw-ft .sw-ft-bottom .sw-ft-legal a:hover{color:#ffffff}
  footer.sw-ft .sw-ft-bottom .sw-ft-sep{margin:0 10px;user-select:none}
  .elementor-location-footer .elementor-section-wrap > .elementor-section,.elementor-location-footer > .elementor-section,.elementor-location-footer > .e-con{padding:0 !important;margin:0 !important;gap:0 !important}
  .elementor-location-footer .elementor-widget-html{margin:0 !important;padding:0 !important}
  .elementor-location-footer .elementor-widget-wrap,.elementor-location-footer .e-con-inner{padding:0 !important;gap:0 !important}
  @media(max-width:1024px){
  .sw-ft-main .sw-ft-inner{grid-template-columns:1fr 1fr;gap:40px 32px}
  }
  @media(max-width:600px){
  .sw-ft-main .sw-ft-inner{grid-template-columns:1fr;gap:36px}
  .sw-ft-brand{text-align:center}
  .sw-ft-social{justify-content:center}
  .sw-ft-bottom .sw-ft-inner{flex-direction:column;text-align:center;gap:10px}
  .sw-ft-legal{justify-content:center}
  }

  /* ══════════════════════════════════════════
     Contact Page
     ══════════════════════════════════════════ */

  .sw-btn-wa{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:#ffffff !important;
    border:1px solid var(--sw-dark) !important;
    color:var(--sw-dark) !important;
    transition:background .15s ease, border-color .15s ease, color .15s ease
  }
  .sw-btn-wa svg{
    flex-shrink:0;
    color:#25D366;
    transition:color .15s ease
  }
  .sw-btn-wa:hover{
    background:#25D366 !important;
    border-color:#25D366 !important;
    color:#ffffff !important
  }
  .sw-btn-wa:hover svg{color:#ffffff}

  .sw-contact-methods{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:clamp(20px,2.4vw,30px);
    margin-top:8px
  }
  .sw-contact-card{
    background:#ffffff;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    padding:36px 28px 32px;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    transition:box-shadow .2s ease, transform .2s ease
  }
  .sw-contact-card:hover{
    box-shadow:0 6px 24px rgba(15,30,45,.08);
    transform:translateY(-2px)
  }
  .sw-contact-card h3{
    margin:0 0 6px;
    font-family:var(--sw-font-heading);
    font-size:1.2rem;
    font-weight:700;
    color:var(--sw-dark)
  }
  .sw-contact-card-detail{
    margin:0 0 12px;
    font-family:var(--sw-font-body);
    font-size:1rem;
    font-weight:600;
    color:var(--sw-dark)
  }
  .sw-contact-card-desc{
    margin:0 0 20px;
    font-family:var(--sw-font-body);
    font-size:0.93rem;
    color:var(--sw-text-soft);
    line-height:1.6;
    flex:1
  }

  .sw-contact-form-note{
    margin:18px 0 0;
    font-family:var(--sw-font-body);
    font-size:0.85rem;
    color:var(--sw-text-soft);
    text-align:center
  }
  .sw-contact-address-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
    gap:clamp(28px,4vw,52px);
    align-items:stretch
  }
  .sw-contact-address-info{
    display:flex;
    flex-direction:column;
    justify-content:center
  }
  .sw-contact-address-text{
    margin:0 0 22px;
    font-family:var(--sw-font-body);
    font-size:1rem;
    color:var(--sw-text);
    line-height:1.7
  }
  .sw-contact-address-detail{
    font-style:normal;
    margin:0 0 24px
  }
  .sw-contact-address-line{
    display:flex;
    align-items:flex-start;
    gap:12px;
    font-family:var(--sw-font-body);
    font-size:0.98rem;
    color:var(--sw-dark);
    line-height:1.6
  }
  .sw-contact-address-line svg{flex-shrink:0;margin-top:3px}
  .sw-contact-address-links{
    display:flex;
    gap:12px;
    flex-wrap:wrap
  }
  .sw-contact-map{
    width:100%;
    aspect-ratio:16/10;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-lg);
    overflow:hidden;
    background:#f5f5f5
  }
  .sw-contact-map iframe{
    width:100%;
    height:100%;
    border:0;
    display:block
  }


  /* Hero rep card — Hellena */

  /* Mini rep card for footer/CTA signature */
  .sw-rep-mini{
    display:inline-flex;
    align-items:center;
    gap:14px;
    padding:14px 20px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.15);
    border-radius:var(--sw-radius-lg);
    margin-top:18px
  }
  .sw-rep-mini-photo{
    width:52px;
    height:52px;
    border-radius:50%;
    overflow:hidden;
    border:2px solid var(--sw-accent);
    flex-shrink:0
  }
  .sw-rep-mini-photo img{width:100%;height:100%;object-fit:cover;display:block}
  .sw-rep-mini-text{
    font-family:var(--sw-font-body);
    font-size:0.92rem;
    color:rgba(255,255,255,.85);
    line-height:1.4
  }
  .sw-rep-mini-text strong{color:#ffffff;font-weight:700}

  /* Form tips callout */

  /* Contact card icon — flat industrial (no SaaS circle) */
  .sw-contact-card-icon-flat{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--sw-accent);
    margin-bottom:14px
  }

  /* ── B2B Industrial overrides for contact ── */

  /* Asymmetric hero grid: copy left, form right */
  .sw-contact-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,5fr) minmax(0,7fr);
    gap:clamp(28px,3.5vw,52px);
    align-items:start
  }

  .sw-contact-hero-copy{
    padding-top:8px
  }
  .sw-contact-hero-copy .sw-lead{
    margin-bottom:24px
  }

  /* Inline contact strip below hero copy */
  .sw-contact-hero-meta{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin:24px 0 0;
    padding:20px 0 0;
    border-top:1px solid var(--sw-border)
  }
  .sw-contact-hero-meta-row{
    display:flex;
    align-items:center;
    gap:12px;
    font-family:var(--sw-font-body);
    font-size:0.95rem;
    color:var(--sw-dark)
  }
  .sw-contact-hero-meta-row svg{flex-shrink:0;color:var(--sw-accent)}
  .sw-contact-hero-meta-row strong{font-weight:600}
  .sw-contact-hero-meta-row a{
    color:var(--sw-dark);
    text-decoration:none;
    border-bottom:1px solid transparent;
    transition:border-color .15s ease
  }
  .sw-contact-hero-meta-row a:hover{border-bottom-color:var(--sw-accent)}

  /* Hero form card (industrial: thin border, no soft shadow, 4px radius) */
  .sw-contact-hero-form{
    background:#ffffff;
    border:1px solid var(--sw-border-strong);
    border-top:3px solid var(--sw-accent);
    border-radius:4px;
    padding:clamp(24px,2.6vw,36px) clamp(22px,2.4vw,32px) clamp(20px,2vw,28px);
    position:relative
  }
  .sw-contact-hero-form-header{
    margin-bottom:18px;
    padding-bottom:16px;
    border-bottom:1px solid var(--sw-border)
  }
  .sw-contact-hero-form-eyebrow{
    margin:0 0 8px;
    font-family:var(--sw-font-heading);
    font-size:0.72rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--sw-accent)
  }
  .sw-contact-hero-form-title{
    margin:0 0 6px;
    font-family:var(--sw-font-heading);
    font-size:clamp(1.35rem,2vw,1.75rem);
    font-weight:800;
    color:var(--sw-dark);
    line-height:1.2;
    letter-spacing:-0.01em
  }
  .sw-contact-hero-form-sub{
    margin:0;
    font-family:var(--sw-font-body);
    font-size:0.92rem;
    color:var(--sw-text-soft);
    line-height:1.55
  }

  /* WPForms styling inside Hero form card */
  .sw-contact-hero-form .wpforms-form input[type="text"],
  .sw-contact-hero-form .wpforms-form input[type="email"],
  .sw-contact-hero-form .wpforms-form input[type="tel"],
  .sw-contact-hero-form .wpforms-form input[type="url"],
  .sw-contact-hero-form .wpforms-form input[type="number"],
  .sw-contact-hero-form .wpforms-form textarea,
  .sw-contact-hero-form .wpforms-form select{
    font-family:var(--sw-font-body) !important;
    font-size:0.95rem !important;
    border-radius:4px !important;
    border:1px solid var(--sw-border) !important;
    padding:10px 12px !important;
    background:#fafbfc !important
  }
  .sw-contact-hero-form .wpforms-form input:focus,
  .sw-contact-hero-form .wpforms-form textarea:focus,
  .sw-contact-hero-form .wpforms-form select:focus{
    border-color:var(--sw-accent) !important;
    background:#ffffff !important;
    outline:none !important;
    box-shadow:0 0 0 3px rgba(223,0,36,.08) !important
  }
  .sw-contact-hero-form .wpforms-form label.wpforms-field-label{
    font-family:var(--sw-font-body) !important;
    font-size:0.82rem !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
    color:var(--sw-dark) !important;
    margin-bottom:6px !important
  }
  .sw-contact-hero-form .wpforms-form .wpforms-required-label{color:var(--sw-accent) !important}
  .sw-contact-hero-form .wpforms-form .wpforms-field{padding:0 0 14px !important}
  /* WPForms Smart Phone (intl-tel-input): the library sets the input's
     padding-left inline (~51px) to clear the flag dropdown; the blanket
     !important padding above was flattening it to 12px → flag overlapped the
     text. Also size the .iti wrapper like a medium field (60%) so the flag
     button hugs the input instead of floating at the far left of the row. */
  .sw-contact-hero-form .wpforms-form .iti{width:60%;max-width:100%}
  .sw-contact-hero-form .wpforms-form .iti input[type="tel"]{
    width:100% !important;
    padding-left:52px !important
  }
  @media(max-width:600px){
    .sw-contact-hero-form .wpforms-form .iti{width:100%}
    /* WPForms' own mobile rule widens .wpforms-field-medium inputs to 100%,
       but misses the tel input once intl-tel-input wraps it in .iti — without
       this the phone box stays at 60% (180px) while siblings go full width. */
    .sw-contact-hero-form .wpforms-form .iti input[type="tel"]{max-width:100% !important}
  }
  .sw-contact-hero-form .wpforms-form .wpforms-submit-container{
    margin-top:6px !important;
    padding-top:6px !important
  }
  .sw-contact-hero-form .wpforms-form button[type="submit"],
  .sw-contact-hero-form .wpforms-form input[type="submit"]{
    background:var(--sw-accent) !important;
    border:1px solid var(--sw-accent) !important;
    color:#ffffff !important;
    font-family:var(--sw-font-heading) !important;
    font-weight:700 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    padding:14px 32px !important;
    border-radius:4px !important;
    cursor:pointer !important;
    width:100%;
    transition:background .15s ease, border-color .15s ease
  }
  .sw-contact-hero-form .wpforms-form button[type="submit"]:hover,
  .sw-contact-hero-form .wpforms-form input[type="submit"]:hover{
    background:#b30020 !important;
    border-color:#b30020 !important
  }
  .sw-contact-hero-form .wpforms-form .wpforms-field-description{
    font-size:0.82rem !important;
    color:var(--sw-text-soft) !important;
    margin-top:4px !important
  }

  /* Hero stats — flat industrial spec-sheet style, no outer box */
  .sw-contact-hero-stats{
    display:flex;
    gap:0;
    margin:28px 0 0;
    padding:0;
    border:none;
    border-radius:0
  }
  .sw-contact-hero-stat{
    flex:1;
    padding:0 22px;
    text-align:left;
    background:transparent;
    border-right:1px solid var(--sw-border);
    position:relative
  }
  .sw-contact-hero-stat:first-child{padding-left:0}
  .sw-contact-hero-stat:last-child{border-right:none;padding-right:0}
  .sw-contact-hero-stat-value{
    margin:0 0 6px;
    padding-left:10px;
    border-left:3px solid var(--sw-accent);
    font-family:var(--sw-font-heading);
    font-size:1.55rem;
    font-weight:800;
    color:var(--sw-dark);
    line-height:1;
    letter-spacing:-0.02em
  }
  .sw-contact-hero-stat-label{
    margin:0;
    padding-left:13px;
    font-family:var(--sw-font-heading);
    font-size:0.72rem;
    font-weight:700;
    color:var(--sw-text-soft);
    letter-spacing:.12em;
    text-transform:uppercase;
    line-height:1.3
  }

  /* Inline tips strip inside form (compact) */
  .sw-form-tips-inline{
    margin:0 0 18px;
    padding:14px 16px;
    background:var(--sw-surface-alt);
    border-left:3px solid var(--sw-accent);
    font-family:var(--sw-font-body);
    font-size:0.88rem;
    color:var(--sw-text);
    line-height:1.55
  }
  .sw-form-tips-inline strong{
    display:block;
    margin-bottom:4px;
    font-family:var(--sw-font-heading);
    font-size:0.74rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--sw-accent)
  }

  /* Hellena spotlight section (own band, alt bg) */
  .sw-rep-spotlight{
    display:grid;
    grid-template-columns:minmax(220px,260px) minmax(0,1fr);
    gap:clamp(28px,3.5vw,48px);
    align-items:center;
    background:#ffffff;
    border:1px solid var(--sw-border-strong);
    border-radius:4px;
    padding:clamp(24px,3vw,40px);
    max-width:1040px;
    margin:0 auto
  }
  .sw-rep-spotlight-photo{
    width:100%;
    aspect-ratio:1/1;
    border-radius:4px;
    overflow:hidden;
    background:#f5f5f5;
    border:1px solid var(--sw-border)
  }
  .sw-rep-spotlight-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
  }
  .sw-rep-spotlight-eyebrow{
    margin:0 0 8px;
    font-family:var(--sw-font-heading);
    font-size:0.72rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--sw-text-soft)
  }
  .sw-rep-spotlight-name{
    margin:0 0 4px;
    font-family:var(--sw-font-heading);
    font-size:clamp(1.6rem,2.4vw,2.1rem);
    font-weight:800;
    color:var(--sw-dark);
    line-height:1.1;
    letter-spacing:-0.01em
  }
  .sw-rep-spotlight-title{
    margin:0 0 18px;
    padding-bottom:14px;
    border-bottom:1px solid var(--sw-border);
    font-family:var(--sw-font-body);
    font-size:1rem;
    font-weight:600;
    color:var(--sw-accent)
  }
  .sw-rep-spotlight-bio{
    margin:0 0 22px;
    font-family:var(--sw-font-body);
    font-size:1rem;
    color:var(--sw-text);
    line-height:1.65
  }
  .sw-rep-spotlight-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap
  }

  /* Tighten generic contact cards toward industrial */
  .sw-contact-card{
    border-radius:4px;
    box-shadow:none
  }
  .sw-contact-card:hover{
    box-shadow:none;
    transform:none;
    border-color:var(--sw-accent)
  }
  .sw-contact-map{border-radius:4px}
  .sw-rep-mini{border-radius:4px}
  .sw-rep-mini-photo{border-radius:4px}

  @media (max-width:1024px){
    .sw-contact-hero-grid{grid-template-columns:1fr;gap:32px}
  }

  @media (max-width:600px){
    .sw-contact-hero-stats{flex-direction:column;gap:16px}
    .sw-contact-hero-stat{
      padding:0 0 14px;
      border-right:none;
      border-bottom:1px solid var(--sw-border)
    }
    .sw-contact-hero-stat:last-child{
      border-bottom:none;
      padding-bottom:0
    }
  }

  @media (max-width:900px){
    .sw-contact-methods{grid-template-columns:1fr}
    .sw-contact-address-grid{grid-template-columns:1fr;gap:28px}
    .sw-rep-spotlight{grid-template-columns:1fr;text-align:center}
    .sw-rep-spotlight-photo{max-width:200px;margin:0 auto}
    .sw-rep-spotlight-title{padding-bottom:12px}
    .sw-rep-spotlight-actions{justify-content:center}
  }


  /* ══════════════════════════════════════════════════════════════
     BAG-TYPE LANDING PAGES  (sw-bt-*)
     Phase 2.5 — used by BT-1/4/5/6/9/10
     Visual: contemporary industrial editorial (Anduril/Hadrian-grade)
     ══════════════════════════════════════════════════════════════ */

  .sw-page.sw-bt-page{
    --bt-canvas:#ffffff;
    --bt-canvas-alt:#f5f7f9;
    --bt-canvas-deep:#101820;
    --bt-ink:#0f1620;
    --bt-ink-soft:#2a3645;
    --bt-text:#48586b;
    --bt-muted:#7d8a99;
    --bt-line:#dde3eb;
    --bt-line-strong:#c4cdd7;
    --bt-shadow:0 22px 48px -32px rgba(15,22,32,.20);
    background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
  }

  /* Section rhythm */
  .sw-page.sw-bt-page .sw-bt-section{padding:clamp(72px,9vw,120px) 0}
  .sw-page.sw-bt-page .sw-bt-section--alt{
    background:var(--bt-canvas-alt);
    border-top:1px solid var(--bt-line);
    border-bottom:1px solid var(--bt-line);
  }

  /* ── EYEBROW (red dash + uppercase) ── */
  .sw-page.sw-bt-page .sw-bt-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin:0;
    color:var(--sw-accent);
    font-family:var(--sw-font-heading);
    font-size:13px;
    font-weight:800;
    letter-spacing:.06em;
    line-height:1.2;
    text-transform:uppercase;
  }
  .sw-page.sw-bt-page .sw-bt-eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:currentColor;
    flex:0 0 auto;
  }
  .sw-page.sw-bt-page .sw-bt-eyebrow--dark{color:#ff4761}

  /* ── EDITORIAL SECTION HEAD (200px eyebrow col + body col) ── */
  .sw-page.sw-bt-page .sw-bt-head{
    display:grid;
    grid-template-columns:200px minmax(0,1fr);
    gap:48px;
    align-items:start;
    margin:0 0 64px;
  }
  .sw-page.sw-bt-page .sw-bt-head .sw-bt-eyebrow{
    margin-top:6px;
  }

  .sw-page.sw-bt-page .sw-bt-h2{
    margin:0 0 18px;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:clamp(28px,3.4vw,44px);
    font-weight:800;
    line-height:1.08;
    letter-spacing:-.012em;
  }
  .sw-page.sw-bt-page .sw-bt-h2--dark{color:#ffffff}
  .sw-page.sw-bt-page .sw-bt-h2--small{font-size:clamp(24px,2.4vw,32px)}

  .sw-page.sw-bt-page .sw-bt-intro{
    margin:0;
    max-width:760px;
    color:var(--bt-text);
    font-size:17px;
    line-height:1.75;
  }
  .sw-page.sw-bt-page .sw-bt-intro a{color:var(--sw-accent);text-decoration:none;border-bottom:1px solid rgba(223,0,36,.3)}
  .sw-page.sw-bt-page .sw-bt-intro a:hover{border-bottom-color:var(--sw-accent)}

  /* ══════════════════════════════════════════════════════════════
     §1  HERO
     ══════════════════════════════════════════════════════════════ */
  .sw-page.sw-bt-page .sw-bt-hero{
    padding:48px 0 88px;
    background:linear-gradient(180deg,#ffffff 0%,#f7f9fb 100%);
  }

  .sw-page.sw-bt-page .sw-bt-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0 0 36px;
    color:var(--bt-muted);
    font-size:14px;
    letter-spacing:.01em;
  }
  .sw-page.sw-bt-page .sw-bt-breadcrumb a{
    color:var(--bt-muted);
    text-decoration:none;
    transition:color .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-breadcrumb a:hover{color:var(--sw-accent)}
  .sw-page.sw-bt-page .sw-bt-breadcrumb .sep{color:var(--bt-line-strong)}

  .sw-page.sw-bt-page .sw-bt-hero__grid{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);
    gap:56px;
    align-items:center;
  }

  .sw-page.sw-bt-page .sw-bt-hero__copy .sw-bt-eyebrow{margin-bottom:24px}

  .sw-page.sw-bt-page .sw-bt-hero__title{
    margin:0 0 22px;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:clamp(36px,4.4vw,60px);
    font-weight:800;
    line-height:1.04;
    letter-spacing:-.018em;
  }

  .sw-page.sw-bt-page .sw-bt-hero__lead{
    margin:0 0 32px;
    max-width:560px;
    color:var(--bt-text);
    font-size:17px;
    line-height:1.72;
  }
  .sw-page.sw-bt-page .sw-bt-hero__lead a{
    color:var(--bt-ink);
    text-decoration:none;
    border-bottom:1px solid var(--sw-accent);
    padding-bottom:1px;
  }

  /* KPI row */
  .sw-page.sw-bt-page .sw-bt-hero__kpis{
    list-style:none;
    margin:0 0 32px;
    padding:0;
    display:flex;
    gap:36px;
    flex-wrap:wrap;
  }
  .sw-page.sw-bt-page .sw-bt-hero__kpis li{
    display:flex;
    align-items:center;
    gap:12px;
  }
  .sw-page.sw-bt-page .sw-bt-hero__kpis svg{
    width:28px;
    height:28px;
    color:var(--bt-ink-soft);
    flex:0 0 auto;
  }
  .sw-page.sw-bt-page .sw-bt-hero__kpis div{display:flex;flex-direction:column;line-height:1.1}
  .sw-page.sw-bt-page .sw-bt-hero__kpis strong{
    font-family:var(--sw-font-heading);
    font-size:18px;
    font-weight:800;
    color:var(--bt-ink);
    letter-spacing:-.005em;
  }
  .sw-page.sw-bt-page .sw-bt-hero__kpis span{
    margin-top:4px;
    font-size:12px;
    color:var(--bt-muted);
    text-transform:uppercase;
    letter-spacing:.08em;
  }

  .sw-page.sw-bt-page .sw-bt-hero__cta{display:flex;gap:14px;flex-wrap:wrap}

  /* Hero visual — pouch on light bg */
  .sw-page.sw-bt-page .sw-bt-hero__visual{
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .sw-page.sw-bt-page .sw-bt-hero__pouch{
    width:100%;
    max-width:520px;
    height:auto;
    object-fit:contain;
    filter:drop-shadow(0 30px 60px rgba(15,22,32,.18));
  }

  /* ══════════════════════════════════════════════════════════════
     §3  PRODUCT FIT  (4-up cards)
     ══════════════════════════════════════════════════════════════ */
  .sw-page.sw-bt-page .sw-bt-products__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
  }
  .sw-page.sw-bt-page .sw-bt-product{
    background:#ffffff;
    border:1px solid var(--bt-line);
    border-radius:2px;
    overflow:hidden;
    transition:border-color .2s ease,transform .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-product:hover{
    border-color:var(--bt-line-strong);
    transform:translateY(-2px);
  }
  .sw-page.sw-bt-page .sw-bt-product__visual{
    background:#f5f7f9;
    aspect-ratio:1/1;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    border-bottom:1px solid var(--bt-line);
  }
  .sw-page.sw-bt-page .sw-bt-product__visual img{
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    object-fit:contain;
  }
  .sw-page.sw-bt-page .sw-bt-product__body{padding:22px 22px 24px}
  .sw-page.sw-bt-page .sw-bt-product__title{
    margin:0 0 8px;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:18px;
    font-weight:800;
    letter-spacing:-.005em;
  }
  .sw-page.sw-bt-page .sw-bt-product__desc{
    margin:0;
    color:var(--bt-text);
    font-size:14.5px;
    line-height:1.65;
  }

  /* ══════════════════════════════════════════════════════════════
     §5  MACHINE LINEUP  (4-up cards with model eyebrow + capacity)
     ══════════════════════════════════════════════════════════════ */
  .sw-page.sw-bt-page .sw-bt-machines__group{margin-bottom:48px}
  .sw-page.sw-bt-page .sw-bt-machines__group:last-child{margin-bottom:0}
  .sw-page.sw-bt-page .sw-bt-machines__subhead{
    display:flex;
    align-items:baseline;
    gap:14px;
    margin:0 0 24px;
    padding-bottom:14px;
    border-bottom:1px solid var(--bt-line);
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:18px;
    font-weight:800;
    letter-spacing:-.005em;
  }
  .sw-page.sw-bt-page .sw-bt-machines__subhead-count{
    color:var(--bt-muted);
    font-family:var(--sw-font-heading);
    font-size:12px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
  }
  .sw-page.sw-bt-page .sw-bt-machines__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
  }
  .sw-page.sw-bt-page .sw-bt-machines__grid--3col{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
  }
  @media (max-width:1100px){
    .sw-page.sw-bt-page .sw-bt-machines__grid--3col{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
  }
  @media (max-width:640px){
    .sw-page.sw-bt-page .sw-bt-machines__grid--3col{
      grid-template-columns:1fr;
    }
  }

  /* Solo machine layout (single-machine BT pages) */
  .sw-page.sw-bt-page .sw-bt-machines__solo{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:32px;
    align-items:stretch;
  }
  @media (max-width:900px){
    .sw-page.sw-bt-page .sw-bt-machines__solo{grid-template-columns:1fr}
  }
  .sw-page.sw-bt-page .sw-bt-solo-features{
    background:var(--bt-canvas-alt);
    border:1px solid var(--bt-line);
    border-radius:2px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
  }
  .sw-page.sw-bt-page .sw-bt-solo-features__eyebrow{
    color:var(--sw-accent);
    font-family:var(--sw-font-heading);
    font-size:13px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
    margin:0 0 14px;
  }
  .sw-page.sw-bt-page .sw-bt-solo-features__title{
    margin:0 0 18px;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:22px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.005em;
  }
  .sw-page.sw-bt-page .sw-bt-solo-features__list{
    list-style:none;
    margin:0 0 24px;
    padding:0;
    flex:1;
  }
  .sw-page.sw-bt-page .sw-bt-solo-features__list li{
    position:relative;
    padding:8px 0 8px 22px;
    color:var(--bt-text);
    font-size:14.5px;
    line-height:1.55;
    border-bottom:1px solid var(--bt-line);
  }
  .sw-page.sw-bt-page .sw-bt-solo-features__list li:last-child{border-bottom:none}
  .sw-page.sw-bt-page .sw-bt-solo-features__list li::before{
    content:"";
    position:absolute;
    left:0;
    top:16px;
    width:11px;
    height:11px;
    border:1.5px solid var(--sw-accent);
    border-radius:50%;
    background:transparent;
  }
  .sw-page.sw-bt-page .sw-bt-machine{
    display:flex;
    flex-direction:column;
    background:#ffffff;
    border:1px solid var(--bt-line);
    border-radius:2px;
    padding:20px 20px 24px;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-machine:hover{
    border-color:var(--bt-line-strong);
    box-shadow:var(--bt-shadow);
  }
  .sw-page.sw-bt-page .sw-bt-machine__model{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin:0 0 14px;
    color:var(--sw-accent);
    font-family:var(--sw-font-heading);
    font-size:12px;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
  }
  .sw-page.sw-bt-page .sw-bt-machine__model::before{
    content:"";
    width:24px;
    height:2px;
    background:currentColor;
    flex:0 0 auto;
  }
  .sw-page.sw-bt-page .sw-bt-machine__visual{
    background:#f5f7f9;
    aspect-ratio:4/3;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:14px;
    border:1px solid var(--bt-line);
    border-radius:2px;
    margin:0 0 18px;
  }
  .sw-page.sw-bt-page .sw-bt-machine__visual img{
    max-width:100%;
    max-height:100%;
    object-fit:contain;
  }
  .sw-page.sw-bt-page .sw-bt-machine__body{display:flex;flex-direction:column;flex:1}
  .sw-page.sw-bt-page .sw-bt-machine__title{
    margin:0 0 8px;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:17px;
    font-weight:800;
    line-height:1.25;
  }
  .sw-page.sw-bt-page .sw-bt-machine__desc{
    margin:0 0 14px;
    color:var(--bt-text);
    font-size:14px;
    line-height:1.6;
    flex:1;
  }
  .sw-page.sw-bt-page .sw-bt-machine__meta{
    display:grid;
    grid-template-columns:max-content 1fr;
    column-gap:14px;
    row-gap:8px;
    margin:0 0 16px;
    padding:12px 0;
    border-top:1px solid var(--bt-line);
    border-bottom:1px solid var(--bt-line);
  }
  .sw-page.sw-bt-page .sw-bt-machine__meta dt{
    margin:0;
    color:var(--bt-muted);
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    align-self:center;
    line-height:1.2;
  }
  .sw-page.sw-bt-page .sw-bt-machine__meta dd{
    margin:0;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:14.5px;
    font-weight:700;
    letter-spacing:-.005em;
    line-height:1.3;
  }
  .sw-page.sw-bt-page .sw-bt-machine__cta{
    color:var(--sw-accent);
    font-family:var(--sw-font-heading);
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.04em;
    transition:color .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-machine__cta:hover{color:var(--sw-accent-hover)}

  /* ══════════════════════════════════════════════════════════════
     §6  SPECS  (light band — datasheet on white)
     ══════════════════════════════════════════════════════════════ */
  .sw-page.sw-bt-page .sw-bt-specs{
    padding:clamp(72px,9vw,108px) 0;
    background:#ffffff;
    color:var(--bt-text);
    border-top:1px solid var(--bt-line);
    border-bottom:1px solid var(--bt-line);
  }
  .sw-page.sw-bt-page .sw-bt-specs__head{
    display:grid;
    grid-template-columns:200px minmax(0,1fr);
    gap:48px;
    align-items:end;
    margin:0 0 48px;
  }
  .sw-page.sw-bt-page .sw-bt-specs__head .sw-bt-h2{margin:0}
  .sw-page.sw-bt-page .sw-bt-specs__table-wrap{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .sw-page.sw-bt-page .sw-bt-specs__table{
    width:100%;
    border-collapse:collapse;
    font-size:14.5px;
    color:var(--bt-text);
  }
  .sw-page.sw-bt-page .sw-bt-specs__table thead th{
    padding:14px 18px;
    text-align:left;
    font-family:var(--sw-font-heading);
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.06em;
    color:var(--bt-muted);
    border-bottom:1px solid var(--bt-line-strong);
  }
  .sw-page.sw-bt-page .sw-bt-specs__table tbody th{
    padding:14px 18px;
    text-align:left;
    font-family:var(--sw-font-body);
    font-size:14px;
    font-weight:600;
    color:var(--bt-muted);
    border-top:1px solid var(--bt-line);
    background:transparent;
  }
  .sw-page.sw-bt-page .sw-bt-specs__table tbody td{
    padding:14px 18px;
    border-top:1px solid var(--bt-line);
    color:var(--bt-ink);
    font-weight:500;
  }
  .sw-page.sw-bt-page .sw-bt-specs__table tbody tr:hover td,
  .sw-page.sw-bt-page .sw-bt-specs__table tbody tr:hover th{
    background:rgba(15,22,32,.025);
  }

  /* ══════════════════════════════════════════════════════════════
     §7  TRADE-OFFS  (3-column comparison — dark, continues from §5)
     ══════════════════════════════════════════════════════════════ */
  .sw-page.sw-bt-page .sw-bt-tradeoffs{
    background:#0d141d;
    color:#cdd6e0;
    border-top:1px solid #1c2733;
  }

  /* Override section head colors for dark variant */
  .sw-page.sw-bt-page .sw-bt-tradeoffs .sw-bt-h2{color:#ffffff}
  .sw-page.sw-bt-page .sw-bt-tradeoffs .sw-bt-eyebrow{color:#ff4761}
  .sw-page.sw-bt-page .sw-bt-tradeoffs .sw-bt-intro{color:#9aa6b3}

  .sw-page.sw-bt-page .sw-bt-tradeoffs__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff{
    display:flex;
    flex-direction:column;
    background:rgba(255,255,255,.025);
    border:1px solid #1c2733;
    border-radius:2px;
    padding:32px 28px 28px;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff--primary{
    background:rgba(255,255,255,.045);
    border-color:var(--sw-accent);
    border-top:3px solid var(--sw-accent);
    padding-top:30px;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__visual{
    display:flex;
    align-items:center;
    justify-content:center;
    height:140px;
    margin:0 0 22px;
    padding:8px;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__visual img{
    max-height:120px;
    width:auto;
    object-fit:contain;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__title{
    margin:0 0 18px;
    padding:0 0 14px;
    border-bottom:1px solid #1c2733;
    color:#ffffff;
    font-family:var(--sw-font-heading);
    font-size:19px;
    font-weight:800;
    letter-spacing:-.005em;
    text-align:center;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__list{
    list-style:none;
    margin:0 0 18px;
    padding:0;
    flex:1;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__list li{
    position:relative;
    padding:6px 0 6px 22px;
    color:#9aa6b3;
    font-size:14.5px;
    line-height:1.55;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__list li::before{
    content:"";
    position:absolute;
    left:0;
    top:14px;
    width:11px;
    height:11px;
    border:1.5px solid var(--sw-accent);
    border-radius:50%;
    background:transparent;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__link{
    display:inline-block;
    margin-top:auto;
    color:#ff4761;
    font-family:var(--sw-font-heading);
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.04em;
    transition:color .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-tradeoff__link:hover{color:#ffffff}
  .sw-page.sw-bt-page .sw-bt-tradeoff__note{
    margin:auto 0 0;
    padding-top:6px;
    color:#7e8a98;
    font-size:13px;
    font-style:italic;
  }

  /* ══════════════════════════════════════════════════════════════
     §8  FAQ  (side-label + accordion)
     ══════════════════════════════════════════════════════════════ */
  .sw-page.sw-bt-page .sw-bt-faq__layout{
    display:grid;
    grid-template-columns:240px minmax(0,1fr);
    gap:56px;
    align-items:start;
  }
  .sw-page.sw-bt-page .sw-bt-faq__head{position:sticky;top:24px}
  .sw-page.sw-bt-page .sw-bt-faq__head .sw-bt-eyebrow{margin-bottom:14px}

  .sw-page.sw-bt-page .sw-bt-faq__list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 32px;
  }
  .sw-page.sw-bt-page .sw-bt-faq__item{
    border-bottom:1px solid var(--bt-line);
    padding:0;
  }
  .sw-page.sw-bt-page .sw-bt-faq__item summary{
    list-style:none;
    cursor:pointer;
    padding:18px 36px 18px 0;
    position:relative;
    color:var(--bt-ink);
    font-family:var(--sw-font-heading);
    font-size:16px;
    font-weight:700;
    line-height:1.4;
    letter-spacing:-.003em;
    transition:color .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-faq__item summary::-webkit-details-marker{display:none}
  .sw-page.sw-bt-page .sw-bt-faq__item summary::after{
    content:"+";
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    width:24px;
    height:24px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--bt-muted);
    font-size:22px;
    font-weight:300;
    line-height:1;
    transition:transform .2s ease,color .2s ease;
  }
  .sw-page.sw-bt-page .sw-bt-faq__item[open] summary::after{
    content:"\2212";
    color:var(--sw-accent);
  }
  .sw-page.sw-bt-page .sw-bt-faq__item summary:hover{color:var(--sw-accent)}
  .sw-page.sw-bt-page .sw-bt-faq__answer{
    padding:0 0 22px;
    color:var(--bt-text);
    font-size:15px;
    line-height:1.7;
  }
  .sw-page.sw-bt-page .sw-bt-faq__answer p{margin:0}
  .sw-page.sw-bt-page .sw-bt-faq__answer a{
    color:var(--sw-accent);
    text-decoration:none;
    border-bottom:1px solid rgba(223,0,36,.3);
  }
  .sw-page.sw-bt-page .sw-bt-faq__answer a:hover{border-bottom-color:var(--sw-accent)}

  /* ══════════════════════════════════════════════════════════════
     RESPONSIVE  (sw-bt-*)
     ══════════════════════════════════════════════════════════════ */
  @media (max-width:1100px){
    .sw-page.sw-bt-page .sw-bt-products__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sw-page.sw-bt-page .sw-bt-machines__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sw-page.sw-bt-page .sw-bt-faq__list{grid-template-columns:1fr;gap:0}
  }

  @media (max-width:980px){
    .sw-page.sw-bt-page .sw-bt-hero__grid{
      grid-template-columns:1fr;
      gap:40px;
    }
    .sw-page.sw-bt-page .sw-bt-hero__visual{min-height:auto}
    .sw-page.sw-bt-page .sw-bt-spec-readout{
      position:static;
      width:100%;
      max-width:340px;
      margin:18px auto 0;
    }
    .sw-page.sw-bt-page .sw-bt-head{
      grid-template-columns:1fr;
      gap:18px;
      margin-bottom:48px;
    }
    .sw-page.sw-bt-page .sw-bt-specs__head{grid-template-columns:1fr;gap:14px;align-items:start}
    .sw-page.sw-bt-page .sw-bt-tradeoffs__grid{grid-template-columns:1fr}
    .sw-page.sw-bt-page .sw-bt-faq__layout{
      grid-template-columns:1fr;
      gap:24px;
    }
    .sw-page.sw-bt-page .sw-bt-faq__head{position:static}
  }

  @media (max-width:640px){
    .sw-page.sw-bt-page .sw-bt-products__grid{grid-template-columns:1fr}
    .sw-page.sw-bt-page .sw-bt-machines__grid{grid-template-columns:1fr}
    .sw-page.sw-bt-page .sw-bt-hero__kpis{gap:18px;flex-direction:column;align-items:flex-start}
    .sw-page.sw-bt-page .sw-bt-specs__table{font-size:13px}
    .sw-page.sw-bt-page .sw-bt-specs__table thead th,
    .sw-page.sw-bt-page .sw-bt-specs__table tbody th,
    .sw-page.sw-bt-page .sw-bt-specs__table tbody td{padding:10px 12px}
  }

  /* ── §8.5 Components grid — 4-col modifier for 7-card layouts (4+3) ── */

  @media (min-width:769px){
    .sw-components-grid--4col{
      grid-template-columns:repeat(4,minmax(0,1fr))
    }
  }

  /* ── Component-card dark plate — white line-art images need a dark ground ── */

  .sw-component-card__img--dark{
    background:var(--sw-dark)
  }

  /* ── §8 production-line right-column aside (sticky on desktop) ── */

  .sw-page .sw-line-aside{
    position:sticky;
    top:96px;
    align-self:start;
    margin:0
  }

  @media (max-width:980px){
    .sw-page .sw-line-aside{position:static}
  }

  /* ── §8 Production line vertical step list (used on machine pages) ── */

  .sw-page .sw-line-steps{
    list-style:none;
    margin:0;
    padding:0;
    counter-reset:none;
    display:grid;
    gap:14px
  }

  .sw-page .sw-line-steps > li{
    display:grid;
    grid-template-columns:64px 1fr;
    gap:22px;
    align-items:start;
    padding:22px 24px;
    background:#fff;
    border:1px solid var(--sw-border);
    border-left:3px solid var(--sw-accent);
    border-radius:var(--sw-radius-sm)
  }

  .sw-page .sw-line-num{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    border-radius:999px;
    background:var(--sw-dark);
    color:#fff;
    font-family:var(--sw-font-heading);
    font-weight:800;
    font-size:0.95rem;
    letter-spacing:.04em
  }

  .sw-page .sw-line-body{min-width:0}

  .sw-page .sw-line-title{
    margin:6px 0 6px;
    font-family:var(--sw-font-heading);
    font-size:1.08rem;
    font-weight:700;
    color:var(--sw-dark)
  }

  .sw-page .sw-line-body p{
    margin:0;
    font-size:0.95rem;
    line-height:1.72;
    color:var(--sw-text)
  }

  .sw-page .sw-line-body p a{color:var(--sw-accent);text-decoration:underline}
  .sw-page .sw-line-body p a:hover{color:var(--sw-accent-hover)}

  @media (max-width:640px){
    .sw-page .sw-line-steps > li{
      grid-template-columns:1fr;
      gap:12px;
      padding:18px 20px
    }
    .sw-page .sw-line-num{width:40px;height:40px;font-size:.88rem}
  }

  /* ══════════════════════════════════════════
     404 + Search Results — black/white/red industrial
     Inspired by rockwellautomation.com/404
     ══════════════════════════════════════════ */

  .sw-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

  /* ---------- Hero (black background + red accent bar + white text) ---------- */
  .sw-404-hero,
  .sw-search-hero{background:#0a0a0a;color:#fff;padding:clamp(80px,11vw,140px) 0;position:relative;overflow:hidden}
  .sw-404-hero::before,
  .sw-search-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 12% 28%,rgba(223,0,36,0.10),transparent 50%),radial-gradient(circle at 88% 72%,rgba(223,0,36,0.05),transparent 45%);pointer-events:none}

  .sw-404-hero__inner,
  .sw-search-hero__inner{position:relative;max-width:860px}
  .sw-404-bar,
  .sw-search-bar{display:block;width:56px;height:4px;background:var(--sw-accent);margin:0 0 30px}
  .sw-404-eyebrow,
  .sw-search-eyebrow{font-family:var(--sw-font-heading);font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--sw-accent);margin:0 0 18px}
  .sw-404-title,
  .sw-search-title{font-family:var(--sw-font-heading);font-size:clamp(34px,5.5vw,64px);line-height:1.08;font-weight:800;color:#fff;margin:0 0 22px;letter-spacing:-0.025em;max-width:780px}
  .sw-search-term{color:var(--sw-accent)}
  .sw-404-lead,
  .sw-search-lead{font-size:clamp(16px,1.6vw,19px);line-height:1.7;color:rgba(255,255,255,0.72);max-width:620px;margin:0}

  /* Search hero — re-search bar */
  .sw-search-form--hero{display:flex;flex-wrap:wrap;max-width:560px;margin:36px 0 0;border:1px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.04);transition:border-color .2s ease}
  .sw-search-form--hero:focus-within{border-color:var(--sw-accent)}
  .sw-search-input{flex:1;min-width:240px;padding:15px 18px;font-family:var(--sw-font-body);font-size:15px;color:#fff;background:transparent;border:0;outline:none}
  .sw-search-input::placeholder{color:rgba(255,255,255,0.4)}
  .sw-search-btn{padding:15px 28px;font-family:var(--sw-font-heading);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff;background:var(--sw-accent);border:0;cursor:pointer;transition:background .2s ease}
  .sw-search-btn:hover{background:var(--sw-accent-hover)}

  /* ---------- Categories grid (white, gridlines, red top-border on hover) ---------- */
  .sw-404-categories,
  .sw-search-browse{background:#fff;padding:clamp(64px,9vw,108px) 0}

  .sw-404-section-head,
  .sw-search-section-head{display:flex;align-items:center;gap:14px;margin:0 0 44px}
  .sw-404-section-tick,
  .sw-search-section-tick{display:block;width:36px;height:2px;background:var(--sw-accent);flex-shrink:0}
  .sw-404-section-label,
  .sw-search-section-label{font-family:var(--sw-font-heading);font-size:13px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--sw-dark);margin:0}

  .sw-404-grid,
  .sw-search-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #e8ebef;border-left:1px solid #e8ebef}

  .sw-404-cat-card,
  .sw-search-cat-card{display:flex;flex-direction:column;justify-content:flex-start;padding:36px 32px 30px;background:#fff;border-right:1px solid #e8ebef;border-bottom:1px solid #e8ebef;border-top:3px solid transparent;text-decoration:none;color:inherit;transition:border-top-color .2s ease,background .2s ease;position:relative;min-height:240px}
  .sw-404-cat-card:hover,
  .sw-search-cat-card:hover{border-top-color:var(--sw-accent);background:#fafafa}
  .sw-404-cat-card:hover .sw-404-cat-link,
  .sw-search-cat-card:hover .sw-search-cat-link{color:var(--sw-accent)}
  .sw-404-cat-card:hover .sw-404-cat-num,
  .sw-search-cat-card:hover .sw-search-cat-num{color:var(--sw-accent)}

  .sw-404-cat-num,
  .sw-search-cat-num{font-family:var(--sw-font-heading);font-size:13px;font-weight:700;letter-spacing:2px;color:#a8b0b8;margin:0 0 18px;transition:color .2s ease}

  .sw-404-cat-title,
  .sw-search-cat-title{font-family:var(--sw-font-heading);font-size:22px;line-height:1.25;font-weight:800;color:var(--sw-dark);margin:0 0 12px;letter-spacing:-0.01em}
  .sw-404-cat-desc,
  .sw-search-cat-desc{flex:1;font-size:15px;line-height:1.65;color:var(--sw-text);margin:0 0 20px}
  .sw-404-cat-link,
  .sw-search-cat-link{font-family:var(--sw-font-heading);font-size:12.5px;font-weight:700;color:var(--sw-dark);letter-spacing:1.5px;text-transform:uppercase;transition:color .2s ease}

  /* Hub card — inverted dark cell for visual differentiation */
  .sw-404-cat-card--hub,
  .sw-search-cat-card--hub{background:#0a0a0a;color:#fff}
  .sw-404-cat-card--hub:hover,
  .sw-search-cat-card--hub:hover{background:#000;border-top-color:var(--sw-accent)}
  .sw-404-cat-card--hub .sw-404-cat-num,
  .sw-search-cat-card--hub .sw-search-cat-num{color:rgba(255,255,255,0.35)}
  .sw-404-cat-card--hub .sw-404-cat-title,
  .sw-search-cat-card--hub .sw-search-cat-title{color:#fff}
  .sw-404-cat-card--hub .sw-404-cat-desc,
  .sw-search-cat-card--hub .sw-search-cat-desc{color:rgba(255,255,255,0.72)}
  .sw-404-cat-card--hub .sw-404-cat-link,
  .sw-search-cat-card--hub .sw-search-cat-link{color:#fff}
  .sw-404-cat-card--hub:hover .sw-404-cat-link,
  .sw-search-cat-card--hub:hover .sw-search-cat-link{color:var(--sw-accent)}
  .sw-404-cat-card--hub:hover .sw-404-cat-num,
  .sw-search-cat-card--hub:hover .sw-search-cat-num{color:rgba(255,255,255,0.55)}

  /* ---------- Help band (black + red CTA + white ghost buttons) ---------- */
  .sw-404-help,
  .sw-search-help{background:#0a0a0a;color:#fff;padding:clamp(72px,10vw,120px) 0;position:relative}
  .sw-404-help__inner,
  .sw-search-help__inner{max-width:760px}
  .sw-404-eyebrow--dark,
  .sw-search-eyebrow--dark{color:var(--sw-accent)}
  .sw-404-help-title,
  .sw-search-help-title{font-family:var(--sw-font-heading);font-size:clamp(28px,4vw,46px);line-height:1.12;font-weight:800;color:#fff;margin:0 0 18px;letter-spacing:-0.015em}
  .sw-404-help-lead,
  .sw-search-help-lead{font-size:17px;line-height:1.7;color:rgba(255,255,255,0.72);margin:0 0 36px;max-width:620px}

  .sw-404-cta,
  .sw-search-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

  .sw-404-btn,
  .sw-search-btn--primary,
  .sw-search-btn--ghost{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;font-family:var(--sw-font-heading);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-decoration:none;border:1px solid transparent;transition:background .2s ease,color .2s ease,border-color .2s ease;line-height:1.2}
  .sw-404-btn--primary,
  .sw-search-btn--primary{background:var(--sw-accent);color:#fff;border-color:var(--sw-accent)}
  .sw-404-btn--primary:hover,
  .sw-search-btn--primary:hover{background:var(--sw-accent-hover);border-color:var(--sw-accent-hover)}
  .sw-404-btn--ghost,
  .sw-search-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,0.28)}
  .sw-404-btn--ghost:hover,
  .sw-search-btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,0.05)}

  /* ---------- Elementor Posts widget — match cell-style grid ---------- */
  body.search .elementor-posts-container,
  .elementor-location-archive .elementor-posts-container,
  .elementor-location-search-results .elementor-posts-container{gap:0}

  body.search .elementor-posts .elementor-post,
  .elementor-location-archive .elementor-posts .elementor-post,
  .elementor-location-search-results .elementor-posts .elementor-post{background:#fff;border:1px solid #e8ebef;border-top:3px solid transparent;overflow:hidden;transition:border-top-color .2s ease,background .2s ease}
  body.search .elementor-posts .elementor-post:hover,
  .elementor-location-archive .elementor-posts .elementor-post:hover,
  .elementor-location-search-results .elementor-posts .elementor-post:hover{border-top-color:var(--sw-accent);background:#fafafa}

  body.search .elementor-posts .elementor-post__title,
  .elementor-location-archive .elementor-posts .elementor-post__title,
  .elementor-location-search-results .elementor-posts .elementor-post__title{font-family:var(--sw-font-heading);font-size:19px;line-height:1.3;font-weight:800;margin:0 0 10px;letter-spacing:-0.01em}
  body.search .elementor-posts .elementor-post__title a,
  .elementor-location-archive .elementor-posts .elementor-post__title a,
  .elementor-location-search-results .elementor-posts .elementor-post__title a{color:var(--sw-dark);text-decoration:none;transition:color .2s ease}
  body.search .elementor-posts .elementor-post__title a:hover,
  .elementor-location-archive .elementor-posts .elementor-post__title a:hover,
  .elementor-location-search-results .elementor-posts .elementor-post__title a:hover{color:var(--sw-accent)}

  body.search .elementor-posts .elementor-post__excerpt,
  .elementor-location-archive .elementor-posts .elementor-post__excerpt,
  .elementor-location-search-results .elementor-posts .elementor-post__excerpt{font-size:14.5px;line-height:1.6;color:var(--sw-text);margin:0 0 14px}

  body.search .elementor-posts .elementor-post__read-more,
  .elementor-location-archive .elementor-posts .elementor-post__read-more,
  .elementor-location-search-results .elementor-posts .elementor-post__read-more{font-family:var(--sw-font-heading);font-size:12.5px;font-weight:700;color:var(--sw-dark);letter-spacing:1.5px;text-transform:uppercase;text-decoration:none}
  body.search .elementor-posts .elementor-post:hover .elementor-post__read-more,
  .elementor-location-archive .elementor-posts .elementor-post:hover .elementor-post__read-more,
  .elementor-location-search-results .elementor-posts .elementor-post:hover .elementor-post__read-more{color:var(--sw-accent)}

  body.search .elementor-posts .elementor-post__thumbnail,
  .elementor-location-archive .elementor-posts .elementor-post__thumbnail,
  .elementor-location-search-results .elementor-posts .elementor-post__thumbnail{overflow:hidden;background:#f3f6f8}
  body.search .elementor-posts .elementor-post__thumbnail img,
  .elementor-location-archive .elementor-posts .elementor-post__thumbnail img,
  .elementor-location-search-results .elementor-posts .elementor-post__thumbnail img{transition:transform .35s ease}
  body.search .elementor-posts .elementor-post:hover .elementor-post__thumbnail img,
  .elementor-location-archive .elementor-posts .elementor-post:hover .elementor-post__thumbnail img,
  .elementor-location-search-results .elementor-posts .elementor-post:hover .elementor-post__thumbnail img{transform:scale(1.04)}

  /* ---------- Responsive ---------- */
  @media (max-width:960px){
    .sw-404-grid,
    .sw-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  }

  @media (max-width:600px){
    .sw-404-grid,
    .sw-search-grid{grid-template-columns:1fr}
    .sw-404-cat-card,
    .sw-search-cat-card{min-height:auto}
    .sw-404-cta,
    .sw-search-cta{flex-direction:column;align-items:stretch}
    .sw-404-btn,
    .sw-search-btn--primary,
    .sw-search-btn--ghost{width:100%}
    .sw-search-form--hero{flex-direction:column;border:0;background:transparent}
    .sw-search-form--hero .sw-search-input{border:1px solid rgba(255,255,255,0.2);background:rgba(255,255,255,0.04);margin-bottom:8px}
    .sw-search-form--hero .sw-search-btn{width:100%}
  }

  /* ========== Sales signature (Hellena Ji) — used in §14 CTA / About / Factory ========== */
  .sw-sales-signature{
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:24px;
    padding:16px 20px;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(255,255,255,0.12);
    border-radius:var(--sw-radius-md);
  }
  .sw-sales-signature img{
    flex:0 0 80px;
    width:80px;
    height:80px;
    border-radius:50%;
    object-fit:cover;
    display:block;
  }
  .sw-sales-signature div{
    font-size:0.92rem;
    line-height:1.55;
    color:#ffffff;
  }
  .sw-sales-signature strong{font-weight:700;color:#ffffff}
  .sw-sales-signature a{color:#ffffff;text-decoration:underline}
  .sw-sales-signature a:hover{color:#ffffff;opacity:0.85}
  /* Light-section variant (when used outside sw-cta-dark) */
  .sw-section:not(.sw-section-dark):not(.sw-cta-dark) .sw-sales-signature{
    background:#fff;
    border:1px solid var(--sw-border);
  }
  .sw-section:not(.sw-section-dark):not(.sw-cta-dark) .sw-sales-signature div,
  .sw-section:not(.sw-section-dark):not(.sw-cta-dark) .sw-sales-signature strong,
  .sw-section:not(.sw-section-dark):not(.sw-cta-dark) .sw-sales-signature a{color:var(--sw-text)}
  @media (max-width:600px){
    .sw-sales-signature{flex-direction:column;text-align:center;align-items:center}
  }

  /* ═══════════════════════════════════════════════════════════
     BG/SG content-page utilities (added 2026-06-01 for BG-1)
     Reusable for all future Buying Guides + Solution Guides.
     ═══════════════════════════════════════════════════════════ */

  .sw-card{
    background:#fff;
    border:1px solid var(--sw-border);
    border-radius:6px;
    padding:clamp(20px,2.4vw,28px);
    box-shadow:0 2px 8px rgba(0,0,0,.04)
  }

  .sw-card h3{
    margin:0 0 12px;
    color:var(--sw-text);
    font-size:1.15rem
  }

  .sw-card ul{
    margin:0;
    padding-left:1.2em
  }

  .sw-card li{
    margin-bottom:8px;
    line-height:1.55
  }

  .sw-hero-lede{
    font-size:clamp(1rem,1.6vw,1.18rem);
    line-height:1.65;
    color:var(--sw-text);
    margin:24px 0 16px;
    max-width:900px
  }

  .sw-hero-author{
    font-size:0.95rem;
    color:var(--sw-text-soft);
    margin:0 0 28px
  }

  .sw-pitfall-list{
    list-style:none;
    padding:0;
    margin:24px 0 0
  }

  .sw-pitfall-list > li{
    padding:24px 0;
    border-bottom:1px solid var(--sw-border)
  }

  .sw-pitfall-list > li:last-child{
    border-bottom:0
  }

  .sw-pitfall-list h3{
    color:var(--sw-brand);
    margin:0 0 8px;
    font-size:1.1rem
  }

  .sw-pitfall-list p{
    margin:6px 0
  }

  .sw-quote-block blockquote{
    border-left:4px solid var(--sw-brand);
    padding:18px 24px;
    margin:24px 0;
    background:#fafafa;
    font-style:italic
  }

  .sw-quote-block blockquote p{
    margin:0 0 10px;
    line-height:1.6
  }

  .sw-quote-block blockquote footer{
    font-style:normal;
    font-weight:600;
    color:var(--sw-text);
    font-size:0.95rem
  }

  /* Quote block with single author header at top (used in Hellena section) */
  .sw-quote-block-author{
    margin-top:24px
  }

  .sw-quote-author{
    display:flex;
    align-items:center;
    gap:16px;
    padding:16px 0 24px;
    border-bottom:2px solid var(--sw-brand);
    margin-bottom:8px
  }

  .sw-quote-author img{
    width:72px;
    height:72px;
    border-radius:50%;
    object-fit:cover;
    flex-shrink:0
  }

  .sw-quote-author div{
    font-size:0.95rem;
    line-height:1.5;
    color:var(--sw-text)
  }

  .sw-quote-author strong{
    font-size:1.05rem;
    font-weight:700
  }

  .sw-quote-author a{
    color:var(--sw-brand);
    text-decoration:none
  }

  .sw-quote-author a:hover{
    text-decoration:underline
  }

  .sw-quote-block-author blockquote{
    border-left:4px solid var(--sw-brand);
    padding:16px 22px;
    margin:14px 0;
    background:#fff;
    font-style:italic;
    box-shadow:0 1px 4px rgba(0,0,0,.03)
  }

  /* Review card (Alibaba real reviews) */
  .sw-review-card{
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid var(--sw-border);
    border-radius:8px;
    padding:24px;
    position:relative;
    overflow:hidden
  }

  .sw-review-card::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;
    height:3px;
    background:var(--sw-brand)
  }

  .sw-review-stars{
    color:#f5b400;
    font-size:1.1rem;
    letter-spacing:2px;
    margin-bottom:12px;
    line-height:1
  }

  .sw-review-text{
    flex:1;
    font-size:0.96rem;
    line-height:1.6;
    color:var(--sw-text);
    margin:0 0 16px;
    font-style:italic
  }

  .sw-review-meta{
    font-size:0.85rem;
    color:var(--sw-text-soft);
    margin:0;
    padding-top:12px;
    border-top:1px solid var(--sw-border)
  }

  .sw-review-meta strong{
    color:var(--sw-text);
    font-weight:600;
    font-family:var(--sw-font-heading);
    letter-spacing:0.04em
  }

  @media (max-width:680px){
    .sw-quote-author{flex-direction:column;text-align:center;align-items:center}
  }

  /* Buyer-uploaded photo strip (BG-1) */
  .sw-buyer-photos{
    margin-top:32px;
    padding-top:24px;
    border-top:1px solid var(--sw-border)
  }

  .sw-buyer-photos-caption{
    font-size:0.9rem;
    color:var(--sw-text-soft);
    margin:0 0 14px;
    font-style:italic
  }

  .sw-buyer-photos-strip{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    max-width:560px
  }

  .sw-buyer-photo{
    display:block;
    border:1px solid var(--sw-border);
    border-radius:4px;
    overflow:hidden;
    cursor:zoom-in;
    transition:transform .2s ease,box-shadow .2s ease
  }

  .sw-buyer-photo:hover{
    transform:translateY(-2px);
    box-shadow:0 4px 12px rgba(0,0,0,.08)
  }

  .sw-buyer-photos-strip img{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:1/1;
    object-fit:cover
  }

  @media (max-width:480px){
    .sw-buyer-photos-strip{max-width:100%}
  }

  /* ============================================================
     Knowledge-base hero v2 (BG/SG content pages, NOT machine pages)
     Two-column hero: copy left + hero visual right.
     TOC moved OUT of hero → standalone .sw-toc-bar after Trust Strip.
     Updated 2026-06-04 per BG-3 visual QA (Copilot review).
     ============================================================ */

  .sw-hero-kb{
    padding:72px 0 56px;
    background:linear-gradient(180deg,#f7f8fa 0%,#fff 100%);
    border-bottom:1px solid var(--sw-border)
  }

  .sw-hero-kb-grid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
    gap:56px;
    align-items:center
  }

  .sw-hero-kb-copy{min-width:0}

  .sw-hero-kb-visual{margin:0}
  .sw-hero-kb-visual img{
    width:100%;
    height:auto;
    display:block;
    border-radius:8px;
    border:1px solid var(--sw-border);
    box-shadow:0 22px 44px -34px rgba(16,24,32,.55)
  }

  /* Breadcrumb */
  .sw-breadcrumb{
    font-size:.875rem;
    color:var(--sw-text-soft);
    margin-bottom:12px
  }
  .sw-breadcrumb a{color:var(--sw-text-soft);text-decoration:none}
  .sw-breadcrumb a:hover{color:var(--sw-accent)}
  .sw-breadcrumb-sep{margin:0 6px;opacity:.5}

  /* Article meta */
  .sw-article-meta{
    font-size:.875rem;
    color:var(--sw-text-soft);
    margin-bottom:14px;
    letter-spacing:.01em
  }
  .sw-meta-author strong{color:var(--sw-text);font-weight:700}
  .sw-meta-sep{margin:0 10px;opacity:.6}

  /* H1 + subtitle — full hero scale */
  .sw-hero-kb-title{
    font-family:'Barlow Semi Condensed',sans-serif;
    font-weight:800;
    font-size:clamp(2.25rem,4.2vw,4.25rem);
    line-height:.98;
    margin:0 0 24px;
    max-width:780px;
    color:var(--sw-text)
  }
  .sw-hero-kb-subtitle{
    display:block;
    margin-top:12px;
    font-weight:700;
    font-size:clamp(1.15rem,1.7vw,1.55rem);
    line-height:1.25;
    color:var(--sw-text-soft);
    letter-spacing:.01em
  }

  /* TL;DR — refined: white bg + soft shadow + accent left bar */
  .sw-tldr{
    background:#fff;
    border:1px solid var(--sw-border);
    border-left:4px solid var(--sw-accent);
    border-radius:8px;
    padding:22px 26px;
    box-shadow:0 16px 38px -30px rgba(16,24,32,.45);
    margin:0
  }
  .sw-tldr-label{
    text-transform:uppercase;
    font-size:.75rem;
    letter-spacing:.1em;
    font-weight:800;
    color:var(--sw-accent);
    margin-bottom:10px
  }
  .sw-tldr p{
    margin:0 0 14px;
    line-height:1.7;
    font-size:1rem;
    color:var(--sw-text)
  }
  .sw-tldr-cta{
    display:inline-block;
    font-size:.9rem;
    font-weight:600;
    color:var(--sw-accent);
    text-decoration:none;
    border-bottom:1px solid currentColor;
    padding-bottom:1px;
    cursor:pointer
  }
  .sw-tldr-cta:hover{opacity:.7}

  /* TOC bar — thin horizontal anchor nav, lives between Trust Strip and §2 */
  .sw-toc-bar{
    padding:18px 0;
    background:#fff;
    border-bottom:1px solid var(--sw-border)
  }
  .sw-toc-bar-inner{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px 18px
  }
  .sw-toc-bar-label{
    text-transform:uppercase;
    font-size:.7rem;
    letter-spacing:.12em;
    font-weight:800;
    color:var(--sw-text-soft);
    margin-right:6px
  }
  .sw-toc-bar-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px 18px;
    margin:0;
    padding:0;
    list-style:none
  }
  .sw-toc-bar-list li{font-size:.875rem}
  .sw-toc-bar-list a{
    color:var(--sw-text);
    text-decoration:none;
    border-bottom:1px solid transparent;
    padding-bottom:2px;
    transition:color .15s ease
  }
  .sw-toc-bar-list a:hover{
    color:var(--sw-accent);
    border-bottom-color:currentColor
  }

  /* Mobile breakpoints */
  @media (max-width:900px){
    .sw-hero-kb{padding:48px 0 36px}
    .sw-hero-kb-grid{
      grid-template-columns:1fr;
      gap:32px
    }
    .sw-hero-kb-title{font-size:clamp(1.9rem,5.5vw,2.6rem)}
    .sw-hero-kb-visual{order:2}
  }
  @media (max-width:600px){
    .sw-meta-sep{display:none}
    .sw-article-meta>*{display:block;margin-bottom:4px}
    .sw-toc-bar-label{flex-basis:100%;margin-bottom:6px;margin-right:0}
  }

  /* Content-page inline illustrations (BG-3 onward) */
  .sw-content-figure{
    margin:32px 0;
    text-align:center
  }
  .sw-content-figure img{
    display:block;
    max-width:100%;
    height:auto;
    margin:0 auto;
    border:1px solid var(--sw-border);
    border-radius:8px
  }
  .sw-content-figure figcaption{
    margin-top:12px;
    font-size:.875rem;
    color:var(--sw-text-soft);
    font-style:italic;
    line-height:1.5
  }

  /* SW first-person callout (peer-engineer voice, used in BG-3 Step 3) */
  .sw-firstperson{
    margin:32px 0;
    padding:20px 24px;
    background:#fafafa;
    border-left:3px solid var(--sw-text-soft);
    border-radius:0 6px 6px 0
  }
  .sw-firstperson-label{
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
    color:var(--sw-text-soft);
    margin-bottom:10px
  }
  .sw-firstperson p{
    margin:0;
    line-height:1.7;
    font-size:.95rem
  }

  /* ════════════════════════════════════════════════════════════
     BG/SG ARTICLE READING SYSTEM v1 — 2026-06-04
     P1 figure-zoom · P2 decision-table · P3 guide-nav
     P4 mobile-hero · P5 prose · P6 trust-mobile
     Reuses existing .sw-lightbox global overlay (DO NOT redefine).
     ════════════════════════════════════════════════════════════ */

  /* ── P1: Figure-zoom trigger (uses existing .sw-lightbox) ── */
  .sw-figure-zoom{
    position:relative;
    cursor:zoom-in
  }
  .sw-figure-zoom>img{
    cursor:zoom-in
  }
  .sw-figure-zoom-badge{
    position:absolute;
    top:12px;
    right:12px;
    width:38px;
    height:38px;
    border-radius:50%;
    border:0;
    background:rgba(16,24,32,.74);
    color:#fff;
    cursor:zoom-in;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transition:opacity .15s ease,transform .15s ease;
    pointer-events:none
  }
  .sw-figure-zoom-badge svg{
    width:18px;
    height:18px;
    fill:currentColor
  }
  .sw-figure-zoom:hover .sw-figure-zoom-badge,
  .sw-figure-zoom:focus-within .sw-figure-zoom-badge{
    opacity:1;
    transform:scale(1.04)
  }
  @media (hover:none){
    .sw-figure-zoom-badge{opacity:.85}
  }

  /* ── P2: Decision table (BG/SG comparison/decision tables) ── */
  .sw-decision-table-wrap{
    margin:32px 0;
    border:1px solid var(--sw-border);
    border-radius:var(--sw-radius-md);
    background:#fff;
    overflow:hidden
  }
  .sw-decision-table-caption{
    padding:14px 20px;
    background:var(--sw-surface-alt);
    border-bottom:1px solid var(--sw-border);
    font-size:.85rem;
    color:var(--sw-text-soft);
    font-weight:600
  }
  .sw-decision-table{
    width:100%;
    border-collapse:collapse
  }
  .sw-decision-table thead th{
    text-align:left;
    padding:14px 18px;
    font-family:var(--sw-font-heading);
    font-size:.8rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
    color:var(--sw-text-soft);
    background:#fafbfc;
    border-bottom:2px solid var(--sw-border)
  }
  .sw-decision-table tbody td{
    padding:14px 18px;
    vertical-align:top;
    border-bottom:1px solid var(--sw-border);
    font-size:.94rem;
    line-height:1.55;
    color:var(--sw-text)
  }
  .sw-decision-table tbody tr:last-child td{
    border-bottom:0
  }
  .sw-decision-table tbody tr:hover td{
    background:rgba(223,0,36,0.025)
  }
  .sw-decision-table tbody td:first-child{
    font-weight:600;
    color:var(--sw-ink)
  }

  @media (max-width:768px){
    .sw-decision-table-wrap{
      border:0;
      background:transparent;
      margin:24px 0;
      overflow:visible
    }
    .sw-decision-table-caption{
      background:transparent;
      border:0;
      padding:0 0 12px;
      color:var(--sw-text-soft)
    }
    .sw-decision-table,
    .sw-decision-table thead,
    .sw-decision-table tbody,
    .sw-decision-table tr,
    .sw-decision-table td{
      display:block;
      width:100%
    }
    .sw-decision-table thead{display:none}
    .sw-decision-table tbody tr{
      border:1px solid var(--sw-border);
      border-radius:var(--sw-radius-md);
      background:#fff;
      margin-bottom:14px;
      overflow:hidden
    }
    .sw-decision-table tbody tr:hover td{background:transparent}
    .sw-decision-table tbody td{
      border-bottom:1px solid var(--sw-border);
      padding:12px 16px
    }
    .sw-decision-table tbody td:last-child{border-bottom:0}
    .sw-decision-table tbody td:first-child{
      background:var(--sw-surface-alt);
      font-weight:700
    }
    .sw-decision-table tbody td:first-child::before{
      color:var(--sw-text)
    }
    .sw-decision-table tbody td::before{
      content:attr(data-label);
      display:block;
      font-size:.66rem;
      font-weight:800;
      text-transform:uppercase;
      letter-spacing:.08em;
      color:var(--sw-text-soft);
      margin-bottom:6px
    }
  }

  /* ── P3: Guide nav (replaces sw-toc-bar — horizontal scroll chips) ── */
  .sw-guide-nav{
    padding:16px 0;
    background:#fff;
    border-bottom:1px solid var(--sw-border)
  }
  .sw-guide-nav-inner{
    display:flex;
    align-items:center;
    gap:18px
  }
  .sw-guide-nav-label{
    flex:0 0 auto;
    font-family:var(--sw-font-heading);
    font-size:.7rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--sw-text-soft)
  }
  .sw-guide-nav-scroll{
    flex:1 1 auto;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scrollbar-color:var(--sw-border) transparent
  }
  .sw-guide-nav-scroll::-webkit-scrollbar{height:4px}
  .sw-guide-nav-scroll::-webkit-scrollbar-thumb{
    background:var(--sw-border);
    border-radius:2px
  }
  .sw-guide-nav-list{
    display:inline-flex;
    flex-wrap:nowrap;
    gap:6px;
    margin:0;
    padding:2px 4px;
    list-style:none;
    white-space:nowrap
  }
  .sw-guide-nav-link{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:6px 12px;
    font-size:.82rem;
    font-weight:500;
    color:var(--sw-text);
    background:transparent;
    border:1px solid transparent;
    border-radius:999px;
    text-decoration:none;
    transition:color .15s ease,background .15s ease,border-color .15s ease
  }
  .sw-guide-nav-link:hover{
    background:#fff;
    border-color:var(--sw-border);
    color:var(--sw-accent)
  }
  @media (max-width:768px){
    .sw-guide-nav-inner{
      flex-direction:column;
      align-items:flex-start;
      gap:8px
    }
    .sw-guide-nav-label{padding-left:4px}
    .sw-guide-nav-list{padding:2px 0}
    .sw-guide-nav-link{
      min-height:44px;
      padding:8px 14px;
      background:var(--sw-surface-alt);
      border-color:var(--sw-border)
    }
  }

  /* ── P4: Mobile hero cleanup (hide breadcrumb, tighter meta + TLDR) ── */
  @media (max-width:768px){
    .sw-hero-kb .sw-breadcrumb{display:none}
    .sw-article-meta{font-size:.8rem;margin-bottom:10px}
    .sw-article-meta .sw-meta-date{display:none}
    .sw-article-meta .sw-meta-sep+.sw-meta-date+.sw-meta-sep{display:none}
    .sw-tldr{padding:16px 18px}
    .sw-tldr p{font-size:.92rem;line-height:1.6;margin-bottom:10px}
    .sw-tldr-label{margin-bottom:8px}
    .sw-hero-kb-title{line-height:1.06}
  }

  /* ── P5: Reading prose width (constrain body text, allow breakout for tables/figures) ── */
  .sw-prose>p,
  .sw-prose>ul,
  .sw-prose>ol,
  .sw-prose>h3{
    max-width:860px
  }
  .sw-prose>.sw-decision-table-wrap,
  .sw-prose>.sw-content-figure,
  .sw-prose>.sw-firstperson{
    max-width:none
  }

  /* ── P6: Trust strip mobile compact (2x2 grid instead of vertical stack) ── */
  @media (max-width:768px){
    .sw-trust-strip{
      grid-template-columns:1fr 1fr
    }
    .sw-trust-item{
      padding:18px 18px;
      border-right:1px solid rgba(255,255,255,.07);
      border-bottom:1px solid rgba(255,255,255,.07)
    }
    .sw-trust-item:nth-child(2n){border-right:none}
    .sw-trust-item:nth-last-child(-n+2){border-bottom:none}
    .sw-trust-label{font-size:.58rem;margin-bottom:6px}
    .sw-trust-value{font-size:.92rem}
  }
