/* Start a project, "Check-in". Loaded only on the Get Started template, after home.css and forms.css.
   The desk photo is sized by --pw (its width in px) so the clipboard paper is always big enough to write on;
   the photo is cropped to the middle of the desk. Everything placed on it is in % of the photo:
   the paper is at 36.89% / 17.58% (26.22% x 69.01%), the clip's jaw at 41.08% / 17.45% (17.91% x 6.38%). */

.ci{--paper:#fbf8ec;--paper2:#f1ebd6;--wood:#c9955f;background:#2a0430;color:#fff;overflow-x:clip}
.ci .eyebrow{color:var(--lime)}
.ci button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer}

.ci-head{max-width:1200px;margin:0 auto;padding:clamp(110px,11vw,150px) max(18px,env(safe-area-inset-left,0px)) clamp(26px,3vw,40px)}
.ci .ci-head h1{margin-top:14px;font-weight:800;letter-spacing:-.055em;line-height:.95;font-size:clamp(38px,6vw,84px);text-wrap:balance}
.ci-head h1 em{font-style:italic;font-weight:300;color:var(--lime)}
.ci .ci-head p{margin-top:14px;max-width:52ch;font-size:clamp(15px,1.3vw,18px);line-height:1.55;color:rgba(255,255,255,.8)}

/* the desk */
.ci-desk{position:relative;overflow:hidden;--pw:clamp(1800px,135vw,2300px);height:calc(var(--pw) * .4582);background:var(--wood)}
.ci-ph{position:absolute;left:50%;top:calc(var(--pw) * -.0327);width:var(--pw);height:calc(var(--pw) * .5455);margin-left:calc(var(--pw) / -2);background:var(--img) 0 0/100% 100% no-repeat}
.ci-paper{position:absolute;left:37.64%;top:19.53%;width:24.58%;height:64.45%}
.ci-clip{position:absolute;z-index:6;left:42%;top:19.3%;width:16.1%;height:5.2%;pointer-events:none;background-image:var(--img);background-repeat:no-repeat;
  background-size:calc(10000% / 16.1) calc(10000% / 5.2);background-position:calc(42 / (100 - 16.1) * 100%) calc(19.3 / (100 - 5.2) * 100%);
  clip-path:polygon(29.2% 0,70.8% 0,72% 12%,82% 20%,93% 34%,99.4% 50%,100% 92%,98% 100%,2% 100%,0 92%,.6% 50%,7% 34%,17% 20%,28% 12%)}

/* the cards */
.ci-form,.ci-cards{position:absolute;inset:0}
.ci .q{position:absolute;inset:0;margin:0;min-width:0;border:0;padding:78px 34px 118px;overflow:auto;overscroll-behavior:contain;color:var(--ink);
  background:linear-gradient(165deg,var(--paper),var(--paper2));transition:transform .6s cubic-bezier(.5,0,.2,1),opacity .45s}
.ci .q.is-on{z-index:2}
.ci .q.is-next{transform:translate(-135%,-4%) rotate(-7deg);opacity:0}
.ci .q.is-past{transform:translate(150%,6%) rotate(10deg);opacity:0}
.ci-top{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:10px;margin-bottom:14px;border-bottom:3px double rgba(133,13,140,.5)}
.ci-k{font:500 10.5px/1.2 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--purple)}
.ci-n{font:500 12px/1 var(--mono);letter-spacing:.08em;color:var(--purple)}
.ci .q legend{float:left;width:100%;padding:0;margin-bottom:16px;font-weight:800;letter-spacing:-.045em;line-height:1.02;font-size:clamp(26px,2.1vw,32px)}
.ci .q legend+*{clear:both}
.ci .ci-sub{margin:-6px 0 14px;font-size:14px;line-height:1.45;color:var(--muted)}

