/* GENERATED from effeect-gp.src.css by tools/build-css.py. Do not edit by hand. */
/* Effeect Growth Platform UI. Tokens follow the Figma "Effeect New Design" foundations. */
.effeect-gp.effeect-gp, .effeect-gp-thankyou.effeect-gp-thankyou, .effeect-gp-checkout-intro.effeect-gp-checkout-intro, .egp-form.egp-form, .egp-onb.egp-onb, .effeect-gp-checkout.effeect-gp-checkout, .effeect-gp-cart.effeect-gp-cart, .effeect-gp-account.effeect-gp-account {
	--egp-brand: var(--e-global-color-effbgbrand, #F36E21);
	--egp-brand-hover: #FB8743;
	--egp-brand-pressed: #D9580F;
	--egp-brand-subtle: #FFF4EC;
	--egp-brand-text: #B3450B;
	--egp-accent: #F9A11B;
	--egp-ink: #08192E;
	--egp-ink-2: #3E4F63;
	--egp-ink-3: #546679;
	--egp-ink-4: #74859A;
	--egp-canvas: #FBFCF7;
	--egp-surface: #FFFFFF;
	--egp-subtle: #F5F4EC;
	--egp-muted: #ECEAE0;
	--egp-border: #DEDBCD;
	--egp-border-strong: #74859A;
	--egp-success: #106239;
	--egp-success-bg: #ECF8F1;
	--egp-warn: #934C0B;
	--egp-warn-bg: #FFF9E9;
	--egp-accent-subtle: #FFF9E9;
	--egp-info: #22489C;
	--egp-info-bg: #EDF3FE;
	--egp-danger: #A12A21;
	--egp-danger-line: #C7362A;
	--egp-danger-bg: #FDEEEC;
	--egp-halo: rgba(243, 110, 33, .35);
	--egp-display: "Bricolage Grotesque", var(--e-global-typography-primary-font-family, system-ui), sans-serif;
	--egp-body: "Figtree", var(--e-global-typography-text-font-family, system-ui), sans-serif;
	--egp-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-family: var(--egp-body);
	color: var(--egp-ink);
	font-size: 16px;
	line-height: 1.5;
}

/* Base reset inside our components (weight 0,2,0: above the site kit, below every component rule). */
.effeect-gp :is(button, [type=button], [type=submit], .egp-x), .egp-form :is(button, [type=submit], .egp-x) {
	background-color: transparent; font-family: var(--egp-body); font-size: inherit; font-weight: inherit; line-height: inherit;
	color: var(--egp-ink); border: 0; border-radius: 0; padding: 0; box-shadow: none; text-transform: none; letter-spacing: normal;
}
/* The kit paints every hovered or focused button orange with a white label and a shadow (weight 0,2,1). This reset
   (0,3,0) clears that; component hover and focus rules of the same weight come later and win. */
.effeect-gp :is(button, [type=button], [type=submit], .egp-x):is(:hover, :focus, :active),
.egp-form :is(button, [type=submit], .egp-x):is(:hover, :focus, :active) {
	background-color: transparent; color: var(--egp-ink); box-shadow: none; text-decoration: none;
}
.effeect-gp :is(p, ul, ol, dl, figure, .egp-x), .egp-form :is(p, .egp-x) { margin: 0; }
.effeect-gp :is(h1, h2, h3, h4, h5, h6, .egp-x), .egp-form :is(h1, h2, h3, h4, h5, h6, .egp-x) {
	font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; letter-spacing: normal; margin: 0; color: inherit;
}
.effeect-gp :is(input, textarea, select):not([type=checkbox]):not([type=radio]):not([type=range]):not(.egp-x),
.egp-form :is(input, textarea, select):not([type=checkbox]):not([type=radio]):not([type=range]):not(.egp-x) { border-radius: 12px; }

.effeect-gp.effeect-gp *, .effeect-gp.effeect-gp *::before, .effeect-gp.effeect-gp *::after, .egp-form.egp-form *, .egp-onb.egp-onb * { box-sizing: border-box; }
.effeect-gp.effeect-gp { scroll-margin-top: var(--egp-sticky-top, 24px); }
/* Components set display, which would otherwise beat the hidden attribute. */
.effeect-gp.effeect-gp [hidden], .egp-form.egp-form [hidden], .egp-onb.egp-onb [hidden] { display: none !important; }
.effeect-gp.effeect-gp .screen-reader-text, .egp-form.egp-form .screen-reader-text, .egp-onb.egp-onb .screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
/* Theme neutraliser: some themes (Hello Elementor's reset) colour every button and link #c36 and
   paint button hover/focus states. Our components set their own colours below. */
.effeect-gp.effeect-gp button, .egp-form.egp-form button, .egp-onb.egp-onb button, .effeect-gp-thankyou.effeect-gp-thankyou button, .effeect-gp.effeect-gp [type=button], .effeect-gp.effeect-gp [type=submit], .egp-form.egp-form [type=submit], .egp-onb.egp-onb [type=submit] {
	color: var(--egp-ink); font-family: var(--egp-body); text-transform: none; letter-spacing: normal; white-space: normal; line-height: 1.25;
}
.effeect-gp.effeect-gp button:hover, .effeect-gp.effeect-gp button:focus, .egp-form.egp-form button:hover, .egp-form.egp-form button:focus, .egp-onb.egp-onb button:hover, .egp-onb.egp-onb button:focus, .effeect-gp.effeect-gp [type=submit]:hover, .egp-form.egp-form [type=submit]:hover, .egp-onb.egp-onb [type=submit]:hover {
	color: var(--egp-ink); text-decoration: none;
}
.effeect-gp.effeect-gp .egp-mode-btn { color: var(--egp-ink-2); }
.effeect-gp.effeect-gp .egp-mode-btn.is-on { color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-mode-btn:hover, .effeect-gp.effeect-gp .egp-mode-btn:focus { background-color: var(--egp-subtle); color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-mode-btn.is-on:hover, .effeect-gp.effeect-gp .egp-mode-btn.is-on:focus { background-color: var(--egp-surface); }
.effeect-gp.effeect-gp .egp-link, .egp-form.egp-form .egp-link, .egp-onb.egp-onb .egp-link { background: none; border: 0; padding: 0; color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-link:hover, .effeect-gp.effeect-gp .egp-link:focus, .egp-form.egp-form .egp-link:hover, .egp-onb.egp-onb .egp-link:hover { background: none; color: var(--egp-brand-text); }
.effeect-gp.effeect-gp a, .egp-form.egp-form a, .egp-onb.egp-onb a, .effeect-gp-thankyou.effeect-gp-thankyou a:not(.button) { color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-brand-link, .effeect-gp.effeect-gp .egp-brand-link:focus, .effeect-gp.effeect-gp a.egp-brand-link { color: var(--egp-brand-text); text-decoration: none; }
.effeect-gp.effeect-gp .egp-brand-link:hover, .effeect-gp.effeect-gp a.egp-brand-link:hover { color: var(--egp-ink); text-decoration: underline; text-underline-offset: 3px; }
.effeect-gp.effeect-gp .egp-btn-primary, .egp-form.egp-form .egp-btn-primary, .egp-onb.egp-onb .egp-btn-primary { color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-btn-primary:hover, .effeect-gp.effeect-gp .egp-btn-primary:focus, .egp-form.egp-form .egp-btn-primary:hover, .egp-onb.egp-onb .egp-btn-primary:hover { background: var(--egp-brand-hover); color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-btn-secondary:hover, .effeect-gp.effeect-gp .egp-btn-secondary:focus, .egp-form.egp-form .egp-btn-secondary:hover, .egp-onb.egp-onb .egp-btn-secondary:hover { background: var(--egp-subtle); color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-svc.is-on:hover, .effeect-gp.effeect-gp .egp-svc.is-on:focus { background: var(--egp-ink); color: var(--egp-canvas); }
.effeect-gp.effeect-gp .egp-svc:not(.is-on):focus { background: var(--egp-surface); color: var(--egp-ink-2); }
.effeect-gp.effeect-gp .egp-svc:not(.is-on):hover { background: var(--egp-subtle); color: var(--egp-ink); }
.effeect-gp.effeect-gp .egp-chip:hover, .effeect-gp.effeect-gp .egp-chip:focus { background: var(--egp-subtle); }

.effeect-gp.effeect-gp :focus-visible, .egp-form.egp-form :focus-visible, .egp-onb.egp-onb :focus-visible, .effeect-gp-thankyou.effeect-gp-thankyou :focus-visible {
	outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo);
}
.egp-loading.egp-loading, .effeect-gp-loading.effeect-gp-loading { color: var(--egp-ink-3); padding: 24px 0; }

/* Mode switch (SegmentedControl). Hidden when the page has its own switch (pricing hero). */
.egp-mode.egp-mode { display: inline-flex; gap: 4px; padding: 4px; background: var(--egp-muted); border-radius: 12px; margin: 0 0 32px; }
.egp-has-external-mode.egp-has-external-mode .egp-mode { display: none; }
.egp-mode-btn.egp-mode-btn { appearance: none; border: 0; background: transparent; font: 600 16px/20px var(--egp-body); color: var(--egp-ink-2); padding: 12px 20px; border-radius: 9px; cursor: pointer; min-height: 44px; }
.egp-mode-btn.egp-mode-btn.is-on { background: var(--egp-surface); color: var(--egp-ink); box-shadow: 0 1px 2px rgba(8, 25, 46, .10); }

/* Layout (Figma "Section/Plan builder": steps 61.8% · summary 38.2%, 48px apart) */
.egp-grid.egp-grid { display: grid; grid-template-columns: minmax(0, 742fr) minmax(0, 458fr); gap: 48px; align-items: start; }
.egp-main.egp-main { display: flex; flex-direction: column; gap: 40px; min-width: 0; }
/* Each step is a card (Figma "Step n"): white, 24px radius, 28px padding, Shadow/S. */
.egp-step.egp-step { display: flex; flex-direction: column; gap: 18px; background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 24px; padding: 28px; box-shadow: 0 1px 2px rgba(8, 25, 46, .04), 0 2px 8px rgba(8, 25, 46, .06); }
.egp-step-title.egp-step-title { display: flex; align-items: center; gap: 12px; margin: 0; font: 600 24px/30px var(--egp-display); letter-spacing: -.005em; color: var(--egp-ink); }
.egp-num.egp-num { display: inline-grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; border-radius: 999px; background: var(--egp-ink); color: var(--egp-canvas); font: 600 14px/1 var(--egp-body); flex: none; }
.egp-lead.egp-lead { margin: 0; font-size: 16px; line-height: 24px; color: var(--egp-ink-2); }
.egp-note.egp-note, .egp-help.egp-help, .egp-small.egp-small, .egp-fine.egp-fine { margin: 0; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--egp-ink-3); }
.egp-note.egp-note { color: var(--egp-ink-2); }
.egp-fine.egp-fine { color: var(--egp-ink-3); margin-top: 4px; }
.egp-label.egp-label { display: block; font: 600 16px/22px var(--egp-body); color: var(--egp-ink); margin: 0 0 8px; }
.egp-hint.egp-hint { font-weight: 500; color: var(--egp-ink-3); margin-left: 8px; font-size: 14px; }
.effeect-gp.effeect-gp .eff-i { font-size: 20px; flex: none; }

/* Service picker (Figma "Service tabs": pills with icons; the open service is ink) */
.egp-svc-grid.egp-svc-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.egp-svc.egp-svc { appearance: none; display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 18px; border: 1px solid rgba(8, 25, 46, .14); border-radius: 999px; background: var(--egp-surface); color: var(--egp-ink-2); font: 600 16px/20px var(--egp-body); cursor: pointer; transition: background-color .2s, border-color .2s, color .2s; }
.egp-svc.egp-svc .eff-i { color: var(--egp-ink-2); }
.egp-svc.egp-svc:hover { background: var(--egp-subtle); border-color: var(--egp-ink-4); color: var(--egp-ink); }
.egp-svc.egp-svc.is-on, .egp-svc.egp-svc.is-on:hover { background: var(--egp-ink); border-color: var(--egp-ink); color: var(--egp-canvas); }
.egp-svc.egp-svc.is-on .eff-i { color: var(--egp-canvas); }
.egp-svc.egp-svc.is-in-plan:not(.is-on) { border-color: var(--egp-ink-4); }
.egp-svc-name.egp-svc-name { font: inherit; color: inherit; }
/* In the plan: a green check on the service button (Oct 20 2026: services are added by hand). */
.egp-svc-added.egp-svc-added { display: inline-grid; place-items: center; width: 20px; height: 20px; margin-left: 2px; border-radius: 50%; background: var(--egp-success); }
.egp-svc-added.egp-svc-added .eff-i, .egp-svc.egp-svc .egp-svc-added .eff-i { font-size: 14px; color: #FFFFFF; }
.egp-svc.egp-svc.is-on .egp-svc-added { background: #FFFFFF; }
.egp-svc.egp-svc.is-on .egp-svc-added .eff-i { color: var(--egp-success); }
/* Add to plan: under the workloads; after adding, what is in the plan with Remove. */
.egp-addbar.egp-addbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; padding: 16px 20px; border-radius: 16px; background: var(--egp-subtle); }
.egp-addbar.egp-addbar .egp-btn-add { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 22px; font: 600 16px/20px var(--egp-body); }
.egp-addbar.egp-addbar .egp-btn-add .eff-i { font-size: 20px; }
.egp-addbar-text.egp-addbar-text { display: flex; flex-direction: column; gap: 2px; flex: 1 1 200px; min-width: 0; margin: 0; font: 500 14px/20px var(--egp-body); color: var(--egp-ink-2); }
.egp-addbar-text.egp-addbar-text strong { font: 600 16px/22px var(--egp-body); color: var(--egp-ink); }
/* Not ready yet (no workload, budget or platform): looks disabled even when focused or hovered; a click explains why. */
.effeect-gp.effeect-gp .egp-btn-add[aria-disabled=true], .effeect-gp.effeect-gp .egp-btn-add[aria-disabled=true]:hover, .effeect-gp.effeect-gp .egp-btn-add[aria-disabled=true]:focus { background: var(--egp-muted); color: var(--egp-ink-3); box-shadow: none; cursor: not-allowed; }
.effeect-gp.effeect-gp .egp-btn-add[aria-disabled=true] .eff-i { color: var(--egp-ink-3); }
.egp-addbar-why.egp-addbar-why { flex: 1 1 200px; min-width: 0; margin: 0; font: 500 14px/20px var(--egp-body); color: var(--egp-ink-2); }
.egp-addbar.egp-addbar.is-added { background: var(--egp-success-bg); }
.egp-addbar.egp-addbar.is-added > .eff-i { flex: none; font-size: 24px; color: var(--egp-success); }
.egp-addbar.egp-addbar.is-added .egp-addbar-text strong { color: var(--egp-success); }
.egp-plan-card.egp-plan-card .egp-addbar { padding: 0; background: none; }
.egp-plan-card.egp-plan-card .egp-addbar .egp-btn-add { width: 100%; }
.egp-plan-card.egp-plan-card .egp-addbar.is-added { padding: 14px 16px; background: var(--egp-success-bg); }
.egp-plan-card.egp-plan-card.is-empty { border-style: dashed; border-color: var(--egp-border-strong); gap: 16px; }

/* Budget (Figma "Budget row": field and slider side by side) */
.egp-budget-row.egp-budget-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.egp-budget-field.egp-budget-field { min-width: 0; }
.egp-budget-slider.egp-budget-slider { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.egp-money.egp-money { display: flex; align-items: center; gap: 10px; border: 1px solid var(--egp-border-strong); border-radius: 12px; background: var(--egp-surface); padding: 0 16px; min-height: 52px; }
.egp-money.egp-money:focus-within { border-color: var(--egp-ink); box-shadow: 0 0 0 4px var(--egp-halo); }
.egp-money.egp-money span { font: 400 16px/24px var(--egp-body); color: var(--egp-ink-3); }
.egp-money.egp-money span:first-child { font: 600 18px/26px var(--egp-body); color: var(--egp-ink-2); }
.egp-money.egp-money input { flex: 1; border: 0; outline: 0; background: transparent; font: 400 18px/28px var(--egp-body); color: var(--egp-ink); min-width: 0; padding: 11px 0; height: auto; }
.egp-money.egp-money input:focus-visible { outline: 0; box-shadow: none; }
.egp-help.egp-help { margin-top: 8px; }
.egp-range.egp-range { -webkit-appearance: none; appearance: none; width: 100%; height: 28px; margin: 0; padding: 0; border: 0; background: transparent; cursor: pointer; --egp-pos: .3333; }
.egp-range.egp-range::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: linear-gradient(90deg, var(--egp-brand-pressed) calc(14px + (100% - 28px) * var(--egp-pos)), var(--egp-muted) calc(14px + (100% - 28px) * var(--egp-pos))); }
.egp-range.egp-range::-moz-range-track { height: 6px; border-radius: 3px; background: var(--egp-muted); }
.egp-range.egp-range::-moz-range-progress { height: 6px; border-radius: 3px; background: var(--egp-brand-pressed); }
.egp-range.egp-range::-webkit-slider-thumb { -webkit-appearance: none; width: 28px; height: 28px; margin-top: -11px; border-radius: 50%; background: var(--egp-surface); border: 2px solid var(--egp-ink); box-shadow: 0 1px 3px rgba(8, 25, 46, .16); }
.egp-range.egp-range::-moz-range-thumb { width: 24px; height: 24px; border-radius: 50%; background: var(--egp-surface); border: 2px solid var(--egp-ink); box-shadow: 0 1px 3px rgba(8, 25, 46, .16); }
.egp-range.egp-range:focus-visible { outline: none; box-shadow: none; }
.egp-range.egp-range:focus-visible::-webkit-slider-thumb { box-shadow: 0 0 0 6px var(--egp-halo); }
.egp-ticks.egp-ticks { position: relative; height: 18px; font: 500 13px/18px var(--egp-mono); color: var(--egp-ink-3); }
.egp-ticks.egp-ticks span { position: absolute; top: 0; white-space: nowrap; transform: translateX(-50%); }
.egp-ticks.egp-ticks span:nth-child(1) { left: 0; transform: none; }
.egp-ticks.egp-ticks span:nth-child(2) { left: calc(14px + (100% - 28px) / 3); }
.egp-ticks.egp-ticks span:nth-child(3) { left: calc(14px + (100% - 28px) * 2 / 3); }
.egp-ticks.egp-ticks span:nth-child(4) { right: 0; transform: none; }

/* Fieldsets, platform chips and radio cards */
.egp-fieldset.egp-fieldset { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.egp-fieldset.egp-fieldset > legend { padding: 0; margin: 0 0 10px; }
.egp-checks.egp-checks { display: flex; flex-wrap: wrap; gap: 8px; }
.egp-check.egp-check { display: flex; align-items: flex-start; gap: 12px; min-height: 44px; padding: 10px 0; }
.egp-check.egp-check input { width: 22px; height: 22px; margin: 1px 0 0; accent-color: var(--egp-ink); flex: none; }
.egp-check.egp-check label { cursor: pointer; }
/* Platforms as FilterChips (Figma): the checkbox stays for keyboard and screen readers, the label is the chip. */
.egp-chip-check.egp-chip-check { position: relative; padding: 0; min-height: 0; }
.egp-chip-check.egp-chip-check input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.egp-chip-check.egp-chip-check label { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 16px; border: 1px solid var(--egp-border-strong); border-radius: 999px; background: var(--egp-surface); color: var(--egp-ink); font: 600 14px/18px var(--egp-body); transition: background-color .2s, border-color .2s, color .2s; }
.egp-chip-check.egp-chip-check label .eff-i { font-size: 16px; }
.egp-chip-check.egp-chip-check label:hover { background: var(--egp-subtle); }
.egp-chip-check.egp-chip-check.is-on label, .egp-chip-check.egp-chip-check.is-on label:hover { background: var(--egp-ink); border-color: var(--egp-ink); color: var(--egp-canvas); }
.egp-chip-check.egp-chip-check.is-disabled label { opacity: .5; cursor: not-allowed; }
.egp-chip-check.egp-chip-check input:focus-visible + label { outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo); }
.egp-choice.egp-choice { position: relative; border: 1px solid var(--egp-border-strong); border-radius: 16px; background: var(--egp-surface); padding: 20px 58px 20px 20px; transition: background-color .2s, border-color .2s; }
.egp-choice.egp-choice:hover { background: var(--egp-subtle); border-color: var(--egp-ink); }
.egp-choice.egp-choice.is-checked, .egp-choice.egp-choice.is-checked:hover { background: var(--egp-brand-subtle); border: 2px solid var(--egp-ink); padding: 19px 57px 19px 19px; }
.egp-choice.egp-choice.is-disabled, .egp-choice.egp-choice.is-disabled:hover { background: var(--egp-muted); border-color: rgba(8, 25, 46, .14); color: var(--egp-ink-4); }
.egp-choice.egp-choice input[type=radio][name] { position: absolute; right: 20px; top: 22px; width: 22px; height: 22px; margin: 0; -webkit-appearance: none; appearance: none; border: 1.5px solid var(--egp-ink-4); border-radius: 50%; background: var(--egp-surface); cursor: pointer; }
.egp-choice.egp-choice input[type=radio][name]:checked { border-color: var(--egp-ink); background: radial-gradient(circle, var(--egp-canvas) 0 3.6px, var(--egp-ink) 4.2px); }
.egp-choice.egp-choice input[type=radio][name]:disabled { cursor: not-allowed; }
.egp-choice.egp-choice input[type=radio][name]:focus-visible { outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo); }
.egp-choice.egp-choice.is-checked input[type=radio][name] { right: 19px; top: 21px; }
.egp-choice.egp-choice label { display: flex; flex-direction: column; gap: 4px; cursor: pointer; }
.egp-choice.egp-choice.is-disabled label { cursor: not-allowed; }
.egp-choice-title.egp-choice-title { font: 600 18px/26px var(--egp-body); }
.egp-choice-body.egp-choice-body { font-size: 16px; line-height: 24px; color: var(--egp-ink-2); }
.egp-choice.egp-choice.is-disabled .egp-choice-title, .egp-choice.egp-choice.is-disabled .egp-choice-body { color: var(--egp-ink-4); }
.egp-choice.egp-choice .egp-fine { color: var(--egp-ink-3); }
.egp-why.egp-why { margin: 4px 0 0; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--egp-danger); }

/* Fit explanation (Figma: peach box with a sparkle), scope warnings, upsell */
.egp-reco.egp-reco { display: flex; align-items: flex-start; gap: 12px; border-radius: 16px; background: var(--egp-brand-subtle); color: var(--egp-ink); padding: 16px 18px; }
.egp-reco.egp-reco > .eff-i { color: var(--egp-brand-pressed); margin-top: 1px; }
.egp-reco.egp-reco strong { display: block; font: 600 16px/22px var(--egp-body); }
.egp-reco.egp-reco p { margin: 2px 0 0; color: var(--egp-ink-2); font-size: 14px; line-height: 20px; font-weight: 500; }
.egp-reco.egp-reco.is-warn { background: var(--egp-warn-bg); color: var(--egp-warn); }
.egp-live.egp-live:empty { display: none; }
.egp-upsell.egp-upsell { display: flex; align-items: flex-start; gap: 10px; border: 1px dashed rgba(8, 25, 46, .14); border-radius: 12px; padding: 12px 14px; }
.egp-upsell.egp-upsell > .eff-i { font-size: 18px; color: var(--egp-brand-pressed); margin-top: 1px; }
.egp-upsell.egp-upsell p { margin: 0; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--egp-ink); }
.egp-upsell.egp-upsell .egp-link { font-size: 14px; line-height: 20px; min-height: 0; }
.egp-errors.egp-errors { margin: 0; padding: 12px 16px 12px 32px; border-radius: 12px; background: var(--egp-danger-bg); color: var(--egp-danger); font-size: 14px; }
.egp-link.egp-link { appearance: none; border: 0; background: none; padding: 0; color: var(--egp-ink); font: 600 14px/20px var(--egp-body); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; min-height: 24px; }
.egp-link.egp-link:hover { color: var(--egp-brand-text); }
.egp-brand-link.egp-brand-link { color: var(--egp-brand-text); text-decoration: none; display: inline-flex; align-items: center; gap: 8px; }
.egp-brand-link.egp-brand-link:hover { color: var(--egp-ink); text-decoration: underline; }

/* Scope details under the workload cards (Figma AccordionItem) */
.egp-scope.egp-scope { border-bottom: 1px solid rgba(8, 25, 46, .14); }
.egp-scope.egp-scope > summary { list-style: none; display: flex; align-items: center; gap: 16px; padding: 22px 4px; cursor: pointer; font: 600 18px/26px var(--egp-body); color: var(--egp-ink); }
.egp-scope.egp-scope > summary::-webkit-details-marker { display: none; }
.egp-scope.egp-scope > summary::marker { content: ""; }
.egp-scope.egp-scope > summary:focus-visible { outline: 2px solid var(--egp-ink); outline-offset: 2px; border-radius: 8px; }
.egp-scope-q.egp-scope-q { flex: 1; min-width: 0; }
.egp-scope-icon.egp-scope-icon { position: relative; flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--egp-subtle); transition: background-color .2s; }
.egp-scope-icon.egp-scope-icon::before, .egp-scope-icon.egp-scope-icon::after { content: ""; position: absolute; left: 50%; top: 50%; width: 11px; height: 1.75px; margin: -.875px 0 0 -5.5px; border-radius: 1px; background: var(--egp-ink); transition: transform .2s; }
.egp-scope-icon.egp-scope-icon::after { transform: rotate(90deg); }
.egp-scope.egp-scope:not([open]) > summary:hover .egp-scope-icon { background: var(--egp-muted); }
.egp-scope.egp-scope[open] .egp-scope-icon { background: var(--egp-ink); }
.egp-scope.egp-scope[open] .egp-scope-icon::before { background: var(--egp-surface); }
.egp-scope.egp-scope[open] .egp-scope-icon::after { transform: rotate(0deg); opacity: 0; }
.egp-scope-body.egp-scope-body { padding: 0 56px 24px 4px; display: flex; flex-direction: column; gap: 10px; font-size: 16px; line-height: 24px; color: var(--egp-ink-2); }
.egp-scope-body.egp-scope-body ul { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
.egp-scope-body.egp-scope-body a { font-weight: 600; }

/* Also in your plan (Figma: sand box) */
.egp-also.egp-also { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; background: var(--egp-subtle); border-radius: 20px; padding: 20px 24px; }
.egp-also-list.egp-also-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; align-self: stretch; }
.egp-also-row.egp-also-row { display: flex; align-items: center; gap: 12px; }
.egp-also-row.egp-also-row > .eff-i { color: var(--egp-brand-pressed); }
.egp-also-name.egp-also-name { flex: 1; min-width: 0; font: 600 16px/22px var(--egp-body); color: var(--egp-ink); }
.egp-add-toggle.egp-add-toggle { font-size: 16px; line-height: 20px; }
.egp-add-toggle.egp-add-toggle .eff-i { font-size: 18px; }

/* Summary (Figma PlanSummary) */
.egp-summary.egp-summary { position: sticky; top: var(--egp-sticky-top, 24px); background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 24px; padding: 28px; display: flex; flex-direction: column; gap: 18px; box-shadow: 0 2px 6px rgba(8, 25, 46, .04), 0 8px 24px rgba(8, 25, 46, .08); }
.egp-summary-head.egp-summary-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.egp-summary-title.egp-summary-title { margin: 0; font: 600 24px/30px var(--egp-display); letter-spacing: -.005em; }
.egp-lines.egp-lines { list-style: none; margin: 0; padding: 0 0 18px; display: flex; flex-direction: column; gap: 14px; border-bottom: 1px solid var(--egp-muted); }
.egp-line.egp-line { padding: 0; }
.egp-empty.egp-empty { font-size: 14px; line-height: 20px; font-weight: 500; color: var(--egp-ink-3); }
.egp-line-head.egp-line-head { display: flex; justify-content: space-between; gap: 12px; font: 600 16px/22px var(--egp-body); }
.egp-line-detail.egp-line-detail { margin: 2px 0 0; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--egp-ink-3); }
.egp-line-remove.egp-line-remove { margin-top: 4px; min-height: 24px; font-size: 13px; line-height: 18px; color: var(--egp-ink-2); }
.egp-line-remove.egp-line-remove:hover { color: var(--egp-danger); }
.egp-chips.egp-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.egp-chip.egp-chip { appearance: none; display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--egp-border-strong); background: var(--egp-surface); border-radius: 999px; min-height: 44px; padding: 0 16px; font: 600 14px/1 var(--egp-body); color: var(--egp-ink); cursor: pointer; }
.egp-chip.egp-chip .eff-i { font-size: 16px; color: var(--egp-ink-2); }
.egp-chip.egp-chip:hover { background: var(--egp-subtle); }
.egp-totals-block.egp-totals-block { display: flex; flex-direction: column; gap: 12px; }
.egp-totals.egp-totals, .egp-offer.egp-offer dl { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.egp-totals.egp-totals > div, .egp-offer.egp-offer dl > div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 16px; line-height: 22px; }
.egp-totals.egp-totals dt, .egp-offer.egp-offer dt { color: var(--egp-ink); font-weight: 600; }
.egp-totals.egp-totals dd, .egp-offer.egp-offer dd { margin: 0; font-weight: 600; color: var(--egp-ink); white-space: nowrap; }
.egp-offer.egp-offer { display: flex; flex-direction: column; gap: 6px; background: var(--egp-accent-subtle); border-radius: 12px; padding: 14px; }
.egp-offer.egp-offer dl > div + div dt, .egp-offer.egp-offer dl > div + div dd { font-weight: 400; line-height: 24px; }
/* First-month offer as a deal (Oct 20 2026): regular price struck through, the price after the 10% off, the saving. */
.egp-deal.egp-deal { display: flex; flex-direction: column; gap: 10px; padding: 16px; border-radius: 16px; background: linear-gradient(135deg, var(--egp-brand-subtle) 0%, var(--egp-accent-subtle) 100%); border: 1px solid #FBD3B5; }
.egp-deal-badge.egp-deal-badge { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 5px 12px 5px 10px; border-radius: 999px; background: var(--egp-brand); color: var(--egp-ink); font: 700 13px/18px var(--egp-body); letter-spacing: .01em; }
.egp-deal-badge.egp-deal-badge svg { width: 16px; height: 16px; flex: none; }
.egp-deal-row.egp-deal-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.egp-deal-label.egp-deal-label { font: 600 16px/22px var(--egp-body); color: var(--egp-ink); }
.egp-deal-prices.egp-deal-prices { display: inline-flex; align-items: baseline; gap: 10px; white-space: nowrap; }
.egp-deal-was.egp-deal-was { color: var(--egp-ink-3); font: 500 16px/22px var(--egp-body); text-decoration: line-through; text-decoration-thickness: 1.5px; }
.egp-deal-now.egp-deal-now { color: var(--egp-ink); font: 700 30px/34px var(--egp-display); letter-spacing: -.01em; }
.egp-deal-save.egp-deal-save { margin: 0; color: var(--egp-success); font: 600 14px/20px var(--egp-body); }
.egp-deal.egp-deal.is-teaser { gap: 8px; }
.egp-totals.egp-totals .egp-per { font-weight: 400; color: var(--egp-ink-3); }
.egp-talk.egp-talk { margin: 0; text-align: center; font-size: 14px; line-height: 20px; color: var(--egp-ink-2); }
.effeect-gp.effeect-gp .egp-talk a.egp-brand-link { text-decoration: underline; text-underline-offset: 2px; text-decoration-thickness: 1px; }
.egp-pick-hint.egp-pick-hint { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 16px 18px; border-radius: 16px; background: var(--egp-subtle); color: var(--egp-ink-2); font-size: 16px; line-height: 24px; }
.egp-pick-hint.egp-pick-hint svg { width: 20px; height: 20px; flex: none; margin-top: 2px; }
.egp-card-offer-now.egp-card-offer-now { font: 700 20px/24px var(--egp-display); color: var(--egp-ink); }
.egp-mobile-total.egp-mobile-total .egp-deal-was { margin-left: 4px; font-size: 14px; font-weight: 500; }
.egp-media.egp-media { display: flex; align-items: flex-start; gap: 10px; border-radius: 12px; background: var(--egp-info-bg); padding: 12px 14px; color: var(--egp-info); }
.egp-media.egp-media > .eff-i { font-size: 18px; margin-top: 1px; }
.egp-media.egp-media p { margin: 0; }
.egp-media.egp-media strong { font: 600 16px/22px var(--egp-body); }
.egp-media.egp-media .egp-small { color: var(--egp-ink); }
.egp-summary.egp-summary .egp-btn-primary { width: 100%; }
.egp-share.egp-share { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; }
.egp-email.egp-email { display: flex; flex-direction: column; gap: 8px; }
.egp-email.egp-email input[type=email] { min-height: 48px; border: 1px solid var(--egp-border-strong); border-radius: 12px; padding: 0 14px; font: 400 16px var(--egp-body); }
.egp-foot.egp-foot { color: var(--egp-ink-3); }
.egp-hp.egp-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.egp-status.egp-status:empty { display: none; }
.egp-status.egp-status { margin: 0; font-size: 14px; color: var(--egp-ink-2); }

/* Buttons */
.egp-btn.egp-btn, .effeect-gp-button.effeect-gp-button.button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 56px; padding: 0 28px; border-radius: 12px; border: 0; font: 600 18px/1 var(--egp-body); text-decoration: none; cursor: pointer; transition: background-color .2s, box-shadow .2s; }
.egp-btn.egp-btn .eff-i { font-size: 22px; }
.egp-btn-primary.egp-btn-primary, .effeect-gp-button.effeect-gp-button.button { background: var(--egp-brand); color: var(--egp-ink); }
.egp-btn-primary.egp-btn-primary:hover, .effeect-gp-button.effeect-gp-button.button:hover { background: var(--egp-brand-hover); color: var(--egp-ink); box-shadow: 0 0 48px rgba(243, 110, 33, .3), 0 16px 80px rgba(243, 110, 33, .16); }
.egp-btn-primary.egp-btn-primary:active { background: var(--egp-brand-pressed); }
.egp-btn-primary.egp-btn-primary[aria-disabled=true] { background: var(--egp-muted); color: var(--egp-ink-4); cursor: not-allowed; box-shadow: none; }
.egp-btn-secondary.egp-btn-secondary { background: var(--egp-surface); color: var(--egp-ink); border: 1px solid var(--egp-ink); }
.egp-btn-secondary.egp-btn-secondary:hover { background: var(--egp-subtle); }
.egp-btn-tertiary.egp-btn-tertiary { background: transparent; color: var(--egp-ink); }
.egp-btn-tertiary.egp-btn-tertiary:hover { background: var(--egp-subtle); }
.egp-actions.egp-actions { display: flex; flex-wrap: wrap; gap: 12px; }

/* Next steps (Figma "Timeline": four small cards) */
.egp-next.egp-next { display: flex; flex-direction: column; gap: 14px; }
.egp-next-title.egp-next-title { margin: 0; font: 600 18px/26px var(--egp-body); color: var(--egp-ink); }
.egp-next-list.egp-next-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.egp-next-list.egp-next-list li { display: flex; flex-direction: column; gap: 6px; padding: 14px; background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 14px; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--egp-ink); }
.egp-next-num.egp-next-num { font: 500 13px/16px var(--egp-mono); color: var(--egp-brand-text); }

