/* ==========================================================
   Category Grid 17
   ========================================================== */
.ahcat17-section {
    max-width: 1200px;
    margin: 0 auto;
    padding: 1px 16px 64px;
    font-family: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.ahcat17-section * { box-sizing: border-box; }
.ahcat17-head { margin-bottom: 36px; text-align: center; }
.ahcat17-eyebrow { display: inline-block; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #7a7066; }
.ahcat17-heading { margin: 6px 0 8px; font-family: inherit; font-size: 34px; font-weight: 700; line-height: 1.2; color: #1c1917; }
.ahcat17-intro { margin: 0; max-width: 460px; font-size: 15px; line-height: 1.6; color: #6b635b; }
.ahcat17-all, .ahcat17-all:hover, .ahcat17-all:focus { white-space: nowrap; font-size: 14px; font-weight: 600; color: #1c1917; text-decoration: none; border-bottom: 2px solid #1c1917; padding-bottom: 2px; }
.ahcat17-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.ahcat17-card { --ahcat17-bg: #F3EEE7; --ahcat17-mid: #E4DDD3; --ahcat17-acc: #1c1917; --ahcat17-ink: #1c1917; text-decoration: none; }
.ahcat17-card:hover, .ahcat17-card:focus { text-decoration: none; }
.ahcat17-card:focus-visible { outline: 3px solid #1c1917; outline-offset: 5px; border-radius: 12px; }
@media (max-width: 1024px) { .ahcat17-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
    .ahcat17-heading { font-size: 26px; }
    .ahcat17-grid { gap: 18px 12px; }
}

/* ---------- design ---------- */
.ahcat17-grid{padding-top:76px;row-gap:100px}
.ahcat17-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--ahcat17-bg);border-radius:26px;padding:96px 20px 24px;transition:transform .35s ease}
.ahcat17-photo{position:absolute;left:50%;top:-76px;width:160px;height:160px;margin-left:-80px;border-radius:50%;overflow:hidden;border:6px solid #fff;box-shadow:0 0 0 2px var(--ahcat17-mid);background:var(--ahcat17-mid);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.ahcat17-section .ahcat17-photo img{width:100%;height:100%;object-fit:cover;display:block}
.ahcat17-title{margin:0 0 6px;font-size:21px;font-weight:700;color:var(--ahcat17-ink)}
.ahcat17-desc{margin:0 0 18px;font-size:13px;line-height:1.55;color:var(--ahcat17-ink);opacity:.75}
.ahcat17-btn{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#fff;background:var(--ahcat17-ink);padding:10px 22px;border-radius:999px;transition:gap .25s ease}
.ahcat17-card:hover{transform:translateY(-6px)}
.ahcat17-card:hover .ahcat17-photo{transform:translateY(-10px) rotate(-4deg)}
.ahcat17-card:hover .ahcat17-btn{gap:12px}
@media (max-width:600px){.ahcat17-grid{padding-top:52px;row-gap:70px}.ahcat17-card{padding:62px 10px 16px;border-radius:18px}.ahcat17-photo{width:104px;height:104px;margin-left:-52px;top:-52px;border-width:4px}.ahcat17-title{font-size:16px}.ahcat17-desc{display:none}.ahcat17-btn{font-size:12px;padding:8px 16px}}
@media (prefers-reduced-motion:reduce){.ahcat17-card,.ahcat17-photo,.ahcat17-btn{transition:none}}

/* --- Header alignment helper (set by the Header Alignment control) --- */
.ahcat17-intro { margin-left: var(--ahcat17-intro-l, auto); margin-right: var(--ahcat17-intro-r, auto); }

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