/* ═════ contact (ct-) ═════ */
:root{--ct-o:#FF5B1A;--ct-oi:#C2410C;--ct-pe:#FFA77F;--ct-pn:#0E1018;--ct-ln:#22263A}

/* ── banner: live office clock ── */
.ct-ck{position:relative;background:rgba(13,15,22,.78);border:1px solid var(--ct-ln);max-width:620px;margin-left:auto;padding:18px 20px;box-shadow:0 40px 80px -40px rgba(255,91,26,.35);backdrop-filter:blur(2px)}
.ct-ck-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.ct-ck-st{display:inline-flex;align-items:center;gap:8px;font:500 13.5px var(--f-sans);color:#fff;border:1px solid #2E3344;padding:6px 12px;border-radius:20px}
.ct-ck-st i{width:8px;height:8px;border-radius:50%;background:#6E7286}
.ct-ck-st.in i{background:#3BB273;box-shadow:0 0 0 0 rgba(59,178,115,.6);animation:ctPulse 2s infinite}
.ct-ck-st.out i{background:var(--ct-o)}
@keyframes ctPulse{70%{box-shadow:0 0 0 7px rgba(59,178,115,0)}100%{box-shadow:0 0 0 0 rgba(59,178,115,0)}}
.ct-ck-ist{font:500 13px var(--f-sans);color:#8E93A6}.ct-ck-dig{font:700 24px var(--f-flex);color:#fff;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-right:2px}
.ct-ck-stage{position:relative;margin:10px 0}
.ct-ck-svg{display:block;width:100%;height:auto}
.ct-ck-route{fill:none;stroke:#2E3344;stroke-width:1.6;stroke-dasharray:4 6}
.ct-ck-trail{fill:none;stroke:var(--ct-o);stroke-width:2;stroke-dasharray:100;stroke-dashoffset:100;opacity:.9}
.ct-ck-glow{fill:rgba(255,91,26,.06)}
.ct-ck-face{fill:#0B0C12;stroke:#2E3344;stroke-width:1.5}
.ct-ck-arc{fill:none;stroke:rgba(255,91,26,.45);stroke-width:6;stroke-linecap:round}
.ct-ck-svg path[transform]{stroke:#3A3F52;stroke-width:1.4}
.ct-ck-svg path.ct-ck-hr{stroke:#8E93A6;stroke-width:2.4}
.ct-ck-num text{font:600 15px var(--f-sans);fill:#6E7286;text-anchor:middle}
.ct-ck-h{stroke:#fff;stroke-width:5;stroke-linecap:round}
.ct-ck-m{stroke:#C9CBD3;stroke-width:3;stroke-linecap:round}
.ct-ck-s{stroke:var(--ct-o);stroke-width:1.6;stroke-linecap:round}
.ct-ck-h,.ct-ck-m,.ct-ck-s{transform-origin:200px 160px;transform-box:view-box}
.ct-ck-pin{fill:var(--ct-o)}
.ct-ck-ping{fill:none;stroke:var(--ct-o);stroke-width:2;opacity:0;transform-origin:200px 160px;transform-box:view-box}
.ct-ck.land .ct-ck-ping{animation:ctPing 1.1s ease-out}
@keyframes ctPing{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(1.18)}}
.ct-ck-plane path{fill:#fff}.ct-ck-plane .ct-ck-fold{stroke:#8E93A6;stroke-width:1;fill:none}
.ct-ck-plane{opacity:0}
.ct-ck-msg,.ct-ck-reply{position:absolute;left:0;max-width:44%;background:#151823;border:1px solid #2E3344;padding:10px 12px;display:grid;gap:4px;transition:opacity .5s,transform .5s}
.ct-ck-msg{bottom:2%;border-left:3px solid #8E93A6}
.ct-ck-reply{top:0;border-left:3px solid var(--ct-o);opacity:0;transform:translateY(-6px)}
.ct-ck.land .ct-ck-reply,.ct-ck.rest .ct-ck-reply{opacity:1;transform:none}
.ct-ck.fly .ct-ck-msg{opacity:.35}
.ct-ck-msg small,.ct-ck-reply small{font:500 11.5px var(--f-sans);color:#8E93A6}
.ct-ck-msg b{font:500 13.5px/1.3 var(--f-sans);color:#fff}
.ct-ck-reply b{font:600 15px/1.3 var(--f-sans);color:var(--ct-pe)}
.ct-ck-foot{display:grid;gap:10px;border-top:1px solid var(--ct-ln);padding-top:12px}
.ct-ck-chips{display:flex;flex-wrap:wrap;gap:6px}
.ct-ck-chips button{background:none;border:1px solid #2E3344;color:#C9CBD3;padding:6px 10px;font:500 12.5px var(--f-sans);transition:all .2s}
.ct-ck-chips button:hover{border-color:#6E7286}
.ct-ck-chips button[aria-pressed="true"]{background:var(--ct-o);border-color:var(--ct-o);color:#fff}
.ct-ck-hrs{font:500 12.5px var(--f-sans);color:#8E93A6}
@media (max-width:900px){.ct-ck{margin:0 auto}}
@media (max-width:480px){.ct-ck{padding:14px 12px}.ct-ck-msg,.ct-ck-reply{max-width:52%;padding:7px 9px}.ct-ck-msg b{font-size:12px}.ct-ck-reply b{font-size:13px}.ct-ck-msg small,.ct-ck-reply small{font-size:10.5px}}

/* ── answers: counters ── */
.ct-ct-sec{padding-block:clamp(40px,5vw,72px)}
.ct-ct-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.ct-ct-head p{font-size:15px;color:var(--ink-2)}
.ct-ct{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid var(--ink)}
.ct-ct-line{position:absolute;left:0;right:0;top:-2px;height:2px}
.ct-ct-line i{display:block;height:100%;width:0;background:var(--ct-o);transition:width 2.4s cubic-bezier(.4,0,.2,1)}
.ct-ct.go .ct-ct-line i{width:100%}
.ct-ct-c{all:unset;box-sizing:border-box;cursor:pointer;padding:22px 22px 6px 0;display:grid;gap:10px;align-content:start;position:relative}
.ct-ct-c+.ct-ct-c{padding-left:22px;border-left:1px solid var(--paper-line)}
.ct-ct-c:focus-visible{outline:2px solid var(--ct-o);outline-offset:-2px}
.ct-ct-c::before{content:"";position:absolute;top:-8px;left:0;width:14px;height:14px;border-radius:50%;background:var(--paper);border:2px solid var(--ink);transition:background .3s,border-color .3s;transition-delay:calc(var(--c) * .6s)}
.ct-ct-c+.ct-ct-c::before{left:22px}
.ct-ct.go .ct-ct-c::before{background:var(--ct-o);border-color:var(--ct-o)}
.ct-ct-step{display:flex;align-items:center;gap:8px;font:500 12px var(--f-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ct-oi)}
.ct-ct-step em{font-style:normal;width:20px;height:20px;border:1px solid var(--ct-oi);border-radius:50%;display:grid;place-items:center;font-size:11px;letter-spacing:0}
.ct-ct-n{display:flex;align-items:baseline;gap:8px}
.ct-ct-n b{font:700 clamp(48px,5vw,72px)/1 var(--f-flex);letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;min-width:1.2ch}
.ct-ct-n small{font:500 16px var(--f-sans);color:var(--ink-2)}
.ct-ct-ruler{display:flex;gap:3px;height:16px;align-items:end}
.ct-ct-ruler i{flex:1;height:40%;background:#D6D6D2;transition:background .2s,height .2s}
.ct-ct-ruler i:nth-child(4n+1){height:100%}
.ct-ct-ruler i.on{background:var(--ct-o)}
.ct-ct-k{font:600 15px var(--f-sans);color:var(--ink)}
.ct-ct-v{font-size:15px;color:var(--ink-2);line-height:1.4}
@media (max-width:900px){.ct-ct{grid-template-columns:1fr 1fr;row-gap:26px}.ct-ct-c:nth-child(4){padding-left:0;border-left:0}.ct-ct-c:nth-child(4)::before{left:0}}
@media (max-width:480px){.ct-ct-c,.ct-ct-c+.ct-ct-c{padding:20px 12px 4px 0}.ct-ct-c+.ct-ct-c{padding-left:12px}.ct-ct-c:nth-child(4){padding-left:0}.ct-ct-c+.ct-ct-c::before{left:12px}.ct-ct-c:nth-child(4)::before{left:0}.ct-ct-n b{font-size:44px}.ct-ct-n small{font-size:13px}}

/* ── what to write: gauge ── */
.ct-gg{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(24px,4vw,56px);align-items:center}
.ct-gg>*{min-width:0}
.ct-gg-pad{background:#0E1018;border:1px solid var(--ct-ln)}
.ct-gg-hd{display:flex;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--ct-ln);font:500 13px var(--f-sans);color:#8E93A6}
.ct-gg-hd span:first-child{color:#fff}.ct-gg-ct b{color:var(--ct-pe)}
.ct-gg-msg{padding:22px 22px 10px;min-height:230px;font:400 17px/1.65 var(--f-sans);color:#fff}
.ct-gg-ph{color:#C9CBD3}
.ct-gg-l{display:none}
.ct-gg-l.on{display:inline;animation:ctIn .5s ease-out}
.ct-gg-l em{font-style:normal;font:600 10.5px var(--f-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ct-o);background:rgba(255,91,26,.12);padding:2px 6px;margin-right:6px;vertical-align:2px}
@keyframes ctIn{from{opacity:0;filter:blur(3px)}}
.ct-gg-caret{display:inline-block;width:2px;height:1.1em;background:var(--ct-o);vertical-align:-3px;animation:ctBlink 1s steps(1) infinite}
@keyframes ctBlink{50%{opacity:0}}
.ct-gg-chips{display:flex;flex-wrap:wrap;gap:8px;padding:14px 18px 18px;border-top:1px dashed var(--ct-ln)}
.ct-gg-chip{display:inline-flex;align-items:center;gap:7px;background:none;border:1px solid #2E3344;color:#C9CBD3;padding:8px 12px;font:500 13.5px var(--f-sans);transition:all .25s}
.ct-gg-chip i{font-style:normal;width:18px;height:18px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center;font-size:12px;transition:transform .3s}
.ct-gg-chip:hover{border-color:#6E7286}
.ct-gg-chip[aria-pressed="true"]{border-color:var(--ct-o);color:#fff;background:rgba(255,91,26,.12)}
.ct-gg-chip[aria-pressed="true"] i{transform:rotate(45deg);color:var(--ct-o)}
.ct-gg-meter{display:grid;justify-items:center;text-align:center;gap:10px}
.ct-gg-say{font:600 22px var(--f-sans);color:#fff}
.ct-gg-tip{color:var(--fg-2);font-size:15px;max-width:30ch}
.ct-gg-use{display:inline-flex;align-items:center;gap:10px;background:var(--ct-o);border:0;color:#fff;padding:12px 18px;font:500 15px var(--f-sans);margin-top:6px}
.ct-gg-use:hover{background:#E84A0C}.ct-gg-use i{font-style:normal}
@media (max-width:900px){.ct-gg{grid-template-columns:1fr}.ct-gg-meter{order:-1}.ct-gg-meter svg{max-width:280px}}
@media (max-width:480px){.ct-gg-msg{font-size:15.5px;min-height:200px;padding:18px 16px 8px}.ct-gg-chips{padding:12px 14px 16px}}

/* ── form morph ── */
.ct-fm{position:relative;display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(24px,4vw,48px);align-items:start}
.ct-fm>*{min-width:0}
.ct-fm-form{background:#fff;border:1px solid var(--paper-line);padding:clamp(20px,3vw,36px);display:grid;gap:18px;transition:transform .6s cubic-bezier(.5,0,.3,1),opacity .5s}
.ct-fm-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ct-fm-f{display:grid;gap:7px}
.ct-fm-f span{font:500 14px var(--f-sans);color:var(--ink)}
.ct-fm-f input,.ct-fm-f textarea,.ct-fm-f select{font:400 16px var(--f-sans);color:var(--ink);background:#FBFAF8;border:1px solid #CFCAC2;padding:12px 14px;border-radius:0;width:100%;box-sizing:border-box;transition:border-color .2s,background .2s}
.ct-fm-f input:focus,.ct-fm-f textarea:focus,.ct-fm-f select:focus{outline:none;border-color:var(--ink);background:#fff;box-shadow:0 2px 0 var(--ct-o)}
.ct-fm-f textarea{resize:vertical;min-height:120px}
.ct-fm-f.bad input,.ct-fm-f.bad textarea{border-color:var(--ct-oi)}
.ct-fm-need{border:0;padding:0;margin:0}
.ct-fm-need legend{font:500 14px var(--f-sans);color:var(--ink);margin-bottom:9px;padding:0}
.ct-fm-seg{display:flex;flex-wrap:wrap;gap:6px}
.ct-fm-seg button{background:#FBFAF8;border:1px solid #CFCAC2;padding:10px 14px;font:500 14px var(--f-sans);color:var(--ink-2);transition:all .25s}
.ct-fm-seg button:hover{border-color:var(--ink)}
.ct-fm-seg button[aria-checked="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.ct-fm-xs{display:grid}
.ct-fm-x{grid-area:1/1;display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .5s cubic-bezier(.5,0,.3,1),opacity .35s,visibility .35s}
.ct-fm-x>div{overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:2px}
.ct-fm-x.on{grid-template-rows:1fr;opacity:1;visibility:visible;transition-delay:.12s}
.ct-fm-x .ct-fm-f{transform:translateY(8px);transition:transform .45s .15s}
.ct-fm-x.on .ct-fm-f{transform:none}
.ct-fm-none{grid-column:1/-1;font-size:15px;color:var(--ink-2);background:#F5F2EE;padding:12px 14px;border-left:2px solid var(--ct-o)}
.ct-fm-go{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ct-fm-go span{font-size:14.5px;color:var(--ink-2)}
.ct-fm-send{display:inline-flex;align-items:center;gap:12px;background:var(--ct-o);color:#fff;border:0;padding:15px 24px;font:500 16px var(--f-sans);transition:background .2s}
.ct-fm-send:hover{background:#E84A0C}.ct-fm-send i{font-style:normal}
.ct-fm-err{font:500 14px var(--f-sans);color:var(--ct-oi);min-height:0}
.ct-fm-side{display:grid;gap:16px;position:sticky;top:calc(var(--hh) + 24px)}
.ct-fm-card{background:var(--night);color:#fff;padding:24px;display:grid;gap:8px}
.ct-fm-card svg{width:96px;height:84px;fill:none;stroke:var(--ct-pe);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px}
.ct-fm-ic{opacity:0;transform:scale(.6) rotate(-8deg);transform-origin:40px 35px;transition:opacity .4s,transform .5s cubic-bezier(.3,1.4,.5,1)}
.ct-fm-ic.on{opacity:1;transform:none}
.ct-fm-card small{font:500 12px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#8E93A6}
.ct-fm-nm{font:600 24px var(--f-sans)}
.ct-fm-hint{color:var(--fg-2);font-size:15px}
.ct-fm-mail{border:1px solid var(--paper-line);background:#fff;padding:18px 20px;display:grid;gap:4px}
.ct-fm-mail small{font:500 12px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ct-oi)}
.ct-fm-mail a{font:600 17px var(--f-sans);color:var(--ink);border-bottom:1px solid var(--ct-o);justify-self:start}
.ct-fm.sent .ct-fm-form{transform:perspective(900px) rotateX(70deg) scale(.6);opacity:0;pointer-events:none}
.ct-fm-done{position:absolute;left:0;top:0;width:calc(65% - 20px);display:grid;justify-items:start;gap:12px;background:#fff;border:1px solid var(--paper-line);border-top:3px solid var(--ct-o);padding:clamp(24px,3vw,40px);animation:ctIn .6s .3s both}
.ct-fm-done h3{font:600 26px var(--f-sans)}
.ct-fm-done p{color:var(--ink-2)}.ct-fm-done a{color:var(--ink);border-bottom:1px solid var(--ct-o)}
.ct-fm-again{background:none;border:1px solid var(--paper-line);padding:10px 16px;font:500 14px var(--f-sans)}
.ct-fm-fold{width:70px;height:46px;position:relative;margin-bottom:6px}
.ct-fm-fold i{position:absolute;inset:0;border:2px solid var(--ink)}
.ct-fm-fold i:last-child{border:0;background:linear-gradient(to bottom right,transparent 49%,var(--ink) 49%,var(--ink) 51%,transparent 51%),linear-gradient(to bottom left,transparent 49%,var(--ink) 49%,var(--ink) 51%,transparent 51%);background-size:50% 100%;background-repeat:no-repeat;background-position:0 0,100% 0;height:60%}
@media (max-width:900px){.ct-fm{grid-template-columns:1fr}.ct-fm-side{position:static}.ct-fm-done{width:100%}}
@media (max-width:560px){.ct-fm-row,.ct-fm-x>div{grid-template-columns:1fr}.ct-fm-seg button{padding:9px 11px;font-size:13.5px}}

/* ── after send: dealt cards ── */
.ct-af{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,4vw,64px);align-items:center}
.ct-af>*{min-width:0}
.ct-af-rail{list-style:none;margin:0;padding:0;display:grid;gap:4px;position:relative}
.ct-af-rail::before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:2px;background:#22263A}
.ct-af-rail button{display:flex;align-items:center;gap:14px;background:none;border:0;padding:10px 0;color:#8E93A6;font:500 16px var(--f-sans);text-align:left;position:relative}
.ct-af-rail button i{font-style:normal;flex:none;width:36px;height:36px;border-radius:50%;background:var(--night);border:2px solid #2E3344;display:grid;place-items:center;font:600 14px var(--f-sans);transition:all .3s}
.ct-af-rail button.done i{border-color:var(--ct-o);color:var(--ct-pe)}
.ct-af-rail button[aria-pressed="true"]{color:#fff}
.ct-af-rail button[aria-pressed="true"] i{background:var(--ct-o);border-color:var(--ct-o);color:#fff;box-shadow:0 0 0 6px rgba(255,91,26,.18)}
.ct-af-table{position:relative;overflow:hidden;height:clamp(340px,30vw,380px);display:grid;place-items:center;background:radial-gradient(ellipse at 50% 60%,rgba(255,91,26,.12),transparent 65%)}
.ct-af-table{--ct-deckx:62%;--ct-decky:0px;place-items:center start;padding-left:4%}
.ct-af-pile{all:unset;position:relative;width:min(400px,60%);height:270px;cursor:pointer}
.ct-af-card>*{transition:opacity .3s .25s}
.ct-af-card.down{background:repeating-linear-gradient(45deg,#1A1D29 0 8px,#141722 8px 16px);border-top-color:#4A5068}
.ct-af-card.down>*{opacity:0;transition-delay:0s}
.ct-af-card.down::after{content:"web/crea";position:absolute;inset:auto 0 50% 0;text-align:center;font:700 18px var(--f-flex);color:#3A3F52}
.ct-af-pile:focus-visible{outline:2px solid var(--ct-o);outline-offset:8px}
.ct-af-card{position:absolute;inset:0;background:#151823;border:1px solid #2E3344;border-top:3px solid var(--ct-o);padding:22px 24px;display:grid;gap:8px;align-content:start;box-shadow:0 24px 40px -24px rgba(0,0,0,.9);transition:transform .7s cubic-bezier(.3,1.1,.4,1),opacity .5s;transform:translate(var(--dx,0),var(--dy,0)) rotate(var(--r,0deg));opacity:var(--op,1)}
.ct-af-top{display:flex;justify-content:space-between;align-items:start}
.ct-af-top svg{width:48px;height:48px;fill:none;stroke:var(--ct-pe);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ct-af-top span{font:500 12.5px var(--f-sans);color:#6E7286}
.ct-af-card small{font:500 12.5px var(--f-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ct-pe);margin-top:4px}
.ct-af-card p{font:500 17px/1.5 var(--f-sans);color:#fff}
.ct-af-hint{position:absolute;bottom:4px;right:8px;font:500 12px var(--f-sans);color:#6E7286}
@media (max-width:900px){.ct-af{grid-template-columns:1fr}.ct-af-table{height:360px}}
@media (max-width:640px){.ct-af-table{--ct-deckx:0px;--ct-decky:-18px;place-items:center;padding:30px 0 0}.ct-af-pile{width:92%}}
@media (max-width:480px){.ct-af-pile{height:300px}.ct-af-card p{font-size:15.5px}}

/* ── prepare: envelope ── */

/* ── channels: radio tuner ── */
.ct-tn-radio{max-width:980px;margin:0 auto;background:linear-gradient(#171A25,#0E1018);border:1px solid #2E3344;border-radius:18px;padding:clamp(18px,3vw,32px);display:grid;grid-template-columns:1fr 160px;grid-template-areas:"lcd grill" "band band";gap:22px;box-shadow:0 40px 70px -40px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06)}
.ct-tn-lcd{grid-area:lcd;background:#120B07;border:1px solid #3A2414;border-radius:8px;padding:18px 22px;display:grid;grid-template-columns:70px 1fr;gap:20px;align-items:center;box-shadow:inset 0 0 30px rgba(255,91,26,.12)}
.ct-tn-sig{display:flex;align-items:end;gap:3px;height:60px}
.ct-tn-sig i{flex:1;background:var(--ct-o);opacity:.85;height:calc(10% + var(--b) * 5%);border-radius:1px;transform-origin:bottom;animation:ctSig 1.2s ease-in-out infinite alternate;animation-delay:calc(var(--b) * -.13s)}
.ct-tn.noisy .ct-tn-sig i{opacity:.3}
@keyframes ctSig{from{transform:scaleY(.3)}to{transform:scaleY(1)}}
.ct-tn-os{display:grid}
.ct-tn-o{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;display:grid;gap:4px}
.ct-tn-o.on{opacity:1;visibility:visible}
.ct-tn-o small{font:500 11.5px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#B5683F}
.ct-tn-o b{font:600 clamp(20px,2.2vw,28px)/1.2 var(--f-sans);color:var(--ct-pe);text-shadow:0 0 14px rgba(255,91,26,.45)}
.ct-tn-o b a{color:inherit;border-bottom:1px solid rgba(255,167,127,.5)}
.ct-tn-o p{font-size:14.5px;color:#C99A80}
.ct-tn-grill{grid-area:grill;border-radius:10px;background:radial-gradient(circle,#2E3344 1.6px,transparent 2px) 0 0/10px 10px;border:1px solid #22263A}
.ct-tn-band{grid-area:band;position:relative;height:96px;background:#0A0B10;border:1px solid #22263A;border-radius:8px;touch-action:none;cursor:ew-resize;user-select:none}
.ct-tn-scale{position:absolute;left:4%;right:4%;top:10px;height:22px}
.ct-tn-scale i{position:absolute;top:0;width:1px;height:10px;background:#3A3F52}
.ct-tn-scale i.ct-tn-big{height:20px;background:#6E7286}
.ct-tn-sts{position:absolute;left:4%;right:4%;bottom:12px;height:40px}
.ct-tn-st{position:absolute;left:var(--x);transform:translateX(-50%);bottom:0;background:none;border:1px solid #2E3344;color:#8E93A6;padding:8px 12px;font:600 13.5px var(--f-sans);border-radius:4px;transition:all .25s}
.ct-tn-st:hover{color:#fff;border-color:#6E7286}
.ct-tn-st[aria-pressed="true"]{color:#fff;border-color:var(--ct-o);background:rgba(255,91,26,.14)}
.ct-tn-needle{position:absolute;top:4px;bottom:4px;width:3px;margin-left:-1.5px;left:calc(4% + 92% * var(--p,.12));background:var(--ct-o);box-shadow:0 0 12px var(--ct-o);border-radius:2px;transition:left .6s cubic-bezier(.4,0,.2,1);pointer-events:none}
.ct-tn-band.drag .ct-tn-needle{transition:none}
@media (max-width:700px){.ct-tn-radio{grid-template-columns:1fr;grid-template-areas:"lcd" "band"}.ct-tn-grill{display:none}.ct-tn-lcd{grid-template-columns:1fr;gap:12px}.ct-tn-sig{height:30px}.ct-tn-st{padding:7px 8px;font-size:12px}}

@media (prefers-reduced-motion:reduce){
  .ct-ck *,.ct-ct *,.ct-gg *,.ct-fm *,.ct-af *,.ct-pb *,.ct-tn *{transition:none!important;animation:none!important}
}
@media (max-width:560px){
  .ct-ck-stage{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .ct-ck-svg{grid-column:1/-1;margin:0 -6px}
  .ct-ck-msg,.ct-ck-reply{position:static;max-width:none;transform:none!important}
  .ct-ck-reply{order:3;opacity:.35}.ct-ck-msg{order:2}
}

/* ── what to write: mixing bowl ── */
.ct-gg-meter svg{width:100%;max-width:340px;overflow:visible}
.ct-gg-bowl{fill:none;stroke:#C9CBD3;stroke-width:3}
.ct-gg-rim{stroke:#C9CBD3;stroke-width:4;stroke-linecap:round}
.ct-gg-batter{transform:translateY(206px);transition:transform 1s cubic-bezier(.3,1.3,.5,1)}
.ct-gg-wave{fill:var(--ct-o);animation:ctWave 3s linear infinite}
@keyframes ctWave{to{transform:translateX(150px)}}
.ct-gg-drop circle{fill:var(--ct-pe);opacity:0}
.ct-gg-drop.go circle{animation:ctDrop .7s cubic-bezier(.5,0,1,1)}
@keyframes ctDrop{0%{opacity:1;transform:translateY(-10px)}90%{opacity:1}100%{opacity:0;transform:translateY(150px)}}
.ct-gg-spoon{transform-box:view-box;transform-origin:210px 20px}
.ct-gg-spoon path{stroke:#8E93A6;stroke-width:5;stroke-linecap:round}.ct-gg-spoon ellipse{fill:#8E93A6}
.ct-gg-spoon.stir{animation:ctStir .9s ease-in-out}
@keyframes ctStir{25%{transform:rotate(-10deg)}75%{transform:rotate(8deg)}}
.ct-gg-lv{font:500 12px var(--f-sans);fill:#8E93A6}
@media (max-width:900px){.ct-gg-meter svg{max-width:260px}}

/* ── prepare: pegboard ── */
.ct-pb-board{background-color:#D9C6AE;background-image:radial-gradient(circle,#A88C6C 2.2px,transparent 2.8px);background-size:24px 24px;border:10px solid #B79E7F;padding:clamp(18px,3vw,36px);box-shadow:inset 0 0 30px rgba(94,71,51,.25),0 30px 40px -30px rgba(11,12,16,.5)}
.ct-pb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,26px)}
.ct-pb-s{all:unset;box-sizing:border-box;position:relative;cursor:pointer;min-height:150px;display:grid}
.ct-pb-s:focus-visible{outline:2px solid var(--ct-oi);outline-offset:4px}
.ct-pb-ghost{grid-area:1/1;display:grid;place-items:center;border:2px dashed rgba(94,71,51,.45);border-radius:10px}
.ct-pb-ghost svg{width:56px;height:56px;fill:none;stroke:rgba(94,71,51,.5);stroke-width:2;stroke-dasharray:4 4}
.ct-pb-item{grid-area:1/1;position:relative;display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;background:#fff;border:1px solid #CDBBA5;border-radius:10px;padding:26px 18px 18px;box-shadow:0 14px 24px -14px rgba(11,12,16,.5);transform-origin:50% 0;transform:translateY(60px) rotate(8deg) scale(.85);opacity:0;transition:transform .7s cubic-bezier(.3,1.6,.5,1),opacity .35s}
.ct-pb-s[aria-pressed="true"] .ct-pb-item{transform:none;opacity:1;animation:ctSwing 1.2s ease-out .4s}
@keyframes ctSwing{20%{transform:rotate(-4deg)}45%{transform:rotate(2.5deg)}70%{transform:rotate(-1deg)}}
.ct-pb-hook{position:absolute;left:50%;top:-9px;width:18px;height:18px;margin-left:-9px;border-radius:50%;border:3px solid #6E7286;background:#D9C6AE}
.ct-pb-item svg{width:44px;height:44px;fill:none;stroke:var(--ct-oi);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ct-pb-item b{font:500 15px/1.4 var(--f-sans);color:var(--ink)}
.ct-pb-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}
.ct-pb-ct{font:500 15px var(--f-sans);color:var(--ink-2)}.ct-pb-ct b{font:700 22px var(--f-flex);color:var(--ct-oi)}
.ct-pb-all{background:var(--ink);color:#fff;border:0;padding:10px 16px;font:500 14px var(--f-sans)}
.ct-pb-all:hover{background:#2A2D38}
@media (max-width:900px){.ct-pb-grid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.ct-pb-board{border-width:6px;padding:14px}.ct-pb-grid{gap:12px}.ct-pb-item{grid-template-columns:1fr;gap:8px;padding:22px 12px 12px}.ct-pb-item b{font-size:13.5px}.ct-pb-s{min-height:170px}}
.ct-gg-meter{overflow:hidden;padding-top:12px}

/* QA fixes (Q3) */
.ct-fm-x>div{padding:2px 0 3px}
.ct-gg-l em{white-space:nowrap;display:inline-block;line-height:1.5}
.ct-ct-n b{min-width:0}
@media (max-width:640px){.ct-af-table{height:auto;padding:36px 0 40px}}
.ct-fm-mail a{padding:3px 0 1px}
/* widths pass: at 360 "Then you decide" wrapped and pushed its number below the others */
@media (max-width:379px){.ct-ct-step{letter-spacing:.03em;white-space:nowrap;font-size:11px;gap:6px}}
/* phone font pass (+3px small text): station buttons got too wide for one row, so every second one sits on a raised row */
@media (max-width:600px){
  .ct-tn-band{height:132px}
  .ct-tn-sts{height:86px}
  .ct-tn-st{padding:7px 9px;white-space:nowrap}
  .ct-tn-st:nth-child(2n){bottom:46px}
  .ct-gg-lv{font-size:15px}
  .ct-tn-o b a{display:inline-block;padding:2px 0}
}

/* sending + error states */
.ct-fm-send[aria-busy=true]{opacity:.75;cursor:progress}
.ct-fm-err a{color:inherit;border-bottom:1px solid currentColor}
