.account-row .woocommerce-MyAccount-navigation ul li.is-active a {
  background-color: var(--gg-red);
}

.account-row .woocommerce-MyAccount-navigation {
  border: 2px solid var(--gg-red) !important;
}

.account-row .woocommerce-MyAccount-navigation ul li a:hover {
  background-color: var(--gg-red) !important;
}

.account-row .woocommerce-MyAccount-navigation ul li a {
  color: #000;
}

.account-row .woocommerce-MyAccount-content .account-row main thead th a {
  color: #fff;
}

.account-row .woocommerce-MyAccount-content {
    width: 72%;
    border: 2px solid var(--gg-red);
    border-radius: var(--gg-radius-panel);
}
.account-row main table thead th {
  background-color: var(--gg-red);
  color: #fff !important;
}

.account-row .page-title {
  border-color: var(--gg-red);
}
h1.acc_page_ttl {
    margin: 0px;
}

.account-row tbody th,
.account-row tbody td {
  background: transparent !important;
}

.account-row tbody th a {
  color: #000 !important;
}

.account-row table .woocommerce-orders-table__cell-order-actions {
  text-align: center;
}

.account-row
  table
  .woocommerce-orders-table__cell-order-actions
  a.woocommerce-button.button.view {
  background-color: var(--gg-red);
  color: #fff;
  border: 1px solid var(--gg-red);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: normal;
  padding: 9px 30px;
  padding-bottom: 4px;
  font-size: 13px;
}

.account-row
  table
  .woocommerce-orders-table__cell-order-actions
  a.woocommerce-button.button.view:hover {
  background-color: #fff;
  color: var(--gg-red);
}

.account-row .woocommerce table.my_account_orders td,
.woocommerce table.my_account_orders th {
  padding: 12px 8px;
  vertical-align: middle;
  text-align: center;
}

.page-id-4458 .page-title {
    border-bottom: 2px solid var(--gg-red) !important;
    display: none;
}

/* new page  */
.account-row button#b2bking_myaccount_make_inquiry_button:hover {
  background-color: #fff;
  color: var(--gg-red);
}

.account-row button#b2bking_myaccount_make_inquiry_button {
  background-color: var(--gg-red);
  border: 1px solid var(--gg-red);
}

.account-row button#b2bking_myaccount_make_inquiry_button:hover svg path {
  fill: var(--gg-red);
}

.account-row
  .b2bking_myaccount_individual_conversation_container
  .b2bking_myaccount_individual_conversation_top {
  background-color: var(--gg-red);
  color: #fff;
  font-weight: bold;
}

.account-row button.b2bking_myaccount_view_conversation_button {
  background-color: transparent;
  border: 1px solid var(--gg-red);
  color: var(--gg-red);
  box-shadow: none;
}

.account-row button.b2bking_myaccount_view_conversation_button svg path {
  fill: var(--gg-red);
}

.account-row button.b2bking_myaccount_view_conversation_button:hover {
  background-color: var(--gg-red);
  color: #fff;
}

.account-row button.b2bking_myaccount_view_conversation_button:hover svg path {
  fill: #fff;
}

.account-row .b2bking_myaccount_individual_conversation_container {
  background-color: #fff;
  border: 1px solid var(--gg-red);
  box-shadow: unset !important;
}

.account-row .b2bking_myaccount_individual_conversation_content_item {
  color: #000;
  text-align: center;
  font-size: 15px;
  white-space: nowrap;
}

.account-row div#b2bking_myaccount_conversations_title {
  color: #000 !important;
}

.account-row .b2bking_myaccount_individual_conversation_top_item {
  flex: 1;
  text-align: center;
}

/* page 3 */
.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_add {
  background-color: var(--gg-red);
  border: 1px solid var(--gg-red);
}

.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_add:hover {
  background-color: #fff;
  color: var(--gg-red);
}

.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_add:hover
  svg
  path {
  fill: var(--gg-red);
}

.account-row .b2bking_myaccount_individual_offer_bottom_line_add button {
  box-shadow: unset !important;
}

.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_download {
  background-color: #fff !important;
  border: 1px solid var(--gg-red);
  color: var(--gg-red);
}

.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_download
  svg
  path {
  fill: var(--gg-red);
}

.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_download:hover {
  background-color: var(--gg-red) !important;
  color: #fff;
}
.account-row
  button.b2bking_myaccount_individual_offer_bottom_line_button.b2bking_offer_download:hover
  svg
  path {
  fill: #fff;
}

.account-row .b2bking_myaccount_individual_offer_top {
  background-color: var(--gg-red);
  color: #fff;
  font-weight: bold;
}

.account-row .b2bking_myaccount_individual_offer_container svg path {
  fill: #fff;
}

.account-row .b2bking_myaccount_individual_offer_container {
  background-color: #fff;
  border: 1px solid var(--gg-red);
  box-shadow: unset;
}

.account-row .b2bking_myaccount_individual_offer_header_line > div {
  color: #000;
}

