/* Shared compact v4 presentation; phone sizes below are overridden by tablet-v1.css at 768–1199.
   Business data and >=1200 desktop sheets remain unchanged. One compact component base avoids duplicate mobile/tablet rules. */
.mobile-v4-only {
  display:none
}
@media(max-width:1199px) {
  :root {
    --adaptive-header:56px;
    --adaptive-gutter:16px;
    --adaptive-gap:12px;
    --adaptive-bottom:64px
  }
  body {
    font-size:16px;
    line-height:1.5
  }
  body:has(.adaptive-bottom-nav),body:has(.adaptive-detail-bar) {
    --adaptive-bottom:64px;
    padding-bottom:calc(64px + env(safe-area-inset-bottom))
  }
  #main {
    min-width:0
  }
  #main .mobile-v4-only,.mobile-v4-only {
    display:block
  }
  .site-header,.site-header .header-inner {
    height:56px;
    min-height:56px
  }
  .site-header .header-inner {
    width:calc(100% - 32px);
    gap:8px
  }
  .site-header .brand-logo,.header-inner:has(.adaptive-back) .brand-logo {
    width:140px;
    height:auto;
    max-height:36px;
    object-fit:contain
  }
  .site-header .menu-toggle,.site-header .language-switch>summary {
    min-width:44px;
    min-height:44px
  }
  .site-header .header-actions {
    gap:0
  }
  .site-header .header-search {
    display:none
  }
  .site-header .header-actions .languages {
    display:block
  }
  .site-header .languages summary {
    display:flex;
    align-items:center;
    min-height:44px;
    font-size:14px;
    gap:4px
  }
  .site-header .languages .icon {
    width:20px;
    height:20px;
    display:block
  }
  .site-header .languages summary>.icon:last-child {
    width:12px;
    height:12px
  }
  .site-header .languages ul {
    right:0
  }
  .site-header .menu-toggle {
    order:5
  }
  #main h1 {
    font-size:28px;
    line-height:1.3
  }
  #main h2 {
    font-size:24px;
    line-height:1.35
  }
  #main h3 {
    font-size:18px;
    line-height:1.4
  }
  #main p {
    line-height:1.5
  }
  #main .button {
    min-height:48px;
    font-size:16px;
    line-height:1.4;
    padding:10px 14px;
    white-space:normal
  }
  #main input:not([type=checkbox]):not([type=radio]),#main select {
    min-height:48px;
    font-size:16px
  }
  #main textarea {
    min-height:112px;
    font-size:16px
  }
  #main summary {
    min-height:44px;
    align-content:center
  }
  #main label:has(>input[type=checkbox]),#main label:has(>input[type=radio]) {
    min-height:44px
  }
  #main input[type=radio],#main input[type=checkbox] {
    width:20px;
    height:20px;
    flex:0 0 20px
  }
  #main .product-grid,#main .featured-grid,#main .related-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
  }
  #main .product-card {
    min-width:0;
    display:flex;
    flex-direction:column;
    border:1px solid var(--line);
    border-radius:6px;
    background:var(--surface);
    overflow:hidden
  }
  #main .product-card .product-media {
    width:100%;
    height:auto;
    aspect-ratio:1
  }
  #main .product-card .product-media img {
    width:100%;
    height:100%;
    object-fit:cover
  }
  #main .product-card .card-body {
    padding:10px;
    display:flex;
    flex:1;
    flex-direction:column;
    gap:6px
  }
  #main .product-card h3,#main .product-card h3 a {
    font-size:16px;
    line-height:24px;
    font-weight:600;
    display:block;
    overflow:visible;
    -webkit-line-clamp:unset;
    max-height:none;
    white-space:normal;
    overflow-wrap:anywhere;
    margin:0
  }
  #main .product-card .product-tags {
    font-size:12px;
    line-height:18px;
    margin:0;
    display:block
  }
  #main .product-card .product-tags li {
    display:inline
  }
  #main .product-card .card-reference {
    font-size:14px;
    line-height:22px;
    font-weight:600;
    color:var(--accent-text)
  }
  #main .product-card .card-config,#main .product-card .supply-status {
    font-size:12px;
    line-height:18px;
    white-space:normal;
    display:block;
    overflow:visible;
    -webkit-line-clamp:unset;
    margin:0
  }
  #main .product-card .card-actions {
    margin-top:auto;
    padding-top:4px
  }
  #main .product-card .card-actions .button {
    width:100%;
    min-height:44px;
    padding:8px 4px;
    border:1px solid var(--brand);
    background:white;
    color:var(--brand);
    font-size:14px
  }
  #main .product-card .card-actions .icon {
    display:none
  }
  .adaptive-bottom-nav {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    height:calc(64px + env(safe-area-inset-bottom));
    padding:0 8px env(safe-area-inset-bottom);
    background:var(--brand);
    border:0;
    box-shadow:none
  }
  .adaptive-bottom-nav a {
    min-height:64px;
    gap:2px;
    color:white;
    font-size:12px;
    line-height:18px
  }
  .adaptive-bottom-nav .icon {
    width:24px;
    height:24px
  }
  .adaptive-bottom-nav [aria-current] {
    color:#d4a34d;
    background:transparent
  }
  .drawer-open .adaptive-bottom-nav,.keyboard-open .adaptive-bottom-nav {
    display:none
  }
  /* H01: photo hero, horizontal features, tea entrances and real featured cards. */
  #main .home-page>.adaptive-procurement-entries,#main .home-page>.adaptive-home-followup,#main .home-page>.services-screen,#main .home-page>.resources-screen,#main .home-page>.scenarios-screen,#main .home-page>#customization,#main .home-page>#procurement,#main .hero-strength-evidence {
    display:none
  }
  #main .home-page>.global-hero {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    height:auto;
    min-height:0;
    padding:20px 16px 0;
    background:transparent;
    overflow:visible;
    position:relative;
    gap:0
  }
  #main .home-page .global-hero>.hero-background {
    display:block;
    position:absolute;
    inset:0;
    width:100%;
    height:354px;
    max-height:none;
    object-fit:cover;
    object-position:60% center!important;
    opacity:1
  }
  #main .global-hero:after,#main .global-hero:before {
    display:none
  }
  #main .home-page .global-hero .hero-inner {
    position:relative;
    width:100%;
    height:auto;
    margin:0;
    padding:0;
    display:block;
    z-index:1
  }
  #main .home-page .hero-copy {
    width:100%;
    padding:0;
    max-width:none;
    display:flex;
    flex-direction:column
  }
  #main .home-page .hero-copy h1 {
    font-size:28px;
    line-height:1.3;
    margin:0 0 6px;
    max-width:330px;
    order:0
  }
  #main .home-page .hero-copy h1>.adaptive-hero-title {
    display:block;
    font-size:inherit;
    line-height:inherit;
    max-width:330px
  }
  #main .home-page .hero-copy h1 .adaptive-hero-title>span {
    display:inline
  }
  #main .home-page .hero-eyebrow {
    position:static;
    display:block;
    font-size:14px;
    font-weight:600;
    margin:0 0 4px;
    order:1
  }
  #main .home-page .hero-subtitle {
    font-size:14px;
    line-height:21px;
    font-weight:600;
    margin:0 0 6px;
    max-width:100%;
    order:2
  }
  #main .home-page .hero-description {
    display:block;
    max-width:250px;
    font-size:14px;
    margin:0 0 20px;
    order:3
  }
  #main .home-page .hero-description p {
    margin:0;
    font-size:14px
  }
  #main .home-page .hero-copy>.button-row,#main .hero-need-hint {
    display:none
  }
  #main .home-page .hero-copy .search-form {
    display:flex;
    width:100%;
    margin:0;
    min-height:48px;
    background:white;
    border-radius:6px;
    border:1px solid var(--border-control);
    overflow:hidden;
    order:4
  }
  #main .home-page .hero-copy .search-form input {
    min-width:0;
    padding:8px 4px;
    font-size:16px;
    background:white
  }
  #main .home-page .hero-copy .search-form>.icon {
    margin:0 6px 0 10px;
    flex:0 0 22px;
    display:block
  }
  #main .home-page .hero-copy .search-form .button {
    min-width:100px;
    width:auto;
    margin:0;
    border-radius:3px;
    padding:8px
  }
  #main .mobile-hero-actions {
    position:relative;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:8px;
    z-index:1
  }
  #main .mobile-hero-actions .button {
    font-size:14px;
    padding:8px;
    gap:4px;
    background:var(--brand);
    color:white;
    border:1px solid var(--brand)
  }
  #main .mobile-hero-actions .secondary {
    background:#fff;
    color:var(--brand);
    opacity:1
  }
  #main .mobile-hero-actions p {
    grid-column:1/-1;
    margin:0;
    font-size:12px;
    line-height:18px;
    background:var(--surface);
    padding:4px 6px;
    border-radius:4px;
    color:var(--muted)
  }
  #main .hero-strength-services {
    display:block;
    position:relative;
    background:white;
    color:var(--brand);
    margin:12px 0 0;
    border:1px solid var(--line);
    border-radius:8px;
    width:100%;
    height:auto;
    padding:12px 0;
    z-index:1
  }
  #main .hero-strength-services>.shell {
    width:100%;
    padding:0
  }
  #main .hero-strength-services .feature-strip {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin:0;
    padding:0;
    gap:0;
    list-style:none
  }
  #main .hero-strength-services li,#main .hero-strength-services li>a {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:4px;
    text-align:center;
    padding:0 3px;
    min-width:0;
    color:var(--brand);
    border:0;
    background:transparent
  }
  #main .hero-strength-services li+li {
    border-left:1px solid var(--line)
  }
  #main .hero-strength-services li .icon {
    width:26px;
    height:26px;
    color:var(--accent-text);
    border:0;
    padding:0
  }
  #main .hero-strength-services strong {
    font-size:12px;
    line-height:18px;
    display:block
  }
  #main .hero-strength-services p {
    font-size:11px;
    line-height:16px;
    color:var(--muted);
    margin:3px 0 0
  }
  #main .hero-strength-services .feature-ring {
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border:0;
    margin:0;
    background:none;
    color:var(--accent-text)
  }
  #main .hero-strength-services div>span {
    display:block;
    font-size:11px;
    line-height:16px;
    color:var(--muted);
    margin-top:3px
  }
  #main .home-page .category-screen {
    display:block;
    padding:0;
    margin:18px 0 0;
    height:auto;
    min-height:0
  }
  #main .home-page .category-stage {
    display:block;
    height:auto;
    min-height:0
  }
  #main .category-overview {
    display:block;
    min-height:0;
    padding:0 16px;
    background:none;
    height:auto
  }
  #main .category-overview>.visual-backdrop,#main .category-overview:after,#main .category-overview .section-eyebrow {
    display:none
  }
  #main .category-overview h2 {
    font-size:24px;
    line-height:1.35;
    margin:0 0 4px
  }
  #main .category-overview p {
    font-size:14px;
    color:var(--muted);
    margin:0 0 10px
  }
  #main .category-overview .section-heading {
    margin:0;
    padding:0
  }
  #main .home-page .category-stage .tea-panels {
    display:flex;
    gap:8px;
    overflow:auto;
    scroll-snap-type:x proximity;
    padding:0 16px 6px;
    margin:0;
    list-style:none;
    width:100%;
    height:auto;
    box-sizing:border-box
  }
  #main .tea-panels li {
    flex:0 0 68px;
    height:96px;
    scroll-snap-align:start
  }
  #main .tea-panels li a {
    display:flex;
    flex-direction:column;
    position:relative;
    height:96px;
    width:68px;
    border-radius:5px;
    overflow:hidden;
    background:white;
    color:var(--brand);
    padding:0
  }
  #main .tea-panels li a:after {
    display:none
  }
  #main .tea-panels img {
    position:static;
    width:68px;
    height:64px;
    object-fit:cover
  }
  #main .tea-panels li a>div {
    position:static;
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    padding:5px 4px;
    gap:0;
    text-shadow:none
  }
  #main .tea-panels h3 {
    font-family:var(--body-font);
    font-size:12px;
    line-height:20px;
    margin:0;
    color:var(--brand)
  }
  #main .tea-panels .category-action-icon {
    width:16px;
    height:16px;
    border:1px solid var(--brand);
    border-radius:50%;
    display:grid;
    place-items:center;
    margin:0;
    color:var(--brand)
  }
  #main .tea-panels .icon {
    width:12px;
    height:12px
  }
  #main .tea-panels .category-action-label {
    display:none
  }
  #main .home-page .featured-products {
    display:block;
    width:calc(100% - 32px);
    padding:0;
    margin:16px auto 0
  }
  #main .home-page .featured-products>.selection-adaptive-heading {
    display:block;
    margin:0 0 10px
  }
  #main .selection-adaptive-heading h2 {
    margin:0
  }
  #main .mobile-feature-tabs {
    display:flex;
    gap:8px;
    margin:0 0 12px
  }
  #main .mobile-feature-tabs button {
    min-height:44px;
    min-width:100px;
    border:0;
    border-radius:24px;
    background:#f0f2f0;
    color:var(--muted);
    padding:10px 16px;
    font-size:14px
  }
  #main .mobile-feature-tabs [aria-pressed=true] {
    background:var(--brand);
    color:white
  }
  #main .selection-row-heading {
    display:none
  }
  #main .selection-row {
    margin:0;
    padding:0
  }
  #main .selection-screen [data-featured-panel=bulk] {
    display:block
  }
  #main .selection-screen .mobile-feature-inactive {
    display:none
  }
  #main .home-page .featured-grid>.product-card:nth-child(n+5) {
    display:none
  }
  #main .mobile-view-all {
    display:flex;
    margin:16px 0 0;
    width:100%;
    color:var(--brand);
    background:white;
    border:1px solid var(--brand)
  }
  /* H02/H03: contiguous homepage continuation, never repeated fixed navigation. */
  #main .mobile-v4-home {
    display:block
  }
  .mobile-section {
    margin:24px 16px 0
  }
  .mobile-section>h2 {
    display:flex;
    gap:8px;
    align-items:center;
    margin:0 0 6px
  }
  .mobile-section>h2>.icon {
    color:var(--accent-text);
    flex:0 0 24px;
    width:24px;
    height:24px
  }
  .mobile-section>p {
    font-size:14px;
    color:var(--muted);
    margin:4px 0 10px
  }
  .mobile-section ul {
    list-style:none;
    margin:0;
    padding:0
  }
  .mobile-scenes li+li,.mobile-services li+li {
    margin-top:8px
  }
  .mobile-scenes a {
    height:76px;
    display:flex;
    position:relative;
    align-items:center;
    border-radius:6px;
    overflow:hidden;
    padding:10px 12px;
    color:white;
    background:var(--brand)
  }
  .mobile-scenes .module-image {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    filter:brightness(.65)
  }
  .mobile-scenes a>div,.mobile-scenes a>.icon {
    position:relative;
    z-index:1
  }
  .mobile-scenes a>.icon {
    margin-left:auto;
    background:white;
    color:var(--brand);
    border-radius:50%;
    width:26px;
    height:26px;
    padding:5px
  }
  .mobile-scenes h3 {
    margin:0 0 3px;
    color:white
  }
  .mobile-scenes a p {
    font-size:12px;
    margin:0;
    max-width:280px;
    color:white
  }
  #main .mobile-trust>h2 {
    display:block;
    max-width:350px;
    margin:0 0 18px
  }
  .mobile-trust ul {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
  }
  .mobile-trust li {
    text-align:center;
    min-width:0
  }
  .mobile-trust li+li {
    border-left:1px solid var(--line);
    padding-left:8px
  }
  .mobile-trust .icon {
    width:34px;
    height:34px;
    color:var(--accent-text)
  }
  #main .mobile-trust h3 {
    font-size:14px;
    font-weight:600;
    margin:8px 0 4px
  }
  .mobile-trust p {
    font-size:12px;
    line-height:18px;
    color:var(--muted);
    margin:0
  }
  .mobile-strength ul {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px
  }
  .mobile-strength li {
    display:flex;
    gap:10px;
    padding:12px 10px;
    border:1px solid var(--line);
    border-radius:6px;
    background:white;
    align-items:center
  }
  .mobile-strength li>.icon {
    width:28px;
    height:28px;
    flex:0 0 28px;
    color:var(--accent-text)
  }
  #main .mobile-strength h3 {
    font-size:14px;
    margin:0
  }
  .mobile-strength li p {
    font-size:12px;
    margin:2px 0 0;
    color:var(--muted)
  }
  .mobile-strength-cta {
    background:var(--brand);
    padding:12px;
    border-radius:5px;
    color:white;
    margin-top:10px
  }
  .mobile-strength-cta p {
    font-size:12px;
    margin:0 0 8px
  }
  .mobile-strength-cta .button {
    width:100%;
    background:var(--accent-text);
    color:white
  }
  #main .mobile-services>h2 {
    display:block
  }
  .mobile-services a {
    display:grid;
    grid-template-columns:110px minmax(0,1fr) 24px;
    align-items:center;
    border:1px solid var(--line);
    background:white;
    border-radius:6px;
    overflow:hidden;
    gap:12px;
    padding-right:8px;
    min-height:92px
  }
  .mobile-services .module-image {
    height:100%;
    min-height:92px;
    width:110px;
    object-fit:cover
  }
  .mobile-services h3 {
    margin:0 0 4px
  }
  .mobile-services p {
    font-size:14px;
    line-height:21px;
    color:var(--muted);
    margin:0
  }
  .mobile-services a>.icon {
    width:20px;
    height:20px
  }
  .mobile-supply>ul {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
  }
  .mobile-supply .supply-service-card {
    display:flex;
    flex-direction:column;
    height:100%;
    border:1px solid var(--line);
    border-radius:6px;
    background:white;
    overflow:hidden
  }
  .mobile-supply .module-image {
    display:block;
    flex:none;
    width:100%;
    height:88px;
    object-fit:cover
  }
  #main .mobile-supply .supply-service-card>h3 {
    display:flex;
    flex:1;
    font-family:var(--body-font);
    align-items:center;
    justify-content:space-between;
    font-size:14px;
    line-height:22px;
    font-weight:600;
    padding:8px;
    margin:0
  }
  .mobile-oem-steps {
    list-style:none;
    margin:12px 0 16px;
    padding:0 8px
  }
  .mobile-oem-steps li {
    display:flex;
    gap:16px;
    position:relative;
    padding:0 0 16px
  }
  .mobile-oem-steps li>span {
    display:grid;
    place-items:center;
    border-radius:50%;
    width:32px;
    height:32px;
    flex:0 0 32px;
    color:white;
    background:var(--accent-text);
    font-family:var(--v14-title-font);
    z-index:1
  }
  .mobile-oem-steps li:not(:last-child):after {
    position:absolute;
    content:"";
    left:15px;
    top:32px;
    bottom:0;
    border-left:1px solid var(--accent-text)
  }
  #main .mobile-oem-steps h3 {
    font-size:16px;
    line-height:24px;
    margin:0
  }
  .mobile-oem-steps p {
    font-size:14px;
    line-height:21px;
    color:var(--muted);
    margin:2px 0 0
  }
  .mobile-process>.button {
    width:100%
  }
  /* Catalog: search, real route tabs, native filters, unchanged truthful pagination. */
  #main .catalog-page>.page-banner {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip-path:inset(50%);
    padding:0;
    min-height:0
  }
  #main .catalog-page>.mobile-catalog-top {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin:12px 16px 0;
    width:calc(100% - 32px)
  }
  #main .mobile-catalog-top .search-form {
    order:0;
    margin:0;
    display:flex;
    min-height:48px
  }
  #main .mobile-catalog-top .search-form input {
    min-width:0
  }
  #main .mobile-catalog-top .search-form button {
    font-size:14px;
    min-width:88px;
    padding:8px
  }
  #main .mobile-catalog-tabs {
    display:flex;
    order:1;
    justify-content:space-between;
    gap:0;
    border-bottom:1px solid var(--line)
  }
  #main .mobile-catalog-tabs a {
    flex:1;
    text-align:center;
    min-height:48px;
    padding:12px 2px;
    font-size:14px;
    white-space:nowrap;
    border-bottom:3px solid transparent
  }
  #main .mobile-catalog-tabs [aria-current] {
    border-bottom-color:var(--brand);
    font-weight:600;
    color:var(--brand)
  }
  #main .mobile-catalog-top>p {
    order:2;
    font-size:14px;
    margin:0;
    background:#f5f3ed;
    padding:6px 8px;
    border-radius:4px
  }
  #main .catalog-layout {
    margin:12px 16px 0;
    padding:0;
    width:calc(100% - 32px);
    display:block
  }
  #main .catalog-results {
    padding:0
  }
  #main .catalog-results .result-line {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    padding:0;
    margin:0 0 12px
  }
  #main .result-line>.filter-toggle {
    width:auto;
    flex:0 0 auto;
    min-width:88px;
    min-height:44px;
    font-size:14px;
    padding:8px 12px
  }
  #main .result-line>div {
    display:contents
  }
  #main .result-line .selected-filters {
    flex-basis:100%;
    order:3;
    margin:0
  }
  #main .result-line form {
    display:flex;
    gap:4px;
    align-items:center;
    flex:0 1 auto;
    margin:0;
    justify-content:flex-end;
    order:5
  }
  #main .result-line form label {
    font-size:12px;
    display:flex;
    gap:4px;
    align-items:center
  }
  #main .result-line select {
    min-height:44px;
    font-size:14px;
    padding:6px;
    max-width:120px
  }
  #main .result-line form button {
    min-height:44px;
    font-size:14px;
    padding:4px
  }
  #main .result-line .result-count {
    font-size:14px;
    order:4;
    margin:0;
    flex:1
  }
  #main .catalog-page .pagination {
    margin:16px 0;
    gap:8px;
    flex-wrap:wrap
  }
  #main .catalog-page .pagination a,#main .catalog-page .pagination span {
    min-height:44px;
    min-width:44px;
    padding:10px
  }
  #main .v14-inquiry-strip {
    padding:12px;
    display:block;
    margin:16px;
    width:calc(100% - 32px)
  }
  #main .v14-inquiry-strip p {
    font-size:14px;
    margin:0 0 8px
  }
  #main .v14-inquiry-strip .button {
    width:100%
  }
  /* OEM: same approved photography and content, compact ordered phone flow. */
  #main .catalog-page[data-type=oem] .approved-oem {
    display:flex;
    flex-direction:column;
    margin:0;
    padding:0
  }
  #main .approved-oem-hero {
    position:relative;
    display:block;
    padding:16px;
    min-height:0;
    height:auto;
    margin:0
  }
  #main .approved-oem-hero>.approved-oem-background {
    display:block;
    opacity:1;
    position:absolute;
    inset:0;
    width:100%;
    height:256px;
    object-fit:cover;
    object-position:60% center!important
  }
  #main .approved-oem-copy {
    position:relative;
    width:100%;
    max-width:none;
    padding:0
  }
  #main .approved-oem-copy h1 {
    font-size:28px;
    line-height:1.3;
    max-width:240px;
    margin:0 0 8px
  }
  #main .approved-oem-copy h1>span {
    display:block
  }
  #main .approved-oem-description {
    font-size:14px;
    line-height:21px;
    max-width:235px;
    min-height:64px;
    margin:0 0 12px
  }
  #main .approved-oem-eyebrow,#main .approved-oem-scenes,#main .approved-oem-motto {
    display:none
  }
  #main .approved-oem-copy .button-row {
    margin:0 0 20px
  }
  #main .approved-oem-copy .button-row .button {
    font-size:14px;
    padding:8px 14px
  }
  #main .approved-oem-features {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
    position:relative;
    background:#f5f3ed;
    border-radius:6px;
    padding:10px 0;
    margin:0;
    order:0
  }
  #main .approved-oem-features li {
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:0 2px;
    text-align:center;
    min-width:0
  }
  #main .approved-oem-features li+li {
    border-left:1px solid var(--line)
  }
  #main .approved-oem-features .icon {
    width:24px;
    height:24px;
    color:var(--brand)
  }
  #main .approved-oem-features strong {
    font-size:10px;
    line-height:16px;
    font-weight:500;
    display:block
  }
  #main .approved-oem-features p {
    display:none
  }
  #main .approved-oem-copy {
    display:flex;
    flex-direction:column
  }
  #main .approved-oem-features {
    order:3
  }
  #main .approved-oem-examples {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:0 16px;
    margin:8px 0 0
  }
  #main .approved-oem-promo {
    grid-column:1/-1;
    display:block;
    padding:0;
    background:none;
    height:auto;
    min-height:0;
    color:var(--brand)
  }
  #main .approved-oem-promo>.approved-photo,#main .approved-oem-promo strong,#main .approved-oem-promo .button {
    display:none
  }
  #main .approved-oem-promo:after {
    display:none
  }
  #main .approved-oem-promo>div {
    position:static;
    padding:0
  }
  #main .approved-oem-promo h3 {
    font-size:24px;
    margin:0 0 4px
  }
  #main .approved-oem-promo p {
    font-size:14px;
    line-height:21px;
    color:var(--muted);
    margin:0
  }
  #main .approved-oem-examples>article {
    display:block;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:6px;
    background:white;
    min-height:0
  }
  #main .approved-oem-examples>article>.approved-photo {
    position:static;
    display:block;
    width:100%;
    height:112px;
    object-fit:cover
  }
  #main .approved-oem-examples>article>div {
    position:static;
    padding:10px
  }
  #main .approved-oem-examples h3 {
    font-size:16px;
    font-weight:600;
    line-height:24px;
    margin:0 0 4px
  }
  #main .approved-oem-examples p {
    font-size:12px;
    color:var(--muted);
    line-height:18px;
    margin:0
  }
  #main .approved-example-note {
    font-size:12px;
    color:var(--muted);
    text-align:center;
    padding:0 16px;
    margin:12px 0
  }
  #main .approved-oem-process {
    display:block;
    width:auto;
    margin:24px 16px 0;
    padding:0;
    border:0;
    box-shadow:none;
    background:none
  }
  #main .approved-oem-process header {
    display:block;
    border:0;
    margin:0 0 16px;
    padding:0
  }
  #main .approved-oem-process header h3 {
    font-size:24px;
    margin:0
  }
  #main .approved-oem-process header p {
    display:none
  }
  #main .approved-oem-process ol {
    display:block;
    padding:0;
    margin:0;
    list-style:none
  }
  #main .approved-oem-process li {
    display:flex;
    gap:12px;
    position:relative;
    padding:0 0 18px
  }
  #main .approved-process-number {
    display:grid;
    place-items:center;
    border-radius:50%;
    background:var(--accent-text);
    color:white;
    width:32px;
    height:32px;
    flex:0 0 32px;
    font-size:16px;
    z-index:1
  }
  #main .approved-oem-process li:not(:last-child):after {
    content:"";
    position:absolute;
    top:32px;
    bottom:0;
    left:15px;
    border-left:1px solid var(--accent-text)
  }
  #main .approved-process-icon,#main .approved-oem-process li>.icon {
    display:none
  }
  #main .approved-oem-process h4 {
    font-size:16px;
    line-height:24px;
    margin:0
  }
  #main .approved-oem-process li p {
    font-size:14px;
    line-height:21px;
    margin:2px 0 0;
    color:var(--muted)
  }
  #main .oem-list-heading {
    display:block;
    padding:0;
    margin:24px 16px 8px;
    width:calc(100% - 32px)
  }
  #main .oem-list-heading h2 {
    margin:0
  }
  #main .oem-list-heading p {
    font-size:14px;
    margin:4px 0
  }
  #main .catalog-page[data-type=oem] .catalog-layout {
    margin-top:8px
  }
  #main .catalog-page[data-type=oem] .result-line,#main .catalog-page[data-type=oem]>.catalog-layout>.filters {
    display:none
  }
  /* Details: 4:3 gallery, title, actual radio configurations and quantity, then content. */
  #main .detail-page {
    display:block;
    width:calc(100% - 32px);
    margin:12px 16px;
    padding:0
  }
  #main .detail-main,#main .detail-top {
    display:block;
    min-width:0
  }
  #main .detail-summary {
    padding:0;
    margin:12px 0 0
  }
  #main .detail-summary h1 {
    font-size:28px;
    line-height:1.3;
    margin:8px 0
  }
  #main .detail-summary>p {
    font-size:14px;
    color:var(--muted);
    margin:6px 0
  }
  #main .detail-summary .detail-actions,#main .detail-summary>.reference-note {
    display:none
  }
  #main .gallery figure {
    aspect-ratio:4/3;
    height:auto;
    min-height:0;
    margin:0;
    overflow:hidden;
    border-radius:6px
  }
  #main .gallery figure img {
    width:100%;
    height:100%;
    object-fit:cover
  }
  #main .gallery .gallery-expand {
    min-height:44px;
    font-size:14px;
    margin:4px 0
  }
  #main .gallery .thumbnails {
    display:none
  }
  #main .gallery.gallery-expanded .thumbnails {
    display:flex;
    overflow:auto;
    gap:8px
  }
  #main .gallery .thumbnails button {
    width:60px;
    min-width:60px;
    min-height:60px
  }
  #main .detail-tags {
    font-size:12px;
    margin:0
  }
  #main .detail-top>.rfq-configurator {
    position:static;
    width:100%;
    padding:12px;
    margin:16px 0;
    display:block;
    border:1px solid var(--line);
    border-radius:6px;
    background:white
  }
  #main .rfq-configurator h2 {
    display:block;
    font-size:20px;
    line-height:28px;
    margin:0 0 10px
  }
  #main .rfq-configurator form {
    display:flex;
    flex-direction:column;
    gap:12px
  }
  #main .rfq-configurator form>label,#main .rfq-configurator form>p {
    margin:0;
    font-size:14px;
    width:100%
  }
  #main .rfq-configurator .native-config-select {
    display:none
  }
  #main .adaptive-config-options {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin:0;
    padding:0;
    border:0
  }
  #main .adaptive-config-options legend {
    font-size:14px;
    line-height:22px;
    margin:0 0 6px
  }
  #main .adaptive-config-options label {
    display:grid;
    grid-template-columns:20px minmax(0,1fr);
    gap:4px 10px;
    align-items:center;
    padding:12px;
    border:1px solid var(--line);
    border-radius:6px;
    font-size:16px;
    line-height:24px;
    min-height:64px;
    width:100%;
    background:white
  }
  #main .adaptive-config-options label input {
    grid-row:1/3;
    min-width:20px;
    margin:0;
    accent-color:var(--brand)
  }
  #main .adaptive-config-options label span {
    font-size:16px;
    font-weight:600;
    line-height:24px
  }
  #main .adaptive-config-options small {
    font-size:14px;
    line-height:22px;
    grid-column:2;
    color:var(--accent-text)
  }
  #main .adaptive-config-options label:has(:checked) {
    border-color:var(--brand);
    background:#f3f7f4
  }
  #main .rfq-configurator [data-config-price] {
    display:none
  }
  #main .quantity-stepper {
    display:flex;
    max-width:100%;
    width:max-content;
    height:48px
  }
  #main .quantity-stepper button {
    width:44px;
    min-width:44px;
    min-height:48px
  }
  #main .quantity-stepper input {
    width:80px;
    min-width:0;
    text-align:center;
    padding:4px
  }
  #main .rfq-configurator form>label:has(.quantity-stepper) {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px
  }
  #main .rfq-configurator .quantity-stepper {
    margin-left:auto
  }
  #main .rfq-configurator form>button[type=submit],#main .rfq-configurator .config-list-link,#main .rfq-configurator form>[data-rfq-sample] {
    display:none
  }
  #main .rfq-configurator .config-more {
    width:100%
  }
  #main .rfq-configurator .config-more textarea {
    width:100%
  }
  #main .detail-tabs {
    display:flex;
    gap:0;
    border-bottom:1px solid var(--line);
    margin:12px 0 8px;
    overflow:auto
  }
  #main .detail-tabs a {
    flex:1;
    min-height:48px;
    font-size:14px;
    padding:12px 4px;
    white-space:nowrap;
    text-align:center
  }
  #main .detail-tabs [aria-current=true] {
    border-bottom:2px solid var(--brand);
    color:var(--brand)
  }
  #main .detail-information {
    display:block;
    padding:0;
    margin:0
  }
  #main .detail-information>div,#main .detail-information>section {
    width:100%;
    padding:12px;
    margin:0;
    background:#f7f6f2;
    border-radius:6px
  }
  #main .detail-information>.detail-comparison {
    display:block;
    margin-top:12px;
    padding:0;
    background:transparent
  }
  #main .detail-information>.mobile-detail-inactive {
    display:none
  }
  #main .detail-comparison .table-scroll {
    display:none
  }
  #main .detail-information h2 {
    font-size:20px;
    line-height:28px;
    margin:0 0 8px
  }
  #main .detail-information p {
    font-size:14px;
    line-height:22px;
    margin:6px 0
  }
  #main .detail-facts {
    grid-template-columns:1fr 1fr
  }
  .adaptive-detail-bar {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    height:auto;
    min-height:64px;
    padding:8px 16px calc(8px + env(safe-area-inset-bottom));
    background:white
  }
  .adaptive-detail-bar>.detail-bar-list {
    display:none
  }
  .adaptive-detail-bar .button {
    display:flex;
    min-height:48px;
    font-size:14px;
    padding:8px;
    width:100%
  }
  .adaptive-detail-bar .secondary {
    background:white;
    color:var(--brand);
    border:1px solid var(--brand)
  }
  /* Q01/Q02 share one real form and session. Panels change only on phone. */
  #main .approved-rfq-hero {
    padding:20px 16px 12px;
    min-height:0;
    height:auto;
    display:block;
    background:none
  }
  #main .approved-rfq-hero>.approved-rfq-background {
    display:none
  }
  #main .approved-rfq-hero>div {
    padding:0;
    width:100%;
    margin:0
  }
  #main .approved-rfq-hero .breadcrumb {
    display:none
  }
  #main .approved-rfq-hero h1 {
    max-width:320px;
    font-size:28px;
    line-height:1.3;
    margin:0 0 8px
  }
  #main .approved-rfq-hero p {
    font-size:14px;
    margin:0;
    color:var(--muted)
  }
  #main .mobile-quote-progress {
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 16px 16px
  }
  #main .mobile-quote-progress button {
    background:none;
    color:var(--muted);
    border:0;
    display:flex;
    align-items:center;
    gap:8px;
    min-height:44px;
    padding:0;
    font-size:14px
  }
  #main .mobile-quote-progress button>span {
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:50%;
    background:#edf0ef;
    color:var(--muted)
  }
  #main .mobile-quote-progress [aria-current] {
    color:var(--brand);
    font-weight:600
  }
  #main .mobile-quote-progress [aria-current]>span {
    background:var(--brand);
    color:white
  }
  .mobile-step-divider {
    flex:1;
    border-top:1px solid var(--line)
  }
  #main .approved-rfq-body {
    padding:0 16px;
    width:100%;
    margin:0
  }
  #main .approved-rfq-layout {
    display:block
  }
  #main .approved-rfq-items,#main .approved-rfq-contact {
    padding:0;
    border:0;
    box-shadow:none;
    background:none;
    margin:0;
    width:100%
  }
  #main [data-mobile-quote-step=list] .approved-rfq-contact {
    display:none
  }
  #main [data-mobile-quote-step=contact] .approved-rfq-items {
    display:none
  }
  #main .approved-rfq-contact>h2 {
    display:none
  }
  #main .approved-rfq-form {
    padding:0
  }
  #main .approved-quote-page .rfq-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:0 0 12px;
    gap:8px
  }
  #main .rfq-toolbar h2 {
    font-size:18px;
    line-height:26px;
    margin:0
  }
  #main .approved-quote-page .rfq-toolbar-actions {
    display:flex;
    gap:8px;
    width:auto
  }
  #main .approved-quote-page .rfq-toolbar .button {
    background:none;
    color:var(--brand);
    font-size:14px;
    padding:4px 0;
    min-height:44px;
    border:0
  }
  #main .rfq-toolbar-actions [data-clear-cart] {
    font-size:12px;
    min-height:44px;
    padding:4px
  }
  #main .rfq-toolbar-actions .button>.icon {
    display:none
  }
  #main .approved-rfq-form .rfq-table,#main .approved-rfq-form .rfq-table tbody {
    display:block;
    width:100%;
    min-width:0;
    margin:0
  }
  #main .approved-rfq-form .rfq-table thead {
    display:none
  }
  #main .approved-quote-page .approved-rfq-form .rfq-table .rfq-row {
    display:grid;
    grid-template-columns:80px minmax(0,1fr) 44px;
    gap:6px 10px;
    position:relative;
    width:100%;
    margin:0 0 10px;
    padding:10px;
    border:1px solid var(--line);
    border-radius:6px;
    background:white
  }
  #main .approved-quote-page .approved-rfq-form .rfq-table .rfq-row td {
    display:block;
    padding:0;
    border:0;
    min-width:0;
    width:auto
  }
  #main .approved-rfq-form .rfq-row .rfq-product {
    grid-column:1;
    grid-row:1/3
  }
  #main .approved-quote-page .rfq-product-link {
    display:block;
    width:80px;
    height:80px
  }
  #main .approved-quote-page .rfq-product-link img {
    width:80px;
    height:80px;
    max-width:none;
    object-fit:cover;
    border-radius:4px
  }
  #main .approved-quote-page .rfq-product-link h3 {
    display:none
  }
  #main .approved-rfq-form .rfq-row .rfq-config-cell {
    grid-column:2;
    grid-row:1
  }
  #main .rfq-mobile-title {
    display:block
  }
  #main .approved-quote-page .rfq-mobile-title h3 {
    font-size:14px;
    line-height:21px;
    font-weight:600;
    margin:0
  }
  #main .approved-rfq-form .rfq-row .rfq-current-config {
    font-size:12px;
    line-height:18px;
    color:var(--muted);
    margin:4px 0
  }
  #main .approved-rfq-form .rfq-row .facts {
    display:block;
    font-size:12px;
    line-height:18px;
    margin:4px 0
  }
  #main .approved-rfq-form .rfq-row .facts dt {
    display:none
  }
  #main .approved-rfq-form .rfq-row .facts dd {
    margin:0
  }
  #main .approved-rfq-form .rfq-row:not([data-editing=true]) .rfq-config-cell>label,#main .approved-rfq-form .rfq-row:not([data-editing=true]) .rfq-notes-cell,#main .approved-rfq-form .rfq-row:not([data-editing=true]) .rfq-edit-actions {
    display:none
  }
  #main .approved-rfq-form .rfq-row .rfq-quantity-cell {
    grid-column:2/-1;
    grid-row:2
  }
  #main .approved-quote-page .rfq-quantity-cell>label {
    display:flex;
    align-items:center;
    gap:5px;
    flex-wrap:wrap
  }
  #main .approved-rfq-form .rfq-row .quantity-stepper {
    height:44px;
    max-width:100%;
    margin:0
  }
  #main .approved-rfq-form .rfq-row .quantity-stepper button {
    width:44px;
    min-width:44px;
    min-height:44px
  }
  #main .approved-rfq-form .rfq-row .quantity-stepper input {
    width:48px;
    min-height:44px;
    padding:2px
  }
  #main .rfq-unit {
    font-size:12px
  }
  #main .approved-rfq-form .rfq-row .rfq-actions-cell {
    grid-column:3;
    grid-row:1/3;
    position:absolute;
    right:8px;
    bottom:8px;
    align-self:end
  }
  #main .approved-rfq-form .rfq-row-actions {
    display:flex;
    flex-direction:column;
    gap:4px
  }
  #main .approved-rfq-form .rfq-row-actions .rfq-row-remove {
    min-width:44px;
    min-height:44px;
    padding:10px;
    border:0;
    background:none;
    color:var(--error)
  }
  #main .approved-quote-page .rfq-row-edit {
    position:absolute;
    right:10px;
    top:10px;
    width:44px;
    display:block;
    min-height:44px;
    font-size:12px;
    text-align:left;
    padding:4px 0;
    color:var(--brand)
  }
  #main .approved-quote-page .rfq-row[data-editing=true] .rfq-row-edit {
    display:none
  }
  #main .approved-rfq-form .rfq-row[data-editing=true] .rfq-notes-cell {
    display:block;
    grid-column:1/-1;
    grid-row:3
  }
  #main .approved-rfq-form .rfq-row[data-editing=true] .rfq-config-cell>label {
    display:block
  }
  #main .rfq-edit-actions {
    display:flex;
    gap:8px;
    margin-top:8px
  }
  #main .rfq-edit-actions button {
    min-height:44px;
    font-size:14px
  }
  #main .approved-rfq-form .rfq-row .form-error:empty {
    display:none
  }
  #main .approved-rfq-requirements {
    padding:0;
    margin:16px 0 0;
    background:none;
    border:0
  }
  #main .approved-rfq-requirements label {
    font-size:14px
  }
  #main .approved-attachment-field {
    padding:0;
    margin:12px 0
  }
  #main .approved-attachment-field input[type=file] {
    max-width:100%;
    font-size:14px
  }
  #main .mobile-quote-next {
    width:100%;
    margin:16px 0 0;
    display:flex
  }
  #main .mobile-quote-error:empty {
    display:none
  }
  #main .mobile-quote-error {
    font-size:14px;
    color:var(--error);
    margin:8px 0
  }
  #main [data-mobile-quote-step=list]>.approved-rfq-trust {
    display:none
  }
  #main [data-mobile-quote-step=contact] .approved-rfq-hero {
    min-height:150px;
    display:flex;
    align-items:center
  }
  #main [data-mobile-quote-step=contact] .approved-rfq-background {
    display:block;
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:60% center!important
  }
  #main .mobile-quote-summary {
    display:flex;
    justify-content:space-between;
    align-items:start;
    background:#f5f3ed;
    border-radius:6px;
    padding:10px;
    margin:0 0 16px;
    gap:8px;
    font-size:14px
  }
  #main .mobile-quote-summary details {
    flex:1
  }
  #main .mobile-quote-summary summary {
    font-size:14px
  }
  #main .mobile-quote-summary ul {
    padding-left:16px;
    font-size:12px
  }
  #main .mobile-quote-summary button {
    font-size:12px;
    min-height:44px;
    color:var(--brand)
  }
  #main .approved-rfq-contact>.form-grid {
    display:flex;
    flex-direction:column;
    gap:16px
  }
  #main .approved-rfq-contact .form-grid label {
    font-size:14px;
    line-height:22px
  }
  #main .approved-rfq-contact details {
    margin:12px 0;
    border:1px solid var(--line);
    border-radius:6px;
    background:transparent
  }
  #main .approved-rfq-contact details summary {
    padding:10px 12px;
    font-size:14px;
    min-height:48px
  }
  #main .approved-rfq-contact details>.form-grid {
    padding:12px
  }
  #main .approved-rfq-contact>.consent {
    display:flex;
    min-height:44px;
    font-size:14px;
    align-items:center;
    gap:8px;
    margin:12px 0
  }
  #main .approved-rfq-contact>.form-notice {
    font-size:14px;
    padding:12px;
    background:#f5f2e9;
    border-radius:6px;
    color:var(--accent-text);
    margin:0 0 12px
  }
  #main .approved-rfq-contact>button[type=submit] {
    width:100%;
    min-height:48px
  }
  #main .form-help {
    font-size:12px;
    line-height:18px;
    text-align:center;
    color:var(--muted);
    margin:10px 0 0
  }
  #main .approved-rfq-trust {
    position:relative;
    display:block;
    padding:20px 16px;
    margin:24px 0 0;
    min-height:0
  }
  #main .approved-rfq-trust>.approved-photo {
    display:block;
    position:absolute;
    width:100%;
    height:100%;
    inset:0;
    object-fit:cover
  }
  #main .approved-rfq-trust>div {
    position:relative;
    padding:0;
    width:100%
  }
  #main .approved-rfq-trust h2 {
    font-size:24px;
    line-height:1.35;
    max-width:320px;
    margin:0 0 18px
  }
  #main .approved-rfq-trust ul {
    display:flex;
    flex-direction:column;
    gap:16px
  }
  #main .approved-rfq-trust li {
    display:flex;
    gap:12px;
    padding:0;
    border:0
  }
  #main .approved-rfq-trust li>.icon {
    width:40px;
    height:40px;
    flex:0 0 40px;
    background:#e6eee8;
    border-radius:50%;
    padding:8px
  }
  #main .approved-rfq-trust h3 {
    font-size:16px;
    line-height:24px;
    margin:0 0 4px
  }
  #main .approved-rfq-trust li p {
    font-size:14px;
    line-height:21px;
    margin:0;
    max-width:250px
  }
  /* Contact: original full RFQ form, compact photo title and real preparation content. */
  #main .v14-contact .contact-hero {
    padding:0;
    position:relative;
    background:none;
    margin:0
  }
  #main .contact-hero:before,#main .contact-hero:after {
    display:none
  }
  #main .contact-hero>.visual-backdrop {
    display:block;
    position:absolute;
    inset:0 0 auto;
    width:100%;
    height:172px;
    object-fit:cover;
    filter:brightness(.65)
  }
  #main .contact-hero>.contact-grid {
    display:block;
    width:100%;
    padding:0;
    gap:0
  }
  #main .contact-grid>.contact-copy {
    display:block;
    padding:24px 24px 16px;
    min-height:172px;
    position:relative;
    color:white
  }
  #main .contact-hero .contact-copy h1 {
    font-size:28px;
    line-height:1.3;
    max-width:300px;
    color:white;
    margin:0 0 8px
  }
  #main .contact-copy h1 .desktop-copy {
    display:block
  }
  #main .contact-copy h1 .adaptive-copy {
    display:none
  }
  #main .contact-hero .contact-copy p {
    color:white;
    font-size:14px;
    line-height:21px;
    max-width:280px;
    margin:0
  }
  #main .contact-copy>a {
    min-height:44px;
    display:flex;
    align-items:center;
    color:white
  }
  #main .contact-grid>.adaptive-contact-actions,#main .contact-grid>.contact-preparation,#main .contact-copy .contact-route-note {
    display:none
  }
  #main .contact-grid>.desktop-contact-form {
    display:block;
    margin:12px 16px 0;
    width:calc(100% - 32px);
    padding:16px;
    border:1px solid var(--line);
    border-radius:8px;
    background:white
  }
  #main .contact-form .rfq-form {
    padding:0
  }
  #main .contact-form .form-grid {
    display:flex;
    flex-direction:column;
    gap:12px
  }
  #main .contact-form label {
    font-size:14px;
    line-height:22px
  }
  #main .contact-form details {
    margin:12px 0
  }
  #main .contact-form .consent {
    display:flex;
    gap:8px;
    align-items:center;
    font-size:12px
  }
  #main .contact-form button[type=submit] {
    width:100%
  }
  #main .contact-form .form-notice {
    font-size:12px;
    color:var(--muted)
  }
  #main .contact-advice {
    display:block;
    padding:12px;
    margin:12px 16px 0;
    width:calc(100% - 32px);
    background:#f7f6f2;
    border-radius:6px
  }
  #main .contact-advice>div {
    padding:0;
    border:0;
    margin:0
  }
  #main .contact-advice>div h2 {
    font-size:20px;
    margin:0 0 8px
  }
  #main .contact-advice>div p {
    display:none
  }
  #main .contact-advice article {
    position:relative;
    min-height:0;
    padding:10px 0 10px 44px;
    border:0;
    border-top:1px solid var(--line);
    background:none;
    margin:0;
    display:block
  }
  #main .contact-advice article .module-image {
    position:absolute;
    left:0;
    top:14px;
    width:32px;
    height:32px;
    object-fit:cover;
    border-radius:50%
  }
  #main .contact-advice article h3 {
    font-size:16px;
    line-height:24px;
    margin:0
  }
  #main .contact-advice article p {
    font-size:14px;
    line-height:21px;
    color:var(--muted);
    margin:2px 0 0
  }
  .site-footer {
    padding:20px 16px;
    font-size:12px;
    margin-top:20px
  }
  .site-footer nav {
    display:none
  }
  .site-footer .footer-inner {
    display:block;
    width:100%;
    text-align:center
  }
  .site-footer .footer-note {
    display:none
  }
  .demo-banner {
    font-size:11px;
    line-height:16px
  }
}
@media(max-width:1199px) {
  #main .mobile-tea-chips {
    order:3;
    display:flex;
    gap:8px;
    overflow:auto;
    padding-bottom:4px;
    width:100%
  }
  #main .mobile-tea-chips a {
    white-space:nowrap;
    border:1px solid var(--line);
    border-radius:24px;
    min-width:56px;
    min-height:44px;
    padding:10px 14px;
    text-align:center;
    font-size:14px
  }
  #main .mobile-tea-chips [aria-current] {
    background:var(--brand);
    color:white;
    border-color:var(--brand)
  }
  #main .mobile-facet-buttons {
    display:flex;
    order:4;
    gap:8px
  }
  #main .mobile-facet-buttons button {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:6px;
    min-height:44px;
    font-size:14px;
    flex:1;
    min-width:0;
    border:1px solid var(--line);
    border-radius:5px;
    background:white;
    color:var(--ink);
    padding:8px
  }
  #main .mobile-facet-buttons .icon {
    width:16px;
    height:16px
  }
  #main .catalog-page:not([data-type=oem]) .result-line>[data-filter-toggle] {
    display:none
  }
  #main .approved-quote-page .rfq-product-link picture {
    display:block;
    width:80px;
    height:80px
  }
}
@media(max-width:1199px) {
  .site-header .languages summary>.icon:first-child {
    display:inline-block
  }
  .header-inner:has(.mobile-detail-cart)>.menu-toggle {
    display:none
  }
  .site-header .header-inner:has(.adaptive-back)>.brand {
    flex:none;
    position:static;
    transform:none;
    margin-right:auto;
    margin-left:0
  }
  .site-header .mobile-detail-cart {
    display:flex;
    min-height:44px;
    min-width:44px;
    align-items:center;
    justify-content:center;
    order:5
  }
  .mobile-detail-cart>.icon {
    width:24px;
    height:24px
  }
  #main .home-page .hero-copy .hero-subtitle {
    margin-bottom:8px
  }
  #main .home-page .hero-strength-services .feature-strip .feature-ring {
    background:none;
    border:0
  }
  #main .home-page .hero-strength-services .feature-ring>.icon {
    background-color:currentColor
  }
  #main .approved-oem-copy .approved-oem-features {
    width:100%;
    margin-bottom:0
  }
  #main .approved-oem-promo {
    overflow:visible;
    border-radius:0;
    box-shadow:none
  }
  #main .approved-oem-promo h3 {
    font-family:var(--v14-title-font)
  }
  #main .approved-rfq-items .empty-state {
    min-height:0;
    padding:24px 16px;
    margin:0 0 16px
  }
  #main .approved-quote-page .rfq-toolbar {
    flex-wrap:nowrap;
    padding:0
  }
  #main .approved-quote-page .rfq-toolbar .rfq-toolbar-actions {
    margin-left:auto
  }
  #main .approved-quote-page .rfq-toolbar [data-clear-cart] {
    display:none
  }
  #main .approved-rfq-form .rfq-row [data-unpriced=true] dt:first-of-type,#main .approved-rfq-form .rfq-row [data-unpriced=true] dd:first-of-type {
    display:none
  }
  #main .approved-rfq-form .rfq-row .quantity-stepper {
    width:136px
  }
  #main .approved-rfq-form .rfq-row .quantity-stepper input {
    width:48px
  }
  #main .approved-rfq-form .rfq-row .rfq-unit {
    font-size:14px
  }
  #main .approved-rfq-items .approved-rfq-requirements>label {
    font-size:14px
  }
  #main .approved-rfq-requirements .attachment-field {
    display:block;
    padding:0;
    margin-top:12px
  }
  #main .approved-rfq-requirements .file-picker {
    margin:8px 0
  }
  #main .approved-rfq-trust>.approved-rfq-background {
    opacity:1
  }
  #main .approved-rfq-trust>.approved-rfq-background {
    object-position:62% center!important
  }
  #main .approved-rfq-trust .approved-rfq-trust-item-title {
    font-size:16px
  }
}
@media(max-width:1199px) {
  body:has(.approved-quote-page) .site-header .adaptive-back {
    display:none
  }
  body:has(.approved-quote-page) .site-header .header-actions {
    display:flex
  }
  body:has(.approved-quote-page) .site-header .brand {
    margin-left:0
  }
  #main .approved-rfq-requirements>[data-clear-cart] {
    font-size:14px;
    min-height:44px;
    color:var(--muted);
    display:flex;
    align-items:center;
    gap:6px;
    margin-top:8px;
    background:none;
    border:0;
    padding:0
  }
  #main .contact-form .mobile-company-fields {
    padding:0;
    border:1px solid var(--line);
    border-radius:6px;
    background:#f5f6f3
  }
  #main .contact-form .mobile-company-fields summary {
    font-size:14px;
    padding:10px 12px;
    min-height:44px
  }
  #main .contact-form .mobile-company-fields label {
    padding:10px 12px
  }
  #main .v14-contact .contact-copy>a[href='#contact-form'] {
    display:none
  }
}
@media(max-width:1199px) {
  #main .mobile-detail-notes {
    border:1px solid var(--line);
    border-radius:6px;
    padding:0
  }
  #main .mobile-detail-notes summary {
    padding:10px 12px;
    font-size:14px;
    min-height:48px
  }
  #main .mobile-detail-notes label {
    padding:0 12px 12px;
    font-size:14px
  }
  #main .detail-page[data-type=oem] .adaptive-config-options legend {
    margin-bottom:4px
  }
  #main .detail-page[data-type=oem] .adaptive-config-options label {
    min-height:48px;
    padding:8px
  }
  #main .detail-page[data-type=oem] .rfq-configurator {
    border-left:3px solid var(--brand)
  }
}
@media(max-width:1199px) {
  #main .approved-quote-page .rfq-toolbar {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    margin-bottom:12px
  }
  #main .approved-quote-page .rfq-toolbar h2 {
    width:auto;
    font-size:18px;
    line-height:26px;
    margin:0
  }
  #main .approved-quote-page .rfq-toolbar-actions {
    flex:none;
    min-width:120px;
    white-space:nowrap
  }
  #main .approved-quote-page .rfq-toolbar .rfq-toolbar-actions .button {
    white-space:nowrap;
    min-width:120px;
    min-height:44px;
    font-size:14px;
    padding:4px 0;
    background:none;
    color:var(--brand);
    justify-content:flex-end
  }
}
@media(max-width:1199px) {
  #main .approved-quote-page .approved-rfq-form .rfq-table .rfq-row:not([data-editing=true])>.rfq-notes-cell {
    display:none
  }
  #main .approved-quote-page .approved-rfq-form .rfq-table .rfq-row:not([data-editing=true]) .rfq-config-cell>label {
    display:none
  }
  #main .approved-quote-page .approved-rfq-form .rfq-table .rfq-row .rfq-edit-actions {
    display:flex
  }
  #main .approved-quote-page .approved-rfq-form .rfq-table .rfq-row .rfq-current-notes {
    font-size:12px;
    line-height:18px;
    color:var(--muted);
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    margin:3px 0
  }
}
@media(max-width:1199px) {
  #main .approved-rfq-contact .mobile-quote-summary details {
    border:0;
    background:none;
    margin:0;
    padding:0;
    border-radius:0
  }
  #main .approved-rfq-contact .mobile-quote-summary summary {
    display:block;
    padding:0;
    min-height:44px;
    line-height:44px;
    font-size:14px;
    white-space:normal
  }
  #main .mobile-quote-summary [data-mobile-quote-back] {
    border:0;
    background:none;
    padding:0 0 0 4px;
    min-width:90px
  }
}
@media(max-width:1199px) {
  #main .mobile-contact-form-heading h2 {
    font-size:24px;
    line-height:1.35;
    margin:0 0 6px
  }
  #main .mobile-contact-form-heading p {
    font-size:12px;
    line-height:18px;
    margin:0 0 16px;
    color:var(--muted)
  }
  #main .mobile-trust>.approved-rfq-trust {
    padding:0;
    margin:0;
    background:none
  }
  #main .mobile-trust>.approved-rfq-trust:before,#main .mobile-trust>.approved-rfq-trust>.approved-photo {
    display:none
  }
  #main .mobile-trust .approved-rfq-trust ul {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    width:100%;
    padding:0
  }
  #main .mobile-trust .approved-rfq-trust li {
    display:block;
    padding:0 4px;
    text-align:center;
    border:0
  }
  #main .mobile-trust .approved-rfq-trust li+li {
    border-left:1px solid var(--line)
  }
  #main .mobile-trust .approved-rfq-trust li>.icon {
    width:34px;
    height:34px;
    border:0;
    background:currentColor;
    padding:0;
    color:var(--accent-text);
    border-radius:0
  }
  #main .mobile-trust .approved-rfq-trust .approved-rfq-trust-item-title {
    font-size:14px;
    line-height:21px;
    margin:8px 0 4px
  }
  #main .mobile-trust .approved-rfq-trust li p {
    font-size:12px;
    line-height:18px;
    margin:0
  }
  #main .mobile-oem-footer {
    display:block;
    margin:20px 16px 0
  }
  #main .mobile-oem-footer>.button {
    width:100%
  }
  #main .mobile-oem-footer .approved-rfq-trust {
    margin:12px 0 0;
    padding:12px;
    background:#f5f3ed;
    border-radius:6px
  }
  #main .mobile-oem-footer .approved-rfq-trust:before,#main .mobile-oem-footer .approved-rfq-trust>.approved-photo,#main .mobile-oem-footer .approved-rfq-trust-title {
    display:none
  }
  #main .mobile-oem-footer .approved-rfq-trust ul {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px
  }
  #main .mobile-oem-footer .approved-rfq-trust li {
    display:block;
    text-align:center;
    padding:0;
    border:0
  }
  #main .mobile-oem-footer .approved-rfq-trust li>.icon {
    width:26px;
    height:26px;
    background:currentColor;
    padding:0;
    color:var(--accent-text);
    border-radius:0
  }
  #main .mobile-oem-footer .approved-rfq-trust .approved-rfq-trust-item-title {
    font-size:12px;
    line-height:18px;
    margin:4px 0
  }
  #main .mobile-oem-footer .approved-rfq-trust li p {
    font-size:11px;
    line-height:16px
  }
  #main .catalog-page[data-type=oem]>.v14-inquiry-strip {
    display:none
  }
}
@media(max-width:1199px) {
  #main .contact-advice article .module-image {
    display:none
  }
  #main .contact-advice-icon {
    display:grid;
    place-items:center;
    position:absolute;
    left:0;
    top:14px;
    width:32px;
    height:32px;
    border-radius:50%;
    background:var(--brand);
    color:white
  }
  #main .contact-advice-icon>.icon {
    width:22px;
    height:22px
  }
  .site-footer {
    background:none;
    color:var(--muted);
    padding:10px 16px;
    border:0;
    margin-top:12px
  }
  .site-footer strong {
    font-family:var(--body-font);
    font-size:14px;
    color:var(--muted);
    display:inline
  }
  .site-footer strong:after {
    content:' · '
  }
  .site-footer .footer-inner p {
    display:inline;
    font-size:12px;
    margin:0
  }
  .site-footer nav {
    display:none
  }
}
#main .mobile-v4-short {
  display:none;
}
@media(max-width:1199px) {
  #main .mobile-v4-full {
    display:none;
  }
  #main .mobile-v4-short {
    display:inline;
  }
  #main .hero-strength-services .feature-strip.mobile-v4-full {
    display:none;
  }
  #main .hero-strength-services .feature-strip.mobile-v4-short {
    display:grid;
  }
  #main .product-card .product-tags .mobile-v4-short {
    font-size:12px;
  }
  #main .catalog-page .product-card .product-media {
    aspect-ratio:1;
  }
  #main .home-page .featured-grid .product-media {
    aspect-ratio:1;
  }
}
@media(max-width:1199px) {
  :root {
    --muted:#5D6861;
    --line:#E4E9E4;
  }
  #main .home-page .hero-copy .search-form,#main .mobile-catalog-top .search-form {
    align-items:center;
  }
  #main .mobile-catalog-top .mobile-search-symbol {
    display:flex;
    align-items:center;
    flex:0 0 22px;
    margin:0 4px 0 10px;
  }
  #main .mobile-search-symbol>.icon {
    display:block;
    width:22px;
    height:22px;
  }
  #main input:not([type=checkbox]):not([type=radio]),#main select,#main textarea,#main .rfq-form input:not([type=checkbox]),#main .approved-rfq-contact input:not([type=checkbox]),#main .approved-rfq-contact select,#main .contact-form textarea {
    border-color:#E4E9E4;
  }
}
@media(max-width:1199px) {
  #main .mobile-section>h2 em {
    color:var(--accent-heading);
    font-style:normal;
  }
  #main .mobile-scenes>p {
    color:var(--muted);
  }
  #main .mobile-scenes .mobile-scene-arrow {
    position:relative;
    z-index:1;
    display:grid;
    place-items:center;
    flex:0 0 26px;
    width:26px;
    height:26px;
    margin-left:auto;
    background:white;
    color:var(--brand);
    border-radius:50%;
  }
  #main .mobile-scene-arrow .icon {
    width:18px;
    height:18px;
  }
  #main .approved-oem-examples .approved-oem-promo h3 {
    font-size:24px;
    line-height:1.35;
    margin:0 0 6px;
  }
  #main .approved-oem-hero:before {
    background:linear-gradient(90deg,#faf9f6ed,#faf9f6cc 45%,#faf9f640 62%,transparent 75%);
  }
}
@media(max-width:1199px) {
  #main .mobile-v4-home h2,#main .detail-page h1,#main .rfq-configurator h2,#main .mobile-contact-form-heading h2 {
    color:var(--brand-hover);
  }
  #main .mobile-config-meta {
    font-size:12px;
    line-height:18px;
    margin:0 0 8px;
    color:var(--muted);
  }
}
@media(max-width:1199px) {
  #main .approved-quote-page .rfq-row-edit,#main .mobile-quote-summary [data-mobile-quote-back] {
    font-size:14px;
  }
}

