:root{
    --cp-bg:#070812;
    --cp-bg-soft:#0e1120;
    --cp-surface:#14182a;
    --cp-surface-2:#1b2036;
    --cp-text:#f7f8ff;
    --cp-muted:#aab0c5;
    --cp-purple:#7c4dff;
    --cp-purple-2:#a56cff;
    --cp-cyan:#22d3ee;
    --cp-yellow:#ffe455;
    --cp-green:#38e68b;
    --cp-danger:#ff5f7a;
    --cp-border:rgba(255,255,255,.11);
    --cp-shadow:0 22px 60px rgba(0,0,0,.35);
    --cp-radius:22px;
    --cp-shell:1280px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.cp-site{
    margin:0;
    background:
      radial-gradient(circle at 15% 0%, rgba(124,77,255,.18), transparent 34rem),
      radial-gradient(circle at 85% 5%, rgba(34,211,238,.12), transparent 30rem),
      var(--cp-bg);
    color:var(--cp-text);
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    line-height:1.6;
}
a{color:inherit}
img{max-width:100%;height:auto}
.cp-shell{width:min(calc(100% - 40px),var(--cp-shell));margin-inline:auto}
.cp-main{min-height:60vh}
.cp-content{padding-block:52px}

.cp-header{
    position:sticky;top:0;z-index:999;
    border-bottom:1px solid var(--cp-border);
    background:rgba(7,8,18,.82);
    backdrop-filter:blur(18px);
}
.cp-header__inner{min-height:76px;display:flex;align-items:center;gap:28px}
.cp-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;letter-spacing:-.03em}
.cp-brand__mark{
    width:38px;height:38px;border-radius:12px;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--cp-purple),var(--cp-cyan));
    box-shadow:0 10px 30px rgba(124,77,255,.35);
}
.cp-brand__name{font-size:1.15rem}
.cp-nav{margin-left:auto}
.cp-nav__list,.cp-footer__menu{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.cp-nav a,.cp-footer a{text-decoration:none;color:var(--cp-muted);font-weight:700}
.cp-nav a:hover,.cp-footer a:hover{color:var(--cp-text)}
.cp-cart,.cp-button{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    min-height:44px;padding:0 18px;border-radius:14px;text-decoration:none;
    font-weight:900;background:linear-gradient(135deg,var(--cp-purple),var(--cp-purple-2));
    color:#fff;border:1px solid rgba(255,255,255,.12);
}
.cp-cart__count{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#fff;color:#090a13;font-size:.8rem}
.cp-menu-toggle{display:none;background:none;border:0;padding:8px}
.cp-menu-toggle span:not(.screen-reader-text){display:block;width:24px;height:2px;background:#fff;margin:5px}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.cp-page-title{font-size:clamp(2.2rem,6vw,5rem);line-height:.95;letter-spacing:-.055em;margin:.2em 0 .45em}
.cp-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--cp-cyan)}
.cp-article{max-width:900px}
.cp-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.cp-post-card{overflow:hidden;border:1px solid var(--cp-border);background:var(--cp-surface);border-radius:var(--cp-radius);box-shadow:var(--cp-shadow)}
.cp-post-card__image{display:block;aspect-ratio:16/10;overflow:hidden}
.cp-post-card__image img{width:100%;height:100%;object-fit:cover}
.cp-post-card__body{padding:22px}
.cp-post-card h2{margin-top:0}
.cp-post-card h2 a{text-decoration:none}


.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button{
    border-radius:14px!important;
    background:linear-gradient(135deg,var(--cp-purple),var(--cp-purple-2))!important;
    color:#fff!important;
    font-weight:900!important;
}
.woocommerce ul.products li.product{
    background:var(--cp-surface);
    border:1px solid var(--cp-border);
    padding:14px;
    border-radius:var(--cp-radius);
}
.woocommerce div.product div.images img,
.woocommerce ul.products li.product a img{border-radius:16px}
.woocommerce span.onsale{background:var(--cp-yellow)!important;color:#0a0a0d!important}

@media(max-width:900px){
    .cp-menu-toggle{display:block;margin-left:auto}
    .cp-nav{
        display:none;
		position:absolute;
		left:20px;
		right:20px;
		top:68px;
        background:var(--cp-bg-soft);padding:18px;border:1px solid var(--cp-border);
        border-radius:18px;box-shadow:var(--cp-shadow)
    }
    .cp-nav.is-open{display:block}
    .cp-nav__list{flex-direction:column}
    .cp-cart{padding:0 12px}
    .cp-post-grid{grid-template-columns:1fr 1fr}
    .cp-footer__inner{grid-template-columns:1fr;justify-items:center;text-align:center}.cp-footer__links{justify-content:center}.cp-footer__legal{flex-direction:column;align-items:center;text-align:center}
}
@media(max-width:600px){
    .cp-shell{width:min(calc(100% - 24px),var(--cp-shell))}

    /* Mantener CrazyPavos visible en móvil y clickeable hacia Inicio */
    .cp-brand__name{
        display:inline-block !important;
        color:var(--cp-text) !important;
        font-size:1rem !important;
        line-height:1 !important;
        white-space:nowrap !important;
    }

    .cp-post-grid{grid-template-columns:1fr}
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 1000px) {
    .cp-header-search {
        max-width: 260px;
        margin-left: 20px;
        margin-right: 20px;
    }
}

@media (max-width: 900px) {
    .cp-header__inner {
        flex-wrap: wrap;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .cp-header-search {
        order: 10;
        width: 100%;
        max-width: none;
        min-width: 100%;
        flex-basis: 100%;
        margin: 10px 0 0;
    }

    .cp-header-search .dgwt-wcas-search-input {
        height: 42px !important;
        min-height: 42px !important;
    }
}


/* ==========================================================
   HEADER - LOGO / CARRITO
   ========================================================== */

.cp-brand__logo {
    display:flex;
    align-items:center;
}

.cp-brand__logo .custom-logo-link {
    display:flex;
    align-items:center;
}

.cp-brand__logo img,
.cp-brand__logo .custom-logo {
    display:block;
    width:auto;
    height:42px;
    max-width:220px;
    object-fit:contain;
}

.cp-cart__icon {
    width:18px;
    height:18px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
    flex:0 0 auto;
}



/* ==========================================================
   CRAZYPAVOS · WOOCOMMERCE DESIGN SYSTEM
   ========================================================== */

.cp-woocommerce-ready {
    --cp-woo-card: rgba(20, 24, 42, .86);
    --cp-woo-card-strong: #14182a;
    --cp-woo-card-soft: rgba(255,255,255,.045);
    --cp-woo-border: rgba(255,255,255,.10);
    --cp-woo-border-hover: rgba(165,108,255,.42);
    --cp-woo-input: rgba(255,255,255,.055);
    --cp-woo-focus: rgba(124,77,255,.22);
}

.cp-woocommerce-ready .cp-main {
    overflow:hidden;
}

.cp-shop-wrap,
.cp-woo-page {
    position:relative;
    z-index:1;
}

.cp-shop-wrap::before,
.cp-woo-page::before {
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    left:-280px;
    top:40px;
    border-radius:50%;
    background:rgba(124,77,255,.12);
    filter:blur(90px);
    pointer-events:none;
    z-index:-1;
}

/* ----------------------------------------------------------
   Woo page intro
   ---------------------------------------------------------- */

.cp-woo-page__header {
    max-width:760px;
    margin-bottom:34px;
}

.cp-woo-page__title {
    margin:.12em 0 .18em;
    font-size:clamp(2.35rem,5vw,4.8rem);
    line-height:.95;
    letter-spacing:-.055em;
}

.cp-woo-page__lead {
    max-width:650px;
    margin:0;
    color:var(--cp-muted);
    font-size:1rem;
}

/* ----------------------------------------------------------
   Breadcrumbs
   ---------------------------------------------------------- */

.woocommerce .woocommerce-breadcrumb {
    margin:0 0 24px;
    color:var(--cp-muted);
    font-size:.82rem;
    font-weight:700;
}

.woocommerce .woocommerce-breadcrumb a {
    color:var(--cp-text);
    text-decoration:none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
    color:var(--cp-purple-2);
}

/* ----------------------------------------------------------
   Titles / archive toolbar
   ---------------------------------------------------------- */

.woocommerce-products-header__title.page-title,
.woocommerce .product .product_title {
    color:var(--cp-text);
    letter-spacing:-.045em;
}

.woocommerce-products-header__title.page-title {
    margin:0 0 28px;
    font-size:clamp(2.4rem,5vw,4.5rem);
    line-height:.95;
}

.woocommerce .woocommerce-result-count {
    margin:10px 0 20px;
    color:var(--cp-muted);
    font-size:.86rem;
}

.woocommerce .woocommerce-ordering {
    margin:0 0 24px;
}

.woocommerce .woocommerce-ordering select,
.woocommerce select,
.select2-container--default .select2-selection--single {
    min-height:44px;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:13px !important;
    background:var(--cp-woo-input) !important;
    color:var(--cp-text) !important;
    box-shadow:none !important;
}

.woocommerce .woocommerce-ordering select {
    padding:0 40px 0 14px;
}

/* ----------------------------------------------------------
   Notices / errors / info
   ---------------------------------------------------------- */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
    position:relative;
    margin:0 0 22px !important;
    padding:17px 18px 17px 52px !important;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:16px !important;
    background:var(--cp-woo-card) !important;
    color:var(--cp-text) !important;
    box-shadow:0 14px 40px rgba(0,0,0,.18);
}

.woocommerce-message {
    border-color:rgba(56,230,139,.28) !important;
}

.woocommerce-info {
    border-color:rgba(34,211,238,.28) !important;
}

.woocommerce-error {
    border-color:rgba(255,95,122,.32) !important;
}

.woocommerce-message::before {
    color:var(--cp-green) !important;
    top:17px !important;
    left:18px !important;
}

.woocommerce-info::before {
    color:var(--cp-cyan) !important;
    top:17px !important;
    left:18px !important;
}

.woocommerce-error::before {
    color:var(--cp-danger) !important;
    top:17px !important;
    left:18px !important;
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
    color:#fff;
}

/* ----------------------------------------------------------
   Buttons
   ---------------------------------------------------------- */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wc-block-components-button,
.wp-block-button__link,
button.wc-block-components-button {
    min-height:46px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    padding:0 19px !important;
    border:1px solid rgba(255,255,255,.11) !important;
    border-radius:14px !important;
    background:linear-gradient(135deg,var(--cp-purple),var(--cp-purple-2)) !important;
    color:#fff !important;
    font-size:.9rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(124,77,255,.20) !important;
    transition:transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:hover,
.wp-block-button__link:hover {
    transform:translateY(-2px);
    filter:brightness(1.08);
    box-shadow:0 16px 38px rgba(124,77,255,.30) !important;
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
#place_order {
    background:linear-gradient(135deg,var(--cp-purple),#b06cff) !important;
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.wc-block-components-button:disabled {
    opacity:.42 !important;
    transform:none !important;
    cursor:not-allowed !important;
}

/* ----------------------------------------------------------
   Inputs / fields
   ---------------------------------------------------------- */

.woocommerce form .form-row label,
.woocommerce-page form .form-row label,
.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-address-form__country label {
    color:var(--cp-muted);
    font-size:.82rem;
    font-weight:800;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce .quantity .qty,
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-address-form input,
.wc-block-components-address-form select,
.wc-block-components-textarea {
    min-height:48px !important;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:14px !important;
    background:var(--cp-woo-input) !important;
    color:var(--cp-text) !important;
    padding:0 14px !important;
    outline:0 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

.woocommerce form .form-row textarea,
.woocommerce textarea,
.wc-block-components-textarea {
    min-height:120px !important;
    padding:14px !important;
}

.woocommerce input::placeholder,
.woocommerce textarea::placeholder,
.wc-block-components-text-input input::placeholder {
    color:rgba(247,248,255,.34) !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce .quantity .qty:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input:focus,
.wc-block-components-address-form input:focus,
.wc-block-components-address-form select:focus {
    border-color:rgba(165,108,255,.70) !important;
    background:rgba(255,255,255,.075) !important;
    box-shadow:0 0 0 3px var(--cp-woo-focus) !important;
}

.select2-dropdown {
    border:1px solid var(--cp-woo-border) !important;
    background:var(--cp-woo-card-strong) !important;
    color:var(--cp-text) !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background:rgba(124,77,255,.24) !important;
    color:#fff !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color:var(--cp-text) !important;
    line-height:42px !important;
}

/* ----------------------------------------------------------
   Product archive grid
   ---------------------------------------------------------- */

.woocommerce ul.products {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
    margin:0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
    display:none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    width:auto !important;
    margin:0 !important;
    float:none !important;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding:12px 12px 16px;
    border:1px solid var(--cp-woo-border);
    border-radius:22px;
    background:
        radial-gradient(circle at 50% 0%,rgba(124,77,255,.11),transparent 55%),
        var(--cp-woo-card);
    box-shadow:0 18px 44px rgba(0,0,0,.18);
    transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.woocommerce ul.products li.product:hover {
    transform:translateY(-5px);
    border-color:var(--cp-woo-border-hover);
    box-shadow:0 25px 56px rgba(0,0,0,.30);
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    display:flex;
    flex-direction:column;
    flex:1;
    text-decoration:none;
}

.woocommerce ul.products li.product a img {
    width:100%;
    aspect-ratio:1/1;
    margin:0 0 15px !important;
    object-fit:contain;
    border-radius:17px !important;
    background:
        radial-gradient(circle at 50% 40%,rgba(124,77,255,.20),transparent 54%),
        rgba(255,255,255,.03);
    transition:transform .25s ease;
}

.woocommerce ul.products li.product:hover a img {
    transform:scale(1.025);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    padding:0 !important;
    margin:0 4px 10px;
    color:var(--cp-text);
    font-size:1rem !important;
    font-weight:850;
    line-height:1.25;
    letter-spacing:-.025em;
}

.woocommerce ul.products li.product .price {
    display:flex !important;
    flex-direction:column;
    align-items:flex-start;
    gap:3px;
    margin:auto 4px 14px !important;
    color:var(--cp-yellow) !important;
    font-size:.95rem !important;
    font-weight:900 !important;
}

.cp-dual-price {
    display:flex !important;
    flex-direction:column;
    gap:2px;
}

.cp-price-vbucks {
    color:var(--cp-yellow);
    font-size:.94rem;
}

.cp-price-clp {
    color:var(--cp-text);
    font-size:1rem;
}

.cp-price-clp--pending {
    color:var(--cp-muted);
    font-size:.77rem;
    font-weight:700;
}

.woocommerce ul.products li.product .button {
    width:100%;
    margin:0 !important;
}

.woocommerce span.onsale {
    z-index:3;
    min-width:auto !important;
    min-height:auto !important;
    margin:10px !important;
    padding:7px 10px !important;
    border-radius:999px !important;
    background:var(--cp-yellow) !important;
    color:#101116 !important;
    font-size:.7rem !important;
    font-weight:950 !important;
    line-height:1 !important;
}

/* ----------------------------------------------------------
   Pagination
   ---------------------------------------------------------- */

.woocommerce nav.woocommerce-pagination {
    margin-top:38px;
}

.woocommerce nav.woocommerce-pagination ul {
    display:inline-flex;
    gap:7px;
    border:0 !important;
}

.woocommerce nav.woocommerce-pagination ul li {
    border:0 !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    min-width:42px;
    height:42px;
    display:grid;
    place-items:center;
    padding:0 !important;
    border:1px solid var(--cp-woo-border);
    border-radius:12px;
    background:var(--cp-woo-card);
    color:var(--cp-text);
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    border-color:rgba(165,108,255,.55);
    background:linear-gradient(135deg,var(--cp-purple),var(--cp-purple-2));
    color:#fff;
}

/* ----------------------------------------------------------
   SINGLE PRODUCT
   ---------------------------------------------------------- */

.cp-product-kicker {
    margin-bottom:12px;
    color:var(--cp-cyan);
    font-size:.74rem;
    font-weight:950;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.woocommerce div.product {
    color:var(--cp-text);
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
    margin-bottom:42px;
}

.woocommerce div.product div.images {
    padding:16px;
    border:1px solid var(--cp-woo-border);
    border-radius:24px;
    background:
        radial-gradient(circle at 50% 35%,rgba(124,77,255,.16),transparent 54%),
        var(--cp-woo-card);
    box-shadow:0 22px 60px rgba(0,0,0,.22);
}

.woocommerce div.product div.images img {
    border-radius:18px !important;
}

.woocommerce div.product div.summary {
    padding:8px 0 0 30px;
}

.woocommerce div.product .product_title {
    margin:0 0 16px;
    font-size:clamp(2rem,4vw,4.1rem);
    line-height:.98;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    margin:0 0 22px;
    color:var(--cp-yellow);
    font-size:1.28rem;
    font-weight:950;
}

.woocommerce-product-details__short-description {
    margin:0 0 24px;
    color:var(--cp-muted);
}

.woocommerce div.product form.cart {
    display:flex;
    align-items:stretch;
    gap:10px;
    margin:26px 0 !important;
}

.woocommerce div.product form.cart .quantity {
    margin:0 !important;
}

.woocommerce .quantity .qty {
    width:76px !important;
    text-align:center;
    font-weight:900;
}

.woocommerce div.product form.cart .single_add_to_cart_button {
    flex:1;
    min-height:50px !important;
}

.woocommerce div.product .stock {
    color:var(--cp-green);
    font-size:.85rem;
    font-weight:850;
}

.woocommerce div.product .out-of-stock {
    color:var(--cp-danger);
}

.woocommerce div.product .product_meta {
    display:flex;
    flex-direction:column;
    gap:7px;
    margin-top:25px;
    padding-top:20px;
    border-top:1px solid var(--cp-woo-border);
    color:var(--cp-muted);
    font-size:.8rem;
}

.woocommerce div.product .product_meta a {
    color:var(--cp-text);
}

/* Variations */
.woocommerce div.product form.cart .variations {
    margin-bottom:18px;
}

.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
    padding:7px 0;
    color:var(--cp-text);
}

.woocommerce div.product form.cart .variations select {
    width:100%;
    min-height:46px;
    padding:0 12px;
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs {
    margin-top:20px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    display:flex;
    gap:8px;
    padding:0 !important;
    margin:0 0 16px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
    display:none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    margin:0 !important;
    padding:0 !important;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:12px !important;
    background:var(--cp-woo-card-soft) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
    display:none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding:11px 16px !important;
    color:var(--cp-muted) !important;
    font-size:.82rem;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-color:rgba(165,108,255,.42) !important;
    background:rgba(124,77,255,.14) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color:#fff !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    padding:24px;
    border:1px solid var(--cp-woo-border);
    border-radius:20px;
    background:var(--cp-woo-card);
}

.woocommerce div.product .woocommerce-tabs .panel h2:first-child {
    margin-top:0;
}

/* Related */
.related.products,
.upsells.products {
    margin-top:58px;
}

.related.products > h2,
.upsells.products > h2 {
    margin-bottom:24px;
    font-size:clamp(1.8rem,3vw,2.8rem);
    letter-spacing:-.04em;
}

/* ----------------------------------------------------------
   CLASSIC CART
   ---------------------------------------------------------- */

.woocommerce-cart-form {
    overflow:hidden;
    margin-bottom:26px;
    border:1px solid var(--cp-woo-border);
    border-radius:22px;
    background:var(--cp-woo-card);
}

.woocommerce table.shop_table {
    margin:0 !important;
    border:0 !important;
    border-collapse:collapse !important;
    background:transparent;
    color:var(--cp-text);
}

.woocommerce table.shop_table th {
    padding:16px !important;
    border-bottom:1px solid var(--cp-woo-border) !important;
    color:var(--cp-muted);
    font-size:.74rem;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.woocommerce table.shop_table td {
    padding:16px !important;
    border-top:1px solid rgba(255,255,255,.055) !important;
    color:var(--cp-text);
}

.woocommerce-cart table.cart img {
    width:76px !important;
    height:76px !important;
    object-fit:contain;
    border-radius:14px !important;
    background:rgba(255,255,255,.035);
}

.woocommerce-cart table.cart .product-name a {
    color:var(--cp-text);
    font-weight:850;
    text-decoration:none;
}

.woocommerce-cart table.cart .product-price,
.woocommerce-cart table.cart .product-subtotal {
    font-weight:850;
}

.woocommerce a.remove {
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,95,122,.20);
    border-radius:10px;
    background:rgba(255,95,122,.08);
    color:var(--cp-danger) !important;
    font-size:1.1rem !important;
    line-height:1 !important;
}

.woocommerce a.remove:hover {
    background:var(--cp-danger) !important;
    color:#fff !important;
}

.woocommerce-cart table.cart td.actions {
    padding:18px !important;
}

.woocommerce-cart table.cart td.actions .coupon {
    display:flex;
    gap:8px;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
    width:220px !important;
    min-height:46px;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:13px;
    background:var(--cp-woo-input);
    color:#fff;
    padding:0 14px !important;
}

.cart-collaterals {
    margin-top:24px;
}

.woocommerce .cart-collaterals .cart_totals {
    width:min(100%,520px) !important;
    float:right;
    padding:24px;
    border:1px solid var(--cp-woo-border);
    border-radius:22px;
    background:
        radial-gradient(circle at 100% 0%,rgba(124,77,255,.14),transparent 50%),
        var(--cp-woo-card);
    box-shadow:0 18px 50px rgba(0,0,0,.20);
}

.woocommerce .cart-collaterals .cart_totals h2 {
    margin:0 0 15px;
    font-size:1.55rem;
}

.woocommerce .cart-collaterals .cart_totals table th,
.woocommerce .cart-collaterals .cart_totals table td {
    border-top:1px solid var(--cp-woo-border) !important;
}

.woocommerce .wc-proceed-to-checkout {
    padding:16px 0 0 !important;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button {
    width:100%;
    min-height:54px !important;
    margin:0 !important;
    font-size:1rem !important;
}

/* Empty cart */
.woocommerce .cart-empty {
    text-align:center;
}

.woocommerce .return-to-shop {
    text-align:center;
}

/* ----------------------------------------------------------
   CLASSIC CHECKOUT
   Layout estable para WooCommerce + Checkout Fields for WooCommerce
   ---------------------------------------------------------- */

/*
 * El plugin Checkout Fields for WooCommerce sigue controlando:
 * - qué campos existen
 * - si son obligatorios
 * - su orden
 * - sus valores
 *
 * El tema solo organiza visualmente el checkout.
 */

/* ==========================================================
   1. ESTRUCTURA PRINCIPAL
   ========================================================== */

.woocommerce-checkout form.checkout.woocommerce-checkout {
    display:grid !important;
    grid-template-columns:minmax(0, 1.45fr) minmax(420px, .75fr) !important;
    gap:32px !important;
    align-items:start !important;

    width:100% !important;
    max-width:1280px !important;
    margin:0 auto !important;
}

/*
 * Izquierda: datos del cliente.
 * Derecha: resumen del pedido.
 */
.woocommerce-checkout #customer_details {
    grid-column:1 !important;
    grid-row:1 !important;

    display:flex !important;
    flex-direction:column !important;
    gap:22px !important;

    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;
}

/*
 * WooCommerce trae col-1 / col-2 al ~48%.
 * Las convertimos en bloques verticales dentro de la columna izquierda.
 */
.woocommerce-checkout #customer_details > .col-1,
.woocommerce-checkout #customer_details > .col-2 {
    float:none !important;
    clear:both !important;

    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;
}

/* El heading original es un hermano independiente.
 * Si lo dejamos visible obliga a crear otra fila en el grid.
 * Lo ocultamos y mostramos el mismo título dentro de #order_review.
 */
.woocommerce-checkout #order_review_heading {
    display:none !important;
}

.woocommerce-checkout #order_review {
    grid-column:2 !important;
    grid-row:1 !important;

    float:none !important;
    clear:none !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;
    padding:24px !important;

    border:1px solid var(--cp-woo-border) !important;
    border-radius:22px !important;

    background:
        radial-gradient(circle at 100% 0%, rgba(124,77,255,.11), transparent 44%),
        var(--cp-woo-card) !important;

    box-shadow:0 22px 55px rgba(0,0,0,.20) !important;

    box-sizing:border-box !important;
}

.woocommerce-checkout #order_review::before {
    content:"Tu pedido";

    display:block;

    margin:0 0 18px !important;

    color:var(--cp-text) !important;

    font-size:1.45rem !important;
    font-weight:900 !important;
    line-height:1.2 !important;
    letter-spacing:-.03em !important;
}


/* ==========================================================
   2. TARJETAS DE DATOS DEL CLIENTE
   ========================================================== */

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:24px !important;

    border:1px solid var(--cp-woo-border) !important;
    border-radius:22px !important;

    background:var(--cp-woo-card) !important;

    box-shadow:0 18px 48px rgba(0,0,0,.15) !important;

    box-sizing:border-box !important;
}

.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-shipping-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3 {
    margin:0 0 20px !important;

    color:var(--cp-text) !important;

    font-size:1.4rem !important;
    font-weight:900 !important;
    line-height:1.2 !important;
    letter-spacing:-.025em !important;
}


/* ==========================================================
   3. CAMPOS DE FACTURACIÓN
   ========================================================== */

/*
 * Permitimos que Checkout Fields for WooCommerce siga utilizando
 * las clases nativas form-row-first / form-row-last / form-row-wide.
 */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:16px !important;

    width:100% !important;
}

/* Por defecto los campos ocupan toda la fila. */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row {
    grid-column:1 / -1;

    float:none !important;
    clear:none !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;
}

/* first + last pueden compartir fila. */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first {
    grid-column:1 !important;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last {
    grid-column:2 !important;
}

/* wide siempre completo. */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-wide {
    grid-column:1 / -1 !important;
}

/* Información adicional. */
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
.woocommerce-checkout .woocommerce-additional-fields .form-row {
    width:100% !important;
    max-width:none !important;
}

.woocommerce-checkout .woocommerce-additional-fields .form-row {
    margin:0 !important;
}


/* ==========================================================
   4. INPUTS / SELECTS
   ========================================================== */

.woocommerce-checkout form.checkout .form-row label {
    display:block !important;
    margin:0 0 7px !important;

    color:var(--cp-muted) !important;

    font-size:.82rem !important;
    font-weight:800 !important;
    line-height:1.35 !important;
}

.woocommerce-checkout form.checkout input.input-text,
.woocommerce-checkout form.checkout textarea,
.woocommerce-checkout form.checkout select,
.woocommerce-checkout form.checkout .select2-container {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    box-sizing:border-box !important;
}

.woocommerce-checkout form.checkout input.input-text {
    min-height:50px !important;
}

.woocommerce-checkout form.checkout textarea {
    min-height:130px !important;
    resize:vertical !important;
}

/* Select2 de País / Región y Región / Provincia */
.woocommerce-checkout form.checkout .select2-container {
    min-height:50px !important;
}

.woocommerce-checkout form.checkout
.select2-container--default .select2-selection--single {
    height:50px !important;
    min-height:50px !important;
}

.woocommerce-checkout form.checkout
.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height:48px !important;
    padding-left:14px !important;
    padding-right:42px !important;
}

.woocommerce-checkout form.checkout
.select2-container--default .select2-selection--single .select2-selection__arrow {
    top:0 !important;
    right:10px !important;
    height:48px !important;
}


/* ==========================================================
   5. RESUMEN DEL PEDIDO
   ========================================================== */

.woocommerce-checkout #order_review table.shop_table {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    table-layout:auto !important;
}

.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td {
    padding:14px 8px !important;
    vertical-align:middle !important;
}

.woocommerce-checkout #order_review .product-total,
.woocommerce-checkout #order_review td:last-child {
    text-align:right !important;
}


/* ==========================================================
   6. MERCADO PAGO / MÉTODOS DE PAGO
   ========================================================== */

.woocommerce-checkout #payment {
    width:100% !important;
    max-width:none !important;

    margin:18px 0 0 !important;

    border:1px solid var(--cp-woo-border) !important;
    border-radius:18px !important;

    background:rgba(255,255,255,.035) !important;

    overflow:hidden !important;
    box-sizing:border-box !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    width:100% !important;

    margin:0 !important;
    padding:18px !important;

    border-bottom:1px solid var(--cp-woo-border) !important;

    box-sizing:border-box !important;
}

.woocommerce-checkout #payment ul.payment_methods li,
.woocommerce-checkout #payment div.payment_box {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    box-sizing:border-box !important;
}

