/* GSCON-inspired project brief, scoped to the KTIRIA shortcode. */
.elementor .kt-footer-lead p { max-width:360px; margin:0; color:rgba(255,255,255,.65); font-size:clamp(16px,1.5vw,20px); line-height:1.5; }
.elementor .kt-wizard-widget { width:100%; max-width:1200px; margin:0 auto; }
.kt-wizard-shell { color:#fff; scroll-margin-top:90px; }
.kt-wizard { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(290px,1fr); width:100%; border:1px solid rgba(255,255,255,.22); color:#fff; }
.kt-wizard * { box-sizing:border-box; }
.kt-wizard-main { min-width:0; padding:clamp(24px,3vw,48px); background:var(--kt-ink); }
.kt-wizard-progress { display:flex; align-items:center; gap:18px; margin-bottom:38px; color:#aebbc9; font-family:var(--kt-mono); font-size:13px; white-space:nowrap; }
.kt-wizard-progress strong { color:#fff; font-weight:600; }
.kt-wizard-track { display:block; flex:1; height:2px; background:rgba(255,255,255,.25); }
.kt-wizard-track span { display:block; width:20%; height:100%; background:var(--kt-blue); transition:width .25s ease; }
.kt-wizard-step[hidden], .kt-wizard-back[hidden] { display:none!important; }
.kt-wizard-step { min-width:0; }
.kt-wizard-step h3 { margin:0; scroll-margin-top:96px; color:#fff; font-family:var(--kt-sans); font-size:clamp(25px,2.2vw,34px); line-height:1.16; letter-spacing:-.04em; font-weight:700; }
.kt-wizard-step h3:focus { outline:none; }
.kt-wizard-step > p { margin:10px 0 26px; color:#c3d0dd; font-size:15px; line-height:1.55; }
.kt-wizard button { border-radius:0; font:inherit; cursor:pointer; }
.kt-wizard-types { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.kt-wizard-type { position:relative; min-width:0; height:140px; overflow:hidden; padding:15px; border:1px solid rgba(255,255,255,.38); background:#25364a; color:#fff; text-align:left; isolation:isolate; }
.kt-wizard-type:last-child { grid-column:1/-1; height:115px; }
.kt-wizard-type::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(6,12,20,.32),rgba(6,12,20,.86)); }
.kt-wizard-type img { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.kt-wizard-type > span:not(.kt-wizard-check) { position:absolute; z-index:2; left:15px; right:40px; bottom:14px; font-size:17px; font-weight:700; line-height:1.2; }
.kt-wizard-type:hover img { transform:scale(1.05); }
.kt-wizard-type:hover, .kt-wizard-type[aria-pressed="true"] { border-color:var(--kt-blue); }
.kt-wizard-check { display:none; position:absolute; z-index:2; top:12px; right:12px; width:25px; height:25px; align-items:center; justify-content:center; background:var(--kt-blue); color:var(--kt-ink); font-size:15px; font-weight:700; }
.kt-wizard-type[aria-pressed="true"] .kt-wizard-check { display:flex; }
.kt-wizard-options { display:grid; gap:11px; }
.kt-wizard-option { display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; min-height:59px; padding:16px 18px; border:1px solid rgba(255,255,255,.4); background:transparent; color:#fff; text-align:left; font-size:16px!important; font-weight:600!important; line-height:1.3; transition:background .2s ease,color .2s ease; }
.kt-wizard-option:hover, .kt-wizard-option[aria-pressed="true"] { background:#fff; border-color:#fff; color:var(--kt-ink); }
.kt-wizard-option > span:last-child { font-size:20px; }
.kt-wizard-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.kt-wizard-fields label { display:flex; flex-direction:column; gap:8px; min-width:0; color:#dce6ee; font-family:var(--kt-mono); font-size:12px; font-weight:500; letter-spacing:.06em; }
.kt-wizard-fields label:last-child { grid-column:1/-1; }
.kt-wizard-fields input, .kt-wizard-fields textarea { display:block; width:100%; padding:13px 14px; border:1px solid #9aa9b8; border-radius:0; background:rgba(255,255,255,.06); color:#fff; font-family:var(--kt-sans); font-size:16px; line-height:1.4; }
.kt-wizard-fields input:focus, .kt-wizard-fields textarea:focus { outline:2px solid var(--kt-blue); outline-offset:2px; }
.kt-wizard-submit { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:48px; margin-top:26px; padding:13px 22px; border:1px solid #fff; background:#fff; color:var(--kt-ink); font-size:15px!important; font-weight:700!important; }
.kt-wizard-submit:hover { border-color:var(--kt-blue-text); background:var(--kt-blue-text); color:#fff; }
.kt-wizard-back { margin-top:24px; padding:0; border:0; background:transparent; color:#d0dbe5; font-size:14px!important; font-weight:600!important; }
.kt-wizard-back:hover { color:#fff; }
.kt-wizard-trap { position:absolute!important; left:-9999px!important; }
.kt-wizard-summary { min-width:0; display:flex; flex-direction:column; padding:clamp(24px,3vw,48px); background:var(--kt-navy); }
.kt-wizard-summary-heading { margin:0 0 27px; color:#e5edf4; font-family:var(--kt-mono); font-size:12px; letter-spacing:.13em; text-transform:uppercase; }
.kt-wizard-summary dl { margin:0; flex:1; }
.kt-wizard-summary dl > div { display:flex; justify-content:space-between; gap:20px; padding:17px 0; border-bottom:1px solid rgba(255,255,255,.22); }
.kt-wizard-summary dt { color:#cfdeea; font-size:14px; }
.kt-wizard-summary dd { max-width:58%; margin:0; color:#fff; font-size:14px; font-weight:600; text-align:right; overflow-wrap:anywhere; }
.kt-wizard-summary-note { margin:30px 0 0; padding-top:24px; border-top:1px solid rgba(255,255,255,.22); color:#c6d6e5; font-size:13px; line-height:1.5; }
.kt-wizard-error { margin:0 0 22px; color:#ffbdbd; font-size:14px; line-height:1.5; }
.kt-wizard-done { padding:clamp(28px,5vw,70px); border:1px solid rgba(255,255,255,.22); background:var(--kt-ink); }
.kt-wizard-done-mark { display:inline-flex; width:48px; height:48px; align-items:center; justify-content:center; margin-bottom:24px; background:var(--kt-blue); color:var(--kt-ink); font-size:25px; }
.kt-wizard-done h3 { margin:0 0 12px; color:#fff; font-family:var(--kt-sans); font-size:clamp(26px,3vw,40px); }
.kt-wizard-done p { max-width:52ch; color:#dce6ee; font-size:16px; line-height:1.6; }
.kt-wizard-done a { display:inline-block; margin-top:18px; color:#fff; font-size:15px; font-weight:700; text-decoration:underline; text-underline-offset:6px; }
@media (max-width:767px) {
  .elementor .kt-wizard-widget { margin-bottom:68px; }
  .kt-wizard { grid-template-columns:1fr; }
  .kt-wizard-summary { padding:28px; }
  .kt-wizard-summary-note { margin-top:10px; }
}
@media (max-width:520px) {
  .elementor .kt-footer-top.e-con { padding-bottom:34px; }
  .kt-wizard-main, .kt-wizard-summary { padding:24px 18px; }
  .kt-wizard-progress { margin-bottom:30px; }
  .kt-wizard-types { gap:9px; }
  .kt-wizard-type { height:125px; padding:12px; }
  .kt-wizard-type:last-child { height:105px; }
  .kt-wizard-type > span:not(.kt-wizard-check) { left:12px; right:25px; bottom:12px; font-size:14px; }
  .kt-wizard-fields { grid-template-columns:1fr; }
  .kt-wizard-fields label:last-child { grid-column:auto; }
  .kt-wizard-submit { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .kt-wizard-track span, .kt-wizard-type img, .kt-wizard-option { transition:none; }
}
