/* ========================================================
   WOOCOMMERCE — FICHA DE PRODUCTO (single-product)
   ======================================================== */

.woocommerce div.product .product_title {
    font-weight: 400;
    font-size: 24px;
}

.single-product div.product p.price {
    font-size: clamp(27px, 5.5vw, 48px);
}

.summary.entry-summary .price ins span.woocommerce-Price-amount.amount {
    font-size: clamp(27px, 5.5vw, 48px);
}

.summary.entry-summary .price del span.woocommerce-Price-amount.amount {
    text-decoration: line-through;
    font-size: clamp(16px, 1.9vw, 25px);
}

.summary.entry-summary .price .woocommerce-price-suffix {
    font-size: 12px;
}

.mp-credits-tooltip-container {
    margin: 10px;
}

.etiqueta-descuento-producto {
    background-color: #f1f1f1;
    color: #28a745 !important;
    font-weight: bold;
    padding: 10px 15px;
    border-radius: 6px;
    margin-bottom: 15px;
    font-size: 22px;
    display: inline-block;
    text-align: center;
    width: 100%;
/*    outline: 3px dashed #2ecc71;*/
}

.etiqueta-descuento-producto small {
    display: block;
    font-size: 16px;
    color: #28a745 !important;
    font-weight: normal;
    margin-top: 4px;
}

.woocommerce div.product form.cart .button {
    vertical-align: middle;
    float: left;
    width: 75%;
    color: #fff;
    font-size: 18px;
    background-color: #3483fa;
}

.woocommerce-variation-price,
.woocommerce-variation-availability {
    display: none !important;
}

.summary.entry-summary > .price {
    transition: opacity 0.15s ease;
}

/* ========================================================
   PRODUCTO.CSS ORIGINAL
   ======================================================== */


.st0 { fill: #CC1C21; }

[name="product-highlights"] [class*="accordion__opened"]+[class*="accordion__content"] {
    max-height: 5000px;
}

img { max-width: 100%; }

.productHighlightsSection {
    margin-bottom: 60px;
    text-align: center;
}
.productHighlightsSection:last-of-type { margin-bottom: 20px; }

.productHighlightsSection h4 {
    border-bottom: 3px solid #CC1C21;
    display: inline-block;
    font-size: 48px;
    padding: 10px 20px 0;
    margin-bottom: 40px;
    text-transform: capitalize;
    line-height: 1.3em;
}

.centerFlex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: baseline;
}
.centerFlex>div {
    min-width: 125px;
    padding: 20px;
    margin-right: 20px;
}

.footnote {
    font-size: 16px;
    font-weight: 100;
    margin-top: 10px;
    flex: 100%;
}

.lowercase { text-transform: lowercase !important; }

.productHighlightsSection span.sub-heading {
    font-size: 30px;
    font-weight: lighter;
    margin: 0 0 30px;
    display: block;
}

@media screen and (max-width: 960px) {
    .productHighlightsSection h4 { font-size: 4.9vw; margin-bottom: 30px; }
    .productHighlightsSection { margin-bottom: 40px; }
}

@media screen and (max-width: 767px) {
    .centerFlex { justify-content: space-evenly; }
    .productHighlightsSection h4 {
        font-size: calc(18px + 2.5vw);
        margin-bottom: 20px;
        padding: 10px 0 0;
    }
    [class*="accordion__opened-"]+[class*="accordion__content-"] { max-height: 100% !important; }
    .productHighlightsSection span.sub-heading { font-size: 21px; }
}

@media screen and (max-width: 375px) {
    .productHighlightsSection h4 { font-size: 25px; }
}

*/
/* REJILLA DE PUNTOS DESTACADOS */
.highlightsGrid.what-can-you-power {
    max-width: 960px;
    margin: 0 auto;
}
.highlightsGrid .highlightsGridItem {
    background-color: #f8f8f8;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    min-height: 260px;
    border: 1px solid #e4e4e4;
    width: 23%;
    margin: 0 10px 20px 10px;
    box-sizing: border-box;
}
.highlightsGrid.grid3x2 .highlightsGridItem {
    width: 17%;
    max-width: 230px;
}
.highlightsGrid.what-can-you-power.grid3x2 .highlightsGridItem {
    width: 21%;
}
.highlightsGrid .highlightsGridItem .icon {
    width: 165px;
    height: 165px;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
}
.highlightsGrid .highlightsGridItem .icon.pad20 { padding: 20px; }
.highlightsGrid .highlightsGridItem .icon img {
    width: 100%;
    height: auto;
    max-height: 100%;
}
.highlightsGrid .highlightsGridItem .icon.pad-top-1 { padding-top: 1em; }
.highlightsGrid .highlightsGridItem h5 {
    font-size: 25px;
    padding-bottom: 5px;
    text-transform: none;
    line-height: 1.1em;
}
.highlightsGrid .highlightsGridItem span {
    font-size: 18px;
    font-weight: 100;
    line-height: 1.1em;
}
.highlightsGrid.no-border { margin-top: -20px; }
.highlightsGrid.power-outlets .highlightsGridItem {
    height: auto;
    min-height: auto;
    width: 30%;
    max-width: 245px;
}
.highlightsGrid.power-outlets .highlightsGridItem .icon.single-item { width: 115px; }

