html,body{margin:0}
body{background:#EDF3F8}
a{color:#0E1B2A}a:hover{color:#3D5A80}
img{max-width:100%}
summary{list-style:none}
summary::-webkit-details-marker{display:none}
details[open] .kp-plus{transform:rotate(45deg)}
.kp-plus{transition:transform .2s}
.kp-dot{height:10px;width:10px;border-radius:999px;border:0;padding:0;cursor:pointer;transition:width .3s;background:#4A6280}
.kp-dot.is-active{width:30px;background:#F4C24D}
.kp-thumb{border:3px solid transparent;opacity:.85}
.kp-thumb.is-active{border-color:#0E1B2A;opacity:1}
.kp-qty-input{-moz-appearance:textfield;appearance:textfield}
.kp-qty-input::-webkit-outer-spin-button,.kp-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.kp-cart-count{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;border-radius:999px;background:#F4C24D;color:#0E1B2A;font-size:12px;font-weight:700;line-height:20px;text-align:center}
.kp-wrap{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,40px);box-sizing:border-box}
.kp-card{background:#FFFFFF;border-radius:24px;padding:clamp(20px,3vw,36px)}
.kp-h1{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(34px,4vw,52px);line-height:1.08;margin:0 0 18px}
.kp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;border:0;border-radius:14px;background:#0E1B2A;color:#FFFFFF;font:inherit;font-weight:700;font-size:18px;text-decoration:none;cursor:pointer}
.kp-btn:hover{color:#FFFFFF;opacity:.92}
.kp-btn-yellow{background:#F4C24D;color:#0E1B2A}
.kp-btn-yellow:hover{color:#0E1B2A}
.kp-input{width:100%;box-sizing:border-box;min-height:52px;padding:12px 14px;border:2px solid #C9D4DC;border-radius:12px;font:inherit;background:#FFFFFF;color:#0E1B2A}
textarea.kp-input{min-height:140px}
.kp-rte{color:#33414E}
.kp-rte img{height:auto}
.kp-rte a{color:#0E1B2A}
.kp-cart-line{display:grid;grid-template-columns:96px 1fr auto;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid #E1E8ED}
.kp-cart-line:last-child{border-bottom:0}
@media (max-width:760px){
.kp-nav{order:3;width:100%;margin-left:0 !important;gap:14px !important;font-size:16px !important;justify-content:space-between}
.kp-cart{margin-left:auto}
.kp-hero-btns a{flex:1 1 100%}
.kp-topbar-extra{display:none !important}
.kp-sticky{display:flex !important}
.kp-cart-line{grid-template-columns:72px 1fr}
.kp-cart-line .kp-cart-price{grid-column:2}
}
