.saza-catalog-page{background:#f1f1f1;color:#3f3d38;font-family:'Instrument Sans',sans-serif}
.saza-catalog{max-width:1520px;width:calc(100% - 64px);margin:auto;padding:52px 0 64px}
.catalog-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding-bottom:36px;border-bottom:1px solid #c9c6bf;margin-bottom:36px}
.catalog-eyebrow{display:block;font-size:12px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.saza-catalog h1{font-size:clamp(40px,4.5vw,68px);font-weight:600;line-height:1.05;letter-spacing:-.04em;margin:0}
.catalog-intro>p{max-width:42ch;font-size:17px;line-height:1.6;margin:0 0 3px}
.catalog-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:48px;align-items:start}
.catalog-sidebar{position:sticky;top:110px}.catalog-sidebar h2{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin:0 0 20px}
.catalog-filters{display:flex;flex-direction:column;gap:3px}
.catalog-filters button{font:inherit;font-size:15px;min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border:0;border-radius:4px;background:transparent;color:inherit;cursor:pointer;text-align:left}
.catalog-filter-count{font-size:12px;color:#65635d;font-variant-numeric:tabular-nums}
.catalog-filters button[aria-pressed=true]{background:#3f3d38;color:#f1f1f1}.catalog-filters button[aria-pressed=true] .catalog-filter-count{color:inherit}.catalog-filters button:hover:not([aria-pressed=true]){background:#e6e5e1}
.catalog-results{min-width:0}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;min-height:46px}
.catalog-count{font-size:14px;margin:0;line-height:1.5;white-space:nowrap}
.catalog-search{position:relative;display:flex;align-items:center;width:280px;font-size:14px}.catalog-search svg{position:absolute;left:0;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;pointer-events:none}
.catalog-search input{width:100%;min-width:0;min-height:46px;border:0;border-bottom:1px solid #9c9991;border-radius:0;background:transparent;color:inherit;padding:12px 4px 12px 30px;font:inherit}.catalog-search input::placeholder{color:#65635c;opacity:1}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}
.saza-catalog .catalog-card{position:relative;min-width:0;margin:0;padding:0;border:1px solid #d4d1ca;border-radius:8px;overflow:hidden;background:#f7f7f5;box-shadow:none;transition:border-color .2s ease,box-shadow .2s ease}
.catalog-card[hidden],.catalog-empty[hidden]{display:none!important}.catalog-card:hover,.catalog-card:focus-within{border-color:#9f9c94;box-shadow:0 5px 18px #2928200b}
.catalog-media{position:relative}.catalog-photo{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:#e9e9e7}.catalog-photo img{display:block;width:100%;height:100%;object-fit:contain;transform:none;transition:opacity .25s ease}.catalog-photo-secondary{position:absolute;inset:0;opacity:0}.is-alternate .catalog-photo-secondary{opacity:1}.is-alternate .catalog-photo-primary{opacity:0}
.catalog-view{position:absolute;right:12px;bottom:12px;z-index:3;min-height:44px;display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #cbc8c0;border-radius:4px;background:#f7f7f5;color:#3f3d38;font:inherit;font-size:12px;cursor:pointer}
.catalog-caption{padding:18px 18px 14px}.saza-catalog .catalog-caption h2{font-size:18px;line-height:1.35;font-weight:600;letter-spacing:-.015em;margin:0;overflow-wrap:break-word}.catalog-caption h2 a{display:block;color:inherit;text-decoration:none}.catalog-caption h2 a::after{content:'';position:absolute;inset:0;z-index:1}.catalog-card-detail{font-size:14px;line-height:1.5;margin:8px 0 0;color:#595750;overflow-wrap:break-word}.catalog-model{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-top:16px;border-top:1px solid #d7d5ce;font-size:12px}.catalog-model>span{font-size:18px;transition:transform .2s ease}.catalog-card:hover .catalog-model>span{transform:translate(2px,-2px)}
.catalog-empty{padding:40px 0}.catalog-empty h2{font-size:24px;font-weight:600;margin:0 0 12px}.catalog-empty p{margin:0 0 20px}.catalog-empty button{font:inherit;font-size:14px;min-height:44px;padding:10px 16px;border:1px solid #3f3d38;border-radius:4px;background:#3f3d38;color:#f1f1f1;cursor:pointer}
.catalog-help{margin-top:64px;padding:44px 48px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;background:#27343a;color:#f1f1f1;border-radius:8px}.catalog-help h2{font-size:clamp(28px,3vw,40px);font-weight:600;letter-spacing:-.03em;line-height:1.1;margin:0}.catalog-help p{font-size:16px;line-height:1.6;margin:0 0 24px;max-width:45ch}.catalog-help .saza-header-quote{min-height:48px;padding:14px 22px;white-space:normal;background:#f1f1f1;color:#27343a;display:inline-flex;gap:24px}
.saza-catalog a:focus-visible,.saza-catalog button:focus-visible,.saza-catalog input:focus-visible{outline:2px solid #3f3d38;outline-offset:4px}.catalog-help a:focus-visible{outline-color:#f1f1f1}.catalog-skip{position:absolute;left:16px;top:-100px;z-index:2000;background:#f1f1f1;color:#3f3d38;padding:12px}.catalog-skip:focus{top:12px}.catalog-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

@media(max-width:1199px){.catalog-layout{grid-template-columns:160px minmax(0,1fr);gap:28px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}.catalog-caption{padding:16px 14px 12px}}
@media(max-width:767px){.saza-catalog{width:calc(100% - 32px);padding:28px 0 40px}.catalog-intro{display:block;padding-bottom:24px;margin-bottom:24px}.catalog-intro>p{font-size:16px;margin-top:20px}.catalog-eyebrow{font-size:11px;margin-bottom:10px}.catalog-layout{display:flex;flex-direction:column;gap:20px}.catalog-sidebar{position:static;width:100%}.catalog-sidebar h2{font-size:12px;margin-bottom:12px}.catalog-filters{flex-direction:row;flex-wrap:wrap;gap:4px 8px}.catalog-filters button{font-size:13px;min-height:44px;padding:8px 10px;gap:10px;border:1px solid #cbc8c0}.catalog-filter-count{font-size:11px}.catalog-results{width:100%}.catalog-toolbar{flex-direction:row-reverse;gap:16px;margin-bottom:20px}.catalog-search{width:auto;flex:1}.catalog-count{font-size:12px}.catalog-grid{gap:20px 12px}.catalog-caption{padding:12px 10px 6px}.saza-catalog .catalog-caption h2{font-size:15px;line-height:1.4}.catalog-card-detail{font-size:12px;line-height:1.5;margin-top:6px}.catalog-model{margin-top:12px;font-size:11px}.catalog-view{right:5px;bottom:5px;padding:6px 8px;font-size:12px;gap:6px}.catalog-help{grid-template-columns:1fr;gap:24px;margin-top:36px;padding:28px 24px}.catalog-help p{font-size:15px}.catalog-help h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.saza-catalog *{transition:none!important}}

@media(max-width:767px){.catalog-sidebar{order:1}.catalog-results{display:contents}.catalog-toolbar{order:0;width:100%;margin:0}.catalog-grid,.catalog-empty{order:2;width:100%}}

.saza-catalog .catalog-card{display:flex;flex-direction:column}.catalog-media{flex-shrink:0}.catalog-caption{flex:1;display:flex;flex-direction:column}.catalog-model{margin-top:auto;padding-top:12px}.catalog-caption h2,.catalog-card-detail{margin-bottom:12px!important}

/* Final interaction pass: visible whole-card keyboard focus and consistent SVG icons. */
.catalog-model svg,.catalog-view svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5}.catalog-card:has(.catalog-caption a:focus-visible){outline:2px solid #3f3d38;outline-offset:4px}.catalog-caption a:focus-visible{outline:none}.catalog-card:hover .catalog-model svg{transform:translate(2px,-2px)}.saza-catalog ::selection{background:#d5d1c8;color:#3f3d38}.catalog-search input{caret-color:#3f3d38}

.catalog-card:has([data-catalog-gallery]){touch-action:pan-y}
.catalog-view-hint{position:absolute;bottom:12px;left:12px;right:12px;z-index:2;pointer-events:none;background:#f7f7f5ed;border-radius:4px;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;line-height:1.4}
.catalog-touch-hint{display:none}.catalog-view-dots{display:flex;gap:5px;flex-shrink:0}.catalog-view-dots i{display:block;width:5px;height:5px;border:1px solid #3f3d38;border-radius:50%}.catalog-view-dots i.is-active{background:#3f3d38}
.catalog-media[data-catalog-gallery]:focus-visible{outline:2px solid #3f3d38;outline-offset:-4px;z-index:4}
.catalog-card .catalog-photo img{transition:opacity .35s cubic-bezier(.2,.8,.2,1),transform .4s cubic-bezier(.2,.8,.2,1)}
.catalog-model svg{transition:transform .2s ease}
@media(hover:hover) and (pointer:fine){.catalog-card:hover .catalog-photo img{transform:scale(1.015)}}
@media(hover:none),(pointer:coarse){.catalog-hover-hint{display:none}.catalog-touch-hint{display:inline}}
@media(max-width:767px){.catalog-view-hint{left:6px;right:6px;bottom:6px;padding:6px;font-size:12px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.saza-catalog *{transition:none!important;animation:none!important}.catalog-card:hover .catalog-photo img{transform:none}}

/* Lighter catalogue finish: controls recede and photographs lead. */
.saza-catalog .catalog-card{border:0;background:transparent;border-radius:0;overflow:visible;box-shadow:none}
.catalog-card:hover,.catalog-card:focus-within{box-shadow:none}
.catalog-photo{border-radius:6px}
.catalog-caption{padding:14px 0 0}
.catalog-caption h2,.catalog-card-detail{margin-bottom:8px!important}
.catalog-model{border:0;min-height:32px;padding-top:8px;font-size:12px;color:#595750}
.catalog-view-hint{position:static;min-height:30px;background:none;padding:6px 0 0;line-height:1.4;font-size:12px;justify-content:space-between}
.catalog-media:has(.catalog-view-hint){margin-bottom:-30px}
.catalog-view-hint>.catalog-hover-hint,.catalog-view-hint>.catalog-touch-hint{font-size:11px}
.catalog-media:has(.catalog-view-hint)+.catalog-caption{padding-top:44px}
.catalog-help .saza-header-quote{align-items:center;justify-content:space-between;flex-wrap:nowrap;white-space:nowrap;max-width:100%}
.catalog-help .saza-header-quote svg{display:block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.5}
@media(max-width:767px){
 .saza-catalog{padding-top:24px}
 .catalog-intro{padding-bottom:20px;margin-bottom:20px}
 .catalog-intro>p{margin-top:12px}
 .catalog-layout{gap:14px}
 .catalog-sidebar h2{margin-bottom:6px}
 .catalog-filters{flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:2px 2px 6px;scrollbar-width:thin;scrollbar-color:#9c9991 transparent}
 .catalog-filters button{flex:0 0 auto;white-space:nowrap;padding:8px 10px}
 .catalog-caption{padding:10px 0 0}
 .catalog-media:has(.catalog-view-hint)+.catalog-caption{padding-top:44px}
 .catalog-view-hint{font-size:11px;padding:6px 0 0;flex-wrap:nowrap}
 .catalog-view-dots{gap:3px}
 .catalog-help .saza-header-quote{gap:16px;padding:14px 16px;font-size:14px}
}

.catalog-media:has(.catalog-view-hint){margin-bottom:0}.catalog-media:has(.catalog-view-hint)+.catalog-caption{padding-top:14px}.catalog-caption .catalog-view-hint{min-height:24px;padding:0 0 8px;margin-bottom:4px}.catalog-caption .catalog-model{padding-top:4px}@media(max-width:767px){.catalog-media:has(.catalog-view-hint)+.catalog-caption{padding-top:10px}}

.catalog-caption .catalog-view-hint{min-height:16px;justify-content:flex-end;padding:0;margin:0 0 4px}.catalog-view-dots{align-items:center;gap:5px}.catalog-view-dots i{transition:background-color .5s ease,width .5s ease;width:5px;height:5px}.catalog-view-dots i.is-active{width:9px;border-radius:4px}.catalog-card .catalog-photo img{transition:opacity .65s cubic-bezier(.2,.8,.2,1),transform .4s cubic-bezier(.2,.8,.2,1)}@media(prefers-reduced-motion:reduce){.catalog-card .catalog-photo img,.catalog-view-dots i{transition:none!important}}

/* Indicators belong to the photo, never to the text flow. */
.catalog-media:has(.catalog-view-hint){margin-bottom:0}
.catalog-media>.catalog-view-hint{position:absolute;inset:auto 10px 10px auto;min-height:0;padding:7px 8px;margin:0;background:#f1f1f1e6;border-radius:12px;z-index:2;pointer-events:none;display:flex;width:auto}
.catalog-media:has(.catalog-view-hint)+.catalog-caption{padding-top:14px}
@media(max-width:767px){.catalog-media:has(.catalog-view-hint)+.catalog-caption{padding-top:10px}}

/* Light CTA states must not inherit the dark header-button hover. */
.saza-catalog-page .catalog-help .saza-header-quote{background:#f1f1f1;color:#27343a;transition:background-color .18s ease,box-shadow .18s ease}
.saza-catalog-page .catalog-help .saza-header-quote:hover{background:#e5e2dc;color:#27343a}
.saza-catalog-page .catalog-help .saza-header-quote:focus-visible{background:#f1f1f1;color:#27343a;outline:2px solid #f1f1f1;outline-offset:4px}
.saza-catalog-page .catalog-help .saza-header-quote:active{background:#d5d1c8;color:#27343a}
.catalog-empty button:hover{background:#252420;color:#fff}
.catalog-filters button:active{box-shadow:inset 0 0 0 1px currentColor}
.catalog-layout{grid-template-areas:"sidebar toolbar" "sidebar results";row-gap:24px}
.catalog-sidebar{grid-area:sidebar}.catalog-toolbar{grid-area:toolbar;margin-bottom:0}.catalog-results{grid-area:results;display:block}
@media(max-width:767px){.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"toolbar" "sidebar" "results";gap:14px}.catalog-results{display:block}.catalog-toolbar{flex-direction:row-reverse}}