@media screen and (max-width:1080px) {
    .highlightsGrid { margin: 0 auto; }
    .highlightsGrid .highlightsGridItem { width: 33%; }
}
@media screen and (max-width:960px) {
    .highlightsGrid.grid3x2 .highlightsGridItem {
        width: 27%;
        padding-bottom: 0;
        margin-bottom: 0;
    }
}
@media screen and (max-width: 767px) {
    .highlightsGrid .highlightsGridItem {
        width: 44%;
        margin: 10px;
        padding: 20px 10px;
        height: auto;
        min-height: auto;
    }
    .highlightsGrid .highlightsGridItem .icon {
        width: 20vw;
        height: 20vw;
    }
    .highlightsGrid .highlightsGridItem .icon.pad20 { padding: 0; }
    .highlightsGrid .highlightsGridItem .icon.pad8-mbl { padding: 8px; }
    .highlightsGrid .highlightsGridItem h5 { font-size: 4vw; }
    .highlightsGrid .highlightsGridItem span { font-size: 3.5vw; line-height: 1; }
    .highlightsGrid.no-border { margin-top: -30px; }
    .highlightsGrid.grid3x2 .highlightsGridItem { width: 27%; min-width: auto; }
    .highlightsGrid.power-outlets .highlightsGridItem { max-width: 245px; width: 44%; }
    .highlightsGrid.what-can-you-power.grid3x2 .highlightsGridItem { width: 27%; }
    .highlightsGrid.power-outlets .highlightsGridItem .icon.single-item { width: 17vw; max-width: 100px; }
    .highlightsGrid.power-outlets .highlightsGridItem .icon.wide-item { width: 30vw; max-width: 165px; }
    .grid3x2, .power-outlets { justify-content: center; }
}
@media screen and (max-width: 375px) {
    .highlightsGrid.power-outlets .highlightsGridItem { padding: 15px 0; }
    .highlightsGrid.power-outlets .highlightsGridItem .icon { padding-bottom: 10px; }
}
@media screen and (max-width: 320px) {
    .highlightsGrid.grid3x2 .highlightsGridItem {
        width: 26%;
        min-width: auto;
        padding: 10px 0;
    }
}

/* CARACTERÍSTICAS DEL PRODUCTO */
.product-features {
    width: 80%;
    display: block;
    margin: 0 auto;
}
.product-features-inner-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.product-features-inner-container>div:first-child {
    flex-grow: 2;
    margin-right: 100px;
}
.product-features-inner-container img { height: auto; }

.product-feature-list {
    counter-reset: product-feature-list;
    list-style: none;
    font-weight: 300;
    margin: 20px 0;
    max-width: 550px;
    text-align: left;
    font-size: 22px !important;
    line-height: 24px;
    flex-grow: 2;
}
.product-feature-list ol li {
    counter-increment: product-feature-list;
    position: relative;
    list-style: none;
    margin-bottom: 20px;
    display: flex;
}
.product-feature-list ol li:last-child { margin-bottom: 0 !important; }
.product-feature-list ol li:before {
    content: counter(product-feature-list);
    color: #fff;
    font-weight: bold;
    line-height: 42px;
    min-width: 42px;
    width: 42px;
    height: 42px;
    background: #CC1C21;
    border-radius: 50%;
    text-align: center;
    border: 1px solid #fff;
    box-shadow: 0px 1px 4px #ccc;
    font-size: 28px;
    margin-right: 20px;
}
.product-feature-list ol li span { padding-top: 10px; }
.product-feature-list ol li strong { text-transform: uppercase; }

.product-features-data-table {
    max-width: 550px;
    margin-top: 40px;
}