/* answers you tick */
.ci-opts{display:grid;gap:10px}
.ci-svc{grid-template-columns:repeat(2,minmax(0,1fr))}
.ci-opt{position:relative;display:block;cursor:pointer}
.ci-opt input,.ci-chip input{position:absolute;opacity:0;width:1px;height:1px}
.ci-opt span{display:grid;gap:3px;height:100%;padding:12px 14px 12px 40px;border:1.5px solid rgba(28,18,32,.22);border-radius:10px;background:rgba(255,255,255,.45);transition:background .2s,border-color .2s}
.ci-opt span::before{content:"";position:absolute;left:14px;top:14px;width:16px;height:16px;border:2px solid var(--ink);border-radius:4px;background:#fff}
.ci-opt span::after{content:"";position:absolute;left:19px;top:13px;width:6px;height:12px;border:solid var(--purple);border-width:0 3px 3px 0;transform:rotate(40deg) scale(0);transition:transform .22s cubic-bezier(.3,1.6,.5,1)}
.ci-opt b{font-weight:800;font-size:15px;letter-spacing:-.02em;line-height:1.2}
.ci-opt small{font-size:12.5px;line-height:1.3;color:var(--muted)}
.ci-opt:hover span{border-color:var(--ink)}
.ci-opt input:checked+span{background:var(--lime);border-color:var(--ink)}
.ci-opt input:checked+span::after{transform:rotate(40deg) scale(1)}
.ci-opt input:checked+span small{color:var(--ink)}
.ci-opt input:focus-visible+span{outline:3px solid var(--purple);outline-offset:2px}
.ci-grp{margin-top:14px}
.ci-lab{display:block;margin-bottom:8px;font:500 10.5px/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--purple)}
.ci-chips{display:flex;flex-wrap:wrap;gap:8px}
.ci-chip{position:relative;cursor:pointer}
.ci-chip span{display:inline-flex;padding:9px 13px;border:1.5px solid rgba(28,18,32,.25);border-radius:999px;background:rgba(255,255,255,.45);font-weight:700;font-size:13.5px;transition:background .2s,border-color .2s}
.ci-chip:hover span{border-color:var(--ink)}
.ci-chip input:checked+span{background:var(--lime);border-color:var(--ink)}
.ci-chip input:focus-visible+span{outline:3px solid var(--purple);outline-offset:2px}

/* answers you write */
.ci-fields{display:grid;gap:14px}
.ci-fields-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ci-fields-2 .ci-fld:last-child{grid-column:1 / -1}
.ci-fld{display:grid;gap:4px;min-width:0}
.ci-fld>span{font:500 10.5px/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--purple)}
.ci-fld>span i{font-style:normal;color:var(--muted);letter-spacing:.06em;text-transform:none}
.ci-fld input,.ci-fld textarea{width:100%;min-width:0;border:0;border-radius:0;background:transparent;color:var(--ink);font:600 16px/1.3 var(--sans);-webkit-appearance:none;appearance:none}
.ci-fld input{padding:7px 0;border-bottom:1.5px solid rgba(28,18,32,.3)}
.ci-fld textarea{resize:none;padding:0 2px;font-weight:500;line-height:30px;background:repeating-linear-gradient(180deg,transparent 0 29px,rgba(28,18,32,.2) 29px 30px);background-attachment:local}
.ci-fld input:focus,.ci-fld textarea:focus{outline:none;border-bottom-color:var(--purple);box-shadow:inset 0 -1.5px 0 var(--purple)}
.ci-fld textarea:focus{box-shadow:none;background:repeating-linear-gradient(180deg,transparent 0 29px,rgba(133,13,140,.55) 29px 30px);background-attachment:local}
.ci .cf-turnstile{margin-top:14px}

