:root{
  --yellow:#f5c400;
  --ink:#080808;
  --line:rgba(8,8,8,.56);
}
*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--yellow);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
a{color:inherit}
.contact-grain{position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.contact-header{height:104px;margin:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.contact-identity{height:76px;display:flex;align-items:center;gap:15px;text-decoration:none}
.contact-identity img{display:block;width:auto;object-fit:contain}
.contact-identity img:first-child{height:100%;filter:contrast(1.08) saturate(1.04) drop-shadow(0 1px 1px rgba(0,0,0,.28))}
.contact-identity img:last-child{height:74%;filter:brightness(0)}
.contact-header nav{display:flex;align-items:center;gap:12px}
.contact-back,.contact-current{height:38px;padding:0 17px;display:flex;align-items:center;border:1px solid var(--ink);text-decoration:none;font:700 10px monospace;letter-spacing:.13em}
.contact-current{background:var(--ink);color:var(--yellow)}
.contact-page{flex:1;min-height:0;padding:clamp(22px,3.5vh,48px) 4vw clamp(18px,3vh,36px);display:grid;grid-template-rows:auto 1fr}
.contact-page h1{margin:0;font-size:clamp(4.5rem,11.5vw,11rem);font-weight:500;line-height:.72;letter-spacing:-.07em}
.contact-layout{margin-top:clamp(32px,5.5vh,68px);display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.25fr);gap:clamp(54px,8vw,140px);align-items:start}
.contact-intro>p:first-child{max-width:590px;margin:0;font-size:clamp(1.05rem,1.45vw,1.45rem);line-height:1.5}
.contact-channels{display:flex;gap:10px;margin-top:clamp(28px,4vh,48px);flex-wrap:wrap}
.contact-channels a{min-width:190px;padding:18px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;text-decoration:none;font:700 11px monospace;letter-spacing:.12em}
.contact-location{margin:clamp(28px,4vh,48px) 0 0;font:10px/1.8 monospace;letter-spacing:.14em}
.contact-form{display:grid;gap:clamp(18px,2.5vh,28px)}
.contact-form label{display:grid;gap:12px}
.contact-form label>span{font:700 11px monospace;letter-spacing:.13em}
.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font:500 clamp(1.1rem,1.5vw,1.5rem) Arial,Helvetica,sans-serif;padding:6px 0 14px;outline:none}
.contact-form input:focus,.contact-form textarea:focus{border-bottom-width:3px;padding-bottom:12px}
.contact-form textarea{min-height:clamp(90px,13vh,140px);resize:none}
.contact-form button{justify-self:end;width:min(280px,100%);height:clamp(54px,7vh,68px);border:1px solid var(--ink);background:var(--ink);color:var(--yellow);display:flex;align-items:center;justify-content:space-between;padding:0 28px;font:700 12px monospace;letter-spacing:.14em;cursor:pointer}
.contact-form button:hover,.contact-form button:focus-visible{background:#fff;color:var(--ink)}
.contact-form button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.contact-status{min-height:18px;margin:-18px 0 0;text-align:right;font:10px monospace;letter-spacing:.1em}
.contact-footer{height:clamp(56px,7vh,76px);flex:0 0 auto;margin:0 4vw;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font:9px monospace;letter-spacing:.12em}
@media(max-height:760px) and (min-width:801px){
  .contact-header{height:84px}
  .contact-identity{height:60px}
  .contact-page{padding-top:20px}
  .contact-page h1{font-size:clamp(4rem,9vw,8rem)}
  .contact-layout{margin-top:24px}
  .contact-intro>p:first-child{font-size:1rem}
  .contact-channels,.contact-location{margin-top:24px}
  .contact-form{gap:16px}
  .contact-form textarea{min-height:72px}
}
@media(max-width:800px){
  .contact-header{height:84px;margin:0 20px}
  .contact-identity{height:50px;gap:7px}
  .contact-identity img:first-child{max-width:130px}
  .contact-identity img:last-child{display:none}
  .contact-back{width:38px;padding:0;justify-content:center}
  .contact-back span{display:none}
  .contact-current{height:34px;padding:0 10px}
  .contact-page{padding:24px 20px 18px}
  .contact-page h1{font-size:18vw}
  .contact-layout{margin-top:24px;grid-template-columns:1fr;gap:26px}
  .contact-intro>p:first-child{font-size:.95rem;line-height:1.4}
  .contact-channels{margin-top:18px}
  .contact-channels a{min-width:0;flex:1;padding:12px 0}
  .contact-location{display:none}
  .contact-form{gap:13px}
  .contact-form label{gap:6px}
  .contact-form input,.contact-form textarea{font-size:1rem;padding-bottom:8px}
  .contact-form textarea{min-height:58px}
  .contact-form button{width:100%}
  .contact-status{margin:-7px 0 0}
  .contact-footer{height:48px;margin:0 20px;gap:20px}
  .contact-footer span:last-child{display:none}
}
@media(max-width:800px) and (max-height:700px){
  .contact-header{height:70px}
  .contact-identity{height:42px}
  .contact-page{padding-top:16px}
  .contact-page h1{font-size:14vw}
  .contact-layout{margin-top:16px;grid-template-columns:.8fr 1.2fr;gap:20px}
  .contact-channels{display:grid;margin-top:12px}
  .contact-form{gap:9px}
  .contact-form textarea{min-height:44px}
  .contact-form button{height:44px}
  .contact-footer{height:38px}
}
