/* ============================================================
   site.css — Tools of Humanity Shared Stylesheet
   Design: Black (#000) bg · Gold (#FFD700) accent · White nav
   ============================================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --y:#FFD700;--bg:#000;--s1:#111;--s2:#1a1a1a;--bd:#2a2a2a;
  --txt:#fff;--mt:#888;--f:'Inter',system-ui,sans-serif;
}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--f);background:var(--bg);color:var(--txt);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}

/* ── Header ── */
.toh-header{
  background:#fff;border-bottom:1.5px solid #e8e8e8;
  padding:12px 48px;display:flex;align-items:center;
  justify-content:space-between;position:sticky;top:0;z-index:200;
}
.toh-logo{text-decoration:none;display:flex;flex-direction:column;line-height:1.2}
.toh-logo-main{font-size:1.1rem;font-weight:800;color:#000;letter-spacing:-.02em}
.toh-logo-sub{font-size:.55rem;font-weight:700;color:#000;opacity:.4;text-transform:uppercase;letter-spacing:.16em}
.toh-nav{display:flex;gap:20px;font-size:.78rem;font-weight:700}
.toh-nav a{color:#000;padding:4px 0;border-bottom:2.5px solid transparent;transition:border-color .15s}
.toh-nav a:hover,.toh-nav a.active{border-bottom-color:var(--y)}
.toh-hbg{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none}
.toh-hbg span{display:block;width:22px;height:2.5px;background:#000;border-radius:2px;transition:transform .25s,opacity .25s}
.toh-hbg.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.toh-hbg.open span:nth-child(2){opacity:0}
.toh-hbg.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.toh-mnav{display:none;position:absolute;top:100%;left:0;right:0;background:#000;border-bottom:2px solid var(--y);flex-direction:column;z-index:100}
.toh-mnav.open{display:flex}
.toh-mnav a{color:#fff;padding:14px 24px;font-size:.88rem;font-weight:600;border-bottom:1px solid var(--bd)}
.toh-mnav a:hover{background:var(--y);color:#000}

/* ── Breadcrumb ── */
.toh-bc{
  padding:10px 48px;border-bottom:1px solid var(--bd);
  font-size:.72rem;display:flex;gap:6px;align-items:center;flex-wrap:wrap;
}
.toh-bc a{color:var(--mt);transition:color .15s}
.toh-bc a:hover{color:var(--y)}
.toh-bc .sep{color:var(--bd)}
.toh-bc b{color:var(--txt);font-weight:600}

/* ── Search bar (for index pages) ── */
.toh-search-section{padding:24px 48px;border-bottom:1px solid var(--bd)}
.toh-search-outer{position:relative;max-width:560px}
.toh-search-wrap{
  display:flex;align-items:center;gap:10px;background:#fff;
  border:2px solid #e0e0e0;border-radius:8px;padding:11px 18px;transition:border-color .15s;
}
.toh-search-wrap:focus-within{border-color:var(--y)}
.toh-search-wrap svg{flex-shrink:0;opacity:.35}
.toh-search-wrap input{
  border:none;outline:none;background:transparent;color:#000;
  font-family:var(--f);font-size:.9rem;width:100%;
}
.toh-search-wrap input::placeholder{color:#aaa}
.toh-sdrop{
  position:absolute;top:calc(100% + 4px);left:0;right:0;
  background:#1c1c1c;border:1.5px solid var(--y);z-index:300;
  display:none;border-radius:0 0 8px 8px;overflow:hidden;
}
.toh-si{
  display:flex;justify-content:space-between;align-items:center;
  padding:11px 16px;color:#fff;border-bottom:1px solid var(--bd);
  font-size:.83rem;transition:background .1s;
}
.toh-si:last-child{border-bottom:none}
.toh-si:hover{background:var(--y);color:#000}
.toh-si:hover .toh-sc{color:#000}
.toh-sc{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--y);font-weight:700}

/* ── Related Tools ── */
.toh-related{padding:40px 48px;border-top:1px solid var(--bd)}
.toh-related h3{
  font-size:.6rem;text-transform:uppercase;letter-spacing:.18em;
  font-weight:700;color:var(--mt);margin-bottom:20px;
}
.toh-rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:8px;overflow:hidden}
.toh-rc{
  background:var(--s1);padding:18px;display:flex;flex-direction:column;
  justify-content:space-between;min-height:100px;transition:background .15s;
}
.toh-rc:hover{background:var(--y)}
.toh-rc:hover .toh-rn,.toh-rc:hover .toh-rd,.toh-rc:hover .toh-ra{color:#000}
.toh-rn{font-size:.8rem;font-weight:700;margin-bottom:4px;transition:color .15s;line-height:1.3}
.toh-rd{font-size:.68rem;color:var(--mt);line-height:1.4;transition:color .15s}
.toh-ra{font-size:.8rem;color:var(--y);margin-top:8px;transition:color .15s;align-self:flex-end}

/* ── Footer ── */
.toh-footer{
  padding:22px 48px;display:flex;align-items:center;
  justify-content:space-between;font-size:.73rem;
  border-top:1px solid var(--bd);flex-wrap:wrap;gap:12px;margin-top:0;
}
.toh-footer .toh-flogo{font-size:.9rem;font-weight:800;color:#888;letter-spacing:-.02em}
.toh-flinks{display:flex;gap:20px;flex-wrap:wrap}
.toh-flinks a{color:var(--mt)}
.toh-flinks a:hover{color:var(--txt)}
.toh-copy{color:var(--mt)}

/* ── SEO Content Block ── */
.toh-seo{padding:32px 48px;border-top:1px solid var(--bd);max-width:860px}
.toh-seo h2{font-size:1rem;font-weight:700;margin-bottom:10px;color:var(--y)}
.toh-seo h3{font-size:.88rem;font-weight:700;margin-top:18px;margin-bottom:6px;color:var(--txt)}
.toh-seo p{font-size:.83rem;color:var(--mt);line-height:1.75;margin-bottom:8px}

/* ── AdSense slots ── */
.toh-ad{margin:20px 48px;min-height:90px}

/* ── Responsive ── */
@media(max-width:960px){
  .toh-header,.toh-bc,.toh-search-section,.toh-related,.toh-seo,.toh-ad,.toh-footer{
    padding-left:20px;padding-right:20px;
  }
  .toh-header{padding-top:10px;padding-bottom:10px}
  .toh-nav{display:none}
  .toh-hbg{display:flex}
  .toh-rel-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:480px){
  .toh-rel-grid{grid-template-columns:1fr}
}
