/* ============ PALETA NEUTRA (troque estes tokens p/ rebrandizar) ============ */
:root{
  --bg:        #f3f1ed;   /* fundo geral: off-white quente/claro */
  --surface:   #e9e5df;   /* superficies: cinza-bege claro */
  --surface-2: #dfdad2;   /* cinza um tom acima */
  --ink:       #33302b;   /* texto principal: grafite quente */
  --muted:     #8b8479;   /* texto secundario: taupe */
  --accent:    #7c604b;   /* marrom/taupe (detalhes) */
  --accent-soft:#a98a72;  /* marrom claro */
  --line:      #d6d0c6;   /* linhas/bordas */
  --shadow:    0 1px 2px rgba(51,48,43,.05), 0 8px 24px rgba(51,48,43,.06);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
  line-height:1.45;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

/* ============ HEADER ============ */
.site-head{
  position:sticky;top:0;z-index:40;
  display:flex;align-items:center;gap:14px;
  padding:14px 18px;
  background:rgba(243,241,237,.86);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.wordmark{
  font-family:'Cormorant Garamond',serif;
  font-weight:600;font-size:24px;letter-spacing:.14em;
  color:var(--ink);
}
.season{margin-left:auto;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.hamb{display:flex;flex-direction:column;justify-content:center;gap:4px;width:34px;height:34px;background:none;border:none;cursor:pointer;padding:6px}
.hamb span{height:2px;background:var(--ink);border-radius:2px;transition:.2s}

/* ============ SUBBAR ============ */
.subbar{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:16px 18px;border-bottom:1px solid var(--line);
}
.back{font-size:13px;color:var(--accent);font-weight:500}
.page-title{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:26px;margin:0;letter-spacing:.01em}
.count{margin-left:auto;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* ============ HERO (home) ============ */
.hero{padding:38px 18px 22px;text-align:center}
.hero h1{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(34px,7vw,58px);margin:0 0 6px;letter-spacing:.06em}
.hero p{margin:0;color:var(--muted);font-size:13px;letter-spacing:.14em;text-transform:uppercase}

/* ============ BANNERS (home) ============ */
.banners{display:flex;flex-direction:column;gap:12px;padding:8px 12px 26px;max-width:1100px;margin:0 auto}
.banner{
  position:relative;display:block;overflow:hidden;border-radius:14px;
  height:clamp(150px,30vw,230px);background:var(--surface);
  box-shadow:var(--shadow);isolation:isolate;
}
.banner-bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:saturate(.9) brightness(.94);transition:transform .5s ease;
}
.banner::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(40,36,31,.72) 0%,rgba(40,36,31,.42) 42%,rgba(40,36,31,.06) 100%);
}
.banner:hover .banner-bg{transform:scale(1.04)}
.banner-cap{position:absolute;left:22px;bottom:20px;z-index:2;color:#f5f1ea}
.banner-cap h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(22px,4.5vw,34px);margin:0 0 3px;letter-spacing:.02em;text-shadow:0 1px 12px rgba(0,0,0,.35)}
.banner-cap span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.9}

/* ============ WRAP + GRIDS ============ */
.wrap{max-width:1200px;margin:0 auto;padding:20px 14px 50px}
.grid{display:grid;gap:14px}
.cats{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.photos{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
@media(max-width:520px){.cats,.photos{grid-template-columns:repeat(2,1fr);gap:10px}}

/* tile de categoria/modelo */
.tile{background:var(--surface);border-radius:12px;overflow:hidden;box-shadow:var(--shadow);transition:.2s}
.tile:hover{transform:translateY(-3px)}
.tile-img{aspect-ratio:1/1;background-size:cover;background-position:center;background-color:var(--surface-2)}
.tile-cap{display:flex;flex-direction:column;gap:2px;padding:11px 13px}
.tile-cap span{font-weight:500;font-size:14px;line-height:1.25}
.tile-cap em{font-style:normal;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* foto de produto */
.ph{margin:0;background:var(--surface);border-radius:12px;overflow:hidden;cursor:zoom-in;box-shadow:var(--shadow);transition:.2s}
.ph:hover{transform:translateY(-3px)}
.ph-img{aspect-ratio:1/1;background:#fff}
.ph-img img{width:100%;height:100%;object-fit:cover}

.soon{padding:60px 20px;text-align:center;color:var(--muted)}

/* ============ DRAWER (menu) ============ */
.drawer{position:fixed;inset:0;z-index:60;visibility:hidden}
.drawer.open{visibility:visible}
.drawer-scrim{position:absolute;inset:0;background:rgba(40,36,31,.4);opacity:0;transition:.25s}
.drawer.open .drawer-scrim{opacity:1}
.drawer-panel{
  position:absolute;top:0;left:0;height:100%;width:min(84vw,340px);
  background:var(--bg);border-right:1px solid var(--line);
  transform:translateX(-100%);transition:transform .28s ease;
  display:flex;flex-direction:column;
}
.drawer.open .drawer-panel{transform:translateX(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px;border-bottom:1px solid var(--line)}
.drawer-title{font-size:12px;letter-spacing:.18em;color:var(--muted)}
.drawer-close{background:none;border:none;font-size:26px;line-height:1;color:var(--ink);cursor:pointer}
.drawer-nav{overflow-y:auto;padding:8px 0}
.drawer-link{display:block;padding:12px 20px;font-size:14px;border-bottom:1px solid rgba(214,208,198,.5)}
.drawer-link:hover{background:var(--surface);color:var(--accent)}
.drawer-link.home{font-weight:600;color:var(--accent)}

/* ============ LIGHTBOX ============ */
.lb{position:fixed;inset:0;z-index:80;background:rgba(30,27,23,.94);display:flex;align-items:center;justify-content:center}
.lb[hidden]{display:none}
.lb-img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb-close{position:absolute;top:18px;right:22px;background:none;border:none;color:#f0ece5;font-size:34px;cursor:pointer;line-height:1}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(245,241,234,.12);border:none;color:#f0ece5;font-size:40px;width:56px;height:72px;border-radius:8px;cursor:pointer}
.lb-prev{left:14px}.lb-next{right:14px}
.lb-nav:hover{background:rgba(245,241,234,.22)}
.lb-cap{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#e9e4dc;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:520px){.lb-nav{width:44px;height:60px;font-size:30px}}

/* ============ FOOTER ============ */
.site-foot{padding:26px 18px 40px;text-align:center;color:var(--muted);font-size:12px;letter-spacing:.14em;text-transform:uppercase;border-top:1px solid var(--line);margin-top:20px}
