/* SocialRevver custom scheduling widget — brand-matched, premium.
   Loaded by get-started-s2.html (replaces the GHL calendar embed). */
.srcal{max-width:560px;margin:0 auto;font-family:'Funnel Display',sans-serif;color:#fff;}
/* "You'll meet a Senior Strategist specialized in ___" — a plain line, no box.
   Animates in ONLY on first appearance (.is-fresh) — never re-flashes on a
   timezone/day re-render. */
.srcal__spec{text-align:center;margin:0 auto 18px;max-width:480px;
  font:500 14px 'Funnel Display',sans-serif;color:rgba(214,238,255,.7);line-height:1.4;}
.srcal__spec.is-fresh{animation:srcal-spec-in .5s cubic-bezier(.2,.7,.2,1) both;}
.srcal__spec b{font-weight:700;color:#fff;}
.srcal__spec .srcal__spec-niche{background:linear-gradient(102deg,#d2f0fa,#6bd7fc 30%,#03bfff 60%,#0380f7);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#6bd7fc;}
@keyframes srcal-spec-in{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:none;}}
/* the day's time slots restage (soft stagger) when day or timezone changes */
.srcal__slots.is-swap .srcal__slot{animation:srcal-slot-in .32s cubic-bezier(.2,.7,.2,1) both;}
.srcal__slots.is-swap .srcal__slot:nth-child(2){animation-delay:.03s;}
.srcal__slots.is-swap .srcal__slot:nth-child(3){animation-delay:.06s;}
.srcal__slots.is-swap .srcal__slot:nth-child(4){animation-delay:.09s;}
.srcal__slots.is-swap .srcal__slot:nth-child(5){animation-delay:.12s;}
.srcal__slots.is-swap .srcal__slot:nth-child(6){animation-delay:.15s;}
.srcal__slots.is-swap .srcal__slot:nth-child(7){animation-delay:.18s;}
.srcal__slots.is-swap .srcal__slot:nth-child(n+8){animation-delay:.21s;}
@keyframes srcal-slot-in{from{opacity:0;transform:translateY(7px) scale(.97);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.srcal__spec.is-fresh,.srcal__slots.is-swap .srcal__slot{animation:none;}}
/* timezone: a pill button that opens a picker of real named zones */
.srcal__tzwrap{position:relative;text-align:center;margin:0 0 16px;z-index:5;}
.srcal__tz{display:inline-flex;align-items:center;gap:6px;padding:7px 15px;border-radius:999px;border:1px solid rgba(120,180,255,.22);background:rgba(0,8,28,.55);color:rgba(207,238,255,.9);font:600 13px 'Funnel Display',sans-serif;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;}
.srcal__tz:hover{border-color:rgba(0,212,255,.55);box-shadow:0 0 14px rgba(0,140,255,.2);}
.srcal__tz b{color:#fff;font-weight:700;}
.srcal__tz-short{color:rgba(159,233,255,.7);font-weight:600;}
.srcal__tz-caret{font-style:normal;font-size:10px;color:rgba(159,233,255,.7);}
.srcal__tzmenu{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);z-index:20;width:min(340px,92vw);max-height:280px;overflow-y:auto;border-radius:14px;border:1px solid rgba(0,212,255,.3);background:rgba(2,12,36,.99);box-shadow:0 24px 60px rgba(0,0,0,.6),0 0 30px rgba(0,160,255,.15);text-align:left;padding:4px;scrollbar-width:thin;scrollbar-color:rgba(0,212,255,.4) rgba(255,255,255,.06);}
.srcal__tzmenu::-webkit-scrollbar{width:6px;}
.srcal__tzmenu::-webkit-scrollbar-thumb{background:rgba(0,212,255,.35);border-radius:3px;}
.srcal__tzopt{display:block;width:100%;padding:9px 12px;border:none;background:none;border-radius:9px;color:rgba(255,255,255,.85);cursor:pointer;text-align:left;transition:background .15s ease;}
.srcal__tzopt:hover{background:rgba(0,212,255,.12);}
.srcal__tzopt.is-active{background:rgba(0,212,255,.18);}
.srcal__tzopt b{display:block;font:600 14px 'Funnel Display',sans-serif;color:#fff;}
.srcal__tzopt em{font:500 11.5px 'Funnel Display',sans-serif;font-style:normal;color:rgba(159,233,255,.65);}

/* day strip — horizontal scroll of day cards */
.srcal__days{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x mandatory;
  scrollbar-width:thin;scrollbar-color:rgba(0,212,255,.4) rgba(255,255,255,.06);}
.srcal__days::-webkit-scrollbar{height:6px;}
.srcal__days::-webkit-scrollbar-thumb{background:rgba(0,212,255,.35);border-radius:3px;}
.srcal__day{flex:0 0 auto;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:2px;
  width:72px;padding:12px 6px;border-radius:14px;border:1px solid rgba(120,180,255,.22);background:rgba(0,8,28,.55);
  color:rgba(255,255,255,.82);cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease;}
.srcal__day:hover{border-color:rgba(0,212,255,.55);transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,140,255,.2);}
.srcal__day.is-active{border-color:transparent;background:linear-gradient(135deg,#6bd7fc,#0380f7);color:#001226;box-shadow:0 0 24px rgba(0,212,255,.45);}
.srcal__day-dow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.75;}
.srcal__day-num{font-size:22px;font-weight:800;line-height:1;}
.srcal__day-mon{font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.75;}

/* time slots */
.srcal__slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:9px;margin-top:6px;
  max-height:260px;overflow-y:auto;padding:2px;scrollbar-width:thin;scrollbar-color:rgba(0,212,255,.4) rgba(255,255,255,.06);}
.srcal__slots::-webkit-scrollbar{width:6px;}
.srcal__slots::-webkit-scrollbar-thumb{background:rgba(0,212,255,.35);border-radius:3px;}
.srcal__slot{padding:13px 8px;border-radius:12px;border:1px solid rgba(120,180,255,.22);background:rgba(0,8,28,.55);
  color:rgba(255,255,255,.85);font:600 14.5px 'Funnel Display',sans-serif;cursor:pointer;
  transition:border-color .2s ease,background .2s ease,transform .15s ease,box-shadow .2s ease;}
.srcal__slot:hover{border-color:rgba(0,212,255,.6);transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,140,255,.2);}
.srcal__slot.is-sel{border-color:transparent;background:linear-gradient(135deg,#6bd7fc,#0380f7);color:#001226;box-shadow:0 0 22px rgba(0,212,255,.5);}
.srcal__slot:not(.is-busy):active{transform:scale(.97);}
/* already booked — dimmed, struck, not selectable */
.srcal__slot.is-busy{cursor:not-allowed;opacity:.4;color:rgba(255,255,255,.4);border-style:dashed;border-color:rgba(120,180,255,.14);background:rgba(0,8,28,.28);text-decoration:line-through;}
.srcal__slot.is-busy:hover{transform:none;border-color:rgba(120,180,255,.14);box-shadow:none;}

/* confirm bar */
.srcal__foot{margin-top:20px;}
.srcal__pick{text-align:center;margin-bottom:12px;}
.srcal__pick b{display:block;font:700 17px 'Funnel Display',sans-serif;color:#fff;}
.srcal__pick em{font:600 12.5px 'Funnel Display',sans-serif;font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:rgba(159,233,255,.75);}
.srcal__cta{display:block;width:100%;border:none;cursor:pointer;border-radius:12px;padding:16px 22px;
  font:700 16px 'Funnel Display',sans-serif;color:#00122b;
  background:linear-gradient(102deg,#d2f0fa,#6bd7fc 22%,#03bfff 43%,#0380f7 67%,#05448b);
  box-shadow:0 12px 32px rgba(3,128,247,.32);transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease;}
.srcal__cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 40px rgba(3,128,247,.42);}
.srcal__cta:disabled{opacity:.5;cursor:default;}
.srcal__err{margin:12px 0 0;text-align:center;color:#ff8aa3;font-size:14px;}
.srcal__err[hidden]{display:none;}
.srcal__empty{text-align:center;color:rgba(255,255,255,.7);font-size:15px;padding:30px 10px;}

/* booked hand-off state — animated circle-check draws in */
.srcal__done{display:flex;flex-direction:column;align-items:center;gap:8px;padding:44px 10px;text-align:center;}
.srcal__check{width:84px;height:84px;margin-bottom:8px;}
.srcal__check-ring{fill:none;stroke:#03bfff;stroke-width:4;stroke-linecap:round;
  stroke-dasharray:202;stroke-dashoffset:202;transform-origin:center;transform:rotate(-90deg);
  filter:drop-shadow(0 0 8px rgba(0,212,255,.55));animation:srcal-ring .6s cubic-bezier(.2,.7,.2,1) forwards;}
.srcal__check-tick{fill:none;stroke:#6bd7fc;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:60;stroke-dashoffset:60;filter:drop-shadow(0 0 6px rgba(0,212,255,.7));
  animation:srcal-tick .34s cubic-bezier(.5,0,.4,1) .5s forwards;}
@keyframes srcal-ring{to{stroke-dashoffset:0;}}
@keyframes srcal-tick{to{stroke-dashoffset:0;}}
.srcal__done-t{margin:2px 0 0;font:800 23px 'Funnel Display',sans-serif;color:#fff;opacity:0;animation:srcal-fade .4s ease .72s forwards;}
.srcal__done-s{margin:0;font:600 13.5px 'Funnel Display',sans-serif;color:rgba(159,233,255,.75);opacity:0;animation:srcal-fade .4s ease .88s forwards;}
@keyframes srcal-fade{to{opacity:1;}}
@media (prefers-reduced-motion:reduce){
  .srcal__check-ring,.srcal__check-tick{animation:none;stroke-dashoffset:0;}
  .srcal__done-t,.srcal__done-s{animation:none;opacity:1;}
}

@media (max-width:600px){
  .srcal__day{width:64px;padding:10px 5px;}
  .srcal__day-num{font-size:19px;}
  .srcal__slots{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));max-height:220px;}
}
@media (prefers-reduced-motion:reduce){
  .srcal__day,.srcal__slot,.srcal__cta{transition:none;}
}
