/* Signal: online coaching. Cool white, violet, app-style cards that float over the photo, a soft gradient glow. */
.coach-site.signal{
  --cs-bg:#fafaff;--cs-alt:#f1f0fb;--cs-ink:#17152b;--cs-soft:#545170;--cs-line:#e2e0f1;--cs-card:#ffffff;
  --cs-head:'Manrope',sans-serif;--cs-body:'Inter',sans-serif;--cs-head-weight:800;--cs-head-track:-0.035em;--cs-head-case:none;
  --cs-radius:20px;--cs-photo-radius:28px;--cs-button-radius:12px;--cs-photo-pos:50% 50%;
  --sg-warm:#ff9a76;--cs-shadow:0 24px 60px -30px rgba(40,30,110,.3)
}
.signal h1{font-size:clamp(42px,5.4vw,74px);line-height:1.02}
.signal h2{font-size:clamp(32px,3.8vw,52px)}
.signal .cs-kicker{width:fit-content;padding:7px 15px;border:1px solid var(--cs-line);border-radius:999px;background:var(--cs-card);box-shadow:0 8px 18px -12px rgba(40,30,110,.35);font-size:14px}
.signal .cs-kicker::before{content:"";display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:50%;background:var(--coach-accent);box-shadow:0 0 0 4px var(--cs-accent-soft);vertical-align:1px}
.signal .cs-button{box-shadow:0 12px 26px -14px var(--coach-accent)}
.signal .cs-header{background:color-mix(in srgb,var(--cs-bg) 82%,transparent);border-bottom-color:transparent}
.signal .cs-brand-mark{border-radius:12px}

.sg-hero{padding:72px 0 110px;background:radial-gradient(40% 46% at 82% 30%,color-mix(in srgb,var(--coach-accent) 18%,transparent),transparent 70%),radial-gradient(34% 40% at 18% 62%,color-mix(in srgb,var(--sg-warm) 18%,transparent),transparent 70%)}
.sg-hero-copy{max-width:880px;margin:0 auto;text-align:center}
.sg-hero-copy .cs-kicker{margin-inline:auto}
.sg-hero .cs-lede{max-width:620px;margin-inline:auto}
.sg-hero .cs-actions{justify-content:center}
.sg-stage{position:relative;max-width:1040px;margin:64px auto 0;padding:0 130px 40px}
.sg-photo{padding:10px;border-radius:var(--cs-photo-radius);background:var(--cs-card);box-shadow:var(--cs-shadow)}
.sg-photo img,.sg-photo .cs-monogram{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:var(--cs-photo-pos);border-radius:max(0px,calc(var(--cs-photo-radius) - 8px))}
.sg-chips{list-style:none;margin:0;padding:0}
.sg-chips li{position:absolute;display:flex;align-items:center;gap:11px;max-width:250px;padding:10px 16px 10px 10px;border-radius:16px;background:var(--cs-card);box-shadow:0 18px 40px -20px rgba(40,30,110,.45);font-size:14px;font-weight:600;line-height:1.3;animation:sg-float 7s ease-in-out infinite}
.sg-chips li:nth-child(1){top:12%;left:0}
.sg-chips li:nth-child(2){top:6%;right:0;animation-delay:-2.3s}
.sg-chips li:nth-child(3){bottom:22%;left:24px;animation-delay:-4.6s}
.sg-chip-icon{flex:none;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:var(--cs-accent-soft);color:var(--cs-accent-text)}
.sg-chip-icon .icon{width:18px;height:18px;stroke-width:2.2}
@keyframes sg-float{50%{transform:translateY(-7px)}}
.sg-bubble{position:absolute;right:20px;bottom:0;max-width:310px;margin:0;padding:16px 18px;border-radius:18px 18px 4px 18px;background:var(--coach-accent);color:var(--design-button-ink);box-shadow:var(--cs-shadow)}
.sg-bubble blockquote{margin:0;font-size:15px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sg-bubble figcaption{margin-top:8px;font-size:13px;font-weight:600;opacity:.88}

/* Steps as a bento grid */
.sg-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(190px,auto);gap:18px}
.sg-tile{display:flex;flex-direction:column;gap:10px;padding:28px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:var(--cs-card);box-shadow:var(--cs-shadow)}
.sg-tile-lead{grid-row:span 2;justify-content:flex-end;border:0;background:linear-gradient(150deg,var(--coach-accent),color-mix(in srgb,var(--coach-accent) 62%,var(--sg-warm)));color:var(--design-button-ink)}
.sg-tile-lead h3{font-size:30px}
.sg-tile-wide{grid-column:span 2}
.sg-tile-step{width:fit-content;padding:5px 11px;border-radius:999px;background:var(--cs-accent-soft);color:var(--cs-accent-text);font-size:12.5px;font-weight:700}
.sg-tile-lead .sg-tile-step{background:color-mix(in srgb,var(--design-button-ink) 18%,transparent);color:inherit}
.sg-tile p{color:var(--cs-soft)}
.sg-tile-lead p{color:inherit;opacity:.9}
.sg-tile ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.sg-tile li{display:flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:14px;background:var(--cs-alt);font-size:14.5px;font-weight:600}

