/* contact: a centred invitation, then the form straight away */
.chead{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(380px,56svh,620px);display:grid;align-items:end;text-align:center;background:var(--obsidian)}
.chead__media{position:absolute;inset:0;z-index:-2}
.chead__media img{width:100%;height:100%;object-fit:cover;object-position:50% 46%}
.chead::before{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(0deg,rgba(12,11,9,1) 0%,rgba(12,11,9,.78) 30%,rgba(12,11,9,.5) 60%,rgba(12,11,9,.78) 100%)}
.chead__inner{padding-top:calc(var(--header-h) + 48px);padding-bottom:clamp(40px,5vw,72px);display:grid;justify-items:center;gap:18px}
.chead .lede{color:var(--cream)}

.enquiry{padding-block:clamp(48px,6vw,104px) clamp(72px,8vw,136px)}
.enquiry__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(36px,6vw,120px);align-items:start}
.enquiry__head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:18px 32px;padding-bottom:clamp(22px,2.4vw,32px);border-bottom:1px solid var(--hair-l);margin-bottom:clamp(26px,3vw,40px)}
.progress{display:flex;gap:26px;font-weight:500;font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.progress li{display:flex;align-items:center;gap:10px;transition:color .25s ease}
.progress span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--hair-l);font-size:.75rem;letter-spacing:0;transition:background-color .25s ease,color .25s ease,border-color .25s ease}
.progress li.is-on{color:var(--ink)}
.progress li.is-on span{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.progress li.is-done span{background:var(--gold-ink);color:var(--ivory);border-color:var(--gold-ink)}

.fstep{border:0;padding:0;margin:0;min-width:0;display:grid;gap:clamp(20px,2.2vw,28px)}
.frow{display:grid;gap:clamp(18px,2vw,26px)}
.frow--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.field--set{border:0;padding:0;margin:0;min-width:0}
.field--set legend{margin-bottom:12px}
.factions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin-top:6px}
.back{font-weight:600;font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);padding:14px 4px;border-bottom:1px solid transparent;transition:color .2s ease}
@media (hover:hover) and (pointer:fine){.back:hover{color:var(--ink)}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.fstep:not([hidden]){animation:stepin .45s var(--ease-out) both}
@keyframes stepin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.done{padding-block:clamp(10px,2vw,28px);display:grid;gap:18px;justify-items:start;animation:stepin .5s var(--ease-out) both}
.done:focus{outline:none}
.done__note{font-size:.875rem;color:var(--ink-3);border:1px dashed var(--hair-l);padding:8px 12px}

.enquiry__trust{position:sticky;top:calc(var(--header-h) + 28px);display:grid;gap:clamp(26px,3vw,40px)}
.how{border-top:1px solid var(--hair-l)}
.how li{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:4px;padding-block:16px;border-bottom:1px solid var(--hair-l)}
.how .numeral{font-size:1.35rem;padding-top:.1em}
.how h3{font-family:var(--sans);font-weight:600;font-size:1rem;color:var(--ink)}
.how p{font-size:.9375rem;line-height:1.5;color:var(--ink-2);margin-top:2px}
.enquiry__trust .quote{padding-left:22px;border-left:1px solid rgba(125,95,28,.45)}
.enquiry__trust .quote blockquote{color:var(--ink)}
.enquiry__trust .quote figcaption{margin-top:14px}

.rep{border-top:1px solid var(--hair-d)}
.rep__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,6vw,120px);align-items:start}
.rep__grid .body{margin-top:8px}
.rep__card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--hair-d)}
.rep__card > div{padding:16px 0;border-bottom:1px solid var(--hair-d)}
.rep__card dt{font-weight:500;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-3);margin-bottom:4px}
.rep__card dd{color:var(--cream)}
.rep__card a{background:linear-gradient(var(--gold),var(--gold)) 0 100%/100% 1px no-repeat;padding-bottom:2px}

@media (max-width:960px){
  .enquiry__grid{grid-template-columns:1fr}
  .enquiry__trust{position:static}
  .rep__grid{grid-template-columns:1fr}
}
@media (max-width:600px){
  .frow--2{grid-template-columns:1fr}
  .rep__card{grid-template-columns:1fr}
  .progress{gap:16px;font-size:.6875rem}
  .factions .btn{width:100%}
  .chead{min-height:clamp(320px,50svh,480px)}
}

/* date: calendar by default, a rough-date box when the planner isn't sure yet */
.field .unsure{display:flex;align-items:center;gap:10px;margin-top:10px;min-height:44px;font-size:.9375rem;font-weight:400;letter-spacing:.01em;text-transform:none;color:var(--ink-2);cursor:pointer}
.field .unsure input{flex:none;width:20px;height:20px;min-height:0;padding:0;margin:0;border:0;background:none;box-shadow:none;-webkit-appearance:checkbox;appearance:auto;accent-color:var(--gold-ink)}
.ffail{color:#9b2c1f;font-size:.9375rem;margin:0 0 14px}
.ffail a{color:inherit;text-decoration:underline}