@media screen and (max-width: 960px) {
    .product-features-inner-container>div:first-child { margin-right: 25px; }
    .product-feature-list { font-size: 2.4vw !important; line-height: 24px; }
    .product-feature-list ol li:before {
        line-height: 40px;
        min-width: 40px;
        width: 40px;
        height: 40px;
        font-size: 24px;
    }
}
@media screen and (max-width: 767px) {
    .product-features-inner-container { flex-direction: column; }
    .product-features-inner-container>div:first-child { margin-right: 0; }
    .product-feature-list { font-size: 4.5vw !important; line-height: 1; }
    .product-feature-list ol li:before {
        left: -8vw;
        line-height: 6vw;
        min-width: 6vw;
        width: 6vw;
        height: 6vw;
        font-size: 4vw;
        margin-right: 10px;
    }
    .product-feature-list ol li { margin-bottom: 20px; }
    .product-feature-list ol li span { padding-top: 5px; }
}

/* UTILIDADES DE COLOR BASE */
.no-background>div { background: none !important; }
.no-border>div { border: none !important; }
.border-black>div { border: 1px solid #000 !important; }

.power-outlets .highlightsGridItem { position: relative; }
.power-outlets .circle-content {
    height: 12vw;
    width: 12vw;
    -moz-border-radius: 30px;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    border: 2px solid #000;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
    line-height: 1.2;
    position: absolute;
    top: -25px;
    max-width: 55px;
    max-height: 55px;
}
.power-outlets .highlightsGridItem span { font-size: 21px; }
@media screen and (max-width: 375px) {
    .power-outlets .highlightsGridItem span { font-size: 18px; }
}

#productCustomSection.productHighlightsSection { text-align: center; }
#productCustomSection.productHighlightsSection h4 {
    border-bottom: 3px solid #CC1C21;
    display: inline-block;
    font-size: 46px;
    padding: 10px 20px 0;
    margin-bottom: 40px;
    text-transform: capitalize;
    line-height: 1.3em;
    letter-spacing: -0.833px;
}
@media screen and (max-width: 960px) {
    #productCustomSection.productHighlightsSection h4 { font-size: 4.8vw; margin-bottom: 30px; }
}
@media screen and (max-width: 767px) {
    #productCustomSection.productHighlightsSection h4 {
        font-size: calc(18px + 2.5vw);
        margin-bottom: 20px;
        padding: 10px 0 0;
    }
}
@media screen and (max-width: 375px) {
    #productCustomSection.productHighlightsSection h4 { font-size: 25px; }
}

