/*
Theme Name: Creastick
Author: Creastick
Version: 1.0
*/

:root{
    --ink:#191923;
    --text:#5f5d68;
    --paper:#ffffff;
    --soft:#f6f6f8;
    --pink:#ff3c91;
    --purple:#7152e8;
    --yellow:#ffd83d;
    --green:#40d3a2;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
    margin:0;
    font-family:Arial,Helvetica,sans-serif;
    color:var(--ink);
    background:var(--paper);
}

a{color:inherit}

.wrap{
    width:min(1180px,92%);
    margin:auto;
}

/* HEADER */

.site-header{
    height:86px;
    background:#fff;
    border-bottom:1px solid #ececf0;
    display:flex;
    align-items:center;
    position:relative;
    z-index:20;
}

.header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.brand img{
    display:block;
    width:185px;
    height:auto;
    max-height:55px;
}

.main-nav{
    display:flex;
    gap:28px;
    align-items:center;
}

.main-nav a,
.account-link{
    text-decoration:none;
    font-size:14px;
    font-weight:700;
}

.header-actions{
    display:flex;
    gap:20px;
    align-items:center;
}

.cart-link{
    background:var(--ink);
    color:#fff;
    text-decoration:none;
    padding:12px 17px;
    border-radius:100px;
    font-size:14px;
    font-weight:800;
}

.cart-link span{
    background:var(--pink);
    display:inline-flex;
    width:21px;
    height:21px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    margin-left:7px;
    font-size:11px;
}

/* HERO */

.hero{
    overflow:hidden;
}

.hero-grid{
    min-height:670px;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:60px;
}

.eyebrow{
    font-size:12px;
    font-weight:900;
    letter-spacing:2.3px;
    color:var(--purple);
}

.hero h1{
    margin:18px 0 27px;
    font-size:clamp(58px,6.2vw,92px);
    line-height:.88;
    letter-spacing:-5px;
}

.hero h1 span{
    color:var(--pink);
}

.hero-copy>p{
    max-width:560px;
    font-size:19px;
    line-height:1.55;
    color:var(--text);
}

.hero-buttons{
    display:flex;
    gap:12px;
    margin:31px 0;
}

.button{
    display:inline-block;
    padding:16px 24px;
    border-radius:9px;
    font-size:15px;
    font-weight:800;
    text-decoration:none;
}

.button-dark{
    background:var(--ink);
    color:#fff;
}

.button-light{
    border:2px solid var(--ink);
}

.hero-trust{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
    font-size:13px;
    font-weight:700;
}

/* HERO ART */

.hero-art{
    height:550px;
    position:relative;
}

.blob{
    position:absolute;
    border-radius:50%;
}

.blob-one{
    width:420px;
    height:420px;
    background:#f3efff;
    right:20px;
    top:55px;
}

.blob-two{
    width:220px;
    height:220px;
    background:#fff3ba;
    left:25px;
    bottom:15px;
}

.sample-sticker{
    position:absolute;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    border:10px solid #fff;
    box-shadow:0 22px 45px rgba(24,24,34,.16);
}

.sticker-one{
    width:285px;
    height:285px;
    border-radius:50%;
    background:var(--yellow);
    right:70px;
    top:90px;
    transform:rotate(8deg);
}

.sticker-one small{
    font-size:12px;
    letter-spacing:2px;
    font-weight:900;
}

.sticker-one strong{
    font-size:48px;
    line-height:1;
    margin:8px 0;
}

.sticker-one span{
    font-weight:700;
}

.sticker-two{
    width:145px;
    height:145px;
    background:var(--pink);
    color:white;
    border-radius:43% 57% 48% 52%;
    left:10px;
    top:70px;
    transform:rotate(-12deg);
}

.sticker-two strong{font-size:29px}

.sticker-three{
    width:175px;
    height:175px;
    border-radius:50%;
    background:var(--green);
    right:5px;
    bottom:15px;
    transform:rotate(-8deg);
}

.sticker-three strong{
    font-size:39px;
}

.sticker-three span{
    font-size:10px;
    letter-spacing:1px;
    font-weight:900;
}

