.contact-page{background:radial-gradient(1200px 480px at 12% -10%, #1b5c5714, transparent 60%), var(--kama-canvas);min-height:calc(100dvh - 8vh);color:var(--kama-ink);padding:5.5rem 1.25rem 4rem}@media (min-width:1024px){.contact-page{padding:7.5rem 2rem 5.5rem}}.contact-wrap{width:min(68rem,100%);margin-inline:auto}.contact-grid{gap:1.5rem;display:grid}@media (min-width:900px){.contact-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;gap:2rem}}.contact-visual{isolation:isolate;background:#1a2428;border-radius:1.5rem;min-height:22rem;position:relative;overflow:hidden}@media (min-width:900px){.contact-visual{min-height:42rem}}.contact-visual img{object-fit:cover;object-position:55% 42%}.contact-visual__scrim{pointer-events:none;background:linear-gradient(#0c1a1a14 0%,#0c1a1a1f 42%,#0c1a1ac7 100%);position:absolute;inset:0}.contact-visual__copy{z-index:1;flex-direction:column;justify-content:flex-end;padding:1.5rem 1.25rem 1.4rem;display:flex;position:absolute;inset:0}@media (min-width:640px){.contact-visual__copy{padding:2rem 1.75rem 1.75rem}}.contact-kicker{letter-spacing:.22em;text-transform:uppercase;color:#d7ece8;margin:0;font-size:.7rem;font-weight:700}.contact-visual__copy h1{letter-spacing:-.035em;color:#f7f4ee;text-shadow:0 12px 32px #0c1a1a59;margin:.7rem 0 0;font-size:clamp(1.85rem,3.4vw,2.85rem);font-weight:600;line-height:1.12}.contact-lede{color:#f7f4eedb;max-width:28rem;margin:.85rem 0 0;font-size:.98rem;line-height:1.6}.contact-inbox{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:inherit;background:#0c1a1a52;border:1px solid #f7f4ee38;border-radius:1rem;flex-direction:column;align-self:flex-start;gap:.2rem;margin:1.25rem 0 0;padding:.85rem 1rem;text-decoration:none;display:inline-flex}.contact-inbox span{letter-spacing:.14em;text-transform:uppercase;color:#f7f4eeb3;font-size:.7rem;font-weight:700}.contact-inbox strong{color:#f7f4ee;font-size:.98rem;font-weight:600}.contact-card{background:var(--kama-surface);border:1px solid var(--kama-border);border-radius:1.5rem;padding:1.5rem 1.25rem 1.6rem;box-shadow:0 18px 50px #0c1a1a0d}@media (min-width:640px){.contact-card{padding:1.85rem 1.75rem 1.9rem}}.contact-form h2{letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:600}.contact-form__lede{color:var(--kama-ink-muted);margin:.4rem 0 1.25rem;font-size:.95rem;line-height:1.55}.contact-field{flex-direction:column;gap:.35rem;margin-bottom:.9rem;display:flex}.contact-field label{letter-spacing:.06em;text-transform:uppercase;color:#3d4f4e;font-size:.72rem;font-weight:700}.contact-field input,.contact-field textarea{border:1px solid var(--kama-border-strong);background:var(--kama-field);width:100%;font:inherit;color:var(--kama-ink);border-radius:.85rem;padding:.78rem .9rem}.contact-field textarea{resize:vertical;min-height:8.5rem}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--kama-accent);box-shadow:var(--kama-focus-ring);background:#fff;outline:none}.contact-topics{flex-wrap:wrap;gap:.45rem;display:flex}.contact-topics label{text-transform:none;letter-spacing:0;border:1px solid var(--kama-border-strong);color:var(--kama-ink);cursor:pointer;background:#fff;border-radius:999px;padding:.5rem .85rem;font-size:.84rem;font-weight:600}.contact-topics input{opacity:0;pointer-events:none;position:absolute}.contact-topics label:has(input:checked){background:var(--kama-accent);border-color:var(--kama-accent);color:#fff}.contact-topics label:has(input:focus-visible){box-shadow:var(--kama-focus-ring)}.contact-hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form__err{color:var(--kama-danger);margin:.15rem 0 .7rem;font-size:.88rem}.contact-submit{background:var(--kama-accent);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:3rem;padding:.7rem 1.4rem;font-size:.92rem;font-weight:650;display:inline-flex}.contact-submit:hover:not(:disabled){background:var(--kama-accent-hover)}.contact-submit:disabled{opacity:.65;cursor:wait}.contact-success h2{letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:600}.contact-success p{color:var(--kama-ink-muted);margin:.7rem 0 1.25rem;line-height:1.6}