.iwq, .iwq * { box-sizing: border-box; }
.iwq {
  --green-dark: #708d81;
  --green-mid: #8d0801;
  --green-light: #7BB89A;
  --cream: #F4EFE4;
  --cream-mid: #EBE4D6;
  --cream-border: #D4C9B4;
  --text-dark: #708d81;
  --text-mid: #5A6E5E;
  --text-light: #7A8C7E;
  background: #EDE8DC;
  font-family: 'Outfit', sans-serif;
  color: var(--text-dark);
  min-height: 680px;
  position: relative;
  padding: 1px 0;
}
.iwq-progress-bar-wrap { position: sticky; top: 0; left: 0; right: 0; height: 3px; background: var(--cream-border); z-index: 5; }
.iwq-progress-bar-fill { height: 100%; background: var(--green-mid); transition: width 0.5s ease; }
.iwq-screen { display: none; min-height: 680px; padding: 0 1rem; align-items: center; justify-content: center; flex-direction: column; }
.iwq-screen-active { display: flex; }
.iwq-welcome-card, .iwq-question-card, .iwq-disqualify-card, .iwq-result-card { background: var(--cream); border-radius: 16px; border: 1px solid var(--cream-border); max-width: 620px; width: 100%; overflow: hidden; margin: 2rem auto; }
.iwq-question-card, .iwq-disqualify-card, .iwq-result-card { animation: iwqSlideIn 0.35s ease; }
@keyframes iwqSlideIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
.iwq-welcome-header, .iwq-q-header { background: var(--green-dark); }
.iwq-welcome-header { padding: 2.2rem 2.5rem 2rem; }
.iwq-logo { font-size: 15px; font-weight: 600; color: var(--green-light); letter-spacing: 0.02em; margin-bottom: 1.4rem; }
.iwq-logo span { color: #F4EFE4; }
.iwq-logo-small { font-size: 12px; margin-bottom: 0; }
.iwq-welcome-header h1, .iwq-result-header h2, .iwq-dq-header h2 { font-family: 'Lora', serif; font-weight: 600; color: #F4EFE4; line-height: 1.25; }
.iwq-welcome-header h1 { font-size: 28px; margin: 0 0 0.6rem; }
.iwq-welcome-header h1 em, .iwq-result-header h2 em { font-style: italic; color: var(--green-light); }
.iwq-welcome-header p, .iwq-result-header p { font-size: 14px; color: var(--green-light); font-weight: 300; line-height: 1.6; margin: 0; }
.iwq-welcome-body, .iwq-q-body, .iwq-dq-body, .iwq-result-body { padding: 1.8rem 2.5rem 2rem; }
.iwq-welcome-meta { display: flex; gap: 1.5rem; flex-wrap: wrap; margin-bottom: 1.6rem; }
.iwq-meta-item { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: var(--text-mid); font-weight: 300; }
.iwq-meta-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--green-mid); flex-shrink: 0; }
.iwq-welcome-body p, .iwq-dq-body p { font-size: 14px; color: var(--text-mid); line-height: 1.65; font-weight: 300; margin: 0 0 1.6rem; }
.iwq-btn-primary, .iwq-btn-next, .iwq-btn-cta-main { display: inline-block; background: var(--green-mid); color: #F4EFE4; font-family: 'Outfit', sans-serif; font-size: 14px; font-weight: 500; padding: 12px 28px; border-radius: 40px; border: none; cursor: pointer; transition: background 0.2s, transform 0.1s, opacity 0.2s; letter-spacing: 0.01em; }
.iwq-btn-primary:hover, .iwq-btn-next:hover, .iwq-btn-cta-main:hover { background: var(--green-dark); color: #F4EFE4; }
.iwq-btn-primary:active, .iwq-btn-next:active, .iwq-btn-cta-main:active { transform: scale(0.98); }
.iwq-q-header { padding: 1.4rem 2rem 1.3rem; display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.iwq-q-counter, .iwq-result-label { font-size: 10px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-light); }
.iwq-q-body { padding: 1.6rem 2rem 2rem; }
.iwq-q-text { font-family: 'Lora', serif; font-size: 20px; font-weight: 600; color: var(--text-dark); line-height: 1.35; margin-bottom: 0.4rem; }
.iwq-q-hint { font-size: 12.5px; color: var(--text-light); font-weight: 300; margin-bottom: 1.4rem; font-style: italic; font-family: 'Lora', serif; }
.iwq-options { display: flex; flex-direction: column; gap: 8px; margin-bottom: 1.6rem; }
.iwq-option { display: flex; align-items: flex-start; gap: 12px; padding: 11px 14px; border-radius: 9px; border: 1.5px solid var(--cream-border); background: var(--cream-mid); cursor: pointer; transition: border-color 0.15s, background 0.15s; font-size: 13.5px; color: var(--text-dark); line-height: 1.4; font-weight: 400; text-align: left; width: 100%; font-family: 'Outfit', sans-serif; }
.iwq-option:hover { border-color: var(--green-light); background: #E6EEE9; }
.iwq-option.iwq-selected { border-color: var(--green-mid); background: #E2EDE7; color: var(--green-dark); }
.iwq-option-marker { width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid var(--cream-border); flex-shrink: 0; margin-top: 1px; display: flex; align-items: center; justify-content: center; transition: border-color 0.15s, background 0.15s; }
.iwq-option.iwq-selected .iwq-option-marker { border-color: var(--green-mid); background: var(--green-mid); }
.iwq-option-marker-inner { width: 7px; height: 7px; border-radius: 50%; background: #F4EFE4; opacity: 0; transition: opacity 0.15s; }
.iwq-option.iwq-selected .iwq-option-marker-inner { opacity: 1; }
.iwq-options.iwq-multi .iwq-option-marker { border-radius: 4px; }
.iwq-options.iwq-multi .iwq-option-marker-inner { border-radius: 2px; }
.iwq-option-sub { font-size: 11px; color: var(--text-light); font-weight: 300; margin-top: 2px; }
.iwq-option.iwq-selected .iwq-option-sub { color: var(--green-mid); }
.iwq-q-nav { display: flex; align-items: center; justify-content: space-between; padding-top: 0.6rem; border-top: 1px solid var(--cream-border); }
.iwq-btn-back { background: transparent; border: 1px solid var(--cream-border); color: var(--text-mid); font-family: 'Outfit', sans-serif; font-size: 13px; font-weight: 400; padding: 9px 18px; border-radius: 40px; cursor: pointer; transition: border-color 0.15s; }
.iwq-btn-back:hover { border-color: var(--green-light); }
.iwq-btn-next { font-size: 13.5px; padding: 10px 24px; }
.iwq-btn-next:disabled { opacity: 0.35; cursor: not-allowed; }
.iwq-dq-header { background: #5A6E5E; padding: 1.8rem 2rem 1.6rem; }
.iwq-dq-header h2 { font-size: 22px; margin: 0; }
.iwq-result-header { padding: 2rem 2.2rem 1.8rem; }
.iwq-result-strong { background: var(--green-dark); }
.iwq-result-medium { background: #3D6B52; }
.iwq-result-early { background: #7A8C7E; }
.iwq-result-label { margin-bottom: 10px; }
.iwq-result-header h2 { font-size: 24px; margin: 0 0 0.5rem; }
.iwq-result-header p { font-size: 13px; }
.iwq-result-summary { font-size: 14px; color: var(--text-mid); line-height: 1.65; font-weight: 300; margin: 0 0 1.4rem; }
.iwq-result-insights { margin-bottom: 1.6rem; }
.iwq-insight-item { display: flex; gap: 10px; align-items: flex-start; margin-bottom: 9px; padding-bottom: 9px; border-bottom: 1px solid var(--cream-border); }
.iwq-insight-item:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.iwq-insight-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green-mid); margin-top: 6px; flex-shrink: 0; }
.iwq-insight-text { font-size: 13px; color: var(--text-dark); line-height: 1.5; }
.iwq-insight-text strong { font-weight: 500; color: var(--green-dark); }
.iwq-score-meter { display: flex; align-items: center; gap: 10px; margin-bottom: 1.4rem; }
.iwq-score-bar-bg { flex: 1; height: 6px; background: var(--cream-border); border-radius: 3px; overflow: hidden; }
.iwq-score-bar-fill { height: 100%; border-radius: 3px; background: var(--green-mid); transition: width 1s ease 0.3s; }
.iwq-score-label { font-size: 12px; color: var(--text-mid); font-weight: 400; white-space: nowrap; }
.iwq-lead-card { background: var(--cream-mid); border-radius: 10px; border: 1px solid var(--cream-border); padding: 1.2rem 1.4rem; margin-bottom: 1.4rem; }
.iwq-lead-card p { font-family: 'Lora', serif; font-style: italic; font-size: 14px; color: var(--green-dark); line-height: 1.55; margin: 0 0 1rem; }
.iwq-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.iwq-form-grid label { display: flex; flex-direction: column; gap: 5px; font-size: 12px; color: var(--text-mid); }
.iwq-form-grid input, .iwq-form-grid textarea { width: 100%; border: 1px solid var(--cream-border); border-radius: 8px; padding: 10px 11px; font-family: 'Outfit', sans-serif; font-size: 14px; background: #fffaf0; color: var(--text-dark); }
.iwq-form-grid textarea, .iwq-form-grid label:last-child { grid-column: 1 / -1; }
.iwq-form-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
.iwq-btn-cta-main { font-size: 13.5px; padding: 10px 22px; }
.iwq-btn-cta-sec { background: transparent; color: var(--green-mid); font-family: 'Outfit', sans-serif; font-size: 13px; font-weight: 400; padding: 10px 20px; border-radius: 40px; border: 1.5px solid var(--green-mid); cursor: pointer; transition: background 0.2s; }
.iwq-btn-cta-sec:hover { background: #E2EDE7; }
.iwq-form-status { margin-top: 10px; font-size: 13px; color: var(--text-mid); }
.iwq-form-status.iwq-success { color: var(--green-dark); font-weight: 500; }
.iwq-form-status.iwq-error { color: #9b2c2c; font-weight: 500; }
.iwq-hp { position: absolute !important; left: -9999px !important; opacity: 0 !important; }
.iwq-restart-btn { background: none; border: none; font-size: 12px; color: var(--text-light); cursor: pointer; text-decoration: underline; text-underline-offset: 2px; font-family: 'Outfit', sans-serif; margin-top: 0.8rem; display: block; }
@media (max-width: 640px) {
  .iwq-screen { min-height: 620px; padding: 0 0.75rem; }
  .iwq-welcome-header, .iwq-welcome-body, .iwq-result-header, .iwq-result-body { padding-left: 1.4rem; padding-right: 1.4rem; }
  .iwq-q-header, .iwq-q-body, .iwq-dq-header, .iwq-dq-body { padding-left: 1.2rem; padding-right: 1.2rem; }
  .iwq-welcome-meta { gap: 0.8rem; }
  .iwq-form-grid { grid-template-columns: 1fr; }
}
.iwq-calendly-wrap { margin-top: 14px; border-top: 1px solid var(--cream-border); padding-top: 14px; }
.iwq-calendly-intro { margin-bottom: 10px !important; }
.iwq-calendly-widget { min-width: 280px; width: 100%; overflow: hidden; border-radius: 10px; background: #fffaf0; }
.iwq-calendly-status { margin-top: 8px; font-size: 12.5px; color: var(--text-mid); }
.iwq-calendly-status.iwq-success { color: var(--green-dark); font-weight: 500; }
.iwq-btn-cta-main:disabled { opacity: 0.45; cursor: not-allowed; }

/* Other option input */
.iwq .iwq-other-wrap {
  display: none;
  margin: -2px 0 10px 30px;
}
.iwq .iwq-other-wrap.iwq-other-visible {
  display: block;
}
.iwq .iwq-other-label {
  display: block;
  font-size: 12.5px;
  color: var(--text-mid);
}
.iwq .iwq-other-input {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 10px 12px;
  border-radius: 9px;
  border: 1px solid var(--cream-border);
  background: #fffaf0;
  color: var(--text-dark);
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
}

/* Smoke Studios custom visual overrides - v1.0.8 */
.iwq {
    background: #ede8dc00 !important;
}
.iwq-q-body {
    padding: 1rem 2rem !important;
}
.iwq-welcome-header-image {
    margin-top: -8%;
    transform: translate(0, 23%);
}
.iwq-option:hover,
.iwq-btn-cta-sec:hover,
.iwq-btn-back:hover {
    color: #1b3d2a !important;
}
.iwq-welcome-card,
.iwq-question-card,
.iwq-disqualify-card,
.iwq-result-card {
    max-width: 100% !important;
}
.iwq-welcome-card {
    margin: 0 !important;
}
.iwq-screen.iwq-screen-active {
    flex-direction: column;
    justify-content: flex-start;
}
.iwq-q-counter,
.iwq-score-meter,
[data-iwq-result-subhead],
.iwq-result-label,
.iwq-result-summary,
.iwq-insight-item,
.iwq-result-header p,
.iwq-welcome-header p,
.iwq-progress-bar-wrap {
    display: none !important;
}
.iwq-welcome-header h1 em,
.iwq-result-header h2 em,
.iwq-welcome-header p,
.iwq-result-header p,
.iwq-result-label,
.iwq-welcome-header h1,
.iwq-result-header h2,
.iwq-dq-header h2 {
    color: #ffffff !important;
}
.iwq-q-header {
    background: #fdedce !important;
}
.iwq-logo img {
    max-width: 400px;
    width: 100%;
}
.iwq-logo-small img {
    max-width: 260px !important;
}
.iwq-btn-primary.menu-button {
    width: auto;
    padding: 6px 55px !important;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -25%);
}
.iwq-btn-back:hover {
    background-color: #e2ede7 !important;
}
.iwq-btn-cta-sec:focus,
.iwq-btn-back:focus,
.iwq-btn-next:focus {
    background-color: #1b3d2a;
}
.iwq-btn-primary.menu-button:active {
    transform: translate(-50%, -25%) !important;
}
.iwq-btn-next:active,
.iwq-btn-cta-main:active {
    transform: scale(0.98) !important;
}
.iwq-welcome-header,
.iwq-welcome-body {
    background: #FDF7E8 !important;
}
.iwq-welcome-header h1,
.iwq-welcome-header h1 em {
    color: #8d0801 !important;
    font-weight: 400 !important;
    font-size: clamp(28px, 4.5vw, 55px) !important;
}
.iwq-q-text.instrument-serif {
    padding-bottom: 25px;
}
.iwq-q-text {
    color: #8d0801 !important;
    font-weight: 400 !important;
    font-size: clamp(20px, 4.5vw, 40px) !important;
}
.iwq-welcome-header {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
}
.iwq-option-sub {
    display: block;
}
.iwq-option {
    border: 2px solid #708d81 !important;
    background: #f4efe4 !important;
    color: #8d0801 !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: clamp(14px, 4.5vw, 17px) !important;
    align-items: center !important;
    gap: 25px !important;
}
.iwq .iwq-other-label {
    display: block;
    font-size: 16px !important;
    color: #8d0801 !important;
    font-family: 'Inter Tight', sans-serif !important;
}
.iwq .iwq-other-input {
    padding: 13px 15px !important;
    border: 2px solid #708d81 !important;
    color: var(--text-dark);
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px;
}
.iwq-other-input::placeholder {
    color: #708d81 !important;
    opacity: 0.8;
}
.iwq .iwq-other-wrap {
    margin: -2px 0 10px 82px !important;
    padding-top: 5px !important;
}
.iwq-option-marker {
    width: 41px !important;
    height: 41px !important;
    border: 2px solid #708d81 !important;
    border-radius: 7px !important;
}
.iwq-q-nav {
    border-top: none !important;
}
.iwq-option:focus {
    border-color: var(--green-mid) !important;
    background: #E2EDE7 !important;
    color: var(--green-dark) !important;
}
.iwq-option.iwq-selected .iwq-option-marker {
    border-color: #ffffff !important;
    background: #708d81 !important;
    border: 2px solid #ffffff !important;
    border-radius: 4px !important;
}
.iwq-option.iwq-selected {
    color: #ffffff !important;
    background: #708d81 !important;
}
.iwq-option-marker-inner {
    width: 26px !important;
    height: 26px !important;
    border-radius: 4px !important;
}
.iwq-continue-button {
    font-size: 26px !important;
    padding: 6px 35px !important;
    font-weight: 400 !important;
}
.iwq-calendly-widget {
    background: #d3e0d6 !important;
}
.instrument-serif {
    font-family: 'Instrument Serif', serif !important;
}

/* Smoke Studios final page updates - v1.0.9 */
.iwq-result-card {
    background: #FDF7E8 !important;
    border: 1px solid #fdedce !important;
    border-radius: 18px !important;
    overflow: hidden !important;
}
.iwq-result-header.iwq-q-header {
    background: #fdedce !important;
    padding: 1.4rem 2rem 1.3rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}
.iwq-result-header.iwq-q-header .iwq-logo {
    margin: 0 !important;
}
.iwq-result-header.iwq-q-header h2,
.iwq-result-header.iwq-q-header p,
.iwq-result-header.iwq-q-header .iwq-result-label {
    display: none !important;
}
.iwq-result-body {
    background: #FDF7E8 !important;
    padding: 2rem 2.5rem 2.2rem !important;
}
.iwq-lead-card {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}
.iwq-lead-card p[data-iwq-cta-text] {
    display: none !important;
}
.iwq-lead-card:before {
    content: "Let’s book a proper conversation";
    display: block;
    margin: 0 0 1.35rem !important;
    color: #8d0801 !important;
    font-family: 'Instrument Serif', serif !important;
    font-size: clamp(28px, 4.5vw, 44px) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
}
.iwq-form-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 44px !important;
}
.iwq-form-grid label {
    color: #8d0801 !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    gap: 8px !important;
}
.iwq-form-grid input,
.iwq-form-grid textarea {
    background: #d3e0d6 !important;
    border: none !important;
    border-radius: 6px !important;
    color: #1b3d2a !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px !important;
    padding: 15px 16px !important;
    box-shadow: none !important;
}
.iwq-form-grid input:focus,
.iwq-form-grid textarea:focus {
    outline: 2px solid #708d81 !important;
    outline-offset: 2px !important;
}
.iwq-name-label {
    grid-column: 1 / -1 !important;
}
.iwq-name-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 44px !important;
}
.iwq-name-fields span {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}
.iwq-name-fields small {
    color: #708d81 !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
}
.iwq-optional-label {
    margin-left: 18px !important;
}
.iwq-email-label {
    grid-column: 1 / 2 !important;
}
.iwq-phone-label {
    grid-column: 2 / 3 !important;
}
.iwq-form-grid label:last-child {
    grid-column: 1 / -1 !important;
}
.iwq-form-grid textarea {
    min-height: 190px !important;
    resize: vertical !important;
}
.iwq-calendly-wrap {
    border-top: none !important;
    margin-top: 26px !important;
    padding-top: 0 !important;
}
.iwq-calendly-intro {
    color: #8d0801 !important;
    display: block !important;
    font-family: 'Instrument Serif', serif !important;
    font-size: clamp(24px, 4vw, 38px) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
    margin: 0 0 1.2rem !important;
}
.iwq-calendly-widget {
    background: #d3e0d6 !important;
    border: 2px solid #708d81 !important;
    border-radius: 16px !important;
    overflow: auto !important;
}
.iwq-calendly-status {
    color: #8d0801 !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px !important;
    margin-top: 20px !important;
}
.iwq-calendly-status:before {
    content: "* ";
}
.iwq-form-actions {
    display: flex !important;
    justify-content: flex-end !important;
    margin-top: 30px !important;
}
.iwq-btn-cta-main {
    background: #8d0801 !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    min-width: 240px !important;
    padding: 16px 34px !important;
    text-transform: uppercase !important;
}
.iwq-btn-cta-main:hover,
.iwq-btn-cta-main:focus {
    background: #708d81 !important;
    color: #ffffff !important;
}
.iwq-restart-btn {
    color: #8d0801 !important;
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 16px !important;
    margin-top: -50px !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 8px !important;
}
@media (max-width: 700px) {
    .iwq-result-body {
        padding: 1.5rem 1.25rem 1.7rem !important;
    }
    .iwq-form-grid,
    .iwq-name-fields {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }
    .iwq-email-label,
    .iwq-phone-label {
        grid-column: 1 / -1 !important;
    }
    .iwq-btn-cta-main {
        width: 100% !important;
        min-width: 0 !important;
    }
    .iwq-restart-btn {
        margin-top: 18px !important;
    }
}