/* CATEGORIES */

.choose{
    background:var(--soft);
    padding:100px 0;
}

.section-title{
    text-align:center;
    margin-bottom:48px;
}

.section-title h2{
    font-size:clamp(42px,5vw,62px);
    letter-spacing:-3px;
    margin:12px 0;
}

.section-title p{
    color:var(--text);
    font-size:18px;
}

.choose-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:17px;
}

.choose-card{
    min-height:330px;
    padding:29px;
    border-radius:20px;
    text-decoration:none;
    position:relative;
    transition:.2s ease;
    border:1px solid rgba(0,0,0,.05);
}

.choose-card:hover{
    transform:translateY(-7px);
    box-shadow:0 20px 45px rgba(0,0,0,.09);
}

.business{background:#fff0f6}
.events{background:#fff6ce}
.sheets{background:#eeeaff}
.own-design{background:#dcf8ef}

.card-number{
    position:absolute;
    right:23px;
    top:20px;
    font-size:12px;
    font-weight:900;
    opacity:.35;
}

.card-icon{
    font-size:42px;
    height:70px;
}

.choose-card h3{
    font-size:25px;
    letter-spacing:-1px;
    margin:25px 0 11px;
}

.choose-card p{
    color:#5d5b64;
    line-height:1.55;
    min-height:75px;
}

.choose-card strong{
    font-size:14px;
}

/* IDEA */

.idea-section{
    background:var(--ink);
    color:#fff;
    padding:105px 0;
}

.idea-grid{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:90px;
    align-items:center;
}

.eyebrow-light{
    color:#a996ff;
}

.idea-section h2{
    font-size:clamp(48px,6vw,78px);
    line-height:.95;
    letter-spacing:-4px;
    margin:15px 0;
}

.idea-content>p{
    font-size:20px;
    line-height:1.65;
    color:#d4d2db;
    max-width:620px;
}

.steps{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:38px;
    gap:10px;
}

.steps div{
    border-top:1px solid #4b4953;
    padding-top:15px;
}

.steps b{
    color:var(--yellow);
    display:block;
    font-size:12px;
    margin-bottom:8px;
}

.steps span{
    font-weight:800;
}

/* FOOTER */

.site-footer{
    padding:45px 0;
    background:#fff;
}

.footer-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    color:#6c6972;
    font-size:13px;
}

.footer-inner img{
    width:140px;
    max-height:50px;
}

/* MOBILE */

@media(max-width:900px){
    .main-nav{display:none}

    .hero-grid{
        grid-template-columns:1fr;
        padding:70px 0 30px;
        text-align:center;
    }

    .hero-copy>p{margin-left:auto;margin-right:auto}
    .hero-buttons,.hero-trust{justify-content:center}

    .hero-art{
        width:min(550px,100%);
        margin:auto;
    }

    .choose-grid{grid-template-columns:1fr 1fr}

    .idea-grid{
        grid-template-columns:1fr;
        gap:30px;
    }
}

@media(max-width:560px){
    .site-header{height:72px}
    .brand img{width:145px}
    .account-link{display:none}

    .hero h1{
        font-size:55px;
        letter-spacing:-3px;
    }

    .hero-buttons{flex-direction:column}

    .hero-art{
        height:410px;
        transform:scale(.82);
        transform-origin:top center;
        margin-bottom:-60px;
    }

    .choose-grid{grid-template-columns:1fr}

    .choose-card{min-height:auto}

    .steps{grid-template-columns:1fr 1fr}

    .footer-inner{
        flex-direction:column;
        text-align:center;
    }
}

/* IDENTIDAD CREASTICK */
:root{
    --ink:#191923;
    --text:#5f5d68;
    --paper:#ffffff;
    --soft:#f7f7f5;
    --yellow:#fee129;
    --pink:#fee129;
    --purple:#191923;
    --green:#fee129;
}

.business,
.sheets,
.own-design{
    background:#ffffff;
}

.events{
    background:#fff9d7;
}

.choose-card{
    border:1px solid #e8e8e5;
}

.choose-card:hover{
    border-color:#191923;
}

.eyebrow{
    color:#191923;
}

.hero h1 span{
    color:#191923;
    position:relative;
    display:inline-block;
    z-index:1;
}

.hero h1 span:after{
    content:"";
    position:absolute;
    height:18%;
    left:0;
    right:0;
    bottom:2px;
    background:#fee129;
    z-index:-1;
}

.cart-link span{
    background:#fee129;
    color:#191923;
}

.sticker-one,
.sticker-two,
.sticker-three{
    background:#fee129;
    color:#191923;
}

.blob-one{
    background:#fff9d7;
}

.blob-two{
    background:#fee129;
}

.eyebrow-light{
    color:#fee129;
}


/* ===== IDENTIDAD OFICIAL CREASTICK ===== */

:root{
    --ink:#191923;
    --text:#5f5d68;
    --paper:#ffffff;
    --soft:#f7f7f5;
    --yellow:#fee129;
    --pink:#fee129;
    --purple:#191923;
    --green:#fee129;
}

/* Logo más grande */
.brand img{
    width:225px;
    max-height:65px;
}

/* Hero */
.eyebrow{
    color:#191923;
}

.hero h1 span{
    color:#191923;
    position:relative;
    display:inline-block;
    z-index:1;
}

.hero h1 span::after{
    content:"";
    position:absolute;
    left:-2%;
    right:-2%;
    bottom:2px;
    height:18%;
    background:#fee129;
    z-index:-1;
    transform:rotate(-1deg);
}

/* Gráficos provisionales del Hero */
.blob-one{
    background:#fff9cf;
}

.blob-two{
    background:#fee129;
}

.sticker-one,
.sticker-two,
.sticker-three{
    background:#fee129;
    color:#191923;
}

/* Tarjetas */
.business,
.events,
.sheets,
.own-design{
    background:#ffffff;
    border:1px solid #e6e6e3;
}

.choose-card:nth-child(2){
    background:#fff9cf;
}

.choose-card:hover{
    border-color:#191923;
}

/* Carrito */
.cart-link span{
    background:#fee129;
    color:#191923;
}

/* Sección negra */
.eyebrow-light{
    color:#fee129;
}

.steps b{
    color:#fee129;
}

/* Mobile */
@media(max-width:560px){
    .brand img{
        width:175px;
    }
}


/* =====================================================
   PRODUCTO CREASTICK
===================================================== */

.cs-product{
    padding:30px 0 90px;
    background:#fff;
}

.cs-breadcrumb{
    display:flex;
    gap:9px;
    align-items:center;
    font-size:12px;
    color:#85838a;
    margin-bottom:35px;
}

.cs-breadcrumb a{
    color:#85838a;
    text-decoration:none;
}

.cs-breadcrumb strong{
    color:#191923;
}

.cs-product-grid{
    display:grid;
    grid-template-columns:1.02fr .98fr;
    gap:80px;
    align-items:start;
}


/* VISUAL */

.cs-product-image{
    min-height:600px;
    background:#f7f7f5;
    border-radius:24px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}

.cs-product-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.cs-placeholder{
    text-align:center;
}

.cs-demo-sticker{
    width:285px;
    height:285px;
    border-radius:50%;
    background:#fee129;
    border:12px solid #fff;
    box-shadow:0 20px 50px rgba(0,0,0,.13);
    margin:0 auto 35px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    transform:rotate(-6deg);
}

.cs-demo-sticker span{
    font-size:19px;
    font-weight:900;
    letter-spacing:2px;
}

.cs-demo-sticker strong{
    font-size:58px;
    line-height:.9;
}

.cs-placeholder p{
    font-size:17px;
    line-height:1.4;
    font-weight:700;
}

.cs-mini-benefits{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:12px;
}

.cs-mini-benefits div{
    background:#f7f7f5;
    padding:17px;
    border-radius:10px;
}

.cs-mini-benefits strong,
.cs-mini-benefits span{
    display:block;
}

.cs-mini-benefits strong{
    font-size:13px;
}

.cs-mini-benefits span{
    font-size:11px;
    color:#77747c;
    margin-top:3px;
}


/* PRODUCT INFO */

.cs-product-info{
    padding-top:15px;
}

.cs-product-tag{
    display:inline-block;
    font-size:11px;
    font-weight:900;
    letter-spacing:2px;
    background:#fee129;
    padding:8px 11px;
    margin-bottom:18px;
}

.cs-product-info h1{
    font-size:clamp(40px,4vw,58px);
    line-height:.98;
    letter-spacing:-2.8px;
    margin:0 0 20px;
    color:#191923;
}

.cs-product-intro{
    color:#66636c;
    font-size:17px;
    line-height:1.6;
    max-width:570px;
}

.cs-product-points{
    display:flex;
    flex-wrap:wrap;
    gap:8px 17px;
    margin:22px 0 30px;
    padding-bottom:25px;
    border-bottom:1px solid #e7e7e5;
    font-size:12px;
    font-weight:800;
}


/* OCULTAR PRECIO Y CANTIDAD NATIVOS */

.cs-product-info .quantity{
    display:none !important;
}

.cs-product-info form.cart{
    margin:0 !important;
}

.cs-product-info .single_add_to_cart_button{
    width:100%;
    border:0 !important;
    background:#191923 !important;
    color:#fff !important;
    padding:19px 25px !important;
    min-height:60px;
    border-radius:9px !important;
    font-size:15px !important;
    font-weight:900 !important;
    cursor:pointer;
    margin-top:10px;
}

.cs-product-info .single_add_to_cart_button:hover{
    background:#000 !important;
}


/* PROCESO */

.cs-product-bottom{
    background:#f7f7f5;
    padding:85px 0 100px;
}

.cs-bottom-title{
    margin-bottom:45px;
}

.cs-bottom-title>span{
    font-size:11px;
    letter-spacing:2px;
    font-weight:900;
}

.cs-bottom-title h2{
    font-size:48px;
    letter-spacing:-2px;
    margin:10px 0 0;
}

.cs-process{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}

.cs-process div{
    background:#fff;
    border:1px solid #e5e5e3;
    padding:27px;
    border-radius:15px;
}

.cs-process b{
    color:#191923;
    background:#fee129;
    display:inline-flex;
    width:35px;
    height:35px;
    border-radius:50%;
    align-items:center;
    justify-content:center;
    font-size:11px;
    margin-bottom:35px;
}

.cs-process strong{
    display:block;
    font-size:20px;
}

.cs-process p{
    color:#737078;
    font-size:13px;
    line-height:1.5;
}


/* QUITAR ELEMENTOS WOOCOMMERCE QUE NO USAMOS */

.woocommerce-tabs,
.related.products,
.product_meta{
    display:none !important;
}


/* RESPONSIVE */

@media(max-width:850px){

    .cs-product-grid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .cs-product-image{
        min-height:450px;
    }

    .cs-process{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:520px){

    .cs-product{
        padding-top:20px;
    }

    .cs-product-image{
        min-height:380px;
    }

    .cs-demo-sticker{
        width:230px;
        height:230px;
    }

    .cs-demo-sticker strong{
        font-size:47px;
    }

    .cs-mini-benefits{
        grid-template-columns:1fr;
    }

    .cs-product-info h1{
        font-size:39px;
        letter-spacing:-2px;
    }

    .cs-process{
        grid-template-columns:1fr;
    }

}

/* =====================================================
   PRODUCTO CREASTICK — AJUSTE COMPACTO
===================================================== */

.cs-product-main{
    align-items:start;
    gap:60px;
}

.cs-product-visual{
    min-height:480px;
}

.cs-product-info h1{
    margin-bottom:14px;
}

.cs-product-intro{
    margin-bottom:14px;
}

.cs-product-benefits{
    margin-bottom:18px;
    padding-bottom:18px;
}

.cs-product-info .creastick-config{
    margin-top:20px;
    margin-bottom:14px;
}

.cs-product-info .cc-heading{
    margin-bottom:13px;
}

.cs-product-info .cc-heading h3{
    font-size:23px;
    margin-bottom:3px;
}

.cs-product-info .cc-options{
    gap:7px;
}

.cs-product-info .cc-option{
    min-height:60px;
    padding-top:9px;
    padding-bottom:9px;
}

.cs-product-info .cc-quantity{
    font-size:19px;
}

.cs-product-info .cc-price{
    font-size:18px;
}

.cs-product-info .cc-summary{
    margin-top:9px;
    padding:12px 17px;
}

.cs-product-info .single_add_to_cart_button{
    margin-top:4px;
    min-height:56px;
}

@media (max-width: 900px){
    .cs-product-main{
        gap:30px;
    }

    .cs-product-visual{
        min-height:390px;
    }
}


/* CONFIGURADOR - TAMAÑO Y FORMA */

.cc-section{
    margin-bottom:25px;
}

.cc-size-options,
.cc-shape-options{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:8px;
}

.cc-choice{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:10px 12px;
    border:1.5px solid #dedee2;
    border-radius:10px;
    background:#fff;
    cursor:pointer;
    transition:.15s ease;
    font-size:13px;
    color:#191923;
}

.cc-choice:hover{
    border-color:#191923;
}

.cc-choice input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.cc-choice.cc-choice-selected{
    border:2px solid #191923;
    background:#fffbea;
}

@media(max-width:600px){
    .cc-size-options,
    .cc-shape-options{
        grid-template-columns:1fr 1fr;
    }
}


/* PASO 4 - DISEÑO */

.cc-design-section{
    margin-top:25px;
}

.cc-design-options{
    display:grid;
    gap:8px;
}

.cc-design-choice{
    position:relative;
    display:flex;
    align-items:center;
    gap:12px;
    min-height:58px;
    padding:10px 14px;
    background:#fff;
    border:1.5px solid #dedee2;
    border-radius:10px;
    cursor:pointer;
    transition:.15s ease;
}

.cc-design-choice:hover{
    border-color:#191923;
}

.cc-design-choice.cc-choice-selected{
    border:2px solid #191923;
    background:#fffbea;
}

.cc-design-choice input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.cc-design-icon{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#fee129;
    color:#191923;
    font-weight:900;
}

.cc-design-choice strong{
    display:block;
    font-size:13px;
    color:#191923;
}

.cc-design-choice small{
    display:block;
    margin-top:2px;
    font-size:10px;
    color:#77747c;
}

.cc-upload-box{
    margin-top:9px;
    padding:15px;
    border:1.5px dashed #c9c8cd;
    border-radius:10px;
    text-align:center;
    background:#fafafa;
}

.cc-upload-box label{
    display:block;
    cursor:pointer;
}

.cc-upload-box label strong{
    display:block;
    font-size:13px;
    color:#191923;
}

.cc-upload-box label span{
    display:block;
    margin-top:3px;
    font-size:10px;
    color:#77747c;
}

.cc-upload-box input[type="file"]{
    margin-top:10px;
    max-width:100%;
    font-size:11px;
}

#cc-file-name{
    margin-top:6px;
    font-size:11px;
    font-weight:700;
}


/* =====================================================
   CARRITO CREASTICK - COMPACTO
===================================================== */

.woocommerce-cart .woocommerce{
    max-width:1180px;
    margin:38px auto 70px;
    padding:0 24px;
}

/* Aviso */
.woocommerce-cart .woocommerce-message{
    grid-column:1 / -1;
    margin:0 0 20px;
    padding:14px 18px;
    border:1px solid #e5e5e7;
    border-radius:10px;
    background:#fffbea;
    color:#191923;
}

.woocommerce-cart .woocommerce-message::before{
    color:#191923;
}

/* Layout principal */
.woocommerce-cart form.woocommerce-cart-form{
    width:67%;
    float:left;
    margin:0;
}

.woocommerce-cart .cart-collaterals{
    width:30%;
    float:right;
    margin:0;
}

.woocommerce-cart .cart-collaterals::after,
.woocommerce-cart .woocommerce::after{
    content:"";
    display:block;
    clear:both;
}

/* Tarjeta producto */
.woocommerce-cart table.shop_table{
    margin:0;
    border:1px solid #e3e3e6;
    border-radius:14px;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    background:#fff;
}

.woocommerce-cart table.shop_table thead th{
    padding:14px 16px;
    border:0;
    border-bottom:1px solid #e7e7e9;
    background:#f7f7f7;
    color:#191923;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.6px;
}

/* Ocultamos columnas que ya no aportan */
.woocommerce-cart table.shop_table .product-quantity{
    display:none;
}

.woocommerce-cart table.shop_table td{
    padding:22px 16px;
    border:0;
    vertical-align:middle;
}

.woocommerce-cart table.shop_table td.product-remove{
    width:35px;
    padding-right:5px;
}

.woocommerce-cart table.shop_table td.product-thumbnail{
    width:70px;
}

.woocommerce-cart .product-thumbnail img{
    width:58px;
    height:58px;
    object-fit:contain;
    border-radius:8px;
}

.woocommerce-cart .product-name > a{
    display:block;
    margin-bottom:10px;
    color:#191923;
    font-size:16px;
    line-height:1.25;
    font-weight:900;
    text-decoration:none;
}

.woocommerce-cart .product-name dl.variation{
    display:grid;
    grid-template-columns:max-content 1fr;
    gap:3px 7px;
    margin:0;
    font-size:12px;
    line-height:1.35;
}

.woocommerce-cart .product-name dl.variation dt,
.woocommerce-cart .product-name dl.variation dd{
    float:none;
    clear:none;
    margin:0;
    padding:0;
}

.woocommerce-cart .product-name dl.variation dt{
    color:#191923;
    font-weight:800;
}

.woocommerce-cart .product-name dl.variation dd{
    color:#67656d;
}

.woocommerce-cart .product-name dl.variation p{
    margin:0;
}

/* Precio */
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal{
    color:#191923;
    font-size:15px;
    font-weight:900;
}

/* Eliminar */
.woocommerce-cart .product-remove a.remove{
    display:flex;
    width:26px;
    height:26px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    color:#191923 !important;
    font-size:20px;
    text-decoration:none;
}

.woocommerce-cart .product-remove a.remove:hover{
    background:#fee129;
    color:#191923 !important;
}

/* Acciones / cupón */
.woocommerce-cart table.shop_table td.actions{
    padding:14px 16px;
    border-top:1px solid #e7e7e9;
}

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

.woocommerce-cart .coupon input.input-text{
    width:145px !important;
    min-height:42px;
    padding:0 12px;
    border:1px solid #d9d9dd;
    border-radius:8px;
}

.woocommerce-cart .coupon button{
    min-height:42px;
    padding:0 16px;
    border:0;
    border-radius:8px;
    background:#191923;
    color:#fff;
    font-weight:800;
}

.woocommerce-cart button[name="update_cart"]{
    display:none;
}

/* Resumen lateral */
.woocommerce-cart .cart_totals{
    width:100% !important;
    float:none !important;
    margin:0 !important;
    padding:24px;
    border:1px solid #e3e3e6;
    border-radius:14px;
    background:#fff;
}

.woocommerce-cart .cart_totals h2{
    margin:0 0 18px;
    color:#191923;
    font-size:25px;
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.7px;
}

.woocommerce-cart .cart_totals table.shop_table{
    border:0;
    border-radius:0;
}

.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td{
    padding:14px 0;
    border-top:1px solid #ededee;
    background:#fff;
    font-size:13px;
}

.woocommerce-cart .cart_totals table.shop_table tr:first-child th,
.woocommerce-cart .cart_totals table.shop_table tr:first-child td{
    border-top:0;
}

.woocommerce-cart .cart_totals table.shop_table th{
    width:38%;
    color:#191923;
    font-weight:800;
}

.woocommerce-cart .cart_totals table.shop_table td{
    color:#191923;
}

.woocommerce-cart .order-total th,
.woocommerce-cart .order-total td{
    padding-top:18px !important;
    font-size:16px !important;
    font-weight:900 !important;
}

/* Envío */
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th{
    font-size:0;
}

.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th::after{
    content:"ENVÍO";
    font-size:12px;
    font-weight:900;
    letter-spacing:.5px;
    color:#191923;
}

/* Botón finalizar */
.woocommerce-cart .wc-proceed-to-checkout{
    padding:18px 0 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
    display:flex;
    min-height:56px;
    margin:0;
    padding:0 18px;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    background:#191923;
    color:#fff;
    font-size:15px;
    font-weight:900;
    text-align:center;
    transition:.15s ease;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
    background:#fee129;
    color:#191923;
}

/* Móvil */
@media(max-width:850px){

    .woocommerce-cart .woocommerce{
        margin:24px auto 50px;
        padding:0 16px;
    }

    .woocommerce-cart form.woocommerce-cart-form,
    .woocommerce-cart .cart-collaterals{
        width:100%;
        float:none;
    }

    .woocommerce-cart .cart-collaterals{
        margin-top:22px;
    }

    .woocommerce-cart .cart_totals{
        padding:20px;
    }

    .woocommerce-cart table.shop_table td{
        padding:14px;
    }

    .woocommerce-cart .coupon{
        width:100%;
    }

    .woocommerce-cart .coupon input.input-text{
        flex:1;
        width:auto !important;
    }
}

/* =====================================================
   CTA CARRITO - CREASTICK
===================================================== */

/* Acción principal */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
    background:#fee129;
    color:#191923;
    border:2px solid #fee129;
    font-weight:900;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
    background:#191923;
    border-color:#191923;
    color:#fff;
    transform:translateY(-1px);
}

/* Acción secundaria */
.woocommerce-cart .coupon button{
    background:#f1f1f2;
    color:#191923;
    border:1px solid #e1e1e3;
}

.woocommerce-cart .coupon button:hover{
    background:#e7e7e9;
    color:#191923;
}

/* =====================================================
   CHECKOUT CREASTICK
   ===================================================== */

.woocommerce-checkout .woocommerce{
    max-width:1280px;
    margin:45px auto 70px;
    padding:0 24px;
}

/* Aviso cupón */
.woocommerce-checkout .woocommerce-form-coupon-toggle{
    margin-bottom:32px;
}

.woocommerce-checkout .woocommerce-info{
    border:1px solid #e5e5e7;
    border-top:3px solid #fee129;
    background:#fffbea;
    color:#191923;
    border-radius:10px;
    padding:16px 20px;
}

/* Formulario principal */
.woocommerce-checkout form.checkout{
    display:grid;
    grid-template-columns:minmax(0, 1.25fr) minmax(380px, .75fr);
    gap:50px;
    align-items:start;
}

/* Columna izquierda */
.woocommerce-checkout #customer_details{
    grid-column:1;
    display:block;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2{
    width:100%;
    float:none;
}

.woocommerce-checkout #customer_details .col-2{
    margin-top:28px;
}

/* Títulos */
.woocommerce-checkout h3{
    color:#191923;
    font-size:25px;
    font-weight:900;
    letter-spacing:-.5px;
    margin:0 0 22px;
}

/* Campos */
.woocommerce-checkout .form-row{
    margin:0 0 16px;
}

.woocommerce-checkout .form-row label{
    display:block;
    margin-bottom:7px;
    color:#191923;
    font-size:14px;
    font-weight:700;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single{
    width:100%;
    min-height:48px;
    border:1px solid #d9d9dd;
    border-radius:9px;
    background:#fff;
    padding:10px 13px;
    color:#191923;
    font-size:15px;
    box-sizing:border-box;
}

.woocommerce-checkout textarea{
    min-height:90px;
    resize:vertical;
}

.woocommerce-checkout .select2-container .select2-selection--single{
    padding:9px 12px;
}

.woocommerce-checkout .select2-selection__rendered{
    padding:0 !important;
    line-height:28px !important;
}

.woocommerce-checkout .select2-selection__arrow{
    height:46px !important;
}

/* Nombre y apellidos */
.woocommerce-checkout #billing_first_name_field,
.woocommerce-checkout #billing_last_name_field{
    width:48%;
}

.woocommerce-checkout #billing_first_name_field{
    float:left;
}

