/* Private sign-up pages, one per service (/start/<service>/). Matt sends the link; nothing on the site points here. */
:root{
  color-scheme:dark;
  --ink:#0F0E0C;--ink-2:#181613;--line:#FFC21A;--on-line:#0F0E0C;--paper:#F3EEE5;--mute:#ABA398;--soft:#DDD6CB;--rule:rgba(243,238,229,.14);
  --display:"Archivo","Arial Black",Impact,sans-serif;
  --label:"Bebas Neue","Oswald","Arial Narrow",Impact,sans-serif;
  --sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --gut:clamp(16px,4vw,56px);
  --cut:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));
  --cut-l:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{background:var(--ink);-webkit-text-size-adjust:100%}
body{margin:0;min-height:100svh;background:transparent;color:var(--paper);font:400 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip;display:flex;flex-direction:column}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:url(/assets/monument-valley.jpg) center 62%/cover no-repeat;filter:grayscale(.4) contrast(1.05) brightness(.42)}
body::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,14,12,.5) 0%,rgba(15,14,12,.35) 35%,rgba(15,14,12,.92) 100%)}
a{color:inherit}
p{margin:0}
.top{display:flex;align-items:center;justify-content:space-between;padding:18px var(--gut)}
.badge{display:grid;place-items:center;width:62px;height:40px;background:var(--line);clip-path:var(--cut)}
.badge svg{width:26px;height:24px;fill:var(--ink)}
.top .ttl{font:400 15px/1 var(--label);letter-spacing:.16em;color:var(--soft)}
main{flex:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:center;width:100%;max-width:1180px;margin:0 auto;padding:clamp(16px,4vw,48px) var(--gut) clamp(40px,6vw,72px)}
.lbl{font:400 15px/1 var(--label);letter-spacing:.14em;text-transform:uppercase;color:var(--line)}
h1{font:900 clamp(48px,6.4vw,92px)/.88 var(--display);font-stretch:72%;text-transform:uppercase;letter-spacing:-.005em;margin:14px 0 0}
.hi{font:400 clamp(20px,2vw,24px)/1.2 var(--sans);color:var(--paper);margin-top:22px}
.lede{color:var(--soft);margin-top:14px;max-width:40ch;font-size:clamp(17px,1.4vw,19px)}
.price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin-top:26px}
.price b{white-space:nowrap;font:400 clamp(36px,3.4vw,48px)/1 var(--label);letter-spacing:.02em;color:var(--line)}
.price small{font:400 15px/1 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.how{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:10px;max-width:42ch}
.how li{display:grid;grid-template-columns:28px 1fr;gap:10px;color:var(--soft);font-size:15.5px;line-height:1.45}
.how li span{font:400 17px/1.3 var(--label);color:var(--line);letter-spacing:.08em}
.card{background:rgba(24,22,19,.92);border:1px solid var(--rule);clip-path:var(--cut-l);padding:clamp(22px,3vw,36px)}
form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:grid;gap:7px;font:400 16px/1 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
label.full{grid-column:1/-1}
label i{font-style:normal;color:var(--mute);letter-spacing:.08em}
input,textarea,select{width:100%;font:400 16.5px/1.4 var(--sans);color:var(--paper);background:var(--ink);border:1px solid var(--rule);border-radius:0;padding:14px 15px;outline:none;transition:border-color .15s;appearance:none;-webkit-appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,var(--line) 50%),linear-gradient(135deg,var(--line) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
textarea{min-height:120px;resize:vertical}
textarea.one{min-height:0;resize:none;overflow:hidden}
input:focus,textarea:focus,select:focus{border-color:var(--line)}
input::placeholder,textarea::placeholder{color:#6f685f}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#tsBox{grid-column:1/-1}
#tsBox:empty{display:none}
.go{grid-column:1/-1;display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:4px}
.btn{display:inline-flex;align-items:center;gap:12px;background:var(--line);color:var(--on-line);font:400 22px/1 var(--label);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:17px 24px 15px;clip-path:var(--cut);border:0;cursor:pointer;transition:transform .15s ease,background .15s ease}
.btn:hover{transform:translateY(-2px);background:#ffd04a}
.btn:disabled{opacity:.6;cursor:wait;transform:none}
.btn svg{width:22px;height:14px;stroke:currentColor;fill:none;stroke-width:2.4}
.msg{font-size:15px;color:var(--line);min-height:1.4em}
.up{grid-column:1/-1;display:grid;gap:7px}
.goals{grid-column:1/-1;display:grid;gap:7px}
.goals ol{list-style:none;padding:0;margin:0;display:grid;gap:8px;counter-reset:g}
.goals li{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:8px;counter-increment:g}
.goals li::before{content:counter(g);font:400 18px/1 var(--label);color:var(--line);letter-spacing:.06em}
.vh{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.up-l{font:400 16px/1 var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.up-b{display:flex;align-items:center;gap:14px;flex-wrap:wrap;cursor:pointer;font:inherit;letter-spacing:0;text-transform:none}
.btn.ink{background:var(--ink);color:var(--line)}
.btn.ink:hover{background:#000;transform:none}
.up-btn{font-size:19px;padding:14px 20px 12px;border:1px solid var(--line);clip-path:none}
.up-b:hover .up-btn{background:#000}
.up-b:focus-within .up-btn{outline:2px solid var(--line);outline-offset:2px}
.up-n{font:400 14.5px/1.4 var(--sans);color:var(--mute);overflow-wrap:anywhere}
.up-n.on{color:var(--paper)}
.legal{grid-column:1/-1;font-size:12.5px;color:var(--mute)}
.legal a{color:var(--soft)}
.sent{grid-column:1/-1;border-left:4px solid var(--line);padding:8px 0 8px 22px;font-size:18px;line-height:1.5}
.sent b{display:block;font:900 clamp(34px,4vw,44px)/.9 var(--display);font-stretch:72%;text-transform:uppercase;color:var(--line);margin-bottom:12px}
.sent a{color:var(--line)}
.sent .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.sent .acts .btn{color:var(--on-line);font-size:19px;padding:15px 20px 13px}
.sent .acts .btn.ink{color:var(--line);border:1px solid var(--line);clip-path:none}
.foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:18px var(--gut) calc(18px + env(safe-area-inset-bottom));font-size:13px;color:var(--mute);border-top:1px solid var(--rule)}
.foot a{color:var(--soft)}
@media (max-width:860px){
  main{grid-template-columns:1fr;align-items:start}
  .how{display:none}
}
@media (max-width:520px){
  form{grid-template-columns:1fr}
  .btn{width:100%;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){.btn{transition:none}}
