
form.hw-selector-ready, form.hw-product-ui, body.single-product { --hw-text:#f3f6fc; --hw-muted:#b8c5d6; --hw-line:#3b4a60; --hw-accent:#36c5f4; --hw-panel:#10263d; --hw-clear:transparent; --hw-black:#111; --hw-white:#fff; --hw-blue:#245db8; }
form.hw-selector-ready table.variations.hw-native-table,
form.hw-selector-ready table.variations .hw-native-row { display:none !important; }
.hw-configuration { color:var(--hw-text); margin:0 0 24px; font-family:inherit; width:100%; min-width:0; max-width:100%; container-type:inline-size; }
.hw-configuration * { box-sizing:border-box; }
.hw-configuration fieldset { border:0; padding:0; margin:0 0 26px; min-width:0; }
.hw-configuration fieldset:last-child { margin-bottom:0; }
.hw-configuration legend { color:var(--hw-text); font:inherit; font-size:17px; font-weight:600; margin:0 0 14px; padding:0; }
.hw-bay-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.hw-choice { position:relative; display:flex !important; align-items:flex-start; gap:10px; padding:16px !important; margin:0 !important; min-height:104px; border:1px solid var(--hw-line); border-radius:7px; background:var(--hw-clear); color:var(--hw-text); cursor:pointer; }
.hw-choice:has(input:checked) { border-color:var(--hw-accent); box-shadow:inset 0 0 0 1px var(--hw-accent); background:var(--hw-panel); }
.hw-choice:hover { border-color:var(--hw-accent); }
.hw-choice:has(input:disabled) { opacity:.45; cursor:not-allowed; }
.hw-choice input { appearance:auto !important; position:static !important; opacity:1 !important; width:18px !important; height:18px !important; margin:3px 0 0 !important; flex:0 0 18px; accent-color:var(--hw-accent); }
.hw-choice input:focus-visible { outline:3px solid var(--hw-accent); outline-offset:4px; }
.hw-choice-copy { display:block; min-width:0; }
.hw-choice-title { display:block; font-size:15px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.hw-choice-price { display:block; font-size:21px; font-weight:600; line-height:1.3; margin-top:12px; }
.hw-color-choices { display:flex; gap:12px; flex-wrap:wrap; }
.hw-color-choice { min-height:54px; align-items:center; padding:12px 16px !important; }
.hw-swatch { display:block; width:28px; height:22px; flex:0 0 28px; border:1px solid var(--hw-muted); border-radius:4px; }
.hw-swatch-black { background:var(--hw-black); }
.hw-swatch-white { background:var(--hw-white); }
.hw-swatch-blue { background:var(--hw-blue); }
.hw-choice-price[hidden] { display:none; }
.hw-configuration .hw-compact-choice { min-height:62px; align-items:center; }
.hw-number-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.hw-number-choices .hw-choice { min-height:54px; padding:12px !important; justify-content:center; align-items:center; gap:8px; }
.hw-number-choices .hw-choice-title { font-size:16px; }
@container(max-width:220px) { .hw-number-choices { grid-template-columns:minmax(0,1fr); } }
.hw-dropdown-label { display:block !important; color:var(--hw-text); font-size:17px; font-weight:600; margin-bottom:14px; line-height:1.4; }
.hw-configuration select.hw-dropdown { display:block; width:100% !important; max-width:100%; min-height:52px; height:auto; padding:12px 38px 12px 14px !important; background-color:var(--hw-panel) !important; color:var(--hw-text) !important; border:1px solid var(--hw-line) !important; border-radius:7px; font-family:inherit; font-size:16px !important; line-height:1.5; box-sizing:border-box; }
.hw-dropdown option { color:var(--hw-text); background:var(--hw-panel); }
.hw-dropdown:focus-visible { outline:2px solid var(--hw-accent); outline-offset:3px; }
@media(max-width:390px) { .hw-bay-choices { grid-template-columns:minmax(0,1fr); } .hw-bay-choices .hw-choice { min-height:74px; align-items:center; } .hw-bay-choices .hw-choice-copy { display:flex; flex:1; align-items:center; justify-content:space-between; gap:12px; } .hw-bay-choices .hw-choice-price { font-size:19px; margin:0; white-space:nowrap; } }
/* Respond to the Elementor column width as well as the device width. */
@container(max-width:460px) {
  .hw-bay-choices { grid-template-columns:minmax(0,1fr); }
  .hw-bay-choices .hw-choice { min-height:76px; align-items:center; padding:16px !important; }
  .hw-bay-choices .hw-choice-copy { display:flex; flex:1; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 12px; }
  .hw-bay-choices .hw-choice-title { font-size:16px; }
  .hw-bay-choices .hw-choice-price { font-size:20px; margin:0; white-space:nowrap; }
  .hw-color-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .hw-color-choice { justify-content:flex-start; padding:12px !important; min-height:56px; gap:8px; }
  .hw-color-choice .hw-choice-title { font-size:16px; }
  .hw-configuration fieldset { margin-bottom:24px; }
}
@container(max-width:270px) {
  .hw-color-choices { grid-template-columns:minmax(0,1fr); }
  .hw-bay-choices .hw-choice-copy { flex-direction:column; align-items:flex-start; }
}
@media (hover:none) { .hw-choice:hover { border-color:var(--hw-line); } .hw-choice:has(input:checked):hover { border-color:var(--hw-accent); } }

/* Style the original Advanced Product Fields controls; do not duplicate them. */
:is(form.hw-product-ui, body.single-product) .wapf-wrapper { max-width:100%; container-type:inline-size; }
:is(form.hw-product-ui, body.single-product) .wapf-field-container { box-sizing:border-box; max-width:100%; padding-bottom:24px; }
:is(form.hw-product-ui, body.single-product) .wapf-field-container.wapf-hide { display:none !important; }
:is(form.hw-product-ui, body.single-product) .wapf-field-label { margin-bottom:14px; color:var(--hw-text); font-size:17px; font-weight:600; line-height:1.4; }
:is(form.hw-product-ui, body.single-product) .wapf-radios,
:is(form.hw-product-ui, body.single-product) .wapf-checkboxes { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr)); gap:12px; width:100%; }
:is(form.hw-product-ui, body.single-product) .wapf-radio,
:is(form.hw-product-ui, body.single-product) .wapf-checkbox { width:auto !important; min-width:0; margin:0 !important; padding:0 !important; border:0 !important; background:var(--hw-clear) !important; box-shadow:none !important; }
:is(form.hw-product-ui, body.single-product) .wapf-radio::after,
:is(form.hw-product-ui, body.single-product) .wapf-checkbox::after { content:none !important; }
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label,
:is(form.hw-product-ui, body.single-product) .wapf-checkboxes .wapf-input-label { display:flex !important; gap:10px; align-items:flex-start; width:100%; min-height:66px; padding:16px !important; margin:0 !important; border:1px solid var(--hw-line) !important; border-radius:7px; background:var(--hw-clear) !important; color:var(--hw-text) !important; box-sizing:border-box; cursor:pointer; text-align:left !important; }
:is(form.hw-product-ui, body.single-product) .wapf-input-label:has(input:checked) { border-color:var(--hw-accent) !important; box-shadow:inset 0 0 0 1px var(--hw-accent) !important; background:var(--hw-panel) !important; }
:is(form.hw-product-ui, body.single-product) .wapf-input-label:has(input:disabled) { opacity:.5; cursor:not-allowed; }
:is(form.hw-product-ui, body.single-product) .wapf-input-label .wapf-custom { display:none !important; }
:is(form.hw-product-ui, body.single-product) .wapf-input-label input[type="radio"],
:is(form.hw-product-ui, body.single-product) .wapf-input-label input[type="checkbox"] { appearance:auto !important; position:static !important; opacity:1 !important; clip:auto !important; clip-path:none !important; display:block !important; width:18px !important; height:18px !important; margin:2px 0 0 !important; flex:0 0 18px; accent-color:var(--hw-accent); }
:is(form.hw-product-ui, body.single-product) .wapf-label-text { font-size:15px; font-weight:600; line-height:1.45; min-width:0; overflow-wrap:anywhere; }
:is(form.hw-product-ui, body.single-product) .wapf-pricing-hint { display:block; width:auto !important; margin:8px 0 0 !important; padding:0 !important; border:0 !important; background:var(--hw-clear) !important; color:var(--hw-muted) !important; font-size:14px !important; line-height:1.4; font-weight:400; }
:is(form.hw-product-ui, body.single-product) .wapf-field-input select,
:is(form.hw-product-ui, body.single-product) .wapf-field-input input[type="number"] { background-color:var(--hw-panel) !important; color:var(--hw-text) !important; border:1px solid var(--hw-line) !important; border-radius:7px; box-sizing:border-box; width:100% !important; max-width:100%; height:auto; min-height:52px; padding:12px 14px !important; font:inherit; font-size:16px !important; line-height:1.5; }
:is(form.hw-product-ui, body.single-product) .wapf-field-input select { padding-right:36px !important; }
:is(form.hw-product-ui, body.single-product) .wapf-field-input select option { background:var(--hw-panel); color:var(--hw-text); }
:is(form.hw-product-ui, body.single-product) .hw-apf-stepper { display:flex; width:100%; max-width:200px; min-width:0; gap:0; align-items:stretch; }
:is(form.hw-product-ui, body.single-product) .hw-apf-stepper input[type="number"] { min-width:0; border-radius:0; text-align:center; appearance:textfield; }
:is(form.hw-product-ui, body.single-product) .hw-apf-stepper input::-webkit-inner-spin-button,
:is(form.hw-product-ui, body.single-product) .hw-apf-stepper input::-webkit-outer-spin-button { appearance:none; margin:0; }
:is(form.hw-product-ui, body.single-product) .hw-apf-step-button { width:48px; min-width:48px; min-height:52px; margin:0 !important; padding:0 !important; border:1px solid var(--hw-line) !important; border-radius:7px 0 0 7px; background:var(--hw-panel) !important; color:var(--hw-text) !important; font:inherit; font-size:20px; box-shadow:none; cursor:pointer; }
:is(form.hw-product-ui, body.single-product) .hw-apf-step-button:last-child { border-radius:0 7px 7px 0; }
:is(form.hw-product-ui, body.single-product) .hw-apf-step-button:disabled { opacity:.45; cursor:not-allowed; }
:is(form.hw-product-ui, body.single-product) .wapf-input:focus-visible,
:is(form.hw-product-ui, body.single-product) .hw-apf-step-button:focus-visible { outline:3px solid var(--hw-accent); outline-offset:3px; }
:is(form.hw-product-ui, body.single-product) .wapf-field-container.warranty .wapf-field-label,
:is(form.hw-product-ui, body.single-product) .wapf-field-container.warranty .wapf-field-label label { background:var(--hw-clear) !important; border:0 !important; padding:0 !important; color:var(--hw-muted) !important; font-size:14px; font-weight:400; }
@container(max-width:380px) {
  :is(form.hw-product-ui, body.single-product) .wapf-radios,
  :is(form.hw-product-ui, body.single-product) .wapf-checkboxes { grid-template-columns:minmax(0,1fr); }
  :is(form.hw-product-ui, body.single-product) .wapf-label-text { font-size:16px; }
}


