/* === Phoenix Evolution — warm CLAY (Rooted Earth) lead on the shared Wonderland shell === */
:root{ --lead:#9D5F1B; --lead-ink:#722A07; --lead-tint:#E9DECE; --lead-soft:#EFE3D2; }
.phoenix .kicker, .phoenix .kicker--dark{ color:var(--lead-ink); }
.phoenix .kicker__dot, .phoenix .kicker__dot--dark{ background:var(--lead); }
.phoenix .h2 em, .phoenix .finale__h2 em{ color:var(--lead-ink); font-style:italic; }
/* primary CTA = the universal LOCKED rainbow-fill button (inherited from styles.css) — no override */
/* secondary CTA = white/outline in brand clay, reverses on hover (the Academy pattern, adapted) */
.phoenix .cta--ghost{ background:transparent; border-color:var(--lead); color:var(--lead-ink); }
.phoenix .cta--ghost:hover{ background:var(--lead); color:#fff; border-color:var(--lead); }
.hero::after{ display:none !important; }
.lockup__logo{ height:84px; width:auto; display:block; margin:-14px 0; }
@media(max-width:600px){ .lockup__logo{ height:58px; margin:-8px 0; } }
.px-section{ padding:82px 0; }

/* hero */
.px-hero{ position:relative; padding:44px 0 64px; overflow:hidden; }
.px-hero__grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center; }
.px-hero h1{ font-family:var(--font-serif); font-weight:600; font-size:clamp(2.5rem,5vw,4rem); line-height:1.04; letter-spacing:-.02em; color:var(--ink); margin:16px 0 18px; }
.px-hero h1 em{ font-style:italic; color:var(--lead-ink); }
.px-hero .lead{ font-size:16.5px; line-height:1.65; color:var(--ink-2); max-width:520px; }
.px-hero__art{ position:relative; min-height:380px; display:flex; align-items:center; justify-content:center; }
.px-hero__art::before{ content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 45%, var(--lead-soft), transparent 68%); border-radius:50%; }
.px-hero__art img{ position:relative; width:78%; max-width:360px; filter:drop-shadow(0 24px 40px rgba(0,0,0,.12)); }
@media(max-width:820px){ .px-hero__grid{ grid-template-columns:1fr; gap:16px; } .px-hero__art{ min-height:240px; order:-1; } }

/* page intro hero (sub-pages) — centred title block */
.px-pagehero{ padding:64px 0 16px; text-align:center; }
.px-pagehero .kicker{ justify-content:center; }
.px-pagehero .lead{ margin-left:auto; margin-right:auto; }
.px-pagehero h1{ font-family:var(--font-serif); font-weight:600; font-size:clamp(2.2rem,4.4vw,3.4rem); line-height:1.05; letter-spacing:-.02em; color:var(--ink); margin:14px 0 16px; }
.px-pagehero h1 em{ font-style:italic; color:var(--lead-ink); }
.px-pagehero .lead{ font-size:16.5px; line-height:1.65; color:var(--ink-2); max-width:620px; }

/* workshop band */
.px-band{ position:relative; height:340px; overflow:hidden; }
.px-band img{ width:100%; height:100%; object-fit:cover; object-position:center 40%; }
.px-band__cap{ position:absolute; left:24px; bottom:22px; background:rgba(255,250,244,.55); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,.4); border-radius:14px; padding:12px 18px; }
.px-band__cap{ padding:16px 22px; }
.px-band__cap b{ font-family:var(--font-serif); font-size:1.45rem; color:var(--ink); display:block; margin-bottom:2px; }
.px-band__cap span{ font-size:13.5px; font-weight:500; color:var(--ink-2); }