.woocommerce-checkout #payment div.payment_box {
    margin:12px 0 0 !important;
    padding:16px !important;

    border-radius:13px !important;

    background:rgba(255,255,255,.055) !important;
    color:var(--cp-muted) !important;
}

.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color:rgba(255,255,255,.055) !important;
}

/* Evita que Mercado Pago se salga de su columna. */
.woocommerce-checkout #payment iframe,
.woocommerce-checkout #payment img,
.woocommerce-checkout #payment form,
.woocommerce-checkout #payment fieldset,
.woocommerce-checkout #payment .payment_box > div,
.woocommerce-checkout #payment .payment_box > section {
    max-width:100% !important;
    box-sizing:border-box !important;
}

.woocommerce-checkout #payment iframe {
    width:100% !important;
}

.woocommerce-checkout #payment .place-order {
    width:100% !important;

    margin:0 !important;
    padding:18px !important;

    box-sizing:border-box !important;
}

.woocommerce-checkout #payment #place_order {
    width:100% !important;
    min-height:54px !important;
}


/* ==========================================================
   7. RESPONSIVE
   ========================================================== */

@media (max-width:1100px) {
    .woocommerce-checkout form.checkout.woocommerce-checkout {
        grid-template-columns:minmax(0,1fr) 380px !important;
        gap:22px !important;
    }
}