/* Key purchasing hints stay readable without changing desktop density. */
@media(max-width:767px){#main .mobile-config-meta,#main .product-card .product-tags,#main .product-card .product-tags .mobile-v4-short,#main .product-card .card-config,#main .product-card .supply-status,#main .rfq-current-config,#main .rfq-current-notes,#main .approved-example-note,#main .rfq-configurator .reference-note,#main .form-notice,#main .mobile-hero-actions p{font-size:14px;line-height:22px}}


/* H01 phone refinement: same desktop copy/photo, clearer title and calm photo space. */
@media(max-width:767px) {
  #main .home-page>.global-hero {
    padding-top:28px;
    isolation:isolate
  }
  #main .home-page .global-hero>.hero-background {
    height:440px;
    z-index:-1
  }
  #main .home-page>.global-hero:before {
    content:"";
    display:block;
    position:absolute;
    inset:0 0 auto;
    height:440px;
    z-index:0;
    pointer-events:none;
    background:linear-gradient(180deg,color-mix(in srgb,var(--background) 78%,transparent) 0%,color-mix(in srgb,var(--background) 56%,transparent) 32%,transparent 60%,transparent 85%,var(--background) 100%)
  }
  #main .home-page .hero-copy {
    min-height:292px
  }
  #main .home-page .hero-copy h1 {
    font-size:clamp(30px,9.16vw,40px);
    line-height:1.25;
    font-weight:700;
    letter-spacing:0;
    color:var(--brand-hover);
    margin-bottom:12px;
    max-width:100%
  }
  #main .home-page .hero-copy h1>.adaptive-hero-title {
    max-width:100%
  }
  #main .home-page .hero-eyebrow,
  #main .home-page .hero-description {
    display:none
  }
  #main .home-page .hero-copy .hero-subtitle {
    font-size:16px;
    line-height:26px;
    font-weight:600;
    color:var(--brand);
    margin-bottom:8px
  }
  #main .home-page .hero-copy .search-form {
    margin-top:auto
  }
}
