/* ===========================================================
   Healing Chance - Soft Wellness theme
   Fonts: Inter (staple). Muted sage + warm cream palette.
   =========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

:root{
  --sage:#4f7d70;          /* muted eucalyptus */
  --sage-deep:#3c6357;
  --sage-soft:#e7efea;
  --slate-blue:#3f6079;    /* secondary cool tone */
  --ink:#22332e;
  --muted:#637069;
  --cream:#f5f3ec;         /* warm paper */
  --cream-2:#ece8dd;
  --card:#fffdf8;
  --line:#e2ddcf;
  --danger:#a3502f;
  --radius:20px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:1120px;margin:0 auto;padding:0 26px;width:100%}

/* ---------- Nav ---------- */
.site-header{position:sticky;top:0;z-index:40;background:rgba(245,243,236,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.site-header nav{display:flex;align-items:center;justify-content:space-between;height:76px}
.logo{display:flex;align-items:center;gap:11px;font-weight:700;font-size:1.24rem;letter-spacing:-.02em;color:var(--ink)}
.logo .mark{width:40px;height:40px;border-radius:13px;background:var(--sage-soft);border:1px solid #cfe0d8;display:grid;place-items:center;flex:none}
.logo .mark svg{width:22px;height:22px}
.logo .l{color:var(--sage-deep)}
.navlinks{display:flex;align-items:center;gap:6px}
.navlinks a{padding:9px 18px;border-radius:100px;font-weight:500;font-size:.95rem;color:var(--muted);transition:.18s}
.navlinks a:hover{color:var(--ink)}
.navlinks a.active{color:var(--sage-deep);background:var(--sage-soft)}

/* ---------- Hero ---------- */
.hero{padding:74px 0 60px;position:relative;overflow:hidden}
.blob{position:absolute;border-radius:50%;filter:blur(8px);opacity:.5;z-index:0;pointer-events:none}
.blob.a{width:380px;height:380px;background:radial-gradient(circle,#dbe9e2,transparent 70%);top:-120px;right:-60px}
.blob.b{width:300px;height:300px;background:radial-gradient(circle,#e7e2d2,transparent 70%);bottom:-140px;left:-80px}
.hero-inner{position:relative;z-index:1;max-width:720px}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:100px;padding:8px 16px;font-size:.82rem;font-weight:500;color:var(--sage-deep);box-shadow:0 6px 20px rgba(34,51,46,.05)}
.pill .leaf{width:15px;height:15px;flex:none}
.hero h1{font-size:clamp(2.4rem,5.4vw,3.7rem);line-height:1.06;letter-spacing:-.03em;font-weight:700;margin:24px 0 18px}
.hero h1 .accent{color:var(--sage-deep)}
.hero p{font-size:1.16rem;color:var(--muted);font-weight:300;max-width:580px}

.searchwrap{margin-top:32px;display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:100px;padding:8px 8px 8px 22px;max-width:580px;box-shadow:0 10px 30px rgba(34,51,46,.07)}
.searchwrap svg.s{width:20px;height:20px;color:var(--muted);flex:none}
.searchwrap input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:1rem;color:var(--ink);min-width:0}
.searchwrap input::placeholder{color:#97a09a}
.searchwrap button{border:0;background:var(--sage);color:#fff;font:inherit;font-weight:600;padding:13px 28px;border-radius:100px;cursor:pointer;transition:.18s;flex:none}
.searchwrap button:hover{background:var(--sage-deep)}

/* ---------- Directory ---------- */
.directory{padding:30px 0 84px;flex:1}
.dirhead{margin-bottom:22px}
.dirhead h2{font-size:1.6rem;letter-spacing:-.02em}
.dirhead p{color:var(--muted);font-size:.95rem;margin-top:4px}

#tag-container{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.chip{border:1px solid var(--line);background:var(--card);color:var(--muted);padding:9px 18px;border-radius:100px;font:inherit;font-size:.88rem;font-weight:500;cursor:pointer;transition:.16s}
.chip:hover{border-color:#c9d8d0;color:var(--ink)}
.chip.active{background:var(--sage);border-color:var(--sage);color:#fff}

#physician-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;transition:.24s;box-shadow:0 2px 4px rgba(34,51,46,.03)}
.card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(34,51,46,.1)}
.chead{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.ava{width:56px;height:56px;border-radius:18px;flex:none;display:grid;place-items:center;font-weight:600;font-size:1.1rem;color:#fff;background:linear-gradient(150deg,var(--sage),var(--sage-deep))}
.card h3{font-size:1.1rem;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.tag{font-size:.74rem;font-weight:500;color:var(--sage-deep);background:var(--sage-soft);padding:4px 11px;border-radius:100px}
.card .desc{font-size:.92rem;color:var(--muted);flex:1;margin-bottom:18px}
.meta{display:flex;flex-direction:column;gap:8px;font-size:.86rem;color:var(--muted);margin-bottom:18px}
.meta span{display:flex;align-items:center;gap:9px}
.meta svg{width:16px;height:16px;color:var(--sage);flex:none}
.meta .yes{color:var(--sage-deep);font-weight:500}
.card .btn{text-align:center;background:var(--sage-soft);color:var(--sage-deep);font-weight:600;font-size:.92rem;padding:12px;border-radius:12px;transition:.18s;cursor:pointer}
.card .btn:hover{background:var(--sage);color:#fff}

.empty,.error{font-size:1rem;color:var(--muted);padding:24px 0}
.error{color:var(--danger)}

/* ---------- Pagination ---------- */
.pager{display:flex;justify-content:center;gap:8px;margin-top:46px;flex-wrap:wrap}
.pager a{min-width:42px;height:42px;padding:0 12px;display:grid;place-items:center;border:1px solid var(--line);background:var(--card);border-radius:12px;font-weight:500;color:var(--muted);transition:.16s;cursor:pointer}
.pager a:hover{border-color:#c9d8d0;color:var(--ink)}
.pager a.active{background:var(--sage);border-color:var(--sage);color:#fff}

/* ---------- FAQ page ---------- */
.intro{padding:64px 0 48px;position:relative;overflow:hidden}
.intro-inner{position:relative;z-index:1;max-width:760px}
.intro h1{font-size:clamp(2.1rem,4.6vw,3rem);line-height:1.1;letter-spacing:-.02em;font-weight:700;margin-bottom:18px}
.intro p{font-size:1.1rem;color:var(--muted);font-weight:300}
.faq{padding:8px 0 90px;flex:1}
.faq h2{font-size:1.6rem;letter-spacing:-.02em;margin-bottom:24px}
.faq-list{display:flex;flex-direction:column;gap:14px;max-width:820px}
.faq-item{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.2s}
.faq-item[open]{box-shadow:0 12px 34px rgba(34,51,46,.08)}
.faq-item summary{list-style:none;cursor:pointer;padding:20px 24px;font-weight:600;font-size:1.04rem;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary .ico{width:24px;height:24px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--sage-soft);color:var(--sage-deep);font-weight:600;transition:.2s}
.faq-item[open] summary .ico{transform:rotate(45deg)}
.faq-body{padding:0 24px 22px;color:var(--muted);font-size:.96rem}
.faq-body ul{margin:10px 0 0 18px;display:flex;flex-direction:column;gap:6px}
.faq-body a{color:var(--sage-deep);font-weight:500}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--line);padding:36px 0;background:var(--cream-2)}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:.9rem}
.foot a{color:var(--sage-deep)}

@media(max-width:600px){
  .hero{padding:54px 0 44px}
  .searchwrap{flex-wrap:wrap;border-radius:20px;padding:14px}
  .searchwrap button{flex:1}
  .navlinks a{padding:8px 12px}
}
