.kp-products{display:grid;gap:22px}
.kp-products__tabs{display:inline-flex;gap:4px;border-bottom:1px solid #dfe6dd;margin:0 0 20px}
.kp-products__tabs button{appearance:none;border:0;background:transparent;padding:0 18px 10px 0;margin-right:18px;font-weight:900;color:#77716a;cursor:pointer;border-bottom:3px solid transparent}
.kp-products__tabs button.is-active{color:#087431;border-bottom-color:#18a447}
.kp-products__group h3{font-size:20px;letter-spacing:-.02em;margin:0 0 13px;border-bottom:2px solid #bfe7ca;padding-bottom:7px;width:max-content}
.kp-products__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.kp-products--compact .kp-products__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.kp-product-card,.kp-custom-card{background:#fff;border:1px solid #e4e0d8;border-radius:14px;padding:12px;box-shadow:0 8px 20px rgba(20,17,15,.045)}
.kp-product-card{position:relative;display:grid;grid-template-rows:112px 24px 20px 34px;gap:7px;min-height:210px;align-content:start;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.kp-product-card:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(20,17,15,.075);border-color:#d7d0c5}
.kp-product-card__image{height:112px;border-radius:12px;background:#faf8f4;display:flex;align-items:center;justify-content:center;margin-bottom:4px;overflow:hidden}
.kp-product-card__image img{display:block;width:116%;height:116%;object-fit:contain;mix-blend-mode:multiply}
.kp-product-card__size{font-size:16px;font-weight:950;line-height:1.15;min-height:20px;align-self:end}
.kp-product-card__price{font-size:13px;color:#696663;align-self:center}
.kp-product-card a,.kp-custom-card a{display:inline-flex;width:max-content;text-decoration:none;color:#fff;background:#18a447;border-radius:7px;padding:8px 12px;font-weight:900;font-size:12px;align-self:end;justify-self:start}
.kp-product-card a:hover,.kp-custom-card a:hover{background:#087431;color:#fff}
.kp-custom-card{background:#1d1b1b;color:#fff}
.kp-custom-card p{color:#d8d2ca}
.kp-calc{background:#fff;border:1px solid #e4e0d8;border-radius:16px;padding:20px;box-shadow:0 12px 32px rgba(20,17,15,.06)}.kp-calc [hidden]{display:none!important}.kp-calc__tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e4e0d8;margin-bottom:18px}.kp-calc__tabs button{border:0;background:transparent;padding:0 10px 12px;font-weight:900;cursor:pointer;color:#77716a;border-bottom:3px solid transparent;font-size:14px}.kp-calc__tabs button.is-active{color:#18a447;border-bottom-color:#18a447}.kp-calc__form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kp-calc label{display:grid;gap:6px;font-weight:750;font-size:13px}.kp-calc input,.kp-calc select,.kp-calc textarea{width:100%;border:1px solid #d9d5ce;border-radius:7px;padding:10px 11px;font:inherit;background:#fff;min-height:40px}.kp-calc input:focus,.kp-calc select:focus,.kp-calc textarea:focus{outline:2px solid rgba(24,164,71,.18);border-color:#18a447}.kp-calc textarea,.kp-calc__summary,.kp-calc__status,.kp-calc button[type=submit],.kp-calc__standard,.kp-calc__custom,.kp-calc__wide,.kp-calc__agree{grid-column:1/-1}.kp-calc__standard,.kp-calc__custom{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kp-calc [data-custom-rect]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-column:span 2}.kp-calc [data-custom-cyl]{grid-column:span 2}.kp-calc__summary{background:#f7f6f2;border-radius:10px;padding:10px 14px;font-weight:750;color:#3f3a35;font-size:13px}.kp-calc__agree{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px;font-size:12px;color:#66615b}.kp-calc__agree input{width:auto;min-height:auto}.kp-calc button[type=submit]{border:0;border-radius:7px;padding:13px 16px;background:#18a447;color:#fff;font-weight:950;cursor:pointer;grid-column:3/-1;justify-self:end;min-width:210px}.kp-calc button[type=submit]:hover{background:#087431}.kp-calc__status{font-weight:750}.kp-calc__status.is-error{color:#b00020}.kp-calc__status.is-success{color:#087431}.kp-hp{position:absolute!important;left:-9999px!important;opacity:0!important}
@media(max-width:1300px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
  .kp-products--compact .kp-product-card{min-height:202px}
  .kp-products--compact .kp-product-card__image{height:106px}
  .kp-product-card__size{font-size:15px}
  .kp-calc__form,.kp-calc__standard,.kp-calc__custom{gap:10px}
  .kp-calc{padding:18px}
}
@media(max-width:1120px){
  .kp-products__grid,.kp-products--compact .kp-products__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .kp-product-card{min-height:210px}
}
@media(max-width:980px){
  .kp-calc button[type=submit]{grid-column:1/-1;justify-self:stretch}

  .kp-products__grid,.kp-products--compact .kp-products__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kp-calc__form,.kp-calc__standard,.kp-calc__custom{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kp-calc [data-custom-rect],.kp-calc [data-custom-cyl]{grid-column:1/-1}
}
@media(max-width:620px){
  .kp-products__tabs{display:grid;gap:0}
  .kp-products__tabs button{margin:0;padding:12px 0;text-align:left}
  .kp-products__grid,.kp-products--compact .kp-products__grid,.kp-calc__form,.kp-calc__standard,.kp-calc__custom,.kp-calc [data-custom-rect]{grid-template-columns:1fr}
  .kp-calc__tabs{grid-template-columns:1fr}
  .kp-product-card{min-height:auto}
}


/* v8.1 form/product refinement */
.kp-products__tabs button{border-radius:0!important}
.kp-product-card{border-radius:8px!important}
.kp-product-card__image{border-radius:6px!important}
.kp-product-card a,.kp-custom-card a,.kp-calc button[type=submit]{border-radius:6px!important}

.kp-calc__file span{font-size:12px;font-weight:600;color:#756f68}
.kp-calc input[type=file]{padding:8px;background:#fff}
.kp-calc__agree a{color:#087431;text-decoration:underline;text-underline-offset:2px}
.kp-calc__summary{border-radius:6px!important}
.kp-calc button[type=submit]{grid-column:3/-1;justify-self:end;min-width:210px}

@media(max-width:980px){
  .kp-calc button[type=submit]{grid-column:1/-1;justify-self:stretch}
}


/* v8.2 product/form alignment to target */
.kp-product-card,
.kp-product-card__image,
.kp-calc,
.kp-calc input,
.kp-calc select,
.kp-calc textarea,
.kp-calc__summary,
.kp-calc button[type=submit]{
  border-radius:4px!important;
}
.kp-products--compact .kp-products__grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
}
.kp-product-card{
  grid-template-rows:110px 22px 18px 32px!important;
  min-height:206px!important;
  padding:12px!important;
}
.kp-product-card__image{
  height:110px!important;
}
.kp-product-card__image img{
  width:118%!important;
  height:118%!important;
}
.kp-product-card__size{
  font-size:15px!important;
}
.kp-product-card__price{
  font-size:12px!important;
}
.kp-product-card a{
  padding:8px 11px!important;
  font-size:12px!important;
}
.kp-calc__file input[type=file]{
  padding:7px 9px!important;
  min-height:36px!important;
}
.kp-calc__file span{
  font-size:11px!important;
  line-height:1.2!important;
  color:#756f68!important;
}
.kp-calc__agree a{
  color:#087431!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}
.kp-calc button[type=submit]{
  grid-column:3/-1!important;
  justify-self:end!important;
  min-width:210px!important;
}
@media(max-width:1300px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}
  .kp-product-card{min-height:200px!important}
  .kp-product-card__image{height:104px!important}
}
@media(max-width:1120px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:980px){
  .kp-calc button[type=submit]{grid-column:1/-1!important;justify-self:stretch!important}
}


/* v8.3 products/form polish */
.kp-products--compact .kp-products__grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
}
.kp-product-card{
  min-height:208px!important;
  grid-template-rows:112px 22px 18px 32px!important;
}
.kp-product-card__image{
  height:112px!important;
}
.kp-product-card__image img{
  width:118%!important;
  height:118%!important;
}
.kp-calc__file{
  border:1px solid #e2ded6!important;
  border-radius:4px!important;
  padding:9px 10px!important;
  background:#fff!important;
}
.kp-calc__file input[type=file]{
  border:0!important;
  padding:0!important;
  min-height:auto!important;
}
.kp-calc__file input[type=file]::file-selector-button{
  border:0;
  border-radius:4px;
  background:#f1f0eb;
  padding:7px 10px;
  margin-right:10px;
  font-weight:800;
  cursor:pointer;
}
.kp-calc__file span{
  display:block;
  margin-top:6px;
}
@media(max-width:1300px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}
  .kp-product-card{min-height:202px!important}
  .kp-product-card__image{height:106px!important}
}
@media(max-width:1120px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}


/* v8.4 product card and file upload polish */
.kp-products--compact .kp-products__grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
}
.kp-product-card{
  min-height:216px!important;
  grid-template-rows:118px 22px 18px 34px!important;
  padding:12px!important;
  border-radius:5px!important;
}
.kp-product-card__image{
  height:118px!important;
  border-radius:4px!important;
}
.kp-product-card__image img{
  width:122%!important;
  height:122%!important;
}
.kp-product-card a{
  border-radius:4px!important;
  padding:8px 12px!important;
}

.kp-calc__file{
  border:1px solid #ded9cf!important;
  border-radius:5px!important;
  background:#fff!important;
  padding:10px 12px!important;
}
.kp-calc__file input[type=file]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
}
.kp-file-ui{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-height:34px!important;
}
.kp-file-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f1f0eb!important;
  color:#24211e!important;
  padding:8px 12px!important;
  border-radius:4px!important;
  font-weight:900!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.kp-file-name{
  color:#6c665f!important;
  font-weight:700!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.kp-calc__file > span:last-child{
  display:block!important;
  margin-top:6px!important;
  font-size:11px!important;
}
@media(max-width:1300px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}
  .kp-product-card{min-height:208px!important}
  .kp-product-card__image{height:110px!important}
}
@media(max-width:1120px){
  .kp-products--compact .kp-products__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}


/* v8.7 final actions row + refined buttons */
.kp-calc__actions{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin-top:2px!important;flex-wrap:nowrap!important}
.kp-calc__agree{grid-column:auto!important;display:flex!important;align-items:center!important;gap:8px!important;flex:1 1 auto!important;white-space:nowrap!important;margin:0!important}
.kp-calc__agree span{white-space:nowrap!important}
.kp-calc button[type=submit]{grid-column:auto!important;justify-self:auto!important;min-width:220px!important;min-height:44px!important;padding:10px 20px!important;border-radius:12px!important}
.kp-product-card a,.kp-custom-card a{min-height:36px!important;padding:7px 13px!important;border-radius:10px!important}
@media(max-width:980px){.kp-calc__actions{flex-direction:column!important;align-items:stretch!important}.kp-calc__agree,.kp-calc__agree span{white-space:normal!important}.kp-calc button[type=submit]{width:100%!important;min-width:0!important}}


/* v8.8 product card button refinement */
.kp-product-card a,.kp-custom-card a{
  min-height:34px!important;
  padding:6px 12px!important;
  border-radius:11px!important;
  font-size:12px!important;
  line-height:1!important;
}
.kp-product-card{min-height:208px!important}
.kp-product-card__image{height:110px!important}
.kp-product-card__image img{width:118%!important;height:118%!important;object-fit:contain!important}


/* v9.0 compact calculator + RAL picker */
.kp-calc{
  padding:14px!important;
  border-radius:8px!important;
}
.kp-calc__tabs{
  display:flex!important;
  gap:6px!important;
  padding:4px!important;
  margin:0 0 12px!important;
  border:0!important;
  background:#f2f0ea!important;
  border-radius:13px!important;
}
.kp-calc__tabs button{
  flex:1 1 0!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  color:#6b665f!important;
  font-size:13px!important;
  font-weight:900!important;
  border-bottom:0!important;
  transition:background .2s ease,color .2s ease,box-shadow .2s ease!important;
}
.kp-calc__tabs button:hover{
  background:#fff!important;
  color:#24211e!important;
}
.kp-calc__tabs button.is-active{
  background:#18a447!important;
  color:#fff!important;
  box-shadow:0 5px 12px rgba(24,164,71,.18)!important;
}

.kp-calc__form,
.kp-calc__standard,
.kp-calc__custom{
  gap:8px 10px!important;
}
.kp-calc label,
.kp-color-field{
  gap:4px!important;
  font-size:12px!important;
  font-weight:800!important;
}
.kp-calc input,
.kp-calc select,
.kp-calc textarea{
  min-height:38px!important;
  padding:8px 10px!important;
  border-radius:7px!important;
  font-size:13px!important;
  line-height:1.2!important;
}
.kp-calc textarea{
  min-height:58px!important;
  height:58px;
  resize:vertical!important;
  max-height:140px!important;
}

.kp-color-field{
  display:grid!important;
  position:relative!important;
}
.kp-color-field__top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.kp-color-field__label{
  font-size:12px!important;
  font-weight:850!important;
}
.kp-color-switch{
  display:inline-flex!important;
  gap:2px!important;
  padding:2px!important;
  background:#f3f1ec!important;
  border-radius:999px!important;
}
.kp-color-switch button{
  border:0!important;
  background:transparent!important;
  color:#77716a!important;
  border-radius:999px!important;
  padding:3px 7px!important;
  min-height:22px!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:background .2s ease,color .2s ease!important;
}
.kp-color-switch button:hover{
  background:#fff!important;
  color:#24211e!important;
}
.kp-color-switch button.is-active{
  background:#18a447!important;
  color:#fff!important;
}
.kp-color-field__control{
  position:relative!important;
}
.kp-ral-palette{
  position:absolute!important;
  z-index:30!important;
  top:calc(100% + 6px)!important;
  left:0!important;
  width:min(360px,90vw)!important;
  display:grid!important;
  grid-template-columns:repeat(6,1fr)!important;
  gap:7px!important;
  padding:10px!important;
  background:#fff!important;
  border:1px solid #ded9cf!important;
  border-radius:10px!important;
  box-shadow:0 16px 34px rgba(20,17,15,.14)!important;
}
.kp-ral-palette[hidden]{
  display:none!important;
}
.kp-ral-palette button{
  display:grid!important;
  gap:4px!important;
  justify-items:center!important;
  border:0!important;
  background:#faf9f6!important;
  border-radius:7px!important;
  padding:6px 4px!important;
  cursor:pointer!important;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease!important;
}
.kp-ral-palette button:hover{
  background:#fff!important;
  box-shadow:0 4px 10px rgba(20,17,15,.10)!important;
  transform:translateY(-1px)!important;
}
.kp-ral-palette button span{
  display:block!important;
  width:28px!important;
  height:22px!important;
  border-radius:4px!important;
  border:1px solid rgba(0,0,0,.14)!important;
}
.kp-ral-palette button b{
  font-size:10px!important;
  line-height:1!important;
  color:#34302d!important;
}
.kp-ral-hint{
  display:none!important;
  color:#9b5b00!important;
  font-size:10.5px!important;
  line-height:1.2!important;
  margin-top:1px!important;
}
.kp-ral-hint.is-visible{
  display:block!important;
}

.kp-calc__file{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  padding:0!important;
  min-height:34px!important;
}
.kp-calc__file input[type=file]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
}
.kp-file-ui{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:32px!important;
}
.kp-file-button{
  padding:7px 11px!important;
  border-radius:9px!important;
  background:#f1f0eb!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:850!important;
}
.kp-file-name{
  font-size:12px!important;
  color:#66615b!important;
  font-weight:700!important;
}

.kp-calc__summary{
  grid-column:1/3!important;
  min-height:38px!important;
  padding:9px 12px!important;
  border-radius:7px!important;
  display:flex!important;
  align-items:center!important;
  font-size:12px!important;
  line-height:1.25!important;
}
.kp-calc__actions{
  grid-column:3/-1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0!important;
  min-height:38px!important;
}
.kp-calc__agree{
  grid-column:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  flex:1 1 auto!important;
}
.kp-calc__agree input{
  flex:0 0 auto!important;
}
.kp-calc button[type=submit]{
  grid-column:auto!important;
  justify-self:auto!important;
  min-width:185px!important;
  min-height:40px!important;
  padding:8px 18px!important;
  border-radius:13px!important;
  font-size:13px!important;
  line-height:1!important;
  flex:0 0 auto!important;
}

@media(max-width:980px){
  .kp-calc__summary,
  .kp-calc__actions{
    grid-column:1/-1!important;
  }
  .kp-calc__actions{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .kp-calc__agree{
    white-space:normal!important;
  }
  .kp-calc button[type=submit]{
    width:100%!important;
    min-width:0!important;
  }
}
@media(max-width:620px){
  .kp-calc{
    padding:12px!important;
  }
  .kp-calc__form,
  .kp-calc__standard,
  .kp-calc__custom{
    gap:7px!important;
  }
  .kp-calc input,
  .kp-calc select,
  .kp-calc textarea{
    min-height:38px!important;
  }
  .kp-color-field__top{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .kp-ral-palette{
    grid-template-columns:repeat(3,1fr)!important;
  }
}


/* v9.1 calculator bottom/file compact fix */
.kp-color-field__label{
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.kp-color-switch{
  flex:0 0 auto!important;
}
.kp-color-switch button{
  padding:3px 6px!important;
  font-size:10px!important;
}

/* File upload: only the colored button opens file picker, no large empty clickable label */
.kp-calc__file{
  grid-column:1/-1!important;
  display:flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.kp-calc__file input[type=file]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}
.kp-file-ui{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:30px!important;
}
.kp-file-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:7px 12px!important;
  border:1px solid rgba(24,164,71,.35)!important;
  border-radius:11px!important;
  background:#eaf7ee!important;
  color:#087431!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  cursor:pointer!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
.kp-file-button:hover{
  background:#18a447!important;
  color:#fff!important;
  border-color:#18a447!important;
  box-shadow:0 5px 12px rgba(24,164,71,.18)!important;
}
.kp-file-name{
  font-size:12px!important;
  line-height:1.2!important;
  color:#5f5a54!important;
  font-weight:750!important;
  max-width:280px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Bottom row: summary centered vertically + consent/button aligned in one compact line */
.kp-calc__bottom{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:stretch!important;
  margin-top:0!important;
}
.kp-calc__summary{
  grid-column:auto!important;
  min-height:42px!important;
  height:auto!important;
  padding:8px 12px!important;
  border-radius:7px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  font-size:12px!important;
  line-height:1.25!important;
  margin:0!important;
}
.kp-calc__actions{
  grid-column:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px!important;
  min-height:42px!important;
  margin:0!important;
}
.kp-calc__agree{
  grid-column:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
.kp-calc__agree input{
  flex:0 0 auto!important;
}
.kp-calc button[type=submit]{
  grid-column:auto!important;
  justify-self:auto!important;
  min-width:180px!important;
  min-height:40px!important;
  padding:8px 18px!important;
  border-radius:13px!important;
  flex:0 0 auto!important;
}

@media(max-width:1150px){
  .kp-calc__bottom{
    grid-template-columns:1fr!important;
  }
  .kp-calc__actions{
    justify-content:space-between!important;
  }
}
@media(max-width:620px){
  .kp-color-field__top{
    display:grid!important;
    gap:4px!important;
  }
  .kp-calc__actions{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .kp-calc__agree{
    white-space:normal!important;
  }
  .kp-calc button[type=submit]{
    width:100%!important;
    min-width:0!important;
  }
  .kp-file-ui{
    width:100%!important;
  }
  .kp-file-name{
    max-width:calc(100vw - 190px)!important;
  }
}


/* v9.2 product buttons and product rubrics */
.kp-products__tabs{
  display:flex!important;
  gap:0!important;
  border-bottom:1px solid #d8dfd7!important;
  margin:0 0 22px!important;
}
.kp-products__tabs button{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:0 26px 13px 0!important;
  margin:0 26px 0 0!important;
  min-height:38px!important;
  color:#6f6a64!important;
  border-bottom:3px solid transparent!important;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.005em!important;
  cursor:pointer!important;
  transition:color .18s ease,border-color .18s ease!important;
}
.kp-products__tabs button:hover{
  color:#087431!important;
}
.kp-products__tabs button.is-active{
  color:#087431!important;
  border-bottom-color:#18a447!important;
}

.kp-product-card{
  grid-template-rows:112px 24px 20px 38px!important;
  min-height:216px!important;
  align-content:start!important;
}
.kp-product-card a,
.kp-custom-card a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:104px!important;
  min-height:38px!important;
  padding:9px 15px!important;
  border-radius:12px!important;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  align-self:end!important;
  justify-self:start!important;
  white-space:nowrap!important;
}
.kp-product-card__size{
  font-size:16px!important;
  line-height:1.15!important;
}
.kp-product-card__price{
  font-size:13px!important;
  line-height:1.2!important;
}
.kp-calc button[type=submit],
.kp-file-button{
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif!important;
  font-size:14px!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
}
.kp-file-button{
  font-size:13px!important;
}
@media(max-width:1300px){
  .kp-products__tabs button{
    font-size:14px!important;
    min-height:36px!important;
  }
  .kp-product-card a{
    min-width:98px!important;
    min-height:36px!important;
    font-size:13px!important;
  }
}


/* v9.3 typography and larger product cards */
.kp-products__tabs button,
.kp-product-card a,
.kp-custom-card a,
.kp-calc button[type=submit],
.kp-file-button{
  font-family:Inter,Arial,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:760!important;
  letter-spacing:-.005em!important;
}
.kp-products__tabs button{
  font-size:15px!important;
  min-height:40px!important;
}
.kp-products--compact .kp-products__grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
.kp-product-card{
  min-height:244px!important;
  grid-template-rows:132px 26px 20px 38px!important;
  padding:14px!important;
}
.kp-product-card__image{
  height:132px!important;
}
.kp-product-card__image img{
  width:128%!important;
  height:128%!important;
  object-fit:contain!important;
}
.kp-product-card__size{
  font-size:17px!important;
  line-height:1.15!important;
}
.kp-product-card__price{
  font-size:13px!important;
}
.kp-product-card a,
.kp-custom-card a{
  min-width:108px!important;
  min-height:38px!important;
  padding:9px 15px!important;
  font-size:14px!important;
  border-radius:12px!important;
}
@media(max-width:1050px){
  .kp-products--compact .kp-products__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  .kp-products--compact .kp-products__grid{
    grid-template-columns:1fr!important;
  }
}


/* v9.4.1 product cards: compact info row, button on the left */
.kp-product-card{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:230px!important;
  padding:12px!important;
}
.kp-product-card__image{
  height:112px!important;
  margin-bottom:0!important;
  flex:0 0 auto!important;
}
.kp-product-card__meta{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:10px 12px!important;
  align-items:center!important;
  min-height:0!important;
}
.kp-product-card__details{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}
.kp-product-card__size{
  min-height:0!important;
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:800!important;
  color:#1e1b18!important;
}
.kp-product-card__price{
  font-size:18px!important;
  line-height:1.1!important;
  font-weight:800!important;
  color:#1f1c19!important;
}
.kp-product-card__volume{
  font-size:12px!important;
  line-height:1.2!important;
  color:#6a655f!important;
  font-weight:600!important;
}
.kp-product-card a,
.kp-custom-card a{
  align-self:center!important;
}
.kp-product-card a{
  display:inline-flex!important;
  width:auto!important;
  min-width:104px!important;
  justify-content:center!important;
  align-items:center!important;
  min-height:34px!important;
  padding:6px 14px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:700!important;
  border-radius:12px!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
@media (max-width: 640px){
  .kp-product-card{
    min-height:220px!important;
  }
  .kp-product-card__meta{
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-items:start!important;
  }
  .kp-product-card a{
    min-width:0!important;
    width:100%!important;
  }
}


/* v9.6 clean recovery: price accent */
.kp-product-card__price{
  color:#d97a1d!important;
}


/* v1.0.1: clean product card layout and transparent product images */
.kp-products--compact .kp-product-card{
  min-height:238px!important;
  padding:14px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  background:#ffffff!important;
}
.kp-products--compact .kp-product-card__image{
  height:124px!important;
  margin:0!important;
  background:#f8f6f1!important;
  border-radius:6px!important;
}
.kp-products--compact .kp-product-card__image img{
  width:128%!important;
  height:128%!important;
  object-fit:contain!important;
  mix-blend-mode:normal!important;
}
.kp-products--compact .kp-product-card__meta{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  margin-top:auto!important;
}
.kp-products--compact .kp-product-card__details{
  display:grid!important;
  gap:3px!important;
  align-content:center!important;
  justify-items:end!important;
  text-align:right!important;
}
.kp-products--compact .kp-product-card__size,
.kp-products--compact .kp-product-card__price,
.kp-products--compact .kp-product-card__volume{
  white-space:nowrap!important;
}
.kp-products--compact .kp-product-card__size{
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:850!important;
}
.kp-products--compact .kp-product-card__price{
  font-size:18px!important;
  line-height:1.05!important;
  color:#d87312!important;
  font-weight:900!important;
}
.kp-products--compact .kp-product-card__volume{
  font-size:12px!important;
  line-height:1.1!important;
}
.kp-products--compact .kp-product-card a{
  width:100%!important;
  min-width:0!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border-radius:10px!important;
  font-size:13px!important;
  font-weight:800!important;
}
@media(max-width:640px){
  .kp-products--compact .kp-product-card__meta{
    grid-template-columns:1fr!important;
  }
  .kp-products--compact .kp-product-card__details{
    justify-items:start!important;
    text-align:left!important;
  }
}


/* v1.0.2: transparent product images and clean description row */
.kp-products--compact .kp-product-card{
  background:#ffffff!important;
}
.kp-products--compact .kp-product-card__image{
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.kp-products--compact .kp-product-card__image img{
  object-fit:contain!important;
  mix-blend-mode:normal!important;
}
.kp-products--compact .kp-product-card__meta{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
}
.kp-products--compact .kp-product-card__details{
  display:grid!important;
  gap:3px!important;
  justify-items:end!important;
  text-align:right!important;
}
.kp-products--compact .kp-product-card__size,
.kp-products--compact .kp-product-card__price,
.kp-products--compact .kp-product-card__volume{
  white-space:nowrap!important;
}

/* v10.13 quote calculator UI: lighter form, stable lower row */
#quote .kp-calc{
  padding:18px!important;
  border:1px solid #e2ddd4!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 14px 32px rgba(22,19,16,.065)!important;
}
#quote .kp-calc__tabs{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:6px!important;
  padding:5px!important;
  margin:0 0 14px!important;
  border:0!important;
  border-radius:12px!important;
  background:#f2f0ea!important;
}
#quote .kp-calc__tabs button{
  min-height:36px!important;
  padding:8px 14px!important;
  border:0!important;
  border-radius:9px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
}
#quote .kp-calc__tabs button.is-active{
  background:#18a447!important;
  color:#fff!important;
  box-shadow:0 7px 14px rgba(24,164,71,.17)!important;
}
#quote .kp-calc__form,
#quote .kp-calc__standard,
#quote .kp-calc__custom{
  gap:10px!important;
}
#quote .kp-calc label,
#quote .kp-color-field{
  gap:5px!important;
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:850!important;
  color:#2d2925!important;
}
#quote .kp-calc input,
#quote .kp-calc select,
#quote .kp-calc textarea{
  min-height:42px!important;
  padding:10px 12px!important;
  border:1px solid #d8d3ca!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:13px!important;
  line-height:1.25!important;
  color:#2d2925!important;
}
#quote .kp-calc input::placeholder,
#quote .kp-calc textarea::placeholder{
  color:#8a837b!important;
}
#quote .kp-calc textarea{
  min-height:66px!important;
  height:66px!important;
  resize:vertical!important;
}
#quote .kp-calc__file{
  display:flex!important;
  align-items:center!important;
  min-height:34px!important;
  margin-top:2px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
#quote .kp-file-ui{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:34px!important;
}
#quote .kp-file-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:8px 13px!important;
  border:1px solid rgba(24,164,71,.35)!important;
  border-radius:10px!important;
  background:#eaf7ee!important;
  color:#087431!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  cursor:pointer!important;
}
#quote .kp-file-name{
  max-width:360px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#5f5a54!important;
  font-size:12px!important;
  font-weight:750!important;
}
#quote .kp-calc__bottom{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:minmax(260px,360px) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
  margin-top:2px!important;
}
#quote .kp-calc__summary{
  grid-column:auto!important;
  min-height:44px!important;
  padding:10px 14px!important;
  border-radius:9px!important;
  background:#f7f6f2!important;
  color:#393530!important;
  display:flex!important;
  align-items:center!important;
  font-size:12px!important;
  line-height:1.28!important;
  font-weight:850!important;
}
#quote .kp-calc__actions{
  grid-column:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
  min-height:44px!important;
  margin:0!important;
}
#quote .kp-calc__agree{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  white-space:nowrap!important;
  font-size:12px!important;
  line-height:1.2!important;
  color:#5f5a54!important;
}
#quote .kp-calc__agree input{
  width:auto!important;
  min-height:auto!important;
  flex:0 0 auto!important;
}
#quote .kp-calc__agree a{
  color:#087431!important;
  font-weight:850!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}
#quote .kp-calc button[type=submit]{
  grid-column:auto!important;
  justify-self:auto!important;
  flex:0 0 auto!important;
  min-width:190px!important;
  min-height:44px!important;
  padding:10px 20px!important;
  border:0!important;
  border-radius:12px!important;
  background:#18a447!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:950!important;
  box-shadow:0 9px 18px rgba(24,164,71,.16)!important;
}
#quote .kp-calc button[type=submit]:hover{
  background:#087431!important;
}
@media(max-width:1180px){
  #quote .kp-calc__bottom{
    grid-template-columns:1fr!important;
  }
  #quote .kp-calc__actions{
    justify-content:space-between!important;
  }
  #quote .kp-calc__agree{
    white-space:normal!important;
  }
}
@media(max-width:760px){
  #quote .kp-calc{
    padding:14px!important;
  }
  #quote .kp-calc__tabs{
    grid-template-columns:1fr!important;
  }
  #quote .kp-calc__actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  #quote .kp-calc button[type=submit]{
    width:100%!important;
    min-width:0!important;
  }
  #quote .kp-file-ui{
    width:100%!important;
  }
  #quote .kp-file-name{
    max-width:calc(100vw - 190px)!important;
  }
}
