/* ==========================================================
   Product Card 19 — Left Rule
   ========================================================== */
.ahpc19-section {
    --ahpc19-brand: #185FA5;
    --ahpc19-brand-dark: #042C53;
    --ahpc19-sale: #A32D2D;
    --ahpc19-soft: #f4f3f0;
    --ahpc19-line: #E5E1DB;
    --ahpc19-text: #1c1917;
    --ahpc19-muted: #78716c;
    --ahpc19-card: #ffffff;
    --ahpc19-dot:#1D9E75;--ahpc19-rule:#E5E1DB;--ahpc19-radius:16px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 1px 16px 70px;
    font-family: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.ahpc19-section * { box-sizing: border-box; }
.ahpc19-intro { margin: 10px 0 0; max-width: 520px; font-size: 15px; color: #6b635b; }
.ahpc19-all, .ahpc19-all:hover, .ahpc19-all:focus { white-space: nowrap; font-size: 14px; font-weight: 600; color: var(--ahpc19-text); text-decoration: none; border-bottom: 2px solid var(--ahpc19-text); padding-bottom: 2px; }
.ahpc19-head:not(.ahpc19-head--split) .ahpc19-all { display: inline-block; margin-top: 14px; }
.ahpc19-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.ahpc19-card { position: relative; display: flex; flex-direction: column; min-width: 0; }
.ahpc19-img { display: block; position: relative; aspect-ratio: 1; overflow: hidden; }
.ahpc19-section .ahpc19-img img { width: 100%; height: 100%; max-width: none; margin: 0; object-fit: cover; display: block; border-radius: 0; transition: transform .6s ease; backface-visibility: hidden; -webkit-backface-visibility: hidden; transform: translateZ(0); image-rendering: -webkit-optimize-contrast; }
.ahpc19-section .ahpc19-card:hover .ahpc19-img img { transform: scale(1.06) translateZ(0); }
.ahpc19-badge { position: absolute; left: 10px; top: 10px; z-index: 1; font-size: 12px; font-weight: 600; color: #fff; background: var(--ahpc19-sale); padding: 4px 10px; border-radius: 999px; }
.ahpc19-name { margin: 0; font-family: inherit; font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--ahpc19-text); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.8em; }
.ahpc19-name a { color: inherit; text-decoration: none; }
.ahpc19-price { font-size: 17px; font-weight: 700; color: var(--ahpc19-text); }
.ahpc19-old { font-size: 13px; color: var(--ahpc19-muted); text-decoration: line-through; margin-left: 6px; font-weight: 400; }
.ahpc19-price .woocommerce-Price-amount, .ahpc19-old .woocommerce-Price-amount { color: inherit; }
.ahpc19-section a:focus-visible { outline: 3px solid var(--ahpc19-text); outline-offset: 3px; }
.ahpc19-section .added_to_cart { display: none !important; }
.ahpc19-section a.loading { opacity: .6; pointer-events: none; }
@media (max-width: 1024px) { .ahpc19-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 900px) { .ahpc19-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; } }
@media (max-width: 600px) {
    .ahpc19-heading { font-size: 26px; }
    .ahpc19-intro { font-size: 14px; }
    .ahpc19-head { margin-bottom: 26px; }
    .ahpc19-name { font-size: 13px; }
    .ahpc19-price { font-size: 15px; }
    .ahpc19-old { font-size: 11px; margin-left: 4px; }
}
@media (prefers-reduced-motion: reduce) { .ahpc19-section * { transition: none !important; animation: none !important; } }

/* ---------- design ---------- */
.ahpc19-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:36px;padding-bottom:18px;border-bottom:1px solid var(--ahpc19-rule)}
.ahpc19-title{display:flex;align-items:center;gap:12px}
.ahpc19-dot{width:12px;height:12px;border-radius:50%;background:var(--ahpc19-dot);box-shadow:0 0 0 5px color-mix(in srgb,var(--ahpc19-dot) 15%,transparent);flex:none}
.ahpc19-heading{margin:0;font-size:32px;font-weight:700;color:var(--ahpc19-text)}
.ahpc19-intro{margin-top:6px}
.ahpc19-all,.ahpc19-all:hover,.ahpc19-all:focus{border-bottom:0;padding-bottom:0;transition:letter-spacing .25s}
.ahpc19-img{border-radius:var(--ahpc19-radius);background:var(--ahpc19-soft)}
.ahpc19-body{padding:12px 2px 0;display:flex;flex-direction:column;flex:1}
.ahpc19-row{margin-top:auto;padding:10px 0 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ahpc19-rule);position:relative;text-decoration:none;color:inherit}
.ahpc19-row::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--ahpc19-text);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.ahpc19-card:hover .ahpc19-row::after{width:100%}
.ahpc19-go{color:var(--ahpc19-text);display:flex;transition:transform .3s}
.ahpc19-card:hover .ahpc19-go{transform:translateX(4px)}
@media (max-width:600px){.ahpc19-heading{font-size:24px}.ahpc19-dot{width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb,var(--ahpc19-dot) 15%,transparent)}.ahpc19-intro{display:none}.ahpc19-section{--ahpc19-radius:12px}.ahpc19-all{font-size:13px}}

/* --- Header alignment helper (set by the Header Alignment control) --- */
.ahpc19-intro { margin-left: var(--ahpc19-intro-l, 0); margin-right: var(--ahpc19-intro-r, 0); }
@media (max-width: 600px) { .ahpc19-head { flex-direction: column; align-items: flex-start; } }

/* --- Alignment: match plugin containers (Product Card 1–7, Category Grid 1–9): full width, 65px sides, 1px on mobile --- */
.ahpc19-section { max-width: 100%; padding-left: 65px; padding-right: 65px; }
@media (max-width: 768px) {
    .ahpc19-section { padding: 1px; }
}

/* Split header: link sits on the right, no extra top margin */
.ahpc19-head .ahpc19-all { margin-top: 0; }