.woocommerce-checkout #billing_last_name_field{
    float:right;
}

/* Columna derecha: pedido */
.woocommerce-checkout #order_review_heading{
    grid-column:2;
    grid-row:1;
    margin:0;
    padding:28px 28px 0;
    background:#fff;
    border:1px solid #e4e4e7;
    border-bottom:0;
    border-radius:16px 16px 0 0;
    font-size:28px;
}

.woocommerce-checkout #order_review{
    grid-column:2;
    grid-row:1;
    margin-top:65px;
    background:#fff;
    border:1px solid #e4e4e7;
    border-top:0;
    border-radius:0 0 16px 16px;
    padding:10px 28px 28px;
}

/* Tabla resumen */
.woocommerce-checkout-review-order-table{
    border:0 !important;
    margin:0 0 24px !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
    padding:15px 0 !important;
    border-left:0 !important;
    border-right:0 !important;
    border-color:#ededee !important;
}

.woocommerce-checkout-review-order-table thead{
    display:none;
}

.woocommerce-checkout-review-order-table .product-name{
    padding-right:20px !important;
}

.woocommerce-checkout-review-order-table .product-total{
    text-align:right;
    font-weight:800;
}

/* Datos personalizados del sticker */
.woocommerce-checkout-review-order-table dl.variation{
    margin:10px 0 0;
    font-size:12px;
    line-height:1.45;
}

