/* Search and catalogue refinement surfaces. */
.catalog-tools{padding:13px 15px;justify-content:flex-start;margin-bottom:15px}
.catalog-refinements{display:grid;grid-template-columns:minmax(210px,1.2fr) repeat(2,minmax(220px,1fr));gap:13px;align-items:stretch}
.catalog-query,.range-filter{min-width:0;padding:17px 18px;border:1px solid #79604455;border-radius:11px;background:linear-gradient(135deg,#26211b,#1c1b17)}
.catalog-query .refinement-title,.range-filter legend{font-size:11px;line-height:1.6;font-weight:500;color:#d7c1a5;letter-spacing:.2px}
.range-filter{position:relative;margin:0;padding-top:11px}
.range-filter legend{float:left;width:100%;padding:4px 0 10px}
.catalog-query .search-field{margin-top:10px;padding:0;border:1px solid #6d583d55;border-radius:7px;background:#15151280;min-height:42px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex;gap:10px;align-items:center}
.catalog-query .search-field svg{width:17px;height:17px;flex:none;margin-left:12px;color:#ac9476}
.catalog-query .search-field input{width:100%;min-width:0;font-size:12px;color:#e9d9c1;background:transparent;padding:11px 10px 11px 0;border:0!important;border-radius:0;outline:none!important;box-shadow:none!important}
.catalog-query .search-field:focus-within{border-color:#bd9465;box-shadow:0 0 0 3px #b7834318;background:#221d16}
.range-inputs{clear:both;display:flex;gap:7px;align-items:center;min-height:42px}
.range-inputs>label{display:flex;align-items:center;gap:7px;min-width:0;flex:1;background:#15151280;border:1px solid #6d583d55;border-radius:7px;padding:0 9px;min-height:42px;transition:border-color .2s,box-shadow .2s}
.range-inputs>label:focus-within{border-color:#bd9465;box-shadow:0 0 0 3px #b7834318}
.range-inputs>label>span{font-size:10px;color:#9f9483;flex-shrink:0}
.range-inputs input{width:100%;min-width:0;padding:10px 0;font:inherit;font-size:12px;color:#e9d9c1;background:none;border:0!important;outline:none!important;box-shadow:none!important}
.range-inputs input::placeholder{color:#7e7568;font-size:11px}.range-inputs>label:has([aria-invalid=true]){border-color:#d7786e}.range-separator{font-size:11px;color:#7b6c57}
.range-help{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 1px 0;font-size:10px;color:#9d9485;line-height:1.8}.range-help p{margin:0}.range-help button{background:none;border:0;color:#d3b58e;font-size:11px;white-space:nowrap;padding:5px 0}.range-help button:disabled{color:#766c5d;cursor:default}.range-help button>span{margin-left:8px;font-size:14px}.range-error{font-size:12px;line-height:1.8;color:#efa497;margin:12px 0 0;padding:12px 15px;background:#6f2c241f;border:1px solid #9d554250;border-radius:7px}
.results-row{margin-top:22px}
/* A rounded search dialog with clear result cards and room for product images. */
.search-dialog{width:min(880px,calc(100% - 32px));max-height:90dvh;padding:32px;border:1px solid #806044;border-radius:18px;background:radial-gradient(ellipse at top left,#3c2b1b66,transparent 60%),#1a1916;box-shadow:0 30px 100px #0009;overflow:auto}
.search-dialog::backdrop{background:#060605c9;backdrop-filter:blur(8px)}
.search-dialog-head{gap:25px;align-items:center}.search-dialog-head .eyebrow{font-size:10px;letter-spacing:2px}.search-dialog-head h2{font-family:Manrope,sans-serif;font-size:35px;font-weight:500;letter-spacing:-1.2px;line-height:1.3;margin-top:11px}
.search-dialog-head .icon-button{width:38px;height:38px;flex:none;font-size:26px;border:1px solid #7d67454f;border-radius:50%;background:#ffffff04;color:#d2b68f;transition:background .2s,transform .2s}
.search-dialog-head .icon-button:hover{background:#a0753d25;transform:rotate(90deg)}
.quick-search-field{min-height:60px;margin:24px 0 14px;border-radius:10px;border-color:#7e624650;background:#11110f88;transition:border-color .2s,box-shadow .2s}
.quick-search-field:focus-within{border-color:#bc9262;box-shadow:0 0 0 3px #b7834318}.quick-search-field svg{width:21px;height:21px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5}.quick-search-field input{font-size:16px;outline:none!important;border:0!important;box-shadow:none!important}.quick-search-field input::placeholder{color:#928777}
.quick-search-status{font-size:12px;color:#b8a88f;line-height:1.8;margin:0 0 14px}
.quick-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:47dvh;padding:2px 8px 4px 2px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#856444 #24211b}
.search-result{display:grid;grid-template-columns:78px minmax(0,1fr) 16px;gap:13px;align-items:center;padding:13px;border:1px solid #6d563b55;border-radius:11px;background:linear-gradient(135deg,#2c251d80,#22201955);transition:background .2s,border-color .2s,transform .2s;min-width:0}
.search-result:hover,.search-result:focus-visible{background:#42322280;border-color:#aa8054;transform:translateY(-2px);outline:none}
.search-result img{display:block;object-fit:contain;width:78px;height:70px;padding:3px;border:0;border-radius:7px;background:radial-gradient(ellipse,#89633826,transparent);filter:drop-shadow(0 4px 5px #0004)}
.search-result strong{font-family:Manrope,sans-serif;font-size:14px;font-weight:500;line-height:1.6;color:#eadac1}.search-result small{font-size:10px;line-height:1.8;color:#a99f8f;margin-top:3px}.search-result b{font-size:17px;color:#c39867;margin:0;font-weight:400}.search-no-results{grid-column:1/-1;padding:38px 20px;background:#241e1766;border:1px solid #71593e66;border-radius:10px;font-size:16px;text-align:center}.search-no-results small{font-size:12px;line-height:1.8;margin-top:12px}
.search-help{padding-top:19px;gap:20px;font-size:10px;line-height:1.8;color:#8e8371}
/* Featured component: direct entry into its product page. */
.hero-note{min-width:320px;max-width:360px;padding:23px 26px;gap:13px;border:1px solid #d2a778a3;border-radius:12px;background:linear-gradient(135deg,#322518ed,#181510da);backdrop-filter:blur(14px);box-shadow:0 15px 45px #0005;transition:transform .3s,border-color .3s,box-shadow .3s}
.hero-note>span:first-child{font-size:10px;line-height:1.8;letter-spacing:1.8px;color:#d5af7e}.hero-note strong{font-size:27px;line-height:1.3;color:#fff0db;font-weight:500;letter-spacing:-.6px}.hero-note>span:last-child{font-size:12px;line-height:1.7;color:#dbc6a8;align-items:center;gap:25px}.hero-note b{font-size:24px;font-weight:400}.hero-note:hover{transform:translateY(-5px);border-color:#f0c490;box-shadow:0 22px 55px #0006,0 0 35px #d2964320}.hero-note:focus-visible{outline:2px solid #e1b982;outline-offset:5px}
/* Fit all intrinsic image sizes inside a bounded area, leaving labels below. */
.gallery-stage{display:block;isolation:isolate}
.gallery-stage .gallery-open{position:absolute;inset:58px 24px 100px;width:auto;height:auto;min-width:0;min-height:0;display:block;overflow:hidden}
.gallery-stage .gallery-open img,.gallery-stage .gallery-open img.technical-image{display:block;position:absolute;inset:0;margin:auto;width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;filter:drop-shadow(0 12px 10px #0004)}
.gallery-stage .dimension-photo-labels{position:absolute;bottom:48px;left:20px;right:20px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;pointer-events:none}
.dimension-photo-labels span{background:#282017d9;border:1px solid #ab8058a8;border-radius:5px;padding:7px 10px;font-size:10px;line-height:1.6;color:#dfbf94;backdrop-filter:blur(6px)}
.gallery-stage .gallery-caption{left:20px;right:20px;bottom:17px;gap:12px;font-size:8px;letter-spacing:1.3px}
.gallery-stage:after{bottom:87px;opacity:.45;pointer-events:none}
.lightbox-stage{position:relative;min-width:0;min-height:0}
#lightbox-canvas{position:relative;display:block;min-width:100%;min-height:100%}
#lightbox-image{position:absolute;inset:0;margin:auto;width:calc(100% - 64px);height:calc(100% - 64px);max-width:none;max-height:none;min-width:0;min-height:0;object-fit:contain;object-position:center;display:block;user-select:none}
.capacitor-highlights{order:6;margin-top:27px;padding:25px;border:1px solid #7a61423d;border-radius:12px;background:radial-gradient(ellipse at top left,#61432924,transparent 65%),#1c1b17}
.quick-spec-heading .eyebrow{font-size:8px;letter-spacing:1.8px;color:#c09a71}.quick-spec-heading h2{font-family:Manrope,sans-serif;font-size:21px;line-height:1.5;letter-spacing:-.4px;margin:10px 0 21px;font-weight:500;color:#ece1d1}
.quick-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;margin:0}.quick-spec-grid>div{padding:17px 0;border-top:1px solid #79634638;min-width:0}.quick-spec-grid dt{font-size:10px;color:#b6a991;line-height:1.7;margin-bottom:7px}.quick-spec-grid dd{margin:0;font-size:17px;color:#e6bd91;line-height:1.5;overflow-wrap:anywhere}.quick-spec-grid dd small{display:block;font-size:9px;color:#a49b8d;line-height:1.9;margin-top:6px}
.quick-spec-grid>.quick-spec-climate{grid-column:1/-1}.climate-key{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0 12px}.climate-key>div{padding:12px 10px;border-radius:8px;background:#c69d6610;border:1px solid #b9956340;min-width:0}.climate-key strong{display:block;font-size:18px;font-weight:500;color:#edc69b;line-height:1.4}.climate-key span{display:block;font-size:10px;line-height:1.7;color:#c4b8a5;margin-top:5px}.quick-spec-climate .climate-context{font-size:11px;line-height:1.9;color:#bcb09d;margin:0;overflow-wrap:normal}
@media(max-width:440px){.climate-key{grid-template-columns:1fr;gap:7px}.climate-key>div{display:grid;grid-template-columns:85px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px}.climate-key span{margin:0}.climate-key strong{font-size:17px}}
.quick-spec-construction{border-top:1px solid #79634638;padding-top:18px;margin:3px 0 19px;color:#d4c5b2;font-size:11px;line-height:1.9}.quick-spec-construction>span{display:block;color:#a99c89;font-size:10px;margin-bottom:5px}.quick-spec-source{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#d6ae80;padding:13px 15px;background:#98704614;border:1px solid #97724955;border-radius:7px;font-size:11px;line-height:1.8;transition:background .2s,border-color .2s}.quick-spec-source:hover{background:#98704630;border-color:#b18452}.quick-spec-source:focus-visible{outline:2px solid #d1a97c;outline-offset:4px}.quick-spec-source>span{font-size:18px}
@media(max-width:440px){.capacitor-highlights{padding:21px;margin-top:8px}.quick-spec-heading h2{font-size:19px}.quick-spec-grid{gap:0 18px}.quick-spec-grid dd{font-size:16px}}
@media(max-width:1100px){.catalog-refinements{grid-template-columns:1fr 1fr}.catalog-query{grid-column:1/-1}.catalog-query .search-field input{font-size:14px}}
@media(max-width:700px){.quick-search-results{grid-template-columns:1fr;max-height:48dvh}.search-dialog{padding:25px}.search-dialog-head h2{font-size:29px}.hero-note{min-width:280px;max-width:320px;padding:18px 20px}.hero-note strong{font-size:23px}.hero-note>span:last-child{font-size:11px}}
@media(max-width:440px){.catalog-refinements{grid-template-columns:1fr;gap:10px}.catalog-query{grid-column:auto}.catalog-query,.range-filter{padding-left:14px;padding-right:14px}.range-help{align-items:flex-start;gap:10px}.range-help p{max-width:220px}.catalog-query .search-field input,.range-inputs input{font-size:16px}.range-inputs input::placeholder{font-size:12px}.search-dialog{padding:21px;border-radius:14px;max-height:92dvh}.search-dialog-head h2{font-size:27px}.search-dialog-head .eyebrow{font-size:8px;letter-spacing:1.5px}.quick-search-field{margin-top:21px;min-height:55px}.quick-search-field input{font-size:15px}.search-result{grid-template-columns:67px minmax(0,1fr) 16px;padding:11px;gap:11px}.search-result img{width:67px;height:61px}.search-result strong{font-size:13px}.search-result small{font-size:10px}.search-help{gap:10px;font-size:9px}.hero-note{min-width:0;max-width:290px;width:calc(100% - 26px);bottom:82px;padding:16px 18px}.hero-note strong{font-size:22px}.hero-note>span:first-child{font-size:8px}.gallery-stage .gallery-open{inset:47px 17px 91px}.gallery-stage .dimension-photo-labels{bottom:43px;left:12px;right:12px;gap:6px}.dimension-photo-labels span{font-size:9px;padding:6px 8px}.gallery-stage .gallery-caption{font-size:7px;letter-spacing:.9px;left:13px;right:13px;bottom:15px}.gallery-stage:after{bottom:79px}#lightbox-image{width:calc(100% - 24px);height:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){.search-result,.hero-note,.search-dialog-head .icon-button,.quick-search-field,.catalog-query .search-field,.range-inputs>label{transition:none}.hero-note:hover,.search-result:hover,.search-result:focus-visible,.search-dialog-head .icon-button:hover{transform:none}}
@media(max-width:800px){.hero-inner{min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:30px;padding:42px 0 96px}.hero-note{position:static;margin-left:auto}.hero-links{flex-wrap:wrap;gap:20px 27px}}
