/* Shared cool palette for the public showroom. */
:root{--ink:#263d50;--muted:#738697;--line:#dbe3e9;--paper:#f0f4f7;--warm:#eaf0f5;--accent:#667f94}
body{color:#263d50;background:#fff}
#site-header{background:#f8fafc;color:#263d50;border-bottom-color:#dbe3e9}
#site-header .sh-brand span{color:#7c8e9e}
#site-header .sh-nav a{color:#748595}#site-header .sh-nav a:hover,#site-header .sh-nav a[aria-current]{color:#263d50}#site-header .sh-nav a[aria-current]{box-shadow:inset 0 -2px #263d50}
.hero{background:radial-gradient(ellipse at 45% 42%,#f8fafc 0%,#edf2f6 62%,#e5edf3 100%)}
.bag-visual{background:transparent}.hero-detail h1 span{color:#778b9d}.hero-intro,.hero-detail .eyebrow{color:#748798}.explore-circle,.banner-button,.primary-link,.dark{background:#2b4358;color:white}.explore-link:hover .explore-circle,.banner-button:hover,.dark:hover{background:#4d6c85}.hotspot-dot{background:#2b4358;box-shadow:0 0 0 10px #91a7b64a,0 3px 12px #233d5126}.hotspot-label{color:#2b4358}.bag-tab,.tab-number{color:#94a3b0}.bag-tab.active,.bag-tab:hover{color:#263d50}.selector-indicator{background:#314d64}
.docs-section,.company-intro,.factory-section{background:#f0f4f7}.responsibility{background:#e7eef4}.company-intro h1 span{color:#7c91a3}.company-main p,.company-main article p,.company-heading>p:last-child,.intro-bottom p,.responsibility>p:not(.eyebrow){color:#728598}.company-sections,.factory-stats,.history-list article,.location-grid article{border-color:#d8e2ea}.company-cta{background:#edf2f6}.doc-card{border-color:#dbe3eb}.doc-body>span,.section-intro,.why-copy>p,.why-values p{color:#758798}
.category-card,.popular-card,.catalog-card,.gallery-main,.gallery-thumb,.application-image{background-color:#f0f3f6}.catalog-toolbar,.contact-form{background:#f0f4f7}.contact-fields label{background:#fbfcfe;border-color:#d8e2ea}.contact-fields input,.contact-fields textarea,.contact-fields select{border-color:#e1e7ed}.method-icon{background:#edf2f6}.contact-information>p:not(.eyebrow),.contact-method p,.contact-form>p{color:#748698}
.catalog-page .catalog-hero{isolation:isolate;background:#edf2f6;overflow:hidden}
.catalog-page .catalog-hero::before{content:'';position:absolute;inset:0;z-index:-2;background:url('/assets/products-banner.png') center/cover no-repeat;filter:saturate(.55)}
.catalog-page.contact-page .catalog-hero::before{background-image:url('/assets/contact-banner.png')}
.catalog-page .catalog-hero::after{content:'';position:absolute;inset:0;background:#9bb8d0;mix-blend-mode:color;opacity:.3;pointer-events:none;z-index:-1}
.catalog-hero-copy{color:#263d50}.catalog-hero-copy>p:last-child,.catalog-hero-copy .eyebrow{color:#708497}
.visit-banner{background:#edf2f6}.visit-image{filter:saturate(.5)}.visit-banner:after{background:#94b4d0;mix-blend-mode:color;opacity:.3}.visit-banner p:not(.eyebrow){color:#708497}
.contact-banner>img{filter:saturate(.55)}.contact-banner:after{content:'';position:absolute;inset:0;background:#8eadc7;mix-blend-mode:color;opacity:.22;pointer-events:none}.contact-banner-copy{z-index:2}
.site-footer,footer{border-color:#dbe3e9}.outline-link,.outline{border-color:#71899c;color:#2b4358}
@media(max-width:650px){#site-header .sh-nav{background:#f8fafc}.catalog-page .catalog-hero::before{background-position:60% center;opacity:.5}.visit-banner:after{background:linear-gradient(#edf2f6 0%,#edf2f6e6 50%,transparent 85%);mix-blend-mode:normal;opacity:1}}
/* Complete the cool palette on catalog controls and cards. */
.category-row.active{background:#e5edf4;color:#2b4358}.category-row:hover{background:#eff4f8}.category-row{color:#748798}.category-row small{color:#8a9baa}
.catalog-search{background:#eff3f7;color:#354f65}.catalog-search input::placeholder{color:#8194a4}.catalog-toolbar{background:transparent}.sort-control{color:#748798}.sort-control select{border-color:#dbe5ed;background:#fbfcfe}
.view-toggle button{background:#edf2f6;color:#425e75}.view-toggle button[aria-pressed=true]{background:#2b4358;color:#fff}
.category-image,.popular-card{background:#f0f4f7}.category-card{background:transparent;color:#2b4358}.category-card:hover .category-image{background:#e7eef4}
#pagination button{border-color:#dce5ed;color:#526d82}#pagination button.active,#pagination button[aria-current=page]{background:#2b4358;color:#fff;border-color:#2b4358}
.pagination-row{display:grid;grid-template-columns:1fr;justify-items:center;gap:14px;text-align:center}#pagination{justify-content:center;width:100%;margin:0}#page-summary{margin:0;color:#7e91a1}
/* Align the home CTA edges to the section content, and show the full image. */
.contact-banner{width:calc(100% - clamp(48px,8.6vw,176px));max-width:1644px;margin:65px auto 110px;min-height:370px;background:#e5edf3;align-items:center}
.contact-banner>img{right:0;bottom:0;width:100%;height:100%;object-fit:contain;object-position:right bottom;filter:saturate(.35)}
.contact-banner:after{background:linear-gradient(90deg,#e5edf3 0%,#e5edf3f2 28%,#e5edf300 58%);mix-blend-mode:normal;opacity:1}
.contact-banner-copy{max-width:55%;padding:50px clamp(30px,4vw,65px)}
@media(max-width:650px){.contact-banner{width:calc(100% - 36px);min-height:470px;margin:20px auto 80px;align-items:flex-start}.contact-banner-copy{max-width:100%;padding:32px 25px}.contact-banner>img{width:100%;height:210px;right:0;bottom:0}.contact-banner:after{background:linear-gradient(#e5edf3 0%,#e5edf3 48%,transparent 75%)}}
.page-transition-curtain{background:linear-gradient(110deg,#f1f5f9,#dfe8f0)}
/* Cool interaction states, including the cinematic card effects. */
.catalog-card:hover,.product-card:hover,.popular-card:hover{background:#e8eff6;box-shadow:0 20px 40px #243f5814}
.catalog-card:hover .round-arrow,.product-card:hover .round-arrow{background:#304e67;color:#fff}
.gallery-main:hover{box-shadow:inset 0 0 100px #c5d7e538,0 16px 40px #243f580b}
.gallery-thumb:hover,.gallery-thumb.active{border-color:#829eb4}.download-link:hover{background:#edf3f8;border-color:#809aaf}
.hotspot:hover .hotspot-dot,.hotspot:focus-visible .hotspot-dot,.hotspot.selected .hotspot-dot{background:#526f89}
.primary-link:hover,.banner-button:hover,.outline-link:hover,.category-controls button:not(:disabled):hover{background:#486780;color:#fff}
.primary-link.light:hover{background:#e1ebf3}.component-card:hover,.doc-card:hover{border-color:#93aabd;box-shadow:0 15px 32px #243f5812}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#688ba7}
.contact-fields label:focus-within{border-color:#7c9ab2;box-shadow:0 5px 20px #294b680e}

/* Purpose-composed panoramic CTA: preserve the complete image. */
.contact-banner>img{inset:0;width:100%;height:100%;object-fit:contain;object-position:center;filter:none}
.contact-banner:after{display:none}
@media(max-width:650px){.contact-banner>img{inset:auto 0 0;width:100%;height:200px;object-fit:contain;object-position:center bottom}.contact-banner-copy{padding-bottom:160px}}

/* Restore the preferred fabric-and-buckle composition. */
.contact-banner>img{filter:saturate(.35)}
.contact-banner:after{display:block;background:linear-gradient(90deg,#e5edf3 0%,#e5edf3f2 28%,#e5edf300 58%);mix-blend-mode:normal;opacity:1}
@media(max-width:650px){.contact-banner:after{background:linear-gradient(#e5edf3 0%,#e5edf3 48%,transparent 75%)}}
/* Keep the preferred buckle photograph fully visible and flush with the CTA edge. */
@media(min-width:651px){
  .contact-banner>img{inset:0 0 0 auto;width:70%;height:100%;object-fit:cover;object-position:right center}
  .contact-banner:after{background:linear-gradient(90deg,#e5edf3 0%,#e5edf3 27%,#e5edf3d9 36%,transparent 52%)}
}
/* Product detail: one generous, viewport-filling composition. */
@media(min-width:1001px){
  .product-page .detail-main{min-height:calc(100svh - 88px);padding:24px 0 34px;display:block;background:#fff}
  .product-page .detail-main>.catalog-container{width:min(1600px,calc(100% - 6%));margin-inline:auto;display:block;position:static}
  .product-page .detail-main .breadcrumbs{position:static;padding:0 0 22px;line-height:1.4;font-size:12px}
  .product-page #detail-page{display:block}
  .product-page .detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(38px,4vw,70px);align-items:stretch;min-height:calc(100svh - 180px)}
  .product-page .product-gallery{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;height:auto;align-items:stretch;min-height:0}
  .product-page .gallery-thumbs{align-self:start}
  .product-page .gallery-main{height:100%;min-height:600px;aspect-ratio:auto;background:#eaf0f5;border-radius:11px}
  .product-page .detail-copy{min-height:0;padding:0 0 6px}
  .product-page .product-navigation{margin:0 0 20px}
  .product-page .detail-copy h1{font-size:54px;line-height:1.1;margin-bottom:9px}
  .product-page .detail-description{font-size:16px;line-height:1.7;margin:24px 0 25px}
  .product-page .detail-inquire{padding:14px 24px}
  .product-page .specification-section{margin-top:38px;padding-top:24px}
  .product-page .spec-table{font-size:14px;line-height:1.55}
  .product-page .spec-table th,.product-page .spec-table td{padding:16px 0}
  .product-page .downloads-section{margin-top:auto;padding-top:20px}
}
.product-page .gallery-main .catalog-photo{width:100%;height:100%;padding:7%;box-sizing:border-box;object-fit:contain;mix-blend-mode:multiply;background:transparent}
.product-page .gallery-thumb .catalog-photo{mix-blend-mode:multiply;background:transparent}
@media(min-width:701px) and (max-width:1000px){.product-page .detail-main{padding-top:26px}.product-page .detail-main .catalog-container{width:92%}}
@media(max-width:700px){.product-page .detail-main{padding-top:22px}}
/* Product detail application cards use the same bag visuals as the showroom. */
.product-page .application-image{background:#eaf0f5}
.product-page .application-image img{display:block;width:100%;height:100%;padding:7%;box-sizing:border-box;object-fit:contain}
.product-page .application-card:nth-child(3) .application-image img{padding:12%}
.product-page .application-image-all img{padding:0;object-fit:cover;object-position:right center;transform:translateX(6%) scale(1.35);transform-origin:right center}
