.inreach-eform { --ief-ink:        #111316;
--ief-ink-soft:   #2A2D33;
--ief-muted:      #6A6963;
--ief-line:       #E6E1D6;
--ief-line-soft:  #EFEAE0;
--ief-paper:      #FAF8F3;
--ief-paper-2:    #F2EDE3;
--ief-paper-3:    #E9E3D6;
--ief-red:        #DB0015;
--ief-red-deep:   #A8000F;
--ief-red-soft:   #FCE5E8;
--ief-green:      #2F6F4F;
--ief-green-soft: #E6F0EA;
--ief-radius-sm:  6px;
--ief-radius:     12px;
--ief-radius-lg:  20px;
--ief-radius-xl:  28px;
--ief-ease:       cubic-bezier(0.22, 0.61, 0.36, 1);
--ief-ease-out:   cubic-bezier(0.16, 1, 0.3, 1);
font-family: 'Roboto', system-ui, -apple-system, sans-serif;
color: var(--ief-ink);
font-size: 16px;
line-height: 1.55;
-webkit-font-smoothing: antialiased;
display: block;
width: 100%;
}
.inreach-eform *,
.inreach-eform *::before,
.inreach-eform *::after { box-sizing: border-box; }
.inreach-eform img { max-width: 100%; display: block; }
.inreach-eform button {
font-family: inherit;
cursor: pointer;
margin: 0;
} .inreach-eform .ief-card {
background: var(--ief-paper);
max-width: 920px;
margin: 0 auto;
border-radius: var(--ief-radius-xl);
overflow: hidden;
position: relative;
border: 1px solid rgba(219,0,21,0.18);
box-shadow:
0 0 0 4px rgba(219,0,21,0.04),
0 0 24px rgba(219,0,21,0.08),
0 20px 48px rgba(17,19,22,0.06),
0 2px 6px rgba(17,19,22,0.04);
display: flex;
flex-direction: column;
} .inreach-eform .ief-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 22px 32px;
border-bottom: 1px solid var(--ief-line);
background: #fff;
gap: 16px;
}
.inreach-eform .ief-header-logo img { height: 30px; width: auto; }
.inreach-eform .ief-header-text { text-align: right; }
.inreach-eform .ief-eyebrow {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-size: 11px;
font-weight: 800;
letter-spacing: 0.14em;
color: var(--ief-muted);
}
.inreach-eform .ief-title {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 900;
font-size: 16px;
letter-spacing: -0.005em;
color: var(--ief-ink);
margin-top: 2px;
} .inreach-eform .ief-progress {
padding: 16px 32px 0;
background: #fff;
display: flex;
gap: 4px;
align-items: center;
}
.inreach-eform .ief-step-dot {
flex: 1;
display: flex;
align-items: center;
gap: 10px;
background: none;
border: 0;
padding: 8px 0;
text-align: left;
opacity: 0.5;
transition: opacity 0.2s;
}
.inreach-eform .ief-step-dot.is-done,
.inreach-eform .ief-step-dot.is-active { opacity: 1; }
.inreach-eform .ief-step-dot[disabled] { cursor: not-allowed; }
.inreach-eform .ief-step-dot .ief-dot {
width: 24px; height: 24px;
border-radius: 50%;
border: 1.5px solid var(--ief-line);
background: #fff;
display: inline-flex;
align-items: center;
justify-content: center;
font-family: 'Nunito Sans', sans-serif;
font-weight: 800;
font-size: 11px;
color: var(--ief-muted);
flex-shrink: 0;
transition: all 0.25s var(--ief-ease);
}
.inreach-eform .ief-step-dot.is-active .ief-dot { background: var(--ief-ink); border-color: var(--ief-ink); color: #fff; }
.inreach-eform .ief-step-dot.is-done .ief-dot { background: var(--ief-red); border-color: var(--ief-red); color: #fff; }
.inreach-eform .ief-step-dot .ief-dot-lbl {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 700;
font-size: 10px;
letter-spacing: 0.1em;
color: var(--ief-ink);
}
.inreach-eform .ief-bar-wrap { padding: 8px 32px 16px; background: #fff; }
.inreach-eform .ief-bar {
height: 3px;
background: var(--ief-line);
border-radius: 999px;
overflow: hidden;
}
.inreach-eform .ief-bar .ief-fill {
height: 100%;
background: var(--ief-red);
border-radius: 999px;
transition: width 0.4s var(--ief-ease-out);
} .inreach-eform .ief-body {
padding: 40px 32px;
min-height: 420px;
}
.inreach-eform .ief-step {
max-width: 720px;
margin: 0 auto;
}
.inreach-eform .ief-step h2 {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 900;
font-size: clamp(22px, 2.4vw, 32px);
letter-spacing: -0.015em;
line-height: 1.05;
margin: 0 0 12px;
color: var(--ief-ink);
}
.inreach-eform .ief-sub {
font-size: 16px;
color: var(--ief-muted);
margin: 0 0 28px;
max-width: 580px;
} .inreach-eform .ief-field { display: block; margin-bottom: 20px; }
.inreach-eform .ief-label {
display: block;
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 800;
font-size: 11px;
letter-spacing: 0.12em;
color: var(--ief-ink);
margin-bottom: 8px;
}
.inreach-eform .ief-label .ief-optional {
color: var(--ief-muted);
text-transform: none;
letter-spacing: 0;
font-weight: 400;
}
.inreach-eform .ief-help { font-size: 12px; color: var(--ief-muted); margin-top: 6px; }
.inreach-eform input[type="text"],
.inreach-eform input[type="email"],
.inreach-eform input[type="tel"],
.inreach-eform textarea {
width: 100%;
padding: 14px 16px;
border: 1px solid var(--ief-line);
border-radius: var(--ief-radius);
background: #fff;
font-family: 'Roboto', sans-serif;
font-size: 15px;
color: var(--ief-ink);
transition: all 0.15s;
}
.inreach-eform input:focus,
.inreach-eform textarea:focus {
outline: 0;
border-color: var(--ief-ink);
box-shadow: 0 0 0 3px rgba(17,19,22,0.08);
}
.inreach-eform input.is-error,
.inreach-eform textarea.is-error { border-color: var(--ief-red); }
.inreach-eform .ief-err {
font-size: 12px;
color: var(--ief-red);
margin-top: 6px;
}
.inreach-eform .ief-grid-2 {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
} .inreach-eform .ief-div-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 16px;
}
.inreach-eform .ief-div {
display: flex;
flex-direction: column;
gap: 12px;
background: #fff;
border: 1.5px solid var(--ief-line);
border-radius: var(--ief-radius-lg);
padding: 24px;
text-align: left;
transition: all 0.2s var(--ief-ease);
position: relative;
overflow: hidden;
}
.inreach-eform .ief-div::before {
content: '';
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: var(--ief-div-accent, var(--ief-red));
opacity: 0;
transition: opacity 0.2s var(--ief-ease);
}
.inreach-eform .ief-div:hover { border-color: var(--ief-ink); transform: translateY(-2px); }
.inreach-eform .ief-div:hover::before { opacity: 0.4; }
.inreach-eform .ief-div.is-selected { border-color: var(--ief-red); background: var(--ief-red-soft); }
.inreach-eform .ief-div.is-selected::before { opacity: 1; background: var(--ief-red); }
.inreach-eform .ief-div.is-selected::after {
content: '✓';
position: absolute;
top: 18px; right: 18px;
width: 28px; height: 28px;
background: var(--ief-red);
color: #fff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
font-weight: 700;
}
.inreach-eform .ief-div-logo { height: 56px; display: flex; align-items: center; }
.inreach-eform .ief-div-logo img { max-height: 56px; width: auto; max-width: 75%; object-fit: contain; }
.inreach-eform .ief-div-name {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
letter-spacing: 0.04em;
font-size: 13px;
font-weight: 800;
color: var(--ief-ink);
}
.inreach-eform .ief-div p { font-size: 13px; color: var(--ief-ink-soft); margin: 0; } .inreach-eform .ief-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.inreach-eform .ief-chip {
padding: 10px 16px;
border: 1.5px solid var(--ief-line);
border-radius: 999px;
background: #fff;
font-family: 'Roboto', sans-serif;
font-size: 14px;
color: var(--ief-ink);
transition: all 0.15s;
}
.inreach-eform .ief-chip:hover { border-color: var(--ief-ink); }
.inreach-eform .ief-chip.is-selected { background: var(--ief-ink); color: #fff; border-color: var(--ief-ink); } .inreach-eform .ief-radios { display: grid; gap: 12px; }
.inreach-eform .ief-radios.cols-2 { grid-template-columns: 1fr 1fr; }
.inreach-eform .ief-radios.cols-3 { grid-template-columns: repeat(3, 1fr); }
.inreach-eform .ief-radio {
display: flex;
align-items: center;
gap: 14px;
padding: 16px 20px;
background: #fff;
border: 1.5px solid var(--ief-line);
border-radius: var(--ief-radius);
text-align: left;
transition: all 0.15s;
}
.inreach-eform .ief-radio:hover { border-color: var(--ief-ink); }
.inreach-eform .ief-radio.is-selected { border-color: var(--ief-red); background: var(--ief-red-soft); }
.inreach-eform .ief-radio .ief-radio-dot {
width: 18px; height: 18px;
border-radius: 50%;
border: 1.5px solid var(--ief-line);
flex-shrink: 0;
position: relative;
background: #fff;
}
.inreach-eform .ief-radio.is-selected .ief-radio-dot { border-color: var(--ief-red); }
.inreach-eform .ief-radio.is-selected .ief-radio-dot::after {
content: '';
position: absolute;
inset: 3px;
background: var(--ief-red);
border-radius: 50%;
}
.inreach-eform .ief-radio-title {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 800;
font-size: 12px;
letter-spacing: 0.06em;
color: var(--ief-ink);
}
.inreach-eform .ief-radio-sub { font-size: 12px; color: var(--ief-muted); margin-top: 2px; } .inreach-eform .ief-slider-block {
padding: 24px;
background: #fff;
border: 1px solid var(--ief-line);
border-radius: var(--ief-radius);
}
.inreach-eform .ief-slider-num {
font-family: 'Nunito Sans', sans-serif;
font-weight: 900;
font-size: 36px;
letter-spacing: -0.02em;
color: var(--ief-red);
margin-bottom: 16px;
}
.inreach-eform .ief-slider-num .ief-unit { color: var(--ief-muted); font-size: 16px; font-weight: 500; margin-left: 6px; }
.inreach-eform .ief-slider {
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 4px;
background: var(--ief-line);
border-radius: 999px;
outline: 0;
}
.inreach-eform .ief-slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 22px; height: 22px;
background: var(--ief-red);
border-radius: 50%;
border: 3px solid #fff;
box-shadow: 0 2px 6px rgba(219,0,21,0.4);
}
.inreach-eform .ief-slider::-moz-range-thumb {
width: 22px; height: 22px;
background: var(--ief-red);
border-radius: 50%;
border: 3px solid #fff;
box-shadow: 0 2px 6px rgba(219,0,21,0.4);
}
.inreach-eform .ief-ticks {
display: flex;
justify-content: space-between;
font-family: 'JetBrains Mono', ui-monospace, monospace;
font-size: 11px;
color: var(--ief-muted);
margin-top: 12px;
} .inreach-eform .ief-slots {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 8px;
}
.inreach-eform .ief-slot {
padding: 12px 8px;
background: #fff;
border: 1.5px solid var(--ief-line);
border-radius: var(--ief-radius);
text-align: center;
transition: all 0.15s;
}
.inreach-eform .ief-slot:hover { border-color: var(--ief-ink); }
.inreach-eform .ief-slot.is-selected { border-color: var(--ief-red); background: var(--ief-red-soft); }
.inreach-eform .ief-slot .ief-slot-day {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 800;
font-size: 10px;
letter-spacing: 0.1em;
color: var(--ief-muted);
}
.inreach-eform .ief-slot .ief-slot-date {
font-family: 'Nunito Sans', sans-serif;
font-weight: 900;
font-size: 22px;
margin: 4px 0 2px;
letter-spacing: -0.02em;
color: var(--ief-ink);
}
.inreach-eform .ief-slot.is-selected .ief-slot-day,
.inreach-eform .ief-slot.is-selected .ief-slot-date { color: var(--ief-red); } .inreach-eform .ief-review {
background: #fff;
border: 1px solid var(--ief-line);
border-radius: var(--ief-radius);
padding: 24px;
margin-bottom: 16px;
}
.inreach-eform .ief-review-head {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 12px;
}
.inreach-eform .ief-review-title {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 800;
font-size: 12px;
letter-spacing: 0.12em;
color: var(--ief-ink);
}
.inreach-eform .ief-review-edit {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 700;
font-size: 10px;
letter-spacing: 0.1em;
background: none;
border: 0;
color: var(--ief-red);
}
.inreach-eform .ief-review-item {
display: flex;
justify-content: space-between;
gap: 16px;
padding: 8px 0;
border-top: 1px solid var(--ief-line-soft);
font-size: 14px;
}
.inreach-eform .ief-review-item:first-of-type { border-top: 0; }
.inreach-eform .ief-review-key { color: var(--ief-muted); }
.inreach-eform .ief-review-val { color: var(--ief-ink); font-weight: 500; text-align: right; max-width: 60%; }
.inreach-eform .ief-consent {
display: flex;
gap: 12px;
align-items: flex-start;
font-size: 14px;
color: var(--ief-ink-soft);
margin-top: 8px;
}
.inreach-eform .ief-consent input { margin-top: 4px; width: 18px; height: 18px; flex-shrink: 0; } .inreach-eform .ief-footer {
padding: 20px 32px;
display: flex;
justify-content: space-between;
align-items: center;
gap: 16px;
background: #fff;
border-top: 1px solid var(--ief-line);
}
.inreach-eform .ief-meta {
font-family: 'JetBrains Mono', ui-monospace, monospace;
font-size: 12px;
color: var(--ief-muted);
}
.inreach-eform .ief-meta .ief-meta-accent { color: var(--ief-ink); font-weight: 700; }
.inreach-eform .ief-actions { display: flex; gap: 10px; } .inreach-eform .ief-btn {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 14px 22px;
border-radius: 999px;
font-family: 'Nunito Sans', sans-serif;
font-weight: 800;
font-size: 13px;
letter-spacing: 0.1em;
text-transform: uppercase;
border: 1px solid transparent;
transition: all 0.2s var(--ief-ease);
white-space: nowrap;
line-height: 1;
}
.inreach-eform .ief-btn:hover { transform: translateY(-1px); }
.inreach-eform .ief-btn-primary { background: var(--ief-red); color: #fff; }
.inreach-eform .ief-btn-primary:hover { background: var(--ief-red-deep); box-shadow: 0 8px 20px rgba(219,0,21,0.25); }
.inreach-eform .ief-btn-primary[disabled] { opacity: 0.4; cursor: not-allowed; transform: none; box-shadow: none; }
.inreach-eform .ief-btn-line { background: transparent; color: var(--ief-ink); border-color: var(--ief-line); }
.inreach-eform .ief-btn-line:hover { border-color: var(--ief-ink); }
.inreach-eform .ief-btn .ief-arrow { transition: transform 0.25s var(--ief-ease); display: inline-block; }
.inreach-eform .ief-btn:hover .ief-arrow { transform: translateX(4px); } .inreach-eform .ief-success { text-align: center; padding: 32px 8px; }
.inreach-eform .ief-success-icon {
width: 80px; height: 80px;
border-radius: 50%;
background: var(--ief-green-soft);
color: var(--ief-green);
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 36px;
margin-bottom: 24px;
animation: ief-pop 0.5s var(--ief-ease-out);
}
@keyframes ief-pop {
0% { transform: scale(0); }
60% { transform: scale(1.1); }
100% { transform: scale(1); }
}
.inreach-eform .ief-success h2 {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 900;
font-size: clamp(22px, 2.2vw, 30px);
letter-spacing: -0.015em;
line-height: 1.1;
margin: 0 0 8px;
color: var(--ief-ink);
}
.inreach-eform .ief-ref {
display: inline-flex;
align-items: center;
gap: 8px;
background: var(--ief-paper-2);
padding: 8px 14px;
border-radius: 999px;
font-family: 'JetBrains Mono', ui-monospace, monospace;
font-size: 12px;
margin: 16px 0 8px;
color: var(--ief-ink);
}
.inreach-eform .ief-next {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
margin: 32px 0;
text-align: left;
}
.inreach-eform .ief-next-step {
padding: 24px;
background: #fff;
border: 1px solid var(--ief-line);
border-radius: var(--ief-radius);
}
.inreach-eform .ief-next-num {
font-family: 'Nunito Sans', sans-serif;
font-weight: 900;
color: var(--ief-red);
font-size: 14px;
}
.inreach-eform .ief-next-step h4 {
font-family: 'Nunito Sans', sans-serif;
text-transform: uppercase;
font-weight: 800;
font-size: 13px;
letter-spacing: 0.04em;
margin: 8px 0 6px;
color: var(--ief-ink);
}
.inreach-eform .ief-next-step p { font-size: 13px; color: var(--ief-ink-soft); margin: 0; }
.inreach-eform .ief-success-actions { display: flex; gap: 12px; justify-content: center; margin-top: 8px; } .inreach-eform .ief-spinner {
width: 16px; height: 16px;
border: 2px solid rgba(255,255,255,0.4);
border-top-color: #fff;
border-radius: 50%;
animation: ief-spin 0.7s linear infinite;
}
@keyframes ief-spin { to { transform: rotate(360deg); } } .inreach-eform .ief-credit {
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
margin-top: 20px;
font-family: 'Nunito Sans', sans-serif;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--ief-muted);
}
.inreach-eform .ief-credit img { height: 20px; width: 20px; border-radius: 50%; }
.inreach-eform .ief-credit .ief-credit-name { color: var(--ief-ink); } @media (max-width: 720px) {
.inreach-eform .ief-div-grid { grid-template-columns: 1fr; }
.inreach-eform .ief-grid-2 { grid-template-columns: 1fr; }
.inreach-eform .ief-radios.cols-2,
.inreach-eform .ief-radios.cols-3 { grid-template-columns: 1fr; }
.inreach-eform .ief-slots { grid-template-columns: repeat(2, 1fr); }
.inreach-eform .ief-next { grid-template-columns: 1fr; }
.inreach-eform .ief-step-dot .ief-dot-lbl { display: none; }
.inreach-eform .ief-body { padding: 28px 20px; }
.inreach-eform .ief-header,
.inreach-eform .ief-progress,
.inreach-eform .ief-bar-wrap,
.inreach-eform .ief-footer { padding-left: 20px; padding-right: 20px; }
}