@media (max-width:900px) {
    .woocommerce-checkout form.checkout.woocommerce-checkout {
        display:flex !important;
        flex-direction:column !important;
        gap:22px !important;
    }

    .woocommerce-checkout #customer_details,
    .woocommerce-checkout #order_review {
        width:100% !important;
        max-width:none !important;
    }
}

@media (max-width:640px) {
    .woocommerce-checkout .woocommerce-billing-fields,
    .woocommerce-checkout .woocommerce-shipping-fields,
    .woocommerce-checkout .woocommerce-additional-fields,
    .woocommerce-checkout #order_review {
        padding:18px !important;
        border-radius:18px !important;
    }

    .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
    .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
        grid-template-columns:1fr !important;
        gap:14px !important;
    }

    .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
    .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
    .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
    .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
    .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first,
    .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last,
    .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
    .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-wide {
        grid-column:1 !important;
    }
}

/* ----------------------------------------------------------
   MY ACCOUNT
   ---------------------------------------------------------- */

.woocommerce-account .woocommerce {
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    gap:24px;
    align-items:start;
}

.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after {
    display:none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    width:auto !important;
    float:none !important;
    padding:10px;
    border:1px solid var(--cp-woo-border);
    border-radius:20px;
    background:var(--cp-woo-card);
    position:sticky;
    top:100px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style:none;
    margin:0;
    padding:0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin:3px 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    display:flex;
    align-items:center;
    min-height:44px;
    padding:0 13px;
    border-radius:12px;
    color:var(--cp-muted);
    font-size:.86rem;
    font-weight:800;
    text-decoration:none;
    transition:.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background:rgba(255,255,255,.05);
    color:#fff;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background:linear-gradient(135deg,rgba(124,77,255,.24),rgba(165,108,255,.12));
    color:#fff;
    box-shadow:inset 0 0 0 1px rgba(165,108,255,.24);
}

.woocommerce-account .woocommerce-MyAccount-content {
    width:auto !important;
    float:none !important;
    min-width:0;
    padding:25px;
    border:1px solid var(--cp-woo-border);
    border-radius:22px;
    background:var(--cp-woo-card);
}

.woocommerce-account .woocommerce-MyAccount-content > *:first-child {
    margin-top:0;
}

.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
    color:var(--cp-purple-2);
}

.woocommerce-account .addresses {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.woocommerce-account .addresses .title::before,
.woocommerce-account .addresses .title::after {
    display:none;
}

.woocommerce-account .addresses .woocommerce-Address {
    width:auto !important;
    float:none !important;
    padding:20px;
    border:1px solid var(--cp-woo-border);
    border-radius:17px;
    background:rgba(255,255,255,.025);
}

.woocommerce-account .addresses .title h2 {
    font-size:1.15rem;
}

/* Login / Register */
.woocommerce-account:not(.logged-in) .woocommerce {
    display:block;
}

.woocommerce-account #customer_login {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}

.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after {
    display:none;
}

.woocommerce-account #customer_login .col-1,
.woocommerce-account #customer_login .col-2 {
    width:auto !important;
    float:none !important;
    padding:25px;
    border:1px solid var(--cp-woo-border);
    border-radius:22px;
    background:var(--cp-woo-card);
}

.woocommerce-account form.login,
.woocommerce-account form.register,
.woocommerce form.checkout_coupon {
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
}

/* ----------------------------------------------------------
   Orders / order received
   ---------------------------------------------------------- */

.woocommerce-order .woocommerce-order-overview {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:0 0 24px !important;
    padding:0 !important;
}

.woocommerce-order .woocommerce-order-overview li {
    float:none !important;
    margin:0 !important;
    padding:15px !important;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:15px;
    background:var(--cp-woo-card);
    color:var(--cp-muted);
}

.woocommerce-order .woocommerce-order-overview li strong {
    margin-top:5px;
    color:var(--cp-text);
}

.woocommerce-order-details,
.woocommerce-customer-details {
    margin-top:24px;
    padding:22px;
    border:1px solid var(--cp-woo-border);
    border-radius:20px;
    background:var(--cp-woo-card);
}

/* ----------------------------------------------------------
   WOO BLOCKS - CART / CHECKOUT
   ---------------------------------------------------------- */

.wc-block-cart,
.wp-block-woocommerce-cart {
    color:var(--cp-text);
}

.wc-block-components-sidebar,
.wc-block-cart__main,
.wc-block-components-order-summary {
    border-color:var(--cp-woo-border) !important;
}

.wc-block-components-sidebar {
    padding:20px !important;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:22px !important;
    background:var(--cp-woo-card) !important;
    align-self:start;
}

.wc-block-cart__main {
    padding:20px !important;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:22px !important;
    background:var(--cp-woo-card) !important;
}

.wc-block-components-product-name {
    color:var(--cp-text) !important;
    font-weight:850 !important;
    text-decoration:none !important;
}

.wc-block-components-product-price,
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__total-price {
    color:var(--cp-text) !important;
    font-weight:900 !important;
}

.wc-block-components-totals-wrapper {
    border-color:var(--cp-woo-border) !important;
}

.wc-block-components-totals-item__label,
.wc-block-components-order-summary-item__description,
.wc-block-components-address-card__address-section,
.wc-block-components-radio-control__description {
    color:var(--cp-muted) !important;
}

.wc-block-components-radio-control-accordion-option,
.wc-block-components-radio-control__option {
    border-color:var(--cp-woo-border) !important;
    background:rgba(255,255,255,.025) !important;
}

.wc-block-components-radio-control__option:has(input:checked),
.wc-block-components-radio-control-accordion-option:has(input:checked) {
    background:rgba(124,77,255,.10) !important;
}

.wc-block-components-checkbox .wc-block-components-checkbox__label {
    color:var(--cp-muted);
}

.wc-block-components-order-summary .wc-block-components-order-summary-item {
    border-bottom:1px solid var(--cp-woo-border);
}

.wc-block-components-order-summary-item__image img,
.wc-block-cart-item__image img {
    border-radius:13px !important;
    background:rgba(255,255,255,.03);
}

.wc-block-cart-item__remove-link {
    color:var(--cp-danger) !important;
}

.wc-block-components-quantity-selector {
    min-height:42px;
    border:1px solid var(--cp-woo-border) !important;
    border-radius:12px !important;
    background:var(--cp-woo-input) !important;
}

.wc-block-components-quantity-selector input {
    color:var(--cp-text) !important;
}

.wc-block-components-quantity-selector button {
    color:var(--cp-muted) !important;
}

.wc-block-components-panel,
.wc-block-components-totals-coupon,
.wc-block-components-order-summary {
    color:var(--cp-text);
}

.wc-block-components-totals-coupon__button {
    border-radius:12px !important;
}

/* ----------------------------------------------------------
   Tables / generic Woo
   ---------------------------------------------------------- */

.woocommerce table.shop_table_responsive tr td::before {
    color:var(--cp-muted);
}

.woocommerce address {
    color:var(--cp-muted);
}

.woocommerce mark {
    border-radius:6px;
    background:rgba(255,228,85,.14);
    color:var(--cp-yellow);
    padding:2px 5px;
}

/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */

