/* Catalogue, consumer product pages and printable product labels. */
.product-header{position:sticky;top:0;background:var(--paper);z-index:10}
.product-header nav{display:flex;gap:28px;margin-left:auto;margin-right:28px}
.product-header .language-switch{flex-shrink:0}
.directory-main,.detail-main,.labels-main{padding-top:55px;padding-bottom:80px}
.directory-intro{padding-block:35px 45px;max-width:940px}
.directory-intro h1{font-size:clamp(40px,5vw,65px);line-height:1.13;max-width:890px}
.directory-lead{max-width:720px;color:var(--muted);margin-top:25px;font-size:15px;line-height:1.8}
.directory-intro>.text-link{margin-top:24px}
.directory-controls{border-block:1px solid var(--line);padding-block:25px}
.category-choices{display:flex;gap:12px;flex-wrap:wrap}
.category-choices button{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:52px;flex:1;min-width:165px;border:1px solid var(--line);background:transparent;padding:12px 18px;font-size:13px;text-align:left}
.category-choices button.is-active{background:var(--olive);border-color:var(--olive);color:var(--white)}
.category-count{font-size:10px;opacity:.65}
.directory-filter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,.5fr) auto;align-items:end;gap:20px;margin-top:24px}
.directory-filter-row label,.detail-contact label{display:block;font-size:12px}
.directory-filter-row input,.directory-filter-row select,.detail-contact input{display:block;width:100%;min-width:0;min-height:45px;padding:10px 12px;background:var(--white);border:1px solid var(--line);border-radius:0;margin-top:8px;color:var(--ink)}
.directory-filter-row button{min-height:45px;padding:10px 18px;background:transparent;border:1px solid var(--line);font-size:12px}
.directory-count{color:var(--muted);font-size:11px;margin-top:15px;min-height:20px}
.directory-stage-note{padding:23px 0;color:var(--muted);font-size:12px;max-width:900px}
.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.directory-card{min-width:0;border:1px solid var(--line);background:var(--white);display:flex;flex-direction:column}
.directory-visual{margin:0;min-width:0;background:#f0eee5;position:relative}
.directory-card .directory-visual img{height:260px;width:100%;object-fit:contain;padding:15px 20px}
.directory-visual figcaption{font-size:9px;line-height:1.6;color:var(--muted);padding:12px 18px;background:var(--paper);min-height:44px}
.directory-placeholder{position:relative;min-height:304px;background:#e4e8da;padding:30px 24px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.directory-placeholder.indoor{background:#e8e1d4}.directory-placeholder.decor{background:#dedfd7}
.placeholder-reference{font-size:11px;letter-spacing:1px;color:#717a6e;position:absolute;top:23px;left:24px}
.directory-placeholder .small-label{font-size:8px;letter-spacing:1.6px;margin-top:36px;color:#6c7666}
.placeholder-type{font-family:var(--serif);font-size:35px;line-height:1.2;letter-spacing:-1px;max-width:95%;margin-top:18px}
.placeholder-caption{font-size:10px;color:#687360;line-height:1.7;margin-top:20px;max-width:230px}
.directory-card-content{padding:24px;display:flex;flex-direction:column;flex:1}
.directory-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;margin-bottom:18px;font-size:9px;color:var(--muted)}
.directory-status{display:inline-block;font-size:9px;line-height:1.5;letter-spacing:.3px;padding:5px 9px;background:var(--pale);color:var(--ink)}
.directory-status.prototype{background:#eee2d1;color:#79603b}.directory-status.planned{background:#efeeea;color:#77796e}
.directory-card h3{font-size:26px;line-height:1.25;letter-spacing:-.8px}
.directory-card-intro{font-size:12px;line-height:1.85;color:var(--muted);margin-top:13px;margin-bottom:25px}
.directory-card-bottom{display:flex;align-items:center;gap:16px;margin-top:auto}
.directory-card-bottom .button{font-size:11px;padding:12px;flex:1;min-width:0;gap:12px;line-height:1.5}
.directory-card-bottom .button>span:first-child{min-width:0}
.directory-qr{width:84px;flex:0 0 84px;text-align:center}
.directory-qr img{width:84px;height:84px;background:#fff;image-rendering:pixelated}
.directory-qr figcaption{font-size:8px;color:var(--muted);margin-top:5px}
.directory-empty{border:1px solid var(--line);padding:45px;font-size:14px;text-align:center}
.product-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:30px;color:var(--muted);font-size:11px}
.detail-breadcrumb{font-size:11px;color:var(--muted);margin-bottom:35px;display:flex;gap:10px;flex-wrap:wrap}
.detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:65px;align-items:center}
.detail-hero .directory-visual img{width:100%;height:490px;object-fit:contain;padding:25px}
.detail-hero .directory-placeholder{height:460px}
.detail-intro h1{font-size:clamp(38px,4vw,58px);line-height:1.12;margin-top:20px}
.detail-lead{margin-top:25px;font-size:14px;line-height:1.9;color:var(--muted)}
.detail-facts{margin:28px 0 0;border-top:1px solid var(--line);font-size:12px}
.detail-facts>div{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1fr);gap:15px;border-bottom:1px solid var(--line);padding:13px 0}
.detail-facts dt{color:var(--muted)}.detail-facts dd{margin:0}
.detail-configuration-note{font-size:11px;line-height:1.75;color:var(--muted);margin-top:18px}
.detail-intro>.text-link{margin-top:24px;font-size:12px}
.detail-information{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:70px;margin-top:75px;align-items:start}
#product-details{scroll-margin-top:110px}
#product-details>h2{font-size:40px;margin-bottom:28px}
.product-detail-block{border-top:1px solid var(--line);padding:0 0 20px}
.product-detail-block:last-of-type{border-bottom:1px solid var(--line)}
.product-detail-block summary{padding:20px 0;display:flex;justify-content:space-between;gap:20px;list-style:none;font-size:18px;cursor:pointer}
.product-detail-block summary::-webkit-details-marker{display:none}
.product-detail-block[open] summary>span:last-child{transform:rotate(45deg)}
.product-detail-block ul{padding-left:18px;margin:0;color:var(--muted);font-size:13px;line-height:1.9}
.product-detail-block li+li{margin-top:12px}
.detail-version{font-size:10px;line-height:1.75;color:var(--muted);margin-top:20px}
.product-qr-panel{background:var(--olive);color:var(--paper);padding:34px;min-width:0}
.product-qr-panel h2{font-size:33px;line-height:1.2;margin-bottom:25px}
.detail-qr{width:216px;height:216px;max-width:100%;margin:auto;background:#fff;image-rendering:pixelated}
.product-qr-panel>p:not(.eyebrow){font-size:11px;line-height:1.8;margin-top:20px;color:#d8ddcf}
.qr-downloads{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;margin-top:22px;padding-bottom:20px;border-bottom:1px solid #64715b}
.product-qr-panel .button{display:flex;width:100%;justify-content:space-between;font-size:12px;margin-top:24px;background:var(--paper);color:var(--ink)}
#copy-product-link{background:none;border:0;border-bottom:1px solid #7a886f;color:var(--paper);padding:10px 0;font-size:11px;margin-top:15px}
#product-link-field{width:100%;font-size:11px;word-break:break-all;margin-top:15px;padding:10px;min-height:75px;color:var(--ink);background:var(--paper)}
#product-copy-status{min-height:20px}
.detail-contact{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:70px;border-top:1px solid var(--line);margin-top:70px;padding-top:50px}
.detail-contact h2{font-size:37px;line-height:1.25}
.detail-contact p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.85;margin-top:20px;max-width:550px}
.detail-contact .button{margin-top:18px;width:100%;font-size:12px;justify-content:space-between}
.detail-telephone{display:block;font-size:12px;margin-top:16px;color:var(--muted)}
.label-downloads{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:28px}
.scan-method-note{background:var(--pale);padding:20px 25px;color:var(--muted);font-size:12px;line-height:1.85;margin-bottom:35px}
.scan-method-note a{display:inline-block;margin-top:8px;border-bottom:1px solid #b6c2a9;color:var(--ink);font-size:11px}
.label-selection-tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap;border-block:1px solid var(--line);padding-block:24px}
.label-selection-tools>button{border:1px solid var(--line);background:transparent;min-height:42px;padding:8px 12px;font-size:11px}
.label-selection-tools>label{font-size:11px;margin-left:auto}
.label-selection-tools input{width:95px;min-height:42px;padding:8px;background:var(--white);border:1px solid var(--line);margin-left:10px}
.label-product-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:25px}
.label-product-groups fieldset{min-width:0;margin:0;padding:0;border:0}
.label-product-groups legend{font-size:17px;font-family:var(--serif);margin-bottom:12px}
.label-product-choice{display:flex;gap:12px;padding:10px 0;cursor:pointer;font-size:12px;line-height:1.6;border-bottom:1px solid var(--line)}
.label-product-choice input{margin-top:4px;accent-color:var(--olive);width:16px;height:16px;flex-shrink:0}
.label-product-choice small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.label-stage-note,.label-print-note{font-size:11px;color:var(--muted);line-height:1.8;margin-top:25px}
.label-preview-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:40px;border-top:1px solid var(--line);padding-top:30px}
.label-preview-toolbar h2{font-size:30px}.label-preview-toolbar p{font-size:11px;color:var(--muted);margin-top:5px}
.label-preview-toolbar .button{font-size:12px}
.label-error{font-size:12px;color:#9b4436;margin-top:20px}
.label-output{display:flex;flex-wrap:wrap;gap:16px;padding-top:25px;align-items:start;min-width:0}
.print-label{position:relative;display:flex;align-items:start;justify-content:space-between;width:90mm;height:60mm;flex:0 0 auto;padding:5mm 4mm;border:1px solid #b8c0b3;background:#fff;color:#25392e;overflow:hidden;line-height:1.5;break-inside:avoid;page-break-inside:avoid}
.print-label-copy{width:46mm;min-width:0}.print-label-brand{font-family:Arial,Helvetica,sans-serif;font-size:11pt;font-weight:700;line-height:1.3;letter-spacing:.3px}.print-label-brand>span{font-weight:400;font-size:8pt;margin-left:3mm}
.print-label h2{font-family:Arial,Helvetica,sans-serif;font-size:9pt;line-height:1.4;letter-spacing:0;margin-top:5mm;font-weight:400}
.print-label-chinese{font-size:10pt;margin-top:2mm}.print-label-reference{font-size:7pt;margin-top:2mm;color:#646a60}
.print-label-status{font-size:6.3pt;color:#646a60;margin-top:2mm}.print-label-topics{font-size:6pt;line-height:1.6;margin-top:3mm}
.print-label-code{width:34mm;flex:0 0 34mm;margin-top:1mm;text-align:center}.print-label-code img{width:34mm;height:34mm;max-width:none;background:#fff;image-rendering:pixelated}.print-label-code p{font-size:6pt;line-height:1.7;margin-top:1.5mm}
.print-label-contact{position:absolute;bottom:2.2mm;left:4mm;font-size:5.8pt;color:#646a60}
.overview-section{border-top:1px solid var(--line)}.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.overview-card{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;background:var(--white);min-width:0}.overview-card:nth-child(2){background:#ece6db}.overview-card:nth-child(3){background:#e5e8dd}
.overview-card .small-label{color:var(--muted);margin-bottom:20px}.overview-card h3{font-size:29px;line-height:1.25}.overview-card>p{font-size:12px;color:var(--muted);line-height:1.85;margin-top:20px}.overview-card .overview-types{font-size:11px;line-height:2;margin-top:18px;margin-bottom:27px}.overview-card .text-link{font-size:12px;margin-top:auto}
.overview-label-link{display:inline-flex;margin-top:25px;font-size:12px}
.product-details-link{display:flex;justify-content:space-between;font-size:12px;margin-top:20px;margin-bottom:18px;padding-block:12px;border-block:1px solid var(--line)}
html[lang=zh-CN] .directory-intro h1{font-size:clamp(34px,4vw,52px);letter-spacing:0}
html[lang=zh-CN] .directory-card h3,html[lang=zh-CN] .overview-card h3{font-size:25px;letter-spacing:0}
html[lang=zh-CN] .detail-intro h1{font-size:clamp(32px,3vw,46px);letter-spacing:0}
@media(max-width:1100px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-card .directory-visual img{height:270px}.detail-hero{gap:35px}.detail-information,.detail-contact{gap:35px}.overview-card{padding:25px}.overview-card h3{font-size:26px}}
@media(max-width:820px){.detail-hero,.detail-information,.detail-contact{grid-template-columns:1fr;gap:35px}.detail-hero .directory-visual img{height:430px}.detail-information{margin-top:50px}.product-qr-panel{max-width:100%}.product-qr-panel .detail-qr{margin-inline:0}.detail-contact{margin-top:45px}.label-product-groups{grid-template-columns:1fr;gap:20px}.overview-grid{grid-template-columns:1fr}.overview-card .overview-types{margin-bottom:18px}.product-footer{flex-wrap:wrap}}
@media(max-width:600px){.product-header nav{display:none}.product-header{justify-content:space-between;gap:12px}.directory-main,.detail-main,.labels-main{padding-top:22px;padding-bottom:50px}.directory-intro{padding-block:25px 30px}.directory-intro h1{font-size:39px}.directory-lead{font-size:13px;margin-top:20px}.directory-grid{grid-template-columns:1fr;gap:22px}.category-choices{gap:8px}.category-choices button{min-width:calc(50% - 4px);font-size:11px;min-height:48px;gap:8px;padding:10px 12px}.directory-filter-row{grid-template-columns:1fr;gap:15px}.directory-filter-row input,.directory-filter-row select,.detail-contact input{font-size:16px}.directory-filter-row button{justify-self:start}.directory-stage-note{font-size:11px}.directory-card-content{padding:22px}.directory-card .directory-visual img{height:280px}.detail-breadcrumb{margin-bottom:22px}.detail-hero .directory-visual img{height:340px;padding:20px}.detail-hero .directory-placeholder{height:330px}.detail-intro h1{font-size:42px}.detail-lead{font-size:13px;margin-top:20px}.detail-facts>div{grid-template-columns:1fr 1.1fr;font-size:11px}.detail-information{gap:30px}#product-details>h2{font-size:34px}.product-qr-panel{padding:25px}.product-qr-panel h2{font-size:31px}.detail-contact h2{font-size:32px}.label-selection-tools{gap:10px}.label-selection-tools>label{margin-left:0;width:100%;margin-top:5px}.label-preview-toolbar{align-items:start;flex-direction:column}.label-output{gap:15px}.print-label{width:100%;max-width:90mm;height:60mm;flex-shrink:1}.print-label-copy{width:calc(100% - 37mm)}.print-label h2{font-size:8pt}.print-label-chinese{font-size:9pt}.print-label-code{width:32mm;flex-basis:32mm}.print-label-code img{width:32mm;height:32mm}.print-label-brand>span{display:none}.scan-method-note{font-size:11px;padding:18px}.product-footer{font-size:10px;padding-block:25px;gap:12px}.overview-card h3{font-size:27px}.overview-label-link{font-size:11px}}
@media print{@page{size:A4;margin:10mm}.product-site{background:#fff!important;margin:0;color:#000}.product-site>.site-header,.product-site>.skip-link,.product-site>.product-footer,.labels-main>.directory-intro,.scan-method-note,#label-selection,.label-preview-toolbar,.label-print-note,#label-error,#label-empty,.labels-main>noscript{display:none!important}.labels-main{padding:0;margin:0;width:190mm;max-width:none}.label-output{display:grid;grid-template-columns:90mm 90mm;gap:3mm 10mm;width:190mm;margin:0;padding:0}.print-label{width:90mm;height:60mm;max-width:none;margin:0;padding:5mm 4mm;overflow:hidden;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.print-label-copy{width:46mm}.print-label h2{font-size:9pt}.print-label-chinese{font-size:10pt}.print-label-code{width:34mm;flex-basis:34mm}.print-label-code img{width:34mm;height:34mm}.print-label-brand>span{display:inline}a{text-decoration:none}}
