/* Generated by build_css.py from assets-src/registration.css — edit the source. */
/* ==========================================================================
   EC27 registration — shortcode outputs on the registration page, and the
   purchase-flow pages (FooEvents attendee page, checkout, receipt, account).
   Brace-wrapped colour names (e.g. Gold, Cream Light) are EC27 Variable
   Manager tokens; build_css.py resolves them.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Registration page: [evi_register]
   -------------------------------------------------------------------------- */
.evi-register { margin: 0; }
.evi-register__label {
	display: block; margin: 0 0 10px;
	font: 600 0.72rem/1.4 'Josefin Sans', sans-serif; letter-spacing: 0.24em; text-transform: uppercase;
	color: var(--gcid-06f42d7e23,#F3D27A);
}
.evi-register__row { display: flex; gap: 12px; align-items: stretch; flex-wrap: wrap; }
.evi-register__qty {
	flex: 0 0 96px; height: 54px; padding: 0 40px 0 18px; margin: 0;
	font: 600 1.05rem/1 'Poppins', sans-serif; color: var(--gcid-0480691e0d,#11302A);
	background: var(--gcid-7fa5bc1916,#FBF6E6) url('data:image/svg+xml;utf8,<svg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%228%22><path d=%22M1 1l5 5 5-5%22 fill=%22none%22 stroke=%22%239E7422%22 stroke-width=%222%22/></svg>') no-repeat right 16px center;
	border: 1px solid var(--gcid-c57604db58,#D8A73A); border-radius: 4px;
	-webkit-appearance: none; appearance: none; cursor: pointer;
}
.evi-register__qty:focus-visible { outline: 3px solid var(--gcid-06f42d7e23,#F3D27A); outline-offset: 2px; }
.evi-register__cta {
	flex: 1 1 200px; height: 54px; padding: 0 30px; margin: 0; cursor: pointer;
	font: 700 0.8rem/1 'Josefin Sans', sans-serif; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--gcid-1097b553dc,#061715);
	background: linear-gradient(180deg, var(--gcid-06f42d7e23,#F3D27A) 0%, var(--gcid-c57604db58,#D8A73A) 55%, var(--gcid-601f6786f1,#9E7422) 100%);
	border: 0; border-radius: 4px;
	box-shadow: 0 10px 26px -12px rgba(216, 167, 58, 0.75);
	transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
}
.evi-register__cta:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 16px 30px -14px rgba(216, 167, 58, 0.9); }
.evi-register__cta:focus-visible { outline: 3px solid var(--gcid-06f42d7e23,#F3D27A); outline-offset: 3px; }
.evi-register__soon {
	margin: 0 0 6px; font: italic 500 1.5rem/1.2 'Bodoni Moda', serif; color: var(--gcid-d1e2abc18a,#F5EEDB);
}
.evi-register__note { margin: 12px 0 0; font: 400 0.86rem/1.6 'Poppins', sans-serif; color: rgba(245, 238, 219, 0.72); }
.evi-register__note a { color: var(--gcid-06f42d7e23,#F3D27A); text-decoration: none; border-bottom: 1px solid rgba(243, 210, 122, 0.5); }
.evi-register__note--admin { font-style: italic; color: var(--gcid-c508cfbe6c,#DAFF5E); }
.evi-register__group {
	margin: 14px 0 0; padding: 0 0 0 26px; position: relative;
	font: 500 0.86rem/1.5 'Poppins', sans-serif; color: var(--gcid-d1e2abc18a,#F5EEDB);
}
.evi-register__group::before {                                              /* small gilded tag */
	content: '%'; position: absolute; left: 0; top: 1px; width: 18px; height: 18px; border-radius: 50%;
	display: grid; place-items: center;
	font: 700 0.62rem/1 'Josefin Sans', sans-serif; color: var(--gcid-1097b553dc,#061715);
	background: linear-gradient(180deg, var(--gcid-06f42d7e23,#F3D27A), var(--gcid-c57604db58,#D8A73A));
}
.evi-register__group a { color: var(--gcid-06f42d7e23,#F3D27A); text-decoration: none; border-bottom: 1px solid rgba(243, 210, 122, 0.5); }

/* Coupon discount row in the dark checkout summary */
body.evi-flow #order_review tr.cart-discount th,
body.evi-flow #order_review tr.cart-discount td { color: var(--gcid-c508cfbe6c,#DAFF5E) !important; }
body.evi-flow #order_review tr.cart-discount a { color: var(--gcid-06f42d7e23,#F3D27A); }

/* Prices come from WooCommerce as .woocommerce-Price-amount; the card sets the size. */
.evi-price .woocommerce-Price-amount { font: inherit; color: inherit; }
.evi-price .woocommerce-Price-currencySymbol { font-size: 0.55em; vertical-align: 0.62em; margin-right: 0.04em; }
.evi-price--tba { font-size: 0.5em; font-style: italic; font-weight: 400; color: var(--gcid-da32ecab00,#155647); letter-spacing: 0; }

/* --------------------------------------------------------------------------
   Flow pages — frame
   -------------------------------------------------------------------------- */
body.evi-flow { background: var(--gcid-d1e2abc18a,#F5EEDB); }
body.evi-flow #main-content { background: linear-gradient(180deg, var(--gcid-d1e2abc18a,#F5EEDB) 0%, var(--gcid-4761c103f6,#EAE0C3) 100%); overflow-x: clip; }  /* 100vw header includes the scrollbar */
body.evi-flow #main-content .container { width: 90%; max-width: 1080px; padding-top: 0; }
body.evi-flow #main-content .container::before { display: none; }          /* Divi's sidebar rule */
body.evi-flow #left-area { width: 100%; padding: 0 0 clamp(3rem, 6vw, 5rem); float: none; }
body.evi-flow #sidebar { display: none; }
body.evi-flow .entry-title.main_title { display: none; }                   /* replaced by the header */
body.evi-flow .entry-content,
body.evi-flow .woocommerce { font: 400 1rem/1.7 'Poppins', sans-serif; color: var(--gcid-0480691e0d,#11302A); }

/* Site header (Divi classic #main-header, transparent mode): it is built to float over a dark hero, so its
   gold links vanish on the cream flow pages until the scrolled (.et-fixed-header) style kicks in. Give it the
   twilight band's top colour until then, so it reads like the hero pages and runs straight into the band. */
body.evi-flow #main-header:not(.et-fixed-header) { background-color: var(--gcid-b55d424365,#140E3A); box-shadow: none; }
body.evi-flow #top-header { background-color: var(--gcid-b55d424365,#140E3A); }
/* Divi pads the content 80px for a 74px fixed header; the 6px between them showed the cream ground as a line.
   The band casts a solid night-sky shadow upward into that strip (box-shadow is not clipped by the band's own
   overflow), so header and band join seamlessly whatever padding Divi computes. */
body.evi-flow .evi-flow-head { box-shadow: 0 -160px 0 0 var(--gcid-b55d424365,#140E3A); }

/* Header band: full-bleed twilight, echoes the page heroes */
.evi-flow-head {
	position: relative; overflow: hidden;
	margin: 0 calc(50% - 50vw) clamp(2rem, 4vw, 3rem);
	padding: clamp(2.6rem, 5vw, 3.8rem) max(5vw, calc(50vw - 540px)) clamp(2.2rem, 4vw, 3rem);
	background:
		radial-gradient(60% 120% at 85% 0%, rgba(108, 79, 209, 0.35) 0%, transparent 60%),
		linear-gradient(180deg, var(--gcid-b55d424365,#140E3A) 0%, var(--gcid-cc3ae6ab06,#221A5A) 40%, var(--gcid-07b9398aeb,#1A3752) 75%, var(--gcid-2ed5088af3,#0F4A3F) 100%);
	border-bottom: 1px solid rgba(216, 167, 58, 0.45);
}
.evi-flow-head::after {                                                     /* gold hairline glow */
	content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
	background: linear-gradient(90deg, transparent, var(--gcid-06f42d7e23,#F3D27A), transparent); opacity: 0.8;
}
.evi-flow-head__eyebrow {
	margin: 0 0 8px; padding: 0;
	font: 600 0.72rem/1.4 'Josefin Sans', sans-serif; letter-spacing: 0.34em; text-transform: uppercase;
	color: var(--gcid-06f42d7e23,#F3D27A);
}
.evi-flow-head__title {
	margin: 0; padding: 0;
	font: 500 clamp(2rem, 4.2vw, 3rem)/1.08 'Bodoni Moda', serif; letter-spacing: -0.01em;
	color: var(--gcid-d1e2abc18a,#F5EEDB);
}

/* Steps */
.evi-steps { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 22px 0 0; padding: 0; list-style: none; }
.evi-steps__item { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0;
	font: 600 0.72rem/1 'Josefin Sans', sans-serif; letter-spacing: 0.2em; text-transform: uppercase;
	color: rgba(245, 238, 219, 0.5); }
.evi-steps__item a { display: flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; }
.evi-steps__n {
	display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%;
	font: italic 500 0.9rem/1 'Bodoni Moda', serif; letter-spacing: 0;
	border: 1px solid rgba(245, 238, 219, 0.3);
}
.evi-steps__item.is-done { color: rgba(245, 238, 219, 0.78); }
.evi-steps__item.is-done .evi-steps__n { border-color: var(--gcid-c57604db58,#D8A73A); color: var(--gcid-06f42d7e23,#F3D27A); }
.evi-steps__item.is-done a:hover { color: var(--gcid-06f42d7e23,#F3D27A); }
.evi-steps__item.is-current { color: var(--gcid-d1e2abc18a,#F5EEDB); }
.evi-steps__item.is-current .evi-steps__n {
	color: var(--gcid-1097b553dc,#061715); border-color: transparent;
	background: linear-gradient(180deg, var(--gcid-06f42d7e23,#F3D27A), var(--gcid-c57604db58,#D8A73A));
	box-shadow: 0 0 0 4px rgba(243, 210, 122, 0.16);
}

/* --------------------------------------------------------------------------
   Flow pages — shared form controls (WooCommerce + FooEvents)
   -------------------------------------------------------------------------- */
body.evi-flow .woocommerce h2,
body.evi-flow .woocommerce h3 {
	font: 500 1.6rem/1.2 'Bodoni Moda', serif; color: var(--gcid-0480691e0d,#11302A); letter-spacing: -0.005em;
	margin: 0 0 14px; padding: 0;
}
body.evi-flow .form-row { margin: 0 0 16px; padding: 0; }
body.evi-flow .form-row label,
body.evi-flow .fooevents-attendee-item label:not(.checkbox) {
	display: block; margin: 0 0 6px;
	font: 600 0.72rem/1.4 'Josefin Sans', sans-serif; letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--gcid-9c6971d694,#40615A);
}
body.evi-flow .form-row .required { color: var(--gcid-601f6786f1,#9E7422); border: 0; text-decoration: none; }
body.evi-flow .form-row .optional { text-transform: none; letter-spacing: 0; font-family: 'Poppins', sans-serif; font-weight: 400; opacity: 0.8; }
body.evi-flow .form-row input.input-text,
body.evi-flow .form-row textarea,
body.evi-flow #fooevents-attendee-page .form-row textarea.input-text,
body.evi-flow .form-row select,
body.evi-flow .form-row .select2-selection {
	width: 100%; min-height: 48px; margin: 0; padding: 12px 14px;
	font: 500 0.95rem/1.4 'Poppins', sans-serif; color: var(--gcid-0480691e0d,#11302A);
	background: var(--gcid-7fa5bc1916,#FBF6E6); border: 1px solid rgba(158, 116, 34, 0.45); border-radius: 4px;
	box-shadow: none; transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
body.evi-flow .form-row textarea { min-height: 96px; resize: vertical; }
body.evi-flow .form-row select { -webkit-appearance: none; appearance: none; padding-right: 40px;
	background: var(--gcid-7fa5bc1916,#FBF6E6) url('data:image/svg+xml;utf8,<svg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%228%22><path d=%22M1 1l5 5 5-5%22 fill=%22none%22 stroke=%22%239E7422%22 stroke-width=%222%22/></svg>') no-repeat right 14px center; }
body.evi-flow .form-row .select2-selection { display: flex; align-items: center; }
body.evi-flow .form-row .select2-selection__rendered { padding: 0; line-height: 1.4; color: var(--gcid-0480691e0d,#11302A); }
body.evi-flow .form-row .select2-selection__arrow { top: 50%; transform: translateY(-50%); right: 8px; }
body.evi-flow .form-row input.input-text:hover,
body.evi-flow .form-row textarea:hover,
body.evi-flow .form-row select:hover { border-color: var(--gcid-c57604db58,#D8A73A); }
body.evi-flow .form-row input.input-text:focus,
body.evi-flow .form-row textarea:focus,
body.evi-flow .form-row select:focus {
	outline: none; border-color: var(--gcid-c57604db58,#D8A73A); box-shadow: 0 0 0 3px rgba(216, 167, 58, 0.25);
}
body.evi-flow .form-row.woocommerce-invalid input.input-text,
body.evi-flow .form-row.woocommerce-invalid select { border-color: var(--gcid-bfc6ec178a,#F27FB0); }
body.evi-flow .form-row .description { margin: 6px 0 0; font-size: 0.82rem; color: var(--gcid-9c6971d694,#40615A); background: none; padding: 0; }
body.evi-flow .form-row .description::before { display: none; }
body.evi-flow .form-row input[type=checkbox],
body.evi-flow .form-row input[type=radio] { accent-color: var(--gcid-da32ecab00,#155647); width: 18px; height: 18px; margin: 0 10px 0 0; flex: 0 0 auto; }
body.evi-flow .form-row label.checkbox {
	display: flex; align-items: flex-start; gap: 0; margin: 4px 0 0;
	font: 400 0.92rem/1.55 'Poppins', sans-serif; letter-spacing: 0; text-transform: none; color: var(--gcid-0480691e0d,#11302A);
}
body.evi-flow .form-row label.checkbox input { margin-top: 3px; }

/* Buttons: Proceed to checkout, Place order */
body.evi-flow .woocommerce button.button,
body.evi-flow .woocommerce input.button,
body.evi-flow .woocommerce a.button,
body.evi-flow #place_order,
body.evi-flow #fooevents-attendee-page button[type=submit],
body.evi-flow #fooevents-attendee-page input[type=submit] {
	display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 34px;
	font: 700 0.8rem/1 'Josefin Sans', sans-serif !important; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--gcid-1097b553dc,#061715) !important;
	background: linear-gradient(180deg, var(--gcid-06f42d7e23,#F3D27A) 0%, var(--gcid-c57604db58,#D8A73A) 55%, var(--gcid-601f6786f1,#9E7422) 100%) !important;
	border: 0 !important; border-radius: 4px !important;
	box-shadow: 0 10px 26px -12px rgba(216, 167, 58, 0.75);
	transition: transform 0.25s ease, filter 0.25s ease;
}
body.evi-flow .woocommerce button.button::after,
body.evi-flow .woocommerce a.button::after,
body.evi-flow #place_order::after { display: none !important; }          /* Divi's button arrow */
body.evi-flow .woocommerce button.button:hover,
body.evi-flow .woocommerce a.button:hover,
body.evi-flow #place_order:hover,
body.evi-flow #fooevents-attendee-page button[type=submit]:hover { transform: translateY(-2px); filter: brightness(1.06); padding: 0 34px; }

/* Notices */
/* !important: Divi's WooCommerce sheet paints notices in the site accent (teal) at higher specificity */
body.evi-flow .woocommerce-message,
body.evi-flow .woocommerce-info,
body.evi-flow .woocommerce-error,
body.evi-flow .woocommerce-notices-wrapper > * {
	margin: 0 0 16px !important; padding: 13px 18px 13px 20px !important; border-radius: 4px !important;
	font: 500 0.92rem/1.55 'Poppins', sans-serif !important; color: var(--gcid-0480691e0d,#11302A) !important;
	background: var(--gcid-7fa5bc1916,#FBF6E6) !important; box-shadow: none !important;
	border: 1px solid rgba(158, 116, 34, 0.35) !important; border-left: 4px solid var(--gcid-da32ecab00,#155647) !important;
}
body.evi-flow .woocommerce-error { border-left-color: var(--gcid-bfc6ec178a,#F27FB0) !important; }
body.evi-flow .woocommerce-error li { color: var(--gcid-0480691e0d,#11302A) !important; }
body.evi-flow .woocommerce-message::before,
body.evi-flow .woocommerce-info::before,
body.evi-flow .woocommerce-error::before { display: none; }
body.evi-flow .woocommerce-info a,
body.evi-flow .woocommerce-message a:not(.button) { color: var(--gcid-da32ecab00,#155647); font-weight: 600; }

/* --------------------------------------------------------------------------
   Attendee page (FooEvents)
   -------------------------------------------------------------------------- */
body.evi-flow .fooevents-attendee-group > h2 {                             /* product name */
	font: 600 0.74rem/1.4 'Josefin Sans', sans-serif; letter-spacing: 0.3em; text-transform: uppercase;
	color: var(--gcid-774fd2c819,#1F7A63); margin: 0 0 14px;
}
body.evi-flow .fooevents-attendee-item {
	position: relative; margin: 0 0 22px; padding: clamp(1.4rem, 3vw, 2.2rem);
	background: var(--gcid-7fa5bc1916,#FBF6E6); border: 1px solid rgba(158, 116, 34, 0.3); border-radius: 6px;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) inset, 0 18px 40px -30px rgba(17, 48, 42, 0.45);
}
body.evi-flow .fooevents-attendee-item::before {                           /* gilded top edge */
	content: ''; position: absolute; left: 0; right: 0; top: 0; height: 3px; border-radius: 6px 6px 0 0;
	background: linear-gradient(90deg, var(--gcid-601f6786f1,#9E7422), var(--gcid-06f42d7e23,#F3D27A), var(--gcid-601f6786f1,#9E7422));
}
body.evi-flow .fooevents-attendee-item > h3 {
	font: italic 500 1.5rem/1.2 'Bodoni Moda', serif; color: var(--gcid-0480691e0d,#11302A); margin: 0 0 18px;
	padding: 0 0 12px; border-bottom: 1px solid rgba(158, 116, 34, 0.25);
}
body.evi-flow .fooevents-attendee-item .form-row { width: 100%; float: none; }

/* Radio fields (food allergies): the option labels are plain text, stacked as choices */
body.evi-flow .fooevents-attendee-item .form-row .woocommerce-input-wrapper > label {
	display: flex; align-items: center; gap: 10px; margin: 0 0 8px; padding: 11px 14px; cursor: pointer;
	font: 500 0.95rem/1.4 'Poppins', sans-serif; letter-spacing: 0; text-transform: none; color: var(--gcid-0480691e0d,#11302A);
	background: var(--gcid-7fa5bc1916,#FBF6E6); border: 1px solid rgba(158, 116, 34, 0.45); border-radius: 4px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
body.evi-flow .fooevents-attendee-item .form-row .woocommerce-input-wrapper > label:hover { border-color: var(--gcid-c57604db58,#D8A73A); }
body.evi-flow .fooevents-attendee-item .form-row .woocommerce-input-wrapper > label:has(input:checked) {
	border-color: var(--gcid-c57604db58,#D8A73A); box-shadow: 0 0 0 3px rgba(216, 167, 58, 0.2);
}
body.evi-flow .fooevents-attendee-item .form-row .woocommerce-input-wrapper > label input[type=radio] { margin: 0; }
body.evi-flow .evi-cond-help { display: block; margin: -2px 0 10px; font-size: 0.86rem; line-height: 1.5; color: var(--gcid-9c6971d694,#40615A); }
body.evi-flow .fooevents-attendee-item .evi-cond-details { margin-top: -6px; }
body.evi-flow .fooevents-attendee-item .evi-cond-details[hidden] { display: none; }
body.evi-flow .evi-visually-hidden {
	position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
	clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
body.evi-flow .fooevents-attendee-item .evi-cond-details textarea::placeholder { color: var(--gcid-9c6971d694,#40615A); opacity: 0.75; font-style: italic; }
@media (min-width: 700px) {
	body.evi-flow .fooevents-attendee-item { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; }
	body.evi-flow .fooevents-attendee-item > h3,
	body.evi-flow .fooevents-attendee-item .form-row-wide { grid-column: 1 / -1; }
	body.evi-flow .fooevents-attendee-item .form-row-first { grid-column: 1; }
	body.evi-flow .fooevents-attendee-item .form-row-last { grid-column: 2; }
}
body.evi-flow #fooevents-attendee-page form > p:last-child,
body.evi-flow #fooevents-attendee-page .fooevents-attendee-submit { margin-top: 8px; }

/* --------------------------------------------------------------------------
   Checkout (classic)
   -------------------------------------------------------------------------- */
@media (min-width: 981px) {
	body.evi-flow form.checkout {
		display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
		grid-template-rows: auto 1fr;   /* the billing column spans both rows; without this row 1 takes a share of its height */
		column-gap: clamp(2rem, 4vw, 3.5rem); align-items: start;
	}
	body.evi-flow form.checkout > * { grid-column: 1 / -1; }
	body.evi-flow form.checkout > p:not([class]) { display: none; }   /* wpautop wraps the template whitespace in a <p> that takes a grid row and pushes Your order below billing (2026-10-20) */
	body.evi-flow form.checkout > #customer_details { grid-column: 1; grid-row: span 2; }
	body.evi-flow form.checkout > #order_review_heading { grid-column: 2; margin-top: 0; }
	body.evi-flow form.checkout > #order_review { grid-column: 2; position: sticky; top: 120px; }
}
body.evi-flow #customer_details .col-1,
body.evi-flow #customer_details .col-2 { width: 100%; float: none; }
body.evi-flow #customer_details .col-2:empty { display: none; }
body.evi-flow .woocommerce-billing-fields,
body.evi-flow .woocommerce-additional-fields,
body.evi-flow #evi-po-wrap { margin: 0; }
@media (min-width: 700px) {
	body.evi-flow .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; }
	body.evi-flow .woocommerce-billing-fields__field-wrapper .form-row { width: 100%; float: none; grid-column: 1 / -1; }
	body.evi-flow .woocommerce-billing-fields__field-wrapper .form-row-first { grid-column: 1; }
	body.evi-flow .woocommerce-billing-fields__field-wrapper .form-row-last { grid-column: 2; }
}

/* Order summary card */
body.evi-flow #order_review {
	padding: clamp(1.4rem, 3vw, 2rem); border-radius: 6px;
	background: linear-gradient(180deg, var(--gcid-774fd2c819,#1F7A63) 0%, var(--gcid-da32ecab00,#155647) 40%, var(--gcid-be7a6a372d,#0A2622) 100%);
	color: var(--gcid-d1e2abc18a,#F5EEDB);
	box-shadow: 0 0 0 1px rgba(216, 167, 58, 0.55), 0 0 0 6px rgba(216, 167, 58, 0.08), 0 30px 60px -36px rgba(6, 23, 21, 0.8);
}
body.evi-flow #order_review_heading { font: 500 1.6rem/1.2 'Bodoni Moda', serif; }
body.evi-flow #order_review table.shop_table { margin: 0 0 18px; border: 0; border-radius: 0; background: none; color: var(--gcid-d1e2abc18a,#F5EEDB); }
body.evi-flow #order_review table.shop_table th,
body.evi-flow #order_review table.shop_table td {
	padding: 12px 0; border: 0; border-top: 1px solid rgba(245, 238, 219, 0.14);
	font: 400 0.92rem/1.5 'Poppins', sans-serif; color: var(--gcid-d1e2abc18a,#F5EEDB); background: none;
}
body.evi-flow #order_review table.shop_table thead th {
	border-top: 0; font: 600 0.7rem/1.4 'Josefin Sans', sans-serif; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gcid-06f42d7e23,#F3D27A);
}
body.evi-flow #order_review table.shop_table td.product-total,
body.evi-flow #order_review table.shop_table tfoot td { text-align: right; }
body.evi-flow #order_review table.shop_table .order-total th,
body.evi-flow #order_review table.shop_table .order-total td { font: 500 1.35rem/1.2 'Bodoni Moda', serif; color: var(--gcid-06f42d7e23,#F3D27A); padding-top: 16px; }
body.evi-flow #order_review .product-quantity { color: var(--gcid-06f42d7e23,#F3D27A); font-weight: 600; }

/* Payment methods, inside the dark card */
body.evi-flow #payment { background: none; border-radius: 0; }
body.evi-flow #payment ul.payment_methods { padding: 0 0 14px; margin: 0 0 16px; border-bottom: 1px solid rgba(245, 238, 219, 0.14); }
body.evi-flow #payment ul.payment_methods li { list-style: none; margin: 0 0 8px; }
body.evi-flow #payment ul.payment_methods li > label { font: 600 0.95rem/1.4 'Poppins', sans-serif; color: var(--gcid-d1e2abc18a,#F5EEDB); }
body.evi-flow #payment ul.payment_methods li input[type=radio] { accent-color: var(--gcid-c57604db58,#D8A73A); }
body.evi-flow #payment div.payment_box {
	margin: 10px 0 0; padding: 12px 14px; border-radius: 4px;
	background: rgba(6, 23, 21, 0.35); color: rgba(245, 238, 219, 0.85); font-size: 0.86rem;
}
body.evi-flow #payment div.payment_box::before { display: none; }

/* Stripe card form: Stripe copies the computed styles of the fields and labels inside
   #payment into its iframe (and caches them). Tracked caps labels made its layout taller
   than the frame Stripe sized, clipping the security code; the dark card made the form a
   murky grey. So the card form gets a light slot with plain labels and inputs. */
body.evi-flow #payment div.payment_box.payment_method_stripe {
	background: var(--gcid-7fa5bc1916,#FBF6E6); color: var(--gcid-0480691e0d,#11302A); padding: 14px 16px;
	box-shadow: inset 0 0 0 1px rgba(216, 167, 58, 0.5);
}
body.evi-flow #payment .payment_method_stripe .form-row label,
body.evi-flow #payment .payment_method_stripe label {
	font: 500 0.85rem/1.4 'Poppins', sans-serif; letter-spacing: normal; text-transform: none; color: var(--gcid-0480691e0d,#11302A);
}
body.evi-flow #payment .payment_method_stripe .form-row input.input-text {
	min-height: 0; padding: 10px 12px; font-size: 0.95rem;
}
body.evi-flow #payment .payment_method_stripe .testmode-info,
body.evi-flow #payment .payment_method_stripe p { color: var(--gcid-9c6971d694,#40615A); }
body.evi-flow #payment .payment_method_stripe a { color: var(--gcid-da32ecab00,#155647); }
body.evi-flow #payment .woocommerce-privacy-policy-text,
body.evi-flow #payment .woocommerce-terms-and-conditions-wrapper { font-size: 0.8rem; color: rgba(245, 238, 219, 0.7); }
body.evi-flow #payment .woocommerce-privacy-policy-text a { color: var(--gcid-06f42d7e23,#F3D27A); }
body.evi-flow #payment .place-order { padding: 0; margin: 0; }
body.evi-flow #payment #place_order { margin-top: 24px; }          /* breathing room below the privacy note (Josh, 2026-10-20) */
body.evi-flow #payment #place_order { width: 100%; float: none; }

/* --------------------------------------------------------------------------
   Receipt
   -------------------------------------------------------------------------- */
body.evi-flow .woocommerce-order > .woocommerce-notice--success {
	font: italic 500 1.6rem/1.3 'Bodoni Moda', serif; color: var(--gcid-da32ecab00,#155647); margin: 0 0 20px;
}
body.evi-flow ul.woocommerce-order-overview {
	display: flex; flex-wrap: wrap; gap: 0; margin: 0 0 28px; padding: 0; list-style: none;
	background: var(--gcid-7fa5bc1916,#FBF6E6); border: 1px solid rgba(158, 116, 34, 0.3); border-radius: 6px;
}
body.evi-flow ul.woocommerce-order-overview li {
	flex: 1 1 160px; margin: 0; padding: 16px 20px; border: 0; border-right: 1px solid rgba(158, 116, 34, 0.2);
	font: 600 0.68rem/1.4 'Josefin Sans', sans-serif; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gcid-9c6971d694,#40615A);
}
body.evi-flow ul.woocommerce-order-overview li strong {
	display: block; margin-top: 6px; font: 500 1rem/1.4 'Poppins', sans-serif; letter-spacing: 0; text-transform: none; color: var(--gcid-0480691e0d,#11302A);
}
body.evi-flow .woocommerce-order-details table.shop_table,
body.evi-flow .woocommerce-customer-details address {
	background: var(--gcid-7fa5bc1916,#FBF6E6); border: 1px solid rgba(158, 116, 34, 0.3); border-radius: 6px;
}
body.evi-flow .evi-po-number { margin: 12px 0 0; }

/* --------------------------------------------------------------------------
   Small screens
   -------------------------------------------------------------------------- */
@media (max-width: 600px) {
	.evi-steps { gap: 10px 16px; }
	.evi-steps__label { display: none; }
	.evi-steps__item.is-current .evi-steps__label { display: inline; }
	.evi-register__qty { flex-basis: 84px; }
}
@media (prefers-reduced-motion: reduce) {
	.evi-register__cta, body.evi-flow .woocommerce .button, body.evi-flow #place_order { transition: none; }
}

/* Before launch the public sees "Coming soon" instead of prices: no "Current price" badge either */
body.evi-reg-soon .ec-tier .ec-tier-badge { display: none !important; }

/* --------------------------------------------------------------------------
   Checkout is a Divi builder page (the [woocommerce_checkout] shortcode sits in a Divi Text module), so Divi
   renders it full-width: no .container, no header offset on #page-container, and a white default section with
   header-height padding. Rebuild the classic frame here so it matches the other flow pages (2026-10-20).
   -------------------------------------------------------------------------- */
body.evi-flow.et_pb_pagebuilder_layout .evi-flow-head { margin-top: 85px; }    /* the fixed header's height; the band's upward shadow fills it */
body.evi-flow.et_pb_pagebuilder_layout .evi-flow-body {
	width: 90%; max-width: 1080px; margin: 0 auto;
	padding: clamp(1.5rem, 3vw, 2.5rem) 0 clamp(3rem, 6vw, 5rem);
}
body.evi-flow .evi-flow-body .et_pb_section { background: none !important; padding: 0 !important; }
body.evi-flow .evi-flow-body .et_pb_row { width: 100% !important; max-width: none !important; padding: 0 !important; }
@media (max-width: 980px) {
	body.evi-flow.et_pb_pagebuilder_layout .evi-flow-head { margin-top: 80px; }
}
