.contact-page{min-height:100svh;background:var(--paper);color:var(--ink)}.contact-hero{padding:clamp(150px,15vw,220px) 7vw clamp(72px,7vw,105px);border-bottom:1px solid rgba(35,32,24,.14)}.contact-hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end;max-width:1500px;margin:0 auto}.contact-hero h1{max-width:920px;margin:18px 0 0;font-family:Libre Caslon Display,serif;font-size:clamp(72px,8.2vw,128px);font-weight:400;line-height:.92;letter-spacing:-.045em}.contact-intro{max-width:620px;font-family:Libre Caslon Display,serif;font-size:clamp(24px,2.15vw,34px);line-height:1.3;color:#232018cc}.contact-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:7vw;padding:clamp(72px,7vw,108px) 7vw clamp(100px,10vw,150px);max-width:1500px;margin:0 auto;align-items:start}.contact-aside{align-self:start;position:sticky;top:92px}.contact-visual{position:relative;margin:0;min-height:620px;aspect-ratio:.86/1;overflow:hidden;background:#9a9588;color:#fff}.contact-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(.96)}.contact-visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,#12120e0d 16%,#12120e29 50%,#12120ebd)}.contact-visual-copy{position:absolute;inset:auto 0 0;display:grid;grid-template-columns:1fr;gap:28px;padding:clamp(28px,3vw,42px);z-index:2;text-shadow:0 2px 18px rgba(0,0,0,.18)}.contact-visual-kicker{margin:0 0 12px;font-size:12px;line-height:1.4;text-transform:uppercase;letter-spacing:.14em;color:#ffffffc7}.contact-visual-text{margin:0;max-width:470px;font-family:Libre Caslon Display,serif;font-size:clamp(25px,2.25vw,34px);line-height:1.25;color:#fff}.contact-markers{display:flex;flex-wrap:wrap;gap:14px 30px;list-style:none;margin:20px 0 0;padding:0}.contact-markers li{position:relative;padding-left:14px;font-size:11px;line-height:1.45;text-transform:uppercase;letter-spacing:.1em;color:#232018b8}.contact-markers li:before{content:"";position:absolute;left:0;top:.54em;width:5px;height:5px;border:1px solid currentColor;border-radius:50%}.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px;padding-top:8px}.contact-field{display:flex;flex-direction:column;gap:9px}.contact-field-full{grid-column:1/-1}.contact-field label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.13em;color:#232018b8}.contact-field input,.contact-field textarea{width:100%;border:1px solid rgba(35,32,24,.22);border-radius:2px;background:#ffffff38;color:var(--ink);padding:14px 15px 15px;font-family:DM Sans,sans-serif;font-size:16px;line-height:1.5;outline:none;box-shadow:inset 0 0 0 1px #ffffff14;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.contact-field input:hover,.contact-field textarea:hover{border-color:#2320185c;background:#ffffff4d}.contact-field input:focus,.contact-field textarea:focus{border-color:#303429b8;background:#ffffff61;box-shadow:0 0 0 2px #30342914}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#23201857}.contact-field textarea{min-height:190px;resize:vertical}.contact-actions{grid-column:1/-1;display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:10px}.contact-submit{appearance:none;border:0;border-bottom:1px solid currentColor;background:transparent;padding:8px 0;color:var(--ink);font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.contact-helper{margin:0;max-width:420px;font-size:12px;line-height:1.55;color:#23201885}@media(max-width:1100px)and (min-width:901px){.contact-layout{grid-template-columns:.95fr 1.05fr;gap:5vw}.contact-visual{min-height:560px}.contact-visual-text{font-size:28px}}@media(max-width:900px){.contact-hero{padding:125px 20px 62px}.contact-hero-inner{grid-template-columns:1fr;gap:34px}.contact-hero h1{font-size:clamp(62px,16vw,92px)}.contact-intro{font-size:clamp(24px,6vw,32px)}.contact-layout{grid-template-columns:1fr;gap:48px;padding:46px 20px 100px}.contact-aside{position:static}.contact-visual{min-height:0;aspect-ratio:1.08/1}.contact-visual-copy{padding:26px 22px}.contact-visual-text{font-size:clamp(26px,6.4vw,34px)}.contact-markers{gap:12px 22px}.contact-form{grid-template-columns:1fr;padding-top:10px}.contact-field-full{grid-column:auto}.contact-actions{grid-column:auto;align-items:flex-start;flex-direction:column;gap:16px}}@media(max-width:560px){.contact-visual{aspect-ratio:.9/1}.contact-markers{display:grid;grid-template-columns:1fr;gap:10px}.contact-markers li{font-size:10px}.contact-visual-copy{gap:20px}}
