/* Shared contact section for sub pages. Relies on the page's :root tokens. */
.cf{display:flex;flex-wrap:wrap;gap:40px clamp(40px,6vw,96px);padding:clamp(72px,9vw,128px) 40px;border-top:1px solid var(--rule);background:var(--paper-2);scroll-margin-top:16px}
.cf-info{flex:1 1 300px;display:flex;flex-direction:column;gap:22px}
.cf-list{display:flex;flex-direction:column;border-top:1px solid var(--rule-2);margin-top:12px}
.cf-item{display:flex;align-items:flex-start;gap:16px;padding:18px 0;border-bottom:1px solid var(--rule-2)}
.cf-item:hover{color:var(--maroon)}
.cf-ico{flex:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rule-2);background:var(--paper)}
.cf-lbl{display:flex;flex-direction:column;gap:4px;min-width:0}
.cf-lbl small{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--muted)}
.cf-lbl span{font-size:17px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.cf-main{flex:2 1 520px;min-width:0}
.cf-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:20px;position:relative}
.cf-form>.cf-wide{grid-column:1/-1}
.cf-form[hidden]{display:none}
.cf-field{display:flex;flex-direction:column;gap:8px}
.cf-cap{font-family:var(--mono);font-size:11px;letter-spacing:.16em;font-weight:500;text-transform:uppercase}
.cf-cap b{color:var(--maroon);font-weight:500}
.cf-input{width:100%;padding:14px 16px;border:1px solid var(--rule);background:var(--paper-3);color:var(--ink);font-family:'Hanken Grotesk',sans-serif;font-size:16px;outline:none;border-radius:0}
.cf-input:focus{border-color:var(--ink);background:#FFF}
textarea.cf-input{resize:vertical;min-height:140px}
.cf-chips{display:flex;flex-wrap:wrap;gap:10px}
.cf-chip{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-family:var(--mono);font-size:12px;letter-spacing:.14em;font-weight:500;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
.cf-chip i{width:12px;height:12px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:10px;line-height:1;font-style:normal}
.cf-chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:var(--paper)}
.cf-chip[aria-pressed="true"] i::before{content:"✓"}
.cf-files-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.cf-files-head span:last-child{color:var(--muted);font-weight:400}
.cf-drop{display:flex;align-items:center;justify-content:center;gap:12px;padding:18px 16px;border:1px dashed var(--rule);background:var(--paper-3);cursor:pointer;font-family:var(--mono);font-size:12px;letter-spacing:.14em;font-weight:500;text-transform:uppercase;transition:border-color .2s,background .2s}
.cf-drop:hover,.cf-drop:focus-within{border-color:var(--navy);background:#FFF}
.cf-drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.cf-drop em{color:var(--maroon);font-size:16px;line-height:1;font-style:normal}
.cf-accept{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--muted);line-height:1.6}
.cf-list-files{display:flex;flex-direction:column;border-top:1px solid var(--rule-2)}
.cf-list-files:empty{display:none}
.cf-file{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule-2);font-size:15px}
.cf-file span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cf-file small{flex:none;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--muted)}
.cf-file button{all:unset;cursor:pointer;flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--muted)}
.cf-file button:hover{color:var(--maroon)}
.cf-msg{font-size:14px;line-height:1.5;color:var(--maroon)}
.cf-msg:empty{display:none}
.cf-submit-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.cf-req{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--muted)}
.cf-req b{color:var(--maroon);font-weight:500}
.cf-submit{display:flex;align-items:center;gap:18px;padding:15px 22px;border:0;background:var(--navy);color:var(--paper);font-family:var(--mono);font-size:14px;letter-spacing:.18em;font-weight:500;cursor:pointer}
.cf-submit:hover{background:var(--maroon)}
.cf-submit[disabled]{opacity:.6;cursor:wait}
.cf-honey{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.cf-sent{display:flex;flex-direction:column;gap:14px;padding:32px;border:1px solid var(--ink);background:var(--paper-3)}
.cf-sent[hidden]{display:none}
.cf-sent strong{font-family:var(--mono);font-size:12px;letter-spacing:.18em;color:var(--maroon);font-weight:500}
.cf-sent span{font-size:clamp(22px,2vw,28px);font-weight:700;letter-spacing:-.025em}
.cf-sent button{all:unset;cursor:pointer;align-self:flex-start;font-family:var(--mono);font-size:11px;letter-spacing:.16em;border-bottom:1px solid currentColor;padding-bottom:2px}
.cf-sent button:hover{color:var(--maroon)}
@media (min-width:1200px){
  .cf-form{grid-template-columns:repeat(6,minmax(0,1fr))}
  .cf-form>*{grid-column:1/-1}
  .cf-form>.cf-half{grid-column:span 3}
  .cf-form>.cf-third{grid-column:span 2}
}
@media (max-width:1200px){.cf{scroll-margin-top:85px}}
@media (max-width:640px){.cf{padding-left:20px;padding-right:20px}.cf-submit{width:100%;justify-content:space-between}}
.cf-privacy{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
