/* Product-specific adjustments layered after the exact string-waterfall reference CSS. */
.po-page--glass-mirror #po-projects,
.po-page--mesh #po-projects,
.po-page--sealed #po-projects,
.po-page--stone #po-projects{padding:16px 0;scroll-margin-top:120px;background:#fff}
.po-page--glass-mirror .po-projects-wrap,
.po-page--mesh .po-projects-wrap,
.po-page--sealed .po-projects-wrap,
.po-page--stone .po-projects-wrap{position:relative;margin-top:58px}
.po-page--glass-mirror .po-projects,
.po-page--mesh .po-projects,
.po-page--sealed .po-projects,
.po-page--stone .po-projects{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-template-rows:auto;grid-auto-columns:calc((100% - 36px)/3);gap:18px;margin-top:0;padding:2px 1px 10px;overflow-x:auto;scroll-snap-type:none;scroll-behavior:auto;scroll-padding-inline:1px;overscroll-behavior-inline:contain;scrollbar-width:none}
.po-page--glass-mirror .po-projects::-webkit-scrollbar,
.po-page--mesh .po-projects::-webkit-scrollbar,
.po-page--sealed .po-projects::-webkit-scrollbar,
.po-page--stone .po-projects::-webkit-scrollbar{display:none}
.po-page--glass-mirror .po-project,
.po-page--mesh .po-project,
.po-page--sealed .po-project,
.po-page--stone .po-project,
.po-page--glass-mirror .po-project:first-child,
.po-page--mesh .po-project:first-child,
.po-page--sealed .po-project:first-child,
.po-page--stone .po-project:first-child{display:flex;grid-row:auto;min-width:0;min-height:0;flex:none;flex-direction:column;background:var(--sand);border-top:2px solid var(--wood);overflow:hidden;scroll-snap-align:start}
.po-page--glass-mirror .po-project__media,
.po-page--mesh .po-project__media,
.po-page--sealed .po-project__media,
.po-page--stone .po-project__media,
.po-page--glass-mirror .po-project:first-child .po-project__media,
.po-page--mesh .po-project:first-child .po-project__media,
.po-page--sealed .po-project:first-child .po-project__media,
.po-page--stone .po-project:first-child .po-project__media{display:block;flex:none;min-height:0;aspect-ratio:4/3;overflow:hidden;background:#d9ddda}
.po-page--glass-mirror .po-project picture,.po-page--glass-mirror .po-project img,
.po-page--mesh .po-project picture,.po-page--mesh .po-project img,
.po-page--sealed .po-project picture,.po-page--sealed .po-project img,
.po-page--stone .po-project picture,.po-page--stone .po-project img{display:block;width:100%;height:100%}
.po-page--glass-mirror .po-project img,
.po-page--mesh .po-project img,
.po-page--sealed .po-project img,
.po-page--stone .po-project img{object-fit:cover;object-position:center;transition:transform .34s cubic-bezier(.32,.72,.28,1)}
.po-page--glass-mirror .po-project:hover img,
.po-page--mesh .po-project:hover img,
.po-page--sealed .po-project:hover img,
.po-page--stone .po-project:hover img{transform:scale(1.025)}
.po-page--glass-mirror .po-project__body,
.po-page--mesh .po-project__body,
.po-page--sealed .po-project__body,
.po-page--stone .po-project__body,
.po-page--glass-mirror .po-project:first-child .po-project__body,
.po-page--mesh .po-project:first-child .po-project__body,
.po-page--sealed .po-project:first-child .po-project__body,
.po-page--stone .po-project:first-child .po-project__body{display:flex;flex:1;flex-direction:column;justify-content:flex-start;padding:22px 22px 24px}
.po-page--glass-mirror .po-project h3,.po-page--mesh .po-project h3,.po-page--sealed .po-project h3,.po-page--stone .po-project h3{margin-bottom:10px;font-size:19px;line-height:1.4}
.po-page--glass-mirror .po-project h3 a,.po-page--mesh .po-project h3 a,.po-page--sealed .po-project h3 a,.po-page--stone .po-project h3 a{color:var(--ink)}
.po-page--glass-mirror .po-project p,.po-page--mesh .po-project p,.po-page--sealed .po-project p,.po-page--stone .po-project p,
.po-page--glass-mirror .po-project__meta,.po-page--mesh .po-project__meta,.po-page--sealed .po-project__meta,.po-page--stone .po-project__meta{display:block;margin-bottom:18px;color:var(--muted);font-size:13px;line-height:1.55}
.po-page--glass-mirror .po-project a,.po-page--mesh .po-project a,.po-page--sealed .po-project a,.po-page--stone .po-project a{color:var(--wood);text-decoration:none}
.po-page--glass-mirror .po-project__link,.po-page--mesh .po-project__link,.po-page--sealed .po-project__link,.po-page--stone .po-project__link{margin-top:auto;font:700 11px/1.4 'Roboto',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.po-page--glass-mirror .po-project__link:hover,.po-page--mesh .po-project__link:hover,.po-page--sealed .po-project__link:hover,.po-page--stone .po-project__link:hover{text-decoration:underline;text-underline-offset:4px}
.po-page--glass-mirror .po-projects-controls,.po-page--mesh .po-projects-controls,.po-page--sealed .po-projects-controls,.po-page--stone .po-projects-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}
.po-page--glass-mirror .po-projects-btn,.po-page--mesh .po-projects-btn,.po-page--sealed .po-projects-btn,.po-page--stone .po-projects-btn{display:inline-grid;width:48px;height:48px;padding:0;place-items:center;border:1px solid rgba(48,61,56,.28);border-radius:50%;background:#fff;color:#24312d;font:400 25px/1 Arial,sans-serif;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.po-page--glass-mirror .po-projects-autoplay,.po-page--mesh .po-projects-autoplay,.po-page--sealed .po-projects-autoplay,.po-page--stone .po-projects-autoplay{font-size:16px}
.po-page--glass-mirror .po-projects-btn:hover,.po-page--mesh .po-projects-btn:hover,.po-page--sealed .po-projects-btn:hover,.po-page--stone .po-projects-btn:hover{border-color:var(--wood);background:var(--wood);color:#fff}
.po-page--glass-mirror .po-projects-btn:disabled,.po-page--mesh .po-projects-btn:disabled,.po-page--sealed .po-projects-btn:disabled,.po-page--stone .po-projects-btn:disabled{opacity:.34;cursor:default;background:#fff;color:#24312d;border-color:rgba(48,61,56,.22)}
.po-page--glass-mirror .po-projects-btn:focus-visible,.po-page--glass-mirror .po-projects:focus-visible,
.po-page--mesh .po-projects-btn:focus-visible,.po-page--mesh .po-projects:focus-visible,
.po-page--sealed .po-projects-btn:focus-visible,.po-page--sealed .po-projects:focus-visible,
.po-page--stone .po-projects-btn:focus-visible,.po-page--stone .po-projects:focus-visible{outline:3px solid rgba(139,94,52,.42);outline-offset:3px}
.po-page--glass-mirror .po-projects-status,.po-page--mesh .po-projects-status,.po-page--sealed .po-projects-status,.po-page--stone .po-projects-status{min-width:72px;color:#58625f;text-align:center;font:600 12px/1.4 'Roboto',Arial,sans-serif;letter-spacing:.08em}

/* Keep real waterfall subjects clear of the copy without changing their scale. */
.po-page--glass-mirror .po-hero__media img{transform:translateX(12%) scaleX(-1)}
.po-page--sealed .po-hero__media img{transform:translateX(17%) scaleX(-1)}
.po-page--stone .po-hero__media img{transform:translateX(15%) scaleX(-1)}

@media(max-width:1050px){
  .po-page--glass-mirror .po-projects,.po-page--mesh .po-projects,.po-page--sealed .po-projects,.po-page--stone .po-projects{grid-auto-columns:calc((100% - 18px)/2)}
  .po-page--glass-mirror .po-project__media,.po-page--mesh .po-project__media,.po-page--sealed .po-project__media,.po-page--stone .po-project__media{min-height:264px}
}
@media(max-width:800px) and (min-width:641px){
  .po-page--glass-mirror #po-projects,.po-page--mesh #po-projects,.po-page--sealed #po-projects,.po-page--stone #po-projects{padding:16px 0}
}
@media(max-width:640px){
  .po-page--glass-mirror #po-projects,.po-page--mesh #po-projects,.po-page--sealed #po-projects,.po-page--stone #po-projects{padding:12px 0}
  .po-page--glass-mirror .po-projects-wrap,.po-page--mesh .po-projects-wrap,.po-page--sealed .po-projects-wrap,.po-page--stone .po-projects-wrap{margin-top:46px}
  .po-page--glass-mirror .po-projects,.po-page--mesh .po-projects,.po-page--sealed .po-projects,.po-page--stone .po-projects{grid-auto-columns:88%;gap:12px}
  .po-page--glass-mirror .po-project__media,.po-page--mesh .po-project__media,.po-page--sealed .po-project__media,.po-page--stone .po-project__media{min-height:276px;aspect-ratio:4/3}
  .po-page--glass-mirror .po-projects-controls,.po-page--mesh .po-projects-controls,.po-page--sealed .po-projects-controls,.po-page--stone .po-projects-controls{justify-content:space-between}
  .po-page--glass-mirror .po-hero__media img{transform:scaleX(-1);object-position:72% center}
  .po-page--sealed .po-hero__media img{transform:none;object-position:29% center}
  .po-page--stone .po-hero__media img{transform:none;object-position:38% center}
}
@media(prefers-reduced-motion:reduce){
  .po-page--glass-mirror .po-project img,.po-page--mesh .po-project img,.po-page--sealed .po-project img,.po-page--stone .po-project img{transition:none}
  .po-page--glass-mirror .po-projects,.po-page--mesh .po-projects,.po-page--sealed .po-projects,.po-page--stone .po-projects{scroll-behavior:auto}
}

/* The reference stylesheet is registered by Joomla after some page assets.
   Keep the restored legacy carousel authoritative regardless of link order. */
html body .po-page--glass-mirror .po-projects,
html body .po-page--mesh .po-projects,
html body .po-page--sealed .po-projects,
html body .po-page--stone .po-projects{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-template-rows:auto;grid-auto-columns:calc((100% - 36px)/3);gap:18px;margin-top:0;padding:2px 1px 10px;overflow-x:auto;scroll-snap-type:none;scroll-behavior:auto}
html body .po-page--glass-mirror .po-project,
html body .po-page--mesh .po-project,
html body .po-page--sealed .po-project,
html body .po-page--stone .po-project,
html body .po-page--glass-mirror .po-project:first-child,
html body .po-page--mesh .po-project:first-child,
html body .po-page--sealed .po-project:first-child,
html body .po-page--stone .po-project:first-child{display:flex;grid-row:auto;min-width:0;min-height:0;flex:none;flex-direction:column}
html body .po-page--glass-mirror .po-project__media,
html body .po-page--mesh .po-project__media,
html body .po-page--sealed .po-project__media,
html body .po-page--stone .po-project__media,
html body .po-page--glass-mirror .po-project:first-child .po-project__media,
html body .po-page--mesh .po-project:first-child .po-project__media,
html body .po-page--sealed .po-project:first-child .po-project__media,
html body .po-page--stone .po-project:first-child .po-project__media{flex:none;min-height:0;aspect-ratio:4/3}
html body .po-page--glass-mirror .po-project__body,
html body .po-page--mesh .po-project__body,
html body .po-page--sealed .po-project__body,
html body .po-page--stone .po-project__body,
html body .po-page--glass-mirror .po-project:first-child .po-project__body,
html body .po-page--mesh .po-project:first-child .po-project__body,
html body .po-page--sealed .po-project:first-child .po-project__body,
html body .po-page--stone .po-project:first-child .po-project__body{display:flex;flex:1;flex-direction:column;justify-content:flex-start;padding:22px 22px 24px}
@media(max-width:1050px){
  html body .po-page--glass-mirror .po-projects,html body .po-page--mesh .po-projects,html body .po-page--sealed .po-projects,html body .po-page--stone .po-projects{grid-auto-columns:calc((100% - 18px)/2)}
}
@media(max-width:640px){
  html body .po-page--glass-mirror .po-projects,html body .po-page--mesh .po-projects,html body .po-page--sealed .po-projects,html body .po-page--stone .po-projects{grid-auto-columns:88%;gap:12px}
  html body .po-page--glass-mirror .po-project__media,html body .po-page--mesh .po-project__media,html body .po-page--sealed .po-project__media,html body .po-page--stone .po-project__media{min-height:276px;aspect-ratio:4/3}
}

/* The shared reference file may be registered later by Joomla. Keep per-photo
   framing authoritative while preserving the original image scale. */
html body .po-page--glass-mirror .po-hero__media img{transform:translateX(20%) scaleX(-1)}
html body .po-page--mesh .po-hero__media img{transform:translateX(14%) scaleX(-1)}
html body .po-page--sealed .po-hero__media img{transform:translateX(24%) scaleX(-1)}
html body .po-page--stone .po-hero__media img{transform:translateX(23%) scaleX(-1)}
@media(max-width:900px) and (min-width:641px){
  html body .po-page--glass-mirror .po-hero__media img{transform:translateX(28%) scaleX(-1)}
  html body .po-page--mesh .po-hero__media img{transform:translateX(20%) scaleX(-1)}
  html body .po-page--sealed .po-hero__media img{transform:translateX(36%) scaleX(-1)}
  html body .po-page--stone .po-hero__media img{transform:translateX(36%) scaleX(-1)}
}
@media(max-width:640px){
  html body .po-page--glass-mirror .po-hero__media img{transform:scaleX(-1);object-position:76% center}
  html body .po-page--mesh .po-hero__media img{transform:scaleX(-1);object-position:65% center}
  html body .po-page--sealed .po-hero__media img{transform:none;object-position:31% center}
  html body .po-page--stone .po-hero__media img{transform:none;object-position:30% center}
}
