.tiko-contact { --contact-ink: #16222b; --contact-paper: #fffdf5; --contact-accent: #f2c94c; max-width: 760px; padding: clamp(22px, 4vw, 40px); margin-block: 28px 56px; background: var(--contact-paper); color: var(--contact-ink); border: 1px solid currentColor; border-radius: 24px; font-family: inherit; }
.tiko-contact--samen { --contact-ink: #153638; --contact-paper: #fbf5e9; --contact-accent: #d5a33f; border-radius: 24px 24px 48px 24px; }
.tiko-contact--ruilm { --contact-paper: #fff9e8; --contact-accent: #ffcf32; border: 2px solid #111; box-shadow: 5px 5px 0 #111; }
.tiko-contact--labs { --contact-ink: #141414; --contact-paper: #f4f0e6; --contact-accent: #e8ee48; border-radius: 0; }
.tiko-contact fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.tiko-contact label { display: block; font-size: 1rem; font-weight: 650; margin-block: 0 20px; }
.tiko-contact input, .tiko-contact textarea { display: block; width: 100%; box-sizing: border-box; margin-top: 8px; padding: 12px 14px; min-height: 48px; border: 1px solid #8c969b; border-radius: 10px; background: #fff; color: #16222b; font: inherit; font-weight: 400; }
.tiko-contact textarea { resize: vertical; }
.tiko-contact :focus-visible { outline: 3px solid var(--contact-ink); outline-offset: 4px; }
.tiko-contact__row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.tiko-contact button { display: inline-flex; align-items: center; justify-content: center; gap: 24px; min-height: 48px; padding: 12px 20px; border: 1px solid var(--contact-ink); border-radius: 999px; background: var(--contact-accent); color: var(--contact-ink); cursor: pointer; font: inherit; font-weight: 700; }
.tiko-contact fieldset:disabled { opacity: .6; }
.tiko-contact fieldset:disabled button { cursor: not-allowed; }
.tiko-contact__notice, .tiko-contact__privacy, .tiko-contact__status { font-size: .95rem; line-height: 1.6; }
.tiko-contact__privacy a { text-decoration: underline; text-underline-offset: 3px; }
.tiko-contact__status { margin: 18px 0 0; font-weight: 600; }
.tiko-contact__status:empty { display: none; }
.tiko-contact__trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 600px) { .tiko-contact__row { grid-template-columns: 1fr; gap: 0; } .tiko-contact button { width: 100%; } }
