.contact-hero{
  overflow:hidden;
}

.contact-hero .page-hero-grid{
  align-items:center;
}

.contact-hero .page-hero-copy{
  max-width:42rem;
}

.contact-hero .page-hero-copy .oak-mono{
  color:var(--oak-primary);
  font-size:.94em;
  overflow-wrap:anywhere;
}

.contact-response-line{
  display:grid;
  gap:var(--oak-space-1);
  margin-top:var(--oak-space-3);
  color:var(--oak-muted);
  font-size:var(--oak-fs-0);
}

.contact-response-line span{
  min-width:0;
}

.contact-response-line strong{
  color:var(--oak-text);
}

.contact-hero-visual{
  position:relative;
  min-width:0;
  min-height:30rem;
  display:grid;
  align-items:center;
  overflow:hidden;
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-xl);
  background:var(--oak-surface-glass);
  box-shadow:var(--oak-shadow-md);
}

.contact-hero-visual>img{
  width:100%;
  min-height:30rem;
  object-fit:cover;
}

.contact-console{
  position:absolute;
  right:var(--oak-space-3);
  bottom:var(--oak-space-3);
  left:var(--oak-space-3);
  max-width:100%;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--oak-radius-md);
  color:var(--oak-light);
  background:var(--oak-ink);
  box-shadow:var(--oak-shadow-dark);
}

.contact-console-bar{
  display:flex;
  align-items:center;
  gap:.42rem;
  min-width:0;
  padding:.7rem .85rem;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.contact-console-bar span{
  width:.48rem;
  height:.48rem;
  flex:none;
  border-radius:50%;
  background:var(--oak-primary);
}

.contact-console-bar span:nth-child(2){
  opacity:.72;
}

.contact-console-bar span:nth-child(3){
  opacity:.45;
}

.contact-console-bar code{
  min-width:0;
  margin-left:auto;
  color:var(--oak-soft);
  font-size:var(--oak-fs-0);
}

.contact-console-body{
  max-width:100%;
  overflow-x:auto;
  padding:var(--oak-space-3);
  font-family:var(--oak-font-mono);
  font-size:var(--oak-fs-0);
  line-height:1.9;
  white-space:nowrap;
}

.contact-console-output{
  color:#d9b7cc;
}

.contact-prompt{
  color:var(--oak-accent);
}

.contact-type-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:var(--oak-space-3);
}

.contact-type-card{
  grid-column:span 3;
  display:flex;
  min-width:0;
  flex-direction:column;
}

.contact-type-card h3{
  margin-top:var(--oak-space-3);
  margin-bottom:var(--oak-space-1);
}

.contact-type-card p{
  margin-bottom:var(--oak-space-2);
}

.contact-type-card ul{
  margin-bottom:var(--oak-space-3);
  color:var(--oak-text);
  font-size:var(--oak-fs-1);
}

.contact-type-card .c-btn{
  align-self:flex-start;
  margin-top:auto;
}

.contact-type-wide{
  grid-column:2 / span 4;
}

.contact-type-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--oak-space-2);
  min-width:0;
}

.contact-icon{
  width:2.8rem;
  height:2.8rem;
  display:grid;
  flex:none;
  place-items:center;
  border:1px solid var(--oak-line-strong);
  border-radius:var(--oak-radius-sm);
  color:var(--oak-primary);
  background:var(--oak-tint);
}

.contact-icon svg{
  width:1.3rem;
  height:1.3rem;
}

.contact-wide-points{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--oak-space-2);
  margin-bottom:var(--oak-space-3);
}

.contact-wide-points span{
  min-width:0;
  padding:var(--oak-space-2);
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-sm);
  color:var(--oak-muted);
  background:rgba(255,255,255,.56);
  font-size:var(--oak-fs-1);
}

.contact-wide-points strong{
  display:block;
  color:var(--oak-text);
}

.contact-template-layout{
  align-items:start;
}

.contact-template-layout h3{
  margin-bottom:var(--oak-space-3);
}

.contact-field-list{
  display:grid;
  gap:0;
  margin:0;
}

.contact-field-list>div{
  display:grid;
  grid-template-columns:7rem minmax(0,1fr);
  gap:var(--oak-space-2);
  min-width:0;
  padding-block:var(--oak-space-2);
  border-bottom:1px solid var(--oak-line);
}