.woocommerce-checkout-review-order-table dl.variation dt{
    font-weight:800;
    color:#191923;
}

.woocommerce-checkout-review-order-table dl.variation dd{
    color:#67656d;
}

/* Totales */
.woocommerce-checkout-review-order-table tfoot th{
    font-weight:800;
    color:#191923;
}

.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td{
    font-size:18px;
    font-weight:900;
}

/* Pago */
.woocommerce-checkout #payment{
    background:#f7f7f8;
    border-radius:12px;
    margin-top:15px;
}

.woocommerce-checkout #payment ul.payment_methods{
    padding:20px;
    border-bottom:1px solid #e4e4e7;
}

.woocommerce-checkout #payment div.payment_box{
    background:#fff;
    border-radius:8px;
    color:#55535c;
}

.woocommerce-checkout #payment div.form-row{
    padding:20px;
}

/* Botón principal */
.woocommerce-checkout #place_order{
    width:100%;
    min-height:58px;
    border:0;
    border-radius:10px;
    background:#fee129;
    color:#191923;
    font-size:17px;
    font-weight:900;
    cursor:pointer;
    transition:.15s ease;
}

.woocommerce-checkout #place_order:hover{
    transform:translateY(-1px);
    filter:brightness(.96);
}

/* Privacidad */
.woocommerce-checkout .woocommerce-privacy-policy-text{
    font-size:12px;
    line-height:1.5;
    color:#67656d;
}

