/*
Theme Name: Comercial Palma
Theme URI: https://comercialpalma.cl/
Author: Comercial Palma
Description: Tema WooCommerce azul y blanco para supermercado online Comercial Palma.
Version: 1.0.3
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: comercial-palma
*/
:root{--cp-blue:#17366f;--cp-blue-dark:#102751;--cp-blue-light:#eaf1fc;--cp-ink:#172033;--cp-muted:#667085;--cp-border:#e4e9f2;--cp-bg:#f7f9fc;--cp-white:#fff;--cp-radius:16px;--cp-shadow:0 8px 26px rgba(23,54,111,.08)}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--cp-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:var(--cp-blue);text-decoration:none}a:hover{color:#2454a6}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.cp-container{width:min(1240px,calc(100% - 36px));margin-inline:auto}.cp-topbar{background:var(--cp-blue-dark);color:#fff;font-size:12px;padding:7px 0}.cp-topbar .cp-container{display:flex;justify-content:space-between;gap:12px}.cp-header{background:#fff;border-bottom:1px solid var(--cp-border);position:relative;z-index:20}.cp-header-main{display:grid;grid-template-columns:220px minmax(220px,1fr) auto;align-items:center;gap:26px;padding:18px 0}.cp-brand{display:flex;align-items:center;gap:10px;color:var(--cp-blue);font-weight:900;letter-spacing:-.4px;line-height:1.05}.cp-brand img{max-width:205px;max-height:66px;object-fit:contain}.cp-brand-text{font-size:21px}.cp-brand small{display:block;font-size:10px;letter-spacing:1.4px;margin-top:5px}.cp-search{display:flex;height:48px;border:1px solid #d8e1ef;border-radius:12px;overflow:hidden;background:#f8faff}.cp-search input{min-width:0;flex:1;border:0;background:transparent;padding:0 16px;outline:0}.cp-search button{width:52px;border:0;background:var(--cp-blue);color:#fff;cursor:pointer;font-size:20px}.cp-header-actions{display:flex;align-items:center;gap:18px}.cp-header-actions a{display:flex;align-items:center;gap:7px;color:var(--cp-blue);font-weight:700;font-size:13px}.cp-cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 5px;border-radius:20px;background:#eaf1fc;color:var(--cp-blue);font-size:11px}.cp-nav{border-top:1px solid #edf0f6}.cp-nav-inner{display:flex;align-items:center;gap:0;min-height:48px;overflow-x:auto}.cp-nav a{white-space:nowrap;padding:14px 15px;font-size:13px;font-weight:700;color:#253653}.cp-nav a:hover,.cp-nav a:focus{background:var(--cp-blue-light);color:var(--cp-blue)}.cp-nav .cp-all-cats{background:var(--cp-blue);color:#fff;border-radius:9px;margin:6px 10px 6px 0;padding:10px 15px}.cp-mobile-menu{display:none}.cp-main{min-height:55vh}.cp-hero{margin:24px auto 28px;border-radius:22px;overflow:hidden;background:linear-gradient(112deg,#15366f 0%,#1c55a4 57%,#dce9fb 57%,#edf4ff 100%);min-height:300px;display:grid;grid-template-columns:1.05fr .95fr;position:relative}.cp-hero-copy{padding:42px 46px;color:#fff;align-self:center;position:relative;z-index:1}.cp-eyebrow{display:inline-block;background:#e83c55;color:#fff;font-weight:800;font-size:12px;letter-spacing:.6px;border-radius:30px;padding:7px 12px;margin-bottom:15px}.cp-hero h1{font-size:clamp(32px,4vw,48px);line-height:1.07;letter-spacing:-1.4px;margin:0 0 14px;color:#fff;max-width:520px}.cp-hero p{font-size:16px;color:#e7efff;max-width:450px;margin:0 0 22px}.cp-btn,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:var(--cp-blue);color:#fff!important;padding:12px 18px;font-weight:800;cursor:pointer;transition:.18s ease}.cp-btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:#2454a6;color:#fff!important;transform:translateY(-1px)}.cp-btn-light{background:#fff;color:var(--cp-blue)!important}.cp-hero-art{display:flex;align-items:center;justify-content:center;padding:22px;min-width:0}.cp-hero-art img{width:100%;height:260px;object-fit:contain;filter:drop-shadow(0 15px 18px rgba(9,29,65,.14))}.cp-hero-art-placeholder{width:250px;height:220px;border-radius:28px;background:rgba(255,255,255,.68);display:flex;align-items:center;justify-content:center;font-size:100px;box-shadow:var(--cp-shadow)}.cp-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 38px}.cp-benefit{border:1px solid var(--cp-border);border-radius:13px;padding:14px;display:flex;align-items:center;gap:11px;background:#fff}.cp-benefit-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:12px;background:var(--cp-blue-light);color:var(--cp-blue);font-size:20px}.cp-benefit strong{display:block;font-size:13px;color:#20365d}.cp-benefit span{display:block;color:var(--cp-muted);font-size:11px}.cp-section{margin:36px 0 44px}.cp-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.cp-section h2{font-size:26px;line-height:1.2;letter-spacing:-.6px;margin:0;color:#172f5b}.cp-section-subtitle{margin:6px 0 0;color:var(--cp-muted);font-size:14px}.cp-link{font-weight:800;font-size:13px;white-space:nowrap}.cp-categories{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.cp-category{border:1px solid var(--cp-border);border-radius:16px;padding:18px 10px;text-align:center;background:#fff;transition:.2s}.cp-category:hover{transform:translateY(-3px);box-shadow:var(--cp-shadow);border-color:#c6d6f1}.cp-category-icon{width:64px;height:64px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:var(--cp-blue-light);font-size:31px}.cp-category strong{font-size:13px;color:#20365d}.cp-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.cp-products ul.products{display:contents}.cp-products ul.products li.product{float:none;width:auto;margin:0}.cp-product-card,.woocommerce ul.products li.product{position:relative;border:1px solid var(--cp-border);border-radius:16px;padding:13px!important;background:#fff;box-shadow:none;transition:.2s;min-width:0}.cp-product-card:hover,.woocommerce ul.products li.product:hover{box-shadow:var(--cp-shadow);transform:translateY(-2px)}.cp-product-card img,.woocommerce ul.products li.product a img{width:100%;height:175px;object-fit:contain;margin:0 auto 12px!important}.cp-product-card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;font-weight:700!important;line-height:1.35;color:#263653;padding:0!important;min-height:38px}.cp-product-card .price,.woocommerce ul.products li.product .price{font-size:18px!important;font-weight:900;color:var(--cp-blue)!important;margin:8px 0 12px!important}.cp-product-card .price del,.woocommerce ul.products li.product .price del{font-size:12px;opacity:.55}.cp-product-card .button,.woocommerce ul.products li.product .button{width:100%;margin-top:8px;text-align:center;font-size:12px;padding:11px 8px}.cp-badge{position:absolute;left:12px;top:12px;background:#e83c55;color:#fff;border-radius:7px;padding:5px 7px;font-size:10px;font-weight:900;z-index:2}.cp-promo-strip{background:var(--cp-blue-light);border-radius:18px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:35px 0}.cp-promo-strip h2{margin:0;color:var(--cp-blue);font-size:23px}.cp-promo-strip p{margin:5px 0 0;color:#435778;font-size:14px}.cp-empty-products{border:1px dashed #bdcce2;background:#f9fbff;border-radius:16px;padding:28px;text-align:center;color:#53647e}.cp-empty-products strong{display:block;color:#20365d;margin-bottom:6px}.cp-footer{background:#102751;color:#fff;margin-top:60px;padding:38px 0 22px}.cp-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.cp-footer h3,.cp-footer h4{color:#fff;margin:0 0 12px}.cp-footer p,.cp-footer a{font-size:13px;color:#dbe6f8}.cp-footer-links{display:grid;gap:8px}.cp-footer-bottom{border-top:1px solid rgba(255,255,255,.16);margin-top:25px;padding-top:17px;color:#dbe6f8;font-size:12px}.cp-page-title{font-size:30px;color:#172f5b;margin:25px 0}.cp-content{padding:20px 0 45px}.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--cp-muted);margin:20px 0}.woocommerce div.product div.images img{border:1px solid var(--cp-border);border-radius:16px}.woocommerce div.product .product_title{color:#17366f}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--cp-blue);font-weight:900}.woocommerce .quantity .qty{border:1px solid var(--cp-border);border-radius:8px;padding:10px}.woocommerce input.input-text,.woocommerce select,.woocommerce textarea{border:1px solid #d8e1ef;border-radius:9px;padding:12px;background:#fff}.woocommerce form .form-row label{font-size:13px;font-weight:700;color:#35445f}.woocommerce-info,.woocommerce-message{border-top-color:var(--cp-blue)}.woocommerce-info:before,.woocommerce-message:before{color:var(--cp-blue)}.woocommerce table.shop_table{border-radius:12px;border-color:var(--cp-border)}.cp-cart-link{position:relative}.screen-reader-text{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
@media(max-width:1000px){.cp-header-main{grid-template-columns:180px 1fr auto;gap:14px}.cp-brand img{max-width:170px}.cp-benefits{grid-template-columns:repeat(2,1fr)}.cp-categories{grid-template-columns:repeat(3,1fr)}.cp-products{grid-template-columns:repeat(3,minmax(0,1fr))}.cp-hero-copy{padding:32px}.cp-hero-art img{height:220px}}
@media(max-width:680px){.cp-container{width:min(100% - 24px,1240px)}.cp-topbar .cp-container{justify-content:center;text-align:center}.cp-topbar .cp-topbar-extra{display:none}.cp-header-main{grid-template-columns:1fr auto;gap:12px;padding:13px 0}.cp-brand img{max-width:150px;max-height:48px}.cp-brand-text{font-size:18px}.cp-search{grid-column:1/-1;grid-row:2;height:44px}.cp-header-actions{gap:12px}.cp-header-actions a .cp-action-label{display:none}.cp-header-actions a{font-size:20px}.cp-mobile-menu{display:inline-flex;align-items:center;gap:6px;background:var(--cp-blue);color:#fff!important;padding:9px 11px;border-radius:8px;font-size:12px;font-weight:800}.cp-nav-inner{min-height:42px}.cp-nav a{padding:12px 11px;font-size:12px}.cp-nav .cp-all-cats{display:none}.cp-hero{grid-template-columns:1fr;min-height:0;margin:16px auto 20px;background:linear-gradient(145deg,#15366f,#2459a8)}.cp-hero-copy{padding:25px 23px 10px}.cp-hero h1{font-size:32px}.cp-hero p{font-size:14px}.cp-hero-art{padding:0 18px 15px}.cp-hero-art img{height:150px}.cp-hero-art-placeholder{height:130px;width:160px;font-size:66px}.cp-benefits{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:28px}.cp-benefit{padding:10px;gap:8px}.cp-benefit-icon{width:32px;height:32px;flex-basis:32px;font-size:16px}.cp-benefit strong{font-size:11px}.cp-benefit span{font-size:10px}.cp-section{margin:27px 0 32px}.cp-section h2{font-size:21px}.cp-section-head{align-items:center}.cp-section-subtitle{font-size:12px}.cp-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cp-category{padding:13px 5px;border-radius:12px}.cp-category-icon{width:48px;height:48px;font-size:24px}.cp-category strong{font-size:11px}.cp-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cp-product-card,.woocommerce ul.products li.product{padding:9px!important;border-radius:12px}.cp-product-card img,.woocommerce ul.products li.product a img{height:135px}.cp-product-card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px!important;min-height:33px}.cp-product-card .price,.woocommerce ul.products li.product .price{font-size:16px!important}.cp-product-card .button,.woocommerce ul.products li.product .button{font-size:11px;padding:10px 5px}.cp-promo-strip{padding:19px;display:block}.cp-promo-strip .cp-btn{margin-top:14px}.cp-footer-grid{grid-template-columns:1fr;gap:22px}.cp-page-title{font-size:25px}.woocommerce .col2-set,.woocommerce-page .col2-set{width:100%}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:100%;float:none}.woocommerce table.shop_table{font-size:12px}}

/* V1.0.1: logo oficial en alta resolución y sin acceso a cuenta de usuario */
.cp-brand img{display:block;width:205px;height:auto;max-height:66px;object-fit:contain}.cp-header-actions{justify-content:flex-end}
@media(max-width:680px){.cp-brand img{width:150px;max-height:48px}}


/* Comercial Palma V1.0.2: hero promocional ilustrado y CTA funcionales */
.cp-hero-banner{display:block;position:relative;width:100%;margin:24px auto 28px;border-radius:22px;overflow:hidden;min-height:0;background:#eaf2ff;line-height:0}
.cp-hero-banner-image{display:block;width:100%;height:auto;max-width:none;object-fit:cover}
.cp-hero-cta-hotspot,.cp-hero-dispatch-hotspot,.cp-hero-pickup-hotspot,.cp-hero-offers-hotspot{position:absolute;display:block;z-index:3;overflow:hidden;text-indent:-9999px;line-height:1;background:transparent;border:0}
.cp-hero-cta-hotspot{left:4.1%;bottom:7.2%;width:20.5%;height:12.5%;border-radius:12px}
.cp-hero-dispatch-hotspot{right:1.2%;top:15.5%;width:12.2%;height:16%;border-radius:16px}
.cp-hero-pickup-hotspot{right:1.2%;top:33.5%;width:12.2%;height:16%;border-radius:16px}
.cp-hero-offers-hotspot{right:1.2%;top:51.5%;width:12.2%;height:16%;border-radius:16px}
.cp-hero-cta-hotspot:focus-visible,.cp-hero-dispatch-hotspot:focus-visible,.cp-hero-pickup-hotspot:focus-visible,.cp-hero-offers-hotspot:focus-visible{outline:4px solid #ef334e;outline-offset:-4px;background:rgba(255,255,255,.12)}
.cp-hero-banner a:hover{background:rgba(255,255,255,.07)}
@media(max-width:680px){
 .cp-hero-banner{margin:14px auto 20px;border-radius:14px}
 .cp-hero-cta-hotspot{left:4%;bottom:7%;width:21%;height:12%}
 .cp-hero-dispatch-hotspot{right:1%;top:15%;width:13%;height:16%}
 .cp-hero-pickup-hotspot{right:1%;top:33%;width:13%;height:16%}
 .cp-hero-offers-hotspot{right:1%;top:51%;width:13%;height:16%}
}


/* V1.0.3: cabecera fija, logo limpio, accesos flotantes y navegación en español */
.cp-header{position:sticky;top:0;z-index:999;background:#fff;box-shadow:0 3px 12px rgba(17,45,91,.08)}
body.admin-bar .cp-header{top:32px}
.cp-brand{display:flex;align-items:center;flex:0 0 245px;max-width:245px;min-width:150px}
.cp-brand img{display:block;width:100%;height:auto;max-height:76px;object-fit:contain;object-position:left center;border:0!important;outline:0!important;box-shadow:none!important;background:transparent}
.cp-brand .custom-logo-link{display:none!important}
.cp-nav-inner>a[href*="uncategorized"]{display:none!important}
.cp-whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:10000;display:flex;align-items:center;gap:9px;padding:13px 18px;border-radius:999px;background:#168c55;color:#fff!important;text-decoration:none!important;font-weight:700;box-shadow:0 6px 22px rgba(0,0,0,.22);transition:transform .2s,box-shadow .2s}
.cp-whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 9px 26px rgba(0,0,0,.25);color:#fff!important}
.cp-whatsapp-float svg{width:25px;height:25px;fill:currentColor;flex:none}
.cp-back-to-top{position:fixed;right:26px;bottom:88px;z-index:9999;display:flex;align-items:center;gap:7px;border:0;border-radius:999px;background:#17366f;color:#fff;padding:12px 16px;font-size:15px;font-weight:700;box-shadow:0 5px 18px rgba(0,0,0,.18);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
.cp-back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.cp-back-to-top:hover{background:#0e2857}
@media(max-width:782px){body.admin-bar .cp-header{top:46px}}
@media(max-width:680px){
 .cp-header-main{gap:10px}
 .cp-brand{flex:0 0 110px;max-width:110px;min-width:90px}
 .cp-brand img{max-height:48px}
 .cp-header{position:sticky}
 .cp-whatsapp-float{right:14px;bottom:14px;padding:12px;border-radius:50%;width:52px;height:52px;justify-content:center}
 .cp-whatsapp-float span{display:none}
 .cp-back-to-top{right:14px;bottom:76px;padding:11px 13px}
 .cp-back-to-top span{display:none}
}
