.page-hero{padding:80px 0 8px}.page-hero h1{font-size:clamp(52px,8vw,112px);line-height:.94;letter-spacing:-.035em;font-weight:500;margin:20px 0 0;max-width:14ch}.page-hero h1 em{font-family:var(--ft-font-serif);font-style:italic;color:var(--ft-signal);font-weight:400}.page-hero .lead{color:var(--ft-ink-2);font-size:19px;line-height:1.5;max-width:48ch;margin-top:28px}.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:72px;align-items:start}.ct-form{display:flex;flex-direction:column;gap:18px}.ct-form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ft-input{display:flex;flex-direction:column;gap:7px}.ft-input label{font-family:var(--ft-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ft-ink-3)}.ft-input input,.ft-input textarea{padding:13px 15px;border-radius:var(--ft-r-sm);border:1px solid var(--ft-line-strong);background:var(--ft-bg-1);font-size:15px;outline:none;width:100%;transition:border-color var(--ft-dur),box-shadow var(--ft-dur);font-family:var(--ft-font-sans);color:var(--ft-ink)}.ft-input input:focus,.ft-input textarea:focus{border-color:var(--ft-signal);box-shadow:0 0 0 3px color-mix(in oklab,var(--ft-signal) 22%,transparent)}.ft-input textarea{resize:vertical;min-height:130px;line-height:1.5}.ft-input input.invalid,.ft-input textarea.invalid{border-color:var(--ft-danger)}.ft-input .field-error{font-family:var(--ft-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ft-danger);margin-top:2px;display:none}.ft-input .field-error.visible{display:block}.ct-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:4px}.ct-note{color:var(--ft-ink-3);font-size:12px;font-family:var(--ft-font-mono);letter-spacing:.08em;text-transform:uppercase}.ct-notice{padding:14px 18px;border-radius:var(--ft-r-sm);font-size:14px;line-height:1.5;display:none;margin-top:4px}.ct-notice.visible{display:block}.ct-notice--info{background:var(--ft-bg-1);border:1px solid var(--ft-line-strong);color:var(--ft-ink-2)}.ct-notice--error{background:color-mix(in oklab,var(--ft-danger) 12%,transparent);border:1px solid color-mix(in oklab,var(--ft-danger) 40%,transparent);color:var(--ft-danger)}.ct-notice b{color:var(--ft-ink)}.ft-btn--loading{opacity:.7;pointer-events:none;cursor:not-allowed}.ct-info{border-left:1px solid var(--ft-line);padding-left:48px}.info-item{padding:22px 0;border-top:1px solid var(--ft-line)}.info-item:first-child{padding-top:0;border-top:0}.info-item .label{display:flex;align-items:center;gap:8px;font-family:var(--ft-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ft-ink-3);margin-bottom:10px;white-space:nowrap}.info-item .val{font-size:19px;letter-spacing:-.01em;line-height:1.4;color:var(--ft-ink)}.info-item a.val{text-decoration:none;transition:color var(--ft-dur)}.info-item a.val:hover{color:var(--ft-signal)}.info-item .val.addr{font-size:16px;color:var(--ft-ink-2)}.ct-success{padding:56px 32px;text-align:center;border:1px solid var(--ft-line);border-radius:var(--ft-r-lg);background:var(--ft-bg-1)}.ct-success h3{font-size:34px;letter-spacing:-.02em;margin:16px 0 12px;font-weight:500}.ct-success p{color:var(--ft-ink-2);font-size:16px;max-width:42ch;margin:0 auto;line-height:1.55}.maps-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.map-card .map-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:12px;flex-wrap:wrap}.map-card .label{display:flex;align-items:center;gap:8px;font-family:var(--ft-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ft-ink-3);white-space:nowrap}.map-card .dir{display:inline-flex;align-items:center;gap:6px;font-family:var(--ft-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ft-ink-2);text-decoration:none;transition:color var(--ft-dur)}.map-card .dir:hover{color:var(--ft-signal)}.map-frame{border:1px solid var(--ft-line);border-radius:var(--ft-r-md);overflow:hidden;background:var(--ft-bg-3);height:320px}.map-frame iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.35) contrast(1.02)}.ct-honeypot{display:none!important;visibility:hidden}@media(max-width:880px){.contact-grid{grid-template-columns:1fr;gap:48px}.ct-info{border-left:0;padding-left:0;border-top:1px solid var(--ft-line);padding-top:8px}.ct-form .row,.maps-grid{grid-template-columns:1fr}}
