.contact-hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden;background:var(--paper)}.contact-hero .hero-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,rgba(17,53,80,.06) 1px,transparent 0),linear-gradient(180deg,rgba(17,53,80,.06) 1px,transparent 0);background-size:56px 56px}.contact-hero-inner{position:relative;padding:84px 0 64px;padding-inline:clamp(0px,calc(var(--gutter) - (100vw - 1240px) / 2),var(--gutter))}.contact-title{font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(34px,7.5vw,104px);line-height:.96;letter-spacing:-.005em;color:var(--navy);margin:18px 0 22px}.contact-sub{max-width:480px;font-size:17px;color:var(--navy-70)}.contact-sub strong{color:var(--navy);font-weight:600}.contact-body{padding:90px 0 110px;background:var(--paper)}.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:60px;gap:60px;align-items:start}@media(max-width:960px){.contact-grid{grid-template-columns:1fr}}.contact-grid>*{min-width:0}.contact-form-panel{border:1px solid var(--line);background:var(--white);padding:34px;position:relative}.contact-form-panel .tag{position:absolute;top:-1px;right:-1px;background:var(--navy);color:var(--white);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px}.contact-form{display:flex;flex-direction:column;gap:22px;margin-top:10px}.field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px}@media(max-width:600px){.field-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:8px}.field label{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--steel)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:15px;color:var(--navy-deep);background:var(--paper);border:1px solid var(--line);border-radius:0;padding:12px 14px;width:100%;transition:border-color .15s,background .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field select{background-image:linear-gradient(45deg,transparent 49%,var(--navy) 50%),linear-gradient(135deg,var(--navy) 50%,transparent 51%);background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-size:6px 6px;background-repeat:no-repeat}.field textarea{resize:vertical;min-height:140px}.field input::placeholder,.field textarea::placeholder{color:var(--steel)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);background:var(--white)}.contact-form .btn{align-self:flex-start}.form-note{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;color:var(--steel);max-width:46ch}.contact-aside{display:flex;flex-direction:column;gap:22px}.aside-card{border:1px solid var(--line);background:var(--white);padding:26px 26px 28px;position:relative}.aside-card:before{top:12px;left:12px;border-top:2px solid var(--navy);border-left:2px solid var(--navy)}.aside-card:after,.aside-card:before{content:"";position:absolute;width:10px;height:10px}.aside-card:after{bottom:12px;right:12px;border-bottom:2px solid var(--navy);border-right:2px solid var(--navy)}.aside-card .code{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--steel);margin-bottom:12px}.aside-big{display:block;font-family:var(--font-display);font-weight:600;font-size:22px;text-transform:uppercase;color:var(--navy);line-height:1.3;transition:color .15s}.aside-big:hover{color:var(--navy-70)}.aside-rows{display:flex;flex-direction:column}.aside-row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px dashed var(--line);font-size:14px;color:var(--navy-70)}.aside-row:last-child{border-bottom:0}.aside-row span:last-child{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);white-space:nowrap}.file-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.file-tags span{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;border:1px dashed var(--steel);color:var(--navy);padding:5px 10px}.aside-note{font-size:13.5px;color:var(--navy-70)}.aside-card{transition:transform .18s,box-shadow .18s,border-color .18s}.aside-card:after,.aside-card:before{transition:width .18s,height .18s,border-color .18s}.aside-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(11,35,56,.1);border-color:var(--navy)}.aside-card:hover:after,.aside-card:hover:before{width:16px;height:16px}.aside-card:hover .code{color:var(--navy)}.file-tags span{transition:background .15s,color .15s,border-color .15s;cursor:default}.file-tags span:hover{background:var(--navy);color:var(--white);border-color:var(--navy);border-style:solid}.aside-row{transition:background .15s,padding-left .15s}.aside-row:hover{background:rgba(17,53,80,.045);padding-left:8px}.aside-big{width:-moz-fit-content;width:fit-content;border-bottom:2px solid transparent;transition:border-color .15s,color .15s}.aside-big:hover{color:var(--navy);border-bottom-color:var(--navy)}.contact-form-panel{transition:border-color .2s,box-shadow .2s}.contact-form-panel:focus-within,.contact-form-panel:hover{border-color:var(--navy);box-shadow:0 18px 40px rgba(11,35,56,.08)}.contact-form-panel .tag{transition:background .2s,color .2s}.contact-form-panel:focus-within .tag,.contact-form-panel:hover .tag{background:var(--kraft);color:var(--navy-deep)}.aside-address{font-style:normal;font-size:15.5px;line-height:1.6;color:var(--navy)}.aside-address span{display:block}.aside-map{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--kraft);padding-bottom:2px;transition:border-color .15s}.aside-map:hover{border-bottom-color:var(--navy)}@media(max-width:768px),(pointer:coarse) and (max-height:500px){.contact-hero-inner{padding-top:56px;padding-bottom:48px}.contact-sub{font-size:16px}.contact-body{padding:56px 0 72px}.contact-grid{gap:40px}.field input,.field select,.field textarea{font-size:16px;min-height:46px}.contact-form .btn{min-height:44px}.aside-big{padding:8px 0;overflow-wrap:anywhere}.aside-map{min-height:44px}.aside-note,.aside-row{font-size:15px}}@media(max-width:480px){.contact-form-panel{padding:44px 18px 24px}.contact-form .btn{width:100%;justify-content:center;text-align:center}.aside-card{padding:26px 20px}.aside-big{font-size:20px}.aside-row{flex-wrap:wrap;gap:4px 16px}}