@media (max-width:1100px) {
    .woocommerce ul.products {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media (max-width:900px) {
    .cp-brand__logo img,
    .cp-brand__logo .custom-logo {
        height:36px;
        max-width:170px;
    }

    .cp-cart__label {
        display:none;
    }

    .woocommerce ul.products {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
    }

    .woocommerce div.product div.summary {
        padding-left:0;
    }

    .woocommerce-account .woocommerce {
        grid-template-columns:1fr;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        position:static;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display:flex;
        gap:6px;
        overflow-x:auto;
        padding-bottom:2px;
        scrollbar-width:thin;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation li {
        flex:0 0 auto;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a {
        white-space:nowrap;
    }

    .woocommerce-order .woocommerce-order-overview {
        grid-template-columns:1fr 1fr;
    }
}

@media (max-width:768px) {
    .cp-woo-page__header {
        margin-bottom:24px;
    }

    .woocommerce-cart-form {
        overflow:visible;
        border:0;
        background:transparent;
    }

    .woocommerce table.shop_table_responsive tr,
    .woocommerce-page table.shop_table_responsive tr {
        display:block;
        margin-bottom:14px;
        padding:13px;
        border:1px solid var(--cp-woo-border);
        border-radius:17px;
        background:var(--cp-woo-card);
    }

    .woocommerce table.shop_table_responsive tr td,
    .woocommerce-page table.shop_table_responsive tr td {
        padding:10px 5px !important;
        border-top:1px solid rgba(255,255,255,.055) !important;
    }

    .woocommerce-cart table.cart td.actions .coupon {
        width:100%;
        margin-bottom:10px;
    }

    .woocommerce-cart table.cart td.actions .coupon .input-text {
        width:100% !important;
    }

    .woocommerce .cart-collaterals .cart_totals {
        width:100% !important;
        float:none;
    }

    .woocommerce-account #customer_login {
        grid-template-columns:1fr;
    }

    .woocommerce-account .addresses {
        grid-template-columns:1fr;
    }
}

@media (max-width:520px) {
    .woocommerce ul.products {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }

    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        padding:9px 9px 13px;
        border-radius:17px;
    }

    .woocommerce ul.products li.product a img {
        margin-bottom:11px !important;
        border-radius:13px !important;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size:.88rem !important;
    }

    .woocommerce ul.products li.product .button {
        min-height:42px !important;
        padding:0 10px !important;
        font-size:.78rem !important;
    }

    .cp-price-vbucks,
    .cp-price-clp {
        font-size:.85rem;
    }

    .woocommerce div.product form.cart {
        flex-wrap:wrap;
    }

    .woocommerce div.product form.cart .single_add_to_cart_button {
        flex-basis:calc(100% - 86px);
    }

    .woocommerce-order .woocommerce-order-overview {
        grid-template-columns:1fr;
    }
}


/* ==========================================================
   CRAZYPAVOS - ORDENAMIENTO WOOCOMMERCE SIN <SELECT> NATIVO
   ========================================================== */

.woocommerce .cp-ordering {
    position: relative;
    z-index: 80;
    margin: 0 0 24px;
}

.cp-ordering__details {
    position: relative;
    width: 258px;
    max-width: 100%;
}

/* Quitar marcador nativo de <details>/<summary> */
.cp-ordering__summary {
    list-style: none;
}

.cp-ordering__summary::-webkit-details-marker {
    display: none;
}

.cp-ordering__summary::marker {
    display: none;
    content: "";
}

/* Botón cerrado */
.cp-ordering__summary {
    width: 100%;
    min-height: 44px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;

    padding: 0 16px;

    border: 1px solid rgba(255,255,255,.12);
    border-radius: 13px;

    background: rgba(255,255,255,.055);
    color: #f7f8ff;

    font-family: inherit;
    font-size: 14px;
    font-weight: 700;

    cursor: pointer;
    user-select: none;

    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);

    transition:
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}

.cp-ordering__summary:hover {
    background: rgba(255,255,255,.075);
    border-color: rgba(255,255,255,.20);
}

.cp-ordering__details[open] .cp-ordering__summary {
    border-color: rgba(165,108,255,.70);
    background: rgba(255,255,255,.08);

    box-shadow:
        0 0 0 3px rgba(124,77,255,.15),
        0 0 20px rgba(124,77,255,.12);
}

/* Flecha */
.cp-ordering__chevron {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;

    border-right: 2px solid #aab0c5;
    border-bottom: 2px solid #aab0c5;

    transform: rotate(45deg) translateY(-2px);
    transition: transform .18s ease;
}

.cp-ordering__details[open] .cp-ordering__chevron {
    transform: rotate(225deg) translate(-2px,-2px);
}

/* Dropdown */
.cp-ordering__menu {
    position: absolute;
    top: calc(100% + 7px);
    left: 0;

    width: 100%;
    padding: 7px;

    border: 1px solid rgba(255,255,255,.11);
    border-radius: 15px;

    background: #14182a;

    box-shadow:
        0 22px 55px rgba(0,0,0,.46),
        inset 0 1px 0 rgba(255,255,255,.025);

    z-index: 9999;
}

/* Opciones */
.cp-ordering__option {
    width: 100%;
    min-height: 40px;

    display: flex;
    align-items: center;

    padding: 0 12px;

    border-radius: 10px;

    color: #aab0c5 !important;
    background: transparent;

    font-size: 13px;
    font-weight: 650;

    text-decoration: none !important;

    transition:
        background .15s ease,
        color .15s ease;
}

.cp-ordering__option:hover,
.cp-ordering__option:focus-visible {
    background: rgba(124,77,255,.13);
    color: #ffffff !important;
    outline: none;
}

.cp-ordering__option.is-active {
    background:
        linear-gradient(
            135deg,
            rgba(124,77,255,.31),
            rgba(165,108,255,.18)
        );

    color: #ffffff !important;

    box-shadow:
        inset 0 0 0 1px rgba(165,108,255,.16);
}

@media(max-width:600px){
    .cp-shell{
        width:min(calc(100% - 24px),var(--cp-shell));
    }

    .cp-brand__name{
        display:inline-block !important;
    }

    .cp-post-grid{
        grid-template-columns:1fr;
    }
}
/* ==========================================================
   CRAZYPAVOS - HEADER MÓVIL DEFINITIVO
   Buscador + menú sin superposición
   ========================================================== */

@media (max-width: 900px) {

    /*
     * El contenedor debe permitir varias filas:
     *
     * FILA 1 → logo / hamburguesa / carrito
     * FILA 2 → buscador
     * FILA 3 → menú abierto
     */
    .cp-header__inner {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;

        width: 100% !important;

        gap: 10px 12px !important;

        padding-top: 10px !important;
        padding-bottom: 10px !important;

        position: relative !important;
    }


    /* ======================================================
       LOGO
       ====================================================== */

    .cp-brand,
    .cp-logo {
        order: 1 !important;
    }


    /* ======================================================
       HAMBURGUESA
       ====================================================== */

    .cp-menu-toggle {
        display: flex !important;

        order: 2 !important;

        margin-left: auto !important;

        position: relative !important;

        z-index: 20 !important;
    }


    /* ======================================================
       CARRITO
       ====================================================== */

    .cp-cart {
        order: 3 !important;

        position: relative !important;

        z-index: 20 !important;
    }


    /* ======================================================
       BUSCADOR
       Siempre ocupa su propia fila
       ====================================================== */

    .cp-header-search {
        order: 4 !important;

        flex: 0 0 100% !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;

        position: relative !important;

        top: auto !important;
        left: auto !important;
        right: auto !important;

        transform: none !important;

        z-index: 15 !important;
    }


    .cp-header-search .dgwt-wcas-search-wrapp {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
    }


    .cp-header-search .dgwt-wcas-search-input {
        width: 100% !important;

        height: 42px !important;
        min-height: 42px !important;
    }


    /* ======================================================
       MENÚ
       
       IMPORTANTE:
       YA NO ES POSITION ABSOLUTE.
       Queda físicamente debajo del buscador.
       ====================================================== */

    .cp-nav {
        display: none !important;

        order: 5 !important;

        flex: 0 0 100% !important;

        width: 100% !important;
        max-width: 100% !important;

        /*
         * Eliminamos completamente el posicionamiento viejo.
         */
        position: static !important;

        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;

        transform: none !important;

        margin: 0 !important;

        padding: 8px !important;

        background: #0e1120 !important;

        border: 1px solid rgba(255,255,255,.11) !important;
        border-radius: 16px !important;

        box-shadow: 0 14px 40px rgba(0,0,0,.35) !important;

        z-index: 10 !important;
    }


    /*
     * Tu JS añade esta clase al abrir
     * el menú hamburguesa.
     */
    .cp-nav.is-open {
        display: block !important;
    }


    /* ======================================================
       LINKS DEL MENÚ
       ====================================================== */

    .cp-nav__list {
        display: flex !important;

        flex-direction: column !important;

        width: 100% !important;

        gap: 2px !important;

        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;
    }


    .cp-nav__list li {
        display: block !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    .cp-nav__list a {
        display: flex !important;

        align-items: center !important;

        width: 100% !important;

        min-height: 46px !important;

        padding: 10px 12px !important;

        border-radius: 10px !important;

        color: #aeb4c9 !important;

        text-decoration: none !important;

        font-weight: 700 !important;

        box-sizing: border-box !important;
    }


    .cp-nav__list a:hover,
    .cp-nav__list a:focus,
    .cp-nav__list a:active {
        color: #fff !important;

        background: rgba(124,77,255,.14) !important;
    }


    /* ======================================================
       RESULTADOS FIBOSEARCH
       Deben aparecer encima de menú/página
       ====================================================== */

    .dgwt-wcas-suggestions-wrapp,
    .dgwt-wcas-details-wrapp {
        z-index: 999999 !important;
    }
}
/* =========================================================
   CRAZYPAVOS - BOTÓN COPIAR CÓDIGO
   ========================================================= */

.cp-creator-code [data-cp-copy] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 110px !important;
    min-height: 44px !important;

    padding: 10px 20px !important;

    background: linear-gradient(
        135deg,
        #7c4dff 0%,
        #9b5cff 100%
    ) !important;

    color: #fff !important;

    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 12px !important;

    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    text-transform: none !important;
    letter-spacing: .02em !important;

    cursor: pointer !important;

    box-shadow:
        0 8px 22px rgba(124,77,255,.25) !important;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease !important;
}

.cp-creator-code [data-cp-copy]:hover {
    transform: translateY(-2px) !important;

    box-shadow:
        0 12px 30px rgba(124,77,255,.35) !important;

    background: linear-gradient(
        135deg,
        #8957ff 0%,
        #aa6cff 100%
    ) !important;
}

.cp-creator-code [data-cp-copy]:active {
    transform: translateY(0) scale(.97) !important;
}

.cp-creator-code [data-cp-copy]:focus-visible {
    outline: 2px solid #26d9ff !important;
    outline-offset: 3px !important;
}


/* Responsive */
@media (max-width: 600px) {

    .cp-creator-code__row {
        align-items: center !important;
        gap: 14px !important;
    }

    .cp-creator-code [data-cp-copy] {
        min-width: 96px !important;
        min-height: 42px !important;

        padding: 9px 16px !important;
    }
}

/* ==========================================================
   CRAZYPAVOS - ACCESO A INICIO VISIBLE EN MÓVIL
   ========================================================== */
@media (max-width: 900px) {
    .cp-header .cp-brand {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        align-items: center !important;
        flex: 0 1 auto !important;
        min-width: 0 !important;
        max-width: calc(100% - 120px) !important;
        color: var(--cp-text) !important;
        text-decoration: none !important;
        position: relative !important;
        z-index: 25 !important;
    }

    .cp-header .cp-brand__logo {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        align-items: center !important;
        min-width: 0 !important;
    }

    .cp-header .cp-brand__name {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
        color: #f7f8ff !important;
        font-size: 1rem !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        letter-spacing: -.03em !important;
        white-space: nowrap !important;
    }

    .cp-header .cp-brand__logo img,
    .cp-header .cp-brand__logo .custom-logo {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: auto !important;
        height: 34px !important;
        max-width: 145px !important;
        object-fit: contain !important;
    }
}
/* ==========================================================
   CRAZYPAVOS - LOGO HEADER MÓVIL
   ========================================================== */

@media (max-width: 900px) {

    .cp-header .cp-brand {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        order: 1 !important;
        align-items: center !important;

        flex: 0 0 auto !important;

        margin: 0 !important;
        padding: 0 !important;

        position: relative !important;
        z-index: 30 !important;

        text-decoration: none !important;
    }

    .cp-header .cp-brand__logo {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        align-items: center !important;

        width: auto !important;
        height: auto !important;
    }

    .cp-header .cp-brand__logo img,
    .cp-header .cp-brand__logo .custom-logo {
        display: block !important;

        width: auto !important;
        height: 32px !important;
        max-width: 145px !important;

        object-fit: contain !important;
    }

    .cp-header .cp-brand__name {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;

        color: #f7f8ff !important;

        font-size: 1rem !important;
        font-weight: 900 !important;
        line-height: 1 !important;

        white-space: nowrap !important;
    }
}
/* ==========================================================
   CRAZYPAVOS - BRAND / INICIO MÓVIL DEFINITIVO
   ========================================================== */

@media (max-width: 900px) {

    .cp-header .cp-brand {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        order: 1 !important;

        align-items: center !important;

        flex: 0 1 auto !important;
        min-width: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        color: #f7f8ff !important;
        text-decoration: none !important;

        position: relative !important;
        z-index: 30 !important;
    }

    .cp-header .cp-brand__logo {
        display: flex !important;
        align-items: center !important;

        width: auto !important;
        min-width: 0 !important;
    }

    .cp-header .cp-brand__name {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;

        color: #f7f8ff !important;

        font-size: 1rem !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        letter-spacing: -.04em !important;

        white-space: nowrap !important;
    }

    .cp-header .cp-brand:hover,
    .cp-header .cp-brand:focus {
        color: #ffffff !important;
        text-decoration: none !important;
    }

    .cp-header .cp-menu-toggle {
        order: 2 !important;
        margin-left: auto !important;
    }

    .cp-header .cp-cart {
        order: 3 !important;
    }

    .cp-header .cp-header-search {
        order: 4 !important;

        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 100% !important;
    }

    .cp-header .cp-nav {
        order: 5 !important;
    }
}
/* ==========================================================
   CRAZYPAVOS - BOTÓN INICIO MÓVIL
   ========================================================== */

@media (max-width: 900px) {

    .cp-header .cp-brand {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;

        order: 1 !important;

        flex: 0 0 auto !important;

        min-height: 40px !important;

        margin: 0 !important;
        padding: 0 13px !important;

        border: 1px solid rgba(255,255,255,.11) !important;
        border-radius: 12px !important;

        background: rgba(255,255,255,.055) !important;

        color: #f7f8ff !important;

        text-decoration: none !important;

        font-size: .95rem !important;
        font-weight: 900 !important;
        line-height: 1 !important;

        position: relative !important;
        z-index: 50 !important;

        transition:
            background .2s ease,
            border-color .2s ease,
            transform .2s ease !important;
    }

    /*
     * Icono de casa sin necesidad de modificar header.php
     */
    .cp-header .cp-brand::before {
        content: "";

        display: block;

        width: 16px;
        height: 16px;

        flex: 0 0 16px;

        background-color: currentColor;

        -webkit-mask:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 3 2.5 11h2.25v9h5.5v-5.5h3.5V20h5.5v-9h2.25L12 3Z'/%3E%3C/svg%3E")
            center / contain no-repeat;

        mask:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 3 2.5 11h2.25v9h5.5v-5.5h3.5V20h5.5v-9h2.25L12 3Z'/%3E%3C/svg%3E")
            center / contain no-repeat;
    }

    .cp-header .cp-brand:hover,
    .cp-header .cp-brand:focus-visible {
        color: #fff !important;

        background: rgba(124,77,255,.16) !important;

        border-color: rgba(165,108,255,.42) !important;

        transform: translateY(-1px) !important;

        outline: none !important;
    }

    .cp-header .cp-brand__name {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;

        color: inherit !important;

        font-size: .95rem !important;
        font-weight: 900 !important;

        white-space: nowrap !important;
    }

    .cp-header .cp-menu-toggle {
        order: 2 !important;
        margin-left: auto !important;
    }

    .cp-header .cp-cart {
        order: 3 !important;
    }

    .cp-header .cp-header-search {
        order: 4 !important;

        flex: 0 0 100% !important;

        width: 100% !important;
        min-width: 100% !important;
    }
}
/* ==========================================================
   CRAZYPAVOS - LOGO + TEXTO EN HEADER
   ========================================================== */

/* Marca general */
.cp-header .cp-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--cp-text);
    font-weight: 900;
    letter-spacing: -.03em;
    min-width: 0;
}

