/* ZERO11 Contact — project enquiry form. Loads after z11.css + articles.css (shared reveal system). */
:root{--f-in:clamp(20px,1.9vw,34px);--f-ch:clamp(28px,4.2vw,80px)}
.c-title{font-size:var(--f-hero);margin-left:var(--i)}
.form-sec{padding-top:clamp(64px,9vw,180px);padding-bottom:clamp(64px,8vw,160px)}
.form-lead{font-size:var(--f-ch);margin-left:var(--i)}
.form-block{margin:clamp(40px,5vw,96px) 0 0 var(--i)}
@media (max-width:699px){.c-title,.form-lead,.form-block{margin-left:0}}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,3.6vw,68px) clamp(28px,4vw,80px)}
.form[hidden]{display:none}
.field{display:block;min-width:0}
.field--full{grid-column:1/-1}
@media (max-width:759px){.form{grid-template-columns:1fr}}
.lbl,.field legend{display:block;font-size:var(--t-nav);font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:0;margin:0 0 .5em}
.lbl .req,.field legend .req{font-weight:400}
.hint{margin:.2em 0 .5em;font-size:var(--t-label);line-height:1.4;color:var(--zero11-dark);max-width:62ch}
.in,.sel,.ta{display:block;width:100%;font:400 var(--f-in)/1.25 var(--sans);letter-spacing:-.005em;color:var(--zero11-dark);background:transparent;border:0;border-bottom:1px solid rgba(0,0,0,.4);border-radius:0;padding:.45em 0 .5em;-webkit-appearance:none;appearance:none}
.in:hover,.sel:hover,.ta:hover{border-bottom-color:var(--zero11-dark)}
.in:focus,.sel:focus,.ta:focus{outline:2px solid var(--zero11-dark);outline-offset:6px;border-bottom-color:var(--zero11-dark)}
.has-error{border-bottom:3px solid var(--zero11-dark)!important}
.ta{min-height:9em;resize:vertical;border:1px solid rgba(0,0,0,.4);padding:.6em .7em;line-height:1.4}
.ta.has-error{border:3px solid var(--zero11-dark)!important}
.sel{padding-right:1.8em;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right .3em center}
.err{margin:.55em 0 0;font-size:var(--t-nav);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding-left:1.4em;position:relative}
.err::before{content:"!";position:absolute;left:0;top:0;width:1.1em;height:1.1em;line-height:1.1em;text-align:center;border:2px solid var(--zero11-dark);border-radius:50%;font-size:.78em;top:.05em}
.err[hidden]{display:none}
.checks{border:0;padding:0;margin:0;min-width:0}
.checks__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px clamp(28px,4vw,80px);margin-top:.4em}
@media (max-width:759px){.checks__grid{grid-template-columns:1fr}}
.chk{display:flex;align-items:flex-start;gap:.8em;font-size:var(--t-body);line-height:1.3;cursor:pointer;padding:.35em 0}
.chk input{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:1.25em;height:1.25em;margin:.05em 0 0;border:1.5px solid var(--zero11-dark);border-radius:0;background:transparent;display:grid;place-content:center;cursor:pointer}
.chk input::after{content:"";width:.7em;height:.7em;background:var(--zero11-dark);transform:scale(0)}
.chk input:checked::after{transform:scale(1)}
.chk input:focus-visible{outline:2px solid var(--zero11-dark);outline-offset:3px}
.checks.has-error{outline:3px solid var(--zero11-dark);outline-offset:8px;border-bottom:0!important}
.cond[hidden]{display:none}
.srcw{max-width:calc(50% - clamp(14px,2vw,40px))}
@media (max-width:759px){.srcw{max-width:none}}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.summary{grid-column:1/-1;margin:0;font-size:var(--t-body);font-weight:700;padding:.8em 0;border-top:3px solid var(--zero11-dark);border-bottom:3px solid var(--zero11-dark)}
.summary[hidden]{display:none}
.submit{grid-column:1/-1;display:flex;flex-direction:column;gap:clamp(16px,1.6vw,28px);align-items:flex-start}
.submit button.tlink{font-family:var(--sans);background:none;border:0;border-bottom:1px solid currentColor;padding-inline:0;cursor:pointer;color:inherit;display:inline-block}
.submit button.tlink:disabled{opacity:.5;cursor:default}
.legal{margin:0;font-size:var(--t-label);line-height:1.45;max-width:60ch}
.legal a{text-decoration:underline;text-underline-offset:.2em}
.thanks[hidden]{display:none}
.thanks{margin-left:var(--i);padding-block:clamp(24px,3vw,60px)}
.thanks h2{font-size:var(--f-h);line-height:1.02;outline:none}
.thanks .body{margin-top:clamp(22px,2.6vw,50px);max-width:min(46vw,820px)}
@media (max-width:699px){.thanks{margin-left:0}.thanks .body{max-width:none}}
.alt{margin:clamp(72px,9vw,180px) 0 0;padding-top:clamp(24px,2.6vw,48px);border-top:1px solid rgba(0,0,0,.2);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px clamp(28px,4vw,80px)}
@media (max-width:759px){.alt{grid-template-columns:1fr}}
.alt h2{font-size:var(--t-nav);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .8em}
.alt p{margin:0;font-size:var(--f-body);line-height:1.4}
.alt a{font-size:clamp(20px,2vw,36px);font-weight:700;letter-spacing:-.01em;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:.06em}
