/* Warm, tactile actions. Transforms stay separate from page choreography. */
:root{--button-ease:cubic-bezier(.2,.75,.25,1)}
.btn,.catalog-actions button,.catalog-chips button,.compare-tray button,.listing-mara,.official-photo-button,.catalog-filter-toggle{
 position:relative;isolation:isolate;overflow:hidden;border-radius:10px;min-height:44px;
 transition:translate .3s var(--button-ease),box-shadow .3s var(--button-ease),border-color .25s,color .25s,background .3s;
 -webkit-tap-highlight-color:transparent;
}
.btn{padding:19px 28px;letter-spacing:.105em;font-weight:600}
.btn--solid,.compare-tray button:first-of-type,.catalog-mobile button:last-child{
 background:linear-gradient(125deg,#8f2716 0%,#b5341f 48%,#c54d25 100%);color:#fff;border:1px solid #d966414d;
 box-shadow:inset 0 1px 0 #ffffff38,inset 0 -2px 0 #60180950,0 5px 14px #61241422;
}
.btn--solid::before{z-index:-1;background:radial-gradient(circle at var(--button-x,50%) var(--button-y,50%),#f2a85f70,transparent 65%);transform:none;opacity:0;transition:opacity .35s;pointer-events:none}
.btn--solid::after{content:"";position:absolute;inset:-60% auto -60% -70%;width:40%;z-index:0;background:linear-gradient(90deg,transparent,#ffffff35,transparent);opacity:1;mix-blend-mode:normal;transform:skewX(-22deg);pointer-events:none}
.btn--ghost{border-color:#b69d88;background:#fff7;box-shadow:inset 0 1px 0 #fff,0 3px 8px #3a241b08}
.btn--ghost-light{background:#ffffff09;border-color:#ffffff80;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 #ffffff21;color:#fff}
.btn--sm{padding:14px 20px;font-size:11px;letter-spacing:.08em}
.catalog-actions button{background:#fff8;border-color:#c8b6a5;box-shadow:0 2px 5px #42261b08;font-weight:600}
.catalog-mara{color:var(--terracota)!important}
.catalog-chips button{border-radius:100px;background:#ffffff70;padding:11px 18px}
.catalog-chips button[aria-pressed=true],.catalog-compare[aria-pressed=true]{background:#8f2716;color:#fff;box-shadow:0 4px 12px #8f271625;border-color:#8f2716}
.catalog-filter-toggle{background:#fff8;padding:15px 18px;border-color:#bea58f}
.official-photo-button{background:#241b17d9;backdrop-filter:blur(8px);box-shadow:0 4px 16px #0002;border-color:#ffffff70}
.compare-tray{border-radius:16px;border:1px solid #ffffff20;box-shadow:0 12px 40px #24150d45}
.compare-tray button{border-radius:9px}
.listing-mara{border-color:#b89a81;color:#8f2716;background:#fff9}
.listing-head button,.compare-dialog header button,.listing-gallery-controls button{border-radius:9px;min-height:42px;transition:background .25s,box-shadow .25s}
.catalog-mobile button:last-child{border-radius:10px}
.btn:focus-visible,.catalog-actions button:focus-visible,.catalog-chips button:focus-visible,.listing-mara:focus-visible,.official-photo-button:focus-visible{outline:3px solid #ed9e4a;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 .btn:not(:disabled):hover,.catalog-actions button:not(:disabled):hover,.listing-mara:hover,.official-photo-button:hover{translate:0 -3px;box-shadow:0 10px 23px #57241628}
 .btn--solid:hover{background:linear-gradient(125deg,#8f2716,#b5341f 48%,#c54d25);box-shadow:inset 0 1px 0 #ffffff45,0 10px 25px #8f27163d}
 .btn--solid:hover::before{opacity:1;transform:none}
 .btn--solid:hover::after{animation:button-sheen .8s var(--button-ease) both}
 .btn--ghost:hover{background:#fff;border-color:#a63a23;color:#8f2716}
 .btn--ghost-light:hover{background:#ffffff18;border-color:#fff;color:#fff}
 .catalog-mara:hover{background:#f3e3d3!important;color:#8f2716!important}
 .catalog-chips button:hover{translate:0 -2px;box-shadow:0 4px 12px #46291c1f}
 .listing-head button:hover,.compare-dialog header button:hover,.listing-gallery-controls button:hover{background:#ead7c3;color:#632615;box-shadow:0 3px 8px #522c1615}
}
.btn:not(:disabled):active,.catalog-actions button:not(:disabled):active,.catalog-chips button:not(:disabled):active,.listing-mara:active,.official-photo-button:active{translate:0 1px;transform:scale(.98);box-shadow:inset 0 2px 7px #40180c25}
.button-wave{position:absolute!important;z-index:3!important;display:block;width:22px;height:22px;border-radius:50%;background:currentColor;opacity:0;pointer-events:none;transform:translate(-50%,-50%);animation:button-wave .65s ease-out forwards}
@keyframes button-sheen{from{left:-70%}to{left:140%}}
@keyframes button-wave{0%{opacity:.2;transform:translate(-50%,-50%) scale(0)}100%{opacity:0;transform:translate(-50%,-50%) scale(20)}}
@media(max-width:600px){.btn{padding:17px 22px}.btn--sm{padding:13px 16px}.catalog-actions button{padding:13px 8px}.hero__cta{gap:14px}.hero__cta .btn{min-height:50px}}
@media(prefers-reduced-motion:reduce){
 .btn,.catalog-actions button,.catalog-chips button,.compare-tray button,.listing-mara,.official-photo-button,.catalog-filter-toggle{transition:none!important;translate:none!important}
 .btn::before,.btn::after,.button-wave{animation:none!important;transition:none!important}
 .button-wave{display:none!important}
}