.contact-field-list>div:first-child{
  padding-top:0;
}

.contact-field-list>div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.contact-field-list dt{
  color:var(--oak-ink);
  font-weight:750;
}

.contact-field-list dd{
  min-width:0;
  margin:0;
  color:var(--oak-muted);
}

.contact-template-panel{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-lg);
  background:var(--oak-surface);
  box-shadow:var(--oak-shadow-sm);
}

.contact-template-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--oak-space-2);
  min-width:0;
  padding:var(--oak-space-2) var(--oak-space-3);
  border-bottom:1px solid var(--oak-line);
  color:var(--oak-text);
  font-size:var(--oak-fs-1);
  font-weight:750;
}

.contact-template-head code{
  min-width:0;
  color:var(--oak-primary);
  font-size:var(--oak-fs-0);
  text-align:right;
  overflow-wrap:anywhere;
}

.contact-template-panel pre{
  margin:0;
  border:0;
  border-radius:0;
  line-height:1.85;
}

.contact-template-panel .c-note{
  margin:var(--oak-space-3);
}

.contact-template-panel>.c-btn{
  margin:0 var(--oak-space-3) var(--oak-space-3);
}

.contact-selection-note{
  margin-top:var(--oak-space-4);
  padding:var(--oak-space-4);
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-lg);
  background:rgba(255,255,255,.62);
}

.contact-selection-note h3{
  margin-bottom:var(--oak-space-3);
}

.contact-selection-note .oak-grid>div{
  min-width:0;
  padding:var(--oak-space-3);
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-md);
  background:var(--oak-surface-glass);
}

.contact-selection-note strong{
  color:var(--oak-ink);
  font-family:var(--oak-font-heading);
  font-size:var(--oak-fs-3);
}

.contact-selection-note p:last-child{
  margin-bottom:0;
}

.contact-tech-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:var(--oak-space-4);
  align-items:start;
}

.contact-tech-grid>*{
  min-width:0;
}

.contact-tech-steps{
  display:grid;
}

.contact-tech-steps article{
  display:grid;
  grid-template-columns:3rem minmax(0,1fr);
  gap:var(--oak-space-3);
  min-width:0;
  padding-block:var(--oak-space-3);
  border-bottom:1px solid var(--oak-line);
}

.contact-tech-steps article:first-child{
  padding-top:0;
}

.contact-tech-steps article:last-child{
  border-bottom:0;
}

.contact-tech-steps h3{
  margin-bottom:var(--oak-space-1);
  font-size:var(--oak-fs-3);
}

.contact-tech-steps p{
  margin-bottom:0;
}

.contact-step-number{
  width:3rem;
  height:3rem;
  display:grid;
  place-items:center;
  border:1px solid var(--oak-line-strong);
  border-radius:var(--oak-radius-sm);
  color:var(--oak-primary);
  background:var(--oak-tint);
  font-weight:750;
}

.contact-tech-template .c-checklist{
  margin:var(--oak-space-3);
}

.contact-security-grid{
  margin-top:var(--oak-space-4);
}

.contact-security-grid h3{
  margin-bottom:var(--oak-space-3);
}

.contact-prohibited{
  border-color:var(--oak-line-strong);
}

.contact-prohibited ul{
  display:grid;
  gap:.8rem;
  padding:0;
  list-style:none;
}

.contact-prohibited li{
  position:relative;
  padding-left:1.8rem;
  color:var(--oak-text);
}

.contact-prohibited li::before,
.contact-prohibited li::after{
  content:"";
  position:absolute;
  left:.15rem;
  top:.75rem;
  width:1rem;
  height:1px;
  background:var(--oak-danger);
}

.contact-prohibited li::before{
  transform:rotate(45deg);
}

.contact-prohibited li::after{
  transform:rotate(-45deg);
}

.contact-prohibited code{
  color:var(--oak-primary);
}

.contact-boundary{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);
  gap:var(--oak-space-4);
  padding:clamp(1.5rem,5vw,4rem);
  background:
    radial-gradient(circle at 100% 0,rgba(240,68,192,.12),transparent 28rem),
    var(--oak-surface-glass);
}

.contact-boundary>*{
  min-width:0;
}

.contact-boundary-copy h2{
  margin-top:var(--oak-space-1);
}