.account-row .b2bking_myaccount_individual_offer_header_line {
  padding: 10px 0;
  margin: 0 !important;
}

.account-row .b2bking_myaccount_individual_offer_element_line_item span,
.account-row .b2bking_myaccount_individual_offer_element_line_item {
  color: #000;
  font-size: 15px;
}

.account-row .b2bking_myaccount_individual_offer_bottom_line_total {
  color: #000;
}

.account-row .b2bking_myaccount_individual_offer_custom_text {
  font-size: 15px;
  color: #000;
}
/*17 june 2025 start*/
/* th.woocommerce-product-attributes-item__label {
    background: red !important;
} */
th.woocommerce-product-attributes-item__label {
  border-color: red !important;
  background: #fff;
  color: red;
  border-top: 1px solid !important;
  border-bottom: 1px solid !important;
}
.shop_attributes tbody {
  border: 1px solid red !important;
  border-right: 1px solid !important;
  border-left: 1px solid !important;
}
td.woocommerce-product-attributes-item__value {
  border-right: 1px solid red !important;
}
.textwidget a {
  color: #fff;
}
.mkl_pc_viewer h3.product-name {
  text-align: center;
}
.lead-time {
  display: flex;
  gap: 10px;
  padding-bottom: 10px;
}
.content-area h1 {
  margin-bottom: 15px;
    padding-bottom: 10px;
}
.woocommerce-product-details__short-description {
  padding-bottom: 15px;
}
.mkl_pc_viewer header {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.lead-time.ld_time_archive {
  font-size: 15px;
  gap: 5px;
}
.lead-time.ld_time_archive {
  color: #000;
}
.quote_form .input_class {
  padding-bottom: 15px;
  display: flex;
}
.prdct_serch a {
  background: red;
  color: #fff;
  font-size: 16px;
  border-radius: var(--gg-radius-button);
  padding: 12px 40px;
}
.prdct_serch {
  padding-top: 15px;
  padding-left: 160px;
}

/*17 june 2025 end*/
.show {
  display: block;
}
.prdct_serch a:hover {
  color: #fff !important;
  text-decoration: none !important;
}
.prdct_serch a:focus {
  color: #fff !important;
  text-decoration: none !important;
}
/* 	.input_class label {
		display: block;
	} */
.quote-product-item {
  width: 100% !important;
  text-align: center !important;
  box-shadow: 0 4px 10px rgba(204, 0, 0, 0.1);
  border-radius: var(--gg-radius-panel);
  height: 100%;
}
.prd_ttl {
  color: red;
}
.quote-product-item .lead-time.ld_time_archive {
  text-align: center !important;
  display: block;
  padding-bottom: 5px;
}
.quote_form .input_class label {
  width: 160px;
  display: flex;
  align-items: center;
  gap: 7px;
}
span.qt_count {
  background: #000000;
  color: #fff;
  font-size: 14px;
  padding: 5px 5px;
  border-radius: 100%;
}
.quote_form h3 {
  margin-bottom: 25px !important;
  font-weight: bold !important;
}
.input_class input {
  width: 60%;
  border-radius: var(--gg-radius-input);
  border: 1px solid #000;
  font-size: 14px;
  padding-left: 16px;
  padding-top: 12px;
  padding-bottom: 12px;
}
.input_class input::placeholder {
  color: #000;
}
.input_class select.quote_dropdown {
  width: 60% !important;
  padding: 12px !important;
  border-radius: var(--gg-radius-input);
  background: #fff;
  cursor: pointer;
  font-size: 14px;
  border-color: #000;
}
.qte_rslt {
  padding-top: 35px;
}
h3.srch_rslt {
  text-align: center;
  font-weight: 900 !important;
}
/* Quote Table Styles */
.quote-table {
  width: 100%;
  border-collapse: collapse;
}

/* Table Row */
.quote-row {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #ccc;
  cursor: pointer;
  padding: 10px 0;
  background: #f9f9f9;
}

.quote-row:hover {
  background: #efefef;
}

/* Table Cell */
.quote-cell {
  flex: 1;
  padding: 5px 10px;
  word-break: break-word;
}

/* First Cell (No. Column) */
.quote-cell:first-child {
  flex: 0 0 60px;
  text-align: center;
}

/* Heading Row */
.quote-heading {
  font-weight: bold;
  background: #e0e0e0;
}

/* Expandable Details Section */
.quote-details {
  display: none;
  background: #fff;
  padding: 15px;
  border: 1px solid var(--gg-silver);
  border-top: none;
  margin-bottom: 10px;
}

/* Pagination Styles */
.quote-pagination {
  margin-top: 20px;
  text-align: center;
}

.quote-pagination a,
.quote-pagination span {
  padding: 8px 12px;
  margin: 0 2px;
  border: 1px solid var(--gg-silver);
  text-decoration: none;
  color: #333;
}

.quote-pagination .current {
  background: var(--gg-red);
  color: #fff;
  border-color: var(--gg-red);
}
h2.ship_ttl {
  font-size: 25px;
  padding-top: 30px;
}

#myInput {
  box-sizing: border-box;
  font-size: 14px;
  padding: 12px 20px 12px 16px;
  border: 1px solid #000;
  width: 100%;
}

