/* ===============================================
   blueprintHABITS — WordPress theme styles
   Light, airy blueprint-family look, HABITS green.
   =============================================== */

:root{
  --green:#2ECC71; --green-dark:#27AE60; --green-tint:#E8F8EF;
  --navy:#1A3B5C; --navy-deep:#14304A; --ink:#1A2332;
  --gray:#64748B; --muted:#94A3B8; --border:#EAECEF;
}

html{ scroll-behavior:smooth; }
body{ font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; color:var(--ink); -webkit-font-smoothing:antialiased; }

/* Shared bits */
.bp-eyebrow{ color:var(--green-dark); font-size:.8rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.bp-sec-title{ font-size:2.6rem; font-weight:800; color:var(--ink); letter-spacing:-.02em; line-height:1.1; }
.bp-sec-sub{ color:var(--gray); font-size:1.1rem; }

/* Header */
.site-header{ backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); z-index:100; border-bottom:1px solid var(--border); }
.bp-nav-cta{ margin:0; }
.bp-nav-cta a{ background:var(--green); color:#fff !important; padding:.55rem 1.2rem; border-radius:.6rem; text-decoration:none; font-weight:700; }

/* Hero */
.bp-hero{ background:linear-gradient(180deg,#FFFFFF 0%,var(--green-tint) 100%); }
.bp-hero h1{ font-size:4rem; font-weight:800; letter-spacing:-.03em; line-height:1.05; color:var(--ink); }

/* Built-for strip */
.bp-builtfor{ border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.bp-builtfor .bp-lbl{ color:var(--muted); font-size:.75rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.bp-builtfor .bp-row span{ color:var(--gray); font-weight:600; }

/* Feature grid */
.bp-fgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.bp-feature-card{ border:1px solid var(--border); border-radius:1rem; padding:1.75rem; background:#fff; box-shadow:0 1px 3px rgba(16,24,40,.04); transition:.25s; }
.bp-feature-card:hover{ transform:translateY(-4px); box-shadow:0 12px 24px -10px rgba(16,24,40,.15); }
.bp-ico{ width:48px; height:48px; border-radius:12px; background:var(--green-tint); display:flex; align-items:center; justify-content:center; font-size:1.4rem; margin-bottom:1rem; }
.bp-feature-card h3{ font-size:1.15rem; font-weight:700; color:var(--ink); margin-bottom:.4rem; }
.bp-feature-card p{ color:var(--gray); font-size:.95rem; }

/* Privacy (dark) */
.bp-privacy .bp-eyebrow{ color:#5FE0A0; }
.bp-check{ list-style:none; padding-left:0; }
.bp-check li{ padding:.45rem 0 .45rem 2rem; position:relative; color:#E4EAF1; font-size:1.03rem; }
.bp-check li::before{ content:"\2713"; position:absolute; left:0; color:var(--green); font-weight:800; }
.bp-badge{ width:220px; height:220px; border-radius:50%; background:linear-gradient(135deg,var(--green) 0%,var(--green-dark) 100%); display:flex; flex-direction:column; align-items:center; justify-content:center; margin:0 auto; box-shadow:0 20px 40px -12px rgba(46,204,113,.5); }
.bp-badge .bp-b{ font-size:2.75rem; margin-bottom:.4rem; }
.bp-badge .bp-t{ color:#fff; font-weight:800; font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; text-align:center; line-height:1.3; }

/* How it works */
.bp-steps{ display:grid; grid-template-columns:repeat(5,1fr); gap:1.25rem; }
.bp-step{ text-align:center; }
.bp-num{ width:56px; height:56px; border-radius:50%; background:var(--green); color:#fff; font-weight:800; font-size:1.3rem; display:flex; align-items:center; justify-content:center; margin:0 auto 1rem; box-shadow:0 8px 20px -6px rgba(46,204,113,.5); }
.bp-step h3{ font-size:1.15rem; font-weight:700; color:var(--ink); margin-bottom:.4rem; }
.bp-step p{ color:var(--gray); font-size:.92rem; }

/* Suite */
.bp-scards{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.bp-scard{ background:#fff; border:1.5px solid var(--border); border-radius:1rem; padding:1.75rem; }
.bp-scard.bp-here{ border-color:var(--green); }
.bp-scard .bp-cat{ font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); margin-bottom:.5rem; }
.bp-scard.bp-here .bp-cat{ color:var(--green-dark); }
.bp-scard h3{ font-size:1.2rem; font-weight:800; color:var(--ink); margin-bottom:.5rem; }
.bp-scard p{ color:var(--gray); font-size:.93rem; margin-bottom:1rem; }
.bp-scard a{ color:var(--green-dark); font-weight:700; text-decoration:none; }

/* Download */
.bp-download{ background:linear-gradient(180deg,#FFFFFF 0%,var(--green-tint) 100%); }
.bp-store a{ background:var(--ink); color:#fff !important; padding:1rem 2.5rem; border-radius:.7rem; text-decoration:none; font-weight:700; font-size:1.05rem; display:inline-block; }
.bp-note{ display:inline-block; background:rgba(46,204,113,.12); color:var(--green-dark); padding:.7rem 1.25rem; border-radius:.7rem; font-size:.9rem; font-weight:600; }

/* Footer link lists */
.is-style-no-bullets{ list-style:none; padding-left:0; }
.is-style-no-bullets a{ color:#9FB1C4; text-decoration:none; transition:color .25s ease; }
.is-style-no-bullets a:hover{ color:var(--green); }

/* Reveal on scroll */
.bp-feature-card, .bp-scard{ opacity:1; }

@media (max-width:860px){
  .bp-fgrid,.bp-scards{ grid-template-columns:1fr; }
  .bp-steps{ grid-template-columns:1fr 1fr; }
  .bp-hero h1{ font-size:2.7rem; }
}