/* Stories as a wall of messages */
.sg-wall{columns:3 280px;column-gap:18px}
.sg-msg{break-inside:avoid;margin:0 0 18px;padding:22px 22px 18px;border-radius:22px 22px 22px 6px;background:var(--cs-card);box-shadow:var(--cs-shadow)}
.sg-msg:nth-child(3n+2){border-radius:22px 22px 6px 22px;background:var(--cs-accent-soft)}
.sg-msg blockquote{margin:0;font-size:16.5px;line-height:1.55}
.sg-msg figcaption{display:flex;align-items:center;gap:10px;margin-top:16px;font-size:14px;font-weight:600}
.sg-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--coach-accent);color:var(--design-button-ink);font-size:13px;font-weight:700}

/* Navigation in a glass pill */
.signal .cs-nav{padding:6px;border:1px solid var(--cs-line);border-radius:999px;background:color-mix(in srgb,var(--cs-card) 75%,transparent);box-shadow:0 10px 26px -18px rgba(40,30,110,.4);gap:2px}
.signal .cs-nav a{padding:8px 14px;border-radius:999px}
.signal .cs-nav a:hover{background:var(--cs-accent-soft);color:var(--cs-accent-text)}

.signal .cs-step,.signal .cs-story,.signal .cs-form,.signal .cs-quals{border:0;box-shadow:var(--cs-shadow)}
.signal .cs-step-num{border-radius:12px;background:var(--coach-accent);color:var(--design-button-ink)}
.signal .cs-offer{border:1px solid var(--cs-line);box-shadow:var(--cs-shadow)}
.signal .cs-offer:nth-child(2){border:2px solid var(--coach-accent)}
.signal .cs-faq-list details,.signal .cs-faq-list details:first-child{margin-bottom:10px;padding:0 22px;border:1px solid var(--cs-line);border-radius:16px;background:var(--cs-card)}
.signal .cs-footer{border-top-color:var(--cs-line)}

/* About sits in one card; FAQ and contact are centred */
.signal .cs-about-inner{padding:clamp(28px,5vw,60px);border-radius:28px;background:var(--cs-card);box-shadow:var(--cs-shadow)}
.signal .cs-quals{background:var(--cs-alt);border:0}
.signal .cs-faq-inner{grid-template-columns:minmax(0,1fr);max-width:820px;margin:0 auto;gap:8px}
.signal .cs-faq .cs-head{margin-inline:auto;text-align:center}
.signal .cs-contact-inner{grid-template-columns:minmax(0,1fr);max-width:760px;margin:0 auto;gap:34px;text-align:center}
.signal .cs-contact-copy>p{margin-inline:auto}
.signal .cs-form{text-align:left}

@media (min-width:961px){.signal .cs-offer:nth-child(2){transform:translateY(-12px)}}
@media (max-width:960px){
  .sg-hero{padding-bottom:80px}
  .sg-stage{padding:0 0 30px}
  .sg-chips li:nth-child(1){left:-6px}
  .sg-chips li:nth-child(2){right:-6px}
  .sg-bento{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:600px){
  .sg-stage{margin-top:40px;padding:0}
  .sg-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
  .sg-chips li{position:static;animation:none}
  .sg-bubble{position:relative;right:auto;margin-top:14px}
  .sg-bento{grid-template-columns:minmax(0,1fr)}
  .sg-tile-lead{grid-row:auto}
  .sg-tile-wide{grid-column:auto}
}
