.cgrid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
@media (max-width:900px){.cgrid{grid-template-columns:1fr}}

/* the form */
.form{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;padding:clamp(24px,3vw,36px);border-radius:24px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line),0 16px 40px rgba(6,46,55,.06)}
.form .full{grid-column:1/-1}
.form label,.form legend{display:block;font-size:15px;font-weight:500;margin-bottom:8px}
.form label span{font-weight:400;color:var(--muted)}
.form input[type=text],.form input[type=email],.form input[type=tel],.form textarea{width:100%;font:inherit;font-size:16px;padding:13px 14px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.form textarea{min-height:120px;resize:vertical}
.form input:focus,.form textarea:focus{outline:2px solid var(--petrol);outline-offset:1px;border-color:transparent}
.form fieldset{border:0;padding:0;margin:0}
.who{display:grid;gap:8px}
.who label{display:flex;align-items:center;gap:12px;margin:0;padding:12px 14px;border-radius:12px;border:1px solid var(--line);font-weight:400;cursor:pointer}
.who label:has(input:checked){border-color:var(--petrol);background:var(--tint)}
.who input{accent-color:var(--petrol);width:18px;height:18px}
.who small{color:var(--muted);margin-left:auto;font-size:14px}
.form .note{font-size:14px;color:var(--muted);line-height:1.5}
.form .btn{justify-self:start;border:0;cursor:pointer;font:inherit;font-weight:500}
@media (max-width:560px){.form{grid-template-columns:1fr}.who label{flex-wrap:wrap;row-gap:2px}.who small{flex-basis:100%;margin-left:30px}}

/* reach us directly */
.direct{display:grid;gap:0}
.direct div{padding:18px 0;border-top:1px solid var(--line)}
.direct div:first-child{border-top:0;padding-top:0}
.direct small{display:block;font:700 11px/1.3 var(--stamp);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.direct a,.direct span{display:block;margin-top:6px;font-size:18px;color:var(--ink);text-decoration:none}
.direct a:hover{color:var(--petrol)}
.direct .tbc{font-size:14px;color:var(--coral);margin-top:4px}
.map{margin-top:8px;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.map img{width:100%;height:auto;aspect-ratio:4/3;display:block}
.direct a.maplink{display:inline-block;margin-top:10px;font-size:15px;color:var(--petrol)}

/* what happens next */
.next3{list-style:none;counter-reset:n;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}
.next3 li{counter-increment:n;padding:26px;border-radius:20px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line)}
.next3 li::before{content:counter(n);display:block;font:700 22px/1 var(--stamp);color:var(--petrol);margin-bottom:16px}
.next3 h3{font-size:19px;font-weight:500;line-height:1.3}
.next3 p{margin-top:8px;font-size:16px;line-height:1.5;color:var(--muted)}
@media (max-width:860px){.next3{grid-template-columns:1fr}}
