/*
 * Garden Tools Hub — scoped under `.ogw-tools-page .entry-content` (body class
 * added in functions.php), so design + reset rules apply to the page content
 * only, never the GeneratePress header/nav/footer. Loaded only on /garden-tools/.
 * Shares the Start Here visual language and the child-theme typography tokens
 * (Merriweather / Lora / Inter, brand green).
 */
.ogw-tools-page .entry-content {
  --green:#2d6a2d; --green-dark:#1a4019; --green-mid:#3d7a3a;
  --green-light:#eaf4e8; --green-border:#b8d9b5;
  --amber:#c97b2a; --amber-light:#fdf3e7; --amber-dark:#a0601e;
  --cream:#faf8f3; --cream-2:#f3efe7; --white:#fff;
  --ink:#1a1a14; --ink-2:#3d3d30; --ink-3:#6b6b58; --ink-4:#9a9a85;
  --border:#e2ddd4;
  --serif:var(--ogw-font-head,'Merriweather',Georgia,serif);
  --body-serif:var(--ogw-font-serif,'Lora',Georgia,'Times New Roman',serif);
  --sans:var(--ogw-font-ui,'Inter',-apple-system,BlinkMacSystemFont,sans-serif);
  --radius:8px;
  font-family:var(--sans); color:var(--ink);
}
.ogw-tools-page .entry-content *{box-sizing:border-box;}
.ogw-tools-page .entry-content :where(h1,h2,h3,p,ul,li){margin:0;}
.ogw-tools-page .entry-content a{color:inherit; text-decoration:none;}

/* Strip GeneratePress's article padding/card so the hero is flush + full-bleed */
.ogw-tools-page .inside-article{padding:0 !important; border:none !important; box-shadow:none !important; background:transparent !important;}
.ogw-tools-page .inside-article .entry-content{margin:0 !important;}

/* ── Merge hero with the header: kill the wrapper spacing above the content box
   on this page only, so the full-bleed hero butts flush against the nav bar.
   (separate-containers layout: .site-content padding + .site-main margin +
   .inside-article padding all sit between the nav and the hero.) ── */
.ogw-tools-page .site-content{padding-top:0;}
.ogw-tools-page.separate-containers .site-main{margin-top:0;}
.ogw-tools-page.separate-containers .inside-article{padding-top:0;}

