/* PlotCopy Producto v1.3.1 */
body.single-product { overflow-x:hidden; }
body.single-product .pcp-page { width:100%; margin:0; color:#14213d; background:#fff; }
body.single-product .pcp-page * { box-sizing:border-box; }
.pcp-container { width:min(1180px, calc(100% - 40px)); margin:0 auto; }

.pcp-product-hero { padding:58px 0 72px; background:linear-gradient(180deg,#fff 0%,#fbfcff 100%); }
.pcp-product-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); gap:64px; align-items:start; }

.pcp-gallery-card { background:#fff; border:1px solid #e6ebf3; border-radius:22px; padding:24px; box-shadow:0 18px 52px rgba(13,41,86,.07); }
.pcp-main-image { min-height:480px; display:flex; align-items:center; justify-content:center; overflow:hidden; border-radius:16px; background:#fff; }
.pcp-main-image img { width:100%; height:480px; object-fit:contain; display:block; }
.pcp-thumbs { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.pcp-thumb { width:72px; height:72px; padding:5px; background:#fff; border:1px solid #dfe6ef; border-radius:10px; cursor:pointer; overflow:hidden; transition:.2s; }
.pcp-thumb img { width:100%; height:100%; object-fit:contain; }
.pcp-thumb.is-active, .pcp-thumb:hover { border-color:#0870ff; box-shadow:0 0 0 2px rgba(8,112,255,.08); }

.pcp-summary { padding-top:8px; }
.pcp-category { display:inline-flex; padding:7px 12px; border-radius:999px; background:#edf5ff; color:#0868e8; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; margin-bottom:15px; }
.pcp-summary h1 { margin:0 0 16px !important; color:#13213c !important; font-size:clamp(32px,3vw,48px) !important; line-height:1.08 !important; letter-spacing:-1px; font-weight:800 !important; text-transform:none !important; }
.pcp-meta-row { display:flex; flex-wrap:wrap; gap:12px 20px; align-items:center; margin-bottom:20px; font-size:13px; }
.pcp-stock { display:flex; align-items:center; gap:8px; color:#24344d; font-weight:700; }
.pcp-stock i { width:8px; height:8px; background:#20bf6b; border-radius:50%; display:block; }
.pcp-sku { color:#7a8699; }
.pcp-price { margin:0 0 20px; color:#0870ff; font-size:30px; font-weight:850; }
.pcp-price * { color:inherit !important; }
.pcp-short { color:#69778d; font-size:15px; line-height:1.75; padding-bottom:21px; border-bottom:1px solid #edf1f5; }
.pcp-short p:last-child { margin-bottom:0; }
.pcp-spec-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:20px 0; }
.pcp-spec { padding:15px 16px; border:1px solid #e6ebf2; border-radius:12px; background:#f8fafd; }
.pcp-spec span { display:block; color:#8792a4; font-size:10px; text-transform:uppercase; font-weight:800; letter-spacing:.05em; margin-bottom:5px; }
.pcp-spec strong { color:#1b2a43; font-size:14px; }
.pcp-wa { min-height:56px; width:100%; display:flex; align-items:center; justify-content:center; gap:9px; padding:0 22px; border-radius:11px; background:#18c85b; color:#fff !important; text-decoration:none !important; font-size:15px; font-weight:800; box-shadow:0 14px 28px rgba(24,200,91,.22); transition:.2s; }
.pcp-wa:hover { background:#11b651; transform:translateY(-2px); }
.pcp-trust-grid { display:grid; gap:0; margin-top:22px; border-top:1px solid #edf1f5; }
.pcp-trust-grid > div { display:flex; gap:11px; padding:14px 0; border-bottom:1px solid #edf1f5; }
.pcp-trust-grid b { width:27px; height:27px; flex:0 0 27px; border-radius:50%; background:#e9f9ef; color:#16a34a; display:flex; align-items:center; justify-content:center; }
.pcp-trust-grid span { display:flex; flex-direction:column; }
.pcp-trust-grid strong { color:#24344c; font-size:13px; }
.pcp-trust-grid small { color:#8a95a6; font-size:12px; margin-top:2px; }

.pcp-info-section { padding:72px 0; background:#f5f8fc; }
.pcp-info-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr); gap:48px; align-items:start; }
.pcp-eyebrow { display:block; margin-bottom:8px; color:#0870ff; font-size:11px; font-weight:900; letter-spacing:.12em; }
.pcp-description-card h2, .pcp-related-section h2 { margin:0 0 24px; color:#13213c; font-size:clamp(27px,3vw,38px); line-height:1.15; letter-spacing:-.6px; }
.pcp-description { color:#647188; font-size:15px; line-height:1.85; }
.pcp-description h2, .pcp-description h3, .pcp-description h4 { color:#1b2941; }
.pcp-tech-card { background:#fff; border:1px solid #e5eaf1; border-radius:18px; padding:24px; box-shadow:0 12px 34px rgba(14,39,78,.06); }
.pcp-tech-card h3 { margin:0 0 14px; color:#172640; font-size:19px; }
.pcp-tech-card > div { display:flex; justify-content:space-between; gap:18px; padding:13px 0; border-top:1px solid #edf1f5; }
.pcp-tech-card span { color:#8791a2; font-size:12px; }
.pcp-tech-card strong { color:#26354e; font-size:12px; text-align:right; }

.pcp-related-section { padding:72px 0 82px; background:#fff; }
.pcp-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.pcp-related-card { border:1px solid #e5eaf2; border-radius:16px; padding:14px; background:#fff; box-shadow:0 8px 24px rgba(20,40,80,.05); transition:.25s; }
.pcp-related-card:hover { transform:translateY(-4px); box-shadow:0 16px 34px rgba(20,40,80,.10); }
.pcp-related-image { height:210px; display:flex; align-items:center; justify-content:center; border-radius:11px; overflow:hidden; }
.pcp-related-image img { width:100%; height:100%; object-fit:contain; }
.pcp-related-cat { display:block; margin-top:12px; color:#8190a4; font-size:10px; text-transform:uppercase; font-weight:700; }
.pcp-related-card h3 { margin:5px 0 10px; font-size:14px; line-height:1.4; min-height:40px; }
.pcp-related-card h3 a { color:#172640; text-decoration:none; }
.pcp-related-price { color:#0870ff; font-weight:800; margin-bottom:12px; }
.pcp-related-price * { color:inherit !important; }
.pcp-related-link { display:flex; min-height:40px; align-items:center; justify-content:center; border:1px solid #0870ff; border-radius:8px; color:#0870ff !important; text-decoration:none !important; font-size:12px; font-weight:800; }
.pcp-related-link:hover { background:#0870ff; color:#fff !important; }

.pcp-cta-section { padding:0 0 75px; background:#fff; }
.pcp-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:28px 34px; border-radius:18px; background:linear-gradient(135deg,#071b45,#062c69); color:#fff; }
.pcp-cta span { color:#70a8ff; font-size:12px; font-weight:800; text-transform:uppercase; }
.pcp-cta h2 { margin:5px 0 0; max-width:720px; color:#fff; font-size:24px; line-height:1.25; }
.pcp-cta a { flex:0 0 auto; display:flex; align-items:center; justify-content:center; min-height:50px; padding:0 22px; border-radius:9px; background:#0870ff; color:#fff !important; text-decoration:none !important; font-weight:800; }

@media (max-width: 920px) {
    .pcp-product-grid { grid-template-columns:1fr; gap:34px; }
    .pcp-info-grid { grid-template-columns:1fr; gap:28px; }
    .pcp-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pcp-main-image, .pcp-main-image img { min-height:380px; height:380px; }
}

@media (max-width: 600px) {
    .pcp-container { width:calc(100% - 26px); }
    .pcp-product-hero { padding:28px 0 50px; }
    .pcp-gallery-card { padding:13px; border-radius:16px; }
    .pcp-main-image, .pcp-main-image img { min-height:300px; height:300px; }
    .pcp-summary h1 { font-size:30px !important; }
    .pcp-spec-grid { grid-template-columns:1fr; }
    .pcp-info-section, .pcp-related-section { padding:50px 0; }
    .pcp-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .pcp-related-card { padding:10px; }
    .pcp-related-image { height:150px; }
    .pcp-cta { flex-direction:column; align-items:flex-start; padding:24px; }
    .pcp-cta a { width:100%; }
}

/* =========================================================
   V1.2 - CABECERA PROPIA / SIN HEADER NI FOOTER DEL TEMA
   ========================================================= */
body.pcp-standalone-product {
    margin: 0 !important;
    background: #fff;
}
body.pcp-standalone-product .pcp-custom-header {
    width: 100%;
    background: #04113f;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.pcp-custom-header-inner {
    width: min(1180px, calc(100% - 40px));
    min-height: 78px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
}
.pcp-custom-logo {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: #fff;
}
.pcp-site-logo-img {
    display: block;
    width: auto;
    max-width: 190px;
    max-height: 52px;
    object-fit: contain;
}
.pcp-custom-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    flex: 1 1 auto;
}
.pcp-custom-nav a {
    color: #fff !important;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 600;
    transition: color .2s ease, opacity .2s ease;
    position: relative;
    padding: 29px 0 23px;
}
.pcp-custom-nav a:hover { opacity: .82; }
.pcp-custom-nav a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 15px;
    height: 3px;
    border-radius: 999px;
    background: transparent;
}
.pcp-custom-nav a:hover::after,
.pcp-custom-nav a.is-active::after {
    background: #20b9f2;
}
.pcp-contact-link {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 132px;
    min-height: 42px;
    padding: 0 22px;
    border-radius: 999px;
    background: #173cff;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 600;
    transition: transform .2s ease, background .2s ease;
}
.pcp-contact-link:hover {
    background: #0f31e8;
    transform: translateY(-1px);
}

/* Evitar cualquier resto visual del tema */
body.pcp-standalone-product header:not(.pcp-custom-header),
body.pcp-standalone-product footer,
body.pcp-standalone-product .site-header,
body.pcp-standalone-product .site-footer,
body.pcp-standalone-product .page-header,
body.pcp-standalone-product .page-title,
body.pcp-standalone-product .breadcrumbs,
body.pcp-standalone-product .breadcrumb,
body.pcp-standalone-product #secondary,
body.pcp-standalone-product .widget-area {
    display: none !important;
}

@media (max-width: 820px) {
    .pcp-custom-header-inner {
        min-height: 68px;
        width: calc(100% - 28px);
    }
    .pcp-site-logo-img { max-width: 155px; max-height: 44px; }
    .pcp-custom-nav { gap: 16px; }
    .pcp-custom-nav a:not(:first-child) { display: none; }
    .pcp-custom-nav a { font-size: 13px; padding: 25px 0 20px; }
    .pcp-custom-nav a::after { bottom: 13px; }
    .pcp-contact-link { min-width: auto; min-height: 38px; padding: 0 15px; font-size: 13px; }
}
