.ksd-screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.contact-form.ksd-support-form{position:relative;display:grid;gap:1rem}
.ksd-support-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem 1rem}
.ksd-support-form__field{display:flex;flex-direction:column;gap:.55rem;min-width:0}
.ksd-support-form__field--full{grid-column:1/-1}
.ksd-support-form__honeypot{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important;opacity:0 !important;pointer-events:none !important}
.contact-form.ksd-support-form .ksd-support-form__control{display:block;width:100%;min-width:0;margin:0;appearance:none;font-family:var(--f-display);font-weight:300;font-size:.92rem;line-height:1.5;padding:.95rem 1rem;border:1px solid rgba(58,58,58,.1);border-radius:16px;background:rgba(255,255,255,.84);box-shadow:inset 0 1px 0 rgba(255,255,255,.5);color:var(--text-primary);outline:none;transition:border-color .3s ease,box-shadow .3s ease,background .3s ease,transform .3s ease;resize:vertical}
.contact-form.ksd-support-form .ksd-support-form__control::placeholder{color:var(--text-muted);font-weight:300}
.contact-form.ksd-support-form .ksd-support-form__control:focus{border-color:rgba(201,149,107,.46);box-shadow:0 0 0 4px rgba(201,149,107,.12);background:rgba(255,255,255,.96)}
.contact-form.ksd-support-form textarea.ksd-support-form__control{min-height:140px}
.ksd-support-form__status{margin:0 0 1.25rem;padding:1rem 1.1rem;border:1px solid transparent;border-radius:var(--radius-md);background:rgba(255,255,255,.62);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-family:var(--f-display);font-size:.72rem;letter-spacing:.08em;line-height:1.8;color:var(--text-primary)}
.ksd-support-form__status[hidden]{display:none}
.ksd-support-form__status.is-success{border-color:rgba(201,149,107,.28);background:rgba(201,149,107,.1)}
.ksd-support-form__status.is-error{border-color:rgba(58,58,58,.08);background:rgba(255,255,255,.78)}
.ksd-support-form__actions{display:flex}
.contact-form.ksd-support-form .ksd-support-form__submit{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:0;gap:.75rem;font-family:var(--f-display);font-size:.74rem;font-weight:300;letter-spacing:.2em;text-transform:uppercase;padding:1rem 2.4rem;border:1px solid var(--text-primary,#3A3A3A);background:var(--text-primary,#3A3A3A);color:var(--bg-primary,#FAF8F5);border-radius:0;cursor:pointer;transition:all .35s ease}
.contact-form.ksd-support-form .ksd-support-form__submit:hover{background:var(--accent-warm,#C9956B);border-color:var(--accent-warm,#C9956B);transform:translateY(-2px)}
.ksd-support-form__button-loading{display:none}
.ksd-support-form.is-submitting .ksd-support-form__button-text{display:none}
.ksd-support-form.is-submitting .ksd-support-form__button-loading{display:inline}
.ksd-support-form.is-submitting .ksd-support-form__submit{opacity:.88;cursor:progress}
.ksd-support-form--page{max-width:100%}
.ksd-support-form--page .ksd-support-form__grid{gap:1rem 1.1rem}
.ksd-support-form--panel .ksd-support-form__control{border-color:rgba(58,58,58,.09);background:rgba(255,255,255,.72)}
.ksd-support-form--panel .ksd-support-form__control:focus{background:rgba(255,255,255,.9)}

body.ksd-support-open{overflow:hidden}

.ksd-consent-banner{position:fixed;left:1rem;bottom:1rem;z-index:10060;width:min(440px,calc(100vw - 2rem));padding:1rem 1.1rem;border:1px solid rgba(58,58,58,.12);border-radius:8px;background:rgba(250,248,245,.98);box-shadow:0 18px 55px rgba(45,42,38,.2);color:var(--text-primary)}
.ksd-consent-banner p{margin:0 0 .45rem;font-size:.84rem;line-height:1.7}
.ksd-consent-banner>a{font-size:.75rem;color:var(--accent-warm);text-decoration:underline;text-underline-offset:2px}
.ksd-consent-banner__actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.85rem}
.ksd-consent-banner__actions button{min-height:38px;padding:.55rem .85rem;border:1px solid rgba(58,58,58,.16);border-radius:4px;background:transparent;color:inherit;cursor:pointer}
.ksd-consent-banner__actions .ksd-consent-banner__accept{border-color:var(--text-primary);background:var(--text-primary);color:var(--bg-primary)}

.ksd-support-widget{position:fixed;right:1.5rem;bottom:1.5rem;z-index:10040}
.ksd-support-widget__overlay{position:fixed;inset:0;z-index:10039;background:rgba(45,42,38,.16);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.ksd-support-widget__launcher{position:relative;z-index:10041;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;min-width:170px;padding:1rem 1.25rem;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.9) 0%,rgba(245,243,239,.94) 100%);box-shadow:0 24px 60px rgba(58,58,58,.14);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);cursor:pointer;transition:transform .35s ease,box-shadow .35s ease,opacity .35s ease;color:var(--text-primary)}
.ksd-support-widget__launcher::before{content:'';position:absolute;left:-12px;top:-16px;width:82px;height:82px;border-radius:50%;background:radial-gradient(circle,rgba(201,149,107,.28) 0%,rgba(201,149,107,0) 72%);pointer-events:none}
.ksd-support-widget__launcher:hover{transform:translateY(-4px);box-shadow:0 28px 70px rgba(58,58,58,.18)}
.ksd-support-widget__launcher-kicker{position:relative;font-family:var(--f-display);font-size:.64rem;font-weight:300;letter-spacing:.24em;text-transform:uppercase;color:var(--text-muted)}
.ksd-support-widget__launcher-text{position:relative;font-family:var(--f-display);font-size:.84rem;font-weight:300;letter-spacing:.12em}

.ksd-support-panel{position:fixed;right:1.5rem;bottom:1.5rem;z-index:10042;width:min(420px,calc(100vw - 2rem));max-height:min(82vh,720px);padding:1.35rem 1.35rem 1.2rem;border:1px solid rgba(255,255,255,.76);border-radius:28px;background:linear-gradient(180deg,rgba(250,248,245,.95) 0%,rgba(245,243,239,.96) 100%);box-shadow:0 34px 90px rgba(45,42,38,.18);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);overflow-x:hidden;overflow-y:auto;opacity:0;transform:translateY(24px) scale(.96);pointer-events:none;transition:transform .35s ease,opacity .35s ease}
.ksd-support-widget.is-open .ksd-support-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.ksd-support-widget.is-open .ksd-support-widget__launcher{opacity:0;transform:translateY(10px);pointer-events:none}
.ksd-support-panel__glow{position:absolute;top:-40px;right:-20px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(201,149,107,.2) 0%,rgba(201,149,107,0) 74%);pointer-events:none}
.ksd-support-panel__close{position:absolute;top:1rem;right:1rem;z-index:10;width:42px;height:42px;border:1px solid rgba(58,58,58,.08);border-radius:50%;background:rgba(255,255,255,.66);cursor:pointer;transition:transform .3s ease,background .3s ease}
.ksd-support-panel__close:hover{transform:rotate(90deg);background:rgba(255,255,255,.92)}
.ksd-support-panel__close span{position:absolute;top:50%;left:50%;width:16px;height:1px;background:var(--text-primary)}
.ksd-support-panel__close span:first-child{transform:translate(-50%,-50%) rotate(45deg)}
.ksd-support-panel__close span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
.ksd-support-panel__header{position:relative;padding:0 2.9rem 1.3rem 0}
.ksd-support-panel__kicker{font-family:var(--f-display);font-size:.68rem;font-weight:300;letter-spacing:.26em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.7rem}
.ksd-support-panel__title{font-family:var(--f-display);font-weight:200;font-size:clamp(1.45rem,2.2vw,2rem);letter-spacing:.08em;margin-bottom:.85rem;color:var(--text-primary)}
.ksd-support-panel__desc{font-size:.95rem;line-height:1.95;color:var(--text-muted);margin-bottom:0}
.ksd-support-panel .ksd-support-form__control{border-color:rgba(58,58,58,.11)}
.ksd-support-panel__footer{margin-top:1.3rem;padding-top:1rem;border-top:1px solid rgba(58,58,58,.08)}
.ksd-support-panel__link{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--f-display);font-size:.7rem;font-weight:300;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-warm)}
.ksd-support-panel__link::after{content:'→';transition:transform .3s ease}
.ksd-support-panel__link:hover::after{transform:translateX(4px)}