/* audience selector */
.px-paths{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:38px; }
.px-path{ background:#fff; border:1px solid var(--line); border-radius:20px; padding:32px 30px; transition:all .25s; }
.px-path:hover{ transform:translateY(-4px); box-shadow:0 16px 40px rgba(0,0,0,.08); border-color:var(--lead); }
.px-path h3{ font-family:var(--font-serif); font-size:1.4rem; margin:0 0 8px; color:var(--ink); }
.px-path p{ font-size:14px; line-height:1.6; color:var(--ink-2); margin:0 0 16px; }
@media(max-width:640px){ .px-paths{ grid-template-columns:1fr; } }
/* For schools & organisations CTA band */
.px-schools{ display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; }
@media(max-width:760px){
  .px-schools{ grid-template-columns:1fr; gap:20px; }
  .px-schools .cta{ width:100%; justify-content:center; }
}

/* services / cards */
.px-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:16px; margin-top:34px; }
.px-card{ background:#fff; border:1px solid var(--line); border-radius:16px; padding:26px 24px; transition:all .25s; }
.px-card:hover{ transform:translateY(-3px); box-shadow:0 14px 36px rgba(0,0,0,.07); border-color:var(--lead); }
.px-card__ic{ width:44px; height:44px; border-radius:11px; background:var(--lead-tint); color:var(--lead-ink); display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.px-card__ic svg{ width:22px; height:22px; }
.px-card h4{ font-family:var(--font-serif); font-size:1.12rem; margin:0 0 6px; color:var(--ink); }
.px-card p{ font-size:13px; line-height:1.55; color:var(--ink-2); margin:0; }

/* about split */
.px-about{ display:grid; grid-template-columns:1fr 1fr; gap:46px; align-items:center; }
.px-about__art{ background:linear-gradient(150deg,var(--lead),var(--lead-ink)); border-radius:24px; min-height:340px; display:flex; align-items:flex-end; padding:28px; box-shadow:0 24px 50px rgba(0,0,0,.18); }
.px-about__art p{ font-family:var(--font-serif); font-style:italic; color:rgba(255,255,255,.95); font-size:1.15rem; line-height:1.4; }
@media(max-width:820px){ .px-about{ grid-template-columns:1fr; gap:24px; } .px-about__art{ min-height:240px; order:-1; } }

/* testimonials */
.px-quotes{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:34px; }
.px-quote{ background:#fff; border:1px solid var(--line); border-left:4px solid var(--lead); border-radius:16px; padding:28px 30px; }
.px-quote p{ font-family:var(--font-serif); font-style:italic; font-size:1.05rem; line-height:1.5; color:var(--ink); margin:0 0 14px; }
.px-quote cite{ font-style:normal; font-size:13px; font-weight:600; color:var(--lead-ink); }
@media(max-width:640px){ .px-quotes{ grid-template-columns:1fr; } }

/* steps */
.px-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.px-step{ text-align:center; padding:10px; }
.px-step__n{ width:46px; height:46px; border-radius:50%; background:var(--lead); color:#fff; font-family:var(--font-serif); font-size:1.2rem; display:flex; align-items:center; justify-content:center; margin:0 auto 14px; }
.px-step h4{ font-family:var(--font-serif); font-size:1.12rem; margin:0 0 6px; color:var(--ink); }
.px-step p{ font-size:13.5px; line-height:1.55; color:var(--ink-2); margin:0; }
@media(max-width:640px){ .px-steps{ grid-template-columns:1fr; gap:24px; } }

/* faq */
.px-faq{ max-width:760px; margin:34px auto 0; }
.px-faq details{ background:#fff; border:1px solid var(--line); border-radius:14px; padding:4px 22px; margin-bottom:12px; }
.px-faq summary{ font-family:var(--font-serif); font-size:1.05rem; color:var(--ink); padding:18px 0; cursor:pointer; list-style:none; position:relative; }
.px-faq summary::-webkit-details-marker{ display:none; }
.px-faq summary::after{ content:'+'; position:absolute; right:0; top:16px; color:var(--lead); font-size:1.4rem; }
.px-faq details[open] summary::after{ content:'–'; }
.px-faq p{ font-size:14px; line-height:1.6; color:var(--ink-2); margin:0 0 18px; }

/* contact page */
.px-contact{ display:grid; grid-template-columns:1fr 1fr; gap:46px; align-items:start; }
.px-wa-big{ display:inline-flex; align-items:center; gap:12px; background:#25D366; color:#fff; font-weight:600; font-size:16.5px; padding:17px 28px; border-radius:14px; text-decoration:none; box-shadow:0 12px 30px rgba(37,211,102,.32); transition:transform .2s; }
.px-wa-big:hover{ transform:translateY(-2px); }
.px-wa-big svg{ width:24px; height:24px; fill:#fff; }
.px-wa-note{ font-size:12.5px; color:var(--ink-3); margin-top:10px; }
.px-cc-list{ display:flex; flex-direction:column; gap:11px; margin-top:24px; }
.px-cc{ display:flex; gap:13px; align-items:flex-start; background:#fff; border:1px solid var(--line); border-radius:14px; padding:15px 18px; }
.px-cc svg{ width:20px; height:20px; color:var(--lead); flex:none; margin-top:2px; }
.px-cc b{ display:block; font-size:13.5px; color:var(--ink); margin-bottom:1px; }
.px-cc span,.px-cc a{ font-size:13px; color:var(--ink-2); text-decoration:none; }
.px-cc a:hover{ color:var(--lead-ink); }
.px-form{ background:#fff; border:1px solid var(--line); border-radius:20px; padding:30px; }
.px-form label{ display:block; margin-bottom:15px; }
.px-form .lbl{ display:block; font-size:13px; font-weight:600; color:var(--ink); margin-bottom:6px; }
.px-form input,.px-form select,.px-form textarea{ width:100%; padding:13px 15px; border:1px solid var(--line); border-radius:10px; font-family:var(--font-sans); font-size:14px; background:#FBFAF7; color:var(--ink); }
.px-form input:focus,.px-form select:focus,.px-form textarea:focus{ outline:2px solid var(--lead); outline-offset:1px; border-color:var(--lead); }
.px-form__priv{ font-size:12px; color:var(--ink-3); margin-top:4px; }
@media(max-width:820px){ .px-contact{ grid-template-columns:1fr; gap:28px; } }

/* sister equal buttons + footer + fab */
.sister__cta .cta{ min-width:236px; justify-content:center; }
.ft__col li{ color:var(--ink-2); }
.ft__legal{ justify-content:center; text-align:center; }
.wa-fab{ position:fixed; right:22px; bottom:22px; z-index:60; width:58px; height:58px; border-radius:50%; background:#25D366; display:flex; align-items:center; justify-content:center; box-shadow:0 10px 26px rgba(37,211,102,.45); transition:transform .2s ease; }
.wa-fab:hover{ transform:scale(1.08); } .wa-fab svg{ width:32px; height:32px; fill:#fff; }
.ft__brandcol .ft__logo{ height:220px; width:auto; display:block; margin:-16px 0 14px -12px; }
/* header icon + name lockup (with Life Academy subline, bigger icon) */
.px-lock{ display:flex; align-items:center; gap:13px; text-decoration:none; }
.px-lock__ic{ height:92px; width:auto; display:block; }
.px-lock__wm{ font-family:var(--font-serif); font-weight:600; font-size:1.42rem; color:var(--ink); letter-spacing:-.01em; line-height:1.05; }
.px-lock__wm small{ display:block; font-size:.58em; font-weight:600; letter-spacing:.02em; color:var(--ink-2); }
@media(max-width:600px){ .px-lock__ic{ height:72px; } .px-lock__wm{ font-size:1.14rem; } }
/* expand footer */
.phoenix .ft{ padding-top:62px; padding-bottom:30px; }
.phoenix .ft__cols--brand{ gap:50px; }

/* testimonial carousel */
.px-carousel{ position:relative; max-width:800px; margin:36px auto 0; }
.px-carousel__view{ overflow:hidden; }
.px-carousel__track{ display:flex; transition:transform .6s cubic-bezier(.4,0,.15,1); }
.px-slide{ min-width:100%; padding:6px; }
.px-slide__card{ background:#fff; border:1px solid var(--line); border-left:4px solid var(--lead); border-radius:18px; padding:40px 48px; text-align:center; min-height:200px; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.px-slide__q{ font-family:var(--font-serif); font-style:italic; font-size:1.22rem; line-height:1.5; color:var(--ink); margin:0 0 18px; }
.px-slide__cite{ font-style:normal; font-size:13px; font-weight:600; color:var(--lead-ink); letter-spacing:.01em; }
.px-carousel__dots{ display:flex; gap:8px; justify-content:center; margin-top:22px; }
.px-carousel__dots button{ width:9px; height:9px; border-radius:50%; border:none; background:var(--lead-tint); cursor:pointer; padding:0; transition:all .25s; }
.px-carousel__dots button.on{ background:var(--lead); width:26px; border-radius:99px; }
.px-carousel__arr{ position:absolute; z-index:4; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%; border:1px solid var(--line); background:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; color:var(--lead-ink); font-size:22px; line-height:1; box-shadow:0 6px 18px rgba(0,0,0,.08); transition:all .2s; }
.px-carousel__arr:hover{ border-color:var(--lead); color:var(--lead); transform:translateY(-50%) scale(1.06); }
.px-carousel__arr--prev{ left:-58px; } .px-carousel__arr--next{ right:-58px; }
@media(max-width:960px){ .px-carousel__arr{ display:none; } .px-slide__card{ padding:30px 26px; } }

/* full-bleed photo hero + frosted panel (Direction B) */
.hb{ position:relative; min-height:600px; display:flex; align-items:center; overflow:hidden; background:#1a1109; }
.hb__bg{ position:absolute; inset:0; background-size:cover; background-position:center; }
.hb__panel{ position:relative; z-index:2; margin-left:6%; max-width:600px; background:rgba(26,16,10,.42); -webkit-backdrop-filter:blur(22px) saturate(130%); backdrop-filter:blur(22px) saturate(130%); border:1px solid rgba(255,255,255,.16); border-radius:28px; padding:48px 46px; box-shadow:0 30px 80px rgba(0,0,0,.45); }
.hb .kicker, .hb .kicker--dark{ color:#F3CBA0 !important; } .hb .kicker__dot, .hb .kicker__dot--dark{ background:#EBA45F !important; }
.hb h1{ font-family:var(--font-serif); font-weight:600; font-size:clamp(2.3rem,4.3vw,3.5rem); line-height:1.06; color:#fff; margin:14px 0 16px; letter-spacing:-.01em; }
.hb h1 em{ font-style:italic; color:#F0A861; }
.hb .lead{ font-size:16px; line-height:1.6; color:rgba(255,255,255,.87); margin-bottom:26px; max-width:46ch; }
.hb .cta--ghost{ background:transparent !important; border-color:rgba(255,255,255,.6) !important; color:#fff !important; }
.hb .cta--ghost:hover{ background:#fff !important; color:var(--lead-ink) !important; border-color:#fff !important; }
@media(max-width:760px){
  .hb{ flex-direction:column; min-height:auto; background:#241610; }
  .hb__bg{ position:relative; inset:auto; width:100%; height:290px; }
  .hb__panel{ position:relative; z-index:2; width:100%; max-width:none; margin:-28px 0 0; border-radius:26px 26px 0 0; border-left:none; border-right:none; border-bottom:none; background:#241610; -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:none; padding:30px 24px 40px; }
  .hb .lead{ max-width:none; }
}

/* sister section: use HOST brand (clay) for all accents, navy text (matches WonderArt convention) */
.phoenix .sister__row{ border-left-color:var(--lead) !important; }
.phoenix .sister h2 em{ color:var(--lead-ink); font-style:italic; }
.phoenix .sister .kicker{ color:var(--lead-ink); }
.phoenix .sister .kicker__dot{ background:var(--lead); }
.phoenix .sister .cta--ghost{ background:transparent; border-color:var(--lead); color:var(--ink); }
.phoenix .sister .cta--ghost .cta__arrow{ background:var(--lead-tint); }
.phoenix .sister .cta--ghost .cta__arrow svg{ color:var(--lead-ink); }
.phoenix .sister .cta--ghost:hover{ background:var(--lead); border-color:var(--lead); color:#fff; }
.phoenix .sister .cta--ghost:hover .cta__arrow{ background:rgba(255,255,255,.28); }
.phoenix .sister .cta--ghost:hover .cta__arrow svg{ color:#fff; }

/* header CTA button (solid clay, like WonderArt's hd__book) */
.phoenix .cta--clay{ background:var(--lead) !important; color:#fff !important; border:none !important; animation:none !important; box-shadow:0 8px 22px rgba(157,95,27,.28); }
.phoenix .cta--clay::before, .phoenix .cta--clay::after{ display:none !important; }
.phoenix .cta--clay:hover{ background:var(--lead-ink) !important; transform:translateY(-1px); }
.hd__book{ padding:11px 22px; font-size:14px; }
@media(max-width:880px){ .hd__book{ display:none; } }

/* alternating feature rows (zigzag) */
.feat{ display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; padding-block:54px; }
.feat__media img{ width:100%; height:100%; min-height:340px; max-height:440px; object-fit:cover; border-radius:24px; box-shadow:0 26px 56px rgba(114,42,7,.16); display:block; }
.feat--rev .feat__media{ order:2; }
.feat h2{ margin:8px 0 14px; }
@media(max-width:820px){ .feat{ grid-template-columns:1fr; gap:24px; padding-block:36px; } .feat--rev .feat__media{ order:-1; } .feat__media img{ min-height:240px; } }

/* About: founder portrait treatment */
.phoenix .px-about__portrait{ flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:22px; padding:36px 28px; }
.phoenix .px-about__portrait img{ width:190px; height:190px; border-radius:50%; object-fit:cover; border:4px solid rgba(255,255,255,.55); box-shadow:0 14px 34px rgba(0,0,0,.28); }
.phoenix .px-about__portrait p{ max-width:360px; margin:0; }

/* founder credential chips */
.px-creds{ display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.px-creds span{ font-size:12px; font-weight:600; color:var(--lead-ink); background:var(--lead-tint); border-radius:999px; padding:7px 14px; line-height:1; }

/* qualifications & credentials (grouped, verifiable) */
.px-quals{ display:grid; grid-template-columns:1.1fr .9fr; gap:48px; margin-top:34px; align-items:start; }
.px-quals__h{ font-family:var(--font-serif); font-size:1.12rem; color:var(--ink); margin:0 0 16px; }
.px-quals__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:13px; }
.px-quals__list li{ display:flex; align-items:flex-start; gap:12px; font-size:15px; color:var(--ink); line-height:1.4; }
.px-tick{ width:18px; height:18px; flex:none; color:var(--lead); margin-top:2px; }
.px-quals__list li small{ display:block; font-size:12.5px; color:var(--ink-3); margin-top:1px; }
.px-memb{ display:flex; flex-direction:column; gap:12px; }
.px-memb__row{ display:block; background:#fff; border:1px solid var(--line); border-left:4px solid var(--lead); border-radius:14px; padding:15px 20px; text-decoration:none; transition:all .2s; }
a.px-memb__row:hover{ border-color:var(--lead); box-shadow:0 10px 26px rgba(0,0,0,.06); }
.px-memb__name{ font-family:var(--font-serif); font-size:1.05rem; color:var(--ink); }
.px-memb__name em{ font-style:normal; font-size:.78em; color:var(--lead-ink); font-weight:600; }
.px-memb__desc{ display:block; font-size:12.5px; color:var(--ink-2); margin-top:3px; }
.px-memb__verify{ display:inline-block; margin-top:9px; font-size:12px; font-weight:600; color:var(--lead-ink); }
@media(max-width:760px){ .px-quals{ grid-template-columns:1fr; gap:30px; } }
