:root{--c-primary:#315B49;--c-dark:#1E3A2E;--c-bg:#F5F4EF;--c-text:#171A18;--c-border:#E8E6DF;--c-surface:#fff;--c-sale:#B3412F;--logo-h:52px}
.kx-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--c-text);color:#fff;padding:12px 20px;border-radius:999px;font-size:14px;font-weight:500;opacity:0;pointer-events:none;transition:.3s;z-index:300;max-width:92vw;text-align:center}
.kx-toast.is-on{opacity:1;transform:translate(-50%,0)}
.kx-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:18px;scrollbar-width:none}
.kx-chips::-webkit-scrollbar{display:none}
.kx-chip{flex:none;padding:9px 16px;border-radius:999px;background:#fff;border:1.5px solid var(--c-border);font-size:13px;font-weight:600}
.kx-chip.is-active{background:var(--c-primary);border-color:var(--c-primary);color:#fff}
.kx-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.kx-select{border:1.5px solid var(--c-border);background:#fff;border-radius:10px;padding:10px 14px;font-size:14px}
.kx-empty{text-align:center;padding:60px 16px;color:#5a5f5b}
.kx-empty .btn{margin-top:18px}
.kx-page{padding-block:40px 64px}
.kx-page h1{font-size:clamp(28px,5vw,40px);font-weight:800;letter-spacing:-.025em;margin-bottom:18px}
.kx-page p{max-width:62ch;margin-bottom:14px;color:#3b413d;line-height:1.7}
.kx-field{display:grid;gap:5px;font-size:12px;font-weight:600;letter-spacing:.04em}
.kx-field input,.kx-field textarea{border:1.5px solid var(--c-border);background:#fff;border-radius:10px;padding:11px 12px;font-size:15px;font-weight:400;letter-spacing:0;width:100%}
.kx-field input:focus,.kx-field textarea:focus{border-color:var(--c-primary);outline:0}
.kx-field.is-bad input,.kx-field.is-bad textarea{border-color:var(--c-sale)}
.kx-details{display:grid;gap:10px}
.kx-details__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kx-total-line{display:flex;justify-content:space-between;font-size:14px;color:#4b514c}
.drawer__foot .btn{width:100%}
.kx-after{font-size:13px;color:var(--c-primary);font-weight:600;text-align:center}
.kx-linkbtn{font-size:13px;text-decoration:underline;text-underline-offset:3px;color:#5a5f5b;justify-self:center}
.pdp-wrap{padding-block:24px 56px}
.pdp__sizeguide{font-size:12px;color:#6b706c}
.pdp__note{background:#fff;border:1px solid var(--c-border);border-radius:12px;padding:14px 16px;font-size:13px;color:#4b514c;line-height:1.6}
.shake{animation:kxshake .35s}
@keyframes kxshake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
.kx-sold{display:inline-block;background:var(--c-text);color:#fff;padding:5px 9px;font-size:11px;font-weight:700;letter-spacing:.06em;border-radius:4px;line-height:1}
.header__wish{position:relative}
.pcard__link{cursor:pointer}
.pcard__media .pcard__img{object-fit:cover}
.brand-tile img{filter:none}
.footer__logo img{border-radius:50%}

/* cart drawer: let the whole panel scroll so the order buttons are always reachable on phones */
.drawer__panel{overflow-y:auto;-webkit-overflow-scrolling:touch}
.drawer__head{position:sticky;top:0;background:var(--c-bg);z-index:2}
.drawer__items{flex:none;overflow:visible}
.drawer__foot{margin-top:auto}
.pdp__form .qty{justify-self:start;width:auto}