.time-night .ksd-support-widget__launcher{border-color:rgba(232,228,221,.12);background:linear-gradient(180deg,rgba(45,42,38,.92) 0%,rgba(35,32,28,.94) 100%);box-shadow:0 24px 60px rgba(0,0,0,.28);color:#E8E4DD}
.time-night .ksd-support-widget__launcher-kicker{color:rgba(232,228,221,.64)}
.time-night .ksd-support-panel{border-color:rgba(232,228,221,.12);background:linear-gradient(180deg,rgba(45,42,38,.96) 0%,rgba(35,32,28,.97) 100%);box-shadow:0 34px 90px rgba(0,0,0,.36)}
.time-night .ksd-support-panel__close{border-color:rgba(232,228,221,.12);background:rgba(55,50,45,.88)}
.time-night .ksd-support-panel__close span{background:#E8E4DD}
.time-night .ksd-support-panel__title{color:#E8E4DD}
.time-night .ksd-support-panel__kicker,.time-night .ksd-support-panel__desc{color:rgba(232,228,221,.64)}
.time-night .contact-form.ksd-support-form .ksd-support-form__control{color:#E8E4DD;border-color:rgba(232,228,221,.16);background:rgba(55,50,45,.74);box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.time-night .contact-form.ksd-support-form .ksd-support-form__control:focus{border-color:rgba(201,149,107,.42);box-shadow:0 0 0 4px rgba(201,149,107,.16);background:rgba(60,54,49,.92)}
.time-night .contact-form.ksd-support-form .ksd-support-form__control::placeholder{color:rgba(232,228,221,.44)}
.time-night .ksd-support-form__status{background:rgba(55,50,45,.78);color:#E8E4DD}
.time-night .ksd-support-form__status.is-success{border-color:rgba(201,149,107,.3);background:rgba(201,149,107,.14)}
.time-night .ksd-support-form__status.is-error{border-color:rgba(232,228,221,.1);background:rgba(55,50,45,.84)}

@media(max-width:640px){
  .ksd-support-form__grid{grid-template-columns:minmax(0,1fr)}
  .ksd-support-form__field--full{grid-column:auto}
}

@media(max-width:768px){
  .ksd-consent-banner{left:.75rem;bottom:.75rem;width:calc(100vw - 1.5rem)}
  .ksd-support-widget{right:1rem;bottom:1rem;left:auto}
  .ksd-support-widget__launcher{min-width:auto;padding:.85rem 1.1rem;border-radius:20px}
  .ksd-support-panel{left:0;right:0;bottom:0;width:auto;max-height:88vh;padding:1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom));border-radius:28px 28px 0 0}
}

/* Form layout and interaction refinements. */
.ksd-support-panel,
.ksd-support-panel *,
.ksd-support-form,
.ksd-support-form *{box-sizing:border-box}
.contact-form.ksd-support-form{gap:1.15rem;width:100%;min-width:0}
.ksd-support-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.1rem;align-items:start}
.ksd-support-form__field--company{grid-column:1/-1}
.ksd-support-form__label{display:block;margin:0;color:var(--text-primary);font-family:var(--f-display);font-size:.72rem;font-weight:500;line-height:1.35;letter-spacing:.08em}
.contact-form.ksd-support-form .ksd-support-form__control{min-height:52px;padding:.82rem 1rem;border-radius:12px;font-size:.9rem;line-height:1.55}
.contact-form.ksd-support-form textarea.ksd-support-form__control{min-height:142px;resize:vertical}
.ksd-support-form__status{margin:0;padding:.8rem .95rem;font-size:.78rem;letter-spacing:.02em;line-height:1.65}
.ksd-support-form__actions{margin-top:.1rem}
.contact-form.ksd-support-form .ksd-support-form__submit{min-height:50px;border-radius:8px;letter-spacing:.16em}
.contact-form.ksd-support-form .ksd-support-form__submit:disabled{transform:none}
.ksd-support-form.is-submitting .ksd-support-form__button-loading::before{content:'';display:inline-block;width:12px;height:12px;margin-right:.5rem;border:1px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:ksd-support-spin .7s linear infinite}
.ksd-support-panel{scrollbar-gutter:stable;overscroll-behavior:contain}
.ksd-support-panel__title{max-width:15ch;font-size:clamp(1.35rem,4vw,1.9rem);line-height:1.15;letter-spacing:.04em}

@keyframes ksd-support-spin{to{transform:rotate(360deg)}}

@media(max-width:640px){
  .ksd-support-form__grid{grid-template-columns:minmax(0,1fr);gap:.85rem}
  .ksd-support-form__field--company{grid-column:auto}
  .ksd-support-panel__header{padding-right:2.5rem;padding-bottom:1rem}
  .ksd-support-panel__desc{font-size:.88rem;line-height:1.7}
}
