/* Explicit sizes: the mirrored theme scales its root font with the viewport. */
.mb-categories-section{background:var(--mb-dark);color:var(--mb-light);min-height:100svh}
.mb-categories{display:grid;grid-template-columns:1fr 1fr;padding:110px 0 0;font-size:16px;line-height:1.4}
.mb-categories-visual{position:sticky;top:100px;align-self:start;min-height:650px;height:calc(100svh - 110px);max-height:950px;padding:36px 5vw 40px;border-right:1px solid var(--mb-line);display:flex;flex-direction:column;justify-content:space-between}
.mb-category-eyebrow{margin:0;font-size:12px!important;line-height:1.3!important;font-weight:500!important;letter-spacing:.02em!important;text-transform:uppercase}
.mb-category-image-frame{position:relative;width:66%;max-width:450px;height:54vh;max-height:580px;min-height:260px;margin:30px auto;overflow:hidden;background:var(--mb-dark)}
.mb-category-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .5s,transform .8s;pointer-events:none}
.mb-category-image.is-active{opacity:1;transform:scale(1)}
.mb-category-caption{display:grid;grid-template-columns:64px 1fr;gap:12px 20px;max-width:530px}
.mb-category-number{font-size:11px;line-height:1.5;color:var(--mb-muted)}
.mb-category-description{font-size:17px;line-height:1.45;margin:0;color:var(--mb-light);max-width:360px;min-height:50px}
.mb-category-preview-link{grid-column:2;display:flex;justify-content:space-between;gap:20px;padding:12px 0 4px;max-width:360px;border-bottom:1px solid var(--mb-line);font-size:12px;text-transform:uppercase;letter-spacing:.02em}
.mb-category-list{padding:0 0 56px}
.mb-category-row{display:grid;grid-template-columns:minmax(0,1fr) 84px;align-items:stretch;border-top:1px solid var(--mb-line);transition:background .3s}
.mb-category-row:last-child{border-bottom:1px solid var(--mb-line)}
.mb-category-select{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:25px 12px 28px 28px;gap:17px;min-height:146px;border:0;background:transparent;text-align:left;color:var(--mb-muted);cursor:pointer;transition:color .3s}
.mb-category-meta{font-size:11px;line-height:1.2;letter-spacing:.035em;text-transform:uppercase;color:var(--mb-muted)}
.mb-category-name{font-size:clamp(38px,4.1vw,80px);line-height:.98;letter-spacing:-.05em}
.mb-category-arrow{display:grid;place-items:center;color:var(--mb-muted);align-self:stretch;transition:color .3s,background .3s}
.mb-category-arrow svg{width:42px;height:42px;transition:transform .3s}
.mb-category-row.is-active .mb-category-select,.mb-category-row.is-active .mb-category-arrow,.mb-category-row:hover .mb-category-select,.mb-category-row:focus-within .mb-category-select{color:var(--mb-light)}
.mb-category-row.is-active .mb-category-meta{color:var(--mb-accent)}
.mb-category-arrow:hover{background:#ffffff06;color:var(--mb-light)}
.mb-category-arrow:hover svg{transform:translateX(5px)}
.mb-category-select:focus-visible,.mb-category-arrow:focus-visible,.mb-category-preview-link:focus-visible{outline:2px solid var(--mb-accent);outline-offset:-5px}
.mb-category-copy[hidden]{display:none!important}
.mb-category-archive-head{background:var(--mb-light);padding:155px 32px 45px;color:var(--mb-dark);font-size:16px}
.mb-category-back{font-size:12px;text-transform:uppercase;display:inline-block;padding:10px 0;border-bottom:1px solid var(--mb-line)}
.mb-category-archive-title{text-align:center;padding:36px 0 60px}
.mb-category-archive-title h1{font-size:clamp(56px,8vw,144px);line-height:.95;letter-spacing:-.055em;margin:20px 0 28px}
.mb-category-archive-title p{font-size:18px;line-height:1.5;max-width:500px;margin:auto}
.mb-category-switcher{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 25px;font-size:12px;line-height:1.5}
.mb-category-switcher a{padding:5px 0;border-bottom:1px solid transparent}
.mb-category-switcher [aria-current="page"]{color:var(--mb-accent);border-color:currentColor}
.mb-no-image{background:linear-gradient(145deg,var(--mb-brand),var(--mb-dark));position:relative}
.mb-no-image:before{content:'';position:absolute;inset:12%;border:1px solid var(--mb-line);transform:skewY(-8deg)}
.mb-image-pending{position:absolute;top:24px;right:24px;color:var(--mb-muted);font-size:12px;letter-spacing:.03em;text-transform:uppercase;z-index:1}
[data-mb-catalog="archive"] .project-card{min-height:360px}
@media(max-width:991px){
 .mb-categories{padding-top:90px;grid-template-columns:42% 58%}
 .mb-categories-visual{top:90px;padding:30px 20px;min-height:520px;height:calc(100svh - 90px)}
 .mb-category-image-frame{width:100%;height:36vh;min-height:220px;margin:24px 0}
 .mb-category-caption{display:block}.mb-category-number{display:block;margin-bottom:14px}
 .mb-category-description{font-size:15px}.mb-category-preview-link{font-size:11px;margin-top:10px}
 .mb-category-row{grid-template-columns:minmax(0,1fr) 52px}.mb-category-select{padding:24px 8px 24px 20px;min-height:130px;gap:15px}
 .mb-category-name{font-size:clamp(28px,4.4vw,46px)}.mb-category-arrow svg{width:32px;height:32px}
}
@media(max-width:600px){
 .mb-categories{display:block;padding-top:80px}
 .mb-categories-visual{position:relative;top:0;height:auto;min-height:0;padding:28px 20px 24px;border:0}
 .mb-category-image-frame{height:220px;min-height:0;max-width:none;aspect-ratio:auto;margin:24px 0 18px}
 .mb-category-caption{display:grid;grid-template-columns:48px 1fr;gap:8px 12px}
 .mb-category-description{font-size:15px;min-height:42px}.mb-category-number{margin:0}
 .mb-category-preview-link{margin-top:0}.mb-category-list{padding-bottom:40px}
 .mb-category-row{grid-template-columns:minmax(0,1fr) 65px}.mb-category-select{padding:22px 20px;min-height:110px;gap:13px}
 .mb-category-name{font-size:37px}.mb-category-meta{font-size:10px}
 .mb-category-archive-head{padding:110px 20px 28px}.mb-category-archive-title{padding:30px 0 40px}
 .mb-category-archive-title h1{font-size:56px}.mb-category-archive-title p{font-size:16px}
 .mb-category-switcher{gap:10px 18px}.mb-image-pending{font-size:10px;top:18px;right:18px}
}
@media(prefers-reduced-motion:reduce){.mb-category-image,.mb-category-arrow svg{transition:none}}