.cp-header .cp-brand__logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.cp-header .cp-brand__logo img,
.cp-header .cp-brand__logo .custom-logo {
    display: block;
    width: auto;
    height: 42px;
    max-width: 42px;
    object-fit: contain;
}

.cp-header .cp-brand__name {
    display: inline-block !important;
    color: var(--cp-text);
    font-size: 1.15rem;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

/* Si no hay logo, no dejar espacio vacío */
.cp-header .cp-brand__logo:empty {
    display: none;
}

/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */

@media (max-width: 900px) {
    .cp-header .cp-brand {
        order: 1 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        min-height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        z-index: 30 !important;
    }

    .cp-header .cp-brand__logo img,
    .cp-header .cp-brand__logo .custom-logo {
        height: 34px !important;
        max-width: 34px !important;
    }

    .cp-header .cp-brand__name {
        display: inline-block !important;
        font-size: 1rem !important;
    }

    .cp-header .cp-menu-toggle {
        order: 2 !important;
        margin-left: auto !important;
    }

    .cp-header .cp-cart {
        order: 3 !important;
    }

    .cp-header .cp-header-search {
        order: 4 !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 100% !important;
    }

    .cp-header .cp-nav {
        order: 5 !important;
    }
}

/* En móviles muy pequeños, ocultar texto y dejar solo la imagen */
@media (max-width: 600px) {
    .cp-header .cp-brand__name {
        display: none !important;
    }
}
/* =====================================================
 * MISMO ANCHO PARA LOGIN Y REGISTRO
 * ===================================================== */

.woocommerce-account .woocommerce .u-columns.col2-set {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

/* Ambos bloques exactamente con el mismo ancho */
.woocommerce-account .woocommerce .u-columns.col2-set .u-column1.col-1,
.woocommerce-account .woocommerce .u-columns.col2-set .u-column2.col-2 {
    float: none !important;
    flex: 0 1 680px !important;
    width: 680px !important;
    max-width: 680px !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Evitar que el tema reduzca específicamente el formulario login */
.woocommerce-account .woocommerce form.login,
.woocommerce-account .woocommerce form.register {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Inputs siempre ocupando todo el espacio disponible */
.woocommerce-account .woocommerce form.login input.input-text,
.woocommerce-account .woocommerce form.register input.input-text {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}


/* =====================================================
 * RESPONSIVE
 * ===================================================== */

@media (max-width: 767px) {

    .woocommerce-account .woocommerce .u-columns.col2-set .u-column1.col-1,
    .woocommerce-account .woocommerce .u-columns.col2-set .u-column2.col-2 {
        width: 100% !important;
        max-width: 100% !important;
        flex-basis: 100% !important;
    }

}

/* ==========================================================
   CRAZYPAVOS - MI CUENTA / GRID DEFINITIVO
   Corrige avisos WooCommerce + navegación + contenido
   ========================================================== */

/*
 * WooCommerce imprime los avisos (por ejemplo, "Google vinculado")
 * dentro del mismo .woocommerce que contiene la navegación y el contenido.
 *
 * Si no les asignamos una fila propia, CSS Grid los considera el primer
 * elemento y desplaza:
 *   - navegación -> columna derecha
 *   - contenido  -> siguiente fila / columna izquierda
 *
 * Por eso la página se veía "desarmada" justo después de vincular Google.
 */

.woocommerce-account.logged-in .woocommerce {
    display:grid !important;
    grid-template-columns:250px minmax(0,1fr) !important;
    grid-template-areas:
        "notice notice"
        "nav content" !important;
    gap:24px !important;
    align-items:start !important;
    width:100% !important;
}

/* Avisos de WooCommerce / Google siempre ocupan toda la fila superior. */
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-account.logged-in .woocommerce > .woocommerce-message,
.woocommerce-account.logged-in .woocommerce > .woocommerce-info,
.woocommerce-account.logged-in .woocommerce > .woocommerce-error,
.woocommerce-account.logged-in .woocommerce > .cp-google-notice {
    grid-area:notice !important;
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
}

/*
 * WooCommerce normalmente usa .woocommerce-notices-wrapper.
 * Cuando contiene un aviso, evitamos que el propio aviso vuelva
 * a comportarse como elemento del grid principal.
 */
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper:empty {
    display:none !important;
}

.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper > * {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
}

/* Navegación siempre a la izquierda. */
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
    grid-area:nav !important;
    grid-column:1 !important;
    width:100% !important;
    max-width:250px !important;
    float:none !important;
    margin:0 !important;
}

/* Contenido siempre a la derecha. */
.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    grid-area:content !important;
    grid-column:2 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    float:none !important;
    margin:0 !important;
}

/* El panel de Cuentas vinculadas debe poder usar todo el ancho disponible. */
.woocommerce-account.logged-in .cp-google-account,
.woocommerce-account.logged-in .cp-google-provider {
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}

/* Evitar que correo/nombre se rompan letra por letra. */
.woocommerce-account.logged-in .cp-google-provider__identity {
    min-width:0 !important;
}

.woocommerce-account.logged-in .cp-google-provider__identity small {
    overflow-wrap:break-word !important;
    word-break:normal !important;
    white-space:normal !important;
}

/* En escritorio damos un poco más de aire al proveedor vinculado. */
@media (min-width:901px) {
    .woocommerce-account.logged-in .cp-google-provider {
        padding:22px 24px !important;
    }

    .woocommerce-account.logged-in .cp-google-provider__actions {
        margin-left:auto !important;
    }
}

/* Tablet / móvil: navegación y contenido uno debajo del otro. */
@media (max-width:900px) {
    .woocommerce-account.logged-in .woocommerce {
        grid-template-columns:1fr !important;
        grid-template-areas:
            "notice"
            "nav"
            "content" !important;
        gap:18px !important;
    }

    .woocommerce-account.logged-in .woocommerce-MyAccount-navigation,
    .woocommerce-account.logged-in .woocommerce-MyAccount-content {
        grid-column:1 !important;
        width:100% !important;
        max-width:none !important;
    }
}


/* ==========================================================
   CRAZYPAVOS - BUSCADOR DEL HEADER / ALINEACIÓN DEFINITIVA
   Evita desplazamiento vertical en páginas WooCommerce
   ========================================================== */

/*
 * En algunas páginas de WooCommerce (como Mi cuenta) se cargan
 * reglas adicionales para formularios. FiboSearch es también un
 * <form>, por lo que fijamos explícitamente su alineación dentro
 * del header para que no dependa del contexto de la página.
 */

@media (min-width: 901px) {

    .cp-header__inner {
        align-items: center !important;
    }

    .cp-header .cp-header-search {
        display: flex !important;
        align-items: center !important;
        align-self: center !important;

        margin: 0 !important;
        padding: 0 !important;

        position: relative !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;

        transform: none !important;
        vertical-align: middle !important;
    }

    .cp-header .cp-header-search .dgwt-wcas-search-wrapp,
    .cp-header .cp-header-search .dgwt-wcas-search-form,
    .cp-header .cp-header-search .dgwt-wcas-sf-wrapp {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;

        top: auto !important;
        bottom: auto !important;

        transform: none !important;
    }

    .cp-header .cp-header-search .dgwt-wcas-search-wrapp {
        display: block !important;
        align-self: center !important;
    }

    .cp-header .cp-header-search input.dgwt-wcas-search-input {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        vertical-align: middle !important;
    }
}


/* ==========================================================
   CRAZYPAVOS - FIBOSEARCH / ESTILO DEFINITIVO
   Buscador oscuro coherente con la identidad visual del sitio
   ========================================================== */

/* Contenedor principal */
.cp-header .cp-header-search .dgwt-wcas-search-wrapp,
.cp-header .cp-header-search .dgwt-wcas-sf-wrapp {
    width:100% !important;
    max-width:100% !important;
}

/* Campo de búsqueda */
.cp-header .cp-header-search
.dgwt-wcas-search-wrapp
.dgwt-wcas-sf-wrapp
input[type="search"].dgwt-wcas-search-input,
.cp-header .cp-header-search
input.dgwt-wcas-search-input {
    width:100% !important;
    height:46px !important;
    min-height:46px !important;

    padding:0 76px 0 46px !important;

    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:15px !important;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.045),
            rgba(255,255,255,.025)
        ),
        #101421 !important;

    color:#f7f8ff !important;

    font-family:inherit !important;
    font-size:.9rem !important;
    font-weight:600 !important;
    line-height:1 !important;

    outline:none !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.025),
        0 8px 24px rgba(0,0,0,.14) !important;

    caret-color:#a56cff !important;

    transition:
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease !important;
}

/* Placeholder */
.cp-header .cp-header-search
.dgwt-wcas-search-input::placeholder {
    color:#858da7 !important;
    opacity:1 !important;
    font-weight:500 !important;
}

/* Hover */
.cp-header .cp-header-search
.dgwt-wcas-search-input:hover {
    border-color:rgba(255,255,255,.20) !important;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.06),
            rgba(255,255,255,.035)
        ),
        #111624 !important;
}

/* Focus */
.cp-header .cp-header-search
.dgwt-wcas-search-input:focus {
    border-color:rgba(165,108,255,.78) !important;

    background:#121727 !important;

    box-shadow:
        0 0 0 3px rgba(124,77,255,.14),
        0 10px 30px rgba(0,0,0,.18) !important;
}

/* ==========================================================
   ICONO DE BÚSQUEDA
   ========================================================== */

.cp-header .cp-header-search
.dgwt-wcas-ico-magnifier,
.cp-header .cp-header-search
.dgwt-wcas-ico-magnifier-handler {
    color:#a56cff !important;
    fill:#a56cff !important;
    stroke:#a56cff !important;
    opacity:1 !important;
}

.cp-header .cp-header-search
.dgwt-wcas-ico-magnifier path,
.cp-header .cp-header-search
.dgwt-wcas-ico-magnifier-handler path {
    fill:#a56cff !important;
    stroke:#a56cff !important;
}

/* ==========================================================
   BOTÓN X / LIMPIAR
   ========================================================== */

.cp-header .cp-header-search
.dgwt-wcas-close {
    color:#8f96ad !important;
    opacity:.9 !important;
}

.cp-header .cp-header-search
.dgwt-wcas-close:hover {
    color:#f7f8ff !important;
    opacity:1 !important;
}

.cp-header .cp-header-search
.dgwt-wcas-close svg,
.cp-header .cp-header-search
.dgwt-wcas-close path {
    fill:currentColor !important;
    stroke:currentColor !important;
}

/* ==========================================================
   PRELOADER
   ========================================================== */

.cp-header .cp-header-search
.dgwt-wcas-preloader {
    filter:none !important;
    opacity:.75 !important;
}

/* ==========================================================
   RESULTADOS / AUTOCOMPLETADO
   ========================================================== */

.dgwt-wcas-suggestions-wrapp,
.dgwt-wcas-details-wrapp {
    overflow:hidden !important;

    border:1px solid rgba(255,255,255,.11) !important;
    border-radius:16px !important;

    background:#14182a !important;
    color:#f7f8ff !important;

    box-shadow:
        0 22px 55px rgba(0,0,0,.48),
        inset 0 1px 0 rgba(255,255,255,.025) !important;

    z-index:999999 !important;
}

/* Resultado individual */
.dgwt-wcas-suggestion {
    min-height:62px !important;

    padding:10px 12px !important;

    border-bottom:1px solid rgba(255,255,255,.055) !important;

    background:transparent !important;
    color:#f7f8ff !important;

    transition:
        background .15s ease,
        color .15s ease !important;
}

.dgwt-wcas-suggestion:last-child {
    border-bottom:0 !important;
}

/* Hover / seleccionado */
.dgwt-wcas-suggestion:hover,
.dgwt-wcas-suggestion-selected {
    background:rgba(124,77,255,.13) !important;
    color:#fff !important;
}

/* Título del producto */
.dgwt-wcas-suggestion .dgwt-wcas-st-title,
.dgwt-wcas-suggestion .dgwt-wcas-st {
    color:#f7f8ff !important;
    font-weight:800 !important;
}

