/* Thrust quote form v1.1
 * Every rule is scoped to .tq-wrap, and the properties that WordPress themes force on inputs and buttons
 * (background, border, radius, padding, height, margins, shadows) carry !important, so the form looks
 * the same on any page builder or theme (the JotForm iframe got this isolation for free). */
.tq-wrap{
  --tq-accent:#cf2a43;--tq-accent-hover:#b3203a;--tq-accent-ring:rgba(207,42,67,.22);
  --tq-text:#14181d;--tq-muted:#5b6571;--tq-err:#c4271f;
  --tq-field-bg:#fff;--tq-field-text:#14181d;--tq-field-border:#d3d9e0;--tq-field-border-hover:#aab3bd;--tq-placeholder:#8b949e;
  --tq-seg-bg:#eef1f4;--tq-seg-text:#3d4650;--tq-choice-bg:#fff;--tq-choice-border:#d3d9e0;
  --tq-icon:#7a848f;--tq-h:50px;--tq-r:10px;
  font-family:inherit;color:var(--tq-text);width:100%;max-width:1040px;margin:0 auto;box-sizing:border-box;text-align:left;line-height:1.4
}
.tq-wrap.tq-dark{
  --tq-text:#fff;--tq-muted:rgba(255,255,255,.78);--tq-err:#ffb8b3;
  --tq-field-border:rgba(255,255,255,0);--tq-field-border-hover:rgba(255,255,255,.6);
  --tq-seg-bg:rgba(255,255,255,.14);--tq-seg-text:#fff;--tq-choice-bg:rgba(255,255,255,.08);--tq-choice-border:rgba(255,255,255,.28)
}
/* in place of a JotForm embed: keep the tabs and the button off the edges of the page's panel */
.tq-wrap.tq-swapped{padding:24px 0 28px}
@media (max-width:1100px){.tq-wrap.tq-swapped{padding:22px 20px 26px}}
@media (max-width:560px){.tq-wrap.tq-swapped{padding:18px 16px 22px}}
/* theme="auto": stay invisible for the moment it takes the script to read the background (never more than 2s) */
@media (scripting:enabled){.tq-wrap.tq-auto{visibility:hidden;animation:tq-reveal 0s 2s forwards}}
@keyframes tq-reveal{to{visibility:visible}}
.tq-wrap *,.tq-wrap *::before,.tq-wrap *::after{box-sizing:border-box}
.tq-wrap .tq-form{margin:0!important;padding:0!important;background:none!important;border:0!important}
.tq-wrap [hidden]{display:none!important}
.tq-wrap .tq-sr{position:absolute!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}

/* layout */
.tq-wrap .tq-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 16px;align-items:start}
.tq-wrap .tq-span2{grid-column:span 2}
.tq-wrap .tq-span4{grid-column:1/-1}
.tq-wrap .tq-field{position:relative;min-width:0;margin:0}
.tq-wrap .tq-label{display:block;margin:0 0 7px!important;padding:0!important;font-size:13.5px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:.01em;color:var(--tq-text)!important;text-transform:none!important}
.tq-wrap .tq-req{color:var(--tq-accent);margin-left:2px}
.tq-wrap.tq-dark .tq-req{color:#ff8a9a}
.tq-wrap .tq-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px}