:is(form.hw-product-ui, body.single-product) .wapf-radios > .wapf-radio, :is(form.hw-product-ui, body.single-product) .wapf-checkboxes > .wapf-checkbox { display:flex; align-items:stretch; }
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label, :is(form.hw-product-ui, body.single-product) .wapf-checkboxes .wapf-input-label { box-sizing:border-box; width:100%; height:100%; }

/* Keep APF's theme rules from stacking the radio above its copy. */
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label,
:is(form.hw-product-ui, body.single-product) .wapf-checkboxes .wapf-input-label {
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:10px !important;
  min-height:66px !important;
  height:100% !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-input-label .wapf-label-text {
  display:block !important;
  flex:1 1 0 !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-input-label input[type="radio"],
:is(form.hw-product-ui, body.single-product) .wapf-input-label input[type="checkbox"] {
  align-self:flex-start !important;
  float:none !important;
  max-width:18px !important;
  min-width:18px !important;
  padding:0 !important;
}

:is(form.hw-product-ui, body.single-product) .wapf-input-label::after { content:none !important; }

/* Compact optional choices while preserving the native field controls. */
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label,
:is(form.hw-product-ui, body.single-product) .wapf-checkboxes .wapf-input-label {
  padding:12px 14px !important;
  min-height:56px !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-pricing-hint {
  color:#cbd8e8 !important;
  font-weight:500;
  margin-top:6px !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-radios:not(:has(> .wapf-radio ~ .wapf-radio ~ .wapf-radio)) .wapf-label-text {
  display:flex !important;
  flex-direction:row !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  gap:4px 8px !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-radios:not(:has(> .wapf-radio ~ .wapf-radio ~ .wapf-radio)) .wapf-pricing-hint {
  margin:0 !important;
}
@container(max-width:520px) {
  :is(form.hw-product-ui, body.single-product) .wapf-radios:has(> .wapf-radio ~ .wapf-radio ~ .wapf-radio) {
    grid-template-columns:minmax(0,1fr);
  }
}
/* Fallback also follows the device width in older column layouts. */
@media(max-width:540px) {
  :is(form.hw-product-ui, body.single-product) .wapf-radios:has(> .wapf-radio ~ .wapf-radio ~ .wapf-radio) {
    grid-template-columns:minmax(0,1fr);
  }
}
/* Compact extras: content-sized choices that wrap within the product column. */
:is(form.hw-selector-ready, body.single-product) .woocommerce-variation-price {
  display:none !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-field-container {
  padding-bottom:18px;
}
:is(form.hw-product-ui, body.single-product) .wapf-field-label {
  margin-bottom:10px;
}
:is(form.hw-product-ui, body.single-product) .wapf-radios,
:is(form.hw-product-ui, body.single-product) .wapf-checkboxes {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch;
  gap:8px !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-radio,
:is(form.hw-product-ui, body.single-product) .wapf-checkbox {
  flex:0 1 auto !important;
  max-width:100%;
}
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label,
:is(form.hw-product-ui, body.single-product) .wapf-checkboxes .wapf-input-label {
  width:auto !important;
  min-width:0 !important;
  min-height:46px !important;
  padding:11px 14px !important;
  gap:8px !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-input-label .wapf-label-text {
  display:flex !important;
  flex:0 1 auto !important;
  flex-direction:row !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  gap:4px 8px !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-input-label .wapf-pricing-hint {
  margin:0 !important;
}
/* Two-column short fields; long choices retain the complete row. */
:is(form.hw-product-ui, body.single-product) .hw-apf-grid {
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  column-gap:20px;
  row-gap:16px;
}
:is(form.hw-product-ui, body.single-product) .hw-apf-grid > .wapf-field-container {
  width:100% !important;
  min-width:0;
  margin:0 !important;
  padding:0 !important;
  float:none;
}
:is(form.hw-product-ui, body.single-product) .hw-apf-grid > input[type="hidden"] { display:none; }
@container(min-width:480px) {
  :is(form.hw-product-ui, body.single-product) .hw-apf-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  :is(form.hw-product-ui, body.single-product) .hw-apf-grid > .wapf-field-container { grid-column:1 / -1; }
  :is(form.hw-product-ui, body.single-product) .hw-apf-grid > .hw-apf-short { grid-column:auto; }
}
@media(max-width:600px) {
  :is(form.hw-product-ui, body.single-product) .hw-apf-grid { grid-template-columns:minmax(0,1fr); }
  :is(form.hw-product-ui, body.single-product) .hw-apf-grid > .hw-apf-short { grid-column:1 / -1; }
}
form.hw-product-ui { container-type:inline-size; }
/* Preserve the white product price after WooCommerce replaces its markup. */
.hw-selected-price,
.hw-selected-price .price,
.hw-selected-price .woocommerce-Price-amount,
.hw-selected-price .woocommerce-Price-currencySymbol,
.hw-selected-price bdi {
  color:#fff !important;
}
/* Keep each title visually separated from the preceding option group. */
:is(form.hw-product-ui, body.single-product) .wapf-field-container {
  box-sizing:border-box;
  padding-bottom:0 !important;
  margin-bottom:22px !important;
}
:is(form.hw-product-ui, body.single-product) .hw-apf-grid {
  row-gap:22px !important;
}
:is(form.hw-product-ui, body.single-product) .hw-apf-grid > .wapf-field-container {
  margin-bottom:0 !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-field-label {
  margin-top:0 !important;
  margin-bottom:10px !important;
}
/* APF may render each option as a separate sibling field group. */
:is(form.hw-product-ui, body.single-product) .wapf-wrapper > .wapf-field-group:has(> .wapf-field-container:not(.wapf-hide)) {
  margin-bottom:22px !important;
}
/* Size APF dropdowns to their options instead of filling the product column. */
:is(form.hw-product-ui, body.single-product) .wapf-field-input select {
  width:auto !important;

  min-width:110px;
  max-width:100% !important;
  min-height:46px;
  padding:10px 38px 10px 14px !important;
}

/* Align the purchase controls without changing WooCommerce cart behavior. */
body.single-product form.cart .woocommerce-variation-add-to-cart,
body.single-product form.cart:not(.variations_form) {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  column-gap:12px;
  row-gap:16px;
}
body.single-product form.cart:not(.variations_form) > .wapf-wrapper,
body.single-product form.cart:not(.variations_form) > .wapf-product-totals {
  flex-basis:100%;
}
body.single-product form.cart .quantity {
  display:flex !important;
  align-items:center !important;
  flex:0 0 130px;
  width:130px !important;
  height:48px !important;
  margin:0 !important;
  border:1px solid var(--hw-line,#3b4a60) !important;
  border-radius:7px !important;
  background:#10263d;
  overflow:hidden;
}
body.single-product form.cart .quantity input.qty {
  flex:1 1 auto;
  min-width:0;
  width:48px !important;
  height:46px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  text-align:center;
  font-size:16px;
}
body.single-product form.cart .quantity .ct-increase,
body.single-product form.cart .quantity .ct-decrease {
  position:static !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 40px;
  width:40px !important;
  height:46px !important;
  color:#fff !important;
}
body.single-product form.cart .quantity .ct-decrease { order:-1; }
body.single-product form.cart .single_add_to_cart_button {
  flex:1 1 160px;
  width:auto !important;
  min-height:48px !important;
  margin:0 !important;
  padding:12px 20px !important;
  border-radius:7px !important;
  line-height:1.4;
}
/* Blocksy uses a nested cart-actions row and emits + before the quantity input. */
body.single-product form.cart .ct-cart-actions {
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:12px !important;
  width:100%;
  flex-basis:100%;
}
body.single-product form.cart .ct-cart-actions > .quantity {
  flex:0 0 130px !important;
}
body.single-product form.cart .ct-cart-actions > .single_add_to_cart_button {
  flex:1 1 160px !important;
  width:auto !important;
  max-width:none !important;
}
body.single-product form.cart .quantity .ct-decrease { order:0 !important; }
body.single-product form.cart .quantity input.qty { order:1 !important; }
body.single-product form.cart .quantity .ct-increase { order:2 !important; }
/* Custom configuration CTA, separate from the purchase controls. */
.hw-custom-quote {
  box-sizing:border-box;
  width:100%;
  margin:28px 0 0;
  padding:24px 0 0;
  border-top:1px solid #3b4a60;
  color:#f3f6fc;
}
.hw-custom-quote h3 {
  margin:0 0 12px !important;
  color:#fff !important;
  font-family:inherit;
  font-size:20px;
  font-weight:600;
  line-height:1.35;
}
.hw-custom-quote p {
  margin:0 0 20px !important;
  color:#cbd8e8;
  font-size:15px;
  line-height:1.65;
}
.hw-custom-quote .hw-custom-quote-link {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:100%;
  min-height:50px;
  padding:12px 16px;
  border:1px solid #36c5f4;
  border-radius:7px;
  background:transparent;
  color:#36c5f4 !important;
  font-size:16px;
  font-weight:600;
  line-height:1.4;
  text-align:center;
  text-decoration:none !important;
}
.hw-custom-quote .hw-custom-quote-link:hover { background:#10263d; }
.hw-custom-quote .hw-custom-quote-link:focus-visible { outline:3px solid #36c5f4; outline-offset:4px; }
@media(max-width:400px) {
  .hw-custom-quote h3 { font-size:18px; }
  .hw-custom-quote .hw-custom-quote-link { font-size:15px; gap:8px; }
}
/* Clear interaction feedback on additional-quantity controls. */
@media(hover:hover) {
  :is(form.hw-product-ui, body.single-product) .hw-apf-step-button:not(:disabled):hover {
    background:#36c5f4 !important;
    border-color:#36c5f4 !important;
    color:#071222 !important;
  }
}
:is(form.hw-product-ui, body.single-product) .hw-apf-step-button:not(:disabled):focus-visible {
  background:#36c5f4 !important;
  border-color:#36c5f4 !important;
  color:#071222 !important;
}
:is(form.hw-product-ui, body.single-product) .hw-apf-step-button:not(:disabled):active {
  background:#24a9d5 !important;
  color:#071222 !important;
}

/* Visually hide radios while retaining native keyboard and screen-reader behavior. */
.hw-configuration .hw-choice input[type="radio"],
:is(form.hw-product-ui, body.single-product) .wapf-input-label input[type="radio"] {
  position:absolute !important;
  width:1px !important;
  min-width:1px !important;
  max-width:1px !important;
  height:1px !important;
  margin:-1px !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
}
.hw-configuration .hw-choice,
:is(form.hw-product-ui, body.single-product) .wapf-input-label { position:relative; }
.hw-configuration .hw-choice:has(input[type="radio"]:focus-visible),
:is(form.hw-product-ui, body.single-product) .wapf-input-label:has(input[type="radio"]:focus-visible) {
  outline:3px solid #36c5f4;
  outline-offset:3px;
}

/* Shared visual scale for attribute choices and original APF radio buttons. */
.hw-configuration .hw-compact-choice,
.hw-configuration .hw-number-choices .hw-choice,
.hw-configuration .hw-color-choice,
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label {
  box-sizing:border-box;
  min-height:54px !important;
  padding:12px 16px !important;
  border-radius:7px !important;
  gap:10px !important;
  align-items:center !important;
}
.hw-configuration .hw-choice-title,
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-label-text {
  font-family:inherit;
  font-size:16px !important;
  font-weight:600 !important;
  line-height:1.4 !important;
  color:var(--hw-text) !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-field-label,
:is(form.hw-product-ui, body.single-product) .wapf-field-label label {
  font-family:inherit;
  font-size:17px !important;
  font-weight:600 !important;
  line-height:1.4 !important;
}
:is(form.hw-product-ui, body.single-product) .wapf-field-label {
  margin-bottom:14px !important;
}
/* Warranty copy is supporting text, rather than an input-group title. */
:is(form.hw-product-ui, body.single-product) .wapf-field-container.warranty .wapf-field-label,
:is(form.hw-product-ui, body.single-product) .wapf-field-container.warranty .wapf-field-label label {
  font-size:14px !important;
  font-weight:400 !important;
}
@media(hover:hover) {
  :is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label:not(:has(input:disabled)):hover {
    border-color:var(--hw-accent) !important;
  }
}
:is(form.hw-product-ui, body.single-product) .wapf-radios .wapf-input-label:has(input:disabled) {
  opacity:.45;
}