#myInput:focus {
  outline: 3px solid #ddd;
}

.dropdown {
  position: relative;
  display: inline-block;
  width: 250px;
}

.dropdown-content {
  display: none;
  background-color: #f6f6f6;
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid var(--gg-silver);
  position: absolute;
  width: 100%;
  z-index: 1;
}

.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown-content a:hover {
  background-color: #ddd;
}

.dropdown-content.show {
  display: block;
}

.qte_drp_dv {
  width: 60%;
}
.qte_drp_dv select#address_selector {
  width: 100% !important;
}
#new_address_container .address_fields {
  display: flex;
  flex-wrap: wrap;
}
#new_address_container .address_fields input[type="text"] {
  width: 50% !important;
}
select#address_select {
  width: 50%;
  padding: 4px 3px;
  cursor: pointer;
}
ul.mdl_address {
  list-style: none;
  padding: 0;
}
/*4July/2025*/
textarea#text_ar {
  width: 60%;
  border-radius: var(--gg-radius-input);
  border-color: #000;
  padding-left: 16px;
  font-size: 14px;
  color: #000;
  padding-top: 11px;
}
textarea#text_ar::placeholder {
  color: #000 !important;
}
textarea#b2bking_request_custom_quote_textarea {
  display: none !important;
}
span#b2bking_request_custom_quote_textarea_abovetext {
  display: none !important;
}
.quote-details td strong {
  font-family: var(--gg-font-body);
}
.quote-details td {
  font-family: var(--gg-font-body) !important;
}
.edit-shipping-form input {
  width: 30%;
  padding: 7px 5px;
  margin-bottom: 6px;
}
p.success_msg {
  padding-bottom: 25px;
}
.prd_catalog span.qt_count {
  padding: 5px 5px;
  margin-top: 5px;
}
span.ad_adrs {
  padding: 1px 8px 1px 9px;
  background: black;
  color: #fff;
  font-size: 16px;
  border-radius: 21px;
}
span.plss_btn {
  display: flex;
  align-items: center;
  padding-left: 8px;
}
.quote_form .input_class.prd_catalog label {
  align-items: start;
}
.quote_form .input_class.msg_inpt label {
  align-items: center;
}
span.ad_adrs {
  padding: 1px 8px 1px 9px;
  background: black;
  color: #fff;
  font-size: 16px;
  border-radius: 21px;
  cursor: pointer;
}
#addAddressModal select {
  border: 1px solid #000;
  font-size: 14px;
  padding-left: 16px;
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: var(--gg-radius-input);
  background: #fff !important;
}
/*4july2025 End*/

.quote_products img {
  width: 75%;
}

body.syd-modal-opened .mkl_pc .mkl_pc_container::before {
  display: none !important;
}

/*9 sep 2025 start*/
.menu-item a {
  color: #fff !important;
}
a.go_to_qts {
  border: none;
  border-radius: 0;
  padding: 0.5em 1em;
  background-color: var(--gg-red);
  color: #fff;
  text-transform: uppercase;
  display: table;
  font-weight: 700;
  margin-top: 10px;
  font-style: normal;
}
/*9 sep 2025 end*/
/* 12- nov-2025 start*/
.custom-tabs {
  display: flex;
  border: 1px solid #e91d2b13;
  border-radius: var(--gg-radius-panel);
  overflow: hidden;
  margin: 40px auto;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  font-family: var(--gg-font-body);
}

.tab-headings {
  flex: 0 0 250px;
  display: flex;
  flex-direction: column;
  background: #fff;
  border-right: 1px solid #eee;
}

.tab-headings button,
.tab-headings a.tab-link {
  border: none;
  background: none;
  padding: 18px 20px;
  text-align: left;
  font-weight: 600;
  font-size: 15px;
  color: #000;
  border-left: 4px solid transparent;
  cursor: pointer;
  transition: color var(--gg-motion), background-color var(--gg-motion), border-color var(--gg-motion), box-shadow var(--gg-motion);
  display: block;
  text-decoration: none;
  border-bottom: 0.5px solid #e91d2b13;
}

.tab-headings button:hover,
.tab-headings a.tab-link:hover {
  background: #f0f0f0;
}

/* active tab button style */
.tab-headings button[aria-selected="true"] {
  color: var(--gg-red);
  background: #fff;
  border-left-color: var(--gg-red);
}

/* arrow for general links (removed later for owner manual) */
.tab-headings a.tab-link::after {
  content: "↗";
  float: right;
  font-size: 1rem;
  opacity: 0.6;
}

/* remove arrow for the owner manual */
.tab-headings a.tab-link.no-arrow::after {
  content: none;
}

.tab-content {
  flex: 1;
  padding: 30px;
  background: #fff;
}

.tab-content h3 {
  margin-top: 0;
  color: var(--gg-red);
}

