@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#f8f9f7;--ink:#24342e;--muted:#788079;--line:#e0e5df;--green:#324f3e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:14px}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #869c70;outline-offset:5px}input:focus-visible{outline:none}button{color:inherit}button i{pointer-events:none}.header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5.2%;background:#fff}.brand{display:flex;align-items:center;gap:13px;font-family:Manrope,Arial,sans-serif;font-size:21px;font-weight:800;letter-spacing:-.7px}.brand-icon{display:grid;place-items:center;width:35px;height:38px;background:var(--green);border-radius:5px;color:white;font-size:18px}.brand-divider{height:21px;width:1px;background:var(--line);margin:0 5px 0 13px}.brand-sub{font-family:'DM Sans',Arial,sans-serif;font-size:12px;letter-spacing:1.8px;color:var(--muted);font-weight:500}.internal{display:flex;align-items:center;gap:8px;color:#777f77;font-size:12px}.internal>span{width:6px;height:6px;border-radius:50%;background:#84937d}.page{max-width:1600px;margin:auto;padding:62px 5.2% 65px}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.eyebrow{letter-spacing:2px;font-size:12px;font-weight:700;color:#7d8878;margin:0 0 15px}h1{font-family:Manrope,Arial,sans-serif;font-weight:650;font-size:clamp(30px,3.2vw,46px);letter-spacing:-1.9px;line-height:1.2;margin:0 0 13px}.subtitle{color:var(--muted);font-size:15px;margin:0}.collection-number{display:flex;align-items:center;gap:16px;max-width:175px}.collection-number strong{font-family:Manrope,Arial,sans-serif;font-size:49px;font-weight:400;color:#a0ab9c;letter-spacing:-3px}.collection-number span{font-size:12px;letter-spacing:1.5px;line-height:1.8;color:var(--muted)}.search-wrap{display:flex;align-items:center;gap:16px;background:white;border:1px solid #d9dfd5;box-shadow:0 3px 7px #24342e03;border-radius:7px;padding-block:0;padding-inline:22px 0;height:65px;transition:border-color .2s}.search-wrap:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #324f3e12}.search-wrap>i{font-size:18px;color:#73806e}.search-wrap input{border:0;background:none;min-width:0;flex:1;height:100%;font:inherit;font-size:14px;color:var(--ink)}input::placeholder{color:#8b928a}.search-hint{font-size:12px;letter-spacing:1.4px;color:#9aa295}.results-heading{display:flex;align-items:center;justify-content:space-between;margin:36px 0 22px;gap:15px}.results-heading h2{font-size:14px;font-weight:600;margin:0;display:flex;align-items:center;gap:11px}.results-heading h2 span{font-size:12px;color:#818c7b;border:1px solid var(--line);padding:3px 6px;border-radius:4px;font-weight:400}.results-heading p{font-size:12px;color:#8a9188;margin:0}.project-grid{display:grid;--project-columns:4;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 23px}.card{display:block;width:100%;padding:0;text-align:left;background:white;border:1px solid var(--line);border-radius:7px;overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #24342e0c}.card-photo{position:relative;aspect-ratio:1.39;overflow:hidden;background:#e1e4dc}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.035)}.photo-count{position:absolute;right:11px;bottom:11px;font-size:12px;background:#fffef6ed;border:1px solid #ffffff90;padding:6px 8px;border-radius:4px;display:flex;align-items:center;gap:6px;color:#4e5b4f}.card-body{padding:19px 17px 17px}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.card h3{font-family:Manrope,Arial,sans-serif;font-size:14px;font-weight:750;letter-spacing:-.3px;margin:0}.card-title-row>i{font-size:12px;color:#9aa390}.categories{font-size:12px;color:#7a8377;line-height:1.7;margin:7px 0 14px;min-height:19px}.card-meta{display:flex;justify-content:space-between;border-top:1px solid #edf0e9;padding-top:12px;color:#8d9589;font-size:12px}.card-meta i{margin-right:5px}.match-count{color:#486141}.back,.text-button{border:0;background:none;padding:10px 0;font-size:12px}.back{margin-bottom:30px;color:#73806e}.back i{margin-right:9px}.detail-meta{color:var(--muted);line-height:1.9;margin-top:15px}.set-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.set-grid .card-photo{aspect-ratio:1.65}.set-grid .card h3{font-size:17px}.set-grid .categories{margin-bottom:6px}.features{font-size:12px;color:var(--muted);margin:0;line-height:1.8}.matched-label{font-size:12px;color:var(--green);margin:0 0 8px}footer{border-top:1px solid var(--line);margin:0 5.2%;padding:24px 0;display:flex;justify-content:space-between;color:#92998e;font-size:12px;gap:15px}footer>span:first-child{font-size:12px;letter-spacing:.6px}.footer-dot{margin:0 12px;color:#bdc3b9}.search-empty{text-align:center;padding:80px 20px}.search-empty>i{font-size:28px;color:#879580}.search-empty h2{font-size:22px}.search-empty p{color:var(--muted)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}dialog{position:fixed;inset:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;padding:0;border:0;background:#111813f5;color:#fff}dialog::backdrop{background:#111813}.lightbox-shell{height:100%;height:100dvh;display:flex;flex-direction:column;padding:24px 4%;gap:15px}.lightbox-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.lightbox-header p{font-size:12px;color:#a8b2a7;text-transform:uppercase;letter-spacing:1.5px;margin:0 0 6px}.lightbox-header h2{font-family:Manrope,Arial,sans-serif;font-size:20px;margin:0;font-weight:500}.icon-button{display:grid;place-items:center;border:1px solid #ffffff35;background:#1c261feb;color:white;border-radius:50%;width:44px;height:44px;font-size:18px;flex-shrink:0}.icon-button:hover{background:#465546}.image-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative}.image-stage img{max-width:calc(100% - 120px);max-height:100%;height:100%;object-fit:contain;user-select:none;touch-action:pan-y}.nav{position:absolute;top:50%;transform:translateY(-50%)}.previous{left:0}.next{right:0}.lightbox-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;flex-shrink:0}.lightbox-bottom>span{font-size:12px;color:#adb6ab}.keyboard-hint{text-align:right}.toggle{border:1px solid #ffffff30;padding:4px;border-radius:7px;display:flex;gap:4px}.toggle button{border:0;min-width:100px;min-height:42px;border-radius:4px;color:#abb6a8;background:transparent}.toggle button[aria-pressed=true]{background:#e7ece2;color:#24342e}.toggle button:hover{box-shadow:inset 0 0 0 1px #879780}#photo-disclaimer{color:#949e91;font-size:12px;text-align:center;margin:0}.lightbox-shell>*{pointer-events:auto}@media(min-width:1650px){.project-grid{gap:30px}.card-photo{aspect-ratio:1.3}}@media(max-width:1100px){.project-grid{--project-columns:3;grid-template-columns:repeat(3,minmax(0,1fr))}.brand-sub,.brand-divider{display:none}.search-hint{display:none}.page{padding-top:44px}}@media(max-width:800px){.project-grid{--project-columns:2;grid-template-columns:repeat(2,minmax(0,1fr))}.collection-number{display:none}.header{height:78px}.page{padding:35px 5% 45px}.intro{margin-bottom:27px}.card-photo{aspect-ratio:1.25}.results-heading p{max-width:45%;text-align:right;line-height:1.5}.keyboard-hint{display:none}.lightbox-bottom{grid-template-columns:1fr auto 1fr}.lightbox-bottom .toggle{grid-column:2}.lightbox-shell{padding:18px 16px;gap:13px}.image-stage img{max-width:100%}.nav{z-index:1;top:auto;bottom:10px;transform:none}.set-grid{gap:18px}.internal{font-size:12px}footer{flex-direction:column;line-height:1.8}}@media(max-width:480px){.brand{font-size:18px;gap:9px}.internal{display:none}h1{font-size:31px;letter-spacing:-1.1px}.subtitle{font-size:13px}.project-grid,.set-grid{--project-columns:1;grid-template-columns:1fr;gap:22px}.card-photo{aspect-ratio:1.5}.search-wrap{padding-block:0;padding-inline:14px 0;gap:11px;height:60px}.search-wrap input{font-size:12px}.results-heading{margin-top:27px}.results-heading p{font-size:12px}.lightbox-header h2{font-size:17px}.lightbox-bottom{display:flex;justify-content:space-between}.toggle button{min-width:82px}.lightbox-shell{padding:16px 12px}.image-stage img{height:auto;max-height:100%;width:100%;object-fit:contain}.image-stage{overflow:hidden}#photo-disclaimer{line-height:1.6;font-size:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Uniform comparison cards, including sets without feature metadata. */
.set-grid > .card {
  display: flex;
  flex-direction: column;
}

.set-grid .card-photo {
  flex-shrink: 0;
}

.set-grid .card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.set-grid .features {
  min-height: 1.8em;
}

/* Compact metadata is limited to project result cards, not project galleries. */
#results .compact-categories,
#managed-projects .compact-categories {
  white-space: nowrap;
  overflow: hidden;
  min-width: 0;
}

.load-more{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:32px}.load-more .hint{margin:0}.load-more .button{min-width:190px}.load-more[hidden],.load-more button[hidden]{display:none}