/* Secciones */
.connectingPortableGenerators {
    margin: 0 auto;
    max-width: 984px;
    text-align: left;
    --c-accent: var(--c-primary-1, #cd2215);
    --c-info-bg: var(--c-tertiary-3, #f2f2f2);
    --f-size-base-m: 16px;
    --f-size-base-d: 18px;
    --f-stack-base: var(--f-stack-default, sans-serif);
    --f-stack-header: var(--f-stack-normal, sans-serif);
    --gap-m: 12px;
    --gap-d: 22px;
    --line-height-base-m: 19px;
    --line-height-base-d: 22px;
}
.productCustomSection {
    font-family: var(--f-stack-base);
    margin-bottom: var(--gap-m);
}
@media screen and (min-width: 768px) {
    .productCustomSection { margin-bottom: var(--gap-d); }
}
.noWrap { white-space: nowrap; }

/* Elementos Generales */
.productCustomSection h5,
.productCustomSection h6 {
    font-family: var(--f-stack-header);
    font-size: 24px;
    line-height: 27px;
    letter-spacing: -0.833px;
    margin: 0 0 var(--gap-m);
    padding-top: 20px;
    text-transform: none;
}
@media screen and (min-width: 768px) {
    .productCustomSection h5,
    .productCustomSection h6 { line-height: normal; margin-bottom: var(--gap-d); }
}
.productCustomSection h5 { font-weight: 900; }
@media screen and (min-width: 768px) {
    .productCustomSection h5 { font-size: 32px; }
}
.productCustomSection h6 { font-weight: 400; }
@media screen and (min-width: 768px) {
    .productCustomSection h6 { font-size: 30px; }
}
.productCustomSection p {
    font-size: var(--f-size-base-m);
    font-weight: 300;
    line-height: var(--line-height-base-m);
    margin: 0 0 var(--f-size-base-m);
}
@media screen and (min-width: 768px) {
    .productCustomSection p { font-size: var(--f-size-base-d); line-height: var(--line-height-base-d); }
}
.productCustomSection p strong { font-weight: 400; }
.productCustomSection a {
    color: var(--c-accent);
    font-size: inherit !important;
    text-decoration: none;
}
.productCustomSection a:hover { text-decoration: underline; }
.productCustomSection img { display: block; height: auto; max-width: 100%; }
.productCustomSection hr {
    background-color: #000000;
    border: none;
    height: 1px;
    margin: calc(var(--gap-m) + 20px) 0 0;
    width: 100%;
}
@media screen and (min-width: 768px) {
    .productCustomSection hr { margin-top: calc(var(--gap-d) + 20px); }
}

/* Listas */
.productCustomSection ul,
.productCustomSection ol { list-style: none; margin: 0; padding: 0; }
.productCustomSection ol { counter-reset: product-custom-ordered-list; }
.productCustomSection li {
    display: flex;
    font-size: var(--f-size-base-m);
    font-weight: 300;
    gap: 8px;
    line-height: var(--line-height-base-m);
    margin: 0 0 var(--gap-m);
    padding: 0;
    position: relative;
}
.productCustomSection li:last-of-type { margin: 0; }
@media screen and (min-width: 768px) {
    .productCustomSection ul>li {
        font-size: var(--f-size-base-d);
        line-height: var(--line-height-base-d);
        margin-bottom: var(--gap-d);
    }
}
.productCustomSection li ul { margin-top: 10px; }
.productCustomSection li li { margin-bottom: 10px; }
.productCustomSection ol>li {
    counter-increment: product-custom-ordered-list;
    margin-top: 18px;
}
.productCustomSection li::before {
    border-radius: 50%;
    content: "";
    display: inline-block;
    flex-grow: 0;
    flex-shrink: 0;
    position: relative;
}
.productCustomSection ul>li::before {
    background-color: #000000;
    height: 12px;
    width: 12px;
    top: .25em;
}
.productCustomSection ul ul>li::before,
.productCustomSection ol ul>li::before {
    height: 4px;
    width: 4px;
    top: .45em;
}
.productCustomSection ol>li::before {
    align-items: center;
    background-color: var(--c-accent);
    content: counter(product-custom-ordered-list);
    color: #ffffff;
    display: flex;
    font-family: var(--f-stack-header);
    font-size: 18px;
    font-weight: 700;
    height: 25px;
    justify-content: center;
    top: -.3em;
    width: 25px;
}
@media screen and (min-width: 768px) {
    .productCustomSection ol>li::before {
        font-size: 24px;
        height: 32px;
        width: 32px;
    }
}
.productCustomSection li p:last-of-type { margin: 0; }

/* Encabezados de Elementos de Lista */
.productCustomSection .header {
    display: block;
    font-weight: 700;
    width: 100%;
}
.productCustomSection ul .header {
    font-size: 21px;
    margin-bottom: 4px;
}
@media screen and (min-width: 768px) {
    .productCustomSection ul .header { font-size: 24px; }
}
.productCustomSection ol .header {
    font-size: 18px;
    margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
    .productCustomSection ol .header { font-size: 21px; }
}
.productCustomSection ul ul>li .header,
.productCustomSection ol ul>li .header {
    font-size: var(--f-size-base-m);
    font-weight: 400;
    margin-bottom: 0;
}
@media screen and (min-width: 768px) {
    .productCustomSection ul ul>li .header,
    .productCustomSection ol ul>li .header { font-size: var(--f-size-base-d); }
}
.productCustomSection li p+table,
.productCustomSection li p+.imageBox { margin-top: var(--gap-m); }
.productCustomSection li p+.imageBox { margin-bottom: var(--gap-m); }
@media screen and (min-width: 768px) {
    .productCustomSection li p+table,
    .productCustomSection li p+.imageBox { margin-top: var(--gap-d); }
}

/* Caja de Imagen */
.productCustomSection .imageBox {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
@media screen and (min-width: 640px) {
    .productCustomSection .imageBox {
        flex-direction: row;
        gap: 22px;
    }
}
.productCustomSection .imageBox span { width: 100%; }
@media screen and (min-width: 640px) {
    .productCustomSection .imageBox span { width: auto; }
}
.productCustomSection .imageBox img { width: 100%; }
@media screen and (min-width: 640px) {
    .productCustomSection .imageBox img { width: unset; }
}
.productCustomSection .imageBox+h6,
.productCustomSection .imageBox+.calloutBox { margin-top: var(--gap-m); }
@media screen and (min-width: 768px) {
    .productCustomSection .imageBox+h6,
    .productCustomSection .imageBox+.calloutBox { margin-top: var(--gap-d); }
}

/* Caja de Llamada de Atención */
.productCustomSection .calloutBox {
    border: 2px solid var(--c-accent);
    border-radius: 8px;
    display: flex;
    gap: 12px;
    margin-bottom: var(--gap-m);
    padding: 12px;
}
@media screen and (min-width: 768px) {
    .productCustomSection .calloutBox {
        gap: 22px;
        margin-bottom: var(--gap-d);
        padding: 22px;
    }
}
.productCustomSection .calloutBox .fas {
    color: var(--c-accent);
    font-size: 32px;
}
@media screen and (min-width: 768px) {
    .productCustomSection .calloutBox .fas { font-size: 45px; }
}
.productCustomSection .calloutBox p {
    font-weight: 700;
    margin: 0;
}

/* Caja de Información */
.productCustomSection .infoBox {
    background-color: var(--c-info-bg);
    border-radius: 8px;
    margin-bottom: var(--gap-m);
    padding: 12px 20px;
}
@media screen and (min-width: 768px) {
    .productCustomSection .infoBox {
        margin-bottom: var(--gap-d);
        padding: 22px 25px;
    }
}

/* Detalles de Caja de Información Anidada */
.productCustomSection .infoBox__details {
    background-color: #ffffff;
    border: 1px solid #000000;
    gap: 15px;
    margin-top: 15px;
    padding: 10px;
}
@media screen and (max-width: 639px) {
    .productCustomSection .infoBox__details {
        display: grid;
        grid-template-columns: 15.4666667vw 1fr;
    }
}
@media screen and (min-width: 640px) {
    .productCustomSection .infoBox__details {
        align-items: center;
        display: flex;
        justify-content: space-between;
    }
}
@media screen and (max-width: 639px) {
    .productCustomSection .infoBox__details>span:last-child { grid-column-start: 2; }
}
@media screen and (min-width: 640px) {
    .productCustomSection .infoBox__details>span {
        flex-grow: 0;
        flex-shrink: 0;
    }
}
.productCustomSection .infoBox__details>span img { margin: 0 auto; }
@media screen and (max-width: 639px) {
    .productCustomSection .infoBox__details>span img {
        margin: 0 auto;
        width: 100%;
    }
}

/* Notas al Pie */
.productCustomSection p.footnote {
    font-size: var(--f-size-base-m);
    font-style: italic;
}

/* Tablas */
.productCustomSection table {
    background-color: #000000;
    border-color: #000000;
    border-spacing: 0;
    border-style: solid;
    border-width: 1px 1px 0 0;
    font-family: var(--f-stack-header);
    margin-bottom: var(--gap-m);
    width: 100%;
}
.productCustomSection th,
.productCustomSection td {
    border-color: #000000;
    border-style: solid;
    border-width: 0 0 1px 1px;
    padding: 8px;
}
.productCustomSection th {
    background-color: var(--c-accent);
    color: #ffffff;
    font-size: 15px;
    font-weight: 900;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .productCustomSection th { font-size: 21px; }
}
.productCustomSection td {
    font-size: 13px;
    font-weight: 400;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .productCustomSection td { font-size: 16px; }
}
.productCustomSection td:first-child {
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}
@media screen and (min-width: 768px) {
    .productCustomSection td:first-child { font-size: 18px; }
}
.productCustomSection tbody tr:nth-of-type(odd) td { background-color: #ffffff; }
.productCustomSection tbody tr:nth-of-type(even) td { background-color: #dddddd; }

/* ESPECIFICACIONES DL */
.specifications_dl {
    align-items: stretch;
    border-bottom: 1px solid #ddd;
    display: flex;
    flex-wrap: wrap;
    justify-content: stretch;
    margin-bottom: 15px;
}
.especificaciones-dl dt {
    background-color: #f7f7f7;
    font-weight: bold;
    padding: 12px 15px;
    border-bottom: 1px solid #e9e9e9;
}
.especificaciones-dl dd {
    margin: 0;
    padding: 12px 15px;
    border-bottom: 2px solid #e0e0e0;
}
@media (min-width: 768px) {
    .especificaciones-dl {
        grid-template-columns: max-content 1fr;
        border-top: 1px solid #e0e0e0;
    }
    .especificaciones-dl dt {
        background-color: transparent;
        text-align: right;
        padding-right: 15px;
        border-bottom: 1px solid #e0e0e0;
    }
    .especificaciones-dl dd {
        text-align: left;
        border-bottom: 1px solid #e0e0e0;
    }
    .specifications__emptyCell--R-RJ8f { display: none; }
}
.specifications__note--kSnoJn {
    font-size: 14px;
    font-style: italic;
    color: #666;
    margin-top: 15px;
    text-align: center;
}

/* OFERTAS: 1 columna en móvil vertical */
@media screen and (max-width: 480px) {
    .page-id-383 .woocommerce ul.products li.product,
    .page-id-383 .woocommerce ul.products[class*="columns-"] li.product {
        width: 100% !important;
        float: none !important;
        clear: both !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}