/* Precio */
.dgwt-wcas-suggestion .dgwt-wcas-sp,
.dgwt-wcas-suggestion .woocommerce-Price-amount {
    color:#ffe455 !important;
    font-weight:900 !important;
}

/* Texto secundario */
.dgwt-wcas-suggestion .dgwt-wcas-st-desc,
.dgwt-wcas-suggestion .dgwt-wcas-sku {
    color:#9ca4bc !important;
}

/* Imagen */
.dgwt-wcas-suggestion .dgwt-wcas-si img {
    border-radius:10px !important;
    background:rgba(255,255,255,.035) !important;
}

/* Cabeceras dentro de sugerencias */
.dgwt-wcas-suggestions-wrapp .dgwt-wcas-suggestion-headline {
    padding:10px 12px !important;

    background:#101421 !important;
    color:#8f96ad !important;

    border-bottom:1px solid rgba(255,255,255,.07) !important;

    font-size:.72rem !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width:900px) {
    .cp-header .cp-header-search
    .dgwt-wcas-search-wrapp
    .dgwt-wcas-sf-wrapp
    input[type="search"].dgwt-wcas-search-input,
    .cp-header .cp-header-search
    input.dgwt-wcas-search-input {
        height:44px !important;
        min-height:44px !important;

        padding-left:44px !important;
        padding-right:74px !important;

        border-radius:14px !important;
    }
}
/* ==========================================================
   CRAZYPAVOS - FIBOSEARCH
   ELIMINAR FONDO BLANCO DEL CONTENEDOR
   ========================================================== */

.cp-header .cp-header-search .dgwt-wcas-search-wrapp,
.cp-header .cp-header-search .dgwt-wcas-search-form,
.cp-header .cp-header-search .dgwt-wcas-sf-wrapp {
    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;

    box-shadow: none !important;

    padding: 0 !important;
}

/* Eliminar posibles capas blancas generadas por el plugin */
.cp-header .cp-header-search .dgwt-wcas-sf-wrapp::before,
.cp-header .cp-header-search .dgwt-wcas-sf-wrapp::after,
.cp-header .cp-header-search .dgwt-wcas-search-wrapp::before,
.cp-header .cp-header-search .dgwt-wcas-search-wrapp::after {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* ==========================================================
   CRAZYPAVOS - ICONO MI CUENTA EN HEADER
   ========================================================== */

/* Enlace Mi cuenta */
.cp-header .cp-nav a[href*="mi-cuenta"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Icono de usuario */
.cp-header .cp-nav a[href*="mi-cuenta"]::before {
    content: "";

    width: 18px;
    height: 18px;

    flex: 0 0 18px;

    background-color: currentColor;

    -webkit-mask:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M20 21a8 8 0 0 0-16 0M12 13a5 5 0 1 0 0-10 5 5 0 0 0 0 10Z'/%3E%3C/svg%3E")
        center / contain no-repeat;

    mask:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M20 21a8 8 0 0 0-16 0M12 13a5 5 0 1 0 0-10 5 5 0 0 0 0 10Z'/%3E%3C/svg%3E")
        center / contain no-repeat;

    opacity: .95;
}

/* ==========================================================
   HEADER · MENÚ FORTNITE DESPLEGABLE
   ========================================================== */
.cp-header .cp-fortnite-menu{
    position:relative;
}
.cp-header .cp-fortnite-toggle{
    display:inline-flex;
    align-items:center;
    gap:7px;
    cursor:pointer;
}
.cp-header .cp-fortnite-toggle::after{
    content:"";
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:translateY(-2px) rotate(45deg);
    transition:transform .18s ease;
    opacity:.75;
}
.cp-header .cp-fortnite-menu.is-open > .cp-fortnite-toggle,
.cp-header .cp-fortnite-toggle:focus-visible{
    color:#fff;
}
.cp-header .cp-fortnite-menu.is-open > .cp-fortnite-toggle::after{
    transform:translateY(2px) rotate(225deg);
}
.cp-header .cp-fortnite-submenu{
    position:absolute;
    top:calc(100% + 15px);
    left:50%;
    z-index:1000;
    display:grid;
    width:270px;
    margin:0;
    padding:8px;
    list-style:none;
    border:1px solid rgba(255,255,255,.11);
    border-radius:16px;
    background:rgba(12,15,28,.97);
    box-shadow:0 22px 60px rgba(0,0,0,.46);
    backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate(-50%,-7px);
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.cp-header .cp-fortnite-menu.is-open > .cp-fortnite-submenu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%,0);
}
.cp-header .cp-fortnite-submenu::before{
    content:"";
    position:absolute;
    top:-6px;
    left:50%;
    width:11px;
    height:11px;
    border-left:1px solid rgba(255,255,255,.11);
    border-top:1px solid rgba(255,255,255,.11);
    background:#0c0f1c;
    transform:translateX(-50%) rotate(45deg);
}
.cp-header .cp-fortnite-submenu li{
    margin:0;
    padding:0;
}
.cp-header .cp-fortnite-submenu li + li{
    margin-top:2px;
}
.cp-header .cp-fortnite-submenu a{
    position:relative;
    display:flex;
    align-items:center;
    min-height:48px;
    padding:10px 12px 10px 44px;
    border-radius:11px;
    color:#b7bdd1;
    font-size:.92rem;
    font-weight:800;
    white-space:nowrap;
    transition:background .16s ease,color .16s ease,transform .16s ease;
}
.cp-header .cp-fortnite-submenu a::before{
    content:"";
    position:absolute;
    left:13px;
    top:50%;
    width:20px;
    height:20px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:7px;
    background:rgba(124,77,255,.10);
    transform:translateY(-50%);
}
.cp-header .cp-fortnite-menu__item--pavos > a::after,
.cp-header .cp-fortnite-menu__item--club > a::after,
.cp-header .cp-fortnite-menu__item--shop > a::after{
    position:absolute;
    left:18px;
    top:50%;
    z-index:1;
    width:10px;
    height:10px;
    color:#a98bff;
    font-size:10px;
    line-height:10px;
    text-align:center;
    transform:translate(-1px,-50%);
}
.cp-header .cp-fortnite-menu__item--pavos > a::after{content:"V";font-weight:950}
.cp-header .cp-fortnite-menu__item--club > a::after{content:"★";font-size:9px}
.cp-header .cp-fortnite-menu__item--shop > a::after{content:"◆";font-size:8px}
.cp-header .cp-fortnite-submenu a:hover,
.cp-header .cp-fortnite-submenu a:focus-visible{
    color:#fff;
    background:linear-gradient(90deg,rgba(124,77,255,.15),rgba(34,211,238,.06));
    transform:translateX(2px);
    outline:none;
}

@media(max-width:900px){
    html body .cp-header .cp-fortnite-menu{
        width:100%!important;
    }
    html body .cp-header .cp-fortnite-toggle{
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        width:100%!important;
        min-height:46px!important;
        padding:10px 12px!important;
        border-radius:10px!important;
        color:#aeb4c9!important;
        font-weight:700!important;
        box-sizing:border-box!important;
    }
    html body .cp-header .cp-fortnite-menu.is-open > .cp-fortnite-toggle{
        color:#fff!important;
        background:rgba(124,77,255,.14)!important;
    }
    html body .cp-header .cp-fortnite-submenu{
        position:static!important;
        display:none!important;
        width:100%!important;
        margin:3px 0 5px!important;
        padding:4px!important;
        border:1px solid rgba(255,255,255,.07)!important;
        border-radius:12px!important;
        background:rgba(4,6,14,.38)!important;
        box-shadow:none!important;
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
        transform:none!important;
    }
    html body .cp-header .cp-fortnite-menu.is-open > .cp-fortnite-submenu{
        display:block!important;
    }
    html body .cp-header .cp-fortnite-submenu::before{
        display:none!important;
    }
    html body .cp-header .cp-fortnite-submenu li{
        width:100%!important;
    }
    html body .cp-header .cp-fortnite-submenu a{
        min-height:43px!important;
        padding:8px 12px 8px 44px!important;
        color:#9ea7c1!important;
        font-size:.9rem!important;
        white-space:normal!important;
    }
    html body .cp-header .cp-fortnite-submenu a:hover,
    html body .cp-header .cp-fortnite-submenu a:focus,
    html body .cp-header .cp-fortnite-submenu a:active{
        color:#fff!important;
        background:rgba(124,77,255,.11)!important;
    }
}


/* ==========================================================
   CRAZYPAVOS 0.4.3 · HEADER DESKTOP CENTRADO / FLOTANTE
   Mantiene el comportamiento móvil existente.
   ========================================================== */
@media (min-width: 901px) {
    .cp-header {
        top: 10px !important;
        padding: 10px 0 0 !important;
        border-bottom: 0 !important;
        background: transparent !important;
        backdrop-filter: none !important;
        pointer-events: none;
    }

    .cp-header .cp-header__inner {
        width: min(calc(100% - 48px), 1500px) !important;
        min-height: 74px !important;
        margin-inline: auto !important;
        padding: 10px 16px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 22px !important;
        border: 1px solid rgba(255,255,255,.11) !important;
        border-radius: 22px !important;
        background: rgba(8, 9, 16, .94) !important;
        box-shadow: 0 18px 48px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.025) !important;
        backdrop-filter: blur(18px) !important;
        pointer-events: auto;
    }

    .cp-header .cp-header__left {
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 18px;
    }

    .cp-header .cp-brand {
        flex: 0 0 auto !important;
    }

    .cp-header .cp-header-search {
        flex: 1 1 290px !important;
        width: auto !important;
        min-width: 180px !important;
        max-width: 310px !important;
        margin: 0 !important;
    }

    .cp-header .cp-nav {
        grid-column: 2 !important;
        margin: 0 !important;
        justify-self: center !important;
        min-width: max-content;
    }

    .cp-header .cp-nav__list {
        align-items: center !important;
        justify-content: center !important;
        gap: 28px !important;
    }

    .cp-header .cp-nav__list > li > a,
    .cp-header .cp-fortnite-toggle {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        color: #aeb4c9;
        font-size: .94rem;
        font-weight: 800;
        white-space: nowrap;
    }

    .cp-header .cp-nav__list > li > a:hover,
    .cp-header .cp-nav__list > li.current-menu-item > a,
    .cp-header .cp-nav__list > li.current-menu-ancestor > a,
    .cp-header .cp-fortnite-menu.is-open > .cp-fortnite-toggle {
        color: #fff !important;
    }

    .cp-header .cp-cart {
        grid-column: 3 !important;
        justify-self: end !important;
        margin: 0 !important;
        min-height: 48px !important;
        border-radius: 15px !important;
        padding-inline: 18px !important;
    }

    .cp-header .cp-menu-toggle {
        display: none !important;
    }
}

@media (max-width: 900px) {
    .cp-header .cp-header__left {
        display: contents !important;
    }
}


/* ==========================================================
   CRAZYPAVOS 0.4.4 · HEADER FORTNITE PRIORITARIO
   - Fortnite primero
   - Cuentas Para Agregar => Agregar
   - Mi cuenta como icono junto al carrito
   - Dropdown limpio, sin V/estrella/rombo
   ========================================================== */
.cp-header .cp-fortnite-toggle::before{
    content:"";
    width:21px;
    height:21px;
    flex:0 0 21px;
    border-radius:6px;
    background:url("../images/fortnite-menu-icon.png") center/contain no-repeat;
    box-shadow:0 0 0 1px rgba(255,255,255,.08);
}

/* Dropdown estilo compacto/lista, inspirado en las referencias. */
.cp-header .cp-fortnite-submenu{
    width:255px;
    padding:0;
    overflow:hidden;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.12);
    background:#0b0e18;
    box-shadow:0 24px 64px rgba(0,0,0,.55);
}
.cp-header .cp-fortnite-submenu::before{
    background:#0b0e18;
}
.cp-header .cp-fortnite-submenu li + li{
    margin-top:0;
    border-top:1px solid rgba(255,255,255,.07);
}
.cp-header .cp-fortnite-submenu a{
    min-height:54px;
    padding:0 18px;
    border-radius:0;
    color:#c3c8d8;
    font-size:.88rem;
    font-weight:850;
    letter-spacing:.025em;
    white-space:normal;
    text-transform:none;
    transform:none;
}
.cp-header .cp-fortnite-submenu a::before,
.cp-header .cp-fortnite-menu__item--pavos > a::after,
.cp-header .cp-fortnite-menu__item--club > a::after,
.cp-header .cp-fortnite-menu__item--shop > a::after{
    content:none !important;
    display:none !important;
}
.cp-header .cp-fortnite-submenu a:hover,
.cp-header .cp-fortnite-submenu a:focus-visible{
    color:#fff;
    background:linear-gradient(90deg,rgba(124,77,255,.16),rgba(34,211,238,.045));
    transform:none;
}

