/* Shared button appearance. The repeated class deliberately beats link rules
   such as .aside a, which previously removed flex alignment and side padding. */
.btn.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;max-width:100%;padding:13px 22px;border:1px solid #123f50;border-radius:10px;background:#123f50;color:#fff;font-size:.95rem;font-weight:650;line-height:1.4;text-align:center;text-decoration:none;letter-spacing:0;box-shadow:0 2px 3px rgb(18 63 80 / 8%);transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease;white-space:normal;vertical-align:middle;filter:none}
.btn.btn::after{content:"";width:8px;height:8px;border-top:1.8px solid currentColor;border-right:1.8px solid currentColor;transform:rotate(45deg);flex-shrink:0;margin-right:3px}
.btn.btn:hover{background:#205768;border-color:#205768;box-shadow:0 4px 10px rgb(18 63 80 / 15%);filter:none}
.btn.btn:active{box-shadow:inset 0 1px 3px rgb(0 0 0 / 15%)}
.btn.btn.lime{background:#d2ee73;border-color:#d2ee73;color:#142c37;box-shadow:0 2px 3px rgb(60 90 15 / 8%)}
.btn.btn.lime:hover{background:#c3e45b;border-color:#c3e45b;box-shadow:0 4px 10px rgb(60 90 15 / 14%)}
.btn.btn.outline{background:#fff;border-color:#7c9a9f;color:#123f50;box-shadow:none}
.btn.btn.outline:hover{background:#eff5f2;border-color:#37696c;box-shadow:0 2px 6px rgb(18 63 80 / 8%)}
.btn.btn:focus-visible{outline:3px solid #668712;outline-offset:4px}
.aside .btn.btn{display:flex;width:100%;padding:13px 18px;margin-top:24px;color:#fff}
.nav .btn.btn{min-height:44px;padding:11px 20px;font-size:.9rem;border-radius:9px;white-space:nowrap}
.nav .btn.btn::after{display:none}
.product-card .btn.btn{width:100%;min-height:50px;margin-top:auto;padding:12px 14px;font-size:.86rem;gap:8px}
.product-spotlight .btn.btn{font-size:.9rem}
.actions{align-items:stretch}
.contact-box .btn.btn{width:100%}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border:1px solid #bdcec6;border-radius:50%;background:#fff;color:#123f50;font-size:1.3rem;font-weight:400;line-height:1}
.faq details[open] summary::after{content:"−";background:#edf3ed}
@media(max-width:760px){.btn.btn{min-height:48px;padding:12px 18px}.nav .btn.btn{min-height:40px;padding:9px 16px;font-size:.82rem}.actions .btn.btn{flex:1 1 180px}.product-card .btn.btn{font-size:.81rem;padding:11px 9px;gap:6px}.product-card .btn.btn::after{width:6px;height:6px}.product-spotlight .btn.btn{font-size:.8rem;padding:11px 12px;gap:8px}.aside .btn.btn{font-size:.9rem}.faq summary{font-size:1rem;gap:12px}}
@media(prefers-reduced-motion:reduce){.btn.btn{transition:none}}