/* Progress (Scope · Order · Payment) */
.egp-progress.egp-progress ol { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; }
.egp-progress.egp-progress li { flex: 1; padding-top: 10px; border-top: 4px solid var(--egp-muted); font: 600 14px/18px var(--egp-body); color: var(--egp-ink-3); }
.egp-progress.egp-progress li.is-current { border-top-color: var(--egp-brand); color: var(--egp-ink); }

/* Compact workload step (tablets and phones): tier switch, one pricing card, comparison (Figma 768/390 frames) */
.egp-tier-switch.egp-tier-switch { display: flex; gap: 4px; margin: 0; padding: 4px; border: 0; border-radius: 12px; background: var(--egp-muted); min-width: 0; }
.egp-tier-switch.egp-tier-switch > legend { padding: 0; }
.egp-tier-opt.egp-tier-opt { position: relative; flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 4px; border-radius: 9px; text-align: center; cursor: pointer; transition: background-color .2s; }
.egp-tier-opt.egp-tier-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.egp-tier-name.egp-tier-name { font: 600 16px/20px var(--egp-body); color: var(--egp-ink-2); }
.egp-tier-price.egp-tier-price { font: 500 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-3); }
.egp-tier-opt.egp-tier-opt:hover { background: rgba(255, 255, 255, .5); }
.egp-tier-opt.egp-tier-opt.is-on, .egp-tier-opt.egp-tier-opt.is-on:hover { background: var(--egp-surface); box-shadow: 0 1px 2px rgba(8, 25, 46, .10); }
.egp-tier-opt.egp-tier-opt.is-on .egp-tier-name { color: var(--egp-ink); }
.egp-tier-opt.egp-tier-opt.is-on .egp-tier-price { color: var(--egp-brand-text); }
.egp-tier-opt.egp-tier-opt.is-disabled, .egp-tier-opt.egp-tier-opt.is-disabled:hover { background: transparent; cursor: not-allowed; }
.egp-tier-opt.egp-tier-opt.is-disabled .egp-tier-name { color: var(--egp-ink-4); }
.egp-tier-opt.egp-tier-opt:has(input:focus-visible) { outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo); }
.egp-plan-card.egp-plan-card { display: flex; flex-direction: column; gap: 20px; padding: 32px 18px; border: 2px solid var(--egp-ink); border-radius: 24px; background: var(--egp-surface); }
.egp-plan-card-head.egp-plan-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.egp-plan-card-tier.egp-plan-card-tier { margin: 0; font: 600 20px/26px var(--egp-display); letter-spacing: -.0025em; color: var(--egp-ink); }
.egp-selected-tag.egp-selected-tag { display: inline-flex; align-items: center; gap: 6px; font: 600 14px/18px var(--egp-body); letter-spacing: .002em; color: var(--egp-success); }
.egp-selected-tag.egp-selected-tag .eff-i { font-size: 18px; }
.egp-plan-card-fit.egp-plan-card-fit { margin: 0; font-size: 16px; line-height: 24px; color: var(--egp-ink-2); }
.egp-price.egp-price { display: flex; flex-direction: column; gap: 6px; }
.egp-price-row.egp-price-row { display: flex; align-items: baseline; gap: 6px; margin: 0; }
.egp-price-amount.egp-price-amount { font: 700 44px/44px var(--egp-display); letter-spacing: -.02em; color: var(--egp-ink); }
.egp-price-per.egp-price-per { font-size: 16px; line-height: 24px; color: var(--egp-ink-2); }
.egp-price-note.egp-price-note { margin: 0; font-size: 14px; line-height: 20px; font-weight: 500; letter-spacing: .002em; color: var(--egp-ink-2); }
.egp-card-offer.egp-card-offer { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px; border-radius: 16px; background: var(--egp-accent-subtle); }
.egp-card-offer.egp-card-offer p { margin: 0; font-size: 16px; line-height: 24px; color: var(--egp-ink); }
.egp-card-offer-row.egp-card-offer-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.egp-card-offer-row.egp-card-offer-row strong { font: 600 16px/22px var(--egp-body); }
.egp-badge-offer.egp-badge-offer { flex: none; display: inline-flex; align-items: center; padding: 6px 12px; border-radius: 999px; background: var(--egp-accent); font: 600 14px/18px var(--egp-body); color: var(--egp-ink); }
.egp-btn.egp-btn.egp-btn-md { width: 100%; min-height: 48px; padding: 0 22px; gap: 8px; font-size: 16px; line-height: 20px; }
.egp-btn.egp-btn.egp-btn-md .eff-i { font-size: 20px; }
.egp-divider.egp-divider { height: 1px; background: var(--egp-muted); }
.egp-feature-group.egp-feature-group { display: flex; flex-direction: column; gap: 12px; }
.egp-overline.egp-overline { margin: 0; font: 600 15px/20px var(--egp-body); color: var(--egp-ink-2); }
.egp-features.egp-features { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.egp-features.egp-features li { display: flex; align-items: flex-start; gap: 10px; font-size: 16px; line-height: 24px; color: var(--egp-ink); }
.egp-feature-mark.egp-feature-mark { flex: none; display: inline-grid; place-items: center; width: 22px; height: 22px; margin-top: 1px; border-radius: 50%; background: var(--egp-brand-subtle); color: var(--egp-brand-pressed); }
.egp-feature-mark.egp-feature-mark .eff-i { font-size: 15px; }
.egp-features.egp-features.is-out li { color: var(--egp-ink-2); }
.egp-features.egp-features.is-out .egp-feature-mark { background: var(--egp-subtle); color: var(--egp-ink-2); }
.egp-scope-body.egp-scope-body .egp-features { margin-bottom: 4px; }
.egp-card-scope.egp-card-scope > summary { list-style: none; display: inline-flex; align-items: center; gap: 6px; cursor: pointer; font: 600 14px/18px var(--egp-body); letter-spacing: .002em; color: var(--egp-brand-text); }
.egp-card-scope.egp-card-scope > summary::-webkit-details-marker { display: none; }
.egp-card-scope.egp-card-scope > summary::marker { content: ""; }
.egp-card-scope.egp-card-scope > summary .eff-i { font-size: 16px; transition: transform .2s; }
.egp-card-scope.egp-card-scope[open] > summary .eff-i { transform: rotate(180deg); }
.egp-card-scope.egp-card-scope > summary:hover { color: var(--egp-ink); }
.egp-card-scope.egp-card-scope > summary:focus-visible { outline: 2px solid var(--egp-ink); outline-offset: 2px; border-radius: 4px; }
.egp-card-scope-body.egp-card-scope-body { display: flex; flex-direction: column; gap: 8px; padding-top: 12px; font-size: 14px; line-height: 20px; color: var(--egp-ink-2); }
.egp-compare.egp-compare > summary { font-size: 17px; line-height: 24px; }
.egp-compare.egp-compare .egp-scope-body { padding-right: 4px; }
.egp-compare-wrap.egp-compare-wrap { overflow-x: auto; }
.egp-compare-table.egp-compare-table { width: 100%; table-layout: fixed; border-collapse: collapse; margin: 0; border: 0; font-size: 13px; line-height: 18px; color: var(--egp-ink-2); }
/* Themes stripe and border every table cell; this table only has row rules. */
.egp-compare-table.egp-compare-table th, .egp-compare-table.egp-compare-table td, .egp-compare-table.egp-compare-table tr:nth-child(odd) > td, .egp-compare-table.egp-compare-table tr:hover > td { padding: 8px 8px 8px 0; border: 0; border-bottom: 1px solid var(--egp-muted); background: transparent; text-align: left; vertical-align: top; overflow-wrap: break-word; font-size: 13px; line-height: 18px; }
.egp-compare-table.egp-compare-table thead th { font-weight: 600; color: var(--egp-ink); }
.egp-compare-fee.egp-compare-fee td { font-weight: 600; color: var(--egp-ink); }

/* Plan summary sheet and sticky plan bar (tablets and phones) */
.egp-mobile-bar.egp-mobile-bar, .egp-sheet-close.egp-sheet-close { display: none; }
html.egp-noscroll.egp-noscroll { overflow: hidden; }
.egp-scrim.egp-scrim { position: fixed; inset: 0; z-index: 100000; background: rgba(8, 25, 46, .48); }

@media (max-width: 1279px) {
	.egp-grid.egp-grid { grid-template-columns: minmax(0, 1fr) 340px; gap: 32px; }
	.egp-next-list.egp-next-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
	.egp-grid.egp-grid { grid-template-columns: minmax(0, 1fr); }
	.egp-main.egp-main { gap: 24px; }
	.egp-step-title.egp-step-title { gap: 10px; font: 600 18px/26px var(--egp-body); letter-spacing: 0; }
	.egp-num.egp-num { min-width: 26px; height: 26px; }
	.egp-budget-row.egp-budget-row { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.egp-next.egp-next { display: none; }
	.egp-summary.egp-summary { display: none; }
	.egp-sheet-open.egp-sheet-open .egp-summary { display: flex; position: fixed; top: auto; left: 0; right: 0; bottom: 0; z-index: 100001; max-height: min(88vh, 760px); overflow-y: auto; overscroll-behavior: contain; padding: 32px 20px calc(20px + env(safe-area-inset-bottom, 0px)); border: 0; border-radius: 24px 24px 0 0; box-shadow: 0 -16px 48px rgba(8, 25, 46, .24); animation: egp-sheet-in .24s ease-out; }
	.egp-sheet-open.egp-sheet-open .egp-summary::before { content: ""; position: absolute; top: 10px; left: 50%; width: 40px; height: 4px; margin-left: -20px; border-radius: 2px; background: var(--egp-border); }
	.egp-sheet-open.egp-sheet-open .egp-summary-head { gap: 12px; }
	.egp-sheet-open.egp-sheet-open .egp-summary-title { flex: 1; }
	.egp-sheet-open.egp-sheet-open .egp-sheet-close { display: inline-grid; place-items: center; width: 40px; height: 40px; margin: -8px -8px -8px 0; border-radius: 50%; color: var(--egp-ink); cursor: pointer; }
	.egp-sheet-open.egp-sheet-open .egp-sheet-close .eff-i { font-size: 24px; }
	.egp-sheet-open.egp-sheet-open .egp-sheet-close:hover { background: var(--egp-subtle); }
	.egp-summary-title.egp-summary-title:focus { outline: none; }
	/* Figma MobilePlanBar: full-width bar on the viewport's bottom edge while the builder is on screen. */
	.egp-mobile-bar.egp-mobile-bar { display: flex; position: sticky; bottom: 0; z-index: 20; align-items: center; justify-content: space-between; gap: 12px; width: 100vw; margin: 24px 0 0 calc(50% - 50vw); padding: 12px max(20px, calc(50vw - 360px)) calc(12px + env(safe-area-inset-bottom, 0px)); background: var(--egp-surface); border-top: 1px solid var(--egp-border); box-shadow: 0 -8px 24px rgba(8, 25, 46, .08); }
	.egp-mobile-total.egp-mobile-total { display: flex; flex-direction: column; margin: 0; min-width: 0; }
	.egp-mobile-bar.egp-mobile-bar strong { font: 600 18px/24px var(--egp-body); color: var(--egp-ink); }
	.egp-mobile-bar.egp-mobile-bar .egp-small { color: var(--egp-ink); }
	.egp-mobile-bar.egp-mobile-bar .egp-btn { min-height: 48px; padding: 0 22px; font-size: 16px; flex: none; }
}
@media (max-width: 767px) {
	.egp-step.egp-step { padding: 20px 18px; border-radius: 20px; gap: 14px; }
	.egp-svc.egp-svc { min-height: 44px; padding: 0 14px; font-size: 15px; }
	.egp-choice.egp-choice { padding: 16px 52px 16px 16px; }
	.egp-choice.egp-choice.is-checked { padding: 15px 51px 15px 15px; }
	.egp-choice.egp-choice input[type=radio][name] { right: 16px; top: 18px; }
	.egp-choice.egp-choice.is-checked input[type=radio][name] { right: 15px; top: 17px; }
	.egp-also.egp-also { padding: 16px; }
	.egp-also-row.egp-also-row { flex-wrap: wrap; }
	.egp-mode.egp-mode { display: flex; }
	.egp-has-external-mode.egp-has-external-mode .egp-mode { display: none; }
	.egp-mode-btn.egp-mode-btn { flex: 1; padding: 12px 8px; }
	.egp-price-amount.egp-price-amount { font-size: 40px; line-height: 44px; }
}
@media (max-width: 767px) {
	.egp-addbar.egp-addbar { padding: 14px 16px; }
	.egp-addbar.egp-addbar .egp-btn-add { width: 100%; }
	.egp-addbar.egp-addbar.is-added .egp-addbar-text { flex: 1 1 0; }
}
@media (max-width: 479px) {
	.egp-next-list.egp-next-list { grid-template-columns: minmax(0, 1fr); }
}
@keyframes egp-sheet-in { from { transform: translateY(24px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
	.effeect-gp.effeect-gp *, .egp-form.egp-form *, .egp-onb.egp-onb * { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* Icons used by the builder (same masks as the Site Kit icon set). */
.eff-i.eff-i {display:inline-block;width:1em;height:1em;flex:none;background-color:currentColor;-webkit-mask:var(--eff-i) center/contain no-repeat;mask:var(--eff-i) center/contain no-repeat;vertical-align:-.125em;font-style:normal}
.eff-i-megaphone.eff-i-megaphone {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.2V13.8C4 14.4 4.5 15 5.2 15H7L12.5 19V5L7 9H5.2C4.5 9 4 9.5 4 10.2Z'/%3E%3Cpath d='M16 9C16.4 9.39 16.72 9.86 16.93 10.37C17.15 10.89 17.26 11.44 17.26 12C17.26 12.56 17.15 13.11 16.93 13.63C16.72 14.14 16.4 14.61 16 15'/%3E%3Cpath d='M18.6 6.6C20.02 8.04 20.81 9.98 20.81 12C20.81 14.02 20.02 15.96 18.6 17.4'/%3E%3C/svg%3E")}
.eff-i-social-grid.eff-i-social-grid {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.2 4H5.8C4.81 4 4 4.81 4 5.8V9.2C4 10.19 4.81 11 5.8 11H9.2C10.19 11 11 10.19 11 9.2V5.8C11 4.81 10.19 4 9.2 4Z'/%3E%3Cpath d='M18.2 4H14.8C13.81 4 13 4.81 13 5.8V9.2C13 10.19 13.81 11 14.8 11H18.2C19.19 11 20 10.19 20 9.2V5.8C20 4.81 19.19 4 18.2 4Z'/%3E%3Cpath d='M9.2 13H5.8C4.81 13 4 13.81 4 14.8V18.2C4 19.19 4.81 20 5.8 20H9.2C10.19 20 11 19.19 11 18.2V14.8C11 13.81 10.19 13 9.2 13Z'/%3E%3Cpath d='M16.5 13.5V19.5'/%3E%3Cpath d='M13.5 16.5H19.5'/%3E%3C/svg%3E")}
.eff-i-search-ai.eff-i-search-ai {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.5 16.5C13.81 16.5 16.5 13.81 16.5 10.5C16.5 7.19 13.81 4.5 10.5 4.5C7.19 4.5 4.5 7.19 4.5 10.5C4.5 13.81 7.19 16.5 10.5 16.5Z'/%3E%3Cpath d='M15 15L20 20'/%3E%3Cpath d='M18.5 2.8V6.2'/%3E%3Cpath d='M16.8 4.5H20.2'/%3E%3C/svg%3E")}
.eff-i-mail.eff-i-mail {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18.5 5.5H5.5C4.12 5.5 3 6.62 3 8V16C3 17.38 4.12 18.5 5.5 18.5H18.5C19.88 18.5 21 17.38 21 16V8C21 6.62 19.88 5.5 18.5 5.5Z'/%3E%3Cpath d='M3.5 7.5L12 13.5L20.5 7.5'/%3E%3C/svg%3E")}
.eff-i-check.eff-i-check {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5L9.5 17L19 7.5'/%3E%3C/svg%3E")}
.eff-i-check-circle.eff-i-check-circle {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21C16.97 21 21 16.97 21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21Z'/%3E%3Cpath d='M8 12.5L10.8 15.3L16 10'/%3E%3C/svg%3E")}
.eff-i-sparkle.eff-i-sparkle {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5C12.6 7.5 14.5 9.4 18.5 10C14.5 10.6 12.6 12.5 12 16.5C11.4 12.5 9.5 10.6 5.5 10C9.5 9.4 11.4 7.5 12 3.5Z'/%3E%3Cpath d='M19 16.5V19.5'/%3E%3Cpath d='M17.5 18H20.5'/%3E%3C/svg%3E")}
.eff-i-users.eff-i-users {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11.7C10.77 11.7 12.2 10.27 12.2 8.5C12.2 6.73 10.77 5.3 9 5.3C7.23 5.3 5.8 6.73 5.8 8.5C5.8 10.27 7.23 11.7 9 11.7Z'/%3E%3Cpath d='M3 19.5C3.8 16.4 6.1 14.6 9 14.6C11.9 14.6 14.2 16.4 15 19.5'/%3E%3Cpath d='M15.5 5.6C16.14 5.77 16.71 6.15 17.11 6.67C17.51 7.19 17.73 7.84 17.73 8.5C17.73 9.16 17.51 9.81 17.11 10.33C16.71 10.85 16.14 11.23 15.5 11.4'/%3E%3Cpath d='M17.6 14.9C19.3 15.5 20.5 17.1 21 19.5'/%3E%3C/svg%3E")}
.eff-i-info.eff-i-info {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21C16.97 21 21 16.97 21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21Z'/%3E%3Cpath d='M12 11V16'/%3E%3Cpath d='M12 7.6V7.61'/%3E%3C/svg%3E")}
.eff-i-plus.eff-i-plus {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5V19'/%3E%3Cpath d='M5 12H19'/%3E%3C/svg%3E")}
.eff-i-minus.eff-i-minus {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12H19'/%3E%3C/svg%3E")}
.eff-i-arrow-right.eff-i-arrow-right {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12H19'/%3E%3Cpath d='M13 6L19 12L13 18'/%3E%3C/svg%3E")}
.eff-i-chevron-down.eff-i-chevron-down {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9L12 15L18 9'/%3E%3C/svg%3E")}
.eff-i-close.eff-i-close {--eff-i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6L18 18'/%3E%3Cpath d='M18 6L6 18'/%3E%3C/svg%3E")}

/* Forms: trial and scope requests, onboarding */
.egp-form.egp-form { max-width: 760px; display: flex; flex-direction: column; gap: 24px; }
.egp-form.egp-form .egp-field { display: flex; flex-direction: column; gap: 8px; }
.egp-form.egp-form input[type=text], .egp-form.egp-form input[type=email], .egp-form.egp-form input[type=url], .egp-form.egp-form input[type=tel], .egp-form.egp-form input[type=number], .egp-form.egp-form select, .egp-form.egp-form textarea, .egp-onb.egp-onb input[type=text], .egp-onb.egp-onb input[type=email], .egp-onb.egp-onb input[type=url], .egp-onb.egp-onb input[type=tel], .egp-onb.egp-onb input[type=number], .egp-onb.egp-onb select, .egp-onb.egp-onb textarea {
	width: 100%; min-height: 52px; border: 1px solid var(--egp-border-strong); border-radius: 12px; background: var(--egp-surface); padding: 12px 14px; font: 400 16px/24px var(--egp-body); color: var(--egp-ink);
}
.egp-form.egp-form textarea, .egp-onb.egp-onb textarea { min-height: 120px; resize: vertical; }
.egp-form.egp-form [aria-invalid=true], .egp-onb.egp-onb [aria-invalid=true] { border: 2px solid var(--egp-danger-line); }
.egp-field-error.egp-field-error { color: var(--egp-danger); font-size: 14px; margin: 0; }
.egp-error-summary.egp-error-summary { border: 2px solid var(--egp-danger-line); border-radius: 16px; background: var(--egp-danger-bg); padding: 16px 20px; }
.egp-error-summary.egp-error-summary h2, .egp-error-summary.egp-error-summary h3 { margin: 0 0 8px; font: 600 18px/26px var(--egp-body); color: var(--egp-danger); }
.egp-error-summary.egp-error-summary a { color: var(--egp-danger); font-weight: 600; }
.egp-counter.egp-counter { font: 500 13px/16px var(--egp-mono); color: var(--egp-ink-3); text-align: right; }
.egp-panel.egp-panel { background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 24px; padding: 32px; }
.egp-panel.egp-panel h2 { margin: 0 0 12px; font: 600 32px/38px var(--egp-display); }
.egp-chip-status.egp-chip-status { display: inline-flex; align-items: center; gap: 7px; border-radius: 999px; padding: 5px 12px 5px 10px; font: 600 14px/18px var(--egp-body); background: var(--egp-subtle); color: var(--egp-ink-2); }
.egp-chip-status.egp-chip-status.is-success { background: var(--egp-success-bg); color: var(--egp-success); }
.egp-chip-status.egp-chip-status.is-warn { background: var(--egp-warn-bg); color: var(--egp-warn); }
.egp-chip-status.egp-chip-status.is-brand { background: var(--egp-brand-subtle); color: var(--egp-brand-text); }
.egp-facts.egp-facts { display: grid; grid-template-columns: max-content 1fr; gap: 10px 24px; margin: 20px 0; }
.egp-facts.egp-facts dt { color: var(--egp-ink-3); }
.egp-facts.egp-facts dd { margin: 0; font-weight: 600; }
@media (max-width: 767px) { .egp-panel.egp-panel { padding: 24px; } .egp-panel.egp-panel h2 { font-size: 24px; line-height: 30px; } .egp-facts.egp-facts { grid-template-columns: 1fr; } }

/* Onboarding */
.egp-onb.egp-onb { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 40px; align-items: start; }
.egp-onb-nav.egp-onb-nav ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.egp-onb-nav.egp-onb-nav a { display: flex; justify-content: space-between; gap: 8px; padding: 12px 14px; border-radius: 12px; text-decoration: none; color: var(--egp-ink); font-weight: 600; }
.egp-onb-nav.egp-onb-nav a[aria-current=step] { background: var(--egp-brand-subtle); }
.egp-onb-nav.egp-onb-nav small { font-weight: 400; color: var(--egp-ink-3); }
.egp-onb-main.egp-onb-main { display: flex; flex-direction: column; gap: 24px; }
.egp-access.egp-access { border: 1px solid var(--egp-border); border-radius: 16px; padding: 22px; display: flex; flex-direction: column; gap: 12px; }
.egp-access.egp-access.is-missing { border: 1.5px solid var(--egp-danger-line); }
@media (max-width: 1023px) { .egp-onb.egp-onb { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Checkout (Figma 08 · Flow/Order O2), order received (O4, O5), order pay, cart, My Account ----------
   WooCommerce's own stylesheets use IDs (#payment) and floats: rules here repeat the ID where WooCommerce does. */
.effeect-gp-checkout.effeect-gp-checkout .woocommerce, .effeect-gp-cart.effeect-gp-cart .woocommerce, .effeect-gp-account.effeect-gp-account .woocommerce { font: 400 16px/1.5 var(--egp-body); color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce a:not(.egp-btn):not(.button), .effeect-gp-cart.effeect-gp-cart .woocommerce a:not(.egp-btn):not(.button), .effeect-gp-account.effeect-gp-account .woocommerce :is(.woocommerce-MyAccount-content, form) a:not(.egp-btn):not(.button) { color: var(--egp-brand-text); text-decoration: underline; text-underline-offset: 3px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce a:not(.egp-btn):not(.button):hover, .effeect-gp-cart.effeect-gp-cart .woocommerce a:not(.egp-btn):not(.button):hover, .effeect-gp-account.effeect-gp-account .woocommerce :is(.woocommerce-MyAccount-content, form) a:not(.egp-btn):not(.button):hover { color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout :focus-visible, .effeect-gp-cart.effeect-gp-cart :focus-visible, .effeect-gp-account.effeect-gp-account :focus-visible { outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo); }
.egp-co-title.egp-co-title, .egp-co-title-plain.egp-co-title-plain { margin: 0 0 24px; font: 700 44px/50px var(--egp-display); letter-spacing: -.01em; color: var(--egp-ink); }
.egp-co-lead.egp-co-lead { margin: -8px 0 24px; font: 400 18px/28px var(--egp-body); color: var(--egp-ink-2); }

/* Layout: one form, two columns. The summary, details and payment stack on the left; "After payment" sits right. */
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout { display: grid; grid-template-columns: minmax(0, 1.62fr) minmax(300px, 1fr); column-gap: 48px; row-gap: 0; align-items: start; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout > * { grid-column: 1; order: 5; min-width: 0; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #order_review { display: contents; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .egp-co-title { order: 1; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-NoticeGroup { order: 2; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .egp-co-sum { order: 3; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #customer_details { order: 6; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #order_review_heading { order: 7; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #payment { order: 8; grid-column: 1; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .egp-co-aside { grid-column: 2; grid-row: 1 / span 12; order: 0; align-self: start; position: sticky; top: 104px; }
/* Pay-later messages and one-tap wallets are not offered for plans: Pay Later cannot fund a monthly plan, and the
   wallet sheets skip the business details that the plan needs (they stay available as card payments). */
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(.ppcp-messages, #wcpay-express-checkout-element, .wcpay-express-checkout-wrapper, #wcpay-express-checkout-button-separator, .wc-block-components-express-payment) { display: none !important; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-checkout-review-order-table { display: none; }

/* Order summary card */
.egp-co-sum.egp-co-sum { display: flex; flex-direction: column; gap: 20px; margin: 0 0 48px; padding: 28px; background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 20px; }
.egp-co-sum.egp-co-sum p, .egp-co-sum.egp-co-sum dl, .egp-co-sum.egp-co-sum dd, .egp-co-sum.egp-co-sum ul { margin: 0; }
.egp-co-lines.egp-co-lines { display: flex; flex-direction: column; gap: 16px; padding: 0 0 20px; list-style: none; border-bottom: 1px solid var(--egp-border); }
.egp-co-line.egp-co-line { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin: 0; }
.egp-co-line-text.egp-co-line-text { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.egp-co-line-name.egp-co-line-name { font: 500 16px/24px var(--egp-body); color: var(--egp-ink); }
.egp-co-line-note.egp-co-line-note { font: 400 14px/20px var(--egp-body); color: var(--egp-ink-3); }
.egp-co-line-amount.egp-co-line-amount { flex: none; font: 500 16px/24px var(--egp-body); color: var(--egp-ink); white-space: nowrap; }
.egp-co-totals.egp-co-totals { display: flex; flex-direction: column; gap: 14px; }
.egp-co-row.egp-co-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
.egp-co-row.egp-co-row dt { font: 400 16px/24px var(--egp-body); color: var(--egp-ink); }
.egp-co-row.egp-co-row dt small { display: block; font: 400 14px/20px var(--egp-body); color: var(--egp-ink-3); }
.egp-co-row.egp-co-row dd { flex: none; font: 400 16px/24px var(--egp-body); color: var(--egp-ink); white-space: nowrap; }
.egp-co-row.egp-co-row.is-strong dt, .egp-co-row.egp-co-row.is-strong dd { font-weight: 600; }
.egp-co-due.egp-co-due { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 22px; border-radius: 14px; background: var(--egp-warn-bg); }
.egp-co-due-label.egp-co-due-label { font: 600 17px/24px var(--egp-body); color: var(--egp-ink); }
.egp-co-due-amount.egp-co-due-amount { font: 700 40px/44px var(--egp-display); letter-spacing: -.01em; color: var(--egp-ink); white-space: nowrap; }
.egp-co-renew.egp-co-renew { display: flex; flex-direction: column; gap: 6px; padding: 18px 22px; border: 1px solid var(--egp-border); border-radius: 14px; }
.egp-co-renew-title.egp-co-renew-title { font: 600 16px/24px var(--egp-body); color: var(--egp-ink); }
.egp-co-renew-text.egp-co-renew-text { font: 400 16px/26px var(--egp-body); color: var(--egp-ink-2); }
.egp-co-renew-text.egp-co-renew-text a { color: var(--egp-brand-text); }

/* After payment */
.egp-co-aside.egp-co-aside { padding: 24px 26px; border-radius: 20px; background: var(--egp-subtle); }
.egp-co-aside-title.egp-co-aside-title { margin: 0 0 14px; font: 600 18px/26px var(--egp-body); letter-spacing: 0; color: var(--egp-ink); }
.egp-co-aside-list.egp-co-aside-list { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; }
.egp-co-aside-list.egp-co-aside-list li { display: flex; gap: 10px; align-items: flex-start; margin: 0; font: 400 16px/24px var(--egp-body); color: var(--egp-ink-2); }
.egp-co-i.egp-co-i { flex: none; margin-top: 4px; color: var(--egp-info); }

/* Section headings: "Your details", "Payment" */
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-billing-fields > h3, .effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #order_review_heading { margin: 0 0 20px; padding: 0; font: 700 28px/34px var(--egp-display); letter-spacing: -.01em; color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #customer_details { margin: 0 0 48px; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #customer_details :is(.col-1, .col-2) { float: none; width: auto; max-width: none; padding: 0; margin: 0; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #customer_details .col-2:empty { display: none; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-additional-fields:empty, .effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-shipping-fields:empty { display: none; }

/* Fields (Figma TextField and Select: 52px, 12px radius, Body/L input text) */
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-account-fields .create-account, .woocommerce-address-fields__field-wrapper), .effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 20px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row, .effeect-gp-cart.effeect-gp-cart .woocommerce form .form-row { float: none; width: auto; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row-wide, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row-wide { grid-column: 1 / -1; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row::before, .effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row::after { display: none; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row label, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row label, .effeect-gp-cart.effeect-gp-cart .woocommerce form .form-row label { margin: 0; font: 600 16px/22px var(--egp-body); color: var(--egp-ink); line-height: 22px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row .required, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row .required { color: var(--egp-danger); text-decoration: none; border: 0; font-weight: 600; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row .optional, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row .optional { color: var(--egp-ink-3); font-weight: 400; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row :is(input.input-text, textarea, select), .effeect-gp-account.effeect-gp-account .woocommerce form .form-row :is(input.input-text, textarea, select), .effeect-gp-account.effeect-gp-account .woocommerce form :is(input.woocommerce-Input, input.input-text) {
	display: block; width: 100%; min-height: 52px; height: 52px; margin: 0; padding: 0 16px; border: 1px solid var(--egp-border-strong); border-radius: 12px; background: var(--egp-surface); color: var(--egp-ink); font: 400 18px/28px var(--egp-body); box-shadow: none; outline: 0; transition: border-color .2s, box-shadow .2s;
}
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row textarea, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row textarea { height: 128px; padding: 14px 16px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row :is(input.input-text, textarea, select):hover, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row :is(input.input-text, textarea, select):hover { border-color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row :is(input.input-text, textarea, select):focus, .effeect-gp-account.effeect-gp-account .woocommerce form .form-row :is(input.input-text, textarea, select):focus { border-color: var(--egp-ink); box-shadow: 0 0 0 1px var(--egp-ink), 0 0 0 5px var(--egp-halo); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row.woocommerce-invalid :is(input.input-text, select), .effeect-gp-account.effeect-gp-account .woocommerce form .form-row.woocommerce-invalid :is(input.input-text, select) { border: 2px solid var(--egp-danger-line); padding-left: 15px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row.woocommerce-invalid label { color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row .checkout-inline-error-message, .effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row .woocommerce-input-wrapper + .checkout-inline-error-message { margin: 0; font: 500 14px/20px var(--egp-body); color: var(--egp-danger); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row .description { display: block !important; position: static; margin: 0; padding: 0; background: none; color: var(--egp-ink-3); font: 500 14px/20px var(--egp-body); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row .description::before { display: none; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .select2-container .select2-selection--single, .effeect-gp-account.effeect-gp-account .woocommerce .select2-container .select2-selection--single { height: 52px; border: 1px solid var(--egp-border-strong); border-radius: 12px; background: var(--egp-surface); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .select2-container .select2-selection--single .select2-selection__rendered, .effeect-gp-account.effeect-gp-account .woocommerce .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 44px 0 16px; line-height: 50px; color: var(--egp-ink); font: 400 18px/50px var(--egp-body); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .select2-container .select2-selection--single .select2-selection__arrow, .effeect-gp-account.effeect-gp-account .woocommerce .select2-container .select2-selection--single .select2-selection__arrow { height: 50px; right: 12px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .select2-container--focus .select2-selection--single, .effeect-gp-checkout.effeect-gp-checkout .woocommerce .select2-container--open .select2-selection--single { border-color: var(--egp-ink); box-shadow: 0 0 0 1px var(--egp-ink), 0 0 0 5px var(--egp-halo); }
.egp-co-note.egp-co-note { grid-column: 1 / -1; margin: 12px 0 0; font: 500 14px/20px var(--egp-body); color: var(--egp-ink-3); }

/* Payment */
.effeect-gp-checkout.effeect-gp-checkout #payment, .effeect-gp-checkout.effeect-gp-checkout .woocommerce-checkout #payment { margin: 0; padding: 24px; background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 20px; }
.effeect-gp-checkout.effeect-gp-checkout #payment ul.payment_methods { display: flex; flex-direction: column; gap: 12px; margin: 0 0 24px; padding: 0; border: 0; list-style: none; }
.effeect-gp-checkout.effeect-gp-checkout #payment ul.payment_methods li.wc_payment_method { margin: 0; padding: 16px 18px; border: 1px solid var(--egp-border); border-radius: 14px; line-height: 1.5; font: 400 16px/24px var(--egp-body); }
.effeect-gp-checkout.effeect-gp-checkout #payment ul.payment_methods li.wc_payment_method:has(> input:checked) { border: 2px solid var(--egp-ink); padding: 15px 17px; }
.effeect-gp-checkout.effeect-gp-checkout #payment ul.payment_methods li.wc_payment_method > label { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font: 600 16px/24px var(--egp-body); color: var(--egp-ink); cursor: pointer; }
.effeect-gp-checkout.effeect-gp-checkout #payment ul.payment_methods li.wc_payment_method > label img { max-height: 24px; width: auto; margin: 0; }
.effeect-gp-checkout.effeect-gp-checkout #payment ul.payment_methods li.wc_payment_method > input { margin: 0 10px 0 0; accent-color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout #payment div.payment_box { margin: 14px 0 0; padding: 16px; border-radius: 12px; background: var(--egp-subtle); color: var(--egp-ink-2); font: 400 15px/22px var(--egp-body); }
.effeect-gp-checkout.effeect-gp-checkout #payment div.payment_box::before { display: none; }
.effeect-gp-checkout.effeect-gp-checkout #payment div.payment_box p:last-child { margin-bottom: 0; }
.effeect-gp-checkout.effeect-gp-checkout #payment div.form-row.place-order { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 16px; margin: 0; padding: 0; }
.effeect-gp-checkout.effeect-gp-checkout #payment div.form-row.place-order > * { flex: 1 1 100%; }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-terms-and-conditions-wrapper { margin: 0; font: 400 16px/24px var(--egp-body); color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-privacy-policy-text p { margin: 0 0 12px; font: 400 14px/20px var(--egp-body); color: var(--egp-ink-3); }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-form__label-for-checkbox { display: flex; align-items: flex-start; gap: 0; margin: 0; font: 400 16px/24px var(--egp-body); color: var(--egp-ink); cursor: pointer; }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-form__label-for-checkbox input[type=checkbox] { flex: none; width: 22px; height: 22px; margin: 1px 12px 0 0; accent-color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-form__label-for-checkbox .required { margin-left: 4px; }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-terms-and-conditions { max-height: 260px; overflow: auto; margin: 12px 0; padding: 16px; border: 1px solid var(--egp-border); border-radius: 12px; background: var(--egp-surface); box-shadow: none; }
.egp-co-secure.egp-co-secure { display: flex; gap: 8px; align-items: flex-start; margin: 0; font: 500 14px/20px var(--egp-body); color: var(--egp-ink-3); }
.egp-co-secure.egp-co-secure svg { flex: none; margin-top: 2px; }
.effeect-gp-checkout.effeect-gp-checkout #payment #place_order, .effeect-gp-checkout.effeect-gp-checkout .woocommerce #payment #place_order { order: 3; flex: 0 1 auto; float: none; width: auto; min-height: 56px; margin: 0 0 0 auto; padding: 0 28px; border: 0; border-radius: 12px; background: var(--egp-brand); color: var(--egp-ink); font: 600 18px/1.2 var(--egp-body); text-transform: none; letter-spacing: 0; box-shadow: none; cursor: pointer; transition: background-color .2s, box-shadow .2s; }
.effeect-gp-checkout.effeect-gp-checkout #payment #place_order:hover, .effeect-gp-checkout.effeect-gp-checkout #payment #place_order:focus { background: var(--egp-brand-hover); color: var(--egp-ink); box-shadow: 0 0 48px rgba(243, 110, 33, .3), 0 16px 80px rgba(243, 110, 33, .16); }
.effeect-gp-checkout.effeect-gp-checkout #payment #place_order:focus-visible { outline: 2px solid var(--egp-ink); outline-offset: 2px; }
.effeect-gp-checkout.effeect-gp-checkout #payment div.form-row.place-order .egp-co-back { order: 2; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 56px; padding: 0 22px; border: 1px solid var(--egp-border-strong); border-radius: 12px; background: var(--egp-surface); color: var(--egp-ink); font: 600 18px/1 var(--egp-body); text-decoration: none; }
.effeect-gp-checkout.effeect-gp-checkout #payment div.form-row.place-order .egp-co-back:hover { background: var(--egp-subtle); border-color: var(--egp-ink); color: var(--egp-ink); }
/* PayPal buttons (Checkout::paypal_button_hook): in the place-order row, first and full width, where the "Pay" button
   was. If they are still printed after the payment box, they stay right below it instead of at the top of the form. */
.effeect-gp-checkout.effeect-gp-checkout #payment div.form-row.place-order .ppc-button-wrapper { order: 1; flex: 1 1 100%; width: 100%; margin: 0; }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #order_review > .ppc-button-wrapper { order: 8; grid-column: 1; margin: 16px 0 0; }
.effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-info, .effeect-gp-checkout.effeect-gp-checkout #payment .woocommerce-error { margin: 0; }

/* Notices */
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info), .effeect-gp-cart.effeect-gp-cart .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info), .effeect-gp-account.effeect-gp-account .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
	margin: 0 0 24px; padding: 16px 20px 16px 52px; border: 0; border-radius: 16px; background: var(--egp-info-bg); color: var(--egp-ink); font: 500 16px/24px var(--egp-body); list-style: none; outline: 0;
}
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .woocommerce-error, .effeect-gp-cart.effeect-gp-cart .woocommerce .woocommerce-error, .effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-error { border: 2px solid var(--egp-danger-line); background: var(--egp-danger-bg); color: var(--egp-danger); padding-left: 50px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .woocommerce-message, .effeect-gp-cart.effeect-gp-cart .woocommerce .woocommerce-message, .effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-message { background: var(--egp-success-bg); color: var(--egp-success); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before, .effeect-gp-cart.effeect-gp-cart .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before, .effeect-gp-account.effeect-gp-account .woocommerce :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before { top: 16px; left: 20px; color: currentColor; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .woocommerce-error li, .effeect-gp-cart.effeect-gp-cart .woocommerce .woocommerce-error li { margin: 0; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .woocommerce-error li + li { margin-top: 6px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .woocommerce-error a, .effeect-gp-cart.effeect-gp-cart .woocommerce .woocommerce-error a { color: var(--egp-danger); }
.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-NoticeGroup { margin: 0 0 8px; }

/* Order received (O4 paid, O5 failed) and the receipt below */
.effeect-gp-order.effeect-gp-order .woocommerce :is(.woocommerce-thankyou-order-received, .woocommerce-thankyou-order-failed, .woocommerce-thankyou-order-failed-actions) { display: none; }
.egp-ty.egp-ty { display: flex; align-items: flex-start; gap: 48px; margin: 0 0 56px; }
.egp-ty-effy.egp-ty-effy { flex: none; width: 160px; height: auto; margin-top: 8px; }
.egp-ty.egp-ty .egp-card { flex: 1 1 auto; max-width: 640px; }
.egp-card-status.egp-card-status.is-success { background: var(--egp-success-bg); color: var(--egp-success); }
.egp-ty.egp-ty .egp-card-title { margin: 0; }
.egp-ty-alert.egp-ty-alert { display: flex; gap: 12px; align-items: flex-start; width: 100%; padding: 16px 20px; border-radius: 14px; background: var(--egp-danger-bg); color: var(--egp-danger); }
.egp-ty-alert.egp-ty-alert svg { flex: none; margin-top: 2px; }
.egp-ty-alert.egp-ty-alert p { margin: 0; font: 400 15px/22px var(--egp-body); color: var(--egp-ink); }
.egp-ty-alert.egp-ty-alert .egp-ty-alert-title { font-weight: 600; color: var(--egp-danger); }
.egp-ty-receipt.egp-ty-receipt { margin: 0 0 20px; font: 700 28px/34px var(--egp-display); letter-spacing: -.01em; color: var(--egp-ink); }
.effeect-gp-order.effeect-gp-order .woocommerce ul.woocommerce-order-overview { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; margin: 0 0 32px; padding: 20px 24px; border: 1px solid var(--egp-border); border-radius: 20px; background: var(--egp-surface); list-style: none; }
.effeect-gp-order.effeect-gp-order .woocommerce ul.woocommerce-order-overview::before, .effeect-gp-order.effeect-gp-order .woocommerce ul.woocommerce-order-overview::after { display: none; }
.effeect-gp-order.effeect-gp-order .woocommerce ul.woocommerce-order-overview li { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 0; border: 0; float: none; font: 500 14px/20px var(--egp-body); text-transform: none; color: var(--egp-ink-3); }
.effeect-gp-order.effeect-gp-order .woocommerce ul.woocommerce-order-overview li strong { font: 600 16px/24px var(--egp-body); color: var(--egp-ink); }
.effeect-gp-order.effeect-gp-order .woocommerce :is(.woocommerce-order-details, .woocommerce-customer-details, .woocommerce-subscriptions-details, section) > h2, .effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-content h2, .effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-content h3 { margin: 32px 0 16px; font: 700 24px/30px var(--egp-display); letter-spacing: -.01em; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table, .effeect-gp-cart.effeect-gp-cart .woocommerce table.shop_table, .effeect-gp-account.effeect-gp-account .woocommerce table.shop_table { width: 100%; margin: 0 0 24px; border: 1px solid var(--egp-border); border-radius: 16px; border-collapse: separate; border-spacing: 0; overflow: hidden; background: var(--egp-surface); font: 400 16px/24px var(--egp-body); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table :is(th, td), .effeect-gp-cart.effeect-gp-cart .woocommerce table.shop_table :is(th, td), .effeect-gp-account.effeect-gp-account .woocommerce table.shop_table :is(th, td) { padding: 14px 18px; border: 0; border-top: 1px solid var(--egp-border); background: transparent; text-align: left; vertical-align: top; color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table thead th, .effeect-gp-cart.effeect-gp-cart .woocommerce table.shop_table thead th, .effeect-gp-account.effeect-gp-account .woocommerce table.shop_table thead th { border-top: 0; background: var(--egp-subtle); font: 600 14px/20px var(--egp-body); color: var(--egp-ink-2); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table tbody tr:first-child :is(th, td) { border-top: 0; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table thead + tbody tr:first-child :is(th, td) { border-top: 1px solid var(--egp-border); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table tfoot :is(th, td) { font-weight: 600; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table .wc-item-meta, .effeect-gp-account.effeect-gp-account .woocommerce table.shop_table .wc-item-meta { margin: 6px 0 0; padding: 0; list-style: none; font: 400 14px/20px var(--egp-body); color: var(--egp-ink-3); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table .wc-item-meta :is(li, p) { margin: 0; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table .wc-item-meta strong { font-weight: 600; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce .woocommerce-customer-details address, .effeect-gp-account.effeect-gp-account .woocommerce address { padding: 20px 24px; border: 1px solid var(--egp-border); border-radius: 16px; background: var(--egp-surface); font-style: normal; line-height: 1.6; }

/* Order pay (retry after a failed payment) */
.effeect-gp-checkout.effeect-gp-checkout #order_review:not(.woocommerce-checkout-review-order) { max-width: 760px; }

/* Shared buttons inside WooCommerce screens */
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(a.button, button.button, input.button), .effeect-gp-cart.effeect-gp-cart .woocommerce :is(a.button, button.button, input.button), .effeect-gp-account.effeect-gp-account .woocommerce :is(a.button, button.button, input.button, .woocommerce-Button) {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 22px; border: 1px solid var(--egp-ink); border-radius: 12px; background: var(--egp-surface); color: var(--egp-ink); font: 600 16px/1.2 var(--egp-body); text-decoration: none; text-transform: none; letter-spacing: 0; box-shadow: none; cursor: pointer;
}
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(a.button, button.button, input.button):hover, .effeect-gp-cart.effeect-gp-cart .woocommerce :is(a.button, button.button, input.button):hover, .effeect-gp-account.effeect-gp-account .woocommerce :is(a.button, button.button, input.button, .woocommerce-Button):hover { background: var(--egp-subtle); color: var(--egp-ink); }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(a.button.alt, button.button.alt), .effeect-gp-cart.effeect-gp-cart .woocommerce :is(a.button.alt, button.button.alt, .return-to-shop a.button, .wc-proceed-to-checkout a.checkout-button), .effeect-gp-account.effeect-gp-account .woocommerce :is(button.button[type=submit], .woocommerce-Button.button) { border-color: transparent; background: var(--egp-brand); color: var(--egp-ink); min-height: 56px; padding: 0 28px; font-size: 18px; }
.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(a.button.alt, button.button.alt):hover, .effeect-gp-cart.effeect-gp-cart .woocommerce :is(a.button.alt, button.button.alt, .return-to-shop a.button, .wc-proceed-to-checkout a.checkout-button):hover, .effeect-gp-account.effeect-gp-account .woocommerce :is(button.button[type=submit], .woocommerce-Button.button):hover { background: var(--egp-brand-hover); color: var(--egp-ink); box-shadow: 0 0 48px rgba(243, 110, 33, .3), 0 16px 80px rgba(243, 110, 33, .16); }

/* Cart page: usually empty (plans skip the cart) */
.effeect-gp-cart.effeect-gp-cart .woocommerce .cart-empty.woocommerce-info { max-width: 720px; }
.effeect-gp-cart.effeect-gp-cart .woocommerce .return-to-shop { margin: 0; }
.effeect-gp-cart.effeect-gp-cart .woocommerce table.shop_table td.product-thumbnail img { width: 64px; border-radius: 8px; }
.effeect-gp-cart.effeect-gp-cart .woocommerce .cart-collaterals .cart_totals { float: none; width: 100%; max-width: 480px; margin-left: auto; }
.effeect-gp-cart.effeect-gp-cart .woocommerce .cart-collaterals .cart_totals h2 { font: 700 24px/30px var(--egp-display); margin: 0 0 16px; }

/* My Account (dashboard, orders, subscriptions, addresses, details, onboarding, sign-in) */
.effeect-gp-account.effeect-gp-account .woocommerce { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 48px; align-items: start; }
.effeect-gp-account.effeect-gp-account .woocommerce > :not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content) { grid-column: 1 / -1; }
.effeect-gp-account.effeect-gp-account .woocommerce::before, .effeect-gp-account.effeect-gp-account .woocommerce::after { display: none; }
.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-navigation { float: none; width: auto; padding: 12px; border-radius: 20px; background: var(--egp-subtle); position: sticky; top: 32px; }
.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-navigation ul { display: flex; flex-direction: column; gap: 2px; margin: 0; padding: 0; list-style: none; }
.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-MyAccount-navigation li a { display: block; padding: 12px 14px; border-radius: 12px; color: var(--egp-ink); font: 600 16px/22px var(--egp-body); text-decoration: none; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-MyAccount-navigation li a:hover { background: var(--egp-surface); color: var(--egp-ink); }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-MyAccount-navigation li.is-active a { background: var(--egp-brand-subtle); color: var(--egp-ink); }
.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-content { float: none; width: auto; min-width: 0; font: 400 17px/27px var(--egp-body); color: var(--egp-ink-2); }
.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-content > p:first-child { margin-top: 0; }
.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-content mark { background: var(--egp-brand-subtle); color: var(--egp-ink); padding: 0 4px; border-radius: 4px; }
.effeect-gp-account.effeect-gp-account .woocommerce form.woocommerce-form-login, .effeect-gp-account.effeect-gp-account .woocommerce form.woocommerce-form-register, .effeect-gp-account.effeect-gp-account .woocommerce form.woocommerce-ResetPassword, .effeect-gp-account.effeect-gp-account .woocommerce form.lost_reset_password { max-width: 520px; margin: 0; padding: 32px; border: 1px solid var(--egp-border); border-radius: 24px; background: var(--egp-surface); display: flex; flex-direction: column; gap: 20px; }
.effeect-gp-account.effeect-gp-account .woocommerce :is(#customer_login, .u-columns) { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; }
.effeect-gp-account.effeect-gp-account .woocommerce :is(#customer_login, .u-columns) > div { float: none; width: auto; }
.effeect-gp-account.effeect-gp-account .woocommerce :is(#customer_login, .u-columns) h2, .effeect-gp-account.effeect-gp-account .woocommerce > h2 { margin: 0 0 16px; font: 700 28px/34px var(--egp-display); letter-spacing: -.01em; color: var(--egp-ink); }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 10px; font-weight: 400; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-LostPassword { margin: 0; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-Addresses { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-Addresses > div { float: none; width: auto; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-Address-title h2 { margin: 0 0 12px; }
.effeect-gp-account.effeect-gp-account .woocommerce fieldset { margin: 24px 0 0; padding: 24px; border: 1px solid var(--egp-border); border-radius: 16px; }
.effeect-gp-account.effeect-gp-account .woocommerce fieldset legend { padding: 0 8px; font: 600 18px/26px var(--egp-body); color: var(--egp-ink); }
.effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-orders-table__cell-order-actions .button, .effeect-gp-account.effeect-gp-account .woocommerce td .button { min-height: 40px; padding: 0 16px; font-size: 15px; margin: 2px 4px 2px 0; }

@media (max-width: 1023px) {
	.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout { grid-template-columns: minmax(0, 1fr); }
	.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .egp-co-aside { grid-column: 1; grid-row: auto; order: 4; position: static; margin: 0 0 48px; }
	.egp-co-title.egp-co-title, .egp-co-title-plain.egp-co-title-plain { font-size: 38px; line-height: 44px; }
	.effeect-gp-account.effeect-gp-account .woocommerce { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-navigation { position: static; }
	.effeect-gp-account.effeect-gp-account .woocommerce-MyAccount-navigation ul { flex-direction: row; flex-wrap: wrap; }
}
@media (max-width: 767px) {
	.egp-co-title.egp-co-title, .egp-co-title-plain.egp-co-title-plain { font-size: 30px; line-height: 36px; margin-bottom: 20px; }
	.egp-co-sum.egp-co-sum { padding: 20px; gap: 16px; border-radius: 16px; }
	.egp-co-due.egp-co-due { padding: 16px; }
	.egp-co-due-amount.egp-co-due-amount { font-size: 32px; line-height: 36px; }
	.egp-co-renew.egp-co-renew { padding: 16px; }
	.egp-co-renew-text.egp-co-renew-text { font-size: 15px; line-height: 24px; }
	.effeect-gp-checkout.effeect-gp-checkout .woocommerce :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-address-fields__field-wrapper), .effeect-gp-account.effeect-gp-account .woocommerce .woocommerce-address-fields__field-wrapper { grid-template-columns: minmax(0, 1fr); }
	.effeect-gp-checkout.effeect-gp-checkout .woocommerce form .form-row :is(input.input-text, select), .effeect-gp-account.effeect-gp-account .woocommerce form .form-row :is(input.input-text, select) { font-size: 17px; }
	.effeect-gp-checkout.effeect-gp-checkout #payment, .effeect-gp-checkout.effeect-gp-checkout .woocommerce-checkout #payment { padding: 16px; border-radius: 16px; }
	.effeect-gp-checkout.effeect-gp-checkout #payment #place_order, .effeect-gp-checkout.effeect-gp-checkout .woocommerce #payment #place_order { order: 2; flex: 1 1 100%; width: 100%; margin: 0; }
	.effeect-gp-checkout.effeect-gp-checkout #payment div.form-row.place-order .egp-co-back { order: 3; flex: 1 1 100%; }
	.effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout .woocommerce-billing-fields > h3, .effeect-gp-checkout.effeect-gp-checkout form.woocommerce-checkout #order_review_heading { font-size: 24px; line-height: 30px; }
	.egp-ty.egp-ty { flex-direction: column; gap: 20px; }
	.egp-ty-effy.egp-ty-effy { width: 112px; margin: 0; }
	.effeect-gp-account.effeect-gp-account .woocommerce form.woocommerce-form-login, .effeect-gp-account.effeect-gp-account .woocommerce form.woocommerce-form-register { padding: 24px; }
	.effeect-gp-checkout.effeect-gp-checkout .woocommerce table.shop_table_responsive tr td, .effeect-gp-account.effeect-gp-account .woocommerce table.shop_table_responsive tr td { text-align: right; }
}

/* ---------- Form fields on Elementor pages (Figma components TextField, Select, Textarea, Checkbox, RadioCard) ---------- */
.egp-f.egp-f { display: flex; flex-direction: column; gap: 8px; width: 100%; min-width: 0; }
.egp-f-labelrow.egp-f-labelrow { display: flex; align-items: baseline; gap: 6px; }
.egp-f-label.egp-f-label { flex: 1 1 auto; font: 600 16px/22px var(--egp-body); color: var(--egp-ink); margin: 0; }
.egp-f-tag.egp-f-tag { flex: none; font: 500 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-3); }
.egp-f-control.egp-f-control { position: relative; display: flex; align-items: center; }
.egp-f.egp-f .egp-f-input { display: block; width: 100%; min-height: 52px; height: 52px; margin: 0; padding: 0 16px; border: 1px solid var(--egp-border-strong); border-radius: 12px; background: var(--egp-surface); color: var(--egp-ink); font: 400 18px/28px var(--egp-body); box-shadow: none; outline: 0; transition: border-color .2s, box-shadow .2s; -webkit-appearance: none; appearance: none; }
.egp-f.egp-f .egp-f-input::placeholder { color: var(--egp-ink-3); opacity: 1; }
.egp-f.egp-f .egp-f-input:hover { border-color: var(--egp-ink); }
.egp-f.egp-f .egp-f-input:focus, .egp-f.egp-f .egp-f-input:focus-visible { border-color: var(--egp-ink); box-shadow: 0 0 0 1px var(--egp-ink), 0 0 0 5px var(--egp-halo); outline: 0; }
.egp-f.egp-f textarea.egp-f-input { height: 128px; min-height: 128px; padding: 14px 16px 0; resize: vertical; }
.egp-f-select.egp-f-select .egp-f-input { padding-right: 46px; cursor: pointer; }
.egp-f-select.egp-f-select .egp-f-input.is-placeholder { color: var(--egp-ink-3); }
.egp-f-select.egp-f-select .egp-f-input option { color: var(--egp-ink); }
.egp-f-chevron.egp-f-chevron { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 20px; color: var(--egp-ink-2); pointer-events: none; }
/* Select with an error: the alert sits at the edge and the chevron moves in beside it (Figma Select · Error). */
.egp-f.egp-f.is-error .egp-f-select .egp-f-chevron { right: 46px; }
.egp-f.egp-f.is-error .egp-f-select .egp-f-input { padding-right: 76px; }
.egp-f.egp-f.is-error .egp-f-input { border: 2px solid var(--egp-danger-line); padding-left: 15px; }
.egp-f.egp-f.is-error .egp-f-control .egp-f-input { padding-right: 46px; }
.egp-f-alert.egp-f-alert { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 20px; color: var(--egp-danger); pointer-events: none; }
.egp-f-msg.egp-f-msg { display: flex; align-items: flex-start; gap: 6px; margin: 0; font: 500 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-2); }
.egp-f-msg.egp-f-msg.is-error { color: var(--egp-danger); }
.egp-f-msg.egp-f-msg .eff-i { font-size: 16px; margin-top: 2px; flex: none; }
/* Checkbox: 22px box, 12px gap, label Body/S, helper Caption */
.egp-f--checkbox.egp-f--checkbox { flex-direction: row; flex-wrap: wrap; align-items: flex-start; gap: 0 12px; padding: 2px 0; }
.egp-f--checkbox.egp-f--checkbox .egp-f-box[type] { flex: none; width: 22px; height: 22px; min-height: 0; margin: 1px 0 0; padding: 0; box-shadow: none; border: 1.5px solid var(--egp-border-strong); border-radius: 6px; background: var(--egp-surface); -webkit-appearance: none; appearance: none; cursor: pointer; display: grid; place-content: center; transition: background-color .15s, border-color .15s; }
.egp-f--checkbox.egp-f--checkbox .egp-f-box[type]::before { content: ""; width: 12px; height: 12px; clip-path: polygon(14% 52%, 0 66%, 40% 100%, 100% 22%, 86% 8%, 40% 72%); background: var(--egp-canvas); transform: scale(0); transition: transform .12s; }
.egp-f--checkbox.egp-f--checkbox .egp-f-box[type]:checked { background: var(--egp-ink); border-color: var(--egp-ink); }
.egp-f--checkbox.egp-f--checkbox .egp-f-box[type]:checked::before { transform: scale(1); }
.egp-f--checkbox.egp-f--checkbox .egp-f-box[type]:focus-visible { outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo); }
.egp-f--checkbox.egp-f--checkbox.is-error .egp-f-box[type] { border: 2px solid var(--egp-danger-line); }
.egp-f-check.egp-f-check { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 2px; cursor: pointer; }
.egp-f-check-label.egp-f-check-label { font: 400 16px/24px var(--egp-body); color: var(--egp-ink); }
.egp-f-check-help.egp-f-check-help { font: 500 14px/20px var(--egp-body); color: var(--egp-ink-2); }
.egp-f--checkbox.egp-f--checkbox .egp-f-msg { flex-basis: 100%; padding-left: 34px; }
/* RadioCard (trial chooser): icon tile · copy · radio, 20px padding, 16px radius */
.egp-f--radiocard.egp-f--radiocard { height: 100%; }
.egp-f--radiocard.egp-f--radiocard .egp-rc-input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.egp-rc.egp-rc { position: relative; display: flex; align-items: flex-start; gap: 16px; height: 100%; padding: 20px; border: 1px solid var(--egp-border-strong); border-radius: 16px; background: var(--egp-surface); cursor: pointer; transition: background-color .2s, border-color .2s; }
.egp-rc.egp-rc:hover { background: var(--egp-subtle); border-color: var(--egp-ink); }
.egp-rc-tile.egp-rc-tile { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--egp-brand-subtle); color: var(--egp-brand-pressed); transition: background-color .2s, color .2s; }
.egp-rc-tile.egp-rc-tile .eff-i { font-size: 22px; }
.egp-rc-body.egp-rc-body { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.egp-rc-title.egp-rc-title { font: 600 18px/26px var(--egp-body); color: var(--egp-ink); }
.egp-rc-desc.egp-rc-desc { font: 400 16px/24px var(--egp-body); color: var(--egp-ink-2); }
.egp-rc-meta.egp-rc-meta { font: 500 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-3); }
.egp-rc-radio.egp-rc-radio { flex: none; width: 22px; height: 22px; border: 1.5px solid var(--egp-border-strong); border-radius: 50%; background: var(--egp-surface); display: grid; place-items: center; transition: background-color .2s, border-color .2s; }
.egp-rc-radio.egp-rc-radio::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--egp-canvas); transform: scale(0); transition: transform .15s; }
.egp-rc-input.egp-rc-input:checked + .egp-rc { background: var(--egp-brand-subtle); border: 2px solid var(--egp-ink); padding: 19px; }
.egp-rc-input.egp-rc-input:checked + .egp-rc .egp-rc-tile { background: var(--egp-brand); color: var(--egp-ink); }
.egp-rc-input.egp-rc-input:checked + .egp-rc .egp-rc-radio { background: var(--egp-ink); border-color: var(--egp-ink); }
.egp-rc-input.egp-rc-input:checked + .egp-rc .egp-rc-radio::before { transform: scale(1); }
.egp-rc-input.egp-rc-input:focus-visible + .egp-rc { outline: 2px solid var(--egp-ink); outline-offset: 2px; box-shadow: 0 0 0 6px var(--egp-halo); }
/* Submit: the form element only holds hidden inputs; errors and confirmations sit above the button */
.egp-submit.egp-submit { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; width: 100%; }
.egp-submit.egp-submit.is-full { align-items: stretch; }
.egp-submit.egp-submit .egp-form-el { display: contents; }
.egp-btn.egp-btn.egp-btn-full { width: 100%; }
/* Figma ErrorSummary: 20px padding, 2px danger line, 16px radius; icon and count, then each problem as a link. */
.egp-f-summary.egp-f-summary { width: 100%; display: flex; flex-direction: column; gap: 10px; padding: 20px; border: 2px solid var(--egp-danger-line); border-radius: 16px; background: var(--egp-danger-bg); }
.egp-f-summary.egp-f-summary:focus { outline: 2px solid var(--egp-ink); outline-offset: 2px; }
.egp-f-summary-title.egp-f-summary-title { display: flex; align-items: center; gap: 10px; margin: 0; font: 600 18px/26px var(--egp-body); color: var(--egp-danger); }
.egp-f-summary-title.egp-f-summary-title .eff-i { flex: none; font-size: 22px; }
.egp-f-summary.egp-f-summary ul { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0 0 0 32px; list-style: none; }
.egp-f-summary.egp-f-summary li { margin: 0; font: 400 16px/24px var(--egp-body); color: var(--egp-danger); }
.egp-f-summary.egp-f-summary a { color: var(--egp-danger); text-decoration: none; }
.egp-f-summary.egp-f-summary a:hover, .egp-f-summary.egp-f-summary a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.egp-f-done.egp-f-done { display: flex; gap: 10px; align-items: flex-start; margin: 0; padding: 14px 16px; border-radius: 12px; background: var(--egp-success-bg); color: var(--egp-success); font: 600 16px/24px var(--egp-body); }
.egp-f-done.egp-f-done .eff-i { font-size: 20px; margin-top: 2px; }
.egp-f-receipt.egp-f-receipt { width: 100%; display: flex; flex-direction: column; gap: 8px; padding: 20px; border-radius: 16px; background: var(--egp-brand-subtle); outline: 0; }
.egp-f-receipt.egp-f-receipt p { margin: 0; font: 400 16px/24px var(--egp-body); color: var(--egp-ink-2); }
.egp-f-receipt.egp-f-receipt .egp-f-receipt-chip { align-self: flex-start; padding: 4px 10px; border-radius: 999px; background: var(--egp-surface); font: 600 14px/20px var(--egp-body); color: var(--egp-brand-text); }
.egp-f-receipt.egp-f-receipt .egp-f-receipt-title { font: 600 20px/28px var(--egp-body); color: var(--egp-ink); }
.egp-f-receipt.egp-f-receipt .egp-f-receipt-ref { font: 500 14px/20px var(--egp-mono); color: var(--egp-ink-3); }
@media (max-width: 767px) {
	.egp-f.egp-f .egp-f-input { font-size: 17px; line-height: 26px; }
	.egp-rc-title.egp-rc-title { font-size: 17px; line-height: 24px; }
	/* Phone checkboxes are 44px touch rows (Figma Checkbox at 390). */
	.egp-f--checkbox.egp-f--checkbox { min-height: 44px; align-content: center; }
}

/* Request cards (Figma Flow/Trial T3 received, T9 not eligible, T10 waitlist): replace the form once it is saved. */
.egp-card.egp-card { max-width: 720px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; padding: 36px 40px; background: var(--egp-surface); border: 1px solid var(--egp-border); border-radius: 28px; box-shadow: 0 8px 24px rgba(8, 25, 46, .1); outline: 0; }
.egp-card-step.egp-card-step { margin: 0; font: 600 15px/20px var(--egp-body); color: var(--egp-brand-text); }
.egp-card-status.egp-card-status { display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 5px 12px 5px 10px; border-radius: 999px; background: var(--egp-subtle); font: 600 14px/18px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-2); }
.egp-card-status.egp-card-status::before { content: ""; flex: none; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.egp-card-status.egp-card-status.is-danger { background: var(--egp-danger-bg); color: var(--egp-danger); }
.egp-card-status.egp-card-status.is-info { background: var(--egp-info-bg); color: var(--egp-info); }
.egp-card-title.egp-card-title { margin: 0; font: 700 44px/50px var(--egp-display); letter-spacing: -.01em; color: var(--egp-ink); }
.egp-card-body.egp-card-body { margin: 0; font: 400 18px/28px var(--egp-body); color: var(--egp-ink-2); }
.egp-card-facts.egp-card-facts { width: 100%; display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 18px 20px; border-radius: 16px; background: var(--egp-subtle); }
.egp-card-facts.egp-card-facts > div { display: flex; gap: 16px; }
.egp-card-facts.egp-card-facts dt { flex: none; width: 170px; font: 500 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-3); }
.egp-card-facts.egp-card-facts dd { flex: 1 1 0; min-width: 0; margin: 0; font: 600 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink); }
.egp-card-actions.egp-card-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.egp-card-note.egp-card-note { margin: 0; font: 500 14px/20px var(--egp-body); letter-spacing: .002em; color: var(--egp-ink-3); }
@media (min-width: 768px) and (max-width: 1024px) { .egp-card-title.egp-card-title { font-size: 38px; line-height: 44px; } }
@media (max-width: 767px) {
	.egp-card.egp-card { padding: 28px 24px; border-radius: 24px; }
	.egp-card-title.egp-card-title { font-size: 30px; line-height: 36px; }
	.egp-card-body.egp-card-body { font-size: 17px; line-height: 26px; }
	.egp-card-facts.egp-card-facts > div { flex-direction: column; gap: 2px; }
	.egp-card-facts.egp-card-facts dt { width: auto; }
	.egp-card-actions.egp-card-actions, .egp-card-actions.egp-card-actions .egp-btn { width: 100%; }
}

/* Regions focused by a script so screen readers announce them (request card, error summary): no control ring. */
.effeect-gp.effeect-gp [tabindex="-1"]:focus-visible { outline: 0; box-shadow: none; }
.effeect-gp.effeect-gp .egp-card[tabindex="-1"]:focus-visible { box-shadow: 0 8px 24px rgba(8, 25, 46, .1); }

/* A plan sent from the builder to a request form (Enterprise page form): title, the plan lines and the note, stacked. */
.egp-f-plan.egp-f-plan { width: 100%; margin: 0 0 16px; }
.egp-f-plan.egp-f-plan .egp-reco { display: block; }
.egp-f-plan.egp-f-plan .egp-reco ul { margin: 8px 0; padding-left: 20px; font: 500 15px/22px var(--egp-body); color: var(--egp-ink); }
.egp-f-plan.egp-f-plan .egp-reco li + li { margin-top: 4px; }
