/* Contact page, layered on ../style.css */
.nav-links a[aria-current="page"]{background:rgba(30,28,25,.07)}
.ct{position:relative;overflow:hidden;padding:128px 0 96px}
.ct>.wrap{z-index:2}
.ct-a{width:min(30vw,420px);height:min(30vw,420px);left:-10vw;top:300px;opacity:.95}
.ct-b{width:min(24vw,340px);height:min(12vw,170px);right:-5vw;top:96px}
.ct-c{width:min(16vw,230px);height:min(16vw,230px);right:-4vw;bottom:80px}
.ct-d{width:min(18vw,260px);height:min(9vw,130px);left:-4vw;bottom:40px}
.ct-head{text-align:center;padding-bottom:48px}
.ct-title{position:relative;z-index:2}
.ct-title .h2{font-size:clamp(40px,6.4vw,92px);letter-spacing:-.035em}
.ct-title .lead-p{margin:22px auto 0;max-width:540px}
.ct-title .eyebrow{margin-bottom:16px}
.ct-tiles{position:absolute;inset:0;pointer-events:none}
.ct-tiles .tile{width:210px;padding:12px 14px}
.ct-t1{left:1%;top:10px;rotate:-7deg;width:190px!important;padding:8px!important}
.ct-t2{right:3%;top:20px;rotate:5deg;animation-delay:-2s;width:auto!important}
.ct-t3{right:4%;top:150px;rotate:-4deg;animation-delay:-4s;width:auto!important}
.ct-t2 b,.ct-t3 b{font-weight:500;font-size:15px;white-space:nowrap}
.ct-ig{border-radius:14px;overflow:hidden;height:100px}
.ct-ig svg{width:100%;height:100%}

.ct-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:start}
.card{background:#fff;border-radius:36px;padding:clamp(24px,3.4vw,44px);box-shadow:0 30px 60px -34px rgba(30,28,25,.3),0 0 0 1px rgba(30,28,25,.04)}
.form-card:focus{outline:none}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;border:0;min-width:0}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label,legend{font-size:15px;font-weight:500;padding:0}
.req{color:var(--tiffd)}
input[type=text],input[type=email],select,textarea{font:inherit;font-size:17px;width:100%;color:var(--night);background:var(--canvas);border:1.5px solid transparent;border-radius:16px;padding:14px 16px;transition:border-color .25s,background .25s,box-shadow .25s}
input::placeholder{color:#9a968f}
textarea{resize:vertical;min-height:110px}
input:hover,select:hover,textarea:hover{border-color:rgba(30,28,25,.18)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--tiff);background:#fff;box-shadow:0 0 0 4px rgba(0,161,155,.2)}
.sel{position:relative}
.sel::after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:2px solid var(--night);border-bottom:2px solid var(--night);transform:translateY(-70%) rotate(45deg);pointer-events:none}
select{appearance:none;-webkit-appearance:none;padding-right:42px;cursor:pointer}
.invalid{border-color:#C8412B!important;background:#fff!important}
.err{color:#B3321E;font-size:14px;line-height:1.35}
.err[hidden]{display:none}
.form-err{color:#B3321E;background:#FDECE8;border-radius:16px;padding:12px 16px;font-size:14px;line-height:1.4;margin:0 0 16px}
.form-err[hidden]{display:none}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.chips legend{margin-bottom:10px}
.chip-row{display:flex;flex-wrap:wrap;gap:10px}
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;z-index:1;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:99px;background:var(--canvas);font-size:15px;font-weight:500;box-shadow:inset 0 0 0 1.5px transparent;transition:background .25s,box-shadow .25s,transform .35s var(--ease)}
.chip:hover span{box-shadow:inset 0 0 0 1.5px rgba(30,28,25,.2)}
.chip input:checked+span{background:var(--tiff);color:var(--night);box-shadow:none}
.chip input:checked+span::before{content:"";width:10px;height:6px;border-left:2px solid var(--night);border-bottom:2px solid var(--night);transform:rotate(-45deg) translate(1px,-1px)}
.chip input:focus-visible+span{outline:3px solid var(--tiff);outline-offset:3px}
.chip input:active+span{transform:scale(.96)}
.submit-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:8px}
.note{font-size:14px;color:var(--gray)}
.form-card button.btn{cursor:pointer}
.form-card button.btn:disabled{cursor:progress;opacity:.7}

.thanks{text-align:center;padding:36px 0 20px}
.thanks[hidden]{display:none}
.thanks-vix{--s:96px;margin:0 auto 22px;animation:pop .8s var(--ease) both}
@keyframes pop{from{transform:scale(.6) rotate(-12deg);opacity:0}}
.thanks h2{font-weight:400;font-size:clamp(30px,4vw,48px);letter-spacing:-.025em;line-height:1.1}
.thanks p{color:var(--gray);margin:14px auto 28px;max-width:360px;font-size:18px}

.ct-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:20px}
.call-card{background:color-mix(in srgb,var(--sun) 32%,#fff)}
.call-card h2{font-weight:400;font-size:clamp(24px,2.3vw,30px);letter-spacing:-.02em;margin-bottom:12px}
.call-card p{color:var(--gray);margin-bottom:22px}
.call-card .call-alt{margin:18px 0 0;font-size:15px}
.call-alt a{color:var(--night);font-weight:500;text-decoration:underline;text-decoration-color:var(--tiff);text-decoration-thickness:2px;text-underline-offset:4px}
.call-alt a:hover{color:var(--tiffd)}
.next-card h2{font-weight:400;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.02em;margin-bottom:24px}
.steps{list-style:none;display:flex;flex-direction:column;gap:20px}
.steps li{display:flex;gap:16px;align-items:flex-start}
.steps p{padding-top:4px}
.num{flex:none;width:36px;height:36px;border-radius:50%;background:var(--tiff);color:var(--night);display:grid;place-items:center;font-family:var(--mono);font-size:14px;font-weight:500}

@media (max-width:1180px){.ct-t3{display:none}.ct-t1{left:0}}
@media (max-width:960px){
  .ct-grid{grid-template-columns:1fr}
  .ct-side{position:static}
  .ct-tiles{display:none}
}
@media (max-width:640px){
  .ct{padding:96px 0 64px}
  .ct-head{padding-bottom:32px}
  .row2{grid-template-columns:1fr}
  .card{border-radius:28px}
  .ct-a{width:200px;height:200px;left:-90px;top:420px}
  .ct-b{width:190px;height:95px;right:-60px;top:70px}
  .ct-c{width:130px;height:130px;right:-50px}
  .ct-d{display:none}
  .submit-row .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.thanks-vix{animation:none!important}}
