.geometry,.line{position:absolute;display:block;will-change:transform}.geometry{border:1.5px solid #d8b6757d;animation:geometry-drift 13s ease-in-out infinite alternate;color:#d8b6757d}.geometry:after{content:"";position:absolute;inset:18px;border:1px solid currentColor;border-radius:inherit;opacity:.6}.one{width:210px;height:210px;top:15%;left:2%;border-radius:28px;--turn:-28deg;animation-delay:-8s}.two{width:300px;height:300px;top:48%;right:-8%;border-radius:50%;color:#b691d07d;border-color:currentColor;--turn:18deg;animation-duration:17s;animation-delay:-15s}.three{width:130px;height:130px;bottom:7%;left:14%;--turn:38deg;animation-duration:15s;animation-delay:-11s}.line{width:clamp(180px,24vw,380px);height:1.5px;background:linear-gradient(90deg,transparent,#d8b67590 25%,#d8b67590 75%,transparent);animation:line-drift 10s ease-in-out infinite alternate}.l1{top:8%;left:-5%;--turn:-32deg;animation-delay:-7s}.l2{top:19%;right:-4%;--turn:-32deg;animation-duration:13s;animation-delay:-12s}.l3{top:71%;left:-7%;--turn:26deg;animation-duration:14s;animation-delay:-5s}.l4{bottom:11%;right:2%;--turn:26deg;animation-duration:12s;animation-delay:-9s}@keyframes geometry-drift{from{transform:translate3d(-26px,-32px,0) rotate(var(--turn))}to{transform:translate3d(44px,48px,0) rotate(calc(var(--turn) + 23deg))}}@keyframes line-drift{from{transform:translate3d(-58px,30px,0) rotate(var(--turn))}to{transform:translate3d(64px,-38px,0) rotate(var(--turn))}}
.catalog-footer img{display:block;width:76px;height:64px;object-fit:contain;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.catalog-footer .footer-brand{max-width:100%;font-size:13px;line-height:1.65;overflow-wrap:normal}
.catalog-footer .footer-brand sup{font-size:11px;vertical-align:super;white-space:nowrap}
.catalog-footer .footer-brand span{font-size:12px;margin-top:6px}
.catalog-footer address{font-size:13px;font-style:normal;color:var(--muted)}
.catalog-footer small{flex-basis:auto;margin:0;font-size:12px}
.footer-logo-scene{display:block;width:92px;height:78px;perspective:600px;flex:none;margin:8px 0;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;transition:none}
.footer-logo-scene:hover,.footer-logo-scene:active{filter:none;transform:none;background:transparent}
.footer-logo-scene.is-dragging{cursor:grabbing}
.footer-logo-spin{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(-5deg) rotateY(0deg)}
.footer-logo-spin>span{position:absolute;inset:0;display:block;pointer-events:none;-webkit-mask:url('/assets/brand-logo.webp') center/contain no-repeat;mask:url('/assets/brand-logo.webp') center/contain no-repeat}
.footer-logo-depth{transform:translateZ(var(--logo-depth));background:linear-gradient(115deg,#241607 0%,#61401b 32%,#805724 49%,#3d270e 68%,#583b17 100%)}
.footer-logo-spin>.footer-logo-face,.footer-logo-spin>.footer-logo-back{-webkit-mask:none;mask:none;background:url('/assets/brand-logo.webp') center/contain no-repeat;filter:drop-shadow(0 .35px .25px #241607);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.footer-logo-face{transform:translateZ(2.5px)}
.footer-logo-back{transform:rotateY(180deg) translateZ(2.5px)}
.catalog-footer .footer-brand{color:var(--gold)}
.catalog-footer address a{display:inline-block;padding:8px 4px;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:4px;border-radius:4px}
.catalog-footer address a:hover{color:var(--violet);text-decoration-color:currentColor}
html[data-theme=light] .footer-logo-depth{background:linear-gradient(115deg,#d4a94e 0%,#f3d283 32%,#fff0c3 49%,#e6bd67 68%,#f3d283 100%)}
.atmosphere{overflow:hidden;pointer-events:none}.intro-burger{display:block;flex:none;width:72px;height:82px;color:var(--gold)}
.catalog-toolbar{position:relative;display:grid;grid-template-columns:minmax(0,max-content) 1fr;align-items:stretch}.search-tools{justify-self:end}.search-toggle{width:54px;height:54px;background:var(--surface);color:var(--muted)}.search-toggle svg,.search svg{display:block;width:22px;height:22px}.search-toggle svg{margin:auto}.search-toggle.has-query{color:var(--gold);border-color:#d9ac56}
.catalog-toolbar .filters,.catalog-toolbar .search-toggle{transition:opacity .24s,transform .3s}.catalog-toolbar.search-open .filters,.catalog-toolbar.search-open .search-toggle{opacity:0;pointer-events:none;transform:translateY(3px)}
.search-panel{position:absolute;inset:0;display:flex;align-items:center;gap:8px;padding:5px 8px;border:1px solid #d9ac56;border-radius:13px;background:linear-gradient(115deg,#fff0c3,#efcc7b);color:#49361f;opacity:0;clip-path:inset(0 0 0 calc(100% - 54px) round 13px);pointer-events:none;transition:clip-path .3s cubic-bezier(.2,.75,.25,1),opacity .25s;z-index:2}.search-open .search-panel{opacity:1;clip-path:inset(0 round 13px);pointer-events:auto}.search-panel .search{flex:1;min-width:0;height:100%;padding:0 5px;background:transparent;border:0;color:#49361f;outline:none}.search-panel input{width:100%;color:#49361f;font-size:14px}.search-panel input::placeholder{color:#6a5132}.search-panel .search-close{flex:none;background:none;border:0;color:#49361f}.search-panel:focus-within{outline:2px solid #d9ac56;outline-offset:2px}
footer.catalog-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:30px 24px calc(110px + env(safe-area-inset-bottom,0px))}.catalog-footer .footer-brand{font-weight:650}.catalog-footer .footer-brand span{display:block;color:var(--muted)}.catalog-footer address{font-style:normal;font-size:13px;color:var(--muted)}.backstage-door{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;padding:12px;opacity:.7;text-decoration:none}.backstage-door svg{width:25px;height:25px;transition:transform .25s}.backstage-door:hover,.backstage-door:focus-visible{color:var(--gold);opacity:1}.backstage-door:hover svg{transform:rotate(-9deg)}
@media(max-width:650px){.catalog-toolbar{grid-template-columns:minmax(0,1fr) 44px;gap:8px}.search-toggle{width:44px;height:48px}.filters button{padding:10px 3px}.search-panel input{font-size:16px}.intro-note{display:flex}.intro-note p{display:none}.intro-burger{width:52px;height:64px}.intro{gap:8px}h1{font-size:clamp(32px,8.8vw,44px)}}
@media(prefers-reduced-motion:reduce){.geometry,.line{animation:none}.search-panel,.search-toggle,.filters{transition:none!important}}
