.contact-section{background:var(--color-canvas);padding-top:clamp(6.5rem,10vw,8.5rem);padding-bottom:clamp(4rem,8vw,7.5rem);position:relative;overflow:hidden}.contact-page-intro{max-width:40rem;margin-bottom:clamp(2.5rem,5vw,3.5rem)}.contact-page-title{letter-spacing:-.03em;color:var(--color-ink);font-size:clamp(2rem,4.2vw,3.25rem);font-weight:700;line-height:1.1}.contact-page-lead{color:var(--color-muted);margin-top:1rem;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.75}.contact-page-grid{align-items:start;gap:2.5rem;display:grid}@media (min-width:1024px){.contact-page-grid{grid-template-columns:.95fr 1.05fr;gap:4rem}}.contact-section-backdrop{pointer-events:none;position:absolute;inset:0}.contact-channels-grid{gap:.85rem;display:grid}.contact-channel-card{border:1px solid var(--color-line);background:color-mix(in srgb, var(--color-surface) 88%, transparent);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.15rem;align-items:center;gap:1rem;padding:1.1rem 1.15rem;text-decoration:none;transition:border-color .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}a.contact-channel-card:hover{border-color:color-mix(in srgb, var(--color-accent) 35%, var(--color-line));box-shadow:var(--shadow-lift)}.contact-channel-icon{border-radius:.9rem;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;display:flex}.contact-channel-icon-accent{background:color-mix(in srgb, var(--color-accent) 16%, var(--color-cloud));color:var(--color-accent)}.contact-channel-icon-violet{background:color-mix(in srgb, var(--color-violet) 16%, var(--color-cloud));color:var(--color-violet)}.contact-channel-icon-cyan{background:color-mix(in srgb, var(--color-cyan) 16%, var(--color-cloud));color:var(--color-cyan)}.contact-channel-icon-warning{background:color-mix(in srgb, var(--color-warning) 16%, var(--color-cloud));color:var(--color-warning)}.contact-channel-body{flex-direction:column;gap:.15rem;min-width:0;display:flex}.contact-channel-label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-faint);font-size:.72rem;font-weight:700}.contact-channel-value{color:var(--color-ink);word-break:break-word;font-size:.92rem;font-weight:600}.contact-channel-glow{background:color-mix(in srgb, var(--color-accent) 12%, transparent);opacity:0;border-radius:999px;width:8rem;height:8rem;transition:opacity .3s;position:absolute;inset:auto -20% -60% auto}a.contact-channel-card:hover .contact-channel-glow{opacity:1}.contact-form-panel{border:1px solid var(--color-line);background:color-mix(in srgb, var(--color-surface) 92%, transparent);box-shadow:var(--shadow-lift);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:1.5rem;padding:1.75rem;position:relative;overflow:hidden}@media (min-width:640px){.contact-form-panel{padding:2rem 2.15rem}}.contact-form-panel-accent{background:linear-gradient(90deg, var(--color-accent), var(--color-violet), var(--color-cyan));height:3px;position:absolute;inset:0 0 auto}.contact-form-header{margin-bottom:1.5rem}.contact-form-title{letter-spacing:-.02em;color:var(--color-ink);font-size:1.35rem;font-weight:700}.contact-form-subtitle{color:var(--color-muted);margin-top:.4rem;font-size:.88rem;line-height:1.6}.contact-form{flex-direction:column;gap:1.15rem;display:flex}.contact-form-grid{gap:1.15rem;display:grid}@media (min-width:640px){.contact-form-grid{grid-template-columns:1fr 1fr}}.contact-field{align-items:flex-start;display:flex;position:relative}.contact-field-icon{z-index:2;color:var(--color-faint);pointer-events:none;transition:color .2s;position:absolute;top:1.05rem;left:1rem}.contact-field-input{border:1px solid var(--color-line-strong);background:var(--color-cloud);width:100%;min-height:3.35rem;color:var(--color-ink);resize:none;border-radius:1rem;outline:none;padding:1.35rem 1rem .55rem 2.65rem;font-size:.92rem;transition:border-color .25s,background-color .25s,box-shadow .25s}textarea.contact-field-input{min-height:8.5rem;padding-top:1.55rem}.contact-field-label{color:var(--color-faint);pointer-events:none;transform-origin:0 0;font-size:.92rem;font-weight:500;transition:transform .2s,color .2s;position:absolute;top:1.05rem;left:2.65rem}.contact-field-line{background:linear-gradient(90deg, var(--color-accent), var(--color-violet));transform-origin:0;border-radius:999px;height:2px;transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:1rem;right:1rem;transform:scaleX(0)}.contact-field-input:focus{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-line-strong));background:var(--color-surface);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-accent) 12%, transparent)}.contact-field-input:focus+.contact-field-label,.contact-field-input:not(:placeholder-shown)+.contact-field-label{color:var(--color-accent);transform:translateY(-.72rem)scale(.82)}.contact-field:focus-within .contact-field-icon{color:var(--color-accent)}.contact-field:focus-within .contact-field-line{transform:scaleX(1)}.contact-field--select .contact-field-label{color:var(--color-accent-strong);transform:translateY(-.72rem)scale(.82)}html.dark .contact-field--select .contact-field-label{color:color-mix(in srgb, var(--color-accent) 82%, white)}.contact-field-select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--color-muted) 50%), linear-gradient(135deg, var(--color-muted) 50%, transparent 50%);background-position:calc(100% - 1.1rem) calc(50% + .12rem),calc(100% - .8rem) calc(50% + .12rem);background-repeat:no-repeat;background-size:.32rem .32rem,.32rem .32rem;padding-right:2.25rem}.contact-field-select:focus{background-color:var(--color-surface)}.contact-field-select option{color:var(--color-ink);background:var(--color-surface)}.contact-form-submit{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-strong));color:#fff;cursor:pointer;border:none;border-radius:1rem;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:3rem;font-size:.92rem;font-weight:600;transition:transform .2s,box-shadow .2s,filter .2s;display:inline-flex;box-shadow:0 14px 32px -14px #2563eba6}.contact-form-submit:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-2px);box-shadow:0 18px 36px -14px #2563ebbf}.contact-form-submit:disabled{opacity:.72;cursor:not-allowed}.contact-form-note{text-align:center;color:var(--color-faint);font-size:.72rem}.contact-form-error{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger);border-radius:.85rem;padding:.7rem .9rem;font-size:.84rem;font-weight:500}.contact-form-success{text-align:center;flex-direction:column;align-items:center;padding:2.5rem 1rem;display:flex}.contact-form-success-icon{background:color-mix(in srgb, var(--color-success) 14%, transparent);width:4.25rem;height:4.25rem;color:var(--color-success);border-radius:999px;justify-content:center;align-items:center;display:flex}.contact-form-success-title{color:var(--color-ink);margin-top:1.25rem;font-size:1.25rem;font-weight:700}.contact-form-success-text{max-width:18rem;color:var(--color-muted);margin-top:.45rem;font-size:.88rem;line-height:1.6}