/* Móvil */
@media(max-width:900px){

    .woocommerce-checkout .woocommerce{
        margin-top:25px;
        padding:0 16px;
    }

    .woocommerce-checkout form.checkout{
        display:block;
    }

    .woocommerce-checkout #customer_details{
        margin-bottom:35px;
    }

    .woocommerce-checkout #order_review_heading{
        border:1px solid #e4e4e7;
        border-bottom:0;
        padding:22px 20px 10px;
        font-size:24px;
    }

    .woocommerce-checkout #order_review{
        margin-top:0;
        padding:10px 20px 20px;
    }

    .woocommerce-checkout #billing_first_name_field,
    .woocommerce-checkout #billing_last_name_field{
        width:100%;
        float:none;
    }
}


/* Quitar "(optional)" únicamente de Notas del pedido */
.woocommerce-checkout #order_comments_field .optional{
    display:none !important;
}

/* Botón Agregar al carrito */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button {
    background: #fee129 !important;
    color: #191923 !important;
    border: 2px solid #fee129 !important;
    font-weight: 800 !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product button.single_add_to_cart_button:hover {
    background: #191923 !important;
    color: #ffffff !important;
    border-color: #191923 !important;
}

/* =====================================================
   CREASTICK - AVISOS WOOCOMMERCE
===================================================== */

/* Ocultar avisos de producto agregado al carrito.
   El contador del carrito ya confirma la acción. */
.woocommerce-notices-wrapper .woocommerce-message {
    display: none !important;
}