.contact-boundary-actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--oak-space-2);
  margin-top:var(--oak-space-3);
}

.contact-boundary-list{
  align-self:start;
  padding:var(--oak-space-3);
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-md);
  background:rgba(255,255,255,.72);
}

.contact-boundary-list h3{
  margin-bottom:var(--oak-space-3);
  font-size:var(--oak-fs-3);
}

.contact-payment-grid h3{
  margin-top:var(--oak-space-3);
  margin-bottom:var(--oak-space-1);
}

.contact-payment-grid p{
  margin-bottom:0;
}

.contact-payment-rules{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:var(--oak-space-3);
  overflow:hidden;
  border:1px solid var(--oak-line);
  border-radius:var(--oak-radius-md);
  background:rgba(255,255,255,.7);
}

.contact-payment-rules>div{
  min-width:0;
  padding:var(--oak-space-3);
}

.contact-payment-rules>div+div{
  border-left:1px solid var(--oak-line);
}

.contact-payment-rules span{
  display:block;
  margin-bottom:var(--oak-space-1);
  color:var(--oak-primary);
  font-size:var(--oak-fs-0);
  font-weight:750;
}

.contact-payment-rules p{
  margin-bottom:0;
  font-size:var(--oak-fs-1);
}

.contact-final-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--oak-space-4);
  min-width:0;
  padding:clamp(1.5rem,5vw,4rem);
  overflow:hidden;
  border:1px solid var(--oak-line-strong);
  border-radius:var(--oak-radius-xl);
  background:
    radial-gradient(circle at 90% 20%,rgba(240,68,192,.15),transparent 24rem),
    var(--oak-ink);
  box-shadow:var(--oak-shadow-dark);
}

.contact-final-cta>*{
  min-width:0;
}

.contact-final-cta .page-kicker{
  color:var(--oak-accent);
}

.contact-final-cta h2{
  max-width:42rem;
  margin-top:var(--oak-space-1);
  color:var(--oak-light);
}

.contact-final-cta p{
  max-width:46rem;
  margin-bottom:0;
  color:#d9c4d1;
}

.contact-final-cta .oak-mono{
  color:#fff;
  overflow-wrap:anywhere;
}

.contact-final-actions{
  display:grid;
  flex:none;
  gap:var(--oak-space-2);
  width:min(100%,18rem);
}

.contact-final-actions .c-btn-secondary{
  color:var(--oak-light);
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
}

.contact-final-actions .c-btn-secondary:hover{
  background:rgba(255,255,255,.14);
}

@media (max-width:900px){
  .contact-type-card,
  .contact-type-wide{
    grid-column:span 6;
  }

  .contact-tech-grid,
  .contact-boundary{
    grid-template-columns:1fr;
  }

  .contact-payment-rules{
    grid-template-columns:1fr;
  }

  .contact-payment-rules>div+div{
    border-top:1px solid var(--oak-line);
    border-left:0;
  }

  .contact-final-cta{
    align-items:flex-start;
    flex-direction:column;
  }

  .contact-final-actions{
    width:100%;
  }
}

@media (max-width:768px){
  .contact-hero-visual{
    min-height:24rem;
  }

  .contact-hero-visual>img{
    min-height:24rem;
  }

  .contact-wide-points{
    grid-template-columns:1fr;
  }

  .contact-field-list>div{
    grid-template-columns:1fr;
    gap:.3rem;
  }

  .contact-selection-note{
    padding:var(--oak-space-3);
  }
}

@media (max-width:390px){
  .contact-console{
    right:var(--oak-space-2);
    bottom:var(--oak-space-2);
    left:var(--oak-space-2);
  }

  .contact-console-body{
    padding:var(--oak-space-2);
    font-size:.68rem;
  }

  .contact-template-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .contact-template-head code{
    text-align:left;
  }

  .contact-type-card .c-btn{
    width:100%;
  }

  .contact-tech-steps article{
    grid-template-columns:2.5rem minmax(0,1fr);
    gap:var(--oak-space-2);
  }

  .contact-step-number{
    width:2.5rem;
    height:2.5rem;
  }

  .contact-boundary{
    padding:var(--oak-space-3);
  }

  .contact-boundary-actions .c-btn{
    width:100%;
  }
}
