:root {
--ef-primary:       #3452FF;
--ef-primary-fg:    #ffffff;
--ef-primary-dark:  #3452FF;
--ef-primary-light: rgba(52,82,255,.08);
--ef-primary-rgb:   52,82,255;
--ef-success:       #10b981;
--ef-danger:        #ef4444;
--ef-bg:            #ffffff;
--ef-surface:       #f4f4f5;
--ef-input-bg:      #f4f4f5;
--ef-border:        #e4e4e7;
--ef-text:          #18181b;
--ef-text-2:        #71717a;
--ef-text-3:        #a1a1aa;
--ef-radius:        12px;
--ef-radius-lg:     18px;
--ef-shadow:        0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04);
--ef-shadow-md:     0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04);
--ef-focus-ring:    0 0 0 3px rgba(var(--ef-primary-rgb),.18);
--ef-t:             .15s ease;
} .elct-booking-form { font-family:'Gabarito', system-ui, sans-serif; border:0 !important; box-shadow:none !important; }
.elct-wrap {
max-width: 100%;
margin: 0 auto;
color: var(--ef-text);
border:0 !important;
box-shadow:none !important;
-webkit-font-smoothing: antialiased;
font-size: 15px;
line-height: 1.5;
} .elct-progress { display:flex; align-items:flex-start; margin-bottom:24px; }
.elct-progress-item { flex:1; display:flex; flex-direction:column; align-items:center; gap:6px; position:relative; text-align:center; }
.elct-progress-item::after { content:''; position:absolute; top:15px; left:calc(50% + 18px); right:calc(-50% + 18px); height:2px; background:var(--ef-border); z-index:0; transition:background var(--ef-t); }
.elct-progress-item:last-child::after { display:none; }
.elct-progress-item.is-done::after { background:var(--ef-primary); }
.elct-progress-dot { width:30px; height:30px; border-radius:50%; background:#f1f5f9; border:2px solid var(--ef-border); color:var(--ef-text-2); font-size:12px; font-weight:700; display:flex; align-items:center; justify-content:center; position:relative; z-index:1; transition:all var(--ef-t); flex-shrink:0; }
.elct-progress-item.is-active .elct-progress-dot { background:var(--ef-primary); border-color:var(--ef-primary); color:#fff; box-shadow:0 0 0 4px rgba(var(--ef-primary-rgb),.15); }
.elct-progress-item.is-done .elct-progress-dot { background:var(--ef-primary); border-color:var(--ef-primary); color:#fff; }
.elct-progress-item.is-done .elct-progress-num { display:none; }
.elct-progress-item.is-done .elct-progress-check { display:flex; }
.elct-progress-check { display:none; }
.elct-progress-label { font-size:11px; color:var(--ef-text-2); font-weight:500; line-height:1.2; max-width:80px; transition:color var(--ef-t); }
.elct-progress-item.is-active .elct-progress-label { color:var(--ef-primary); font-weight:700; }
.elct-progress-item.is-done .elct-progress-label { color:var(--ef-text-2); }
@media(max-width:480px){ .elct-progress-label { display:none; } } .elct-step-card {
background:var(--ef-bg);
border:0;
border-radius:var(--ef-radius-lg);
padding:28px 28px 24px;
box-shadow:none;
display:none;
}
.elct-step-card.is-active { display:block; }
.elct-booking-form.elct-hide-stepper .elct-progress,
.elct-booking-form.elct-no-steps .elct-progress { display:none; }
.elct-booking-form.elct-no-steps .elct-step-card { display:block; padding:22px 0; border-radius:0; margin-bottom:4px; }
.elct-booking-form.elct-no-steps .elct-step-card + .elct-step-card { border-top:1px solid rgba(148,163,184,.16); }
.elct-booking-form.elct-no-steps .elct-step-nav:not(.elct-step-nav--submit) { display:none; }
.elct-booking-form.elct-no-steps #elct-step5-back { display:none; }
.elct-booking-form.elct-no-steps .elct-step-nav--submit { display:block; margin-top:18px; }
.elct-step-title { font-size:18px; font-weight:700; margin:0 0 18px; letter-spacing:-.025em; line-height:1.2; } .elct-disclaimer {
background:var(--ef-primary-light);
border-left:3px solid var(--ef-primary);
border-radius:0 var(--ef-radius) var(--ef-radius) 0;
padding:10px 14px;
font-size:13px;
color:var(--ef-primary-dark);
margin-bottom:18px;
} .elct-field { margin-bottom:14px; }
.elct-field-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.elct-field-row--thirds { grid-template-columns:repeat(3, minmax(0, 1fr)); }
@media(max-width:760px){ .elct-field-row--thirds { grid-template-columns:1fr; } }
@media(max-width:520px){ .elct-field-row { grid-template-columns:1fr; } } .e-leads-label {
display:block;
font-size:14px;
font-weight:600;
color:var(--ef-text);
margin-bottom:5px;
letter-spacing:-.01em;
}
.e-leads-required { color:var(--ef-danger); font-size:11px; margin-left:2px; } .e-leads-input,
input.e-leads-input,
select.e-leads-input,
textarea.e-leads-input {
width:100%;
padding:10px 14px;
font-size:15px;
font-family:inherit;
background:var(--ef-input-bg);
border:1.5px solid var(--ef-border);
border-radius:var(--ef-radius);
color:var(--ef-text);
transition:border-color var(--ef-t), box-shadow var(--ef-t), background var(--ef-t);
appearance:none;
-webkit-appearance:none;
outline:none;
box-sizing:border-box;
line-height:1.5;
}
input.e-leads-input,
select.e-leads-input {
height:46px;
min-height:46px;
}
textarea.e-leads-input {
min-height:88px;
height:auto;
}
.e-leads-input:focus,
input.e-leads-input:focus,
select.e-leads-input:focus,
textarea.e-leads-input:focus {
border-color:var(--ef-primary);
background:var(--ef-bg);
box-shadow:var(--ef-focus-ring);
}
.e-leads-input::placeholder { color:var(--ef-text-3); }
.e-leads-input.is-invalid { border-color:var(--ef-danger); }
textarea.e-leads-input { resize:vertical; } select.e-leads-input {
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
background-repeat:no-repeat;
background-position:right 12px center;
padding-right:36px;
cursor:pointer;
} .e-leads-field-error {
color:var(--ef-danger);
font-size:12px;
font-weight:500;
margin-top:4px;
} .elct-plate-row { display:flex; gap:10px; align-items:flex-end; }
.elct-plate-input-wrap {
flex:1;
display:flex;
align-items:stretch;
min-height:46px;
background:var(--ef-input-bg);
border:1.5px solid var(--ef-border);
border-radius:var(--ef-radius);
overflow:hidden;
transition:border-color var(--ef-t), box-shadow var(--ef-t), background var(--ef-t);
}
.elct-plate-input-wrap:focus-within {
border-color:var(--ef-primary);
box-shadow:var(--ef-focus-ring);
background:var(--ef-bg);
}
.elct-plate-dk {
width:56px;
padding:0 14px;
margin:-1.5px 0 -1.5px -1.5px;
font-size:12px;
font-weight:900;
color:#fff;
background:#003580;
display:flex;
align-items:center;
justify-content:center;
letter-spacing:.04em;
flex-shrink:0;
align-self:stretch;
min-height:49px;
box-sizing:border-box;
}
.elct-plate-input {
flex:1;
min-height:46px !important;
height:46px !important;
padding:10px 12px !important;
background:transparent !important;
border:none !important;
box-shadow:none !important;
font-size:16px !important;
font-weight:700 !important;
letter-spacing:.08em;
text-transform:uppercase;
}
.elct-plate-input:focus { outline:none; box-shadow:none !important; border:none !important; }
@media(max-width:520px){
.elct-plate-row { flex-direction:column; align-items:stretch; }
.elct-plate-row .elct-btn { width:100%; }
} .elct-demo-hint {
display:inline-flex; align-items:center; gap:6px;
font-size:12px; color:var(--ef-text-2); margin-top:8px;
padding:4px 10px; background:#f1f5f9; border-radius:6px; border:1px solid var(--ef-border);
}
.elct-demo-hint code { background:#e2e8f0; padding:1px 6px; border-radius:4px; font-size:11px; font-weight:700; color:var(--ef-primary-dark); } .elct-car-info { background:#f0fdf4; border:1px solid #bbf7d0; border-radius:var(--ef-radius); padding:12px 14px; margin-top:12px; }
.elct-car-info-row { display:flex; justify-content:space-between; font-size:13px; padding:2px 0; }
.elct-car-info-label { color:var(--ef-text-2); }
.elct-car-info-value { font-weight:600; color:#065f46; }
.elct-alert { border-radius:var(--ef-radius); padding:10px 14px; font-size:13px; margin-top:10px; }
.elct-alert--warning { background:#fffbeb; border:1px solid #fde68a; color:#92400e; } .elct-step-nav { display:flex; align-items:center; justify-content:space-between; margin-top:22px; gap:10px; }
.elct-step-nav--submit { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; }
.elct-step-nav--submit .e-leads-submit { justify-self:stretch; }
@media(max-width:640px){ .elct-step-nav--submit { grid-template-columns:1fr; } }
.elct-btn {
display:inline-flex; align-items:center; justify-content:center; gap:6px;
min-height:46px; height:46px; box-sizing:border-box;
padding:0 20px; font-size:14px; font-weight:600; font-family:inherit;
border-radius:var(--ef-radius); border:1.5px solid transparent;
cursor:pointer; transition:all var(--ef-t); line-height:1; white-space:nowrap;
text-decoration:none;
}
.elct-btn:disabled { opacity:.45; cursor:not-allowed; pointer-events:none; }
.elct-btn--primary {
background:var(--ef-primary); color:#fff; border-color:var(--ef-primary);
box-shadow:0 1px 3px rgba(var(--ef-primary-rgb),.3);
}
.elct-btn--primary:hover { background:var(--ef-primary-dark); border-color:var(--ef-primary-dark); box-shadow:0 3px 8px rgba(var(--ef-primary-rgb),.35); transform:translateY(-1px); }
.elct-btn--primary:active { transform:none; box-shadow:none; }
.elct-btn--ghost {
background:var(--ef-surface);
color:var(--ef-text);
border-color:var(--ef-border);
box-shadow:0 1px 2px rgba(15,23,42,.06);
}
.elct-btn--ghost:hover {
color:var(--ef-text);
background:#e9e9ec;
border-color:#d4d4d8;
box-shadow:0 3px 8px rgba(15,23,42,.08);
transform:translateY(-1px);
}
.elct-btn--ghost:active { transform:none; box-shadow:none; } .e-leads-submit {
display:inline-flex; align-items:center; justify-content:center;
width:100%; max-width:100%; min-height:46px; height:46px; box-sizing:border-box;
padding:0 28px; font-size:15px; font-weight:700; font-family:inherit;
background:var(--ef-primary); color:#fff; border:none;
border-radius:var(--ef-radius); cursor:pointer;
box-shadow:0 2px 8px rgba(var(--ef-primary-rgb),.35);
transition:all var(--ef-t);
}
.e-leads-submit:hover { background:var(--ef-primary-dark); transform:translateY(-1px); box-shadow:0 4px 12px rgba(var(--ef-primary-rgb),.4); }
.e-leads-submit:disabled { opacity:.5; cursor:not-allowed; transform:none; } .elct-treatment-list { display:flex; flex-direction:column; gap:8px; margin-bottom:8px; }
.elct-treatment-card {
position:relative;
border:1px solid var(--ef-border);
border-radius:14px;
padding:13px 16px;
background:var(--ef-bg);
cursor:pointer;
transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
box-shadow:0 3px 10px rgba(15,23,42,.04);
user-select:none;
overflow:hidden;
}
.elct-treatment-card:hover {
transform:translateY(-1px);
border-color:rgba(var(--ef-primary-rgb),.35);
box-shadow:0 8px 18px rgba(15,23,42,.07);
}
.elct-treatment-card.is-selected {
border-color:var(--ef-primary);
background:linear-gradient(180deg, rgba(var(--ef-primary-rgb),.06), rgba(var(--ef-primary-rgb),.02));
box-shadow:0 0 0 2px rgba(var(--ef-primary-rgb),.10), 0 8px 18px rgba(15,23,42,.07);
}
.elct-treatment-card.is-selected::before {
content:'';
position:absolute;
inset:0 auto 0 0;
width:4px;
background:var(--ef-primary);
}
.elct-treatment-card.is-selected::after {
content:'✓';
position:absolute;
top:12px;
right:12px;
width:20px;
height:20px;
border-radius:999px;
background:var(--ef-primary);
color:#fff;
font-size:12px;
font-weight:900;
display:flex;
align-items:center;
justify-content:center;
}
.elct-treatment-card-body {
display:grid;
grid-template-columns:minmax(0, 1fr) auto;
gap:16px;
align-items:center;
padding-right:28px;
}
.elct-treatment-card-main {
min-width:0;
display:grid;
gap:4px;
}
.elct-treatment-card-name {
font-size:17px;
line-height:1.2;
font-weight:800;
letter-spacing:-.025em;
color:var(--ef-text);
}
.elct-treatment-card-desc {
font-size:13px;
line-height:1.4;
color:var(--ef-text-2);
max-width:62ch;
}
.elct-treatment-card-meta {
display:flex;
align-items:center;
flex-wrap:wrap;
gap:8px 10px;
min-height:20px;
}
.elct-orig-price {
font-size:13px;
color:var(--ef-text-3);
text-decoration:line-through;
}
.elct-treatment-card-env {
font-size:11px;
font-weight:600;
color:var(--ef-text-3);
white-space:nowrap;
}
.elct-treatment-card-side {
min-width:132px;
padding-left:14px;
border-left:1px solid rgba(148,163,184,.22);
display:grid;
justify-items:end;
align-content:center;
gap:2px;
}
.elct-treatment-card-price-label {
font-size:11px;
font-weight:700;
letter-spacing:.08em;
text-transform:uppercase;
color:var(--ef-text-3);
}
.elct-treatment-card-price {
font-size:22px;
line-height:1;
font-weight:900;
color:var(--ef-primary-dark);
white-space:nowrap;
}
.elct-treatment-card-price-meta {
display:flex;
align-items:center;
justify-content:flex-end;
flex-wrap:wrap;
gap:8px 10px;
min-height:20px;
margin-top:2px;
} .elct-discount-badge {
display:inline-flex;
align-items:center;
gap:6px;
background:#fff5cf;
color:#9a5a00;
border:1px solid #f3d36b;
border-radius:999px;
font-size:12px;
font-weight:700;
line-height:1;
padding:6px 10px;
margin-left:0;
}
@media(max-width:820px){
.elct-treatment-card {
padding:13px 14px;
}
.elct-treatment-card-body {
grid-template-columns:minmax(0,1fr);
gap:8px;
padding-right:24px;
}
.elct-treatment-card-side {
min-width:0;
padding-left:0;
padding-top:8px;
border-left:none;
border-top:1px solid rgba(148,163,184,.18);
justify-items:start;
gap:6px;
}
.elct-treatment-card-price-meta {
justify-content:flex-start;
}
.elct-treatment-card-price {
font-size:20px;
}
}
@media(max-width:520px){
.elct-treatment-card-name {
font-size:17px;
}
.elct-treatment-card-desc {
font-size:13px;
}
.elct-discount-badge {
font-size:11px;
padding:5px 8px;
}
.elct-treatment-card-price {
font-size:20px;
}
} .elct-addons-list { display:flex; flex-direction:column; gap:8px; }
.elct-addon-item {
display:flex;
flex-direction:column;
gap:6px;
min-width:0;
}
.e-leads-choice.elct-addon-row,
label.elct-addon-row {
display:flex;
align-items:center;
gap:12px;
padding:12px 14px;
border:1.5px solid var(--ef-border);
border-radius:var(--ef-radius);
background:var(--ef-bg);
cursor:pointer;
transition:all var(--ef-t);
user-select:none;
margin:0;
}
.elct-addon-row:hover { border-color:rgba(var(--ef-primary-rgb),.4); background:#fafafe; }
.elct-addon-row:has(.elct-addon-chk:checked),
.elct-addon-row.is-checked,
.elct-addon-item.is-checked .elct-addon-row { border-color:var(--ef-primary); background:var(--ef-primary-light); }
.elct-addon-chk { width:17px; height:17px; accent-color:var(--ef-primary); cursor:pointer; flex-shrink:0; }
.elct-addon-info { flex:1; min-width:0; }
.elct-addon-name { font-size:14px; font-weight:600; display:block; }
.elct-addon-desc { font-size:12px; color:var(--ef-text-2); display:block; margin-top:2px; }
.elct-addon-price { font-size:14px; font-weight:700; flex-shrink:0; white-space:nowrap; }
.elct-addon-quantity {
display:grid;
grid-template-columns:auto minmax(80px,110px) 1fr;
gap:10px;
align-items:center;
padding:11px 14px;
border:1px solid rgba(var(--ef-primary-rgb),.24);
border-radius:var(--ef-radius);
background:rgba(var(--ef-primary-rgb),.045);
}
.elct-addon-quantity-label {
margin:0;
font-size:13px;
font-weight:600;
color:var(--ef-text);
}
.elct-addon-days {
width:100%;
min-height:40px;
padding:7px 10px;
border:1.5px solid var(--ef-border);
border-radius:calc(var(--ef-radius) - 2px);
background:var(--ef-bg);
color:var(--ef-text);
font:inherit;
box-sizing:border-box;
}
.elct-addon-days:focus {
outline:none;
border-color:var(--ef-primary);
box-shadow:0 0 0 3px rgba(var(--ef-primary-rgb),.12);
}
.elct-addon-days.is-invalid {
border-color:#c62828;
box-shadow:0 0 0 3px rgba(198,40,40,.1);
}
.elct-addon-line-total {
justify-self:end;
font-size:13px;
font-weight:700;
color:var(--ef-primary-dark);
white-space:nowrap;
}
@media(max-width:520px){
.elct-addon-quantity {
grid-template-columns:1fr minmax(80px,105px);
}
.elct-addon-line-total {
grid-column:1 / -1;
justify-self:start;
}
} .elct-price-summary {
background:var(--ef-surface);
border:1px solid var(--ef-border);
border-radius:var(--ef-radius);
padding:14px 16px;
margin-top:16px;
}
.elct-price-summary-row { display:flex; justify-content:space-between; font-size:13px; padding:3px 0; color:var(--ef-text-2); }
.elct-price-summary-row span:last-child { font-weight:600; color:var(--ef-text); }
.elct-price-summary-row--total { font-size:15px; font-weight:700; color:var(--ef-text); border-top:1px solid var(--ef-border); margin-top:8px; padding-top:10px; }
.elct-price-summary-row--total span:last-child { color:var(--ef-primary-dark); font-size:16px; }
.elct-empty-hint,
.elct-summary-placeholder {
margin:0;
font-size:13px;
color:var(--ef-text-2);
}   .e-leads-gdpr { display:flex; align-items:flex-start; gap:10px; cursor:pointer; margin-bottom:14px; }
.e-leads-gdpr input[type="checkbox"] { width:17px; height:17px; accent-color:var(--ef-primary); margin-top:2px; flex-shrink:0; cursor:pointer; }
.e-leads-gdpr-text { font-size:13px; color:var(--ef-text-2); line-height:1.5; }
.e-leads-gdpr-text a { color:var(--ef-primary); } .elct-booking-summary {
background:var(--ef-surface);
border:1px solid var(--ef-border);
border-radius:var(--ef-radius);
padding:14px 16px;
margin:16px 0;
}
.elct-booking-summary h3 { font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--ef-text-3); margin:0 0 10px; }
.elct-summary-table { width:100%; border-collapse:collapse; font-size:13px; }
.elct-summary-table th { text-align:left; color:var(--ef-text-2); font-weight:500; padding:3px 12px 3px 0; width:40%; }
.elct-summary-table td { color:var(--ef-text); font-weight:600; padding:3px 0; } .e-leads-modal { display:none; position:fixed; inset:0; z-index:99999; align-items:center; justify-content:center; }
.e-leads-modal.is-open { display:flex; }
.e-leads-modal-overlay { position:absolute; inset:0; background:rgba(0,0,0,.5); backdrop-filter:blur(2px); }
.e-leads-modal-card { position:relative; background:var(--ef-bg); border-radius:var(--ef-radius-lg); padding:32px 28px; max-width:420px; width:90%; box-shadow:0 20px 60px rgba(0,0,0,.2); text-align:center; z-index:1; }
.e-leads-modal-close { position:absolute; top:12px; right:12px; width:28px; height:28px; background:#f1f5f9; border:none; border-radius:50%; cursor:pointer; font-size:18px; color:var(--ef-text-2); display:flex; align-items:center; justify-content:center; line-height:1; }
.e-leads-modal-close:hover { background:#e2e8f0; }
.e-leads-modal-title { font-size:20px; font-weight:700; margin:0 0 8px; }
.e-leads-modal-msg { font-size:14px; color:var(--ef-text-2); } .elct-addon-row.is-required {
border-style: dashed;
border-color: rgba(var(--ef-primary-rgb), .45);
background: var(--ef-primary-light);
cursor: default;
}
.elct-addon-row.is-required:hover { border-color: rgba(var(--ef-primary-rgb), .45); background: var(--ef-primary-light); }
.elct-addon-row.is-required input[disabled] { opacity: 1; }
.elct-addon-row.is-required small { font-weight: 700; color: var(--ef-primary); } .elct-manual-car {
margin:16px 0;
padding:18px;
border:1px solid var(--ef-border);
border-radius:var(--ef-radius-lg);
background:var(--ef-surface);
}
.elct-manual-car .elct-alert { margin:0 0 16px; display:flex; flex-direction:column; gap:2px; }
.elct-alert--info { background:var(--ef-primary-light); border:1px solid rgba(var(--ef-primary-rgb),.22); color:var(--ef-primary-dark); }
.elct-optional { font-weight:400; color:var(--ef-text-2); font-size:12px; }
.elct-manual-note { margin:-2px 0 14px; color:var(--ef-text-2); font-size:12px; }
.elct-treatment-card-request-label { display:block; max-width:125px; color:var(--ef-primary-dark); font-size:13px; font-weight:750; line-height:1.25; text-align:right; }
.elct-price-request-mode [data-step-dot="4"],
.elct-price-request-mode [data-step="4"] { display:none !important; }
.elct-price-request-mode #elct-price-summary { display:none !important; }
.elct-price-request-mode .elct-booking-summary h3::after {
content:' · pris beregnes manuelt';
color:var(--ef-text-2);
font-size:12px;
font-weight:500;
}
@media(max-width:520px) {
.elct-manual-car { padding:14px; }
.elct-treatment-card-request-label { max-width:none; text-align:left; margin-top:4px; }
} .elct-flow-header { display:none; }
.elct-booking-form.elct-design-fullscreen {
position:relative;
left:50%;
width:100vw;
max-width:100vw;
min-height:100vh;
min-height:100svh;
margin-left:-50vw;
overflow:hidden;
isolation:isolate;
background:
radial-gradient(circle at 12% 12%, rgba(var(--ef-primary-rgb),.13), transparent 34%),
radial-gradient(circle at 88% 86%, rgba(73,190,255,.12), transparent 31%),
linear-gradient(145deg,#f8f9ff 0%,#f4f6fb 48%,#f7fbff 100%);
}
.elct-booking-form.elct-design-fullscreen::before,
.elct-booking-form.elct-design-fullscreen::after {
content:'';
position:absolute;
z-index:-1;
border-radius:999px;
filter:blur(1px);
pointer-events:none;
}
.elct-booking-form.elct-design-fullscreen::before {
width:380px;
height:380px;
top:-230px;
right:-110px;
border:1px solid rgba(var(--ef-primary-rgb),.12);
box-shadow:0 0 0 70px rgba(var(--ef-primary-rgb),.025),0 0 0 140px rgba(var(--ef-primary-rgb),.018);
}
.elct-booking-form.elct-design-fullscreen::after {
width:270px;
height:270px;
bottom:-190px;
left:-90px;
border:1px solid rgba(29,78,216,.10);
box-shadow:0 0 0 55px rgba(29,78,216,.022),0 0 0 110px rgba(29,78,216,.015);
}
.elct-design-fullscreen .elct-wrap {
width:min(1180px,calc(100% - 48px));
min-height:100vh;
min-height:100svh;
margin:0 auto;
padding:clamp(24px,3.5vw,52px) 0;
box-sizing:border-box;
display:flex;
flex-direction:column;
}
.elct-design-fullscreen .elct-flow-header {
display:flex;
align-items:baseline;
justify-content:space-between;
gap:18px;
margin:0 auto 22px;
width:min(940px,100%);
color:var(--ef-text);
}
.elct-flow-header__eyebrow {
color:var(--ef-primary);
font-size:12px;
font-weight:800;
letter-spacing:.13em;
text-transform:uppercase;
}
.elct-flow-header__title {
color:var(--ef-text-2);
font-size:13px;
font-weight:650;
text-align:right;
}
.elct-design-fullscreen .elct-progress {
width:min(760px,100%);
margin:0 auto clamp(22px,3vw,38px);
padding:0 4px;
}
.elct-design-fullscreen .elct-progress-item::after {
top:5px;
left:calc(50% + 10px);
right:calc(-50% + 10px);
height:3px;
border-radius:999px;
background:rgba(100,116,139,.15);
}
.elct-design-fullscreen .elct-progress-dot {
width:12px;
height:12px;
border:0;
background:#d8dce8;
box-shadow:none;
color:transparent;
}
.elct-design-fullscreen .elct-progress-num,
.elct-design-fullscreen .elct-progress-check { display:none !important; }
.elct-design-fullscreen .elct-progress-item.is-active .elct-progress-dot {
background:var(--ef-primary);
box-shadow:0 0 0 6px rgba(var(--ef-primary-rgb),.12);
}
.elct-design-fullscreen .elct-progress-item.is-done .elct-progress-dot,
.elct-design-fullscreen .elct-progress-item.is-done::after { background:var(--ef-primary); }
.elct-design-fullscreen .elct-progress-label {
max-width:none;
margin-top:7px;
font-size:11px;
font-weight:650;
color:#8991a3;
}
.elct-design-fullscreen .elct-progress-item.is-active .elct-progress-label { color:var(--ef-text); }
.elct-design-fullscreen .elct-step-card {
width:min(940px,100%);
margin:auto;
padding:clamp(28px,5vw,64px);
box-sizing:border-box;
border:1px solid rgba(255,255,255,.92);
border-radius:clamp(22px,3vw,32px);
background:rgba(255,255,255,.88);
box-shadow:0 28px 80px rgba(38,51,93,.12),0 4px 18px rgba(38,51,93,.05);
backdrop-filter:blur(18px);
-webkit-backdrop-filter:blur(18px);
}
.elct-design-fullscreen .elct-step-card.is-active {
animation:elctFullscreenIn .38s cubic-bezier(.22,.82,.35,1) both;
}
@keyframes elctFullscreenIn {
from { opacity:0; transform:translateY(18px) scale(.992); }
to { opacity:1; transform:none; }
}
.elct-design-fullscreen .elct-step-title {
max-width:820px;
margin:0 0 clamp(24px,3.5vw,38px);
font-size:clamp(31px,4.2vw,52px);
font-weight:800;
line-height:1.02;
letter-spacing:-.045em;
outline:none;
}
.elct-design-fullscreen .elct-disclaimer {
margin:-14px 0 28px;
padding:12px 15px;
border:1px solid rgba(var(--ef-primary-rgb),.13);
border-left:3px solid var(--ef-primary);
background:rgba(var(--ef-primary-rgb),.055);
}
.elct-design-fullscreen .elct-field { margin-bottom:18px; }
.elct-design-fullscreen .elct-field-row { gap:18px; }
.elct-design-fullscreen .e-leads-label {
margin-bottom:8px;
font-size:13px;
font-weight:750;
letter-spacing:.005em;
}
.elct-design-fullscreen .e-leads-input,
.elct-design-fullscreen input.e-leads-input,
.elct-design-fullscreen select.e-leads-input,
.elct-design-fullscreen textarea.e-leads-input {
padding:13px 16px;
border:1px solid #dfe3ec;
border-radius:14px;
background:rgba(248,249,252,.92);
font-size:16px;
box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.elct-design-fullscreen input.e-leads-input,
.elct-design-fullscreen select.e-leads-input { min-height:54px; height:54px; }
.elct-design-fullscreen textarea.e-leads-input { min-height:112px; }
.elct-design-fullscreen .elct-plate-row { gap:12px; }
.elct-design-fullscreen .elct-plate-input-wrap {
min-height:58px;
border:1px solid #dfe3ec;
border-radius:15px;
background:rgba(248,249,252,.92);
}
.elct-design-fullscreen .elct-plate-dk { width:64px; min-height:60px; font-size:13px; }
.elct-design-fullscreen .elct-plate-input {
min-height:56px !important;
height:56px !important;
padding:12px 16px !important;
font-size:20px !important;
letter-spacing:.11em;
}
.elct-design-fullscreen .elct-btn,
.elct-design-fullscreen .e-leads-submit {
min-height:54px;
height:54px;
padding:0 25px;
border-radius:14px;
font-size:15px;
font-weight:750;
}
.elct-design-fullscreen .elct-btn--primary,
.elct-design-fullscreen .e-leads-submit {
box-shadow:0 10px 24px rgba(var(--ef-primary-rgb),.24);
}
.elct-design-fullscreen .elct-btn--ghost {
border-color:#e1e4eb;
background:rgba(246,247,250,.9);
}
.elct-design-fullscreen .elct-step-nav {
margin-top:clamp(26px,4vw,44px);
padding-top:22px;
border-top:1px solid rgba(148,163,184,.15);
}
.elct-design-fullscreen [data-step="1"] .elct-step-nav { justify-content:flex-end; }
.elct-design-fullscreen .elct-car-info,
.elct-design-fullscreen .elct-alert,
.elct-design-fullscreen .elct-manual-car,
.elct-design-fullscreen .elct-price-summary,
.elct-design-fullscreen .elct-booking-summary {
border-radius:16px;
}
.elct-design-fullscreen .elct-car-info {
padding:15px 18px;
margin-top:18px;
background:#f0fbf5;
border-color:#c8eed8;
}
.elct-design-fullscreen .elct-car-info-row { padding:4px 0; font-size:14px; }
.elct-design-fullscreen .elct-alert { display:flex; flex-direction:column; gap:3px; padding:14px 16px; }
.elct-design-fullscreen .elct-manual-car {
margin:20px 0 4px;
padding:clamp(18px,3vw,28px);
border-color:#e1e5ed;
background:rgba(247,248,251,.88);
}
.elct-design-fullscreen .elct-treatment-list {
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:12px;
}
.elct-design-fullscreen .elct-treatment-card {
min-height:150px;
padding:18px;
border:1px solid #e0e4ec;
border-radius:17px;
background:rgba(250,251,253,.86);
box-shadow:none;
}
.elct-design-fullscreen .elct-treatment-card:hover {
border-color:rgba(var(--ef-primary-rgb),.42);
transform:translateY(-2px);
box-shadow:0 12px 30px rgba(25,37,78,.08);
}
.elct-design-fullscreen .elct-treatment-card.is-selected {
border-color:var(--ef-primary);
background:rgba(var(--ef-primary-rgb),.045);
box-shadow:0 0 0 3px rgba(var(--ef-primary-rgb),.09),0 14px 34px rgba(25,37,78,.08);
}
.elct-design-fullscreen .elct-treatment-card-body { height:100%; grid-template-columns:1fr; align-content:space-between; }
.elct-design-fullscreen .elct-treatment-card-side {
min-width:0;
padding:12px 0 0;
border:0;
border-top:1px solid rgba(148,163,184,.18);
justify-items:start;
}
.elct-design-fullscreen .elct-treatment-card-price-meta { justify-content:flex-start; }
.elct-design-fullscreen .elct-treatment-card-request-label { max-width:none; text-align:left; }
.elct-design-fullscreen .elct-addons-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.elct-design-fullscreen .elct-addon-row { min-height:70px; box-sizing:border-box; }
.elct-design-fullscreen .elct-price-summary,
.elct-design-fullscreen .elct-booking-summary {
padding:20px 22px;
background:rgba(247,248,251,.9);
border-color:#e2e5ec;
}
.elct-design-fullscreen .elct-summary-table th,
.elct-design-fullscreen .elct-summary-table td { padding-top:6px; padding-bottom:6px; }
.elct-design-fullscreen .e-leads-gdpr { margin:20px 0; }
@media(max-width:820px) {
.elct-design-fullscreen .elct-wrap { width:min(100% - 28px,760px); padding:18px 0 24px; }
.elct-design-fullscreen .elct-flow-header { margin-bottom:18px; }
.elct-design-fullscreen .elct-step-card { padding:28px 22px; border-radius:22px; }
.elct-design-fullscreen .elct-step-title { font-size:clamp(29px,8vw,42px); }
.elct-design-fullscreen .elct-treatment-list,
.elct-design-fullscreen .elct-addons-list { grid-template-columns:1fr; }
.elct-design-fullscreen .elct-treatment-card { min-height:0; }
}
@media(max-width:520px) {
.elct-booking-form.elct-design-fullscreen { min-height:100svh; }
.elct-design-fullscreen .elct-wrap { width:calc(100% - 20px); padding:14px 0 18px; }
.elct-design-fullscreen .elct-flow-header { align-items:flex-start; margin-bottom:15px; }
.elct-flow-header__title { max-width:55%; font-size:11px; }
.elct-design-fullscreen .elct-progress { margin-bottom:18px; }
.elct-design-fullscreen .elct-progress-label { display:none; }
.elct-design-fullscreen .elct-step-card { margin:28px auto 0; padding:24px 18px 20px; border-radius:20px; }
.elct-design-fullscreen .elct-step-title { margin-bottom:24px; font-size:31px; }
.elct-design-fullscreen .elct-plate-row { flex-direction:column; }
.elct-design-fullscreen .elct-step-nav { display:grid; grid-template-columns:1fr; }
.elct-design-fullscreen .elct-step-nav .elct-btn,
.elct-design-fullscreen .elct-step-nav .e-leads-submit { width:100%; }
.elct-design-fullscreen .elct-step-nav .elct-btn--ghost { order:2; }
.elct-design-fullscreen .elct-step-nav--submit { display:grid; }
}
@media(prefers-reduced-motion:reduce) {
.elct-design-fullscreen .elct-step-card.is-active { animation:none; }
.elct-design-fullscreen *,
.elct-design-fullscreen *::before,
.elct-design-fullscreen *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; }
} .elct-booking-form,
.elct-booking-form > .elct-wrap,
.elct-booking-form .elct-step-card {
box-sizing:border-box;
}
.elct-booking-form {
width:100%;
max-width:none;
}
.elct-booking-form > .elct-wrap {
width:100%;
max-width:none;
} body.e-leads-has-public-form.elct-has-booking-form #ui-datepicker-div {
z-index:2147483647 !important;
}
@media(max-width:680px) {
.elct-booking-form.elct-design-classic {
position:relative;
left:50%;
width:100vw !important;
max-width:100vw !important;
margin-left:-50vw !important;
margin-right:-50vw !important;
padding-left:env(safe-area-inset-left);
padding-right:env(safe-area-inset-right);
}
.elct-booking-form.elct-design-classic > .elct-wrap {
width:100% !important;
max-width:none !important;
margin-left:0 !important;
margin-right:0 !important;
padding-left:0;
padding-right:0;
}
.elct-booking-form.elct-design-classic .elct-step-card,
.elct-booking-form.elct-design-classic.elct-no-steps .elct-step-card {
width:100%;
max-width:none;
margin-left:0;
margin-right:0;
padding-left:14px;
padding-right:14px;
}
.elct-booking-form.elct-design-classic .elct-progress {
width:100%;
padding-left:10px;
padding-right:10px;
box-sizing:border-box;
}
}
@media(max-width:480px) {
body.e-leads-has-public-form.elct-has-booking-form #ui-datepicker-div {
width:calc(100vw - 20px) !important;
min-width:0 !important;
max-width:calc(100vw - 20px) !important;
box-sizing:border-box;
}
}