.manual-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-top: 20px;
}

.manual-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #e91d2b13;
  padding: 15px 20px;
  border-radius: var(--gg-radius-panel);
  background: #fff;
}

.download-btn {
  background: #fff;
  border: 0.5px solid var(--gg-red);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
}

.download-btn:hover {
  background: var(--gg-red);
}

.download-btn:hover img {
  filter: brightness(0) invert(1);
}

/* Active tabpanel */
[role="tabpanel"] {
  display: none;
}

[role="tabpanel"].active {
  display: block;
}

.tab-headings a.tab-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tab-headings a.tab-link::after {
  content: "↗";
  font-size: 1rem;
  opacity: 0.6;
  margin-left: 8px;
  line-height: 1;
}
.custom-tabs {
  margin-top: 24px;
}
.manual-card p {
  margin: 0 !important;
}
.download-btn {
    flex: 0 0 40px;
}
.custom-tabs .tab-headings button {
    text-transform: inherit;
}
/* 12 nov 2025 end */

.top-menu li {
    display: flex;
    padding: .25em 1em;
    gap: 13px;
}
div.asl_w .probox .promagnifier .innericon svg {
    fill: red !important;
}
.custom-product-search {
    position: relative;
    margin-right: 14px;
}

#product-search-input {
    width: 100%;
    padding: 10px;
    border-radius: var(--gg-radius-input);
}
p.no_prvt {
    margin: 0;
    padding: 12px;
    text-align: center;
}

    #search-results{
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    background:#fff;
    border: 1px solid var(--gg-silver);
    max-height:250px;
    overflow-y:auto;
    z-index:9999;
    display:none;
    }

    .private-product-results{
    list-style:none;
    margin:0;
    padding:0;
    }

    .private-product-results li{
    border-bottom:1px solid #eee;
    }

    .private-product-results li a{
    display:block;
    padding:10px;
    text-decoration:none;
    color:#333;
    }

    .private-product-results li a:hover{
    background:#f5f5f5;
    }

    .search-loader{
    padding:10px;
    text-align:center;
    font-size:14px;
    }

@media (max-width: 768px) {
  .menu-item a {
    color: #000 !important;
  }
  .custom-tabs {
    flex-direction: column;
  }

  .tab-headings {
    flex-direction: row;
    overflow-x: auto;
    border-right: none;
    border-bottom: 1px solid #eee;
  }

  .tab-headings button,
  .tab-headings a.tab-link {
    flex: 1;
    text-align: center;
    border-left: none;
    border-bottom: 4px solid transparent;
  }

  .tab-headings button[aria-selected="true"] {
    border-bottom-color: var(--gg-red);
  }
.tab-content{
    padding: 5px;
    margin-top: 30px;
}
.tab-headings {
         flex-direction: column;
        overflow: visible;
}
.manual-grid {
    grid-template-columns: repeat(1, 1fr);
}
}

/************  manual-product  ****************/
.acordn .accordion-item {
  border: unset;
}

.acordn .accordion-item .accordion-button {
  background: unset;
}

.acordn .accordion-item .accordion-button:focus {
  box-shadow: unset;
}

.acordn .dh-acordn .dhcolumn {
  float: unset;
  margin-left: 0;
}

.acordn .dh-acordn .dhcolumn .accordion-item .accordion-button::after {
  content: "\f067";
  font-family: fontawesome;
  background: unset;
}
.acordn
  .dh-acordn
  .dhcolumn
  .accordion-item
  .accordion-button:not(.collapsed)::after {
  content: "\f068";
}
.pdf-1800 {
  margin-top: 15px !important;
}
.acordn .dh-acordn .dhcolumn.acordn-colm {
  width: 20%;
}
button.accordion-button.collapsed {
  padding-bottom: 0px;
}

/* ── Configurator steps-progress nav ── */
/* The plugin's steps-progress.js runs $container.animate({scrollLeft: N}) to
   center the active step, and the lebolide stylesheet puts overflow-x:auto
   on ol.steps-progress. Past steps scroll off the left edge and get clipped.
   Killing the overflow makes scrollLeft a no-op: items stay in place in
   their original grid order (1..N), all visible.

   But the bar is a six-column grid of nowrap labels with 30px gaps — about
   720px for a generator — inside a toolbar column of roughly 480px. With the
   overflow gone it spilled past the column, and the configurator pane
   (overflow:auto in the plugin) grew a sideways scrollbar: the whole
   configurator scrolled right to show "5. Warranty" and "6. Summary". So the
   columns may now shrink (minmax(0, auto)), labels wrap, the gap is tighter,
   and the pane itself never scrolls sideways. The plugin measures the active
   marker from the rendered items, so it follows the new widths. */