/* ── Hero (full-bleed, color continues the header) ── */
.ogw-tools-page .entry-content .page-hero{
  /* Top edge matches the nav bar (.main-navigation #154e45) and deepens
     downward, so the hero reads as one continuous green with the header. */
  background:linear-gradient(180deg,#154e45 0%,#123f37 55%,#0f3329 100%);
  padding:3.5rem 2rem 4rem; position:relative; overflow:hidden;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
}
.ogw-tools-page .entry-content .page-hero::before{
  content:''; position:absolute; top:-60px; right:-40px;
  width:520px; height:520px;
  background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%); pointer-events:none;
}
.ogw-tools-page .entry-content .page-hero-inner{max-width:1100px; margin:0 auto; position:relative; text-align:center;}
.ogw-tools-page .entry-content .page-hero-badge{
  display:inline-flex; align-items:center; gap:.5rem;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18);
  border-radius:999px; padding:.3rem 1rem; font-size:.72rem; font-weight:700;
  color:rgba(255,255,255,.85); text-transform:uppercase; letter-spacing:.1em; margin-bottom:1.25rem;
}
.ogw-tools-page .entry-content .page-hero h1{
  font-family:var(--serif); font-size:clamp(2.3rem,5.5vw,3.6rem); font-weight:900;
  color:#fff; letter-spacing:-.025em; line-height:1.1; margin-bottom:1rem; max-width:680px; margin-left:auto; margin-right:auto;
}
.ogw-tools-page .entry-content .page-hero-sub{
  font-family:var(--body-serif); font-size:1.2rem; color:rgba(255,255,255,.75);
  line-height:1.7; margin-bottom:2rem; max-width:600px; margin-left:auto; margin-right:auto;
}
.ogw-tools-page .entry-content .hero-stats{display:flex; gap:1.5rem; align-items:center; flex-wrap:wrap; justify-content:center;}
.ogw-tools-page .entry-content .hero-stat{display:flex; align-items:baseline; gap:.4rem;}
.ogw-tools-page .entry-content .hero-stat-num{font-family:var(--serif); font-size:1.6rem; font-weight:900; color:#fff; line-height:1;}
.ogw-tools-page .entry-content .hero-stat-label{font-size:.74rem; font-weight:600; color:#86efac; text-transform:uppercase; letter-spacing:.05em;}
.ogw-tools-page .entry-content .hero-stat-div{width:1px; height:26px; background:rgba(255,255,255,.2);}

/* ── Body wrapper ── */
.ogw-tools-page .entry-content .page-body{max-width:1100px; margin:0 auto; padding:3.5rem 1.25rem 1rem;}

/* ── Section headers ── */
.ogw-tools-page .entry-content .tools-section{margin-bottom:4rem;}
.ogw-tools-page .entry-content .section-label{
  font-size:.78rem; font-weight:800; color:var(--green-mid); letter-spacing:.14em;
  text-transform:uppercase; margin-bottom:.65rem; display:flex; align-items:center; gap:.5rem;
}
.ogw-tools-page .entry-content .section-label::before{content:''; display:block; width:20px; height:2px; background:var(--green-mid);}
.ogw-tools-page .entry-content .section-h{
  font-family:var(--serif); font-size:clamp(1.8rem,3.4vw,2.5rem); font-weight:900;
  color:var(--ink); letter-spacing:-.02em; margin-bottom:.55rem;
}
.ogw-tools-page .entry-content .section-sub{
  font-family:var(--body-serif); font-size:1.15rem; color:var(--ink-3); line-height:1.7; margin-bottom:2rem; max-width:760px;
}

/* ── Tools grid + cards ── */
.ogw-tools-page .entry-content .tools-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem;}
.ogw-tools-page .entry-content .tool-card{
  background:var(--white); border:2px solid var(--border); border-radius:var(--radius);
  padding:1.5rem 1.35rem 1.1rem; display:flex; flex-direction:column; position:relative;
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
.ogw-tools-page .entry-content a.tool-card:hover{border-color:var(--green-mid); box-shadow:0 4px 20px rgba(0,0,0,.08); transform:translateY(-2px);}
.ogw-tools-page .entry-content .tool-card-top{display:flex; align-items:flex-start; gap:.85rem; margin-bottom:.85rem;}
.ogw-tools-page .entry-content .tool-icon{color:var(--ogw-green,#3d7a3a); line-height:0; flex-shrink:0;}
.ogw-tools-page .entry-content .tool-icon svg{width:34px; height:34px; display:block;}
.ogw-tools-page .entry-content .tool-name{font-size:1.1rem; font-weight:700; color:var(--ink); line-height:1.25;}
.ogw-tools-page .entry-content .tool-vol{display:none;} /* search volume hidden per request */
.ogw-tools-page .entry-content .tool-desc{font-family:var(--body-serif); font-size:.98rem; color:var(--ink-3); line-height:1.6; margin-bottom:1rem; flex:1;}
.ogw-tools-page .entry-content .tool-foot{display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-top:auto; padding-top:.85rem; border-top:1px solid var(--border);}
.ogw-tools-page .entry-content .tool-cta{font-size:.85rem; font-weight:700; color:var(--green-mid); display:flex; align-items:center; gap:.3rem;}
.ogw-tools-page .entry-content a.tool-card:hover .tool-cta{gap:.5rem;}
.ogw-tools-page .entry-content .tool-tag{display:none;} /* "Free · No signup" / search-vol tag hidden per request (status .tool-badge kept) */
.ogw-tools-page .entry-content .tool-top{margin-bottom:1.15rem;} /* space between tool name and description */

/* ── Coming-soon variant ── */
.ogw-tools-page .entry-content .tool-card.coming{border-style:dashed; border-color:#d8d2c6; background:#fcfbf8;}
.ogw-tools-page .entry-content .tool-card.coming .tool-icon{color:var(--ink-4);}
.ogw-tools-page .entry-content .tool-card.coming .tool-name{color:var(--ink-2);}
.ogw-tools-page .entry-content .tool-badge{font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; padding:.18rem .5rem; border-radius:3px;}
.ogw-tools-page .entry-content .tool-badge.next{color:#7c3aed; background:#f3e8ff;}
.ogw-tools-page .entry-content .tool-badge.soon{color:var(--ink-4); background:var(--cream-2);}

/* ── How they connect (reading-path style) ── */
.ogw-tools-page .entry-content .path-section{background:var(--amber-light); border:1px solid #e8d5b7; border-radius:var(--radius); padding:2.5rem 2rem; margin-bottom:4rem;}
.ogw-tools-page .entry-content .path-section .section-label{color:var(--amber);}
.ogw-tools-page .entry-content .path-title{font-family:var(--serif); font-size:1.65rem; font-weight:900; color:var(--ink); letter-spacing:-.02em; margin-bottom:.4rem;}
.ogw-tools-page .entry-content .path-sub{font-family:var(--body-serif); font-size:1.08rem; color:var(--ink-3); line-height:1.65; margin-bottom:1.75rem;}
.ogw-tools-page .entry-content .path-steps{display:flex; flex-direction:column; gap:.75rem;}
.ogw-tools-page .entry-content .path-step{display:flex; align-items:flex-start; gap:1.1rem; background:var(--white); border:1px solid rgba(201,123,42,.18); border-radius:var(--radius); padding:1rem 1.25rem; transition:border-color .15s;}
.ogw-tools-page .entry-content a.path-step:hover{border-color:var(--amber);}
.ogw-tools-page .entry-content .path-num{width:38px; height:38px; border-radius:50%; background:var(--amber); color:#fff; display:flex; align-items:center; justify-content:center; font-size:.95rem; font-weight:800; flex-shrink:0;}
.ogw-tools-page .entry-content .path-step-body{flex:1;}
.ogw-tools-page .entry-content .path-step-title{font-size:1.08rem; font-weight:700; color:var(--ink); margin-bottom:.2rem;}
.ogw-tools-page .entry-content .path-step-desc{font-family:var(--body-serif); font-size:.98rem; color:var(--ink-3); line-height:1.55;}

/* ── FAQ ── */
.ogw-tools-page .entry-content .faq-section{margin-bottom:4rem;}
.ogw-tools-page .entry-content .faq-item{background:var(--white); border:1px solid var(--border); border-radius:var(--radius); padding:1.25rem 1.5rem; margin-bottom:.75rem;}
.ogw-tools-page .entry-content .faq-q{font-size:1.05rem; font-weight:700; color:var(--ink); margin-bottom:.4rem; line-height:1.35;}
.ogw-tools-page .entry-content .faq-a{font-family:var(--body-serif); font-size:1rem; color:var(--ink-3); line-height:1.7;}
.ogw-tools-page .entry-content .faq-a a{color:var(--green-mid); border-bottom:1px dashed var(--green-border);}

/* ── From the team ── */
.ogw-tools-page .entry-content .team-section{background:var(--green-light); border:1px solid var(--green-border); border-radius:var(--radius); padding:2.25rem 2.5rem; margin-bottom:4rem;}
.ogw-tools-page .entry-content .team-label{font-size:.72rem; font-weight:800; color:var(--green); text-transform:uppercase; letter-spacing:.1em; margin-bottom:.6rem;}
.ogw-tools-page .entry-content .team-section p{font-family:var(--body-serif); font-size:1.05rem; color:var(--ink-2); line-height:1.8; margin-bottom:.85rem;}
.ogw-tools-page .entry-content .team-section p:last-child{margin-bottom:0;}

/* ── Newsletter ── */
.ogw-tools-page .entry-content .nl-box{background:var(--green-dark); border-radius:var(--radius); padding:2.5rem; text-align:center; margin-bottom:1rem;}
.ogw-tools-page .entry-content .nl-box-title{font-family:var(--serif); font-size:1.75rem; font-weight:900; color:#fff; margin-bottom:.5rem;}
.ogw-tools-page .entry-content .nl-box-sub{font-family:var(--body-serif); font-size:1.08rem; color:rgba(255,255,255,.7); line-height:1.7; margin-bottom:1.5rem; max-width:560px; margin-left:auto; margin-right:auto;}
.ogw-tools-page .entry-content .nl-form{display:flex; gap:.75rem; max-width:440px; margin:0 auto;}
.ogw-tools-page .entry-content .nl-input{flex:1; padding:.75rem 1rem; border:1.5px solid rgba(255,255,255,.2); border-radius:4px; font-size:1rem; background:rgba(255,255,255,.08); color:#fff; outline:none;}
.ogw-tools-page .entry-content .nl-input::placeholder{color:rgba(255,255,255,.4);}
.ogw-tools-page .entry-content .nl-btn{padding:.75rem 1.4rem; background:var(--amber); color:#fff; border:none; border-radius:4px; font-size:1rem; font-weight:700; cursor:pointer; white-space:nowrap;}

/* ── Responsive ── */
@media(max-width:900px){
  .ogw-tools-page .entry-content .tools-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:600px){
  .ogw-tools-page .entry-content .tools-grid{grid-template-columns:1fr;}
  .ogw-tools-page .entry-content .nl-form{flex-direction:column;}
  .ogw-tools-page .entry-content .hero-stat-div{display:none;}
}