.cp-header__actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
}
.cp-header .cp-account-icon{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    flex:0 0 48px;
    padding:0;
    border:1px solid rgba(255,255,255,.11);
    border-radius:14px;
    background:rgba(255,255,255,.025);
    color:#c9cede;
    text-decoration:none;
    transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease;
}
.cp-header .cp-account-icon svg{
    width:21px;
    height:21px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.cp-header .cp-account-icon:hover,
.cp-header .cp-account-icon:focus-visible{
    color:#fff;
    border-color:rgba(155,114,255,.42);
    background:rgba(124,77,255,.11);
    transform:translateY(-1px);
    outline:none;
}

@media (min-width:901px){
    .cp-header .cp-header__inner{
        grid-template-columns:minmax(0,1fr) auto minmax(210px,1fr)!important;
    }
    .cp-header .cp-nav__list{
        gap:30px!important;
    }
    .cp-header .cp-header__actions{
        grid-column:3!important;
        justify-self:end!important;
    }
    .cp-header .cp-cart{
        grid-column:auto!important;
        justify-self:auto!important;
    }
}

@media (max-width:900px){
    .cp-header .cp-header__actions{
        display:contents!important;
    }
    html body .cp-header .cp-account-icon{
        order:3!important;
        width:44px!important;
        height:44px!important;
        flex:0 0 44px!important;
        margin:0!important;
        position:relative!important;
        z-index:30!important;
    }
    html body .cp-header .cp-fortnite-toggle{
        justify-content:flex-start!important;
        gap:10px!important;
    }
    html body .cp-header .cp-fortnite-toggle::after{
        margin-left:auto!important;
    }
    html body .cp-header .cp-fortnite-submenu{
        padding:0!important;
        overflow:hidden!important;
        background:rgba(4,6,14,.46)!important;
    }
    html body .cp-header .cp-fortnite-submenu a{
        min-height:48px!important;
        padding:0 14px!important;
        border-radius:0!important;
        font-size:.9rem!important;
    }
    html body .cp-header .cp-fortnite-submenu li + li{
        border-top:1px solid rgba(255,255,255,.06)!important;
    }
}


/* ==========================================================
   CRAZYPAVOS 0.4.6 · CTA BOTS
   Presenta la automatización de solicitudes como una acción compacta.
   ========================================================== */
@media (min-width:901px){
    .cp-header .cp-nav__list > .cp-add-account-menu > a{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        gap:9px!important;
        min-height:42px!important;
        padding:0 15px!important;
        border:1px solid rgba(155,114,255,.34)!important;
        border-radius:12px!important;
        background:linear-gradient(180deg,rgba(124,77,255,.105),rgba(124,77,255,.045))!important;
        color:#e7e1ff!important;
        font-size:.82rem!important;
        font-weight:850!important;
        white-space:nowrap!important;
        transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
    }
    .cp-header .cp-nav__list > .cp-add-account-menu > a::before{
        content:""!important;
        display:block!important;
        width:18px!important;
        height:18px!important;
        flex:0 0 18px!important;
        background-color:currentColor!important;
        -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 2h2v2.08A8.002 8.002 0 0 1 20 12v5a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-5a8.002 8.002 0 0 1 7-7.92V2Zm-4 8a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4ZM8 17h8v-2H8v2Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
                mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 2h2v2.08A8.002 8.002 0 0 1 20 12v5a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-5a8.002 8.002 0 0 1 7-7.92V2Zm-4 8a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4ZM8 17h8v-2H8v2Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
    }
    .cp-header .cp-nav__list > .cp-add-account-menu > a:hover,
    .cp-header .cp-nav__list > .cp-add-account-menu > a:focus-visible{
        color:#fff!important;
        border-color:rgba(155,114,255,.62)!important;
        background:linear-gradient(180deg,rgba(124,77,255,.19),rgba(124,77,255,.09))!important;
        transform:translateY(-1px)!important;
    }
}

@media (max-width:900px){
    html body .cp-header .cp-nav__list > .cp-add-account-menu > a{
        display:flex!important;
        align-items:center!important;
        gap:10px!important;
        border:1px solid rgba(155,114,255,.25)!important;
        background:rgba(124,77,255,.08)!important;
    }
    html body .cp-header .cp-nav__list > .cp-add-account-menu > a::before{
        content:""!important;
        display:block!important;
        width:20px!important;
        height:20px!important;
        flex:0 0 20px!important;
        background-color:#cbbcff!important;
        -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 2h2v2.08A8.002 8.002 0 0 1 20 12v5a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-5a8.002 8.002 0 0 1 7-7.92V2Zm-4 8a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4ZM8 17h8v-2H8v2Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
                mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 2h2v2.08A8.002 8.002 0 0 1 20 12v5a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-5a8.002 8.002 0 0 1 7-7.92V2Zm-4 8a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4ZM8 17h8v-2H8v2Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
    }
}


/* ==========================================================
   CRAZYPAVOS 0.4.7 · WORDMARK LIMPIO
   - Sin logo/imagen en el header
   - Sin buscador FiboSearch en el header
   - Marca CrazyPavosCL morada con hover suave
   ========================================================== */
.cp-header .cp-header-search,
.cp-header .cp-brand__logo{
    display:none!important;
}
.cp-header .cp-brand.cp-brand--wordmark{
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    min-width:0!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 4px!important;
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    text-decoration:none!important;
    transform:none!important;
}
.cp-header .cp-brand.cp-brand--wordmark::before,
.cp-header .cp-brand.cp-brand--wordmark::after{
    content:none!important;
    display:none!important;
}
.cp-header .cp-brand.cp-brand--wordmark .cp-brand__name{
    display:block!important;
    margin:0!important;
    padding:0!important;
    color:#9b72ff!important;
    font-size:clamp(1rem,1.25vw,1.16rem)!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:-.025em!important;
    white-space:nowrap!important;
    text-shadow:0 0 18px rgba(124,77,255,.10)!important;
    transition:color .18s ease,opacity .18s ease,text-shadow .18s ease!important;
}
.cp-header .cp-brand.cp-brand--wordmark:hover .cp-brand__name,
.cp-header .cp-brand.cp-brand--wordmark:focus-visible .cp-brand__name{
    color:#c5b3ff!important;
    text-shadow:0 0 22px rgba(155,114,255,.18)!important;
}
.cp-header .cp-brand.cp-brand--wordmark:focus-visible{
    outline:2px solid rgba(155,114,255,.55)!important;
    outline-offset:6px!important;
}

@media (min-width:901px){
    .cp-header .cp-header__left{
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        min-width:0!important;
    }
    .cp-header .cp-header__inner{
        grid-template-columns:minmax(175px,1fr) auto minmax(210px,1fr)!important;
    }
}

@media (max-width:900px){
    html body .cp-header .cp-brand.cp-brand--wordmark{
        order:1!important;
        display:inline-flex!important;
        flex:0 0 auto!important;
        min-height:42px!important;
        padding:0!important;
    }
    html body .cp-header .cp-brand.cp-brand--wordmark .cp-brand__name{
        display:block!important;
        font-size:1rem!important;
        color:#9b72ff!important;
    }
}


/* ==========================================================
   CRAZYPAVOS 0.4.8 · NINTENDO SWITCH EN HEADER
   - Switch como segundo grupo principal, después de Fortnite
   - Desplegable: Juegos / Online
   - Usa el icono Nintendo Switch proporcionado para el header
   ========================================================== */
.cp-header .cp-switch-menu{
    position:relative;
}
.cp-header .cp-switch-toggle{
    display:inline-flex;
    align-items:center;
    gap:7px;
    cursor:pointer;
}
.cp-header .cp-switch-toggle::before{
    content:"";
    width:21px;
    height:21px;
    flex:0 0 21px;
    border-radius:6px;
    background:url("../images/switch-menu-icon.png") center/cover no-repeat;
    box-shadow:0 0 0 1px rgba(255,255,255,.08);
}
.cp-header .cp-switch-toggle::after{
    content:"";
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:translateY(-2px) rotate(45deg);
    transition:transform .18s ease;
    opacity:.75;
}
.cp-header .cp-switch-menu.is-open > .cp-switch-toggle,
.cp-header .cp-switch-toggle:focus-visible{
    color:#fff!important;
}
.cp-header .cp-switch-menu.is-open > .cp-switch-toggle::after{
    transform:translateY(2px) rotate(225deg);
}

/* El segundo dropdown comparte el mismo lenguaje visual que Fortnite. */
.cp-header .cp-switch-menu > .sub-menu{
    position:absolute;
    top:calc(100% + 15px);
    left:50%;
    z-index:1000;
    display:grid;
    width:215px;
    margin:0;
    padding:0;
    list-style:none;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:#0b0e18;
    box-shadow:0 24px 64px rgba(0,0,0,.55);
    backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate(-50%,-7px);
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.cp-header .cp-switch-menu.is-open > .sub-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%,0);
}
.cp-header .cp-switch-menu > .sub-menu::before{
    content:"";
    position:absolute;
    top:-6px;
    left:50%;
    width:11px;
    height:11px;
    border-left:1px solid rgba(255,255,255,.11);
    border-top:1px solid rgba(255,255,255,.11);
    background:#0b0e18;
    transform:translateX(-50%) rotate(45deg);
}
.cp-header .cp-switch-menu > .sub-menu li{
    margin:0;
    padding:0;
}
.cp-header .cp-switch-menu > .sub-menu li + li{
    border-top:1px solid rgba(255,255,255,.07);
}
.cp-header .cp-switch-menu > .sub-menu a{
    display:flex;
    align-items:center;
    min-height:54px;
    padding:0 18px;
    border-radius:0;
    color:#c3c8d8;
    font-size:.88rem;
    font-weight:850;
    letter-spacing:.025em;
    white-space:normal;
    text-transform:none;
    text-decoration:none;
    transform:none;
    transition:background .16s ease,color .16s ease;
}
.cp-header .cp-switch-menu > .sub-menu a::before,
.cp-header .cp-switch-menu > .sub-menu a::after{
    content:none!important;
    display:none!important;
}
.cp-header .cp-switch-menu > .sub-menu a:hover,
.cp-header .cp-switch-menu > .sub-menu a:focus-visible{
    color:#fff;
    background:linear-gradient(90deg,rgba(232,47,42,.14),rgba(124,77,255,.055));
    outline:none;
}

@media (min-width:901px){
    .cp-header .cp-nav__list{
        gap:22px!important;
    }
}

@media (max-width:900px){
    html body .cp-header .cp-switch-menu{
        width:100%!important;
    }
    html body .cp-header .cp-switch-toggle{
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:10px!important;
        width:100%!important;
        min-height:46px!important;
        padding:10px 12px!important;
        border-radius:10px!important;
        color:#aeb4c9!important;
        font-weight:700!important;
        box-sizing:border-box!important;
    }
    html body .cp-header .cp-switch-toggle::after{
        margin-left:auto!important;
    }
    html body .cp-header .cp-switch-menu.is-open > .cp-switch-toggle{
        color:#fff!important;
        background:rgba(232,47,42,.08)!important;
    }
    html body .cp-header .cp-switch-menu > .sub-menu{
        position:static!important;
        display:none!important;
        width:100%!important;
        margin:3px 0 5px!important;
        padding:0!important;
        border:1px solid rgba(255,255,255,.07)!important;
        border-radius:12px!important;
        background:rgba(4,6,14,.46)!important;
        box-shadow:none!important;
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
        transform:none!important;
    }
    html body .cp-header .cp-switch-menu.is-open > .sub-menu{
        display:block!important;
    }
    html body .cp-header .cp-switch-menu > .sub-menu::before{
        display:none!important;
    }
    html body .cp-header .cp-switch-menu > .sub-menu li{
        width:100%!important;
    }
    html body .cp-header .cp-switch-menu > .sub-menu li + li{
        border-top:1px solid rgba(255,255,255,.06)!important;
    }
    html body .cp-header .cp-switch-menu > .sub-menu a{
        min-height:48px!important;
        padding:0 14px!important;
        border-radius:0!important;
        color:#9ea7c1!important;
        font-size:.9rem!important;
        white-space:normal!important;
    }
    html body .cp-header .cp-switch-menu > .sub-menu a:hover,
    html body .cp-header .cp-switch-menu > .sub-menu a:focus,
    html body .cp-header .cp-switch-menu > .sub-menu a:active{
        color:#fff!important;
        background:rgba(232,47,42,.08)!important;
    }
}


/* ==========================================================
   CRAZYPAVOS 0.4.13 · ROBLOX JUNTO A FORTNITE
   - Entrada directa entre Switch y Bots
   - Icono sutil de destello / IA
   - Compatible con escritorio y menú móvil
   ========================================================== */