.mkl_pc .mkl_pc_container {
  overflow-x: hidden !important;
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress--container ol.steps-progress {
  overflow: visible !important;
  overflow-x: visible !important;
  grid-auto-columns: minmax(0, auto) !important;
  --mkl_pc-steps-gap: 12px;
  width: 100% !important;
  max-width: 100%;
  align-items: end;
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress--container ol.steps-progress > li.steps-progress--item {
  min-width: 0;
  white-space: normal !important;
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress--container ol.steps-progress > li.steps-progress--item a.step-link {
  display: block;
  font-size: 14px !important;
  line-height: 1.2;
  white-space: normal !important; /* the plugin sets nowrap on the link; without this a shrunken column overlaps its neighbour */
  overflow-wrap: anywhere;
}
/* ── Configurator panel: width, type, selection ── */
/* Le Bolide splits the configurator 50/50 and sizes both columns from one
   variable. On a wide screen that gives a 1,200px option row with the
   chevron a foot from its label while the generator shrinks to a strip. A
   product configurator keeps a fixed-width options column and lets the
   viewer take the rest, so the panel is capped and the plugin's own
   660px mobile breakpoint still stacks the two. The primary colour is
   the brand red, which the plugin uses for the open row and the step
   marker. */
.mkl_pc .mkl_pc_container {
  /* The configurator is the point of the page and the photo is a reference,
     so the panel keeps the plugin's half of the screen (never under 520px).
     What is capped is the content inside it — the step bar, the option rows
     and the cart form — so a row never stretches across a wide display. */
  --mkl_pc_lebolide-toolbar-width: max(50%, 520px);
  --mkl_pc_color-primary: var(--gg-red);
}
/* Inside the panel, the content column is capped so option rows stay a
   readable width on a wide screen; the panel's own background still fills
   its half. */
.mkl_pc .mkl_pc_container .mkl_pc_toolbar nav.steps-progress--container,
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices > ul.layers,
.mkl_pc .mkl_pc_container .mkl_pc_toolbar .form.form-cart {
  max-width: 720px;
}
/* The product photo is a reference, not the subject. It is centred in a
   viewer as tall as the screen, and the plugin lets it use 100% of that
   height, so on a tall display it grew without limit (1,700px wide on a 4K
   screen). Cap it at a reference size, still centred. */
.mkl_pc .mkl_pc_container .mkl_pc_viewer .mkl_pc_layers img {
  max-width: min(88%, 820px) !important;
  max-height: min(100%, 560px) !important; /* the plugin's own max-height: 100% loads after this file */
  width: auto;
  height: auto;
  object-fit: contain;
}
/* Very wide screens: the type steps up one size with the panel. */
@media (min-width: 1800px) {
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices li.display-mode-dropdown > button.layer-item .layer-name,
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices li.display-mode-dropdown > button.layer-item .layer-name {
    font-size: 18px !important;
  }
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices li.display-mode-dropdown > button.layer-item span:not(.layer-name):not(.screen-reader-text),
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices li.display-mode-dropdown > button.layer-item span:not(.layer-name):not(.screen-reader-text) {
    font-size: 16px !important;
  }
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar span.layer-item.step-label .layer-name {
    font-size: 1.625rem;
  }
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress--container ol.steps-progress > li.steps-progress--item a.step-link,
  .mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress .steps-progress--item.active .step-link {
    font-size: 16px !important;
  }
}
/* Rows read in the body face, one line: label 16/600 ink, selected value
   15/400 steel. The headline face stays on the step title, the price and
   the primary buttons. */
.mkl_pc .mkl_pc_container .mkl_pc_toolbar button.layer-item {
  font-family: var(--gg-font-body) !important;
  font-size: 15px;
  font-weight: 400;
  color: var(--gg-steel);
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices li.display-mode-dropdown > button.layer-item .layer-name,
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices li.display-mode-dropdown > button.layer-item .layer-name {
  font-family: var(--gg-font-body) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--gg-ink) !important;
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices li.display-mode-dropdown > button.layer-item span:not(.layer-name):not(.screen-reader-text),
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices li.display-mode-dropdown > button.layer-item span:not(.layer-name):not(.screen-reader-text) {
  font-size: 15px !important;
  font-weight: 400 !important;
  color: var(--gg-steel) !important;
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar span.layer-item.step-label .layer-name {
  font-family: var(--gg-font-display);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: var(--gg-ink);
}
.mkl_pc .mkl_pc_container .mkl-pc--steps button,
.mkl_pc .mkl_pc_container button.configurator-add-to-cart,
.mkl_pc .mkl_pc_container button.add-to-quote {
  font-family: var(--gg-font-display);
  text-transform: uppercase;
  letter-spacing: .06em;
}
/* Selection state in brand colour, not the browser's blue ring. */
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices li.display-mode-dropdown.active,
.mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices li.display-mode-dropdown.active {
  --mkl_pc-dropdown-border-color: var(--gg-red);
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar button.layer-item:focus:not(:focus-visible) {
  outline: none;
}
.mkl_pc .mkl_pc_container .mkl_pc_toolbar button.layer-item:focus-visible {
  outline: 2px solid var(--gg-red);
  outline-offset: 2px;
}

/* Active step-link styling — "2. Circuit Breakers" / "3. Options" etc.
   Scope to .active so past/upcoming links stay in the default muted nav. */
.mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress .steps-progress--item.active .step-link {
  display: block;
  font-size: 14px !important;
  font-weight: 700;
  color: var(--gg-red) !important;
  opacity: 1 !important;
  padding: 10px 8px 6px;
  border-top: 2px solid var(--gg-red);
  margin-top: 8px;
}
/* The plugin only grays siblings AFTER the active step (via .active ~ a),
   so past steps keep the default bold/dark treatment. Force non-active,
   non-marker items to the same muted gray as future steps. */
.mkl_pc .mkl_pc_container .mkl_pc_toolbar .steps-progress--container ol.steps-progress > li.steps-progress--item:not(.active):not(.steps-progress--active-marker) a.step-link {
  color: #B7B7B7 !important;
  font-weight: normal !important;
}

/* ============================================================
   Gillette Power Quote sub-brand banner.
   Horizontal full-width strip beneath the parent top nav.
   Hooked via woocommerce_before_main_content so it sits OUTSIDE
   the .account-row flex container (would otherwise be squeezed
   into the navigation column). Visual styling deliberately echoes
   the parent's slab-serif "GILLETTE GENERATORS" logo treatment.
   ============================================================ */
/* Parent .account-row is a flex row (nav | content). Force it to wrap so the
   banner (rendered as the first child via woocommerce_before_account_navigation)
   can occupy a full-width row on top instead of being squeezed into the nav
   column. Harmless on non-account pages where .account-row doesn't apply. */
.account-row { flex-wrap: wrap !important; }

.gillette-power-quote-banner {
  flex: 0 0 100%;
  width: 100%;
  background: #ffffff;
  padding: clamp(10px, 1.6vw, 16px) 20px clamp(8px, 1.2vw, 12px);
  text-align: center;
  border-bottom: 2px solid var(--gg-red);
  /* Injected via output-buffer directly after the parent theme's </header>,
     so it sits flush below the black top nav. No negative margin needed
     because the banner is no longer competing with parent-container padding. */
  margin: 0 0 24px;
  box-sizing: border-box;
}
.gillette-power-quote-banner__inner {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}
.gillette-power-quote-banner__title {
  margin: 0;
  /* Display face per the design system; sits under the wordmark svg. */
  font-family: var(--gg-font-display);
  font-weight: 700;               /* body of the wordmark; caps override below */
  font-size: 1.7rem;
  letter-spacing: 0.02em;         /* tighter for CamelCase */
  text-transform: none;           /* preserve CamelCase — caps must stand out */
  color: #000;
  line-height: 1.1;
}
/* Capital P and Q in "PowerQuote" — render larger and heavier (same black
   color as the rest of the wordmark; emphasis is weight + size only). */
.gillette-power-quote-banner__cap {
  font-weight: 900;
  font-size: 1.25em;
  color: #000;
  letter-spacing: 0;
}
.gillette-power-quote-banner__rule {
  display: none; /* red bottom border replaces the rule on the horizontal layout */
}
.gillette-power-quote-banner__tagline {
  margin: 5px 0 0;
  font-family: var(--gg-font-body);
  font-weight: 600;
  font-size: 0.85rem;
  color: #666;
  letter-spacing: 0.04em;
  font-style: italic;
}
/* PowerQuote lockup image replaces the former text wordmark + tagline. The
   lockup already carries "PowerQuote" and "by Gillette Generators", so the
   __title/__cap/__rule/__tagline rules above now go unused. (#49) */
/* The lockup is 762×196 natively. The parent theme's `.woocommerce-page img
   { height: auto }` outranks a single class, so the selector carries the banner
   class too, and the size is set as a width with the height following. 80% of
   natural on a desktop, shrinking with the viewport so it never dominates a
   phone screen but always reads as the portal's wordmark. */
.gillette-power-quote-banner .gillette-power-quote-banner__logo {
  display: block;
  width: min(610px, 64vw);
  height: auto;
  max-width: 100%;
}
.gillette-power-quote-banner .gillette-power-quote-banner__link {
  display: inline-block;
  line-height: 0;
}
@media (max-width: 600px) {
  .gillette-power-quote-banner { padding: 12px 12px 9px; margin-top: -20px; }
  .gillette-power-quote-banner__title { font-size: 1.25rem; letter-spacing: 0.12em; }
  .gillette-power-quote-banner__tagline { font-size: 0.75rem; letter-spacing: 0.03em; }
  .gillette-power-quote-banner .gillette-power-quote-banner__logo { width: min(420px, 80vw); }
}
/******* page title space ***********/
.page-title {
    margin-bottom: 10px;
}

/* Account management: Wordfence's passkey and 2FA screens sit under the details form. */
.gillette-account-security { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid #e5e5e5; }
.gillette-account-security__heading { margin: 0 0 0.75rem; }
/*******************my account pdf************/
.card-text { height:40px; }
.card-thumbnail { height:180px; margin-bottom:90px; }
.card-text { margin-top:10px; height:44px; }
.sub-tab { margin-top: 15px; background-color: var(--gg-red); padding: 5px 10px; width: 220px; margin-bottom: 15px; }
.pdf-card { padding: 10px; border: 1px solid var(--gg-silver); border-radius: 8px; text-align: center; }
.pdf-thumbnail { height: auto; cursor: pointer; }
.pdf-card h3 {
	margin-top: 15px!important;
	font-size: 14px !important;
	color: #000;
	font-weight: 500;
	margin-bottom: 16px;
}
.pdf-actions { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; margin-top:10px; }
.pdf-view-btn { background: var(--gg-red); border: 1px solid var(--gg-red); }
.pdf-view-btn {
	display: inline-block;
	padding: 10px 18px;
	margin: 5px;color: #fff !important;
	text-decoration: none !important;
	border-radius: 4px;
	font-size: 14px;
	cursor: pointer;
	font-weight: 400;
}
.pdf-view-btn:hover { background: #fff; color: var(--gg-red) !important; border: 1px solid var(--gg-red); }
#pdf-viewer-modal { display: none; position: fixed; inset: 0; z-index: 999999; }
#pdf-viewer-modal.active { display: block; }
.pdf-modal-bg { position: absolute; inset: 0; background: rgba(0,0,0,.85); }
.pdf-modal-box {
	position: absolute;
	width: 90%;
	height: 90%;
	max-width: 1200px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	border-radius: var(--gg-radius-panel);
	overflow: hidden;
}
#pdf-frame { width: 100%; height: 100%; border: 0; }
#pdf-close {
	position: absolute;
	top: 6px;
	right: 0px;
	width: 40px;
	height: 40px;
	border: none;
	background: #3c3c3c;
	padding: 2px 0px;
	color: #fff;
	font-size: 28px;
	line-height: 40px;
	text-align: center;
	cursor: pointer;
	z-index: 11 !important;
}
#pdf-close::before { content:"\00D7";	}
@media(max-width: 768px) {
.pdf-actions { flex-direction: column; }
.pdf-card { margin-left: 0; margin-top: 15px; }
.pdf-view-btn, .pdf-download-btn { width: 100%; }
.pdf-modal-box { width: 95%; height: 90%; }
}

/* Account management: the dealer is fixed once the account is approved. */
.woocommerce form .gillette-dealer-field input.input-text[disabled],
.gillette-dealer-field input[disabled] { background: #f1f1f3 !important; color: #6b6b70 !important; border-color: #d9d9de; cursor: not-allowed; }
.gillette-dealer-field__help { display: block; margin-top: .35rem; font-size: .85em; color: #5c5c62; }
.gillette-dealer-field__help code { background: none; padding: 0; color: #1d1d1f; }

/* Homepage styles moved from the inline style block. */
/*==================================================MAIN TITLE==================================================*/
.gghero-content h1 { font-size:54px; max-width:470px; }
/*==================================================LIST==================================================*/
.gghero-content ul { padding-left:var(--gg-space-6); }
.gghero-content li { line-height:2; }
.gg-eyebrow { display: flex; }
/*==================================================HERO==================================================*/
.gg-eyebrow span { width:45px; height:2px; background:var(--gg-red); margin-top:var(--gg-space-2); margin-right: var(--gg-space-3); }
.gghero-second { margin-top:var(--gg-space-8); margin-bottom:var(--gg-space-6); }
.gghero-section { display:grid; grid-template-columns:45% 55%; min-height:720px; width:100%; }
.gghero-content { padding:var(--gg-space-12) var(--gg-space-12); display:flex; flex-direction:column; justify-content:center; }
.gghero-full-content { padding:var(--gg-space-4) var(--gg-space-8); display:flex; flex-direction:column; justify-content:center; grid-column: 1 / -1 !important; }
.gghero-slider { overflow:hidden; max-height:720px; }
.gghero-swiper, .gghero-swiper .swiper-wrapper, .gghero-swiper .swiper-slide { width:100%; height:100%; }
.gghero-swiper img { width:100%; height:100%; object-fit:cover; object-position:center; }
/*==================================================SWIPER==================================================*/
.gghero-swiper .swiper-pagination{ bottom:var(--gg-space-6); }
.gghero-swiper .swiper-pagination-bullet{ width:10px; height:10px; opacity:.45; }
.gghero-swiper .swiper-pagination-bullet-active{ background:var(--gg-red); opacity:1; }
/*==================================================BOTTOM STATS==================================================*/
.gghero-stats-section { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--gg-silver); border-bottom:1px solid var(--gg-silver); }
.gghero-stat-box { padding:var(--gg-space-4) var(--gg-space-6) 0px; border-right:1px solid var(--gg-silver); }
.gghero-stat-box:last-child { border-right:none; }
.gghero-stat-box h2 { font-family:var(--gg-font-mono); color:var(--gg-red); font-size:60px; }
.gghero-stat-box p { font-family:var(--gg-font-mono); margin-top:var(--gg-space-2); font-size:13px; letter-spacing:2px; color:var(--gg-steel); text-transform:uppercase; font-weight:700; }
/*==================================================DESKTOP==================================================*/
@media(max-width:1400px){
.gghero-section { min-height:720px;}
.gghero-content { padding:var(--gg-space-12) var(--gg-space-8);}
.gghero-content h1 { font-size:64px;}
.gghero-content li { font-size:16px; }
} 
/*================================================== LAPTOP ==================================================*/ 
@media(max-width:1200px){
.gghero-content{ padding:var(--gg-space-12) var(--gg-space-8); } 
.gghero-content h1{ font-size:56px }
.gghero-content li{ font-size:15px; line-height:1.9; } 
 }
/*================================================== TABLET ==================================================*/
@media(max-width:991px){
.gghero-section { display:block; }
.gghero-content { padding:var(--gg-space-12) var(--gg-space-8); }
.gghero-content h1 { font-size:50px; max-width:100%; }
.gghero-content li { font-size:15px; }
.gghero-slider { height:480px; }
.gghero-stats-section { grid-template-columns:repeat(2,1fr); }
.gghero-stat-box { border-bottom:1px solid var(--gg-silver); }
}
 /*================================================== MOBILE ==================================================*/
@media(max-width:767px){
.gghero-full-content { padding:var(--gg-space-4) 0px; }
.gghero-content { padding:var(--gg-space-8) var(--gg-space-6) }
.gghero-sub-heading { font-size:11px; letter-spacing:2px; gap:12px; }
.gghero-sub-heading span{ width:30px; }
.gghero-content h1 { font-size:38px; line-height:1; }
.gghero-content li { font-size:14px; line-height:1.8; }
.gghero-slider { height:320px; }
.gghero-stats-section{ grid-template-columns:1fr; }
.gghero-stat-box { text-align:center; border-right:none; border-bottom:1px solid var(--gg-silver); }
.gghero-stat-box:last-child { border-bottom:none; }
.gghero-stat-box h2 { font-size:46px; }
.gghero-stat-box p { font-size:12px; }
}
 /*================================================== SMALL MOBILE ==================================================*/ 
@media(max-width:480px){
.gghero-content { padding:var(--gg-space-8) var(--gg-space-4); }
.gghero-content h1 { font-size:32px; }
.gghero-content li { font-size:13px; }
.gghero-slider { height:250px; }
.gghero-stat-box { padding:var(--gg-space-6); }
.gghero-stat-box h2 { font-size:38px; }
.gghero-stat-box p { font-size:12px; }
}
/********************product page and configurator**************/
.btn-primary
{
  display: inline-block;
  font-family: var(--gg-font-display);
  font-weight: 500;
  font-size: 0.9375rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none !important;
  line-height: 1;
  padding: var(--gg-space-3) var(--gg-space-6);
  border: 2px solid var(--gg-red);
  border-radius: var(--gg-radius-button);
  cursor: pointer;
  transition: background-color var(--gg-motion), color var(--gg-motion), border-color var(--gg-motion);
}
.gg-btn--primary:hover {
  background: var(--gg-red-dark) !important;
  border-color: var(--gg-red-dark) !important;
  color: var(--gg-white) !important;
}
/* The product page's Configure button only. This used to be every button
   inside the configurator, which put the headline face on the accordion
   rows ("Order Lead Time" in 20px Oswald); the panel rules below own those. */
.is_configurable button.configure-product,
.is_configurable button.single_add_to_cart_button {
  font-family: var(--gg-font-display);
}
.active a { color: #C8102E; }
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button
{
  display: inline-block;
  font-family: var(--gg-font-display);
  font-weight: 500;
  font-size: 0.9375rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none !important;
  line-height: 1;
  padding: var(--gg-space-3) var(--gg-space-6);
  border: 2px solid var(--gg-red);
  border-radius: var(--gg-radius-button);
  cursor: pointer;
  transition: background-color var(--gg-motion), color var(--gg-motion), border-color var(--gg-motion);
  background: var(--gg-red);
  color: var(--gg-white) !important;
}
.wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button:focus-visible, .wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:focus-visible  {
  background: var(--gg-red-dark);
  border-color: var(--gg-red-dark);
  color: var(--gg-white) !important;
}
.mkl-pc--steps button, .configurator-add-to-cart {
    background: var(--gg-red-dark) !important;
    border: 1px solid var(--gg-red-dark) !important;
}
.mkl-pc--steps button:hover, .mkl-pc--steps button:focus-visible, .configurator-add-to-cart button:hover, .configurator-add-to-cart button:focus-visible {
    background: var(--gg-red-dark) !important;
    border: 1px solid var(--gg-red-dark) !important;
}
.page-template-products ul li
{
	font-family: var(--gg-font-mono);
/***category page select***/
.category-box select
{
  border: 1px solid var(--gg-silver);
  border-radius: var(--gg-radius-input);
  font-family: var(--gg-font-body);
  color: var(--gg-ink);
}
