/* ============================================================
   The Healing Centre — standout feature styles (built by AI ORCA)
   Namespaced .hc-* so nothing clashes with the base site.
   Uses the site's own CSS variables (--forest, --cream, --gold ...).
   ============================================================ */
.hc-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--clay);margin:0 0 10px;}
.hc-center{text-align:center;max-width:680px;margin:0 auto 48px;}
.hc-note{font-size:12.5px;color:#8a8272;font-style:italic;margin-top:14px;}

/* Intention finder */
.hc-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
.hc-chip{font-family:var(--font-body);font-weight:600;font-size:14px;padding:14px 26px;border-radius:100px;border:1.5px solid rgba(31,58,31,.25);background:var(--cream);color:var(--forest);cursor:pointer;transition:.2s;}
.hc-chip:hover{border-color:var(--leaf);transform:translateY(-2px);}
.hc-chip.on{background:var(--forest);color:var(--cream);border-color:var(--forest);}
.hc-reco{margin:26px auto 0;max-width:620px;background:var(--forest);color:var(--cream);border-radius:var(--radius-card);padding:28px 30px;text-align:center;opacity:0;transform:translateY(10px);transition:.4s;}
.hc-reco.show{opacity:1;transform:none;}
.hc-reco .k{font-family:var(--font-head);font-style:italic;font-size:28px;color:var(--gold);}
.hc-reco p{margin:6px 0 18px;opacity:.9;font-size:15px;}
.hc-reco a{color:var(--cream);font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:underline;}

/* Seven symbols */
.hc-syms{display:grid;grid-template-columns:repeat(7,1fr);gap:14px;max-width:900px;margin:0 auto;}
.hc-sym{aspect-ratio:1;border-radius:14px;background:var(--forest);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.25s;}
.hc-sym svg{width:54%;height:54%;stroke:var(--gold);fill:none;stroke-width:2;transition:.25s;}
.hc-sym:hover,.hc-sym.on{transform:translateY(-5px);box-shadow:0 14px 30px -12px rgba(31,58,31,.6);}
.hc-sym:hover svg,.hc-sym.on svg{stroke:var(--cream);transform:scale(1.08);}
.hc-syminfo{max-width:640px;margin:22px auto 0;min-height:56px;background:var(--cream);border:.5px solid rgba(31,58,31,.12);border-radius:14px;padding:18px 22px;text-align:center;transition:.25s;}
.hc-syminfo .n{font-family:var(--font-head);font-style:italic;font-size:24px;color:var(--leaf-deep);}
.hc-syminfo .d{font-size:14.5px;color:#4a4335;margin-top:2px;}
@media(max-width:820px){.hc-syms{grid-template-columns:repeat(4,1fr);}}

/* Moon widget */
.hc-moonrow{display:flex;gap:38px;align-items:center;justify-content:center;flex-wrap:wrap;}
.hc-moon{width:164px;height:164px;border-radius:50%;background:#14240f;position:relative;overflow:hidden;box-shadow:0 0 0 1px rgba(212,168,87,.35),0 0 70px -12px rgba(212,168,87,.45);flex-shrink:0;}
.hc-moon .lit{position:absolute;inset:0;background:radial-gradient(circle at 38% 34%,#fdfbf2,#e9dfbf 60%,#cdbf94);border-radius:50%;}
.hc-moon .sh{position:absolute;inset:0;background:#14240f;border-radius:50%;}
.hc-mooninfo{max-width:420px;}
.hc-mooninfo .ph{font-family:var(--font-head);font-size:32px;color:var(--cream);}
.hc-mooninfo .sub{font-size:14.5px;color:var(--cream);opacity:.85;margin-top:4px;line-height:1.5;}
.hc-mooninfo .cta{font-family:var(--font-body);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-top:14px;}

/* Suitability check */
.hc-checks{display:grid;gap:10px;max-width:580px;margin:0 auto;}
.hc-check{display:flex;align-items:center;gap:14px;background:var(--cream);border:1.5px solid rgba(31,58,31,.15);border-radius:10px;padding:14px 18px;cursor:pointer;font-size:14.5px;color:var(--forest);transition:.15s;}
.hc-check:hover{border-color:var(--moss);}
.hc-check input{width:20px;height:20px;accent-color:var(--leaf-deep);cursor:pointer;}
.hc-check.on{border-color:var(--clay);background:#fbf2ec;}
.hc-verdict{max-width:580px;margin:20px auto 0;border-radius:12px;padding:20px 24px;font-size:15px;line-height:1.55;}
.hc-verdict.ok{background:#eef4e8;color:var(--forest);border:1px solid rgba(90,154,51,.35);}
.hc-verdict.warn{background:#fbf0ea;color:#7a3a22;border:1px solid rgba(184,98,60,.4);}
.hc-wa{display:inline-block;margin-top:12px;background:#25D366;color:#fff;font-weight:600;font-size:13px;padding:11px 22px;border-radius:6px;text-decoration:none;}

/* Space map */
.hc-map{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;max-width:900px;margin:0 auto;}
.hc-plan{background:var(--forest);border-radius:var(--radius-card);min-height:300px;padding:14px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px;}
.hc-room{border:1.5px dashed rgba(212,168,87,.4);border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--cream);font-family:var(--font-head);font-size:19px;cursor:pointer;transition:.2s;padding:8px;}
.hc-room:hover,.hc-room.on{border-style:solid;border-color:var(--gold);box-shadow:inset 0 0 0 100vmax rgba(212,168,87,.16);}
.hc-roominfo{background:var(--cream);border:.5px solid rgba(31,58,31,.12);border-radius:var(--radius-card);padding:26px;display:flex;flex-direction:column;justify-content:center;}
.hc-roominfo .n{font-family:var(--font-head);font-size:27px;color:var(--leaf-deep);font-style:italic;}
.hc-roominfo .d{font-size:14.5px;color:#4a4335;margin-top:6px;line-height:1.55;}
@media(max-width:820px){.hc-map{grid-template-columns:1fr;}}

/* Services filter */
.hc-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:24px;}
.hc-fbtn{font-family:var(--font-body);font-weight:600;font-size:13px;padding:10px 22px;border-radius:100px;border:1.5px solid rgba(31,58,31,.22);background:var(--cream);color:var(--forest);cursor:pointer;transition:.2s;}
.hc-fbtn.on{background:var(--leaf-deep);color:#fff;border-color:var(--leaf-deep);}
.hc-tags{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:820px;margin:0 auto;}
.hc-tag{font-size:13.5px;padding:11px 18px;border-radius:8px;background:var(--cream);border:.5px solid rgba(31,58,31,.14);color:var(--forest);transition:.3s;}
.hc-tag.hide{opacity:.16;filter:grayscale(1);}

/* About timeline */
.hc-timeline{max-width:720px;margin:0 auto;position:relative;padding-left:34px;}
.hc-timeline::before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--gold),var(--leaf));}
.hc-tstep{position:relative;padding:0 0 30px 8px;cursor:pointer;}
.hc-tstep::before{content:"";position:absolute;left:-33px;top:4px;width:18px;height:18px;border-radius:50%;background:var(--cream);border:3px solid var(--moss);transition:.2s;}
.hc-tstep.on::before,.hc-tstep:hover::before{border-color:var(--gold);background:var(--gold);}
.hc-tstep h4{font-family:var(--font-head);font-size:22px;color:var(--forest);margin:0 0 4px;}
.hc-tstep p{font-size:14px;color:#4a4335;margin:0;max-height:0;overflow:hidden;opacity:0;transition:.3s;}
.hc-tstep.on p{max-height:120px;opacity:1;margin-top:4px;}

/* Training path */
.hc-path{display:flex;gap:0;max-width:820px;margin:0 auto;align-items:stretch;flex-wrap:wrap;}
.hc-level{flex:1;min-width:200px;background:var(--cream);border:.5px solid rgba(31,58,31,.12);border-radius:var(--radius-card);padding:26px 24px;margin:6px;cursor:pointer;transition:.25s;position:relative;}
.hc-level:hover,.hc-level.on{transform:translateY(-5px);box-shadow:0 16px 34px -16px rgba(31,58,31,.4);border-color:var(--leaf);}
.hc-level .lv{font-family:var(--font-head);font-style:italic;color:var(--leaf-deep);font-size:18px;}
.hc-level h4{font-size:22px;margin:4px 0 8px;color:var(--forest);}
.hc-level p{font-size:14px;color:#4a4335;margin:0;max-height:0;overflow:hidden;transition:.3s;opacity:0;}
.hc-level.on p{max-height:160px;opacity:1;margin-top:6px;}
.hc-level .dot{width:12px;height:12px;border-radius:50%;background:var(--moss);margin-bottom:12px;}
.hc-level.on .dot{background:var(--gold);}

/* Retreats next-gathering (moon aligned) */
.hc-next{max-width:560px;margin:0 auto;background:var(--forest);color:var(--cream);border-radius:var(--radius-card);padding:32px;text-align:center;}
.hc-next .lbl{font-family:var(--font-body);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.hc-next .big{font-family:var(--font-head);font-size:40px;color:var(--cream);margin:8px 0 2px;}
.hc-next .sub{opacity:.85;font-size:14.5px;}

/* Team flip */
.hc-fliprow{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
.hc-flip{width:230px;height:300px;perspective:1200px;cursor:pointer;}
.hc-flip-in{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d;}
.hc-flip.on .hc-flip-in{transform:rotateY(180deg);}
.hc-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:var(--radius-card);overflow:hidden;border:.5px solid rgba(31,58,31,.12);}
.hc-front{background:var(--forest);color:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;}
.hc-front .nm{font-family:var(--font-head);font-size:28px;color:var(--cream);}
.hc-front .rl{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-top:6px;}
.hc-front .hint{font-size:11px;opacity:.6;margin-top:18px;letter-spacing:.08em;text-transform:uppercase;}
.hc-back{background:var(--cream);color:var(--forest);transform:rotateY(180deg);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;}
.hc-back p{font-size:14px;color:#4a4335;margin:0 0 16px;}
.hc-back a{background:var(--forest);color:var(--cream);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:11px 20px;border-radius:4px;text-decoration:none;}

/* Visit open-now */
.hc-status{display:inline-flex;align-items:center;gap:12px;background:var(--cream);border:.5px solid rgba(31,58,31,.14);border-radius:100px;padding:14px 26px;font-family:var(--font-body);}
.hc-status .dot{width:12px;height:12px;border-radius:50%;background:#9aa; box-shadow:0 0 0 4px rgba(0,0,0,.05);}
.hc-status.open .dot{background:var(--leaf);box-shadow:0 0 0 4px rgba(90,154,51,.2);}
.hc-status.closed .dot{background:var(--clay);box-shadow:0 0 0 4px rgba(184,98,60,.18);}
.hc-status .txt{font-weight:600;font-size:15px;color:var(--forest);}
.hc-status .sub{font-size:13px;color:#7a7263;margin-left:2px;}

/* Ambient sound toggle */
.hc-amb{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;align-items:center;gap:10px;background:var(--forest);color:var(--cream);border:1px solid rgba(212,168,87,.4);border-radius:100px;padding:11px 18px 11px 14px;cursor:pointer;font-family:var(--font-body);font-size:12px;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 10px 30px -12px rgba(0,0,0,.5);transition:.2s;}
.hc-amb:hover{border-color:var(--gold);}
.hc-amb .ic{width:18px;height:18px;flex-shrink:0;}
.hc-amb .bars{display:inline-flex;gap:2px;align-items:flex-end;height:16px;}
.hc-amb .bars i{width:3px;background:var(--gold);height:5px;border-radius:2px;}
.hc-amb.on .bars i{animation:hcbar 1s ease-in-out infinite;}
.hc-amb .bars i:nth-child(2){animation-delay:.2s}.hc-amb .bars i:nth-child(3){animation-delay:.4s}.hc-amb .bars i:nth-child(4){animation-delay:.1s}
@keyframes hcbar{0%,100%{height:5px}50%{height:16px}}

/* Banner 2-column: feature beside the page title */
.hc-bannergrid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start;}
.hc-bannergrid>div:first-child{padding-top:2px;}
.hc-bannergrid .hc-center{text-align:left;max-width:none;margin:0 0 18px;}
.hc-bannergrid .hc-filters{justify-content:flex-start;margin-bottom:14px;}
.hc-bannergrid .hc-tags{justify-content:flex-start;max-width:none;margin:0;}
.hc-bannergrid .hc-next{max-width:none;margin:0;background:var(--bone);color:var(--forest);border:.5px solid rgba(31,58,31,.14);border-left:3px solid var(--gold);border-radius:14px;padding:22px 26px;text-align:left;}
.hc-bannergrid .hc-next .lbl{color:var(--clay);}
.hc-bannergrid .hc-next .big{color:var(--forest);font-size:34px;}
.hc-bannergrid .hc-next .sub{color:var(--forest);opacity:.7;}
@media(max-width:860px){.hc-bannergrid{grid-template-columns:1fr;gap:28px;}.hc-bannergrid .hc-center{text-align:center;}}

/* Retreats next-gathering moon */
.hc-bannergrid .hc-next{display:flex;gap:22px;align-items:center;}
.hc-bannergrid .hc-next .hc-nextbody{flex:1;}
.hc-nextmoon{width:74px;height:74px;border-radius:50%;background:#14240f;position:relative;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px rgba(212,168,87,.4),0 0 32px -10px rgba(212,168,87,.55);}
.hc-nextmoon .lit{position:absolute;inset:0;background:radial-gradient(circle at 38% 34%,#fdfbf2,#e9dfbf 60%,#cdbf94);border-radius:50%;}
.hc-nextmoon .sh{position:absolute;inset:0;background:#14240f;border-radius:50%;}
@media(max-width:520px){.hc-bannergrid .hc-next{flex-direction:column;align-items:flex-start;}}

/* Retreats lunar path */
.hc-lunar{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-top:46px;}
.hc-lunarnode{display:flex;flex-direction:column;align-items:center;text-align:center;flex:0 0 auto;width:130px;}
.hc-lunarnode.big{width:184px;}
.hc-lunarnode .cap{font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-top:16px;font-weight:600;color:var(--gold);}
.hc-lunarnode .ph{font-family:var(--font-head);font-style:italic;font-size:18px;margin-top:4px;color:var(--cream);}
.hc-lunarnode .tag{display:inline-block;margin-top:10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--forest);background:var(--gold);padding:7px 15px;border-radius:20px;white-space:nowrap;}
.hc-lunarmoon{border-radius:50%;background:#14240f;position:relative;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px rgba(212,168,87,.35),0 0 46px -14px rgba(212,168,87,.55);}
.hc-lunarmoon .lit{position:absolute;inset:0;background:radial-gradient(circle at 38% 34%,#fdfbf2,#e9dfbf 60%,#cdbf94);border-radius:50%;}
.hc-lunarmoon .sh{position:absolute;inset:0;background:#14240f;border-radius:50%;}
.hc-lunarmoon.full{box-shadow:0 0 0 2px var(--gold),0 0 60px -8px rgba(212,168,87,.75);}
.hc-lunarlink{flex:1 1 auto;height:2px;background:linear-gradient(90deg,rgba(212,168,87,.15),rgba(212,168,87,.6));margin-top:46px;min-width:14px;border-radius:2px;align-self:flex-start;}
@media(max-width:760px){.hc-lunar{flex-wrap:wrap;justify-content:center;gap:26px;}.hc-lunarlink{display:none;}.hc-lunarnode,.hc-lunarnode.big{width:44%;}}
