
@import url('https://fonts.googleapis.com/css2?family=Permanent+Marker&family=Courier+Prime:wght@400;700&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --paper:#f3eee9;
  --ink:#11110f;
  --red:#c94231;
  --muted:#746e68;
  --sidebar:220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Courier Prime",monospace;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:50;
  opacity:.11;
  background:
    radial-gradient(circle at 12% 20%,rgba(60,40,25,.11) 0 1px,transparent 1.3px),
    radial-gradient(circle at 72% 58%,rgba(60,40,25,.08) 0 1px,transparent 1.3px);
  background-size:18px 18px,27px 27px;
  mix-blend-mode:multiply;
}
a{color:inherit;text-decoration:none}

.sidebar{
  position:fixed;
  left:0;top:0;
  width:var(--sidebar);
  height:100vh;
  background:#101010;
  color:#fff;
  padding:30px 28px 22px;
  z-index:20;
  display:flex;
  flex-direction:column;
}
.logo{display:block;width:166px;height:auto}
.logo-sub{
  font:500 11px/1 Inter,sans-serif;
  letter-spacing:.15em;
  margin-top:9px;
}
.seal{
  margin-top:18px;
  display:inline-block;
  color:var(--red);
  border:1px solid var(--red);
  padding:4px 6px;
  font-size:10px;
  align-self:flex-start;
}
.nav{
  margin-top:62px;
  display:grid;
  gap:19px;
  font:500 11px/1.25 Inter,sans-serif;
  text-transform:uppercase;
}
.nav a:hover,.nav a.active{color:var(--red)}
.nav a.active::after{
  content:"";
  display:block;
  width:48px;height:2px;
  background:var(--red);
  margin-top:8px;
}
.side-bottom{
  margin-top:auto;
  color:#aaa;
  font-size:9px;
  line-height:1.5;
}

main{margin-left:var(--sidebar)}
.contact-wrap{
  min-height:100vh;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:7vw;
  padding:72px 7vw 64px;
  align-items:start;
}
.contact-intro{
  position:sticky;
  top:72px;
  padding-top:22px;
}
.eyebrow{
  font:700 11px Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:var(--red);
  margin-bottom:18px;
}
h1{
  margin:0;
  font:400 clamp(56px,6vw,92px)/.92 "Permanent Marker",cursive;
  letter-spacing:-.03em;
}
h1 em{color:var(--red);font-style:normal}
.title-line{
  width:88px;height:3px;background:var(--red);
  margin:22px 0 26px;
}
.intro{
  max-width:520px;
  font-size:17px;
  line-height:1.72;
}
.contact-notes{
  margin-top:38px;
  padding-top:24px;
  border-top:1px solid rgba(17,17,15,.18);
  display:grid;
  gap:16px;
  font-size:13px;
}
.contact-notes strong{
  font:700 10px Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.07em;
  color:var(--muted);
  display:block;
  margin-bottom:4px;
}

.form-panel{
  background:rgba(255,255,255,.27);
  border:1px solid rgba(17,17,15,.16);
  padding:38px;
  position:relative;
}
.form-panel::before{
  content:"";
  position:absolute;
  left:-8px;top:28px;
  width:4px;height:66px;
  background:var(--red);
}
.form-panel h2{
  margin:0 0 8px;
  font:400 31px/1 "Permanent Marker",cursive;
}
.form-panel>p{
  margin:0 0 32px;
  font-size:13px;
  color:var(--muted);
}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.field{
  display:grid;
  gap:8px;
}
.field.full{grid-column:1/-1}
label{
  font:700 10px Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.07em;
}
input,select,textarea{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(17,17,15,.48);
  background:transparent;
  color:var(--ink);
  padding:12px 2px 11px;
  font:400 15px "Courier Prime",monospace;
  outline:none;
  border-radius:0;
}
select{
  appearance:none;
  background-image:
    linear-gradient(45deg,transparent 50%,#111 50%),
    linear-gradient(135deg,#111 50%,transparent 50%);
  background-position:
    calc(100% - 14px) 50%,
    calc(100% - 9px) 50%;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  padding-right:30px;
}
textarea{min-height:165px;resize:vertical}
input:focus,select:focus,textarea:focus{
  border-bottom-color:var(--red);
}
.consent{
  grid-column:1/-1;
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:2px;
  font-size:11px;
  line-height:1.45;
}
.consent input{
  width:16px;height:16px;
  margin-top:1px;
  accent-color:var(--red);
}
.consent a{
  text-decoration:underline;
  text-underline-offset:2px;
}
.submit-row{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:8px;
}
.submit-btn{
  border:0;
  background:#111;
  color:#fff;
  padding:15px 22px;
  cursor:pointer;
  font:700 11px Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.04em;
  clip-path:polygon(0 8%,5% 1%,18% 5%,34% 0,50% 4%,67% 1%,81% 5%,100% 1%,98% 91%,86% 96%,71% 91%,53% 97%,34% 91%,16% 96%,1% 91%);
}
.submit-btn span{color:var(--red);margin-left:14px}
.form-note{
  max-width:290px;
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}
.mobile-head{display:none}

@media(max-width:1050px){
  .contact-wrap{
    grid-template-columns:1fr;
    gap:50px;
  }
  .contact-intro{position:static}
}
@media(max-width:820px){
  :root{--sidebar:0px}
  .sidebar{display:none}
  .mobile-head{
    display:flex;
    position:fixed;
    top:0;left:0;right:0;
    height:64px;
    background:#101010;
    color:#fff;
    z-index:40;
    padding:12px 18px;
    align-items:center;
    justify-content:space-between;
  }
  .mobile-head img{width:135px}
  .mobile-head a{
    font:600 11px Inter,sans-serif;
    text-transform:uppercase;
  }
  main{margin-left:0;padding-top:64px}
  .contact-wrap{
    min-height:auto;
    padding:48px 22px 70px;
  }
  h1{font-size:52px}
  .intro{font-size:16px}
  .form-panel{padding:28px 20px}
  .form-grid{grid-template-columns:1fr}
  .field.full,.consent,.submit-row{grid-column:1}
  .submit-row{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* New top-navigation layout */
.sidebar,.mobile-head{display:none!important}
main{margin-left:0!important}