/* back, progress, next */
.ci-foot{position:absolute;z-index:4;left:0;right:0;bottom:0;padding:0 34px 24px;color:var(--ink);background:linear-gradient(180deg,rgba(231,214,180,0),var(--paper2) 30%)}
.ci .st-err{margin:0 0 10px;color:#9b1a1a}
.ci-nav{display:flex;align-items:center;gap:14px;padding-top:12px;border-top:1.5px solid rgba(28,18,32,.15)}
.ci-back{font-weight:700;font-size:14px;color:var(--muted)}
.ci-back:hover{color:var(--ink)}
.ci-dots{display:flex;gap:6px;margin-right:auto}
.ci-back:not([hidden])+.ci-dots{margin-left:4px}
.ci-dots i{width:8px;height:8px;border-radius:50%;background:rgba(28,18,32,.2);transition:background .3s}
.ci-dots i.on{background:var(--purple)}
.ci .ci-next{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:999px;background:var(--purple);color:#fff;font-weight:800;font-size:15px;line-height:1;transition:background .2s}
.ci .ci-next:hover{background:var(--ink)}
.ci .ci-next[hidden]{display:none}
.ci .ci-send:disabled{opacity:.6;cursor:wait}

/* the ticket */
.ci-ticket{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;color:var(--ink);background:#fbfaf5;animation:tkPrint 1.1s cubic-bezier(.4,0,.2,1) both}
.ci-ticket[hidden]{display:none}
.ci-ticket:focus{outline:none}
@keyframes tkPrint{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
.tk-main{position:relative;flex:1 1 auto;min-height:0;overflow:auto;padding:78px 30px 18px}
.tk-k{display:flex;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:3px double rgba(133,13,140,.5);font:500 10px/1.2 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--purple)}
.ci .ci-ticket h2{margin-top:16px;font-weight:800;letter-spacing:-.045em;line-height:1;font-size:clamp(28px,2.4vw,36px)}
.ci-ticket h2 em{display:block;font-style:italic;font-weight:300;color:var(--purple)}
.tk-rows{display:grid;margin:16px 0 0}
.tk-rows div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1.5px dotted rgba(28,18,32,.25)}
.tk-rows dt{font:500 10px/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.tk-rows dd{margin:0;font-weight:700;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.tk-stamp{position:absolute;right:20px;top:132px;padding:8px 12px 7px;border:3px double var(--ink);border-radius:6px;background:var(--lime);transform:rotate(-12deg);
  font:800 17px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;animation:tkStamp .5s cubic-bezier(.3,1.6,.5,1) 1.1s both}
@keyframes tkStamp{from{opacity:0;transform:rotate(-12deg) scale(2.4)}to{opacity:1;transform:rotate(-12deg) scale(1)}}
.ci .tk-line{margin-top:14px;font-size:14px;line-height:1.5;color:var(--muted)}
.tk-stub{position:relative;flex:0 0 auto;display:grid;gap:4px;padding:18px 30px 22px;background:var(--lime);border-top:2px dashed rgba(28,18,32,.45)}
.tk-stub::before,.tk-stub::after{content:"";position:absolute;top:-12px;width:22px;height:22px;border-radius:50%;background:var(--wood)}
.tk-stub::before{left:-11px}.tk-stub::after{right:-11px}
.tk-k2{font:500 10px/1.2 var(--mono);letter-spacing:.16em;text-transform:uppercase}
.tk-stub b{font-weight:800;font-size:19px;letter-spacing:-.03em}
.tk-date{font:500 11px/1.3 var(--mono);letter-spacing:.06em;opacity:.8}

/* a sticky note on the desk with a tip for the card you're on */
.ci-tip{position:absolute;z-index:3;left:23.5%;top:44%;width:10.5%;aspect-ratio:1;padding:1.1% 1%;background:var(--lime);color:var(--ink);transform:rotate(-4deg);
  display:grid;align-content:start;gap:.5em;font:600 max(11px,.72cqw)/1.35 var(--sans);transition:transform .35s cubic-bezier(.3,1.6,.5,1),opacity .2s}
.ci-ph{container-type:inline-size}
.ci-tip b{font:500 max(9px,.55cqw)/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.ci-tip.swap{opacity:0;transform:rotate(-4deg) translateY(-8px)}
/* the visitor badge in the clear holder fills in when you check in */
.ci-badge{position:absolute;z-index:2;left:73.76%;top:63%;width:11.15%;height:13.4%;transform:translate(-50%,-50%) rotate(19.3deg);display:grid;align-content:center;gap:.25em;padding:0 .9%;color:var(--ink)}
.ci-biz{position:absolute;z-index:2;left:25.2%;top:23.6%;width:11.4%;transform:translate(-50%,-50%) rotate(-29deg) skewX(-6deg);display:grid;gap:.5em;justify-items:start;color:var(--ink)}
.ci-biz::before{content:"";width:1.6em;height:3px;background:var(--purple);margin-bottom:.2em}
.ci-biz b{font:800 max(12px,.78cqw)/1.05 var(--sans);letter-spacing:-.03em}
.ci-biz span{font:500 max(7px,.4cqw)/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(28,18,32,.7)}
.ci-biz i{font:normal 600 max(9px,.5cqw)/1 var(--sans);color:var(--purple)}
.ci-badge.is-empty b,.ci-badge.is-empty span{opacity:.5}
.ci-badge i{font:normal 500 max(8px,.55cqw)/1 var(--mono);letter-spacing:.2em;color:#fff;background:var(--purple);justify-self:start;padding:.35em .55em}
.ci-badge b{font:800 max(14px,1.35cqw)/1 var(--sans);letter-spacing:-.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ci-badge span{font:600 max(9px,.62cqw)/1.25 var(--sans);color:var(--purple)}

/* after the desk */
.ci-under{max-width:1200px;margin:0 auto;padding:26px max(18px,env(safe-area-inset-left,0px)) clamp(60px,7vw,100px);display:grid;justify-items:center;gap:16px;text-align:center}
.ci-after[hidden]{display:none}
.ci .ci-alt{font-size:15px;color:rgba(255,255,255,.75)}
.ci-alt a{color:#fff;border-bottom:1.5px solid var(--lime)}
.ci-done-plain{position:absolute;inset:0;padding:90px 32px 30px;color:var(--ink);background:linear-gradient(165deg,var(--paper),var(--paper2))}
.ci-done-plain h2{margin:12px 0;font-weight:800;letter-spacing:-.05em;font-size:40px}
.ci-done-plain h2 em{font-style:italic;font-weight:300;color:var(--purple)}
.ci-done-plain p{margin-bottom:20px}

/* phones: the clipboard fills the width; long cards scroll inside the card */
@media(max-width:759px){
  .ci-desk{--pw:calc((100vw - 16px) / .2458)}
  .ci-tip,.ci-badge,.ci-biz{display:none}
  .ci .q{padding:62px 18px 112px}
  .ci-foot{padding:0 18px 18px}
  .ci-svc,.ci-fields-2{grid-template-columns:minmax(0,1fr)}
  .ci-opts{gap:8px}
  .ci-opt span{padding:9px 12px 9px 38px}
  .ci-opt span::before{top:11px}.ci-opt span::after{top:10px}
  .ci .ci-next{padding:13px 18px}
  .tk-main{padding:62px 18px 14px}
  .tk-stub{padding:14px 18px 18px}
  .tk-stamp{top:112px;right:12px;font-size:14px}
  .tk-rows div{grid-template-columns:84px minmax(0,1fr)}
}

/* without JavaScript every card shows on one long sheet */
.ci:not(.js) .ci-desk{height:auto;padding:28px 10px;background:var(--wood) var(--img) center/cover}
.ci:not(.js) .ci-ph{position:static;width:auto;height:auto;margin:0;background:none}
.ci:not(.js) .ci-paper{position:static;width:auto;max-width:560px;height:auto;margin:0 auto}
.ci:not(.js) .ci-form,.ci:not(.js) .ci-cards,.ci:not(.js) .q,.ci:not(.js) .ci-foot{position:static}
.ci:not(.js) .q{padding:28px 24px;overflow:visible}
.ci:not(.js) .ci-clip,.ci:not(.js) #stNext,.ci:not(.js) .ci-dots{display:none}

@media (prefers-reduced-motion:reduce){
  .ci .q,.ci-opt span::after{transition:none}
  .ci-ticket,.tk-stamp{animation:none}
}

/* v2.16.37 the check-in counter header: brick wall, sticky notes, the front desk with a "now serving" tag */
.ci-lobby{max-width:none;position:relative;padding:0;background:#3a1418 var(--brick) 38% 50%/cover no-repeat;overflow:hidden}
.ci-lobby::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,4,48,.93) 0%,rgba(42,4,48,.78) 46%,rgba(42,4,48,.25) 100%)}
.ci-lobby::after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(16px,2vw,24px);background:linear-gradient(#c9955f,#a8743f);border-top:3px solid #e2b67d}
.ci-lobby-in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:clamp(110px,11vw,150px) max(18px,env(safe-area-inset-left,0px)) 0;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(20px,3vw,48px);align-items:end}
.ci-lobby-copy{padding-bottom:clamp(44px,5vw,70px)}
.ci-notes{list-style:none;margin:clamp(22px,2.6vw,34px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:14px}
.ci-notes li{width:clamp(148px,13vw,176px);padding:16px 15px 15px;font-size:13.5px;line-height:1.35;color:var(--ink);transform:rotate(var(--r,-2deg))}
.ci-notes li b{display:block;margin-bottom:4px;font-size:19px;font-weight:800;letter-spacing:-.03em}
.ci-notes .n-lime{background:var(--lime)}
.ci-notes .n-purple{background:var(--purple);color:#fff;--r:1.6deg}
.ci-notes .n-cream{background:#F6F1E7;--r:-1deg}
.ci-lobby-desk{position:relative;align-self:end;margin-bottom:clamp(10px,1.4vw,18px)}
.ci-lobby-desk img{display:block;width:100%;height:auto}
.ci-ticket-tag{position:absolute;left:4%;top:-10%;z-index:2;display:grid;justify-items:center;gap:2px;padding:12px 18px 14px;background:#fbf8ec;color:var(--ink);transform:rotate(-6deg);
  -webkit-mask:radial-gradient(circle 5px at 0 50%,#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 5px at 100% 50%,#0000 98%,#000) right/51% 100% no-repeat;
          mask:radial-gradient(circle 5px at 0 50%,#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 5px at 100% 50%,#0000 98%,#000) right/51% 100% no-repeat}
.ci-ticket-tag span{font:500 10px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--purple)}
.ci-ticket-tag b{font-size:34px;font-weight:800;letter-spacing:-.04em;line-height:1}
.ci-ticket-tag i{font:500 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;font-style:normal;opacity:.6}
@media(max-width:820px){
  .ci-lobby::before{background:linear-gradient(180deg,rgba(42,4,48,.92) 0%,rgba(42,4,48,.8) 55%,rgba(42,4,48,.35) 100%)}
  .ci-lobby-in{grid-template-columns:minmax(0,1fr);gap:0}
  .ci-lobby-copy{padding-bottom:26px}
  .ci-notes{gap:10px;flex-wrap:nowrap}
  .ci-notes li{width:auto;flex:1 1 0;min-width:0;padding:12px 10px;font-size:11.5px}
  .ci-notes li b{font-size:15px}
  .ci-lobby-desk{width:min(420px,92%);margin:6px auto 12px}
  .ci-ticket-tag{top:-14%;padding:9px 14px 11px}
  .ci-ticket-tag b{font-size:26px}
}
.ci-lobby{background-size:max(175%,1100px) auto;background-position:30% 45%}
.ci-notes{margin-top:clamp(28px,3vw,40px)}
.ci-lobby-desk{margin-bottom:clamp(14px,1.8vw,22px)}
@media(max-width:820px){.ci-lobby{background-size:auto 150%;background-position:32% 50%}}
.ci .ci-lobby .ci-notes{margin-top:clamp(30px,3.2vw,44px)}
@media(max-width:820px){.ci .ci-lobby .ci-notes{margin-top:22px}.ci-lobby-desk{margin-top:30px}}

/* v2.16.38 the header is now one photo: brick wall and counter with the bell, OPEN sign and plant */
.ci-lobby{background:#3a1418 var(--brick) 72% 78%/cover no-repeat}
.ci-lobby::before{background:linear-gradient(90deg,rgba(42,4,48,.92) 0%,rgba(42,4,48,.72) 42%,rgba(42,4,48,0) 70%)}
.ci-lobby::after{display:none}
.ci-lobby-in{min-height:clamp(440px,40vw,560px)}
.ci-lobby-desk{align-self:stretch;margin:0}
.ci-ticket-tag{left:auto;right:30%;top:18%}
@media(max-width:820px){
  .ci-lobby{background-image:var(--brick-m);background-size:auto 100%;background-position:88% 100%}
  .ci-lobby::before{background:linear-gradient(180deg,rgba(42,4,48,.94) 0%,rgba(42,4,48,.86) 52%,rgba(42,4,48,.15) 70%,rgba(42,4,48,0) 100%)}
  .ci-lobby-in{min-height:0}
  .ci-lobby-desk{height:230px;width:100%;margin:0}
  .ci-ticket-tag{right:auto;left:6%;top:14%}
}
.ci-ticket-tag{right:66%;top:6%}
@media(max-width:820px){
  .ci-lobby{background-size:auto 76%;background-position:100% 100%}
  .ci-lobby::before{background:linear-gradient(180deg,rgba(42,4,48,1) 0%,rgba(42,4,48,.9) 50%,rgba(42,4,48,.2) 66%,rgba(42,4,48,0) 80%)}
  .ci-lobby-desk{height:250px}
  .ci-ticket-tag{left:5%;right:auto;top:auto;bottom:34%}
}
@media(max-width:820px){.ci-ticket-tag{display:none}}
