@font-face{font-family:Archivo;src:url('assets/fonts/archivo-latin.woff2') format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:Hanken;src:url('assets/fonts/hanken-grotesk-latin.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--orange:#de3a11;--paper:#f4f1e9;background:#080908;color:var(--paper);font-family:Hanken,Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:#080908}a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:1px solid var(--orange);outline-offset:4px}
#cf{position:fixed;inset:0;z-index:0;width:100%;height:100%;pointer-events:none}

.ct-bar{position:fixed;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:30px 3.8vw;pointer-events:none}
.ct-bar>*{pointer-events:auto}
.wordmark{font-family:Archivo,sans-serif;font-size:39px;font-weight:800;letter-spacing:-3px;line-height:1}
.wordmark span{display:inline-block;vertical-align:top;font-size:10px;color:var(--orange);margin:4px 0 0 5px;letter-spacing:0}
.ct-back{position:relative;display:block;width:50px;height:50px;border:1px solid #ffffff38;background:#08090899;transition:border-color .3s}
.ct-back:hover{border-color:var(--orange)}
.ct-back-icon{position:absolute;left:50%;top:50%}
.ct-back-icon i,.ct-back-icon::before,.ct-back-icon::after{content:'';position:absolute;width:3.5px;height:3.5px;margin:-1.75px;background:var(--paper)}
.ct-back-icon i:nth-child(1){transform:translate(-8px,0);background:var(--orange)}.ct-back-icon i:nth-child(2){transform:translate(-4px,0)}.ct-back-icon i:nth-child(3){transform:translate(0,0)}.ct-back-icon i:nth-child(4){transform:translate(4px,0)}.ct-back-icon i:nth-child(5){transform:translate(8px,0)}
.ct-back-icon::before{transform:translate(-4px,-4px)}.ct-back-icon::after{transform:translate(-4px,4px)}
.ct-back:hover .ct-back-icon{animation:ct-nudge 1s ease-in-out infinite}
@keyframes ct-nudge{50%{transform:translateX(-4px)}}

.ct{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,30%) minmax(0,1fr);gap:6vw;min-height:100svh;padding:20vh 3.8vw 9vh}
.ct-aside{display:flex;flex-direction:column}
.ct-kicker{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 26px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#8c9087}
.ct-kicker span:first-child{color:var(--paper)}
.ct-kicker span:first-child::before{content:'';display:inline-block;width:6px;height:6px;margin:0 12px 1px 0;background:var(--orange)}
.ct-status::before{content:'';display:inline-block;width:6px;height:6px;margin:0 10px 1px 0;border-radius:50%;background:#3ccf74;animation:ct-pulse 2s ease-in-out infinite}
@keyframes ct-pulse{50%{opacity:.3}}
.ct-intro{max-width:360px;margin:0;font:400 clamp(19px,1.5vw,24px)/1.3 Archivo,sans-serif;letter-spacing:-.025em;color:#d6d3c8}
/* The rail: stations joined by the particle signal (drawn by contact.js). */
.ct-rail{display:grid;gap:30px;margin:7vh 0 0;padding:0 0 0 26px;list-style:none}
.ct-rail button{position:relative;display:flex;align-items:baseline;gap:14px;padding:0;border:0;background:none;color:#787e72;font:inherit;text-align:left;cursor:pointer;transition:color .3s}
.ct-rail button:disabled{cursor:default}
.ct-rail i{position:absolute;left:-31px;top:4px;width:10px;height:10px;border:1px solid #ffffff4d;background:#080908;transition:border-color .4s,background-color .4s,transform .5s cubic-bezier(.16,1,.3,1)}
.ct-rail span{font-size:10px;letter-spacing:2px}
.ct-rail b{font:500 16px Archivo,sans-serif;letter-spacing:-.2px;color:#8c9087;transition:color .3s}
.ct-rail button.done i{border-color:var(--orange);background:var(--orange)}
.ct-rail button.done b{color:#c9c7bd}
.ct-rail button[aria-current=step] i{border-color:var(--orange);transform:rotate(45deg) scale(1.3)}
.ct-rail button[aria-current=step]{color:var(--orange)}
.ct-rail button[aria-current=step] b{color:var(--paper)}
.ct-alt{margin:auto 0 0;padding-top:6vh;font-size:13px;color:#8c9087}
.ct-alt a{color:var(--paper);border-bottom:1px solid #ffffff38}
.ct-alt a:hover{border-color:var(--orange)}

.ct-form{position:relative;display:flex;flex-direction:column;min-height:58vh}
.ct-step{margin:0;padding:0;border:0;min-width:0;animation:ct-in .7s cubic-bezier(.16,1,.3,1)}
@keyframes ct-in{from{opacity:0;transform:translateY(22px)}}
.ct-q{display:block;margin:0 0 14px;padding:0;font:400 clamp(30px,3.2vw,52px)/1.05 Archivo,sans-serif;letter-spacing:-.045em}
.ct-qk{display:block;margin:0 0 18px;font:400 10px Hanken,sans-serif;letter-spacing:2.2px;text-transform:uppercase;color:var(--orange)}
.ct-hint{max-width:520px;margin:0 0 4vh;font-size:14px;line-height:1.6;color:#a7aaa0}
.ct-hint a{color:var(--paper);border-bottom:1px solid #ffffff38}
.ct-sub{margin:4vh 0 14px;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:#c9c7bd}
.ct-chips{display:flex;flex-wrap:wrap;gap:10px;max-width:760px}
.ct-chips button{position:relative;padding:13px 18px 13px 34px;border:1px solid #ffffff2e;background:#08090899;color:#c9c7bd;font:14px Hanken,sans-serif;cursor:pointer;transition:border-color .25s,color .25s,background-color .25s}
.ct-chips button::before{content:'';position:absolute;left:14px;top:50%;width:7px;height:7px;margin-top:-3.5px;border:1px solid #ffffff59;transition:background-color .25s,border-color .25s,transform .4s cubic-bezier(.16,1,.3,1)}
.ct-chips button:hover{border-color:#ffffff73;color:var(--paper)}
.ct-chips button[aria-pressed=true]{border-color:var(--orange);background:#de3a1114;color:var(--paper)}
.ct-chips button[aria-pressed=true]::before{border-color:var(--orange);background:var(--orange);transform:rotate(45deg)}
.ct-field{position:relative;display:block}
.ct-field>span{display:block;margin-bottom:10px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#8c9087}
.ct-field em{font-style:normal;color:#5d6258;margin-left:6px}
.ct-field input,.ct-field textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid #ffffff38;border-radius:0;background:none;color:var(--paper);font:400 clamp(18px,1.4vw,22px)/1.4 Archivo,sans-serif;letter-spacing:-.02em;outline:none;transition:border-color .3s}
.ct-field textarea{resize:vertical;min-height:150px}
.ct-field input:focus,.ct-field textarea:focus{border-color:var(--orange)}
.ct-field input::placeholder,.ct-field textarea::placeholder{color:#4d5149}
.ct-field [aria-invalid=true]{border-color:#e0624a}
.ct-area{max-width:760px}
.ct-count{position:absolute;right:0;bottom:-24px;font-style:normal;font-size:10px;letter-spacing:1.4px;color:#5d6258}
.ct-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5vh 4vw;max-width:820px;margin-top:3vh}
.ct-err{min-height:20px;margin:22px 0 0;font-size:12px;letter-spacing:.6px;color:#e0624a}
.ct-review{display:grid;grid-template-columns:130px 1fr;gap:0;max-width:760px;margin:1vh 0 2vh;border-top:1px solid #ffffff1a}
.ct-review dt,.ct-review dd{margin:0;padding:11px 0;border-bottom:1px solid #ffffff1a}
.ct-review dt{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#8c9087}
.ct-review dd{display:flex;justify-content:space-between;gap:20px;font-size:14px;line-height:1.5;color:var(--paper);white-space:pre-wrap;word-break:break-word}
.ct-review dd button{flex:none;align-self:flex-start;padding:0;border:0;background:none;color:var(--orange);font:10px Hanken,sans-serif;letter-spacing:1.6px;text-transform:uppercase;cursor:pointer}
.ct-done{animation:ct-in .8s cubic-bezier(.16,1,.3,1);outline:none}
.ct-done-line{max-width:620px;margin:0 0 20px;font:400 clamp(24px,2.2vw,36px)/1.2 Archivo,sans-serif;letter-spacing:-.035em}
.ct-again{padding:0;border:0;border-bottom:1px solid #ffffff38;background:none;color:var(--paper);font:inherit;cursor:pointer}

.ct-nav{display:flex;align-items:center;gap:26px;margin-top:auto;padding-top:6vh}
.ct-prev{padding:0;border:0;background:none;color:#8c9087;font:11px Hanken,sans-serif;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:color .3s}
.ct-prev:hover{color:var(--paper)}.ct-prev[hidden]{display:none}
.ct-next{position:relative;display:flex;align-items:center;gap:18px;height:54px;padding:0 20px 0 24px;border:1px solid var(--orange);background:#de3a111a;color:var(--paper);font:500 16px Archivo,sans-serif;letter-spacing:-.2px;cursor:pointer;transition:background-color .3s}
.ct-next:hover,.ct-next:focus-visible{background:var(--orange);outline:none}
.ct-next-dots{position:relative;width:20px;height:12px}
.ct-next-dots i{position:absolute;width:3px;height:3px;background:var(--paper)}
.ct-next-dots i:nth-child(1){left:0;top:4.5px}.ct-next-dots i:nth-child(2){left:4px;top:4.5px}.ct-next-dots i:nth-child(3){left:8px;top:4.5px}.ct-next-dots i:nth-child(4){left:12px;top:4.5px}.ct-next-dots i:nth-child(5){left:16px;top:4.5px}.ct-next-dots i:nth-child(6){left:12px;top:.5px}.ct-next-dots i:nth-child(7){left:12px;top:8.5px}
.ct-next:hover .ct-next-dots{animation:ct-go .8s cubic-bezier(.76,0,.24,1) infinite}
@keyframes ct-go{45%{transform:translateX(10px);opacity:0}46%{transform:translateX(-10px);opacity:0}100%{transform:none;opacity:1}}
.ct-nav[hidden]{display:none}
.ct-num{position:absolute;right:0;bottom:0;width:min(34vw,520px);height:min(26vh,260px);pointer-events:none}

@media(max-width:860px){
  .ct-bar{padding:22px 23px}.wordmark{font-size:34px}.ct-back{width:46px;height:46px}
  .ct{grid-template-columns:1fr;gap:5vh;padding:15vh 23px 7vh}
  .ct-intro{font-size:18px}
  .ct-rail{display:flex;gap:0;justify-content:space-between;margin:4vh 0 0;padding:0}
  .ct-rail li{flex:1}
  .ct-rail button{flex-direction:column;align-items:flex-start;gap:6px;padding-top:22px}
  .ct-rail i{left:0;top:0}
  .ct-rail b{display:none}
  .ct-alt{display:none}
  .ct-grid{grid-template-columns:1fr;gap:4vh}
  .ct-review{grid-template-columns:1fr}.ct-review dt{padding-bottom:0;border-bottom:0}
  .ct-num{width:60vw;height:16vh;opacity:.8}
}
@media(prefers-reduced-motion:reduce){.ct-step,.ct-done{animation:none}.ct-status::before,.ct-back:hover .ct-back-icon,.ct-next:hover .ct-next-dots{animation:none}}
.ct-legal{display:block;margin-top:12px;font-size:12px;line-height:1.6;color:#6d7268}
.ct-legal a{color:#a7aaa0;border-bottom-color:#ffffff24}
