/*
Theme Name: Owala Child
Template: astra
Version: 1.3.0
Description: Owala Life (owalalife.homes) child theme for Astra
*/

/* ===== 通用 ===== */
body, .ast-container { background:#fff; color:#2d3640; }

/* ===== 页头顶部工具条（搜索 / Sign In / 购物车带角标） ===== */
.owa-topbar { background:#fff; border-bottom:1px solid #eef0f2; }
.owa-topbar-inner {
    max-width:1280px; margin:0 auto; padding:10px 24px;
    display:flex; justify-content:flex-end; align-items:center; gap:22px;
}
.owa-util { position:relative; color:#1a1a1a; text-decoration:none; display:inline-flex; align-items:center; }
.owa-util:hover { opacity:.7; }
.owa-cart-count {
    position:absolute; top:-7px; right:-10px; min-width:17px; height:17px; padding:0 4px;
    background:#f05a28; color:#fff; font-size:11px; font-weight:700; line-height:17px;
    text-align:center; border-radius:9px; box-sizing:border-box;
}
/* 手机端：角标稍微内收，避免贴边被裁 */
@media (max-width:600px) {
    .owa-topbar-inner { padding:8px 16px; gap:16px; }
    .owa-cart-count { right:-8px; }
}

/* ===== HERO (全宽全出血) ===== */
body { overflow-x:hidden; }
.owa-hero {
    position:relative;
    left:50%;
    transform:translateX(-50%);
    width:100vw;
    max-width:100vw;
    line-height:0;
}
.owa-hero-img { width:100%; height:auto; display:block; object-fit:cover; }

/* ===== 区块标题 ===== */
.owa-section-title {
    text-align:center; font-weight:800; font-size:32px; letter-spacing:-0.02em;
    color:#2d3640; margin:64px auto 28px; text-transform:none; max-width:1200px; padding:0 20px;
}

/* ===== BESTSELLERS ===== */
.owa-bestsellers { max-width:1200px; margin:0 auto; padding:0 20px; }
.owa-bs-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.owa-bs-card { display:flex; flex-direction:column; text-decoration:none; color:#2d3640; }
.owa-bs-card:hover .owa-bs-img img { transform:scale(1.03); }
.owa-bs-img { overflow:hidden; border-radius:8px; background:#f5f5f5; aspect-ratio:1/1; }
.owa-bs-img img { width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.owa-bs-body { display:flex; flex-direction:column; gap:6px; padding:12px 4px 0; }
.owa-bs-name { font-weight:800; font-size:17px; }
.owa-bs-desc { font-size:14px; color:#5a6570; }
.owa-bs-price { font-size:14px; font-weight:600; color:#2d3640; }

/* ===== CATEGORY ===== */
.owa-category { max-width:1200px; margin:0 auto 80px; padding:0 20px; }
.owa-cat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.owa-cat-card { display:flex; flex-direction:column; text-decoration:none; color:#2d3640; }
.owa-cat-card:hover .owa-cat-img img { transform:scale(1.03); }
.owa-cat-img { overflow:hidden; border-radius:8px; aspect-ratio:1/1; background:#f5f5f5; }
.owa-cat-img img { width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.owa-cat-body { display:flex; flex-direction:column; gap:6px; padding:12px 4px 0; }
.owa-cat-name { font-weight:800; font-size:20px; }
.owa-cat-desc { font-size:14px; color:#5a6570; }

/* ===== 页脚 ===== */
.owala-footer { background:#f4f4f4; border-top:1px solid #ececec; }
.owa-footer-main { max-width:1200px; margin:0 auto; padding:48px 24px 40px; }
.owa-footer-cols { display:grid; grid-template-columns:1fr 1fr 1fr 1.4fr; gap:32px; }
.owa-fcol-title { font-weight:800; font-size:14px; letter-spacing:.04em; text-transform:uppercase; color:#1a1a1a; margin:0 0 14px; }
.owa-fcol-list { list-style:none; margin:0; padding:0; }
.owa-fcol-list li { margin:0 0 10px; }
.owa-fcol-list a, .owa-fci-val a { color:#4a4a4a; text-decoration:none; font-size:14px; line-height:1.5; }
.owa-fcol-list a:hover, .owa-fci-val a:hover { color:#f05a28; text-decoration:underline; }
.owa-fci-line { margin:0 0 10px; font-size:14px; line-height:1.5; color:#4a4a4a; }
.owa-fci-lbl { font-weight:700; color:#1a1a1a; }
.owa-footer-bottom { border-top:1px solid #ececec; }
.owa-footer-bottom-inner { max-width:1200px; margin:0 auto; padding:18px 24px; }
.owa-footer-copy { font-size:13px; color:#6b6b6b; }

/* 页脚响应式：手机端整宽叠加 */
@media (max-width:1023px){
    .owa-footer-cols { grid-template-columns:1fr 1fr; gap:28px; }
}
@media (max-width:600px){
    .owa-footer-cols { grid-template-columns:1fr; gap:24px; }
    .owa-footer-main { padding:36px 20px 28px; }
}

/* ===== 响应式 ===== */
@media (max-width:1023px){
    .owa-bs-grid, .owa-cat-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:600px){
    .owa-bs-grid, .owa-cat-grid { grid-template-columns:repeat(2,1fr); gap:16px; }
    .owa-section-title { font-size:24px; margin-top:40px; }
}
