.intake{
  position:fixed;inset:0;z-index:4200;
  background:rgba(6,44,67,.42);
  display:flex;align-items:stretch;justify-content:center;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .28s ease, visibility .28s ease;
}
.intake[hidden]{display:none !important;}
.intake.is-open{
  display:flex !important;opacity:1;visibility:visible;pointer-events:auto;
}
.intake-shell{
  width:100%;height:100%;display:grid;grid-template-columns:280px minmax(0,1fr);
  background:var(--deep-ink);color:var(--graphite);overflow:hidden;
}
.intake-rail{
  background:var(--deep-ink);color:#fff;
  padding:36px 28px;display:flex;flex-direction:column;gap:36px;
  min-height:0;height:100%;
}
.intake-brand img{height:28px;width:auto;display:block;}
.intake-brand img.is-invert{filter:brightness(0) invert(1);}
.intake-brand strong{display:block;font-size:18px;letter-spacing:-.03em;}
.intake-brand span{
  display:block;margin-top:18px;font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--soft-blue);font-weight:700;
}
.intake-steps{list-style:none;display:grid;gap:4px;}
.intake-steps li{
  display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;
  padding:10px 12px;border-radius:12px;color:rgba(255,255,255,.45);
  font-size:14px;font-weight:650;
}
.intake-steps li em{
  font-style:normal;font-size:11px;letter-spacing:.08em;font-weight:800;
}
.intake-steps li.is-done{color:rgba(255,255,255,.72);}
.intake-steps li.is-on{
  color:#fff;background:rgba(255,255,255,.08);
}
.intake-steps li.is-on em{color:var(--soft-blue);}
.intake-rail-note{
  margin-top:auto;font-size:13px;line-height:1.55;color:rgba(255,255,255,.48);
}
.intake.is-nav-progress .intake-shell{grid-template-columns:minmax(0,1fr);background:#fff;}
.intake.is-nav-progress .intake-rail{display:none;}
.intake-progress{
  list-style:none;display:flex;align-items:flex-start;margin:0 36px 8px;padding:0 8px 0 0;
}
.intake-progress li{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;
  position:relative;color:#93a9b8;font-size:12px;font-weight:700;text-align:center;
}
.intake-progress li::before{
  content:"";position:absolute;top:6px;left:calc(-50% + 9px);right:calc(50% + 9px);
  height:2px;background:var(--border);
}
.intake-progress li:first-child::before{display:none;}
.intake-progress-dot{
  width:12px;height:12px;border-radius:50%;border:2px solid var(--border);
  background:#fff;z-index:1;display:block;font-style:normal;
}
.intake-progress li.is-done{color:var(--graphite);}
.intake-progress li.is-done::before,
.intake-progress li.is-on::before{background:var(--blue);}
.intake-progress li.is-done .intake-progress-dot{
  border-color:var(--deep-ink);background:var(--deep-ink);
}
.intake-progress li.is-on{color:var(--deep-ink);}
.intake-progress li.is-on .intake-progress-dot{
  border-color:var(--blue);background:var(--blue);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 16%, transparent);
}
.intake-main{
  display:flex;flex-direction:column;min-height:0;height:100%;background:#fff;
}
.intake-head{
  display:flex;justify-content:space-between;align-items:flex-start;
  gap:16px;padding:32px 36px 8px;
}
.intake-title{
  font-size:clamp(22px, 2.4vw, 30px);letter-spacing:-.03em;color:var(--deep-ink);
  font-weight:800;line-height:1.2;max-width:18ch;margin:0;
}
.intake-close{
  width:42px;height:42px;border:1px solid var(--border);border-radius:50%;
  background:#fff;color:var(--graphite);display:grid;place-items:center;flex-shrink:0;
  cursor:pointer;
}
.intake-close:hover{border-color:var(--blue);color:var(--blue);}
.intake-form{display:flex;flex-direction:column;min-height:0;flex:1;}
.intake-body{flex:1;overflow:auto;padding:12px 36px 12px;}
.intake-panel.is-on{display:block;}
.intake-question{
  font-size:22px;font-weight:750;letter-spacing:-.03em;color:var(--deep-ink);margin-bottom:22px;
}
.intake-choices{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
}
.intake-choice{
  display:grid;grid-template-columns:44px minmax(0,1fr) 18px;gap:12px;align-items:center;
  text-align:left;padding:16px 16px 16px 14px;
  border:1px solid var(--border);border-radius:16px;background:#fff;
  color:var(--graphite);font:inherit;font-weight:650;font-size:15px;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.intake-choice:hover{border-color:color-mix(in srgb, var(--blue) 35%, var(--border));transform:translateY(-1px);}
.intake-choice.is-on{
  border-color:var(--blue);background:#f2faff;color:var(--deep-ink);
}
.intake-choice-icon{
  width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  background:var(--light-accent);color:var(--blue);
}
.intake-choice.is-on .intake-choice-icon{background:var(--deep-ink);color:#fff;}
.intake-choice-icon svg{width:20px;height:20px;}
.intake-choice .intake-pointer{opacity:0;width:16px;height:16px;color:var(--blue);}
.intake-choice.is-on .intake-pointer{opacity:1;}
.intake-quiet{margin-top:18px;text-align:center;}
.intake-choice.is-quiet{
  display:inline-flex;grid-template-columns:none;gap:0;padding:0;border:0;background:none;
  color:var(--slate);font-size:14px;font-weight:650;transform:none;
}
.intake-choice.is-quiet:hover{color:var(--deep-ink);background:none;border:0;transform:none;}
.intake-choice.is-quiet.is-on{color:var(--blue);background:none;border:0;}
.intake-fields{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
}
.intake-fields[hidden],
.intake-contact-captcha[hidden]{
  display:none !important;
}
.intake-fields label{display:grid;gap:7px;}
.intake-fields label.is-full{grid-column:1 / -1;}
.intake-fields span{font-size:13px;font-weight:750;color:var(--graphite);}
.intake-fields input,.intake-fields textarea,.intake-fields select{
  width:100%;border:1px solid var(--border);border-radius:14px;
  background:#f7fafc;padding:14px 16px;font:inherit;color:var(--deep-ink);
}
.intake-fields textarea{min-height:120px;resize:vertical;}
.intake-fields input:focus,.intake-fields textarea:focus,.intake-fields select:focus{
  outline:none;border-color:var(--blue);background:#fff;
}

/* Calendly-style consultation booking */
.intake-contact-consult{width:100%;}
.intake-contact-consult[hidden]{display:none !important;}
.intake.is-booking-only .intake-progress,
.intake.is-booking-only .intake-rail .intake-steps,
.intake.is-booking-only .intake-count{display:none !important;}
.intake.is-booking-only .intake-body{padding-top:4px;}
.intake.is-booking-only.is-consult .intake-progress{display:none !important;}
.intake-cal{
  display:grid;grid-template-columns:minmax(200px,.85fr) minmax(0,1.35fr);
  gap:0;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:#fff;
  max-width:920px;margin:0 auto;
}
.intake-cal-info{
  padding:22px 20px;background:color-mix(in srgb, var(--mist, #EEF1F2) 70%, #fff);
  border-right:1px solid var(--border);display:flex;flex-direction:column;gap:12px;
}
.intake-cal-host{font-size:13px;font-weight:700;color:var(--slate);}
.intake-cal-title{margin:0;font-size:22px;line-height:1.25;color:var(--deep-ink);font-weight:800;}
.intake-cal-meta{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.intake-cal-meta li{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--graphite);line-height:1.4;}
.intake-cal-meta svg{width:18px;height:18px;flex-shrink:0;color:var(--blue);margin-top:1px;}
.intake-cal-desc{margin:0;font-size:13px;line-height:1.55;color:var(--slate);}
.intake-cal-consultant-one{font-size:13px;font-weight:700;color:var(--deep-ink);}
.intake-cal-consultant-pick,.intake-cal-topic{display:grid;gap:6px;font-size:13px;font-weight:700;color:var(--graphite);}
.intake-cal-consultant-pick[hidden],.intake-cal-topic[hidden],#consultSummaryWhen[hidden]{display:none !important;}
.intake-cal-consultant-pick select,.intake-cal-topic select{
  border:1px solid var(--border);border-radius:12px;background:#fff;padding:10px 12px;font:inherit;color:var(--deep-ink);
}
.intake-cal-main{padding:20px 20px 16px;min-width:0;}
.intake-cal-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;}
.intake-cal-heading h4{margin:0;font-size:16px;font-weight:800;color:var(--deep-ink);}
.intake-cal-nav{display:inline-flex;align-items:center;gap:8px;}
.intake-cal-nav strong{font-size:14px;font-weight:750;color:var(--deep-ink);min-width:8.5rem;text-align:center;}
.intake-cal-nav button{
  width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:#fff;
  color:var(--deep-ink);font-size:18px;line-height:1;cursor:pointer;
}
.intake-cal-nav button:hover{border-color:var(--blue);color:var(--blue);}
.intake-cal-board{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(140px,.85fr);gap:18px;align-items:start;}
.intake-cal-board:not(.has-times){grid-template-columns:1fr;}
.intake-cal-board:not(.has-times) .intake-cal-grid{max-width:360px;}
.intake-cal-weekdays,.intake-cal-week-days,.intake-cal-month-days{
  display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;
}
.intake-cal-weekdays{margin-bottom:6px;}
.intake-cal-weekdays span{
  text-align:center;font-size:11px;font-weight:750;color:#93a9b8;text-transform:uppercase;letter-spacing:.04em;
  padding:4px 0;
}
.intake-cal-day{
  width:100%;max-width:42px;height:42px;margin:0 auto;border:0;border-radius:50%;
  background:transparent;color:var(--graphite);
  font:inherit;font-size:14px;font-weight:700;cursor:pointer;
  display:grid;place-items:center;aspect-ratio:auto;
}
.intake-cal-day.is-open{background:color-mix(in srgb, var(--blue) 12%, #fff);color:var(--blue);}
.intake-cal-day.is-on{background:var(--blue);color:#fff;box-shadow:0 6px 16px color-mix(in srgb, var(--blue) 35%, transparent);}
.intake-cal-day.is-today:not(.is-on){box-shadow:inset 0 0 0 1.5px var(--blue);}
.intake-cal-day.is-past,.intake-cal-day.is-muted,.intake-cal-day:disabled{opacity:.32;cursor:default;background:transparent;color:var(--slate);box-shadow:none;}
.intake-cal-day.is-open:not(:disabled):hover{background:color-mix(in srgb, var(--blue) 22%, #fff);}
.intake-cal-times{display:flex;flex-direction:column;gap:10px;min-width:0;max-height:340px;}
.intake-cal-times[hidden]{display:none !important;}
.intake-cal-day-label{font-size:13px;font-weight:750;color:var(--deep-ink);}
.intake-slots{display:flex;flex-direction:column;gap:8px;overflow:auto;padding-right:2px;flex:1;min-height:0;}
.intake-slots-hint{font-size:13px;color:var(--slate);}
.intake-slot{
  width:100%;border:1px solid color-mix(in srgb, var(--blue) 45%, var(--border));
  background:#fff;color:var(--blue);border-radius:10px;padding:11px 12px;
  font:inherit;font-size:14px;font-weight:750;cursor:pointer;text-align:center;
}
.intake-slot:hover,.intake-slot.is-on{background:var(--blue);color:#fff;border-color:var(--blue);}
.intake-cal-next{align-self:stretch;margin-top:4px;}
.intake-cal-next[hidden]{display:none !important;}
.intake-cal-tz{margin-top:14px;font-size:12px;color:#93a9b8;}
.intake-cal-details h4{margin:0 0 14px;font-size:16px;font-weight:800;}
.intake-cal-back{
  border:0;background:none;color:var(--slate);font:inherit;font-weight:700;padding:0 0 10px;cursor:pointer;
}
.intake-cal-back:hover{color:var(--deep-ink);}
.intake-cal-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.intake-cal-fields label{display:grid;gap:7px;}
.intake-cal-fields label.is-full{grid-column:1 / -1;}
.intake-cal-fields span{font-size:13px;font-weight:750;color:var(--graphite);}
.intake-cal-fields input,.intake-cal-fields textarea{
  width:100%;border:1px solid var(--border);border-radius:14px;background:#f7fafc;padding:14px 16px;font:inherit;color:var(--deep-ink);
}
.intake-cal-fields input:focus,.intake-cal-fields textarea:focus{outline:none;border-color:var(--blue);background:#fff;}
.intake-consult-error{color:#9b3a3a;font-size:13px;font-weight:650;margin:10px 0 0;}
.intake-consult-empty{color:var(--slate);font-size:15px;line-height:1.5;margin:0 0 12px;}
.intake-cal-details[hidden],.intake-cal-schedule[hidden]{display:none !important;}

.intake-done-copy{max-width:42ch;color:var(--slate);font-size:16px;line-height:1.6;}
.intake-errors{list-style:none;margin:0 36px 8px;color:#9b3a3a;font-size:13px;}
.intake-foot{
  display:flex;align-items:center;gap:16px;
  padding:16px 36px 28px;border-top:1px solid var(--border);background:#fff;
}
.intake-foot-start,.intake-foot-end{flex:1;display:flex;align-items:center;min-height:48px;}
.intake-foot-end{justify-content:flex-end;}
.intake-back{
  display:inline-flex;align-items:center;gap:8px;
  border:0;background:none;color:var(--slate);font:inherit;font-weight:700;
  cursor:pointer;
}
.intake-back-icon{width:14px;height:14px;transform:scaleX(-1);}
.intake-back:hover{color:var(--deep-ink);}
.intake-count{flex:0 0 auto;font-size:13px;color:#93a9b8;font-weight:650;}
.intake-next:disabled,.intake-send:disabled,.intake-book:disabled{opacity:.45;cursor:not-allowed;}
.intake-back.is-off,.intake-next.is-off,.intake-send.is-off,.intake-book.is-off,
.intake-back[hidden],.intake-next[hidden],.intake-send[hidden],.intake-book[hidden],
.intake-panel[hidden],.intake-foot[hidden],.intake-foot.is-off{
  display:none !important;
}
body.intake-lock{overflow:hidden;}

@media (max-width:980px){
  .intake-cal{grid-template-columns:minmax(180px,.75fr) minmax(0,1.4fr);}
  .intake-cal-board.has-times{grid-template-columns:1fr minmax(130px,.9fr);gap:14px;}
}
@media (max-width:860px){
  .intake-shell{grid-template-columns:1fr;}
  .intake-rail{display:none;}
  .intake-head,.intake-body{padding-left:16px;padding-right:16px;}
  .intake-progress{margin:0 16px 10px;padding:0;gap:4px;}
  .intake-progress span{font-size:10px;}
  .intake-foot{padding:12px 16px 18px;}
  .intake-choices,.intake-fields,.intake-cal-fields{grid-template-columns:1fr;}
  .intake-title{font-size:20px;}
  .intake-question{font-size:17px;}
  .intake.is-consult .intake-progress{display:none;}
  .intake-cal{
    grid-template-columns:1fr;border-radius:16px;max-width:none;
  }
  .intake-cal-info{
    border-right:0;border-bottom:1px solid var(--border);
    padding:16px 16px 14px;gap:8px;
  }
  .intake-cal-title{font-size:18px;}
  .intake-cal-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .intake-cal-main{padding:16px;}
  .intake-cal-heading{margin-bottom:12px;}
  .intake-cal-heading h4{font-size:15px;width:100%;}
  .intake-cal-board,.intake-cal-board.has-times,.intake-cal-board:not(.has-times){
    grid-template-columns:1fr;gap:14px;
  }
  .intake-cal-board:not(.has-times) .intake-cal-grid{max-width:none;}
  .intake-cal-day{max-width:40px;height:40px;font-size:13px;}
  .intake-cal-times{max-height:none;}
  .intake-slots{
    display:grid;grid-template-columns:1fr 1fr;gap:8px;
    max-height:220px;overflow:auto;
  }
  .intake-slots-hint{grid-column:1 / -1;}
  .intake-cal-next{width:100%;}
}
@media (max-width:480px){
  .intake-cal-info{padding:14px;}
  .intake-cal-main{padding:14px;}
  .intake-cal-day{max-width:36px;height:36px;font-size:12px;}
  .intake-cal-weekdays span{font-size:10px;}
  .intake-slot{padding:10px 8px;font-size:13px;}
  .intake-cal-nav strong{min-width:7.5rem;font-size:13px;}
}

.book-mod-shell{
  max-width:min(980px, calc(100vw - 24px));
  width:100%;height:auto;max-height:calc(100vh - 32px);margin:auto;
  grid-template-columns:minmax(0,1fr);background:#fff;border-radius:20px;
  box-shadow:0 28px 80px -24px rgba(6,44,67,.45);overflow:auto;
}
.book-mod .intake-shell{align-self:center;}
.book-mod-main .intake-head{padding:20px 24px 0;}
.book-mod-foot{border-top:0;padding-top:0;}
.book-mod-done{padding:24px 36px 32px;}
.book-mod-services{display:grid;gap:10px;margin-top:4px;}
.book-mod-services-label{font-size:13px;font-weight:700;color:var(--graphite);}
.book-mod-service-grid{display:flex;flex-wrap:wrap;gap:8px;}
.book-mod-service-pill{display:inline-flex;cursor:pointer;}
.book-mod-service-pill input{position:absolute;opacity:0;pointer-events:none;}
.book-mod-service-pill span{
  display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;
  padding:8px 14px;font-size:13px;font-weight:650;color:var(--graphite);background:#f7fafc;
}
.book-mod-service-pill input:checked + span{background:var(--blue);border-color:var(--blue);color:#fff;}
.book-mod-service-select{
  width:100%;border:1px solid var(--border);border-radius:14px;background:#f7fafc;
  padding:14px 16px;font:inherit;color:var(--deep-ink);
}
.book-mod-services > span{font-size:13px;font-weight:700;color:var(--graphite);}
.book-mod-service-fixed{
  border:1px solid var(--border);border-radius:14px;background:#f7fafc;
  padding:14px 16px;font-size:15px;font-weight:650;color:var(--deep-ink);
}