/* text, date, number inputs */
.tq-wrap .tq-control{position:relative}
.tq-wrap input.tq-input,.tq-wrap select.tq-input{
  display:block!important;width:100%!important;max-width:none!important;height:var(--tq-h)!important;min-height:var(--tq-h)!important;margin:0!important;
  padding:0 14px!important;font-family:inherit!important;font-size:15.5px!important;font-weight:500!important;line-height:normal!important;color:var(--tq-field-text)!important;
  background:var(--tq-field-bg)!important;border:1px solid var(--tq-field-border)!important;border-radius:var(--tq-r)!important;
  box-shadow:0 1px 2px rgba(16,24,40,.06)!important;outline:none!important;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none
}
.tq-wrap select.tq-input{padding-right:40px!important;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 8l4 4 4-4' fill='none' stroke='%237a848f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:18px!important}
.tq-wrap select.tq-input:focus{border-color:var(--tq-accent)!important;box-shadow:0 0 0 4px var(--tq-accent-ring)!important}
.tq-wrap .tq-opt-tag{font-weight:400;color:var(--tq-muted)}
.tq-wrap input.tq-input:hover{border-color:var(--tq-field-border-hover)!important}
.tq-wrap input.tq-input:focus{border-color:var(--tq-accent)!important;box-shadow:0 0 0 4px var(--tq-accent-ring)!important}
.tq-wrap input.tq-input::placeholder{color:var(--tq-placeholder)!important;opacity:1;font-weight:400}
.tq-wrap .tq-has-icon input.tq-input{padding-left:44px!important}
.tq-wrap .tq-icon{position:absolute;left:14px;top:50%;width:20px;height:20px;margin-top:-10px;color:var(--tq-icon);pointer-events:none;z-index:1}
.tq-wrap input.tq-input[type=date]{padding-right:10px!important;cursor:pointer}
.tq-wrap input.tq-input[type=date]::-webkit-calendar-picker-indicator{opacity:.55;cursor:pointer}
.tq-wrap input.tq-input[type=date]:invalid,.tq-wrap input.tq-input[type=date]:not(:valid){color:var(--tq-placeholder)!important}
.tq-wrap .tq-field.has-error input.tq-input{border-color:#e5484d!important;box-shadow:0 0 0 3px rgba(229,72,77,.22)!important}
.tq-wrap .tq-err{display:block;font-size:12.5px;line-height:1.3;margin-top:5px;color:var(--tq-err);font-weight:500}
.tq-wrap .tq-err:empty{display:none}

/* trip type: segmented control (real radios, keyboard and screen-reader friendly) */
.tq-wrap .tq-seg{display:inline-flex;max-width:100%;gap:4px;padding:4px;border-radius:999px;background:var(--tq-seg-bg)}
.tq-wrap .tq-segopt{position:relative;display:inline-flex;margin:0!important;cursor:pointer}
.tq-wrap .tq-segopt input{position:absolute!important;inset:0;width:100%!important;height:100%!important;margin:0!important;opacity:0;cursor:pointer}
.tq-wrap .tq-segopt span{display:inline-block;padding:8px 20px;border-radius:999px;font-size:14px;font-weight:600;color:var(--tq-seg-text);transition:background .15s,color .15s;white-space:nowrap}
.tq-wrap .tq-segopt input:checked+span{background:var(--tq-accent);color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.tq-wrap .tq-segopt input:focus-visible+span{box-shadow:0 0 0 3px var(--tq-accent-ring)}

/* passengers */
.tq-wrap .tq-stepper{display:flex;align-items:stretch;height:var(--tq-h);background:var(--tq-field-bg);border:1px solid var(--tq-field-border);border-radius:var(--tq-r);box-shadow:0 1px 2px rgba(16,24,40,.06);overflow:hidden}
.tq-wrap .tq-stepper:focus-within{border-color:var(--tq-accent);box-shadow:0 0 0 4px var(--tq-accent-ring)}
.tq-wrap .tq-field.has-error .tq-stepper{border-color:#e5484d}
.tq-wrap .tq-stepper input.tq-input{flex:1 1 auto;min-width:0;height:100%!important;min-height:0!important;text-align:center;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0 4px!important;font-weight:600!important;-moz-appearance:textfield}
.tq-wrap .tq-stepper input.tq-input::-webkit-outer-spin-button,.tq-wrap .tq-stepper input.tq-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tq-wrap button.tq-stepbtn{flex:0 0 46px!important;width:46px!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--tq-field-text)!important;font-size:20px!important;line-height:1!important;font-weight:500!important;cursor:pointer;box-shadow:none!important;transition:background .15s}
.tq-wrap button.tq-stepbtn:hover{background:#f1f3f5!important}
.tq-wrap button.tq-stepbtn:focus-visible{outline:2px solid var(--tq-accent)!important;outline-offset:-2px}

/* airport suggestions */
.tq-wrap .tq-list{position:absolute;z-index:9999;left:0;right:0;top:calc(100% + 6px);margin:0!important;padding:6px!important;list-style:none!important;background:#fff;color:#14181d;border-radius:12px;border:1px solid rgba(16,24,40,.08);box-shadow:0 16px 40px rgba(16,24,40,.22);max-height:330px;overflow:auto;min-width:280px}
.tq-wrap .tq-opt{display:flex;gap:12px;align-items:center;padding:9px 10px!important;border-radius:8px;cursor:pointer;margin:0!important;list-style:none!important}
.tq-wrap .tq-opt::before,.tq-wrap .tq-opt::marker,.tq-wrap .tq-loading::before,.tq-wrap .tq-loading::marker{content:none!important}
.tq-wrap .tq-loading{padding:10px 12px!important;margin:0!important;list-style:none!important;font-size:14px;color:#5b6571}
.tq-wrap .tq-opt.is-active,.tq-wrap .tq-opt:hover{background:#f7edef}
.tq-wrap .tq-opt-code{flex:0 0 auto;min-width:46px;padding:3px 0;border-radius:6px;background:#f3f5f7;text-align:center;font-weight:700;font-size:12.5px;letter-spacing:.03em;color:var(--tq-accent)}
.tq-wrap .tq-opt.is-active .tq-opt-code{background:#fff}
.tq-wrap .tq-opt-text{display:flex;flex-direction:column;min-width:0}
.tq-wrap .tq-opt-name{font-size:14px;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tq-wrap .tq-opt-place{font-size:12.5px;color:#5b6571;line-height:1.3}

/* buttons */
.tq-wrap button.tq-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:var(--tq-h)!important;height:auto!important;margin:0!important;padding:0 30px!important;border:0!important;border-radius:999px!important;background:var(--tq-accent)!important;color:#fff!important;font-family:inherit!important;font-weight:700!important;font-size:15.5px!important;line-height:1!important;letter-spacing:.01em;text-transform:none!important;cursor:pointer;box-shadow:0 6px 16px rgba(207,42,67,.28)!important;transition:background .15s,transform .05s,box-shadow .15s}
.tq-wrap button.tq-btn:hover{background:var(--tq-accent-hover)!important;box-shadow:0 8px 20px rgba(207,42,67,.34)!important}
.tq-wrap button.tq-btn:active{transform:translateY(1px)}
.tq-wrap button.tq-btn:focus-visible{outline:3px solid var(--tq-accent-ring)!important;outline-offset:2px}
.tq-wrap button.tq-btn[disabled]{opacity:.75;cursor:wait}
.tq-wrap button.tq-btn svg{width:18px;height:18px}
.tq-wrap button.tq-btn-ghost{background:transparent!important;color:var(--tq-text)!important;border:1px solid var(--tq-field-border-hover)!important;box-shadow:none!important;padding:0 24px!important}
.tq-wrap button.tq-btn-ghost:hover{background:rgba(127,127,127,.1)!important;box-shadow:none!important}
.tq-wrap .tq-linkbtn{background:none!important;border:0!important;padding:0!important;margin:0!important;color:var(--tq-text)!important;text-decoration:underline;font:inherit;font-size:13px;cursor:pointer;box-shadow:none!important;min-height:0!important}

/* budget question */
.tq-wrap .tq-question{font-size:14.5px;line-height:1.55;color:var(--tq-text);margin:2px 0 10px!important;font-weight:500}
.tq-wrap .tq-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tq-wrap .tq-choice{position:relative;display:flex;align-items:center;gap:10px;margin:0!important;padding:13px 14px;border:1px solid var(--tq-choice-border);border-radius:var(--tq-r);background:var(--tq-choice-bg);cursor:pointer;font-size:14.5px;font-weight:600;color:var(--tq-text);transition:border-color .15s,background .15s,box-shadow .15s}
.tq-wrap .tq-choice:hover{border-color:var(--tq-field-border-hover)}
.tq-wrap .tq-choice input{flex:0 0 auto;width:18px!important;height:18px!important;margin:0!important;accent-color:var(--tq-accent);cursor:pointer}
.tq-wrap .tq-choice:has(input:checked){border-color:var(--tq-accent);box-shadow:0 0 0 3px var(--tq-accent-ring)}
.tq-wrap .tq-field.has-error .tq-choice{border-color:#e5484d}

.tq-wrap .tq-email-hint{margin-top:5px;font-size:13px;color:var(--tq-muted)}
.tq-wrap .tq-status{margin:14px 0 0!important;padding:11px 14px;border-radius:var(--tq-r);background:rgba(229,72,77,.12);border:1px solid rgba(229,72,77,.35);color:var(--tq-text);font-size:14px}
.tq-wrap .tq-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.tq-wrap .tq-steplabel{display:block;margin:0 0 14px;font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tq-muted)}

/* thank you */
.tq-wrap .tq-done{padding:30px 10px;text-align:center;outline:none}
.tq-wrap .tq-done-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:14px;border-radius:50%;background:rgba(46,160,67,.14);color:#2ea043}
.tq-wrap .tq-done-icon svg{width:28px;height:28px}
.tq-wrap .tq-done h3{margin:0 0 8px!important;font-size:23px;line-height:1.3;color:var(--tq-text)}
.tq-wrap .tq-done p{margin:0 auto!important;max-width:520px;color:var(--tq-muted);font-size:15px}
.tq-wrap .tq-done a{color:var(--tq-text);font-weight:600}
.tq-wrap .tq-test-banner{display:inline-block;margin-bottom:14px;padding:4px 11px;border-radius:999px;background:#ffd166;color:#14181d;font-size:12px;font-weight:700;letter-spacing:.03em}

/* Layout follows the space the form is given (a hero, a sidebar, a popup), not the screen width. */
.tq-wrap{container-type:inline-size;container-name:tq}
@container tq (max-width:759px){.tq-wrap .tq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tq-wrap .tq-span2{grid-column:1/-1}}
@container tq (max-width:479px){
  .tq-wrap .tq-grid{grid-template-columns:1fr;gap:14px}
  .tq-wrap .tq-span2,.tq-wrap .tq-span4{grid-column:1/-1}
  .tq-wrap .tq-seg{display:flex}.tq-wrap .tq-segopt{flex:1 1 0;min-width:0}.tq-wrap .tq-segopt span{width:100%;text-align:center;padding:8px 10px}
  .tq-wrap .tq-choices{grid-template-columns:1fr}
  .tq-wrap .tq-actions{justify-content:stretch}.tq-wrap .tq-actions .tq-btn{flex:1 1 auto}
}
@container tq (max-width:619px){.tq-wrap .tq-choices{grid-template-columns:1fr}}
@media (max-width:560px){.tq-wrap input.tq-input{font-size:16px!important}} /* no iOS zoom on focus */

/* multi-city flights */
.tq-wrap .tq-legtitle{display:block;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tq-muted)}
.tq-wrap .tq-grid > .tq-legtitle{margin:2px 0 -6px}
.tq-wrap .tq-legs{display:flex;flex-direction:column;gap:12px}
.tq-wrap .tq-leglist{display:flex;flex-direction:column;gap:12px}
.tq-wrap .tq-leg{padding:14px 14px 16px;border:1px solid var(--tq-choice-border);border-radius:12px;background:var(--tq-choice-bg)}
.tq-wrap .tq-leghead{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.tq-wrap .tq-leggrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.5fr) minmax(0,1fr);gap:12px 14px;align-items:start}
.tq-wrap button.tq-legremove{background:none!important;border:0!important;box-shadow:none!important;padding:4px 2px!important;margin:0!important;min-height:0!important;height:auto!important;color:var(--tq-muted)!important;font:inherit!important;font-size:13px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;text-decoration:underline;cursor:pointer}
.tq-wrap button.tq-legremove:hover{color:var(--tq-accent)!important}
.tq-wrap button.tq-addleg{align-self:flex-start;display:inline-flex!important;align-items:center;gap:8px;min-height:44px!important;height:auto!important;margin:0!important;padding:0 18px!important;border:1px dashed var(--tq-field-border-hover)!important;border-radius:999px!important;background:transparent!important;color:var(--tq-text)!important;font:inherit!important;font-size:14.5px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important;cursor:pointer}
.tq-wrap button.tq-addleg:hover{border-color:var(--tq-accent)!important;color:var(--tq-accent)!important}
.tq-wrap button.tq-addleg svg{width:16px;height:16px}
.tq-wrap .tq-legs > .tq-err:empty{display:none}
@container tq (max-width:619px){.tq-wrap .tq-leggrid{grid-template-columns:1fr}}
@container tq (max-width:479px){.tq-wrap .tq-segopt span{padding:8px 6px;font-size:13.5px}}
