/* Contact page only. */
body.contact-page{background-color:var(--black);background-image:linear-gradient(rgba(18,17,16,.86),rgba(18,17,16,.86)),url("../images/dark-archive-grain.webp");background-repeat:repeat,no-repeat;background-position:center top,center top;background-size:auto,1800px 1100px;color:var(--cream);}

.contact-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;border-bottom:1px solid rgba(255,255,255,.13);background:var(--black);}
.contact-left,.contact-right{min-width:0;}
.contact-left{position:relative;padding:128px clamp(36px,3vw,64px) 150px max(50px,calc((100vw - 1772px)/2 + 50px));}
.contact-left-inner{position:sticky;top:118px;width:min(100%,710px);}
.contact-section-label{margin-bottom:29px;}
.contact-left-title{margin:0;max-width:720px;font-size:clamp(58px,4.8vw,76px);line-height:.95;}
.contact-left-copy{max-width:62ch;margin:30px 0 44px;color:var(--muted);font:400 18px/1.6 var(--font-body);}
.contact-direct-list{border-top:1px solid #272727;}
.contact-direct-row{display:block;padding:24px 0 25px;border-bottom:1px solid #272727;}
.contact-direct-row small{display:block;margin-bottom:9px;color:rgba(238,217,189,.46);font:700 13px/1.25 var(--font-meta);letter-spacing:.08em;text-transform:uppercase;}
.contact-direct-row a{color:var(--cream);font:500 18px/1.6 var(--font-body);overflow-wrap:anywhere;}
.contact-direct-row a:hover{color:var(--red);}

.contact-right{border-left:1px solid rgba(255,255,255,.14);padding:128px max(50px,calc((100vw - 1772px)/2 + 50px)) 150px clamp(36px,3vw,48px);}
.contact-form-frame{width:100%;border:1px solid rgba(238,217,189,.18);padding:50px 46px 48px;background:rgba(30,28,26,.92);}
.contact-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:25px 24px;}
.contact-field{display:flex;flex-direction:column;gap:11px;min-width:0;}
.contact-field.full{grid-column:1/-1;}
.contact-field label,.contact-file-label{color:var(--muted);font:700 13px/1.25 var(--font-meta);letter-spacing:.08em;text-transform:uppercase;}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-width:0;border:1px solid rgba(238,217,189,.20);border-radius:0;outline:0;background:rgba(30,28,26,.92);color:var(--cream);font:inherit;font-size:17px;line-height:1.4;transition:border-color .2s ease,background .2s ease;}
.contact-field input,.contact-field select{height:66px;padding:0 17px;}
.contact-field textarea{min-height:198px;padding:18px 17px;resize:vertical;}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#6b6b6b;opacity:1;}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:rgba(238,217,189,.46);background:var(--panel);}
.contact-field select{appearance:auto;color:var(--cream);}
.contact-file{grid-column:1/-1;display:flex;flex-direction:column;gap:11px;}
.contact-file-box{min-height:66px;display:flex;align-items:center;padding:10px 16px;border:1px solid rgba(238,217,189,.20);background:rgba(30,28,26,.92);}
.contact-file-box input[type="file"]{width:100%;color:var(--cream);font:inherit;font-size:17px;line-height:1.4;}
.contact-file-box input[type="file"]::file-selector-button{margin-right:12px;border:0;padding:8px 11px;border-radius:999px;background:var(--cream);color:var(--charcoal);font:400 16px/1 var(--font-display);cursor:pointer;}
.contact-consent{grid-column:1/-1;display:grid;grid-template-columns:18px minmax(0,1fr);gap:15px;align-items:start;width:min(100%,570px);margin:3px 0 0 auto;color:#9d9995;font:400 16px/1.55 var(--font-body);letter-spacing:0;text-transform:none;}
.contact-consent input{width:15px;height:15px;margin:2px 0 0;accent-color:var(--red);}
.contact-submit{grid-column:1/-1;min-height:58px;border:1px solid var(--red);border-radius:999px;background:var(--red);color:var(--cream);cursor:pointer;font:400 18px/1 var(--font-display);letter-spacing:.07em;text-transform:uppercase;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.contact-submit:hover{background:var(--red-dark);border-color:var(--red-dark);}
.contact-submit:active{transform:translateY(1px);}
.contact-submit:focus-visible{outline:2px solid var(--cream);outline-offset:3px;}
.contact-form-note{grid-column:1/-1;margin:6px 0 0;color:rgba(238,217,189,.46);font:400 16px/1.55 var(--font-body);}

@media (max-width:1180px){
  .contact-left{padding:96px 34px 120px 32px;}
  .contact-right{padding:96px 32px 120px 34px;}
  .contact-left-title{font-size:clamp(58px,4.8vw,76px);}
  .contact-form-frame{padding:38px 32px 40px;}
}

@media (max-width:900px){
  .contact-workspace{grid-template-columns:minmax(0,1fr);}
  .contact-left{padding:82px 22px 54px;}
  .contact-left-inner{position:static;width:100%;max-width:none;}
  .contact-right{border-left:0;border-top:1px solid rgba(255,255,255,.14);padding:54px 22px 90px;}
  .contact-left-title{font-size:46px;line-height:.95;max-width:700px;}
  .contact-left-copy{max-width:700px;}
  .contact-form-frame{max-width:760px;padding:36px;margin:0 auto;}
}

@media (max-width:680px){
  .contact-left{padding:62px 14px 42px;}
  .contact-field label,.contact-file-label,.contact-direct-row small{font-size:12px;}
  .contact-section-label{margin-bottom:24px;}
  .contact-left-title{font-size:46px;line-height:.95;}
  .contact-left-copy{margin:24px 0 34px;font-size:17px;line-height:1.6;}
  .contact-direct-row{padding:20px 0 21px;}
  .contact-direct-row a{font-size:17px;}
  .contact-right{padding:42px 14px 70px;}
  .contact-form-frame{padding:24px 18px 28px;}
  .contact-form{grid-template-columns:minmax(0,1fr);gap:20px;}
  .contact-field,.contact-field.full,.contact-file,.contact-consent,.contact-submit,.contact-form-note{grid-column:1/-1;}
  .contact-field input,.contact-field select{height:58px;font-size:16px;}
  .contact-field textarea{min-height:168px;font-size:16px;}
  .contact-file-box{min-height:60px;padding:9px 10px;}
  .contact-consent{width:100%;margin:0;font-size:16px;gap:11px;}
  .contact-submit{min-height:58px;font-size:16px;}
}

@media (max-width:360px){
  .contact-left-title{font-size:46px;}
  .contact-form-frame{padding-inline:14px;}
}
