.skip-link { position:fixed; top:12px; left:12px; z-index:200; padding:10px 14px; color:#050606; background:#f2efe8; font:700 12px/1 var(--sans); transform:translateY(-160%); transition:transform .2s ease; }
.skip-link:focus { transform:translateY(0); }

.contact-page { color:#f2efe8; background:#050606; }
.contact-page main { overflow:clip; }
.contact-page .cryox-nav a[aria-current="page"] { color:#ff6134; }

.contact-hero { position:relative; height:min(54dvh,530px); min-height:430px; overflow:hidden; border-bottom:1px solid rgba(242,239,232,.16); background:#050606; isolation:isolate; }
.contact-hero__noise { position:absolute; inset:0; z-index:-1; opacity:.08; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.91' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.46'/%3E%3C/svg%3E"); }
.contact-hero__title { position:absolute; top:clamp(132px,18vh,178px); left:3vw; right:3vw; display:flex; align-items:center; gap:clamp(3rem,14vw,16rem); margin:0; font:800 clamp(5.25rem,11.7vw,13rem)/.76 var(--display); letter-spacing:-.085em; pointer-events:none; }
.contact-hero__title span { display:block; white-space:nowrap; }
.contact-hero__center { position:absolute; top:clamp(266px,32vh,310px); right:3vw; margin:0; font:700 clamp(8px,.74vw,12px)/1.45 var(--sans); text-align:right; }
.contact-hero__baseline { position:absolute; left:3vw; right:3vw; bottom:42px; display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; padding-top:17px; border-top:1px solid rgba(242,239,232,.18); font:700 clamp(8px,.69vw,12px)/1 var(--sans); letter-spacing:.035em; }
.contact-hero__baseline strong { font-size:clamp(1rem,1.65vw,2rem); font-weight:500; letter-spacing:-.04em; }
.contact-hero__baseline span:nth-child(2) { text-align:center; }
.contact-hero__baseline span:last-child { text-align:right; }

.contact-brief { padding:13vh 4vw 0; background:#050606; }
.contact-brief__intro { min-height:48vh; display:grid; grid-template-columns:.52fr 1.6fr .52fr; align-items:center; gap:4vw; border-bottom:1px solid rgba(242,239,232,.14); }
.contact-brief__intro p,.contact-brief__intro > span { margin:0; color:rgba(242,239,232,.52); font:700 clamp(8px,.66vw,11px)/1.45 var(--sans); letter-spacing:.08em; }
.contact-brief__intro > span { text-align:right; }
.contact-brief__intro h2 { margin:0; font:800 clamp(4.8rem,9.3vw,11rem)/.74 var(--display); letter-spacing:-.08em; text-align:center; }

.contact-form { padding-bottom:12vh; }
.contact-field { position:relative; display:grid; grid-template-columns:minmax(180px,21vw) 1fr; align-items:center; min-height:112px; border-bottom:1px solid rgba(242,239,232,.15); }
.contact-field label,.contact-services legend { color:rgba(242,239,232,.66); font:700 clamp(9px,.72vw,12px)/1.25 var(--sans); letter-spacing:.06em; }
.contact-field label span,.contact-services legend span { display:inline-block; width:42px; color:#ff6134; font-size:.82em; }
.contact-field label b { color:#ff6134; }
.contact-field input,.contact-field textarea { width:100%; min-width:0; padding:24px 0; border:0; outline:0; color:#f2efe8; background:transparent; font:500 clamp(1.8rem,3vw,4rem)/1 var(--display); letter-spacing:-.045em; }
.contact-field textarea { min-height:180px; resize:vertical; line-height:1.1; }
.contact-field input::placeholder,.contact-field textarea::placeholder { color:rgba(242,239,232,.2); font-style:italic; opacity:1; }
.contact-field::after { content:""; position:absolute; left:21vw; right:0; bottom:-1px; height:1px; background:#ff6134; transform:scaleX(0); transform-origin:left; transition:transform .45s cubic-bezier(.16,1,.3,1); }
.contact-field:focus-within::after { transform:scaleX(1); }
.contact-field.is-invalid::after { transform:scaleX(1); background:#ff6134; }
.field-error { position:absolute; right:0; bottom:10px; color:#ff7954; font:700 9px/1 var(--sans); letter-spacing:.06em; }

.contact-services { display:grid; grid-template-columns:minmax(180px,21vw) 1fr; align-items:start; gap:0; margin:0; padding:38px 0; border:0; border-bottom:1px solid rgba(242,239,232,.15); }
.contact-services legend { grid-column:1; width:100%; }
.contact-services__options { grid-column:2; display:flex; flex-wrap:wrap; gap:10px; }
.contact-services label { position:relative; cursor:pointer; }
.contact-services input { position:absolute; width:1px; height:1px; opacity:0; }
.contact-services label span { display:block; padding:13px 16px; border:1px solid rgba(242,239,232,.19); color:rgba(242,239,232,.52); font:700 clamp(8px,.66vw,11px)/1 var(--sans); letter-spacing:.055em; transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease; }
.contact-services input:focus-visible + span { outline:2px solid #ff6134; outline-offset:3px; }
.contact-services input:checked + span { color:#050606; border-color:#f2efe8; background:#f2efe8; transform:translateY(-2px); }

.contact-form__action { display:grid; grid-template-columns:minmax(180px,21vw) 1fr auto; align-items:end; gap:2vw; padding:52px 0 0; }
.contact-form__action > p:first-child { margin:0; color:rgba(242,239,232,.46); font:700 clamp(8px,.64vw,10px)/1.5 var(--sans); letter-spacing:.055em; }
.contact-form__action button { grid-column:2; min-height:82px; display:flex; justify-content:space-between; align-items:center; padding:0 26px; border:1px solid rgba(242,239,232,.68); color:#f2efe8; background:transparent; cursor:pointer; font:800 clamp(.8rem,1.05vw,1.2rem)/1 var(--sans); letter-spacing:.08em; transition:color .35s ease,background-color .35s ease,transform .35s cubic-bezier(.16,1,.3,1); }
.contact-form__action button i { font:400 2rem/1 var(--sans); }
.contact-form__action button:hover,.contact-form__action button:focus-visible { color:#050606; background:#f2efe8; transform:translateY(-3px); }
.contact-form__action button:focus-visible { outline:2px solid #ff6134; outline-offset:4px; }
.contact-form__status { min-width:210px; margin:0; color:#ff7954; font:700 10px/1.4 var(--sans); letter-spacing:.06em; }
.contact-form.is-sent .contact-form__status { color:#f2efe8; }

.contact-marquee { overflow:hidden; border-top:1px solid rgba(242,239,232,.15); border-bottom:1px solid rgba(242,239,232,.15); background:#050606; }
.contact-marquee__track { width:max-content; display:flex; padding:22px 0 25px; color:#f2efe8; font:800 clamp(3.5rem,7.5vw,9rem)/.76 var(--display); letter-spacing:-.06em; white-space:nowrap; }
.contact-marquee__track span { padding-right:3vw; }

@media (max-width:950px) {
  .contact-hero__title { font-size:11.7vw; }
  .contact-field,.contact-services { grid-template-columns:170px 1fr; }
  .contact-field::after { left:170px; }
  .contact-form__action { grid-template-columns:170px 1fr; }
  .contact-form__status { grid-column:2; }
}

@media (max-width:620px) {
  .contact-hero { height:68svh; min-height:540px; }
  .contact-hero__title { top:150px; left:18px; right:18px; display:grid; gap:6px; font-size:25vw; }
  .contact-hero__title span:last-child { justify-self:end; }
  .contact-hero__center { top:53%; right:auto; left:18px; font-size:8px; text-align:left; transform:none; }
  .contact-hero__baseline { left:18px; right:18px; bottom:38px; grid-template-columns:1fr 1fr; gap:15px; }
  .contact-hero__baseline strong { grid-column:1 / -1; font-size:1.25rem; }
  .contact-hero__baseline span:nth-child(2),.contact-hero__baseline span:last-child { text-align:left; }
  .contact-brief { padding:70px 18px 0; }
  .contact-brief__intro { min-height:72svh; grid-template-columns:1fr; align-content:center; gap:26px; }
  .contact-brief__intro h2 { font-size:21vw; text-align:left; }
  .contact-brief__intro > span { text-align:left; }
  .contact-field,.contact-services { grid-template-columns:1fr; gap:14px; min-height:auto; padding:25px 0; }
  .contact-field input,.contact-field textarea { padding:8px 0 16px; font-size:9vw; }
  .contact-field textarea { min-height:150px; }
  .contact-field::after { left:0; }
  .contact-services legend { display:block; margin-bottom:18px; }
  .contact-services__options { grid-column:1; gap:8px; }
  .contact-services label span { padding:12px; }
  .field-error { bottom:6px; }
  .contact-form__action { grid-template-columns:1fr; align-items:stretch; gap:20px; padding-top:38px; }
  .contact-form__action button,.contact-form__status { grid-column:1; }
  .contact-form__action button { min-height:70px; }
  .contact-marquee__track { font-size:18vw; }
}

@media (prefers-reduced-motion:reduce) {
  .contact-services label span,.contact-form__action button { transition:none; }
}

@media (max-width:1180px) {
  .contact-hero { height:auto; min-height:460px; display:grid; align-content:start; gap:36px; padding:145px 24px 36px; }
  .contact-hero__title { position:relative; inset:auto; justify-content:space-between; gap:20px; font-size:12vw; line-height:.95; }
  .contact-hero__center { position:relative; inset:auto; margin:0; text-align:left; font-size:12px; line-height:1.6; }
  .contact-hero__baseline { position:relative; inset:auto; padding-top:24px; gap:20px; font-size:11px; line-height:1.5; }
  .contact-hero__baseline strong { font-size:20px; line-height:1.2; }
  .contact-brief { padding:72px 32px 0; }
  .contact-brief__intro { min-height:320px; grid-template-columns:1fr 2fr; gap:32px; padding-block:32px 56px; }
  .contact-brief__intro h2 { font-size:8.8vw; line-height:.98; text-align:left; }
  .contact-brief__intro > span { grid-column:2; text-align:left; }
  .contact-brief__intro p,.contact-brief__intro > span { font-size:11px; line-height:1.6; color:#b3b7b0; }
  .contact-field label,.contact-services legend { font-size:12px; line-height:1.5; color:#c0c4bd; }
  .contact-field { grid-template-columns:170px minmax(0,1fr); padding-block:20px; }
  .contact-field input,.contact-field textarea { font-size:clamp(24px,3.7vw,38px); line-height:1.3; padding:16px 0; }
  .contact-field input::placeholder,.contact-field textarea::placeholder { color:#90968f; }
  .contact-field textarea { min-height:200px; }
  .field-error { position:static; grid-column:2; font-size:12px; line-height:1.5; letter-spacing:0; }
  .field-error:empty { display:none; }
  .contact-services { display:block; padding-block:30px; }
  .contact-services legend { margin-bottom:20px; }
  .contact-services__options { margin-left:170px; gap:12px; }
  .contact-services label span { display:flex; align-items:center; min-height:48px; padding:12px 16px; font-size:11px; line-height:1.4; color:#c0c4bd; }
  .contact-form__action { grid-template-columns:170px minmax(0,1fr); gap:20px; }
  .contact-form__action > p:first-child { font-size:11px; line-height:1.6; color:#b3b7b0; }
  .contact-form__action button { min-height:72px; font-size:13px; }
  .contact-form__status { min-width:0; font-size:12px; line-height:1.6; }
}
@media (max-width:700px) {
  .contact-hero { min-height:0; padding:120px 20px 36px; gap:30px; }
  .contact-hero__title { display:grid; grid-template-columns:minmax(0,1fr); justify-content:stretch; gap:8px; font-size:24vw; }
  .contact-hero__title span:last-child { justify-self:end; }
  .contact-hero__baseline { grid-template-columns:1fr 1fr; gap:16px; }
  .contact-hero__baseline strong { grid-column:1 / -1; }
  .contact-hero__baseline span:nth-child(2),.contact-hero__baseline span:last-child { text-align:left; }
  .contact-brief { padding:48px 20px 0; }
  .contact-brief__intro { min-height:0; grid-template-columns:minmax(0,1fr); gap:24px; padding:32px 0 48px; }
  .contact-brief__intro h2 { font-size:19vw; }
  .contact-brief__intro > span { grid-column:1; }
  .contact-field { grid-template-columns:minmax(0,1fr); gap:12px; padding-block:26px; }
  .contact-field input,.contact-field textarea { font-size:clamp(24px,7vw,36px); padding:4px 0; }
  .contact-field textarea { min-height:180px; }
  .field-error { grid-column:1; }
  .contact-services__options { margin-left:0; }
  .contact-form__action { grid-template-columns:minmax(0,1fr); }
  .contact-form__action button,.contact-form__status { grid-column:1; }
  .contact-form { padding-bottom:72px; }
}
