[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--accent-bright,#8D7458);outline-offset:4px}
footer :focus-visible,.map-card :focus-visible{outline-color:#F3ECE2}
.nav-toggle summary,.fbtn{min-height:44px}
.nav-toggle summary{list-style:none;cursor:pointer;font-size:.88rem;font-weight:600;padding:9px 18px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink)}
.nav-toggle summary::-webkit-details-marker{display:none}
.nav-toggle[open] summary{background:var(--accent-glow)}
.nav-toggle ul{position:absolute;right:0;top:calc(100% + 10px);list-style:none;background:var(--surface);border:1px solid var(--line-soft);border-radius:14px;padding:10px;min-width:230px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.nav-toggle ul a{display:block;padding:11px 14px;border-radius:8px;color:var(--ink);font-size:.92rem;transition:background .15s ease-out}
.nav-toggle ul a:hover{background:var(--bg);text-decoration:none}
.brand-logo{height:auto}
.map-card .btn{background:#F3ECE2;color:#3C342D;margin-top:12px}
.map-pin small{opacity:1}
.filter-wrap{position:static}
.catalog-search{margin-bottom:18px}
.catalog-search label{display:block;font-size:.88rem;font-weight:600;margin-bottom:8px}
.search-row{display:flex;gap:12px}
.search-row input{min-width:0;flex:1;border:1px solid var(--line);border-radius:10px;padding:12px 16px;font:inherit;background:#fff;color:var(--ink)}
.search-row input::placeholder{color:var(--muted)}
.empty-state{padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.card-ref,.card-line{color:var(--muted)}
.product-visual-note{padding:10px 20px 0;font-size:.7rem;color:var(--muted);line-height:1.4}
.product-details{margin-top:12px;border-top:1px solid var(--line-soft)}
.product-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:12px 0;cursor:pointer;font-size:.85rem;font-weight:600;list-style:none}
.product-details summary::-webkit-details-marker{display:none}
.product-details summary span{font-size:1.25rem;line-height:1;transition:transform .2s var(--ease)}
.product-details[open] summary span{transform:rotate(45deg)}
.product-details dl{font-size:.8rem;line-height:1.55;overflow-wrap:anywhere}
.product-details[open] dl{padding-top:10px}
.product-details dl>div{margin-bottom:12px}
.product-details dt{font-weight:600;color:var(--ink)}
.product-details dd{margin:3px 0 0;color:var(--muted)}
.product-details-note{font-size:.75rem;line-height:1.55;color:var(--muted);padding:12px 0 4px;border-top:1px solid var(--line-soft)}
.legal-doc{max-width:850px;padding-bottom:72px}
.legal-doc>.legal-sec{margin-bottom:32px}
@media(max-width:640px){.search-row{flex-direction:column}.search-row .fbtn{align-self:flex-start}.filter-bar{gap:8px}.fbtn{padding:9px 13px}.fcount{width:100%;margin:8px 0 0}.studio-shot figcaption,.editorial-band figcaption,.edu-media figcaption{flex-direction:column;gap:6px}}