.cp-header .cp-nav__list > .cp-ai-services-menu > a{
    display:inline-flex;
    align-items:center;
    gap:8px;
}
.cp-header .cp-nav__list > .cp-ai-services-menu > a::before{
    content:"";
    display:block;
    width:18px;
    height:18px;
    flex:0 0 18px;
    background:linear-gradient(135deg,#b89cff,#7c4dff 56%,#55d7ff);
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l1.7 5.3L19 9l-5.3 1.7L12 16l-1.7-5.3L5 9l5.3-1.7L12 2Zm7 11 .9 2.6L22.5 16l-2.6.9L19 19.5l-.9-2.6-2.6-.9 2.6-.9L19 13ZM5 14l1.2 3.8L10 19l-3.8 1.2L5 24l-1.2-3.8L0 19l3.8-1.2L5 14Z'/%3E%3C/svg%3E") center/contain no-repeat;
            mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l1.7 5.3L19 9l-5.3 1.7L12 16l-1.7-5.3L5 9l5.3-1.7L12 2Zm7 11 .9 2.6L22.5 16l-2.6.9L19 19.5l-.9-2.6-2.6-.9 2.6-.9L19 13ZM5 14l1.2 3.8L10 19l-3.8 1.2L5 24l-1.2-3.8L0 19l3.8-1.2L5 14Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.cp-header .cp-nav__list > .cp-ai-services-menu > a:hover::before,
.cp-header .cp-nav__list > .cp-ai-services-menu.current-menu-item > a::before{
    background:linear-gradient(135deg,#d7c8ff,#9b72ff 55%,#7ee8ff);
}

@media (max-width:900px){
    html body .cp-header .cp-nav__list > .cp-ai-services-menu > a{
        display:flex!important;
        align-items:center!important;
        gap:10px!important;
        width:100%!important;
    }
    html body .cp-header .cp-nav__list > .cp-ai-services-menu > a::before{
        width:20px!important;
        height:20px!important;
        flex:0 0 20px!important;
    }
}


/* 0.4.13 · Roblox inmediatamente después de Fortnite */
.cp-header .cp-nav__list > .cp-roblox-menu > a{
    display:inline-flex;
    align-items:center;
    gap:8px;
}
.cp-header .cp-nav__list > .cp-roblox-menu > a::before{
    content:"";
    flex:0 0 auto;
    width:20px;
    height:20px;
    display:block;
    background:url("../images/roblox-icon.png") center/contain no-repeat;
    border-radius:5px;
    transition:transform .18s ease, opacity .18s ease;
}
.cp-header .cp-nav__list > .cp-roblox-menu > a:hover::before,
.cp-header .cp-nav__list > .cp-roblox-menu.current-menu-item > a::before{
    transform:translateY(-1px) rotate(-2deg);
    opacity:.86;
}
@media(max-width:900px){
    html body .cp-header .cp-nav__list > .cp-roblox-menu > a::before{
        width:22px;
        height:22px;
    }
}



/* 0.4.17 · Footer minimalista */
.cp-footer.cp-footer--pro{
    margin-top:58px;
    border-top:1px solid rgba(255,255,255,.06);
    background:
        radial-gradient(circle at 10% 0%,rgba(124,77,255,.075),transparent 28rem),
        #05060c;
}
.cp-footer__grid{
    display:grid;
    grid-template-columns:1.45fr 1fr 1fr .72fr;
    gap:34px;
    padding:44px 0 32px;
}
.cp-footer__brand-col{
    max-width:380px;
}
.cp-footer__logo{
    display:inline-block;
    color:#9b72ff;
    font-size:1.45rem;
    line-height:1;
    font-weight:850;
    letter-spacing:-.035em;
    text-decoration:none;
    transition:color .18s ease;
}
.cp-footer__logo:hover{
    color:#b49aff;
}
.cp-footer__desc{
    max-width:350px;
    margin:14px 0 0;
    color:#8f97ae;
    font-size:.86rem;
    line-height:1.7;
}
.cp-footer__mini-badges{
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:17px 0 0;
    padding:0;
}
.cp-footer__mini-badges li{
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:999px;
    background:rgba(255,255,255,.018);
    color:#b7bdd0;
    font-size:.7rem;
    font-weight:700;
}
.cp-footer__col h3{
    margin:1px 0 14px;
    color:#e8eaf2;
    font-size:.78rem;
    line-height:1.2;
    font-weight:850;
    letter-spacing:.085em;
    text-transform:uppercase;
}
.cp-footer__list{
    list-style:none;
    display:grid;
    gap:9px;
    margin:0;
    padding:0;
}
.cp-footer__list a{
    display:inline-block;
    color:#929ab0;
    font-size:.82rem;
    font-weight:550;
    line-height:1.45;
    text-decoration:none;
    transition:color .16s ease,transform .16s ease;
}
.cp-footer__list a:hover{
    color:#e5e7ef;
    transform:translateX(1px);
}
.cp-footer__list--community li{
    position:relative;
    padding-left:14px;
}
.cp-footer__list--community li::before{
    content:"";
    position:absolute;
    left:0;
    top:.68em;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#8b6cff;
    box-shadow:0 0 0 3px rgba(124,77,255,.07);
    transform:translateY(-50%);
}
.cp-footer__bottom{
    display:flex;
    justify-content:space-between;
    gap:18px;
    padding:16px 0 21px;
    border-top:1px solid rgba(255,255,255,.05);
    color:#70788e;
    font-size:.7rem;
    line-height:1.5;
}
@media(max-width:1100px){
    .cp-footer__grid{
        grid-template-columns:1fr 1fr;
        gap:30px 28px;
    }
}
@media(max-width:700px){
    .cp-footer.cp-footer--pro{
        margin-top:44px;
    }
    .cp-footer__grid{
        grid-template-columns:1fr;
        gap:27px;
        padding:34px 0 24px;
    }
    .cp-footer__brand-col{
        max-width:none;
    }
    .cp-footer__logo{
        font-size:1.35rem;
    }
    .cp-footer__desc{
        max-width:none;
        font-size:.82rem;
    }
    .cp-footer__bottom{
        flex-direction:column;
        align-items:center;
        text-align:center;
        gap:6px;
    }
}





/* =========================================================
   0.4.18 · Preview lateral del carrito
   ========================================================= */
.cp-cart-drawer-open{
    overflow:hidden;
}

.cp-mini-cart{
    position:fixed;
    inset:0;
    z-index:99999;
    visibility:hidden;
    pointer-events:none;
}

.cp-mini-cart.is-open{
    visibility:visible;
    pointer-events:auto;
}

.cp-mini-cart__backdrop{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    border:0;
    background:rgba(1,3,9,.62);
    opacity:0;
    cursor:default;
    backdrop-filter:blur(3px);
    transition:opacity .2s ease;
}

.cp-mini-cart.is-open .cp-mini-cart__backdrop{
    opacity:1;
}

.cp-mini-cart__panel{
    position:absolute;
    top:0;
    right:0;
    display:flex;
    flex-direction:column;
    width:min(430px,calc(100% - 18px));
    height:100%;
    max-height:100%;
    border-left:1px solid rgba(255,255,255,.09);
    background:
        radial-gradient(circle at 100% 0%,rgba(124,77,255,.14),transparent 21rem),
        #070913;
    box-shadow:-24px 0 70px rgba(0,0,0,.36);
    color:#f3f5fb;
    outline:none;
    transform:translateX(104%);
    transition:transform .24s cubic-bezier(.22,.8,.3,1);
}

.cp-mini-cart.is-open .cp-mini-cart__panel{
    transform:translateX(0);
}

.cp-mini-cart__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    min-height:84px;
    padding:18px 20px;
    border-bottom:1px solid rgba(255,255,255,.07);
}

.cp-mini-cart__heading{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}

.cp-mini-cart__heading-icon{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    flex:0 0 38px;
    border:1px solid rgba(137,92,246,.2);
    border-radius:12px;
    background:rgba(124,77,255,.08);
    color:#9c72ff;
}

.cp-mini-cart__heading-icon svg,
.cp-mini-cart__close svg,
.cp-mini-cart__remove svg,
.cp-mini-cart__empty-icon svg{
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.cp-mini-cart__heading-icon svg{
    width:19px;
    height:19px;
}

.cp-mini-cart__eyebrow{
    display:block;
    margin-bottom:3px;
    color:#737d97;
    font-size:.64rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cp-mini-cart__heading h2{
    margin:0;
    color:#f4f5fb;
    font-size:1.18rem;
    line-height:1.15;
    letter-spacing:-.025em;
}

.cp-mini-cart__close{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    flex:0 0 40px;
    padding:0;
    border:1px solid rgba(255,255,255,.08);
    border-radius:12px;
    background:rgba(255,255,255,.025);
    color:#9ca4b8;
    cursor:pointer;
    transition:background .16s ease,border-color .16s ease,color .16s ease;
}

.cp-mini-cart__close:hover{
    border-color:rgba(157,114,255,.25);
    background:rgba(157,114,255,.08);
    color:#fff;
}

.cp-mini-cart__close svg{
    width:18px;
    height:18px;
}

.cp-mini-cart__body{
    display:flex;
    flex:1 1 auto;
    min-height:0;
    flex-direction:column;
}

.cp-mini-cart__items{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
    padding:15px 16px 8px;
    overscroll-behavior:contain;
}

.cp-mini-cart__item{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:13px;
    min-height:92px;
    margin-bottom:9px;
    padding:11px 11px 11px 10px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:15px;
    background:rgba(255,255,255,.024);
}

.cp-mini-cart__product{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}

.cp-mini-cart__image{
    display:grid;
    place-items:center;
    width:66px;
    height:66px;
    flex:0 0 66px;
    overflow:hidden;
    border-radius:12px;
    background:#111529;
    text-decoration:none;
}

.cp-mini-cart__thumb{
    display:block;
    width:100%;
    height:100%;
    margin:0!important;
    object-fit:contain;
}

.cp-mini-cart__item-info{
    min-width:0;
}

.cp-mini-cart__item-name{
    display:-webkit-box;
    overflow:hidden;
    color:#e9ecf5;
    font-size:.86rem;
    font-weight:750;
    line-height:1.3;
    text-decoration:none;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.cp-mini-cart__item-name:hover{
    color:#fff;
}

.cp-mini-cart__item-meta{
    display:flex;
    align-items:center;
    gap:5px;
    margin-top:7px;
    color:#858fa6;
    font-size:.74rem;
}

.cp-mini-cart__price{
    color:#a981ff;
    font-weight:800;
}

.cp-mini-cart__remove{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    flex:0 0 34px;
    border:1px solid rgba(255,89,113,.14);
    border-radius:10px;
    color:#df667b!important;
    text-decoration:none!important;
    transition:background .15s ease,border-color .15s ease,color .15s ease;
}

.cp-mini-cart__remove:hover{
    border-color:rgba(255,89,113,.28);
    background:rgba(255,89,113,.07);
    color:#ff7c91!important;
}

.cp-mini-cart__remove svg{
    width:16px;
    height:16px;
}

.cp-mini-cart__summary{
    flex:0 0 auto;
    padding:17px 20px 21px;
    border-top:1px solid rgba(255,255,255,.075);
    background:rgba(5,7,15,.72);
}

.cp-mini-cart__subtotal{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
}

.cp-mini-cart__subtotal span{
    color:#7e879e;
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.cp-mini-cart__subtotal strong{
    color:#f5f6fa;
    font-size:1.48rem;
    line-height:1;
    letter-spacing:-.04em;
}

.cp-mini-cart__summary-note{
    margin:10px 0 15px;
    color:#707990;
    font-size:.72rem;
    line-height:1.45;
}

.cp-mini-cart__actions{
    display:grid;
    gap:8px;
}

.cp-mini-cart__checkout,
.cp-mini-cart__view-cart,
.cp-mini-cart__continue{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    border-radius:12px;
    text-decoration:none!important;
    font-size:.82rem;
    font-weight:800;
}

.cp-mini-cart__checkout{
    gap:9px;
    background:linear-gradient(100deg,#7146f7,#9f68ff);
    color:#fff!important;
    box-shadow:0 9px 24px rgba(124,77,255,.16);
}

.cp-mini-cart__checkout:hover{
    filter:brightness(1.05);
    color:#fff!important;
}

.cp-mini-cart__view-cart{
    border:1px solid rgba(255,255,255,.075);
    background:rgba(255,255,255,.025);
    color:#9da5b9!important;
}

.cp-mini-cart__view-cart:hover{
    border-color:rgba(157,114,255,.2);
    color:#fff!important;
}

.cp-mini-cart__empty{
    display:flex;
    flex:1 1 auto;
    min-height:320px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:34px 28px;
    text-align:center;
}

.cp-mini-cart__empty-icon{
    display:grid;
    place-items:center;
    width:62px;
    height:62px;
    margin-bottom:17px;
    border:1px solid rgba(124,77,255,.16);
    border-radius:20px;
    background:rgba(124,77,255,.06);
    color:#9871f9;
}

.cp-mini-cart__empty-icon svg{
    width:28px;
    height:28px;
}

.cp-mini-cart__empty strong{
    color:#eef0f7;
    font-size:1rem;
}

.cp-mini-cart__empty span{
    max-width:250px;
    margin-top:7px;
    color:#7b849b;
    font-size:.78rem;
    line-height:1.5;
}

.cp-mini-cart__continue{
    min-width:170px;
    margin-top:20px;
    padding:0 16px;
    border:1px solid rgba(157,114,255,.2);
    background:rgba(124,77,255,.07);
    color:#c8b4ff!important;
}

.cp-mini-cart__continue:hover{
    background:rgba(124,77,255,.12);
    color:#fff!important;
}

@media(max-width:560px){
    .cp-mini-cart__panel{
        width:100%;
    }

    .cp-mini-cart__head{
        min-height:76px;
        padding:15px 15px;
    }

    .cp-mini-cart__items{
        padding-inline:11px;
    }

    .cp-mini-cart__summary{
        padding:15px 15px 18px;
    }
}

@media(prefers-reduced-motion:reduce){
    .cp-mini-cart__backdrop,
    .cp-mini-cart__panel{
        transition:none;
    }
}
